Resource allocation using traffic aggregability and future bandwidth availability in a network
US-2024292275-A1 · Aug 29, 2024 · US
US9813346B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9813346-B2 |
| Application number | US-201615054444-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 26, 2016 |
| Priority date | May 9, 2010 |
| Publication date | Nov 7, 2017 |
| Grant date | Nov 7, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system for allocating a different class of service to each network connection in a plurality of network connections, where each network connection corresponds to one or more virtual channels. The system can include a plurality of virtual channels that connect a first computer and a second computer. Each virtual channel can service at least a portion of the network traffic generated using a remote-display protocol. The system can also include a plurality of network connections, where each network connection corresponds to at least one of the virtual channels. Each network connection of the system can have an assigned port number and an assigned class of service that corresponds to a transmission priority level. The class of service assigned to each network connection can be unique from the classes of service assigned to other network connections.
Opening claim text (preview).
What is claimed is: 1. A system for allocating a different quality of service to each network connection in a plurality of network connections, where each network connection corresponds to one or more virtual channels, the system comprising: a first computing device; and a second computing device in communication with the first computing device via a remote-display protocol session, the remote-display protocol session comprising a plurality of virtual channels, each servicing at least a portion of network traffic of the remote-display protocol session, a plurality of transport layer network connections comprising a network connection between the first computing device and the second computing device, a first transport layer network connection carrying a first virtual channel and assigned a first quality of service, the first virtual channel configured to transmit remote display protocol data via the first transport layer network connection responsive to the first quality of service and one of an application type and a user of the data, and a second transport layer network connection carrying a second virtual channel and assigned a second quality of service, the second quality of service different from the first quality of service; and a flow controller to control data transfer rates on the plurality of transport layer network connections, wherein the flow controller executes operations to: receive a data packet transmitted by the first computing device to the second computing device; copy the data packet for retransmission by the flow controller; forward the received data packet to the second computing device; generate an acknowledgement packet in response to receiving the forwarded data packet; transmit the acknowledgement packet to the first computing device, to cause one or more resources associated with the first computing device to become available for subsequent processing of one or more data packets; monitor one or more data packet acknowledgements generated by the second computing device in response to receipt of the forwarded data packet; and retransmit the forwarded data packet to the first computing device in response to non-receipt of the one or more data packet acknowledgements from the second computing device within a temporal window of time. 2. The system of claim 1 , wherein the flow controller executes operations to discard the copied data packet in response to receipt of the one or more data packet acknowledgements from the second computing device within the temporal window of time. 3. The system of claim 1 , wherein the flow controller executes operations to set a TCP window size parameter; the TCP window size parameter permitting the first computing device to fill a buffer associated with the flow controller with one or more data packets up to an amount equal to the TCP window size parameter. 4. The system of claim 1 , wherein the flow controller executes operations to: determine that a predetermined number of data packets of space are available in a buffer associated with the flow controller; and transmit a nonzero window packet to the first computing device in response to the determination that the predetermined number of data packets of space are available. 5. The system of claim 1 , wherein flow controller delays the transmission of the acknowledgment packet until after the first computing device receives a predetermined number of data packets. 6. The system of claim 1 , wherein the forwarded data packet comprises a data packet in any position within a group of packets, and the position includes a first position up to a second to last position within the packet group. 7. The system of claim 1 , wherein the flow controller executes operations to: receive a synchronization signal; and insert a configuration identifier into an option area of a TCP header; wherein the configuration identifier identifies the flow controller as a flow control module. 8. The system of claim 1 , wherein the flow controller executes operations to: detect a network congestion condition; and substitute an alternate TCP congestion avoidance algorithm in response to the detected network congestion condition; wherein the TCP congestion algorithm uses an acknowledgement packet to terminate the network connection between the first client device and the second client device. 9. The system of claim 1 , wherein the flow controller executes operations to: detect one or more transition boundaries in the received data packet by parsing a packet data stream; transmit, in response to the detection, one or more additional data packets to the second client device; and receive one or more additional acknowledgement packets generated by the second client device. 10. The system of claim 1 , wherein the flow controller executes operations to: monitor a link characteristic; and adjust a packet size parameter associated with the one or more packets based on the link characteristics. 11. A method of allocating a different quality of service to each network connection in a plurality of network connections, where each network connection corresponds to one or more virtual channels, the method comprising: transmitting, by a first computing device, remote-display protocol data of a first virtual channel of a remote-display protocol session via a first transport layer network connection to a second computing device, the first transport layer network connection assigned a first quality of service; determining, by the first computing device, to transmit remote-display protocol data of the first virtual channel of the remote-display protocol session via the first transport layer network connection, responsive to the first quality of service and one of an application type and a user of the data; transmitting, by the first computing device, remote-display protocol data of a second virtual channel of the remote-display protocol session via a second transport layer network connection to the second computing device, the second transport layer network connection assigned a second quality of service different from the first quality of service; and performing, by a flow controller, data transfer rate control on the plurality of transport layer network connections, wherein the performing data transfer rate control further comprises: receiving a data packet transmitted by the first computing device to the second computing device; copying the data packet for retransmission by the flow controller; forwarding the received data packet to the second computing device; generating an acknowledgement packet in response to receiving the forwarded data packet; transmitting the acknowledgement packet to the first computing device, causing one or more resources associated with the first computing device to become available for subsequent processing of one or more data packets; monitoring one or more data packet acknowledgements generated by the second computing device in response to receiving the forwarded data packet and retransmitting the forwarded data packet to the first computing device in response to not receiving the one or more data packet acknowledgements from second computing device within a temporal window of time. 12. The method of claim 11 , comprising: discarding the copied data packet in response to receiving the one or more data packet acknowledgements from the second computing device within the temporal window of time. 13. The method of claim 11 , comprising: setting a TCP window size parameter, the TCP window size parameter permitting the first computing device to fill a buffer associated with the flow controller with one or more data packets up to an
Flow control; Congestion control · CPC title
for supporting traffic characterised by the type of applications · CPC title
Application aware · CPC title
Traffic characterised by specific attributes, e.g. priority or QoS · CPC title
User-type aware · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.