论文部分内容阅读
随着互联网的发展,网络本身正逐渐转变为一个内容分发的平台,因此信息中心网络学说也逐渐兴起。SOFIA是一种面向服务的信息中心网络体系结构。SOFIA以服务为中心驱动路由,支持服务迁移和缓存,改变了互联网通信模式,迫切需要新的传输控制协议。本文设计并实现SOFIA中传输控制机制,保证数据可靠、高效的传输,研究工作具有重要的应用价值。本文主要工作和贡献包括: 1.设计了SOFIA中可靠的混合传输控制机制。使用基于Sender-driven的模式在服务端和客户端之间可靠传输数据,传输状态由服务器(sender)维护;使用基于Receiver-driven的模式在路由器端和客户端之间可靠传输网络内缓存的数据,传输状态由客户端(receiver)维护。在保证可靠传输的基础上,分别设计了两种模式下的拥塞控制机制。在Sender-driven模式下,通过控制发送方的数据发送窗口来进行拥塞控制;在Receiver-driven模式下,通过控制接收方的请求发送窗口来进行拥塞控制。拥塞窗口的变化参考TCP中的设计实现,即包括慢开始、拥塞避免、拥塞发生等阶段。 2.提出一种基于冗余发送的快速重传优化方法。混合传输控制机制使用超时重传恢复丢失的数据包。由于超时阈值通常很大,一旦出现丢包现象,传输就会因为等待而被阻塞很长时间,导致性能下降。为此,首先借鉴TCP的快速重传、快速恢复算法来快速恢复丢失的数据包并将发送状态迅速恢复到丢包前的状态。其次,提出冗余发送机制有效避免以下两种情况引起的传输阻塞:丢包时发送窗口过小和快速重传的包再次丢失。最后,改进现有的快速重传算法,在进行快速重传时,发送2个新的数据包,使得当前发送窗口内的后续丢包依然能通过快速重传来恢复,有效减少了发送窗口内多个数据包丢失时引起的传输阻塞。 3.实现并评估SOFIA中的传输控制机制。基于上述两个关键技术,在软件路由器Click平台基础上实现了一个完整传输控制系统。传输控制的实现主要包括传输层的功能模块、Socket API及两者间的通信。其中Socket API负责接收用户的网络操作(接口创建、绑定等),并通过消息和位于Click平台中的传输层通信。传输层负责具体实现网络接口,包括创建连接、建立连接等操作。同时,传输层处理来自服务层的数据包,更新连接状态并将数据发给应用程序。实验结果说明,百兆网络环境中传输速度可以达到80Mbps,并且随着丢包率增加,SOFIA传输性能的下降趋势比TCP传输性能的下降趋势更平缓,最终当网络的丢包率高于2%时,SOFIA的传输性能优于TCP。