资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,华为MPLSVPN培训资料,*,华为MPLSVPN培训资料,2026/11/10,华为MPLSVPN培训资料,学习目标,掌握MPLS的基本概念和工作过程,掌握标签的分配和控制,掌握MPLS VPN 控制和转发流程,掌握MPLS VPN的配置及故障定位,学习完本课程,您应该能够:,华为MPLSVPN培训资料,课程内容,第一章 MPLS 协议,第二章 VPN概述,第三章 BGP/MPLS VPN,第四章 配置及排错,华为MPLSVPN培训资料,MPLS协议起源,MPLS最初是用来提高路由器的转发速度而提出的一个协议,1996年,Ipsilon公司推出了IP Switching协议,通过标签交换数据包,引发了路由器技术的一次革命,1997年,IETF成立了一个 MPLS(Multi-Protocol Label Switching)工作组,作为独立于厂商的一系列标准的名称,Multi-Protocol,支持多种三层协议,如IP、IPv6、IPX、SNA等,Label Switching,给报文打上标签,以标签交换取代IP转发,华为MPLSVPN培训资料,MPLS的几个术语(一),Label:是一个比较短的,定长的,通常只具有局部意义的标识。,FEC(Forwarding Equivalence Class):转发等价类。是在转发过程中以等价的方式处理的一组数据分组,可以通过地址、隧道、COS等来标识创建FEC,LSP:标签交换通道。一个FEC的数据流,在不同的节点被赋予确定的标签,数据转发按照这些标签进行。数据流所走的路径就是LSP,华为MPLSVPN培训资料,MPLS的几个术语(二),LSR:Label Switching Router。LSR是MPLS的网络的核心交换机或者路由器,它提供标签交换和标签分发功能。,LER:Label Switching Edge Router。在MPLS的网络边缘,进入到MPLS网络的流量由LER分为不同的FEC,并为这些FEC请求相应的标签。它提供流量分类和标签的映射、标签的移除功能。,华为MPLSVPN培训资料,MPLS封装格式,通常,MPLS包头有32Bit,其中有:,20Bit用作标签(Label),0到15系统保留,3个Bit的EXP,协议中没有明确,通常用作COS,1个Bit的S,用于标识是否是栈底,表明MPLS的标签可以嵌套。,8个Bit的TTL,华为MPLSVPN培训资料,问题,当一个链路层协议收到一个MPLS报文后,是如何判断这是一个MPLS报文,应该送给MPLS处理,而不是象普通的IP报文那样,直接送给IP层处理?,华为MPLSVPN培训资料,解答,在以太网中:使用值是0 x8847(单播)和0 x8848(组播)来表示承载的是MPLS报文(0800是IP报文),在PPP中:增加了一种新的NCP:MPLSCP,使用0 x8281来标识,华为MPLSVPN培训资料,MPLS 网络拓扑结构,LSR,Customer,IP Network,Ingress LER,LSP,Label Switched Path,Customer,IP Network,egress LER,华为MPLSVPN培训资料,传统IP转发,每一跳分析IP头,查找的方式采用最长匹配,可能查找多次,所有路由器都要知道整个网络的所有路由,分析IP头,映射到下一跳,分析IP头,映射到下一跳,分析IP头,映射到下一跳,华为MPLSVPN培训资料,标签转发基本概念,NHLFE(Next Hop Label Forwarding Entry):描述标签操作,下一跳,标签操作类型:push/pop/swap,链路层封装类型等,FTN(FEC to NHLFE):将FEC映射到NHLFE,ILM(Incoming Label Map):将MPLS标签映射到NHLFE,华为MPLSVPN培训资料,标签转发(一),出口LER,分析IP头,FEC绑定LSP,FTN-NHLFE,入口LER,LSR,LSR,标签操作:push,A,B,C,D,A:,加上标签L1,E1,B,10.0.1.0/24,其他,标签操作,发送接口,下一跳,NHLFE,FEC,Ingress接收分组,判定分组所属的FEC,给分组加上Label,华为MPLSVPN培训资料,标签转发(二),在MPLS域中只依据标签和标签转发表通过转发单元进行转发,ILM-NHLFE,入口LER,LSR,LSR,标签操作:swap,A,B,C,D,去掉原来的标签,加上标签L2,E0,C,L1,其他,标签操作,发送接口,下一跳,NHLFE,入标签,B,C:,华为MPLSVPN培训资料,标签转发(三),在MPLS域中只依据标签和标签转发表通过转发单元进行转发,ILM-NHLFE,入口LER,LSR,LSR,标签操作:swap,A,B,C,D,去掉原来的标签,加上标签L3,E0,D,L2,其他,标签操作,发送接口,下一跳,NHLFE,入标签,B,C:,华为MPLSVPN培训资料,标签转发(四),Egress将标签去掉,继续转发,ILM-NHLFE,分析IP头,映射到下一跳,入口LER,LSR,LSR,标签操作:pop,A,B,C,D,去掉标签,D,L3,其他,标签操作,发送接口,下一跳,NHLFE,入标签,D:,华为MPLSVPN培训资料,倒数第二跳弹出(PHP),在最后一跳,最外层的标签已经没有意义,因此可以在倒数第二跳将标签弹出,减少最后一跳的负担。,如果只有一层标签,则最后一跳直接进行IP转发;否则,对内层标签做标签转发,分析IP头,映射到下一跳,标签操作:,pop,分析IP头,FEC绑定LSP,FTN-NHLFE,ILM-NHLFE,ILM-NHLFE,入口LER,LSR,LSR,出口LER,标签操作:push,标签操作:swap,华为MPLSVPN培训资料,分配标签的协议,信令协议,用于在LSR之间分配标签,建立LSP,LDP,CR-LDP,RSVP-TE,MP-BGP,BGP,华为MPLSVPN培训资料,LDP的基本概念,LDP是一个动态的生成标签的协议,与动态路由协议(如OSPF)十分相像,都具备如下的几大要素:,报文(或者叫消息),邻居的自动发现和维护机制,一套算法,用来根据搜集到的信息计算最终结果。,前者计算的结果是标签,后者是路由,主要功能:,发布LabelFEC映射,建立与维护标签交换路径,华为MPLSVPN培训资料,LDP的基本概念,在LDP协议中,存在4种LDP消息:,发现(Discovery)消息,用于通告和维护网络中LSR的存在。,会话(Session)消息,用于建立,维护和结束LDP对等实体之间的会话连接。,通告(Advertisement)消息,用于创建、改变和删除特定FEC-标签绑定。,通知(Notification)消息,用于提供消息通告和差错通知。,华为MPLSVPN培训资料,LDP会话的建立和维护,邻居发现:通过互发hello报文(UDP/prot:646/IP:224.0.0.2),建立TCP连接:由地址大的一方主动发起。(TCP/port:646),会话初始化:由Master发出初始化消息,并携带协商参数。,由slave检查参数能否接受,如果能则发送初始化消息,并携带协商参数。并随后发送keepalive消息。,master检查参数能否接受,如果能则发送keepalive消息。,相互收到keepalive消息,会话建立。,期间收到任何差错消息,均关闭会话,断开TCP连接,M,M,M,M,M,华为MPLSVPN培训资料,LDP邻居状态机,华为MPLSVPN培训资料,标签分配和管理(一),标签分配模式,DoD:downstream-on-demand 下游按需标记分配,DU:downstream unsolicited 下游自主标记分配,上游与下游:在一条LSP上,沿数据包传送的方向,相邻的LSR分别叫上游LSR(upstream LSR)和下游LSR(downstream LSR)。下游是路由的始发者。,华为MPLSVPN培训资料,标签分配和管理(二),标签控制模式,有序方式(Ordered),独立方式(Independent),标签保持方式,保守模式(Conservative),自由模式(Liberal),华为MPLSVPN培训资料,标签分发模式:DU,下游LSR在LDP会话建立成功,主动向其上游LSR发布标签映射消息,上游路由器保存标签,存放到标签映射表中,标签是设备随机自动生成的,16以下为系统保留,上游,下游,路由触发,到,171.68.10/24,可以使用标签,20,到,171.68.1.0/24,可以使用标签,20,171.68.1.0/24,171.68.4.0/24,到,171.68.10/24,可以使用标签,18,到,171.68.1.0/24,可以使用标签,18,华为MPLSVPN培训资料,标签分发模式:DoD,上游LSR向下游LSR发送标签请求消息(包含FEC的描述信息),下游LSR为此FEC分配标签,并将绑定的标签通过标签映射消息反馈给上游LSR,上游,下游,路由触发,171.68.1.0/24,171.68.4.0/24,LSR1 LSR2 LSR3,请求到目的地址,171.68.10/24,的标签,请求到目的地址,171.68.1.0/24,的标签,请求到目的地址,171.68.10/24,的标签,请求到目的地址,171.68.1.0/24,的标签,分配到,171.68.10/24,的标签为,20,分配到,171.68.1.0/24,的标签为,20,分配到,171.68.10/24,的标签为,18,分配到,171.68.1.0/24,的标签为,18,华为MPLSVPN培训资料,标签控制模式:有序,只有收到它的下游返回的标签映射消息后才向其上游发送标签映射消息,上游,下游,标签请求,标签请求,标签请求,标签映射,标签映射,标签映射,华为MPLSVPN培训资料,标签控制模式:独立,不管有没有收到它的下游返回的标签映射消息都立即向其上游发送标签映射消息,上游,下游,标签映射,标签映射,标签映射,华为MPLSVPN培训资料,标签保持方式保守,保守方式(Conservative retention mode),只保留来自下一跳邻居的标签,丢弃所有非下一跳邻居发来的标签。,优点:节省内存和标签空间。,缺点:当IP路由收敛、下一跳改变时LSP收敛慢,LSR1,LSR2,LSR3,LSR4,LSR5,172.16.2/24,mapping,label 20,mapping,label 30,mapping,label 17,mapping,label 16,不是到172.16.2/24,的下一跳邻居发来,的标签,丢弃,华为MPLSVPN培训资料,标签保持方式自由,自由方式(Liberal retention mode),保留来自邻居的所有发送来的标签,优点:当IP路由收敛、下一跳改变时减少了lsp收敛时间,缺点:需要更多的内存和标签空间。,LSR1,LSR2,LSR3,LSR4,LSR5,172.16.2/24,mapping,label 20,mapping,label 30,mapping,label 17,mapping,label 16,不是到172.16.2/24,的下一跳邻居发来,的标签,保留,华为MPLSVPN培训资料,标签转发表,标签转发表中的IN和OUT,是相对于标签转发而言,不是相对于标签分配的IN和OUT:,入标签是我分给别人的,出标签是别人分给我的,我分配的标签是给别人用的,IN interface,IN label,Prefix/MASK,OUT interface(nexthop),OUT label,Serial0,50,10.1.1.0/24,Eth0(3.3.3.3),80,Serial1,51,10.1.1.0/24,Eth0(3.3.3.3),80,Serial1,62,70.1.2.0/24,Eth0(3.3.3.3),52,Serial1,52,20.1.2.0/24,Eth1(4.4.4.4),52,Serial2,77,30.1.2.0/24,Serial3(5.5.5.5),3(pop),华为MPLSVPN培训资料,问题,对于一台设备的标签转发表(基于全局)来说:,所有的入标签(),对于不同的路由(但下一跳相同),出标签(),对于不同的路由(下一跳也不同),出标签(),对于同一条路由,入标签和出标签(),A 一定不同 B 一定相同 C 可能相同,华为MPLSVPN培训资料,解答,对于一台设备的标签转发表(基于全局)来说:,所有的入标签(A),对于不同的路由(但下一跳相同),出标签(A),对于不同的路由(下一跳也不同),出标签(C),对于同一条路由,入标签和出标签(C),A 一定不同 B 一定相同 C 可能相同,华为MPLSVPN培训资料,课程内容,第一章 MPLS 协议,第二章 VPN概述,第三章 BGP/MPLS VPN,第四章 配置及排错,华为MPLSVPN培训资料,VPN的基本概念,Internet,出差员工,隧道,专线,办事处,总部,分支机构,合作伙伴,异地办事处,华为MPLSVPN培训资料,传统VPN的分类(一),按业务用途分类:,Access VPN,Intranet VPN,Extranet VPN,按实现的层次分类:,二层隧道 VPN,三层隧道 VPN,华为MPLSVPN培训资料,传统VPN的分类(二),按运营模式,CPE-based VPN,Network-based VPN,按组网模型,虚拟租用线(VLL),虚拟专用拨号网络(VPDN),虚拟专用LAN网段(VPLS)业务,虚拟专用路由网(VPRN)业务,华为MPLSVPN培训资料,传统VPN的实现模型,华为MPLSVPN培训资料,设备角色,CE(Custom Edge):直接与服务提供商相连的用户设备。,PE(Provider Edge Router):指骨干网上的边缘路由器,与CE相连,主要负责VPN业务的接入。,P(Provider Router):指骨干网上的核心路由器,主要完成路由和快速转发功能。,VPN_A,VPN_A,VPN_B,10.3.0.0,10.1.0.0,11.5.0.0,P,P,P,P,PE,PE,CE,CE,CE,VPN_A,VPN_B,VPN_B,10.1.0.0,10.2.0.0,11.6.0.0,CE,PE,PE,CE,VPN_A,10.2.0.0,CE,P-Network,C-Network,华为MPLSVPN培训资料,Overlay VPN隧道建立在CE上,特点:在CE与CE之间建立隧道,并直接传递路由信息,路由协议数据总是在客户设备之间交换,服务商对客户网络结构一无所知。典型代表是GRE、IPSec,优点:不同的客户地址空间可以重叠,保密性、安全性非常好。,缺点:需要客户自己创建并维护VPN。,VPN_A,VPN_B,10.3.0.0,10.3.0.0,P,PE,PE,CE,CE,VPN_A,VPN_B,10.1.0.0,10.1.0.0,CE,PE,CE,P-Network,GRE tunnel,GRE tunnel,P,华为MPLSVPN培训资料,Overlay VPN隧道建立在PE上,特点:在PE上为每一个VPN用户建立相应的GRE隧道,路由信息在PE与PE之间传递,公网中的P设备不知道私网的路由信息。,优点:客户把VPN的创建及维护完全交给服务商,保密性、安全性比较好。,缺点:不同的VPN用户不能共享相同的地址空间。,VPN_A,VPN_B,11.3.0.0,10.3.0.0,P,PE,PE,CE,CE,VPN_A,VPN_B,11.1.0.0,10.1.0.0,CE,PE,CE,P-Network,GRE tunnel,GRE tunnel,P,华为MPLSVPN培训资料,Overlay VPN的本质,Overlay VPN的本质是一种“静态”VPN,这好比是静态路由,所以他具有类似静态路由的全部缺陷:所有的配置与部署都需要手工完成,而且具有N2问题:,由于是“静态”VPN,则无法反应网络的实时变化。,如果隧道建立在CE上,则必须由用户维护。,如果建立在PE上,则又无法解决地址冲突问题。,华为MPLSVPN培训资料,Peer-to-Peer VPN,PeertoPeer是指CEtoPE,也就是要在CE与PE之间交换私网路由信息,然后由PE将这些私网路由在PNetwork中传播(P-Network上肯定是运行了一种动态路由协议),这样这些私网路由会自动的传播到其他的PE上。,这种VPN由于私网路由会泄露到公网上,所以必须严格的通过路由来控制,即:要确保同一个VPN的CE路由器上只能有本VPN的路由。,所以,通常CE与PE之间运行的路由协议,与P-Network上运行的路由协议是不同的,即使相同,也要有很好的路由过滤和选择的机制。,华为MPLSVPN培训资料,Peer-to-Peer VPN共享PE方式,所有VPN用户的CE都连到同一台PE上,PE与不同的CE之间运行不同的路由协议(或者是相同路由协议的不同进程,比如OSPF)。由PE将这些路由发布到公网上,在接收端的PE上将这些路由过滤后再发给相应的CE设备。,缺点:为了防止连接在同一台PE上的不同CE之间互通,必须在PE上配置大量的ACL。,VPN_A,VPN_B,10.3.0.0,11.3.0.0,P,P,PE,CE,CE,VPN_A,VPN_B,10.1.0.0,11.1.0.0,CE,PE,CE,P-Network,私网路由在整个公网上传播,rip,ospf,ospf,isis,华为MPLSVPN培训资料,Overlay VPN隧道建立在PE上,为每一个VPN单独准备一台PE路由器,PE和CE之间可以运行任意的路由协议,与其他VPN无关。PE与P之间运行BGP,并使用路由属性进行过滤。,优点:无需配置任何的ACL了。,缺点:每一个VPN用户都有新增一台用的PE,代价过于昂贵了。,VPN_A,VPN_B,10.3.0.0,11.3.0.0,P,P,PE,CE,CE,VPN_A,VPN_B,10.1.0.0,11.1.0.0,CE,PE,CE,P-Network,私网路由在整个公网上传播,rip,rip,ospf,ospf,PE,PE,华为MPLSVPN培训资料,Peer-to-Peer VPN的本质,Peer-to-Peer,VPN虽然很好的解决了“静态的问题”,但是仍旧有很多局限性:,由于没有使用隧道技术,导致私网路由泄露到公网上,安全性很差。,VPN的“私有”特性完全靠路由来保证,导致在CE设备上无法配置缺省路由。(why),仍旧存在所有的设备无法共享相同的地址空间问题。,华为MPLSVPN培训资料,课程内容,第一章 MPLS 简介,第二章 VPN概述,第三章 BGP/MPLS VPN,第四章 配置及排错,华为MPLSVPN培训资料,MPLS VPN 网络结构,CE(Custom Edge):直接与服务提供商相连的用户设备。,PE(Provider Edge Router):指骨干网上的边缘路由器,与CE相连,主要负责VPN业务的接入。,P(Provider Router):指骨干网上的核心路由器,主要完成路由和快速转发功能。,VPN_A,VPN_A,VPN_B,10.3.0.0,10.1.0.0,11.5.0.0,CE,CE,CE,VPN_A,VPN_B,VPN_B,10.1.0.0,10.2.0.0,11.6.0.0,CE,PE,PE,CE,CE,VPN_A,10.2.0.0,CE,VPN_A,VPN_B,VPN_B,10.1.0.0,10.2.0.0,11.6.0.0,CE,PE,PE,CE,CE,VPN_A,10.2.0.0,CE,VPN_A,10.2.0.0,CE,iBGP,sessions,P,P,P,P,PE,PE,华为MPLSVPN培训资料,与传统VPN模型的比较,与传统的Overlay VPN模型相比,MPLS VPN可以提供一种动态建立的隧道技术,MPLS中的LSP正是一种天然的隧道,而且这种隧道的建立是基于LDP协议,又恰恰是一种动态的标签生成协议,与传统的Peer to Peer VPN模型相比,MPLS VPN可以解决不同VPN共享相同地址空间的问题,即解决地址冲突的问题,通过动态路由协议来解决,华为MPLSVPN培训资料,为什么是BGP,要解决地址冲突问题,必须对现有的路由协议进行大规模的修改,这就要求一个路由协议具有良好的可扩展性。而具备条件的协议一定是基于TLV元素的。符合标准的只有EIGRP、BGP、ISIS。为什么选择BGP:,网络中VPN路由数目可能非常大,BGP是唯一支持大量路由的路由协议;,BGP是基于TCP来建立连接,可以在不直接相连的路由器间交换信息,这使得P路由器中无须包含VPN路由信息;,BGP可以运载附加在路由后的任何信息,作为可选的BGP属性,任何不了解这些属性的BGP路由器都将透明的转发它们,这使在PE路由器间传播路由非常简单。,华为MPLSVPN培训资料,解决地址冲突的办法(一),本地路由冲突问题,即:在同一台PE上如何区分不同VPN的相同路由?,可以通过在同一台路由器上创建不同的路由表解决,而不同的接口可以分属不同的路由表中,这就相当于将一台共享PE模拟成多台专用PE。,路由在网络中的传播问题,两条相同的路由,都在网络中传播,对于接收者如何分辨彼此?,可以在路由传递的过程中为这条路由再添加一个标识,用以区别不同的VPN。,华为MPLSVPN培训资料,解决地址冲突的办法(二),报文的转发问题,即使成功的解决了路由表的冲突,但是当PE接收到一个IP报文时,他又如何能够知道该发给那个VPN?因为IP报文头中唯一可用的信息就是目的地址。而很多VPN中都可能存在这个地址。,在IP头之外加上一些信息,由始发的VPN打上标记,这样PE在接收报文时可以根据这个标记进行转发。,华为MPLSVPN培训资料,VPN Instance解决本地路由冲突,每一个VPN实例可以看作虚拟的路由器,好像是一台专用的PE设备。该虚拟路由器包括如下元素:,一张独立的路由表,当然也包括了独立的地址空间。,一组归属于这个VPN实例的接口的集合。,一组只用于本VPN实例的路由协议。,对于每个PE,可以维护一个或多个VPN实例,同时维护一个公网的路由表(也叫全局路由表),多个VPN实例相互分离独立。,其实实现VPN实例并不困难,关键在于如何在PE上使用特定的策略规则来协调各VPN实例之间的关系。,华为MPLSVPN培训资料,Route Target,BGP的扩展community属性:RT(Route Target),扩展的community有如下两种格式:其中type字段为0 x0002或者0 x0102时表示RT。,TYPE(2字节),Administrator Field,Assigned Number Field,0 x0002,2字节AS号,4字节分配编号,0 x0102,4字节IP地址,2字节分配编号,华为MPLSVPN培训资料,Route Target本质,RT的本质是每个VPN实例表达自己的路由取舍及喜好的方式。可以分为两部分:Export Target与import Target,在一个VPN实例中,在发布路由时使用RT的export规则。直接发送给其他的PE设备,在接收端的PE上,接收所有的路由,并根据每个VPN实例配置的RT的import规则进行检查,如果与路由中的RT属性match,则将该路由加入到相应的VPN实例中。,华为MPLSVPN培训资料,RT的灵活应用,由于每个RT Export Target与import Target都可以配置多个value,接收时是“或”操作,所以就可以实现非常灵活的VPN访问控制。,华为MPLSVPN培训资料,RD(Route Distinguisher),在成功的解决了本地路由冲突的问题之后,路由在网络中传递时的冲突问题就迎刃而解了。只要在发布路由时加上一个标识即可,这个标识就是RD。,TYPE(2字节),Administrator Field,Assigned Number Field,0 x0002,2字节AS号,4字节分配编号,0 x0102,4字节IP地址,2字节分配编号,RD的格式,16位自治系统号ASN:32位用户自定义数,例如:100:1,2位IP地址:16位用户自定义数,例如:172.1.1.1:1,华为MPLSVPN培训资料,RD的本质,理论上可以为每个VPN实例配置一个RD。通常建议为每个VPN都配置相同的RD,不同的VPN配置不同的RD。但是实际上只要保证存在相同地址的两个VPN实例的RD不同即可,不同的VPN可以配置相同的RD,相同的VPN也可以配置不同的RD。,如果两个VPN实例中存在相同的地址,则一定要配置不同的RD,而且两个VPN实例一定不能互访,间接互访也不成。,RD并不会影响不同VPN实例之间的路由选择以及VPN的形成,这些事情由RT搞定。,PE从CE接收的标准的路由是IPv4路由,如果需要发布给其他的PE路由器,此时需要为这条路由附加一个RD。,华为MPLSVPN培训资料,VPNv4和IPv4 地址族,在IPv4地址加上RD之后,就变成VPN-IPv4地址族了VPNv4。而原来的标准的地址族就称为IPv4。,VPNv4 地址族主要用于PE路由器之间传递VPN路由,VPN-IPv4地址仅用于服务供应商网络内部。在PE发布路由时添加,在PE接收路由后放在本地路由表中,用来与后来接收到的路由进行比较。CE不知道使用的是VPN-IPv4地址。,在VPN数据流量穿越供应商骨干时,包头中没有携带VPN-IPv4地址。,Route Distinguisher(8个字节),IPv4 地址,VPNV4地址结构:,华为MPLSVPN培训资料,私网Label,至此,前两个问题:在PE本地的路由冲突和网络传播过程的路由冲突都已解决。但如果一个PE的两个本地VPN实例同时存在10.0.0.0/24的路由,当他接收到一个目的地址为10.0.0.1的报文时,他如何知道该把这个报文发给与哪个VPN实例相连的CE?肯定还需要在被转发的报文中增加一个标识。,由于MPLS支持多层标签的嵌套,这个标识可以定义成MPLS标签的格式,即私网Label。,华为MPLSVPN培训资料,BGP发布路由时携带的信息,一个扩展之后的NLRI(Network Layer Reachability Information),增加了地址族的描述,以及私网Label和RD。,MP_REACH_NLRI:,addressfamily:,VPN-IPV4地址族,next-hop:,就是PE路由器自己,通常是loopback地址。,NLRI:,私网label:,24个bit,与MPLS标签一样。,prefix:,RD:64bitip前缀,跟随之后的是扩展团体属性RT的列表,Extended_Communities(RT1),Extended_Communities(RT2),对于使用了扩展属性MP_REACH_NLRI和扩展团体属性RT的BGP,我们称之为MP-BGP协议,华为MPLSVPN培训资料,MP-BGP协议,MP-BGP(Multiprotocol Extensions for BGP-4),BGP-4仅仅支持IPv4,MP-BGP是为了让BGP可以用于传输更多协议(IPv6,IPX,.)的路由信息而进行的扩展。,为了保持兼容性,MP-BGP仅仅添加了两个BGP属性:MP_REACH_NLRI(MP_UNREACH_NLRI)和扩展团体属性。,MP_REACH_NLRI(MP_UNREACH_NLRI)可以用在BGP Update消息中用于通告或废止网络可达性信息。,私网Label映射消息携带在MP_REACH_NLRI属性中,前20位是标签,后4位则的前3位是EXP域,最后一位用于指示是否是栈底。,华为MPLSVPN培训资料,PE和CE设备之间的关系,PE 和 CE 路由器通过EBGP、RIP和静态路由交换信息,CE 运行标准路由协议,PE 维护独立的路由表:公网路由表和VPN实例的私网路由表,PE,C,PE,CE,CE,Site,-,2,Site,-,2,Site,-,1,Site,-,1,EBGP,RIP,Static,VPNA,VPNB,VPN实例 for VPNA,VPN实例 for VPNB,Global route,华为MPLSVPN培训资料,VPN实例路由的发布,PE路由器通过MPLS/VPN骨干网发布本地的VPN路由信息。,发送端 PE通过使用 MP-iBGP 将VPN实例路由从本地发布出去(带有export-target属性),接收端 PE 将路由引入到所属的VPN实例中(有相匹配的import-target属性),PE,PE,CE Router,CE Router,P Router,Site,Site,MP,-,iBGP,华为MPLSVPN培训资料,VPN实例路由注入到MP-iBGP,PE路由器需要对一条路由进行如下操作:,加上RD(RD为手工配置),变为一条VPN-IPV4路由。,更改下一跳属性为自己(通常是自己的loopback地址),加上私网标签(随机自动生成,无需配置),加上RT属性(RT需手工配置),发给所有的PE邻居,PE-1,CE,-,1,MP-iBGP,PE-2,BGP,RIPv2 update,for,149.27.2.0/24,NH=CE,-,1,CE,-,2,北京,上海,VPN-v4 update:RD:1:27:149.27.2.0/24,Next-hop=PE-1RT=VPN-A,Label=(28),华为MPLSVPN培训资料,MP-iBGP路由注入到VPN实例,每个VPN实例都有import route-target和 export route-target 的配置,发送PE发出MP-iBGP updates时,报文携带 export 属性。,接受PE 收到VPN-IPv4的MP-iBGP updates 时,判断收到的export是否与本地的VPN实例的import相等,相等就加入到相应的VPN实例路由表中,否则丢弃,PE,CE,-,1,MP,-,iBGP,PE,CE,-,2,北京,上海,VPN-v4 update:RD:1:27:149.27.2.0/24,Next-hop=PE-1RT=VPN-A,Label=(28),VPN-v4 路由变为IPV4路由,并且根据本地VPN实例的import RT属性加入到相应的VPN实例中,私网标签保留,留做转发时使用。再由本VPN实例的路由协议引入并转发给相应的CE,华为MPLSVPN培训资料,MPLS/VPN 公网标签分配,PE 和 P 路由器通过骨干网IGP具有到bgp下一跳的可达性;,通过运行IGP和LDP,分配标签,建立LSP,获得到BGP下一跳的LSP通道,标签栈用于报文转发,外层标签用来指示如何到达BGP下一跳,内层标签表示报文的出接口或者属于哪个VPN实例(属于哪个VPN),MPLS 节点转发是基于外层标签,而不管内层标签是多少,P router,P router,In Label FEC Out Label,-,197.26.15.1/32,-,In Label FEC Out Label,41,197.26.15.1/30,POP,In Label FEC Out Label,-,197.26.15.1/32,41,Use label,implicit,-,null,for,destination 197.26.15.1/32,Use label,41,for destination,197.26.15.1/32,VPN,-,v4 update:,RD:1:27,:149.27.2.0/24,NH=,197.26.15.1,RT=VPN-A,-,Label=(,28,),PE,-,1,上海,北京,149.27.2.0/24,华为MPLSVPN培训资料,MPLS/VPN 报文转发(一),入口PE收到CE的普通IP报文后,PE根据入接口所属的VPN实例加入到相应的VPN转发表,查找下一跳和标签,In Label FEC Out Label,-,197.26.15.1/32,41,149.27.2.27,PE,-,1,149.27.2.27,28,41,VPN,-,A,149.27.2.0/24,NH=,197.26.15.1,Label=(,28,),上海,北京,149.27.2.0/24,华为MPLSVPN培训资料,MPLS/VPN 报文转发(二),倒数第二跳路由器弹出外层标签,根据下一跳发送至出口PE,出口PE路由器根据内层标签判断报文是去向哪个CE,弹出内层标签,用普通IP报文向目的CE进行转发,In Label FEC Out Label,41,197.26.15.1/32,POP,北京,149.27.2.27,PE,-,1,上海,149.27.2.0/24,149.27.2.27,28,41,VPN,-,A,149.27.2.0/24,NH=,197.26.15.1,Label=(,28,),149.27.2.27,28,In Label FEC Out Label,28(V),149.27.2.0/24,-,VPN,-,A,149.27.2.0/24,NH=,北京,149.27.2.27,197.25.15.1/30,华为MPLSVPN培训资料,MPLS VPN控制流程私网路由及标签传递,MPLS,PEA,PB,PEC,MP-BGP IBGP Peer,CE A1,CE B1,CE A2,CE B2,VPN-v4 update:RD:1:27:149.27.2.0/24,Next-hop=PE-CRT=VPN-A,Label=(28),VPN-v4 update:RD:1:27:149.27.2.0/24,Next-hop=PE-CRT=VPN-A,Label=(28),BGP,OSPF,RIPv2 update for 149.27.2.0/24,NH=PE-A,BGP,OSPF,RIPv2 update for 149.27.2.0/24,NH=CE-A2,149.27.2.0/24,IN 28,NH:A2,149.27.2.0/24,Out 28,NH:PEC,华为MPLSVPN培训资料,MPLS VPN控制流程 公网LSP的建立,MPLS,PEA,PB,PEC,20,1.1.1.1/32,1.1.1.1/32,1.1.1.1/32,IGP,IGP,PE C的loopback地址为1.1.1.1,In 20,out 3,3,out 20,149.27.2.0/24,Out 28,NH:PEC,149.27.2.0/24,IN 28,NH:A2,华为MPLSVPN培训资料,MPLS VPN数据流程私网数据包的转发,MPLS,PEA,PB,PEC,CE A1,CE B1,CE A2,CE B2,Ping 149.27.2.1,20,28,3,1.1.1.1/32,out 20,1.1.1.1/32,In 20,out 3,1.1.1.1/32,149.27.2.0/24,IN 28,NH:A2,149.27.2.0/24,Out 28,NH:PEC,BGP,OSPF,RIPv2 update for 149.27.2.0/24,NH=PE-A,华为MPLSVPN培训资料,课程内容,第一章 MPLS 协议,第二章 VPN简介,第三章 BGP/MPLS VPN,第四章 配置及排错,华为MPLSVPN培训资料,MPLS VPN 配置步骤,要实现BGP/M
展开阅读全文