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

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

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

[分享] SCTP INIT ACK数据块格式

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

SCTP INIT ACK数据块格式
Format of Initiation Acknowledgement (INIT ACK)
INIT ACK数据块用来确认SCTP偶联的启动。
INIT ACK的参数部分与INIT数据块的参数部分相同,它额外还使用两个的可变长度的参数即:状态COOKIE(STATE COOKIE)和未识别的参数。
图1 SCTP INIT ACK数据块格式

                               
登录/注册后可看大图

INIT ACK数据块应包含以下参数:
  • 必备参数:

    • 启动标签;
    • 通告的接收方窗口信用;
    • 输入流数量;
    • 输出流数量;
    • 初始TSN。
  • 可变长参数:

    • STATECOOKIE 类型值=7 必备
    • IPv4地址 类型值=5 任选
    • IPv6地址 类型值=6 任选
    • 未识别的参数 类型值=9 任选
    • ECN能力预留 类型值=32768(0x8000) 任选
    • 主机名地址 类型值=11 任选



字段长度描述
启动标签(Initiate Tag)32比特无符号整数INIT ACK的接收方记录启动标签参数的值,并把该值放到INITACK接收方需要在相应的偶联上发送的每个SCTP分组中的验证标签中。启动标签不允许为0。如果收到的INIT ACK数据块中的启动标签为0,则接收方当作错误来处理并通过发送ABORT来关闭偶联。
通告的接收方窗口信用值Advertised Receiver Window Credit (a_rwnd)32比特无符号整数这个值表示指定的缓冲区的容量,用字节数表示,是INIT ACK发送方为偶联预留的窗口,在偶联存活期间,这个缓冲区的容量不应减少(即不应把该偶联的专用缓冲区取走)。
输出流数量Number of Outbound Streams (OS)16比特无符号整数定义发送INIT ACK数据块的一方希望在该偶联中创建的输出流的数量。该值不允许为0,接收方收到该参数为0的INIT ACK数据块后应中止该偶联并舍弃TCB。
输入流数量Number of Inbound Streams (MIS)16比特无符号整数定义发送INIT ACK数据块的一方允许对端点在该偶联中所创建的流的最大数量。该值不允许为0,接收方收到该参数为0的INIT ACK数据块后应中止该偶联并舍弃该TCB。
Initial TSN(I-TSN)32比特无符号整数定义发送方将使用的初始的TSN,该值可以设置为启动标签字段的值。
Optional/Variable-length Parameters变长
  • State Cookie:该参数类型为7,为可变长度参数,该参数长度取决于COOKIE的长度,该参数值的取值必须包含由INIT ACK发送方创建该偶联所需的所有状态和参数信息,连同消息授权码。
  • 不识别的参数:该参数类型为8,可变长度参数。该参数内容是INIT数据块中包含的一个不识别的参数,该参数用来返回给INIT数据块的产生者一个指示,这个参数值字段包含了从INIT数据块中复制过来的不识别参数的完整的参数类型、长度和参数值。



报文示例

                               
登录/注册后可看大图

参考标准
标准描述
RFC 2960Stream Control Transmission Protocol





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

本版积分规则

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

GMT+8, 2024-5-22 21:17 , Processed in 0.060822 second(s), 9 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

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