IP Library Granted Patent US 11,843,527
Granted Patent B2
US 11,843,527 · App. 17/567,644 · Granted Dec 12, 2023

Real-time scalable virtual session and network analytics

Inventors: Georgy Momchilov (Parkland, FL); Kirankumar Alluvada (Bengaluru, IN); Jong Kann (Santa Clara, CA); Jayadev Marulappa Niranjanmurthy (Parkland, FL); Kupuswamy Ramamurthy (Fort Lauderdale, FL); Corneliu Chetan (Parkland, FL)
Assignee: Citrix Systems, Inc.
H04L41/5067G06F9/452G06F9/45558H04L12/4633H04L41/046H04L41/14H04L41/5016H04L43/08H04L43/0864H04L67/01H04L67/08H04L67/10H04L67/141H04L67/51H04L67/56G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,843,527
App. No.
17/567,644
Filed
Jan 3, 2022
Granted
Dec 12, 2023
Kind
B2
Art Unit
RD00
USPC
709/224
Abstract

Provided herein are systems and methods for providing insights or metrics in connection with provisioning applications and/or desktop sessions to end-users. Network devices (e.g., appliances, intermediary devices, gateways, proxy devices or middle-boxes) can gather insights such as network-level statistics. Additional insights (e.g., metadata and metrics) associated with virtual applications and virtual desktops can be gathered to provide administrators with comprehensive end-to-end real-time and/or historical reports of performance and end-user experience (UX) insights. Insights relating to an application or desktop session can be used to determine and/or improve the overall health of the infrastructure of the session, Citrix Virtual Apps and Desktops, the applications (e.g., remote desktop application) being delivered using the infrastructure, and/or the corresponding user experience.

Claims (32)

1. A method comprising:

receiving, by a first device, a response to a request of the first device to a second device via a third device, the response identifying a capability of the second device and the third device to support a protocol for a channel to provide one or more metrics of a session between the first device and the second device;

identifying, by the first device based at least on the response, a version of the protocol for establishing the channel supported by each of the first device, the second device and the third device in communicating the one or more metrics over the channel between the first device and the second device; and

establishing the channel between the first device and the second device via the third device to communicate the one or metrics of the session between the first device and the second device via the third device.

2. The method of claim 1 , further comprising communicating, by the first device, the request to the second device, the request identifying the capability of the first device for support of the protocol for the channel.

3. The method of claim 1 , wherein the channel is a virtual channel within the protocol.

4. The method of claim 1 , wherein the session is one of a virtual session, an application session or a desktop session.

5. The method of claim 1 , wherein the one or more metrics provides one or more insights into one of application or desktop performance with respect to at least the session.

6. The method of claim 1 , wherein the one or more metrics provide one or more insights into end-user experience with respect to at least the session.

7. The method of claim 1 , wherein the protocol is a virtualization protocol.

8. A system comprising:

a first device in communication with a second device via a third device, the first device configured to:

receive a response to a request of the first device to the second device via the third device, the response identifying a capability of the second device and the third device to support a protocol for a channel to provide one or more metrics of a session between the first device and the second device;

identify, based at least on the response, a version of the protocol for establishing the channel supported by each of the first device, the second device and the third device in communicating the one or more metrics over the channel between the first device and the second device; and

establish the channel between first device and the second device via the third device to communicate the one or metrics of the session between the first device and the second device via the third device.

9. The system of claim 8 , wherein the first device is further configured to communication the request to the second device, the request identifying the capability of the first device for support of the protocol for the channel.

10. The system of claim 8 , wherein the channel is a virtual channel within the protocol.

11. The system of claim 8 , wherein the session is one of a virtual session, an application session or a desktop session.

12. The system of claim 8 , wherein the one or more metrics provides one or more insights into one of application or desktop performance with respect to at least the session.

13. The system of claim 8 , wherein the one or more metrics provide one or more insights into end-user experience with respect to at least the session.

14. The system of claim 8 , wherein the protocol is a virtualization protocol.

15. A system comprising:

a network device between a first device and a second device, the network device configured to:

identify, responsive to a response from the second device to a request of the first device, a capability of the network device to support a protocol for a channel to provide one or more metrics of a session between the first device and the second device via the network device, the response identifying the capability of the second device to support the protocol for the channel;

identify that a version of the protocol for establishing the channel between the first device and the second device via the network device, the channel established responsive to determining that each of the first device, the second device and the network device support the version of the protocol in communicating the one or more metrics over the channel between the first device and the second device; and

provide one or more network metrics gathered by the network device for the one or more metrics to be included in communications of the channel between the first device and the second device via the network device.

16. The system of claim 15 , wherein the network device is further configured to include network metrics related to the session in the communications of the channel.

17. The system of claim 15 , wherein the channel is a virtual channel within the protocol.

18. The system of claim 15 , wherein the session is one of a virtual session, an application session or a desktop session traversing the network device.

19. The system of claim 15 , wherein the one or more metrics provide one or more insights of the network device into one of application or desktop performance with respect to at least the session.

20. The system of claim 15 , wherein the one or more metrics provide one or more insights of the network device into end-user experience with respect to at least the session.

21. The system of claim 15 , wherein the protocol is a virtualization protocol.