Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

CLNP (clnp)

下位レイヤからの到達

下位レイヤ判別フィールド値
llcdsap = 254 (0xfe) のときのペイロード先頭 8 ビット129 (0x81)
pppprotocol = 35 (0x0023) のときのペイロード先頭 8 ビット129 (0x81)

フィールド

フィールド型既定値Auto説明
nlpidenum(8)129 (clnp)ネットワーク層プロトコル識別子(0x81 = CLNP)。
length_indicatoruint(8)ヘッダの長さ (オクテット単位)オプションの終わりまでのヘッダ長(オクテット、Auto)。
versionuint(8)1バージョン / プロトコル ID 拡張(1)。
lifetimeuint(8)32残り寿命(500 ms 単位)。
spuint(1)segmentation の要素数SP: セグメント化許可。セグメンテーション部が存在します(セグメンテーション部から Auto)。
msuint(1)0MS: 後続セグメントあり。
eruint(1)1E/R: PDU が破棄されたらエラーレポートを送る。
pdu_typeenum(5)28 (dt)PDU 種別: 0x1c DT(データ)、0x1d MD(マルチキャストデータ)、0x01 ER(エラーレポート)、0x1e ERQ / 0x1f ERP(エコー要求 / 応答)。
segment_lengthuint(16)ヘッダとペイロードの長さ (オクテット単位)ヘッダとデータを含む PDU 全体の長さ(Auto)。
checksumuint(16)ヘッダに対するFletcher チェックサムヘッダの ISO 8473 Fletcher チェックサム(Auto)。0 = チェックサム不使用。
destinationnsap49.0001.0000.0000.0002.00宛先 NSAP アドレス。
sourcensap49.0001.0000.0000.0001.00送信元 NSAP アドレス。
segmentationlist<struct> — sp 個の要素[]セグメンテーション部(データユニット識別子、セグメントオフセット、全長)。SP が立っているときに存在します。全長は計算しません。
optionstlv — グループ先頭から length_indicator オクテットまで[]長さ指示子までのオプション(8 ビットコード / 8 ビット長): セキュリティ、QoS 維持、優先度、ソースルーティング、経路記録、パディング、破棄理由。

nlpid

値名前
129 (0x81)clnp

pdu_type

値名前
1er
28dt
29md
30erq
31erp

segmentation

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
data_unit_identifieruint(16)
segment_offsetuint(16)
total_lengthuint(16)

options

  • タイプ 8 ビット、長さ 8 ビット。
  • 長さは値の部分だけを数えます。
  • 未知のタイプは値をオクテット列のまま保持します。
タイプ値名前値のフィールド説明
197 (0xc5)securityvalue
195 (0xc3)qos_maintenancevalue
205 (0xcd)priorityvalue
200 (0xc8)source_routingroute_type, next_address, addresses
203 (0xcb)recording_of_routeroute_type, next_address, addresses
204 (0xcc)paddingdata
193 (0xc1)reason_for_discardreason, pointer

options › security

フィールド型既定値Auto説明
valuebytes — PDU の残りすべて

options › qos_maintenance

フィールド型既定値Auto説明
valuebytes — PDU の残りすべて

options › priority

フィールド型既定値Auto説明
valueuint(8)

options › source_routing

フィールド型既定値Auto説明
route_typeenum(8)
next_addressuint(8)
addresseslist<struct> — PDU の残りすべて
options › source_routing › route_type
値名前
0 (0x00)partial
255 (0xff)complete
options › source_routing › addresses

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
addressnsap

options › recording_of_route

フィールド型既定値Auto説明
route_typeenum(8)
next_addressuint(8)
addresseslist<struct> — PDU の残りすべて
options › recording_of_route › route_type
値名前
0 (0x00)partial
255 (0xff)complete
options › recording_of_route › addresses

各要素は以下のフィールドの組です。

フィールド型既定値Auto説明
addressnsap

options › padding

フィールド型既定値Auto説明
databytes — PDU の残りすべて

options › reason_for_discard

フィールド型既定値Auto説明
reasonenum(8)
pointeruint(8)
options › reason_for_discard › reason
値名前
0 (0x00)general
1 (0x01)checksum
2 (0x02)congestion
3 (0x03)header_syntax
4 (0x04)segmentation_needed
5 (0x05)incomplete_pdu
6 (0x06)duplicate_option
128 (0x80)destination_unreachable
129 (0x81)destination_unknown
144 (0x90)source_routing_unspecified
145 (0x91)source_routing_syntax
146 (0x92)source_routing_unknown_address
147 (0x93)source_routing_path_not_acceptable
160 (0xa0)lifetime_expired_in_transit
161 (0xa1)lifetime_expired_reassembly
176 (0xb0)unsupported_option
177 (0xb1)unsupported_version
178 (0xb2)unsupported_security
179 (0xb3)unsupported_source_routing
180 (0xb4)unsupported_recording_of_route
192 (0xc0)reassembly_interference

サンプルテンプレート

  • clnp-dt — templates/protocols/l3/clnp-dt.wpg.yaml
  • clnp-er — templates/protocols/l3/clnp-er.wpg.yaml
  • clnp-erq — templates/protocols/l3/clnp-erq.wpg.yaml