HCIP(14)

LDP --- 标签分发协议 --- 主要应用在 MPLS 的控制层面

        MPLS 控制层面需要完成的工作主要就是分配标签和传递标签。分配标签的前提是本地路由表中得先存在标签,传递标签的前提也是得先具备路由基础。所以, LDP 想要正常工作,则需要 IGP 作为基础。 

 1,分配标签
        分配标签并不是所有设备都针对自己本地路由表中所有的路由条目分配标签,而是在判定自己是到达某网段的出站 LSR 时,才会主动分配标签。

当然,在构成到达目标网段的 LSP 过程中,所有中间的 LSR 都需要给对应的 FEC 分配标签才行。则其他设备只有在收到标签和目标网段的映射关系后,才会被动的分配标签。分配标签之前需要完成检查动作,主要检査目标网段本地路由表是否可达,以及下一跳和通告者是否相同。检查通过则可以分配标签,不通过则不能分配标签。
                 LDP 的标签分配方式:
                1,有序方式 --- 华为设备默认选择的是有序方式分配标签
                2,独立方式 --- 不需要确认自己是出站 LSR ,也可以主动给路由表中路由条目分配标签。

2,传递标签
        出站 LSR 分配完标签之后,需要传递给其他的 LSR 设备,传递的前提条件是彼此之间得先是 LDP 对等体关系。而 LDP 对等体关系建立的前提条件是需要先建立 LDP 会话。
        本地 LDP 会话 --- 直连的两个设备之间建立 LDP 会话
        远程 LDP 会话 --- 非直连设备之间,可以通过手工指定的方式来创建远程的 LDP 会话。


         LDP 协议在建立本地的 LDP 会话时,不需要手动指定邻居的 IP 地址,可以自动的发现邻居关系。主要是因为 LDP 首先会总过组播(224.0.0.2)的形式周期性发送 hello 包来发现邻居。 helo 包使用 UDP 646端口来完成。
本地 LDP 会话的建立过程:
1,在 LSR 上激活 LDP 之后,首先周期性的发送 helo 包来完成对等体的发现工作。

 在 HELLO 包中需要携带一些参数,其中包含传输地址和 LDP ID 。
传输地址:这个地址主要是后面建立 TCP 会话时需要用到的地址,默认情况下,我们将使用该设备的 LSR ID 来作为这个地址。所以要求, LSR ID 必须是可用且可达的 IP 地址。


 LDP ID :所有激活 LDP 协议的 LSR 设备都要求必须具有一个 LDP ID ,这个 ID 是由48位二进制构成,表达方式位32位:16位,前32位使用是 LSR ID ,后16位用0来表示。这个和标签空间有关,所有基于设备的标签空间,其值都为0。
         hello 包的发送周期默认为5s,保活时间为3倍 helo 时间,即默认15秒


2,双方在交互完 hello 包之后,将获取到对方传输地址,则将根据这个传输地址来建立 TCP 会话。
        在建立 TCP 会话之间, LDP 也存在检査动作,需要先确认收到的传输地址,在本地路由表中是否可达,可达则可以正常建立 TCP 会话。
        如果双方都建立 TCP 会话,则将创建两条双向通道,造成资源浪费。则在收到对端 hello 包中的传输地址后,将和本地的传输地址进行对比,传输地址大的一方,我们称为主动方,主动方则可以主动建立 TCP 会话,而被动方则不建立。

 3,完成 TCP 会话建立之后,传递地址大的一方将优先使用初始化报文,里面包含一些协商的参数发给被动方。对方如果确认里面的参数,则将回复 keeplive 报文进行确认,同时发送自己本地的初始化报文,携带自己的参数。主动方收到后也将对参数进行确认,如果没问题则也将发送 keeplive 报文。双方都收到 keeplive 报文,则代表参数协商成功, LDP 会话建立成功。

 之后,也需要周期性的发送 keeplive 报文进行保活,发送周期默认为15S,保活时间为3倍的周期发送时间,则默认为45秒。

上下游关系 --- 由数据层流量流动方向来决定,数据发送方为上游,接受方为下游。从控制层的角度来看,则标签传递的方向应该是从下游发送到上游。之后上游设备会去收集下游的标签
标签传递方式 --- DU 模式 --- 下游自主模式 --- 华为设备默认采用这种模式,所有 LSR 在分配好标签之后,可以主动的将标签传递给其他 LSR 
                ---如果选择的是下游自主模式,则设备在传递标签时,无法判断上下游关系的,则会将标签发给所有的对等体关系。当设备收到标签之后,则将可以基于路由表判断上下游关系。华为设备,只有上游设备会记录下游设备发送的标签,而上游设备发送的标签将不保存。(还有一种标签的保存模式是上下游标签都保存。)
         DOD 模式 --- 下游按需模式 --- 只有下游设备在收到上游设备通知之后,才会给上游设备发送标签。

数据层面流动过程
        在数据层面流量通过的过程当中,入站 LSR 设备和出战站LSR 设备都需要查询两张表,一张 FIB 表,一张 LFIB 包才能完成转发过程,导致效率降低,需要优化。
优化思路:
入站 LSR  --- 因为入站的数据包中不包含标签,所以,必须查看 FIB 表。则可以直接将出站标签添加到 FIB 表中,这样则将不再需要査看 LFPB 表。
出站 LSR --- PHP  ---- 次末跳弹出机制 --- 出站 LSR 设备在给 FEC 分配标签时直接分配特殊标签3(隐式空标签),之后,将这个标签传递给自己上游设备,上游将会把这个标签作为出站标签记录在 LFIB 表中。当有数据来到设备上,匹配 LFIB 时发现出战标签为3,则他将直接把这个标签弹出。则这样出站 LSR 设备收到的将是一个不带标签的数据包,则他可以直接査看 FIB 表来实现转发。
华为设备默认开启次末跳弹出机制。
 LDP 的配置
1,先在所有 LSR 上启动 IGP 协议,保证路由基础

2,配置 MPLS 的 LSR ID

        [r1] mpls lsr - id 1.1.1.1
3,激活 MPLS 和 LDP 
        全局激活

                 [r1] mpls
                 Info : Mpls starting , please wait .. OK !

                [r1] mpls ldp 
        接口激活
                [r1-GigabitEthernet0/0/0] mpls 
                [r1-GigabitEthernet0/0/0] mpls ldp 


[r1] display mpls ldp peer --- 查看 LDP 对等体关系

[r1] display mpls ldp session --- 查看 LDP 会话

[r4] display mpls Isp --- 查看 LFIB 表
注意:华为设备默认只给/32的主机路由分配标签,因为 MPLS 并没有主要应用在数据转发上,如果路由表中路由条目太多,则将导致生成过多 LSP ,造成资源浪费。
[r4-mpls]lsp- trigger all --- 这个命令可以让设备给出来/32主机路由外的路由分配标签


 MPLS 解决路由黑洞问题
        [r2] route recursive - lookup tunnel --- 在进行路由递归查找的时候,如果有隧道则递归隧道
        [r2] display fib verbose --- 查看 FIB 表的细节信息


 MPLS VPN 技术
         MPLS VPN 是一种由运营商提供的,专门解决虚拟专线安全及带宽问题的综合解决方案。

 

站点 --- 可以理解为是一个组织机构在不同地理位置设置的不同的 IP 网络。

 PE --- 服务提供商边界设备 --- 需要连接 CE (客户网络的边界设备)设备,则需要接受客户私网的路由信息。他还需要将私网的路由信息传递到远端的 PE 设备上。这部分路由的传输主要使用 BGP 协议来进行传递。则中间的 IP 设备(服务提供商的设备),只需要完成路由信息的高速转发即可。


 VRF --- 虚拟路由转发 --- VPN instance ( VPN 实例)--- 我们可以将一台真实的物理设备抽象出多台虚拟的设备。每一个虚拟的设备就被称为一个 VRF 空间,每个 VRF 空间都拥有独立的路由表, FIB 表,动态路由协议,及接口。

RD 值 ----- 路由区分码 ---- 由64位二进制构成的,华为设备最常用的表达方式是 AS : NN (前面 AS 代表所在的 AS 号,后面 NN 代表自定义值) 

VPNV4路由 --- IPV4路由信息前面添加上 RD 值之后,从原来的32位变为96位,则将变成VPNV4路由。
 MP-BGP --- 可以针对多种地址组的路由信息来进行携带。如果需要传递VPNV4路由,则需要使用 MP-BGP 来进行传递。
 RT --- 路由目标值 --- VPN Target --- 32位二进制构成 --- 由 BGP 的社团属性来携带
        出站 RT 值 --- Export RT --- PE 设备为不同 VRF 空间配置不同的出站 RT ,发出由社团属性携带,需要和远端 PE 设备上的入站 RT 对应。
        入站 RT 值 --- Import RT --- PE 设备为不同 VRF 空间配置不同的入站 RT ,根据社团属性中携带的值进行比对,将其放入对应的 VRF 空间当中 

数据层流量 --- 数据层流量主要是在到达远端E设备上时无法分辨到底加入到哪个VRF空间中,所以,需要使用双层标签来进行区分。--- 外层标签(靠近二层)---公网标签 --- 由LDP协议来分配,其目的是为了保证数据可以正常的通过MPLS域,到达远端PE。
                ---内层标签(靠近三层) --- 私网标签 --- 由MP-BGP协议来分配,
目的是在远端E设备上弹出外层标签后,可以根据内层标签判断到底是到达哪个VRF的数据流量。内层标签需要和VRF空间存在对应关系,这个标签是由MP-BGP分配后,通过社团属性随着路由传递到达对端PE。
配置:

創建VRF空回:
[r2lip vpn—instance a    ---注意,华为设备大小写敏感

[r2-vpn—instance—alroute—distinguisher 10:100 ---配置RD值
[r2-vpn-instance-a-af-ipv4]

[r2-vpn-instance-a-af-ipv4]ypn-target 10:1 exort-extcommunity -配置出站RT
EVT Asignment result:
Info: VPN-Target asignmentis succesful,

[r2-vpn-instance-a-af-ipv4]ypn-target 10:2 import-extcommunity --- 配置入站RT
IVT Assignment result:
Info: VPN-Target assignment is succesful.

[r2-GigabitEthernet0/0/0]ip binding vpn-instance a --- 将接口刻入到VRF空间
Info: AlI IPv4 related configurations on this interface are removed!
Info: Al IPv6 related configurations on this interface are remove!


[r2ldisplay ip routing-table vpn—instance a    ---查看VRF空间中的路由表
[r2]ping—vpn—instance a 192.168.2.1 ---根据VRF空间的路由信息发送数据包
[r2]ip route-static vpn-instance a 192.168.1.0 24 192.168.2.1 ---往VRF空间中添加静态路由
[r2—bgp]ipv4-family vpnv4    ---启动MP—BGP
[r2-bgp-af-vpnv4]peer 4.4.4.4 enable
[r2—bgp]ipv4-family pn—instance a --- 在VPN空间中导入路由
[r2-bgp-a]import-route static 
[r2-bgp-a]import-route direct
[r4]display bgp vpnv4 vpn—instance b routing—table    ---查看VRF空间中的BGP表
[r2]rip 1 vpn—instance a   ---在空间中启动动态路由协议
[r4]ospf 2 vpn-instance b router-id 4.4.4.4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值