CN110011941A - 一种报文转发方法及设备 - Google Patents
一种报文转发方法及设备 Download PDFInfo
- Publication number
- CN110011941A CN110011941A CN201910202564.6A CN201910202564A CN110011941A CN 110011941 A CN110011941 A CN 110011941A CN 201910202564 A CN201910202564 A CN 201910202564A CN 110011941 A CN110011941 A CN 110011941A
- Authority
- CN
- China
- Prior art keywords
- interface
- subcard
- data message
- motherboard
- multicast
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开一种报文转发方法及设备,该方法应用于网络设备,该设备包括接口母板、至少一个业务子卡和至少一个接口子卡,业务子卡和接口子卡均插接在接口母板上;接口子卡接收数据报文,将数据报文传输给接口母板;接口母板在预设的引流规则中匹配数据报文对应的业务标识,将数据报文转发给业务标识对应的业务子卡。本申请仅经过接口母板发送报文给业务子卡,不经过交换网板转发,缩短了转发路径,提高了转发效率,降低了转发过程中丢包错包的可能性。即便出现丢包错包情况,也容易定位问题端口并进行维护。无需经过交换网板,不占用接口母板到交换网板的带宽,不受接口母板到交换网板的带宽的限制,使网络设备能处理的业务流量更大。
Description
技术领域
本申请涉及网络通讯技术,具体涉及一种报文转发方法及设备。
背景技术
目前,分布式防火墙设备中通常采用子母卡插卡方式,即交换网板与接口母板连接,接口母板上插接业务子卡和接口子卡。其中,接口子卡用于接收和发送报文,交换网板用于将报文交换到其他板卡上,业务子卡用于处理报文。
当前相关技术中,接口子卡接收到报文之后,依次经过接口子卡与接口母板之间的连接端口、接口母板与交换网板之间的连接端口,将该报文发送给交换网板。交换网板再依次经过交换网板与接口母板之间的连接端口、接口母板与业务子卡之间的连接端口,将该报文转发给业务子卡,由业务子卡对该报文进行处理。
上述相关技术中,需经过交换网板才能将报文最终转发给业务子卡,报文转发路径过长,导致丢包错包的概率增大,转发效率低。且接口母板到交换网板的带宽会限制分布式防火墙设备能够处理的报文数量。
发明内容
为解决以上问题,本申请提供一种报文转发方法及设备,在接口母板内部实现报文转发,报文无需经过交换网板转发,缩短转发路径,转发效率高,且不受接口母板到交换网板的带宽的限制。本申请通过以下几个方面来解决以上问题。
第一方面,本申请实施例提供了一种报文转发方法,所述方法应用于网络设备,该网络设备包括接口母板、至少一个业务子卡和至少一个接口子卡,所述业务子卡和所述接口子卡均插接在所述接口母板上,所述方法包括:
所述接口子卡接收数据报文,将所述数据报文传输给所述接口母板;
所述接口母板在预设的引流规则中匹配所述数据报文对应的业务标识;
所述接口母板将所述数据报文转发给所述业务标识对应的业务子卡。
结合第一方面,本申请实施例提出了上述第一方面的第一种可能的实现方式,其中,所述接口母板将所述数据报文转发给所述业务标识对应的业务子卡,包括:
所述接口母板根据所述业务标识,从业务标识与端口号的对应关系中获取对应的端口号;
所述接口母板从所述端口号对应的出端口,将所述数据报文转发给所述业务标识对应的业务子卡。
结合第一方面,本申请实施例提出了上述第一方面的第二种可能的实现方式,其中,所述接口母板在预设的引流规则中匹配所述数据报文对应的业务标识,包括:
所述接口母板对所述数据报文包括的五元组信息进行哈希运算,得到所述数据报文对应的哈希值;
所述接口母板根据所述哈希值,从预设的引流规则包括的业务标识与报文哈希值的对应关系中,获取所述数据报文对应的业务标识。
第二方面,本申请实施例提出了一种报文转发方法,所述方法应用于网络设备,该网络设备包括业务主板和业务备板,所述业务主板包括第一接口母板、插接在所述第一接口母板上的主业务子卡和第一接口子卡,所述业务备板包括第二接口母板、插接在所述第二接口母板上的备业务子卡和第二接口子卡,所述第一接口子卡与所述第二接口子卡通过堆叠口连接,所述方法包括:
所述第一接口子卡接收数据报文,传输所述数据报文给所述第一接口母板;
在所述主业务子卡正常运行时,所述第一接口母板在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡;
在所述主业务子卡出现故障时,所述第一接口母板将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡;
所述第二接口母板接收所述第二接口子卡发送的所述数据报文,在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,并从所述组播备出端口转发所述数据报文给所述备业务子卡。
结合第二方面,本申请实施例提出了上述第二方面的第一种可能的实现方式,其中,所述第一接口母板在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡,包括:
所述第一接口母板根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;
所述第一接口母板从所述组播主表中获取所述数据报文对应的主端口号;
所述第一接口母板通过所述主端口号对应的组播主出端口,将所述数据报文转发给所述主业务子卡。
结合第二方面,本申请实施例提出了上述第二方面的第二种可能的实现方式,其中,所述第一接口母板将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡,包括:
所述第一接口母板将自身存储的组播主表包括的主端口号修改为所述堆叠口的标识;
所述第一接口母板根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;
所述第一接口母板从所述组播主表中获取所述堆叠口的标识,发送所述数据报文及所述堆叠口的标识给所述第一接口子卡;
所述第一接口子卡根据所述堆叠口的标识,通过所述堆叠口发送所述数据报文给所述第二接口子卡。
结合第二方面,本申请实施例提出了上述第二方面的第三种可能的实现方式,其中,所述第二接口母板在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,并从所述组播备出端口转发所述数据报文给所述备业务子卡,包括:
所述第二接口母板根据所述数据报文和自身存储的第二引流规则,确定所述数据报文对应的组播备表;
所述第二接口母板从所述组播备表中获取所述数据报文对应的备端口号;
所述第二接口母板通过所述备端口号对应的的组播备出端口,将所述数据报文转发给所述备业务子卡。
结合第二方面的第二种可能的实现方式,本申请实施例提出了上述第二方面的第四种可能的实现方式,其中,所述方法还包括:
当所述主业务子卡恢复正常运行时,所述第一接口母板将所述组播主表包括的所述堆叠口的标识修改为所述组播主出端口对应的主端口号。
结合第二方面,本申请实施例提出了上述第二方面的第五种可能的实现方式,其中,所述业务主板还包括第一主控板,所述业务备板还包括第二主控板,所述方法还包括:
所述第一主控板分配组播主表和第一引流规则,并发送所述组播主表及所述第一引流规则给所述第一接口母板;
所述第二主控板分配组播备表及第二引流规则,并发送所述组播备表及所述第二引流规则给所述第二接口母板。
结合第二方面,本申请实施例提出了上述第二方面的第六种可能的实现方式,其中,所述方法还包括:
所述第二接口子卡接收数据报文,传输所述数据报文给所述第二接口母板;
在所述备业务子卡正常运行时,所述第二接口母板在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡;
在所述备业务子卡出现故障时,所述第二接口母板将所述数据报文经由所述第二接口子卡发送给所述第一接口子卡;所述第一接口母板接收所述第一接口子卡发送的所述数据报文,在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,并从所述组播主出端口转发所述数据报文给所述主业务子卡。
第三方面,本申请实施例提供了一种网络设备,该网络设备包括接口母板、至少一个业务子卡和至少一个接口子卡,所述业务子卡和所述接口子卡均插接在所述接口母板上,包括:
所述接口子卡,用于接收数据报文,将所述数据报文传输给所述接口母板;
所述接口母板,用于在预设的引流规则中匹配所述数据报文对应的业务标识;将所述数据报文转发给所述业务标识对应的业务子卡。
结合第三方面,本申请实施例提出了上述第三方面的第一种可能的实现方式,其中,所述接口母板,用于根据所述业务标识,从业务标识与端口号的对应关系中获取对应的端口号;从所述端口号对应的出端口,将所述数据报文转发给所述业务标识对应的业务子卡。
第四方面,本申请实施例提供了一种网络设备,该网络设备包括业务主板和业务备板,所述业务主板包括第一接口母板、插接在所述第一接口母板上的主业务子卡和第一接口子卡,所述业务备板包括第二接口母板、插接在所述第二接口母板上的备业务子卡和第二接口子卡,所述第一接口子卡与所述第二接口子卡通过堆叠口连接,包括:
所述第一接口子卡,用于接收数据报文,传输所述数据报文给所述第一接口母板;
所述第一接口母板,用于在所述主业务子卡正常运行时,在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡;以及,用于在所述主业务子卡出现故障时,将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡;
所述第二接口母板,用于接收所述第二接口子卡发送的所述数据报文,在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡。
结合第四方面,本申请实施例提出了上述第四方面的第一种可能的实现方式,其中,所述第一接口母板,用于根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;从所述组播主表中获取所述数据报文对应的主端口号;通过所述主端口号对应的组播主出端口,将所述数据报文转发给所述主业务子卡。
结合第四方面,本申请实施例提出了上述第四方面的第二种可能的实现方式,其中,所述第一接口母板,用于将自身存储的组播主表包括的主端口号修改为所述堆叠口的标识;根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;从所述组播主表中获取所述堆叠口的标识,发送所述数据报文及所述堆叠口的标识给所述第一接口子卡;
所述第一接口子卡,用于根据所述堆叠口的标识,通过所述堆叠口发送所述数据报文给所述第二接口子卡。
结合第四方面的第二种可能的实现方式,本申请实施例提出了上述第四方面的第三种可能的实现方式,其中,所述第二接口母板,用于根据所述数据报文和自身存储的第二引流规则,确定所述数据报文对应的组播备表;从所述组播备表中获取所述数据报文对应的备端口号;通过所述备端口号对应的组播备出端口,将所述数据报文转发给所述备业务子卡。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本申请中接口子卡接收数据报文,将数据报文传输给接口母板;接口母板将数据报文转发给对应的业务子卡。仅经过接口母板即可发送报文给业务子卡,不经过交换网板转发,缩短了报文转发路径,提高了转发效率,降低了转发过程中丢包错包的可能性。即便出现丢包错包情况,也容易定位问题端口,从而对问题端口进行维护,以减少丢包错包的情况出现。无需经过交换网板,则不占用接口母板到交换网板的带宽,不受接口母板到交换网板的带宽的限制,使网络设备能处理的业务流量更大。进一步地,该网络设备可以为分布式防火墙设备,采用该报文转发方法的分布式防火墙设备,报文转发效率高,能处理更大的业务流量。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本申请的实践了解到。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请实施例所提供的一种网络设备的结构示意图;
图2示出了本申请实施例所提供的一种报文转发方法的流程示意图;
图3示出了本申请实施例所提供的数据报文的转发路径的示意图;
图4示出了本申请实施例所提供的另一种网络设备的结构示意图;
图5示出了本申请实施例所提供的另一种报文转发方法的流程示意图;
图6示出了本申请实施例所提供的主业务子卡正常运行时数据报文的转发路径示意图;
图7示出了本申请实施例所提供的主业务子卡出现故障时数据报文的转发路径示意图;
图8示出了本申请实施例所提供的另一种报文转发方法的流程示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
如图1所示的网络设备的结构图,该网络设备包括接口母板、至少一个业务子卡和至少一个接口子卡,业务子卡和接口子卡均插接在接口母板上。其中,接口子卡可以与网络连接,具体的,接口子卡可以与CE(Customer Edge,用户网络边缘设备)设备及PE(ProviderEdge,边缘路由器)设备连接。本申请实施例中网络设备可以为分布式防火墙设备,相应地业务子卡可以为防火墙板卡。图1中仅示意性地画出了一个接口子卡以及业务子卡1和2两个业务子卡。另外,如图1所示,该网络设备还包括交换网板,该交换网板与接口母板连接。
基于图1所示的网络设备的硬件结构,本申请实施例提出一种报文转发方法,该方法应用于上述网络设备,参见图2,该方法包括:
步骤101:接口子卡接收数据报文,将数据报文传输给接口母板。
接口子卡接收CE设备发送的数据报文,将该数据报文传输给接口母板。应当理解的是,接口子卡也可以接收PE设备发送的数据报文,将PE设备发送的数据报文传输给接口母板,然后执行本申请实施例示出的方法将数据报文转发给CE设备。
步骤102:接口母板在预设的引流规则中匹配所述数据报文对应的业务标识。
在本申请实施例中,网络设备包括的每个业务子卡都有各自的业务标识,业务标识可以为能够唯一标识业务子卡的字符序列,也可以为用户自定义的包括数字、字母、字符任意组合的序列号。在网络设备出厂之前,基于接口母板与各业务子卡连接的各个端口对应的端口号,在接口母板上预存了业务子卡的业务标识与端口号之间的对应关系。并且基于各业务子卡所能处理的业务,在接口母板上预先设置了引流规则,该引流规则中规定了各个业务子卡对应的业务标识与报文哈希值的对应关系。其中,报文哈希值能够体现报文所属的业务。
在网络设备实际工作时,接口母板接收到接口子卡传输的数据报文后,根据该数据报文的五元组,从上述预设的引流规则中匹配出对应的业务标识。其中,五元组信息包括数据报文对应的源IP(Internet Protocol Address,网际协议地址)地址、目的IP地址、源端口、目的端口及传输层协议。
在根据数据报文进行引流规则的匹配时,接口母板首先对数据报文包括的五元组信息进行哈希运算,得到该数据报文对应的哈希值。根据该哈希值,从预设的引流规则包括的业务标识与报文哈希值的对应关系中,获取该数据报文对应的业务标识。
步骤103:接口母板将该数据报文转发给上述业务标识对应的业务子卡。
通过上述方式获得该数据报文对应的业务标识后,接口母板根据该业务标识,从预存的业务标识与端口号的对应关系中获取对应的端口号。然后从该端口号对应的出端口,将该数据报文转发给该业务标识对应的业务子卡。
由于接口母板与业务子卡之间的连接端口为HG(HiGig,私有串行总线)端口,因此接口母板在将该数据报文转发给业务子卡之前,需要将该数据报文转换为组播报文。具体地,接口母板在数据报文的报文头中添加HG端口的协议信息,添加过程具体可以是:HG端口的协议信息包括dest module(目的模块)、dest port(目的端口)和opcode(操作码),将dest module添加到数据报文的报文头中第3个字节处,将dest port添加到数据报文的报文头中第4个字节处,以及将opcode添加到数据报文的报文头中第15个字节的后3位处。添加后的数据报文即为组播报文,可以经HG端口传输。接口母板将转换后的组播报文经接口母板与业务子卡之间的连接端口即HG端口传输给业务子卡。
业务子卡对该组播报文进行处理。业务子卡对该组播报文处理完成之后,再将处理后的报文通过HG端口经由接口母板转发给接口子卡,再由接口子卡传输给PE设备。
如图3所示的数据报文转发路径示意图,图3中虚线直观地展示了数据报文在网络设备内部的转发路径,即,CE设备发送数据报文给接口子卡后,经由接口母板传输给业务子卡1,业务子卡1处理完成后再经由接口母板和接口子卡传输给PE设备。
在本申请实施例中,接口子卡接收到的数据报文仅经过接口子卡与接口母板之间的连接端口、接口母板与业务子卡之间的连接端口,即可发送给对应的业务子卡,数据报文无需经过交换网板转发,缩短了数据报文的转发路径,从而提高了报文转发效率。而且缩短了数据报文的转发路径,转发过程中丢包错包的可能性大大降低,即便出现丢包错包情况,也容易定位问题的根源所在,即只需检查接口子卡与接口母板之间的连接端口以及接口母板与业务子卡之间的连接端口,通过对这两个连接端口的检查即可定位出丢包错包的问题根源,进一步地可对出现问题的连接端口进行维护操作,以减少丢包错包情况的出现。同时,由于数据报文的转发无需经过交换网板,因此不占用接口母板到交换网板之间的带宽,数据报文的转发不受接口母板到交换网板之间带宽的限制,从而使得网络设备能够处理的业务流量更大。
图4示出了网络设备的另一种结构图,该网络设备包括业务主板和业务备板,业务主板包括第一接口母板、插接在第一接口母板上的主业务子卡和第一接口子卡,业务备板包括第二接口母板、插接在第二接口母板上的备业务子卡和第二接口子卡,第一接口子卡与第二接口子卡通过堆叠口连接。堆叠技术用于将一台以上的设备聚合起来作为一台新的设备进行工作。在本申请实施例中,业务主板和业务备板可以看做两个设备,通过堆叠技术将业务主板和业务备板连接起来形成上述网络设备,具体地用连接线通过堆叠技术将上述第一接口子卡和第二接口子卡连接起来,连接线与第一接口子卡之间的连接端口,及该连接线与第二接口子卡之间的连接端口,均为上述堆叠口。
上述第一接口子卡和第二接口子卡均与CE设备及PE设备连接。主业务子卡和备业务子卡用于处理相同的业务,本申请实施例中网络设备可以为分布式防火墙设备,相应地主业务子卡和备业务子卡均为防火墙板卡。另外,如图4所示,业务主板中还包括第一主控板和第一交换网板,第一主控板和第一交换网板均与第一接口母板连接。业务备板中还包括第二主控板和第二交换网板,第二主控板和第二交换网板均与第二接口母板连接。上述业务主板和业务备板组成一个业务备份组,网络设备可以包括一个或多个这样的业务备份组。
在创建上述备份组时,第一主控板根据第一预设角色配置信息确定自身为备份组中主设备侧的主控板。第一预设角色配置信息用于指示第一主控板的角色为主。第一主控板确定自身角色后,为该备份组中的业务主板分配组播主表和第一引流规则,该组播主表中包括组播主出端口对应的主端口号,第一引流规则用于将数据报文与上述组播主表关联起来。第二主控板根据第二预设角色配置信息确定自身为该备份组中备设备侧的主控板。第二预设角色配置信息用于指示第二主控板的角色为备。第二主控板确定自身角色后,为该备份组中的业务备板分配组播备表和第二引流规则,该组播备表中包括组播备出端口对应的备端口号,第二引流规则用于将数据报文与上述组播备表关联起来。其中,组播主出端口为第一接口母板与主业务子卡之间的连接端口,组播备出端口为第二接口母板与备业务子卡之间的连接端口。
第一主控板分配好业务主板对应的组播主表和第一引流规则之后,发送该组播主表及第一引流规则给第一接口母板。第二主控板分配好业务备板对应的组播备表和第二引流规则之后,发送该组播备表及第二引流规则给第二接口母板。或者,第一主控板也可以发送分配通知给第一接口母板。第一接口母板接收到该分配通知后,发送获取请求给第一主控板。第一主控板接收到第一接口母板发送的获取请求后,将上述组播主表及第一引流规则发送给第一接口母板。相似地,第二主控板也可以发送分配通知给第二接口母板,第二接口母板接收到该分配通知后,发送获取请求给第二主控板。第二主控板接收到第二接口母板发送的获取请求后,将上述组播备表及第二引流规则发送给第二接口母板。
在本申请实施例中,还可以由第一主控板为业务主板分配组播主表和第一引流规则,及为业务备板分配组播备表和第二引流规则。其中,第一主控板将组播主表和第一引流规则发送给第一接口母板的方式与上述方式相同。对于组播备表及第二引流规则,第一主控板先将组播备表和第二引流规则经第一接口母板发送给第一接口子卡。然后第一接口子卡通过第一接口子卡上的堆叠口与第二接口子卡上的堆叠口,将组播备表和第二引流规则发送给第二接口子卡,第二接口子卡再将该组播备表及第二引流规则发送给第二接口母板。
第一接口母板接收到上述组播主表和第一引流规则后,在自身的芯片中存储该组播主表及第一引流规则。第二接口母板接收到上述组播备表和第二引流规则后,在自身的芯片中存储该组播备表及第二引流规则。
为了便于理解上述备份组的创建过程,下面举例进行具体说明。例如,在创建备份组时,用户首先按照图4所示的结构将各个板卡插接起来,并记录第一接口母板与主业务子卡连接的组播主出端口对应的主端口号0x000010000,以及记录第二接口母板与备业务子卡连接的组播备出端口对应的备端口号0x001000010。然后用户向第一主控板输入上述主端口号0x000010000,以及向第二主控板输入上述备端口号0x001000010。第一主控板为业务主板分配组播主表和第一引流规则,组播主表中包括主端口号0x000010000,并为组播主表分配一个表标识12mc,第一引流规则中规定了来自不同源IP地址的数据报文所对应的组播主表,如表1所示,源IP地址为10.10.10.10、10.0.11.10等的数据报文都对应于表标识为12mc的组播主表。第一主控板将组播主表及表1所示的第一引流规则发送给第一接口母板。第一接口母板存储组播主表及第一引流规则。
表1
第二主控板为业务备板分配组播备表和第二引流规则,组播备表中包括备端口号0x001000010,并为组播备表分配一个表标识9mc,第二引流规则中规定了来自不同源IP地址的数据报文所对应的组播备表,如表2所示,源IP地址为10.10.10.10、10.0.11.10等的数据报文都对应于表标识为9mc的组播备表。第二主控板将组播备表及表2所示的第二引流规则发送给第二接口母板。第二接口母板存储组播备表及第二引流规则。
表2
基于图4所示的网络设备的硬件结构,本申请的一个实施例提出一种报文转发方法,该方法应用于上述网络设备,参见图5,该方法包括:
步骤201:第一接口子卡接收数据报文,传输数据报文给第一接口母板。
第一接口子卡接收CE设备发送的数据报文,将该数据报文传输给第一接口母板。应当理解的是,第一接口子卡也可以接收PE设备发送的数据报文,将PE设备发送的数据报文传输给第一接口母板,然后执行本申请实施例示出的方法将数据报文转发给CE设备。
在网络设备中,当第一接口子卡接收到数据报文时,若主业务子卡运行正常,则该数据报文应该由主业务子卡进行处理。但是由于主业务子卡可能出现故障,导致无法处理数据报文,因此需要对主业务子卡是否出现故障进行检测。
在本申请的一个实施例中,可以由第一接口母板对主业务子卡进行周期性检测,以确定主业务子卡是否出现故障。具体地,第一接口母板周期性地发送心跳报文给主业务子卡。若该主业务子卡正常运行,则主业务子卡接收到该心跳报文之后,识别该心跳报文,并返回该心跳报文对应的响应报文给第一接口母板。若主业务子卡出现故障,则主业务子卡无法向第一接口母板返回响应报文。因此,如果超过预设时长第一接口母板未接收到主业务子卡返回的响应报文,则第一接口母板确定主业务子卡出现故障,后续执行步骤203的操作;如果在预设时长内接收到主业务子卡返回的响应报文,则第一接口母板确定主业务子卡正常运行,则后续执行步骤202的操作。上述预设时长可以为3秒或5秒等。
在本申请的另一个实施例中,还可以由第一交换网板来对主业务子卡进行周期性检测,以确定主业务子卡是否出现故障。具体地,第一交换网板周期性地发送心跳报文给主业务子卡。若该主业务子卡正常运行,则主业务子卡接收到该心跳报文之后,识别该心跳报文,并返回该心跳报文对应的响应报文给第一交换网板。若主业务子卡出现故障,则主业务子卡无法向第一交换网板返回响应报文。因此,如果超过预设时长第一交换网板未接收到主业务子卡返回的响应报文,则第一交换网板确定主业务子卡出现故障,发送异常通知消息给第一接口母板。如果在预设时长内第一交换网板接收到主业务子卡返回的响应报文,则第一交换网板确定主业务子卡正常运行。
上述异常通知消息用于指示主业务子卡出现故障。第一接口母板接收到该异常通知消息后,确定主业务子卡出现故障,后续执行步骤203的操作。若第一接口母板未接收到该异常通知消息,则确定主业务子卡正常运行。
通过上述任一实施例的方式检测出当前主业务子卡未出现故障后,通过如下步骤202的操作将数据报文转发给主业务子卡,或者检测出当前主业务子卡出现故障后,通过步骤203的操作来将数据报文转发给备业务子卡。
步骤202:在主业务子卡正常运行时,第一接口母板在自身存储的第一引流规则中匹配数据报文对应的组播主出端口,从该组播主出端口转发该数据报文给主业务子卡。
组播主出端口为第一接口母板与主业务子卡之间连接的端口。主业务子卡运行正常时,第一接口母板需将该数据报文转发给主业务子卡进行处理。具体地,第一接口母板根据该数据报文和自身存储的第一引流规则,确定该数据报文对应的组播主表。即第一接口母板从该数据报文的五元组中获取该数据报文的源IP地址,根据该源IP地址从第一引流规则中确定出该数据报文对应的组播主表的表标识。然后从该表标识对应的组播主表中获取该数据报文对应的主端口号;通过该主端口号对应的组播主出端口,将数据报文转发给主业务子卡。
例如,假设第一接口母板接收到的数据报文的源IP地址为10.10.10.10,则从上文表1所示的第一引流规则中确定出该数据报文对应的组播主表的表标识为12mc,从表标识12mc对应的组播主表中获取主端口号0x000010000,然后从主端口号0x000010000对应的组播主出端口将该数据报文传输给主业务子卡。
在本申请实施例中,对于第一接口子卡接收到的所有数据报文,都能够从上述第一引流规则中确定出所对应的组播主表的表标识,进而从该表标识对应的组播主表中获取到组播主出端口对应的主端口号。上述第一接口母板获取到数据报文对应的主端口号之后,通过该主端口号对应的组播主出端口,将该数据报文转发给主业务子卡。主业务子卡接收到该数据报文后对该数据报文进行处理。
在本申请实施例中,由于第一接口母板与主业务子卡之间的连接端口为HG端口,即上述组播主出端口为HG端口,因此第一接口母板在将该数据报文通过组播主出端口转发给主业务子卡之前,需要将该数据报文转换为组播报文。具体地,第一接口母板在数据报文的报文头中添加HG端口的协议信息,添加的具体过程可以是:HG端口的协议信息包括destmodule、dest port和opcode,将dest module添加到数据报文的报文头中第3个字节处,将dest port添加到数据报文的报文头中第4个字节处,以及将opcode添加到数据报文的报文头中第15个字节的后3位处。添加后的数据报文即为组播报文,可以经HG端口传输。第一接口母板将转换后的组播报文经组播主出端口传输给主业务子卡。
主业务子卡对该组播报文进行处理。主业务子卡对该组播报文处理完成之后,从该组播报文的五元组中获取目的IP地址,主业务子卡根据该目的IP地址查询自身存储的路由表,从路由表中确定该网络设备上与该目的IP地址对应的目的设备之间通信连接的端口,若该端口为第一接口子卡与PE设备连接的端口,则将处理后的报文经由第一接口母板转发给第一接口子卡,再由第一接口子卡传输给PE设备。若该端口为第二接口子卡与PE设备之间连接的端口,则处理后的报文经由第一接口母板转发给第一接口子卡,第一接口子卡通过自身上的堆叠口及第二接口子卡上的堆叠口将该报文发送给第二接口子卡,再由第二接口子卡传输给PE设备。在另一个示例中,上述目的IP地址也可以替换为目的MAC(MediaAccess Control Address,硬件地址)地址,主业务子卡从该组播报文中获取目的MAC地址,并根据该目的MAC地址查询自身存储的路由表,确定出该网络设备上与该目的MAC地址对应的目的设备之间通信连接的端口,并最终从确定的端口将该报文转发给目的设备。
如图6所示的数据报文转发路径示意图,图6中虚线直观地展示了主业务子卡正常运行时,数据报文在网络设备内部的转发路径,即,CE设备发送数据报文给第一接口子卡后,经由第一接口母板传输给主业务子卡,主业务子卡处理完成后,假设根据报文的目的IP地址查询路由表,确定出网络设备与该目的IP地址对应的目的设备之间通信连接的端口为第一接口子卡与PE设备之间的端口,则该报文再经由第一接口母板和第一接口子卡传输给PE设备。
在主业务子卡运行正常时,第一接口子卡接收到的数据报文仅经过第一接口子卡与第一接口母板之间的连接端口、第一接口母板与主业务子卡之间的连接端口,即可发送给主业务子卡,数据报文无需经过第一交换网板转发,缩短了数据报文的转发路径,提高了报文转发效率。而且缩短数据报文的转发路径,转发过程中丢包错包的可能性大大降低,即便出现丢包错包情况,也容易定位问题的根源所在,即只需检查第一接口子卡与第一接口母板之间的连接端口以及第一接口母板与主业务子卡之间的连接端口,通过对这两个连接端口的检查即可定位出丢包错包的问题根源,进一步地可对出现问题的连接端口进行维护操作,以减少丢包错包情况的出现。同时,由于数据报文的转发无需经过第一交换网板,因此不占用第一接口母板到第一交换网板之间的带宽,数据报文的转发不受第一接口母板到第一交换网板之间带宽的限制,从而使得网络设备能够处理的业务流量更大。
步骤203:在主业务子卡出现故障时,第一接口母板将数据报文经由第一接口子卡发送给第二接口子卡,第二接口母板接收第二接口子卡发送的数据报文,在自身存储的第二引流规则中匹配数据报文对应的组播备出端口,从组播备出端口转发该数据报文给备业务子卡。
主业务子卡出现故障时,主业务子卡无法处理数据报文,第一接口母板将该数据报文转发给当前备份组中的备业务子卡处理。具体地,第一接口母板将自身存储的组播主表包括的主端口号修改为上述堆叠口的标识,该堆叠口的标识包括第一接口子卡上的堆叠口的标识及第二接口子卡上的堆叠口的标识。第一接口母板根据数据报文及自身存储的第一引流规则,确定数据报文对应的组播主表;第一接口母板从该组播主表中获取上述堆叠口的标识,发送该数据报文及上述堆叠口的标识给第一接口子卡。第一接口子卡根据该堆叠口的标识,通过自身上的堆叠口及第二接口子卡上的堆叠口将数据报文发送给第二接口子卡。第二接口子卡再将该数据报文传输给第二接口母板。第二接口母板接收第二接口子卡发送的数据报文并转发给备业务子卡。
在第一接口母板确定主业务子卡出现故障时,第一接口母板将自身存储的组播主表中包括的组播主出端口对应的主端口号修改为上述堆叠口的标识。在本申请实施例中,第一接口子卡与第二接口子卡之间通过连接线采用堆叠技术连接,该连接线与第一接口子卡之间连接的端口以及该连接线与第二接口子卡之间连接的端口统称为堆叠口,上述堆叠口的标识包括该连接线与第一接口子卡之间连接的端口的标识及该连接线与第二接口子卡之间连接的端口的标识。
第一接口母板修改组播主表之后,当第一接口母板接收到第一接口子卡传输的数据报文时,从该数据报文的五元组中获取源IP地址,根据该源IP地址从自身存储的第一引流规则中确定对应的组播主表的表标识,然后从该表标识对应的组播主表中获取上述堆叠口的标识,发送该数据报文及堆叠口的标识给第一接口子卡。第一接口子卡根据该堆叠口的标识,通过自身上的堆叠口及第二接口子卡上的堆叠口将该数据报文发送给第二接口子卡。第二接口子卡再将该数据报文传输给第二接口母板。
第二接口母板接收到该数据报文之后,根据该数据报文和自身存储的第二引流规则,确定该数据报文对应的组播备表。即第二接口母板从该数据报文的五元组中获取该数据报文的源IP地址,根据该源IP地址从第二引流规则中确定出该数据报文对应的组播备表的表标识。然后从该表标识对应的组播备表中获取该数据报文对应的备端口号,通过该备端口号对应的组播备出端口,将该数据报文转发给备业务子卡。
例如,假设第二接口母板接收到的数据报文的源IP地址为10.10.10.10,则从上文表2所示的第二引流规则中确定出该数据报文对应的组播备表的表标识为9mc,从表标识9mc对应的组播备表中获取备端口号0x001000010,然后从备端口号0x001000010对应的组播备出端口将该数据报文传输给备业务子卡。
由于第二接口子卡接收到的所有数据报文,都能够从上述第二引流规则中确定出所对应的组播备表的表标识,进而从该表标识对应的组播备表中获取到组播备出端口对应的备端口号。因此第二接口母板获取到数据报文对应的备端口号之后,通过该备端口号对应的组播备出端口,将该数据报文转发给备业务子卡。备业务子卡接收到该数据报文后对该数据报文进行处理。
同样地,第二接口母板与备业务子卡之间的连接端口也为HG端口,即上述组播备出端口为HG端口,因此第二接口母板在将该数据报文通过组播备出端口转发给备业务子卡之前,需要将该数据报文转换为组播报文。具体地,第二接口母板在数据报文的报文头中添加HG端口的协议信息,添加过程可以是:HG端口的协议信息包括dest module、dest port和opcode,将dest module添加到数据报文的报文头中第3个字节处,将dest port添加到数据报文的报文头中第4个字节处,以及将opcode添加到数据报文的报文头中第15个字节的后3位处。添加后的数据报文即为组播报文,可以经HG端口传输。第二接口母板将转换后的组播报文经组播备出端口传输给备业务子卡。
备业务子卡对该组播报文进行处理。对该组播报文处理完成之后,从该组播报文的五元组中获取目的IP地址,备业务子卡根据该目的IP地址查询自身存储的路由表,从路由表中确定该网络设备上与该目的IP地址对应的目的设备之间通信连接的端口,若该端口为第二接口子卡与PE设备之间的端口,则将处理后的报文经由第二接口母板传输给第二接口子卡。由第二接口子卡传输给PE设备。若该端口为第一接口子卡与PE设备之间的端口,则处理后的报文经由第二接口母板转发给第二接口子卡,第二接口子卡经由第二接口子卡上的堆叠口及第一接口子卡上的堆叠口将该报文发送给第一接口子卡,再由第一接口子卡传输给PE设备。在另一个示例中,上述目的IP地址也可以替换为目的MAC地址,备业务子卡从该组播报文中获取目的MAC地址,并根据该目的MAC地址查询自身存储的路由表,确定出该网络设备上与该目的MAC地址对应的目的设备之间通信连接的端口,并最终从确定的端口将该报文转发给目的设备。
如图7所示的数据报文转发路径示意图,图7中虚线直观地展示了主业务子卡出现故障后,数据报文在网络设备内部的转发路径,即,CE设备发送数据报文给第一接口子卡后,第一接口子卡传输数据报文给第一接口母板,第一接口母板经由第一接口子卡发送数据报文给第二接口子卡,第二接口子卡再转发给第二接口母板,第二接口母板再将数据报文传输给备业务子卡。备业务子卡处理完成后,假设根据报文的目的IP地址查询路由表,确定出网络设备与该目的IP地址对应的目的设备之间通信连接的端口为第一接口子卡与PE设备之间的端口,则该报文经由第二接口母板传输给第二接口子卡,第二接口子卡通过自身上的堆叠口及第一接口子卡上的堆叠口将该报文传输给第一接口子卡,第一接口子卡再传输给PE设备。
在主业务子卡出现故障时,第一接口母板将数据报文发送给第一接口子卡,第一接口子卡通过自身上的堆叠口及第二接口子卡上的堆叠口将数据报文转发给第二接口子卡。第二接口子卡将数据报文经由第二接口母板发送给备业务子卡。数据报文无需经过第二交换网板转发,缩短了数据报文的转发路径,提高了报文转发效率。而且缩短数据报文的转发路径,转发过程中丢包错包的可能性大大降低,即便出现丢包错包情况,也容易定位问题的根源所在,即只需检查堆叠口、第二接口子卡与第二接口母板之间的连接端口以及第二接口母板与备业务子卡之间的连接端口,通过对这些连接端口的检查即可定位出丢包错包的问题根源,进一步地可对出现问题的连接端口进行维护操作,以减少丢包错包情况的出现。同时,由于数据报文的转发无需经过第二交换网板,因此不占用第二接口母板到第二交换网板之间的带宽,数据报文的转发不受第二接口母板到第二交换网板之间带宽的限制,从而使得分布式防火墙能够处理的业务流量更大。
当第一接口母板确定主业务子卡出现故障,并修改自身存储的组播主表,将组播主表包括的主端口号修改为堆叠口的标识。之后用户可能对主业务子卡进行维修或更换,使得主业务子卡恢复正常工作。此时第一接口母板能够检测到主业务子卡恢复正常,并将再次修改组播主表,将组播主表包括的堆叠口的标识修改为主端口号,从而使得第一接口母板再次接收到数据报文时,可以按照步骤202的操作将数据报文转发给主业务子板处理。
在主业务子卡出现故障时,主业务子卡和备业务子卡将发生角色转变,即备业务子卡承担报文处理的主要功能,此时CE设备发送来的数据报文最终都会传输给备业务子卡进行处理。在主业务子卡恢复正常工作预设时长后,主业务子卡和备业务子卡将再次发生角色转变,由主业务子卡恢复承担报文处理的主要功能,此时第一接口子卡接收到的数据报文都会传输给主业务子卡处理。或者,在主业务子卡恢复正常工作后,主业务子卡和备业务子卡也可以不进行角色转变,由备业务子卡承担报文处理的主要功能,直到备业务子卡出现故障时再进行角色转变,转由主业务子卡承担报文处理的主要功能。
在本申请实施例中,在主业务子卡运行正常时,第一接口子卡接收到的数据报文经过第一接口母板发送给主业务子卡,数据报文无需经过第一交换网板转发。在主业务子卡出现故障时,第一接口母板将数据报文转发给业务备板中的第二接口子卡,第二接口子卡经由第二接口母板将数据报文发送给备业务子卡,数据报文无需经过第二交换网板转发。缩短了数据报文的转发路径,报文转发效率高,且大大降低了丢包错包的可能性。由于转发过程中数据报文所经过的端口较少,因此即便出现丢包错包情况,也容易定位出现问题的端口,从而对出现问题的端口进行维护操作,以减少丢包错包情况的出现。而且不管是在业务主板还是业务备板,数据报文都不经过交换网板转发,不占用接口母板到交换网板之间的带宽,不受接口母板到交换网板之间带宽的限制,从而使得网络设备能够处理的业务流量更大。
在图4所示的网络设备中,业务主板与业务备板可以互为备份,业务备板包括的第二接口子卡也与CE设备及PE设备连接,与上述实施例中第一接口子卡接收到数据报文的处理方式类似,当业务备板承担报文处理的主要功能,而业务主板作为业务备板的备用设备时,如图8所示,当第二接口子卡接收到CE设备发送的数据报文时,通过如下操作来转发数据报文,包括:
步骤301:第二接口子卡接收数据报文,传输数据报文给第二接口母板。
第二接口子卡接收CE设备发送的数据报文,将该数据报文传输给第二接口母板。应当理解的是,第二接口子卡也可以接收PE设备发送的数据报文,将PE设备发送的数据报文传输给第二接口母板,然后执行本申请实施例示出的方法将数据报文转发给CE设备。
当第二接口子卡接收到数据报文时,若备业务子卡运行正常,则该数据报文应该由备业务子卡进行处理。但是由于备业务子卡可能出现故障,导致无法处理数据报文,因此需要对备业务子卡是否出现故障进行检测。
相似地,可以由第二接口母板对备业务子卡进行周期性检测,第二接口母板周期性地发送心跳报文给备业务子卡。如果超过预设时长第二接口母板未接收到备业务子卡返回的响应报文,则第二接口母板确定备业务子卡出现故障,后续执行步骤303的操作;如果在预设时长内接收到备业务子卡返回的响应报文,则第二接口母板确定备业务子卡正常运行,则后续执行步骤302的操作。
在本申请的另一个实施例中,还可以由第二交换网板来对备业务子卡进行周期性检测,第二交换网板周期性地发送心跳报文给备业务子卡。如果超过预设时长第二交换网板未接收到备业务子卡返回的响应报文,则第二交换网板确定备业务子卡出现故障,发送异常通知消息给第二接口母板。如果在预设时长内第二交换网板接收到备业务子卡返回的响应报文,则第二交换网板确定备业务子卡正常运行。上述异常通知消息用于指示备业务子卡出现故障。第二接口母板接收到该异常通知消息后,确定备业务子卡出现故障,后续执行步骤203的操作。若第二接口母板未接收到该异常通知消息,则确定备业务子卡正常运行。
步骤302:在备业务子卡正常运行时,第二接口母板在自身存储的第二引流规则中匹配数据报文对应的组播备出端口,从组播备出端口转发数据报文给备业务子卡。
第二接口母板根据该数据报文和自身存储的第二引流规则,确定该数据报文对应的组播备表。即第二接口母板从该数据报文的五元组中获取该数据报文的源IP地址,根据该源IP地址从第二引流规则中确定出该数据报文对应的组播备表的表标识。然后从该表标识对应的组播备表中获取该数据报文对应的备端口号,通过该备端口号对应的组播主出端口,将数据报文转发给备业务子卡。
由于第二接口母板与备业务子卡之间的连接端口为HG端口,即上述组播主出端口为HG端口,因此第二接口母板在将该数据报文通过组播主出端口转发给备业务子卡之前,还在数据报文的报文头中添加HG端口的协议信息,添加后的数据报文即为组播报文,组播报文的生成过程已经在前文描述,在此不再赘述。第二接口母板将转换后的组播报文经组播主出端口传输给备业务子卡。备业务子卡对该组播报文处理完成之后,再将处理后的报文经由第二接口母板转发给第二接口子卡,再由第二接口子卡传输给PE设备。
在备业务子卡运行正常时,第二接口子卡接收到的数据报文仅经过第二接口母板即可发送给备业务子卡,数据报文无需经过第二交换网板转发,缩短了数据报文的转发路径,提高了报文转发效率。而且缩短数据报文的转发路径,转发过程中丢包错包的可能性大大降低,即便出现丢包错包情况,也容易定位出现问题的端口,进一步地可对出现问题的端口进行维护操作,以减少丢包错包情况的出现。由于转发无需经过第二交换网板,不占用第二接口母板到第二交换网板之间的带宽,报文转发不受第二接口母板到第二交换网板之间带宽的限制,从而使得网络设备能够处理的业务流量更大。
步骤303:在备业务子卡出现故障时,第二接口母板将数据报文经由第二接口子卡发送给第一接口子卡,第一接口母板接收第一接口子卡发送的数据报文,在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发该数据报文给主业务子卡。
备业务子卡出现故障时,备业务子卡无法处理数据报文,第二接口母板将该数据报文转发给当前备份组中的主业务子卡处理。具体地,第二接口母板将自身存储的组播备表包括的备端口号修改为上述堆叠口的标识,第二接口母板根据该数据报文及自身存储的第二引流规则,确定该数据报文对应的组播备表;从该组播备表中获取上述堆叠口的标识,发送该数据报文及堆叠口的标识给第二接口子卡。第二接口子卡根据该堆叠口的标识,通过自身上的堆叠口及第一接口子卡上的堆叠口将数据报文发送给第一接口子卡,第一接口子卡将该数据报文传输给第一接口母板。第一接口母板再将该数据报文转发给主业务子卡。
第一接口子卡与第二接口子卡之间通过连接线采用堆叠技术连接起来。上述堆叠口是指该连接线与第一接口子卡之间连接的端口和该连接线与第二接口子卡之间连接的端口。
在第二接口母板确定备业务子卡出现故障时,第二接口母板将自身存储的组播备表中包括的备端口号修改为上述堆叠口的标识。其中,堆叠口的标识即为上述连接线与第一接口子卡之间的连接端口的标识及该连接线与第二接口子卡之间的连接端口的标识。
第二接口母板修改组播备表之后,从该数据报文的五元组中获取源IP地址,根据该源IP地址从自身存储的第二引流规则中确定对应的组播备表的表标识,然后从该表标识对应的组播备表中获取上述堆叠口的标识,发送该数据报文及堆叠口的标识给第二接口子卡。第二接口子卡根据该堆叠口的标识,通过自身上的堆叠口及第一接口子卡上的堆叠口将该数据报文发送给第一接口子卡。第一接口子卡再将该数据报文传输给第一接口母板。
第一接口母板接收到该数据报文之后,根据该数据报文和自身存储的第一引流规则,确定该数据报文对应的组播主表。即第一接口母板从该数据报文的五元组中获取该数据报文的源IP地址,根据该源IP地址从第一引流规则中确定出该数据报文对应的组播主表的表标识。然后从该表标识对应的组播主表中获取该数据报文对应的主端口号;通过该主端口号对应的组播主出端口,将该数据报文转发给主业务子卡。
同样地,第一接口母板在将该数据报文通过组播主出端口转发给主业务子卡之前,还在数据报文的报文头中添加HG端口的协议信息,添加后的数据报文即为组播报文。第一接口母板将转换后的组播报文经组播主出端口传输给主业务子卡。
对该组播报文处理完成之后,主业务子卡从该组播报文的五元组中获取目的IP地址,根据该目的IP地址查询自身存储的路由表,从路由表中确定该网络设备上与该目的IP地址对应的目的设备之间通信连接的端口,若该端口为第一接口子卡与PE设备之间的端口,则将处理后的报文经由第一接口母板传输给第一接口子卡。由第一接口子卡传输给PE设备。若该端口为第二接口子卡与PE设备之间的端口,则处理后的报文经由第一接口母板转发给第一接口子卡,第一接口子卡经由自身上的堆叠口及第二接口子卡上的堆叠口将该报文发送给第二接口子卡,再由第二接口子卡传输给PE设备。在另一个示例中,上述目的IP地址也可以替换为目的MAC地址,主业务子卡从该组播报文中获取目的MAC地址,并根据该目的MAC地址查询自身存储的路由表,确定出该网络设备上与该目的MAC地址对应的目的设备之间通信连接的端口,并最终从确定的端口将该报文转发给目的设备。
当第二接口母板确定备业务子卡出现故障,并修改自身存储的组播备表,将组播备表包括的备端口号修改为堆叠口的标识。之后用户可能对备业务子卡进行维修或更换,使得备业务子卡恢复正常工作。此时第二接口母板能够检测到备业务子卡恢复正常,并将再次修改组播备表,将组播备表包括的堆叠口的标识修改为备端口号,从而使得第二接口母板再次接收到数据报文时,可以按照步骤302的操作将数据报文转发给备业务子板处理。
在备业务子卡出现故障时,主业务子卡和备业务子卡将发生角色转变,即由主业务子卡承担报文处理的主要功能,此时CE设备发送来的数据报文最终都会传输给主业务子卡进行处理。在备业务子卡恢复正常工作预设时长后,主业务子卡和备业务子卡将再次发生角色转变,由备业务子卡恢复承担报文处理的主要功能,此时第二接口子卡接收到的数据报文都会传输给备业务子卡处理。或者,在备业务子卡恢复正常工作后,主业务子卡和备业务子卡也可以不进行角色转变,由主业务子卡承担报文处理的主要功能,直到主业务子卡出现故障时再进行角色转变,转由备业务子卡承担报文处理的主要功能。
在本申请实施例中,在备业务子卡运行正常时,第二接口子卡接收到的数据报文经过第二接口母板发送给备业务子卡,数据报文无需经过第二交换网板转发。在备业务子卡出现故障时,第二接口母板将数据报文转发给业务主板中的第一接口子卡,第一接口子卡经由第一接口母板将数据报文发送给主业务子卡,数据报文无需经过第一交换网板转发。缩短了数据报文的转发路径,报文转发效率高,且大大降低了丢包错包的可能性。由于转发过程中数据报文所经过的端口较少,因此即便出现丢包错包情况,也容易定位出现问题的端口,从而对出现问题的端口进行维护操作,以减少丢包错包情况的出现。而且不管是在业务主板还是业务备板,数据报文都不经过交换网板转发,不占用接口母板到交换网板之间的带宽,不受接口母板到交换网板之间带宽的限制,从而使得网络设备能够处理的业务流量更大。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建装置中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (15)
1.一种报文转发方法,所述方法应用于网络设备,该网络设备包括接口母板、至少一个业务子卡和至少一个接口子卡,所述业务子卡和所述接口子卡均插接在所述接口母板上,其特征在于,所述方法包括:
所述接口子卡接收数据报文,将所述数据报文传输给所述接口母板;
所述接口母板在预设的引流规则中匹配所述数据报文对应的业务标识;
所述接口母板将所述数据报文转发给所述业务标识对应的业务子卡。
2.根据权利要求1所述的方法,其特征在于,所述接口母板将所述数据报文转发给所述业务标识对应的业务子卡,包括:
所述接口母板根据所述业务标识,从业务标识与端口号的对应关系中获取对应的端口号;
所述接口母板从所述端口号对应的出端口,将所述数据报文转发给所述业务标识对应的业务子卡。
3.根据权利要求1所述的方法,其特征在于,所述接口母板在预设的引流规则中匹配所述数据报文对应的业务标识,包括:
所述接口母板对所述数据报文包括的五元组信息进行哈希运算,得到所述数据报文对应的哈希值;
所述接口母板根据所述哈希值,从预设的引流规则包括的业务标识与报文哈希值的对应关系中,获取所述数据报文对应的业务标识。
4.一种报文转发方法,所述方法应用于网络设备,该网络设备包括业务主板和业务备板,所述业务主板包括第一接口母板、插接在所述第一接口母板上的主业务子卡和第一接口子卡,所述业务备板包括第二接口母板、插接在所述第二接口母板上的备业务子卡和第二接口子卡,所述第一接口子卡与所述第二接口子卡通过堆叠口连接,其特征在于,所述方法包括:
所述第一接口子卡接收数据报文,传输所述数据报文给所述第一接口母板;
在所述主业务子卡正常运行时,所述第一接口母板在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡;
在所述主业务子卡出现故障时,所述第一接口母板将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡;
所述第二接口母板接收所述第二接口子卡发送的所述数据报文,在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡。
5.根据权利要求4所述的方法,其特征在于,所述第一接口母板在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡,包括:
所述第一接口母板根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;
所述第一接口母板从所述组播主表中获取所述数据报文对应的主端口号;
所述第一接口母板通过所述主端口号对应的组播主出端口,将所述数据报文转发给所述主业务子卡。
6.根据权利要求4所述的方法,其特征在于,所述第一接口母板将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡,包括:
所述第一接口母板将自身存储的组播主表包括的主端口号修改为所述堆叠口的标识;
所述第一接口母板根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;
所述第一接口母板从所述组播主表中获取所述堆叠口的标识,发送所述数据报文及所述堆叠口的标识给所述第一接口子卡;
所述第一接口子卡根据所述堆叠口的标识,通过所述堆叠口发送所述数据报文给所述第二接口子卡。
7.根据权利要求4所述的方法,其特征在于,所述第二接口母板在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡,包括:
所述第二接口母板根据所述数据报文和自身存储的第二引流规则,确定所述数据报文对应的组播备表;
所述第二接口母板从所述组播备表中获取所述数据报文对应的备端口号;
所述第二接口母板通过所述备端口号对应的组播备出端口,将所述数据报文转发给所述备业务子卡。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当所述主业务子卡恢复正常运行时,所述第一接口母板将所述组播主表包括的所述堆叠口的标识修改为所述组播主出端口对应的主端口号。
9.根据权利要求4-8任一项所述的方法,其特征在于,所述业务主板还包括第一主控板,所述业务备板还包括第二主控板,所述方法还包括:
所述第一主控板分配组播主表和第一引流规则,并发送所述组播主表及所述第一引流规则给所述第一接口母板;
所述第二主控板分配组播备表及第二引流规则,并发送所述组播备表及所述第二引流规则给所述第二接口母板。
10.根据权利要求4-8任一项所述的方法,其特征在于,所述方法还包括:
所述第二接口子卡接收数据报文,传输所述数据报文给所述第二接口母板;
在所述备业务子卡正常运行时,所述第二接口母板在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡;
在所述备业务子卡出现故障时,所述第二接口母板将所述数据报文经由所述第二接口子卡发送给所述第一接口子卡;所述第一接口母板接收所述第一接口子卡发送的所述数据报文,在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡。
11.一种网络设备,该网络设备包括接口母板、至少一个业务子卡和至少一个接口子卡,所述业务子卡和所述接口子卡均插接在所述接口母板上,其特征在于,包括:
所述接口子卡,用于接收数据报文,将所述数据报文传输给所述接口母板;
所述接口母板,用于在预设的引流规则中匹配所述数据报文对应的业务标识;将所述数据报文转发给所述业务标识对应的业务子卡。
12.根据权利要求11所述的设备,其特征在于,所述接口母板,用于根据所述业务标识,从业务标识与端口号的对应关系中获取对应的端口号;从所述端口号对应的出端口,将所述数据报文转发给所述业务标识对应的业务子卡。
13.一种网络设备,该网络设备包括业务主板和业务备板,所述业务主板包括第一接口母板、插接在所述第一接口母板上的主业务子卡和第一接口子卡,所述业务备板包括第二接口母板、插接在所述第二接口母板上的备业务子卡和第二接口子卡,所述第一接口子卡与所述第二接口子卡通过堆叠口连接,其特征在于,包括:
所述第一接口子卡,用于接收数据报文,传输所述数据报文给所述第一接口母板;
所述第一接口母板,用于在所述主业务子卡正常运行时,在自身存储的第一引流规则中匹配所述数据报文对应的组播主出端口,从所述组播主出端口转发所述数据报文给所述主业务子卡;以及,用于在所述主业务子卡出现故障时,将所述数据报文经由所述第一接口子卡发送给所述第二接口子卡;
所述第二接口母板,用于接收所述第二接口子卡发送的所述数据报文,在自身存储的第二引流规则中匹配所述数据报文对应的组播备出端口,从所述组播备出端口转发所述数据报文给所述备业务子卡。
14.根据权利要求13所述的设备,其特征在于,所述第一接口母板,用于将自身存储的组播主表包括的主端口号修改为所述堆叠口的标识;根据所述数据报文及自身存储的第一引流规则,确定所述数据报文对应的组播主表;从所述组播主表中获取所述堆叠口的标识,发送所述数据报文及所述堆叠口的标识给所述第一接口子卡;
所述第一接口子卡,用于根据所述堆叠口的标识,通过所述堆叠口发送所述数据报文给所述第二接口子卡。
15.根据权利要求13所述的设备,其特征在于,所述第二接口母板,用于根据所述数据报文和自身存储的第二引流规则,确定所述数据报文对应的组播备表;从所述组播备表中获取所述数据报文对应的备端口号;通过所述备端口号对应的组播备出端口,将所述数据报文转发给所述备业务子卡。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910202564.6A CN110011941B (zh) | 2019-03-18 | 2019-03-18 | 一种报文转发方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910202564.6A CN110011941B (zh) | 2019-03-18 | 2019-03-18 | 一种报文转发方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110011941A true CN110011941A (zh) | 2019-07-12 |
CN110011941B CN110011941B (zh) | 2022-01-28 |
Family
ID=67167491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910202564.6A Active CN110011941B (zh) | 2019-03-18 | 2019-03-18 | 一种报文转发方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110011941B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110519079A (zh) * | 2019-08-01 | 2019-11-29 | 新华三大数据技术有限公司 | 一种数据转发方法、装置、网板、网络设备和存储介质 |
CN110673995A (zh) * | 2019-09-24 | 2020-01-10 | 杭州迪普科技股份有限公司 | 一种引流策略配置结果的测试方法、装置及设备 |
CN113992592A (zh) * | 2021-10-27 | 2022-01-28 | 锐捷网络股份有限公司 | 一种报文转发方法、装置、端口引流***及存储介质 |
CN115065614A (zh) * | 2022-06-22 | 2022-09-16 | 杭州云合智网技术有限公司 | Vpws多活的业务连通性的识别方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195816A1 (en) * | 2004-03-03 | 2005-09-08 | Hitachi, Ltd. | Multicast delivery control apparatus and method |
CN102130817A (zh) * | 2010-01-20 | 2011-07-20 | 杭州华三通信技术有限公司 | 堆叠***中保持流量不中断的方法和机框交换机 |
CN103346950A (zh) * | 2013-07-29 | 2013-10-09 | 北京傲天动联技术股份有限公司 | 一种机架式无线控制器用户业务板间负载均摊方法及装置 |
CN103795622A (zh) * | 2014-01-22 | 2014-05-14 | 杭州华三通信技术有限公司 | 一种报文转发方法及其装置 |
-
2019
- 2019-03-18 CN CN201910202564.6A patent/CN110011941B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050195816A1 (en) * | 2004-03-03 | 2005-09-08 | Hitachi, Ltd. | Multicast delivery control apparatus and method |
CN102130817A (zh) * | 2010-01-20 | 2011-07-20 | 杭州华三通信技术有限公司 | 堆叠***中保持流量不中断的方法和机框交换机 |
CN103346950A (zh) * | 2013-07-29 | 2013-10-09 | 北京傲天动联技术股份有限公司 | 一种机架式无线控制器用户业务板间负载均摊方法及装置 |
CN103795622A (zh) * | 2014-01-22 | 2014-05-14 | 杭州华三通信技术有限公司 | 一种报文转发方法及其装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110519079A (zh) * | 2019-08-01 | 2019-11-29 | 新华三大数据技术有限公司 | 一种数据转发方法、装置、网板、网络设备和存储介质 |
CN110673995A (zh) * | 2019-09-24 | 2020-01-10 | 杭州迪普科技股份有限公司 | 一种引流策略配置结果的测试方法、装置及设备 |
CN110673995B (zh) * | 2019-09-24 | 2023-05-26 | 杭州迪普科技股份有限公司 | 一种引流策略配置结果的测试方法、装置及设备 |
CN113992592A (zh) * | 2021-10-27 | 2022-01-28 | 锐捷网络股份有限公司 | 一种报文转发方法、装置、端口引流***及存储介质 |
CN113992592B (zh) * | 2021-10-27 | 2023-11-17 | 锐捷网络股份有限公司 | 一种报文转发方法、装置、端口引流***及存储介质 |
CN115065614A (zh) * | 2022-06-22 | 2022-09-16 | 杭州云合智网技术有限公司 | Vpws多活的业务连通性的识别方法 |
CN115065614B (zh) * | 2022-06-22 | 2023-10-13 | 杭州云合智网技术有限公司 | Vpws多活的业务连通性的识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110011941B (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110011941A (zh) | 一种报文转发方法及设备 | |
US20200225718A1 (en) | Power distribution unit self-identification | |
US9762429B2 (en) | Control protocol encapsulation | |
CN1761240B (zh) | 用于高度可实现性应用的智能集成网络安全设备 | |
CN103210615B (zh) | 闭合环路形成防止***和闭合环路形成防止方法 | |
US8625448B2 (en) | Method and system for validating network traffic classification in a blade server | |
EP2696537A1 (en) | Network system, switch, and connection terminal detection method | |
CA2753747C (en) | Method for operating a node cluster system in a network and node cluster system | |
US10050859B2 (en) | Apparatus for processing network packet using service function chaining and method for controlling the same | |
US20140098822A1 (en) | Port Mirroring at a Network Interface Device | |
CN103401726A (zh) | 网络路径探测方法及装置、*** | |
US10367686B2 (en) | Automatically detecting roles of nodes in layered network topologies | |
EP3720075B1 (en) | Data transmission method and virtual switch | |
CN102255909A (zh) | 监控会话流的方法及装置 | |
US11700297B2 (en) | Device for loading data into computer processing units from a data source | |
CN104660597A (zh) | 三层认证方法、装置及三层认证交换机 | |
CN109005080A (zh) | 一种分布式包转发实现方法、实现***及自动化测试方法 | |
CN104427012A (zh) | 端口协商方法和设备 | |
JP2016181795A (ja) | ネットワークシステム及びネットワーク設定方法 | |
CN103501298B (zh) | 一种不中断业务升级过程中保证链路不断流的方法和设备 | |
KR20130037977A (ko) | 로봇 컴포넌트 관리 장치 및 방법 | |
CN106161249B (zh) | PPPoE报文的处理方法及装置 | |
CN106059724B (zh) | 一种报文传输方法和装置 | |
CN113079128B (zh) | 信息封堵方法、装置、计算设备及计算机存储介质 | |
US20070266127A1 (en) | Internal virtual local area network (lan) |
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 |