首页 / 专利库 / 电脑零配件 / 接口 / 一种反向路径检查方法和装置

一种反向路径检查方法和装置

阅读:541发布:2020-05-08

专利汇可以提供一种反向路径检查方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 公开了一种反向路径检查方法和装置,所述反向路径检查方法包括:解析报文并获取实际的入 接口 ;当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。本发明实施例将预期的入接口直接作为组播路由表的查找键值,因此在查找组播路由表命中时RPF检查通过,而不需要额外的查表过程和比较过程,降低了实现流程的复杂度,提升了效率。,下面是一种反向路径检查方法和装置专利的具体信息内容。

1.一种反向路径检查方法,包括:
解析报文并获取实际的入接口
当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;
当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
2.根据权利要求1所述的反向路径检查方法,其特征在于,当所述组播路由表不命中时,该方法还包括:丢弃所述报文。
3.根据权利要求1所述的反向路径检查方法,其特征在于,该方法之前还包括:配置所述组播路由表,所述组播路由表的查找键值包括:组播源地址、组播组地址和预期的入接口。
4.根据权利要求1~3任一项所述的反向路径检查方法,其特征在于,所述获取实际的入接口包括:
判断以下至少之一:是否配置了第一三层接入接口;是否配置了第二三层接入接口;是否配置了第三三层接入接口;
根据判断结果确定以下任意一个为所述实际的入接口:所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口;
其中,所述第一三层接入接口通过物理接口获得;所述第二三层接入接口通过物理接口和所述报文携带的虚拟局域网VLAN标识获得;所述第三三层接入接口通过所述报文携带的VLAN标识获得。
5.根据权利要求4所述的反向路径检查方法,其特征在于,所述根据判断结果确定实际的入接口包括以下至少之一:
当判断出只配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的一个时,确定配置的三层接入接口为所述实际的入接口;
当判断出配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的至少两个时,将配置的三层接入接口中优先级最高的三层接入接口作为所述实际的入接口。
6.一种反向路径检查装置,包括:
获取模,用于解析报文并获取实际的入接口;
查表模块,用于当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;
处理模块,用于当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
7.一种反向路径检查装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令被所述处理器执行时,实现如权利要求1~5任一项所述的反向路径检查方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~5任一项所述的反向路径检查方法的步骤。

说明书全文

一种反向路径检查方法和装置

技术领域

[0001] 本发明实施例涉及但不限于通信网络领域,尤指一种反向路径检查方法和装置。

背景技术

[0002] 随着社会的快速发展以及物质的极大丰富,人们日益追寻更加高效、便捷、舒适的生活,对于生活品质,提出了越来越高的要求。而通信,作为与人们的日常生活、工作息息相关的一个领域,诞生出了各种各样的通信业务需求。
[0003] 组播技术的提出,有效地解决了点到多点的通信需求,实现了互联网协议(IP,Internet Protocol)网络中点到多点的高效数据的传送,能够有效的节省网络带宽,降低网络负载。通过相关的组播技术,可以实现电话会议、视频会议、交互式网络电视(IPTV,Internet Protocol Television)等应用,使人们的工作生活变得更加便捷、丰富。
[0004] 而在组播业务中,组播模型必须对组播报文的入向接口进行一定的检查,以保证组播报文都是通过树形拓扑结构下的最短路径到达目的端路由器,同时也要防止环路的形成。为此,提出了反向路径转发(RPF,Reverse Path Forwarding)技术。
[0005] RPF技术的核心思想就是在某个组播报文进入本路由器时,本路由器执行RPF检查算法,确认该组播报文是否从预期的入接口进入。如果是从预期的接口入,则继续转发;否则,丢弃该数据包。通过RPF检查,保证了只有一个接口入的组播报文会被转发,其他接口入的组播报文则会被丢弃。这样,就避免了组播报文形成环路。例如,在设备A上,组播报文从1口入,从2口出,到达B设备后,经复制,又从A设备的3口入,采用RPF技术,就可以实现只有1口入的组播报文被转发,其他接口入的组播报文被丢弃,从而避免了组播环路。
[0006] 相关的RPF技术均需要先获得一个预期的入接口的查表索引,使用该预期的入接口的查表索引查表获得预期的入接口,将实际的入接口与预期的入接口进行比较,也就是说,均需要查表和比较过程,实现流程的复杂,效率较低。

发明内容

[0007] 本发明实施例提供了一种反向路径检查方法和装置,能够降低实现流程的复杂度,提升效率。
[0008] 本发明实施例提供了一种反向路径检查方法,包括:
[0009] 解析报文并获取实际的入接口;
[0010] 当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;
[0011] 当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
[0012] 在本发明实施例中,当所述组播路由表不命中时,该方法还包括:丢弃所述报文。
[0013] 在本发明实施例中,该方法之前还包括:配置所述组播路由表,所述组播路由表的查找键值包括:组播源地址、组播组地址和预期的入接口。
[0014] 在本发明实施例中,所述获取实际的入接口包括:
[0015] 判断以下至少之一:是否配置了第一三层接入接口;是否配置了第二三层接入接口;是否配置了第三三层接入接口;
[0016] 根据判断结果确定以下任意一个为所述实际的入接口:所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口;
[0017] 其中,所述第一三层接入接口通过物理接口获得;所述第二三层接入接口通过物理接口和所述报文携带的虚拟局域网VLAN标识获得;所述第三三层接入接口通过所述报文携带的VLAN标识获得。
[0018] 在本发明实施例中,所述根据判断结果确定实际的入接口包括以下至少之一:
[0019] 当判断出只配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的一个时,确定配置的三层接入接口为所述实际的入接口;
[0020] 当判断出配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的至少两个时,将配置的三层接入接口中优先级最高的三层接入接口作为所述实际的入接口。
[0021] 本发明实施例提出了一种反向路径检查装置,包括:
[0022] 获取模,用于解析报文并获取实际的入接口;
[0023] 查表模块,用于当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;
[0024] 处理模块,用于当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
[0025] 本发明实施例提出了一种反向路径检查装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种反向路径检查方法。
[0026] 本发明实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种反向路径检查方法的步骤。
[0027] 本发明实施例包括:解析报文并获取实际的入接口;当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。本发明实施例将预期的入接口直接作为组播路由表的查找键值,因此在查找组播路由表命中时RPF检查通过,而不需要额外的查表过程和比较过程,降低了实现流程的复杂度,提升了效率。
[0028] 本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

[0029] 附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书的一部分,与本发明实施例的实施例一起用于解释本发明实施例的技术方案,并不构成对本发明实施例技术方案的限制。
[0030] 图1为相关技术RPF技术的实现流程图一;
[0031] 图2为相关技术RPF技术的实现流程图二;
[0032] 图3为本发明一个实施例提出的反向路径检查方法的流程图;
[0033] 图4为本发明另一个实施例提出的反向路径检查装置的结构组成示意图。

具体实施方式

[0034] 下文中将结合附图对本发明实施例进行详细说明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互任意组合。
[0035] 在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0036] 相关RPF技术有两种实现方案。
[0037] 第一种,如图1所示,复用单播反向路径转发(URPF,Unicast Reverse Path Forwarding)技术,即报文进入本设备后,解析报文并获取实际的入接口(iif_index),根据目的地址判断报文是否为组播报文,当报文为组播报文时,根据组播源地址和组播组地址查组播路由表命中后获取组播成员信息,并通过组播报文中的组播源地址查单播路由表获得预期的入接口的查表索引,根据预期的入接口的查表索引查表获得预期的入接口,比较实际的入接口和预期的入接口,当实际的入接口和预期的入接口一致时,根据组播成员信息进行复制并转发组播报文;当实际的入接口和预期的入接口不一致时,丢弃组播报文。该方法需要多查一次单播路由表,浪费了一次查表带宽,且组播流程与单播流程存在交叉,实现较复杂。
[0038] 第二种,如图2所示,在组播路由表对应的结果表中存放预期的入接口的查表索引。报文进入本设备后,解析报文并获取实际的入接口(iif_index),根据目的地址判断报文是否为组播报文,当报文为组播报文时,根据组播源地址和组播组地址查组播路由表命中后从结果表中获取组播成员信息和一个预期的入接口的查表索引,通过该预期的入接口的查表索引查表获得预期的入接口,比较实际的入接口和预期的入接口,当实际的入接口和预期的入接口一致时,根据组播成员信息进行复制并转发组播报文;当实际的入接口和预期的入接口不一致时,丢弃组播报文。较第一种方法,第二种方法少了一次查单播路由表的过程,效率较高,且单播流程与组播流程之间无交叉,实现流程得到了一定的简化。
[0039] 上述两种方法均需要先获得一个预期的入接口的查表索引,使用该预期的入接口的查表索引查表获得预期的入接口,将实际的入接口与预期的入接口进行比较,也就是说,均需要查表和比较过程,实现流程的复杂,效率较低。
[0040] 参见图3,本发明一个实施例提出了一种反向路径检查方法,包括:
[0041] 步骤300、解析报文并获取实际的入接口。
[0042] 在本发明实施例中,入接口也称为入端口。
[0043] 在本发明一个实施例中,可以按照相关技术获取实际的入接口。
[0044] 在本发明另一个实施例中,获取实际的入接口包括:
[0045] 判断以下至少之一:是否配置了第一三层接入接口;是否配置了第二三层接入接口;是否配置了第三三层接入接口;
[0046] 根据判断结果确定以下任意一个为所述实际的入接口:所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口;
[0047] 其中,所述第一三层接入接口通过物理接口获得;所述第二三层接入接口通过物理接口和所述报文携带的虚拟局域网(VLAN,Virtual Local Area Network)标识获得;所述第三三层接入接口通过所述报文携带的VLAN标识获得。
[0048] 其中,三层接入接口(L3_iif_index,L3ingress interface index)是设备内部虚拟出的一个逻辑接口。
[0049] 其中,判断是否配置了第一三层接入接口包括:
[0050] 当在入向端口属性表中查找到物理接口对应的第一三层接入接口时,判断出配置了第一三层接入接口;当在入向端口属性表中查找不到物理接口对应的第一三层接入接口时,判断出没有配置第一三层接入接口;其中,根据物理接口直接从入向端口属性表中获得第一三层接入接口。
[0051] 判断是否配置了第二三层接入接口包括:
[0052] 当根据物理接口和VLAN标识查入向VLAN翻译表命中时,根据结果信息判断是否配置了第二三层接入接口,当结果信息中包含第二三层接入接口时,判断出配置了第二三层接入接口;当结果信息中不包含第二三层接入接口时,当根据物理接口和VLAN标识查入向VLAN翻译表未命中时,判断出没有配置第二三层接入接口;其中,根据物理接口和VLAN标识查入向VLAN翻译表命中时从对应的结果信息中获得第二三层接入接口。
[0053] 判断是否配置了第三三层接入接口包括:
[0054] 当在VLAN属性表中查找到VLAN标识对应的第二三层接入接口时,判断出配置了第三三层接入接口;当在VLAN属性表中查找到VLAN标识对应的第二三层接入接口时,判断出没有配置第三三层接入接口;其中,根据VLAN标识直接从VLAN属性表中获得第三三层接入接口。
[0055] 其中,根据判断结果确定实际的入接口包括以下至少之一:
[0056] 当判断出只配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的一个时,确定配置的三层接入接口为所述实际的入接口;
[0057] 当判断出配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的至少两个时,将配置的三层接入接口中优先级最高的三层接入接口作为所述实际的入接口。
[0058] 其中,三层接入接口的优先级可以预先设置,例如,设置第二三层接入接口的优先级高于第一三层接入接口,第一三层接入接口的优先级高于第三三层接入接口。
[0059] 步骤301、当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表。
[0060] 在本发明实施例中,可以根据报文的目的媒体访问控制(MAC,Media Access Control)地址和目的互联网协议(IP,Internet Protocol)地址判断报文是否为组播报文,当报文的目的MAC地址为组播MAC地址,目的IP地址为组播IP地址时,确定报文为组播报文;当报文的目的MAC地址不是组播MAC地址,目的IP地址不是组播IP地址时,确定报文不是组播报文。
[0061] 在本发明实施例中,组播路由表可以是相关技术的组播路由表的基础上增加预期的入接口作为查找键值得到的组播路由表。
[0062] 在本发明实施例中,可以按照相关技术来查组播路由表。
[0063] 步骤302、当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
[0064] 在本发明实施例中,组播路由表是否命中可以与相关技术类似,这里不再赘述。
[0065] 在本发明另一个实施例中,当所述组播路由表不命中时,该方法还包括:丢弃所述报文。
[0066] 在本发明另一个实施例中,该方法之前还包括:配置所述组播路由表,所述组播路由表的查找键值包括:组播源地址、组播组地址和预期的入接口。
[0067] 在本发明另一个实施例中,该方法之前还包括:初始化相关配置,如设备的上电初始化,默认配置的下发。
[0068] 在本发明实施例中,设备配置好以后,可以通过仪表构造组播报文并发送给设备,设备接收到报文,按照上述方法实现转发,从而测试设备的RPF检查功能。
[0069] 本发明实施例将预期的入接口直接作为组播路由表的查找键值,因此在查找组播路由表命中时RPF检查通过,而不需要额外的查表过程和比较过程,降低了实现流程的复杂度,提升了效率。
[0070] 参见图4,本发明另一个实施例提出了一种反向路径检查装置,包括:
[0071] 获取模块401,用于解析报文并获取实际的入接口;
[0072] 查表模块402,用于当判断出报文为组播报文时,根据报文的组播源地址、组播组地址和实际的入接口查组播路由表;
[0073] 处理模块403,用于当组播路由表命中时,反向路径转发RPF检查通过,获取组播成员信息,根据组播成员信息进行复制并转发报文。
[0074] 在本发明实施例中,入接口也称为入端口。
[0075] 在本发明一个实施例中,获取模块401可以按照相关技术获取实际的入接口。
[0076] 在本发明另一个实施例中,获取模块401具体用于采用以下方式实现获取实际的入接口:
[0077] 判断以下至少之一:是否配置了第一三层接入接口;是否配置了第二三层接入接口;是否配置了第三三层接入接口;
[0078] 根据判断结果确定以下任意一个为所述实际的入接口:所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口;
[0079] 其中,所述第一三层接入接口通过物理接口获得;所述第二三层接入接口通过物理接口和所述报文携带的虚拟局域网(VLAN,Virtual Local Area Network)标识获得;所述第三三层接入接口通过所述报文携带的VLAN标识获得。
[0080] 其中,三层接入接口(L3_iif_index,L3 ingress interface index)是设备内部虚拟出的一个逻辑接口。
[0081] 其中,获取模块401具体用于采用以下方式实现判断是否配置了第一三层接入接口:
[0082] 当在入向端口属性表中查找到物理接口对应的第一三层接入接口时,判断出配置了第一三层接入接口;当在入向端口属性表中查找不到物理接口对应的第一三层接入接口时,判断出没有配置第一三层接入接口;其中,根据物理接口直接从入向端口属性表中获得第一三层接入接口。
[0083] 获取模块401具体用于采用以下方式实现判断是否配置了第二三层接入接口:
[0084] 当根据物理接口和VLAN标识查入向VLAN翻译表命中时,根据结果信息判断是否配置了第二三层接入接口,当结果信息中包含第二三层接入接口时,判断出配置了第二三层接入接口;当结果信息中不包含第二三层接入接口时,当根据物理接口和VLAN标识查入向VLAN翻译表未命中时,判断出没有配置第二三层接入接口;其中,根据物理接口和VLAN标识查入向VLAN翻译表命中时从对应的结果信息中获得第二三层接入接口。
[0085] 获取模块401具体用于采用以下方式实现判断是否配置了第三三层接入接口:
[0086] 当在VLAN属性表中查找到VLAN标识对应的第二三层接入接口时,判断出配置了第三三层接入接口;当在VLAN属性表中查找到VLAN标识对应的第二三层接入接口时,判断出没有配置第三三层接入接口;其中,根据VLAN标识直接从VLAN属性表中获得第三三层接入接口。
[0087] 其中,获取模块401具体用于采用以下至少之一方式实现根据判断结果确定实际的入接口:
[0088] 当判断出只配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的一个时,确定配置的三层接入接口为所述实际的入接口;
[0089] 当判断出配置了所述第一三层接入接口、所述第二三层接入接口、所述第三三层接入接口中的至少两个时,将配置的三层接入接口中优先级最高的三层接入接口作为所述实际的入接口。
[0090] 其中,三层接入接口的优先级可以预先设置,例如,设置第二三层接入接口的优先级高于第一三层接入接口,第一三层接入接口的优先级高于第三三层接入接口。
[0091] 在本发明实施例中,查表模块402可以根据报文的目的媒体访问控制(MAC,Media Access Control)地址和目的互联网协议(IP,Internet Protocol)地址判断报文是否为组播报文,当报文的目的MAC地址为组播MAC地址,目的IP地址为组播IP地址时,确定报文为组播报文;当报文的目的MAC地址不是组播MAC地址,目的IP地址不是组播IP地址时,确定报文不是组播报文。
[0092] 在本发明另一个实施例中,处理模块403还用于:
[0093] 当所述组播路由表不命中时,丢弃所述报文。
[0094] 在本发明另一个实施例中,还包括:配置模块404,用于配置所述组播路由表,所述组播路由表的查找键值包括:组播源地址、组播组地址和预期的入接口。
[0095] 在本发明另一个实施例中,配置模块404还用于:初始化相关配置,如设备的上电初始化,默认配置的下发。
[0096] 在本发明实施例中,设备配置好以后,可以通过仪表构造组播报文并发送给设备,设备接收到报文,按照上述方法实现转发,从而测试设备的RPF检查功能。
[0097] 本发明实施例将预期的入接口直接作为组播路由表的查找键值,因此在查找组播路由表命中时RPF检查通过,而不需要额外的查表过程和比较过程,降低了实现流程的复杂度,提升了效率。
[0098] 本发明另一个实施例提出了一种反向路径检查装置,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任一种反向路径检查方法。
[0099] 本发明另一个实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种反向路径检查方法的步骤。
[0100] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件固件硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0101] 虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解本发明实施例而采用的实施方式,并非用以限定本发明实施例。任何本发明实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈