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

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 1955|回复: 2
收起左侧

[分享] BFD控制报文格式

[复制链接]
 成长值: 59575
发表于 2017-11-23 16:08:41 | 显示全部楼层 |阅读模式
网络协议报文格式大全
http://bbs.hh010.com/thread-531884-1-1.html
(出处: 鸿鹄论坛)


BFD控制报文格式
BFD控制报文封装在UDP报文中传送,对于单跳检测其UDP目的端口号为3784,对于多跳检测其UDP目的端口号为4784或3784。
BFD控制报文根据场景不同封装不同。BFD控制报文包括两部分:强制部分和可选的认证字段。不同的认证类型,认证字段的格式不同。
报文格式
BFD控制报文强制部分的格式如下(RFC5880):
图1 强制部分的格式

                               
登录/注册后可看大图



字段长度含义
Version (Vers)3 bitsBFD协议版本号,目前为1。
Diagnostic (Diag)5 bits
诊断字,标明本地BFD系统最近一次会话状态发生变化的原因,取值及含义:
0 -- No Diagnostic
1 -- Control Detection Time Expired
2 -- Echo Function Failed
3 -- Neighbor Signaled Session Down
4 -- Forwarding Plane Reset
5 -- Path Down
6 -- Concatenated Path Down
7 -- Administratively Down
8 -- Reverse Concatenated Path Down
9-31 -- Reserved for future use

State (Sta)2 bits
BFD本地状态。
0 -- AdminDown
1 -- Down
2 -- Init
3 -- Up
Poll (P)1 bit参数发生改变时,发送方在BFD报文中置该标志,接收方必须立即响应该报文。
  • 1:表示发送系统请求进行连接确认,或者发送请求参数改变的确认。
  • 0:表示发送系统不请求确认。
Final (F)1 bit响应P标志置位的回应报文中必须将F标志置位。
  • 1:表示发送系统响应一个接收到P比特为1的BFD包。
  • 0:表示发送系统不响应一个P比特为1的包。
Control Plane Independent (C)1 bit
转发/控制分离标志,一旦置位,控制平面的变化不影响BFD检测,如:控制平面为IS-IS,当IS-IS重启/GR时,BFD可以继续监测链路状态。
  • 1:表示发送系统的BFD实现不依赖于它的控制平面。即,BFD报文在转发平面传输,即使控制平面失效,BFD仍然能够起作用。
  • 0:表示BFD报文在控制平面传输。
Authentication Present (A)1 bit认证标识,置1代表会话需要进行验证。
Demand (D)1 bit查询请求,置位代表发送方期望采用查询模式对链路进行监测。
  • 1:表示发送系统希望工作在查询模式。
  • 0:表示发送系统不希望、或不能工作在查询模式。
Multipoint (M)1 bit为BFD将来支持点对多点扩展而设的预留位。
Detect Mult8 bits检测超时倍数,用于检测方计算检测超时时间。
  • 查询模式:采用本地检测倍数。
  • 异步模式:采用对端检测倍数。
Length8 bits报文长度,单位为字节。
My Discriminator32 bitsBFD会话连接本地标识符。发送系统产生的一个唯一的、非0鉴别值,用来区分一个系统的多个BFD会话。
Your Discriminator32 bitsBFD会话连接远端标识符。从远端系统接收到的鉴别值,这个域直接返回接收到的“My Discriminator”,如果不知道这个值就返回0。
Desired Min TX Interval32 bits本地支持的最小BFD报文发送间隔,单位为微秒。
Required Min RX Interval32 bits本地支持的最小BFD报文接收间隔,单位为微秒。
Required Min Echo RX Interval32 bits本地支持的最小Echo报文接收间隔,单位为微秒(如果本地不支持Echo功能,则设置0)。

图2 BFD控制报文可选部分的格式

                               
登录/注册后可看大图



字段长度含义
Auth Type8 bitsBFD控制报文使用的认证类型。不同值表示的认证类型如下:
0 - Reserved
1 - Simple Password
2 - Keyed MD5
3 - Meticulous Keyed MD5
4 - Keyed SHA1
5 - Meticulous Keyed SHA1
6-255 - Reserved for future use
Auth Len8 bits认证字段的长度,包括认证类型与认证长度字段,单位为字节。
Authentication DataVariable
认证字段净荷。
如果A比特位置1且认证类型值为1(Simple Password),则认证字段格式如下:

                               
登录/注册后可看大图
  • Auth Type:认证类型,对于简单密码认证,值为1。
  • Auth Len:认证字段长度,对于简单密码认证,长度等于密码长度+3。
  • Auth Key ID:该报文使用的认证秘钥ID,该值允许同时激活多个秘钥。
  • Password: 密码值,是个二进制字符串,长度为1~16字节。
如果A比特位置1切认证类型值为2(Keyed MD5)或3(Meticulous Keyed MD5),则认证字段格式如下:

                               
登录/注册后可看大图
  • Auth Type:认证类型,值为2 (Keyed MD5)或3 (Meticulous Keyed MD5)。
  • Auth Len:认证字段长度,对于Keyed MD5和Meticulous Keyed MD5认证,长度值为24。
  • Auth Key ID:该报文使用的认证秘钥ID,该值允许同时激活多个秘钥。
  • Reserved:在传输过程中,该值必须为0,接收端接收时忽略此字段。
  • Sequence Number: 报文顺序号。对于Keyed MD5认证,该值随机增加,对于Meticulous Keyed MD5认证,同一个会话中的报文按顺序逐渐增加。该值用于预防重放攻击。
  • Auth Key/Digest: 该字段携带16字节MD5摘要信息。当MD5摘要被计算后,该字段填的是MD5共享秘钥,并按需尾填充16字节的0。
如果A比特位置1切认证类型值为4(Keyed SHA1)或5(Meticulous Keyed SHA1),则认证字段格式如下:

                               
登录/注册后可看大图
  • Auth Type:认证类型,值为4 (Keyed SHA1)或5 (Meticulous Keyed SHA1)。
  • Auth Len:认证字段长度,对于Keyed SHA1和Meticulous Keyed SHA1认证,长度为28。
  • Auth Key ID:该报文使用的认证秘钥ID,该值允许同时激活多个秘钥。
  • Reserved:在传输过程中,该值必须为0,接收端接收时忽略此字段。
  • Sequence Number: 报文顺序号。对于Keyed SHA1认证,该值随机增加,对于Meticulous Keyed SHA1认证,同一个会话中的报文按顺序逐渐增加。该值用于预防重放攻击。
  • Auth Key/Digest: 该字段携带20字节SHA1哈希值。当hash被计算后,,该字段填的是SHA1共享秘钥,并按需尾填充20字节的0。


报文示例图3 BFD报文格式(不认证)

                               
登录/注册后可看大图

图4 BFD报文格式(简单认证)

                               
登录/注册后可看大图

图5 BFD报文格式(MD5认证)

                               
登录/注册后可看大图

图6 BFD报文格式(SHA1认证)

                               
登录/注册后可看大图


参考标准
标准描述
RFC 5880Bidirectional Forwarding Detection





发表于 2020-2-2 21:22:45 | 显示全部楼层
ddddddddddddd
板凳 2020-2-2 21:22:45 回复 收起回复
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-23 02:23 , Processed in 0.063434 second(s), 9 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

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