WO2010138124A1 - Loopback proxy - Google Patents

Loopback proxy Download PDF

Info

Publication number
WO2010138124A1
WO2010138124A1 PCT/US2009/045557 US2009045557W WO2010138124A1 WO 2010138124 A1 WO2010138124 A1 WO 2010138124A1 US 2009045557 W US2009045557 W US 2009045557W WO 2010138124 A1 WO2010138124 A1 WO 2010138124A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
session
server
graphics driver
connection manager
Prior art date
Application number
PCT/US2009/045557
Other languages
French (fr)
Inventor
Bernard J. Thompson
Original Assignee
Displaylink Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Displaylink Corporation filed Critical Displaylink Corporation
Priority to PCT/US2009/045557 priority Critical patent/WO2010138124A1/en
Publication of WO2010138124A1 publication Critical patent/WO2010138124A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Definitions

  • This invention relates to a server and to a method of operating a server.
  • the invention provides a co-ordinated direct and loopback proxying of a terminal service protocol.
  • Remote Desktop Services also known as terminal services
  • Terminal services is one of the components of Microsoft Windows (both server and client versions) that allows a user to access applications and data on a remote computer over a network.
  • Terminal services is Microsoft's implementation of terminal server computing, where Windows applications, or even the entire desktop of a computer running terminal services, are made accessible to a remote client machine.
  • the client can either be a fully-fledged computer, running any operating system as long as the terminal services protocol is supported, or a lighter machine powerful enough to support the protocol.
  • terminal services only the user interface of an application is presented at the client. Any input to it is redirected over the network to the server, where all application processing takes place.
  • Remote clients connect to a Windows terminal service using the Remote
  • RDP Remote Desktop Protocol
  • Microsoft's implementation only allows for full desktop clients to connect via the network. It does not allow for non-network connections such as USB, or thin clients which do not have a full operating system of their own. Further, it does not allow for other graphics encapsulation protocols (which may be more efficient than RDP in some scenarios).
  • a method of operating a server comprising operating a terminal service, the terminal service including a graphics driver, installing a connection manager, the connection manager including a second graphics driver, detecting the connection of a client to the server, at the connection manager, creating a new session for the connected client, the session including the second graphics driver, connecting the client to the second graphics driver, operating one or more applications within the session, rendering graphic output from the or each application via the second graphics driver directly to the client, and routing all session management commands from the client to the connection manager.
  • a server arranged to operate a terminal service, the terminal service including a graphics driver, install a connection manager, the connection manager including a second graphics driver, detect the connection of a client to the server, at the connection manager, create a new session for the connected client, the session including the second graphics driver, connect the client to the second graphics driver, operate one or more applications within the session, render graphic output from the or each application via the second graphics driver directly to the client, and route all session management commands from the client to the connection manager.
  • a computer program product on a computer readable medium for operating a server comprising instructions for operating a terminal service, the terminal service including a graphics driver, installing a connection manager, the connection manager including a second graphics driver, detecting the connection of a client to the server, at the connection manager, creating a new session for the connected client, the session including the second graphics driver, connecting the client to the second graphics driver, operating one or more applications within the session, rendering graphic output from the or each application via the second graphics driver directly to the client, and routing all session management commands from the client to the connection manager.
  • the software on the server connects to Terminal Server via a loopback connection within the server.
  • the connection manager can accept connections via any bus chosen to be implemented.
  • the penalty of this design is decreased graphics performance, each session's graphics output must be captured by Terminal Server, encoded into RDP 1 sent to the connection manager, and possibly re-encoded into the graphics protocol of the client.
  • the connection manager will make use of its own graphics driver. This driver will replace the Terminal Server graphics driver in each session, and communicate directly with the client, thus bypassing the performance penalty mentioned above.
  • the invention is the combination of the two ideas of creating a loopback connection manager to manage sessions, and replacing the terminal server graphics driver with a second driver. In essence, this combination replaces all of the network transport portions of terminal server, leaving the terminal server to operate strictly as a session manager.
  • Figure 1 is a schematic diagram of a server and client
  • Figure 2 is a further view of the server and client of Figure 1
  • Figure 3 is a more detailed schematic diagram of the server and client
  • Figure 4 is a schematic diagram showing installation of software on the server
  • Figure 5 is a flowchart of a method of operating a server.
  • Figure 1 shows a client 10 connected to a server 12.
  • the client 10 is a thin client with a connected display device 10.
  • Figure 2 shows the architecture in more detail.
  • the client 10 runs a thin client 16 and the server 12 runs a terminal service 18.
  • the terminal service 18 allows remote clients 10 to connect to the server 12 and access applications that are executed on the server 12, as if those applications were available locally to the client 10. Only the user interface is run locally by the client 10 and communication traffic flows between the client 10 and server 12 as a user interacts with the user interface via the client 10.
  • the client 10 In implementations of a terminal service 18 such as Microsoft's terminal service, the client 10 must have a minimum level of processing power to interact with the terminal service 18.
  • the client 10 must be capable of supporting a standard operating system, which means that the client-server relationship in an implementation of Microsoft terminal service does not allow clients 10 that are too "thin" to connect to the terminal service 18.
  • the nature of the terminal service 18 is such that limitations are placed on the connection technology that is used to connect the client 10 to the server 12. For example, Ethernet can be used as a connection technology, but USB cannot be used.
  • the system of Figures 1 and 2 is adapted so that it is possible to provide a method for combining a standard RDP client, running in loopback mode on the server 12, with a replacement display driver running in the client session also on the server 12, in order to proxy terminal services clients to hardware devices that themselves do not normally support connection to the terminal service 18.
  • the system allows thin clients 10 to connect to an implementation of Windows terminal service 18 via USB or any other bus.
  • Software on the server 12 connects to the terminal service 18 via a loopback connection within the server 12.
  • FIG. 3 shows the implementation of the client-server system in more detail.
  • the connection manager 20 connects to the terminal service 18 via a loopback connection 22.
  • the purpose of the loopback connection 22 is so that the connection manager 20 will appear to the terminal service 18 as if the connection manager 20 is a remote client. This allows the connection manager 20 the benefit of the terminal service 18, without having any of the drawbacks that would not allow a connection to the terminal service 18, such as insufficient processing capability or unsupported connection technology.
  • the connection manager 20 connects to external clients 10 via a USB driver stack 24. USB is only an example of a connection technology that can be used to connect the clients 10 to the server 12.
  • the nature of the driver stack 24 will reflect the connection protocol that is being used to connect the thin client 10 to the server 12. Once a new client 10 connects to the server 12, then the connection manager 20 creates a new session 26 for that client 10.
  • the session 26 will include a new graphics driver 28 that has been provided by the connection manager 20 either in addition or instead of the driver that would be used by the terminal service 18.
  • the session will also include the relevant applications 30.
  • FIG. 3 shows both parts of the system together, being the loopback between the connection manager 20 and the terminal service 18 and the use of a new graphics driver 28.
  • the loopback connection manager 20 appears within the session 0 box of the server 12.
  • the replacement graphics adapter 28 is shown within the client session 26.
  • a setup program will install both the loopback connection manager 20 and the additional graphics driver 28.
  • the setup program will install the new graphics driver 28 in such a way that it will load in place of the standard driver when new sessions 26 are created.
  • the new graphics driver 28 is needed so that the light connection technology (such as USB) and the thin client 10 are provided with graphics information in a working manner.
  • the terminal service 18 performs the session management with the session 26, which is session 1 as far as the terminal service 18 is concerned.
  • the connection manager 20 performs the connection management with the graphics driver 28 and operates a dedicated loopback 22 with the terminal service. If additional client devices are connected to the server 12, then additional sessions 26 are created (session 2 and so on). For each new session a new loopback 22 is also created between the connection manager 29 and the terminal service 18 of the server 12.
  • a setup program 32 which may be provided on a suitable storage media such as a CD- ROM, installs the connection manager 20.
  • the setup program 32 also initiates a connection 22 between the terminal service 18 and the connection manager 20.
  • connection 22 is a loopback connection 22, which is being used to represent the connection manager 20 as a remote client, when in fact it is located directly on the same server 12 as the terminal service 18.
  • the terminal service 18 will treat the connection manager 20 as if it is a client remote from the server 12.
  • step S1 the loopback connection manager 20 listens for new clients 10 using the operating system's standard network, USB 1 or other peripheral device drivers.
  • the connection manager 20 calls the terminal service 18 to create a new RDP session 26 for that client 10.
  • the terminal service 18 creates a new session 26, which in turn loads the new graphics driver 28.
  • the graphics driver 28 signals to the connection manager 28 that it has loaded. The connection manager 20 then hands off the client connection to the graphics driver 28.
  • step S4 one or more applications 30 are operated within the session 26.
  • step S5 all graphics output from the applications 30 within the session 26 will be rendered by the new driver 28 and sent directly to the client 10. All user input from the client 10 goes to the graphics driver 28 which will send the input to the session 26.
  • the terminal service 18 still operates the session 26 but is communicating with the connection manager 20 as if the connection manager 20 is the remote client 10.
  • the loopback connection 22 ensures that this relationship continues, while all the time the graphics driver 28 is actually communicating with the real client 10.
  • the graphics driver 28 also receives session management commands from the client 10, such as close session, and forwards the appropriate commands to the connection manager 20, to communicate to the terminal service 18, via the RDP loopback connection 22.
  • session management commands from the client 10, such as close session
  • the connection manager 20 closes the RDP session 26 with terminal service 18.
  • the terminal service 18 shuts down the session 26 and unloads the graphics drivers 28. In this way, the terminal service 18 is never aware of the real client 10 that was interacting with the session 26, but the terminal service 18 will still continue to operate normally the whole time.

Abstract

A method of optimising the connection of multiple terminals to a single server is provided, whereby the server runs its standard remote terminal protocol while terminal devices may use their own proprietary, higher performance busses and protocols. The translation of these protocols between server and terminal is handled by a loopback service running on the server. The method is optimized to provide a direct connection between the user session on the server and the thin client device for certain terminal components, especially the graphics component. This allows the overhead of the loopback service to be avoided for the most performance sensitive components of the terminal.

Description

LOOPBACK PROXY
DESCRIPTION
This invention relates to a server and to a method of operating a server. In one embodiment, the invention provides a co-ordinated direct and loopback proxying of a terminal service protocol.
Remote Desktop Services (RDS), also known as terminal services, is one of the components of Microsoft Windows (both server and client versions) that allows a user to access applications and data on a remote computer over a network. Terminal services is Microsoft's implementation of terminal server computing, where Windows applications, or even the entire desktop of a computer running terminal services, are made accessible to a remote client machine. The client can either be a fully-fledged computer, running any operating system as long as the terminal services protocol is supported, or a lighter machine powerful enough to support the protocol. With terminal services, only the user interface of an application is presented at the client. Any input to it is redirected over the network to the server, where all application processing takes place.
Remote clients connect to a Windows terminal service using the Remote
Desktop Protocol (RDP). RDP is a protocol for receiving user input from the client, sending graphics data to the client, and sending messages between client and server to control the connection. However, Microsoft's implementation only allows for full desktop clients to connect via the network. It does not allow for non-network connections such as USB, or thin clients which do not have a full operating system of their own. Further, it does not allow for other graphics encapsulation protocols (which may be more efficient than RDP in some scenarios).
It is therefore an object of the invention to improve upon the known art.
According to a first aspect of the present invention, there is provided a method of operating a server comprising operating a terminal service, the terminal service including a graphics driver, installing a connection manager, the connection manager including a second graphics driver, detecting the connection of a client to the server, at the connection manager, creating a new session for the connected client, the session including the second graphics driver, connecting the client to the second graphics driver, operating one or more applications within the session, rendering graphic output from the or each application via the second graphics driver directly to the client, and routing all session management commands from the client to the connection manager.
According to a second aspect of the present invention, there is provided a server arranged to operate a terminal service, the terminal service including a graphics driver, install a connection manager, the connection manager including a second graphics driver, detect the connection of a client to the server, at the connection manager, create a new session for the connected client, the session including the second graphics driver, connect the client to the second graphics driver, operate one or more applications within the session, render graphic output from the or each application via the second graphics driver directly to the client, and route all session management commands from the client to the connection manager.
According to a third aspect of the present invention, there is provided a computer program product on a computer readable medium for operating a server, the product comprising instructions for operating a terminal service, the terminal service including a graphics driver, installing a connection manager, the connection manager including a second graphics driver, detecting the connection of a client to the server, at the connection manager, creating a new session for the connected client, the session including the second graphics driver, connecting the client to the second graphics driver, operating one or more applications within the session, rendering graphic output from the or each application via the second graphics driver directly to the client, and routing all session management commands from the client to the connection manager.
Owing to the invention, it is possible to provide a method for combining a standard RDP client, running in loopback mode on the server, with a replacement display driver running in the client session also on the server, in order to proxy terminal services clients to hardware devices that themselves do not support RDP. There are three primary benefits of this invention, support for connecting thin clients via non-network busses such as USB, increased graphics performance for clients implemented via a loopback interface and increased scalability of multiple clients due to reduced overhead. The invention allows thin clients to connect to Windows Terminal Server via
USB or any other bus. The software on the server connects to Terminal Server via a loopback connection within the server. The connection manager can accept connections via any bus chosen to be implemented. The penalty of this design is decreased graphics performance, each session's graphics output must be captured by Terminal Server, encoded into RDP1 sent to the connection manager, and possibly re-encoded into the graphics protocol of the client. To eliminate this overhead, as well as to allow use of its own, highly optimized graphics encapsulation protocol, the connection manager will make use of its own graphics driver. This driver will replace the Terminal Server graphics driver in each session, and communicate directly with the client, thus bypassing the performance penalty mentioned above.
The invention is the combination of the two ideas of creating a loopback connection manager to manage sessions, and replacing the terminal server graphics driver with a second driver. In essence, this combination replaces all of the network transport portions of terminal server, leaving the terminal server to operate strictly as a session manager.
Embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
Figure 1 is a schematic diagram of a server and client,
Figure 2 is a further view of the server and client of Figure 1 , Figure 3 is a more detailed schematic diagram of the server and client,
Figure 4 is a schematic diagram showing installation of software on the server, and
Figure 5 is a flowchart of a method of operating a server. Figure 1 shows a client 10 connected to a server 12. The client 10 is a thin client with a connected display device 10. Figure 2 shows the architecture in more detail. The client 10 runs a thin client 16 and the server 12 runs a terminal service 18. The terminal service 18 allows remote clients 10 to connect to the server 12 and access applications that are executed on the server 12, as if those applications were available locally to the client 10. Only the user interface is run locally by the client 10 and communication traffic flows between the client 10 and server 12 as a user interacts with the user interface via the client 10.
In implementations of a terminal service 18 such as Microsoft's terminal service, the client 10 must have a minimum level of processing power to interact with the terminal service 18. The client 10 must be capable of supporting a standard operating system, which means that the client-server relationship in an implementation of Microsoft terminal service does not allow clients 10 that are too "thin" to connect to the terminal service 18. Additionally, the nature of the terminal service 18 is such that limitations are placed on the connection technology that is used to connect the client 10 to the server 12. For example, Ethernet can be used as a connection technology, but USB cannot be used.
However, the system of Figures 1 and 2 is adapted so that it is possible to provide a method for combining a standard RDP client, running in loopback mode on the server 12, with a replacement display driver running in the client session also on the server 12, in order to proxy terminal services clients to hardware devices that themselves do not normally support connection to the terminal service 18. The system allows thin clients 10 to connect to an implementation of Windows terminal service 18 via USB or any other bus. Software on the server 12 connects to the terminal service 18 via a loopback connection within the server 12.
Figure 3 shows the implementation of the client-server system in more detail. In addition to the terminal service 18, there is also a connection manager 20 present on the server 12. The connection manager 20 connects to the terminal service 18 via a loopback connection 22. The purpose of the loopback connection 22 is so that the connection manager 20 will appear to the terminal service 18 as if the connection manager 20 is a remote client. This allows the connection manager 20 the benefit of the terminal service 18, without having any of the drawbacks that would not allow a connection to the terminal service 18, such as insufficient processing capability or unsupported connection technology. The connection manager 20 connects to external clients 10 via a USB driver stack 24. USB is only an example of a connection technology that can be used to connect the clients 10 to the server 12. The nature of the driver stack 24 will reflect the connection protocol that is being used to connect the thin client 10 to the server 12. Once a new client 10 connects to the server 12, then the connection manager 20 creates a new session 26 for that client 10. The session 26 will include a new graphics driver 28 that has been provided by the connection manager 20 either in addition or instead of the driver that would be used by the terminal service 18. The session will also include the relevant applications 30.
Figure 3 shows both parts of the system together, being the loopback between the connection manager 20 and the terminal service 18 and the use of a new graphics driver 28. The loopback connection manager 20 appears within the session 0 box of the server 12. The replacement graphics adapter 28 is shown within the client session 26. A setup program will install both the loopback connection manager 20 and the additional graphics driver 28. Preferably, the setup program will install the new graphics driver 28 in such a way that it will load in place of the standard driver when new sessions 26 are created. The new graphics driver 28 is needed so that the light connection technology (such as USB) and the thin client 10 are provided with graphics information in a working manner.
The terminal service 18 performs the session management with the session 26, which is session 1 as far as the terminal service 18 is concerned. The connection manager 20 performs the connection management with the graphics driver 28 and operates a dedicated loopback 22 with the terminal service. If additional client devices are connected to the server 12, then additional sessions 26 are created (session 2 and so on). For each new session a new loopback 22 is also created between the connection manager 29 and the terminal service 18 of the server 12. The installation of the software on the server 12 is illustrated in Figure 4. A setup program 32, which may be provided on a suitable storage media such as a CD- ROM, installs the connection manager 20. The setup program 32 also initiates a connection 22 between the terminal service 18 and the connection manager 20. This connection 22, as discussed above, is a loopback connection 22, which is being used to represent the connection manager 20 as a remote client, when in fact it is located directly on the same server 12 as the terminal service 18. The terminal service 18 will treat the connection manager 20 as if it is a client remote from the server 12.
Once installed, the operation of the components of the server 12 is as shown in Figure 5. In step S1, the loopback connection manager 20 listens for new clients 10 using the operating system's standard network, USB1 or other peripheral device drivers. When the connection manager 20 detects a new client 10, it calls the terminal service 18 to create a new RDP session 26 for that client 10. At step S2, the terminal service 18 creates a new session 26, which in turn loads the new graphics driver 28. At step S3, the graphics driver 28 signals to the connection manager 28 that it has loaded. The connection manager 20 then hands off the client connection to the graphics driver 28.
At step S4, one or more applications 30 are operated within the session 26. At step S5, all graphics output from the applications 30 within the session 26 will be rendered by the new driver 28 and sent directly to the client 10. All user input from the client 10 goes to the graphics driver 28 which will send the input to the session 26. The terminal service 18 still operates the session 26 but is communicating with the connection manager 20 as if the connection manager 20 is the remote client 10. The loopback connection 22 ensures that this relationship continues, while all the time the graphics driver 28 is actually communicating with the real client 10.
At step S6, the graphics driver 28 also receives session management commands from the client 10, such as close session, and forwards the appropriate commands to the connection manager 20, to communicate to the terminal service 18, via the RDP loopback connection 22. When the session 26 is complete, the connection manager 20 closes the RDP session 26 with terminal service 18. The terminal service 18 shuts down the session 26 and unloads the graphics drivers 28. In this way, the terminal service 18 is never aware of the real client 10 that was interacting with the session 26, but the terminal service 18 will still continue to operate normally the whole time.

Claims

1. A method of operating a server comprising: o operating a terminal service, the terminal service including a graphics driver, o installing a connection manager, the connection manager including a second graphics driver, o detecting the connection of a client to the server, at the connection manager, o creating a new session for the connected client, the session including the second graphics driver, o connecting the client to the second graphics driver, o operating one or more applications within the session, o rendering graphic output from the or each application via the second graphics driver directly to the client, and o routing all session management commands from the client to the connection manager.
2. A method according to claim 1 , wherein the step of creating a new session for the connected client, the session including the second graphics driver, further comprises deleting the first graphics driver from the session.
3. A method according to claim 1 or 2, and further comprising routing all user commands from the client to the second graphics driver.
4. A method according to claim 1 , 2 or 3, and further comprising receiving an instruction from the client to terminate the session at the connection manager, the connection manager instructing the terminal service to terminate the current session.
5. A method according to any preceding claim, and further comprising, following detecting the connection of a client to the server, at the connection manager, initiating a loopback connection between the connection manager and the terminal service.
6. A server arranged to: o operate a terminal service, the terminal service including a graphics driver, o install a connection manager, the connection manager including a second graphics driver, o detect the connection of a client to the server, at the connection manager, o create a new session for the connected client, the session including the second graphics driver, o connect the client to the second graphics driver, o operate one or more applications within the session, o render graphic output from the or each application via the second graphics driver directly to the client, and o route all session management commands from the client to the connection manager.
7. A server according to claim 6, wherein the server is further arranged, when creating a new session for the connected client, the session including the second graphics driver, to delete the first graphics driver from the session.
8. A server according to claim 6 or 7, wherein the server is further arranged to route all user commands from the client to the second graphics driver.
9. A server according to claim 6, 7 or 8, wherein the server is further arranged to receive an instruction from the client to terminate the session at the connection manager, the connection manager instructing the terminal service to terminate the current session.
10. A server according to any one of claims 6 to 9, wherein the server is further arranged, following detecting the connection of a client to the server, at the connection manager, to initiate a loopback connection between the connection manager and the terminal service.
11. A computer program product on a computer readable medium for operating a server, the product comprising instructions for: o operating a terminal service, the terminal service including a graphics driver, o installing a connection manager, the connection manager including a second graphics driver, o detecting the connection of a client to the server, at the connection manager, o creating a new session for the connected client, the session including the second graphics driver, o connecting the client to the second graphics driver, o operating one or more applications within the session, o rendering graphic output from the or each application via the second graphics driver directly to the client, and o routing all session management commands from the client to the connection manager.
12. A computer program product according to claim 11 , wherein the step of creating a new session for the connected client, the session including the second graphics driver, further comprises deleting the first graphics driver from the session.
13. A computer program product according to claim 11 or 12, and further comprising routing all user commands from the client to the second graphics driver.
14. A computer program product according to claim 11 , 12 or 13, and further comprising receiving an instruction from the client to terminate the session at the connection manager, the connection manager instructing the terminal service to terminate the current session.
15. A computer program product according to any one of claims 11 to 14, and further comprising, following detecting the connection of a client to the server, at the connection manager, initiating a loopback connection between the connection manager and the terminal service.
PCT/US2009/045557 2009-05-29 2009-05-29 Loopback proxy WO2010138124A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2009/045557 WO2010138124A1 (en) 2009-05-29 2009-05-29 Loopback proxy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2009/045557 WO2010138124A1 (en) 2009-05-29 2009-05-29 Loopback proxy

Publications (1)

Publication Number Publication Date
WO2010138124A1 true WO2010138124A1 (en) 2010-12-02

Family

ID=41137709

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2009/045557 WO2010138124A1 (en) 2009-05-29 2009-05-29 Loopback proxy

Country Status (1)

Country Link
WO (1) WO2010138124A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9929955B2 (en) 2014-12-17 2018-03-27 International Business Machines Corporation Local session loopback protocol
US11150857B2 (en) 2017-02-08 2021-10-19 Immersive Robotics Pty Ltd Antenna control for mobile device communication
US11153604B2 (en) 2017-11-21 2021-10-19 Immersive Robotics Pty Ltd Image compression for digital reality
US11151749B2 (en) 2016-06-17 2021-10-19 Immersive Robotics Pty Ltd. Image compression method and apparatus
US11553187B2 (en) 2017-11-21 2023-01-10 Immersive Robotics Pty Ltd Frequency component selection for image compression

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1521427A2 (en) * 2003-09-30 2005-04-06 Microsoft Corporation Systems and methods for determining remote device media capabilities
EP1681824A1 (en) * 2005-01-14 2006-07-19 Microsoft Corporation USB devices in application server environments
US20060248180A1 (en) * 2005-04-29 2006-11-02 Microsoft Corporation Techniques for managing terminal services sessions
US20070061477A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation Plug And Play Device Redirection For Remote Systems
US20070296643A1 (en) * 2006-06-27 2007-12-27 Microsoft Corporation Display extension using terminal clients

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1521427A2 (en) * 2003-09-30 2005-04-06 Microsoft Corporation Systems and methods for determining remote device media capabilities
EP1681824A1 (en) * 2005-01-14 2006-07-19 Microsoft Corporation USB devices in application server environments
US20060248180A1 (en) * 2005-04-29 2006-11-02 Microsoft Corporation Techniques for managing terminal services sessions
US20070061477A1 (en) * 2005-09-09 2007-03-15 Microsoft Corporation Plug And Play Device Redirection For Remote Systems
US20070296643A1 (en) * 2006-06-27 2007-12-27 Microsoft Corporation Display extension using terminal clients

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9929955B2 (en) 2014-12-17 2018-03-27 International Business Machines Corporation Local session loopback protocol
US10084708B2 (en) 2014-12-17 2018-09-25 International Business Machines Corporation Local session loopback protocol
US11151749B2 (en) 2016-06-17 2021-10-19 Immersive Robotics Pty Ltd. Image compression method and apparatus
US11150857B2 (en) 2017-02-08 2021-10-19 Immersive Robotics Pty Ltd Antenna control for mobile device communication
US11429337B2 (en) 2017-02-08 2022-08-30 Immersive Robotics Pty Ltd Displaying content to users in a multiplayer venue
US11153604B2 (en) 2017-11-21 2021-10-19 Immersive Robotics Pty Ltd Image compression for digital reality
US11553187B2 (en) 2017-11-21 2023-01-10 Immersive Robotics Pty Ltd Frequency component selection for image compression

Similar Documents

Publication Publication Date Title
CN100486247C (en) Method and equipment of transparent consulting
CA2608341C (en) Remote network node management system and method
US9389826B2 (en) Zero client device with integrated network authentication capability
CN102368231B (en) Method and system for redirecting USB (universal serial bus) devices
US9246844B2 (en) Method for activating and deactivating client-side services from a remote server
TW200815987A (en) Device connection system and device connection method
JP2001014251A (en) Information processing method, information terminal support server, collaboration system and storage medium with information processing program stored thereon
WO2010138124A1 (en) Loopback proxy
KR20150013860A (en) Clientless cloud computing
CN110177128B (en) Data transmission system and method for establishing VPN connection, terminal and VPN proxy thereof
CN108200018A (en) Flow forwarding method and equipment, computer equipment and readable medium in cloud computing
JP4791850B2 (en) Information processing system and virtual office system
US10367894B2 (en) Information processing apparatus, method for controlling the same, non-transitory computer-readable storage medium, and information processing system
CN113765801B (en) Message processing method and device applied to data center, electronic equipment and medium
CN114217900A (en) Remote control method, device and system, computing equipment and storage medium
CN111790159B (en) Data processing method, device, equipment and computer readable storage medium
CN202257550U (en) Re-orientating system for USB (Universal Series Bus) equipment
CN112565372A (en) Communication method and system for virtual machine and client during network isolation
US11563721B2 (en) Methods and systems for network address translation (NAT) traversal using a meet-in-the-middle proxy
US8316143B1 (en) Communication interface between gateway modules and internet servers
JP4910274B2 (en) Program and server device
CN101005421A (en) Telnet control method for realizing multiple network system by single network port
CN116319570A (en) Multi-cluster distributed load balancing method, system, device, equipment and medium
CN117319141A (en) Cloud equipment network management method, access method and related equipment
CN116133058A (en) Session establishment method, system, device, equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09789727

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09789727

Country of ref document: EP

Kind code of ref document: A1