LOW LATENCY CONNECTIONS TO WORKSPACES IN A CLOUD COMPUTING ENVIRONMENT
First Claim
1. A system, comprising:
- a plurality of computing nodes located in multiple geographic regions that collectively provide virtual computing services to one or more clients, each of the computing nodes comprising at least one processor and a memory;
a plurality of virtualized computing resource instances, each executing on a respective one of the computing nodes within a data center in a respective one of the regions; and
a plurality of gateway components, wherein each of the gateway components is hosted on a respective one of the computing nodes at a point of presence location in a respective one of the regions;
wherein one or more of the virtualized computing resource instances are configured to implement a management component of a virtual desktop service;
wherein at least some of the plurality of gateway components and the management component of the virtual desktop service interoperate with each other within a virtual private cloud of the virtual desktop service;
wherein one of the virtualized computing resource instances is configured to implement a virtual desktop instance;
wherein two or more of the plurality of gateway components are configured as network interfaces for communication between client devices and the virtual desktop service, wherein client devices communicate with the two or more gateway components over a public network;
wherein in response to receiving a request from a client device to connect to the virtual desktop instance, the management component of the virtual desktop service is configured to establish a communication channel between the virtual desktop instance and one of the two or more of the gateway components for two-way communication of an interactive video stream between the client device and the virtual desktop instance, wherein the interactive video stream comprises a stream of pixels communicated to the client device from the virtual desktop instance and a plurality of inputs that are communicated from the client device to the virtual desktop instance that represent user interactions with the virtual desktop instance.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing system providing virtual computing services may generate and manage remote computing sessions between client devices and virtual desktop instances (workspaces) hosted on the service provider'"'"'s network. The system may implement a virtual private cloud for a workspaces service that extends out to gateway components in multiple, geographically distributed point of presence (POP) locations. In response to a client request for a virtual desktop session, the service may configure a virtual computing resource instance for the session and establish a secure, reliable, low latency communication channel (over a virtual private network) between the resource instance and a gateway component at a POP location near the client for communication of a two-way interactive video stream for the session. The availability zone containing the POP location may be different than one hosting the resource instance for the session. Client devices may connect to the gateway component over a public network.
145 Citations
22 Claims
-
1. A system, comprising:
-
a plurality of computing nodes located in multiple geographic regions that collectively provide virtual computing services to one or more clients, each of the computing nodes comprising at least one processor and a memory; a plurality of virtualized computing resource instances, each executing on a respective one of the computing nodes within a data center in a respective one of the regions; and a plurality of gateway components, wherein each of the gateway components is hosted on a respective one of the computing nodes at a point of presence location in a respective one of the regions; wherein one or more of the virtualized computing resource instances are configured to implement a management component of a virtual desktop service; wherein at least some of the plurality of gateway components and the management component of the virtual desktop service interoperate with each other within a virtual private cloud of the virtual desktop service; wherein one of the virtualized computing resource instances is configured to implement a virtual desktop instance; wherein two or more of the plurality of gateway components are configured as network interfaces for communication between client devices and the virtual desktop service, wherein client devices communicate with the two or more gateway components over a public network; wherein in response to receiving a request from a client device to connect to the virtual desktop instance, the management component of the virtual desktop service is configured to establish a communication channel between the virtual desktop instance and one of the two or more of the gateway components for two-way communication of an interactive video stream between the client device and the virtual desktop instance, wherein the interactive video stream comprises a stream of pixels communicated to the client device from the virtual desktop instance and a plurality of inputs that are communicated from the client device to the virtual desktop instance that represent user interactions with the virtual desktop instance. - View Dependent Claims (2, 3, 4)
-
-
5. A method, comprising:
performing, by one or more computers; receiving, from a client device, a request to begin a virtual desktop session on a virtual desktop instance, wherein the virtual desktop instance is hosted on one of a plurality of computing nodes that are located in multiple availability zones and that collectively implement a virtual desktop service; establishing a communication channel between the virtual desktop instance and a gateway component, wherein the gateway component is one of a plurality of gateway components that are configured to provide communication interfaces between client devices and the virtual desktop service, wherein each of the plurality of gateway components is hosted on a respective computing node at a point of presence location in a respective one of the multiple availability zones, and wherein at least some of the plurality of gateway components interoperate with one or more other components of the virtual desktop service within a virtual private cloud of the virtual desktop service; and beginning a virtual desktop session on the virtual desktop instance, wherein said beginning comprises initiating communication of an interactive video stream between the virtual desktop instance and the client device via the gateway component such that the client device communicates with the gateway component over a public network, wherein the interactive video stream comprises a stream of pixels communicated to the client device from the virtual desktop instance and a plurality of inputs that are communicated from the client device to the virtual desktop instance that represent user interactions with the virtual desktop instance. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A non-transitory computer-readable storage medium storing program instructions that when executed on one or more computers cause the one or more computers to perform:
-
configuring a virtualized computing resource instance to provide virtual desktop sessions on behalf of one or more clients, wherein the virtualized computing resource instance is hosted on one of a plurality of computing nodes that are located in multiple regions and that collectively provide virtual computing services; receiving a request from a client to open a virtual desktop session on the virtualized computing resource instance; determining which of a plurality of gateway components that are configured to provide network interfaces between clients and the virtual computing services is to be used to handle communication of an interactive video stream between the virtualized computing resource instance and the client, wherein each of the plurality of gateway components is hosted on a respective computing node at a point of presence location in a respective one of the regions, wherein at least some of the plurality of gateway components and one or more other components of the virtual computing services participate within a virtual private cloud, and wherein said determining is dependent, at least in part, on the region in which the client is located; establishing a communication channel between the virtualized computing resource instance and the determined gateway component on behalf of the client. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification