MPLS技术学习总结
来源:互联网 发布:编程猫加盟 编辑:程序博客网 时间:2024/05/21 18:31
1
2
Lable:标签值,长度为20bit,标签值是标签转发的关键索引;
Exp:用于QoS,长度3bit,作用与Ethernet 802.1的P值相似;
S:栈底标示,长度为1bit,如果有多个label时,在栈底的Label的S位置为“1”,其他为“0”;
TTL:存活时间,8bit,与IP报文中的TTL值相似,它是从IP域中拷贝出,每进行一次Lable交换,TTL的值减去1。
3
FEC(Forwarding EquivalanceClass):LSR认为具有相同转发处理方式的报文,使用同一个标签来标记这些报文;
Push:在第一跳的LER上打上标签,即在报文的二层头和三层头之间插入Lable或者中间LSR在MPLS报文的标签栈顶增加新的标签;
Pop:在最后一跳的LER上将报文中的Label全部去掉,还原成报文或者在中间LSR去掉栈顶标签或减少标签的层次;
Swap:交换标签,在转发过程中根据标签转发表中的LSP替换报文中的Lable的过程;
LSP:标记转发路径,也就是转发MPLS报文的路径;
PHP:倒数第二跳弹出,在实际应用中,出口LSR在弹出最外层标签后,还需要进行其他较为复杂的三层操作,比如查表转发。而一般最外层标签的作用只是为了将报文送到出口LSR,所以在倒数第二跳LSR已知报文下一跳的情况下,可以将最外层标签弹出后转发到最后一跳LER,这样减轻了最后一跳的压力,提高了转发效率。
4
4.1LDP基本概念
LDP是标签分发协议,LDP定义了一组程序和消息,通过它们一个LSR可以通知另一个LSR其已经形成的标签捆绑。通过网络层路由信息与数据链路层交换路径之间的直接映射,LSR可以使用LDP协议通过网络来建立标签交换路径。LDP协议除了Hello报文基于UDP外,其他报文都是基于TCP,端口646。当发生传输丢包时,能够利用TCP协议提供错误指示,实现快速响应和恢复。
4.2LDP报文格式
Version:版本号,16bit,目前只有一个版本,版本号始终为“1”;
PDU Length:报文长度,16bit,值为LDP PDU,头部以后的数据部分的长度不包含LDP PDU头部;
LDP ID:长度48bit,前32bit为LSR-ID,后16bit为标记空间标志,全部空间为“0”,局部接口空间为“1”。如收到192.168.1.2:0,表示对方LSR-ID为192.168.1.2,标签空间为全局空间。
4.3
4.3.1LDP消息格式
U:“0”表示可识别信息,“1”表示不可识别信息;
Message Type:协议根据这个域识别不同的消息;
Message Length:指示出长度域之后的数据部分长度;
Message ID:用来标示消息。
4.3.2LDP消息类型
邻居发现消息:在启用LDP协议的接口上周期性发送该消息(Hello);
会话建立和维护消息:用来建立和维护LDP会话(Initialization消息,KeepAlive消息);
标签分发消息:用来请求、通告及撤销标签绑定;
错误通知消息:用来提示LDP对等体在会话过程中的重要事件(Notification消息)。
4.3.3LDP会话建立
Step1:互发Hello报文,Hello消息中包括LDP-ID和Transport Adress;双方将用Transport Adress建立LDP会话,收到Hello消息后再进一步比较Transport Address确定有谁作为主动方发起TCP连接,一般大的主动发起;
Step2:TCP连接完成后,由主动方发送Initilization消息来协商参数,包括LDP协议版本、Label分发方式、Holdtime等;
Step3:如果接收到的被动方发觉对方的参数自己不能接受,则发送Notification消息结束会话,否则由被动方回应Intilization消息的同时也发送KeepAlive消息,两个消息可以在同一个报文中同时携带;
Step4:如果主动方接受Intillization中的参数,则发送KeepAlive消息,LDP会话成功建立。
4.4MPLS的工作流程
Step1:所有LSP启动传统的路由协议,在LSR中建立IP路由表;
Step2:由LSP结合IP路由表建立LSP;
Step3:Ingress LER接收到IP数据包,分析IP包头并对应到FEC,然后给IP数据报加上标记,根据标签转发表中的LSP将已经标记的报文送到相应的出接口;
Step4:LSR收到带标记的报文,将只分析标记头,不关注标记头之上的部分,根据Label头查找LSP,替换Label,送到相应的出接口;
……中途的转发过程如Step4
StepN-1:倒数第二跳LSR收到带有标记的报文,查找转发表,发现对应出口的标签为隐式空标签或显示空标签,弹出标签,发送IP报文到最后一跳LSR;
StepN:在最后一跳Egress LER上执行三层路由功能,根据报文目的地址转发。
4.5标签相关知识
4.5.1标签分发方式
DU(DownstreamUnsolicited):下游LSR如果工作在DU方式下,根据某一策略向上游LDP邻居主动分发标签;
DOD(Downstream onDemand):下游LSR如果工作在DoD方式下,只有接收到上游LDP邻居的Label requestmessage后才回应label mappingmessage分发标签。
4.5.2:标签保留方式
自由保留方式(Liberal retention mode):收到无效的Label通告后,虽然不生成LSP,但在标签绑定表里存储,并且LSR向上游通告其他FEC的lable绑定时也不占用这些标签。优点是LSR应对网络拓扑变化的响应较快;缺点是浪费标签。
保守保留方式(Conservative retention mode):收到无效的Label通告后,将不存到标签绑定表里,在向上游通告Label时可以自由使用这些标签。这种方式优点是节省标签;缺点是响应较慢。
4.6MPLS技术学习心得
通过学习MPLS技术,学好MPLS技术的关键点如下:
1,MPLS的产生背景及其要解决的网络问题;
2,深入理解典型MPLS网络域的实现过程,体会标签转发和IP查表转发的区别;
3,熟练掌握MPLS中涉及到的标签分配协议及其工作原理。
- MPLS技术学习总结
- 关于MPLS 技术及MPLS VPN的学习
- MPLS技术原理
- MPLS技术简介
- MPLS技术及其应用
- MPLS基本技术介绍
- MPLS基本技术介绍
- MPLS-4 总结
- Linux MPLS 总结
- MPLS学习笔记
- MPLS学习( by quqi99 )
- MPLS VPN学习笔记
- MPLS学习笔记
- MPLS VPN技术原理 上
- MPLS技术的应用探讨
- MPLS L2VPN技术VPWS笔记
- MPLS
- MPLS
- 第10周 项目3-计算二叉树节点个数
- Codeforces 629D Babaei and Birthday Cake LIS+线段树优化
- ViewStub
- android官方文档之路--Wi-Fi Peer-to-Peer
- 对于tableView优化的见解,欢迎补充
- MPLS技术学习总结
- C++之静态成员变量、静态成员函数、编译规则、双向依赖
- Shell脚本调试
- linux软链接硬链接复制的区别
- 关于TableView你不知道的哪些事
- UITableView的数据刷新,用代码来描述
- .fvwm2rc
- laravel 指定 版本安装
- LinkedHashMap实现原理