802.3ah OAM Event Notification (efm_oam_event_notification)
- Layer: L2 (data link)
- Header: variable length
- Notes: PTP / ESMC / CFM / R-APS / 802.3ah OAM (P2)
Reached from
| Lower layer | Selector | Value |
|---|---|---|
ethernet2 | First 8 bits of the payload when ethertype = 34825 (0x8809) | 3 (0x03) |
efm_oam | code | 1 (0x01) (re-decodes this layer) |
Fields
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
subtype | uint(8) | 3 | Slow Protocols subtype (3 = OAM). | |
flags | flags(16) | 0x50 | Flags: link fault, dying gasp, critical event, local / remote evaluating and stable. | |
code | enum(8) | 1 (event_notification) | OAMPDU code: 0x00 Information, 0x01 Event Notification, 0x02 Variable Request, 0x03 Variable Response, 0x04 Loopback Control, 0xfe Organization Specific. | |
sequence_number | uint(16) | 1 | Event notification sequence number. | |
tlvs | tlv — up to and including the first item of type 0, or the end of the PDU | 2 items | Link event TLVs (8-bit type, 8-bit length including the header, Auto): errored symbol period, errored frame, errored frame period, errored frame seconds summary, Organization Specific, closed by the End TLV (type 0). |
flags
| Bit | Mask | Name |
|---|---|---|
| 0 | 1 (0x0001) | link_fault |
| 1 | 2 (0x0002) | dying_gasp |
| 2 | 4 (0x0004) | critical_event |
| 3 | 8 (0x0008) | local_evaluating |
| 4 | 16 (0x0010) | local_stable |
| 5 | 32 (0x0020) | remote_evaluating |
| 6 | 64 (0x0040) | remote_stable |
code
| Value | Name |
|---|---|
| 0 (0x00) | information |
| 1 (0x01) | event_notification |
| 2 (0x02) | variable_request |
| 3 (0x03) | variable_response |
| 4 (0x04) | loopback_control |
| 254 (0xfe) | organization_specific |
tlvs
- Type 8 bits, length 8 bits.
- The length counts the type and length fields too.
- Unknown types are kept as raw value octets.
| Type | Name | Value fields | Description |
|---|---|---|---|
| 0 (0x00) | end | (type only, no length or value) | |
| 1 (0x01) | errored_symbol_period | timestamp, window, threshold, errors, error_running_total, event_running_total | |
| 2 (0x02) | errored_frame | timestamp, window, threshold, errors, error_running_total, event_running_total | |
| 3 (0x03) | errored_frame_period | timestamp, window, threshold, errors, error_running_total, event_running_total | |
| 4 (0x04) | errored_frame_seconds_summary | timestamp, window, threshold, errors, error_running_total, event_running_total | |
| 254 (0xfe) | organization_specific | oui, value |
tlvs › errored_symbol_period
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
timestamp | uint(16) | 0 | ||
window | uint(64) | 10 | ||
threshold | uint(64) | 1 | ||
errors | uint(64) | 1 | ||
error_running_total | uint(64) | 1 | ||
event_running_total | uint(32) | 1 |
tlvs › errored_frame
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
timestamp | uint(16) | 0 | ||
window | uint(16) | 10 | ||
threshold | uint(32) | 1 | ||
errors | uint(32) | 1 | ||
error_running_total | uint(64) | 1 | ||
event_running_total | uint(32) | 1 |
tlvs › errored_frame_period
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
timestamp | uint(16) | 0 | ||
window | uint(32) | 10 | ||
threshold | uint(32) | 1 | ||
errors | uint(32) | 1 | ||
error_running_total | uint(64) | 1 | ||
event_running_total | uint(32) | 1 |
tlvs › errored_frame_seconds_summary
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
timestamp | uint(16) | 0 | ||
window | uint(16) | 10 | ||
threshold | uint(16) | 1 | ||
errors | uint(16) | 1 | ||
error_running_total | uint(32) | 1 | ||
event_running_total | uint(32) | 1 |
tlvs › organization_specific
| Field | Type | Default | Auto | Description |
|---|---|---|---|---|
oui | uint(24) | |||
value | bytes — rest of the PDU |
Sample templates
- efm-oam-event —
templates/protocols/oam/efm-oam-event.wpg.yaml