sctp根柢信令流程

sctp根柢信令流程
 1 偶联的树立和发送流程
  SCTP 端点A 主张树立偶联,并向端点B 发送一个用户音讯,随后端点B 向A 发送 两个用户音讯。(假定这些音讯没有绑缚和分段)。信令流程如图1所示。

  图1 偶联树立进程音讯交互图
  (1) 端点A 创立一个数据构造TCB(传输操控块)来描写行将主张的这个偶联(包 含偶联的根柢信息),然后向端点B 发送INIT 数据块。INIT 数据块中首要包 括如下参数:
  主张标签(Initiate Tag):对端验证标签,如设为Tag_A。Tag_A 是从1 到 4294967295 中的一个随机数。
  输出流数量(OS):本端点希望的最大出局流的数量。
  输入流数量(MIS):本端点容许入局流的最大数量。
  (2) 端点B 收到INIT 音讯后,当即用INIT ACK 数据块照料。INIT ACK 数据块中 有必要带有如下参数:
  意图地 IP 地址:设置成INIT 数据块的来历IP 地址。
  主张标签(Initiate Tag):设置成Tag_B。
  情况 COOKIE(STATE COOKIE):依据偶联的根柢信息生成一个TCB,不 过这个TCB 是一个暂时TCB。这个TCB 生成往后,将其间的必要信息(包含 一个COOKIE 生成的时刻戳、COOKIE 的生命期)和一个本端的密钥通过 RFC2401 描写的算法核算成一个32 位的摘要MAC(这种核算是不行逆的)。 必要信息和MAC 组构成STATE COOKIE 参数。
  本端点传送地址。
  最大入局流的数量。
  最大出局流的数量。
  (3) 端点A 收到INIT ACK 后,首要接连INIT 守时器

脱离COOKIE-WAIT 情况, 然后发送COOKIE ECHO 数据块,将收到INIT ACK 数据块中的STATE COOKIE 参数原封带回。毕竟端点A 主张COOKIE 守时器并进入 COOKIE-ECHOED 情况。
  (4) 端点B收到COOKIE ECHO数据块后,进行COOKIE验证。将STATE COOKIE 中的TCB 有些和本端密钥依据RFC2401 的MAC 算法进行核算,得出的MAC 和STATE COOKIE 中带着的MAC 进行比照。假定纷歧样则丢掉这个音讯;如 果一样,则取出TCB 有些的时刻戳,和其不时刻比照,看时刻是不是现已跨过 了COOKIE 的生命期。假定是,一样丢掉。不然依据TCB 中的信息树立一个 和端A 的偶联。端点B 将情况迁入ESTABLISHED,并宣告COOKIE ACK 数 据块。端点B 向SCTP 用户发送SCOMMUNCIATION UP 告诉。
  (5) 端点A 向端点B 发送一个DATA 数据块,主张T3-RTS 守时器。DATA 数据 块中有必要带有如下参数:
  TSN:DATA 数据块的初始TSN。
  流标识符(Stream Identifier):用户数据归于的流,假定流标识符为0。
  流次第码(Stream Sequence Number):地址流中的用户数据的次第号码。 该字段从0 到65535。
  用户数据(User Data):带着用户数据净荷。
  (6) 端点B 收到DATA 数据块后,回来SACK 数据块。SACK 数据块中有必要带有 如下参数:
  累积证明 TSN 标签(Cumulative TSN Ack):端点A 的初始TSN。
  距离块(Gap Ack Block):此值为0。 端点 A 收到SACK 数据块后,接连T3-RTX 守时器。
  (7) 端点B 向端点A 发送榜首个DATA 数据块。DATA 数据块中有必要带有如下参 数:
  TSN:端点B 宣告DATA 数据块的初始TSN。
  流标识符(Stream Identifier):用户数据归于的流,假定流标识符为0。
  流次第码(Stream Sequence Number):地址流中的用户数据的次第号码。 假定流次第码为0。
  用户数据(User Data):带着用户数据净荷。
  (8) 端点B 向端点A 发送第二个DATA 数据块。DATA 数据块中有必要带有如下参 数:
  TSN:端点B 宣告DATA 数据块的初始TSN+1。
  流标识符(Stream Identifier):用户数据归于的流,假定流标识符为0。
  流次第码(Stream Sequence Number):地址流中的用户数据的次第号码。 此刻流次第码为1。
  用户数据(User Data):带着用户数据净荷。
  (9) 端点A 收到DATA 数据块后,回来SACK 数据块。SACK 数据块中有必要带有 如下参数:
  累积证明 TSN 标签(Cumulative TSN Ack):端点B 的初始TSN。
  距离块(Gap Ack Block):此值为0。
  2 偶联关闭流程
  一个端点退出效力时,需求接连它的偶联。偶联的接连运用两种流程:偶联的接连 流程(非正常关闭)和偶联的正常关闭流程。 偶联的接连(非正常关闭)能够在任何未结束时期进行,偶联的两头都丢掉数据并 且不提交到对端。此种办法不思考数据的安全。偶联的接连进程比照简略:主张端 点向对端端点发送ABORT 数据块,发送的SCTP 分组中有必要填上对端端点的验证 标签,而且不在ABORT 数据块中绑缚任何DATA 数据;接纳端点收到ABORT 数 据块后,进行验证标签的查看。假定验证标签与本端验证标签一样,接纳端点从记 录上铲除该偶联,并向SCTP 用户陈说偶联的接连。
  偶联的正常关闭:任何一个端点施行正常关闭程序时,偶联的两头将接联承受从其 SCTP 用户发来的新数据,而且在发送或接纳到SHUTDOWN 数据块时,把分组中 的数据投递给SCTP 用户。偶联的关闭能够保证悉数两头的未发送、发送未证明数 据得到发送和证明后再接连偶联。

  图2 偶联正常关闭音讯交互图
  偶联的正常关闭进程如下:
  (1) 偶联关闭主张端点A 的SCTP 用户向SCTP 发送央求SHUTDOWN 要素。 SCTP 偶联从ESTABLISHED 情况迁入SHUTDOWN-PENDING 情况。在这 个情况,SCTP 不承受SCTP 用户在这个偶联上的任何数据发送央求。一对等候端点A 悉数发送未证明的数据得到端点B 的证明。当悉数端点A 发送未证 实数据得到证明,则向端点B 发送SHUTDOWN 数据块。端点A 主张 T2-shutdown 守时器进入SHUTDOWN-SENT 情况。主张T2-shutdown 守时 器的意图是等候端点B 发回的SHUTDOWN-ACK 数据块,假定守时器超时, 则端点A 有必要从头发送SHUTDOWN 数据块。
  (2) 端点B 收到SHUTDOWN 音讯后,进入SHOUTDOWN-RECEIVED 情况, 不再接纳从SCTP 用户发来的的新数据,而且查看数据块的累积TSN ACK 字 段,验证悉数未结束的DATA 数据块现已被SHUTDOWN 的发送方接纳。当 端点B 悉数未发送数据和发送未证明数据得到发送和证明后, 发送 SHUTDOWN ACK 数据块并主张本端T2-SHUTDOWN 守时器,而且进入 SHUTDOWN-ACK-SENT 情况。假定守时器超时了,端点B 则从头发送 SHUTDOWN ACK 数据块。
  (3) 端点A 收到SHUTDOWN ACK 音讯后,接连T2-shutdown 守时器,而且向端 点B 发送SHUTDOWN COMPLETE 数据块,并铲除偶联的一紧记载。端点B 收到SHUTDOWN COMPLETE 数据块后, 验证是不是处于 SHUTDOWN-ACK-SENT 情况。假定不是处于该情况,则丢掉该数据块;如 果端点处于SHUTDOWN-ACK-SENT 情况,端点B 则接连T2-shutdown 守时 器并铲除偶联的一紧记载,进入CLOSED 情况。

本站部分资源是从网上搜集编辑的,若侵犯了您的版权和利益,请发邮件:6461607@qq.com联系我们删除处理!
上一篇:百事通机顶盒设置教程
下一篇:检查思科光模块的指令