[发明专利]基于软件定义网络的主机侧数据包处理延时测量方法在审
申请号: | 202210232233.9 | 申请日: | 2022-03-10 |
公开(公告)号: | CN114710424A | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 张栋;林为伟;孙庭鑫 | 申请(专利权)人: | 福州大学 |
主分类号: | H04L43/0852 | 分类号: | H04L43/0852 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 丘鸿超;蔡学俊 |
地址: | 350108 福建省福州市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 软件 定义 网络 主机 数据包 处理 延时 测量方法 | ||
1.一种基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:将包处理延时测量任务负载架设在可编程交换机上,通过协调主机端和可编程交换机共同完成整体的测量任务,最后由交换机根据计算出的处理延迟检测异常数据包,报告给部署在控制层的分析器作进一步处理。
2.根据权利要求1所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:在主机侧和交换机侧分别部署处理程序和代理程序,各自针对整体测量任务不同部分提出数据包处理逻辑,其包处理延时测量方法具体包括以下步骤:
设外界发往主机侧TCP请求数据包后,主机侧向外界应答响应数据包:
步骤S1:部署在交换机上的处理程序识别并收集TCP请求数据包达到时间戳tin;
步骤S2:终端主机收到TCP请求并调用其网络堆栈进行处理;当请求到达堆栈的网络层时,所述代理程序拦截请求并从IP选项字段中提取tin,将请求交付给上层堆栈的同时存储tin在队列中;
步骤S3:所述代理程序从传输层收到与请求相对应的响应请求;删除在存储队列中的tin;在IP选项字段中记录tin,并将响应发送回可编程交换机;
步骤S4:当交换机收到请求时,处理程序从请求中提取tin,并记录当前的系统时间tout,计算出宿主端请求的延迟,并向控制平面发送报告。
3.根据权利要求2所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:将包处理延迟测量任务转化为以下六个局部子任务:(1)数据包的类型识别,(2)收集请求数据包到达时间戳tin,(3) 存储包处理期间Gbps量级时间戳信息,(4)收集响应数据包到达时间戳tout,(5)计算包处理延迟,(6)识别延迟异常包并向控制平面报告。
4.根据权利要求2所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:在步骤S1中,所述处理程序执行识别数据包类型时忽略SYN和FIN数据包,以避免影响TCP连接的建立和终止;对于其他TCP数据包,检查该数据包的出口交换机端口ρ,若其连接到DCN结构中的外部交换机,则该数据包也被忽略;否则,处理程序检查IP可选项字段修改情况以识别该数据包的类型,同时修改请求数据包的IP可选项字段,将时间戳信息存入后传递给终端主机,避免高速转发环境下交换机内存溢出导致的测量精度损失。
5.根据权利要求2所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:在步骤S2中,所述代理程序部署在网络层,拦截主机端网络堆栈中即将进入传输层解析的请求数据包,从被丢弃的IP可选项字段中提取时间戳tin并提供有效载荷数据供高层应用接收。
6.根据权利要求2所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:在步骤S3中,所述代理程序在主机侧网络堆栈的网络层中创建一组队列Q,用于管理附加到流量请求的时间戳;当终端主机收到一个请求数据包,代理程序根据请求的五元组的散列结果键来定位队列Q[key]并存储时间戳tin;当收到来自传输层的响应时,代理程序利用请求包的TCP确认号和响应TCP序列号之间的等价关系在队列中定位并剔除时间戳tin。
7.根据权利要求2所述的基于软件定义网络的主机侧数据包处理延时测量方法,其特征在于:在步骤S4中,所述处理程序利用提取出的时间戳tin和包到达时间戳tout计算包处理延时t;并设定可配置的阈值θ,对于延迟tθ,生成一份包含延迟t、数据包的五元组,连同接收数据包的入口交换机端口的标识符延迟报告发送给分析器,用于在检测覆盖率和带宽开销之间进行权衡。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210232233.9/1.html,转载请声明来源钻瓜专利网。