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.