Method and apparatus for controlling flow of data in a communication system
First Claim
Patent Images
1. A method comprising:
- receiving an acknowledgment message which indicates reception of a packet of data at a destination;
determining a statistical mean and variance of delays of a plurality of previously received acknowledgment messages associated with a corresponding plurality of transmitted packets of data, wherein each delay is a time interval between transmitting a packet of data and receiving an acknowledgment;
determining a delay period based on said statistical mean and variance of delays; and
delaying passing said received acknowledgment message from a first protocol layer to a second protocol layer by said determined delay period.
1 Assignment
0 Petitions
Accused Products
Abstract
A control system (900, 1100) and various methods and apparatus for efficient communications of data across various protocol layers are disclosed. Generally, various aspects of the invention provide for efficient use of communication resources in a communication system (100) by efficiently controlling delay of a TCP acknowledgment message of reception of data from one communication protocol layer to another. Moreover, the delay of the TCP acknowledgment message and the message may be controlled to effect an efficient and consistent flow of data from a source end to a destination end, in particular, in case of encrypted communications.
52 Citations
23 Claims
-
1. A method comprising:
-
receiving an acknowledgment message which indicates reception of a packet of data at a destination;
determining a statistical mean and variance of delays of a plurality of previously received acknowledgment messages associated with a corresponding plurality of transmitted packets of data, wherein each delay is a time interval between transmitting a packet of data and receiving an acknowledgment;
determining a delay period based on said statistical mean and variance of delays; and
delaying passing said received acknowledgment message from a first protocol layer to a second protocol layer by said determined delay period. - View Dependent Claims (2)
-
-
3. A data processing unit comprising:
-
an input for receiving an acknowledgment message which indicates reception of a packet of data at a destination;
a processing unit for determining a statistical mean and variance of delays of a plurality of previously received acknowledgment messages associated with a corresponding plurality of transmitted packets of data, wherein each delay is a time interval between transmitting a packet of data and receiving an acknowledgment, and for determining a delay period based on said statistical mean and variance of delays; and
a data storage unit for delaying passing said received acknowledgment message from a first protocol layer to a second protocol layer by said determined delay period. - View Dependent Claims (4, 5)
-
-
6. A method comprising:
-
receiving an encrypted acknowledgment message which indicates reception of a packet of data at a destination, wherein said encrypted acknowledgment message is combined with encrypted data;
determining a statistical mean and variance of delays of a plurality of previously received acknowledgment messages associated with a corresponding plurality of transmitted packets of data, wherein each delay is a time interval between transmitting a packet of data and receiving an acknowledgment;
determining a delay period based on said statistical mean and variance of delays; and
delaying passing said received encrypted acknowledgment message and encrypted data from a first protocol layer to a second protocol layer by said determined delay period. - View Dependent Claims (7)
-
-
8. A data processing unit, comprising:
-
an input for receiving an encrypted acknowledgment message which indicates reception of a packet of data at a destination, wherein said encrypted acknowledgment message is combined with encrypted data;
a processing unit for determining a statistical mean and variance of delays of a plurality of previously received acknowledgment messages associated with a corresponding plurality of transmitted packets of data, wherein each delay is a time interval between transmitting a packet of data and receiving an acknowledgment, and for determining a delay period based on said statistical mean and variance of delays; and
a data storage unit for delaying passing said received encrypted acknowledgment message and said encrypted data from a first protocol layer to a second protocol layer by said determined delay period. - View Dependent Claims (9, 10)
-
-
11. A system for communications of data, comprising:
-
a base station for communicating radio link protocol (RLP) packets of data over a physical layer protocol and processing an acknowledgment message which indicates reception of a Transmission Control Protocol (TCP) packet of data at a destination, wherein said TCP packet of data comprises one or more said RLP packets of data;
a processor coupled to said base station for passing the acknowledgment message from a lower protocol layer to a TCP protocol layer, determining a statistical mean and variance of delays of a plurality of acknowledgment messages associated with a corresponding plurality of transmitted TCP packets of data, wherein each delay is a time interval between transmitting a TCP packet of data and receiving an acknowledgment, determining a delay period based on said statistical mean and variance of delays, delaying passing said received acknowledgment message from the lower protocol layer to the TCP protocol layer by said determined delay period; and
a network communicatively coupled to said base station for routing said TCP packets of data to the destination. - View Dependent Claims (12)
-
-
13. A system for communications of data, comprising:
-
a base station for communicating radio link protocol (RLP) packets of data over a physical layer protocol and processing an encrypted acknowledgment message which indicates reception of a Transmission Control Protocol (TCP) packet of data at a destination, wherein said TCP packet of data comprises one or more said RLP packets of data, and said encrypted acknowledgment message is combined with encrypted data;
a processor coupled to said base station for passing the encrypted acknowledgment message and encrypted data from a lower protocol layer to a TCP protocol layer, determining a statistical mean and variance of delays of a plurality of acknowledgment messages associated with a corresponding plurality of transmitted TCP packets of data, wherein each delay is a time interval between transmitting a TCP packet of data and receiving an acknowledgment, determining a delay period based on said statistical mean and variance of delays, delaying passing said received encrypted acknowledgment message and said encrypted data from the lower protocol layer to the TCP protocol layer by said determined delay period; and
a network communicatively coupled to said base station for routing said TCP packets of data to the destination. - View Dependent Claims (14)
-
-
15. An apparatus configured to change a rate of communicating data packets to a destination, the apparatus comprising:
-
a stack of protocol layers comprising a lower protocol layer and an upper protocol layer, the lower protocol layer being configured to (a) pass a data packet from the upper protocol layer toward the destination, and (b) pass an acknowledgment message to the upper protocol layer, the acknowledgment message indicating the destination properly received the data packet from the upper protocol layer;
the upper protocol layer being configured to (a) determine an expected delay between sending the data packet and receiving the acknowledgment message based on delays of previous acknowledgment messages, and (b) retransmit the data packet if the acknowledgment message has not been received within the expected delay;
wherein the lower protocol layer controls the expected delay;
wherein the expected delay is based on a history of actual delays of acknowledgement messages being received by the upper protocol layer, the apparatus further comprising;
means for determining a delay period using a statistical mean of the actual delay history and a variance of the actual delay history, wherein the lower protocol layer is configured to delay the propagation of the acknowledgement message to the upper protocol layer substantially by the determined delay period. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
Specification