Internet-Draft | BGP Flow Specification for DetNet Flow M | October 2021 |
Xiong, et al. | Expires 27 April 2022 | [Page] |
This document proposes extensions to BGP Flow Specification for the flow mapping of Deterministic Networking (DetNet) when interconnected with IEEE 802.1 Time-Sensitive Networking (TSN). The BGP flowspec is used for the filtering of the packets that match the DetNet newtworks and the mapping between TSN streams and DetNet flows in the control plane.¶
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 4 April 2022.¶
Copyright (c) 2021 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 Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.¶
[RFC8655] specifies the architecture of Deterministic Networking (DetNet), which provide a capability for the delivery of data flows with extremely low packet loss rates and bounded end-to-end delivery latency. DetNet-enabled end systems and DetNet nodes can be interconnected by sub-networks, i.e., Layer 2 technologies such as IEEE 802.1 Time-Sensitive Networking (TSN).¶
As defined in [RFC8655], the DetNet IP and MPLS flows can be carried over TSN sub-networks. DetNet needs to be mapped to the sub-networks technology used to interconnect DetNet nodes. For example, a TSN node may be used to interconnect DetNet-aware nodes, and these DetNet nodes can map DetNet flows to TSN streams. When the Detnet provide the deterministic service for the TSN end system, a DetNet edge node may be used to interconnect the TSN end system, and the DetNet nodes can map the TSN streams to DetNet flows.¶
As described in [RFC8938], one of the primary requirements of the DetNet Controller Plane is restricting flows to IEEE 802.1 TSN and the requirement could use the centralized network management provisioning mechanisms such as BGP protocol. As defined in [RFC8955], the Flow Specifications for BGP is an n-tuple consisting of several matching criteria which is comprised of traffic filtering rules and is associated with actions that can be applied to the traffic flows. The DetNet edge nodes can provide the capability to process the traffic including classifing, shaping, rate limiting, filtering, and redirecting packets based on the policies configured by the BGP Flow Specification.¶
This document proposes extensions to BGP Flow Specification for the interconnection of DetNet and TSN. The BGP flowspec is used for the filtering of the packets that match the DetNet newtworks and the mapping between TSN streams and DetNet flows in the control plane.¶
The terminology is defined as [RFC8655], [RFC8938], and [RFC8955].¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
As described in [RFC9024], TSN networks can be interconnected over a DetNet MPLS Network. And as discussed in [RFC9023] and [RFC9037], DetNet IP or MPLS networks can be operating over a TSN sub-network. The mapping between TSN Streams and DetNet flows is required for the service proxy function at DetNet Edge nodes. And the mapping table can be configured and maintained in the control plane. When a DetNet Edge Node receives a packet, it MUST identify and check whether such flow is present in its mapping table and decide to drop (when not match) or to forward the packet (when match) to the associated service.¶
As Figure 1 shows, it is required to configue the identification information when mapping received TSN Streams to the DetNet flows at Edge Node-1. Mechanisms and Parameters of TSN stream identification (e.g.,Mask-and-Match Stream identification) defined in [IEEE8021CB] and [IEEEP8021CBdb] can be used for service proxy function. After the identification of the TSN stream, it need to map the packet to the DetNet flow information such as S-Label, d-CW when in DetNet MPLS data plane and handle the packet as defined in [RFC8964].¶
When the DetNet Edge Node-2 receives a DetNet flow, it MUST identify the DetNet flow-ID information such as IP 6-tuple in DetNet IP data plane or S-Label and d-CW information in DetNet MPLS data plane. Then the Service proxy function need to map the DetNet flow-ID and flow related parameters to the associated TSN Stream IDs and streams related parameters.¶
As described in [RFC8938], the DetNet data plane allows for the aggregation of DetNet flows, which should also be accomplished in the control plane. IP, MPLS and TSN aggregation has both data plane and controller Plane aspects. Bandwidth reservations, resource assignment, path computation, delay, delay variation and aggregate number should be taken into considerations in the controller plane. Moreover, as defined in [RFC9023] and [RFC9037], 1:1 and N:1 mapping (aggregating multiple TSN Streams in a single DetNet flow) MUST be supported.¶
As defined in [RFC8955], the nodes that applied a Flow Specification can fillter the received pakects according to the matching criteria and can forward the flows based on the associated actions. This document proposes extensions to BGP Flow Specification for the mapping of DetNet flows and TSN streams by using the traffic filtering rules to identify the packet and using the associated action to map the packet to the related service.¶
As IEEE Std 802.1Q defined, a Stream ID is a 64-bit field that uniquely identifies a stream and can be generated by the system offering the stream, or possibly a device controlling that system. But it is not carried in the header of the TSN Stream. As defined in [IEEE8021CB] and [IEEEP8021CBdb], five specific Stream identification functions are described: Null Stream identification, Source MAC and VLAN Stream identification, Active Destination MAC and VLAN Stream identification, and IP Stream identification, and Mask-and-match Stream identification. It needs to examines the header of the streams such as destination_address, vlan_identifier, IP source address, IP destination address, DSCP, IP next protocol, source port, destination port and mac_service_data_unit.¶
As defined in [I-D.ietf-idr-flowspec-l2vpn], the Ethernet Layer 2 (L2) related fields has been covered by the L2 traffic filtering rules except the mac_service_data_unit in Mask-and-Match Stream identification. A mac_service_data_unit mask is defined to identify communication flows supported by various higher-layer protocols. This document proposes a new type in L2 components flowspec Type for TSN Streams.¶
Type TBD1 - Mac Service Data Unit¶
Encoding: <type (1 octet), length (1 octet), [op, value]+>¶
Defines a list of {operation, value} pairs used to match 6-octet Mac Service Data Unit field. Values are encoded as 6-octet quantities. op is encoded as specified in Section 4.2.1.1 of [RFC8955].¶
The action for an TSN traffic filtering flowspec is to accept the TSN streams that matches that particular rule and map the streams to the DetNet flows. The action for L3 traffic with extended communities types per [RFC8955] and [RFC8956] such as traffic-rate, traffic-marking, traffic-action, and redirect can be used for TSN to DetNet IP flow mapping.¶
The DetNet flow is identified by a S-Label and the DetNet Header consists of d-CW and F-Labels. The MPLS label related action for an TSN stream mapping to a DetNet MPLS network can use the Label-action defined in [I-D.ietf-idr-bgp-flowspec-label]. And the action for the sequence in d-CW field, this document specifies the following BGP extended communitiy for TSN Streams as following shown.¶
type | extended community | encoding |
---|---|---|
TBD2 | Sequence-action | bitmask |
The The Sequence-action extended community is shown as the Figure 2.¶
Type: 2 bits, indicates the length of the sequence number:¶
0: 0 bits¶
1: 16 bits¶
2: 28 bits¶
Resv: 18 bits, reserved for future use. MUST be sent as zero and ignored on receipt.¶
Sequence Number: 28 bits, an unsigned value implementing the DetNet sequence number.¶
The L3 traffic filtering rules defined in [RFC8955] and [RFC8956] can be used for DetNet IP flow.¶
As defined in RFC8964, the MPLS-based DetNet data plane encapsulation consists of d-CW, S-Label and F-Labels. The MPLS label filtering rules have been defined in [I-D.ietf-idr-flowspec-mpls-match].¶
This document proposes a new community type in L3 components flowspec Type for DetNet MPLS flows.¶
Type TBD3 - d-CW¶
Encoding: <type (1 octet), length (1 octet), [op, value]+>¶
Defines a list of {operation, value} pairs used to match Sequence. Values are encoded as 4-octet quantities, where the four most significant bits are set to zero and ignored for matching and the 28 least significant bits contain the sequence value. op is encoded as specified in Section 4.2.1.1 of [RFC8955].¶
The extended action for an DetNet traffic filtering flowspec is to accept the DetNet flows that matches that particular rule and map the flows to the TSN streams. This document specifies the following BGP extended communitiy as the following shown.¶
type | extended community | encoding |
---|---|---|
TBD4 | TSN-action | bitmask |
The The TSN-action extended community is shown as the Figure 3.¶
Type: 1-octet, indicates the type of TSN profiles. The value of the types is TBD:¶
Resv: 1-octet, reserved for future use. MUST be sent as zero and ignored on receipt.¶
TSN-profile: 4-octet, can be converted to the TSN Stream ID and stream related parameters and requirements as the following shown.¶
stream_handle: identifying the Stream to which the packet belongs in TSN networks.¶
sequence_number: identifying the order in which the packet was transmitted relative to other packets in the same Compound Stream in TSN networks.¶
traffic_scheduling: identifying the traffic scheduling mechanisms including traffic policy, queuing and forwarding methods in TSN networks.¶
TBA¶
TBA¶