一、基本原理
1、私网标签分配
在 BGP/MPLS IP *** 中,PE 通过 MP-BGP 发布私网路由给骨干网的其他相关的 PE 前,需
要为私网路由分配 MPLS 标签(私网标签)。当数据包在骨干网传输时,携带私网标签。
PE 上分配私网标签的方法有如下两种:
1)、基于路由的 MPLS 标签分配:为 *** 路由表的每一条路由分配一个标签(one
label per route)。这种方式的缺点是:当路由数量比较多时,设备入标签映射表
ILM(Incoming Label Map)需要维护的表项也会增多,从而提高了对设备容量的
要求。
2)、基于 *** 实例的 MPLS 标签分配:为整个 *** 实例分配一个标签,该 *** 实例里
的所有路由都共享一个标签。使用这种分配方法的好处是节约了标签。
2、私网路由交叉
两台 PE 之间通过 MP-BGP 传播的路由是 ***v4 路由。当接收到 ***v4 路由,PE 先进行
如下处理:
1)、 检查其下一跳是否可达。如果下一跳不可达,该路由被丢弃。
2)、 对于 RR 发送过来的 ***v4 路由,如果收到的路由中 cluster_list 包含自己的
cluster_id,则丢弃这条路由。
3)、 进行 BGP 的路由策略过滤,如果不通过,则丢弃该路由。
之后,PE 把没有丢弃的路由与本地的各个 *** 实例的 Import Target 属性匹配。***v4 路
由与本地 *** 实例的 Import ***-Target 进行匹配的过程称为私网路由交叉。
PE 上有种特殊的路由,即来自本地 CE 的属于不同 *** 的路由。对于这种路由,如果其下
一跳直接可达或可迭代成功,PE 也将其与本地的其他 *** 实例的 Import Target 属性匹
配,该过程称为本地交叉。例如:CE1 所在的 Site 属于 ***1,CE2 所在的 Site 属于
***2,且 CE1 和 CE2 同时接入 PE1。当 PE1 收到来自 CE1 的 ***1 的路由时,也会与
***2 对应的 *** 实例的 Import Target 属性匹配。
3、公网隧道迭代
为了将私网流量通过公网传递到另一端,需要有一条公网隧道承载这个私网流量。因此私
网路由交叉完成后,需要根据目的 IPv4 前缀进行路由迭代,查找合适的隧道(本地交叉的
路由除外);只有隧道迭代成功,该路由才被放入对应的 *** 实例路由表。将路由迭代到
相应的隧道的过程叫做隧道迭代。
隧道迭代成功后,保留该隧道的标识符(Tunnel ID),供后续转发报文时使用。Tunnel ID
用于唯一标识一条隧道。*** 报文转发时根据 Tunnel ID 查找对应的隧道,然后从隧道上
发送出去。
4、私网路由的选择规则
经过路由交叉和隧道迭代的路由并不是全部被放入 *** 实例路由表。从本地 CE 收到的路
由和本地交叉路由也不是全部被放入 *** 实例路由表。
对于到同一目的地址的多条路由,如果不进行路由的负载分担,按如下规则选择其中的一
条:
1)、 同时存在直接从 CE 收到的路由和交叉成功后的同一目的地址路由,则优选从 CE
收到的路由。
2)、 同时存在本地交叉路由和从其他 PE 接收并交叉成功后的同一目的地址路由,则优
选本地交叉路由。
对于到同一目的地址的多条路由,如果进行路由的负载分担,则:
3)、 优先选择从本地 CE 收到的路由。只有一条从本地 CE 收到的路由而有多条交叉路
由的情况下,也只选择从本地 CE 收到的路由。
4)、 只在从本地 CE 收到的路由之间分担或只在交叉路由之间分担,不会在本地 CE 收
到的路由和交叉路由之间分担。
二、 跨域 ***
一般的 MPLS *** 体系结构都是在一个自治系统 AS(Autonomous System)内运行,任
何 *** 的路由信息都是只能在一个 AS 内按需扩散,没有提供 AS 内的 *** 信息向其他
AS 扩散的功能。因此,为了支持运营商之间的 *** 路由信息交换,就需要扩展现有的协
议和修改 MPLS *** 体系框架,提供一个不同于基本的 MPLS *** 体系结构所提供的互
连模型——跨域(Inter-AS)的 MPLS ***,以便可以穿过运营商间的链路来发布路由前
缀和标签信息。
1、跨域 ***-OptionA(Inter-Provider Backbones Option A)方式:需要跨域的 *** 在
ASBR(AS Boundary Router)间通过专用的接口管理自己的 *** 路由,也称为
VRF-to-VRF
跨域 ***-OptionA 的特点
优点是配置简单:由于 ASBR 之间不需要运行 MPLS,也不需要为跨域进行特殊配置。
缺点是可扩展性差:由于 ASBR 需要管理所有 *** 路由,为每个 *** 创建 *** 实例。
这将导致 ASBR 上的 ***-IPv4 路由数量过大。并且,由于 ASBR 间是普通的 IP 转发,
要求为每个跨域的 *** 使用不同的接口,从而提高了对 PE 设备的要求。如果跨越多个
自治域,中间域必须支持 *** 业务,不仅配置量大,而且对中间域影响大。在需要跨域
的 *** 数量比较少的情况,可以优先考虑使用。
2、跨域 ***-OptionB(Inter-Provider Backbones Option B)方式:ASBR 间通过 MP-
EBGP 发布标签 ***-IPv4 路由,也称为 EBGP redistribution of labeled ***-IPv4
routes
跨域 ***-OptionB 的特点
不同于 OptionA,OptionB 方案不受 ASBR 之间互连链路数目的限制。
局限性:*** 的路由信息是通过 AS 之间的 ASBR 来保存和扩散的,当 *** 路由较多
时,ASBR 负担重,容易成为故障点。因此在 MP-EBGP 方案中,需要维护 *** 路由信
息的 ASBR 一般不再负责公网 IP 转发。
3、跨域 ***-OptionC(Inter-Provider Backbones Option C)方式:PE 间通过 Multi-
hop MP-EBGP 发布标签 ***-IPv4 路由,也称为 Multihop EBGP redistribution of
labeled ***-IPv4 routes
跨域 ***-OptionC 的特点
*** 路由在入口 PE 和出口 PE 之间直接交换,不需要中间设备的保存和转发。
*** 的路由信息只出现在 PE 设备上,而 P 和 ASBR 只负责报文的转发,使得中间域的设备可以不支
持 MPLS *** 业务,只需支持 MPLS转发,ASBR 设备不再成为性能瓶颈。因此跨域 ***-OptionC
更适合在跨越多个 AS 时使用。更适合支持 MPLS *** 的负载分担。缺点是维护一条端到端的 PE 连
接管理代价较大。