System and method for providing an adaptive streaming flow control mechanism between the TCP and IP layers of the TCP/IP suite of protocols
First Claim
1. A method for receiving data packets, in a data communication network operated under a TCP/IP suite of protocols, comprising a TCP protocol layer and an IP protocol layer, wherein said each open TCP connection has an optimal receiving rate, said method comprising, for said each open TCP connection, the steps of:
- receiving said data packets from said IP protocol layer;
temporarily storing said data packets in a queue dedicated to each said open TCP connection, wherein the queue is in an adaptive streaming (AS) protocol layer inserted between the IP protocol layer and the TCP protocol layers of said TCP/IP suite of protocols;
reordering said data packets in the queue; and
delivering from said AS protocol layer, to said TCP protocol layer, said data packets at said optimal receiving rate of said TCP connection.
1 Assignment
0 Petitions
Accused Products
Abstract
In a data communication network operated under the TCP/IP suite of protocols the invention adds an adaptive streaming (AS) layer, inserted between the IP and the TCP protocol layers, in which the received data packets of each open TCP connection are temporarily queued and from where they are first reordered then, delivered to the TCP layer at a pace matching the optimal receiving rate of TCP connections. Thus, the invention adds a rate-based transmission mechanism to the TCP layer for the received data packets so as to better adapt to higher-speed communication lines and to reduce drastically the burstiness of the TCP flow control.
82 Citations
12 Claims
-
1. A method for receiving data packets, in a data communication network operated under a TCP/IP suite of protocols, comprising a TCP protocol layer and an IP protocol layer, wherein said each open TCP connection has an optimal receiving rate, said method comprising, for said each open TCP connection, the steps of:
-
receiving said data packets from said IP protocol layer;
temporarily storing said data packets in a queue dedicated to each said open TCP connection, wherein the queue is in an adaptive streaming (AS) protocol layer inserted between the IP protocol layer and the TCP protocol layers of said TCP/IP suite of protocols;
reordering said data packets in the queue; and
delivering from said AS protocol layer, to said TCP protocol layer, said data packets at said optimal receiving rate of said TCP connection. - View Dependent Claims (2, 3, 4)
-
-
5. A data communications network operated under a TC/IP suite of protocols comprising a TCP protocol layer and an IP protocol layer, wherein said each open TCP connection has an optimal receiving rate, said data communications network comprising, for said each open TCP connection:
-
means for receiving said data packets from said IP protocol layer;
means for temporarily storing said data packets in a queue dedicated to each said open TCP connection, wherein the queue is in an adaptive streaming (AS) protocol layer inserted between the IP protocol layer and the TCP protocol layers of said TCP/IP suite of protocols;
means for reordering said data packets in the queue; and
means for delivering from said AS protocol layer, to said TCP protocol layer, said data packets at said optimal receiving rate of said TCP connection. - View Dependent Claims (6, 7, 8)
-
-
9. A computer program product for use with a data communications network operated under a TCP/IP suite of protocols, comprising a TCP protocol layer and an IP protocol layer, wherein said each open TCP connection has an optimal receiving rate, said computer program product comprising, for said each open TCP connection:
-
computer readable code means for receiving said data packets from said IP protocol layer;
computer readable code means for temporarily storing said data packets in a queue dedicated to each said open TCP connection, wherein the queue is in an adaptive streaming (AS) protocol layer inserted between the IP protocol layer and the TCP protocol layers of said TCP/IP suite of protocols;
computer readable code means for reordering said data packets in the queue; and
computer readable code means for delivering from said AS protocol layer, to said TCP protocol layer, said data packets at said optimal receiving rate of said TCP connection. - View Dependent Claims (10, 11, 12)
-
Specification