3.12. Vendor ID Payload (ベンダー ID ペイロード)
3.12. Vendor ID Payload (ベンダー ID ペイロード)
Vendor ID payload は本書で V と表し, ベンダー定義の定数を含む. この定数はベンダーがリモート実装インスタンスを識別し認識するために用いられる. この仕組みにより, ベンダーは後方互換性を保ちながら新機能を試験できる.
Vendor ID payload は, 送信者がプロトコルの特定の拡張を受け入れ可能であることを宣言してよいし, デバッグ補助として実装を識別するだけでもよい. Vendor ID payload は本仕様で定義される情報の解釈を変えてはならない (すなわち critical ビットは 0 でなければならない). 複数の Vendor ID payload を送ってよい. 実装は Vendor ID payload をまったく送る必要はない.
Vendor ID payload は任意のメッセージの一部として送ってよい. 既知の Vendor ID payload を受信すると, 実装は本書全体で説明する私用番号 (私用ペイロード, 私用交換, 私用通知など) を利用できる. 未知の Vendor ID は無視しなければならない.
本プロトコルを拡張したい文書作成者は, その文書の拡張を実装する能力を宣言する Vendor ID payload を定義しなければならない. 受容され標準化された文書には IANA が Future Use 範囲から「マジック数」を割り当て, Vendor ID の要求がなくなることが期待される.
Vendor ID payload のフィールドは次のように定義される:
1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Next Payload |C| RESERVED | Payload Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Vendor ID (VID) ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
図 18: Vendor ID payload 形式
- Vendor ID (可変長) - Vendor ID を選ぶ者は, 中央レジストリがないにもかかわらず一意性を保証する責任がある. 良い慣行は会社名, 人名などの情報を含めることである. 見せびらかすなら, ID を選んだ場所の緯度経度と時刻, ランダム入力を含めてもよい. 長い一意文字列そのものより, 長い一意文字列のメッセージダイジェストを用いる方が望ましい.
Vendor ID payload のペイロード種別は 43 である.