Information handling system remote desktop protocol selection
11587196 ยท 2023-02-21
Assignee
Inventors
Cpc classification
G06F9/452
PHYSICS
H04L67/63
ELECTRICITY
G06T1/20
PHYSICS
H04L12/4641
ELECTRICITY
H04L69/165
ELECTRICITY
G06F2009/45579
PHYSICS
H04L69/18
ELECTRICITY
International classification
G06F15/173
PHYSICS
H04L69/165
ELECTRICITY
G06T1/20
PHYSICS
H04L69/18
ELECTRICITY
H04L67/63
ELECTRICITY
G06F9/455
PHYSICS
Abstract
A connection analyzer at a server information handling system analyzes virtual desktop requests from client information handling systems to prioritize available virtual desktop display protocols for responding to the requests based upon the client type and network interface. The virtual desktop is established by reference to a priority list of virtual desktop display protocols available for sending virtual desktops from a server information handling system.
Claims
1. A system for managing virtual desktop display protocol selection, the system comprising: one or more server information handling systems interfaced with a network and operative to support virtual desktop presentation at client information handling systems with one or more virtual desktop display protocols; a connection analyzer executing on the one or more server information handling systems and interfaced with the network, the connection analyzer operative to receive virtual desktop requests from client information handling systems, the connection analyzer analyzing the virtual desktop requests to prioritize a list of virtual desktop display protocols to respond to the requests based at least in part on conditions at the client information handling systems detected through the virtual desktop requests, the connection analyzer generating a priority list for each virtual desktop request when received at the connection analyzer and before initiating a virtual desktop; and a virtual desktop initiator executing on the one or more server information handling systems and interfaced with the connection analyzer, the virtual desktop initiator operative to initiate virtual desktops at the client information handling systems in response to each virtual desktop request from the client information handling systems with a virtual desktop display protocol selected from the priority list in an order of priority of the priority list; wherein: the virtual desktop requests include an indication of a TCP VPN with the client information handling system; and the connection analyzer prioritizes virtual desktop display protocols to select TCP-based protocols as a greater priority than UDP-based protocols.
2. The system of claim 1 wherein: the virtual desktop requests include an indication of the client information handling system as a mobile information handling system; and the connection analyzer prioritizes virtual desktop display protocols to select a protocol that uses graphics processing unit resources to reduce power consumption.
3. The system of claim 2 wherein: the virtual desktop requests include an indication of the client information handling system as a mobile information handling system operating on external power; and the connection analyzer reduces the priority of graphics processing unit protocols in response to the use of external power.
4. The system of claim 1 wherein: the virtual desktop requests include an indication of a UDP network interface with the client information handling system; and the connection analyzer prioritizes virtual desktop display protocols to select UDP-based protocols as a greater priority than TCP-based protocols.
5. The system of claim 1 wherein the connection analyzer monitors virtual desktop interfaces established with client information handling systems to detect changes to the network interface and, in response to detected changes to re-establish the virtual desktop with a different virtual desktop display protocol having a higher priority for the changed network interface.
6. The system of claim 5 wherein the change to the network interface comprises transition of the client information handling system from operating on external power to operating on battery power, and the re-established virtual desktop changes the virtual desktop display protocol from a central processing unit based to a graphics processor based virtual desktop display protocol.
7. The system of claim 1 wherein the virtual desktop initiator is further operative to compare the priority list of virtual desktop display protocols associated with the virtual desktop requests and to assign client information handling systems to a selected one of the at least one server information handling systems to establish virtual desktops based at least in part upon the prioritized list and the at least one server information handling system virtual desktop display protocol availabilities.
8. The system of claim 7 wherein the virtual desktop initiator directs client information handling systems to server information handling systems by migrating virtual machines to the server information handling system selected for the client information handling system.
9. A method for selecting a virtual desktop display protocol to present a virtual desktop at a client information handling system from a server information handling system, the method comprising: communicating from the client information handling system through a network to the server information handling system a request to initiate a virtual desktop presentation; receiving at the server information handling system the request for the virtual desktop presentation; comparing the request for the virtual desktop presentation with plural virtual desktop display protocols to prioritize a list of the virtual desktop display protocols for responding to the request for the virtual desktop presentation, the prioritized list based upon conditions at the client information handling system as determined from the request for the virtual desktop presentation at the time that the request to initiate the virtual desktop presentation was received at the server information handling system and before selecting a virtual desktop display protocol to present the virtual desktop at the client information handling system; selecting a virtual desktop display protocol based on the prioritized list; presenting the virtual desktop at the client information handling system with the selected virtual desktop display protocol; including with the request an indication that the client information handling system has a UDP network interface; and prioritizing UDP virtual desktop display protocols over TCP virtual desktop display protocols.
10. The method of claim 9 further comprising: including with the request an indication that the client information handling system comprises a mobile system; and prioritizing graphics processing unit virtual desktop display protocols for mobile systems.
11. The method of claim 10 further comprising: including with the request that the client information handling system has external power available; and prioritizing central processing unit virtual desktop display protocols for mobile systems that have external power available.
12. The method of claim 11 further comprising: communicating from the client information handling system a transition by the client information handling system from external power to internal power; and in response to the transition, re-establishing the virtual desktop presentation with a graphics processing unit virtual desktop display protocol instead of a central processing unit virtual desktop display protocol.
13. The method of claim 9 further comprising: including with the request an indication that the client information handling system comprises a non-mobile system; and prioritizing central processing unit virtual desktop display protocols over graphics processing unit virtual desktop display protocols to respond to the request.
14. The method of claim 9 wherein selecting a virtual desktop display protocol based on the prioritized list further comprises: determining a server information handling system interfaced with the network having support for the virtual desktop display protocol on the prioritized list; and forwarding the client information handling system request to the determined server information handling system.
15. The method of claim 14 further comprising supporting the virtual desktop request at the determined server information handling system with a virtual machine executing at the determined server information handling system.
16. A non-transitory machine readable medium storing instructions executable on a processor to: analyze a request from a client information handling system for a virtual desktop presentation; apply the analyzed request to prioritize a list of available virtual desktop display protocols for responding to the request based upon conditions at the client information handling system as determined from the request at the time of receipt of the request and before initiating the virtual desktop in response to the request; and automatically respond to the request by communicating a virtual desktop to the client information handling system with the available virtual desktop display protocol having the greatest priority; wherein: the request indicates the client information handling system has external power; and the prioritized list increases priority for central processing unit virtual desktop display protocols over graphics processing unit virtual desktop display protocols.
17. The non-transitory machine readable medium of claim 16 wherein: the request indicates that the client information handling system is a mobile information handling system; and the prioritized list increases priority for graphics processing unit virtual desktop display protocols over central processing unit virtual desktop display protocols.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The present invention may be better understood, and its numerous objects, features and advantages made apparent to those skilled in the art by referencing the accompanying drawings. The use of the same reference number throughout the several figures designates a like or similar element.
(2)
(3)
(4)
DETAILED DESCRIPTION
(5) Client requests for virtual desktops are analyzed to prioritize virtual desktop display protocols to support the presentation of the virtual desktop at the clients. For purposes of this disclosure, an information handling system may include any instrumentality or aggregate of instrumentalities operable to compute, classify, process, transmit, receive, retrieve, originate, switch, store, display, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, or other purposes. For example, an information handling system may be a personal computer, a network storage device, or any other suitable device and may vary in size, shape, performance, functionality, and price. The information handling system may include random access memory (RAM), one or more processing resources such as a central processing unit (CPU) or hardware or software control logic, ROM, and/or other types of nonvolatile memory. Additional components of the information handling system may include one or more disk drives, one or more network ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, a mouse, and a video display. The information handling system may also include one or more buses operable to transmit communications between the various hardware components.
(6) Referring now to
(7) In the example embodiment, application 24 obtains visual information from network 16 to present a virtual desktop 27 at display 26. For instance, application 24 interfaces with a server information handling system 14 through network 16 to request a virtual desktop, such as the presentation of output from a virtual machine 34 executing over a virtual machine manager 32 on server information handling system 14. Virtual desktop 27 presented at mobile information handling system 10 and desktop information handling system 12 represents processing taking place on server information handling system 14 by a virtual machine 14 that is presented with a virtual desktop display protocol. Virtual desktop 27 may be supported with a variety of vendor protocols. For example, Microsoft has a base virtual desktop display protocol RDP with enhanced services provided by RemoteFX. Another example is the Citrix based protocol HDX as enhanced by HDX 3D Pro. These examples of virtual desktop display protocols offer tiers of service through different protocols. Another example of a virtual desktop display protocol vendor is the VMware Horizon View suite with RDP, PCoIP and Blast Extreme protocols available that each offer different advantages in different environments. For instance, Blast Extreme presents virtual desktops at a client by leveraging the client graphics processor, thus reducing power consumption at the mobile device. Other types of virtual desktop display protocols rely upon central processing unit execution, and some types of virtual desktop display protocols use TCP for more reliable communication or UDP for lower bandwidth scenarios.
(8) A connection analyzer 36 receives virtual desktop requests from client systems, analyzes the client type and connection parameters, and applies the analysis to establish a virtual desktop connection best suited for the client based upon available virtual desktop display protocols. For example, if a client information handling system indicates that it is a mobile system, such as a laptop, tablet or smartphone, connection analyzer prioritizes a virtual desktop display protocol that uses a graphics processing unit over one that uses a central processing unit virtual desktop display protocols. If the client information handling system indicates that it is a desktop information handling system, connection analyzer 36 de-prioritizes power consumption as a virtual desktop display protocol selection criteria. As an example of network connection parameters, if the client device interfaces with a TCP based VPN, a TCP virtual desktop display protocol is prioritized over UDP virtual desktop display protocols. In contrast, if the client device interfaces with a UDP VPN, a UDP virtual desktop display protocol receives a higher priority than a TCP virtual desktop display protocol. Connection analyzer 36 generates a virtual desktop priority list 40 that lists in order of priority the virtual desktop display protocols for the client connection based upon the device and connection analysis. Connection analyzer 36 then forwards the client to a server information handling system 14 that executes the virtual machine 34 associated with the desired virtual desktop requested by the client. In one example embodiment, connection analyzer 36 references a virtual desktop display protocol table 38 to locate resources that can run the highest available priority on the virtual desktop priority list 40. In another example embodiment, connection analyzer 36 executes over a VMM 32 and migrates the virtual desktop virtual machine 34 to a server information handling system 14 that has available a prioritized virtual desktop display protocol. In one alternative embodiment, connection analyzer 36 monitors existing virtual desktop connections to adjust a connection as client type of network parameters change. For example, if a client running on battery power has a graphics processor virtual desktop display protocol and then indicates that external power has been connected to the client, connection analyzer 36 may, in one embodiment, re-establish the connection to the virtual desktop using a protocol that uses a greater proportion of central processing unit resources.
(9) Referring now to
(10) Referring now to
(11) Although the present invention has been described in detail, it should be understood that various changes, substitutions and alterations can be made hereto without departing from the spirit and scope of the invention as defined by the appended claims.