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

CFM LTR (cfm_ltr)

Reached from

Lower layerSelectorValue
ethernet2ethertype35074 (0x8902)
dot1qethertype35074 (0x8902)
dot1adethertype35074 (0x8902)
cfmopcode4 (0x04) (re-decodes this layer)

Fields

FieldTypeDefaultAutoDescription
md_leveluint(3)0Maintenance domain / MEG level (0-7).
versionuint(5)0CFM version (0; 1 for R-APS of G.8032v2).
opcodeenum(8)4 (ltr)OpCode: 1 CCM, 2 LBR, 3 LBM, 4 LTR, 5 LTM, 33 AIS, 35 LCK, 37 TST, 39 Linear APS, 40 R-APS, 41 MCC, 42 LMR, 43 LMM, 45 1DM, 46 DMR, 47 DMM, 52 CSF, 53 1SL, 54 SLR, 55 SLM …
use_fdb_onlyuint(1)1UseFDBonly: the forwarding database alone decides the egress port.
fwd_yesuint(1)0FwdYes: the LTM was relayed.
terminal_mepuint(1)1TerminalMEP: the reply comes from the target MEP.
flags_reserveduint(5)0
first_tlv_offsetuint(8)6Offset of the first TLV from the end of this field (constant for each OpCode).
transaction_iduint(32)1Loopback / linktrace transaction identifier.
reply_ttluint(8)63Linktrace TTL.
relay_actionenum(8)1 (rly_hit)Relay action: 1 RlyHit, 2 RlyFDB, 3 RlyMPDB.
tlvstlv — up to and including the first item of type 0, or the end of the PDU3 itemsTLVs (8-bit type, 16-bit length of the value, Auto): Sender ID, Port Status, Data, Interface Status, Reply Ingress / Egress, LTM / LTR Egress Identifier, Organization-Specific, Test, closed by the End TLV (type 0).

opcode

ValueName
1 (0x01)ccm
2 (0x02)lbr
3 (0x03)lbm
4 (0x04)ltr
5 (0x05)ltm
33 (0x21)ais
35 (0x23)lck
37 (0x25)tst
39 (0x27)linear_aps
40 (0x28)ring_aps
41 (0x29)mcc
42 (0x2a)lmr
43 (0x2b)lmm
45 (0x2d)one_dm
46 (0x2e)dmr
47 (0x2f)dmm
48 (0x30)exr
49 (0x31)exm
50 (0x32)vsr
51 (0x33)vsm
52 (0x34)csf
53 (0x35)one_sl
54 (0x36)slr
55 (0x37)slm

relay_action

ValueName
1 (0x01)rly_hit
2 (0x02)rly_fdb
3 (0x03)rly_mpdb

tlvs

  • Type 8 bits, length 16 bits.
  • The length counts the value only.
  • Unknown types are kept as raw value octets.
TypeNameValue fieldsDescription
0 (0x00)end(type only, no length or value)
1 (0x01)sender_idchassis_id_length, chassis_id_subtype, chassis_id, management_address
2 (0x02)port_statusport_status
3 (0x03)data_tlvvalue
4 (0x04)interface_statusinterface_status
5 (0x05)reply_ingressingress_action, ingress_mac, ingress_port_id
6 (0x06)reply_egressegress_action, egress_mac, egress_port_id
7 (0x07)ltm_egress_identifieregress_identifier
8 (0x08)ltr_egress_identifierlast_egress_identifier, next_egress_identifier
31 (0x1f)organization_specificoui, subtype, value
32 (0x20)testpattern_type, test_pattern

tlvs › sender_id

FieldTypeDefaultAutoDescription
chassis_id_lengthuint(8)Size of chassis_id in octets
chassis_id_subtypeenum(8)4 (mac_address)
chassis_idbytes — chassis_id_length octets02 00 00 00 00 01
management_addressbytes — rest of the PDU
tlvs › sender_id › chassis_id_subtype
ValueName
1 (0x01)chassis_component
2 (0x02)interface_alias
3 (0x03)port_component
4 (0x04)mac_address
5 (0x05)network_address
6 (0x06)interface_name
7 (0x07)local

tlvs › port_status

FieldTypeDefaultAutoDescription
port_statusenum(8)2 (up)
tlvs › port_status › port_status
ValueName
1 (0x01)blocked
2 (0x02)up

tlvs › data_tlv

FieldTypeDefaultAutoDescription
valuebytes — rest of the PDU

tlvs › interface_status

FieldTypeDefaultAutoDescription
interface_statusenum(8)1 (up)
tlvs › interface_status › interface_status
ValueName
1 (0x01)up
2 (0x02)down
3 (0x03)testing
4 (0x04)unknown
5 (0x05)dormant
6 (0x06)not_present
7 (0x07)lower_layer_down

tlvs › reply_ingress

FieldTypeDefaultAutoDescription
ingress_actionenum(8)1 (ok)
ingress_macmac02:00:00:00:00:02
ingress_port_idbytes — rest of the PDU
tlvs › reply_ingress › ingress_action
ValueName
1 (0x01)ok
2 (0x02)down
3 (0x03)blocked
4 (0x04)vid

tlvs › reply_egress

FieldTypeDefaultAutoDescription
egress_actionenum(8)1 (ok)
egress_macmac02:00:00:00:00:02
egress_port_idbytes — rest of the PDU
tlvs › reply_egress › egress_action
ValueName
1 (0x01)ok
2 (0x02)down
3 (0x03)blocked
4 (0x04)vid

tlvs › ltm_egress_identifier

FieldTypeDefaultAutoDescription
egress_identifieruint(64)2199023255553

tlvs › ltr_egress_identifier

FieldTypeDefaultAutoDescription
last_egress_identifieruint(64)2199023255553
next_egress_identifieruint(64)2199023255554

tlvs › organization_specific

FieldTypeDefaultAutoDescription
ouiuint(24)
subtypeuint(8)
valuebytes — rest of the PDU

tlvs › test

FieldTypeDefaultAutoDescription
pattern_typeenum(8)
test_patternbytes — rest of the PDU
tlvs › test › pattern_type
ValueName
0 (0x00)null_without_crc
1 (0x01)null_with_crc
2 (0x02)prbs_without_crc
3 (0x03)prbs_with_crc

Constraints

LevelRule
warningfirst_tlv_offset = 6

Sample templates

  • cfm-ltr — templates/protocols/oam/cfm-ltr.wpg.yaml