[发明专利]一种通用的TCP性能诊断方法及装置在审
申请号: | 201910281276.4 | 申请日: | 2019-04-09 |
公开(公告)号: | CN110138590A | 公开(公告)日: | 2019-08-16 |
发明(设计)人: | 薛广涛;彭光前 | 申请(专利权)人: | 上海交通大学 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26;H04L1/16 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 蔡彭君 |
地址: | 200030 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 过滤器 内核缓冲区 传播延迟 划分结果 瓶颈带宽 性能诊断 通用的 抓取 拥塞控制算法 长度计算 时序信息 实时诊断 输出性能 诊断结果 内核态 用户态 报文 拷贝 还原 存储 部署 | ||
本发明涉及一种通用的TCP性能诊断方法及装置,包括:抓取TCP报文并拷贝到内核缓冲区;将内核缓冲区中存储的报文由内核态重组为用户态以还原得到每个TCP流;根据TCP流的时序信息计算得到传播延迟;将TCP流进行粒度划分,得到粒度划分结果及对应的过滤器窗口长度;根据粒度划分结果及对应的过滤器窗口长度计算出瓶颈带宽;结合传播延迟和瓶颈带宽输出性能诊断结果。与现有技术相比,本发明适用于各种拥塞控制算法,具备高度的实用性且易于部署,同时可以实时诊断多个TCP连接。
技术领域
本发明涉及网络测量和网络性能诊断领域,尤其是涉及一种通用的TCP性能诊断方法及装置。
背景技术
随着各种新型网络的涌现以及网络的升级换代,企业的网络服务会承载越来越多的用户数目和流量。一旦发生网络故障,企业内部必须组织相关人员进行故障排查和定位,而该过程往往会消耗过多的时间,最终使得企业和用户承担不必要的损失。一个TCP连接由发送端、接收端和网络中间节点组成,三者相对独立地工作,并且都可能成为性能瓶颈,在发生性能故障时往往难以确定具体是哪个部分出现了问题。此外,现代的网络应用往往采用了分层的架构(multi-tier architecture),它由面向用户的前端(例如网络代理和负载均衡)和IO或CPU密集的后端(例如数据库查询)。这种架构进一步加大了故障定位的难度。一个自动化的网络性能诊断工具能够及时指出性能瓶颈所在,这样就能帮助运维人员尽快修复故障。现有的工具采取了两种不同的方案:包级别的诊断和侵入内核的诊断。前者需要遍历每一个TCP报文,在程序实现上有很高的难度;后者需要运行在服务端的内核协议栈中,会降低服务的稳定性和性能。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种通用的TCP性能诊断工具。
本发明的目的可以通过以下技术方案来实现:
一种通用的TCP性能诊断方法,包括:
抓取TCP报文并拷贝到内核缓冲区;
将内核缓冲区中存储的报文由内核态重组为用户态以还原得到每个TCP流;
根据TCP流的时序信息计算得到传播延迟;
将TCP流进行粒度划分,得到粒度划分结果及对应的过滤器窗口长度;
根据粒度划分结果及对应的过滤器窗口长度计算出瓶颈带宽;
结合传播延迟和瓶颈带宽输出性能诊断结果。
所述根据TCP流的时序信息计算得到传播延迟,包括:
基于TCP流的时序信息得到往返时间RTT;
根据往返时间RTT得到传播延迟。
所述传播延迟具体为:
其中,RTprop(T)为网络传播延迟,Wt为我们选取的时间窗口的长度,T为当前时刻。
所述根据粒度划分结果及对应的过滤器窗口长度计算出瓶颈带宽,包括:
基于发送端的发送速率和接收端的确认速率,取二者最小值作为报文递交速率;
根据递交速率计算得到瓶颈带宽。
所述瓶颈带宽具体为:
其中,BtlBw(n)为网络链路中所有节点的可用带宽的最小值,Wf为过滤器所选取的窗口长度,单位是flight,n为报文所被划分的数量。
一种通用的TCP性能诊断装置,包括:
抓包模块,用于抓取TCP报文并拷贝到内核缓冲区;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910281276.4/2.html,转载请声明来源钻瓜专利网。