自动重传请求(Automatic Repeat-reQuest,ARQ)是OSI模型中数据链路层的错误纠正协议之一。 它包括停止等待ARQ协议和连续ARQ协议,错误侦测(Error Detection)、正面确认(Positive Acknowledgment)、逾时重传(Retransmission after Timeout)与负面确认继以重传(Negative Acknowledgment and Retransmission)等机制。如果在协议中,发送方在准备下一个数据项目之前先等待一个肯定的确认,则这样的协议称为PAR(Positive Acknowledgement with Retransmission,支持重传的肯定确认协议)或者ARQ(Automatic Repeat reQuest,自动重复请求协议)。 自动重传请求(Automatic Repeat reQuest),通过接收方请求发送方重传出错的数据报文来恢复出错的报文,是通信中用于处理信道所带来差错的方法之一,有时也被称为后向纠错(Backward Error Correction,BEC);另外一个方法是信道纠错编码。
停等式ARQ 在停等式ARQ中,数据报文发送完成之后,发送方等待接收方的状态报告,如果状态报告报文发送成功,发送后续的数据报文,否则重传该报文。 停等式ARQ,发送窗口和接收窗口大小均为1,发送方每发送一帧之后就必须停下来等待接收方的确认返回,仅当接收方确认正确接收后再继续发送下一帧。该方法所需要的缓冲存储空间最小,缺点是信道效率很低。 回退n帧的ARQ 在回退n帧的ARQ中,当发送方接收到接收方的状态报告指示报文出错后,发送方将重传过去的n个报文。回退N,发送窗口大于1(2^(k-1)),接收窗口等于1。允许发送方可以连续发送信息帧,但是,一旦某帧发生错误,必须重新发送该帧及其后的n帧。这种方式提高了信道的利用率,但允许已发送有待于确认的帧越多,可能要退回来重发的帧也越多。 选择性重传ARQ 在选择性重传ARQ中,当发送方接收到接收方的状态报告指示报文出错,发送方只发送传送发生错误的报文。选择重传协议,发送窗口和接收窗口都大于1 且小于(2^(k-1))。发送方仅重新传输发生错误的帧,并缓存错误帧之后发送的帧。与回退N相比,减少了出错帧之后正确的帧都要重传的开销。 混合ARQ 在混合ARQ中,数据报文传送到接收方之后,即使出错也不会被丢弃。接收方指示发送方重传出错报文的部分或者全部信息,将再次收到的报文信息与上次收到的报文信息进行合并,以恢复报文信息。
|