一种可编程网络中任意两个节点的网络传输时延测量方法与流程

文档序号:34116187发布日期:2023-05-11 00:09阅读:163来源:国知局
一种可编程网络中任意两个节点的网络传输时延测量方法与流程

本发明属于网络管理,更为具体地讲,涉及一种可编程网络中任意两个节点的网络传输时延测量方法。


背景技术:

1、随着互联网规模的不断扩大,其性能的可知性越来越复杂,网络管理的复杂度也就不断增加。在实际的网络运行中,大到互联网网络中心、服务提供商需要通过网络性能测量系统来监测网络当前运行状态,小到单个用户、应用程序也需要通过网络性能测量系统来检测网络的运行状况,评价网络提供的服务质量,所以对网络性能测量的研究随着互联网的应用日益广泛而变得越来越重要。

2、目前,基本的网络性能评价指标主要包括网络的传输时延、吞吐量(带宽)和丢包率等等。其中,网络的传输时延是最重要也是最常用的衡量参数。为了保证网络正常运行和满足网络应用的传输性能要求,网络管理者需要使用特定的测量手段和测量系统对网络的传输时延进行测量与分析,及时、准确和全面地了解网络内部的运行状态,并有针对性地实施网络管控策略。网络的传输时延可以为网络故障诊断提供依据、帮助检测产生异常的业务流和定位网络中的节点故障。通常而言,网络传输时延的测量数据粒度越细、准确度越高,网络管理所能达到性能也越好。

3、传统ip网络中的测量方案通常都难以实时监测网络传输时延、测量设备部署困难、网络资源消耗过大和测量细粒度不够等问题。在传统网络管控和测量能力的限制下,网络传输时延测量提供的数据准确性较低和细粒度不足,甚至在很多场合下无法为网络管理者提供所需的信息,主要存在以下几个问题:(1)、传统网络中网络设备的控制逻辑与转发逻辑集成在一起,交换机对数据包的处理需要遵循某些特定的协议,缺乏灵活的控制能力。(2)、传统网络中,网络设备的测量能力低下,只能测量一些粗粒度的状态信息,因此测量误差较大。(3)、网络中的一些测量任务需要多个网络设备之间的协作,但是传统网络采用分布式控制方式,网络节点间的协作和管理开销较大,因此很多测量任务的可行性只停留在理论,在实际网络中根本无法部署。


技术实现思路

1、本发明的目的在于克服现有技术的不足,提供一种可编程网络中任意两个节点的网络传输时延测量方法,通过利用数据平面的可编程性和网络中间节点的存储资源,实现业务流路由路径上任意两个节点间的网络传输时延测量,同时,分离网络传输时延异常的流,以降低资源消耗,提高测量准确度。

2、为实现上述发明目的,本发明可编程网络中任意两个节点的网络传输时延测量方法,其特征在于,包括以下步骤:

3、(1)、数据包时间戳标签添加与异常时延流判断

4、针对某项内容向网络发起的业务请求f1,需要测量节点a至节点b的网络传输时延,在节点a给数据包添加时间戳标签,时间戳标签内容为数据包到达交换机a的入口时间戳t1,当数据包转发至节点b时,节点b获取当前时间戳t2,然后解析数据包中的时间戳标签获入口时间戳t1,则业务请求f1在节点a至节点b的传输时延dl=t2-t1;

5、在节点b中,计算出传输时延dl后,将传输时延dl与时延门限δ进行对比,传输时延dl大于时延门限δ的业务请求f1为传输性能异常的流即异常流,对异常流的五元组进行编码后并使用布隆过滤器记录,同时,异常流转发至流处理器;对于传输时延dl不大于时延门限δ的业务请求f1送入布隆过滤器进行进一步的判断,其中,布隆过滤器部署在节点b中;

6、(2)、布隆过滤器进一步分离异常流

7、在布隆过滤器中,对业务请求f1的五元组即源ip、目的ip、源端口、目的端口和协议类型采用步骤(1)中的相同编码方法进行编码,并与布隆过滤器中记录的异常流的五元组编码进行比较,如果相同,则认为是异常流,并转发至流处理器,如果不相同,则为正常流,转发到sketch算法模块中,其中,sketch算法模块部署在节点b中;

8、(3)、流处理器记录异常流并上报控制器用于定位异常流

9、通过时延门限δ判定的异常流以及布隆过滤器分离出的异常流,在流处理器使用哈希表精确记录异常流的五元组以及累加时延,并按测量周期上报到控制器,控制器通过哈希表可以快速定位产生的异常流;

10、(4)、采用sketch算法进行网络传输时延测量

11、在sketch算法模块,每个计数器counter包含两个部分:32位的计数值count用来统计数据包的个数和32位的计数值sumdelay用来存储传输时延的累加和;

12、当求出传输时延dl后,节点b会对数据包的五元组分别通过哈希函数h1至hd进行d次哈希,找到每次哈希对应的计数器counter进行更新,更新规则为:count=count+1,sumdelay=sumdelay+dl;

13、节点b会按步骤(3)所述的测量周期上报计数器counter的计数值count、计数值sumdelay到控制器,控制器通过计数值count、计数值sumdelay查询出业务流的传输时延,查询业务请求f1的传输时延信息时,先通过哈希函数h1至hd对业务请求f1的五元组进行d次哈希,找到对应的d个counter,业务请求f1数据包个数的查询结果counts为d个counter计数器中计数值count中最小值,业务请求f1数据包传输时延值总和的查询结果sumdelays为d个counter计数器中计数值sumdelay中最小值;

14、在一个周期内,业务请求f1在节点a至节点b的平均传输时延为:

15、

16、将平均传输时延作为节点a至节点b的网络传输时延;

17、(5)、清空布隆过滤器、计数器以及哈希表

18、每个测量周期结束后,清空布隆过滤器、sketch算法模块中的计数器counter以及流处理器中的哈希表,为下一个测量周期做准备。

19、本发明的发明目的是这样实现的:

20、本发明可编程网络中任意两个节点的网络传输时延测量方法,首先在节点a给数据包添加时间戳标签,当数据包转发至节点b时,在节点b得到传输时延dl,并根据时延门限δ进行过滤,异常流转发至流处理器,没有认定的送入隆过滤器进行进一步的判断,然后在布隆过滤器中,如果有异常流的记录,则认为是异常流并转发至流处理器,否则转发到sketch算法模块中。在流处理器中对于异常流用哈希表精确记录异常流的五元组以及累加时延,便于控制器快速定位产生的异常流。在sketch算法模块中增加传输时延的累加和,这样结合数据包的个数可以测量出平均传输时延并作为网络传输时延测量。本发明采用数据包添加时间戳标签,这样在部署测量算法时,仅需节点b提供少量高速存储资源即可,降低了存在资源消耗,同时,本发明通过布隆过滤器再次分离网络性能异常的流,一方面可以通过哈希表快速定位产生异常的流,另一方面在过滤掉异常值后,又能进一步提高cm sketch的测量准确度。



技术特征:

1.一种可编程网络中任意两个节点的网络传输时延测量方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的可编程网络中任意两个节点的网络传输时延测量方法,其特征在于,数据包经过节点b后移除时间戳标签。


技术总结
本发明公开了一种可编程网络中任意两个节点的网络传输时延测量方法,首先在节点A给数据包添加时间戳标签,在节点B得到传输时延dl,并根据时延门限δ进行过滤,异常流转发至流处理器,然后在布隆过滤器中,如果有异常流的记录,则认为是异常流并转发至流处理器,否则转发到Sketch算法模块中。在流处理器中对于异常流用哈希表精确记录异常流的五元组以及累加时延,便于控制器快速定位产生的异常流。在Sketch算法模块中增加传输时延的累加和,这样结合数据包的个数可以测量出平均传输时延并作为网络传输时延测量。本发明降低了存在资源消耗,同时一方面可以通过哈希表快速定位产生异常的流,另一方面在过滤掉异常值后,又能进一步提高CM Sketch的测量准确度。

技术研发人员:闫林林,葛俊成,卢东辉
受保护的技术使用者:之江实验室
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1