- 5
- 0
- 约4.09千字
- 约 9页
- 2018-07-04 发布于福建
- 举报
TCPIP协议拥塞控制探讨
TCPIP协议拥塞控制探讨 摘要:随着网络技术的发展,目前Internet的主要通信标准是TCP/IP协议,这一协议基于IP形成TCP/IP协议簇,互联网的基本通信机制由TCP/IP协议簇来提供。TCP/IP协议包括网络互联网协议和传输控制协议两个部分,其中面向连接的、点对点的、全双工的、可靠的通信服务由TCP协议来提供,它能够保证数据可靠地、没有重复地、按照顺序到达。随着互联网用户越来越多,网络宽带等资源也在持续增加,但是用户的需求仍然不能得到满足,逐渐暴漏出网络拥塞问题。如何更好的预防和控制拥塞,使网络具有同时到达资源并且低延时和低丢包率的最大效用,针对这一问题该文进行探讨和研究。 关键词:TCP/IP;网络拥塞;拥塞控制;算法 中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2013)07-1513-03 随着网络用户的不断增加,制约网络应用和发展的关键瓶颈是网络拥塞问题,对进入网络的数据流量进行控制是拥塞控制的主要目的,通过控制拥塞保证用户发送的数据流对通信网络不造成阻塞,并且瓶颈资源能够被合理的使用。可以在网络协议的不同层次上实施拥塞控制,首先对网络拥塞产生的原因进行分析,分类、归纳拥塞控制,持续时间越长的拥塞需要越高的控制层次来解决拥塞问题,并且拥塞控制的实现主要在传输层和网络层。 1 网络拥塞概述 网络的性能会逐渐下降,当过多的数据包存在于网络中时,这种现象被称为网络拥塞。吞吐量下降在发生网络拥塞的时候,并且严重的时候拥塞崩溃的现象会在发生。通常而言,增加的网络负载导致网络效率降低,在此时容易发生拥塞崩溃的现象。拥塞现象的描述如图1 。 图1 拥塞现象的描述 在较小的网络负载时,吞吐量随着负载的增长也会增长,两者为线性关系,相应的时间也缓慢增长。当网络容量被负载达到的时候,相应的时间急剧增加,吞吐量呈现缓慢增长,这一点被成为Knee点。吞吐量在负载超过一定量时开始急剧下降,路由器在负载继续增加的情况下开始丢包,这一点是死锁点。在拥塞控制机制中有拥塞控制和拥塞避免两种方式,前者的目的是在控制运行在死锁点附近的网络拥塞现象,后者是避免网络运行在Knee点的时候发证拥塞现象。前者是一种恢复措施,使网络从拥塞中恢复过来,进入正常运行状态;后者是一种预防措施,使网络维持在低延迟、高吞吐量状态,网络拥塞现象得以避免。 2 分析网络拥塞产生的原因 网络的处理能力和资源容量被网络的负载超出了是网络拥塞产生的根本原因,也就是网络对资源的总需求量大于总的可用资源,下面分析一下网络拥塞产生的原因。 1)不足的存储空间 一个输出端口需要对各种报文在接收端口的缓冲区域中进行排队,因为它接受的报文是由多个端口转发而来的,若满足使用要求的缓冲空间在输出端,报文就会丢失,尤其是突发的数据流也会丢失。这一矛盾的缓解通过增加存储空间来实现。但将会出现更加严重的拥塞现象在不断增加存储容量时。因为缓冲区网络结点的延时增加的时候,报文也会增加,最终端到端的确认时间也增加了,就会产生超时重发。网络负载因此会进一步增加,拥塞现象最终会加重。 2)不足的宽带容量 在低速链路中流通的高速数据流经常会产生拥塞现象,在数据发送率小于信道容量的时候,拥塞现象才会避免。不然在节点的缓冲区域堆集大量的报文就会产生拥塞。 3)速度缓慢的节点处理机 报文被放入其CPU队列中进行缓存当被路由器对其进行接收的时候,路由器来选择路由并且把报文转发到相应的节点。此时路由器的处理速度的快慢是能否出网络现拥塞的关键因素。 总而言之,只有考虑到从以上三方面的因素,来解决拥塞现象,优化整体性能。只考虑一方面内的因素拥塞问题不仅不能够解决,反而拥塞问题还会更加严重。 3 控制拥塞的策略 1)Tahoe和Reno拥塞控制算法 随着网络技术的发展,TCP拥塞控制有快速恢复(fast recovery)、快速重传(fast retransmit)、拥塞避免(congertion avoidance)、慢启动(slow start)这四种,其中常用的是TCP Tahoe和TCP Reno两种算法。快速重传、拥塞避免、慢启动是Tahoe包括的三个部分,并且改进了往返时间RTT,从而对超时重发计时器进行更好的重新设定,具体的算法描述如下: 最多发一个报文在一个RTT内。其中窗口的大小由w来表示,慢启动门限值由ssthresh来表示,是慢启动进入拥塞避免的分界值。 这种算法的基本思想是通过线性增加速率源端对网络中的空闲容量进行探测,当拥塞被检测到的时候用指数递减它的速率,在源端丢包被检测到的时候确认拥塞。实现拥塞避免和慢启动的例子如图图2 慢启动和拥塞避免的实现举例 由上图可知,每当一个
原创力文档

文档评论(0)