论文部分内容阅读
通过移动互联网,人们能够更方便地去使用社交网站和微博这些互联网新应用,无线网络技术是移动互联网发展的基石。传输层在网络通信中发挥着重要的作用,而TCP则是使用最广泛的传输层协议。因此,无线网络下的TCP性能研究不仅具有很高的学术价值,而且在实际应用中也有着重要的意义。拥塞控制是TCP协议必须执行的机制,在有线网络中,丢包被认为是网络拥塞的标志。但是,在无线网络环境中,信道的误码率远远高于有线网络,由于信道原因而产生的丢包现象频繁发生。在发生随机丢包的时候,网络仍然可能处于空闲状态,如果按照传统的拥塞控制协议,减小拥塞控制窗口的大小,会导致更多的带宽处于空闲状态,造成TCP协议性能的下降。为了解决这一问题,许多面向无线网络的新拥塞控制协议被提出来,这些协议主要分为端到端的和中间层辅助的两大类。在本论文中,我们研究了三个针对于无线网络随机丢包问题的端到端的新拥塞控制协议。TCP_SPC协议将统计过程控制(Statistical Process Control)理论引入到拥塞控制中;TCP_AW协议是TCP_Westwood协议的最新版本,TCP_Westwood协议利用估计的可用带宽来进行拥塞控制;而TCP_RACC协议是由接收端辅助来完成可用带宽的计算的。三个协议从不同的角度提高TCP协议在无线环境中的性能。本论文在Linux内核中实现了上述三个协议,并对TCP_SPC协议的控制策略做了改进,以提高协议对TCP_Reno协议的友好性。本论文阐述了这三个协议是如何在Linux内核中实现的,由于前两个协议都是以发送端为核心的,符合内核中拥塞控制模块的接口设计,我们使用添加模块的方式加以实现;而第三个协议是以接收端为核心的,内核拥塞控制模块所提供的接口不能满足该协议的需求,所以选择了直接修改内核源代码的方式来实现。通过若干实验场景下的实验,结果发现,在网络中随机丢包达到一定程度时,这三个协议所能达到的吞吐率要比TCP_Reno协议要高,同时,它们也对TCP_Reno协议保持着不错的友好性。可见,这三个协议都能在一定程度上解决无线网络中随机丢包所造成的TCP性能下降问题。