48小时系统班试听入口

【网工技术教程】LDP协议消息详解

发布作者:新盟教育 发布日期:2022-12-06 浏览人数:1069人

网工技术教程

资源放送 

↓ 扫一扫 

领取LDP协议录屏资

网页同步文章.png


LDP消息,也称LDP报文,下文中“消息”和“报文”两词混用,不再区分。LDP消息按其具体功能可分为4大类,每个大类包含一种或者多种消息。

1.Discovery Message:

即发现消息,用于通告和维护网络中LSR的存在,包括HelloMessage。

Hello Message:即Hello消息,用于发现和维护LDP邻居关系


2.Session Message:

即会话消息,用来建立,维护和结束LDP对等体之间的会话连接,包括InitializationMessage和KeepaliveMessage。

Initialization Message:即初始化消息,用于协商LDP邻居参数,包括标签分发方式、Keepalive超时时间、标签空间及环路检测等
Keepalive Message:即保活消息,用于TCP会话的建立和维护


3.Advertisement Message:

即通告消息,用来创建、改变和删除特定FEC-标签绑定,包括AddressMessage、AddressWithdrawMessage、LabelRequestMessage、LabelMappingMessage、LabelWithdrawMessage、LabelReleaseMessage、LabelabortRequestMessage等。

Address Message:即地址通告消息,LSR使用该消息向邻居通告自己所有的接口IP
Address Withdraw Message:即地址撤销消息
Label Request Message:地址请求消息
Label Mapping Message:即标签通告消息,用于通告FEC---标签的映射关系
Label Withdraw Message:标签撤销消息
Label Release Message:标签释放消息
Label Abort Request Message:标签终止请求消息


4.Notification Message:

即通知消息,用于提供消息通告和差错通知。

Notification Message:即错误通知消息


总结如下:

12.6-网络-1.jpeg


LDP报文是基于TCP协议的(其中,Hello报文基于UDP协议,使用端口号646),端口号为646,并且报文格式是基于TLV的方式来封装的,LDP报文分为头部和报文内容两部分,LDP报头格式如下图所示:

12.6-网络-2.png


对其中的字段解释如下:

① Version:版本号,2字节,无符号整数值,标识LDP版本号,目前使用的版本号为1。

② PDU Length:PDU的总长度,2字节,整数值,不包括版本号和PDU长度字段。PDU最大长度在会话初始时协商确定,默认最大长度为4096字节。

③ LSR ID:始发路由器的LSR-ID,在MPLS于中唯一标识一台路由器,全局唯一。

④ Label Space ID:标识LSR内的标签空间,对于平台范围标签空间,这些数值都应为0;基于接口的会有区分。

下面具体分析LDP各报文的内容及作用:

Hello消息:用于邻居的发现及邻居关系的维护,基于UDP,源目端口号皆为646,使用组播发送,目的IP地址为224.0.0.2,默认发送周期为5s。

Hello报文的格式如图所示:

12.6-网络-3.png


Hello报文参数解释如下:

① U bit:即Unknown,未知消息位;

② Message Type:消息类型,表示消息类型,Hello消息中该值为0x100;

③ Message Length:消息长度,其长度等于Message ID、强制参数和可选参数的长度的总和;

④ Message ID:消息标识符,用于唯一标识一条LDP消息;

⑤ Common Hello Parameters TLV:属于Hello消息范围内的TLV,有如下重要字段:

  • TLV Unknown bits:未知TLV位,置0时,返回通知;置1时,则忽略该消息;

  • Hold Time:邻居失效时间,默认为三倍的Hello时间,即邻居失效时间为15s;

  • Targeted Hello:置1时代表远端hello,置0时代表本地hello。


⑥ IPv4 Transport Address TLV:用于建立TCP连接的地址。

  • IPv4 Transport Address:是建立TCP连接的地址,默认是LSR-ID,两台LDP设备要保证LSR-ID可达。


Initialization Message:

即初始化消息,用来协商会话参数,使用TCP,单播发送,源端口号随机,目的端口号为646,重要字段如下:

12.6-网络-4.png


  • U bit:即Unknown,未知消息位;

  • Message Type:消息类型,表示消息类型,Initialization消息中该值为0x200;

  • Message Length:消息长度,其长度等于Message ID、强制参数和可选参数的长度的总和;

  • Message ID:消息标识符,用于唯一标识一条LDP消息;

  • Common Session Parameters :属于Hello消息范围内的TLV。


Parameters:参数
Session Protocol Version:会话协议版本1
Session KeepAlive Time:TCP连接的保持时间,通过TCP连接收到的LDP PDU时刷新
Session Label Advertisement:标识标签分配方式,置0时表示DU ;置1时表示DoD
Session Loop Detection:是否开启了环路检测功能,置0时Disabled,置1时Enable
Session Path Vector Limit:LSP支持的最大跳数,开启了Loop Detection(环路检测)才有效,默认32
Session Max PDU Length:LDP PDU的最大长度,默认值为4096字节。
Session Receiver LDP Identifier:初始化消息的接受者,即LSR-ID
Session Receiver Label Space ID:接受者的Label Space ID。基于平台的分发都是0


Keepalive Message:

即保活消息,用来维持TCP连接,发送周期为15s,若两端不一致取较小。

12.6-网络-5.png


  • U bit:即Unknown,未知消息位;

  • Message Type:消息类型,表示消息类型,Keepalive消息中该值为0x201;

  • Message Length:消息长度,其长度等于Message ID、强制参数和可选参数的长度的总和;

  • Message ID:消息标识符,用于唯一标识一条LDP消息。


Address Message:

即地址宣告消息,用于向邻居宣告自己的接口IP地址。

12.6-网络-6.png


Label Mapping Message:

标签通告消息,为邻居发布FEC和标签的绑定关系。

12.6-网络-7.png


1671585dc74035d34ac554d5f2ae42fc.jpg

推荐阅读

>>>【独家首发】新版HCIE考试解读直播回顾
>>> 重磅!华为HCIE认证改版升级通知!
>>>【命令解析】Linux用户行为的常用命令
>>> 网工必备通信基础知识,还不知道你就out了?
>>>【必备干货】网工入门必会桥接教程,外网+GNS3+Vmware
>>>【技术指南】5分钟搞清楚OSPF链路状态路由协议

客服电话 15822722968 邮箱 799830458@qq.com 地址 天津市红桥区光荣道157号宝能创业中心2号楼-1、2门-907号
官方公众号
商务合作