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

PTP (ptp)

下位レイヤからの到達

下位レイヤ判別フィールド値
ethernet2ethertype35063 (0x88f7)
dot1qethertype35063 (0x88f7)
dot1adethertype35063 (0x88f7)
udpdst_port / src_port319 (0x013f)
udpdst_port / src_port320 (0x0140)

フィールド

フィールド型既定値Auto説明
major_sdo_iduint(4)0majorSdoId(IEEE 1588-2008 の transportSpecific)。既定プロファイルは 0、IEEE 802.1AS(gPTP)は 1。
message_typeenum(4)0 (sync)メッセージタイプ: 0 Sync、1 Delay_Req、2 Pdelay_Req、3 Pdelay_Resp、8 Follow_Up、9 Delay_Resp、10 Pdelay_Resp_Follow_Up、11 Announce、12 Signaling、13 Management。
minor_versionuint(4)0minorVersionPTP(IEEE 1588-2008 では 0、IEEE 1588-2019 では 1)。
versionuint(4)2versionPTP(2)。
message_lengthuint(16)ヘッダとペイロードの長さ (オクテット単位)TLV を含むメッセージ全体のオクテット長(自動)。
domain_numberuint(8)0ドメイン番号。
minor_sdo_iduint(8)0minorSdoId(IEEE 1588-2008 では予約、0)。
flagsflags(16)0x0フラグ: 1 オクテット目に alternateMaster、twoStep、unicast、プロファイル固有ビット、セキュリティビット、2 オクテット目に leap61、leap59、currentUtcOffsetValid、ptpTimescale、timeTraceable、frequencyTraceable、synchronizationUncertain。
correction_fieldint(64)0補正値(ナノ秒 × 2^16、符号付き)。
message_type_specificuint(32)0メッセージタイプ固有フィールド(IEEE 1588-2008 では予約、0)。
clock_identityuint(64)144116287553929217送信元ポートのクロック ID(EUI-64。MAC アドレスの中央に ff:fe を挟んだ値など)。
port_numberuint(16)1送信元ポートのポート番号。
sequence_iduint(16)0シーケンス ID。Follow_Up / Delay_Resp / Pdelay_Resp は応答先メッセージの値をコピーする。
control_fieldenum(8)0 (sync)制御フィールド(IEEE 1588 バージョン 1 互換): 0 Sync、1 Delay_Req、2 Follow_Up、3 Delay_Resp、4 Management、5 その他。
log_message_intervalint(8)0メッセージ間隔(秒)の log2(符号付き。該当しない場合は 0x7f)。
databytes — message_length - 34 オクテット00 00 00 00 00 00 00 00 00 00共通ヘッダ以降のメッセージ(メッセージ長まで)をオクテット列で。

message_type

値名前
0sync
1delay_req
2pdelay_req
3pdelay_resp
8follow_up
9delay_resp
10pdelay_resp_follow_up
11announce
12signaling
13management

flags

ビットマスク名前
1532768 (0x8000)security
1416384 (0x4000)profile_specific_2
138192 (0x2000)profile_specific_1
101024 (0x0400)unicast
9512 (0x0200)two_step
8256 (0x0100)alternate_master
664 (0x0040)synchronization_uncertain
532 (0x0020)frequency_traceable
416 (0x0010)time_traceable
38 (0x0008)ptp_timescale
24 (0x0004)current_utc_offset_valid
12 (0x0002)leap59
01 (0x0001)leap61

control_field

値名前
0 (0x00)sync
1 (0x01)delay_req
2 (0x02)follow_up
3 (0x03)delay_resp
4 (0x04)management
5 (0x05)other

次レイヤ

次レイヤは message_type で判別します。このフィールドが Auto のときは、上に積んだプロトコルの値を書き込みます。

値プロトコル備考
0ptp_syncこのレイヤを読み直す
1ptp_delay_reqこのレイヤを読み直す
2ptp_pdelay_reqこのレイヤを読み直す
3ptp_pdelay_respこのレイヤを読み直す
8ptp_follow_upこのレイヤを読み直す
9ptp_delay_respこのレイヤを読み直す
10ptp_pdelay_resp_follow_upこのレイヤを読み直す
11ptp_announceこのレイヤを読み直す
12ptp_signalingこのレイヤを読み直す
13ptp_managementこのレイヤを読み直す

サンプルテンプレート

  • ptp-generic — templates/protocols/timing/ptp-generic.wpg.yaml