Simple Two-Way Active Measurement Protocol Extensions for Performance Measurement on a Link Aggregation Group
Extracted elements (18)
A LAG uses hash-based load balancing across member links, but link delay may vary between members due to different transport paths. To support low-latency traffic steering, per-member-link performance metrics are needed, motivating the micro-session approach.
The micro STAMP-Test supports both stateless and stateful Session-Reflector modes as defined in STAMP RFC 8762. Importantly, no additional state is introduced: all Micro-session ID processing is stateless.
The Sender and Reflector Micro-session ID fields are defined generically (2 octets each) so they may be used beyond LAG scenarios in the future, even though the current use case is LAG member link identification.
Micro STAMP-Test reuses all procedures from STAMP RFC 8762 Section 4, adding only the Micro-session ID TLV handling. The mapping between micro STAMP sessions and member link identifiers can be configured by augmenting the STAMP YANG data model, though the augmentation details are out of scope.
A micro STAMP Session-Sender MAY include the Follow-Up Telemetry TLV (RFC 8972) to request information from the micro Session-Reflector, improving delay measurement accuracy by minimizing egress queuing delay impact.
Micro sessions may share the same Sender Port and Receiver Port pair or each may use a different pair; from an operational standpoint, sharing the same port pair is RECOMMENDED.
Test packets of micro sessions MUST carry member link information for validation, encoded in the Micro-session ID TLV.
The Length field of the Micro-session ID TLV MUST be 4 (octets).
The micro STAMP Session-Reflector MUST put the Sender and Reflector member link identifiers associated with the micro STAMP session into the respective fields of the reflected test packet; the Sender member link identifier is copied from the received test packet.
The micro STAMP Session-Sender MUST send micro STAMP-Test packets over the member link with which the session is associated.
The value of the Sender Micro-session ID field MUST be unique within a STAMP session at the Session-Sender; similarly, the Reflector Micro-session ID MUST be unique within a STAMP session at the Session-Reflector.
When receiving a reflected test packet, the micro Session-Sender MUST use the Sender Micro-session ID to validate whether the packet is from the expected member link, and MUST use the Reflector Micro-session ID to validate the Reflector's behavior; validation failure in either case MUST result in the packet being discarded.
When sending a test packet, the micro STAMP Session-Sender MUST set the Sender Micro-session ID field with the member link identifier. If the Reflector member link identifier is known, the Reflector Micro-session ID MUST be set; otherwise it MUST be zero.
When the micro STAMP Session-Reflector receives a test packet with a non-zero Reflector Micro-session ID, it MUST use that identifier to check association with the micro STAMP session; if validation fails, the test packet MUST be discarded.
Micro sessions are STAMP sessions established on individual member links of a LAG, one session per member link, for the purpose of measuring per-link performance metrics. All micro sessions of a LAG share the same Sender IP Address and Receiver IP Address.
IANA has allocated STAMP TLV Type value 11 for the Micro-session ID TLV in the 'STAMP TLV Types' registry defined by RFC 8972.
This extension is intended for deployment where Session-Sender and Session-Reflector are directly connected over a LAG. It is assumed that a node has previously verified the integrity of the LAG connection and the identity of its one-hop peer. No additional security issues are introduced beyond those in RFC 8762 and RFC 8972.
The Micro-session ID TLV (Type=11) has a 1-octet Type field, a 2-octet Length field (value MUST be 4), a 2-octet Sender Micro-session ID field, and a 2-octet Reflector Micro-session ID field, for a total Value length of 4 octets.