Module jdk.sctp
Package com.sun.nio.sctp
package com.sun.nio.sctp
用于流控制传输协议的Java API。
流控制传输协议(SCTP)是一种可靠的、面向消息的传输协议,与UDP(用户数据报协议)和TCP(传输控制协议)处于等效级别。SCTP是面向会话的,必须在传输任何数据之前建立端点之间的关联。
SCTP直接支持多宿主,意味着一个端点可以由多个地址表示,并且每个地址可以用于发送和接收数据,从而提供网络冗余。两个端点之间的连接称为这些端点之间的关联。端点可以在关联设置期间交换地址列表。一个地址被指定为主地址,这是对等方用于发送数据的默认地址。在特定会话的端点上整个地址列表使用一个端口号。
SCTP是基于消息的。I/O操作基于消息进行,消息边界得到保留。每个关联可以支持多个独立的逻辑流。每个流代表单个关联内的消息序列,流彼此独立,意味着流标识符和序列号包含在数据包中,以允许按流基础对消息进行排序。
此包提供两种编程模型样式。由SctpChannel和SctpServerChannel支持的一对一样式,以及由SctpMultiChannel支持的一对多样式。一对一样式接口的语义与TCP非常相似。一个SctpChannel
只能控制一个SCTP关联。一对多样式接口的语义与UDP非常相似。一个SctpMutliChannel
可以控制多个SCTP关联。
应用程序可以通过MessageInfo发送和接收每条消息的附加信息。例如,消息要发送或接收的流编号。SCTP堆栈是事件驱动的,应用程序可以通过使用适当的通知处理程序调用SCTP通道的receive
方法来接收某些SCTP事件的通知。
- 自版本:
- 1.7
-
ClassDescription一个消耗通知并继续的骨架处理程序。代表SCTP关联的类。当关联已打开或关闭时发出的通知。定义了发生在关联上的更改事件类型。定义了通知处理程序的结果。当尝试从通知处理程序中的
SctpChannel
或SctpMultiChannel
调用receive
方法时抛出的未经检查的异常。当尝试删除未绑定到通道的地址,或从仅绑定一个地址的通道中删除地址时抛出的未经检查的异常。当尝试向无效流发送消息时抛出的未经检查的异常。MessageInfo
类提供有关消息的附加附属信息。来自SCTP堆栈的通知。用于从SCTP堆栈中消耗通知的处理程序。当多宿主对等体上的目标地址遇到更改时发出的通知。定义了在多宿主对等体上的目标地址遇到接口详细信息更改时发生的地址更改事件类型。用于面向消息的连接SCTP套接字的可选择通道。用于面向消息的SCTP套接字的可选择通道。用于面向消息的监听SCTP套接字的可选择通道。与SCTP通道关联的套接字选项。SCTP通道支持此类定义的套接字选项(以及特定通道类中列出的选项),并可能支持其他特定于实现的套接字选项。此类用于在关联初始化期间设置本地端点使用的入站/出站流的最大数量。当接收到发送失败通知时发出的通知。当对等方关闭关联时发出的通知。