1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//! Bidirectional Forwarding Detection (BFD, RFC 5880 / RFC 5881 / RFC 5883) AST definitions.
//!
//! Defines the low-overhead, short-duration forwarding plane fault detection control packet specified
//! in RFC 5880 and encapsulated over UDP destination port `3784` (single-hop, RFC 5881) or `4784`
//! (multihop, RFC 5883). The mandatory 24-byte BFD Control header packs a 3-bit Version (`1`), a 5-bit
//! Diagnostic code (`DIAG`, `0..=31`), a 2-bit Session State (`STATE`: `0` AdminDown, `1` Down, `2` Init,
//! `3` Up), control flags, an 8-bit Detection Time Multiplier (`MULT`, default `3`), an 8-bit Length (`24`),
//! 32-bit `My Discriminator` (`MY_DISC`) and `Your Discriminator` (`YOUR_DISC`) identifiers, and 32-bit
//! microsecond timer intervals (`MIN_TX`, `MIN_RX`, and Required Min Echo RX Interval).
//!
//! Canonical `.fasm` syntax:
//! `a -> b BFD [STATE <0..3>] [DIAG <0..31>] [MY_DISC <u32>] [YOUR_DISC <u32>] [MIN_TX <u32>] [MIN_RX <u32>] [MULT <u8>]`
use PhantomData;
/// Bidirectional Forwarding Detection (RFC 5880) control packet specification over UDP port `3784`.
///
/// Syntax mapping: `BFD [STATE <0..3>] [DIAG <0..31>] [MY_DISC <u32>] [YOUR_DISC <u32>] [MIN_TX <u32>] [MIN_RX <u32>] [MULT <u8>]`