流量控制与拥塞控制的区别
流量控制和拥塞控制都是计算机网络中的流量控制方法。流量控制是一种允许两个速度不同的站点相互通信的技术。它是一套措施,用于调节发送方发送的数据量,以防止快速发送方压垮慢速接收方。
当网络接收到的数据包数量超过其设计容量时,就会发生网络拥塞。网络拥塞发生在流量超载的情况下。网络中存在一些机制来控制这种拥塞情况。
阅读本文,了解更多关于流量控制和拥塞控制的信息,以及这些机制彼此之间的区别。
什么是流量控制?
流量控制是一种系统,它保证发送方的传输速率与接收方的接收能力成比例。
在数据通信中,流量控制用于管理两个节点之间的数据/数据包的流量,主要是在发送设备的数据传输速度快于接收设备的处理速度时。
许多不同的设备连接到任何规模的网络,每个设备都有其数据传输设置。例如,路由器旨在管理数据路由,而接收该数据的PC的发送/接收能力要低得多。
如果发送方开始传输数据的速度快于接收节点的能力,则可能会出现冲突。流量控制用于解决此问题。此方法通过关注两个节点的发送和接收能力来控制节点之间的数据流。
**Xon-Xoff**是一种流量控制协议,它同步发送方和接收方。当接收方的缓冲区已满时,它会发送一个传输关闭信号;当接收方准备好重新接收数据时,它会发送一个传输开启信号。Xon-Xoff 使用异步串行连接。
在数据链路层,流量控制限制了发送方在等待接收方的确认之前可以发送的帧数。
流量控制的类型
流量控制大致可以分为两类:
**基于反馈的流量控制** - 在这些协议中,发送方在收到用户的确认后才发送帧。这用于数据链路层。
**基于速率的流量控制** - 这些协议内置机制来限制数据的传输速率,而无需接收方的确认。这用于网络层和传输层。
什么是拥塞控制?
当节点或链路承载过多的数据时,会导致排队延迟、帧或数据包丢失以及阻止新连接,从而降低网络服务质量。随着网络吞吐量下降,拥塞网络的响应时间变慢。当带宽有限且数据流量超过容量时,就会发生拥塞。
拥塞会导致通信介质阻塞。当子网方法中显示过多的数据包时,子网的性能会下降。因此,如果数据包正在遍历路径并主要经历路径的传播延迟,则网络的通信通道被称为拥塞。
由于拥塞导致的数据包丢失可以通过积极的网络协议重传来减轻,这在减少初始数据负载后会维持网络拥塞状态。这可能导致在相同数据流量负载下出现两种稳定状态——一种用于处理初始负载,另一种用于保持网络吞吐量较低。
避免现代网络中的拥塞崩溃需要使用网络拥塞避免技术以及拥塞控制,例如:
使用算法反馈将数据包吞吐量降低到可接受水平的协议是指数退避协议。
优先级策略用于只允许传输关键数据流。
预期增加的数据包吞吐量需求的适当网络资源分配。
拥塞控制算法
有两种拥塞控制算法:
**漏桶算法** - 漏桶算法在网络流量整形或速率限制的上下文中得到应用。该算法允许控制将记录注入网络的速率并管理数据速率的突发性。
**令牌桶算法** - 这是一种控制算法,指示何时应发送流量。此命令基于桶中令牌的显示。桶中包含令牌。每个令牌定义一个预定大小的数据包。桶中的令牌被删除以共享数据包。
流量控制与拥塞控制的区别
下表重点介绍了流量控制和拥塞控制的主要区别。
关键 | 流量控制 | 拥塞控制 |
---|---|---|
定义 | 流量控制是一种控制计算机网络中流量的机制。流量表示数据从发送方到接收方的流动。 | 拥塞控制也是一种流量控制机制。 |
层 | 数据链路层和传输层处理流量控制。 | 网络层和传输层处理拥塞控制。 |
主要关注点 | 防止接收方过载。 | 防止网络拥塞。 |
责任 | 只有发送方负责流量。 | 传输层负责流量。 |
工作原理 | 通过降低发送方的速度来防止流量。 | 通过降低传输层的速度来防止流量。 |
结论
总之,流量控制和拥塞控制都是计算机网络中的流量控制方法,但是流量控制机制可以防止接收节点过载,而拥塞控制机制在网络层和传输层工作以防止整个网络拥塞。