回退N与选择性重传协议的区别2024 年 8 月 28 日 | 阅读 6 分钟 回退 N 协议 (Go-Back-N Protocol)它是自动重传请求 (ARQ) 协议的一个例子。在此协议中,发送方节点连续在网络中传输定义数量的数据帧。窗口大小决定了节点的数量。发送方可以在未收到接收方节点的确认的情况下发送这些帧。这是滑动窗口协议的一个特例,其中发送方窗口大小为 N,接收方窗口大小为 1。 接收方节点跟踪接收方节点要接收的下一帧的序列号。接收方丢弃任何序列号不同的数据帧。这意味着它删除已由接收方确认的任何重复帧,或期望稍后由节点接收的任何乱序帧。它只接受有序的节点交付。然后,它会为按正确顺序传输的最后一帧发送确认。一旦发送方节点传输完窗口中的所有数据帧,它就会搜索自第一个数据帧在传输中丢失以来直到该数据帧的所有帧。然后,发送方节点转到接收方确认的最后一帧的序列号,然后开始使用该帧填充窗口并继续传输过程。 选择重传协议 (Selective Repeat Protocol)该协议也称为选择重传自动重传请求 (Selective Repeat Automatic Repeat Request)。该协议在网络节点的链路层实现。该协议使用滑动窗口方法,确保从发送方节点到接收方节点的数据帧可靠传输。好的数据帧会被接收方节点接收并缓冲。该协议更有效,因为它仅在网络传输期间重新传输损坏的数据帧。 为了实现选择重传协议,需要两个相同大小的窗口。发送窗口存储发送方节点要传输的数据帧。同时,接收窗口负责存储接收方节点接收到的数据帧。 窗口大小保持为数据帧最大序列号的一半。例如,如果序列号范围从 0-15,则发送方和接收方节点的窗口大小都将为 8。 回退 N 与选择重传协议的工作原理回退 N 协议 (Go-Back-N Protocol)回退 N ARQ 允许在收到第一帧的确认之前发送多帧。帧是按顺序编号的,并且有一个有限数量的帧。可以发送的最大帧数取决于发送窗口的大小。如果在约定的时间内未收到帧的确认,则从该帧开始的所有帧都将被重新传输。 发送窗口的大小决定了出站帧的序列号。如果帧的序列号是 n 位字段,则可分配的序列号范围是 0 到 2n?1。因此,发送窗口的大小是 2n?1。因此,为了容纳 2n?1 的发送窗口大小,选择 n 位序列号。 选择重传协议 (Selective Repeat Protocol)它使发送方节点能够在网络中传输多个数据帧。传输的数据帧取决于发送窗口中可用数据帧的情况。可以在不等待前一数据帧确认的情况下传输下一帧。发送方窗口的大小决定了可以同时传输的帧数。 接收方节点存储第一个错误或损坏的帧的序列号,或者接收方节点未收到的节点的序列号。一旦当前窗口已满,接收方节点就会用收到的后续帧填充接收窗口。然后,接收方节点在确认帧中发送损坏或丢失帧的序列号。 发送方节点连续传输发送方窗口中可用的帧。一旦发送窗口中存储的所有数据帧都传输到接收方节点,它就会重新发送由确认提供的序列号的数据帧。重新传输完成后,它继续向其他网络节点传输。 回退 N 与选择重传的区别这两个滑动窗口协议在功能和工作方式上也存在差异。回退 N 和选择重传协议之间的区别如下:
结论选择重传协议更有效,因为它不会在发送方已正确传输到接收方节点的数据帧上浪费网络资源。 回退 N 协议更常用,因为它在网络中的实现复杂性较低。此外,它的成本相对较低,因为它需要更少的存储。 如果回退 N 和选择重传协议的窗口大小相等,则这两个协议的效率几乎相等。资源的利用和可用性决定了将实施哪个协议。 选择重传协议兼具停-等协议和回退 N 协议的优点。 |
我们请求您订阅我们的新闻通讯以获取最新更新。