CN114039891A - 基于sketch的软件定义网络大流端到端时延与丢包率估计方法 - Google Patents

基于sketch的软件定义网络大流端到端时延与丢包率估计方法 Download PDF

Info

Publication number
CN114039891A
CN114039891A CN202111309342.8A CN202111309342A CN114039891A CN 114039891 A CN114039891 A CN 114039891A CN 202111309342 A CN202111309342 A CN 202111309342A CN 114039891 A CN114039891 A CN 114039891A
Authority
CN
China
Prior art keywords
sketch
packet loss
flow
index
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202111309342.8A
Other languages
English (en)
Inventor
麻恩泽
韩园峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN202111309342.8A priority Critical patent/CN114039891A/zh
Publication of CN114039891A publication Critical patent/CN114039891A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

基于sketch的软件定义网络大流端到端时延与丢包率估计方法,包括如下步骤:S1.索引数组、sketch数组与哈希函数初始化;S2.流信息采集,流信息采集步骤主要是通过sketch数据结构在每个时间周期内将记录当前数据平面上的所有数据流信息,并将记录的信息在每个时间周期结束时发送到控制平面的控制器中;S3.丢包率估计,控制平面接收步骤S2中数据平面周期性收集的数据流信息,然后使用查询算法对网络的丢包率进行估算;S4.端到端时延估计。本发明在传统sketch的基础上设计了一种大流标识sketch算法,能在交换机中周期性地记录大流消息,并周期性地将记录的信息发送到控制平面,利用控制平面查询与搜索,实现端到端时延估计与丢包率估计等网络测量任务,扩展了sketch网络测量功能。

Description

基于sketch的软件定义网络大流端到端时延与丢包率估计 方法
技术领域
本发明涉及sketch网络测量方法技术领域,特别是基于sketch的软件定义网络大流端到端时延与丢包率估计方法。
背景技术
Sketch是一种空间开销固定的基于哈希的网络测量技术,其通常由数组和哈希函数组成。每个哈希函数通常对应数组中一个区间的内容,即通过该哈希函数计算后索引将与该数组的区间进行一一映射。通过哈希函数与数组的结合,数据流的相关信息可以记录到sketch的桶(数组的某个元素)中。利用桶中记录的相关信息,可以查询到对应的数据流的状态,进而实现网络参数的测量。
传统的sketch网络测量方法由于技术限制,其支持的测量任务数量有限,虽然对于超点检测(Superspreader)、变化检测(Heavy-change)和大流检测(Heavy-hitter)等任务具有良好的测量效果,但是对于复杂的网络测量任务,如网络的端到端时延统计、网络的丢包率统计等网络测量任务却无能为力,因此对其有效应用造成了技术制约。
发明内容
为了克服现有sketch网络测量方法由于技术限制,无法有效应用于网络的端到端时延统计、网络的丢包率统计等网络测量任务等,对其应用造成了技术制约的弊端,本发明提供了在相关步骤共同作用下,在传统的sketch的基础上设计了一种大流标识sketch算法,能在交换机中周期性地记录大流消息,并周期性地将记录的信息发送到控制平面,利用控制平面查询与搜索,实现端到端时延估计与丢包率估计等网络测量任务,扩展了sketch网络测量功能的基于sketch的软件定义网络大流端到端时延与丢包率估计方法。
本发明解决其技术问题所采用的技术方案是:
基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于包括如下步骤:S1.索引数组、sketch数组与哈希函数初始化;S2.流信息采集,流信息采集步骤主要是通过sketch数据结构在每个时间周期内将记录当前数据平面上的所有数据流信息,并将记录的信息在每个时间周期结束时发送到控制平面的控制器中;S3.丢包率估计,控制平面接收步骤S2中数据平面周期性收集的数据流信息,然后使用查询算法对网络的丢包率进行估算;S4.端到端时延估计。
进一步地,所述步骤S1包括如下分步骤,S101:初始化sketch二维数组,具体遍历sketch二维数组的所有桶,设置桶内的每个域的值为0;S102:初始化索引数组,设置索引数组流标识域、时间戳域、计数器域的初始值;S103:初始化哈希函数;初始化d+1个哈希函数,即当五元组到达时,哈希函数自动在哈希键后追加一定的值,使每个哈希函数的哈希结果各异。
进一步地,所述步骤S2包括如下分步骤,S201:在记录的过程中,首先提取数据包的数据流标识五元组,输入索引数组的哈希函数,计算得到对应的索引值;S202:查找索引值对应的桶,根据数据流与桶内目前的数据流是否相同来决策如何更新计数器信息、桶的数据流信息、时间戳信息;S203:上述操作完成后,记录下本次查找到的桶的索引index;S204:对于sketch的二维数组,遍历二维数组的每一行,针对每一行使用该行对应的哈希函数计算索引,根据索引查找对应的桶,并根据桶内的索引是否与索引数组的索引index是否相同来决策如何更新当前桶的计数器与索引。
进一步地,所述步骤S3包括如下分步骤,S301:控制平面接收来自不同交换机的sketch,通过交换机ID标识对应的sketch,相同ID的sketch到达时,使用新的sketch替换;S302:当控制平面接收到应用平面的丢包统计指令时,将当前控制器中的sketch的定位索引加载到内存中,随机选择一个sketch的定位索引开始遍历,遍历过程中维护两个计数器,数量计数器Ccounter和丢包数量计数器Clost,分别统计遍历的数据流的数量以及丢包的数据流的数量;S303:在同一个控制器中的遍历过程如下:对于遍历到的当前的桶,如果桶内元素为空,那么跳过本次遍历;如果桶内元素不为空,提取桶内的数据流ID信息f1,以及流ID对应的时间戳信息t1,根据数据流ID f1查询对应交换机的流表,获取下一跳交换机的ID,并使用该流ID查询下一跳交换机对应的sketch的定位索引结构;S304:如果当前的遍历结果是丢包、需要对数量计数器Ccounter和丢包数量计数器Clost分别加一,如果当前遍历结果是无丢包、那么只对数量计数器Ccounter加一;步骤S30:对于不同的控制器之间的丢包统计,需要在控制器之间使用restful的远程过程调用方式进行判断,源控制器向目标控制器发送一条数据流ID以及一个时间戳t1,在目的控制器中执行与同一个控制器中相同的查询,查询完成后返回目标控制器中的查询结果,目标控制器中如果判断丢包返回false,如果不认为丢包返回true;S306:计算最终的丢包率,最终的丢包率计算结果公式应为:
Figure BDA0003341339460000031
其中drop_rate代表丢包率。
进一步地,所述分步骤S303中,使用流ID查询下一跳交换机对应的sketch的定位索引结构中,如果查询结果对应桶的流ID与当前的流ID相同,即f1等于f2,并且查询结果的时间戳t2-t1的差值大于0并且小于阈值,那么说明当前数据流ID对应的数据包在当前的跳没有发生丢包;如果查询结果对应桶的流ID与当前的流ID不同,但是t2-t1的结果大于0且小于阈值,那么在当前跳无法判断是否发生丢包,存在流ID不是大流,导致被覆盖的可能性,需要对下一跳路由进行查询,如果超过指定的跳数阈值仍不能确定,那么认为丢包。除上述情况之外的其他情况,表明发生了丢包。
进一步地,所述步骤S4包括如下分步骤,S401:对于单个数据流的时延计算,控制器首先加载每个下辖的交换机的sketch定位索引,然后从任一索引中选择任一非空数据流ID f1及其时间戳t1,根据流表查询下一跳交换机的ID,利用交换机ID确定对应的多维时序sketch的定位索引,并进行查询,如果索引中存在对应的流ID,那么提取时间戳t2;S402:如果t2<t1,结束当前的计算过程,重新遍历一个流ID,继续执行上述过程,直至t2<t1;S403:如果t2<t1但是查询的目标桶的流ID与要查询的流ID不同,那么查询该交换机的流表,在下一跳交换机上继续查询过程,直至t2<t1且两个流ID相同或者查询的跳数大于阈值;S404:如果t2<t1且两个流ID相同,那么计算t2-t1值与中间的跳数seg,端到端延时公式为
Figure BDA0003341339460000041
否则继续查找下一个流ID,直至找到一个可以计算时延的流ID;对于多个数据流时延的计算,需要从任一sketch的定位索引开始遍历,对于该索引中的每个桶的流ID进行一次单个数据流的计算过程;步骤S405:在跨控制器时延计算时向目标控制器发送请求,传递当前的流ID信息与时间戳信息,如果目标控制器返回结果是1,重新选择并发送流ID与时间戳,如果目标控制器返回一个时间差值以及在目标控制器管辖下的交换机的跳数seg2,端到端时延为公式:
Figure BDA0003341339460000042
本发明有益效果是:本发明主要应用于软件定义网络测量中的端到端时延估算和丢包率计算,涉及的主要技术有sketch与索引压缩等。本发明对传统的sketch算法进行了创新,使用固定的空间开销周期性的记录交换机的大流信息,将数据传输到控制平面,在控制平面控制器根据采集的数据查询多个sketch,从而估算当前网络中的丢包率与端到端时延。本发明可以使用固定的空间开销记录大流的流标识信息而无需借助辅助的数据结构;对一个sketch设计了两种不同的结构,分为索引数组和sketch二维数组,索引数组保存流标识信息,而sketch数组中仅保存索引数组查询的索引,从而降低了sketch数组的空间开销,提升了信息记录的效率;不仅可以在单个控制器的网络中实现丢包率统计和端到端时延估算,还可以在多个交换机之间实现信息计算,具有扩展性,可兼容分布式的控制器应用场景。基于上述,本发明具有好的应用前景。
附图说明
以下结合附图和实施例将本发明做进一步说明。
图1是本发明索引数组与sketch数组示意图。
图2是本发明丢包率计算流程图。
图3是本发明端到端时延计算流程图。
图4是本发明部署流程图。
图5是本发明部署架构图。
图6是本发明端到端时延计算示意图。
具体实施方式
图1所示,基于sketch的软件定义网络大流端到端时延与丢包率估计方法,包括如下步骤,S1:初始化大流标识sketch算法的数据结构;具体初始化一个大小为w×d的sketch二维数组、一个大小为w的索引数组以及d+1个哈希函数,其中w表示二维数组的列的数量,d代表二维数组行的数量。其分步骤如下,S101:初始化sketch二维数组;遍历sketch二维数组的所有桶,设置桶内的每个域的值为0。步骤S102:初始化索引数组;设置索引数组中源IP地址和目的IP地址的值均为000000000000,设置源端口和目的端口域的值均为0,设置时间戳域的值为1970—01-01T00:00:00Z,设置协议类型域的值为0,设置当前流标识计数器的值为0。步骤S103:初始化哈希函数;初始化d+1个哈希函数,设置所有的哈希函数为MD5函数,计算哈希值之后与ww求模,从而计算对应的index。为了保证索引数组和sketch数组的每一行的哈希函数不同,对于索引数组的哈希函数,每个哈希键追加0,对于二维数组的哈希函数,每个哈希键按照升序追加1→d的值。
图1所示,S2:流信息采集。流信息采集步骤主要是通过sketch数据结构在每个时间周期内将记录当前数据平面上的所有数据流信息,并将记录的信息在每个时间周期结束时发送到控制平面的控制器中。其分步骤如下,S201:在记录的过程中,首先提取数据包的数据流标识五元组{源IP地址,源端口号,目的IP地址,目的端口号,协议类型},将五元组的信息转换成字符串;将字符串首先输入索引数组的哈希函数,计算得到对应的索引值。S202:查找索引值对应的桶,判断当前数据流的五元组信息与桶内数据的五元组信息是否相同,如果相同,更新时间戳信息,设置计数器的值为计数器的当前值加1;如果不相同,首先将计数器的当前值减1,然后判断计数器的值是否为0,如果计数器的值是0,那么使用当前数据流的五元组替换桶内五元组对应的各个域,更新时间戳域,并且设置计数器的值为1,如果计数器的值大于0,只更新时间戳信息。S203:上述操作完成后,记录下本次查找到的桶的索引index。步骤S204:对于sketch的二维数组,遍历二维数组的每一行,针对每一行使用该行对应的哈希函数计算索引,根据索引查找对应的桶;对于查找的每个桶,如果桶内索引域的值与索引桶的索引index相同,那么设置计数器域的值为当前计数器的值加1;如果桶内索引与的值与索引桶的索引index不相同,那么设置计数器域的值为当前值减1,然后判断当前的计数器域的值是否为0,如果为0,那么将索引域的值设置为索引桶的索引index,设置计数器的值是1,如果不为0,不执行任何操作。
图2、3所示,S3.丢包率估计,主要控制平面接收步骤S2中数据平面周期性收集的数据流信息,然后使用查询算法对网络的丢包率进行估算。主要分步骤如下,S301:控制平面接收来自不同交换机的sketch,通过交换机ID标识对应的sketch;相同ID的sketch到达时,使用新的sketch替换。S302:当控制平面接收到应用平面的丢包统计指令时,将当前控制器中的sketch的定位索引加载到内存中,随机选择一个sketch的定位索引开始遍历,遍历过程中维护两个计数器,数量计数器Ccounter和丢包数量计数器Clost,分别统计遍历的数据流的数量以及丢包的数据流的数量。S303:在同一个控制器中的遍历过程如下:对于遍历到的当前的桶,如果桶内元素为空,那么跳过本次遍历;如果桶内元素不为空,提取桶内的数据流ID信息f1,以及流ID对应的时间戳信息t1,根据数据流IDf1查询对应交换机的流表,获取下一跳交换机的ID,并使用该流ID查询下一跳交换机对应的sketch的定位索引结构,如果查询结果对应桶的流ID与当前的流ID相同,即f1等于f2,并且查询结果的时间戳t2-t1的差值大于0并且小于阈值,那么说明当前数据流ID对应的数据包在当前的跳没有发生丢包。如果查询结果对应桶的流ID与当前的流ID不同,但是t2-t1的结果大于0且小于阈值,那么在当前跳无法判断是否发生丢包,存在流ID不是大流,导致被覆盖的可能性,需要对下一跳路由进行查询,如果超过指定的跳数阈值仍不能确定,那么认为丢包。除上述情况之外的其他情况,表明发生了丢包。S304:如果当前的遍历结果是丢包、需要对数量计数器Ccounter和丢包数量计数器Clost分别加一,如果当前遍历结果是无丢包、那么只对数量计数器Ccounter加一。S305:对于不同的控制器之间的丢包统计,需要在控制器之间使用restful的远程过程调用方式进行判断。源控制器向目标控制器发送一条数据流ID以及一个时间戳t1,在目的控制器中执行与同一个控制器中相同的查询,查询完成后返回目标控制器中的查询结果。目标控制器中如果判断丢包返回false,如果不认为丢包返回true。S306:计算最终的丢包率。最终的丢包率计算结果公式应为:
Figure BDA0003341339460000071
其中drop_rate代表丢包率。
图6所示,S4.端到端时延估计。sketch中的定位索引保存了大流的最后一个数据包的时间戳信息,通过流的跳转路径以及路径上的时间戳信息,可以计算两个交换机之间的端到端时延,本发明根据这一思路本文设计了基于sketch的时延估计方法。控制平面接收数据平面在执行步骤S2收集的数据,然后使用查询算法在一个控制器下辖的交换机和不同控制器下辖的交换机之间进行端到端的查询操作,估算链路上两个节点之间的端到端时延。基于sketch的时延估计可通过单个数据流的时延计算和多个数据流的平均时延计算来实现,前者的效率高,误差相对较大,后者的效率低,但是误差相对较小。对于单个数据流的时延计算和多个数据流时延计算进行不同的操作。其估算流程如图2所示,分步骤如下。S401:对于单个数据流的时延计算,控制器首先加载每个下辖的交换机的sketch定位索引,然后从任一索引中选择任一非空数据流ID f1及其时间戳t1,根据流表查询下一跳交换机的ID,利用交换机ID确定对应的多维时序sketch的定位索引,并进行查询,如果索引中存在对应的流ID,那么提取时间戳t2。S402:如果t2<t1,结束当前的计算过程,重新遍历一个流ID,继续执行上述过程,直至t2<t1。S403:如果t2<t1但是查询的目标桶的流ID与要查询的流ID不同,那么查询该交换机的流表,在下一跳交换机上继续查询过程,直至t2<t1且两个流ID相同或者查询的跳数大于阈值。S404:如果t2<t1且两个流ID相同,那么计算t2-t1值与中间的跳数seg,端到端延时为
Figure BDA0003341339460000081
否则继续查找下一个流ID,直至找到一个可以计算时延的流ID。对于多个数据流时延的计算,需要从任一sketch的定位索引开始遍历,对于该索引中的每个桶的流ID进行一次单个数据流的计算过程。S405:在跨控制器时延计算时向目标控制器发送请求,传递当前的流ID信息与时间戳信息。如果目标控制器返回结果是1,重新选择并发送流ID与时间戳。如果目标控制器返回一个时间差值以及在目标控制器管辖下的交换机的跳数seg2,端到端时延为
Figure BDA0003341339460000091
本发明是对传统的sketch算法进行了改进,扩展了传统sketch算法的应用场景,主要应用于软件定义网络测量中的端到端时延估算和丢包率计算,涉及的主要技术有:sketch与索引压缩。本发明具有一个大小为w×d的sketch二维数组、一个大小为w的索引数组以及d+1个哈希函数。二维数组的每个桶是一个结构体,该结构体由两个域组成,一个域是索引,唯一对应索引数组的一个索引,另一个域是计数器,用于对当前桶内保存的数据流进行过滤。二维数组的每一行对应一个哈希函数,索引数组单独对应一个哈希函数。索引数组的每个桶是由7个域组成的结构体,分别记录源IP地址、目的IP地址、源端口、目的端口、时间戳、协议类型和当前流标识计数器。该扩展sketch在数据平面的交换机中周期性的使用扩展sketch记录数据流的信息,并在记录周期结束时将该周期内记录的扩展sketch传输到控制平面的控制器中。控制器查询来自于每个交换机的索引数组和sketch数组记录的信息,通过对应的流标识和时间戳信息与查询信息的结合来估算端到端时延与丢包率。通过索引数组记录流标识,索引数组的索引与sketch数组的索引一一对应,实现以固定空间开销记录大流的流标识信息设。如图4和图5所示,扩展sketch算法部署在可编程交换机中,周期性地对索引数组、sketch数组与哈希函数初始化,然后使用sketch扩展算法记录数据平面的数据流信息,sketch在传输到控制平面之后,控制平面可结合多个交换机的sketch信息进行网络端到端时延的估算和网络丢包率的估算,与此同时开始下一个周期的数据采集与估算。
本发明设计的sketch扩展算法的优势在于:1.可以使用固定的空间开销记录大流的流标识信息而无需借助辅助的数据结构。2.对一个sketch设计了两种不同的结构,分为索引数组和sketch二维数组,索引数组保存流标识信息,而sketch数组中仅保存索引数组查询的索引,从而降低了sketch数组的空间开销,提升了信息记录的效率。3.本发明提出的方法不仅可以在单个控制器的网络中实现丢包率统计和端到端时延估算,还可以在多个交换机之间实现信息计算,具有扩展性,可兼容分布式的控制器应用场景。本发明对传统的sketch算法进行了创新,包括:在传统sketch的基础上改进了流标识记录算法,通过固定的空间开销,实现了大流标识的记录。引入索引数组,修改sketch数组域的保存内容,压缩了保存流标识的空间开销。首先设计了单个控制器的端到端时延与丢包率的估算算法,然后在多个控制器间使用restful(表现层状态转换)调用方式实现跨控制器信息查询,从而实现多控制器间的端到端时延估计与丢包率估算算法。本发明中,除了传统的sketch以外,本发明中的设计的所有sketch与相关的空间压缩方法、网络测量算法、技术在本发明的保护范围之内。
以上显示和描述了本发明的基本原理和主要特征及本发明的优点,对于本领域技术人员而言,显然本本发明限于上述示范性实施例的细节,而且在不背离本本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (6)

1.基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于包括如下步骤:S1.索引数组、sketch数组与哈希函数初始化;S2.流信息采集,流信息采集步骤主要是通过sketch数据结构在每个时间周期内将记录当前数据平面上的所有数据流信息,并将记录的信息在每个时间周期结束时发送到控制平面的控制器中;S3.丢包率估计,控制平面接收步骤S2中数据平面周期性收集的数据流信息,然后使用查询算法对网络的丢包率进行估算;S4.端到端时延估计。
2.根据权利要求1所述的基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于,步骤S1包括如下分步骤,S101:遍历sketch二维数组的所有桶;S102:设置索引数组流标识域、时间戳域、计数器域的初始值;S103:初始化d+1个哈希函数,当五元组到达时,哈希函数自动在哈希键后追加一定的值,使每个哈希函数的哈希结果各异。
3.根据权利要求1所述的基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于,步骤S2包括如下分步骤,S201:计算得到对应的索引值;S202:决策如何更新计数器信息、桶的数据流信息、时间戳信息;S203:记录下本次查找到的桶的索引index;S204:对于sketch的二维数组,遍历二维数组的每一行,并决策如何更新当前桶的计数器与索引。
4.根据权利要求1所述的基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于,步骤S3包括如下分步骤,S301:相同ID的sketch到达时,使用新的sketch替换;S302:当控制平面接收到应用平面的丢包统计指令时,分别统计遍历的数据流的数量以及丢包的数据流的数量;S303:如果桶内元素为空,那么跳过本次遍历;如果桶内元素不为空,获取下一跳交换机的ID,并使用该流ID查询下一跳交换机对应的sketch的定位索引结构;S304:如果当前的遍历结果是丢包、需要对数量计数器Ccounter和丢包数量计数器Clost分别加一,如果当前遍历结果是无丢包、那么只对数量计数器Ccounter加一;步骤S305:对于不同的控制器之间的丢包统计,在控制器之间使用restful的远程过程调用方式进行判断;S306:最终的丢包率计算结果公式为:
Figure RE-FDA0003462768080000011
其中drop_rate表示丢包率。
5.根据权利要求4所述的基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于,分步骤S303中,定位索引结构中,如查询结果对应桶的流ID与当前的流ID相同,那么说明当前数据流ID对应的数据包在当前的跳没有发生丢包;如果查询结果对应桶的流ID与当前的流ID不同,但是t2-t1的结果大于0且小于阈值,那么在当前跳无法判断是否发生丢包,存在流ID不是大流导致被覆盖可能性,对下一跳路由进行查询,如超过指定跳数阈值仍不能确定,那么认为丢包,发生其他情况表明丢包。
6.根据权利要求1所述的基于sketch的软件定义网络大流端到端时延与丢包率估计方法,其特征在于,步骤S4包括如下分步骤,S401:控制器首先加载每个下辖的交换机的sketch定位索引,然后从任一索引中选择任一非空数据流ID f1及其时间戳t1,根据流表查询下一跳交换机的ID,利用交换机ID确定对应的多维时序sketch的定位索引,并进行查询,如果索引中存在对应的流ID,那么提取时间戳t2;S402:如果t2<t1,结束当前的计算过程,重新遍历一个流ID,继续执行上述过程,直至t2<t1;S403:如果t2<t1但是查询的目标桶的流ID与要查询的流ID不同,那么查询该交换机的流表,在下一跳交换机上继续查询过程,直至t2<t1且两个流ID相同或者查询的跳数大于阈值;S404:如果t2<t1且两个流ID相同,那么计算t2-t1值与中间的跳数seg,端到端延时公式为
Figure RE-FDA0003462768080000021
否则继续查找下一个流ID,直至找到一个可以计算时延的流ID;对于多个数据流时延的计算,需要从任一sketch的定位索引开始遍历,对于该索引中的每个桶的流ID进行一次单个数据流的计算过程;步骤S405:在跨控制器时延计算时向目标控制器发送请求,传递当前的流ID信息与时间戳信息,如果目标控制器返回结果是1,重新选择并发送流ID与时间戳,如果目标控制器返回一个时间差值以及在目标控制器管辖下的交换机的跳数seg2,端到端时延为公式:
Figure RE-FDA0003462768080000022
CN202111309342.8A 2021-11-06 2021-11-06 基于sketch的软件定义网络大流端到端时延与丢包率估计方法 Withdrawn CN114039891A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111309342.8A CN114039891A (zh) 2021-11-06 2021-11-06 基于sketch的软件定义网络大流端到端时延与丢包率估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111309342.8A CN114039891A (zh) 2021-11-06 2021-11-06 基于sketch的软件定义网络大流端到端时延与丢包率估计方法

Publications (1)

Publication Number Publication Date
CN114039891A true CN114039891A (zh) 2022-02-11

Family

ID=80136541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111309342.8A Withdrawn CN114039891A (zh) 2021-11-06 2021-11-06 基于sketch的软件定义网络大流端到端时延与丢包率估计方法

Country Status (1)

Country Link
CN (1) CN114039891A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114710424A (zh) * 2022-03-10 2022-07-05 福州大学 基于软件定义网络的主机侧数据包处理延时测量方法
CN115065618A (zh) * 2022-08-18 2022-09-16 广州中和互联网技术有限公司 一种基于时序分析的采集数据的可靠性检测方法及***
CN117792962A (zh) * 2024-02-28 2024-03-29 苏州大学 一种分布式流基数测量方法、装置及计算机可读存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114710424A (zh) * 2022-03-10 2022-07-05 福州大学 基于软件定义网络的主机侧数据包处理延时测量方法
CN114710424B (zh) * 2022-03-10 2024-05-14 福州大学 基于软件定义网络的主机侧数据包处理延时测量方法
CN115065618A (zh) * 2022-08-18 2022-09-16 广州中和互联网技术有限公司 一种基于时序分析的采集数据的可靠性检测方法及***
CN117792962A (zh) * 2024-02-28 2024-03-29 苏州大学 一种分布式流基数测量方法、装置及计算机可读存储介质
CN117792962B (zh) * 2024-02-28 2024-05-24 苏州大学 一种分布式流基数测量方法、装置及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN114039891A (zh) 基于sketch的软件定义网络大流端到端时延与丢包率估计方法
EP1173941B1 (en) Collecting and reporting monitoring data from remote network probes
KR101609522B1 (ko) 무선 액세스 포인트를 선택하기 위한 방법 및 장치
US7525920B2 (en) Method and system for path identification in packet networks
EP2953318B1 (en) Bandwidth efficient processing and filtering across distributed databases
CN101686262B (zh) 一种基于多节点协作的传感器网络存储方法
CN109117275B (zh) 基于数据分片的对账方法、装置、计算机设备及存储介质
CN104468381A (zh) 一种多域流规则匹配的实现方法
US11184284B2 (en) Data packet forwarding method and apparatus
EP3720064A1 (en) Path calculation method and device under multi-dimensional constraints, processor and storage medium
US9876716B2 (en) Packet processing apparatus, flow entry configuration method and program
CN105262833A (zh) 一种内容中心网络的跨层缓存方法及其节点
CN108696438A (zh) Bier报文的转发方法及装置
WO2020181820A1 (zh) 数据缓存方法、装置、计算机设备和存储介质
CN105450964B (zh) 对录像数据进行云存储的方法、***及管理节点
KR20090062011A (ko) 액티브 노드와 유사한 특성을 가지는 이웃 노드의 관리방법, 장치 및 그 방법을 구현하기 위한 프로그램이 기록된기록매체
CN101729304B (zh) 一种丢包检测的方法、检测装置及检测***
CN112486914A (zh) 一种数据包存储与快查方法与***
Król et al. Weave: Efficient geographical routing in large-scale networks
CN104252504B (zh) 数据查询方法、设备和***
CN107070797B (zh) 一种报文转发的方法及***
CN103761194B (zh) 一种内存管理方法及装置
CN103297547A (zh) 使用基于dht的p2p***构建云存储辅助***的方法
JP5648560B2 (ja) トラフィックエンジニアリング装置、トラフィックエンジニアリング方法およびプログラム
CN108566335B (zh) 一种基于NetFlow的网络拓扑生成方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20220211