设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 218|回复: 1
收起左侧

[分享] MPLS LDP报文详解

[复制链接]
 成长值: 59305
发表于 2024-4-25 13:13:59 | 显示全部楼层 |阅读模式
1. LDP报文类型:
LDP分为多种报文,总共分为四大类,每种LDP报文都包含相同的头部信息,全部使用四层(TCP、UDP)进行封装
UDP类型报文组播地址为224.0.0.2,源端口目标端口都为646
TCP类型报文使用单播,源端口随机,目标端口646
LDP包含公告头和具体报文头,每种消息类型使用TLV进行标示
公共头部信息:

                               
登录/注册后可看大图
① Version:2字节 表示版本号。目前LDP的版本号始终为1。
② PDU Length:2字节 表示PDU的总长度,包括LDP ID和整组LDP消息,不包括Version和PDU Length字段。
③ LSR-ID:4字节 LDR-ID标识一台LSR,必须全局唯一。
④ Liber Space ID:2字节 标识了LSR内的标签空间。对于平台范围标签空间,这些数值都应当为0
⑤ Bunch of messages:变长 是一组LDP消息的集合,可以是一个或者多个LDP消息。
当LDP报文以UDP方式传输时,“Bunch of messages”只能是Hello消息的集合。
当LDP报文以TCP方式传输时,“Bunch of messages”可以是除Hello消息外任意类型的LDP消息的集合。
具体报文头信息:

                               
登录/注册后可看大图
① U :1比特,未知的消息,如果对端收到的LDP消息中“Message type”字段为未知的LDP消息类型,且“U”字段的值为“0”,则向源端发送通知(Notification)消息。如果对端收到的LDP消息中“Message type”字段为未知的LDP消息类型,且“U”字段的值为“1”,则忽略该未知消息。
② Message Type:15比特 LDP消息的类型。
③ Message Length:16比特 LDP消息的长度,是Message ID、强制参数和可选参数的长度的总和。
④ Message ID:32比特 LDP消息的编号,用于唯一地标识一个LDP消息。
⑤ Mandatory Parameters:变长 LDP消息的强制参数。
⑥ Optional Parameters:变长 LDP消息的可选参数,包含0~n个TLV。由于LDP报文类型繁多,所以将LDP报文分为四大类,每一类表示不同的作用。
主要分为以下几类:
① Discovery message发现消息
② Session message链接消息
③ Advertise message通知消息
④ Notification message通告消息
分类
作用
消息类型
具体作用
Discovery message类
发现消息,宣告和维
护网络中一个LSR的
存在,使用UDP发送
hello消息维护邻居
Hello报文
LDP发现机制中宣告本LSR并发现邻居
Session message类
链接消息,用于建立、维护和终止LDP 邻居间的LDP 信息传递,使用TCP传输
Initialization
初始化报文,在LDP
Session建立过程中
协商参数,如果协商
通过,完成LDP Peer
的协商
Keep Alive
监控LDP Session的
TCP连接的完整性
Advertise message类
通知消息,生成、改变和删除FEC的标签映射,使用TCP传输
Address
宣告路由器之间接口
地址
Address Withdraw
撤销路由器之间接口地址
Label Mapping
宣告FEC/Label映射消息
Label Request
请求FEC的标签映射
Label Abort Request
终止为完成的Label
Request Message
Label Withdraw
撤销FEC/Label映射
Label Release
释放标签
Notification message类
通告消息,宣告告警和错误信息
Notification
通知LDP Peer错误信息
(1)Discovery message类:
发现消息,宣告和维护网络中一个LSR的存在,使用UDP发送hello消息维护邻居
① Hello:
Hello报文使用Common Hello Parameters TLV和IPv4 Transport Address TLV标示
LDP发现协议中宣告本LSR并发现邻居,每隔5S发送一次,15S失效,如果两端时间不一致,
则取时间小的Hello时间为标准,UDP封装,本地地址为单播IP:646,对端目标地址为
224.0.0.2:646
注:基本发现中Hello包只能与直连链路上的Peer建立邻居,当配置远端Peer时,此时目
端的LSR-ID地址,ransport Address为创建TCP session使用的目标地址,默认使用LSR-ID地址,所以在配置LSR-ID时,需要使用实际接口IP

                               
登录/注册后可看大图
公共Header
协议报文Header
Common Hello Parameters TLV:
Type:类型
Length:长度
Hold Time:Hello老化时间
Hello类型:直连链路为Link Hello
GTSM:置位符,标示是否使用GTSM功能
IPv4 Transport Address TLV:
Type:类型
Length:长度
IPv4 Transport Address:连接地址(默认为LSR-id)
(2)Session message类:
链接消息,用于建立、维护和终止LDP 邻居间的LDP 信息传递,使用TCP传输。
① Initialization:
初始化报文,在LDP Session建立过程中协商参数,如果协商通过,完成LDP Peer的协商,
使用Common Session Parameters TLV进行承载

                               
登录/注册后可看大图
公共Header
协议报文Header
Common Session Parameters TLV:
Type:类型
Length:长度
Session Protocol Version:LDP版本
Session Keep Alive Time:Keep Alive老化时间
Session Max PDU Length:最大PDU长度
Session Receiver LSR Identifier: 已经存在的LSR邻居ID
② Keep Alive:
监控LDP Session的TCP连接的完整性,默认15S发送一次, Hold timer为45S,不能修改,
Keep Alive消息只包含公共头和协议消息头,在建立TCP连接时可以和Initialization一起承载

                               
登录/注册后可看大图
(3)Advertise message类:
通知消息,生成、改变和删除FEC的标签映射,使用TCP传输。
① Address:
宣告路由器之间接口地址
② Address Withdraw:
撤销接口地址
③ Label Mapping:
宣告FEC/Label映射消息
④ Label Request:
请求FEC的标签映射,在DOD模式中,使用此报文请求下游报文去往目标FEC的标签映射
⑤ Label Abort Request:
终止为完成的Label Request Message
⑥ Label Withdraw:
撤销FEC/Label映射
⑦ Label Release:
释放标签,当收到对方的Label Withdraw报文对FEC标签映射进行撤销,撤销之后发送Label
Release给对端回复
(4)Notification message类:
通告消息,宣告告警和错误信息。
① Notification:
通知LDP Peer错误信息

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-5-5 16:34 , Processed in 0.083496 second(s), 8 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表