CN108259293B - 一种报文转发方法及装置 - Google Patents
一种报文转发方法及装置 Download PDFInfo
- Publication number
- CN108259293B CN108259293B CN201710113608.9A CN201710113608A CN108259293B CN 108259293 B CN108259293 B CN 108259293B CN 201710113608 A CN201710113608 A CN 201710113608A CN 108259293 B CN108259293 B CN 108259293B
- Authority
- CN
- China
- Prior art keywords
- forwarding
- message
- tunnel
- target
- index
- 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.)
- Active
Links
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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- 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/54—Organization of routing tables
-
- 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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种报文转发方法及装置,该方法包括:当接收到报文,且根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。应用本发明实施例可以在现有转发芯片性能的基础上,使转发芯片能够实现CBTS功能。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种报文转发方法及装置。
背景技术
CBTS(Class-of-service Base on Tunnel Selection基于隧道选择的服务等级分类)是一种基于服务分类的隧道选择技术,当存在多条MPLS(Multiprotocol LabelSwitching,多协议标签交换)TE(Traffic Engineering,流量工程)隧道时,给每个隧道配置不同的优先级,确保不同优先级的流量走对应优先级的隧道转发。
实践发现,单独使用现有交换机中的转发芯片,如PP(Packet Process,交换机上使用的转发芯片)转发芯片,受芯片资源限制,很难实现CBTS功能。
发明内容
本发明的目的在于提供一种报文转发方法,以解决现有技术中PP转发芯片由于资源限制而无法实现CBTS功能的问题。
为实现上述目的,本发明提供一种报文转发方法,包括:
当接收到报文,且根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,所述转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,所述多个不同优先级隧道的对端设备为同一设备;
当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;
根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。
为实现上述目的,本发明还提供一种报文转发装置,包括:
接收单元,用于接收报文;
查询单元,用于当所述接收单元接收到报文时,根据所述报文的目的地址信息在转发芯片中查询对应的路由表项;
所述查询单元,还用于当根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,所述转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,所述多个不同优先级隧道的对端设备为同一设备;
确定单元,用于当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;
报文转发单元,用于根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。
应用本发明实施例,当接收到报文,且根据该报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据该报文的目的地址信息查询辅助路由查找引擎中的转发表项;当根据报文的目的地址信息在辅助路由查找引擎中查询到对应的目标转发表项时,根据该报文与辅助路由查找引擎中的ACL表项的匹配结果确定目标转发表项中与报文对应的目标隧道转发索引;根据该目标隧道转发索引对报文进行隧道封装,并将封装后的报文通过与目标隧道转发索引对应的隧道进行转发,从而,在现有转发芯片性能的基础上,使转发芯片能够实现CBTS功能。
附图说明
图1是本发明实施例提供的一种报文转发方法的流程示意图;
图2A是本发明实施例提供一种具体应用场景的架构示意图;
图2B是图2A所示应用场景中报文处理流程图;
图2C是图2A所示应用场景中辅助路由查找引擎的报文处理流程图;
图3是本发明实施例提供的一种报文转发装置的结构示意图;
图4是本发明实施例提供的另一种报文转发装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图1,为本发明实施例提供的一种报文转发方法的流程示意图,如图1所示,该方法可以包括以下步骤:
需要说明的是,步骤101~步骤103的执行主体可以为支持CBTS技术,且具有报文转发功能的网络通信设备,该网络通信设备的转发芯片支持外接辅助路由查找引擎,为便于描述,以下以步骤101~步骤104的执行主体为交换机为例进行说明。
步骤101、当接收到报文,且根据报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,该转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,该多个不同优先级隧道的对端设备为同一设备。
本发明实施例中,考虑到交换机的转发芯片资源限制,可以将CBTS隧道的转发表项信息保存在交换机的转发芯片外接的辅助路由查找引擎,通过辅助路由查找引擎确定需要经过CBTS隧道转发的流量的下一跳信息,并由交换机的转发芯片根据辅助路由查找引擎确定的下一跳信息对报文进行封装以及转发。
相应地,在本发明实施例中,当交换机接收到报文时,交换机可以先根据报文的目的地址信息,如目的IP(Internet Protocol,互联网协议)地址,在转发芯片(如PP转发芯片)中查询对应的路由表项,若未查询到对应的路由表项,则交换机可以认为该报文需要通过CBTS隧道转发,此时,交换机可以根据该报文的目的地址信息查询辅助路由查找引擎中的转发表项。
其中,辅助路由查找引擎中的转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,该多个不同优先级隧道的对端设备为同一设备。
具体地,在本发明实施例中,每一个CBTS隧道都可以包括多个不同优先级的隧道,一个CBTS隧道对应辅助路由查找引擎中的一个转发表项,一个转发表项可以包括多个条目,各条目分别对应该CBTS隧道包括的多个不同优先级的隧道。
步骤102、当根据报文的目的地址信息在辅助路由查找引擎中查询到对应的目标转发表项时,根据报文与辅助路由查找引擎中的ACL表项的匹配结果确定目标转发表项中与报文对应的目标隧道转发索引。
本发明实施例中,当交换机根据接收到的报文的目的地址信息在辅助路由查找引擎中查询到对应的转发表项(本文中称为目标转发表项)时,交换机需要进一步根据该报文查询辅助路由查找引擎中的ACL(Access Control List,访问控制列表)表项,以确定该报文具体需要通过该转发表项中的哪一个优先级的隧道进行转发。
具体地,在本发明实施例中,考虑到辅助路由查找引擎中各转发表项中会包括多个不同优先级的隧道,因此,可以根据需求预先在辅助路由查找引擎中下发ACL表项,该ACL表项的匹配项可以为报文的源IP地址、目的IP地址、源端口、目的端口以及优先级信息中的一个或多个,动作项可以为将与匹配项匹配的报文通过对应优先级的隧道进行转发。从而,可以从不同维度对报文的转发进行控制。
举例来说,辅助路由查找引擎中的ACL表项的匹配项可以为报文的源IP地址,从而,对于需要经过CBTS隧道进行转发的报文,交换机可以根据报文与ACL表项的匹配情况,将源IP地址不同的报文从不同优先级的隧道进行转发。
又举例来说,辅助路由查找引擎中的ACL表项的匹配项可以为报文的优先级信息,如DSCP(Differentiated Services Code Point,差分服务代码点),从而,对于需要经过CBTS隧道进行转发的报文,交换机可以根据报文与ACL表项的匹配情况,将DSCP不同的报文从不同优先级的隧道进行转发。
作为一种可选的实施方式,在本发明实施例中,根据报文与辅助路由查找引擎中的ACL表项的匹配结果确定报文对应的目标隧道转发索引,可以包括:
根据报文的源IP地址、目的IP地址、源端口号、目的端口号以及优先级信息中的一个或多个查询辅助路由查找引擎中的ACL表项;
当辅助路由引擎中存在与该报文匹配的ACL表项时,根据该ACL表项指示的偏移量从目标转发表项中确定报文对应的目标隧道转发索引。
在该实施方式中,辅助路由查找引擎中各转发表项可以包括多个条目,各条目分别对应不同优先级的隧道的转发索引。
当交换机根据报文的目的地址信息在辅助路由查找引擎中查询到对应的转发表项时,交换机可以进一步根据报文的源IP地址、目的IP地址、源端口号、目的端口号以及优先级信息中的一个或多个查询辅助路由查找引擎中的ACL表项。
其中,当ACL表项的匹配项为源IP地址时,交换机根据报文的源IP地址进行ACL表项匹配;当ACL表项的匹配项为源IP地址和目的IP地址时,交换机根据报文的源IP地址和目的IP地址进行ACL表项匹配,依次类推。
在该实施方式中,当交换机在辅助路由查找引擎中查询到与接收到的报文匹配的ACL表项时,交换机可以根据该ACL表项指示的偏移量从目标转发表项中确定报文对应的隧道转发索引(本文中称为目标隧道转发索引)。
举例来说,假设辅助路由查找引擎中每个转发表项包括8个条目(条目1~条目8,每个条目保存一个隧道的转发索引信息),其对应的偏移量分别为0~7,当交换机根据接收到的报文的目的地址信息在辅助路由查找引擎中查询到对应的目标转发表项,且辅助路由查找引擎中与该报文匹配的ACL表项的动作项中的偏移量为3,则交换机可以将目标转发表项的条目4中保存的隧道转发索引确定为目标隧道转发索引。
进一步地,在该实施方式中,当辅助路由查找引擎中不存在与该报文匹配的ACL表项时,将目标转发表项中的缺省隧道的转发索引确定为报文对应的目标隧道转发索引。
在该实施方式中,对于任一CBTS隧道,可以预先设置一个缺省隧道,该缺省隧道可以为该CBTS隧道中包括的多个不同优先级隧道中的任意一个,也可以是该多个不同优先级隧道之外的另一个隧道。
例如,假设一个CBTS隧道包括8个不同的隧道,则8个不同的隧道可以包括8个不同优先级的隧道,该8个不同优先级的隧道中包括1个缺省隧道;或者,该8个不同的隧道可以包括1个缺省隧道,以及7个不同优先级的隧道。
相应地,在该实施方式中,当交换机根据接收到的报文的目的地址信息在辅助查找路由引擎中查询到对应的转发表项(即目标转发表项),但是在辅助路由查找引擎中未查询到与接收到的报文匹配的ACL表项时,交换机可以将目标转发表项中的缺省隧道的转发索引确定为该报文对应的目标隧道转发索引,即交换机可以通过目标转发表项中的缺省隧道转发该报文。
应该认识到,在本发明实施例中,上述通过缺省隧道转发查询到对应的目标转发表项但是不存在匹配的ACL表项的报文的处理方式仅仅是本发明实施例中对查询到对应的目标转发表项但是不存在匹配的ACL表项的报文的一种具体处理方式,而不是对本发明保护范围的限定,即在本发明实施例中,对于查询到对应的目标转发表项但是不存在匹配的ACL表项的报文,也可以通过其它处理方式进行处理,如直接丢弃,或使用目标转发表项中优先级最低的隧道进行转发(即将目标转发表项中优先级最低的隧道对应的隧道转发索引确定为该报文对应的目标隧道转发索引)等,其具体实现在此不做赘述。
此外,在本发明实施例中,当交换机根据接收到的报文在辅助路由查找引擎中未查询到对应的转发表项时,交换机可以不对该报文进行响应,如直接将该报文丢弃。
步骤103、根据目标隧道转发索引对报文进行隧道封装,并将封装后的报文通过与该目标隧道转发索引对应的隧道进行转发。
本发明实施例中,交换机在辅助路由查找引擎中确定了接收到的报文对应的目标隧道转发索引之后,即确定了通过哪一个隧道转发接收到的报文之后,可以根据该目标隧道转发索引对该报文进行隧道封装,并将封装后的报文通过与该目标隧道转发索引对应的隧道进行转发。
在本发明其中一个实施例中,上述根据目标隧道转发索引对报文进行隧道封装,可以包括:
当目标隧道转发索引包括多个等价隧道的转发索引时,从该多个等价隧道的转发索引中选择一个转发索引,并根据该转发索引对报文进行隧道封装。
在该实施例中,辅助路由查找引擎中的转发表项中各不同优先级隧道的转发索引可以为单个隧道的转发索引,也可以为多个等价隧道的转发索引。
相应地,当交换机在辅助路由查找引擎查询到的报文对应的目标隧道转发索引包括多个等价隧道的转发索引时,交换机在通过转发芯片对该报文进行隧道封装时,可以从该多个等价隧道的转发索引中选择一个转发索引,并根据所选择的转发索引对报文进行隧道封装。
其中,交换机可以随机从多个等价隧道的转发索引中选择一个转发索引,或者,可以依次选择各等价隧道的转发索引,或者,可以利用hash(散列)算法从多个等价隧道的转发索引中选择一个转发索引,其具体实现在此不做赘述。
进一步地,在本发明实施例中,为了避免由于隧道由于链路故障等原因不可用导致报文转发中断,当CBTS隧道中某一优先级的隧道不可用时,交换机可以将需要通过该隧道转发的报文,通过该CBTS隧道中可用且优先级最低的隧道转发。
相应地,在本发明实施例中,当交换机接收到的报文对应的隧道转发索引对应的隧道不可用时,将目标转发表项中优先级最低的可用隧道的转发索引确定为该报文对应的目标隧道转发索引。
举例来说,假设目标转发表项中包括8个条目,分别保存了优先级1~8的8个隧道的转发索引,当交换机检测到优先级3的隧道不可用时,交换机可以将目标转发表项中的第3个条目中的隧道转发索引更新为优先级1的隧道的转发索引,进而,在优先级3的隧道不可用之后,需要通过优先级3的隧道转发的报文变为通过优先级1的隧道转发,避免了由于隧道不可用导致的报文转发中断。
可见,在图1所示的方法流程中,通过在转发芯片上外接辅助路由查找引擎,并将CBTS隧道的转发信息存储在辅助路由查找引擎上,对于需要通过CBTS隧道转发的流量,由辅助路由查找引擎确定该流量转发的下一跳索引信息,从而,转发芯片可以根据辅助路由查找引擎确定的下一跳索引信息对报文进行封装及转发,在现有转发芯片性能的基础上,使转发芯片能够支持CBTS功能。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体应用场景对本发明实施例提供的技术方案进行描述。
请参见图2A,为本发明实施例提供的一种具体应用场景的架构示意图,如图2A所示,在该应用场景中,PE(Provider Edge,服务提供商网络边缘)1和PE2之间存在8个优先级不同的TE(Traffic Engineering,流量工程)隧道,每个优先级的TE隧道包括3个等价隧道。其中,PE2的IP地址为192.1.1.1,PE1的使用PP转发芯片,且PE1的PP转发芯片外接有辅助路由查找引擎,PE1与PE2之间的TE隧道的转发信息保存在辅助路由查找引擎中。
基于图2A所示的应用场景,本发明实施例提供的报文转发流程如下:
1、当PE1的转发芯片接收到报文时,根据报文的目的IP地址查询本地的路由表;
假设该报文的目的IP地址为192.1.1.1,由于PE1与PE2之间的TE隧道的转发信息保存在辅助路由查找引擎中,因此,PE1的转发芯片将查询不到对应的路由表项;
2、当PE1的转发芯片在本地路由表中未查询到与该报文的目的IP地址对应的路由表项时,PE1的转发芯片将该报文转发至辅助路由查找引擎;
3、PE1的辅助路由查找引擎接收到报文时,根据报文的目的IP地址查找转发表项,发现存在对应的转发表项,该转发表项中包括8个条目,分别对应PE1与PE2之间的8个优先级的TE隧道;
4、PE1的辅助路由查找引擎根据报文的DSCP字段的值进行ACL匹配,发现存在匹配的ACL表项,假设该ACL表项指示的偏移量为3,则PE1的辅助路由查找引擎可以将该报文的目的IP地址对应的转发表项中的条目4中保存的隧道转发索引(即优先级4的TE隧道的转发索引,即图2C所示的TE隧道4转发索引)确定为该报文对应的目标隧道转发索引,并将其发送给PE1的转发芯片;
5、PE1的转发芯片接收到辅助路由查找引擎返回的目标隧道转发索引(即优先级4的TE隧道的转发索引)时,由于优先级4的TE隧道的包括3个等价隧道,因此,PE1的转发芯片可以通过hash算法从中选择一个隧道,并根据该隧道的转发索引对该报文进行隧道封装,并将封装后的报文通过该隧道转发;其中,报文在PE1的转发芯片以及辅助路由查找引擎中的处理流程可以参见图2B,PE1的辅助路由查找引擎对报文的处理流程可以参见图2C。
通过以上描述可以看出,在本发明实施例提供的技术方案中,当接收到报文,且根据该报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据该报文的目的地址信息查询辅助路由查找引擎中的转发表项;当根据报文的目的地址信息在辅助路由查找引擎中查询到对应的目标转发表项时,根据该报文与辅助路由查找引擎中的ACL表项的匹配结果确定目标转发表项中与报文对应的目标隧道转发索引;根据该目标隧道转发索引对报文进行隧道封装,并将封装后的报文通过与目标隧道转发索引对应的隧道进行转发,从而,在现有转发芯片性能的基础上,使转发芯片能够实现CBTS功能。
请参见图3,为本发明实施例提供的一种报文转发装置结构示意图,其中,该装置可以由应用于上述方法实施例中的网络通信设备,如图3所示,该装置可以包括:
接收单元310,用于接收报文;
查询单元320,用于当所述接收单元接收到报文时,根据所述报文的目的地址信息在转发芯片中查询对应的路由表项;
所述查询单元320,还用于当根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,所述转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,所述多个不同优先级隧道的对端设备为同一设备;
确定单元330,用于当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;
报文转发单元340,用于根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。
请一并参见图4,为本发明实施例提供的另一种报文转发装置的结构示意图,如图4所示,在图3所示报文转发装置的基础上,图4所示的报文转发装置中,所述确定单元330,包括:
查询子单元331,用于根据所述报文的源互联网协议IP地址、目的IP地址、源端口号、目的端口号以及优先级信息中的一个或多个查询所述辅助路由查找引擎中的ACL表项;
确定子单元332,用于当所述辅助路由查找引擎中存在与所述报文匹配的ACL表项时,根据该ACL表项指示的偏移量从所述目标转发表项中确定所述报文对应的目标隧道转发索引。
在可选实施例中,所述确定子单元332,还用于当所述辅助路由查找引擎中不存在与所述报文匹配的ACL表项时,将所述目标转发表项中的缺省隧道的转发索引确定为所述报文对应的目标隧道转发索引。
在可选实施例中,所述报文转发单元340,用于当所述目标隧道转发索引包括多个等价隧道的转发索引时,从所述多个等价隧道的转发索引中选择一个转发索引,并根据该转发索引对所述报文进行隧道封装。
在可选实施例中,所述确定单元330,还用于当所述目标转发表项中与所述报文对应的隧道转发索引对应的隧道不可用时,将所述目标转发表项中优先级最低的可用隧道的转发索引确定为与所述报文对应的目标隧道转发索引。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,当接收到报文,且根据该报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据该报文的目的地址信息查询辅助路由查找引擎中的转发表项;当根据报文的目的地址信息在辅助路由查找引擎中查询到对应的目标转发表项时,根据该报文与辅助路由查找引擎中的ACL表项的匹配结果确定目标转发表项中与报文对应的目标隧道转发索引;根据该目标隧道转发索引对报文进行隧道封装,并将封装后的报文通过与目标隧道转发索引对应的隧道进行转发,从而,在现有转发芯片性能的基础上,使转发芯片能够实现CBTS功能。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种报文转发方法,其特征在于,包括:
当接收到报文,且根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,所述转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,所述多个不同优先级隧道的对端设备为同一设备;
当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;
根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。
2.根据权利要求1所述的方法,其特征在于,所述根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述报文对应的目标隧道转发索引,包括:
根据所述报文的源互联网协议IP地址、目的IP地址、源端口号、目的端口号以及优先级信息中的一个或多个查询所述辅助路由查找引擎中的ACL表项;
当所述辅助路由查找引擎中存在与所述报文匹配的ACL表项时,根据该ACL表项指示的偏移量从所述目标转发表项中确定所述报文对应的目标隧道转发索引。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述辅助路由查找引擎中不存在与所述报文匹配的ACL表项时,将所述目标转发表项中的缺省隧道的转发索引确定为所述报文对应的目标隧道转发索引。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标隧道转发索引对所述报文进行隧道封装,包括:
当所述目标隧道转发索引包括多个等价隧道的转发索引时,从所述多个等价隧道的转发索引中选择一个转发索引,并根据该转发索引对所述报文进行隧道封装。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述目标转发表项中与所述报文对应的隧道转发索引对应的隧道不可用时,将所述目标转发表项中优先级最低的可用隧道的转发索引确定为与所述报文对应的目标隧道转发索引。
6.一种报文转发装置,其特征在于,包括:
接收单元,用于接收报文;
查询单元,用于当所述接收单元接收到报文时,根据所述报文的目的地址信息在转发芯片中查询对应的路由表项;
所述查询单元,还用于当根据所述报文的目的地址信息在转发芯片中未查询到对应的路由表项时,根据所述报文的目的地址信息查询辅助路由查找引擎中的转发表项;其中,所述转发表项用于保存报文转发下一跳的索引信息,且一个转发表项包括多个不同优先级隧道的转发索引,所述多个不同优先级隧道的对端设备为同一设备;
确定单元,用于当根据所述报文的目的地址信息在所述辅助路由查找引擎中查询到对应的目标转发表项时,根据所述报文与所述辅助路由查找引擎中的访问控制策略ACL表项的匹配结果确定所述目标转发表项中与所述报文对应的目标隧道转发索引;
报文转发单元,用于根据所述目标隧道转发索引对所述报文进行隧道封装,并将封装后的报文通过与所述目标隧道转发索引对应的隧道进行转发。
7.根据权利要求6所述的装置,其特征在于,所述确定单元,包括:
查询子单元,用于根据所述报文的源互联网协议IP地址、目的IP地址、源端口号、目的端口号以及优先级信息中的一个或多个查询所述辅助路由查找引擎中的ACL表项;
确定子单元,用于当所述辅助路由查找引擎中存在与所述报文匹配的ACL表项时,根据该ACL表项指示的偏移量从所述目标转发表项中确定所述报文对应的目标隧道转发索引。
8.根据权利要求7所述的装置,其特征在于,
所述确定子单元,还用于当所述辅助路由查找引擎中不存在与所述报文匹配的ACL表项时,将所述目标转发表项中的缺省隧道的转发索引确定为所述报文对应的目标隧道转发索引。
9.根据权利要求6所述的装置,其特征在于,
所述报文转发单元,用于当所述目标隧道转发索引包括多个等价隧道的转发索引时,从所述多个等价隧道的转发索引中选择一个转发索引,并根据该转发索引对所述报文进行隧道封装。
10.根据权利要求6所述的装置,其特征在于,
所述确定单元,还用于当所述目标转发表项中与所述报文对应的隧道转发索引对应的隧道不可用时,将所述目标转发表项中优先级最低的可用隧道的转发索引确定为与所述报文对应的目标隧道转发索引。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710113608.9A CN108259293B (zh) | 2017-02-28 | 2017-02-28 | 一种报文转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710113608.9A CN108259293B (zh) | 2017-02-28 | 2017-02-28 | 一种报文转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259293A CN108259293A (zh) | 2018-07-06 |
CN108259293B true CN108259293B (zh) | 2020-11-06 |
Family
ID=62721752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710113608.9A Active CN108259293B (zh) | 2017-02-28 | 2017-02-28 | 一种报文转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259293B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110855568B (zh) * | 2019-11-22 | 2022-02-22 | 迈普通信技术股份有限公司 | 报文转发方法及系统 |
CN111950000B (zh) * | 2020-07-30 | 2022-10-21 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
CN114157436A (zh) * | 2020-08-17 | 2022-03-08 | 迈普通信技术股份有限公司 | 报文过滤方法、装置、网络设备及计算机可读存储介质 |
CN112565091A (zh) * | 2020-11-18 | 2021-03-26 | 普联国际有限公司 | 一种报文转发方法、装置、存储介质及终端设备 |
CN114338528B (zh) * | 2021-12-23 | 2023-06-16 | 锐捷网络股份有限公司 | 一种表项的查询方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207546A (zh) * | 2006-12-18 | 2008-06-25 | 华为技术有限公司 | 一种动态建立隧道的方法、隧道服务器和系统 |
CN101695047A (zh) * | 2009-10-26 | 2010-04-14 | 中兴通讯股份有限公司 | 一种实现动态隧道报文转发的方法及交换机 |
CN102035727A (zh) * | 2010-11-17 | 2011-04-27 | 杭州华三通信技术有限公司 | 一种路由的处理方法和设备 |
CN102932254A (zh) * | 2012-11-19 | 2013-02-13 | 杭州华三通信技术有限公司 | 报文转发方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009111437A (ja) * | 2007-10-26 | 2009-05-21 | Hitachi Ltd | ネットワークシステム |
-
2017
- 2017-02-28 CN CN201710113608.9A patent/CN108259293B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207546A (zh) * | 2006-12-18 | 2008-06-25 | 华为技术有限公司 | 一种动态建立隧道的方法、隧道服务器和系统 |
CN101695047A (zh) * | 2009-10-26 | 2010-04-14 | 中兴通讯股份有限公司 | 一种实现动态隧道报文转发的方法及交换机 |
CN102035727A (zh) * | 2010-11-17 | 2011-04-27 | 杭州华三通信技术有限公司 | 一种路由的处理方法和设备 |
CN102932254A (zh) * | 2012-11-19 | 2013-02-13 | 杭州华三通信技术有限公司 | 报文转发方法及装置 |
Non-Patent Citations (1)
Title |
---|
《一种基于IPv6的物联网分布式源地址验证方案》;胡光武等;《计算机学报》;20120315;第35卷(第3期);第518-528页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108259293A (zh) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259293B (zh) | 一种报文转发方法及装置 | |
EP3240247B1 (en) | Egress peer engineering using ipv4-mapped ipv6 addresses | |
US8416775B2 (en) | Systems and methods for equal-cost multi-path virtual private LAN service | |
EP3319278A1 (en) | Method and apparatus for implementing service function chain | |
EP3086510B1 (en) | Service chain management method, system and device | |
US7885259B2 (en) | Deterministic multiprotocol label switching (MPLS) labels | |
US10461958B2 (en) | Packet transmission method and apparatus | |
CN112087386B (zh) | 一种报文处理的方法、设备和系统 | |
US20120215933A1 (en) | Method for performing dynamic tunnel message forwarding and switch thereof | |
CN104380673A (zh) | 用于在IPv6网络中使用标签分发协议(LDP)实例的系统和方法 | |
EP2961117A1 (en) | Method, device and system for establishing label switched path | |
US9912598B2 (en) | Techniques for decreasing multiprotocol label switching entropy label overhead | |
US10009274B2 (en) | Device and method for collapsed forwarding | |
CN106130821B (zh) | 一种检测报文的发送方法及装置 | |
US10826822B2 (en) | Label-based forwarding with enhanced scalability | |
EP3343847B1 (en) | Performing a service on a packet | |
US11909629B2 (en) | Seamless segment routing for multiprotocol label switching (MPLS) interworking | |
CN109039891B (zh) | 等价路径管理方法、装置、通信设备及存储介质 | |
US20230412503A1 (en) | Determining unicast addresses of gateway network devices associated with an anycast address in vxlan-evpn dci environments | |
KR101952187B1 (ko) | 서비스 노드 능력 처리 방법, 장치, 서비스 분류기 및 서비스 제어기 | |
US8208404B1 (en) | Pseudowire establishment to sites across autonomous systems with overlapping customer site ID space | |
US9742670B2 (en) | Non-eligible distance vector protocol paths as backup paths | |
US20240187335A1 (en) | Seamless segment routing for multiprotocol label switching (mpls) interworking | |
US11411866B1 (en) | Supporting multiple segment routing traffic engineering algorithms |
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 |