Internet-Draft | Indirection-id Redirect for SRv6 | October 2024 |
Van de Velde, et al. | Expires 24 April 2025 | [Page] |
This document defines extensions to "FlowSpec Redirect to indirection-id Extended Community" for SRv6. This extended community can trigger advanced redirection capabilities to flowspec clients for SRv6. When activated, this flowspec extended community is used by a flowspec client to retrieve the corresponding next-hop and encoding information within a localised indirection-id mapping table.¶
The functionality detailed in this document allows a network controller to decouple the BGP flowspec redirection instruction from the operation of the available paths.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [2].¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 24 April 2025.¶
Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
"FlowSpec Redirect to indirection-id Extended Community" for IPv4 is defined in ietf-idr-flowspec-path-redirect [1]. This draft specifies extensions to this community for SRv6.¶
This document defines a new sub-type value for SRv6 in "FlowSpec Redirect to indirection-id Extended Community". The format of this extended community with the new sub-type value is show below:¶
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type |Sub-Type (TBD) | Flags(1 octet)| ID-Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Generalized indirection_id (16 octets) | ~ ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
Where¶
Type: 1 octet, defined in ietf-idr-flowspec-path-redirect [1].¶
Sub-Type: 1 octet, its value (TBD) will be assigned by IANA.¶
Flags: Same as that defined in ietf-idr-flowspec-path-redirect [1].¶
ID-Type: 1 octet value. This draft defines following Context Types:¶
0 - Localised ID (The flowspec client uses the received indirection-id to lookup forwarding information within the localised indirection-id table. The allocation and programming of the localised indirection-id table is outside scope of the document)¶
1 - Node ID with SID/index in MPLS-based Segment Routing (This means the indirection-id is mapped to an MPLS label using the index as a global offset in the SID/label space)¶
2 - Node ID with SID/label in MPLS-based Segment Routing (This means the indirection-id is mapped to an MPLS label using the indirection-id as global label)¶
3 - Binding Segment ID with SID/index in MPLS-based Segment Routing (This means the indirection-id is mapped to an MPLS binding label using the indirection-id as index for global offset in the SID/label space).¶
4 - Binding Segment ID with SID/label in MPLS-based Segment Routing (This means indirection-id is mapped to an MPLS binding label using the indirection-id as global label).¶
5 - Tunnel ID (Tunnel ID is within a single administrative domain a globally unique tunnel identifier. The allocation and programming of the Tunnel ID within the localised indirection-id table is outside scope of the document)¶
6 - Node ID with SID/index in SRv6 (This means the indirection-id is mapped to an SRv6 SID using the indirection-id as global SRv6 SID or index)¶
7 - Binding Segment ID with SID/index in SRv6 (This means the indirection-id is mapped to an SRv6 binding SID using the indirection-id as index for global offset in the SID space).¶
8 - Binding Segment ID with SID/index in SRv6 (This means indirection-id is mapped to an SRv6 binding SID using the indirection-id as global SRv6 SID).¶
Generalized indirection_id: 128-bit identifier used as indirection_id¶
A system using "Redirect to indirection-id" extended community can cause during the redirect mitigation of a DDoS attack overflow of traffic received by the mitigation infrastructure.¶
This document received valuable comments and input from IDR working group including Adam Simpson, Mustapha Aissaoui, Jan Mertens, Robert Raszuk, Jeff Haas, Susan Hares and Lucy Yong.¶
Below is a list of other contributing authors in alphabetical order:¶
Arjun Sreekantiah Cisco Systems 170 W. Tasman Drive San Jose, CA 95134 USA Email: [email protected] Nan Wu Huawei Technologies Huawei Bld., No. 156 Beiquing Rd Beijing 100095 China Email: [email protected] Shunwan Zhuang Huawei Technologies Huawei Bld., No. 156 Beiquing Rd Beijing 100095 China Email: [email protected]¶
Wim Henderickx Nokia Antwerp BE Email: [email protected]¶
This document requests a new sub-type value under "FlowSpec Redirect to indirection-id Extended Community Sub-Type" registery.¶
Value Code Reference 0x01 Flowspec Redirect to 128-bit Path-id for SRv6 [RFC-To-Be]¶