CN112688827A - 一种组播流检测方法、设备及系统 - Google Patents
一种组播流检测方法、设备及系统 Download PDFInfo
- Publication number
- CN112688827A CN112688827A CN201911320778.XA CN201911320778A CN112688827A CN 112688827 A CN112688827 A CN 112688827A CN 201911320778 A CN201911320778 A CN 201911320778A CN 112688827 A CN112688827 A CN 112688827A
- Authority
- CN
- China
- Prior art keywords
- identifier
- node device
- bier multicast
- bier
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1868—Measures taken after transmission, e.g. acknowledgments
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种组播流检测方法、设备及系统,实现对组播流的检测。方法包括:第一节点设备获取第一位索引显式复制BIER组播报文,第一BIER组播报文包括流标识和第一标识,流标识用于指示第一BIER组播报文所属的组播流,第一标识用于指示第一BIER组播报文的转发路径上、对组播流进行检测和发送相应的检测数据的节点设备;第一节点设备根据第一标识确定是否对组播流进行检测和发送相应的检测数据;响应于第一节点设备根据第一标识确定需要对组播流进行检测和发送相应的检测数据,第一节点设备获取组播流的检测数据和向管理设备发送检测数据。
Description
本申请要求于2019年10月18日提交中国专利局、申请号为201910996012.7、发明名称为“一种组播报文处理方法、设备及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,特别是涉及一种组播流检测方法、设备及系统。
背景技术
组播(Multicast)又称多目标广播、多播,是网络中一种在一个发送者和多个接收者之间进行通信的方法。组播技术即可以应用到点到多点的应用场景,例如媒体广播、事件通知、状态监控、数据收集、网络竞拍等,又可以应用到多点到多点的应用场景,例如多点会议、数据库同步等,所以受到很多开发者的重视。
位索引显式复制(bit indexed explicit replication,BIER)技术是组播技术的一种,具体用于构建组播发转发路径,该技术提出了一种构建组播分发树的组播技术架构,即满足了组播流量日益剧增的情况,又降低了运营的成本。在国际互联网工程任务组(theinternet engineering task force,IETF)草案《draft-xie-bier-ipv6-encapsulation》中定义了在非多协议标签交换(multi-protocol label switching,MPLS)的互联网协议第6版(internet protocol version 6,IPv6)报文中增加BIER报文头,以在IPv6网络中实现传输BIER组播报文的目的。
但是,该协议并未定义BIER组播报文的操作维护管理(operationadministration and maintenance,OAM)机制,即未规定如何实现对BIER组播流的检测,所以无法保障BIER组播流的传输可靠性。因而,目前急需提供一种BIER组播流的检测方法以实现对BIER组播流的检测。
发明内容
本申请实施例提供了一种组播流检测方法、设备及系统,实现对BIER组播流的检测。
第一方面,提供了一种组播流检测方法,所述方法应用于第一节点设备,该第一节点设备可以例如为路由器或交换机等。该方法具体包括如下步骤:首先,第一节点设备获取第一位索引显式复制BIER组播报文,所述第一BIER组播报文包括流标识和第一标识。所述流标识用于指示所述第一BIER组播报文所属的组播流,具体可以根据第一BIER组播报文的组播源地址和组播组地址进行确定。所述第一标识用于指示所述第一BIER组播报文的转发路径上、对所述组播流进行检测和发送相应的检测数据的节点设备。第一标识可以例如携带在所述第一BIER组播报文的BIER报文头中,具体可以携带在所述BIER报文头的TLV字段中。然后,所述第一节点设备根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据。响应于所述第一节点设备根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,所述第一节点设备获取所述组播流的检测数据,并且向管理设备发送所述检测数据,实现对组播流的检测。
在第一方面的一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的所有节点,也就是说,转发路径上的所有节点设备都需要向管理设备发送检测数据。
在第一方面的再一种可能的实现方式中,所述第一标识指示的节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备和所有尾节点设备。也就是说,只有转发路径上的头节点设备和所有尾节点设备需要向管理设备发送检测数据,当该节点设备为头节点设备或尾节点设备时,需要获取检测数据并向管理设备发送该检测数据。
在第一方面的又一种可能的实现方式中,当所述第一节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的尾节点设备或中间节点设备时,所述第一节点设备根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据,包括:所述第一节点设备根据所述第一标识在所述第一BIER组播报文中确定所述节点设备标识列表,所述节点设备标识列表用于指示所述BIER组播域中在所述第一BIER组播报文的转发路径上的被指定的尾节点设备。例如,所述节点设备标识列表为所述被指定的尾节点设备的比特串。所述第一节点设备根据所述节点设备标识列表确定是否对所述组播流进行检测和发送相应的检测数据。具体的,如果第一节点设备为是中间节点设备,且第一标识指示的节点设备为该BIER组播域中在该组播流的转发路径上的头节点设备、被指定的尾节点设备以及该头节点设备和该被指定的尾节点设备之间的中间节点设备,那么该第一节点设备可以确定第一BIER组播报文中目的节点的标识是否在节点设备标识列表中,如果是,则说明第一BIER组播报文的目的节点属于指定的尾节点设备,并且该中间节点设备为头节点设备与该指定的尾节点设备之间的中间节点设备,需要获取所述组播流的检测数据和向管理设备发送所述检测数据。如果第一节点设备为尾节点设备,且第一标识指示的节点设备包括被指定的尾节点设备,那么第一节点设备可以确定该第一节点设备的标识是否在节点设备标识列表中,如果是,则说明该尾节点设备为被指定的尾节点设备,需要获取所述组播流的检测数据和向管理设备发送所述检测数据。
在第一方面的又一种可能的实现方式中,当所述第一节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括如下步骤:所述第一节点设备获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;所述第一节点设备根据第一对应关系在所述第二BIER组播报文中添加所述第一标识,得到所述第一BIER组播报文,所述第一对应关系为所述流标识和所述第一标识的对应关系。其中,第一对应关系可以来自所述管理设备或者预先在头节点设备配置的。
在第一方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数。相应的,所述第一节点设备可以根据所述第二标识在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息并发送给管理设备,实现对组播流是否丢包的检测。
在第一方面的又一种可能的实现方式中,除了第二标识以外,所述第一BIER组播报文还可以包括所述预设周期。
在第一方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:所述第一节点设备在所述预设周期内获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识。所述第一节点设备在所述第二BIER组播报文中添加第一字段和第二字段,所述地址字段的值为所述第一标识,所述第二字段的值为与所述预设周期对应的预设值,所述第二字段的值用于指示在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。也就是说,如果第一节点设备为头节点设备,那么第一节点设备可以通过在第二BIER组播报文中添加第一标识和第二标识,以得到第一BIER组播报文。
在第一方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第三标识,所述第三标识用于指示所述第一BIER组播报文为用于确定时延的报文。相应的,所述第一节点设备根据所述第一标识和所述第三标识获取所述第一BIER组播报文的接收时间和/或所述第一BIER组播报文的发送时间,并向管理设备发送,实现对组播流时延的检测。
在第一方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:首先,所述第一节点设备在预设周期内获取至少一个BIER组播报文,所述至少一个BIER组播报文中的每个BIER组播报文均包括所述流标识。其次,所述第一节点设备从所述至少一个BIER组播报文中确定第二BIER组播报文,所述第一节点设备在所述第二BIER组播报文中添加所述第一标识和所述第三标识,得到所述第一BIER组播报文。也就是说,如果第一节点设备为头节点设备,那么第一节点设备可以通过在第二BIER组播报文中添加第一标识和第三标识,以得到第一BIER组播报文。
在第一方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述第一BIER组播报文的入接口标识和/或发送所述第一BIER组播报文的出接口标识。相应的,所述第一节点设备可以根据所述第一标识和所述第二标识获取接收所述第一BIER组播报文的入接口标识的标识和/或发送所述第一BIER组播报文的出接口标识的标识,并向管理设备发送,实现对组播流拓扑信息的检测。
在第一方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:所述第一节点设备获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;所述第一节点设备在所述第二BIER组播报文中添加所述第一标识和所述第四标识,得到所述第一BIER组播报文。也就是说,如果第一节点设备为头节点设备,那么第一节点设备可以通过在第二BIER组播报文中添加第一标识和第四标识,以得到第一BIER组播报文。
在第一方面的又一种可能的实现方式中,所述方法还包括:所述第一节点设备向所述第一BIER组播报文的转发路径上的下一跳节点设备发送所述第一BIER组播报文,以实现对第一BIER组播报文的传输。
第二方面,提供了一种组播流检测方法,该方法应用于管理设备,该管理设备可以例如为控制器。所述方法包括如下步骤:首先,管理设备获取第一对应关系,所述第一对应关系为流标识和第一标识的对应关系,所述流标识为BIER组播流的标识,所述第一标识用于指示所述BIER组播流的转发路径上、对所述BIER组播流进行检测和发送相应的检测数据的节点设备。其次,所述管理设备向第一节点设备发送所述第一对应关系。第一节点设备可以根据该第一对应关系生成上述第一BIER组播报文,从而进一步实现对BIER组播流的检测。
在第二方面的一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备和所有尾节点设备。
在第二方面的再一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的头节点设备和被指定的尾节点设备;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备、被指定的尾节点设备以及所述头节点设备和所述被指定的尾节点设备之间的中间节点设备。相应的,所述方法还包括:所述管理设备向第一节点设备发送所述被指定的尾节点设备的标识,以便第一节点设备生成上述携带有被指定的尾节点设备的标识的第一BIER组播报文。
在第二方面的又一种可能的实现方式中,所述第一对应关系还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述BIER组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数,以实现对BIER组播流的丢包信息的检测。
在第二方面的又一种可能的实现方式中,所述第一对应关系还包括第三标识,所述第三标识用于指示所述检测数据包括所述BIER组播流中BIER组播报文的接收时间和/或发送时间,以实现对BIER组播流的时延信息的检测。
在第二方面的又一种可能的实现方式中,所述第一对应关系还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述BIER组播流中BIER组播报文的入接口标识和/或发送所述BIER组播报文的出接口标识,以实现对BIER组播流的拓扑信息的检测。
在第二方面的又一种可能的实现方式中,所述方法还包括:所述管理设备接收来自所述第一标识指示的节点设备的检测数据;所述管理设备根据所述检测数据对所述BIER组播流进行检测,实现对所述BIER组播流检测的目的。
第三方面,提供了一种第一节点设备,所述第一节点设备具有实现上述方法中第一节点设备行为的功能。所述功能可以基于硬件实现,也可以基于硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,第一节点设备的结构中包括处理器和接口,所述处理器被配置为支持第一节点设备执行上述方法中相应的功能。所述接口用于支持第一节点设备与管理设备之间的通信,向管理设备发送上述方法中所涉及的信息或者指令,或者从管理设备接收上述方法中所涉及的信息或者指令。所述第一节点设备还可以包括存储器,所述存储器用于与处理器耦合,其保存第一节点设备必要的程序指令和数据。
在另一个可能的设计中,所述第一节点设备包括:处理器、发送器、接收器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接发送器、接收器、随机存取存储器以及只读存储器。其中,当需要运行第一节点设备时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导第一节点设备进入正常运行状态。在第一节点设备进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
具体的,处理器,用于获取第一位索引显式复制BIER组播报文,所述第一BIER组播报文包括流标识和第一标识,所述流标识用于指示所述第一BIER组播报文所属的组播流,所述第一标识用于指示所述第一BIER组播报文的转发路径上、对所述组播流进行检测和发送相应的检测数据的节点设备。所述处理器,还用于根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据;响应于根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,获取所述组播流的检测数据。发送器,用于向管理设备发送所述检测数据。
在第三方面的一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备和所有尾节点设备。
在第三方面的另一种可能的实现方式中,所述第一节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的尾节点设备或中间节点设备,所述处理器根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据,包括:所述处理器,用于根据所述第一标识在所述第一BIER组播报文中确定所述节点设备标识列表,所述节点设备标识列表用于指示所述BIER组播域中在所述第一BIER组播报文的转发路径上的被指定的尾节点设备;根据所述节点设备标识列表确定是否对所述组播流进行检测和发送相应的检测数据。
在第三方面的又一种可能的实现方式中,所述节点设备标识列表为所述被指定的尾节点设备的比特串。
在第三方面的又一种可能的实现方式中,当所述第一节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,用于:获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;根据第一对应关系在所述第二BIER组播报文中添加所述第一标识,得到所述第一BIER组播报文,所述第一对应关系为所述流标识和所述第一标识的对应关系。
在第三方面的又一种可能的实现方式中,所述第一节点设备还包括:接收器,用于接收来自所述管理设备的所述第一对应关系。
在第三方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数;所述处理器,用于根据所述第二标识在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
在第三方面的又一种可能的实现方式中,所述第一BIER组播报文还包括所述预设周期。
在第三方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于在所述预设周期内获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加第一字段和第二字段,所述地址字段的值为所述第一标识,所述第二字段的值为与所述预设周期对应的预设值,所述第二字段的值用于指示在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
在第三方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第三标识,所述第三标识用于指示所述第一BIER组播报文为用于确定时延的报文;所述处理器,用于根据所述第一标识和所述第三标识获取所述第一BIER组播报文的接收时间和/或所述第一BIER组播报文的发送时间。
在第三方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于在预设周期内获取至少一个BIER组播报文,所述至少一个BIER组播报文中的每个BIER组播报文均包括所述流标识;从所述至少一个BIER组播报文中确定第二BIER组播报文;在所述第二BIER组播报文中添加所述第一标识和所述第三标识,得到所述第一BIER组播报文。
在第三方面的又一种可能的实现方式中,所述第一BIER组播报文还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述第一BIER组播报文的入接口标识和/或发送所述第一BIER组播报文的出接口标识;所述处理器,用于根据所述第一标识和所述第二标识获取接收所述第一BIER组播报文的入接口标识的标识和/或发送所述第一BIER组播报文的出接口标识的标识。
在第三方面的又一种可能的实现方式中,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加所述第一标识和所述第四标识,得到所述第一BIER组播报文。
在第三方面的又一种可能的实现方式中,所述第一标识携带在所述第一BIER组播报文的BIER报文头中。
在第三方面的又一种可能的实现方式中,所述第一标识携带在所述BIER报文头的TLV字段中。
在第三方面的又一种可能的实现方式中,所述流标识根据所述第一BIER组播报文的组播源地址和组播组地址确定。
在第三方面的又一种可能的实现方式中,所述发送器,还用于向所述第一BIER组播报文的转发路径上的下一跳节点设备发送所述第一BIER组播报文。
第四方面,提供了一种管理设备,所述管理设备具有实现上述方法中管理设备行为的功能。所述功能可以基于硬件实现,也可以基于硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,管理设备的结构中包括处理器和接口,所述处理器被配置为支持管理设备执行上述方法中相应的功能。所述接口用于支持管理设备与第一节点设备之间的通信,向第一节点设备发送上述方法中所涉及的信息或者指令,或者从第一标识指示的节点设备接收上述方法中所涉及的信息或者指令。所述管理设备还可以包括存储器,所述存储器用于与处理器耦合,其保存管理设备必要的程序指令和数据。
在另一个可能的设计中,所述管理设备包括:处理器、发送器、接收器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接发送器、接收器、随机存取存储器以及只读存储器。其中,当需要运行管理设备时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导管理设备进入正常运行状态。在管理设备进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。
具体的,所述管理设备包括:处理器,用于获取第一对应关系,所述第一对应关系为流标识和第一标识的对应关系,所述流标识为BIER组播流的标识,所述第一标识用于指示所述BIER组播流的转发路径上、对所述BIER组播流进行检测和发送相应的检测数据的节点设备;发送器,用于向第一节点设备发送所述第一对应关系。
在第四方面的一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备和所有尾节点设备。
在第四方面的再一种可能的实现方式中,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的头节点设备和被指定的尾节点设备;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备、被指定的尾节点设备以及所述头节点设备和所述被指定的尾节点设备之间的中间节点设备;所述发送单元,还用于向第一节点设备发送所述被指定的尾节点设备的标识。
在第四方面的又一种可能的实现方式中,所述第一对应关系还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述BIER组播流的BIER组播报文的统计信息。
在第四方面的又一种可能的实现方式中,所述第一对应关系还包括第三标识,所述第三标识用于指示所述检测数据包括所述BIER组播流中BIER组播报文的接收时间和/或发送时间。
在第四方面的又一种可能的实现方式中,所述第一对应关系还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述BIER组播流中BIER组播报文的入接口标识和/或发送所述BIER组播报文的出接口标识。
在第四方面的又一种可能的实现方式中,所述管理设备还包括:接收器,用于接收来自所述第一标识指示的节点设备的检测数据;所述处理器,还用于根据所述检测数据对所述BIER组播流进行检测。
第五方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述组播流检测方法。
第六方面,提供了一种网络系统,所述网络系统包括第一节点设备和管理设备,所述第一节点设备为上述第一节点设备,所述管理设备为上述管理设备。
附图说明
图1为本申请实施例提供的组播流检测系统的结构示意图;
图2为本申请实施例提供的组播流检测方法的流程图;
图3为本申请实施例提供的BIER报文头的格式示意图;
图4为本申请实施例提供的第一节点设备400的结构示意图;
图5为本申请实施例提供的第一节点设备500的硬件结构示意图;
图6为本申请实施例提供的管理设备600的结构示意图;
图7为本申请实施例提供的管理设备700的硬件结构示意图。
具体实施方式
本申请实施例提供了一种组播流检测方法、装置及系统,用于实现对BIER组播流的检测,提高BIER组播流传输的可靠性。
为方便理解,首先结合图1对本申请实施例的应用场景进行介绍。
图1为本申请实施例提供的组播流检测系统的结构示意图。在图1中,本申请实施例提供的组播流检测系统包括服务器101、终端设备101、终端设备102、终端设备103、节点设备201、节点设备202、节点设备203、节点设备204、节点设备205、节点设备206、节点设备207以及管理设备301。其中,服务器101与节点设备201连接,节点设备201分别与节点设备202和节点设备203连接,节点设备202分别与节点设备204和节点设备205连接,节点设备203分别与节点设备206以及节点设备207连接,终端设备101连接节点设备204,终端设备102连接节点设备205,终端设备103连接节点设备207。管理设备301连接节点设备201-节点设备207。
在本申请实施例中,服务器101例如可以用于生成视频流、图像流等单播流。
终端设备101、终端设备102和终端设备103又称之为用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)、终端等,是一种向用户提供语音和/或数据连通性的设备,或,设置于该设备内的芯片,例如,具有无线连接功允许的手持式设备、车载设备等。目前,一些终端设备的举例为:手机(mobile phone)、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。
管理设备301例如可以为控制器等设备。
在本申请实施例中,节点设备201、节点设备202、节点设备203、节点设备204、节点设备205、节点设备206以及节点设备207例如可以为路由器、交换机等转发设备。当上述节点设备为路由器时,可以被称为BIER转发路由器(bit-forwarding router,BFR)。
在本申请实施例中,节点设备201-节点设备207一起构成了BIER组播域(BIERdomain)。BIER组播域是一个转发BIER报文的域,它是个管理域。BIER组播域中与组播源节点设备(例如图1中的服务器101)连接的边缘节点设备(节点设备201)可以为BIER转发入口路由器(bit-forwarding ingress router,BFIR),与终端设备(例如图1中的终端设备101、终端设备102和终端设备103)连接的边缘节点设备(例如节点设备204、节点设备205、节点设备206以及节点设备207)可以为BIER转发出口路由器(bit-forwarding egress router,BFIR)。
BIER组播域的每个边缘节点设备可以通过比特串(bit string)中的一个比特(bit)位来进行标识。例如,图1中的边缘节点设备包括节点设备201、节点设备204、节点设备205、节点设备206和节点设备207,那么节点设备201的比特串可以为00001,节点设备204的比特串可以为00010,节点设备205的比特串可以为00100,节点设备206的比特串可以为01000,节点设备207的比特串可以为10000。
BIER组播域中的节点设备可以通过泛洪的方式学习到完整的BIER邻居表,邻居表中每个直连邻居对应一条表项,表项内容包括直连邻居可达的边缘节点设备的标识。
以图1为例,节点设备201的邻居表可以参见表1的示例:
表1
节点设备202的邻居表可以参见表2的示例:
表2
邻居节点 | 可达节点 | 可达节点的比特串 |
节点设备201 | 节点设备201 | 00001 |
节点设备204 | 节点设备204 | 00010 |
节点设备205 | 节点设备205 | 00100 |
节点设备203的邻居表可以参见表3的示例:
表3
邻居节点 | 可达节点 | 可达节点的比特串 |
节点设备201 | 节点设备201 | 00001 |
节点设备206 | 节点设备206 | 01000 |
节点设备207 | 节点设备207 | 10000 |
在转发BIER组播报文时,BIER组播域的头节点设备,即节点设备201接收来自组播源节点(即服务器101)的单播报文,将该单播报文转换为BIER组播报文,该BIER组播报文的报文头中携带有目的节点的比特串。以图1为例,目的节点例如为节点设备204、节点设备205和节点设备207,那么目的节点的比特串为10110。
在生成BIER组播报文之后,用于转发BIER组播报文的节点设备根据报文头中的目的节点的比特串查找邻居表,根据与目的节点对应的邻居节点的个数对该BIER组播报文进行复制,每个邻居节点复制一份,同时修改复制后BIER组播报文中报文头的目的节点的比特串,修改之后向对应的邻居节点分发复制后的BIER组播报文。
例如,节点设备201生成的BIER组播报文的报文头的目的节点的比特串例如为10110,通过查找表1得知该BIER组播报文对应的目的节点为节点设备204、节点设备205和节点设备207,这些目的节点对应的邻居节点为节点设备202和节点设备203,那么节点设备201复制两份BIER组播报文,其中一份向节点设备202发送,另外一份向节点设备203发送。由于节点设备202对应的目的节点为节点设备204和节点设备205,所以向节点设备202发送的BIER组播报文的报文头中包括的目的节点的比特串为00110;由于节点设备203对应的目的节点为节点设备207,所以,向节点设备203发送的BIER组播报文的报文头中包括的目的节点的比特串为10000。
节点设备202在接收到来自节点设备201的BIER组播报文之后,查找表2得知该BIER组播报文对应的目的节点为节点设备204和节点设备205,而这两个节点设备均为节点设备202的邻居节点,所以,节点设备202将接收到的BIER组播报文复制两份,一份向节点设备204发送,另一份向节点设备205发送。向节点设备204发送的BIER组播报文的目的节点的比特串为00010,向节点设备205发送的BIER组播报文的目的节点的比特串为00100。
节点设备204接收到来自节点设备202的BIER组播报文之后,将该BIER组播报文转换为单播报文,并向终端设备101发送;节点设备205接收到来自节点设备202的BIER组播报文之后,将该BIER组播报文转换为单播报文,并向终端设备102发送。
节点设备203在接收到来自节点设备201的BIER组播报文之后,查找表3得知该BIER组播报文对应的目的节点为节点设备207,且该节点设备为节点设备203的邻居节点,所以,节点设备203将接收到的BIER组播报文复制一份并向节点设备207发送。向节点设备207发送的BIER组播报文的目的节点的比特串为10000。
节点设备207接收到来自节点设备203的BIER组播报文之后,将该BIER组播报文转换为单播报文,并向终端设备103发送。
上面描述了一条BIER组播流中一个BIER组播报文的转发流程,在实际转发过程中,可能会出现丢包、传输速度慢等问题,如何发现这些问题从而保证组播流传输的可靠性是本申请实施例需要解决的技术问题。下面结合图1-图4对本申请实施例提供的组播流检测方法进行介绍。
在介绍本申请实施例提供的组播流检测方法之前,先介绍一下BIER组播域的概念。如前文所提,BIER组播域是一个管理域,它可以例如包括组播源节点和终端设备之间的所有转发节点,也可以仅包括一部分转发节点。例如,以图1为例,BIER组播域可以包括节点设备201-节点设备207一共7个节点设备,也可以仅包括比如节点设备202、节点设备204和节点设备205。为了介绍方便,下文中提到的图1中的BIER组播域包括节点设备201-节点设备207。
在本申请实施例中,不同角色的节点设备对组播流的检测方法略有不同,下面将分别对BIER组播域的头节点设备、中间节点设备以及尾节点设备执行的组播流的检测方法进行介绍。
参见图2,该图为本申请实施例提供的组播流检测方法的流程图。
本申请实施例提供的由头节点设备执行的组播流检测方法包括如下步骤:
S201:头节点设备接收来自管理设备的第一对应关系,第一对应关系为流标识和第一标识的对应关系。
在本申请实施例中,头节点设备例如为图1所示的节点设备201,管理设备例如为图1所示的管理设备301。
在本申请实施例中,流标识为组播流的标识,用于标识组播流。例如,流标识可以是组播流的组播源(source)地址和组播组(group)地址,流标识还可以是组播源地址和组播组地址的哈希值等,本申请实施例不做具体限定。第一标识用于指示与流标识对应的组播流的转发路径上、对该组播流进行检测和发送相应检测数据的节点设备。
作为第一种可能的实现方式,第一标识指示的节点设备可以为BIER组播域中在该组播流的转发路径上的所有节点。以图1为例,在BIER组播域中、目的节点的比特串为10110的组播流的转发路径上的所有节点为节点设备201、节点设备202、节点设备203、节点设备204、节点设备205和节点设备207。
作为第二种可能的实现方式,第一标识指示的节点设备可以为该BIER组播域中在该组播流的转发路径上的头节点设备和所有尾节点设备。以图1为例,在BIER组播域中、目的节点的比特串为10110的组播流的转发路径上的头节点设备为节点设备201,所有尾节点设备为节点设备204、节点设备205和节点设备207。
作为第三种可能的实现方式,该第一标识指示的节点设备为该BIER组播域中在该组播流的转发路径上的头节点设备和被指定的尾节点设备。其中,被指定的尾节点设备为该转发路径上所有尾节点设备中的一个或多个尾节点设备。以图1为例,在BIER组播域中、目的节点的比特串为10110的组播流的转发路径上的被指定的尾节点设备例如为节点设备204。
作为第四种可能的实现方式,第一标识指示的节点设备为该BIER组播域中在该组播流的转发路径上的头节点设备、被指定的尾节点设备以及该头节点设备和该被指定的尾节点设备之间的中间节点设备。以图1为例,在BIER组播域中、目的节点的比特串为10110的组播流的转发路径上的头节点设备为节点设备201,被指定的尾节点设备例如为节点设备204,中间节点设备例如为节点设备202。
当第一标识指示的节点设备为第三种可能的实现方式和第四种可能的实现方式时,管理设备还需要向头节点设备发送被指定的节点设备的标识,例如被指定的节点设备的比特串。
可选的,管理设备向头节点设备发送的第一对应关系中还可以包括用于指示检测数据包括用于检测与流标识对应的组播流的丢包信息、时延信息和/或拓扑信息等的标识,以实现对组播流的丢包信息、时延信息和/或拓扑信息的检测。其中,用于检测与流标识对应的组播流的丢包信息的检测数据可以包括在预设周期内BIER组播报文的数目和/或所述BIER组播报文的字节总数。
S202:头节点设备获取BIER组播报文S1,该BIER组播报文S1中包括流标识。
如前文所提,头节点设备可以接收来自组播源节点的单播报文,并将该单播报文转换为BIER组播报文S1。BIER组播报文S1中包括的流标识可以根据BIER组播报文S1的组播源地址和组播组地址得到。
需要说明的是,S202可以在S201之后执行,可以在S201之前执行,本申请实施例不做具体限定。
S203:头节点设备根据BIER组播报文S1中的流标识和第一对应关系得到对应的第一标识,并将该第一标识添加到BIER组播报文S1中,得到BIER组播报文S2。
在本申请实施例中,第一标识可以携带在BIER组播报文S1的BIER报文头的扩展类型-长度-值(type-length-value,TLV)字段中。参见图3,该图为本申请实施例提供的BIER报文头的格式示意图。在图3中,BIER报文头包括如下字段:指定的扩展头(Next Header)字段、扩展头的总字节长度(Hdr Ext Len)字段、选项类型(Option Type)1(在草案中建议使用OX70)字段、选项类型1的总字节长度(Option Length)字段、非MPLS BIER头(Non-MPLSBIER Header)字段、选项类型(Option Type)2字段、选项类型2的总字节长度(OptionLength)字段、保留(Reserve)字段和E2E字段。其中,Option Type 2字段为扩展TLV的类型,其值例如为0x70。选项类型2的Option Length字段为扩展TLV的长度。E2E字段为扩展TLV的值,用于携带第一标识。
E2E字段的值不同,可以用于表示第一标识不同的指示。例如当E2E字段的值为0时,表示第一标识指示的节点设备为BIER组播域中在该BIER组播报文S2的转发路径上的所有节点;当E2E字段的值为1时,表示第一标识指示的节点设备可以为该BIER组播域中在该BIER组播报文S1的转发路径上的头节点设备和所有尾节点设备;当E2E字段的值为2时,表示第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S2的转发路径上的头节点设备和被指定的尾节点设备;当E2E字段的值为3时,表示第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S2的转发路径上的头节点设备、被指定的尾节点设备以及该头节点设备和该被指定的尾节点设备之间的中间节点设备。
当E2E字段的值表示第一标识指示的节点设备为第三种和第四种可能的实现方式(例如E2E字段的值为2或3)时,扩展TLV字段的值还可以包括节点设备标识列表,该节点设备标识列表用于指示所述BIER组播域中在BIER组播报文S2的转发路径上的被指定的尾节点设备。节点设备标识列表包括被指定的一个或多个尾节点设备的标识,例如为尾节点设备的比特串。例如,扩展TLV字段还包括OAM BitString字段,OAM BitString字段用于携带被指定的节点设备的比特串。OAM BitString字段可以占用32bit的整数倍。
此外,头节点设备具体获取什么检测数据可以预先在头节点设备进行配置,也可以通过由管理设备下发。如果是后者,那么管理设备向头节点设备发送的第一对应关系中还包括:用于指示检测数据包括用于检测与流标识对应的组播流的丢包信息的标识,那么头节点设备可以在BIER组播报文S1中加入第二标识,即BIER组播报文S2中还包括第二标识,该第二标识为指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数。
以图3为例,BIER组播报文S2的BIER报文头的扩展TLV中还可以包括P字段和周期字段,该P字段可以占1bit,该周期字段可以占用3bit。其中,P字段可以用于携带第二标识,在同一个预设周期内的BIER组播报文P字段的值相同,相邻两个预设周期内的BIER组播报文中P字段的值不同。例如,在第一个预设周期内,头节点设备获取到的BIER组播报文中的P字段的值均为1,在第二个预设周期内,头节点获取到的BIER组播报文的P字段的值均为0。
周期字段可以用于携带该预设周期。周期字段的值不同可以表示不同的预设周期。例如,周期字段的值为0表示预设周期为100毫秒;周期字段的值为1表示预设周期为1秒;周期字段的值为2表示预设周期为10秒;周期字段的值为3表示预设周期为30秒;周期字段的值为4表示预设周期为1分钟;周期字段的值为5表示预设周期为5分钟。
若管理设备向头节点设备发送的第一对应关系中还包括:用于指示检测数据包括用于检测与流标识对应的组播流的时延信息的标识,那么头节点设备可以在BIER组播报文S1中加入第三标识,即BIER组播报文S2还包括第三标识,第三标识用于指示所述BIER组播报文S2是否为用于确定时延的报文。
以图3为例,BIER组播报文S2的BIER报文头的扩展TLV中还可以包括D字段,D字段的值表示BIER组播报文S2是否为用于确定时延的报文,例如D字段为1时表示BIER组播报文S2为用于确定时延的报文;D字段为0时表示BIER组播报文S2不为用于确定时延的报文。
在一条组播流中,管理设备可以通过获取一个或多个BIER组播报文的发送时间和/或接收时间来获取该组播流的时延信息。如果BIER组播报文S2为用于确定时延的报文,那么BIER组播报文S2中的D字段的值与同一组播流中的其他组播报文的D字段的值不同。
可选的,每个预设周期内可以有一个BIER组播报文为用于确定时延的报文,那么头节点设备可以从在该预设周期内获取到的至少一个BIER组播报文中确定一个用于确定时延的BIER组播报文,并在该BIER组播报文中添加第二标识。
例如,在每个预设周期内的头节点设备获取到的第一个BIER组播报文为用于确定时延的报文,那么该BIER组播报文中D字段的值可以为1,该预设周期内头节点设备获取到的其他BIER组播报文中D字段的值均为0。
若管理设备向头节点设备发送的第一对应关系中还包括:用于指示检测数据包括用于检测与流标识对应的组播流的拓扑信息的标识,那么头节点设备可以在BIER组播报文S1中加入第四标识,即BIER组播报文S2包括第四标识,第四标识用于指示所述检测数据包括接收所述BIER组播报文S2的入接口标识和/或发送所述BIER组播报文S2的出接口标识。
以图3为例,BIER组播报文S2的BIER报文头的扩展TLV中还可以包括T字段,T字段可以占用1bit,用于携带第四标识。例如,当T字段的值为1时,表示第一标识指示的节点设备需要向管理设备发送接收所述BIER组播报文S2的入接口标识和/或发送所述BIER组播报文S2的出接口标识。
可选的,当扩展TLV中还包括预设周期字段时,T字段的值可以表示第一标识指示的节点设备需要以预设周期字段的值为周期向管理设备发送接收所述BIER组播报文S2的入接口标识和/或发送所述BIER组播报文S2的出接口标识。
当然,上述入接口标识和/或出接口标识可以不是周期性的发送,而是出现变化后再发送。
可以理解的是,上述第二标识、第三标识和第四标识并不构成对本申请技术方案的限定,本领域技术人员可以根据实际情况自行设计。
S204:头节点设备根据BIER组播报文S2中的第一标识确定需要对BIER组播报文S2所属的组播流进行检测和发送相应的检测数据。
在本申请实施例中,头节点设备例如可以读取BIER组播报文S2中E2E字段的值,来确定是否需要对BIER组播报文S2所属的组播流进行检测和发送相应的检测数据。而在本申请实施例中,第一标识指示的节点设备的四种可能的实现方式中均包括头节点设备,所以头节点设备都需要对BIER组播报文S2所属的组播流进行检测和发送相应的检测数据。
S205:头节点设备获取该组播流的检测数据并向管理设备发送该检测数据。
在本申请实施例中,当头节点设备根据BIER组播报文S2中的第一标识确定需要对BIER组播报文S2所属的组播流进行检测和发送相应的检测数据时,头节点设备可以获取该组播流的检测数据并向管理设备发送该检测数据。
当BIER组播报文S2中包括第二标识时,头节点设备还可以根据第二标识的指示统计在预设周期内发送的BIER组播报文S2所属的组播流的BIER组播报文的个数和/或字节总数,并向管理设备发送。例如,若BIER组播报文S2的报文头中包括P字段和周期字段,周期字段的值为1,那么在第1秒内,头节点设备统计发送的P字段为1的BIER组播报文的个数和/或字节总数,在第2秒内,头节点设备统计发送的P字段为0的BIER组播报文的个数和/或字节总数,在第3秒内,头节点设备统计发送的P字段为1的BIER组播报文的个数和/或字节总数。
当BIER组播报文S2中包括第三标识,且第三标识用于指示BIER组播报文S2为用于确定时延的报文时,头节点设备还可以根据第三标识的指示获取BIER组播报文S2的发送时间,并向管理设备发送。例如,若BIER组播报文S2的报文头中包括D字段,且D字段的值为1,那么头节点设备可以获取BIER组播报文S2的发送时间。
当BIER组播报文S2中包括第四标识,第四标识用于指示所述检测数据包括接收所述BIER组播报文S2的入接口标识和/或发送所述BIER组播报文S2的出接口标识,那么头节点设备还可以根据第四标识的指示获取发送BIER组播报文S2的出接口标识,并向管理设备发送。例如,若BIER组播报文S2的报文头中包括T字段,且T字段的值为1,那么头节点设备可以获取BIER组播报文S2的出接口标识。当BIER组播报文S2中还包括周期字段时,头节点设备可以周期性获取组播流中BIER组播报文的出接口标识并向管理设备发送。当T字段的值为0,那么头节点设备可以将BIER组播报文S2的出接口标识和上一个包括第四标识且属于同一个组播流的BIER组播报文的出接口标识进行比对,如果二者不同,则头节点设备可以获取BIER组播报文的出接口标识并发送给管理设备。
S206:头节点设备向BIER组播域中BIER组播报文S2的转发路径上的下一跳节点设备发送BIER组播报文S2。
以图1为例,当头节点设备为节点设备201,那么BIER组播报文S2的转发路径上的下一跳节点可以为节点设备202或节点设备203,具体取决于BIER组播报文S2中携带的用于标识目的节点的比特串。
另外,可以理解的是,S206可以在S205之后执行,也可以在S205之前、S204之后执行。
对于头节点设备而言,通过在BIER组播报文S1中添加第一标识得到BIER组播报文S2,这样第一标识指示的节点设备就可以获取BIER组播报文S2所属的组播流对应的检测数据并向管理设备发送,第一标识不指示的节点设备可以不发送,不仅实现对组播流的检测,而且节约了带宽。同时,BIER组播报文S2中还可以包括第二标识、第三标识和第四标识的其中一个或多个,实现对组播流丢包信息、时延信息和拓扑信息的检测。
下面结合图2介绍本申请实施例提供的由中间节点设备执行的组播流检测方法,该方法包括如下步骤:
S301:中间节点设备接收BIER组播报文S2,BIER组播报文S2中包括流标识和第一标识。
S302:当第一标识指示的节点设备为BIER组播域中在该BIER组播报文S2的转发路径上的所有节点时,中间节点设备执行S306和S307。
S303:当第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S2的转发路径上的头节点设备和所有尾节点设备,或,第一标识指示的节点设备为在该BIER组播报文S2的转发路径上的头节点设备和被指定的尾节点设备时,中间节点设备执行S307。
S304:当第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S2的转发路径上的头节点设备、被指定的尾节点设备以及该头节点设备和该被指定的尾节点设备之间的中间节点设备时,中间节点设备根据所述第一标识在所述BIER组播报文S2中确定是否存在节点设备标识列表,若是,则执行S305;若否,则执行S307。
S305:中间节点设备确定BIER组播报文S2的目的节点的标识是否在节点设备标识列表中,若是,则执行S306和S307;若否,则执行S307。
在本申请实施例中,中间节点设备可以通过获取BIER组播报文S2中目的节点的标识确定节点设备标识列表是否包括BIER组播报文S2的目的节点的标识,若是,则说明BIER组播报文S2的目的节点属于指定的尾节点设备,并且该中间节点设备为头节点设备与该指定的尾节点设备之间的中间节点设备,需要获取所述组播流的检测数据和向管理设备发送所述检测数据;若否,则说明BIER组播报文S2的目的节点不属于指定的尾节点设备,该中间节点设备不为头节点设备与该指定的尾节点设备之间的中间节点设备,不需要获取所述组播流的检测数据和向管理设备发送所述检测数据。
例如,BIER组播报文S2中OAM BitString字段的值为00010,若节点设备202确定BIER组播报文S2中携带的目的节点的比特串为00110,即比特串为00010的目的节点的标识在节点标识列表中,那么说明节点设备204为指定的尾节点设备,且节点设备202为节点设备201与节点设备204之间的中间节点设备。若节点设备202确定BIER组播报文S2中携带的目的节点的比特串为10000,那么说明节点设备207不为指定的尾节点设备,节点设备202不为节点设备201与节点设备207之间的中间节点设备。
S306:中间节点设备获取组播流的检测数据并向管理设备发送该检测数据。
在本申请实施例中,中间节点设备具体获取什么检测数据可以预先在该中间节点设备进行配置,或者可以根据BIER组播报文S2进行确定。
如果BIER组播报文S2包括第二标识,那么中间节点设备可以根据第二标识的指示统计在预设周期内接收或发送的BIER组播报文S2所属的组播流的BIER组播报文的个数和/或字节总数,并向管理设备发送。
如果BIER组播报文S2中包括第三标识,且第三标识用于指示BIER组播报文S2为用于确定时延的报文时,那么中间节点设备还可以根据第三标识的指示获取BIER组播报文S2的接收时间和/或发送时间,并向管理设备发送。
如果BIER组播报文S2中包括第四标识,那么中间节点设备还可以根据第四标识的指示获取接收BIER组播报文S2的入接口标识和/或发送BIER组播报文S2的出接口标识,并向管理设备发送。
S307:中间节点设备向BIER组播域中BIER组播报文S2的转发路径上的下一跳节点设备发送BIER组播报文S2。
需要说明的是,在实际应用中,中间节点设备转发BIER组播报文S2实际上需要对BIER组播报文S2进行复制并转发,如前文所提,但是为了描述简便,在本申请实施例中都简写为转发BIER组播报文S2。
对于中间节点设备而言,根据第一标识或第一标识和节点设备标识列表确定是否需要获取检测数据并发送给管理设备,如果需要,则获取检测数据并发送;如果不需要,则不发送,不仅实现对组播流的检测,而且节约了带宽。同时,BIER组播报文S2中还可以包括第二标识、第三标识和第四标识的其中一个或多个,实现对组播流丢包信息、时延信息和拓扑信息的检测。
下面结合图2介绍本申请实施例提供的由尾节点设备执行的组播流检测方法,该方法包括如下步骤:
S401:尾节点设备接收BIER组播报文S2,BIER组播报文S2中包括流标识和第一标识。
S402:当第一标识指示的节点设备为BIER组播域中在该BIER组播报文S2的转发路径上的所有节点,或第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S1的转发路径上的头节点设备和所有尾节点设备时,尾节点设备执行S404。
S403:当第一标识指示的节点设备为在该BIER组播报文S2的转发路径上的头节点设备和被指定的尾节点设备,或,第一标识指示的节点设备为该BIER组播域中在该BIER组播报文S2的转发路径上的头节点设备、被指定的尾节点设备以及该头节点设备和该被指定的尾节点设备之间的中间节点设备时,尾节点设备确定该尾节点设备的标识是否在BIER组播报文S2的节点设备标识列表中,如果是,则执行S404。
当尾节点设备确定该尾节点设备的标识在BIER组播报文S2的节点设备标识列表中,说明该尾节点设备为被指定的尾节点设备,需要获取所述组播流的检测数据和向管理设备发送所述检测数据;如果不在,则说明该尾节点设备为被指定的尾节点设备,不需要获取所述组播流的检测数据和向管理设备发送所述检测数据。
S404:尾节点设备获取所述组播流的检测数据和向管理设备发送所述检测数据。
在本申请实施例中,尾节点设备具体获取什么检测数据可以预先在该尾节点设备进行配置,或者可以根据BIER组播报文S2进行确定。
如果BIER组播报文S2包括第二标识,那么尾节点设备可以根据第二标识的指示统计在预设周期内接收的BIER组播报文S2所属的组播流的BIER组播报文的个数和/或字节总数,并向管理设备发送。
如果BIER组播报文S2中包括第三标识,且第三标识用于指示BIER组播报文S2为用于确定时延的报文时,那么尾节点设备还可以根据第三标识的指示获取BIER组播报文S2的接收时间,并向管理设备发送。
如果BIER组播报文S2中包括第四标识,那么尾节点设备还可以根据第四标识的指示获取接收BIER组播报文S2的入接口标识,并向管理设备发送。
此外,尾节点设备可以剥离BIER组播报文S2的报文头,变成单播报文,并向终端设备发送。
对于尾节点设备而言,根据第一标识或第一标识和节点设备标识列表确定是否需要获取检测数据并发送给管理设备,如果需要,则获取检测数据并发送;如果不需要,则不发送,不仅实现对组播流的检测,而且节约了带宽。同时,BIER组播报文S2中还可以包括第二标识、第三标识和第四标识的其中一个或多个,实现对组播流丢包信息、时延信息和拓扑信息的检测。
在介绍了头节点设备、中间节点设备和尾节点设备的组播流检测方法之后,下面介绍管理设备如何对上述节点设备发送的检测数据进行处理的方法:
管理设备接收来自第一标识指示的节点设备的检测数据,根据检测数据对组播流进行检测。具体的,
当管理设备接收到来自头节点设备的在预设周期内发送的组播报文的数目和/或字节总数,和来自尾节点设备的在预设时间周期内接收的同一条组播流的组播报文的数目和/或字节总数时,管理设备可以将二者进行比较,若同一条组播流、同一个预设时间周期内,头节点设备发送的组播报文的数目大于尾节点设备接收到组播报文的数目,和/或,头节点设备发送的组播报文的字节总数大于尾节点设备接收到组播报文的字节总数,那么意味着该组播流发生丢包现象。进一步的,如果管理设备还接收到中间节点设备的在预设周期内接收或发送的同一条组播流的组播报文的数目和/或字节总数,就可以判断出丢包出现在报文转发的哪些链路上或哪些节点上,进而对故障进行定位。
当管理设备接收到来自头节点设备的BIER组播报文S2的发送时间,以及来自尾节点设备的BIER组播报文S2的接收时间时,管理设备可以该发送时间和该接收时间之间的差值确定出BIER组播报文S2的时延。如果BIER组播报文S2的接收时间来自不同的尾节点设备,那么可以根据来自不同的尾节点设备确定出BIER组播报文S2在不同转发路径上的时延。如果某条转发路径上的时延不满足要求,则可以停止利用该转发路径转发BIER组播报文S2,或者生成新的转发路径来代替该条转发路径。
当管理设备接收到的来自头节点设备的BIER组播报文S2的出端口标识、来自中间节点设备的BIER组播报文S2的入端口标识和出端口标识,以及来自尾节点设备的BIER组播报文S2的入端口标识,管理设备可以建立转发BIER组播报文S2的拓扑架构。当上述入端口标识和/或出端口标识发生变化,管理设备可以及时的获取到新的拓扑架构。
上述管理设备对检测数据的处理方式并不构成对本申请技术方案的限定,本领域技术人可以根据具体情况自行设计。
参见图4,该图为本申请实施例提供的第一节点设备400的结构示意图。图4所示的第一节点设备400可以执行上述实施例的方法中第一节点设备执行的相应步骤。如图4所示,所述第一节点设备400包括处理单元401、发送单元402和接收单元403。
处理单元401,用于获取第一位索引显式复制BIER组播报文,所述第一BIER组播报文包括流标识和第一标识,所述流标识用于指示所述第一BIER组播报文所属的组播流,所述第一标识用于指示所述第一BIER组播报文的转发路径上、对所述组播流进行检测和发送相应的检测数据的节点设备。所述处理单元401,还用于根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据;响应于根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,获取所述组播流的检测数据。发送单元402,用于向管理设备发送所述检测数据。
可选的,所述第一标识指示的节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备和所有尾节点设备。
可选的,所述第一节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的尾节点设备或中间节点设备,所述处理单元401根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据,包括:所述处理单元401,用于根据所述第一标识在所述第一BIER组播报文中确定所述节点设备标识列表,所述节点设备标识列表用于指示所述BIER组播域中在所述第一BIER组播报文的转发路径上的被指定的尾节点设备;根据所述节点设备标识列表确定是否对所述组播流进行检测和发送相应的检测数据。
可选的,所述节点设备标识列表为所述被指定的尾节点设备的比特串。
可选的,当所述第一节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理单元401,用于:获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;根据第一对应关系在所述第二BIER组播报文中添加所述第一标识,得到所述第一BIER组播报文,所述第一对应关系为所述流标识和所述第一标识的对应关系。
可选的,所述第一节点设备还包括:接收单元403,用于接收来自所述管理设备的所述第一对应关系。
可选的,所述第一BIER组播报文还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数;所述处理单元401,用于根据所述第二标识在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
可选的,所述第一BIER组播报文还包括所述预设周期。
可选的,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理单元401,还用于在所述预设周期内获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加第一字段和第二字段,所述地址字段的值为所述第一标识,所述第二字段的值为与所述预设周期对应的预设值,所述第二字段的值用于指示在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
可选的,所述第一BIER组播报文还包括第三标识,所述第三标识用于指示所述第一BIER组播报文为用于确定时延的报文;所述处理单元401,用于根据所述第一标识和所述第三标识获取所述第一BIER组播报文的接收时间和/或所述第一BIER组播报文的发送时间。
可选的,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理单元401,还用于在预设周期内获取至少一个BIER组播报文,所述至少一个BIER组播报文中的每个BIER组播报文均包括所述流标识;从所述至少一个BIER组播报文中确定第二BIER组播报文;在所述第二BIER组播报文中添加所述第一标识和所述第三标识,得到所述第一BIER组播报文。
可选的,所述第一BIER组播报文还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述第一BIER组播报文的入接口标识和/或发送所述第一BIER组播报文的出接口标识;所述处理单元401,用于根据所述第一标识和所述第二标识获取接收所述第一BIER组播报文的入接口标识的标识和/或发送所述第一BIER组播报文的出接口标识的标识。
可选的,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理单元401,还用于获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加所述第一标识和所述第四标识,得到所述第一BIER组播报文。
可选的,所述第一标识携带在所述第一BIER组播报文的BIER报文头中。
可选的,所述第一标识携带在所述BIER报文头的TLV字段中。
可选的,所述流标识根据所述第一BIER组播报文的组播源地址和组播组地址确定。
可选的,所述发送单元402,还用于向所述第一BIER组播报文的转发路径上的下一跳节点设备发送所述第一BIER组播报文。
图4所示的第一节点设备400可以执行上述实施例的方法中第一节点设备执行的相应步骤。BIER组播域的第一节点设备可以根据第一标识确定是否需要获取组播流的检测数据并向管理设备发送,实现对BIER组播流的检测。
图5为本申请实施例的第一节点设备500的硬件结构示意图。图5所示的第一节点设备500可以执行上述实施例的方法中第一节点设备执行的相应步骤和图4所示实施例中第一节点设备400的功能。
如图5所示,所述第一节点设备500包括处理器501、存储器502、接口503和总线504。其中接口503可以通过无线或有线的方式实现,具体来讲可以是网卡。上述处理器501、存储器502和接口503通过总线504连接。
所述接口503具体可以包括发送器和接收器,用于第一节点设备与上述实施例中的第一节点设备的上一跳网络设备或下一跳网络设备之间收发信息;和/或用于上述实施例中的管理设备之间收发信息。例如,所述接口503用于支持接收所述管理设备发送的第一对应关系;用于接收所述第一节点设备的上一跳网络设备发送的第一BIER组播报文;和/或用于向所述第一节点设备的下一跳网络设备发送第一BIER组播报文。作为举例,所述接口503用于支持图2中的过程S201、S205和S206。所述处理器501用于执行上述实施例中由第一节点设备进行的处理。例如,所述处理器501用于确定根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据;响应于所述第一节点设备根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,所述第一节点设备获取所述组播流的检测数据和向管理设备发送所述检测数据;和/或用于本文所描述的技术的其他过程。作为举例,所述处理器501用于支持图3中的过程S202-S204。存储器502包括操作系统和应用程序,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中涉及第一节点设备的处理过程。可选的,所述存储器502可以包括只读存储器(英文:Read-only Memory,缩写:ROM)和随机存取存储器(英文:Random Access Memory,缩写:RAM)。其中,所述ROM包括基本输入/输出系统(英文:Basic Input/Output System,缩写:BIOS)或嵌入式系统;所述RAM包括应用程序和操作系统。当需要运行第一节点设备500时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导第一节点设备500进入正常运行状态。在第一节点设备500进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及第一节点设备的处理过程。
可以理解的是,图5仅仅示出了第一节点设备500的简化设计。在实际应用中,第一节点设备可以包含任意数量的接口,处理器或者存储器。
参见图6,该图为本申请实施例提供的管理设备600的结构示意图。图6所示的管理设备600可以执行上述实施例的方法中管理设备执行的相应步骤。如图6所示,所述管理设备600包括处理单元601、发送单元602和接收单元603。
处理单元601,用于获取第一对应关系,所述第一对应关系为流标识和第一标识的对应关系,所述流标识为BIER组播流的标识,所述第一标识用于指示所述BIER组播流的转发路径上、对所述BIER组播流进行检测和发送相应的检测数据的节点设备;发送单元602,用于向第一节点设备发送所述第一对应关系。
可选的,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备和所有尾节点设备。
可选的,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的头节点设备和被指定的尾节点设备;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备、被指定的尾节点设备以及所述头节点设备和所述被指定的尾节点设备之间的中间节点设备;所述发送单元,还用于向第一节点设备发送所述被指定的尾节点设备的标识。
可选的,所述第一对应关系还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述BIER组播流的BIER组播报文的统计信息。
可选的,所述第一对应关系还包括第三标识,所述第三标识用于指示所述检测数据包括所述BIER组播流中BIER组播报文的接收时间和/或发送时间。
可选的,所述第一对应关系还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述BIER组播流中BIER组播报文的入接口标识和/或发送所述BIER组播报文的出接口标识。
可选的,所述管理设备还包括:接收单元603,用于接收来自所述第一标识指示的节点设备的检测数据;所述处理单元601,还用于根据所述检测数据对所述BIER组播流进行检测。
图6所示的管理设备600可以执行上述实施例的方法中管理设备执行的相应步骤。管理设备600通过向第一节点设备下发第一对应关系,第一节点设备将第一标识加入到与流标识对应的BIER组播报文中,以使第一标识指示的节点设备在接收到该BIER组播报文之后能够获取组播流的检测数据并发送给管理设备,实现对BIER组播流的检测。
图7为本申请实施例的管理设备700的硬件结构示意图。图7所示的管理设备700可以执行上述实施例的方法中管理设备执行的相应步骤和图6所示实施例中管理设备600的功能。
如图7所示,所述管理设备700包括处理器701、存储器702、接口703和总线704。其中接口703可以通过无线或有线的方式实现,具体来讲可以是网卡。上述处理器701、存储器702和接口703通过总线704连接。
所述接口703具体可以包括发送器和接收器,用于管理设备与上述实施例中的节点设备之间收发信息。例如,所述接口703用于支持向第一节点设备发送第一对应关系;和/或用于接收第一标识指示的节点设备的检测数据。所述处理器701用于执行上述实施例中由管理设备进行的处理。例如,所述处理器701用于根据检测数据进行检测。作为举例,所述处理器701用于支持图3中的过程S202-S204。存储器702包括操作系统7021和应用程序7022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中涉及管理设备的处理过程。可选的,所述存储器702可以包括只读存储器(英文:Read-only Memory,缩写:ROM)和随机存取存储器(英文:Random Access Memory,缩写:RAM)。其中,所述ROM包括基本输入/输出系统(英文:Basic Input/Output System,缩写:BIOS)或嵌入式系统;所述RAM包括应用程序和操作系统。当需要运行管理设备700时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导管理设备700进入正常运行状态。在管理设备700进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及管理设备的处理过程。
可以理解的是,图7仅仅示出了管理设备700的简化设计。在实际应用中,管理设备可以包含任意数量的接口,处理器或者存储器。
本申请实施例还提供了一种网络系统,包括上述第一节点设备500和管理设备700。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述应用于第一节点设备500的组播流检测方法。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述应用于管理设备700的组播流检测方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑模块划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要获取其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各模块单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件模块单元的形式实现。
所述集成的单元如果以软件模块单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (41)
1.一种组播流检测方法,其特征在于,所述方法包括:
第一节点设备获取第一位索引显式复制BIER组播报文,所述第一BIER组播报文包括流标识和第一标识,所述流标识用于指示所述第一BIER组播报文所属的组播流,所述第一标识用于指示所述第一BIER组播报文的转发路径上、对所述组播流进行检测和发送相应的检测数据的节点设备;
所述第一节点设备根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据;
响应于所述第一节点设备根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,所述第一节点设备获取所述组播流的检测数据和向管理设备发送所述检测数据。
2.根据权利要求1所述的方法,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备和所有尾节点设备。
3.根据权利要求1所述的方法,其特征在于,所述第一节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的尾节点设备或中间节点设备,所述第一节点设备根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据,包括:
所述第一节点设备根据所述第一标识在所述第一BIER组播报文中确定所述节点设备标识列表,所述节点设备标识列表用于指示所述BIER组播域中在所述第一BIER组播报文的转发路径上的被指定的尾节点设备;
所述第一节点设备根据所述节点设备标识列表确定是否对所述组播流进行检测和发送相应的检测数据。
4.根据权利要求3所述的方法,其特征在于,所述节点设备标识列表为所述被指定的尾节点设备的比特串。
5.根据权利要求1所述的方法,其特征在于,当所述第一节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法包括:
所述第一节点设备获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;
所述第一节点设备根据第一对应关系在所述第二BIER组播报文中添加所述第一标识,得到所述第一BIER组播报文,所述第一对应关系为所述流标识和所述第一标识的对应关系。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述第一节点设备接收来自所述管理设备的所述第一对应关系。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一BIER组播报文还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数;
所述第一节点设备获取所述组播流的检测数据包括:
所述第一节点设备根据所述第二标识在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
8.根据权利要求7所述的方法,其特征在于,所述第一BIER组播报文还包括所述预设周期。
9.根据权利要求7或8所述的方法,其特征在于,
当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:
所述第一节点设备在所述预设周期内获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;
所述第一节点设备在所述第二BIER组播报文中添加第一字段和第二字段,所述地址字段的值为所述第一标识,所述第二字段的值为与所述预设周期对应的预设值,所述第二字段的值用于指示在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述第一BIER组播报文还包括第三标识,所述第三标识用于指示所述第一BIER组播报文为用于确定时延的报文;
所述第一节点设备获取所述组播流的检测数据包括:
所述第一节点设备根据所述第一标识和所述第三标识获取所述第一BIER组播报文的接收时间和/或所述第一BIER组播报文的发送时间。
11.根据权利要求10所述的方法,其特征在于,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:
所述第一节点设备在预设周期内获取至少一个BIER组播报文,所述至少一个BIER组播报文中的每个BIER组播报文均包括所述流标识;
所述第一节点设备从所述至少一个BIER组播报文中确定第二BIER组播报文;
所述第一节点设备在所述第二BIER组播报文中添加所述第一标识和所述第三标识,得到所述第一BIER组播报文。
12.根据权利要求1-11任一项所述的方法,其特征在于,所述第一BIER组播报文还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述第一BIER组播报文的入接口标识和/或发送所述第一BIER组播报文的出接口标识;
所述第一节点设备获取所述组播流的检测数据包括:
所述第一节点设备根据所述第一标识和所述第二标识获取接收所述第一BIER组播报文的入接口标识的标识和/或发送所述第一BIER组播报文的出接口标识的标识。
13.根据权利要求12所述的方法,其特征在于,当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述方法还包括:
所述第一节点设备获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;
所述第一节点设备在所述第二BIER组播报文中添加所述第一标识和所述第四标识,得到所述第一BIER组播报文。
14.根据权利要求1-13任一项所述的方法,其特征在于,所述第一标识携带在所述第一BIER组播报文的BIER报文头中。
15.根据权利要求14所述的方法,其特征在于,所述第一标识携带在所述BIER报文头的TLV字段中。
16.根据权利要求1-15任一项所述的方法,其特征在于,所述流标识根据所述第一BIER组播报文的组播源地址和组播组地址确定。
17.根据权利要求1-16任一项所述的方法,其特征在于,所述方法还包括:
所述第一节点设备向所述第一BIER组播报文的转发路径上的下一跳节点设备发送所述第一BIER组播报文。
18.一种组播流检测方法,其特征在于,所述方法包括:
管理设备获取第一对应关系,所述第一对应关系为流标识和第一标识的对应关系,所述流标识为BIER组播流的标识,所述第一标识用于指示所述BIER组播流的转发路径上、对所述BIER组播流进行检测和发送相应的检测数据的节点设备;
所述管理设备向第一节点设备发送所述第一对应关系。
19.根据权利要求18所述的方法,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备和所有尾节点设备。
20.根据权利要求18所述的方法,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的头节点设备和被指定的尾节点设备;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备、被指定的尾节点设备以及所述头节点设备和所述被指定的尾节点设备之间的中间节点设备;所述方法还包括:
所述管理设备向第一节点设备发送所述被指定的尾节点设备的标识。
21.根据权利要求18-20任一项所述的方法,其特征在于,所述第一对应关系还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述BIER组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数。
22.根据权利要求18-21任一项所述的方法,其特征在于,所述第一对应关系还包括第三标识,所述第三标识用于指示所述检测数据包括所述BIER组播流中BIER组播报文的接收时间和/或发送时间。
23.根据权利要求18-22任一项所述的方法,其特征在于,所述第一对应关系还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述BIER组播流中BIER组播报文的入接口标识和/或发送所述BIER组播报文的出接口标识。
24.根据权利要求18-23任一项所述的方法,其特征在于,所述方法还包括:
所述管理设备接收来自所述第一标识指示的节点设备的检测数据;
所述管理设备根据所述检测数据对所述BIER组播流进行检测。
25.一种第一节点设备,其特征在于,所述第一节点设备包括:
处理器,用于获取第一位索引显式复制BIER组播报文,所述第一BIER组播报文包括流标识和第一标识,所述流标识用于指示所述第一BIER组播报文所属的组播流,所述第一标识用于指示所述第一BIER组播报文的转发路径上、对所述组播流进行检测和发送相应的检测数据的节点设备;
所述处理器,还用于根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据;响应于根据所述第一标识确定需要对所述组播流进行检测和发送相应的检测数据,获取所述组播流的检测数据;
发送器,用于向管理设备发送所述检测数据。
26.根据权利要求25所述的第一节点设备,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备和所有尾节点设备。
27.根据权利要求25所述的第一节点设备,其特征在于,所述第一节点设备为所述BIER组播域中在所述第一BIER组播报文的转发路径上的尾节点设备或中间节点设备,所述处理器根据所述第一标识确定是否对所述组播流进行检测和发送相应的检测数据,包括:
所述处理器,用于根据所述第一标识在所述第一BIER组播报文中确定所述第一节点设备标识列表,所述节点设备标识列表用于指示所述BIER组播域中在所述第一BIER组播报文的转发路径上的被指定的尾节点设备;根据所述节点设备标识列表确定是否对所述组播流进行检测和发送相应的检测数据。
28.根据权利要求27所述的第一节点设备,其特征在于,所述节点设备标识列表为所述被指定的尾节点设备的比特串。
29.根据权利要求25所述的第一节点设备,其特征在于,当所述第一节点设备为BIER组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,用于:
获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;根据第一对应关系在所述第二BIER组播报文中添加所述第一标识,得到所述第一BIER组播报文,所述第一对应关系为所述流标识和所述第一标识的对应关系。
30.根据权利要求29所述的第一节点设备,其特征在于,所述第一节点设备还包括:
接收器,用于接收来自所述管理设备的所述第一对应关系。
31.根据权利要求25-30任一项所述的第一节点设备,其特征在于,所述第一BIER组播报文还包括第二标识,所述第二标识用于指示所述检测数据包括在预设周期内接收到的所述组播流的BIER组播报文的统计信息,所述统计信息包括所述BIER组播报文的数目和/或所述BIER组播报文的字节总数;
所述处理器,用于根据所述第二标识在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
32.根据权利要求31所述的第一节点设备,其特征在于,所述第一BIER组播报文还包括所述预设周期。
33.根据权利要求31或32所述的第一节点设备,其特征在于,
当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于在所述预设周期内获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加第一字段和第二字段,所述地址字段的值为所述第一标识,所述第二字段的值为与所述预设周期对应的预设值,所述第二字段的值用于指示在所述预设周期内获取接收到的所述组播流的BIER组播报文的统计信息。
34.根据权利要求25-33任一项所述的第一节点设备,其特征在于,所述第一BIER组播报文还包括第三标识,所述第三标识用于指示所述第一BIER组播报文为用于确定时延的报文;
所述处理器,用于根据所述第一标识和所述第三标识获取所述第一BIER组播报文的接收时间和/或所述第一BIER组播报文的发送时间。
35.根据权利要求34所述的第一节点设备,其特征在于,
当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于在预设周期内获取至少一个BIER组播报文,所述至少一个BIER组播报文中的每个BIER组播报文均包括所述流标识;从所述至少一个BIER组播报文中确定第二BIER组播报文;在所述第二BIER组播报文中添加所述第一标识和所述第三标识,得到所述第一BIER组播报文。
36.根据权利要求25-35任一项所述的第一节点设备,其特征在于,所述第一BIER组播报文还包括第四标识,所述第四标识用于指示所述检测数据包括接收所述第一BIER组播报文的入接口标识和/或发送所述第一BIER组播报文的出接口标识;
所述处理器,用于根据所述第一标识和所述第二标识获取接收所述第一BIER组播报文的入接口标识的标识和/或发送所述第一BIER组播报文的出接口标识的标识。
37.根据权利要求36所述的第一节点设备,其特征在于,
当所述第一节点设备为组播域中在所述第一BIER组播报文的转发路径上的头节点设备时,所述处理器,还用于获取第二BIER组播报文,所述第二BIER组播报文包括所述流标识;在所述第二BIER组播报文中添加所述第一标识和所述第四标识,得到所述第一BIER组播报文。
38.一种管理设备,其特征在于,所述管理设备包括:
处理器,用于获取第一对应关系,所述第一对应关系为流标识和第一标识的对应关系,所述流标识为BIER组播流的标识,所述第一标识用于指示所述BIER组播流的转发路径上、对所述BIER组播流进行检测和发送相应的检测数据的节点设备;
发送器,用于向第一节点设备发送所述第一对应关系。
39.根据权利要求38所述的管理设备,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的所有节点;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备和所有尾节点设备。
40.根据权利要求38所述的管理设备,其特征在于,所述第一标识指示的节点设备为BIER组播域中在所述BIER组播流的转发路径上的头节点设备和被指定的尾节点设备;或,所述第一标识指示的节点设备为所述BIER组播域中在所述BIER组播流的转发路径上的头节点设备、被指定的尾节点设备以及所述头节点设备和所述被指定的尾节点设备之间的中间节点设备;
所述发送单元,还用于向第一节点设备发送所述被指定的尾节点设备的标识。
41.一种网络系统,其特征在于,所述网络系统包括第一节点设备和管理设备,所述第一节点设备为权利要求25至37中任一所述的第一节点设备,所述管理设备为权利要求38至40中任一所述的管理设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/116937 WO2021073377A1 (zh) | 2019-10-18 | 2020-09-22 | 一种组播流检测方法、设备及系统 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019109960127 | 2019-10-18 | ||
CN201910996012 | 2019-10-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112688827A true CN112688827A (zh) | 2021-04-20 |
CN112688827B CN112688827B (zh) | 2023-03-31 |
Family
ID=75445536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911320778.XA Active CN112688827B (zh) | 2019-10-18 | 2019-12-19 | 一种组播流检测方法、设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112688827B (zh) |
WO (1) | WO2021073377A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022227695A1 (zh) * | 2021-04-30 | 2022-11-03 | 华为技术有限公司 | 传输报文的方法、装置及设备 |
US20220368623A1 (en) * | 2020-01-22 | 2022-11-17 | Huawei Technologies Co., Ltd. | Multicast Packet Detection Method, Network Device, and System |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113992564B (zh) * | 2021-09-17 | 2023-03-31 | 新华三信息安全技术有限公司 | 报文处理方法及装置 |
CN117411738B (zh) * | 2023-12-15 | 2024-03-08 | 格创通信(浙江)有限公司 | 组播复制方法、装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104067559A (zh) * | 2012-12-31 | 2014-09-24 | 华为技术有限公司 | 组播通道的性能检测方法、装置和系统 |
CN105812197A (zh) * | 2014-12-30 | 2016-07-27 | 华为技术有限公司 | 位转发入口路由器、位转发路由器及操作管理维护检测方法 |
US20170126481A1 (en) * | 2015-11-01 | 2017-05-04 | Cisco Technology, Inc. | Bier forwarding validation |
CN107147508A (zh) * | 2016-03-01 | 2017-09-08 | 中兴通讯股份有限公司 | 故障检测方法及装置 |
US20180367456A1 (en) * | 2017-06-20 | 2018-12-20 | Cisco Technology, Inc. | System and method to facilitate packet forwarding using stateful bit index explicit replication (bier) in a networking environment |
CN109921987A (zh) * | 2017-12-13 | 2019-06-21 | 中兴通讯股份有限公司 | 一种bier-te网络检测方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10069639B2 (en) * | 2015-07-28 | 2018-09-04 | Ciena Corporation | Multicast systems and methods for segment routing |
-
2019
- 2019-12-19 CN CN201911320778.XA patent/CN112688827B/zh active Active
-
2020
- 2020-09-22 WO PCT/CN2020/116937 patent/WO2021073377A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104067559A (zh) * | 2012-12-31 | 2014-09-24 | 华为技术有限公司 | 组播通道的性能检测方法、装置和系统 |
CN105812197A (zh) * | 2014-12-30 | 2016-07-27 | 华为技术有限公司 | 位转发入口路由器、位转发路由器及操作管理维护检测方法 |
US20170126481A1 (en) * | 2015-11-01 | 2017-05-04 | Cisco Technology, Inc. | Bier forwarding validation |
CN107147508A (zh) * | 2016-03-01 | 2017-09-08 | 中兴通讯股份有限公司 | 故障检测方法及装置 |
US20180367456A1 (en) * | 2017-06-20 | 2018-12-20 | Cisco Technology, Inc. | System and method to facilitate packet forwarding using stateful bit index explicit replication (bier) in a networking environment |
CN109921987A (zh) * | 2017-12-13 | 2019-06-21 | 中兴通讯股份有限公司 | 一种bier-te网络检测方法、装置及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220368623A1 (en) * | 2020-01-22 | 2022-11-17 | Huawei Technologies Co., Ltd. | Multicast Packet Detection Method, Network Device, and System |
WO2022227695A1 (zh) * | 2021-04-30 | 2022-11-03 | 华为技术有限公司 | 传输报文的方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112688827B (zh) | 2023-03-31 |
WO2021073377A1 (zh) | 2021-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112688827B (zh) | 一种组播流检测方法、设备及系统 | |
EP2592793B1 (en) | Method and apparatus for forwarding multicast traffic | |
KR20220062335A (ko) | Bier 포워딩 테이블 엔트리를 확립하기 위한 방법, 장치 및 시스템 | |
CN110224935B (zh) | 一种处理组播数据报文的方法及装置 | |
CN108964940B (zh) | 消息发送方法及装置、存储介质 | |
WO2017117956A1 (zh) | 一种信息传输方法及装置 | |
EP2708001A1 (en) | Label switched routing to connect low power network domains | |
US20230261962A1 (en) | Method for Detecting Multicast Service Flow and Related Apparatus | |
CN113691385A (zh) | 报文处理、通告方法、装置、网桥节点、源设备及介质 | |
CN109691031B (zh) | 业务报文传输方法及节点设备 | |
WO2021046565A2 (en) | Pce controlled network reliability | |
CN101729420A (zh) | 一种数据处理方法及装置 | |
CN109218176B (zh) | 一种报文处理的方法及装置 | |
CN107786441B (zh) | 一种通信方法、OpenFlow交换机及通信系统 | |
JP2023527932A (ja) | Bierマルチキャストトラフィック統計の収集方法、装置、およびシステム | |
CN113162855B (zh) | 组播报文检测方法、网络设备和系统 | |
CN114690680A (zh) | 数据处理的方法、控制器以及第一网络设备 | |
CN109688071A (zh) | 一种灵活以太网报文转发方法及装置 | |
CN108667731A (zh) | 一种基于bier信息的处理及装置 | |
CN102055598A (zh) | 一种实现点到多点802.3ah协议OAM的方法及系统 | |
KR102568754B1 (ko) | Bierv6 패킷 전달 방법, 장치 및 시스템 | |
JP2008172449A (ja) | ネットワークの論理トポロジを検出するトポロジ検出方法、通信装置、管理装置及びプログラム | |
CN113328943B (zh) | 一种路由匹配方法、信息发送方法及装置 | |
CN114079583A (zh) | 发送组播报文的方法、获取转发表项的方法及装置 | |
CN115134297A (zh) | 一种BIERv6报文的处理方法、设备以及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |