摘要:
A data communications unit determines both efficiently and accurately when one or more data units should be received under a variety of conditions. In particular, the present invention compensates for transmission delays and for varying transmission rates over the communications channel. During a communication between first and second communications nodes, the first node receives a sequence of data units transmitted from the second node. The first communications node determines that one or more of the transmitted data units was either not received at all or was erroneously received (i.e., corrupted). The first node then sends a request to the second node to retransmit the one or more data units not received or erroneously received. A retransmit timer is started when the retransmission request is sent. The retransmit timer accounts for the delay time period required for the retransmit request to reach the second node, for the second node to retransmit the requested data units, and for the retransmitted data units to reach the first node. When the timer indicates that the delay time period has occurred/expired, a counter is started. Based on the counter's value, a determination is made whether all of the data units requested to be retransmitted have been properly received. If the determination indicates that the requested one or more data units has been retransmitted and properly received, no further action is taken. On the other hand, if the requested one or more data units to be retransmitted is not received or is erroneously received, the above-described procedure is repeated.