SCTP API

パッケージ com.sun.nio.sctp

SCTP (Stream Control Transport Protocol) 用の Java API です。

参照: 説明

パッケージ com.sun.nio.sctp の説明

SCTP (Stream Control Transport Protocol) 用の Java API です。

SCTP (Stream Control Transport Protocol) は、信頼性のあるメッセージ指向のトランスポートプロトコルで、UDP (User Datagram Protocol) や TCP (Transmission Control Protocol) と同じレベルに位置します。SCTP は、セッション指向であり、エンドポイント間のアソシエーションはデータが転送可能になる前に確立される必要があります。

SCTP では、マルチホームを直接サポートしています。つまり、エンドポイントは複数のアドレスで表されることがあり、各アドレスをデータの送受信に使用できるため、ネットワークに冗長性が生じます。2 つのエンドポイント間の接続は、エンドポイント間のアソシエーションと呼ばれます。エンドポイントは、アソシエーションの設定中にアドレスのリストを交換できます。1 つのアドレスがプライマリアドレスとして指定され、ピアがデータを送信するために使用するデフォルトアドレスになります。特定のセッションでは、1 つのエンドポイントにおけるアドレスリスト全体で単一のポート番号が使用されます。

SCTP はメッセージベースです。入出力操作はメッセージに対して行われるため、メッセージ境界は維持されます。各アソシエーションでは、複数の独立した論理ストリームをサポートできます。各ストリームは単一アソシエーション内でのメッセージシーケンスを表し、ストリームは相互に独立しています。ストリーム識別子とシーケンス番号がデータパケット内に含まれているため、ストリーム単位でメッセージの順序付けが可能です。

このパッケージは、2 つのプログラミングモデルスタイルを提供します。SctpChannel およびSctpServerChannel でサポートされる 1 対 1 スタイルと、SctpMultiChannel でサポートされる 1 対多スタイルです。1 対 1 スタイルのインタフェースのセマンティクスは、TCP によく似ています。SctpChannel は、1 つの SCTP アソシエーションのみを制御できます。1 対多スタイルのインタフェースのセマンティクスは、UDP によく似ています。SctpMutliChannel は、複数の SCTP アソシエーションを制御できます。

アプリケーションでは、MessageInfo を使用してメッセージ単位の補助情報を送受信できます。たとえば、メッセージが送信または受信されるストリーム番号です。SCTP スタックはイベントドリブンであるため、アプリケーションでは SCTP チャネルの receive メソッドを適切な通知ハンドラを指定して呼び出すことで、特定の SCTP イベントに関する通知を受信できます。

SCTP プロトコルは RFC4960 で定義されていて、動的なアドレス再構成の拡張機能 (オプション) は RFC5061 で定義されています。

導入されたバージョン:
1.7
SCTP API


Copyright © 2009, 2013, Oracle and/or its affiliates. All rights reserved.