ss接口是什么,SCTP即流控制传输协议指的是什么?( 二 )


用户数据无错误无重复的确认传输通过分组序列间隙报告和选择性重发来实现 。SCTP采用了与TCP基本类同的流量控制和拥塞控制算法,引用了慢启动机制 。只是在数据分组的确认和重传机制上,明确将选择性确认作为标准的一部分,规范了选择性重传和快速恢复机制 。
1.协议结构
RFC2960将SCTP协议分解为功能性独立的模块,并模型化了与操作系统功能的接口(例如定时器) 。这种分解对于协议实现时的结构化程序开发很有好处 。
一个SCTP系统实例包含下述模块:
(1)消息验证和分发,验证SCTP数据报并识别其相应的关联 。
(2)路径管理,监视一个关联对端的不同传输地址的可达性 。
(3)复用/解复用,复用/解复用一个关联的若干个数据和控制数据块到/从一个SCTP数据报中,该数据报是在一个IP分组中被传输的 。
(4)窗口和流量控制,实现类似TCP的流控和拥塞避免机制 。
(5)SCTP控制,用于控制关联的状态
(6)可靠传输,缓冲存储发出的消息直到其被关联对端确认接受,并在必要时发起重传 。
(7)接收控制,监视所有的到达消息,生成所需的确认控制数据块 。
【ss接口是什么,SCTP即流控制传输协议指的是什么?】(8)流引擎,实现各个流的用户数据报顺序提交,并在必要时完成对过长用户数据报的分段和重装 。
2.SCTP关联
与TCP类似,SCTP也是面向连接的 。但是,SCTP中的关联概念要比TCP中的连接概念含义更广 。一个关联的两个SCTP端点都向对方提供一个SCTP端口号和一个I[地址列表,这样每个关联都由两个SCTP端口号和两个IP地址列表来识别 。在一个关联内的拥塞控制机制与TCP的拥塞控制机制类似 。
一个“关联”Association是由多个单向的“流”(Stream)组成的 。各个流之间相对独立,可以单独发送数据而不受其它流的影响,也可以共同实现用户数据的有序递交 。流的建立和拆除过程相对独立、简单 。而关联的建立过程相对而言就比较复杂,是个“四次握手”过程,而且其中要用到cookie的概念 。所谓cookie实际就是一个含有端点初始信息和加密信息的数据块,在关联建立时被涉及的双方处理并交换 。引入这种机制的目的在于增强协议的安全性,防止拒绝服务(Denial of Service)和伪装等潜在的攻击 。
3.故障管理
SCTP提供了较TCP强大得多的路径状态监控功能 。其引入的“多宿主机”概念,使得一个连接可以在多个传输路径间选择和切换,提高了网络级容错的能力 。SCTP定义了Heartbeat消息 。当某路径空闲时,就会有相应的Heartbeat消息生成并发送到对端,而对端必须立即发回相应的确认消息 。这种机制被用来精确测量回路时延RTT,而且可以随时监视链路的可用情况并保持链路的激活状态 。Heartbeat消息的发送间隔可以根据用户的需求而灵活改变 。
此外,数据报重发的数目在两个级别上被进行统计 。路径级,或者说流级的重发次数统计用于确定此路径是否处于非激活状态 。而关联级的统计用于判定某个远端端点的可达性 。
SCTP的应用
1.IP网上七号信令传输的总体框架
IETF提出的IP网上传输七号信令的总体框架在RFC2719中进行了描述 。SCTP在信令传输方面的主要应用是在信令网关(SG)和媒体网关控制器(MGC)之间传输ISUP消息 。SG是位于SS7网络和IP网络之间的网关,它处理所有的MTP相关的任务,但不包括SS7用户部分 。这个用户部分(典型的是ISUP)位于MGC内部,MGC和SG通信并通过IP网来控制媒体网关(MG) 。一个MGC可以与多个SG关联在一起,已达到冗余和可能的负载分担的目的 。在这种框架之下,从基于MTP的网络来看,SG可以被看作是信令传输点(STP),而MGC可以被看作是信令端点(SEP) 。通过使用SG,MGC可以与MTP网络中的SEP互相透明地进行通信 。利用基于IP的信令传输,使得建立无MTP协议栈的业务控制点(SCP)成为可能 。这样,ISUP消息就可以在SG和SCP之间传输 。

推荐阅读