目录
一、MPLS Multi-Protocol Label Switching(多协议标签交换)
按照自己学习记录写的笔记,些许杂乱,后面有空优化一下排版。
一、MPLS Multi-Protocol Label Switching(多协议标签交换)
- 多协议------MPLS可以运行在多种网络环境下
- 标签交换---给标签添加或剥离标签,依据标签转发报文
早期因为硬件性能没有跟上网络流量增加的速度,转发效率出现瓶颈,诞生了ATM(异步传输模式)
- ATM-----面向连接,查看短而定长的标签转发报文
- IP -----面向无连接,查看IP地址执行最长掩码匹配原则转发报文
MPLS借鉴了ATM的面向连接,标签转发的机制,可以实现在IP网络中建立一条标签转发的隧道
MPLS Domain— MPLS域,由若干运行MPLS的设备组成:
LER ————标签边缘路由器,添加或剥离标签;
LSR ————标签交换路由器,根据标签转发报文;
FEC ————转发等价类,具有相同特种(相同目标IP地址)的一组报文;
LSP ———— 标签交换路径,IP网络中建立的标签转发隧道;
Ingress ————LSP的入口设备,执行Push压入标签;
Transit ————LSP的传输设备,查看收到的报文中携带的标签,根据标签执行Swap交换标签;
Egress ————LSP的出口设备,执行Pop弹出标签;
MPLS头部添加在二层和三层之间,被称为二点五层协议
Label————标签,长度20个bit
0-15:保留, 0——Null,空标签,表示剥离标签; 3——隐式标签
16-1023:静态LSP; 1023以上:动态LSP
Exp ————用于Qos,给二点五层流量打上不同的优先级标识;
S ————栈底位,置1表示当前为最后一层的MPLS头部
TTL ————生存时间,作为同IP头部的TTL
二、静态LSP
手动建立LSP,指定每台涉笔的类型,入标签和出标签、下一跳和出接口
MA中必须指定下一跳和出接口;
P2P中只需指定出接口;
- Ingress ————LSP的入口设备,压入标签
- Transit ————LSP的传输设备,收到标签,并执行交换发送
- Egress ————LSP的出口设备,弹出标签
基础配置:IP地址和IGP实现R1的1.1.1.1与R3的3.3.3.3互通
要求:通过MPLS使R1与R3身后的业务网段可以互通
工作流程:
1、R1接收PC1的IP流量,发现目标为192.168.2.0/24网段,下一跳为3.3.3.3,开启了路由递归查询, 通过隧道转发,可以使用3.3.3.3/32的LSP转发;
2、R2收到携带标签102的报文,查询标签表>——入标签102,出标签为202,并通过g0/0/1口转发;3、R3收到携带标签203的报文,查询标签表>——入标签203,出标签为Null空标签,剥离Mpls头部, 还原IP报文;
4、R3查看目标IP地址,根据IP转发报文。
三、动态MPLS LDB(标签分发协议)
设备与设备之间互相传递FEC以及FEC分配的标签
1、邻居阶段,通过Hello包发现、建立和维护邻居关系
封装:UDP 646端口
组播发送:224.0.0.2(代表网络中所有的路由器)
Hello 5s , Holdtime 15s
设备需要通过Hello协商IPv4传输地址,默认情况下该地址为MPLS LSR-ID
IPv4传输地址用于后续建立TCP会话和LDP会话
[R2-GigabitEthernet0/0/0]mpls ldp transport-address <接口>
[R1]display mpls ldp peer
2、会话阶段,建立TCP连接,通过初始化消息家里LDP会话
TCP握手三次
协商Keepalive Holdtime,默认为45s,协商取小,Keepalive消息发送间隔为Holdtime的三分之一
协商标签发布方式,默认情况下为DU 下游自主方式,如果方式不一致无法建立会话
[R1]display mpls ldp session
如果会话建立成功会发送Keepalive;
如果会话建立失败,发送Notification消息,通知失败原因
修改发布方式:
[R2]in g0/0/0
[R2-GigabitEthernet0/0/0]mpls ldp advertisement dod
Warning: All the related sessions will be deleted if the operation is performed!
Continue? (y/n)y
查看现象:
[R1]display mpls ldp session
3、标签通告阶段,发送Address Message和Label Mapping Message消息
地址消息中携带了设备所有的IP地址,会话对端收到后,可以结合路由协议计算建立LSP的最优路径
Lable Mapping 消息中携带了FEC及为FEC分配的标签
下游设备会自主为自己分配标签,将该标签通告给上游设备,作为上游的出标签
默认情况下,只会为32位主机路由分配标签
下游自主方式建立LSP速度相对较快,但是会占用额外标签空间(华为默认此条)
下游按需方式建立LSP速度相对较慢,但是节约标签空间
独立方式建立LSP速度相对较快,可能出现LSP建立不完整的现象
有序方式建立LSP速度相对较慢,但是可以保证LSP的完整(华为默认此条)
自由方式会保留所有下游设备通告的标签,无论是否最优,当最优下一跳出现故障,重新建立其他路径的LSP速度较快(华为默认)
保守方式只会保留最优路径下游设备通告的标签,节约标签空间
华为默认的组合:
下游自主+有序+自由--------偏向于建立LSP的速度,牺牲了一定标签空间
下游按需+有序+保守--------偏向于节约标签空间,牺牲了一定LSP建立速度
R4发送IP报文传递给R2,目标地址为192.168.5.5
R2收到该报文后,发现去往192.168.5.5可以使用3.3.3.3/32的LSP转发
[R2]display mpls lsp
R1收到携带入标签1030的报文,查询标签表
[R1]display mpls lsp
入标签为1030,出标签为3,R1会直接将MPLS头部剥离,
目的:减轻最后一跳设备工作压力,提升转发效率。