Patent ID: 8301957

Claim:
An incremental redundancy retransmission method adapted to transmission of packets that can be fragmented into N packets, comprising the steps of: receiving an SDU, wherein the SDU is an IP packet from a high-layer protocol; dividing the SDU into a plurality of N MAC protocol data units PDU(i), wherein i varies from one to N; Initializing a retransmission credit counter, corresponding to an overall retransmission credit, to a value N*M, wherein M is a number of transmissions allowed for each protocol data unit; Initializing i to a predetermined value, i corresponding to an index of PDU(i) that will be transmitted; coding PDU(i) with a convolution coder of efficiency 1/K, to produce K MAC packets, wherein each of the K MAC packets comprise PDU(i), respectively, and (K−1) packets containing a redundancy, wherein each of the K MAC packets is denoted P.MAC(i)(k) with k varying from one to K; setting k equal to one, and transmitting P.MAC(i)(1); decrementing the retransmission credit counter by one count; and checking if there is no transmission error, wherein: if there is no transmission error: transmitting an acknowledgement to a transmitter; checking a value of i, wherein: if i is equal to N, then all protocol data units have been transmitted successfully, reassembling the SDU; if i is less than N and if the retransmission credit is greater than a number of protocol data units that have not yet been transmitted, incrementing i by one count and returning to the step of coding PDU(i); and if i is less than N and the retransmission credit is less than the number of protocol data units that have not yet been transmitted, then indicating that a transmission of the SDU has failed; if there are one or more transmission errors: sending a NACK to the transmitter; and checking the value of the retransmission credit, wherein: if the retransmission credit is less than the number of protocol data units that have not yet been transmitted, then indicating that the transmission of the SDU has failed; if the retransmission credit is greater than the number of protocol data units that have not yet been transmitted and the (K−1) redundancy blocks associated with PDU(i) have not been transmitted, then incrementing k by one count and transmitting P.MAC(i)(k) and returning to the step of checking if there is no transmission error; and if the retransmission credit is greater than the number of protocol data units that have not yet been transmitted and including all blocks, information and redundancy obtained after coding the PDU(i) would have been transmitted, then returning to the step of setting k equal to one without modifying the value of i.