CN117278451A - 随流检测方法、装置、设备、系统及存储介质 - Google Patents
随流检测方法、装置、设备、系统及存储介质 Download PDFInfo
- Publication number
- CN117278451A CN117278451A CN202210938620.4A CN202210938620A CN117278451A CN 117278451 A CN117278451 A CN 117278451A CN 202210938620 A CN202210938620 A CN 202210938620A CN 117278451 A CN117278451 A CN 117278451A
- Authority
- CN
- China
- Prior art keywords
- service
- flow
- identifier
- message
- network device
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 326
- 238000003860 storage Methods 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 claims abstract description 105
- 238000013507 mapping Methods 0.000 claims description 70
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004891 communication Methods 0.000 abstract description 32
- 238000012545 processing Methods 0.000 description 37
- 238000010586 diagram Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 21
- 230000008569 process Effects 0.000 description 15
- 230000032683 aging Effects 0.000 description 13
- 238000004043 dyeing Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 10
- 230000003993 interaction Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 235000019580 granularity Nutrition 0.000 description 8
- 230000000694 effects Effects 0.000 description 5
- 238000001816 cooling Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 235000019800 disodium phosphate Nutrition 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 208000033748 Device issues Diseases 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000004549 pulsed laser deposition Methods 0.000 description 2
- 238000004064 recycling Methods 0.000 description 2
- 230000008929 regeneration Effects 0.000 description 2
- 238000011069 regeneration method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000004083 survival effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种随流检测方法、装置、设备、系统及存储介质,涉及通信技术领域。以第一网络设备为例,该方法包括:接收第一业务报文,基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识,该第一业务特征信息用于标识属于该业务流的业务报文;在第一业务报文中增加该第一流标识,得到第二业务报文,该第一流标识用于指示接收到第二业务报文的第二网络设备基于第一流标识进行随流检测;设备发送该第二业务报文。该方法通过纯数据面的流标识的生成,能够及时的对用来生成流标识的业务报文进行随流检测,使得被检测到的业务报文更全面,实现了迅速且无损的随流检测。
Description
本申请要求于2022年06月15日提交的申请号为202210676353.8、发明名称为“一种数据面动态分配及回收FlowID的方法、设备及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及随流检测方法、装置、设备、系统及存储介质。
背景技术
在通信技术领域中,需要对网络中传输的业务流进行随流检测,以感知业务流的真实传输情况。通常,控制设备会根据不同业务流的业务特征信息生成不同的流标识,然后将该业务特征信息与流标识的对应关系下发至网络设备,以使网络设备在数据面传输业务报文时,能够根据业务报文包括的业务特征信息确定该业务报文为需要进行随流检测的报文,并根据该业务特征信息对应的流标识对该业务报文进行随流检测。
但是,上述通过控制设备获取流标识的方式,在属于同一业务流的业务报文的业务特征信息发生变化的情况下,由于控制设备难以快速感知到该变化,导致业务特征信息发生变化后的业务报文未被检测到,进而使得随流检测的检测效果是有损的、不准确的。
发明内容
本申请提供了一种随流检测方法、装置、设备、系统及存储介质,用于通过数据面的网络设备为进行随流检测的业务流生成对应的流标识。
第一方面,提供了一种随流检测方法,以第一网络设备执行该方法为例,该方法包括:第一网络设备在接收第一业务报文后,基于该第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识,其中,第一业务特征信息用于标识属于该业务流的业务报文;在生成该第一流标识后,将该第一流标识增加到第一业务报文中得到第二业务报文,并发送该第二业务报文。其中,第一流标识用于指示接收到该第二业务报文的第二网络设备基于该第一流标识进行随流检测。
该方法通过在数据面生成流标识,并将该流标识添加到需要检测的业务报文中,以实现随流检测,使得被检测到的业务报文更全面,实现了迅速且无损的随流检测。相比于通过控制面获取流标识的方式,不仅提高了流标识的生成效率,还减少了数据面与控制面的信息交互,避免了由信息交互的丢包等现象导致的随流检测受损,进一步保证了无损的随流检测,提升了随流检测的检测能力。
在一种可能的实施方式中,第一业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文。当第一业务报文为业务流的业务特征信息发生变化后的首个报文时,能够实现对业务特征信息动态变化的业务流的迅速且无损的随流检测,即能够动态精准的对传输的业务流进行监控。对于第一业务报文为业务流的首个报文的情况,由于无需通过控制面获取流标识,能够在数据面自动实现对业务流的随流检测,提高了随流检测的效率。
在一种可能的实施方式中,第一网络设备可以基于第一网络设备的标识、第一芯片的标识和第一业务标识生成该第一流标识。其中,第一芯片是第一网络设备上接收该第一业务报文的芯片,第一业务标识由第一芯片为第一业务特征信息分配得到。
在该情况下,由于第一网络设备的标识在随流检测域内是唯一的,第一芯片的标识在第一网络设备内是唯一的,第一业务标识在第一芯片内是唯一的。因此,生成的第一流标识在随流检测域内是唯一的,保证了在第一网络设备包括多个芯片的应用场景下,第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
在另一种可能的实施方式中,第一网络设备可以基于第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成该第一流标识。其中,第一芯片上的第一存储介质是第一网络设备上接收该第一业务报文的存储介质,第一业务标识由该第一存储介质为第一业务特征信息分配得到。
在该情况下,由于第一网络设备的标识在随流检测域内是唯一的,第一芯片的标识在第一网络设备内是唯一的,第一存储介质在第一芯片内是唯一的,第一业务标识在第一存储介质内是唯一的。因此,生成的第一流标识在随流检测域内是唯一的,保证了在第一网络设备包括多个芯片且每个芯片包括多个存储介质的应用场景下,第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
在又一种可能的实施方式中,第一网络设备可以基于第一随流检测实例的标识和第一业务标识生成该第一流标识。其中,第一业务标识由第一网络设备为第一业务特征信息分配得到;第一随流检测实例的标识由控制设备下发,即在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之前,第一网络设备接收控制设备发送的第一随流检测实例的标识,该第一随流检测实例用于对该业务流进行随流检测。
在该情况下,由于控制设备是对随流检测域内的多个随流检测实例进行配置的设备,第一随流检测实例的标识是控制设备统一分配下发的,能够保证第一随流检测实例的标识在随流检测域内的唯一性,且第一业务标识在第一网络设备内是唯一的。因此,生成的第一流标识在随流检测域内是唯一的,保证了第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
在一种可能的实施方式中,第一网络设备在接收第一业务报文后,当该第一业务特征信息属于业务特征范围时,基于第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识。其中,该业务特征范围由控制设备下发,即在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之前,第一网络设备接收控制设备发送的第一随流检测实例的业务特征范围,该第一随流检测实例用于对该业务流进行随流检测。
通过对第一业务特征信息是否属于业务特征范围进行判断,能够实现对指定业务流的随流检测,使得随流检测的目标更精准。又因为业务特征范围包括多个业务特征信息,能够实现对属于该业务特征范围且业务特征信息会动态变化的业务流进行精准的随流检测。
在一种可能的实施方式中,在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之后,还可以保存该第一业务特征信息与第一流标识的对应关系至映射流表。其中,该映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。通过构建映射流表,使得在接收到包括该第一业务特征信息的非首个报文时,可以直接在映射流表中查找到该第一业务特征信息对应的第一流标识,无需再次生成,提高了随流检测的检测效率。
在一种可能的实施方式中,在构建映射流表后,还可以对该映射流表进行维护。维护映射流表的方式可以为基于在参考周期内未接收到包括该第一业务特征信息的业务报文,将该映射流表中的该第一业务特征信息与第一流标识的对应关系删除;当删除该第一业务特征信息与第一流标识的对应关系之后的时长达到参考时长时,将该第一流标识回收,回收后的第一流标识即可分配至其他业务特征信息。通过对映射流表的维护,能够保持映射流表的有效性,及时对老化的流标识进行回收,能够提高流标识的利用率。
在一种可能的实施方式中,第一网络设备还可以将该映射流表上报至控制设备,使得控制设备能够根据该映射流表对接收到的该业务流的转发路径上的多个网络设备分别发送的多个随流检测数据进行分析,进而根据分析结果获取得到该业务流对应的业务质量。
第二方面,提供了一种随流检测方法,以控制设备执行该方法为例,该方法包括:控制设备向第一网络设备发送第一随流检测实例的业务特征范围,该第一随流检测实例的业务特征范围用于第一网络设备当第一业务报文的第一业务特征信息属于业务特征范围时,基于第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识。
该方法通过向第一网络设备发送业务特征范围,使得第一网络设备能够精准的对指定业务流进行随流检测,使得随流检测的目标更精准。又因为业务特征范围包括多个业务特征信息,能够实现对属于该业务特征范围且业务特征信息会动态变化的业务流进行精准的随流检测。
在一种可能的实施方式中,该第一业务报文为该业务流的首个报文或者为该业务流的业务特征信息发生变化后的首个报文。
在一种可能的实施方式中,控制设备还会向第一网络设备发送该第一随流检测实例的标识,该第一随流检测实例的标识用于第一网络设备基于该第一随流检测实例的标识和第一业务标识生成该第一流标识。其中,第一业务标识由第一网络设备为第一业务特征信息分配得到。由于该第一随流检测实例的标识在随流检测域内是唯一的,且第一业务标识在第一网络设备内是唯一的,因此,使得第一网络设备根据该第一随流检测实例的标识和第一业务标识生成的第一流标识在随流检测域内是唯一的,保证了第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
在一种可能的实施方式中,控制设备还会接收到第一网络设备发送的映射流表,该映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。使得控制设备能够根据该映射流表对接收到的该业务流的转发路径上的多个网络设备分别发送的多个随流检测数据进行分析,进而根据分析结果获取得到该业务流对应的业务质量。
第三方面,提供了一种随流检测装置,该装置应用于第一网络设备,该装置包括:
第一接收模块,用于接收第一业务报文;
生成模块,用于基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,所述第一业务特征信息用于标识属于所述业务流的业务报文;
获取模块,用于在所述第一业务报文中增加所述第一流标识,得到第二业务报文,所述第一流标识用于指示接收到所述第二业务报文的第二网络设备基于所述第一流标识进行随流检测;
第一发送模块,用于发送所述第二业务报文。
在一种可能的实施方式中,所述第一业务报文为所述业务流的首个报文或者为所述业务流的业务特征信息发生变化后的首个报文。
在一种可能的实施方式中,生成模块,用于基于所述第一网络设备的标识、第一芯片的标识和第一业务标识生成所述第一流标识,所述第一芯片是所述第一网络设备上接收所述第一业务报文的芯片,所述第一业务标识由所述第一芯片为所述第一业务特征信息分配得到。
在一种可能的实施方式中,生成模块,用于基于所述第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成所述第一流标识,所述第一芯片上的所述第一存储介质是所述第一网络设备上接收所述第一业务报文的存储介质,所述第一业务标识由所述第一存储介质为所述第一业务特征信息分配得到。
在一种可能的实施方式中,该装置还包括:
第二接收模块,用于接收控制设备发送的第一随流检测实例的标识,所述第一随流检测实例用于对所述业务流进行随流检测;
生成模块,用于基于所述第一随流检测实例的标识和第一业务标识生成所述第一流标识,所述第一业务标识由所述第一网络设备为所述第一业务特征信息分配得到。
在一种可能的实施方式中,第二接收模块,还用于接收控制设备发送的第一随流检测实例的业务特征范围;
生成模块,用于当所述第一业务特征信息属于所述业务特征范围时,基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识。
在一种可能的实施方式中,该装置还包括:
保存模块,用于保存所述第一业务特征信息与第一流标识的对应关系至映射流表,所述映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
在一种可能的实施方式中,该装置还包括:
删除模块,用于基于在参考周期内未接收到包括所述第一业务特征信息的业务报文,将所述映射流表中的所述第一业务特征信息与所述第一流标识的对应关系删除;
回收模块,用于当删除所述第一业务特征信息与所述第一流标识的对应关系之后的时长达到参考时长时,将所述第一流标识回收。
在一种可能的实施方式中,该装置还包括:
第二发送模块,用于向控制设备发送所述映射流表。
第四方面,提供了一种随流检测装置,该装置应用于控制设备,该装置包括:
发送模块,用于向第一网络设备发送第一随流检测实例的业务特征范围,所述第一随流检测实例的业务特征范围用于所述第一网络设备当第一业务报文的第一业务特征信息属于所述业务特征范围时,基于所述第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识。
在一种可能的实施方式中,所述第一业务报文为所述业务流的首个报文或者为所述业务流的业务特征信息发生变化后的首个报文。
在一种可能的实施方式中,发送模块,还用于向所述第一网络设备发送所述第一随流检测实例的标识,所述第一随流检测实例的标识用于所述第一网络设备基于所述第一随流检测实例的标识和第一业务标识生成所述第一流标识,所述第一业务标识由所述第一网络设备为所述第一业务特征信息分配得到。
在一种可能的实施方式中,该装置还包括:
接收模块,用于接收所述第一网络设备发送的映射流表,所述映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
第五方面,提供了一种网络设备,该网络设备包括:处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条程序指令或代码,所述至少一条程序指令或代码由所述处理器加载并执行,以使所述网络设备实现如上第一方面或第二方面任一所述的随流检测方法。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型以及存储器与处理器的设置方式不做限定。
第六方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该通信装置执行第一方面或第一方面的任一种可能的实施方式中的方法,或者执行第二方面或第二方面的任一种可能的实施方式中的方法。
第七方面,提供了一种随流检测系统,所述随流检测系统包括第一网络设备和控制设备;
所述第一网络设备用于执行所述第一方面或第一方面的任一种可能的实现方式所述的方法,所述控制设备用于执行所述第二方面或第二方面的任一种可能的实现方式所述的方法。
第八方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行,以使计算机实现上述第一方面或第一方面的任一种可能的实施方式中的方法,或者实现上述第二方面或第二方面的任一种可能的实施方式中的方法。
第九方面,提供了一种计算机程序(产品),所述计算机程序(产品)包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行上述各方面中的方法。
第十方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述各方面中的方法。
在一种可能的实施方式中,该芯片与第一网络设备上接收第一业务报文的第一芯片可以为同一个芯片,也可以为不同的芯片。
第十一方面,提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,所述输入接口、输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行上述各方面中的方法。
在一种可能的实施方式中,该芯片与第一网络设备上接收第一业务报文的第一芯片可以为同一个芯片,也可以为不同的芯片。
应当理解的是,本申请的第三方面至第十方面技术方案及对应的可能的实施方式所取得的有益效果可以参见上述对第一方面和第二方面及其对应的可能的实施方式的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种随流检测方法的实施环境示意图;
图2为本申请实施例提供的一种随流检测过程的示意图;
图3为本申请实施例提供的一种随流检测方法的流程图;
图4为本申请实施例提供的一种控制设备下发配置信息的示意图;
图5为本申请实施例提供的一种维护映射流表的流程图;
图6为本申请实施例提供的一种随流检测头的结构示意图;
图7为本申请实施例提供的一种获取流标识的流程图;
图8为本申请实施例提供的另一种随流检测过程的示意图;
图9为本申请实施例提供的一种随流检测装置的结构示意图;
图10为本申请实施例提供的另一种随流检测装置的结构示意图;
图11为本申请实施例提供的一种交换机的结构示意图;
图12为本申请实施例提供的一种网络设备的结构示意图;
图13为本申请实施例提供的另一种网络设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细解释说明之前,先对本申请实施例的应用场景进行解释说明。
随着通信技术的不断发展,网络规模逐渐增大,通过在转发路径的各网络设备上对网络中传输的业务流进行随流检测,可以获取业务流的真实传输情况,实现实时监控网络性能,快速感知网络故障的目的,从而确保能够提供高质量、稳定可靠的网络服务。
示例性地,在随流信息遥测(in-situ flow information telemetry,iFIT)随流检测技术中,检测对象通常为业务流,业务流可以根据业务特征信息灵活的定义。其中,业务特征信息可以包括业务报文的五元组信息,五元组信息包括目的互联网协议(internetprotocol,IP)地址、源IP地址、协议(Protocol)号、四层目的端口号、四层源端口号。将业务特征信息映射为一个流标识(Flow identity,Flow ID),能够简化用来标识不同业务流的业务特征信息。不同业务流的Flow ID通过管控平面(如控制设备)统一分配,以保证FlowID在检测域内的全局唯一,使得任一网络设备能够通过Flow ID唯一识别一条业务流。在进行随流检测过程中,作为头(Initial)节点的网络设备在接收业务流的入口完成对业务特征信息的识别,然后根据管控平面为该业务特征信息分配的Flow ID,在属于该业务流的业务报文中添加随流检测信息(包括该Flow ID),实现带内的随流检测。
但是,业务流的业务特征信息存在变化的可能,即使是同一个用户的同一种类型的业务流也无法保证五元组不发生变化。例如,某终端或服务器在不同时间发起的传输控制协议(transmission control protocol,TCP)/用户数据报协议(user datagramprotocol,UDP)报文的四层源端口号就会动态变化;又例如,当出现网络故障时,同一条业务流在重新发起或者重新建链后,其业务特征信息也会发生变化;再例如,在虚拟扩展局域网(virtual extensible local area network,VXLAN)的通信网络中,同一业务流的外层隧道封装的业务特征信息是实时变化的。
在属于同一业务流的业务报文的业务特征信息发生变化的情况下,上述通过控制设备静态下发流标识的方式,控制设备难以快速感知到该变化,导致数据面无法及时获取到该变化后的业务特征信息对应的Flow ID,进而导致业务特征信息发生变化后的业务报文未被检测到,使得随流检测的检测效果是有损的、不准确的。
以图1所示的本申请实施例提供的一种随流检测方法的实施环境示意图为例,该实施环境中包括头节点设备、中间节点设备、尾节点设备和控制设备,头节点设备、中间节点设备和尾节点设备均与控制设备连接,头节点设备、中间节点设备和尾节点设备为业务流传输的转发路径上的网络设备。可以理解,接收业务流的头节点设备为业务流在网络中的入口,发送业务流的尾节点设备为业务流在网络中的出口。可选地,图1所示的实施环境中还可包括两个或两个以上的中间节点设备,本申请实施例不对中间节点设备的数量进行限定。
头节点设备、中间节点设备和尾节点设备用于实际部署随流检测,以获取对业务流进行随流检测的检测数据并将检测数据上报给控制设备。头节点设备、中间节点设备和尾节点设备可以为具有三层转发能力的网络设备,例如,路由器或交换等。
控制设备用以接收并管理各个网络设备上报的业务流的转发路径上的网络设备的检测数据。控制设备可以为服务器,服务器中部署有控制器,控制器可以定位为未来云化网络的大脑,融合网络管理、业务控制和网络分析等功能,是实现网络资源池化、网络连接自动化和自优化、运维自动化的核心使能系统。服务器也称伺服器,是提供计算服务的设备,具备承担服务并且保障服务的能力。示例性地,服务器为x86服务器,又称复杂指令系统计算机(complex instruction set computer,CISC)架构服务器或个人计算机(personalcomputer,PC)服务器。
参见图2,图2为本申请实施例提供的一种随流检测过程的示意图。如图2所示,在头节点设备感知到一条新的业务流的首个业务报文(简称首包)后,将业务流的首包上送至控制设备;控制设备根据首包的业务特征信息(如五元组)为该业务流分配对应的Flow ID,并将该Flow ID下发给头节点设备;头节点设备将该Flow ID携带在传输的业务报文中,以使转发路径上的头节点设备、中间节点设备和尾节点设备均能根据该Flow ID对该业务流的业务报文进行识别和随流检测,并将该Flow ID和随流检测的检测数据上送至控制设备;控制设备根据接收到的随流检测的检测数据完成路径还原、丢包率和时延等业务质量的测量。
但是,由于从上送首包到下发Flow ID需要一个时间过程,使得流标识获取的不够及时,导致无法监控到短流的业务质量,对于长流也会损失首个检测周期内的检测数据。其中,短流指的是存活时间为毫秒级的业务流,即短流的传输时长小于1厘秒;长流指的是存活时间为厘秒级以上的业务流,即长流的传输时长大于1厘秒。并且,控制设备与节点设备之间的信息交互,有可能存在丢包或链路异常等现象,若导致上送的首包或下发的流标识丢失,导致随流检测受损的概率较大。此外,若存在大量的首包同时上送至控制设备,会带来对控制设备性能的冲击,存在控制设备被攻击的风险。
基于此,本申请实施例提供了一种随流检测方法,该方法实现了在数据面生成Flow ID,能够对业务特征信息动态变化的业务流(包括长流和短流)进行无损的随流检测,也不会损失首个检测周期内的检测数据,提升了随流检测的检测能力。并且,减小了控制面与数据面之间进行信息交互的频率,避免了对控制面的控制设备的性能冲击。
接下来,以第一网络设备和控制设备为例,对本申请实施例提供的随流检测方法进行说明。其中,结合图1所示的实施环境,第一网络设备对应图1中的头节点设备,控制设备对应图1中的控制设备。参见图3,该方法包括但不限于如下步骤301-步骤303。
步骤301,第一网络设备接收第一业务报文,基于第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识,该第一业务特征信息用于标识属于该业务流的业务报文。
在本申请实施例中,第一网络设备接收到第一业务报文后,能够由第一网络设备自行生成该第一业务报文所属的业务流对应的第一流标识,该第一流标识能够全网唯一标识该第一业务报文所属的业务流。由此,无需与控制设备进行信息交互,实现了在数据面生成流标识。
其中,第一业务特征信息用于标识属于该业务流的业务报文,即当第一网络设备每接收到一个业务报文,都会识别业务报文中包括的业务特征信息,根据该业务特征信息确定该业务报文所属的业务流。可以理解,不同通信场景下的第一业务报文包括的第一业务特征信息的内容不同,第一业务特征信息的内容不同使得该第一业务特征信息对应的业务流的粒度也不同。
本申请实施例不对第一业务特征信息的内容进行限定,也即不对进行随流检测的业务流的粒度进行限定,该粒度可以根据应用场景灵活调整。通过设置不同的第一业务特征信息的内容,能够实现不同粒度的随流检测,使得随流检测的应用更灵活。
可选地,第一业务特征信息可以包括五元组信息中的至少一种,五元组信息包括源IP、目的IP、源端口、目的端口和协议号。当第一业务报文为远程直接数据存取(remotedirect memory access,RDMA)下的业务报文时,第一业务特征信息除了包括五元组信息中的至少一种,还可以包括队列对(queue pair,QP)的标识,当第一业务报文为虚拟专用网络(virtual private network,VPN)下的业务报文时,第一业务特征信息除了包括五元组信息中的至少一种,还可以包括VPN的标识;当第一业务报文为通过隧道封装的业务报文时,第一业务特征信息可以包括隧道外层报文的五元组信息中的至少一种。
例如,当用于标识属于该业务流的业务报文的第一业务特征信息包括五元组信息时,将包括该五元组信息的业务报文确定为同一条业务流,则该业务流的粒度是五元组;当用于标识属于该业务流的业务报文的第一业务特征信息包括五元组信息和VPN ID时,将包括该五元组信息和VPN ID的业务报文确定为同一条业务流,则该业务流的粒度是五元组+VPN。可以理解,第一业务特征信息包括的内容越多,进行随流检测的业务流的粒度越细;反之,第一业务特征信息包括的内容越少,进行随流检测的业务流的粒度越粗。
本申请实施例不对第一网络设备基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识的触发条件进行限定。可选地,当第一业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文时,基于该第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识。
当第一业务报文为业务流的业务特征信息发生变化后的首个报文时,能够实现对业务特征信息动态变化的业务流的迅速且无损的随流检测,即能够动态精准的对传输的业务流进行监控。对于第一业务报文为业务流的首个报文的情况,由于无需通过控制面获取流标识,能够在数据面自动实现对业务流的随流检测,提高了随流检测的效率。
可以理解,若第一网络设备对传输的所有业务流均进行随流检测,由于业务流的数量是极大的,对第一网络设备来说需要非常大的存储空间和较强的处理能力。因此,本申请实施例引入了业务特征范围,使得第一网络设备能够精准的对业务特征信息属于该业务特征范围的业务流进行随流检测,还能够通过对业务特征范围的灵活调整实现不同的随流检测需求。
可选地,当该第一业务特征信息属于业务特征范围时,基于第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识。或者,当该第一业务特征信息属于业务特征范围,且第一业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文时,基于第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识。
由此,通过对第一业务特征信息是否属于业务特征范围的判断,能够实现对指定业务流的随流检测,使得随流检测的目标更精准。又因为业务特征范围包括多个业务特征信息,能够实现对属于该业务特征范围且业务特征信息会动态变化的业务流进行精准的随流检测。
其中,该业务特征范围可以通过对第一网络设备进行配置得到,也可以由控制设备下发至第一网络设备。当业务特征范围由控制设备下发时,第一网络设备在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之前,还会接收控制设备发送的第一随流检测实例的该业务特征范围。
本申请实施例不对业务特征范围的内容进行限定,可以根据需要进行随流检测的应用场景进行灵活调整。例如,业务特征范围包括的特征要少于第一业务特征信息包括的特征。例如,业务特征范围可以包括四元组信息(源IP、目的IP、目的端口和协议号),对第一业务报文识别得到的第一业务特征信息包括五元组信息(源IP、目的IP、源端口、目的端口和协议号),由此,该第一随流检测实例用于指示对源IP、目的IP、目的端口和协议号均相同,但是源端口可能不同的至少一条业务流进行随流检测,实现了动态的随流检测。
接下来,对不同应用场景的业务特征范围进行举例说明。示例性地,针对重大会议或活动等所提供的重点保障服务(简称重保服务),需要对重保服务的业务流进行随流检测,以确保重大会议或活动的平稳运行,在该情况下,业务特征范围可以包括重保服务的业务标识;或者,当需要获取指定用户或者指定终端的业务质量时,业务特征范围可以包括源IP;或者,当两个终端之间出现故障需要检测故障点时,业务特征范围可以包括源IP和目标IP。
在一种可能的实施方式中,控制设备会根据网络的组网架构和业务流的转发路径,指定网络中的该业务流对应的头节点设备和尾节点设备,通过向头节点设备发送随流检测实例的配置信息,例如,随流检测实例的业务特征范围或标识等,能够指示头节点设备对业务特征信息属于该业务特征范围的业务报文进行随流检测,以此实现随流检测的触发。
参见图4,图4为本申请实施例提供的一种控制设备下发配置信息的示意图。其中,终端A到终端B之间的业务流不定时的存在有少量的丢包,但是不确定具体的丢包位置,可以通过本申请实施例提供的随流检测方法,对终端A到终端B之间的业务流进行随流检测,进而根据随流检测的检测数据分析确定对应的丢包位置。如图4所示,终端A到终端B之间包括多个节点设备,以终端A向终端B发送的业务流为例,与终端A相连的叶(leaf)1交换机和leaf2交换机为头节点设备,与终端B相连的leaf3交换机和leaf4交换机为尾节点设备,之间的脊(spine)1交换机、spine2交换机、spine3交换机和spine4交换机为中间节点。其中,spine2交换机为导致丢包的故障点。
当控制设备配置了该随流检测任务对应的随流检测实例后,控制设备向leaf1交换机、leaf2交换机、leaf3交换机和leaf4交换机下发该随流检测实例的配置信息,以指定leaf1交换机和leaf2交换机为头节点,leaf3交换机和leaf4交换机为尾节点,并指定头节点进行随流检测的业务特征范围。由leaf1交换机和leaf2交换机在接收终端A发送的业务报文后,基于该业务报文包括的业务特征信息属于该业务特征范围,且该业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文时,根据该业务报文包括的业务特征信息生成对应的流标识,进而基于该流标识进行随流检测。
在完成对第一网络设备进行随流检测的触发之后,第一网络设备即可基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识。在本申请实施例中,由于第一网络设备在数据面生成的流标识需要确保是在随流检测域内的唯一性,以避免不同的业务流在随流检测域内的各网络设备上不会发声冲突。因此,本申请实施例中的流标识可以根据流标识字段的要求位宽和第一网络设备的芯片架构等适应性地生成。其中,随流检测域指的是进行随流检测所涉及到的节点设备。
基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识的方式,包括但不限于如下三种。
方式一,基于第一网络设备的标识、第一芯片的标识和第一业务标识生成第一流标识。
在该方式一下,第一网络设备包括多个芯片,第一网络设备通过该多个芯片中的第一芯片接收该第一业务报文,其中,第一业务标识由该第一芯片为该第一业务特征信息分配得到。因此,第一业务标识在第一芯片内是唯一的。其中,芯片可以为转发芯片。可选地,第一网络设备上生成第一流标识的芯片为第二芯片,第一网络设备上接收该第一业务报文的第一芯片与第一网络设备上生成第一流标识的第二芯片,可以为同一个芯片也可以为不同的芯片。
此外,第一网络设备的标识是控制设备为随流检测域内的网络设备统一分配的唯一标识,即第一网络设备的标识在随流检测域内是唯一的,第一芯片的标识是第一网络设备为该第一网络设备上的所有芯片统一分配的唯一标识,即第一芯片的标识在第一网络设备内是唯一的。因此,基于第一网络设备的标识、第一芯片的标识和第一业务标识生成的第一流标识在随流检测域内是唯一的,保证了在第一网络设备包括多个芯片的应用场景下,第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
可选地,第一芯片为第一业务特征信息分配对应的第一业务标识的方式可以为:直接将该第一业务特征信息作为第一业务标识;或者,对第一业务特征信息进行掩码处理,将掩码处理后的结果作为第一业务标识;或者,第一芯片中包括有多个业务标识,该多个业务标识各不相同,当需要为第一业务报文分配第一业务标识时,可以从该多个业务标识中选择一个当前未被使用的业务标识作为该第一业务标识。
示例性地,流标识(Flow ID)=NodeID+ChipID+ChipFlowID,其中,NodeID代表第一网络设备的标识,ChipID代表第一芯片的标识,ChipFlowID代表第一芯片为该第一业务特征信息分配的第一业务标识。
方式二,基于第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成该第一流标识。
在该方式二下,第一网络设备包括多个芯片,每个芯片包括多个存储介质,第一网络设备通过该多个存储介质中的第一存储介质接收的第一业务报文,第一业务标识由该第一存储介质为第一业务特征信息分配得到。其中,第一存储介质为第一业务特征信息分配第一业务标识的方式可参见方式一中的第一芯片为第一业务特征信息分配第一业务标识的方式,此处不再赘述。
同样的,第一网络设备的标识在随流检测域内是唯一的,第一芯片的标识在第一网络设备内是唯一的,第一存储介质的标识是第一芯片为该第一芯片的所有存储介质统一分配的唯一标识,即第一存储介质的标识在第一芯片内是唯一的。因此,基于第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成的第一流标识在随流检测域内是唯一的,保证了在第一网络设备包括多个芯片且每个芯片包括多个存储介质的应用场景下,第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
由于第一存储介质的标识是第一芯片为该第一芯片的所有存储介质统一分配的唯一标识,因此,当第一芯片的架构不同时,第一存储介质的标识方式也不同。可选地,当第一芯片是多Die架构时,第一芯片包括多个Die,Die指的是芯片未封装前的晶粒(也称为裸片),每个Die包括一个流水线(Pipeline),则第一存储介质的标识可以为Die的标识,在该情况下,Flow ID=NodeID+ChipID+DieID+PipelineFlowID,其中,DieID代表第一存储介质的标识,PipelineFlowID代表第一存储介质为第一业务特征信息分配的第一业务标识;当第一芯片是多Pipeline架构时,第一芯片包括多个Die,每个Die包括多个Pipeline,则第一存储介质的标识可以为Die的标识和Pipeline的标识,在该情况下,Flow ID=NodeID+ChipID+DieID+PipelineID+PipelineFlowID,其中,DieID+PipelineID代表第一存储介质的标识。
方式三,基于第一随流检测实例的标识和第一业务标识生成第一流标识。
在该方式三下,由于不具体细化第一网络设备的芯片结构,则第一业务标识是第一网络设备为该第一业务特征信息分配得到,具体的分配方法与方式一或方式二中的分配方法相同。其中,第一随流检测实例的标识为该第一随流检测实例在随流检测域内的唯一标识,可选地,该第一随流检测实例的标识由控制设备下发。
在一种可能的实施方式中,在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之前,第一网络设备接收控制设备发送的第一随流检测实例的标识,该第一随流检测实例用于对该业务流进行随流检测。其中,控制设备会为随流检测域内所有随流检测实例统一分配对应的标识,以保证第一随流检测实例的标识在随流检测域内的唯一性。
由于第一随流检测实例的标识在随流检测域内是唯一的,且第一业务标识在第一网络设备内是唯一的。因此,基于第一随流检测实例的标识和第一业务标识生成的第一流标识在随流检测域内是唯一的,保证了第一流标识在随流检测域内的各个网络设备上不会发生冲突,提高了随流检测的准确性。
示例性地,Flow ID=InstanceID+NodeFlowID,其中,InstanceID代表第一随流检测实例的标识,NodeFlowID代表第一网络设备为该第一业务特征信息分配的第一业务标识。
由此,通过上述三种方式中的任一种方式均能够实现由第一网络设备基于第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识,且该第一流标识能够唯一标识该业务流,满足了随流检测中流标识的唯一性。
可以理解,用于保存或者携带该流标识的字段包括对应的要求位宽,要求位宽可以为最大位宽,例如,流标识字段的要求位宽可以为40比特(bits)、20bits或者更小。通过上述三种方式中第一流标识的组成结构可以看出,方式一或方式二下生成的第一流标识所需的位宽较大,方式三下生成的第一流标识所需的位宽较小。因此,根据流标识字段的要求位宽或者第一网络设备的芯片架构,可以灵活的选用上述三种方式中合适的方式来生成第一流标识。
接下来,第一网络设备在基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识之后,还可以保存该生成的第一业务特征信息与第一流标识的对应关系至映射流表。其中,该映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
可选地,第一网络设备接收第二业务报文,该第二业务报文包括第二业务特征信息;基于该映射流表中包括该第二业务特征信息,将映射流表中该第二业务特征信息对应的流标识作为该第二业务报文对应的第二流标识。通过构建映射流表,使得在接收到包括该第一业务特征信息的非首个报文时,可以直接在映射流表中查找到该第一业务特征信息对应的第一流标识,无需再次生成,提高了随流检测的检测效率。
在一种可能的实施方式中,在构建映射流表后,还可以对该映射流表进行维护。维护映射流表的方式可以为基于在参考周期内未接收到包括该第一业务特征信息的业务报文,将该映射流表中的该第一业务特征信息与第一流标识的对应关系删除;当删除该第一业务特征信息与第一流标识的对应关系之后的时长达到参考时长时,将该第一流标识回收,回收后的第一流标识即可分配至其他业务特征信息。通过对映射流表的维护,能够保持映射流表的有效性,及时对老化的流标识进行回收,能够提高流标识的利用率。
其中,参考周期可以根据经验设置,或者,根据应用场景灵活调整,例如,按照参考周期为3分钟;参考时长可以根据经验设置,或者,根据应用场景灵活调整,例如,参考时长为10秒钟。通过参考时长的限定,能够防止第一网络设备在删除该第一业务特征信息与第一流标识的对应关系后,立刻将该第一流标识中的第一业务标识分配给其他的业务特征信息,以避免由于第二网络设备还未在第二网络设备的映射流表中删除该第一业务特征信息与第一流标识的对应关系,导致第二网络设备的映射流表中同一第一流标识对应两个业务特征信息的现象发生,减少随流检测的检测异常发生。
参见图5,图5为本申请实施例提供的一种维护映射流表的流程图。如图5所示,在步骤11中,第一网络设备对映射流表进行老化扫描,以扫描出映射流表中包括的老化流标识。其中,老化流标识指示在参考周期内未接收到包括该老化流标识对应的业务特征信息的业务报文;在步骤12中,判断映射流表是否老化,若映射流表无老化,则返回执行步骤11,若映射流表老化,执行步骤13,其中,映射流表老化即为映射流表中包括老化流标识;在步骤13中,删除映射流标识中的老化流标识,即删除该老化流标识与对应的业务特征信息;在步骤14中,将该老化流标识进入冷却期,即从删除时刻开始计算该老化流标识删除后的冷却时长;在步骤15中,判断该冷却时长是否达到参考时长,当该冷却时长达到参考时长时,执行步骤16;在步骤16中,回收该老化流标识。在回收该老化流标识后,即可将该回收的老化流标识中的业务标识分配给其它业务特征信息。
在本申请实施例中,第一网络设备还可以将该映射流表上报至控制设备,使得控制设备能够根据该映射流表对接收到的该业务流的转发路径上的多个节点设备分别发送的多个随流检测数据进行分析,进而根据分析结果获取得到该业务流对应的业务质量。
步骤302,第一网络设备在第一业务报文中增加该第一流标识,得到第二业务报文,该第一流标识用于指示接收到第二业务报文的第二网络设备基于第一流标识进行随流检测。
其中,第一网络设备在第一业务报文中增加该第一流标识,得到第二业务报文可以为,第一网络设备在第一业务报文中增加该随流检测头,得到第二业务报文,该第二业务报文的随流检测头中包括该第一流标识。接收到第二业务报文的第二网络设备通过解析该随流检测头,确定该第二业务报文为需要进行随流检测的业务报文,并基于该随流检测头中的第一流标识进行随流检测。
在本申请实施例中,第一网络设备在获取得到对应的流标识之后,还基于该第一流标识进行随流检测,可选地,第一网络设备基于该第一流标识对接收的第一业务报文进行随流检测,得到该第一流标识对应的入口检测数据;基于该第一流标识对待发送的第二业务报文进行随流检测,得到第一流标识对应的出口检测数据。通过入口检测数据和出口检测数据的获取,能够方便的检测出网络设备内部发生的故障。
可选地,第一网络设备在获取得到入口检测数据和出口检测数据之后,还会向控制设备发送该第一流标识和该第一流标识对应的入口检测数据或出口检测数据中的至少一种,例如,第一网络设备主动性的周期性的向控制设备发送该第一流标识和该第一流标识对应的入口检测数据或出口检测数据中的至少一种。
在一种可能的实施方式中,第一网络设备会维护第一网络设备的检测流表,检测流表中包括映射流表中的流标识,每个流标识包括对应的入口检测数据和出口检测数据。在该情况下,第一网络设备直接向控制设备发送该检测流表。
本申请实施例不对获取随流检测数据的方式进行限定,例如,可以采用征求意见文档(Request For Comments,RFC)8321被动和混合性能监测的交替标记方法(alternate-marking method for passive and hybrid performance monitoring)的染色机制来获取随流检测数据。在染色机制中,通过在业务报文中增加染色标识位,然后根据设定的检测周期对业务报文中的染色标记位进行交替染色,例如,前一个检测周期内将染色标识位的值置为1,后一个检测周期内将该染色标识位的值交替置为0,通过对每个检测周期内的0或1进行统计,以得到每个检测周期内的随流检测数据。在该情况下,该随流检测头中还可以包括标记染色位。
示例性地,参见图6,图6为本申请实施例提供的一种随流检测头的结构示意图。如图6所示,随流检测头中包括flow ID:该字段长度为20bits,用于记录流标识;L(Loss):丢包染色标记,该字段长度为1bit,用于标识丢包检测的不同染色周期,0/1代表不同的周期;D(Delay):时延染色标记,该字段长度为1bit,如果该字段置位为1,表明需要记录时间戳;R(Reserved):保留位,该字段长度为6bits,用于协议扩展定义;NH(Next Header):下一报头,该字段长度为4bits,用于标识扩展头定义,值为0x00表示没有扩展头,值为0x01~0x08用于私有扩展;扩展流标识(flow ID Ext):用于扩展位宽,该字段长度为20bit,该字段和flow ID字段一起记录流标识;标志(Flag):该字段长度为4bits,每一个bit用于指示特殊用途,例如,其中bit 20是否置位决定随流检测的测量模式为端到端模式还是逐跳模式;Len(Length):长度,该字段长度为4bits,用于指示随流检测扩展头的长度,单位为字节。
步骤303,第一网络设备发送该第二业务报文。
可选地,第一网络设备向第二网络设备发送该第二业务报文,第二网络设备为该业务流的转发路径上的中间节点设备或尾节点设备。同样的,第二网络设备接收该第二业务报文,由于第二业务报文包括第一流标识,第二网络设备基于该第一流标识对接收的第二业务报文进行随流检测,得到该第一流标识对应的入口检测数据;当第二网络设备转发该第二业务报文时,基于该第一流标识对发送的第二业务报文进行随流检测,得到该第一流标识对应的出口检测数据。
在本申请实施例中,第二网络设备在获取得到入口检测数据和出口检测数据之后,还会向控制设备发送该第一流标识和该第一流标识对应的入口检测数据或出口检测数据中的至少一种,例如,第二网络设备主动性的周期性的向控制设备发送该第一流标识和该第一流标识对应的入口检测数据或出口检测数据中的至少一种。
可以理解,第二网络设备会维护第二网络设备的检测流表,检测流表中包括从业务报文的检测头中获取的流标识,每个流标识包括对应的入口检测数据和出口检测数据。同样,在该情况下,第二网络设备直接向控制设备发送该检测流表。
由此,控制设备能够接收到第一网络设备、第二网络设备等多个网络设备发送的第一流标识以及该第一流标识对应的入口检测数据或出口检测数据中的至少一种;对该第一流标识对应的所有检测数据进行统计分析,能够得到该第一流标识对应的网络性能。进一步地,根据第一网络设备上报的映射流表能够确定第一流标识对应的第一业务特征信息,从而获取得到第一业务特征信息对应的业务流的业务质量。
参见图7,图7为本申请实施例提供的一种获取流标识的流程图。如图7所示,第一网络设备在接收业务报文后,执行如下步骤21-步骤26。
步骤21,识别该业务报文的业务特征信息。
步骤22,判断该业务特征信息是否属于业务特征范围,当该业务特征信息属于业务特征范围时执行步骤23。
步骤23,判断映射流表中是否包括该业务特征信息,当映射流表中不包括该业务特征信息时,执行步骤24-步骤26;当映射流表中包括该业务特征信息时,执行步骤26。
步骤24,基于该业务特征信息生成对应的流标识。
步骤25,维护该映射流表。
其中,维护该映射流表包括将生成的流标识与业务特征信息的对应关系保存在该映射流表中,以及定期对映射流表进行老化回收。
步骤26,基于流标识进行随流检测。
可以理解,该步骤21-步骤26的内容可参见步骤301-步骤303的内容,此处不再赘述。
参见图8,图8为本申请实施例提供的一种随流检测过程的示意图。如图8所示,控制设备向头节点设备下发随流检测的业务特征范围;头节点设备在接收到业务报文后,识别该业务报文包括的业务特征信息,当该业务特征信息属于该业务特征范围时,为该业务报文所属的业务流分配对应的流标识;将该流标识携带在传输的业务报文中,以使转发路径上的头节点设备、中间节点设备和尾节点设备均能根据该流标识对该业务流的业务报文进行识别和随流检测,并将该流标识和随流检测的检测数据上送至控制设备。
其中,头节点设备负责动态分配或回收流标识,根据流标识的分配或回收动态建立映射流表,并将该映射流表上送至控制设备。控制设备根据接收到的该映射流表和各个节点设备发送的随流检测的检测数据完成路径还原、丢包率和时延等业务质量的测量。
由此,相较于图2所示的随流检测过程,由于头节点设备无需通过向控制设备上送首包来获取流标识,使得能够及时迅速的生成对应的流标识,能够有效的监控到短流的业务质量,对于长流也不会损失首个检测周期内的检测数据。并且,由于无需控制设备与节点设备之间频繁的信息交互,避免了对控制设备性能的冲击,降低控制设备被攻击的风险,进一步降低了随流检测受损的概率。
本申请实施例提供的随流检测方法,通过在数据面生成流标识,能够及时的对用来生成流标识的业务报文进行随流检测,即能够对业务特征信息动态变化的业务流(包括长流和短流)进行无损的随流检测,也不会损失首个检测周期内的检测数据,使得被检测到的业务报文更全面,实现了迅速且无损的随流检测,提升了随流检测的检测能力。
相比于通过控制面获取流标识的方式,不仅提高了流标识的生成效率,还减少了数据面与控制面的信息交互,避免了由信息交互的丢包等现象导致的随流检测受损,避免了对控制面的控制设备的性能冲击,进一步保证了无损的随流检测。
以上介绍了本申请实施例的随流检测方法,与上述方法对应,本申请实施例还提供了随流检测装置。图9是本申请实施例提供的一种随流检测装置的结构示意图,该装置应用于第一网络设备,该第一网络设备为上述图1、2或8所示的头节点设备。基于图9所示的如下多个模块,该图9所示的随流检测装置能够执行第一网络设备所执行的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图9所示,该装置包括:
第一接收模块901,用于接收第一业务报文;
生成模块902,用于基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识,第一业务特征信息用于标识属于业务流的业务报文;
获取模块903,用于在第一业务报文中增加第一流标识,得到第二业务报文,第一流标识用于指示接收到第二业务报文的第二网络设备基于第一流标识进行随流检测;
第一发送模块904,用于发送第二业务报文。
在一种可能的实施方式中,第一业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文。
在一种可能的实施方式中,生成模块902,用于基于第一网络设备的标识、第一芯片的标识和第一业务标识生成第一流标识,第一芯片是第一网络设备上接收第一业务报文的芯片,第一业务标识由第一芯片为第一业务特征信息分配得到。
在一种可能的实施方式中,生成模块902,用于基于第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成第一流标识,第一芯片上的第一存储介质是第一网络设备上接收第一业务报文的存储介质,第一业务标识由第一存储介质为第一业务特征信息分配得到。
在一种可能的实施方式中,该装置还包括:
第二接收模块,用于接收控制设备发送的第一随流检测实例的标识,第一随流检测实例用于对业务流进行随流检测;
生成模块902,用于基于第一随流检测实例的标识和第一业务标识生成第一流标识,第一业务标识由第一网络设备为第一业务特征信息分配得到。
在一种可能的实施方式中,第二接收模块,还用于接收控制设备发送的第一随流检测实例的业务特征范围;
生成模块902,用于当第一业务特征信息属于业务特征范围时,基于第一业务报文包括的第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识。
在一种可能的实施方式中,该装置还包括:
保存模块,用于保存第一业务特征信息与第一流标识的对应关系至映射流表,映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
在一种可能的实施方式中,该装置还包括:
删除模块,用于基于在参考周期内未接收到包括第一业务特征信息的业务报文,将映射流表中的第一业务特征信息与第一流标识的对应关系删除;
回收模块,用于当删除第一业务特征信息与第一流标识的对应关系之后的时长达到参考时长时,将第一流标识回收。
在一种可能的实施方式中,该装置还包括:
第二发送模块,用于向控制设备发送映射流表。
该装置通过纯数据面的流标识的生成,能够及时的对用来生成流标识的业务报文进行随流检测,使得被检测到的业务报文更全面,实现了迅速且无损的随流检测。相比于通过控制面获取流标识的方式,不仅提高了流标识的生成效率,还减少了数据面与控制面的信息交互,避免了由信息交互的丢包等现象导致的随流检测受损,进一步保证了无损的随流检测,提升了随流检测的检测能力。
图10是本申请实施例提供的一种随流检测装置的结构示意图,该装置应用于控制设备,该控制设备为上述图1、2或8所示的控制设备。基于图10所示的如下多个模块,该图10所示的随流检测装置能够执行控制设备所执行的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图10所示,该装置包括:
发送模块1001,用于向第一网络设备发送第一随流检测实例的业务特征范围,第一随流检测实例的业务特征范围用于第一网络设备当第一业务报文的第一业务特征信息属于业务特征范围时,基于第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识。
在一种可能的实施方式中,第一业务报文为业务流的首个报文或者为业务流的业务特征信息发生变化后的首个报文。
在一种可能的实施方式中,发送模块1001,还用于向第一网络设备发送第一随流检测实例的标识,第一随流检测实例的标识用于第一网络设备基于第一随流检测实例的标识和第一业务标识生成第一流标识,第一业务标识由第一网络设备为第一业务特征信息分配得到。
在一种可能的实施方式中,该装置还包括:
接收模块,用于接收第一网络设备发送的映射流表,映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
该装置通过向第一网络设备发送业务特征范围,使得第一网络设备能够精准的对指定业务流进行随流检测,使得随流检测的目标更精准。又因为业务特征范围包括多个业务特征信息,能够实现对属于该业务特征范围的但是业务特征信息会动态变化的业务流实现精准的随流检测。
应理解的是,上述图9或10提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图11,图11为本申请实施例提供的一种交换机的结构示意图。图11所示的交换机用于执行上述图3所示第一网络设备所执行的操作。如图11所示,该交换机(switch)包括中央处理器(central processing unit,CPU)、专用集成电路(application-specificintegrated circuit,ASIC)/网络处理器(network processer,NP)和存储器。CPU与ASIC/NP通过外设部件互连标准(peripheral component interconnect,PCI)通道(channel)和以太网(ethernet)channel连接。可选地,ASIC/NP通过端口(port)和媒体接入控制(mediaaccess control,MAC)接收第一业务报文,并通过iFIT模块的报文处理功能识别该第一业务报文中的第一业务特征信息;ASIC/NP将识别得到第一业务特征信息发送至CPU,CPU通过iFIT配置模块基于该第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识,将生成的第一流标识对应存储到存储器中。
参见图12,图12示出了本申请一个示例性实施例提供的网络设备2000的结构示意图。图12所示的网络设备2000用于执行上述图3所示的随流检测方法所涉及的操作。该网络设备2000例如是交换机、路由器等,该网络设备2000可以由一般性的总线体系结构来实现。
如图12所示,网络设备2000包括至少一个处理器2001、存储器2003以及至少一个通信接口2004。
处理器2001例如是通用中央处理器(central processing unit,CPU)、数字信号处理器(digital signal processor,DSP)、网络处理器(network processer,NP)、图形处理器(Graphics Processing Unit,GPU)、神经网络处理器(neural-network processingunits,NPU)、数据处理单元(Data Processing Unit,DPU)、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器2001包括专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。PLD例如是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种逻辑方框、模块和电路。处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,DSP和微处理器的组合等等。
可选的,网络设备2000还包括总线。总线用于在网络设备2000的各组件之间传送信息。总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003例如是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器2003例如是独立存在,并通过总线与处理器2001相连接。存储器2003也可以和处理器2001集成在一起。
通信接口2004使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(radio access network,RAN)或无线局域网(wirelesslocal area networks,WLAN)等。通信接口2004可以包括有线通信接口,还可以包括无线通信接口。具体的,通信接口2004可以为以太(Ethernet)接口、快速以太(Fast Ethernet,FE)接口、千兆以太(Gigabit Ethernet,GE)接口,异步传输模式(Asynchronous TransferMode,ATM)接口,无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合。以太网接口可以是光接口,电接口或其组合。在本申请实施例中,通信接口2004可以用于网络设备2000与其他设备进行通信。
在具体实现中,作为一种实施例,处理器2001可以包括一个或多个CPU,如图12中所示的CPU0和CPU1。这些处理器中的每一个可以是一个单核(single-core CPU)处理器,也可以是一个多核(multi-core CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000可以包括多个处理器,如图12中所示的处理器2001和处理器2005。这些处理器中的每一个可以是一个单核处理器(single-core CPU),也可以是一个多核处理器(multi-core CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000还可以包括输出设备和输入设备。输出设备和处理器2001通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备和处理器2001通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器2003用于存储执行本申请方案的程序代码2010,处理器2001可以执行存储器2003中存储的程序代码2010。也即是,网络设备2000可以通过处理器2001以及存储器2003中的程序代码2010,来实现方法实施例提供的随流检测方法。程序代码2010中可以包括一个或多个软件模块。可选地,处理器2001自身也可以存储执行本申请方案的程序代码或指令。
在具体实施例中,本申请实施例的网络设备2000可对应于上述各个方法实施例中的第一网络设备,网络设备2000中的处理器2001读取存储器2003中的指令,使图12所示的网络设备2000能够执行第一网络设备所执行的全部或部分操作。
具体的,处理器2001用于通过通信接口接收第一业务报文,基于该第一业务报文包括的第一业务特征信息生成该第一业务报文所属的业务流对应的第一流标识,其中,第一业务特征信息用于标识属于该业务流的业务报文;将该第一流标识增加到第一业务报文中得到第二业务报文,并发送该第二业务报文。
其他可选的实施方式,为了简洁,在此不再赘述。
又例如,本申请实施例的网络设备2000可对应于上述各个方法实施例中的第二网络设备,网络设备2000中的处理器2001读取存储器2003中的指令,使图12所示的网络设备2000能够执行控制设备所执行的全部或部分操作。
具体的,处理器2001用于通过通信接口向第一网络设备发送第一随流检测实例的业务特征范围,该第一随流检测实例的业务特征范围用于第一网络设备当第一业务报文的第一业务特征信息属于业务特征范围时,基于第一业务特征信息生成第一业务报文所属的业务流对应的第一流标识。
其他可选的实施方式,为了简洁,在此不再赘述。
网络设备2000还可以对应于上述图9或10所示的随流检测装置,随流检测装置中的每个功能模块采用网络设备2000的软件实现。换句话说,随流检测装置包括的功能模块为网络设备2000的处理器2001读取存储器2003中存储的程序代码2010后生成的。
其中,图3所示的随流检测方法的各步骤通过网络设备2000的处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤,为避免重复,这里不再详细描述。
参见图13,图13示出了本申请另一个示例性实施例提供的网络设备2100的结构示意图,图13所示的网络设备2100用于执行上述图3所示的随流检测方法所涉及的全部或部分操作。该网络设备2100例如是交换机、路由器等,该网络设备2100可以由一般性的总线体系结构来实现。
如图13所示,网络设备2100包括:主控板2110和接口板2130。
主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(routeprocessor card),主控板2110用于对网络设备2100中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板2110包括:中央处理器2111和存储器2112。
接口板2130也称为线路接口单元(line processing unit,LPU)、线卡(linecard)或业务板。接口板2130用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板2130包括:中央处理器2131网络处理器2132、转发表项存储器2134和物理接口卡(physical interface card,PIC)2133。
接口板2130上的中央处理器2131用于对接口板2130进行控制管理并与主控板2110上的中央处理器2111进行通信。
网络处理器2132用于实现报文的转发处理。网络处理器2132的形态可以是转发芯片。转发芯片可以是网络处理器(network processor,NP)。在一些实施例中,转发芯片可以通过专用集成电路(application-specific integrated circuit,ASIC)或现场可编程门阵列(field programmable gate array,FPGA)实现。具体而言,网络处理器2132用于基于转发表项存储器2134保存的转发表转发接收到的报文,如果报文的目的地址为网络设备2100的地址,则将该报文上送至CPU(如中央处理器2131)处理;如果报文的目的地址不是网络设备2100的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理可以包括:报文入接口的处理,转发表查找;下行报文的处理可以包括:转发表查找等等。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用CPU实现软件转发,从而接口板中不需要转发芯片。
物理接口卡2133用于实现物理层的对接功能,原始的流量由此进入接口板2130,以及处理后的报文从该物理接口卡2133发出。物理接口卡2133也称为子卡,可安装在接口板2130上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器2132处理。在一些实施例中,中央处理器2131也可执行网络处理器2132的功能,比如基于通用CPU实现软件转发,从而物理接口卡2133中不需要网络处理器2132。
可选地,网络设备2100包括多个接口板,例如网络设备2100还包括接口板2140,接口板2140包括:中央处理器2141、网络处理器2142、转发表项存储器2144和物理接口卡2143。接口板2140中各部件的功能和实现方式与接口板2130相同或相似,在此不再赘述。
可选地,网络设备2100还包括交换网板2120。交换网板2120也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备2100有多个接口板的情况下,交换网板2120用于完成各接口板之间的数据交换。例如,接口板2130和接口板2140之间可以通过交换网板2120通信。
主控板2110和接口板耦合。例如。主控板2110、接口板2130和接口板2140,以及交换网板2120之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板2110和接口板2130及接口板2140之间建立进程间通信协议(inter-processcommunication,IPC)通道,主控板2110和接口板2130及接口板2140之间通过IPC通道进行通信。
在逻辑上,网络设备2100包括控制面和转发面,控制面包括主控板2110和中央处理器2111,转发面包括执行转发的各个组件,比如转发表项存储器2134、物理接口卡2133和网络处理器2132。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护网络设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器2132基于控制面下发的转发表对物理接口卡2133收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器2134中。在有些实施例中,控制面和转发面可以完全分离,不在同一网络设备上。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的网络设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态网络设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
在具体实施例中,网络设备2100对应于上述图9所示的应用于第一网络设备的随流检测装置。在一些实施例中,图9所示的随流检测装置中的第一接收模块901和第一发送模块904相当于网络设备2100中的物理接口卡2133,生成模块902和获取模块903相当于网络设备2100中的中央处理器2111或网络处理器2132。
在一些实施例中,网络设备2100还对应于上述图10所示的应用于控制设备的随流检测装置。在一些实施例中,图10所示的随流检测装置中的发送模块1001相当于网络设备2100中的物理接口卡2133。
本申请实施例还提供了一种随流检测系统,该处理系统包括:第一网络设备和控制设备。例如,第一网络设备为图12所示的网络设备2000或图13所示的网络设备2100,控制设备为图12所示的网络设备2000或图13所示的网络设备2100。第一网络设备和控制设备所执行的随流检测方法可参见上述图3所示实施例的相关描述,此处不再加以赘述。
本申请实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第一网络设备所需执行的方法。
本申请实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行控制设备所需执行的方法。
应理解的是,上述处理器可以是CPU,还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,在一种可选的实施例中,上述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data dateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
本申请实施例还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,指令由处理器加载并执行,以使计算机实现如上任一的随流检测方法。
本申请实施例还提供了一种计算机程序(产品),当计算机程序被计算机执行时,可以使得处理器或计算机执行上述方法实施例中对应的各个步骤和/或流程。
本申请实施例还提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行如上任一的随流检测方法。在一种可能的实施方式中,该芯片与第一网络设备上接收第一业务报文的第一芯片可以为同一个芯片,也可以为不同的芯片。
本申请实施例还提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行如上任一的随流检测方法。在一种可能的实施方式中,该芯片与第一网络设备上接收第一业务报文的第一芯片可以为同一个芯片,也可以为不同的芯片。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和模块,能够以软件、硬件、固件或者其任意组合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机程序指令。作为示例,本申请实施例的方法可以在机器可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。
用于实现本申请实施例的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本申请实施例的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质等等。
信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。
机器可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、设备和模块的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、设备或模块的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
该作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
该集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例中方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种所述示例的范围的情况下,第一网络设备可以被称为第二网络设备,并且类似地,第二网络设备可以被称为第一网络设备。第一网络设备和第二网络设备都可以是网络设备,并且在某些情况下,可以是单独且不同的网络设备。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个第二报文是指两个或两个以上的第二报文。本文中术语“系统”和“网络”经常可互换使用。
应理解,在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,术语“若”和“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“若确定...”或“若检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
以上描述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (21)
1.一种随流检测方法,其特征在于,所述方法包括:
第一网络设备接收第一业务报文,基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,所述第一业务特征信息用于标识属于所述业务流的业务报文;
所述第一网络设备在所述第一业务报文中增加所述第一流标识,得到第二业务报文,所述第一流标识用于指示接收到所述第二业务报文的第二网络设备基于所述第一流标识进行随流检测;
所述第一网络设备发送所述第二业务报文。
2.根据权利要求1所述的方法,其特征在于,所述第一业务报文为所述业务流的首个报文或者为所述业务流的业务特征信息发生变化后的首个报文。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,包括:
基于所述第一网络设备的标识、第一芯片的标识和第一业务标识生成所述第一流标识,所述第一芯片是所述第一网络设备上接收所述第一业务报文的芯片,所述第一业务标识由所述第一芯片为所述第一业务特征信息分配得到。
4.根据权利要求1或2所述的方法,其特征在于,所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,包括:
基于所述第一网络设备的标识、第一芯片的标识、第一存储介质的标识和第一业务标识生成所述第一流标识,所述第一芯片上的所述第一存储介质是所述第一网络设备上接收所述第一业务报文的存储介质,所述第一业务标识由所述第一存储介质为所述第一业务特征信息分配得到。
5.根据权利要求1或2所述的方法,其特征在于,所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识之前,还包括:
接收控制设备发送的第一随流检测实例的标识,所述第一随流检测实例用于对所述业务流进行随流检测;
所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文对应的第一流标识,包括:
基于所述第一随流检测实例的标识和第一业务标识生成所述第一流标识,所述第一业务标识由所述第一网络设备为所述第一业务特征信息分配得到。
6.根据权利要求1-5任一所述的方法,其特征在于,所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识之前,还包括:
接收控制设备发送的第一随流检测实例的业务特征范围;
所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,包括:
当所述第一业务特征信息属于所述业务特征范围时,基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识。
7.根据权利要求1-6任一所述的方法,其特征在于,所述基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识之后,还包括:
保存所述第一业务特征信息与第一流标识的对应关系至映射流表,所述映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
基于在参考周期内未接收到包括所述第一业务特征信息的业务报文,将所述映射流表中的所述第一业务特征信息与所述第一流标识的对应关系删除;
当删除所述第一业务特征信息与所述第一流标识的对应关系之后的时长达到参考时长时,将所述第一流标识回收。
9.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
向控制设备发送所述映射流表。
10.一种随流检测方法,其特征在于,所述方法包括:
控制设备向第一网络设备发送第一随流检测实例的业务特征范围,所述第一随流检测实例的业务特征范围用于所述第一网络设备当第一业务报文的第一业务特征信息属于所述业务特征范围时,基于所述第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识。
11.根据权利要求10所述的方法,其特征在于,所述第一业务报文为所述业务流的首个报文或者为所述业务流的业务特征信息发生变化后的首个报文。
12.根据权利要求10或11所述的方法,其特征在于,所述方法还包括:
向所述第一网络设备发送所述第一随流检测实例的标识,所述第一随流检测实例的标识用于所述第一网络设备基于所述第一随流检测实例的标识和第一业务标识生成所述第一流标识,所述第一业务标识由所述第一网络设备为所述第一业务特征信息分配得到。
13.根据权利要求10-12任一所述的方法,其特征在于,所述方法还包括:
接收所述第一网络设备发送的映射流表,所述映射流表包括多个业务特征信息和每个业务特征信息对应的流标识。
14.一种芯片,其特征在于,所述芯片包括:处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条程序指令或代码,所述至少一条程序指令或代码由所述处理器加载并执行,以使所述芯片实现权利要求1-9中任一所述的随流检测方法。
15.根据权利要求14所述的芯片,其特征在于,所述芯片与第一网络设备上接收第一业务报文的第一芯片相同。
16.一种随流检测装置,其特征在于,所述装置应用于第一网络设备,所述装置包括:
第一接收模块,用于接收第一业务报文;
生成模块,用于基于所述第一业务报文包括的第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识,所述第一业务特征信息用于标识属于所述业务流的业务报文;
获取模块,用于在所述第一业务报文中增加所述第一流标识,得到第二业务报文,所述第一流标识用于指示接收到所述第二业务报文的第二网络设备基于所述第一流标识进行随流检测;
第一发送模块,用于发送所述第二业务报文。
17.一种随流检测装置,其特征在于,所述装置应用于控制设备,所述装置包括:
发送模块,用于向第一网络设备发送第一随流检测实例的业务特征范围,所述第一随流检测实例的业务特征范围用于所述第一网络设备当第一业务报文的第一业务特征信息属于所述业务特征范围时,基于所述第一业务特征信息生成所述第一业务报文所属的业务流对应的第一流标识。
18.一种网络设备,其特征在于,所述网络设备包括:处理器,所述处理器与存储器耦合,所述存储器中存储有至少一条程序指令或代码,所述至少一条程序指令或代码由所述处理器加载并执行,以使所述网络设备实现权利要求1-9中任一所述的随流检测方法,或者,以使所述网络设备实现权利要求10-13中任一所述的随流检测方法。
19.一种随流检测系统,其特征在于,所述随流检测系统包括第一网络设备和控制设备;
所述第一网络设备用于执行权利要求1-9中任一所述的随流检测方法,所述控制设备用于执行权利要求10-13中任一所述的随流检测方法。
20.一种计算机可读存储介质,其特征在于,所述计算机存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以使计算机实现如权利要求1-9中任一所述的随流检测方法,或者,以使计算机实现如权利要求10-13中任一所述的随流检测方法。
21.一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,所述计算机程序代码由计算机加载并执行,以使所述计算机实现权利要求1-9中任一所述的随流检测方法,或者,以使所述计算机实现权利要求10-13中任一所述的随流检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2023/099728 WO2023241520A1 (zh) | 2022-06-15 | 2023-06-12 | 随流检测方法、装置、设备、系统及存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210676353 | 2022-06-15 | ||
CN2022106763538 | 2022-06-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117278451A true CN117278451A (zh) | 2023-12-22 |
Family
ID=89214788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210938620.4A Pending CN117278451A (zh) | 2022-06-15 | 2022-08-05 | 随流检测方法、装置、设备、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117278451A (zh) |
-
2022
- 2022-08-05 CN CN202210938620.4A patent/CN117278451A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105684382A (zh) | 报文的控制方法、交换机及控制器 | |
EP4037266A1 (en) | Method for processing message, and network node and system | |
EP4149058A1 (en) | Network performance measurement method, apparatus, device and system, and storage medium | |
CN113055293A (zh) | 软件定义广域网中的选路方法及装置、通信系统 | |
CN114697403A (zh) | 业务报文的处理方法、装置、设备、系统及存储介质 | |
US11909650B2 (en) | Internet protocol operations and management option | |
CN117278451A (zh) | 随流检测方法、装置、设备、系统及存储介质 | |
US11916768B2 (en) | Information sharing method and apparatus in redundancy network, and computer storage medium | |
CN116962161A (zh) | 路径检测方法、装置、系统及计算机可读存储介质 | |
WO2023241520A1 (zh) | 随流检测方法、装置、设备、系统及存储介质 | |
CN115842757A (zh) | 随流检测方法、装置、设备、系统及存储介质 | |
CN116346716A (zh) | 报文处理方法及装置、通信系统 | |
CN114915564A (zh) | 网络状态测量方法、装置和系统 | |
CN115914087A (zh) | 报文转发方法、装置、设备、系统及存储介质 | |
CN115242699A (zh) | 报文传输方法、切片生成方法、装置及系统 | |
CN114697218B (zh) | 网络管理方法和设备 | |
EP4319089A1 (en) | Path determination method and apparatus, device, system, and computer readable storage medium | |
CN111435918B (zh) | 网络性能检测方法以及网络性能检测装置 | |
CN114629834B (zh) | 通信方法及装置 | |
WO2023109672A1 (zh) | 业务处理方法、装置及系统 | |
CN116800630A (zh) | 传输检测方法、装置及系统 | |
CN117640791A (zh) | 业务处理方法、装置及系统 | |
CN117440057A (zh) | 报文转发方法、系统、网络设备、存储介质及程序产品 | |
CN116781573A (zh) | 故障检测方法、装置、设备、系统及计算机可读存储介质 | |
CN114143142A (zh) | 一种报文传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |