Aggregated adaptive bit rate streaming
US-2024422108-A1 · Dec 19, 2024 · US
US2019116217A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2019116217-A1 |
| Application number | US-201715787482-A |
| Country | US |
| Kind code | A1 |
| Filing date | Oct 18, 2017 |
| Priority date | Oct 18, 2017 |
| Publication date | Apr 18, 2019 |
| Grant date | — |
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.
Described embodiments provide for dynamically optimizing the number of application layer streams that may be multiplexed into a single transport layer connection, providing the advantages of application layer multiplexing without incurring unnecessary congestion-based network delays. A device may monitor net bandwidth and packet loss rates for a connection, and may dynamically increase and decrease a number of concurrent application layer streams to balance throughput and congestion avoidance. As congestion increases, the device may reduce concurrent stream limits in order to spawn additional transport layer connections, allowing faster congestion recovery and reduced performance impairment.
Opening claim text (preview).
What is claimed is: 1 . A method for managing concurrent application layer streams, comprising: establishing, by a network interface of a first device, a communication session with a second device, the communication session comprising a plurality of concurrent application layer streams; determining, by a stream manager of the first device, that a net bandwidth utilization of the communication session is above a first predetermined threshold; determining, by the stream manager responsive to determining that the net bandwidth utilization of the communication session is above the first predetermined threshold, that a packet loss rate of the communication session is above a second predetermined threshold; and transmitting, by the network interface to the second device, a first request to reduce a number of the plurality of concurrent streams, responsive to the determination that the packet loss rate of the communication session is above the second predetermined threshold. 2 . The method of claim 1 , wherein transmitting the first request to reduce the number of the plurality of concurrent streams comprises transmitting a packet comprising a SETTINGS_MAX_CONCURRENT_STREAMS parameter with a predetermined value smaller than the number of the plurality of concurrent streams. 3 . The method of claim 1 , further comprising subsequently determining, by the stream manager, that the packet loss rate of the communication session is below the second predetermined threshold; and transmitting, by the network interface to the second device, a second request to increase the number of the plurality of concurrent streams, responsive to the determination that the packet loss rate of the communication session is below the second predetermined threshold. 4 . The method of claim 3 , further comprising subsequently determining, by the stream manager, that the net bandwidth utilization of the communication session is below the first predetermined threshold; and responsive to determining that the net bandwidth utilization of the communication session is below the first predetermined threshold, transmitting, by the network interface to the second device, a second request to reduce the number of the plurality of concurrent streams. 5 . The method of claim 4 , wherein the first request comprises an identification of a lower number of concurrent streams than the second request. 6 . The method of claim 1 , wherein the communication session comprises a hypertext transport protocol v2 (HTTP2) session. 7 . The method of claim 1 , wherein transmitting the first request to reduce the number of the plurality of concurrent streams comprises transmitting a settings frame comprising an identification of one or more configuration parameters for the communications session. 8 . A method for managing concurrent application layer streams, comprising: establishing, by a network interface of a first device, a communication session with a second device, the communication session comprising a plurality of concurrent application layer streams; receiving, by the network interface from the second device, a first request to reduce a number of the plurality of concurrent streams, transmitted responsive to a determination by the second device that (i) a net bandwidth utilization of the communication session is above a first predetermined threshold, and (ii) a packet loss rate of the communication session is above a second predetermined threshold; and transmitting via a first stream of the plurality of concurrent streams, by the network interface responsive to receipt of the first request to reduce the number of the plurality of concurrent streams, a packet comprising an indicator that at least one stream of the plurality of concurrent application layer streams is closed. 9 . The method of claim 8 , wherein receiving the first request to reduce the number of the plurality of concurrent streams comprises receiving a packet comprising a SETTINGS_MAX_CONCURRENT_STREAMS parameter with a predetermined value smaller than the number of the plurality of concurrent streams. 10 . The method of claim 8 , further comprising receiving a second request to increase the number of the plurality of concurrent streams, by the first device from the second device, transmitted responsive to a determination by the second device that the packet loss rate of the communication session is below the second predetermined threshold; and transmitting via the first stream of the plurality of concurrent streams, by the network interface responsive to receipt of the second request to increase the number of the plurality of concurrent streams, a second packet comprising the plurality of concurrent application layer streams. 11 . The method of claim 10 , further comprising receiving a second request to reduce the number of the plurality of concurrent streams, by the first device from the second device, transmitted responsive to a determination by the second device that the net bandwidth utilization of the communication session is below the first predetermined threshold; and transmitting via the first stream of the plurality of concurrent streams, by the network interface responsive to receipt of the second request to reduce the number of the plurality of concurrent streams, a packet comprising an indicator that a second at least one stream of the plurality of concurrent application layer streams is closed. 12 . The method of claim 11 , wherein the first request comprises an identification of a lower number of concurrent streams than the second request. 13 . The method of claim 8 , wherein the communication session comprises a hypertext transport protocol v2 (HTTP2) session. 14 . The method of claim 8 , wherein receiving the first request to reduce the number of the plurality of concurrent streams comprises receiving a settings frame comprising an identification of one or more configuration parameters for the communications session. 15 . A system for managing concurrent application layer streams, comprising: a network interface configured to establish a communication session with a second device, the communication session comprising a plurality of concurrent application layer streams; and a stream manager, configured to: determine that a net bandwidth utilization of the communication session is above a first predetermined threshold, and determine, responsive to determining that the net bandwidth utilization of the communication session is above the first predetermined threshold, that a packet loss rate of the communication session is above a second predetermined threshold; and wherein the network interface is further configured to transmit, to the second device, a first request to reduce a number of the plurality of concurrent streams, responsive to the determination that the packet loss rate of the communication session is above the second predetermined threshold. 16 . The system of claim 15 , wherein the network interface is further configured to transmit a packet comprising a SETTINGS_MAX_CONCURRENT_STREAMS parameter with a predetermined value smaller than the number of the plurality of concurrent streams. 17 . The system of claim 15 , wherein the stream manager is further configured to subsequently determine that the packet loss rate of the communication session is below the second predetermined threshold; and wherein the network interface is further configured to transmit, to the second device, a second request to increase the number of the plurality of concurrent streams, responsive to the determination that the packet l
where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference · CPC title
Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers · CPC title
Multichannel or multilink protocols · CPC title
Packet rate · CPC title
Customer-centric QoS measurements · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.