IP电话机、视频可视电话通信产品及组网方案

数据的传输控制过程

时间:2019-11-28 08:09 作者:admin 分享到:
         在SCTP屮,采用了很多措施来实现数据的可靠传输,下面简要说明。
         (1)数据的发送的一般过程
         SCTP偶联建立之后,该偶联两端的SCTP用户就可在该偶联上双向传送数据了。
        当接收到SCTP用户发来的发送请求原语SEND P,SCTP把用户消息转换成DATA数据块,为每一个DATA数据块分配一个TSN号码,如果用户要求顺序传送,根据用户要 求在数据块中设置相应的流标识符和数据流的顺序号码,将U标志位设置为0。多个 DATA数据块和控制数据块可以由发送方进行捆绑,在一个SCTP分组中传送。这个 SCTP分组的最大长度不应大于当前通路的MTU。在SCTP分组中,控制数据块应当在 DATA数据块之前,在一个SCTP分组的公共分组头中包含发送方的端口号码和接收端 的目的端口号、对端的验证标签和SCTP分组的校验码,然后将SCTP分组发送到首选通 路,即对端点当前的首选目的地传送地址。并启动重发定时器T3-rtx。
        (2) 证实和重发
        SCTP为每个用户数据分段或未分段的消息都分配一个传送顺序号码TSN,TSN号 码独立于流一级的流顺序号码。接收方对所有收到的TSN进行证实,尽管此时在接收序 列屮可能存在接收到的TSN不连续,采用这种方式,可以使可靠的递交功能与流的顺序 递交相分离。SCTP端点必须要证实接收到的每个有效的DATA数据块,一般采用 RFC258 定义的时延证实算法。要明确的是,至少应对收到两个分组(注意:不是 每两个DATA数据块)进行证实,并且应当在收到DATA数据块200 ms之内产生这个 证实。接收端利用SACK数据块来发送证实,在个SACK数据块中川以证实接收到的 多个DATA数据块,通过设置累积的TSN ACK字段.可以指示最后接收到的连序的有 效数据块的TSN。任何收到的DATA数据块的TSN大于累积的TSN证实值的情况, 都应在间隔块字段中报告。发送端可以利用接收到的SACK数据块中的数据确定丢失 的数据块并立即重发。也iij以在规定时间内没有收到证实的时候,重发丢失的分组。
        (3) 流内消息的顺序递交
        SCTP中的流用来指示需要按顺序递交到高层协议的用户消息的序列,在同-个流 屮的消息需要按照其顺序进行递交。SCTP用户可以在偶联建立时规定在一个偶联中所 支持的流的数量,这个数量可以协商。用户消息通过流号来进行关联,对于需要按照顺序 传送的数据,发送端必须把U标志位设置为0,接收端收到的U标志位设置为0的DATA 数据块时,必须按照它们的流顺序号码递交给高层。如果到达的 DATA 数据块的顺 序号码失序,则端点必须保存这些数据块,直到他们被重新排序后再递交给高层协议。当 某个流由于等待下一个连续的用户消息造成闭塞时,其他流上的顺序递交不应受影响。
        SCTP也提供非顺序递交的业务,SCTP端点可以通过把DATA数据块的U标志位 设置为1来指示对于一个特定传送的DATA数据块可以采用无序递交的方式。当一个 端点收到的DATA数据块的U标志位设置为1,则该端点不使用排序机制并立即把这些 数据递交给高层。
        (4) 数据块捆绑
        SCTP分组在发送到低层时要包含一个公共的分组头,其后跟着一个或多个数据块。 每个数据块中既叫以包含用户数据,也川以包含SCTP控制信息。SCTP用户具有个 选项,可以请求是否把多于一个的用户消息捆绑在个SCTP分组中进行发送,SCTP的 这种数据块捆绑的功能,可以在发送端生成一个完整的SCTP分组,在接收端负责分解该SCTP分组。当拥塞出现的时候,尽管用户可能请求SCTP不必进行捆绑,似SCTP的实 施仍旧可以执行捆绑功能。
        (5) 分组的有效性验证和差错检测
        每个SCTP公共分组头屮,都包含-个必备的验证标签字段和一个32比特长的校验 字段。验证标签的值由偶联的端点在偶联启动时选择,如果收到的分组中未包含期望的 验证标签值,则舍弃该分组。校验码由SCTP分组的发送方设置,以提供附加的保护,用 来避免由网络造成的数据差错。接收方对接收到的分组的校验码进行检査,将包含无效 校验码的SCTP分组丢弃。
       (6) 支持多宿
        如果使用多个目的地传送地址作为到一个SCTP端点的目的地地址,则这个SCTP 端点可以被看作是多归属的。端点的高层协议ULP以在多个目的地地址中选择一个 地址作为到这个多归属SCTP点的首选通路。默认的情况是一个端点总是在首选通路上 发送数据,当SCTP传送数据报给目的IP地址时,如果此IP地址的状态变为不叫到达, SCTP可以将消息发送给个交替的IP地址,这个地址是包含在建立偶联时由对端端点 绑定的一组SCTP传送地址列表中的,这个信息是从INIT或INIT ACK数据块中得到的。这样,在偶联联的一端甚至两端,讨容忍网络级错误。
 
版权所有:IP电话:http://www.g3voip.com 转载请注明出处

热销IP电话产品hot products