PTP Pdelay_Resp (ptp_pdelay_resp)
- レイヤ: アプリケーション・制御
- ヘッダ: 可変長
- 補足: PTP / ESMC / CFM / R-APS / 802.3ah OAM (P2)
下位レイヤからの到達
| 下位レイヤ | 判別フィールド | 値 |
|---|---|---|
ethernet2 | ethertype | 35063 (0x88f7) |
dot1q | ethertype | 35063 (0x88f7) |
dot1ad | ethertype | 35063 (0x88f7) |
udp | dst_port / src_port | 319 (0x013f) |
ptp | message_type | 3 (このレイヤを読み直す) |
フィールド
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
major_sdo_id | uint(4) | 0 | majorSdoId(IEEE 1588-2008 の transportSpecific)。既定プロファイルは 0、IEEE 802.1AS(gPTP)は 1。 | |
message_type | enum(4) | 3 (pdelay_resp) | メッセージタイプ: 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_version | uint(4) | 0 | minorVersionPTP(IEEE 1588-2008 では 0、IEEE 1588-2019 では 1)。 | |
version | uint(4) | 2 | versionPTP(2)。 | |
message_length | uint(16) | ヘッダとペイロードの長さ (オクテット単位) | TLV を含むメッセージ全体のオクテット長(自動)。 | |
domain_number | uint(8) | 0 | ドメイン番号。 | |
minor_sdo_id | uint(8) | 0 | minorSdoId(IEEE 1588-2008 では予約、0)。 | |
flags | flags(16) | 0x0 | フラグ: 1 オクテット目に alternateMaster、twoStep、unicast、プロファイル固有ビット、セキュリティビット、2 オクテット目に leap61、leap59、currentUtcOffsetValid、ptpTimescale、timeTraceable、frequencyTraceable、synchronizationUncertain。 | |
correction_field | int(64) | 0 | 補正値(ナノ秒 × 2^16、符号付き)。 | |
message_type_specific | uint(32) | 0 | メッセージタイプ固有フィールド(IEEE 1588-2008 では予約、0)。 | |
clock_identity | uint(64) | 144116287553929217 | 送信元ポートのクロック ID(EUI-64。MAC アドレスの中央に ff:fe を挟んだ値など)。 | |
port_number | uint(16) | 1 | 送信元ポートのポート番号。 | |
sequence_id | uint(16) | 0 | シーケンス ID。Follow_Up / Delay_Resp / Pdelay_Resp は応答先メッセージの値をコピーする。 | |
control_field | enum(8) | 5 (other) | 制御フィールド(IEEE 1588 バージョン 1 互換): 0 Sync、1 Delay_Req、2 Follow_Up、3 Delay_Resp、4 Management、5 その他。 | |
log_message_interval | int(8) | 127 | メッセージ間隔(秒)の log2(符号付き。該当しない場合は 0x7f)。 | |
request_receipt_timestamp_seconds | uint(48) | 0 | タイムスタンプ: 秒(48 ビット)。 | |
request_receipt_timestamp_nanoseconds | uint(32) | 0 | タイムスタンプ: ナノ秒(32 ビット)。 | |
requesting_port_clock_identity | uint(64) | 144116287553929218 | ポート ID: クロック ID(全ビット 1 = すべてのクロック)。 | |
requesting_port_port_number | uint(16) | 1 | ポート ID: ポート番号(0xffff = すべてのポート)。 | |
tlvs | tlv — message_length - 54 オクテット | [] | TLV(16 ビット型、値の 16 ビット長、自動): Management、Management Error Status、Organization Extension、ユニキャストネゴシエーション(Request / Grant / Cancel / Acknowledge Cancel)、Path Trace、Alternate Time Offset Indicator。メッセージ長で終わる。 |
message_type
| 値 | 名前 |
|---|---|
| 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 |
flags
| ビット | マスク | 名前 |
|---|---|---|
| 15 | 32768 (0x8000) | security |
| 14 | 16384 (0x4000) | profile_specific_2 |
| 13 | 8192 (0x2000) | profile_specific_1 |
| 10 | 1024 (0x0400) | unicast |
| 9 | 512 (0x0200) | two_step |
| 8 | 256 (0x0100) | alternate_master |
| 6 | 64 (0x0040) | synchronization_uncertain |
| 5 | 32 (0x0020) | frequency_traceable |
| 4 | 16 (0x0010) | time_traceable |
| 3 | 8 (0x0008) | ptp_timescale |
| 2 | 4 (0x0004) | current_utc_offset_valid |
| 1 | 2 (0x0002) | leap59 |
| 0 | 1 (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 |
tlvs
- タイプ 16 ビット、長さ 16 ビット。
- 長さは値の部分だけを数えます。
- 未知のタイプは値をオクテット列のまま保持します。
| タイプ値 | 名前 | 値のフィールド | 説明 |
|---|---|---|---|
| 1 (0x0001) | management | management_id, data_field | |
| 2 (0x0002) | management_error_status | management_error_id, management_id, reserved, display_data | |
| 3 (0x0003) | organization_extension | organization_id, organization_sub_type, data_field | |
| 4 (0x0004) | request_unicast_transmission | message_type, reserved, log_inter_message_period, duration_field | |
| 5 (0x0005) | grant_unicast_transmission | message_type, reserved, log_inter_message_period, duration_field, reserved2, reserved3, renewal_invited | |
| 6 (0x0006) | cancel_unicast_transmission | message_type, reserved, reserved2 | |
| 7 (0x0007) | acknowledge_cancel_unicast_transmission | message_type, reserved, reserved2 | |
| 8 (0x0008) | path_trace | path_sequence | |
| 9 (0x0009) | alternate_time_offset_indicator | key_field, current_offset, jump_seconds, time_of_next_jump, display_name_length, display_name, pad |
tlvs › management
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
management_id | enum(16) | 8192 (default_data_set) | ||
data_field | bytes — PDU の残りすべて |
tlvs › management › management_id
| 値 | 名前 |
|---|---|
| 0 (0x0000) | null_management |
| 1 (0x0001) | clock_description |
| 2 (0x0002) | user_description |
| 8192 (0x2000) | default_data_set |
| 8193 (0x2001) | current_data_set |
| 8194 (0x2002) | parent_data_set |
| 8195 (0x2003) | time_properties_data_set |
| 8196 (0x2004) | port_data_set |
| 8197 (0x2005) | priority1 |
| 8198 (0x2006) | priority2 |
| 8199 (0x2007) | domain |
| 8200 (0x2008) | slave_only |
| 8201 (0x2009) | log_announce_interval |
| 8205 (0x200d) | log_sync_interval |
| 8213 (0x2015) | utc_properties |
tlvs › management_error_status
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
management_error_id | enum(16) | |||
management_id | enum(16) | |||
reserved | uint(32) | 0 | ||
display_data | bytes — PDU の残りすべて |
tlvs › management_error_status › management_error_id
| 値 | 名前 |
|---|---|
| 1 (0x0001) | response_too_big |
| 2 (0x0002) | no_such_id |
| 3 (0x0003) | wrong_length |
| 4 (0x0004) | wrong_value |
| 5 (0x0005) | not_setable |
| 6 (0x0006) | not_supported |
| 65534 (0xfffe) | general_error |
tlvs › management_error_status › management_id
| 値 | 名前 |
|---|---|
| 0 (0x0000) | null_management |
| 1 (0x0001) | clock_description |
| 2 (0x0002) | user_description |
| 8192 (0x2000) | default_data_set |
| 8193 (0x2001) | current_data_set |
| 8194 (0x2002) | parent_data_set |
| 8195 (0x2003) | time_properties_data_set |
| 8196 (0x2004) | port_data_set |
| 8197 (0x2005) | priority1 |
| 8198 (0x2006) | priority2 |
| 8199 (0x2007) | domain |
| 8200 (0x2008) | slave_only |
| 8201 (0x2009) | log_announce_interval |
| 8205 (0x200d) | log_sync_interval |
| 8213 (0x2015) | utc_properties |
tlvs › organization_extension
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
organization_id | uint(24) | |||
organization_sub_type | uint(24) | |||
data_field | bytes — PDU の残りすべて |
tlvs › request_unicast_transmission
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
message_type | enum(4) | 11 (announce) | ||
reserved | uint(4) | 0 | ||
log_inter_message_period | int(8) | 1 | ||
duration_field | uint(32) | 300 |
tlvs › request_unicast_transmission › message_type
| 値 | 名前 |
|---|---|
| 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 |
tlvs › grant_unicast_transmission
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
message_type | enum(4) | 11 (announce) | ||
reserved | uint(4) | 0 | ||
log_inter_message_period | int(8) | 1 | ||
duration_field | uint(32) | 300 | ||
reserved2 | uint(8) | 0 | ||
reserved3 | uint(7) | 0 | ||
renewal_invited | uint(1) | 0 |
tlvs › grant_unicast_transmission › message_type
| 値 | 名前 |
|---|---|
| 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 |
tlvs › cancel_unicast_transmission
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
message_type | enum(4) | 11 (announce) | ||
reserved | uint(4) | 0 | ||
reserved2 | uint(8) | 0 |
tlvs › cancel_unicast_transmission › message_type
| 値 | 名前 |
|---|---|
| 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 |
tlvs › acknowledge_cancel_unicast_transmission
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
message_type | enum(4) | 11 (announce) | ||
reserved | uint(4) | 0 | ||
reserved2 | uint(8) | 0 |
tlvs › acknowledge_cancel_unicast_transmission › message_type
| 値 | 名前 |
|---|---|
| 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 |
tlvs › path_trace
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
path_sequence | list<uint(64)> — PDU の残りすべて |
tlvs › alternate_time_offset_indicator
| フィールド | 型 | 既定値 | Auto | 説明 |
|---|---|---|---|---|
key_field | uint(8) | 0 | ||
current_offset | int(32) | 0 | ||
jump_seconds | int(32) | 0 | ||
time_of_next_jump | uint(48) | 0 | ||
display_name_length | uint(8) | display_name のオクテット長 | ||
display_name | bytes — display_name_length オクテット | |||
pad | bytes — PDU の残りすべて |
制約
| レベル | 規則 |
|---|---|
| 警告 | version が 2 |
サンプルテンプレート
- ptp-pdelay-resp-l2 —
templates/protocols/timing/ptp-pdelay-resp-l2.wpg.yaml