Provided by: manpages-ja_0.5.0.0.20210215+dfsg-1_all bug

名前

       udplite - 軽量なユーザーデータグラムプロトコル

書式

       #include <sys/socket.h>

       sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);

説明

       これは  RFC 3828  に書かれている軽量なユーザーデータグラムプロトコル (Lightweight User Datagram Protocol;
       UDP-Lite) の実装である。

       UDP-Lite は UDP (RFC 768) の拡張で、可変長のチェックサムをサポートしている。 このプロトコルが効果を発揮す
       るのは、少しだけ壊れたデータグラムがあった場合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させる
       のではなく、 それを利用することができるような、ある種のマルチメディア転送においてである。

       可変長のチェックサムの対象範囲は setsockopt(2)  オプション経由で設定される。 このオプションが設定されてい
       ない場合、UDP と異なるのは 違う IP プロトコル識別子 (IANA 番号 136) を使用する点だけである。

       UDP-Lite  の実装は  udp(7)  の完全な拡張、すなわち API と API の動作は同じである。 これに加えて、2 つのソ
       ケットオプションがチェックサムの対象範囲を 制御するために提供されている。

   アドレスのフォーマット
       UDP-Litev4 は ip(7)  で説明されている sockaddr_in アドレスを使用する。 UDP-Litev6 は ipv6(7)   で説明され
       ている sockaddr_in6 アドレスを使用する。

   ソケットオプション
       UDP-Lite   のソケットオプションを設定/取得するには、  オプションレベル引き数に  IPPROTO_UDPLITE  を指定し
       て、取得時には getsockopt(2)  を、設定時には setsockopt(2)  を呼び出す。さらに、全ての  IPPROTO_UDP  のソ
       ケットオプションが UDP-Lite ソケットでも使用できる。 詳細は udp(7)  を参照のこと。

       以下の 2 つが UDP-Lite に固有のオプションである。

       UDPLITE_SEND_CSCOV
              このオプションは送信側のチェックサムの対象範囲を設定する。  int 型を引き数として取り、設定可能な値
              の範囲は 0 から 2^16-1 までである。

              値  0  はデータグラム全体が常にチェックサムの対象となることを意味する。   値   1〜7   は不正であり
              (RFC 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り上げられる。

              IPv6 の jumbograms (巨大なデータグラム; RFC 2675) の場合には、 UDP-Litev6 のチェックサムの対象範囲
              は、RFC 3828 の 3.5 章にあるように、 先頭から 2^16-1 オクテットまでに限定される。 そのため、それよ
              り大きな値は     2^16-1     に黙って切り詰められる。    現在の対象範囲の値を知りたければ、いつでも
              getsockopt(2) を使って値を問い合わせることができる。

       UDPLITE_RECV_CSCOV
              これは受信側のチェックサムの対象範囲を設定するもので、            使用される引き数形式と値の範囲は
              UDPLITE_SEND_CSCOV と同じである。 このオプションは、部分的なチェックサム対象範囲を持つトラフィック
              を 有効にするのに必要なわけではなく、トラフィックフィルターとして機能する。 このオプションが有効に
              すると、カーネルは指定されたチェックサム対象範囲  よりも「短かい」対象範囲を持つパケットを全て廃棄
              するようになる。

              UDPLITE_RECV_CSCOV の値が実際のパケットのチェックサム対象範囲よりも大きい場合、 受信したパケットは
              黙って廃棄される。 ただし、システムログに対して警告メッセージが生成されるかもしれない。

エラー

       udp(7)   について書かれている全てのエラーは返る可能性がある。  UDP-Lite  自体は新たなエラーは追加していな
       い。

ファイル

       /proc/net/snmp - UDP-Litev4 の基本的な統計情報カウンター。
       /proc/net/snmp6 - UDP-Litev6 の基本的な統計情報カウンター。

バージョン

       UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。

バグ

       glibc によるサポートがない場合は、以下の定義を行う必要がある。

           #define IPPROTO_UDPLITE     136
           #define UDPLITE_SEND_CSCOV  10
           #define UDPLITE_RECV_CSCOV  11

関連項目

       ip(7), ipv6(7), socket(7), udp(7)

       RFC 3828 for the Lightweight User Datagram Protocol (UDP-Lite).

       Linux カーネルソース内の Documentation/networking/udplite.txt

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告
       に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。