什么是 ARQ协议?
ARQ协议(自动重传请求,Automatic Repeat-reQuest)是OSI模型中数据链路层和传输层的错误纠正协议之一。它通过使用确认和超时这两个机制,在不可靠服务的基础上实现可靠的信息传输。具体来说,如果发送方在发送后一段时间之内没有收到确认帧,它通常会重新发送数据。
ARQ 的工作原理
ARQ协议的主要功能是,发送方在超时发生前收到接收方的确认,这意味着帧或数据包已被正确接收,超时是接收方必须向发送方发送确认的特定时间段。如果发生超时:发送方在规定时间内未收到确认,则意味着帧或数据包在传输过程中损坏或丢失。因此,发送方会重新发送数据包,这些协议确保重复这一过程,直到发送正确的数据包为止。
ARQ协议类型
ARQ 包含三个协议:停止 – 等待协议(SW),回退N帧协议(GBN),选择重传协议(SR)。
停止 – 等待协议(SW):发送方每发送一帧之后就必须等待接受方的确认返回,仅当接受放确认正确接收后,再继续发送下一帧。即开始下一个分组传输前必须保证当前分组被正确接受。该方法所需缓冲存储空间最小,在等待确认信号时不发送数据,导致信道利用率低,尤其是传输时延很大时,信道效率很低。
回退N帧协议(GBN):发送端发送完一个数据分组后,并不停下来等待确认消息,而是连续发送N个数据分组消息。当发送方接受到接受方的状态报告指示报文出错,发送方将重传过去的n个报文。该方法比停等式减少等待时间,提高吞吐率;但是一帧出错,必须重传其帧和后面n-1帧,增加了系统开销,在信道越差时,有待于确认的帧越多,可能要退回来重发很多帧,所以此方法性能不一定比停等式优越。
选择重传协议(SR):当发送方接受到接受方的状态报告指示报文出错时,发送方只发送出错的报文。因此必须在接受端加大缓存,以备所有序号都收到且连续然后一并交给主机。
ARQ协议的优缺点
- ARQ协议的优点是它非常的简单。因而被广泛的应用在分组交换网络中。
- ARQ协议的缺点是需要接收方发送ACK,这样增加了网络的负担也影响了传输速度。重复发送数据包来纠正错误的方法也严重的影响了它的传输速度。
总之,ARQ 是一种在数据传输过程中,错误控制的策略,保证了数据的完整性和顺序性。核心目的是在不可靠的网络上实现可靠的数据传输。比如,在短波无线电传输,GSM 网络,电报等领域都有很广泛的应用。在当今因为各种原因导致的复杂互联网环境上,某些点对点传输的服务,也变得不那么可靠,可以考虑引入 ARQ 策略。