Packet scheduling for video transmission with sender queue control
First Claim
Patent Images
1. A method for transmitting video content comprising:
- (a) encoding said video by an application layer at a sender;
(b) providing a portion of said encoded video to a lower network layer than said application layer at said sender, subject to at least one regulator that regulates the rate that data is transferred from said application layer to said lower network layer, based upon, at least in part, a timer reaching a variable threshold, where said regulator provides said portion of said encoded video upon receipt of a confirmation message of a successful transmission of a previously-sent portion of said encoded video from a receiver, and provides said portion of said encoded video upon expiration of said timer, but provides a portion of said encoded video in no other circumstance, where said portion of said encoded video is different than said previously-sent portion of said encoded video, and where said timer resets upon receipt of confirmation messages from a receiver;
(c) transmitting said encoded video across a network interconnection to said receiver;
(d) wherein said threshold is based upon an estimation of the amount of said encoded video in a buffer of a layer lower than said application layer and within said sender, where said estimation is based upon data stored in a virtual buffer that holds a list of the sequence numbers of packets estimated to be present in said buffer of said layer lower than said application layer.
2 Assignments
0 Petitions
Accused Products
Abstract
A transmission systems suitable for video.
116 Citations
30 Claims
-
1. A method for transmitting video content comprising:
-
(a) encoding said video by an application layer at a sender; (b) providing a portion of said encoded video to a lower network layer than said application layer at said sender, subject to at least one regulator that regulates the rate that data is transferred from said application layer to said lower network layer, based upon, at least in part, a timer reaching a variable threshold, where said regulator provides said portion of said encoded video upon receipt of a confirmation message of a successful transmission of a previously-sent portion of said encoded video from a receiver, and provides said portion of said encoded video upon expiration of said timer, but provides a portion of said encoded video in no other circumstance, where said portion of said encoded video is different than said previously-sent portion of said encoded video, and where said timer resets upon receipt of confirmation messages from a receiver; (c) transmitting said encoded video across a network interconnection to said receiver; (d) wherein said threshold is based upon an estimation of the amount of said encoded video in a buffer of a layer lower than said application layer and within said sender, where said estimation is based upon data stored in a virtual buffer that holds a list of the sequence numbers of packets estimated to be present in said buffer of said layer lower than said application layer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method for transmitting video content comprising:
-
(a) encoding said video by an application network layer at a sender; (b) sequentially providing respective portions of said encoded video to a MAC layer at said sender, subject to a regulator that regulates the rate that data is transferred from said application layer to said lower network layer, based, at least in part, upon a timer reaching a variable threshold, where said timer resets upon receipt of confirmation messages from a receiver; (c) transmitting said encoded video across a network interconnection to a receiver; (d) wherein said providing is based upon a virtual MAC buffer that only estimates the fullness of a MAC buffer being less than said variable threshold, said variable threshold a function of the size of the most previous sequential portion of said encoded video provided to said MAC layer, and said variable threshold based on a virtual MAC buffer in the application layer emulating at least one condition of said MAC buffer, where said virtual buffer is different than said regulator. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A method for transmitting video content comprising:
-
(a) encoding said video by an application network layer at a sender; (b) providing a portion of said encoded video to a lower network layer than said application layer at said sender, subject to a regulator that regulates the rate that data is transferred from said application layer to said lower network layer, based, at least in part, upon a timer reaching a variable threshold, where said timer resets upon receipt of confirmation messages from a receiver; (c) transmitting said encoded video across a network interconnection to a receiver; (d) wherein said providing is based upon a virtual MAC buffer in the application layer that only holds a list of the sequence numbers of packets estimated to be present in a MAC buffer in said lower network layer, where said virtual buffer is different than said regulator, and where said variable threshold is a function of the expected time difference between the instant that said portion of said encoded video was provided to said lower network layer and the instant of receipt of said feedback message. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
Specification