[发明专利]一种网络测试方法、系统、存储介质及电子设备在审
申请号: | 201911128209.5 | 申请日: | 2019-11-18 |
公开(公告)号: | CN110958157A | 公开(公告)日: | 2020-04-03 |
发明(设计)人: | 徐明伟;林耘森箫;周禹;王旸旸;吴建平 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L12/723;H04L12/741 |
代理公司: | 北京聿宏知识产权代理有限公司 11372 | 代理人: | 吴大建;张杰 |
地址: | 100084 北京市海淀区1*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 网络 测试 方法 系统 存储 介质 电子设备 | ||
本发明提供了一种网络测试方法、系统、存储介质及电子设备,其中,该方法包括:获取与流表规则和P4程序相匹配的目标二元决策图;根据目标二元决策图、拓扑和规则更新事件,生成并更新探针;转发所述探针,并将与所述流表规则对应的动作写入所述探针;当所述探针返回服务器,检查探针,以获取在运行过程中的规则错误的检测结果。通过本发明实施例提供的网络测试方法、系统、存储介质及电子设备,可以利用二元决策图表示P4程序和流表规则,实现了网络资源的低开销,能够实现流表规则的全覆盖。
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种网络测试方法、系统、存储介质及电子设备。
背景技术
目前,针对可编程数据平面上的运行时规则错误进行排查的网络测试方法通常有被动网络监控技术和主动网络测试技术。
其中,被动网络监控技术通过追踪正常流量来检测错误,但由于当前数据包无法触发某些错误,因而存在着覆盖率低的问题;主动网络测试技术通过向网络注入探针来诊断错误,但由于探针的生成需要大量服务器,因而存在着开销高的问题。
综上所述,当前的网络测试方法在对可编程数据平面上的运行时规则错误进行排查的过程中存在着覆盖率低、开销高的问题。
发明内容
为解决上述问题,本发明实施例的目的在于提供一种网络测试方法、系统、存储介质及电子设备。
为实现上述目的,本公开提出一种网络测试方法,所述网络测试方法包括以下步骤:
获取与流表规则和P4程序相匹配的目标二元决策图;
根据目标二元决策图、拓扑和规则更新事件,生成并更新探针;
转发所述探针,并将与所述流表规则对应的动作写入所述探针;
当所述探针返回服务器时,检查探针,以获取在运行过程中的规则错误的检测结果。
在一个实施方式中,所述探针包括探针头部以及位于所述探针头部后面的标签栈,所述标签栈包括若干源路由标签,每一所述源路由标签对应所述探针需要访问的每一节点,所述源路由标签包括标志位、端口号以及出口号,所述转发所述探针,并将与所述流表规则对应的动作写入所述探针,包括:
将所述探针转发至所述出口号对应的转发端口,并将与所述流表规则对应的动作写入所述端口号。
在一个实施方式中,所述获取与流表规则和P4程序相匹配的目标二元决策图,包括:
通过目标匹配域提取全局头部空间,所述目标匹配域为目标表达式引用的表的匹配域以及所述目标表达式引用的字段的匹配域;
以所述全局头部空间以及所述目标表达式对应的二元决策图为依据,获取与流表规则和P4程序相匹配的目标二元决策图。
在一个实施方式中,所述根据目标二元决策图、拓扑和规则更新事件,生成并更新探针,包括:
根据目标二元决策图、拓扑和规则更新事件;
将所述目标二元决策图转化为序列化控制流图,所述序列化控制流图至少包括所述目标表达式;
合并所述目标表达式和所述流表规则,获得级联表;
基于所述级联表生成交换机级别头部集;
根据所述交换机级别头部集生成网络级别的探针头部;
以所述网络级别的探针头部和源路由标签生成并更新探针。
在一个实施方式中,所述以所述网络级别的探针头部和源路由标签生成并更新探针,包括:
以所述网络级别的探针头部和源路由标签生成探针;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911128209.5/2.html,转载请声明来源钻瓜专利网。