TCP协议在Internet网络技术的数据传输协议中,占据的比重比较大。TCP是一种端到端可靠的数据传输协议,采用尽力而为的服务。在网络实施中,当网络资源不能满足使用用户的需求时,网络不能采用限制用户使用数量的方案,即使是网络使用效率降低到了极致,它也只能做到最好的去提供服务,一般在这种情况下,就会导致网络拥塞。
因特网实际上使用的拥塞控制是在传输层中TCP的流量控制和拥塞控制基础上建立的。虽然现在对IP层中的拥塞控制研究逐渐成为一个新的研究热点,但是就目前而言,传输层中的端到端TCP拥塞控制[1]在Internet上还是起主要作用的。
OPNET作为网络仿真领域中的重要仿真工具,可以利用它通过数学建模和统计分析的方法来模拟网络行为,从而很好的理解网络运行情况和分析相应的协议。OPNET Modeler中的TCP实现模型参考了RFC文档,学习TCP代码可以加深对TCP算法的了解,从深度上对网络有新的认识。
目前国内外存在很多对TCP进行研究的组织,他们试图通过改进TCP中的某个或某些算法,来提升TCP性能同时又要保证TCP的兼容性。但成果并不是很明显,工程意义不是很大,在本论文中,我们利用仿真软件OPNET对TCP的经典算法进行了研究,这具有重要的实践和工程意义。
1.2 国内外研究状况
TCP是传输控制协议,它工作在TCP/IP协议栈的传输层,提供面向连接的端到端的可靠传输服务。目前很多的应用程序都是基于TCP协议进行传输的,如Telnet、FTP、SMTP等。TCP的工作是建立连接,然后为应用层程序接收和发送数据。在发送的过程中,发送方会等待接收方给出一个确认性的应答,否则发送方将认为此数据丢失,并重新发送此数据。所以在TCP协议中涉及到了报文的标识、报文的确认、报文的有序发送、拥塞识别、拥塞控制等保证TCP健壮性的逻辑。
在TCP早期连接中只有简单的基于滑动窗口的流量控制机制,并不存在拥塞控制。而拥塞控制机制是由Jacobson在1988年提出的,称为TCP Tahoe,包括三种算法即慢启动、拥塞避免和快速重传算法。两年后在此基础上又加入了快速恢复算法,TCP由此发展为TCP Reno,占据了目前网络中的主导位置。
在Jacobson之后许多研究者又针对TCP拥塞控制[2]做了大量的研究,由于TCP窗口慢增快减,这样会引起震荡特性,许多人为了克服这一缺点试着提出一种“理想”的拥塞控制方案,包括DUAL、TCP Vegas等。然而,考虑到多方面的因素包括实际应用问题和网络的性能,之前提出的拥塞控制机制并不能较好的与TCP Reno兼容,甚至会使效果降低。这也就导致了这些机制不能广泛应用于实际网络。受到前面因素的影响,大多数人就开始着手研究TCP Reno中的快速恢复算法,并对其进行了改进,取得了有效的进步,这些改进算法主要包括TCP New Reno,SACK。这些算法对提高Reno中快速恢复算法的性能提供了有利的方法。
在高速网络中,由于受到TCP加性增长、乘性减小的拥塞控制算法的影响,致使传输速率大大的降低,目前针对这种缺陷的改进,研究者探讨了一种FAST TCP高速网络拥塞控制,有效的解决了上述问题,虽然已经有了一些实际网络的应用,但仍需要进一步的探讨和改进。
2.网络仿真软件OPNET
2.1 OPNET仿真软件概述
2.1.1 OPNET Modeler概述
由OPNET Technologies公司开发的网络仿真软件OPNET Modeler。它能够很好的分析各种模拟系统的行为和性能,而分析这种性能是通过执行离散事件仿真的方法来实现的。
OPNET Modeler作为一个大型的网络开发工具,具有的特征如下:
面向对象:OPNET Modeler创建的所有系统都有一系列属性可以配置的对象组成[3]。 基于OPNET的TCP协议研究与仿真(2):http://www.youerw.com/tongxin/lunwen_1272.html