拥塞控制是网络现象,那么为什么以及如何在传输层处理这一问题。拥塞发生在网络中的中间设备(路由器)之间。但是昨天我正在读一篇论文( TCP主机到主机拥塞控制,Alexander Afanasyev,Neil Tilley,Peter Reiher和Leonard Kleinrock)。在这里,我们可以看到标题,主机到主机拥塞控制。因此,我想问一下,如果网络之间发生拥塞,那么控制它是网络层的责任,但是我们可以看到,传输层控制它。?怎么做?传输层如何知道网络之间发生了拥塞。?
发布于 2015-10-24 17:04:28
传输层是应用程序的端到端连接.TCP是一种传输层协议,它可以猜测存在拥塞,因为它需要提供有保证的传递和无序的数据包重新组装。当TCP基于丢失的数据包怀疑拥塞时,它有几种机制来减缓数据包的传送速度。另一方面,UDP,另一种传输层协议,对这样的事情完全一无所知,因为它是一种不期望发送的数据包到达其目的地,并且不知道数据包可能会来的一种即席和遗忘的、尽力而为的协议。
从第三层的角度来看,拥塞控制是用QoS实现的.数据包标记和分类、优先级、缓冲、队列、成形、维持治安、红色等等,其中一些或全部可以用来试图达到网络设计人员所确定的公平性的平衡。
例如,当缓冲区已满时,它们就会开始丢弃新的通信量,这些流量的目的地是缓冲区。这可能会在网络中造成许多问题。随机早期检测(RED)可以利用TCP的特性提供帮助。RED将随机丢弃排队的数据包,以防止缓冲区填充,TCP流将调整自己以减慢数据包的传递速度,从而帮助防止完全缓冲区。
可以首先提供较小的数据包大小,允许更多的数据包通过接口,而不是让许多小数据包在相对较长的几个大数据包的序列化中等待。
QoS是一个很大的话题,在这里不能很好地解决,但听起来像是一个你应该研究的课题。
https://stackoverflow.com/questions/33315078
复制相似问题