モジュール jdk.net
パッケージ jdk.net

クラスExtendedSocketOptions

java.lang.Object
jdk.net.ExtendedSocketOptions

public final class ExtendedSocketOptions extends Object
StandardSocketOptionsで定義されるソケット・オプション以外の拡張ソケット・オプションを定義します。 これらのオプションはプラットフォーム固有の場合があります。
導入されたバージョン:
1.8
  • フィールド詳細

    • TCP_QUICKACK

      public static final SocketOption<Boolean> TCP_QUICKACK
      遅延肯定応答を無効にします。

      このソケット・オプションを使用すると、遅延確認応答を削減または無効にすることができます。(ACKs)。 TCP_QUICKACKが有効になっていると、ACKは通常のTCP操作に従って必要に応じて遅延されるのではなく、直ちに送信されます。 このオプションは永続的ではなく、TCP_QUICKACKモードとの間でのみスイッチを有効にします。 その後のTCPプロトコルの操作は、内部プロトコル処理や遅延ACKタイムアウトやデータ転送などのファクタに応じて、TCP_QUICKACKモードを再び有効/無効にします。このため、このオプションは、特定のソケットでTCPが動作するたびにsetOptionで設定する必要があります。

      このソケット・オプションの値は、オプションが有効か無効かを示すBooleanです。 ソケット・オプションは、TCP/IPプロトコルを使用するストリーム型ソケットに固有です。 このソケット・オプションの正確なセマンティックスは、ソケットの型やシステムによって異なります。

      導入されたバージョン:
      10
    • TCP_KEEPIDLE

      public static final SocketOption<Integer> TCP_KEEPIDLE
      キープ・アライブのアイドル時間。

      このソケット・オプションの値は、キープ・アライブでプローブが開始されるまでのアイドル時間の秒数であるIntegerです。 ソケット・オプションは、TCP/IPプロトコルを使用するストリーム型ソケットに固有です。 このソケット・オプションの正確なセマンティックスは、システムに依存します。

      SO_KEEPALIVEオプションを有効にすると、TCPは一定期間アイドル状態の接続をプローブします。 このアイドル期間のデフォルト値はシステムによって異なりますが、通常は2時間です。 TCP_KEEPIDLEオプションを使用すると、指定されたソケットのこの値に影響を与えることができます。

      導入されたバージョン:
      11
    • TCP_KEEPINTERVAL

      public static final SocketOption<Integer> TCP_KEEPINTERVAL
      キープ・アライブ再送信間隔の時間。

      このソケット・オプションの値は、キープ・アライブ・プローブを再送信するまでに待機する秒数であるIntegerです。 ソケット・オプションは、TCP/IPプロトコルを使用するストリーム型ソケットに固有です。 このソケット・オプションの正確なセマンティックスは、システムに依存します。

      SO_KEEPALIVEオプションを有効にすると、TCPは一定期間アイドル状態の接続をプローブします。 リモート・システムがキープ・アライブ・プローブに応答しない場合、TCPはなんらかの時間経過後にプローブを再送信します。 この再送信間隔のデフォルト値はシステム依存ですが、通常は75秒です。 TCP_KEEPINTERVALオプションを使用すると、指定されたソケットのこの値に影響を与えることができます。

      導入されたバージョン:
      11
    • TCP_KEEPCOUNT

      public static final SocketOption<Integer> TCP_KEEPCOUNT
      キープ・アライブ再送信の最大制限。

      このソケット・オプションの値は、送信されるキープ・アライブ・プローブの最大数であるIntegerです。 ソケット・オプションは、TCP/IPプロトコルを使用するストリーム型ソケットに固有です。 このソケット・オプションの正確なセマンティックスは、システムに依存します。

      SO_KEEPALIVEオプションを有効にすると、TCPは一定期間アイドル状態の接続をプローブします。 リモート・システムがキープ・アライブ・プローブに応答しない場合、TCPは接続が切断されたとみなされるまでに特定の回数プローブを再送信します。 このキープ・アライブ・プローブ再送信制限のデフォルト値はシステム依存ですが、通常は8です。 TCP_KEEPCOUNTオプションを使用すると、指定されたソケットのこの値に影響を与えることができます。

      導入されたバージョン:
      11
    • SO_INCOMING_NAPI_ID

      public static final SocketOption<Integer> SO_INCOMING_NAPI_ID
      ソケットの最後の受信パケットが受信された受信キューを識別します。

      このソケット・オプションの値は、キュー識別子に基づいて受信フローをスレッド間で分割するためにアプリケーションが使用できる受信キューを識別する正のIntegerです。 ソケットがバインドされていない場合、パケットが受信されていない場合、または識別する受信キューがない場合、値は0です。 ソケット・オプションは、ストリーム指向ソケットとデータグラム指向ソケットの両方でサポートされています。

      ソケット・オプションは読取り専用で、ソケット・オプションを設定しようとするとSocketExceptionがスローされます。

      APIのノート:
      ネットワーク・デバイスには、ネットワーク・パケットを送受信するための複数のキューまたはチャネルがある場合があります。 SO_INCOMING_NAPI_IDソケット・オプションは、受信ソケット接続またはその接続のパケットが転送される受信キューを示すヒントをアプリケーションに提供します。 アプリケーションは、1つのスレッド上の特定のキューに割り当てられたすべてのソケット接続を処理することで、これを利用できます。
      導入されたバージョン:
      15
    • SO_PEERCRED

      public static final SocketOption<UnixDomainPrincipal> SO_PEERCRED
      Unixドメイン・ピア資格証明。

      このソケット・オプションの値は、Unixドメイン・ソケットに接続されたピアの資格証明を表すUnixDomainPrincipalです。 資格証明は、ソケットが最初に接続または受け入れられたときに適用された資格証明です。

      ソケット・オプションは読取り専用で、ソケット・オプションを設定しようとするとSocketExceptionがスローされます。 接続されていないUnixドメイン・ソケットでソケット・オプションの値を取得しようとすると、SocketExceptionもスローされます。

      導入されたバージョン:
      16
    • IP_DONTFRAGMENT

      public static final SocketOption<Boolean> IP_DONTFRAGMENT
      IPパケットの断片化を無効にします。

      このソケット・オプションの値は、オプションが有効か無効かを示すBooleanです。 送信IPv4およびIPv6パケットのtrue断片化が発生しない場合。 このオプションはデータグラム・ソケットでのみ使用できます。 設定する場合は、送信パケットのサイズをlocal MTUに制限するように注意する必要があります。 実装およびネットワーク・インタフェースによっては、MTUより大きいパケットがサイレントに送信またはドロップされ、例外がスローされることがあります。 IPv6ソケットの場合、このオプションがIPv4アドレスに送信されるデータグラムにも適用されるかどうかは、システムによって異なります。

      APIのノート:
      IPv4の場合、このオプションはIPパケット・ヘッダーにDF (フラグメントしない)フラグを設定します。 これは、パケットを断片化しないように中間ルーターに指示します。 IPv6ルーターはパケットを断片化しません。 かわりに、断片化は送信ノードと受信ノードによってのみ処理されます。 IPv6ソケットに対してこのオプションを設定すると、送信されるパケットが断片化されることはなく、その場合はローカル・ネットワークMTUを監視する必要があります。