CN101656663A - 一种mpls多播报文的转发方法、装置及系统 - Google Patents
一种mpls多播报文的转发方法、装置及系统 Download PDFInfo
- Publication number
- CN101656663A CN101656663A CN200810210837A CN200810210837A CN101656663A CN 101656663 A CN101656663 A CN 101656663A CN 200810210837 A CN200810210837 A CN 200810210837A CN 200810210837 A CN200810210837 A CN 200810210837A CN 101656663 A CN101656663 A CN 101656663A
- Authority
- CN
- China
- Prior art keywords
- label
- information
- message
- address
- label space
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 62
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000012545 processing Methods 0.000 abstract description 4
- 238000013507 mapping Methods 0.000 description 14
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 101100455541 Drosophila melanogaster Lsp2 gene Proteins 0.000 description 4
- 102100039955 Gem-associated protein 6 Human genes 0.000 description 4
- 101000926140 Homo sapiens Gem-associated protein 2 Proteins 0.000 description 4
- 101000886614 Homo sapiens Gem-associated protein 6 Proteins 0.000 description 4
- 101000984710 Homo sapiens Lymphocyte-specific protein 1 Proteins 0.000 description 4
- 101000716750 Homo sapiens Protein SCAF11 Proteins 0.000 description 4
- 101000723833 Homo sapiens Zinc finger E-box-binding homeobox 2 Proteins 0.000 description 4
- 102100027105 Lymphocyte-specific protein 1 Human genes 0.000 description 4
- 102100020876 Protein SCAF11 Human genes 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 101100011863 Arabidopsis thaliana ERD15 gene Proteins 0.000 description 3
- 101100338060 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GTS1 gene Proteins 0.000 description 3
- 241001125929 Trisopterus luscus Species 0.000 description 3
- 230000009191 jumping Effects 0.000 description 3
- 101150020450 lsr2 gene Proteins 0.000 description 3
- 230000005641 tunneling Effects 0.000 description 3
- 102100035587 Distal membrane-arm assembly complex protein 1 Human genes 0.000 description 2
- 102100035589 Distal membrane-arm assembly complex protein 2 Human genes 0.000 description 2
- 101000930299 Homo sapiens Distal membrane-arm assembly complex protein 1 Proteins 0.000 description 2
- 101000930307 Homo sapiens Distal membrane-arm assembly complex protein 2 Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 102100022183 E3 ubiquitin-protein ligase MIB1 Human genes 0.000 description 1
- 101000897488 Homo sapiens Cyclin-D1-binding protein 1 Proteins 0.000 description 1
- 101000805876 Homo sapiens Disco-interacting protein 2 homolog A Proteins 0.000 description 1
- 101000651236 Homo sapiens NCK-interacting protein with SH3 domain Proteins 0.000 description 1
- 101000955093 Homo sapiens WD repeat-containing protein 3 Proteins 0.000 description 1
- OUBMGJOQLXMSNT-UHFFFAOYSA-N N-isopropyl-N'-phenyl-p-phenylenediamine Chemical compound C1=CC(NC(C)C)=CC=C1NC1=CC=CC=C1 OUBMGJOQLXMSNT-UHFFFAOYSA-N 0.000 description 1
- 102100038964 WD repeat-containing protein 3 Human genes 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种MPLS多播报文的转发方法,包括:接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。本发明还提供的相应的转发装置和系统。根据本发明可解决MPLS的多播上游标签分发、邻居标签空间识别问题,并充分利用承载层信息提供一个可以扩展的MPLS多播报文的转发方法,并可有效降低设备的处理复杂性。
Description
技术领域
本发明涉及通信技术领域,具体涉及MPLS多播报文的转发方法、装置及系统。
背景技术
多协议标记交换(MPLS,Multi-Protocol Label Switching)是一种对第三层交换的标记交换技术。它能在开放的通信网上利用标签引导数据高速、高效的传输,能在一个无连接的网络中引入连接模式,减少网络的复杂性,兼容现有各种主流网络技术。在任意链路协议之上采用多协议标签转发MPLS,能承载任意协议数据,能提供优质QoS保证,能支撑更大规模的网络应用,可以替代IP寻址转发的协议载体。它通常工作在链路层协议之上,网络层IP协议之下。
MPLS协议,也能嵌套承载自己,形成标签Stack。实际组网应用中,存在着两层或三层标签的嵌套,一般运用虚拟专网(VPN,Virtual PrivateNetwork)隧道技术。理论上标签可以无穷嵌套,以支持更多的业务应用与扩展。
假如:MPLS包由标签交换路由器(LSR,Label Switch Router)R1发送给另一标签交换路由器LSR R2。如果标签由R2分发,则称为“下游标签分配”,如果标签由R1分发,则称为“上游标签分配”。
在点到多点(P2MP,Point-to-Multipoint)、多点到多点(MP2MP,Multipoint-to-Multipoint)的链路或隧道里传送MPLS多播数据时需要使用“上游标签分配”模式,以借助P2MP、MP2MP链路或隧道的“复制”能力;这就要求使用“邻居标签空间”,所述邻居标签空间用于保存相邻路由器的标签及对应路由信息的存储空间。转发平面就要根据MPLS多播(MC,Multicast)报文中携带的信息确定其标签栈所在的“标签空间”,以进一步处理标签栈。因此,当MPLS多播数据采用上游标签分配时,MPLS标签栈的结构是怎样,以及如何确定“邻居标签空间”。
现有技术提供的一种技术方案如下:
例如,以太网承载MPLS业务时,协议类型Ether type 0x8847用来表示以太网单播携带MPLS单播报文,当然也可以用来表示以太网帧携带MPLS多播报文,但是不能够表示由上游节点分发标签的以太网MPLS多播报文。协议类型Ether type 0x8848用来表示由上游节点分发标签的以太网MPLS多播报文。
在draft-ietf-mpls-multicast-encaps-10.txt协议中提到,当一个LSR在多播以太帧中发送一个MPLS多播报文时,必须设置以太网报文的目的MAC地址为01-00-5e-8v-wx-yz,此处vwxyz(v,w,x,y,z为16进制数,每个为4比特,共20比特)可以设置为“0”或MPLS标签栈中的标签值;
假如,vwxyz设置为“0”且标签值L0(即Label 0)相同,如图1所示,则接收端LSR无法判断报文来自于发送端的哪个LSR。
假如,vwxyz设置为MPLS标签栈中的标签值,那么MPLS标签栈可能包含2层或多层MPLS标签,那么默认的设置vwxyz为第二层标签值。假如,MPLS标签栈只有一层标签,那么vwxyz则设置为第一层标签值。
通过以太网承载MPLS多播业务数据,采用标签值L0区分MPLS多播“邻居标签空间”。
如图1所示,在基于以太网的多协议标记交换MPLS OVER ETH时,R1(网络设备,如LSR)通过二层网络Layer II和R3建立一条LSP1;R2通过二层网络Layer II和R3建立一条LSP2。两条LSP分别基于上游节点R1、R2分发标签。
R1将第二层标签L1复制到目的MAC地址(DMA,Destination MACAddress)的vwxyz(20bit)中;R2将第二层标签L1复制到目的地址MAC地址DMA的vwxyz(20bit)中。由于R1到R3和R2到R3的目的MAC地址都是R3,所以L1的内容都是一样的,所以要靠L0的不同来区分来自哪个节点。R3在接收到两个报文时,通过L0区分“邻居标签空间”,以此判断报文是来自R1节点还是R2节点。
该方案中,R1节点、R2节点的标签分发不确定,因此L0也不具有唯一性;若R1节点分发的第一层标签和R2节点分发的第一层标签值相同,如,皆为L0,那么R3无法区分“邻居标签空间”,即通过第一层标签值Label无法映射出两个不同的“邻居标签空间”,R3无法判断报文来自R1节点还是R2节点。这样会导致R1节点发送的报文和R2节点发送的报文在R3节点只在一条路径上被转发出去。假如,R1节点发送的报文和R2节点发送的报文到R3节点时,转发的路径不相同,那么,R3节点则转发不正确,从而增加L0标识邻居标签空间浪费资源。
现有技术中的另一技术方案如下:
在IP隧道中,假如目的IP地址为多播地址,则这个IP隧道为点到多点隧道,或者多点到多点隧道。此时,L0的20比特作为“邻居标签空间”映射信息。
IP承载MPLS多播,采用L0区分MPLS多播“邻居标签空间”。
在MPLS基于第三层(MPLS OVER IP)时,R1通过网络L2和R3建立一条LSP1;R2通过网络L2和R3建立一条LSP2。两条LSP分别基于上游节点R1、R2分发标签。
R1节点将L0的20bit作为“邻居标签空间”映射信息,R2节点将L0的20bit作为“邻居标签空间”映射信息。R3节点接收到两个报文时,根据Lable0的20bit不同映射信息值来区分“邻居标签空间”,以此判断报文是来自R1节点还是R2节点。但是,由于上游节点R1、R2可能和同一个下游节点建立LSP,因此在分发L0时,可能会分发相同的L0。那么R3无法区分“邻居标签空间”,即通过L0无法映射出两个不同的“邻居标签空间”,R3难以判定报文来自R1节点还是R2节点。这样会导致R1节点发送的报文和R2节点发送的报文在R3节点只在一条路径上被转发出去。假如,R1节点发送的报文和R2节点发送的报文到R3节点时,转发的路径不相同,那么,R3节点则转发不正确,从而增加L0标识邻居标签空间浪费资源。
发明内容
有鉴于此,本发明提供一种MPLS多播报文的转发方法、装置及系统,可实现快速高效的多播数据转发。
本发明实施例提供的一种MPLS多播报文的转发方法,包括:
接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
根据所述地址信息确定标签空间,并查找该标签空间中的转发表;
根据所述标签信息从所述转发表获取报文转发信息;
根据所述报文转发信息发送所述报文。
本发明实施例还提供一种MPLS多播报文的转发装置,包括:
存储单元,包含至少两个标签空间,所述标签空间中存储有转发表;
接收单元,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
查询单元,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;
发送单元,根据所述报文转发信息发送所述报文。
本发明实施例还提供一种MPLS多播报文传输系统,包括至少一个标签交换路由器和转发装置;
所述转发装置,接收至少两个上游节点发送的报文,该报文包含由所述上游节点分配的标签信息和所述上游节点的地址信息;根据所述地址信息从标签空间查找转发表;并根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。
本发明实施例提供的技术方案中,采用上游标签分配方式,根据使用P2MP、MP2MP链路或隧道的“源节点地址”(如IP地址、MAC地址)信息作为映射“邻居标签空间”的上下文,并根据源节点地址”信息划分邻居标签空间,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。可在MP2MP,P2MP网络上解决MPLS的多播上游标签分发、邻居标签空间识别问题,并充分利用承载层信息,提供了一个可以扩展的、通用的MPLS多播报文的转发方法,并可有效降低设备的处理难度。
附图说明
图1为现有技术中的一种MPLS多播报文传输系统示意图;
图2为本发明实施例中含有MPLS标签栈的Ethernet帧结构示意图;
图3为本发明实施例中含有MPLS标签栈的PBT接口帧结构示意图;
图4为本发明实施例中提供的一种MPLS多播报文的转发方法流程图;
图5为本发明实施例中MPLS标签空间划分示意图;
图6为本发明实施例一中提供的MPLS多播报文传输系统示意图;
图7为本发明实施例二中提供的MPLS多播报文传输系统示意图;
图8为本发明实施例三中提供的MPLS多播报文转发装置结构示意图。
具体实施方式
MPLS是一种第三层路由结合第二层属性的交换技术,引入了基于标签的机制,将路由选择和数据转发分开,由标签来规定一个分组通过网络的路径。MPLS网络由核心部分的标签交换路由器(LSR)、边缘部分的标签边缘路由器(LER,Labeled Edge Router)组成。标签交换的工作过程可概括为以下3个步骤:
(1)由标签分布协议(LDP,label distribution protocol)和传统路由协议(OSPF、IS-IS等)一起,在LSR中建立路由转发表和标签映射表,其中路由转发表和标签映射表用于确定路由。
(2)LER接收IP包,完成第三层功能,并给IP包加上标签;在MPLS系统出口的LER上,将分组中的标签去掉后继续进行转发;
(3)LSR对分组不再进行任何第三层处理,只是依据分组上的标签及路由表和标签映射表确定路由后通过交换单元对其进行转发。
MPLS保留了逐跳转发思想,而将基于不同转发体系的链路层指定的本地局部的连接扩展成为端到端的转发机制。MPLS转发数据分组包括:
(a)标签的分配与分发
标签的分配是指定一个标签与转发等价类(FEC,Forwardingequivalence class)绑定,FEC是一组转发行为相同的路由表,其中包括下一跳Next Hop信息,转发路径和出端口信息相同。通常一个FEC分配一个标签与其绑定,然后分发给上游支持MPLS的路由设备。分发则是指将这一绑定通知上游或者下游的过程。
标签的分配方式可以分为上游标签分配、下游标签分配。例如,MPLS包由LSR R1发送给LSR R2。如果标签由R2分发,则为“下游标签分配”,如果标签由R1分发,则为“上游标签分配”。采用下游标签分配时,标签的分发沿着数据流传输的反方向进行,由出口LSR发起分发过程,适合单播应用。采用上游标签分配时,标签的分发沿着数据流传输的方向进行,由入口LSR发起分发过程,适合多播情况。
(b)LSP(标签交换路径)的建立
要建立LSP,每一个LSR需要做如下工作:把数据流分组映射到某个FEC F1,为F1分配未被使用的标签L1(绑定),在本地标签映射表中增加条目(F1,L1);绑定信息通知上游LSR:在本地转发表中增加条目(L1,L2,Pout),L1是入口标签,L2是出口标签,Pout是输出端口。
(c)数据分组在LSP上的传输
LSP建立之后就可以进行数据分组的传输。传输时依靠LSR的两张表:标签映射表和路由转发表。标签映射表存放FEC与分组的映射信息,条目形式是(Fi,Li),Fi是转发等价类,Li是对应的标签;转发表指明某一入口标签对应的出口标签和输出端口,条目形式(Li1,Li2,Pi),Li1是入口标签,Li2是出口标签,Pi是输出端口。
例如:假设LSP已经建立。对一个数据流分组,入口LSR1首先将其映射到合适的FEC F1,然后根据LSR1的标签映射表信息把对应的标签附加在分组头部,接着根据LSR1转发表中的输出口端口Pout把分组发送出去:下游LSR2接收到分组后根据输入分组的标签查找LSR2映射表中的输出标签,进行标签交换,并把数据分组发送到LSR2转发表中指定的输出端口;重复这样的处理直到分组到达出口LSR后,弹出标签,查找出口LSR转发表中的输出端口把数据发送出去。
多播(multicast)主要用于视频会议等应用场合,这种应用需要将一份数据同时发送给多个用户。而多播技术具有带宽利用率高、减轻主机/路由器的负担、避免目的地址不明确所引起的麻烦等优点,从而满足这种应用。
参照图4,本发明实施例提供一种MPLS多播报文的转发方法,包括如下步骤:
S01,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配,标签信息具体包含如图2中所示的L0或L1;
S02,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的路由转发表;
所述标签空间的数量是预先根据所述上游节点数进行划分的,比如,与本节点相邻的上游节点有2个,则将MPLS标签空间划分至少两个标签空间,通常为两个标签空间。以此类推,与本节点相邻的上游节点有N个,则将MPLS标签空间划分N个。
S03,根据所述标签信息从所述转发表获取报文转发信息,所述报文转发信息包括下述至少之一:
标签操作类型、输出端口信息、下一跳地址信息、链路封装类型。
S04,根据所述报文转发信息发送所述报文。
所述上游节点的地址为IP地址或MAC地址。
所述转发表根据所述预先设置并存储。
地址信息与所述标签空间的对应关系预先存储在内容索引地址存储单元(TCAM,Ternary Content Addressable Memory)中,所述确定标签空间,具体包括:
在内容索引地址存储单元TCAM中查找所接收报文的地址信息,并根据所查找到的地址信息确定所对应的标签空间。
在本发明的具体实施例中,使用P2MP、MP2MP链路或隧道的“源节点地址”信息作为映射“邻居标签空间”的上下文。例如,基于以太网Eth、PBB(多协议封装,PBT)使用S-MAC作为“邻居标签空间”映射信息,PBT(Provider Backbone Transport),称为:运营商骨干网桥计数,其基本思想是再用户的二层报文前加上运营商的以太网帧头。如图2所示,为含有MPLS标签栈的Ethernet帧格式,其中,EthType为0x8847/0x8848就标识该帧承载的是MPLS报文;如图3所示,为有MPLS标签栈的PBT接口帧格式;通用路由封装(GRE,Generic Routing Encapsulation)、IP Tunnel使用S-IP作为“邻居标签空间”映射信息;P2MP MPLS Tunel使用Label作为“邻居标签空间”映射信息。下面结合具体实施例进行描述。
通用路由封装GRE是对某些网络层协议(如:IP,IPX,Apple Talk等)的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议(如IP)中传输,报文格式如下:
传输协议头 | GRE头 | 原始数据包 |
链路层协议 |
IP |
GRE |
MPLS、IPX、IP |
IP Tunnel即IP隧道技术,其报文格式:
传输协议头 | IP | MPLS报文 |
MPLS Tunnel即MPLS隧道技术,其报文格式:
传输协议头 | Label标签栈 | Payload |
实施例一
本发明实施例中MPLS多播报文的转发方案中,采用上游标签分配方式。按照RFC3031的定义,使用入标签映射索引ILM(Incoming Label Map)Index,将上游节点分配的标签映射到一组下一跳标签转发表(NHLFE,Next Hop Label Forward Entry)或一项NHLFE,而NHFLE又是转发等价类FEC的映射。从NHFLE中可以得到输出端口信息、下一跳主机、标签操作类型和下一跳标签等等。由于标签Label共20比特,所以,ILM最大为1M空间。首先根据所述上游节点数划分标签空间的数量,本实施例中,与本节点相邻的上游节点有2个,即R1、R2,则将MPLS标签空间划分两个标签空间SP1和SP2,如图5所示:
SP1(地址为0~4K)分配给R1的标签Label进行查找转发;
SP2(地址为4K~1M)分配给R2的标签Label进行查找转发。
分别将源IP地址SIP作为映射“邻居标签空间”的信息,具体地,
参照图6,本发明实施例提供的MPLS多播报文的转发方法,包括如下步骤:
101,以R1、R2为上游节点、R3为下游节点分别建立RI至R3和R2至R3的两条标签交换路径LSP1、LSP2;
102,R1、R2分别发送包含有源IP地址的多播报文给R3;
R1发出的多播报文Packet1包含源IP地址SIP1、目的IP地址DIP1、标签L0-和L1以及有效载荷Payload1,即
SIP1 | DIP1 | L0 | L1 | Payload 1 |
R2发出的多播报文Packet2包含源IP地址SIP2、目的IP地址DIP2、标签L0-和L1以及有效载荷Payload2,即
SIP2 | DIP2 | L0 | L1 | Payload 2 |
103,R3接收到Paket1,Packet2时,由于DIP都为R3,所以R3将对报文标签Label进行进一步分析;
对于R1发送的报文,在R3的标签空间SP1中Label转发信息表(分配给R1,地址为0~4K)的Label进行查找转发信息;
对于R2发送的报文,也在R3的标签空间S2中Label转发信息表中(分配给R2,地址为4K~1M)的Label进行查找转发信息;
另外,若R3中设置有内容索引地址存储器TCAM,这种情况下,R3对接收到的报文后,使用接收到的SIP在TCAM中进行匹配查找,由于Packet1的SIP1、Packet2的SIP2不相同,两个报文的SIP地址在TCAM中匹配到不同的地址,以此来确定标签空间SP1或SP2,具体如下:
对于Packet1的SIP1,通过TCAM的查找,会唯一获取对应的标签空间S1(0~4K);
对于Pakcet2的SIP2,通过TCAM的查找,会唯一获取对应的标签空间S2(4K~1M)。
对于Packet1的Label,先判断标签值是否在SP1空间上(0~4K),对于标签值不在S1上的标签认为为非法标签;对于合法标签,使用Label作为ILM表的查表索引,查询ILM表,得到正确的转发信息;
对于Packet2的Label,先判断标签值是否在SP2空间上(0~(1M-4K)),对于标签值不在SP2上的标签认为为非法标签;对于合法标签,则使用Label加上4K的偏移地址,得到查询ILM表的索引,查询ILM表,得到正确的转发信息;
标签空间明确分开后,若Packet1、Packet2的L0分发相同,Packet1查ILM表的索引为L0本身,而Pakct2查ILM表的索引为L0+4K;
由此可见,通过SIP的唯一性,Packet1和Packet2的Label空间能够正确的区分开。
TCAM匹配的方法,可通过SIP匹配,也可以通过SIP+L0匹配,但SIP为必须匹配的信息;由于SIP+L0作为匹配信息时,占用的TCAM资源较大,因此通常采用SIP作为匹配信息。
实施例二
本实施例与前述实施例一基本相同,其不同之处在于:本实施例的方案中采用源MAC地址来识别判断多播报文是来自于哪个发送端LSR。
参照图7,R1、R2提供网络L2建立RI至R3和R2至R3的两条标签交换路径LSP1、LSP2;R1、R2分别发送多播报文给R3;
R1发出的多播报文Packet1包含源MAC地址SMAC1、目的MAC地址DMAC1、标签L0-和L1以及有效载荷Payload1,即
DMAC1 | SMAC1 | L0 | L1 | Payload 1 |
R2发出的多播报文Packet2包含源MAC地址SMAC2、目的MAC地址DMAC2、标签L0-和L1以及有效载荷Payload2,即
DMAC2 | SMAC2 | L0 | L1 | Payload 2 |
由于Packet1的SMAC1、Packet2的SMAC2不相同,两个报文的SIP地址在TCAM中匹配到不同的地址,以此来确定标签空间SP1或SP2。
实施例三
参照图8,本实施例提供一种MPLS多播报文的转发装置500,包括:
存储单元510,包含至少两个标签空间,所述标签空间中存储有转发表;
所述标签空间的数量是预先根据所述上游节点数进行划分的,比如,与本节点相邻的上游节点有2个,则将MPLS标签空间划分至少两个标签空间,通常为两个标签空间。以此类推,若与本节点的上游节点有N个,则将所述标签空间划分N个。
接收单元520,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
通常,所述上游节点的地址为IP地址或MAC地址。
查询单元530,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息,所述转发信息包括下述至少之一:
标签操作类型、输出端口信息、下一跳地址信息、链路封装类型。;
发送单元540,根据所述报文转发信息发送所述报文。
本发明实施例还提供一种MPLS多播报文传输系统,包括至少一个标签交换路由器和转发装置;
所述转发装置,接收至少两个上游节点发送的报文,该报文包含由所述上游节点分配的标签信息和所述上游节点的地址信息;根据所述地址信息从标签空间查找转发表;并根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。
所述转发装置包括:
存储单元,包含至少两个标签空间,所述标签空间中存储有转发表;
接收单元,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
查询单元,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;
发送单元,根据所述报文转发信息发送所述报文。
更适宜地,所述转发装置与所述标签交换路由器物理上为一体,即所述转发装置克设置在其中一个所述标签交换路由器中。
综上所述,本发明实施例提供的技术方案中,采用采用上游标签分配方式,根据使用P2MP、MP2MP链路或隧道的“源节点地址”(如IP地址、MAC地址)信息作为映射“邻居标签空间”的上下文,并根据源节点地址”信息划分邻居标签空间,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。可在MP2MP,P2MP网络上解决MPLS的多播上游标签分发、邻居标签空间识别问题,并充分利用承载层信息,提供了一个可以扩展的、通用的MPLS多播报文的转发方法,并可有效降低设备的处理难度。
显然,本领域的技术人员应该明白,上述的本发明的各单元或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个单元或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (14)
1、一种MPLS多播报文的转发方法,其特征在于,包括:
接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
根据所述地址信息确定标签空间,并查找所述标签空间中的转发表;
根据所述标签信息从所述转发表获取报文转发信息;
根据所述报文转发信息发送所述报文。
2、如权利要求1所述的转发方法,其特征在于,所述报文转发信息包括下述至少之一:
标签操作类型、输出端口信息、下一跳地址信息、链路封装类型。
3、如权利要求1所述的转发方法,其特征在于,所述上游节点的地址为IP地址或MAC地址。
4、如权利要求1所述的转发方法,其特征在于,所述标签空间的数量是预先根据所述上游节点数进行划分的。
5、如权利要求1所述的转发方法,其特征在于,
所述转发表根据所支持MPLS多播业务信息预先设置并存储。
6、如权利要求1所述的转发方法,其特征在于,所述地址信息与标签空间的对应关系预先存储在内容索引地址存储单元TCAM中,所述确定标签空间,具体包括:
在内容索引地址存储单元TCAM中查找所接收报文的地址信息,并根据所查找到的地址信息确定所对应的标签空间。
7、如权利要求1所述的转发方法,其特征在于,还包括:
根据协议类型区分所述标签信息由所述上游节点分配。
8、一种MPLS多播报文的转发装置,其特征在于,包括:
存储单元,包含至少两个标签空间,所述标签空间中存储有转发表;
接收单元,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
查询单元,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;
发送单元,根据所述报文转发信息发送所述报文。
9、如权利要求8所述的转发装置,其特征在于,所述转发信息包括下述至少之一:
标签操作类型、输出端口信息、下一跳地址信息、链路封装类型。
10、如权利要求8所述的转发装置,其特征在于,所述上游节点的地址为IP地址或MAC地址。
11、如权利要求8所述的转发装置,其特征在于,所述标签空间的数量是预先根据所述上游节点数进行划分的。
12、一种MPLS多播报文传输系统,其特征在于,包括至少一个标签交换路由器和转发装置;
所述转发装置,接收至少两个上游节点发送的报文,该报文包含由所述上游节点分配的标签信息和所述上游节点的地址信息;根据所述地址信息从标签空间查找转发表;并根据所述标签信息从所述转发表获取报文转发信息;根据所述报文转发信息发送所述报文。
13、如权利要求12所述的系统,其特征在于,所述转发装置包括:
存储单元,包含至少两个标签空间,所述标签空间中存储有转发表;
接收单元,接收至少两个上游节点发送的报文,该报文包含标签信息和所述上游节点的地址信息,所述标签信息由所述上游节点分配;
查询单元,根据所接收报文的地址信息确定标签空间,并查找该标签空间中的转发表;根据所述标签信息从所述转发表获取报文转发信息;
发送单元,根据所述报文转发信息发送所述报文。
14、如权利要求12或13所述的系统,其特征在于,
所述的转发装置设置在其中一个所述标签交换路由器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102108373A CN101656663B (zh) | 2008-08-20 | 2008-08-20 | 一种mpls多播报文的转发方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102108373A CN101656663B (zh) | 2008-08-20 | 2008-08-20 | 一种mpls多播报文的转发方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101656663A true CN101656663A (zh) | 2010-02-24 |
CN101656663B CN101656663B (zh) | 2012-07-11 |
Family
ID=41710762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102108373A Expired - Fee Related CN101656663B (zh) | 2008-08-20 | 2008-08-20 | 一种mpls多播报文的转发方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101656663B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102340438A (zh) * | 2010-07-19 | 2012-02-01 | 中兴通讯股份有限公司 | Mpls网络中双向传输报文的方法及系统 |
CN102984065A (zh) * | 2011-09-07 | 2013-03-20 | 盛科网络(苏州)有限公司 | 超接口标签空间的报文处理方法及装置 |
CN103828310A (zh) * | 2013-11-29 | 2014-05-28 | 华为技术有限公司 | 一种链路发现的方法、系统及设备 |
CN103841022A (zh) * | 2014-03-12 | 2014-06-04 | 华为技术有限公司 | 用于建立隧道的方法及装置 |
CN103927135A (zh) * | 2014-04-15 | 2014-07-16 | 华为技术有限公司 | 一种数据存储方法及装置 |
CN104734956A (zh) * | 2012-02-13 | 2015-06-24 | 华为技术有限公司 | 业务路由系统及业务处理的方法、设备 |
CN102340438B (zh) * | 2010-07-19 | 2016-11-30 | 中兴通讯股份有限公司 | Mpls网络中双向传输报文的方法及系统 |
CN107547311A (zh) * | 2017-08-29 | 2018-01-05 | 新华三技术有限公司 | 一种流量统计方法及装置 |
CN109150721A (zh) * | 2017-06-19 | 2019-01-04 | 瞻博网络公司 | 用于在mpls分组上施加标签栈条目的装置、系统和方法 |
WO2020052641A1 (zh) * | 2018-09-13 | 2020-03-19 | 中兴通讯股份有限公司 | 报文的发送方法、绑定关系的通告方法、装置及存储介质 |
CN111431732A (zh) * | 2020-02-11 | 2020-07-17 | 西安交通大学 | 一种对计算机网络数据平面进行增量验证的方法与系统 |
WO2021046689A1 (en) * | 2019-09-09 | 2021-03-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network node for label switched path traceroute |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7570649B2 (en) * | 2005-02-28 | 2009-08-04 | Alcatel Lucent | Forwarding state sharing between multiple traffic paths in a communication network |
CN100440858C (zh) * | 2005-03-04 | 2008-12-03 | 中国人民解放军理工大学 | 一种节约标签提高标签利用效率的部分标签交换方法 |
-
2008
- 2008-08-20 CN CN2008102108373A patent/CN101656663B/zh not_active Expired - Fee Related
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102340438A (zh) * | 2010-07-19 | 2012-02-01 | 中兴通讯股份有限公司 | Mpls网络中双向传输报文的方法及系统 |
CN102340438B (zh) * | 2010-07-19 | 2016-11-30 | 中兴通讯股份有限公司 | Mpls网络中双向传输报文的方法及系统 |
CN102984065A (zh) * | 2011-09-07 | 2013-03-20 | 盛科网络(苏州)有限公司 | 超接口标签空间的报文处理方法及装置 |
CN102984065B (zh) * | 2011-09-07 | 2015-12-16 | 盛科网络(苏州)有限公司 | 超接口标签空间的报文处理方法及装置 |
CN104734956A (zh) * | 2012-02-13 | 2015-06-24 | 华为技术有限公司 | 业务路由系统及业务处理的方法、设备 |
CN103828310A (zh) * | 2013-11-29 | 2014-05-28 | 华为技术有限公司 | 一种链路发现的方法、系统及设备 |
WO2015078008A1 (zh) * | 2013-11-29 | 2015-06-04 | 华为技术有限公司 | 一种链路发现的方法、系统及设备 |
CN103828310B (zh) * | 2013-11-29 | 2017-06-06 | 华为技术有限公司 | 一种链路发现的方法、系统及设备 |
US10374935B2 (en) | 2013-11-29 | 2019-08-06 | Huawei Technologies Co., Ltd. | Link discovery method, system, and device |
CN103841022A (zh) * | 2014-03-12 | 2014-06-04 | 华为技术有限公司 | 用于建立隧道的方法及装置 |
CN103841022B (zh) * | 2014-03-12 | 2017-04-05 | 华为技术有限公司 | 用于建立隧道的方法及装置 |
CN103927135A (zh) * | 2014-04-15 | 2014-07-16 | 华为技术有限公司 | 一种数据存储方法及装置 |
CN109150721A (zh) * | 2017-06-19 | 2019-01-04 | 瞻博网络公司 | 用于在mpls分组上施加标签栈条目的装置、系统和方法 |
CN109150721B (zh) * | 2017-06-19 | 2021-01-15 | 瞻博网络公司 | 用于在mpls分组上施加标签栈条目的装置、系统和方法 |
CN107547311B (zh) * | 2017-08-29 | 2020-04-17 | 新华三技术有限公司 | 一种流量统计方法及装置 |
CN107547311A (zh) * | 2017-08-29 | 2018-01-05 | 新华三技术有限公司 | 一种流量统计方法及装置 |
CN110896379B (zh) * | 2018-09-13 | 2022-11-08 | 中兴通讯股份有限公司 | 报文的发送方法、绑定关系的通告方法、装置及存储介质 |
CN110896379A (zh) * | 2018-09-13 | 2020-03-20 | 中兴通讯股份有限公司 | 报文的发送方法、绑定关系的通告方法、装置及存储介质 |
WO2020052641A1 (zh) * | 2018-09-13 | 2020-03-19 | 中兴通讯股份有限公司 | 报文的发送方法、绑定关系的通告方法、装置及存储介质 |
US11671352B2 (en) | 2018-09-13 | 2023-06-06 | Zte Corporation | Message sending method, binding relationship advertising method, apparatus, and storage medium |
WO2021046689A1 (en) * | 2019-09-09 | 2021-03-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network node for label switched path traceroute |
CN114342334A (zh) * | 2019-09-09 | 2022-04-12 | 瑞典爱立信有限公司 | 用于标签交换路径路由跟踪的方法和网络节点 |
CN114342334B (zh) * | 2019-09-09 | 2024-03-12 | 瑞典爱立信有限公司 | 用于标签交换路径路由跟踪的方法和网络节点 |
US11949591B2 (en) | 2019-09-09 | 2024-04-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network node for label switched path traceroute |
CN111431732A (zh) * | 2020-02-11 | 2020-07-17 | 西安交通大学 | 一种对计算机网络数据平面进行增量验证的方法与系统 |
CN111431732B (zh) * | 2020-02-11 | 2021-04-20 | 西安交通大学 | 一种对计算机网络数据平面进行增量验证的方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101656663B (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101656663B (zh) | 一种mpls多播报文的转发方法、装置及系统 | |
CN110912795B (zh) | 一种传输控制方法、节点、网络系统及存储介质 | |
US10616063B1 (en) | Stateless multicast in IP networks | |
EP3767881B1 (en) | Maximally redundant trees to redundant multicast source nodes for multicast protection | |
CN101120552B (zh) | 利用服务标签的mpls的环路防止方法以及网络节点 | |
US9860163B2 (en) | MPLS traffic engineering for point-to-multipoint label switched paths | |
US7126949B2 (en) | Source identifier for MAC address learning | |
US8547976B2 (en) | Upstream label allocation on Ethernets for MP2MP LSPS | |
CN1992676B (zh) | 在通信网络中多个业务路径之间共享转发状态的方法和设备 | |
US20200120020A1 (en) | Stateless multicast in label switched packet networks | |
CN100542127C (zh) | 一种基于多业务传输平台的组播实现方法 | |
CN100481817C (zh) | 一种基于ip/mpls/bgp的多域组播一体化数据分发结构及方法 | |
CN112491729A (zh) | 一种数据处理方法、装置、存储介质及电子装置 | |
KR102245989B1 (ko) | 가상사설망의 이중화 관리 방법 및 그 방법이 구현된 네트워크 스위칭장치 | |
WO2017177756A1 (zh) | 一种信息传递方法、装置及系统 | |
US7450578B2 (en) | Method of addressing and routing data | |
US12021734B2 (en) | Network-topology discovery using packet headers | |
KR100636273B1 (ko) | 이더넷을 통한 mpls 멀티캐스트 패킷 전송 장치 및 방법 | |
CN108667731A (zh) | 一种基于bier信息的处理及装置 | |
CN114520762B (zh) | BIERv6报文的发送方法以及第一网络设备 | |
KR20030031032A (ko) | 멀티 프로토콜 레이블 교환망에서 가상 사설망 서비스제공자를 위한 레이블 값 생성 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120711 |