[计算机硬件及网络]RFC6513 MVPN的理解.doc

上传人:sccc 文档编号:4561327 上传时间:2023-04-27 格式:DOC 页数:41 大小:395.50KB
返回 下载 相关 举报
[计算机硬件及网络]RFC6513 MVPN的理解.doc_第1页
第1页 / 共41页
[计算机硬件及网络]RFC6513 MVPN的理解.doc_第2页
第2页 / 共41页
[计算机硬件及网络]RFC6513 MVPN的理解.doc_第3页
第3页 / 共41页
[计算机硬件及网络]RFC6513 MVPN的理解.doc_第4页
第4页 / 共41页
[计算机硬件及网络]RFC6513 MVPN的理解.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《[计算机硬件及网络]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

24、 IP VPNs RFC4364中,每一个CE路由器是一个PE路由器的一个单播路由邻接,但不同站点上的CE路由器互相之间不形成单播路由邻接。这一重要的特性在组播路由中被保留了下来:一个CE路由器与一个PE路由器形成组播路由邻接,但不同站点上的CE路由器间不形成组播路由邻接。我们使用术语“C-tree“来表示一个节点中包含了CE路由器的组播分发树。PE-CE链路上的组播路由协议假定为PIM PIM-SM。ASM和SSM服务模型都能被支持。因此,共享C-tree即RPT和SPT。和指定源C-tree都被支持。共享C-tree可能是单向的或双向的;在后一种情况,组播路由协议假定为BIDIR-PIMD

25、CL不支持。,即PIM-SM的变种。一个CE路由器与它连接的PE路由器交换“普通的“PIM控制消息。PIM-DM的支持不在本文档的范围内。连接到特定MVPN的PE路由器间必须互相交换组播路由信息。这里定义了两种基本的方法:(1)PE-PE PIM和(2)BGP。在前一种方法中,PE需要互相之间形成组播路由邻接。后一种方法中不需要。举例,每一个PE可能是一个路由反射器(RR)的BGP邻接,而不是任何其它PE的邻接。为了支持RFC4364的“Carriers Carrier“模型什么模型?,mLDP(用于多点标签交换通道的标签分发协议扩展)MLDP,RFC6388可能也要在PE-CE接口上支持。m

26、LDP在PE-CEPE-CE间要使用mLDP和BGP?接口上的使用在RFC6514 MVPN-BGP中有描述。PE-CE接口上BGP的使用不在本文档的范围内。23组播VPN定义能互通的站点组成MVPN。分为两组站点:发送站点集和接收站点集。一个给定的MVPN中的站点,可能在相同的组织中,或在不同的组织中,即一个MVPN可能是一个内联网,或者是一个外联网。一个给定的站点,可能同时在多个MVPN中,即MVPN有重叠。不是一个给定的MVPN中的所有站点都必须连接到相同的SP,即一个MVPN可能跨越多个SP。或者说MVPN由一组管理策略定义。它由MVPN用户定义,由MVPN SP使用已有的BGP/MP

27、LS VPN机制来实现,比如,有需要的话,对RT进行扩展。24自动发现为了使连接到一个给定MVPN的PE路由器之间互相交换MVPN控制信息,每一个PE路由器需要发现连接到相同MVPN的所有其它PE。(严格地说,一个在接收站点集中的PE只需要发现在发送站点集中的其它PE,一个在发送站点集中的PE只需要发现在接收站点集中的其它PE)。这被称为“MVPN 自动发现”。本文档讨论了两种方法来提供MVPN 自动发现:-BGP可以用来发现和维护MVPN成员关系。PE路由器使用BGP广告他们的MVPN成员关系给其它PE路由器。一个PE被认为是一个特定MVPN的一个“成员”,如果它包括一个VRF(虚拟路由和转

28、发表,见RFC4364),并且这个VRF被配置为包括了那个MVPN的组播路由信息。这个自动发现选项与用来穿越骨干网传送MVPN组播数据包的方法没有任何关联。-一个特定MVPN的PE-PE组播控制包(比如,PIM包)被传送穿越一个支持ASM服务模型(比如,穿越一个由non-SSM PIM-SM或BIDIR-PIM创建的树)的非聚合相容树,并且连接到那个MVPN的PE被配置了与那个树相对应的组地址,那么这些PE能通过加入树然后在树内组播PIM Hellos以组播方式发送PIM Hello消息,即当做组播流发送。简单地实现互相自动发现。25 PE-PE间组播路由信息BGP/MPLS IP VPN R

29、FC4364规范需要一个PE至多与网络中的每一个其它PE维护一个BGP对等操作(BGP Peering)。这个对等操作用来交换VPN路由信息。路由反射器的使用进一步减少了PE用来与其它PE交换VPN路由信息而维护的BGP邻接的数目。本文档描述了各种选项,用来在使用PIM或BGP的PE 路由器间交换MVPN控制信息。关于一个PE路由器需要维护用来与其它PE路由器交换MVPN控制信息的路由邻接的数目,这些选项有不同的开销。这些选项中的有一些允许单播BGP/MPLS VPN模型的保留,让一个PE维护至多一个BGP路由邻接与其它PE路由器用来交换MVPN控制信息。BGP也提供了可靠的传输和增量更新的使

30、用。另一个选项是使用当前存在的“软状态”PIM标准PIM-SM,使用周期性的完整的更新。26 PE-PE间组播数据传输像RFC4364一样,本文档将交换路由信息的方案与传输数据业务的方案相分离。因此,骨干网中可能使用各种传输技术。对于相容树,这些传输技术包括单播PE-PE隧道,封装在MPLS,IP,或GRE(通用路由封装),组播分发树,创建自PIM(单向SSM或ASM服务模型或双向的),使用IP/GRE封装,点到多点LSPs-创建自RSVP-流量工程(RSVP-TE)或mLDP,和多点到多点LSPs,创建自mLDP。为了聚合来自多个MVPN的业务到一个单一的组播分发树,需要有一个机制来使能树的

31、出口来多路复用树内收到的组播业务,使每一个收到的包关联到一个特定的MVPN。本文档指定了一个机制,树的根使用上游标签分配RFC5331来给每一条流分配一个标签。这个标签被接收者用来实现多路复用。本文档也描述了基于BGP的方案,一个聚合树的根用来广告相容性和/或者选择性绑定和多路复用信息给树的叶子。本文档也描述了用于支持各种SP组播传输的数据平面封装的选项。聚合多个MVPN的业务到一个单一的多点到多点LSP或者到一个单一的双向组播分发树的规范不在本文档的范围内。作为选择性树,支持ASM服务模型的组播分发树的使用规范,不在本文档的范围内。作为选择性树使用多点到多点LSPs的规范,不在本文档的范围内

32、。本文档假定,当使用SP组播树时,对一个特定组播组的业务仅被一个SP组播树上的一个特定的PE发送。使用多个SP组播树传送属于一个特定组播组的业务,不在本文档的范围内。27 自治系统间的组播VPN略28可选择的消除/减少共享树状态本文档也讨论了一些选项,和协议扩展,可用于消除/减少当VPN创建单向C-tree用于支持ASM服务模型时PE路由器间分发(*,G)和(*,G,rpt)状态的需求。3概念与框架31 PE-CE组播路由在BGP/MPLS IP VPNs中对组播的支持是模仿自在BGP/MPLS IP VPNs对单播的支持。即,一个组播路由协议将运行在PE-CE接口,这样PE和CE在那个接口上

33、是组播路由邻接。在不同站点的CE之间不形成组播路由邻接。如果一个PE连接到N个支持组播的VPN(比如连接到N个“MVPNs“),这个PE将运行N个独立的组播路由协议的实例。我们称这些组播路由实例为”VPN-specific组播路由实例“,或者更简洁的称为”组播C-实例s“。在RFC4364中定义的一个“VRF“(VPN路由和转发表)的概念,除了包括单播路由条目,还被延伸包括了组播路由条目。每一个组播路由条目因此被关联到一个特定的VRF。一个特定的VRF是否属于一个MVPN取决于配置。在本文档中,我们不试图提供对可能运行在PE-CE链路上的每一种可能的组播路由协议的支持。我们考虑的组播C-实例只

34、适用于以下组播路由协议:-PIM-SM,支持ASM服务模型-PIM-SM,支持SSM服务模型-PIM双向模式(BIDIR-PIM),使用双向的C-trees来支持ASM业务模型。为了支持RFC4364的“Carriers Carrier“模型,mLDP可能也需要在PE-CE接口上被支持。在PE-CE接口上使用mLDP在RFC6514中描述。BGP在PE-CE接口上的使用不在本文档的范围内。由于本文档所讨论的唯一的组播C-实例是基于PIM的C-实例,我们也通常使用术语“PIM C-instances“来表示组播C实例。一个PE路由器可能意思是可能没有?也正在运行一个“provider-wide“

35、PIM的实例,(一个”PIM P-instance“),这个实例拥有一个PIM邻接,比如与它的IGP邻居(也就是P路由器)的邻接,但不与任何CE路由器邻接,也不与其他PE路由器邻接(除非另一个PE路由器恰好是它的IGP邻接)。这种情况下,P路由器将也要运行PIM的P-instance,而非一个C-instance。如果有一个PIM P-instance,那么它可能参与了,也可能没有参与对VPN组播的支持;这在后面的章节有讨论。不管怎样,PIM P-instance无论如何不会包括VPN相关的组播路由信息。为了帮助阐明什么时候我们讲的是PIM P-instance,什么时候我们讲的是PIM C-

36、instance,我们也将在控制消息,地址等前面分别使用前缀“P-”和“C-”。因此,一个P-Join将是被PIM P-instance处理的一个PIM Join,一个C-Join将是被一个C-instance处理的一个PIM Join。一个P-group地址将是一个SP的地址范围内的一个组地址,一个C-group地址将是一个VPN的地址范围内的一个组地址。一个C-tree是由PIM C-instance创建和维护的一个组播分发树。一个C-flow是一个关联到一个普通的C-source地址和一个普通的C-group地址的组播包的流。我们将使用符号“(C-S,C-G)”来标识特定的C-flows

37、。如果一个特定的C-tree是一个共享树(不管是单向的还是双向的)而非一个有源树,我们有时会使用“(C-*,C-G)”来表示经过那个树的全部流。32 P-组播服务接口(PMSIs)一个PE必须有能力转发从一个CE收到的组播数据包到在相同MVPN中的一个或多个其它PE,从而分发到一个或多个其它的CEs。我们定义了一个概念:“P-Multicast Service Interface”(PMSI)。如果一组PE路由器支持了一个特定的MVPN,那么将会有一个或多个PMSIs连接着那些PE路由器和/或它们的子集。一个PMSI是一个在P-网络上的概念上的“覆盖”,它包括了下面的属性:在一个给定MVPN中

38、的一个PE能把一个包给PMSI,然后这个包将会被分发到这个MVPN中的一些或所有其它的PE,以致任何收到这个包的PE将能确定这个包属于哪一个MVPN。如下面我们将讨论的,一个PMSI可能通过若干不同的传输机制所实例化,这取决于MVPN和SP的具体要求。我们称这些传输机制为“P-tunnels”。对于每一个MVPN,有一个或多个PMSIs用于从一个PE到其它PE间传输MVPN的组播数据。我们将使用术语“PMSI”,一个单个PMSI属于一个单个的MVPN。然而,用于PMSI实例化的传输机制可能允许一个单个的P-tunnel承载多个PMSIs的数据即一个P-tunnel用于多个MVPN。在本文档中,

39、我们明确的区分组播服务(PMSI)和它的实例化。这允许我们将不同的服务的讨论与每个服务的不同的实例化的讨论分离开。术语“P-tunnel”用于表示实例化一个服务的传输机制。PMSIs用于承载C-multicast数据业务。C-multicast数据业务沿着C-tree传输,但在SP骨干网中,所有的C-tree通过P-tunnels隧道。因此,我们有时会讲到一个P-tunnel承载一个或多个C-tree。有一些用于在PE间传递组播控制流的选项会通过一个PMSI发送控制流;其它选项不会通过PMSI发送控制流。321相容性的和选择性的PMSIs我们将区分三种不同的PMSIs:-“多向相容性”PMSI

40、(MI-PMSI)连接到一个特定MPVN的任何PE都能发送消息,然后被连接到那个MVPN的每一个其它PE接收到。即,每个MVPN最多一个MI-PMSI。(尽管如此,用于实例化一个MI-PMSI的P-tunnel或P-tunnels可能实际上承载了超过一个PMSI的数据。)一个MI-PMSI可以被认为是一个连接到支持特定MVPN的一组PE的覆盖型广播网络。-“单向相容性”PMSI(UI-PMSI)连接到一个特定MVPN的一个特定的PE能发送消息,然后被连接到那个MVPN的所有其它PE接收到。即,每个MVPN每个PE最多一个UI-PMSI,尽管如此,用于实例化一个UI-PMSI的P-tunnel实

41、际可能承载了超过一个PMSI的数据。-“选择性”PMSI(S-PMSI)一个MVPN的一个特定的PE能组播消息,然后被那个MVPN的其它PEs的一个子集接收到。每个MVPN每个PE可能有任意个数的S-PMSI。用于实例化一个给定S-PMSI的P-tunnel可能承载了多个S-PMSIs的数据。在后面的章节,我们描述了这三种不同的PMSIs所承担的角色。我们将使用术语“I-PMSI”作为“MI-PMSIs”和“UI-PMSIs”的统称,当不需要区分它们时。322 P-Tunnels实例化PMSIs用于实例化PMSIs的P-tunnels将被称为“P-tunnels”。许多不同的tunnel建立技

42、术能被用来创建实例化PMSIs的P-tunnels。这些技术如下:-PIM一个PMSI可以被实例化为(一组)由PIM P-instance创建的组播分发树(“P-trees”)。用于实例化I-PMSIs的组播分发树可能是共享树,或者是有源树那需要N个有源树。本文档(连同RFC6514-MPVN-BGP)指定了用于标识一个特定的(C-S,C-G)流和把它指定到一个特定S-PMSI的方案。这样的一个S-PMSI最自然的被实例化为一个有源树。使用共享树(包括双向树)实例化S-PMSIs不在本文档范围内。使用PIM-DM创建P-tunnels不被支持。P-tunnels可能被多个MVPNs共享(即,一

43、个给定的P-tunnel可能是多个PMSIs的实例化),只要这个tunnel封装提供一些方法多路复用MVPN的业务数据。-mLDPmLDP点到多点(P2MP)LSPs或多点到多点(MP2MP)LSPs能被用于实例化I-PMSIs。一个S-PMSI或一个UI-PMSI能被实例化为一个单个的mLDP P2MP LSP,然而一个MI-PMSI将必须被实例化为一组那样的LSPs(MVPN中的每一个PE都是那样的一个LSP的根)或者一个单个的MP2MP LSP。多个MVPNs共享MP2MP LSPs的方案不在本文档的范围内。使用MP2MP LSPs实例化S-PMSIs不在本文档范围内。1123节讨论了一

44、种方法,使用一个MP2MP LSP的部分覆盖实例化一个PMSI。然而,必需方案的一个完整的详细说明不在本文档范围内。-RSVP-TE一个PMSI可能被实例化为一个或多个RSVP-TE点到多点(P2MP)LSPs。一个S-PMSI或一个UI-PMSI能被实例化为一个单个的RSVP-TE P2MP LSP,然而一个MI-PMSI将被实例化为一组那样的LSPs,MVPN中的每一个PE一个(P2MP LSP)。RSVP-TE P2MP LSPs能被多个MVPNs共享。-单播P-Tunnels的覆盖如果一个PMSI被实施为一个单播P-tunnels的覆盖,一个希望通过PMSI发送包的PE将复制这个包然后

45、发送一份拷贝到其它的每一个PEs。一个给定MVPN的一个MI-PMSI可以被实例化为一个MVPN的PE间的单播P-tunnels的全覆盖。一个UI-PMSI或一个S-PMSI可以被实例化为部分覆盖。可以看到,实施PMSIs的每一种方法都有它自己的适用范围。因此,本规范允许使用这些方法中的任何一个。初看,可能会认为选择过于丰富,然而,组播发展和应用的历史应该表明,没有一种选项是永远合意的。分段的inter-AS树的使用不允许每一个SP去选择它认为在自己环境中最合适的选项,不能保证任何其它的SP会选择了相同的选项。指明什么环境下一个特定的建树方法是合适的不在本文档范围内。Tunnel技术的选择属于

46、发送路由器即说明,一个MVPN中的所有PE都要使用相同的tunnel技术。,并且是那个路由器的一个本地策略。本文档中定义的方案没有要求一个特定的骨干网中的所有的P-tunnels使用相同的tunnel技术。然而,可以被一个特定的MVPN的一个PE所使用的任何tunnel技术,也要被拥有该MVPN VRFs的所有其它的PE所支持。此外,一个MVPN的任何PE使用入口复制,那么在该MVPN中的所有其它PE必须使用入口复制。33使用PMSIs承载组播数据每一个支持一个特定MVPN的PE必须有方法发现下面的信息:-连接着那个MVPN的站点的它所在的AS内的其它PEs集,及有PEs连接着那个MVPN的站点的其它ASes集。然而,如果使用非分段的自治系统间的树(见8.1节),那么每一个PE需要知道所有连接着那个MVPN的站点的PE全集。-如果使用分段的自治系统间的树,它所在的AS内的支持那个MPVN的inter-AS连通性的边界路由器集。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号