Skip to main content

4. Flow State Establishment Requirements

This section describes the requirements for stateful flow labeling scenarios. In a stateful scenario, nodes along the path maintain state information about flows and may use signaling protocols to establish this state.

General Requirements​

When a stateful flow labeling mechanism is used, the following requirements apply:

  1. Signaling Protocol: A signaling protocol MUST be used to inform nodes along the path about the flow label value and its semantics. Examples of such protocols include RSVP [RFC2205] and GIST [RFC5971].

  2. State Consistency: All nodes that maintain state for a flow MUST have a consistent understanding of the flow label value and its meaning.

  3. State Lifetime: Flow state MUST have a defined lifetime and MUST be refreshed or removed when the flow terminates or when the state expires.

Compatibility with Stateless Operation​

Stateful flow labeling mechanisms MUST be designed to coexist with stateless operation. Specifically:

  • Nodes that do not participate in the stateful mechanism MUST still be able to forward packets with non-zero flow labels.

  • The presence of nodes that do not understand the stateful mechanism MUST NOT cause packets to be dropped or misrouted.

Signaling Protocol Requirements​

A signaling protocol used for flow state establishment MUST:

  • Provide a means to communicate the flow label value to be used for a flow.

  • Provide a means to communicate the semantics of the flow label (i.e., what treatment should be applied to packets with this flow label).

  • Provide a means to establish, refresh, and tear down flow state.

  • Be robust against packet loss and node failures.

Security Considerations for Stateful Operation​

Stateful flow labeling mechanisms MUST address the security considerations described in Section 6. In particular:

  • The signaling protocol MUST provide authentication and integrity protection to prevent unauthorized modification of flow state.

  • Mechanisms MUST be in place to prevent denial of service attacks through excessive flow state creation.

Interaction with Stateless Operation​

When both stateful and stateless flow labeling are used in the same network:

  • Stateful mechanisms MUST NOT interfere with stateless operation.

  • Nodes that implement both stateful and stateless mechanisms MUST clearly distinguish between flows that are handled statefully and those that are handled statelessly.

  • The default behavior SHOULD be stateless operation, with stateful operation used only when explicitly configured or signaled.