论文部分内容阅读
随着Internet技术和网络业务的飞速发展,用户对网络资源的需求空前增长,网络也变得越来越复杂。越来越多的网络应用程序需要了解网络延迟、带宽、吞吐率等网络性能参数,以支持不同的服务质量(Quality of Service,QoS)。不断增加的网络用户和应用,导致网络负担沉重,网络设备超负荷运转,从而引起网络性能下降。这就需要对网络的性能指标进行提取与分析,对网络性能进行改善和提高。因此网络性能测量便应运而生。迅速准确测量网络可用带宽也有助于保护网络安全,保证互联网的正常运行。
目前已经有很多可用带宽测量方法被开发并应用于实际,虽然这些测量方法各不相同,或基于包对,或基于包队列,但绝大多数都是利用网络瓶颈分隔原理测量可用带宽的。在实际测量中,现有测量方法存在测量过程复杂,测量精度不够,应用范围狭小,使用不方便等缺点。
本文对可用带宽测量的模型、现有的测量方法和可用带宽测量中需要解决的关键问题等进行了详细的探讨,并对各种算法的性能与适用性进行了分析和比较。针对现有测量方法的不足,根据数据包队列延迟趋势模型,本文提出了一种基于数据包队列延迟趋势的可用带宽测量算法。该算法中,接收端每次接收到100个探测数据包,以每个数据包的单向延迟为基准计算数据包单向时延总体呈增大趋势比率P,根据P大小判断探测数据包的发送速率是否大于当前路径可用带宽:若P大于阈值,则当前发包速率大于路径可用带宽;反之,小于路径可用带宽。利用参数P计算调整后的发包速率,发送端以此速率发送探测数据包。该算法不断重复上述过程直到探测数据包的发送速率非常接近路径可用带宽,算法输出测量到的路径可用带宽,测量结束。
本文通过Java代码编程,实现对参数P和算法验证,并与当前经典的可用带宽测量工具Pathload进行了比较。实验结果表明,本文设计的算法测量精度和测量效率都优于Pathload工具。