System and method for avoiding stall using timer for high-speed downlink packet access system
First Claim
1. A method for processing packet data in a receiver of a communications system, comprising:
- receiving a data block having a sequence number;
storing the data block in a reordering buffer;
starting a timer for the reordering buffer if a data block of a preceding sequence number is missing and the timer is not active.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for preventing a stall condition in a terminal of a mobile communications system uses a timer to limit how long data blocks are stored in a reordering buffer. The method includes receiving a data block over a wireless link, determining whether a preceding data block has not been received, storing the received data block in the reordering buffer if a preceding data block has not been received, and then outputting the received block from the buffer when the timer expires. Whether or not a preceding data block is missing is determined based on a comparison of transmission sequence numbers. In other steps of the method, succeeding data blocks are output from the buffer based on expiration of a second timer period. The periods of the timer are advantageously controlled to prevent a wraparound of transmission sequence numbers with respect to data blocks stored in the buffer. If desired, the data blocks may include MAC-hs protocol data units. By limiting the amount of time any one data block stays in the buffer, a stall condition is advantageously prevented. As a result, transmission efficiency and the reliability of received data is substantially improved. The method is ideally suited for use in a medium access layer of a high-speed downlink packet access (HSDPA) mobile communications system, although other uses are contemplated.
-
Citations
35 Claims
-
1. A method for processing packet data in a receiver of a communications system, comprising:
-
receiving a data block having a sequence number;
storing the data block in a reordering buffer;
starting a timer for the reordering buffer if a data block of a preceding sequence number is missing and the timer is not active. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for processing packet data in a receiver of a communications system, comprising:
-
starting a timer for a reordering buffer;
receiving a data block having a sequence number;
storing the data block in the reordering buffer;
removing the data block from the reordering buffer when the timer expires if the sequence number of the data block precedes a sequence number of a data block received and stored in the reordering buffer at a time when the timer was started. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A user terminal of a radio communications, comprising:
-
a reordering buffer for storing a data block having a sequence number;
a timer; and
a controller which starts said timer for the reordering buffer if it receives a data block and another data block of a sequence number preceding to the sequence number of the received data block is missing and the timer is not active. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A method for processing packet data in a receiver of a communications system, comprising:
-
receiving a data block having a sequence number;
starting a timer having an expiration period for a reordering buffer if a data block of preceding sequence number is missing and no timer is active;
storing the data block in the reordering buffer. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
30. A method for processing packet data in a receiver of a communications system, comprising:
-
checking data blocks in a reordering buffer when a timer for the reordering buffer becomes inactive; and
restarting a timer for one of the data blocks which will be delivered to the upper layer at the last time among the data blocks stored in the buffer, if there remains at least one data block in the buffer. - View Dependent Claims (31)
-
-
32. A method for processing packet data in a receiver of a communications system, comprising:
-
receiving data blocks;
storing the data blocks in a reordering buffer;
starting a timer for the reordering buffer; and
delivering the data blocks from the reordering buffer to an upper layer when the timer expires, wherein the delivering step includes delivering the data blocks out of sequence. - View Dependent Claims (33, 34, 35)
-
Specification