mpls学习知识点总结.doc_第1页
mpls学习知识点总结.doc_第2页
mpls学习知识点总结.doc_第3页
mpls学习知识点总结.doc_第4页
mpls学习知识点总结.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MPLS基本概念1. 转发等价类FEC(Forwarding Equivalence Class,转发等价类)是MPLS中的一个重要概念。MPLS是一种分类转发技术,它将具有相同特征(目的地相同一般都是按目的地址来区分FEC或具有相同服务等级也就是报文中的EXP字段等)的报文归为一类,称为FEC。属于相同FEC的报文在MPLS网络中将获得完全相同的处理。目前设备只支持根据报文的网络层目的地址划分FEC。2. 标签标签是一个长度固定、只具有本地意义的标识符,用于唯一在后面会讲到标签和FEC的绑定,所以说唯一标识一个报文所属的FEC。一个标签只能代表一个FEC。图1-1 标签的封装结构如图1-1所示,标签封装在链路层报头和网络层报头之间的一个垫层中。标签长度为4个字节,由以下四个字段组成:Label:标签值,长度为20bits,用来标识一个FEC。Exp:3bits,保留,协议中没有明确规定,通常用作服务等级。S:1bit,MPLS支持多重标签。值为1时表示为最底层标签。TTL:8bits,和IP报文中的TTL意义相同,可以用来防止因环路而产生的无限传播。3. 标签交换路由器LSR(Label Switching Router,标签交换路由器)是具有标签分发能力和标签交换能力的设备,是MPLS网络中的基本元素。4. 标签边缘路由器位于MPLS网络边缘、连接其他网络的LSR称为LER(Label Edge Router,标签边缘路由器)。5. 标签交换路径属于同一个FEC的报文在MPLS网络中经过的路径称为LSP(Label Switched Path,标签交换路径)。LSP是从MPLS网络的入口到出口的一条单向路径LSP是针对数据传播而言的概念. 例如: 如果数据只是从LSR A传到LSR C, 那么对应的LSP就是A-B-C这一整条路径.。在一条LSP上,沿数据传送的方向,相邻的LSR分别称为上游LSR和下游LSR这个上游和下游是按照数据转发的方向来说的,下面我们还会遇到ingress和egress,这个也是按照数据的流向来说的。如图1-2所示,LSR B为LSR A的下游LSR,相应的,LSR A为LSR B的上游LSR。图1-2 标签交换路径6. 标签转发表下面有标签转发表的组成,到底它都包括哪些部分与IP网络中的FIB(Forwarding Information Base,转发信息表)类似,在MPLS网络中,报文通过查找标签转发表确定转发路径。7. 控制平面和转发平面MPLS节点由两部分组成:控制平面(Control Plane):负责标签的分配、路由的选择、标签转发表的建立、标签交换路径的建立、拆除等工作;转发平面(Forwarding Plane):依据标签转发表对收到的分组进行转发。LSP建立与标签的发布和管理1. LSP建立LSP的建立过程实际就是将FEC和标签进行绑定也就是将目的地址和标签进行绑定,然后告诉给上游LSR,这个绑定是由下游LSR来做的,并将这种绑定通告相邻LSR,以便在LSR上建立标签转发表的过程。LSP既可以通过手工配置的方式静态建立,也可以利用标签分发协议动态建立。(1)手工配置的方式静态建立LSP建立静态LSP需要用户在报文转发路径中的各个LSR上手工配置为FEC分配的标签。建立静态LSP消耗的资源比较少,但静态建立的LSP不能根据网络拓扑变化动态调整。因此,静态LSP适用于拓扑结构简单并且稳定的小型网络。(2)利用标签发布协议动态建立LSP标签发布协议是MPLS的信令协议,负责划分FEC、发布标签、建立维护LSP等。标签发布协议的种类较多,有专为标签发布而制定的协议,如LDP(Label Distribution Protocol,标签分发协议),也有扩展后支持标签发布的协议,如BGP、RSVP-TE。本文只介绍LDP协议。2. 标签的发布和管理标签发布方式分为:DU:对于一个特定的FEC,下游LSR自动为该FEC分配标签,并主动将标签分发给上游LSR。DoD:对于一个特定的FEC,上游LSR请求下游LSR为该FEC分配标签,下游LSR收到请求后,为该FEC分配标签并向上游LSR通告该标签。目前,设备只支持DU标签发布方式。MPLS数据转发过程1. 标签转发表构成标签转发表由以下三部分构成:NHLFE这个表里面主要包括“出接口,下游LSR分给我的标签,下一跳地址”(Next Hop Label Forwarding Entry,下一跳标签转发项):描述对标签执行的操作,用于指导MPLS报文的转发。FTN(FEC to NHLFE map,FEC到NHLFE表项的映射):用于在Ingress节点将FEC映射到NHLFE表项。LSR接收到不带标签的报文后,查找对应的FIB表这里可以看一下fib表所显示的内容: display fibDestination count: 4 FIB entry count: 4Flag: U:Useable G:Gateway H:Host B:Blackhole D:Dynamic S:Static R:RelayDestination/Mask Nexthop Flag OutInterface InnerLabel Token 10.2.0.0/16 10.2.1.1 U Eth1/1 Null Invalid10.2.1.1/32 127.0.0.1 UH InLoop0 Null Invalid127.0.0.0/8 127.0.0.1 U InLoop0 Null Invalid127.0.0.1/32 127.0.0.1 UH InLoop0 Null Invalid项。如果FIB表项的Token值不是Invalid,则该报文需要进行MPLS转发。LSR根据Token值找到对应的NHLFE表项,以便确定需要执行的标签操作。ILM(Incoming Label Map,入标签映射):用于将入标签映射到NHLFE表项。LSR接收到带有标签的报文后,查找对应的ILM表项。如果ILM表项的Token值非空,则找到Token值对应的NHLFE表项,以便确定需要执行的标签操作。FTN、ILM通过Token与NHLFE关联这三者之间的关系,可以结合下图来理解。2. MPLS数据转发图1-7 MPLS转发过程示意图如图所示,MPLS网络中报文的转发过程为:(1)Ingress(Router B)接收到不带标签的报文,根据目的地址判断该报文所属的FEC,查找FIB表,获取Token值。Token值不是Invalid,则找到Token值对应的NHLFE表项。根据NHLFE表项为报文添加标签(40),并从相应的出接口(Ethernet1/2)将带有标签的报文转发给下一跳LSR(Router C)。(2)Router C接收到带有标签的报文,根据报文上的标签(40)查找ILM表项,获取Token值。Token值非空,则找到Token值对应的NHLFE表项。根据NHLFE表项,用新的标签(50)替换原有标签,并从相应的出接口(Ethernet1/2)将带有标签的报文转发给下一跳LSR(Router D)。(3)Egress(Router D)接收到带有标签的报文,根据报文上的标签(50)查找ILM表项,获取Token值。Token值为空,则删除报文中的标签。如果ILM表项中记录了出接口,则通过该出接口转发报文;否则,根据IP报头转发报文。3. 倒数第二跳弹出MPLS网络中,Egress节点接收到带有标签的报文这个收到带有标签的报文意思是从上游LSR收到的数据报文后,查找标签转发表,弹出报文中的标签后,再进行下一层的标签转发或IP转发。Egress节点转发报文之前要查找两次转发表:两次标签转发表,或一次标签转发表一次路由转发表。为了减轻Egress节点的负担,提高MPLS网络对报文的处理能力,可以利用PHP(Penultimate Hop Popping,倒数第二跳弹出)功能,在倒数第二跳节点处将标签弹出,Egress节点只需查找一次转发表。PHP在Egress节点上配置。支持PHP的Egress节点分配给倒数第二跳节点的标签有以下两种:标签值为0表示IPv4显示空标签(Explicit-null),这个值只有出现在标签栈底时才有效。Egress为FEC分配IPv4显式空标签,并通告给上游LSR后,上游LSR用这个值替代栈顶原来的标签,并将报文转发给Egress。Egress收到标签值为0的报文时,不会查找标签转发表,直接弹出标签栈,进行IPv4转发。标签值3表示隐式空标签(Implicit-null),这个值不会出现在标签栈中。当一个LSR发现下游LSR通告的标签为隐式空标签时,它并不用这个值替代栈顶原来的标签,而是直接弹出标签,并将报文转发给下游LSR(即Egress)。Egress接收到报文后,直接进行下一层的转发处理。LDPLDP是标签发布协议的一种,用来动态建立LSP。通过LDP,LSR可以把网络层的路由信息映射到数据链路层的交换路径上。1. LDP基本概念LDP会话LDP会话建立在TCP连接之上,用于在LSR之间交换标签映射、标签释放、差错通知等消息。LDP对等体LDP对等体是指相互之间存在LDP会话,并通过LDP会话交换标签FEC映射关系的两个LSR。2. LDP消息类型LDP协议主要使用四类消息:发现(Discovery)消息:用于通告和维护网络中LSR的存在;会话(Session)消息:用于建立、维护和终止LDP对等体之间的会话;通告(Advertisement)消息:用于创建、改变和删除“标签FEC”映射关系;通知(Notification)消息:用于提供建议性的消息和差错通知。为保证LDP消息的可靠发送,除了发现消息使用UDP传输外,LDP的会话消息、通告消息和通知消息都使用TCP传输。3. LDP工作过程LDP主要包括以下四个阶段:(1)发现阶段所有希望建立LDP会话的LSR都周期性地发送Hello通过组播224.0.0.2发送hello消息消息,通告自己的存在。通过Hello消息,LSR可以自动发现它的LDP对等体。LDP对等体发现机制分为两种:基本发现机制:用于发现本地的LDP对等体,即通过链路层直接相连的LSR。这种方式下,LSR周期性地向“子网内所有路由器”的组播地址224.0.0.2发送LDP链路Hello消息,以便链路层直接相连的LSR发现此LDP对等体。扩展发现机制:用于发现远端的LDP对等体,即不通过链路层直接相连的LSR这种应该是单播发送hello消息。这种方式下,LSR周期性地向指定的IP地址发送LDP目标Hello消息,以便指定IP地址对应的LSR发现此LDP对等体。(2)会话建立与维护发现LDP对等体后,LSR开始建立会话。这一过程又可分为两步:建立传输层连接,即在LSR之间建立TCP连接;对LSR之间的会话进行初始化,协商会话中涉及的各种参数,如LDP版本、标签发布方式、Keepalive定时器值等。会话建立后,LDP对等体之间通过不断地发送Hello消息和Keepalive消息来维护这个会话。(3)LSP建立与维护LDP通过发送标签请求和标签映射消息,在LDP对等体之间通告FEC和标签的绑定关系即目的地址和标签的绑定,从而建立LSP。(4)会话撤销在以下情况下,LSR将撤销LDP会话:LSR通过周期性发送Hello消息表明自己希望与邻居LSR继续维持这种邻接关系。如果Hello保持定时器超时仍没有收到新的Hello消息,则删除Hello邻接关系。一个LDP会话上可能存在多个Hello邻接关系。当LDP会话上的最后一个Hello邻接关系被删除后,LSR将发送通知消息,结束该LDP会话。LSR通过LDP会话上传送的LDP PDU(LDP PDU中携带一个或多个LDP消息)来判断LDP会话的连通性。如果在会话保持定时器(Keepalive定时器)超时前,LDP对等体之间没有需要交互的信息,LSR将发送Keepalive消息给LDP对等体,以便维持LDP会话。如果会话保持定时器超时,没有收到任何LDP PDU,LSR将关闭TCP连接,结束LDP会话。LSR还可以发送Shutdown消息,通知它的LDP对等体结束LDP会话。因此,LSR收到LDP对等体发送的Shutdown消息后,将结束与该LDP对等体的会话。MPLS的典型配置:在VRF中定义的和VPN业务有关的两个重要参数是RT和RD,RT和RD长度都是64bit。RT是Route Target的缩写,RT的本质是每个VRF表达自己的路由取舍及喜好的方式,主要用于控制VPN路由的发布和安装策略。分为import和export两种属性,前者表示了我对那些路由感兴趣,而后者表示了我发出的路由的属性。当PE发布路由时,将使用路由所属VRF的RT export规则,直接发送给其他的PE设备。对端PE接收路由时,首先接收所有的路由,并根据每个VRF配置的RT的import规则进行检查,如果与路由中的RT属性match,则将该路由加入到相应的VRF中。以下图为例:SITE-1:我发的路由是蓝色的,我也只接收蓝色的路由。SITE-2:我发的路由是黄色的,我也只接收黄色的路由。SITE-3:我发的路由是蓝色的,我也只接收蓝色的路由。SITE-4:我发的路由是黄色的,我也只接收黄色的路由。这样,SITE-1与SITE-3中就只有自己和对方的路由,两者实现了互访。同理SITE-2与SITE-4也一样。这时我们就可以把SITE-1与SITE-3称为VPN BLUE,而把SITE-2与SITE-4称为VPN YELLOW。 图2 RD是Route Distinguisher的缩写,是说明路由属于哪个VPN的标志。理论上可以为每个VRF配置一个RD,通常建议为每个VPN的VRF都配置相同的RD,并且要保证这个RD全球唯一。如果两个VRF中存在相同的地址,但是由于RD不同,这两个路由在PE间发布过程中也不会混淆,因为MP BGP把RD和路由一起发送,对端PE可以根据RD确定路由所属的VPN,从而把路由安装到正确的VRF中。RD并不会影响不同VRF之间的路由选择以及VPN的形成,这些事情由RT搞定。PE从CE接收的标准的路由是IPv4路由,如果需要发布给其他的PE路由器,此时需要为这条路由附加一个RD。在IPv4地址加上RD之后,就变成VPN-IPv4地址族了。VPN-IPv4地址仅用于服务供应商网络内部。在PE发布路由时添加,在PE接收路由后放在本地路由表中,用来与后来接收到的路由进行比较。CE不知道使用的是VPN-IPv4地址。 组网应用2.1VRF与MPLS组合应用下面以图3为例说明MPLS VPN与VRF的典型应用:组网中两个用户站点SITE1和SITE2属于同一个VPN,在两个PE上分别配置VRF参数,其中VRF SITE1的RD=100:1,import RT =100:3,export RT =100:2,VRF SITE2的RD=100:1,import RT =100:2,export RT =100:3。通过VRF的配置可见:两个VRF的RD同为100:1,说明他们属于同一个VPN;VRF SITE1导入和导出的RT分别等于VRF SITE2导出和导入的RT,说明两个VRF分别可以接收对方的VPN站点内的路由;PE连接CE的接口与VRF绑定,说明该接口是属于对于VRF的资源,其他VRF和公网是看不到的。即在接口下配置ip bindingPE和CE之间可以运行OSPF、RIP2、EBGP和静态路由。运营商网络要求为MPLS网络,在PE1和PE2之间建立LSP,同时PE1与PE2间通过MP-IBGP来传播VPN路由。BGP和路由协议的相关配置请参考VRP操作手册和命令手册。 图3 VPN SITE1内的一条路由10.10/16被通告到VPN SITE2的过程如下:PE1从接口S0/0上学习到由CE1通告的10.10.0.0/16的路由,由于S0/0是绑定到VRF的接口,所以PE1把该路由安装到对应VRF的路由表中,并且分配该路由的本地标签这个标签是“公网标签”还是“私网标签”?是私网标签,注意该标签是本地唯一的。然后通过路由重新发布把VRF路由表中的路由重新发布到BGP中,此时通过附加VRF表的RD、RT参数,把正常的IPv4路由变成VPN-IPv4路由,如10.10.0.0/16变成100:1:10.10.0.0/16,同时把export RT值和该路由的本地标签值等信息一起通过MP-IBGP会话通告给PE2。PE2收到这条VPN-IPv4路由后,先根据RD确定该路由所属的VRF两端的RD值需要配置成一样的,这样才能确定是两端建立的是同一VPN,然后去掉VPN-IPv4路由所带的RD值,使之恢复IPv4路由原貌,并且根据所属VRF配置的导入策略(本地Import RT与收到的export RT是否一致)决定是否在本地VRF中安装此路由。本例中导入策略允许,所以PE2把10.10.0.0/16路由添加到VRF路由表中,同时记录对应的标签。PE2再通过CE和PE之间的路由协议,把10.10.0.0/16路由通过与VRF绑定的接口S0/1通告出去,CE2学习到这条路由后把该路由添加到路由表中。同样的道理SITE2内的路由10.11.0.0/16也可以被CE1学到。下面说明从CE2 Ping 10.10.0.0/16时数据报文的转发过程(假设PE1为该路由分配的标签为10,从PE2到PE1的LSP标签分别为L1、L2):图中的“10”对应的是私网标签,L2、L1对应的是公网标签 图4 首先Ping包从CE2发出,为IPv4报文,在图中用绿色方块标识。当IP报文到达PE2时,PE2根据目的地址查找VRF的转发表,发现该路由出标签为10这个标签是MP-BGP分配的私网标签,是由PE1传过来的,这个私网标签在传输过程中式不变的,除非改变下一跳,同时该路由下一跳为PE1,而PE1对应的LSP标签为L1,于是PE2给报文分别打上10、L1作为内外层标签,进行MPLS转发。MPLS报文到达P时,P根据MPLS转发表项把外层标签替换为L2继续转发。MPLS报文到达PE1时,因为PE1是LSP的终点,所以外层标签被剥掉。PE1根据露出的内层标签10判断出该报文是发往SITE1所属VPN的报文。于是PE1剥掉内层标签向CE1转发IP报文。CE1收到的是还原后的IP报文,后续处理与正常IP处理流程一样,这里不再赘述。2.2VRF lite特性应用(即MCE的应用)尽管VRF经常与MPLS一起使用,但VRF也可以脱离MPLS单独应用。VRF lite就是典型例子。VRF lite就是在CE设备上支持VRF。图5所示为典型MPLS VPN组网中用户侧网络,一个企业分支内部的三个部门要求相互隔离,分别通过一台CE连接到PE,形成一个VPN。可见,该分支机构需要三台出口路由器,三条链路与PE连接;同时PE需要为一个企业用户提供三个接口,这将带来端口、链路资源的浪费,直接导致成本与支出的增加。 图5 针对这种情况,我们引入VRF lite特性来解决问题,即在CE上配置VRF特性。具体组网如图6所示:此时企业分支只需要一台CE路由器与PE相连,在CE上配置VRF,CE连接三个部门的接口分别与VRF绑定。同时CE只需要一条物理链路与PE相连,并通过链路的子接口分别与VRF绑定,完成CE与PE上对应VRF的逻辑连接。PE与CE可以在各个VRF中运行动态路由协议完成VPN路由交换。PE上的配置和图5中的一样,需要配置VRF和MP-IBGP。 图6 这种方案的优点有:只需要一个CE,比多CE情况简化了网络的配置和管理;PE与CE间只需一条物理链路;节省了PE端口资源;允许企业内部不同部门间的地址重叠;MCE工作原理下面以图1-19为例介绍MCE对多个VPN的路由表项进行维护,并与PE交互VPN路由的过程。图1-19 MCE工作原理示意图如图1-19所示,左侧私网内有两个VPN站点:Site 1和Site 2,分别通过MCE设备接入MPLS骨干网,其中VPN 1和VPN 2的用户,需要分别与远端Site 2内的VPN 1用户和Site 1内的VPN 2用户建立VPN隧道。通过配置MCE功能,可以在MCE设备上为VPN 1和VPN 2创建各自的路由转发表,并使用Vlan-interface2接口与VPN 1进行绑定、Vlan-interface3与VPN 2进行绑定。在接收路由信息时,MCE设备根据接收接口的编号,即可判断该路由信息的来源,并将其维护到对应VPN的路由转发表中。同时,在PE 1上也需要将连接MCE的接口(子接口)与VPN进行绑定,绑定的方式与MCE设备一致。MCE与PE 1之间通过Trunk链路连接,并允许VLAN 2和VLAN 3的报文携带VLAN Tag传输,从而使PE 1在接收时可以根据报文所属VLAN判别该报文属于哪一个VPN,将报文在指定的隧道内传输。3 应用场合VRF特性用于实现VPN的需求,可以与MPLS配合使用,也可以单独组网应用4配置举例4.1VRF与MPLS组合应用图3所示的组网配置如下:CE1配置:# sysname CE1 # domain system # controller T3 3/0 using t3 # interface Aux0 async mode flow # interface Ethernet0/0 /*连接site1内的网络*/ip address 10.10.0.1 255.255.0.0 # interface Ethernet0/1 # interface Serial3/0/0 link-protocol ppp ip address 100.10.0.1 255.255.0.0 # interface NULL0 # interface LoopBack9 ip address 28.40.1.1 255.255.255.255 # ospf 1 import-route direct area 0.0.0.0 network 100.10.0.0 0.0.255.255 # user-interface con 0 idle-timeout 0 0 user-interface aux 0 user-interface vty 0 4 # returnPE1配置:# sysname PE1# mpls lsr-id 28.40.1.2 # /*公网运行MPLS*/mpls # mpls ldp # /*VRF配置*/ip vpn-instance site1 route-distinguisher 100:1 vpn-target 100:2 export-extcommunity vpn-target 100:3 import-extcommunity # domain system # controller T3 3/0 using t3 # interface Aux0 async mode flow # interface Ethernet0/0 /*连接P的接口*/ip address 172.16.32.59 255.255.0.0 mplsmpls ldp enable# interface Ethernet0/1 # interface Serial0/0 /*连接CE的接口*/ ip binding vpn-instance site1link-protocol ppp ip address 100.10.0.2 255.255.0.0 # interface NULL0 # interface LoopBack9 ip address 28.40.1.2 255.255.255.255 # bgp 100 /*配置MP iBGP*/ undo synchronization group in100 internal peer in100 connect-interface LoopBack9 peer 46.80.1.1 group in100 /*46.80.1.1是PE2的loopback口地址*/ # ipv4-family vpn-instance blue import-route direct import-route ospf undo synchronization # ipv4-family vpnv4 peer in100 enable peer 46.80.1.1 group in100 ospf 1 /*IP网络上跑OSPFPE与PE之间保证ip层可达的ospf*/ import-route direct area 0.0.0.0 network 172.16.0.0 0.0.255.255 # ospf 100 vpn-instance site1 /*VRF中运行OSPF,与CE交换路由这个是PE与CE之间运行ospf时的vpn-instance*/ import-route direct area 0.0.0.0 network 100.10.0.0 0.0.255.255 # user-interface con 0 idle-timeout 0 0 user-interface aux 0 user-interface vty 0 4 # return 说明:PE2和CE2的配置与PE1和CE1类似,此处不再列出。关于BGP和MPLS的配置,请参考操作手册和命令手册4.2VRF lite特性应用图6中各路由器的配置如下CE的配置:# sysname CE # ip vpn-instance MRT /*VRF MRT */route-distinguisher 100:1 vpn-target 100:1 export-extcommunity vpn-target 100:1 import-extcommunity # ip vpn-instance RD /*VRF RD */route-distinguisher 200:1 vpn-target 200:1 export-extcommunity vpn-target 200:1 import-extcommunity # ip vpn-instance HR /*VRF HR */route-distinguisher 300:1 vpn-target 300:1 export-extcommunity vpn-target 300:1 import-extcommunity # domain system # local-user admin # interface Aux0 async mode flow # interface Ethernet0/0ip address 110.11.0.2 255.255

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论