TECHNICAL FIELDThe present invention relates generally to radio link control for high speed packet data services in wireless networks and, more particularly, to segmentation and reassembly of IP packets into RLC protocol data units.
BACKGROUNDRadio link control (RLC) is a protocol used in mobile communication networks to reduce the error rate over wireless channels. Through the use of forward error correction and retransmission protocols, the physical layer can typically deliver packets with an error rate on the order of 1%. The transport control protocol (TCP) used in most IP networks, however, requires an error rate in the order of 0.0% for reliable communications. The radio link control (RLC) protocol bridges the gap between the error performance of the physical layer and the requirements for reliable communication over TCP networks.
The RLC protocol is responsible for the error free, in-sequence delivery of IP packets over the wireless communication channel. RLC divides IP packets, also called RLC service data units (SDUs), into smaller units called RLC protocol data units (PDUs) for transmission over the wireless communication channel. A retransmission protocol is used to ensure delivery of each RLC PDU. If an RLC PDU is missed at the receiver, the receiver can request retransmission of the missing RLC PDU. The RLC SDU is reassembled from the received RLC PDUs at the receiver.
Because IP packets can be large, RLC provides a mechanism for segmentation and concatenation of IP packets. Segmentation allows IP packets to be divided into multiple RLC PDUs for transmission. Concatenation enables parts of multiple IP packets to be included in a single RLC PDU. The header of the RLC PDU conventionally includes a length indicator (LI) to indicate the length of each IP packet to enable reassembly of the IP packets at the receiver.
For Release 7 of the Wideband Code Division Multiple Access (WCDMA) standard as standardized by the 3rdGeneration Partnership project (3GPP), it has been proposed to eliminate the concatenation functionality and replace the length indicator in the RLC header with a segmentation indicator. It has been proposed that a 2-bit segmentation indicator could be used to indicate one of four different segmentation possibilities:
- one RLC SDU fits exactly into one RLC PDU;
- an RLC SDU starts in an RLC PDU and continues to the next RLC PDU;
- a segment of an RLC SDU fills the RLC PDU; and
- an RLC SDU ends in the RLC PDU.
SUMMARYThe proposal described above requires a new acknowledged mode format for the RLC PDU. It is thus an object of the present invention to have a segmentation indicator that enables reuse of existing acknowledge mode formats for RLC PDUs.
The present invention provides a method for segmenting data units according to a first transmission format into data units according to a second transmission format. Data units according to the first transmission format are divided into two or more segments and a header is added to each segment to create data units according to the second transmission format. A single-bit segmentation indicator inserted into the header of the data unit according to the second transmission format indicates whether the data unit according to the first transmission format ends in a data unit according to the second transmission format.
The present invention also relates to a transmitter unit including an RLC processor configured to perform the method according to the present invention.
In one exemplary embodiment, the data units according to the first transmission format comprise RLC SDUs and the data units according to a second transmission format comprise RLC PDUs. Assuming that concatenation is not used, the single bit segmentation indicator, in combination with sequence numbering of RLC PDUs, is sufficient to perform the segmentation and reassembly functions of the RLC protocol. The receiver may determine the start of the RLC SDU from the sequence number of the RLC PDU terminating the last RLC SDU. Based on this information, the receiver may determine the sequence numbers of all RCL PDUs corresponding to a single RLC SDU.
The present invention allows the advantage that one bit in the segmentation indication field of the Flexible RLC PDU format can be saved and, in case a new FMD format is specified, that a spare bit is provided which can be used for future extensions or added functionality.
BRIEF DESCRIPTION OF THE DRAWINGSExemplary embodiments of the invention will now be described in more detail with reference to the accompanying schematic drawings.
FIG. 1 illustrates an exemplary communication network.
FIG. 2 illustrates segmentation of RLC SDUs into RLC PDUs.
FIG. 3 illustrates an exemplary RLC PDU format.
FIG. 4 illustrates an exemplary method for segmenting RLC SDUs into RLC PDUs.
FIG. 5 illustrates an exemplary method for reassembling RLC SDUs from RLC PDUs
DETAILED DESCRIPTIONReferring now to the drawings,FIG. 1 illustrates acommunications network10 whereinmobile stations20 communicate over acommunication channel30 with abase station40.Base station40 is part of an access network (AN) that provides connection to an IP network, such as the Internet. Themobile station20 may transmit packet data to, and receive packet data from, thebase station40 over thewireless communication channel30. Although the following discussion assumes thatbase station40 andmobile station20 operate according to the Wideband Code Division Multiple Access (WCDMA) standard by the 3rdGeneration Partnership Project (3GPP) the principles described herein may be applied to other standards and access technologies.
In WCDMA networks, hybrid ARQ is employed at the physical layer to provide an error rate of approximately 1%. The transport control protocol (TCP), however, requires an error rate in the order of 0.01% for reliable communications. The radio link control (RLC) protocol bridges the gap between the error performance of the physical layer and the requirements for reliable communication over TCP networks. The RLC functionality is implemented by an RLCprocessor22 in themobile station20, and by an RLCprocessor42 in thebase station40.
In WCDMA, the RLCprocessor22,42 at the transmitting station (e.g.mobile station20 for uplink transmissions andbase station40 for downlink transmissions) receives compressed IP packets from the packet data convergence protocol (PDCP) layer. The IP packets are also known as RLC service data units (SDUs). RLC divides the SDUs into segments, and adds a header to each segment to create RLC protocol data units (PDUs). The PDUs are then transmitted over thewireless communication channel30 to the receiver. On the uplink, the PDUs are transmitted by a transmitter at themobile station20 to a receiver at thebase station40. On the downlink, the PDUs are transmitted by a transmitter at thebase station40 to a receiver at themobile station20. When a missing PDU is detected by the RLCprocessor22,42 at the receiver, it sends a negative acknowledgement (NACK) to request retransmission of the missing PDU. When the PDUs corresponding to a single SDU are received, the SDU is reassembled and passed to upper layer protocols.
FIG. 2 illustrates the segmentation of RLC SDUs into RLC PDUs. In the example shown inFIG. 2, anSDU50 is divided into three segments to form threePDUs52. The number of segments may vary depending on the relative sizes of SDU50 and PDU52. EachPDU52 includes aheader54 andpayload56 that contains one segment of theSDU50. The size of aPDU52 may be flexible and the operator may set a predetermined maximum size for aPDU52. During the segmentation process, RLCprocessor22,42 divides theSDU50 into segments based on the maximum size criterion. The size of thefinal SDU50 is allowed to vary so that padding or concatenation is not required to fill thefinal PDU52.
To reassembleSDUs50 fromPDUs52, theRLC processor22,42 at the receiver needs to identify thePDUs52 corresponding to asingle SDU50. Assuming that concatenation is not used, the segmentation indicator in theheader54 of aPDU52 may be used to demarcate the end of anSDU50. According to one embodiment, the segmentation indicator comprises a single bit that is set to a first value if theSDU50 continues into thenext PDU52, and is set to a second value if theSDU50 terminates in thePDU52. For example, the segmentation indicator may be set to a value of “0” to indicate that theSDU50 continues into thenext PDU52, and to a value of “1” to indicate that theSDU50 ends in thecurrent PDU52. Based on the segmentation indicator and the sequence numbers of thePDUs52, theRLC processor22,42 may determine whichPDUs52 correspond to anSDU50. In an alternate embodiment, the segmentation indicator may be used to demarcate the beginning of anSDU50, but otherwise operates in the same manner.
FIG. 3 illustrates an exemplary PDU format according to one embodiment. Theheader54 includes data/control (D/C) field, a sequence number field, a polling bit (P) field, and a header extension (HE) field. The D/C filed indicates the type (e.g., data or control) of thePDU52. The sequence number field spans the first and second octets of thePDU52 and contains the sequence number of thePDU52. The P field is used to request a status report. The HE field is a two-bit field including the segmentation indicator and a spare bit. The segmentation indicator is used to indicate whether thePDU52 contains the last segment of anSDU50. The spare bit may be used for purposes other than segmentation. According to alternative embodiments other PDU formats may be used as well. Some PDU formats may have a separate segmentation indicator (SI) field with a single bit used as the segmentation indicator.
Table 1 below illustrates one method of implementing the segmentation indicator using the PDU format shown inFIG. 3.
| TABLE 1 |
|
| Segmentation Indicator (First Embodiment) |
| Value | Description |
| |
| x0 | The RLC SDU in this RLC PDU continues |
| | into the next PLC PDU. |
| x1 | The RLC SDU ends in this RLC PDU. |
| |
As shown in Table 1, the least significant bit is set to “0” to indicate that theSDU50 continues into thenext PDU52, and is set to “1” to indicate that theSDU50 ends in thecurrent PDU52. In this embodiment, the most significant bit, represented by an “x”, is a spare bit. The spare bit may be used, for example, to indicate whether thePDU52 is transmitted for the first time. For example, the spare bit may be set to a value of “0” to indicate that thePDU52 is transmitted for the first time, and to a value of “1” to indicate that thePDU52 is a retransmission of a previously-transmittedPDU52. Indicating whether thePDU52 is retransmitted enables prioritization of retransmittedPDUs52 at thebase station40, which is beneficial for performance.
Table 2 illustrates an alternative implementation of the segmentation indicator.
| TABLE 2 |
|
| Segmentation Indicator (Second Embodiment) |
| Value | Description |
| |
| 0x | The RLC SDU in this RLC PDU continues |
| | into the next PLC PDU. |
| 1x | The RLC SDU ends in this RLC PDU. |
| |
As shown by Table 2, the most significant bit functions as the segmentation indicator, while the least significant bit functions as the spare bit. The segmentation indicator is set to a value of “0” or “1,” depending on whether theSDU50 ends in thecurrent PDU52. The spare bit may be used to indicate whether thePDU52 is transmitted for the first time or is a retransmission of a previously-transmittedPDU52.
FIG. 4 illustrates anexemplary procedure100 implemented by anRLC processor22,42 at a transmitter for segmentingSDUs50 intoPDUs52. The transmitter may be located in either themobile station20 for uplink communications, or thebase station40 for downlink communications.Procedure100 begins when theRLC processor22,42 receives anSDU50 from a higher layer protocol (block102). TheRLC processor22,42 segments the SDU50 (block104) and adds a header to each segment to create one or more PDUs52 (block106). For eachPDU52 created, theRLC processor22,42 determines whether theSDU50 ends in the PDU52 (block108). If not, theRLC processor22,42 sets the segmentation indicator of thePDU52 equal to 0 (block110). If theSDU50 ends in thePDU52, theRLC processor22,42 sets the segmentation indicator of thePDU52 equal to 1 (block112). Thisprocedure100 is repeated for eachPDU52 and ends when thelast PDU52 is processed (block114).
FIG. 5 illustrates anexemplary procedure150 implemented by theRLC processor22,42 at a receiver for reassemblingSDUs50 from receivedPDUs52. The receiver may be located in either themobile station20 for downlink communications, or thebase station40 for uplink communications. TheRLC processor22,42 receivesPDUs52 comprising one or more SDUs50 (block152). For eachSDU50, the start of theSDU50 is determined based on the sequence number of thePDU52 containing the end of the last SDU50 (block154). For example, if thelast SDU50 ends in thePDU52 with sequence number n, the start of thenext SDU50 will begin with thePDU52 containing the sequencenumber n+1. TheRLC processor22,42 determines the end of eachSDU50 based on the segmentation indicator in the header of the PDU52 (block156). Because theRLC processor22,42 knows the sequence numbers of thePDUs52 where theSDU50 begins and ends, it may then identify all of thePDUs52 belonging to thesame SDU50 and reassemble the SDU50 (block158).
The present invention may, of course, be carried out in other ways than those specifically set forth herein without departing from essential characteristics of the invention. The present embodiments are to be considered in all respects as illustrative and not restrictive, and all changes coming within the meaning and equivalency range of the appended claims are intended to be embraced therein.