Module  jdk.sctp

Package com.sun.nio.sctp

用于流控制传输协议的Java API。

流控制传输协议(SCTP)是与UDP(用户数据报协议)和TCP(传输控制协议)等价地存在的可靠的面向消息的传输协议。 SCTP是面向会话的,并且必须在发送任何数据之前建立端点之间的关联。

SCTP直接支持多归属,比端点可以表示多于一个地址,每个地址可用于发送和接收数据,从而提供网络冗余。 两个端点之间的连接被称为这些端点之间的关联。 端点可以在关联设置期间交换地址列表。 一个地址被指定为主地址,这是对端将用于发送数据的默认地址。 在特定会话的端点的整个地址列表中使用单个端口号。

SCTP是基于消息的。 I / O操作对消息进行操作,并保留消息边界。 每个关联可以支持多个独立逻辑流。 每个流表示单个关联中的消息序列,并且流彼此独立,这意味着流标识符和序列号被包括在数据分组中以允许每个流的消息排序。

该包提供了两种编程模型样式。 SctpChannelSctpServerChannel支持的一对一样式,以及由SctpMultiChannel支持的一对多样式。 一对一风格界面的语义与TCP非常相似。 一个SctpChannel只能控制一个SCTP关联。 一对多样式界面的语义与UDP非常相似。 一个SctpMutliChannel可以控制多个SCTP关联。

应用程序可以通过MessageInfo发送和接收每消息的辅助信息。 例如,要发送或接收的消息的流号。 SCTP堆栈是事件驱动的,应用程序可以通过调用适当的notification handler的SCTP通道的receive方法来接收某些SCTP事件的通知。

SCTP协议由RFC4960定义, 动态地址重配置的可选扩展由RFC5061定义。

从以下版本开始:
1.7