logo资料库

sctp协议(中文版)-功能 原语 协议消息结构 信令流程.pdf

第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
资料共41页,剩余部分请下载后查看
目 录
插图目录
表格目录
4 SCTP协议
关于本章
4.1 概述
4.2 SCTP相关术语
4.3 SCTP功能
4.3.1 偶联的建立和关闭
4.3.2 流内消息顺序递交
4.3.3 用户数据分段
4.3.4 证实和避免拥塞
4.3.5 消息块绑定
4.3.6 分组的有效性
4.3.7 通路管理
4.4 SCTP原语
4.4.1 SCTP用户向SCTP发送的请求原语
4.4.2 SCTP向SCTP用户发送的通知原语
4.5 SCTP协议消息
4.5.1 消息结构
4.5.2 SCTP数据块的格式
4.5.3 SCTP端点维护的参数和建议值
4.6 SCTP基本信令流程
4.6.1 偶联的建立和发送流程
4.6.2 偶联关闭流程
HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 目 录 目 录 4 SCTP 协议 ....................................................................................................................................4-1 4.1 概述..............................................................................................................................................................4-2 4.2 SCTP 相关术语 ............................................................................................................................................4-2 4.3 SCTP 功能 ....................................................................................................................................................4-5 4.3.1 偶联的建立和关闭.............................................................................................................................4-6 4.3.2 流内消息顺序递交.............................................................................................................................4-6 4.3.3 用户数据分段.....................................................................................................................................4-7 4.3.4 证实和避免拥塞.................................................................................................................................4-7 4.3.5 消息块绑定 ........................................................................................................................................4-7 4.3.6 分组的有效性.....................................................................................................................................4-7 4.3.7 通路管理 ............................................................................................................................................4-7 4.4 SCTP 原语 ....................................................................................................................................................4-8 4.4.1 SCTP 用户向 SCTP 发送的请求原语................................................................................................4-8 4.4.2 SCTP 向 SCTP 用户发送的通知原语..............................................................................................4-10 4.5 SCTP 协议消息 ..........................................................................................................................................4-12 4.5.1 消息结构 ..........................................................................................................................................4-12 4.5.2 SCTP 数据块的格式.........................................................................................................................4-16 4.5.3 SCTP 端点维护的参数和建议值 .....................................................................................................4-31 4.6 SCTP 基本信令流程 ..................................................................................................................................4-34 4.6.1 偶联的建立和发送流程...................................................................................................................4-34 4.6.2 偶联关闭流程...................................................................................................................................4-37 文档版本 02 (2007-04-10) 华为技术有限公司 i
插图目录 HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 插图目录 图 4-1 SCTP 双归属...........................................................................................................................................4-3 图 4-2 确定通路选择方式的数据配置.............................................................................................................4-4 图 4-3 SCTP 功能示意图...................................................................................................................................4-6 图 4-4 SCTP 分组结构.....................................................................................................................................4-12 图 4-5 任选/可变长参数格式 .........................................................................................................................4-15 图 4-6 DATA 数据块格式 ................................................................................................................................4-17 图 4-7 INIT 数据块格式 ..................................................................................................................................4-19 图 4-8 INIT ACK 数据块格式 .........................................................................................................................4-21 图 4-9 SACK 数据块格式................................................................................................................................4-23 图 4-10 HEARTBEAT 数据块格式..................................................................................................................4-24 图 4-11 HEARTBEAT 信息参数格式..............................................................................................................4-25 图 4-12 HEARTBEAT ACK 数据块格式 ........................................................................................................4-25 图 4-13 ABORT 数据块格式 ...........................................................................................................................4-26 图 4-14 SHUTDOWN 数据块格式..................................................................................................................4-27 图 4-15 SHUTDOWN ACK 数据块格式.........................................................................................................4-27 图 4-16 ERROR 数据块格式 ...........................................................................................................................4-28 图 4-17 差错原因参数的格式.........................................................................................................................4-28 图 4-18 COOKIE EHCO 数据块的格式..........................................................................................................4-30 图 4-19 COOKIE ACK 数据块格式 ................................................................................................................4-31 图 4-20 SHUTDOWN COMPLETE 数据块的格式........................................................................................4-31 图 4-21 偶联建立过程消息交互图.................................................................................................................4-35 图 4-22 偶联正常关闭消息交互图.................................................................................................................4-38 ii 华为技术有限公司 文档版本 02 (2007-04-10)
HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 表格目录 表格目录 表 4-1 SCTP 请求原语.......................................................................................................................................4-8 表 4-2 SCTP 通知原语.....................................................................................................................................4-10 表 4-3 SCTP 数据块消息类型.........................................................................................................................4-13 表 4-4 接收端点不能识别块类型时,块类型最高 2bit 含义.......................................................................4-14 表 4-5 接收端点不能识别块参数类型时,参数类型最高 2bit 含义...........................................................4-16 表 4-6 BE 比特的取值含义 .............................................................................................................................4-17 表 4-7 原因特定信息与原因编码对应关系...................................................................................................4-28 表 4-8 对应每个 SCTP 实例所需的参数 .......................................................................................................4-32 表 4-9 对应每个偶联 SCTP 端点所需的参数 ...............................................................................................4-32 表 4-10 对应每个传送地址所需的参数.........................................................................................................4-33 文档版本 02 (2007-04-10) 华为技术有限公司 iii
HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 4 SCTP 协议 4 SCTP 协议 关于本章 本章描述内容如下表所示。 标题 4.1 概述 内容 概述 SCTP 协议制定的背景 4.2 SCTP 相关术语 介绍 SCTP 的相关术语。 4.3 SCTP 功能 4.4 SCTP 原语 介绍 SCTP 的功能。 介绍 SCTP 的原语。 4.5 SCTP 协议消息 介绍 SCTP 的协议消息结构、数据块格式等。 4.6 SCTP 基本信令流程 介绍 SCTP 的基本信令流程。 文档版本 02 (2007-04-10) 华为技术有限公司 4-1
4 SCTP 协议 4.1 概述 HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 在流控制传输协议 SCTP(Stream Control Transmission Protocol)制定以前,在 IP 网上 传输七号信令使用的是 UDP 和 TCP 协议。UDP 是一种无连接的传输协议,无法满足七 号信令对传输质量的要求。TCP 协议是一种有连接的传输协议,可以信令的可靠传输, 但是 TCP 协议具有行头阻塞、实时性差、支持多归属比较困难、易受拒绝服务攻击(Dos) 的缺陷。因此 IETF(Internet Engineering Task Force)RFC2960 制定了面向连接的基于 分组的可靠传输协议 SCTP 协议。SCTP 对 TCP 的缺陷进行了完善,使得信令传输具有 更高的可靠性,SCTP 的设计包括适当的拥塞控制、防止泛滥和伪装攻击、更优的实时 性能和多归属性支持,因此,SCTP 成为 SIGTRAN 协议族中的传输协议。 SCTP 被视为一个传输层协议,它的上层为 SCTP 用户应用,下层作为分组网络。在 SIGTRAN 协议的应用中,SCTP 上层用户是 SCN 信令的适配模块(如 M2UA、M3UA), 下层是 IP 网。 4.2 SCTP 相关术语 传送地址 传送地址由 IP 地址、传输层协议类型和传输层端口号定义。由于 SCTP 在 IP 上传输, 所以一个 SCTP 传送地址由一个 IP 地址加一个 SCTP 端口号决定。SCTP 端口号就是 SCTP 用来识别同一地址上的用户,和 TCP 端口号是一个概念。比如 IP 地址 10.105.28.92 和 SCTP 端口号 1024 标识了一个传送地址,而 10.105.28.93 和 1024 则标识了另外一个 传送地址,同样,10.105.28.92 和端口号 1023 也标识了一个不同的传送地址。 主机和端点 主机(Host) 主机配有一个或多个 IP 地址,是一个典型的物理实体。 端点(SCTP Endpoint) 端点是 SCTP 的基本逻辑概念,是数据报的逻辑发送者和接收者,是一个典型的逻辑实 体。 一个传送地址(IP 地址+SCTP 端口号)唯一标识一个端点。一个端点可以由多个传送 地址进行定义,但对于同一个目的端点而言,这些传送地址中的 IP 地址可以配置成多 个,但必须使用相同的 SCTP 端口。 一个主机上可以有多个端点。 偶联和流 偶联(Association) 4-2 华为技术有限公司 文档版本 02 (2007-04-10)
HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 4 SCTP 协议 偶联就是两个 SCTP 端点通过 SCTP 协议规定的 4 步握手机制建立起来的进行数据传递 的逻辑联系或者通道。 SCTP 协议规定在任何时刻两个端点之间能且仅能建立一个偶联。由于偶联由两个端点 的传送地址来定义,所以通过数据配置本地 IP 地址、本地 SCTP 端口号、对端 IP 地址、 对端 SCTP 端口号等四个参数,可以唯一标识一个 SCTP 偶联。正因为如此,在 GTSOFTX3000 中,偶联可以被看成是一条 M2UA 链路或 M3UA 链路。 流(Stream) 流是 SCTP 协议的一个特色术语。SCTP 偶联中的流用来指示需要按顺序递交到高层协 议的用户消息的序列,在同一个流中的消息需要按照其顺序进行递交。严格地说,“流” 就是一个 SCTP 偶联中,从一个端点到另一个端点的单向逻辑通道。一个偶联是由多个 单向的流组成的。各个流之间相对独立,使用流 ID 进行标识,每个流可以单独发送数 据而不受其他流的影响。 一个偶联中可以包含多个流,可用流的数量是在建立偶联时由双方端点协商决定,而一个流 只能属于一个偶联。同时,出局的流数量可以与入局流数量的取值不同。 顺序提交的数据必须在一个流里面传输。 通路(Path)和首选通路(Primary Path) 通路(Path) 通路是一个端点将 SCTP 分组发送到对端端点特定目的传送地址的路由。如果分组发送 到对端端点不同的目的传送地址时,不需要配置单独的通路。 首选通路(Primary Path) 首选通路是在默认情况下,目的地址、源地址在 SCTP 分组中发到对端端点的通路。如 果可以使用多个目的地址作为到一个端点的目的地址,则这个 SCTP 端点为多归属。如 果发出 SCTP 分组的端点属于多归属节点时,如果定义了目的地址、源地址,能够更好 控制响应数据块返回的通路和数据包被发送的接口。 一个 SCTP 偶联的两个 SCTP 端点都可以配置多个 IP 地址,这样一个偶联的两个端点之 间具有多条通路,这就是 SCTP 偶联的多地址性。SCTP 偶联的多地址性是 SCTP 与 TCP 最大的不同。 一个偶联可以包括多条通路,但只有一个首选通路。如图 4-1 所示,MGC(如 GTSOFTX3000)一个端点包括两个传送地址(10.11.23.14:2905 和 10.11.23.15:2905), 而 SG 一个端点也包括两个传送地址(10.11.23.16:2904 和 10.11.23.17:2904)。 图4-1 SCTP 双归属 10.11.23.14 Path0 10.11.23.16 MGC Path2 Path1 SG 10.11.23.15 Path3 10.11.23.17 文档版本 02 (2007-04-10) 华为技术有限公司 4-3
4 SCTP 协议 此两个端点决定了一个偶联,该偶联包括 4 条通路(Path0、Path1、Path2 和 Path3)。根 据数据配置可以确定此 4 条通路的选择方式,如图 4-2 所示。图中定义了 4 条通路,而 且首选通路为 Path0: HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 Path0:本端传送地址 1(10.11.23.14:2905)发送 SCTP 分组到对端传送地址 1 (10.11.23.16:2904)。 Path1:本端传送地址 1(10.11.23.14:2905)发送 SCTP 分组到对端传送地址 2 (10.11.23.17:2904)。 Path2:本端传送地址 2(10.11.23.15:2905)发送 SCTP 分组到对端传送地址 1 (10.11.23.16:2904)。 Path3:本端传送地址 2(10.11.23.15:2905)发送 SCTP 分组到对端传送地址 2 (10.11.23.17:2904)。 端点发送的 SCTP 工作原理为:本端点传送地址 A 发送的 SCTP 包通过首选通路发送到 对端端点。当首选通路出现故障后,SCTP 可以自动切换到其他备用通路上,优先切换 对端端点的传送地址,再次切换本端端点的传送地址。 SCTP 定义了心跳消息(Heart Beat)。当某条通路空闲时,本端 SCTP 用户要求 SCTP 生成相应的心跳消息并通过该通路发送到对端端点,而对端端点必须立即发回对应的心 跳确认消息。这种机制被用来精确测量回路时延 RTT(Round Trip Time),而且可以随 时监视偶联的可用情况和保持 SCTP 偶联的激活状态。 图4-2 确定通路选择方式的数据配置 4-4 华为技术有限公司 文档版本 02 (2007-04-10)
HUAWEI GT800 GTSOFTX3000 技术手册 信令与协议分册 TSN 和 SSN 4 SCTP 协议 传输顺序号 TSN(Transmission Sequence Number) SCTP 使用 TSN 机制实现数据的确认传输。一个偶联的一端为本端发送的每个数据块顺 序分配一个基于初始 TSN 的 32 位顺序号,以便对端收到时进行确认。 TSN 是基于偶联进行维护的。 在 TCP 协议中,数据的确认传输和顺序递交是通过 TSN 这一种机制实现的。当发现 TSN 不连续 时候,TCP 将进行数据重传,直到 TSN 连续以后才将数据向 TCP 层的上层用户递交。这实现机 制导致 TCP 协议不能满足七号信令对于低传输时延的要求。 流顺序号 SSN(Stream Sequence Number) SCTP 为本端在这个流中发送的每个数据块顺序分配一个 16 位 SSN,以便保证流内的顺 序传递。 在偶联建立时,所有流中的 SSN 都是从 0 开始。当 SSN 到达 65535 后,则接下来的 SSN 为 0。 TSN 和 SSN 的分配是相互独立的。 拥塞窗口 CWND(Congestion Window) SCTP 也是一个滑动窗口协议,拥塞窗口是针对每个目的地址维护的,它会根据网络状 况调节。当目的地址的发送未证实消息长度超过其 CWND 时,端点将停止向这个地址 发送数据。 接收窗口 RWND(Receive Window) RWND 用来描述一个偶联对端的接收缓冲区大小。偶联建立过程中,双方会交换彼此的 初始 RWND。RWND 会根据数据发送、证实的情况即时地变化。RWND 的大小限制了 SCTP 可以发送的数据的大小。当 RWND 等于 0 时,SCTP 还可以发送一个数据报,以 便通过证实消息得知对方缓冲区的变化,直到达到 CWND 的限制。 传输控制块 TCB(Transmission Control Block) TCB 是一种内部数据结构,是一个 SCTP 端点为它与其他端点之间已经启动的每一个偶 联生成的。TCB 包括端点的所有状态、操作信息,便于维护和管理相应的偶联。 4.3 SCTP 功能 如图 4-3 所示,SCTP 的功能主要包括: 偶联的建立和关闭、流内消息顺序递交、用户数据分段、证实和避免拥塞、消息块绑定、 分组的有效性和通路管理。 文档版本 02 (2007-04-10) 华为技术有限公司 4-5
分享到:
收藏