CN114844819A - 报文发送方法、报文发送装置、产品、介质及设备 - Google Patents
报文发送方法、报文发送装置、产品、介质及设备 Download PDFInfo
- Publication number
- CN114844819A CN114844819A CN202210457114.3A CN202210457114A CN114844819A CN 114844819 A CN114844819 A CN 114844819A CN 202210457114 A CN202210457114 A CN 202210457114A CN 114844819 A CN114844819 A CN 114844819A
- Authority
- CN
- China
- Prior art keywords
- router
- multicast function
- detection result
- message
- specific field
- 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
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000001514 detection method Methods 0.000 claims abstract description 113
- 238000004590 computer program Methods 0.000 claims abstract description 17
- 230000006870 function Effects 0.000 claims description 115
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 4
- 238000003672 processing method Methods 0.000 description 3
- 101001027940 Sus scrofa Metallothionein-1D Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- NLXLAEXVIDQMFP-UHFFFAOYSA-N Ammonium chloride Substances [NH4+].[Cl-] NLXLAEXVIDQMFP-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- 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/70—Routing based on monitoring results
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种报文发送方法、报文发送装置、计算机程序产品、计算机可读存储介质及电子设备,涉及通信技术领域,包括:接收各路由器发布的外部报文;根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。这样可以降低人工成本。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种报文发送方法、报文发送装置、计算机程序产品、计算机可读存储介质及电子设备。
背景技术
BIER(Bit Index Explicit Replication)是一种基于位索引显式复制的新型组播技术,其核心原理为:将组播报文目的节点的集合以比特串的方式封装在报文头部发送给中间节点,中间节点不感知组播组状态,仅根据报文头部的比特串服转发组播报文。支持BIER转发的网络域也可以为称为BIER域。
在BIER域中,每个路由器可能配置的是不同的位串长度(BitStringLength,BSL),而不同的BSL决定了当前这个路由器是否支持组播功能,如果不支持,则当前这个路由器可能无法接收到来自前一路由器的报文。在这种情况下,通常需要人工查询各个路由器的BSL配置,从而根据相关配置解决上述问题,存在人工成本较高的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本申请的目的在于提供一种报文发送方法、报文发送装置、计算机程序产品、计算机可读存储介质及电子设备,可以在各路由器要发布的报文中配置特定字段,各个路由器可以根据所接收到的其他路由器发布的报文中的特定字段来确定该路由器是否支持组播功能,从而在其不支持组播功能时,跳过该路由器将数据包下发至该路由器的下一路由器,规避前述的需要人工干预的问题,降低人工成本。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请的一方面,提供一种报文发送方法,包括:
接收各路由器发布的外部报文;
根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;
若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;
若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
在本申请的一种示例性实施例中,上述方法还包括:
若第一检测结果表征第一路由器支持组播功能,则将数据包发送至第一路由器。
在本申请的一种示例性实施例中,上述方法还包括:
若第二检测结果表征第二路由器不支持组播功能,则根据各路由器中的第三路由器发布的外部报文中的特定字段对第三路由器进行组播功能检测,得到第三检测结果;其中,第三路由器为第二路由器的下游相邻路由器;
若第三检测结果表征第三路由器支持组播功能,则通过单播隧道将数据包发送至第三路由器。
在本申请的一种示例性实施例中,上述方法还包括:
确定对应于当前路由器的身份标识符;其中,服务器用于为网络域内每个路由器分配相应的身份标识符;
在包含特定字段的目标报文中配置对应于当前路由器的特定标识符;
在网络域内发布目标报文;其中,目标报文用于向各路由器提供组播功能检测依据。
在本申请的一种示例性实施例中,在包含特定字段的目标报文中配置对应于当前路由器的特定标识符之前,上述方法还包括:
确定目标报文中的预留字段;
将预留字段中预设长度的位置确定为目标报文的特定字段。
在本申请的一种示例性实施例中,通过单播隧道将数据包发送至第二路由器,包括:
确定第二路由器发布的外部报文中限定的位串长度;
基于单播隧道的隧道标识封装数据包,得到目标数据包;
基于位串长度将目标数据包发送至第二路由器。
根据本申请的一方面,提供一种报文发送装置,包括:
报文接收单元,用于接收各路由器发布的外部报文;
组播功能检测单元,用于根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;
组播功能检测单元,还用于若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;
数据发送单元,用于若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
在本申请的一种示例性实施例中,数据发送单元,还用于若第一检测结果表征第一路由器支持组播功能,则将数据包发送至第一路由器。
在本申请的一种示例性实施例中,组播功能检测单元,还用于若第二检测结果表征第二路由器不支持组播功能,则根据各路由器中的第三路由器发布的外部报文中的特定字段对第三路由器进行组播功能检测,得到第三检测结果;其中,第三路由器为第二路由器的下游相邻路由器;
数据发送单元,还用于若第三检测结果表征第三路由器支持组播功能,则通过单播隧道将数据包发送至第三路由器。
在本申请的一种示例性实施例中,上述装置还包括:
标识符接收单元,用于确定对应于当前路由器的身份标识符;其中,服务器用于为网络域内每个路由器分配相应的身份标识符;
配置单元,用于在包含特定字段的目标报文中配置对应于当前路由器的特定标识符;
报文发布单元,用于在网络域内发布目标报文;其中,目标报文用于向各路由器提供组播功能检测依据。
在本申请的一种示例性实施例中,上述装置还包括:
字段确定单元,用于在配置单元在包含特定字段的目标报文中配置对应于当前路由器的特定标识符之前,确定目标报文中的预留字段;将预留字段中预设长度的位置确定为目标报文的特定字段。
在本申请的一种示例性实施例中,数据发送单元通过单播隧道将数据包发送至第二路由器,包括:
确定第二路由器发布的外部报文中限定的位串长度;
基于单播隧道的隧道标识封装数据包,得到目标数据包;
基于位串长度将目标数据包发送至第二路由器。
根据本申请的一方面,提供一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行上述任意一项的方法。
根据本申请的一方面,提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意一项的方法。
根据本申请的一方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的各种可选实现方式中提供的方法。
本申请示例性实施例可以具有以下部分或全部有益效果:
在本申请的一示例实施方式所提供的报文发送方法中,可以接收各路由器发布的外部报文;根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。这样可以在各路由器要发布的报文中配置特定字段,各个路由器可以根据所接收到的其他路由器发布的报文中的特定字段来确定该路由器是否支持组播功能,从而在其不支持组播功能时,跳过该路由器将数据包下发至该路由器的下一路由器,规避前述的需要人工干预的问题,降低人工成本。此外,还实现了对于是否支持组播功能的自动化判定。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本申请实施例的一种报文发送方法及报文发送装置的示例性系统架构的示意图;
图2示意性示出了根据本申请的一个实施例的报文发送方法的流程图;
图3示意性示出了根据本申请的一个实施例的报文表示方式示意图;
图4示意性示出了根据本申请的另一个实施例的报文表示方式示意图;
图5示意性示出了根据本申请的一个实施例的网络域示意图;
图6示意性示出了根据本申请的一个实施例的报文发送方法的流程图;
图7示意性示出了根据本申请的一个实施例中的报文发送装置的结构框图;
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本申请的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本申请的各方面变得模糊。
此外,附图仅为本申请的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本申请实施例的一种报文发送方法及报文发送装置的示例性应用环境的系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本申请实施例所提供的报文发送方法一般由服务器105执行,相应地,报文发送装置一般设置于服务器105中。但本领域技术人员容易理解的是,本申请实施例所提供的报文发送方法也可以由终端设备101、102或103执行,相应的,报文发送装置也可以设置于终端设备101、102或103中,本示例性实施例中对此不做特殊限定。举例而言,在一种示例性实施例中,服务器105可以接收各路由器发布的外部报文;根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
请参阅图2,图2示意性示出了根据本申请的一个实施例的报文发送方法的流程图。如图2所示,该报文发送方法可以包括以下步骤S210至步骤S240。
步骤S210:接收各路由器发布的外部报文。
步骤S220:根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器。
步骤S230:若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器。
步骤S240:若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
实施图2所示的方法,可以在各路由器要发布的报文中配置特定字段,各个路由器可以根据所接收到的其他路由器发布的报文中的特定字段来确定该路由器是否支持组播功能,从而在其不支持组播功能时,跳过该路由器将数据包下发至该路由器的下一路由器,规避前述的需要人工干预的问题,降低人工成本。此外,还实现了对于是否支持组播功能的自动化判定。
下面,对于本示例实施方式的上述步骤进行更加详细的说明。
在步骤S210中,接收各路由器发布的外部报文。
具体地,该路由器可以为位转发路由器(Bit-Forwarding Router,BFR)也可以为其他类型的路由器,本申请实施例不作限定。其中,每个BFR上会预先配置其支持的位串长度(BitStringLength,BSL),需要说明的是,不同的BFR上配置的BSL可以相同也可以不同,在不同的时间段(例如,00:00~02:00、04:30~08:00等)内,同一个BFR配置的BSL也可能发生变化。
此外,外部报文可以是中间系统到中间系统(英文:Intermediate System toIntermediate System,简称:IS-IS)网络中的报文,也可以为是开放式最短路径优先(英文:Open Shortest Path First,简称:OSPF)网络中的报文。
举例来说,在IS-IS网络中,外部报文的表示方式可以参阅图3,在OSPF网络中,外部报文的表示方式可以参阅图4。具体地,在图3中,外部报文可以包括:Type(类型字段)、Length(长度字段)、Reserved(预留字段)、BMH(特定字段)。在图4中,外部报文可以包括:Type(类型字段)、Length(长度字段)、sub-domain-id(唯一标识BIER子域的值)、MT-ID(标识与Sub-domain-id相关的拓扑)、BFR-id(BFR标识)、BAR(算法指示字段)、IPA(算法指示字段)、BMH(特定字段)、Reserved(预留字段)、Sub-TLVs(variable)(子域ID和BFR-id)。其中,BAR指示的算法可以为BIER算法或其他算法,IPA指示的算法可以为IGP算法或其他算法,TLV(Type Length Value)指示的是Type Length数值。
具体地,BMH可以是在Reserved中配置的字段,BMH指示的数值也可以理解为Reserved所指示数值的前N(如,0、1、2、3、4等)位,N为常数。
举例来说,在图3中,Type的长度可以为8比特,Length的长度可以为8比特,BMH的长度可以为2比特。举例来说,在图4中,Type的长度可以为16比特,Length的长度可以为16比特,BMH的长度可以为8比特,Sub-domain-id的长度可以为8比特,MT-ID的长度可以为8比特,BFR-ID的长度可以为16比特,BAR的长度可以为8比特,IPA的长度可以为8比特,BMH的长度可以为2比特,Sub-TLVs(variable)的长度为16比特。
作为一种可选的实施例,上述方法还包括:确定对应于当前路由器的身份标识符;其中,服务器用于为网络域内每个路由器分配相应的身份标识符;在包含特定字段的目标报文中配置对应于当前路由器的特定标识符;在网络域内发布目标报文;其中,目标报文用于向各路由器提供组播功能检测依据。
具体地,网络域可以包括前述的各路由器,该网络域可以为BIER域也可以为其他域,本申请实施例不作限定。身份标识符可以表示为BFR-id,BFR-id可以通过文字/文字组合/字符/字符串/数值/数值组合/字母/字母组合,或者是前述至少一种的组合进行表示,不同的路由器对应的身份标识符是不同的。此外,目标报文的发布时机可以与各路由器发布外部报文的时机相同,也可以不同,目标报文的表示方式可以与外部报文的表示方式相同。其他路由器也可以基于目标报文中的特定字段来检测当前路由器是否支持组播功能。
此外,可选的,服务器为网络域内每个路由器分配相应的身份标识符的方式可以为:服务器通过随机生成器为网络域内每个路由器生成相应的身份标识符。
此外,确定对应于当前路由器的身份标识符,包括:响应于用户操作将输出的内容确定为对应于当前路由器的身份标识符;或者,将接收到的服务器下发的内容确定为对应于当前路由器的身份标识符。
举例来说,请参阅图5,图5示意性示出了根据本申请的一个实施例的网络域示意图。如图5所示,网络域可以包括路由器A530、路由器B540、路由器C520、路由器D550以及路由器E510。在一种设置方式中,路由器B540可以为路由器A530的下游相邻路由器,路由器D550可以为B540的下游相邻路由器。在实际应用中,也可以有其他的设置方式,本申请实施例不作限定。
可见,实施该可选的实施例,可以通过服务器实现对于每个路由器身份标识符的配置,从而有利于各个路由器基于唯一的身份标识符准确实现与相关路由器的信息交互。
作为一种可选的实施例,在包含特定字段的目标报文中配置对应于当前路由器的特定标识符之前,上述方法还包括:确定目标报文中的预留字段;将预留字段中预设长度的位置确定为目标报文的特定字段。
具体地,预设长度可以表示为数值,单位是比特。预设长度的位置可以用于在预留字段中定位该预设长度所处的位置。
可见,实施该可选的实施例,可以扩展现有的协议,使得报文可以携带BMH信息,在这种情况下,相关人员只需要登录一台路由器就可以查看网络域内所有路由器对于组播功能是否支持,需要登录多台路由器,可以降低人工成本。
在步骤S220中,根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器。
具体地,特定字段可以对应于一种或多种取值,不同的取值可以标识不同的报文处理方式。举例来说,若特定字段对应于0,对应的报文处理方式可以为:丢弃数据包。若特定字段对应于1,对应的报文处理方式可以为:通过单播隧道发送数据包。若特定字段对应于2,对应的报文处理方式可以为:不向下一路由器发送数据包。其中,当特定字段对应于1时,可以得到表征第一路由器支持组播功能的第一检测结果,当特定字段对应于0或2时,可以得到表征第一路由器不支持组播功能的第一检测结果。
其中,第一检测结果可以表示为文字/文字组合/字符/字符串/数值/数值组合/字母/字母组合,或者是前述至少一种的组合,本申请实施例不作限定。
此外,上述的组播功能中组播用于指示一种数据包传输的方式,当有多台主机同时成为一个数据包的接受者时,出于对带宽和CPU负担的考虑,可以选择组播。
作为一种可选的实施例,上述方法还包括:若第一检测结果表征第一路由器支持组播功能,则将数据包发送至第一路由器。
具体地,单播隧道可以理解为单向传播的隧道。
可见,实施该可选的实施例,可以在第一路由器支持组播功能,直接将数据包发送至第一路由器,实现报文的精准发送。
在步骤S230中,若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器。
具体地,第二检测结果的表示方式可以与第一检测结果的表示方式相同,也可以不同,本申请实施例不作限定。
作为一种可选的实施例,上述方法还包括:若第二检测结果表征第二路由器不支持组播功能,则根据各路由器中的第三路由器发布的外部报文中的特定字段对第三路由器进行组播功能检测,得到第三检测结果;其中,第三路由器为第二路由器的下游相邻路由器;若第三检测结果表征第三路由器支持组播功能,则通过单播隧道将数据包发送至第三路由器。
其中,若第三路由器为最后一个路由器,而第三路由器不支持组播功能,则输出提示信息,以提示相关人员检查路由器情况。此外,同理,第三检测结果的表示方式可以与第一检测结果的表示方式相同,也可以不同,本申请实施例不作限定。
可见,实施该可选的实施例,可以通过依次检测组播功能的方式确定出支持组播功能的路由器,避免人工介入,可以实现组播功能检测的自动化程度。
在步骤S240中,若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
作为一种可选的实施例,通过单播隧道将数据包发送至第二路由器,包括:确定第二路由器发布的外部报文中限定的位串长度;基于单播隧道的隧道标识封装数据包,得到目标数据包;基于位串长度将目标数据包发送至第二路由器。
具体地,位串长度可以包括一种或多种BSL,用于表征该路由器可以支持的一种或多种BSL。单播隧道的隧道标识可以通过任一方式进行表示,本申请实施例不作限定。
可见,实施该可选的实施例,可以通过单播隧道的隧道标识封装数据包,从而实现单播隧道的数据传输,可以提升传输效率。
请参阅图6,图6示意性示出了根据本申请的另一个实施例的报文发送方法的流程图。如图6所示,该报文发送方法包括:步骤S600~步骤S690。
步骤S600:确定对应于当前路由器的身份标识符;其中,服务器用于为网络域内每个路由器分配相应的身份标识符。
步骤S610:确定目标报文中的预留字段,并将预留字段中预设长度的位置确定为目标报文的特定字段。
步骤S620:在包含特定字段的目标报文中配置对应于当前路由器的特定标识符。
步骤S630:在网络域内发布目标报文;其中,目标报文用于向各路由器提供组播功能检测依据。
步骤S640:接收各路由器发布的外部报文。
步骤S650:根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器。若第一检测结果表征第一路由器不支持组播功能,则执行步骤S660。若第一检测结果表征第一路由器支持组播功能,则执行步骤S670。
步骤S660:根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器。若第二检测结果表征第二路由器支持组播功能,则执行步骤S680。若第二检测结果表征第二路由器不支持组播功能,则执行步骤S690。
步骤S670:将数据包发送至第一路由器。
步骤S680:若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
步骤S690:根据各路由器中的第三路由器发布的外部报文中的特定字段对第三路由器进行组播功能检测,得到第三检测结果;其中,第三路由器为第二路由器的下游相邻路由器;若第三检测结果表征第三路由器支持组播功能,则通过单播隧道将数据包发送至第三路由器。
需要说明的是,步骤S600~步骤S690与图2所示的各步骤及其实施例相对应,针对步骤S600~步骤S690的具体实施方式,请参阅图2所示的各步骤及其实施例,此处不再赘述。
可见,实施图6所示的方法,可以在各路由器要发布的报文中配置特定字段,各个路由器可以根据所接收到的其他路由器发布的报文中的特定字段来确定该路由器是否支持组播功能,从而在其不支持组播功能时,跳过该路由器将数据包下发至该路由器的下一路由器,规避前述的需要人工干预的问题,降低人工成本。此外,还实现了对于是否支持组播功能的自动化判定。
进一步的,本示例实施方式中,还提供了一种报文发送装置。参考图7所示,该报文发送装置700可以包括:报文接收单元701、组播功能检测单元702、数据发送单元703,其中:
报文接收单元701,用于接收各路由器发布的外部报文;
组播功能检测单元702,用于根据各路由器中的第一路由器发布的外部报文中的特定字段对第一路由器进行组播功能检测,得到第一检测结果;其中,第一路由器为当前路由器的下游相邻路由器;
组播功能检测单元702,还用于若第一检测结果表征第一路由器不支持组播功能,则根据各路由器中的第二路由器发布的外部报文中的特定字段对第二路由器进行组播功能检测,得到第二检测结果;其中,第二路由器为第一路由器的下游相邻路由器;
数据发送单元703,用于若第二检测结果表征第二路由器支持组播功能,则通过单播隧道将数据包发送至第二路由器。
可见,实施图7所示的装置,可以在各路由器要发布的报文中配置特定字段,各个路由器可以根据所接收到的其他路由器发布的报文中的特定字段来确定该路由器是否支持组播功能,从而在其不支持组播功能时,跳过该路由器将数据包下发至该路由器的下一路由器,规避前述的需要人工干预的问题,降低人工成本。此外,还实现了对于是否支持组播功能的自动化判定。
在本申请的一种示例性实施例中,数据发送单元703,还用于若第一检测结果表征第一路由器支持组播功能,则将数据包发送至第一路由器。
可见,实施该可选的实施例,可以在第一路由器支持组播功能,直接将数据包发送至第一路由器,实现报文的精准发送。
在本申请的一种示例性实施例中,组播功能检测单元702,还用于若第二检测结果表征第二路由器不支持组播功能,则根据各路由器中的第三路由器发布的外部报文中的特定字段对第三路由器进行组播功能检测,得到第三检测结果;其中,第三路由器为第二路由器的下游相邻路由器;
数据发送单元703,还用于若第三检测结果表征第三路由器支持组播功能,则通过单播隧道将数据包发送至第三路由器。
可见,实施该可选的实施例,可以通过依次检测组播功能的方式确定出支持组播功能的路由器,避免人工介入,可以实现组播功能检测的自动化程度。
在本申请的一种示例性实施例中,上述装置还包括:
标识符接收单元,用于确定对应于当前路由器的身份标识符;其中,服务器用于为网络域内每个路由器分配相应的身份标识符;
配置单元,用于在包含特定字段的目标报文中配置对应于当前路由器的特定标识符;
报文发布单元,用于在网络域内发布目标报文;其中,目标报文用于向各路由器提供组播功能检测依据。
可见,实施该可选的实施例,可以通过服务器实现对于每个路由器身份标识符的配置,从而有利于各个路由器基于唯一的身份标识符准确实现与相关路由器的信息交互。
在本申请的一种示例性实施例中,上述装置还包括:
字段确定单元,用于在配置单元在包含特定字段的目标报文中配置对应于当前路由器的特定标识符之前,确定目标报文中的预留字段;将预留字段中预设长度的位置确定为目标报文的特定字段。
可见,实施该可选的实施例,可以扩展现有的协议,使得报文可以携带BMH信息,在这种情况下,相关人员只需要登录一台路由器就可以查看网络域内所有路由器对于组播功能是否支持,需要登录多台路由器,可以降低人工成本。
在本申请的一种示例性实施例中,数据发送单元703通过单播隧道将数据包发送至第二路由器,包括:
确定第二路由器发布的外部报文中限定的位串长度;
基于单播隧道的隧道标识封装数据包,得到目标数据包;
基于位串长度将目标数据包发送至第二路由器。
可见,实施该可选的实施例,可以通过单播隧道的隧道标识封装数据包,从而实现单播隧道的数据传输,可以提升传输效率。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
由于本申请的示例实施例的报文发送装置的各个功能模块与上述报文发送方法的示例实施例的步骤对应,因此对于本申请装置实施例中未披露的细节,请参照本申请上述的报文发送方法的实施例。
请参阅图8,图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从储存部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统操作所需的各种程序和数据。CPU801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的储存部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入储存部分808。
特别地,根据本申请的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的方法和装置中限定的各种功能。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种报文发送方法,其特征在于,包括:
接收各路由器发布的外部报文;
根据所述各路由器中的第一路由器发布的外部报文中的特定字段对所述第一路由器进行组播功能检测,得到第一检测结果;其中,所述第一路由器为当前路由器的下游相邻路由器;
若所述第一检测结果表征所述第一路由器不支持组播功能,则根据所述各路由器中的第二路由器发布的外部报文中的特定字段对所述第二路由器进行组播功能检测,得到第二检测结果;其中,所述第二路由器为所述第一路由器的下游相邻路由器;
若所述第二检测结果表征所述第二路由器支持所述组播功能,则通过单播隧道将数据包发送至所述第二路由器。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一检测结果表征所述第一路由器支持组播功能,则将所述数据包发送至所述第一路由器。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第二检测结果表征所述第二路由器不支持所述组播功能,则根据所述各路由器中的第三路由器发布的外部报文中的特定字段对所述第三路由器进行组播功能检测,得到第三检测结果;其中,所述第三路由器为所述第二路由器的下游相邻路由器;
若所述第三检测结果表征所述第三路由器支持所述组播功能,则通过所述单播隧道将所述数据包发送至所述第三路由器。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定对应于所述当前路由器的身份标识符;其中,所述服务器用于为网络域内每个路由器分配相应的身份标识符;
在包含特定字段的目标报文中配置对应于所述当前路由器的特定标识符;
在所述网络域内发布所述目标报文;其中,所述目标报文用于向所述各路由器提供组播功能检测依据。
5.根据权利要求4所述的方法,其特征在于,在包含特定字段的目标报文中配置对应于所述当前路由器的特定标识符之前,所述方法还包括:
确定所述目标报文中的预留字段;
将所述预留字段中预设长度的位置确定为所述目标报文的特定字段。
6.根据权利要求1~5中任一项所述的方法,其特征在于,通过单播隧道将数据包发送至所述第二路由器,包括:
确定所述第二路由器发布的外部报文中限定的位串长度;
基于所述单播隧道的隧道标识封装所述数据包,得到目标数据包;
基于所述位串长度将所述目标数据包发送至所述第二路由器。
7.一种报文发送装置,其特征在于,包括:
报文接收单元,用于接收各路由器发布的外部报文;
组播功能检测单元,用于根据所述各路由器中的第一路由器发布的外部报文中的特定字段对所述第一路由器进行组播功能检测,得到第一检测结果;其中,所述第一路由器为当前路由器的下游相邻路由器;
所述组播功能检测单元,还用于若所述第一检测结果表征所述第一路由器不支持组播功能,则根据所述各路由器中的第二路由器发布的外部报文中的特定字段对所述第二路由器进行组播功能检测,得到第二检测结果;其中,所述第二路由器为所述第一路由器的下游相邻路由器;
数据发送单元,用于若所述第二检测结果表征所述第二路由器支持所述组播功能,则通过单播隧道将数据包发送至所述第二路由器。
8.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的方法。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可待执行指令;
其中,所述处理器配置为经由执行所述可待执行指令来执行权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210457114.3A CN114844819A (zh) | 2022-04-27 | 2022-04-27 | 报文发送方法、报文发送装置、产品、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210457114.3A CN114844819A (zh) | 2022-04-27 | 2022-04-27 | 报文发送方法、报文发送装置、产品、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114844819A true CN114844819A (zh) | 2022-08-02 |
Family
ID=82568093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210457114.3A Pending CN114844819A (zh) | 2022-04-27 | 2022-04-27 | 报文发送方法、报文发送装置、产品、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114844819A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040066673A (ko) * | 2003-01-20 | 2004-07-27 | 삼성전자주식회사 | 터널링을 지원하기 위한 멀티캐스트 패킷 처리 방법 및 그노드 |
JP2005080244A (ja) * | 2003-09-03 | 2005-03-24 | Nippon Telegr & Teleph Corp <Ntt> | マルチキャスト転送経路設定方法 |
CN104283796A (zh) * | 2014-10-23 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种组播分发树建立方法和装置 |
CN113545098A (zh) * | 2020-02-21 | 2021-10-22 | 华为技术有限公司 | 传输组播业务的方法和装置 |
US20220060412A1 (en) * | 2020-08-24 | 2022-02-24 | Nokia Solutions And Networks Oy | Stateless multicast in multi-domain networks |
-
2022
- 2022-04-27 CN CN202210457114.3A patent/CN114844819A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040066673A (ko) * | 2003-01-20 | 2004-07-27 | 삼성전자주식회사 | 터널링을 지원하기 위한 멀티캐스트 패킷 처리 방법 및 그노드 |
JP2005080244A (ja) * | 2003-09-03 | 2005-03-24 | Nippon Telegr & Teleph Corp <Ntt> | マルチキャスト転送経路設定方法 |
CN104283796A (zh) * | 2014-10-23 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种组播分发树建立方法和装置 |
CN113545098A (zh) * | 2020-02-21 | 2021-10-22 | 华为技术有限公司 | 传输组播业务的方法和装置 |
US20220060412A1 (en) * | 2020-08-24 | 2022-02-24 | Nokia Solutions And Networks Oy | Stateless multicast in multi-domain networks |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10999377B2 (en) | Method, device and computer program product for protocol selection | |
CN112866111B (zh) | 流表管理的方法和装置 | |
CN108833251B (zh) | 用于控制网络互联的方法和装置 | |
US20130346591A1 (en) | Clientless Cloud Computing | |
CN110430135B (zh) | 一种报文处理方法和装置 | |
CN110730133B (zh) | 路由通告方法和系统 | |
CN113596017B (zh) | 一种协议解析方法、装置、软网关和存储介质 | |
US6950873B2 (en) | Apparatus and method for port sharing a plurality of server processes | |
CN108337163B (zh) | 用于汇聚链路的方法和装置 | |
CN110545230B (zh) | 用于转发vxlan报文的方法和装置 | |
CN117378187A (zh) | 使用全局虚拟网络实例(vni)标签来通知服务链 | |
CN111510384B (zh) | 处理服务产生的数据的方法、电子设备和计算机可读介质 | |
CN111800223B (zh) | 生成发送报文、处理接收报文的方法、装置和系统 | |
CN112019492B (zh) | 访问控制方法、装置及存储介质 | |
CN114844819A (zh) | 报文发送方法、报文发送装置、产品、介质及设备 | |
US11431674B2 (en) | Method, device, and program product for managing address of device in network | |
CN111510358A (zh) | 用于配置从设备的方法、设备和计算机程序产品 | |
CN111988221B (zh) | 数据传输方法、数据传输装置、存储介质与电子设备 | |
US11005767B2 (en) | Method, device and computer program product for data processing | |
CN111866100A (zh) | 一种控制数据传输速率的方法、装置和系统 | |
CN115250254B (zh) | Netflow报文分发处理方法及装置 | |
CN115348070B (zh) | 数据包处理方法、装置、电子设备及存储介质 | |
WO2024032599A1 (zh) | 会话绑定方法及功能、存储介质及电子设备 | |
CN112162868B (zh) | 应用于集群处理的数据通信方法、装置及存储介质 | |
WO2023083259A1 (zh) | 服务等级协议sla指标分解方法、装置、系统及相关设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220802 |
|
RJ01 | Rejection of invention patent application after publication |