[计算机硬件及网络]RFC6513 MVPN的理解.doc
《[计算机硬件及网络]RFC6513 MVPN的理解.doc》由会员分享,可在线阅读,更多相关《[计算机硬件及网络]RFC6513 MVPN的理解.doc(41页珍藏版)》请在三一办公上搜索。
1、预备知识2. 地址空间重叠 VPN是一种私有网络,不同的VPN独立管理自己使用的地址范围,也称为地址空间(Address Space)。 不同VPN的地址空间可能会在一定范围内重合,比如,VPN1和VPN2都使用了10.110.10.0/24网段的地址,这就发生了地址空间重叠(Overlapping Address Spaces)。 收到这样目的网段的数据,往哪个VPN转发呢?3. VPN实例 在MPLS VPN中,不同VPN之间的路由隔离通过VPN实例(VPN-instance)实现。 PE为每个直接相连的Site建立并维护专门的VPN实例。VPN实例中包含对应Site的VPN成员关系和路由
2、规则。如果一个Site中的用户同时属于多个VPN,则该Site的VPN实例中将包括所有这些VPN的信息。 为保证VPN数据的独立性和安全性,PE上每个VPN实例都有相对独立的路由表和LFIB(Label Forwarding Information Base,标签转发表)。 具体来说,VPN实例中的信息包括:标签转发表、IP路由表、与VPN实例绑定的接口以及VPN实例的管理信息。VPN实例的管理信息包括RD(Route Distinguisher,路由标识符)、路由过滤策略、成员接口列表等。 4. VPN-IPv4地址 传统BGP无法正确处理地址空间重叠的VPN的路由。假设VPN1和VPN2都
3、使用了10.110.10.0/24网段的地址,并各自发布了一条去往此网段的路由,BGP将只会选择其中一条路由,从而导致去往另一个VPN的路由丢失。 PE路由器之间使用MP-BGP来发布VPN路由,并使用VPN-IPv4地址族来解决上述问题。 VPN-IPv4地址共有12个字节,包括8字节的RD和4字节的IPv4地址前缀,如图 2所示。 RD的作用不懂RD有什么用?不是有RT么。是添加到一个特定的IPv4前缀,使之成为全局唯一的VPN IPv4前缀。 RD或者是与自治系统号(ASN)相关的,在这种情况下,RD是由一个自治系统号和一个任意的数组成;或者是与IP地址相关的,在这种情况下,RD是由一个
4、IP地址和一个任意的数组成。 RD有三种格式,通过2字节的Type字段区分: Type为0时,Administrator子字段占2字节,Assigned number子字段占4字节,格式为:16bits自治系统号:32bits用户自定义数字。例如:100:1 Type为1时,Administrator子字段占4字节,Assigned number子字段占2字节,格式为:32bitsIPv4地址:16bits用户自定义数字。例如:172.1.1.1:1 Type为2时,Administrator子字段占4字节,Assigned n
5、umber子字段占2字节,格式为:32bits自治系统号:16bits用户自定义数字,其中的自治系统号最小值为65536。例如:65536:1 BGP路由发布MBGP: MP_REACH_NLRI,MP_UNREACH_NLRI即AFI+SAFI+Next Hop+N*SNPA(子网连接点)+NLRIBGP-4携带三个唯一的IPv4信息:NEXT-HOP属性(即IPv4地址),AGGREGATOR(包含一个IPv4地址),NLRI(即IPv4地址前缀)。携带标签映射消息NLRI:这里可以携带多个Label,每个Label的前20位是标签,后4位则的前3位是EXP域,最后一位用于指示是否是栈底必
6、须注意这个标签必须是由MP_REACH_NLRI 属性中Next-Hop所指LSR所分配。可以有两种办法废除路由信息(同时也解除了标签绑定)1,对同一个目标再次发布不同的路由(和一个新的Label)2,用Withdraw消息将MP_UNREACH_NLRI将这个目的包含于其中一个扩展之后的NLRI( Network Layer Reachability Information),增加了地址族的描述,以及私网label和RD。跟随之后的是RT的列表对于使用了扩展属性MP_(UN)REACH_NLRI的BGP,我们称之为MP-BGP。BGP, OSPF, RIPv2 update for 149.
7、27.2.0/24,NH=CE-1VRF路由注入到MP-iBGPMPLS L3VPN的报文转发 在基本MPLS L3VPN应用中(不包括跨域的情况),VPN报文转发采用两层标签方式: 第一层(外层)MPLS的LDP协议分配,负责报文在公网内的PE间传送标签在骨干网内部进行交换,指示从PE到对端PE的一条LSP。VPN报文利用这层标签,可以沿LSP到达对端PE; 第二层(内层内层标是私网路由的发布者PE分配的,即目的地分配过来的。远端(数据源)PE收到路由时保存,要发数据时,则打上此内网标签,这样收到此标的目的PE当然知道是要发往哪个CE(VPN)了,
8、因为标是它分配的。)标签在从对端PE到达CE时使用,指示报文应被送到哪个Site,或者更具体一些,到达哪一个CE。这样,对端PE根据内层标签可以找到转发报文的接口。 特殊情况下,属于同一个VPN的两个Site连接到同一个PE,这种情况下只需要知道如何到达对端CE。 1,CE将报文发给与其相连的VRF接口,PE在本VRF的路由表有两个标签表?一私一公,私的是VPN路由,公的是MPLS路由?目的是私网,下一跳是公网?再在BGP路由中找标签?中进行查找,得到了该路由的公网下一跳地址(即:对端PE的loopback地址)和私网标签。2,在把该报文封装一层私网标签后,在公网的标签转发表中查找下一跳地址,
9、再封装一层公网标签后,交与MPLS转发。MPLS/BGP IP VPNs中的组播摘要为了使在一个BGP/MPLS IP VPN中的IP组播业务能从一个VPN站点到另一个站点,VPN服务提供者必须应用专门的协议和流程。本文档就是对这些协议与流程的详细说明。目录预备知识12. 地址空间重叠13. VPN实例14. VPN-IPv4地址1BGP路由发布2MPLS L3VPN的报文转发4摘要5目录51简介82概述821最优性与可扩展性8211组播分发树9212通过单播隧道入口复制1022组播路由邻接1023组播VPN定义1124自动发现1125 PE-PE间组播路由信息1126 PE-PE间组播数据传
10、输1227 自治系统间的组播VPN1228可选择的消除/减少共享树状态123概念与框架1331 PE-CE组播路由1332 P-组播服务接口(PMSIs)14321相容性的和选择性的PMSIs14322 P-Tunnels实例化PMSIs1533使用PMSIs承载组播数据1634 PE-PE间用户组播路由的传输18341 PIM对等操作(PIM对端)18342 使用BGP承载用户组播路由194基于BGP的组播VPN成员自动发现195PE-PE间用户组播路由的传输2051 选择上游组播跳点(UMH)20511 用于UMH选择的合适的路由21512 合适的UMH路由所承载的信息21513 选择上游
11、PE21514选择上游组播跳点2352 关于基于每个MVPN的越过MI-PMSI的完全PIM对等操作的细节23521 PIM C-Instance 控制包23522 PIM C-Instance逆向路径转发(RPF)决策2453 BGP承载用户组播路由的使用24531发送BGP更新24532显示的追踪25533撤销BGP更新25534 BSR256 PMSI实例化2561 Intra-AS I-PMSI A-D Routes的使用26611发送Intra-AS I-PMSI A-D Routes26612接收Intra-AS I-PMSI A-D Routes2662 C-flows明确地绑定
12、到P-Tunnels的时间2763在单个P-Tunnel上多个组播VPN的聚合27631聚合树叶发现27632聚合方法27633多路分解用户组播业务2764关于具体隧道技术的考虑27641 RSVP-TE P2MP LSPs27642 PIM树27643 mLDP P2MP LSPs27644 mLDP MP2MP LSPs27645 入口复制277 绑定指定的C-Flows到指定的P-Tunnels2871一般考虑29711 PE在P-Tunnel上发送C-Flow29712 PE从P-Tunnel接收C-Flow3072使用S-PMSIs优化组播分发3173通告突发性洪泛数据的出现3274
13、 绑定C-Flows到P-Tunnels的协议33741使用BGP S-PMSI A-D路由33742 基于UDP的协议35743聚合358自治系统间的流程3581非分段自治系统间P-Tunnels35811自治系统间组播VPN自动发现35812自治系统间组播VPN路由信息交换35813自治系统间的P-Tunnels3582分段的自治系统间P-Tunnels359防止组播数据包的复制3591确保不复制的方法36911丢弃来自错误PE的包36912单一转发者选举36913本地PIM方法3692多宿主的C-S或C-RP3693从C-RP树切换到C-S树36931如何复制36932使用源活动A-D路
14、由的解决方案3610 消除/减少PE-PE间(C-*,C-G)状态的分发36101同时布署C-RPs在一个PE361011初始配置361012基于任播RP传播活动源36102在一个PE和一个本地C-RP间使用MSDP3711对PIM-BIDIR C-Groups的支持37111 VPN骨干变成RPL371111控制平面371112数据平面37112 PEs的分割371121划分371122使用PE区分标签371123 MP2MP P-Tunnels的部分覆盖3712封装37121每个P-Tunnel单个PMSI的封装371211 GRE封装371212 IP封装371213 MPLS封装371
15、22每个P-Tunnel多个PMSIs的封装381221 GRE封装381222 IP封装38123识别一个明显PE的封装381231 MP2MP LSP P-Tunnels381232 PIM-BIDIR C-Groups的支持38124关于IP和GRE封装的一般考虑381241最大传输单元(MTU)381242生存时间(TTL)381243因特网组播中的冲突避免38125可区分的业务3813安全考虑3814 INNA考虑3815致射3816参考文献38161规范性的引用文件(引用标准,参照标准)39162告知性的引用文件391简介RFC4364规定了当一个SP要提供一种VPN业务时所需要的
16、流程操作。只描述了IP单播包的方法,没有提供IP组播流从一个用户到另一个用户的方法描述。本文档扩充了在RFC4364中定义的业务,使得它包括了处理IP组播流的能力。这需要一些不同协议的共同合作。本文档提供了一个框架,它描述了各种协议怎样一起合作,以及提供了其中一些协议的详细说明。其它一些协议的详细说明可以在先前存在的文档中或是配套文档中找到。支持组播的BGP/MPLS IP VPN服务被称为组播VPN或MVPN。本文档和它的配套文档RFC6514都讨论了各种BGP消息和流程的运用,以用来支持MVPN。虽然两个文档都尽量的保持相互一致,但仍难免会出现一些差异。在BGP用于支持MVPN业务的使用方
17、面,如果在两个文档中出现了任何冲突或是差异,以RFC6514为权威的文档。在整个文档中,我们会用到术语“VPN-IP route“用来表示一个路由,它要么是VPN-IPv4地址族RFC4364,要么是VPN-IPv6地址族RFC4659。2概述21最优性与可扩展性在一个“BGP/MPLS IP VPN”中,VPN包的单播路由实现不需要SP网络中的核心保存任何基于每个VPN的状态。来自于一个特定VPN的路由信息只是由与该VPN内站点直连的PE维护。用户数据在隧道中穿过P路由器从一个PE到另一个PE,在支持VPN服务中,P路由器只需要有到达PE路由器的路由。PE到PE的路由是最优的,但是在P路由器
18、中的相关状态的数量只取决于PE的数量,与VPN的数量无关。然而,为了为一个特定的组播流提供最优的组播路由,流需要穿过的P路由器必须维持与该流相关的状态。一个组播流由(S,G)元组来标识,其中,S是发送者的IP地址,G是目的地IP组播组地址。如果P路由器中的状态数量与VPN中的组播流的数量成比例,可扩展性会非常差。因此,当BGP/MPLS IP VPN支持组播业务时,组播路由的最优性必须与P路由器的可扩展性之间取得平衡。我们将在下面做更详细的解释。如果一个特定的VPN正在通过骨干网发送“本地”组播流,我们称它为一个MVPN。“本地”组播流的意思是没理解!,一个CE发送给一个PE的包,包的IP目的
19、地址是一个组播组地址,包是寻址到PE路由器自身的组播控制包,或是封装在MPLS中的IP组播数据包。我们所说的骨干组播路由对一个特定VPN中的一个特定的组播组是最优的,必须满足下面所有的条件:-当一个PE路由器从一个CE路由器收到组播数据包,它发送这个包以如下的方式:这个包被每一个其它PE路由器接收,这些PE路由器在通往该组播组的接收者的路径上;-包不被任何其它PE接收到;-在骨干网中,不会超过一份包的考贝穿过任何链路;-在骨干网中,如果带宽利用要被优化,包会穿过最小代价树,而不是最短路径树。最优路由要求骨干网维护针对特定流的一个或多个源树。每一个这样的树要求树中的所有P路由器都要维护状态。可能
20、,这将要求P路由器中维护无限的/不受控制的状态数量,因为SP不能控制它支持的VPN中的组播组的数量。SP同样也不能控制每个组的发送者的数量,或者接收者的分布。本文档中定义的流程允许SP提供组播VPN服务,不要求P路由器维护的状态的数量与VPN中组播数据流的数量成比例。状态的数量与组播路由之间进行权衡。足够的灵活性提供给了SP,SP自己在可扩展性与最优性间权衡。SP甚至可以允许一些VPN中的一些组播组接收最优路由,而其它的不是。因此,这个灵活性的代价是协议提供的可选项数量的增加。提供可扩展性的基本技术是聚合一些用户组播流到一个单一的组播分发树中,穿过P路由器。有一些聚合的方法可以支持。本文档中定
21、义的流程也适合于那些根本不想在它的骨干网中构建组播分发树的SP;入口PE能复制每个组播数据包然后通过隧道单播发送每份拷贝到每个需要接收数据的出口PEP中不需要组播分发树,发到指定PE?不是所有?。211组播分发树本文档支持:在骨干网中使用单个组播分发树承载来自于一个或是多个MVPNs多个MVPN共用一个树?的指定集合的所有的组播业务。这样的树叫做“相容树“(Inclusive Tree)。承载超过一个MVPN的相容树叫做“聚合相容树”(Aggregate Inclusive Tree)。一个相容树(的成员)包括了所有的连接到使用这颗树的MVPNs的PE。按照这个方案,即使每个树只支持一个MVP
22、N,上层绑定的P路由器上维护的状态的数量与支持的VPN的数量成比例,而不是那些VPN中的组播流的数量。聚合相容树则需要更少的状态维护。因此,状态不会与MVPN的数量成线性增长。然而,因为数据从一些组播组聚合一起到了一个单个的相容树,这样就会有一些PE本不需要,但也会收到组播数据,一定程度上牺牲了优化性。本文档也提供了方案:使骨干网中的一个单一组播分发树用来承载来自于一个MVPN或多个MVPN的只属于一个指定的组播组或多个组播组的业务。这样的树叫做“选择性树”(Selective Tree)。当组播组属于不同MVPN时,叫做“聚合选择性树”(Aggregate Selective Tree)。默
23、认情况是,来自于大部分组播组的业务被一个相容树承载,当有高带宽组的业务流时,用一个选择性树承载。当创建选择性树时,该树应该只包括那些需要从树中包含的一个或多个组中接收组播数据的PE。这比只使用相容树的路由更优化,尽管它需要P路由器维护额外的状态。212通过单播隧道入口复制本文档也提供了方案,通过单播隧道承载MVPN数据业务从入口PE到每一个出口PE。入口PE复制从一个CE收到的组播数据包,使用单播隧道发送它到每一个出口PE。这根本不需要P路由器有任何的组播路由状态,但它把全部的复制负担放在入口PE路由器这种方式P路由不需要支持组播协议?,并且组播路由不可优化。22组播路由邻接在BGP/MPLS
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机硬件及网络 计算机硬件及网络RFC6513 MVPN的理解 计算机硬件 网络 RFC6513 MVPN 理解
链接地址:https://www.31ppt.com/p-4561327.html