WO2010087828A1 - Communicating data in flows between first and second computers connected over a network - Google Patents
Communicating data in flows between first and second computers connected over a network Download PDFInfo
- Publication number
- WO2010087828A1 WO2010087828A1 PCT/US2009/032375 US2009032375W WO2010087828A1 WO 2010087828 A1 WO2010087828 A1 WO 2010087828A1 US 2009032375 W US2009032375 W US 2009032375W WO 2010087828 A1 WO2010087828 A1 WO 2010087828A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- computer
- data
- communicating
- network
- flows
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/756—Media network packet handling adapting media to device capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/752—Media network packet handling adapting media to network capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/325—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
Definitions
- Many enterprises are transitioning to a network arrangement in which computing resources of central servers are provided to local computers at which users are located.
- the computing resources e.g., software applications, processing resources, storage resources, etc.
- the computing resources can be selectively allocated to a session established by a user at a local computer.
- Protocols are provided to enable a user at a local computer to access and share the desktop of a remote computer (e.g. , a central server) over a computer network.
- a remote computer e.g. , a central server
- One such protocol is the Remote Desktop Protocol (RDP), as provided by Microsoft Corporation, to provide remote display and input capabilities over network connections.
- RGS Remote Graphics Software
- RGS is designed to take full advantage of the computer and graphics resources of a remote computer to deliver interactive remote access at the local computer.
- the desktop video data of the remote computer is transmitted over the network to the local computer, which displays the desktop video data locally in a window at the local computer.
- RGS is designed to provide fast capture, compression, and transmission of a desktop video data over a network.
- RGS also allows audio data to be sent from the remote computer to the local computer for output on an audio device of the local computer.
- RGS also captures user keyboard and mouse inputs at the local computer, and sends the keyboard and mouse inputs to the remote computer for processing by the operating system of the remote computer, and by applications running on the remote computer.
- RGS also allows data of other peripheral devices (e.g., such as storage devices) to be communicated from the local computer to the remote computer.
- Certain peripheral devices such as storage devices (e.g., hard disk drives, optical disk drives, etc.) attached to the local computer are considered “bulk devices" since these devices can potentially transfer a relatively large volume of data ('bulk data") in a single transfer operation.
- Transferring bulk data over the network from a local computer to a remote computer consumes a relatively large portion of the available bandwidth of the network between the local computer and remote computer. As a result, when a bulk data transfer operation is occurring, the amount of remaining network bandwidth available to sending video and/or audio data from the remote computer to the local computer is reduced, which may adversely affect the user experience in viewing video data or listening to audio data at the local computer.
- Fig. 1 is a block diagram of an exemplary arrangement that includes a local computer and remote computer, in which an embodiment of the invention can be incorporated;
- Fig. 2 is a flow diagram of a process performed by a local computer of throttling a data flow over a network between the local computer and a remote computer, in accordance with an embodiment
- Fig. 3 is a flow diagram of a process performed by the remote computer of throttling a data flow over a network between the local computer and the remote computer, in accordance with another embodiment.
- FIG. 1 illustrates an arrangement in which a local computer 100 (at which a user is located) is connected to a remote computer 102 over a data network 104. Although just one local computer 100 and one remote computer 102 is depicted in Fig. 1, it is noted that there can be multiple local computers 100 and/or multiple remote computers 102.
- the local computer 100 uses the resources of the remote computer 102 in sessions established between the local computer 100 and the remote computer 102.
- the local computer 100 can use the graphics resources of the remote computer 102, in which the remote computer 102 delivers desktop video data of the remote computer over the network 104 to the local computer 100 for display in a display device 106 of the local computer 100.
- the local computer can use audio resources of the remote computer 102, in which the remote computer 102 delivers audio data of the remote computer over the network 104 to the local computer 100 for output by an audio output device 107 (e.g., headphone, speakers, etc.) of the local computer 100.
- an audio output device 107 e.g., headphone, speakers, etc.
- one or more user interface devices 108 are attached to the local computer 100. Changes in the state of the user interface device 108 are communicated from the local computer 100 over the data network 104 to the remote computer 102.
- the user interface device 108 can be a human interface device (HID) according to the HID standard, as described in Universal Serial Bus (USB), Device Class Definition For Human Interface Devices (HID), Firmware Specification, Version 1.11, dated June 27, 2001.
- the HID device 108 can be a mouse, a keyboard, a roller ball-type input device, a tablet, and so forth.
- a “bulk device” is a device that can potentially transfer a relatively large volume of data ('bulk data") in a single transfer operation from the local computer 100 to the remote computer 102 over the network 104.
- Examples of bulk devices include storage devices such as a hard disk drive, an optical disk drive, or any other type of storage device.
- a bulk device can also include an internal memory 139 of the local computer 100.
- An example scenario in which bulk data may be transferred from the internal memory 139 of the local computer 100 to the remote computer 102 is in the context of a cut-and-paste or copy-and-paste operation, in which a user may have selected a relatively large amount of data at the local computer to save into another application or document — the cut or copied data is transferred from the internal memory 139 over the network 104 to the remote computer 102.
- a mechanism is provided to assign different priorities to different flows of data between the local computer 100 and remote computer 102.
- the priority(ies) assigned to flows of video data and/or audio data from the remote computer 102 to the local computer 100 is (are) set higher than the priority assigned to the transfer of any bulk data from the bulk device 109 to the remote computer 102.
- a "flow" of data refers to a distinctly identifiable communication of data.
- the distinct flows of data can be flows associated with different applications (e.g. , one flow to communicate video data for displaying video; another flow to communicate audio data for outputting audio; and a further flow to communicate bulk data; etc.).
- flow A audio data from the remote computer 102 to the local computer 100
- flow B video data from the remote computer 102 to the local computer 100
- flow C bulk data from the local computer 100 to the remote computer 102
- the priority assigned to flow C is lower than either of the priorities assigned to flows A and B, such that the audio and video data will be effectively allocated a greater portion of the bandwidth of the network 104 than the bulk data. In this way, if there is audio or video data to transmit, transmission of the bulk data in flow C is delayed until the audio or video data is sent in flow A or B. Allocation of priorities to the flows can be performed by a scheduler 117 in the remote computer 102.
- the data network 104 can communicate data according to the Internet Protocol (IP).
- IP Internet Protocol
- the HID device 108 and bulk device 109 can be attached to the local computer 100 over Universal Serial Bus (USB) link(s) 110 (wired or wireless USB link) to the local computer 100.
- USB Universal Serial Bus
- the HID device 108 is connected to an HID controller 112, and the bulk device 109 is connected to a bulk device controller 113.
- any data relating to the HID device 108 or bulk device 109 is in the form of USB data that is communicated in IP packets transferred over the data network 104 to the remote computer 102.
- the local computer 100 is referred to as a "receiving system,” and the remote computer 102 is referred to as a "sending system.”
- the local computer 100 includes receiver software 114, and the remote computer 102 includes sender software 116.
- the sender software 116 is used for sending desktop video data and audio data of the remote computer 102 (sending system) over the data network 104 to the receiver software 114 in the local computer 100 (receiving system), where the desktop video data is displayed at the display device 106, and the audio data is output by the audio output device 107.
- the desktop video data and audio data sent by the sender software 116 are actual rendering video data and rendering audio data that can be rendered by a respective display device and audio output device.
- the rendering video data and rendering audio data are different from data contained in source video files (e.g., MPEG files) or source audio files that have to be converted to a format that can be rendered by respective output devices.
- the sender software 116 in the remote computer 102 receives video data from a video subsystem 136 in the remote computer 102.
- the video data of the video subsystem 136 is displayable by a display device attached to the remote computer 102.
- the sender software 116 then applies compression to the video data that is sent to the receiver software 114, which can then perform decompression of the video data before displaying the video data at the display device 106.
- the sender software 116 receives audio data from an audio subsystem 137 in the remote compute 102.
- the audio data of the audio subsystem 137 can be output by an audio output device attached to the remote computer 102.
- the sender software 116 also applies compression to the audio data that is sent to the receiver software 114, which can then perform decompression of the audio data before outputting the audio data at the audio output device 107.
- an actual display device or audio output device does not have to be connected to the video subsystem 136 or audio subsystem 137 of the remote computer 102 in some implementations; however, in other implementations, a display device or audio output device can be connected to the remote computer 102.
- the sender software 116 and receiver software 114 are according to the Remote Graphics Software (RGS) protocol from the Hewlett-Packard Co. RGS is designed to take full advantage of computer and graphics resources of a remote computer to deliver interactive remote access from a local computer.
- RGS Remote Graphics Software
- the sender software 116 and receiver software 114 can operate according to the Remote Desktop Protocol (RDP) from Microsoft Corporation, to provide remote display and input capabilities over network connections.
- RDP Remote Desktop Protocol
- the sender software 116 and receiver software 114 can be according to other technologies.
- Corresponding device drivers 118 in the local computer 100 interact with the HID controller 112 and bulk device 113 to perform operations with respect to the HID device 108 and bulk device 109, respectively.
- a corresponding device driver 118 can receive indications of change of the HID device 108 (such as when a user has moved a mouse, actuated a keyboard, moved a roller ball-type input device, moved an input device relative to a tablet, and so forth).
- another device driver 118 can receive bulk data from the bulk device 109 for transmission over the network 104.
- the receiver software 114 sends respective HID data and bulk data over the network 104 to the remote computer 102.
- the receiver software 114 includes a throttler 115 to throttle the transmission of bulk data from the bulk device 109 over the network 104 if the throttler 115 detects that there are active flows of data (e.g., flow A and/or flow B) from the remote computer 102.
- Throttling a flow of data refers to slowing the rate of transmission of data in the flow, delaying the transmission of data in the flow, and/or stopping the transmission of data in the flow.
- the flows of data between the local computer 100 and remote computer 102 occur through network interfaces 120 and 122.
- Each of the network interfaces 120 and 122 includes a physical network interface controller as well as a protocol stack, including an IP protocol stack.
- the network interface 120 sends USB data (bulk data and/or HID data) in respective IP packets over the data network 104 to the remote computer 102.
- the IP packets are received by a network interface 122 in the remote computer 102, which extracts the USB bulk data and/or HID data from the IP packets.
- Bulk data received at the sender software 116 is forwarded to a virtual interposer 124, which can cause the received bulk data to be stored in the persistent storage 150 in the remote computer 102.
- the virtual interposer 124 intercepts calls from device drivers 126 in the remote computer 102 that are intended for remotely located peripheral devices, such as the bulk device 109 and the HID device 108 attached to the local computer 100.
- the virtual interposer 124 prevents calls to the remotely located peripheral devices from reaching lower level (kernel) device drivers of the operating system in the remote computer 102.
- Respective device drivers 126 can create audio data and video data that are provided to the audio subsystem 137 and video subsystem 136, respectively, to be rendered by respective output devices, such as respective output devices connected to the remote computer 100 and the remote computer 102. Also, another device driver 126 can receive updates regarding actuation (e.g. , movement) of a user interface device such as the remotely located HID device 108.
- the remote computer 102 also includes software applications 134.
- a corresponding software application 134 may have requested bulk data to be retrieved from the bulk device 109 attached to the local computer 100.
- Another software application 134 may be waiting for updated information from the HID device 108.
- the sender software 116 includes the scheduler 117 that assigns priorities to the flows for communicating data between the local computer 100 and remote computer 102.
- the scheduler 117 can communicate the assigned priorities to the throttler 115, such that the throttler 115 can determine whether communication of bulk data is to be throttled when the throttler 115 detects that there are other flows of data between the local computer 100 and remote computer 102.
- the local computer 100 includes one or more central processing units (CPUs) 138, which is connected to memory 139.
- the software modules of the local computer 100 such as the receiver software 114 and device driver 118, are executable on the CPU(s) 138.
- the remote computer 102 similarly includes one or more CPUs 140 connected to memory 132 and persistent storage 150.
- the software modules of the remote computer 102 such as the software application 134, device driver 126, virtual interposer 124, and sender software 116 are executable on the CPU(s) 140.
- Fig. 2 illustrates a procedure performed by a receiving system (local computer 100).
- the receiver software 114 in the local computer 100 receives (at 202) the assigned priorities for corresponding flows of data between the local computer 100 and the remote computer 102.
- the flows of data can include flows A, B, and C depicted in Fig. 1.
- the assignment of priorities for corresponding flows of data can be performed by the scheduler 117 in the remote computer 102.
- the sender software 116 sends information relating to the assigned priorities to the receiver software 114.
- the receiver software 114 identifies (at 204) data associated with different flows that are to be communicated. If there exists data to communicate for a higher priority one or more flows (such as flows A and B in Fig. 1), then the throttler 115 in the local computer 100 throttles (at 206) a lower priority flow, such as flow C in Fig. 1 for sending bulk data from the local computer 100 to the remote computer 102.
- Fig. 3 illustrates a procedure according to an alternative embodiment that is performed at the sending system (remote computer 102).
- the procedure of Fig. 3 can be performed in place of the procedure of Fig. 2.
- the scheduler 117 in the remote computer 102 assigns (at 302) priorities to respective flows of data between the remote computer 102 and the local computer 100.
- the sender software 116 next identifies (at 304) data associated with different flows that are to be communicated. Based on the identified data, the sender software 116 sends (at 306) indications to the receiver software 114 in the local computer 100 to inform the receiver software 114 which flows of data to throttle, such as the local priority bulk data flow C in Fig. 1.
- Instructions of software described above are loaded for execution on a processor (such as one or more CPUs 139, 140 in Fig. 1).
- the processor includes microprocessors, microcontrollers, processor modules or subsystems (including one or more microprocessors or microcontrollers), or other control or computing devices.
- a "processor” can refer to a single component or to plural components (e.g., one CPU or multiple CPUs).
- Data and instructions (of the software) are stored in respective storage devices, which are implemented as one or more computer-readable or computer-usable storage media.
- the storage media include different forms of memory including semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories; magnetic disks such as fixed, floppy and removable disks; other magnetic media including tape; and optical media such as compact disks (CDs) or digital video disks (DVDs).
- instructions of the software discussed above can be provided on one computer-readable or computer-usable storage medium, or alternatively, can be provided on multiple computer-readable or computer-usable storage media distributed in a large system having possibly plural nodes.
- Such computer- readable or computer-usable storage medium or media is (are) considered to be part of an article (or article of manufacture).
- An article or article of manufacture can refer to any manufactured single component or multiple components.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
Claims
Priority Applications (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN200980155759.4A CN102301361B (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over network |
| DE112009004319T DE112009004319T5 (en) | 2009-01-29 | 2009-01-29 | Communicate data accesses between a first and a second computer connected via a network |
| GB1112679.4A GB2479309B (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
| BRPI0919984A BRPI0919984A2 (en) | 2009-01-29 | 2009-01-29 | method for use in network arrangement, main computer and article |
| PCT/US2009/032375 WO2010087828A1 (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
| US13/142,721 US9306995B2 (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
| US14/829,962 US9391918B2 (en) | 2009-01-29 | 2015-08-19 | Communicating data in flows between first and second computers over a network |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/US2009/032375 WO2010087828A1 (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
Related Child Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US13/142,721 A-371-Of-International US9306995B2 (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
| US14/829,962 Continuation US9391918B2 (en) | 2009-01-29 | 2015-08-19 | Communicating data in flows between first and second computers over a network |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2010087828A1 true WO2010087828A1 (en) | 2010-08-05 |
Family
ID=42395877
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2009/032375 Ceased WO2010087828A1 (en) | 2009-01-29 | 2009-01-29 | Communicating data in flows between first and second computers connected over a network |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US9306995B2 (en) |
| CN (1) | CN102301361B (en) |
| BR (1) | BRPI0919984A2 (en) |
| DE (1) | DE112009004319T5 (en) |
| GB (1) | GB2479309B (en) |
| WO (1) | WO2010087828A1 (en) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9268517B2 (en) * | 2011-12-07 | 2016-02-23 | Adobe Systems Incorporated | Methods and systems for establishing, hosting and managing a screen sharing session involving a virtual environment |
| CN102710305A (en) * | 2012-04-19 | 2012-10-03 | 惠州Tcl移动通信有限公司 | Data transmission method and data transmission system based on terahertz wireless communication |
| US9554389B2 (en) * | 2012-08-31 | 2017-01-24 | Qualcomm Incorporated | Selectively allocating quality of service to support multiple concurrent sessions for a client device |
| US8928727B1 (en) * | 2012-09-06 | 2015-01-06 | Google Inc. | Sharing input device data in a multiway video conference provided in an online social network |
| CN107346119A (en) * | 2017-08-24 | 2017-11-14 | 苏睿 | Cooperative control method, apparatus and system |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030147350A1 (en) * | 2002-02-04 | 2003-08-07 | Wookey Michael J. | Prioritization of remote services messages within a low bandwidth environment |
| US20060020702A1 (en) * | 2002-05-21 | 2006-01-26 | Microsoft Corporation | Methods and systems for a receiver to allocate bandwidth among incoming communications flows |
| US20070237077A1 (en) * | 2006-03-31 | 2007-10-11 | Microsoft Corporation | Controlling the transfer of terminal server data |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6895588B1 (en) * | 1999-04-09 | 2005-05-17 | Sun Microsystems, Inc. | Remote device access over a network |
| US7231455B2 (en) * | 2002-01-14 | 2007-06-12 | Sun Microsystems, Inc. | System monitoring service using throttle mechanisms to manage data loads and timing |
| US7436769B2 (en) * | 2002-05-23 | 2008-10-14 | Lucent Technologies Inc. | Method of throttling data flow through a router |
| US6925094B2 (en) | 2002-09-23 | 2005-08-02 | Symbol Technologies, Inc. | System and method for wireless network channel management |
| WO2006067556A1 (en) * | 2004-12-22 | 2006-06-29 | Telefonaktiebolaget Lm Ericsson (Publ) | Transmission in a shared medium having different access modes |
| US20060215689A1 (en) | 2005-03-24 | 2006-09-28 | Alcatel | System-level communication link bonding apparatus and methods |
| CN1929478B (en) | 2005-09-09 | 2010-05-05 | 华为技术有限公司 | A Method of Reducing Transmission Bandwidth Occupation |
| US7916647B2 (en) * | 2007-11-07 | 2011-03-29 | Brocade Communications Systems, Inc. | Automatic adjustment of logical channels in a fibre channel network |
| US8285857B2 (en) * | 2008-10-31 | 2012-10-09 | Hewlett-Packard Development Company, L.P. | Saving a layout of display(s) of a remote computer |
-
2009
- 2009-01-29 US US13/142,721 patent/US9306995B2/en not_active Expired - Fee Related
- 2009-01-29 WO PCT/US2009/032375 patent/WO2010087828A1/en not_active Ceased
- 2009-01-29 CN CN200980155759.4A patent/CN102301361B/en not_active Expired - Fee Related
- 2009-01-29 DE DE112009004319T patent/DE112009004319T5/en not_active Withdrawn
- 2009-01-29 BR BRPI0919984A patent/BRPI0919984A2/en not_active IP Right Cessation
- 2009-01-29 GB GB1112679.4A patent/GB2479309B/en not_active Expired - Fee Related
-
2015
- 2015-08-19 US US14/829,962 patent/US9391918B2/en not_active Expired - Fee Related
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030147350A1 (en) * | 2002-02-04 | 2003-08-07 | Wookey Michael J. | Prioritization of remote services messages within a low bandwidth environment |
| US20060020702A1 (en) * | 2002-05-21 | 2006-01-26 | Microsoft Corporation | Methods and systems for a receiver to allocate bandwidth among incoming communications flows |
| US20070237077A1 (en) * | 2006-03-31 | 2007-10-11 | Microsoft Corporation | Controlling the transfer of terminal server data |
Also Published As
| Publication number | Publication date |
|---|---|
| US20150358249A1 (en) | 2015-12-10 |
| US9306995B2 (en) | 2016-04-05 |
| GB2479309B (en) | 2014-12-03 |
| GB2479309A (en) | 2011-10-05 |
| US9391918B2 (en) | 2016-07-12 |
| CN102301361B (en) | 2014-03-12 |
| DE112009004319T5 (en) | 2012-05-03 |
| GB201112679D0 (en) | 2011-09-07 |
| CN102301361A (en) | 2011-12-28 |
| US20110276715A1 (en) | 2011-11-10 |
| BRPI0919984A2 (en) | 2019-07-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8762544B2 (en) | Selectively communicating data of a peripheral device to plural sending computers | |
| US9325530B2 (en) | Management of virtual desktop infrastructure (VDI) sessions using real-time network conditions | |
| US11029990B2 (en) | Delivering a single end user experience to a client from multiple servers | |
| US10698717B2 (en) | Accelerator virtualization method and apparatus, and centralized resource manager | |
| EP1955187B1 (en) | Multi-user display proxy server | |
| CN105122210B (en) | Implementation method and related device and system of GPU virtualization | |
| US8589565B2 (en) | Client-server session parallelism | |
| US9391918B2 (en) | Communicating data in flows between first and second computers over a network | |
| US8793384B2 (en) | Recovery of disconnected channels over a reliable protocol | |
| EP2882168B1 (en) | Method, system and client device for mapping multiple virtual machines | |
| US8645559B2 (en) | Redirection of multiple remote devices | |
| US8504694B2 (en) | Remote content classification and transmission using multiple transport channels | |
| US20080267067A1 (en) | Controlling the flow of data updates between a receiving station and a sending station | |
| US9936049B2 (en) | Protocol independent way for dynamically selecting data compression methods for redirected USB devices | |
| CN102195831A (en) | Detection of end-to-end transport quality | |
| CN103778591A (en) | Method and system for processing graphic operation load balance | |
| CN106257889A (en) | Expansion device of virtual interface and network servo system thereof | |
| CN102301359B (en) | Providing An Indication Of Change At A User Interface Device Over A Network Between Computers | |
| CN112882826B (en) | Resource cooperative scheduling method and device | |
| CN121151408A (en) | Network interface card (NIC) XDP channel load balancing methods, devices, media, equipment, and software products | |
| CN102334322A (en) | System and method for supporting a remote isochronous device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 200980155759.4 Country of ref document: CN |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09839401 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 4543/CHENP/2011 Country of ref document: IN |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 13142721 Country of ref document: US |
|
| ENP | Entry into the national phase |
Ref document number: 1112679 Country of ref document: GB Kind code of ref document: A Free format text: PCT FILING DATE = 20090129 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 1112679.4 Country of ref document: GB |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 112009004319 Country of ref document: DE Ref document number: 1120090043194 Country of ref document: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 09839401 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: PI0919984 Country of ref document: BR Kind code of ref document: A2 Effective date: 20110720 |