RFC 8604
Interconnecting Millions of Endpoints with Segment Routing
Okay bestie, this is RFC 8604 π¦ titled Interconnecting Millions of Endpoints with Segment Routing. It's an Independent Submission with Informational category, dated June 2019, ISSN 2070-1721. The authors are C. Filsfils, Ed. (Cisco Systems, Inc.), S. Previdi (Huawei Technologies), G. Dawra, Ed. (LinkedIn), W. Henderickx (Nokia), and D. Cooper (CenturyLink) π. The header doesn't list anything it obsoletes or updates, so there's nothing to flag there πΈ
Abstract β¨
So this doc is about using Segment Routing to scale a network up to hundreds of thousands of network nodes and tens of millions of physical underlay endpoints π€― That's giving massive-scale Data Centers (DCs) and/or large aggregation networks. The forwarding tables of midpoint and leaf nodes only need a few tens of thousands of entries, and that's because Segment Routing is inherently scaleable and because of the design proposed in this document π
Status of This Memo
This document is not an Internet Standards Track specification, so it's published just for informational purposes π
This is a contribution to the RFC Series, independent of any other RFC stream. The RFC Editor picked to publish it at their discretion and makes no statement about its value for implementation or deployment. Documents the RFC Editor approves for publication aren't candidates for any level of Internet Standard. See Section 2 of RFC 7841 if you want the receipts π§Ύ
Info about the current status of this document, any errata, and how to give feedback on it lives at https://www.rfc-editor.org/info/rfc8604 π
Copyright Notice
Copyright (c) 2019 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. Please read these carefully, because they spell out your rights and restrictions with respect to this document π
Table of Contents
1. Introduction ....................................................3
2. Terminology .....................................................3
3. Reference Design ................................................3
4. Control Plane ...................................................5
5. Illustration of the Scale .......................................5
6. Design Options ..................................................6
6.1. Segment Routing Global Block (SRGB) Size ...................6
6.2. Redistribution of Routes for Agg Nodes .....................7
6.3. Sizing and Hierarchy .......................................7
6.4. Local Segments to Hosts/Servers ............................7
6.5. Compressed SRTE Policies ...................................7
7. Deployment Model ................................................8
8. Benefits ........................................................8
8.1. Simplified Operations ......................................8
8.2. Inter-domain SLAs ..........................................8
8.3. Scale ......................................................9
8.4. ECMP .......................................................9
9. IANA Considerations .............................................9
10. Manageability Considerations ...................................9
11. Security Considerations ........................................9
12. Informative References .........................................9
Acknowledgements ..................................................10
Contributors ......................................................10
Authors' Addresses ................................................11
1. Introduction β¨
This doc explains how Segment Routing (SR) can be used to interconnect millions of endpoints π«Ά
2. Terminology π
Here are the terms and abbreviations we're using in this document π
Term Definition
-------------------------------------------------------------
Agg Aggregation
BGP Border Gateway Protocol
DC Data Center
DCI Data Center Interconnect
ECMP Equal-Cost Multipath
FIB Forwarding Information Base
LDP Label Distribution Protocol
LFIB Label Forwarding Information Base
MPLS Multiprotocol Label Switching
PCE Path Computation Element
PCEP Path Computation Element Communication Protocol
PW Pseudowire
SLA Service Level Agreement
SR Segment Routing
SRTE Policy Segment Routing Traffic Engineering Policy
TE Traffic Engineering
TI-LFA Topology Independent Loop-Free Alternate
3. Reference Design π§
Here's the network diagram that shows the reference topology we use in this document πΊοΈ
+-------+ +--------+ +--------+ +-------+ +-------+
A DCI1 Agg1 Agg3 DCI3 Z
| DC1 | | M1 | | C | | M2 | | DC2 |
| DCI2 Agg2 Agg4 DCI4 |
+-------+ +--------+ +--------+ +-------+ +-------+
Figure 1: Reference Topology
Here's what applies to that reference topology above π
- Independent ISIS-OSPF/SR instance in core (C) region π
- Independent ISIS-OSPF/SR instance in Metro1 (M1) region π
- Independent ISIS-OSPF/SR instance in Metro2 (M2) region π
- BGP/SR in DC1 πΈ
- BGP/SR in DC2 πΈ
- Agg routes (Agg1, Agg2, Agg3, Agg4) are redistributed from C to M (M1 and M2) and from M to DC domains π¦
- No other route is advertised or redistributed between regions π
- The same homogeneous Segment Routing Global Block (SRGB) is used throughout the domains (e.g.,
16000-23999) β¨ - Unique SRGB sub-ranges are allocated to each metro (M) and core (C) domain π
- The
16000-16999range is allocated to the core (C) domain/region. - The
17000-17999range is allocated to the M1 domain/region. - The
18000-18999range is allocated to the M2 domain/region. - Specifically, the Agg1 router has Segment Identifier (SID)
16001allocated, and the Agg2 router has SID16002allocated. - Specifically, the Agg3 router has SID
16003allocated, and the anycast SID for Agg3 and Agg4 is16006. - Specifically, the DCI3 router has SID
18003allocated, and the anycast SID for DCI3 and DCI4 is18006. - Specifically, at the Agg1 router, the binding SID
4001leads to DCI pair (DCI3, DCI4) via a specific low-latency path{16002, 16003, 18006}.
- The
- The same SRGB sub-range is reused within each DC (DC1 and DC2) region for each DC (e.g.,
20000-23999). Specifically, nodes A and Z both have SID20001allocated to them π§
6.3. Sizing and Hierarchy π
okay so the operator is totally free to pick a few big leaf domains, lots of small leaf domains, or a mix of small and large core/leaf domains π§ you get to decide the vibe!
the operator is also free to go with a two-tier (Core/Metro) design or a three-tier (Core/Metro/DC) design π
6.4. Local Segments to Hosts/Servers πΈ
okay this one is lowkey so cute. local segments can be programmed at any leaf node (e.g., node Z) so it can identify hosts or VMs that are locally attached to it π«Ά
for example, if node Z has bound a local segment 40001 to a local host ZH1, then node A uses this SRTE Policy to reach that host:
{16006, 18006, 20001, 40001}
the local segment could represent the NID (Network Interface Device) in a service provider access network, or a VM in a DC network. it's giving flexibility π¦
6.5. Compressed SRTE Policies π
let's do an example, bestie! following Section 3, we assume that node A can reach node Z (e.g., with a low-latency SLA contract) through the SRTE policy that goes Agg1, Agg2, Agg3, DCI3/4(anycast), Z. the path is represented by the segment list {16001, 16002, 16003, 18006, 20001} π₯
so it's clear that the control-plane solution can install an SRTE Policy {16002, 16003, 18006} at Agg1, collect the binding SID that Agg1 allocates to that policy (e.g., 4001), and then program node A with the compressed SRTE Policy {16001, 4001, 20001}. the way that works is so clean π
here's how the walk goes:
- from node A, 16001 leads to Agg1.
- once at Agg1, 4001 leads to the DCI pair (DCI3, DCI4) via a specific low-latency path
{16002, 16003, 18006}. - once at that DCI pair, 20001 leads to Z.
binding SIDs allocated to "intermediate" SRTE Policies achieve the compression of end-to-end SRTE Policies. literally the whole point π
the segment list {16001, 4001, 20001} expresses the same path as {16001, 16002, 16003, 18006, 20001}, but with two fewer segments π
the binding SID also gives you inherent churn protection. when the core topology changes, the control plane can update the low-latency SRTE Policy from Agg1 to the DCI pair to DC2 without updating the SRTE Policy from A to Z. no drama, no cap π‘οΈ
7. Deployment Model π
this design is expected to be used in "green field" deployments, and also in interworking ("brown field") deployments with an MPLS design across multiple domains. it fits right in wherever you are π¦
8. Benefits β¨
the design options in this document allow interconnections on a very large scale. millions of endpoints across different domains can be interconnected. iconic behavior, honestly π
8.1. Simplified Operations π
two control-plane protocols are not needed in this design: LDP and RSVP-TE. no new protocol has been introduced either! the design leverages the core IP protocols ISIS, OSPF, BGP, and PCEP with straightforward SR extensions. so easy, so chill π
8.2. Inter-domain SLAs π
fast reroute and resiliency are provided by TI-LFA, with sub-50-ms fast reroute upon failure of a link, node, or Shared Risk Link Group (SRLG). TI-LFA is described in [SR-TI-LFA]. the TI-LFA fast reroute is the real MVP here π₯
the use of anycast SIDs also provides improved availability and resiliency. ate and left no crumbs π
inter-domain SLAs can be delivered (e.g., latency vs. cost-optimized paths, disjointness from backbone planes, disjointness from other services, disjointness between primary and backup paths). it's giving customization π§
existing inter-domain solutions do not provide any support for SLA contracts. they just provide best-effort reachability across domains. not me being shocked π
8.3. Scale π
in addition to eliminating the need for LDP and RSVP-TE, per-service midpoint states have also been removed from the network. so much less state to babysit, iykyk π
8.4. ECMP π¦
each policy (intra-domain or inter-domain, with or without TE) is expressed as a list of segments. since each segment is optimized for ECMP, the entire policy is optimized for ECMP. slay the load balancing π
the benefit of an anycast prefix segment optimized for ECMP should also be considered. for example, 16001 load-shares across any gateway from the M1 leaf domain to the Core, and 16002 load-shares across any gateway from the Core to the M1 leaf domain. main character energy π
9. IANA Considerations πΈ
this document has no IANA actions. nothing to register, bestie β¨
10. Manageability Considerations π οΈ
this document describes an application of SR over the MPLS data plane. SR does not introduce any changes in the MPLS data plane. the manageability considerations described in [RFC8402] apply to the MPLS data plane when used with SR. read [RFC8402] and you're set π
11. Security Considerations π
β οΈ this one is serious, so listen up! this document does not introduce additional security requirements and mechanisms other than those described in [RFC8402]. the security story is whatever [RFC8402] says it is. no sneaky extras here, but don't skip that reference π«Ά
12. Informative References π
these are the references, all the details included, periodt π
[RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path
Computation Element (PCE)-Based Architecture", RFC 4655,
DOI 10.17487/RFC4655, August 2006,
<https://www.rfc-editor.org/info/rfc4655>.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009,
<https://www.rfc-editor.org/info/rfc5440>.
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
S. Ray, "North-Bound Distribution of Link-State and
Traffic Engineering (TE) Information Using BGP", RFC 7752,
DOI 10.17487/RFC7752, March 2016,
<https://www.rfc-editor.org/info/rfc7752>.
[RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
Decraene, B., Litkowski, S., and R. Shakir, "Segment
Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
July 2018, <https://www.rfc-editor.org/info/rfc8402>.
[SR-TI-LFA]
Litkowski, S., Bashandy, A., Filsfils, C.,
Decraene, B., Francois, P., Voyer, D., Clad, F., and
P. Camarillo, "Topology Independent Fast Reroute
using Segment Routing", Work in Progress,
draft-ietf-rtgwg-segment-routing-ti-lfa-01, March 2019.
Acknowledgements π«Ά
we would like to thank Giles Heron, Alexander Preusche, Steve Braaten, and Francis Ferguson for their contributions to the content of this document. huge thank you, you're all iconic π
Contributors π
the following people substantially contributed to the editing of this document π
Dennis Cai
Individual
Tim Laberge
Individual
Steven Lin
Google Inc.
Bruno Decraene
Orange
Luay Jalil
Verizon
Jeff Tantsura
Individual
Rob Shakir
Google Inc.
Authors' Addresses π
Clarence Filsfils (editor)
Cisco Systems, Inc.
Brussels
Belgium
Email: cfilsfil@cisco.com
Stefano Previdi
Huawei Technologies
Email: stefano@previdi.net
Gaurav Dawra (editor)
LinkedIn
United States of America
Email: gdawra.ietf@gmail.com
Wim Henderickx
Nokia
Copernicuslaan 50
Antwerp 2018
Belgium
Email: wim.henderickx@nokia.com
Dave Cooper
CenturyLink
Email: Dave.Cooper@centurylink.com
π¦ where this page comes from
- ietf: rfc8604 2019-06
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms