论文部分内容阅读
Intenet在过去十几年当中,经历了爆炸式的发展,它通过TCP/IP协议承载了越来越多的网络应用,从最初的FTP、Email、Telnet等业务,发展到现在的WWW、视频和音频的实时播放等多媒体业务,研究TCP/IP的拥塞控制对控制网络拥塞和提高网络服务质量(QoS)很有意义.拥塞控制是保证Internet稳定运行的关键技术,从实现的角度,拥塞控制能分为两部分即TCP拥塞控制和IP拥塞控制.TCP拥塞控制是端到端的拥塞控制机制,对Internet的鲁棒性(robust)起到了关键作用.IP拥塞控制是链路上的拥塞控制机制,在均匀的分配网络资源方面,起到很重要的作用.端到端拥塞控制主要是在根据接收端反馈回来的有限的信息来进行发送速率的调节,从而分配网络的带宽,为了维护网络的稳定和带宽的公平分配避免网络崩溃.端系统能够适应根据网络的拥塞状况自动调节其发送速率,这对Internet的稳定运行起到了非常重要的作用.端到端拥塞控制机制是在路由器不提供任何指示拥塞和控制拥塞的信息和支持的,为了进行拥塞控制,端只能通过确认ACK、超时、发送速率的变化等有限的信息来推断网络拥塞状况.这样在端到端拥塞控制机制中,判断网络发生拥塞的标志尤为重要,并且要能及时的调整发送端的窗口尺寸,从而来避免拥塞.在TCP Reno和TCP Vegas两种算法地基础上,建立了新的拥塞控制机制TCP Evegas算法以及提出了通过二次平滑RTT的方法来处理测量到的原始RTT让其精确化.在TCP Evegas算法中设立了一个新的状态——拥塞避免准备状态,即网络拥塞即将形成但网络还没有出现拥塞—这一相当微妙的中间状态独立出来.TCP Evegas算法将TCP Vegas算法能比较好的预测网络拥塞发生的优点和TCP Reno算法在拥塞发生时能较好的将网络带到系统平衡点的能力的优点结合起来.它主要是根据RTT的变化来判断拥塞是否发生,但同时也把数据包丢失作为拥塞发生的标志之一,并且,根据这两个标志判断出拥塞发生以后,分别对窗口进行不同的调整,若仅仅是RTT变化反馈得到的拥塞,则拥塞窗口是减少八分之一,若是RTT变化反馈得到拥塞信息,同时又收到了两个重复ACK时,就将拥塞窗口减半,这样就避免了TCP Vegas算法当中的持续拥塞问题.当然,如果出现超时,则发送端立即将发送窗口减半,这源于TCP Reno算法的窗口调整机制.二次平滑RTT中第一次对得到的原始RTT加权平均来平滑,第二次平滑是采取SACK TCP Veno中积累均衡的方法,通过二次平滑RTT,能得到更为精确更为平滑的RTT.在Linux内核2.4.7-10中初步实现了TCP Evegas算法,但由于研究条件限制不能为TCP Evegas算法建立实际的网络测试环境,从而借助网络仿真平台NS2上对其进行仿真实验.结果显示,TCP Evegas算法在性能上相对得到了提高.