SPRING Working Group C. Filsfils
Internet-Draft Z. Ali, Ed.
Intended status: Standards Track Cisco Systems, Inc.
Expires: October 18, 2021 M. Horneffer
Deutsche Telekom
D. Voyer
Bell Canada
M. Durrani
Equinix
R. Raszuk
NTT Network Innovations
April 16, 2021
Segment Routing Traffic Accounting Counters
draft-filsfils-spring-sr-traffic-counters-01.txt
Abstract
Segment Routing (SR) allows a headend node to steer a packet flow
along any path. Intermediate per-flow states are eliminated thanks
to source routing. Traffic accounting plays a critical role in
network operation. A traffic account solution is required for SR
networks that provides the necessary functionality without creating
any additional per SR path states in the fabric.
This document describes counters for traffic accounting in SR
networks.
Requirements Language
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 [RFC2119].
Status of This Memo
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
Filsfils, et al. Expires October 18, 2021 [Page 1]
Internet-Draft SR Traffic Counters April 2021
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 October 18, 2021.
Copyright Notice
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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. SR Traffic Counters . . . . . . . . . . . . . . . . . . . . . 4
2.1. Traffic Counters Naming convention . . . . . . . . . . . 4
2.2. Per-Interface SR Counters . . . . . . . . . . . . . . . . 5
2.2.1. Per interface, per protocol aggregate egress SR
traffic counters (SR.INT.E.PRO) . . . . . . . . . . . 5
2.2.2. Per interface, per traffic-class, per protocol
aggregate egress SR traffic counters
(SR.INT.E.PRO.TC) . . . . . . . . . . . . . . . . . . 5
2.2.3. Per interface aggregate ingress SR traffic counter
(SR.INT.I) . . . . . . . . . . . . . . . . . . . . . 6
2.2.4. Per interface, per TC aggregate ingress SR traffic
counter (SR.INT.I.TC) . . . . . . . . . . . . . . . . 6
2.3. Prefix SID Counters . . . . . . . . . . . . . . . . . . . 6
2.3.1. Per-prefix SID egress traffic counter (PSID.E) . . . 6
2.3.2. Per-prefix SID per-TC egress traffic counter
(PSID.E.TC) . . . . . . . . . . . . . . . . . . . . . 7
2.3.3. Per-prefix SID, per egress interface traffic counter
(PSID.INT.E) . . . . . . . . . . . . . . . . . . . . 7
2.3.4. Per-prefix SID per TC per egress interface traffic
counter (PSID.INT.E.TC) . . . . . . . . . . . . . . 7
2.3.5. Per-prefix SID, per ingress interface traffic counter
(PSID.INT.I) . . . . . . . . . . . . . . . . . . . . 7
2.3.6. Per-prefix SID, per TC, per ingress interface traffic
counter (PSID.INT.I.TC) . . . . . . . . . . . . . . . 7
2.4. Traffic Matrix Counters . . . . . . . . . . . . . . . . . 8
Filsfils, et al. Expires October 18, 2021 [Page 2]
Internet-Draft SR Traffic Counters April 2021
2.4.1. Per-Prefix SID Traffic Matrix counter (PSID.E.TM) . . 8
2.4.2. Per-Prefix, Per TC SID Traffic Matrix counter
(PSID.E.TM.TC) . . . . . . . . . . . . . . . . . . . 8
2.5. SR Policy Counters . . . . . . . . . . . . . . . . . . . 8
2.5.1. Per-SR Policy Aggregate traffic counter (POL) . . . . 9
2.5.2. Per-SR Policy labelled steered aggregate traffic
counter (POL.BSID) . . . . . . . . . . . . . . . . . 9
2.5.3. Per-SR Policy, per TC Aggregate traffic counter
(POL.TC) . . . . . . . . . . . . . . . . . . . . . . 9
2.5.4. Per-SR Policy, per TC labelled steered aggregate
traffic counter (POL.BSID.TC) . . . . . . . . . . . . 9
2.5.5. Per-SR Policy, Per-Segment-List Aggregate traffic
counter (POL.SL) . . . . . . . . . . . . . . . . . . 9
2.5.6. Per-SR Policy, Per-Segment-List labelled steered
aggregate traffic counter (POL.SL.BSID) . . . . . . . 10
3. Security Considerations . . . . . . . . . . . . . . . . . . . 10
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10
5. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 10
6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 10
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 11
7.1. Normative References . . . . . . . . . . . . . . . . . . 11
7.2. Informative References . . . . . . . . . . . . . . . . . 12
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12
1. Introduction
This document defines counters for traffic accounting in segment
routing (SR) [I-D.ietf-spring-segment-routing] networks. The essence
of Segment Routing consists in scaling the network by only
maintaining per-flow state at the source or edge of the network.
Specifically, only the headend of an SR policy
[I-D.filsfils-spring-segment-routing-policy] maintains the related
per-policy state. Egress and midpoints along the source route do not
maintain any per-policy state. The traffic counters described in
this section respects the architecture principles of SR, while given
visibility to the service provider for network operation and capacity
planning.
This document specifies prefix-SID, interface and SR Policy counters
to be implemented at each SR router. Furthermore, it describes the
traffic matrix (TM) counters for accounting at the TM border routers
(details described in Section 2.4).The goal of the document is to
specify these necessary counters for traffic accounting in an SR
network. The actual usage of this information and leveraging for
various use-cases is outside the scope of this document.
[I-D.ali-spring-sr-traffic-accounting] describes some of the use-
cases and application of these counters in an SR network.
Filsfils, et al. Expires October 18, 2021 [Page 3]
Internet-Draft SR Traffic Counters April 2021
This document assumes that the routers export the traffic counters
defined in Section 2 to an external controller. The methods for
collection of this information by the controller is beyond the scope
of the document.
2. SR Traffic Counters
2.1. Traffic Counters Naming convention
The section uses the following naming convention when referring to
the various counters. This is done in order to assign mnemonic names
to SR counters.
o The term counter(s) in all of the definitions specified in this
document refers either to the (packet, byte) counters or the byte
counter.
o SR: any traffic whose FIB lookup is a segment (IGP prefix/Adj
segments, BGP segments, any type of segments) or the matched FIB
entry is steered on an SR Policy.
o INT in name indicates a counter is implemented at a per interface
level.
o E in name refers to egress direction (with respect to the traffic
flow).
o I in name refers to ingress direction (with respect to the traffic
flow).
o TC in name indicates a counter is implemented on a Traffic Class
(TC) basis.
o TM in name refers to a Traffic Matrix (TM) counter.
o PRO in name indicates that the counter is implemented on per
protocol/adjacency type basis. Per PRO counters in this document
can either be accounts for:
* LAB (Labelled Traffic): the matched FIB entry is a segment, and
the outgoing packet has at least one label (that label does not
have to be a segment label, e.g., the label may be a VPN
label).
* V4 (IPv4 Traffic): the matched FIB entry is a segment which is
PoP'ed. The outgoing packet is IPv4.
Filsfils, et al. Expires October 18, 2021 [Page 4]
Internet-Draft SR Traffic Counters April 2021
* V6 (IPv6 Traffic): the matched FIB entry is a segment which is
PoP'ed. The outgoing packet is IPv6.
o POL in name refers to a Policy counter.
o BSID in name indicates a policy counter for labelled traffic.
o SL in name indicates a policy counter is implemented at a Segment-
List (SL) level.
Counter nomenclature is exemplified using the following example:
o SR.INT.E.PRO: Per-interface per-protocol aggregate egress SR
traffic.
o POL.BSID: Per-SR Policy labelled steered aggregate traffic
counter.
2.2. Per-Interface SR Counters
For each local interface, node N maintains the following per-
interface SR counters. These counters include accounting due to
push, pop or swap operations on SR traffic.
2.2.1. Per interface, per protocol aggregate egress SR traffic counters
(SR.INT.E.PRO)
The following counters are included under this category.
o SR.INT.E.LAB: For each egress interface (INT.E), N MUST maintain
counter(s) for the aggregate SR traffic forwarded over the (INT.E)
interface as labelled traffic.
o SR.INT.E.V4: For each egress interface (INT.E), N MUST maintain
counter(s) for the aggregate SR traffic forwarded over the (INT.E)
interface as IPv4 traffic (due to the pop operation).
o SR.INT.E.V6: For each egress interface (INT.E), N MUST maintain
counter(s) for the aggregate SR traffic forwarded over the (INT.E)
interface as IPv6 traffic (due to the pop operation).
2.2.2. Per interface, per traffic-class, per protocol aggregate egress
SR traffic counters (SR.INT.E.PRO.TC)
This counter provides per Traffic Class (TC) breakdown of
SR.INT.E.PRO. The following counters are included under this
category.
Filsfils, et al. Expires October 18, 2021 [Page 5]
Internet-Draft SR Traffic Counters April 2021
o SR.INT.E.LAB.TC: For each egress interface (INT.E) and a given
Traffic Class (TC), N SHOULD maintain counter(s) for the aggregate
SR traffic forwarded over the (INT.E) interface as labelled
traffic.
o SR.INT.E.V4.TC: For each egress interface (INT.E) and a given
Traffic Class (TC), N SHOULD maintain counter(s) for the aggregate
SR traffic forwarded over the (INT.E) interface as IPv4 traffic
(due to the pop operation).
o SR.INT.E.V6.TC: For each egress interface (INT.E) and a given
Traffic Class (TC), N SHOULD maintain counter(s) for the aggregate
SR traffic forwarded over the (INT.E) interface as IPv6 traffic
(due to the pop operation).
2.2.3. Per interface aggregate ingress SR traffic counter (SR.INT.I)
The SR.INT.I counter is defined as follows:
For each ingress interface (INT.I), N SHOULD maintain counter(s) for
the aggregate SR traffic received on I.
2.2.4. Per interface, per TC aggregate ingress SR traffic counter
(SR.INT.I.TC)
This counter provides per Traffic Class (TC) breakdown of the
SR.INT.I. It is defined as follow:
For each ingress interface (INT.I) and a given Traffic Class (TC), N
MAY maintain counter(s) for the aggregate SR traffic (matching the
traffic class TC criteria) received on I.
2.3. Prefix SID Counters
For a remote prefix SID S, node N maintains the following prefix SID
counters. These counters include accounting due to push, pop or swap
operations on the SR traffic.
2.3.1. Per-prefix SID egress traffic counter (PSID.E)
This counter is defined as follows:
For a remote prefix SID S, N MUST maintain counter(s) for aggregate
traffic forwarded towards S.
Filsfils, et al. Expires October 18, 2021 [Page 6]
Internet-Draft SR Traffic Counters April 2021
2.3.2. Per-prefix SID per-TC egress traffic counter (PSID.E.TC)
This counter provides per Traffic Class (TC) breakdown of PSID.E. It
is defined as follows:
For a given Traffic Class (TC) and a remote prefix SID S, N SHOULD
maintain counter(s) for traffic forwarded towards S.
2.3.3. Per-prefix SID, per egress interface traffic counter
(PSID.INT.E)
This counter is defined as follows:
For a given egress interface (INT.E) and a remote prefix SID S, N
SHOULD maintain counter(s) for traffic forwarded towards S over the
(INT.E) interface.
2.3.4. Per-prefix SID per TC per egress interface traffic counter
(PSID.INT.E.TC)
This counter provides per Traffic Class (TC) breakdown of PSID.INT.E.
It is defined as follows:
For a given Traffic Class (TC), an egress interface (INT.E) and a
remote prefix SID S, N MAY maintain counter(s) for traffic forwarded
towards S over the (INT.E) interface.
2.3.5. Per-prefix SID, per ingress interface traffic counter
(PSID.INT.I)
This counter is defined as follows:
For a given ingress interface (INT.I) and a remote prefix SID S, N
MAY maintain counter(s) for the traffic received on I and forwarded
towards S.
2.3.6. Per-prefix SID, per TC, per ingress interface traffic counter
(PSID.INT.I.TC)
This counter provides per Traffic Class (TC) breakdown of PSID.INT.I.
It is defined as follows:
For a given Traffic Class (TC), ingress interface (INT.I), and a
remote prefix SID S, N MAY maintain counter(s) for the traffic
received on I and forwarded towards S.
Filsfils, et al. Expires October 18, 2021 [Page 7]
Internet-Draft SR Traffic Counters April 2021
2.4. Traffic Matrix Counters
A traffic matrix T(N, M) is the amount of traffic entering the
network at node N and leaving the network at node M, where N and M
are border nodes at an arbitrarily defined boundary in the network
[Traffic-Matrices] is. The TM border defines the arbitrary boundary
nodes of a contiguous portion of the network across which service
providers wish to measure traffic flows. The traffic matrix (also
called demand matrix) contains all the demands crossing the TM
border. It has as many rows as ingress edge nodes and as many
columns as egress edge nodes at the TM border. The demand D(N, M) is
the cell of the matrix at row N and column M. In other words, a
Traffic Matrix provides, for every ingress point N into the network
and every egress point M out of the network, the volume of traffic
T(N, M) from N to M over a given time interval. To measure the
traffic matrix, nodes in an SR network designate its interfaces as
either internal or external.
When Node N receives a packet destined to remote prefix SID M, N
maintains the following counters. These counters include accounting
due to push, pop or swap operations.
2.4.1. Per-Prefix SID Traffic Matrix counter (PSID.E.TM)
This counter is defined as follows:
For a given remote prefix SID M, N SHOULD maintain counter(s) for all
the traffic received on any external interfaces and forwarded towards
M.
2.4.2. Per-Prefix, Per TC SID Traffic Matrix counter (PSID.E.TM.TC)
This counter provides per Traffic Class (TC) breakdown of PSID.E.TM.
It is defined as follows:
For a given Traffic Class (TC) and a remote prefix SID M, N SHOULD
maintain counter(s) for all the traffic received on any external
interfaces and forwarded towards M.
2.5. SR Policy Counters
Per policy counters are only maintained at the policy head-end node.
For each SR policy [I-D.filsfils-spring-segment-routing-policy] , the
head-end node maintains the following counters.
Filsfils, et al. Expires October 18, 2021 [Page 8]
Internet-Draft SR Traffic Counters April 2021
2.5.1. Per-SR Policy Aggregate traffic counter (POL)
This counter includes both labelled and unlabelled steered traffic.
It is defined as:
For each SR policy (P), head-end node N MUST maintain counter(s) for
the aggregate traffic steered onto P.
2.5.2. Per-SR Policy labelled steered aggregate traffic counter
(POL.BSID)
This counter is defined as:
For each SR policy (P), head-end node N SHOULD maintain counter(s)
for the aggregate labelled traffic steered onto P. Please note that
labelled steered traffic refers to incoming packets with an active
SID matching a local BSID of an SR policy at the head-end.
2.5.3. Per-SR Policy, per TC Aggregate traffic counter (POL.TC)
This counter provides per Traffic Class (TC) breakdown of POL. It is
defined as follows:
For each SR policy (P) and a given Traffic Class (TC), head-end node
N SHOULD maintain counter(s) for the aggregate traffic (matching the
traffic class TC criteria) steered onto P.
2.5.4. Per-SR Policy, per TC labelled steered aggregate traffic counter
(POL.BSID.TC)
This counter provides per Traffic Class (TC) breakdown of POL.BSID.
It is defined as follows:
For each SR policy (P) and a given Traffic Class (TC), head-end node
N MAY maintain counter(s) for the aggregate labelled traffic steered
onto P.
2.5.5. Per-SR Policy, Per-Segment-List Aggregate traffic counter
(POL.SL)
This counter is defined as:
For each SR policy (P) and a given Segment-List (SL), head-end node N
SHOULD maintain counter(s) for the aggregate traffic steered onto the
Segment-List (SL) of P.
Filsfils, et al. Expires October 18, 2021 [Page 9]
Internet-Draft SR Traffic Counters April 2021
2.5.6. Per-SR Policy, Per-Segment-List labelled steered aggregate
traffic counter (POL.SL.BSID)
This counter is defined as:
For each SR policy (P) and a given Segment-List (SL), head-end node N
MAY maintain counter(s) for the aggregate labelled traffic steered
onto the Segment-List SL of P. Please note that labelled steered
traffic refers to incoming packets with an active SID matching a
local BSID of an SR policy at the head-end.
3. Security Considerations
This document does not define any new protocol extensions and does
not impose any additional security challenges.
4. IANA Considerations
This document has no actions for IANA.
5. Acknowledgement
The authors like to thank Kris Michielsen for his valuable comments
and suggestions.
6. Contributors
The following people have contributed to this document:
Ketan Talaulikar
Cisco Systems
Email: ketant@cisco.com
Siva Sivabalan
Cisco Systems
Email: msiva@cisco.com
Jose Liste
Cisco Systems
Email: jliste@cisco.com
Francois Clad
Cisco Systems
Email: fclad@cisco.com
Kamran Raza
Cisco Systems
Email: skraza@cisco.com
Filsfils, et al. Expires October 18, 2021 [Page 10]
Internet-Draft SR Traffic Counters April 2021
Shraddha Hegde
Juniper Networks
Email: shraddha@juniper.net
Gaurav Dawra
LinkedIn
Email: gdawra.ietf@gmail.com
Rick Morton
Bell Canada
Email: rick.morton@bell.ca
Dirk Steinberg
Steinberg Consulting
Email: dws@steinbergnet.net
Bruno Decraene
Orange Business Services
Email: bruno.decraene@orange.com
Stephane Litkowski
Orange Business Services
Email: stephane.litkowski@orange.com
Luay Jalil
Verizon
Email: luay.jalil@verizon.com
7. References
7.1. Normative References
[I-D.filsfils-spring-segment-routing-policy]
Filsfils, C., Sivabalan, S., Hegde, S.,
daniel.voyer@bell.ca, d., Lin, S., bogdanov@google.com,
b., Krol, P., Horneffer, M., Steinberg, D., Decraene, B.,
Litkowski, S., Mattes, P., Ali, Z., Talaulikar, K., Liste,
J., Clad, F., and K. Raza, "Segment Routing Policy
Architecture", draft-filsfils-spring-segment-routing-
policy-06 (work in progress), May 2018.
[I-D.ietf-spring-segment-routing]
Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B.,
Litkowski, S., and R. Shakir, "Segment Routing
Architecture", draft-ietf-spring-segment-routing-15 (work
in progress), January 2018.
Filsfils, et al. Expires October 18, 2021 [Page 11]
Internet-Draft SR Traffic Counters April 2021
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
7.2. Informative References
[I-D.ali-spring-sr-traffic-accounting]
Filsfils, C., Talaulikar, K., Sivabalan, S., Horneffer,
M., Raszuk, R., Litkowski, S., Voyer, D., and R. Morton,
"Traffic Accounting in Segment Routing Networks", draft-
ali-spring-sr-traffic-accounting-04 (work in progress),
February 2020.
[Traffic-Matrices]
Schnitter, T-Systems, S. and M. Horneffer, T-Com, "Traffic
Matrices for MPLS Networks with LDP Traffic Statistics,
Proc. Networks2004, VDE-Verlag 2004", 2015.
Authors' Addresses
Clarence Filsfils
Cisco Systems, Inc.
Email: cfilsfil@cisco.com
Zafar Ali (editor)
Cisco Systems, Inc.
Email: zali@cisco.com
Martin Horneffer
Deutsche Telekom
Email: martin.horneffer@telekom.de
Daniel Voyer
Bell Canada
671 de la gauchetiere W
Montreal, Quebec H3B 2M8
Canada
Email: daniel.voyer@bell.ca
Filsfils, et al. Expires October 18, 2021 [Page 12]
Internet-Draft SR Traffic Counters April 2021
Muhammad Durrani
Equinix
Email: mdurrani@equinix.com
Robert Raszuk
NTT Network Innovations
940 Stewart Dr
Sunnyvale, CA 94085
USA
Email: robert@raszuk.net
Filsfils, et al. Expires October 18, 2021 [Page 13]