什么是流控制和错误控制的概念以及它们的区别?
让我们了解一下计算机网络中的错误控制是什么。
错误控制
错误控制关注的是确保所有帧都可能按顺序交付到目的地。
为了确保交付,它需要三个要素,如下所述:
确认
通常,可靠的交付是使用“带重传的确认”范例实现的,其中接收器向发送器返回一个特殊的ACK帧,指示已正确接收帧。
在某些系统中,接收器还会为接收错误的帧返回否定确认 (NACK)。因此,它告诉发送器在计时器超时前重传帧。
计时器
简单的ACK/NACK方案未能解决的一个问题是从丢失的帧中恢复,因此未能请求ACK或NACK。
如果ACK或NACK丢失会发生什么?
重传计时器用于重新发送未产生ACK的帧。当我们发送帧时,安排一个计时器,使其在应返回ACK后的某个时间超时。如果计时器归零,则重传帧。
序列号
重传引入了重复帧的可能性。为了减少重复,我们必须向每个帧添加序列号,以便接收器可以区分新帧和旧帧。
流量控制
它处理限制发送器的速度以匹配接收器的速度。流量控制有两种方法:
基于反馈的流量控制
接收器将信息发送回发送器,允许发送更多数据,或者至少发送器必须告知接收器的状态。
基于反馈的流量控制
接收器将信息发送回发送器,允许发送更多数据,或者至少发送器必须告知接收器的状态。
基于速率的流量控制
协议具有内置机制,可在不使用接收器反馈的情况下限制发送器传输数据的速率。
各种流量控制方案使用一个通用协议,该协议包含关于发送器何时可以传输下一帧的明确定义的规则。这些类型的规则通常禁止发送帧,直到接收器隐式或显式地授予许可。
区别
流量控制和错误控制的主要区别如下:
流量控制 | 错误控制 |
---|---|
这是一种用于维护从发送方到接收方的正确数据传输的方法。 | 它用于确保将无错误数据从发送方交付到接收方。 |
基于反馈的流量控制和基于速率的流量控制是实现流量控制的各种方法。 | 这里可以使用许多方法,例如循环冗余校验、奇偶校验、校验和。 |
它避免了溢出并防止数据丢失。 | 它检测并纠正传输中可能发生的错误。 |
示例包括停止等待和滑动窗口。 | 示例包括停止等待ARQ、回退N ARQ、选择性重传ARQ。 |
广告