summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc5439.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc5439.txt')
-rw-r--r--doc/rfc/rfc5439.txt2523
1 files changed, 2523 insertions, 0 deletions
diff --git a/doc/rfc/rfc5439.txt b/doc/rfc/rfc5439.txt
new file mode 100644
index 0000000..dbab3a1
--- /dev/null
+++ b/doc/rfc/rfc5439.txt
@@ -0,0 +1,2523 @@
+
+
+
+
+
+
+Network Working Group S. Yasukawa
+Request for Comments: 5439 NTT
+Category: Informational A. Farrel
+ Old Dog Consulting
+ O. Komolafe
+ Cisco Systems
+ February 2009
+
+
+ An Analysis of Scaling Issues in MPLS-TE Core Networks
+
+Status of This Memo
+
+ This memo provides information for the Internet community. It does
+ not specify an Internet standard of any kind. Distribution of this
+ memo is unlimited.
+
+Copyright Notice
+
+ Copyright (c) 2009 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 (http://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.
+
+Abstract
+
+ Traffic engineered Multiprotocol Label Switching (MPLS-TE) is
+ deployed in providers' core networks. As providers plan to grow
+ these networks, they need to understand whether existing protocols
+ and implementations can support the network sizes that they are
+ planning.
+
+ This document presents an analysis of some of the scaling concerns
+ for the number of Label Switching Paths (LSPs) in MPLS-TE core
+ networks, and examines the value of two techniques (LSP hierarchies
+ and multipoint-to-point LSPs) for improving scaling. The intention
+ is to motivate the development of appropriate deployment techniques
+ and protocol extensions to enable the application of MPLS-TE in large
+ networks.
+
+ This document only considers the question of achieving scalability
+ for the support of point-to-point MPLS-TE LSPs. Point-to-multipoint
+ MPLS-TE LSPs are for future study.
+
+
+
+
+Yasukawa, et al. Informational [Page 1]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+Table of Contents
+
+ 1. Introduction ....................................................3
+ 1.1. Overview ...................................................3
+ 1.2. Glossary of Notation .......................................5
+ 2. Issues of Concern for Scaling ...................................5
+ 2.1. LSP State ..................................................5
+ 2.2. Processing Overhead ........................................6
+ 2.3. RSVP-TE Implications .......................................6
+ 2.4. Management .................................................7
+ 3. Network Topologies ..............................................8
+ 3.1. The Snowflake Network Topology .............................9
+ 3.2. The Ladder Network Topology ...............................11
+ 3.3. Commercial Drivers for Selected Configurations ............14
+ 3.4. Other Network Topologies ..................................15
+ 4. Required Network Sizes .........................................16
+ 4.1. Practical Numbers .........................................16
+ 5. Scaling in Flat Networks .......................................16
+ 5.1. Snowflake Networks ........................................17
+ 5.2. Ladder Networks ...........................................18
+ 6. Scaling Snowflake Networks with Forwarding Adjacencies .........22
+ 6.1. Two-Layer Hierarchy .......................................22
+ 6.1.1. Tuning the Network Topology to Suit the
+ Two-Layer Hierarchy ................................23
+ 6.2. Alternative Two-Layer Hierarchy ...........................24
+ 6.3. Three-Layer Hierarchy .....................................25
+ 6.4. Issues with Hierarchical LSPs .............................26
+ 7. Scaling Ladder Networks with Forwarding Adjacencies ............27
+ 7.1. Two-Layer Hierarchy .......................................27
+ 7.2. Three-Layer Hierarchy .....................................28
+ 7.3. Issues with Hierarchical LSPs .............................29
+ 8. Scaling Improvements through Multipoint-to-Point LSPs ..........30
+ 8.1. Overview of MP2P LSPs .....................................30
+ 8.2. LSP State: A Better Measure of Scalability ................31
+ 8.3. Scaling Improvements for Snowflake Networks ...............32
+ 8.3.1. Comparison with Other Scenarios ....................33
+ 8.4. Scaling Improvements for Ladder Networks ..................34
+ 8.4.1. Comparison with Other Scenarios ....................36
+ 8.4.2. LSP State Compared with LSP Numbers ................37
+ 8.5. Issues with MP2P LSPs .....................................37
+ 9. Combined Models ................................................39
+ 10. An Alternate Solution .........................................39
+ 10.1. Pros and Cons of the Alternate Solution ..................40
+ 11. Management Considerations .....................................42
+ 12. Security Considerations .......................................42
+ 13. Recommendations ...............................................42
+
+
+
+
+
+Yasukawa, et al. Informational [Page 2]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ 14. Acknowledgements ..............................................43
+ 15. Normative References ..........................................43
+ 16. Informative References ........................................43
+
+1. Introduction
+
+ Network operators and service providers are examining scaling issues
+ as they look to deploy ever-larger traffic engineered Multiprotocol
+ Label Switching (MPLS-TE) networks. Concerns have been raised about
+ the number of Label Switched Paths (LSPs) that need to be supported
+ at the edge and at the core of the network. The impact on control
+ plane and management plane resources threatens to outweigh the
+ benefits and popularity of MPLS-TE, while the physical limitations of
+ the routers may constrain the deployment options.
+
+ Historically, it has been assumed that all MPLS-TE scaling issues can
+ be addressed using hierarchical LSP [RFC4206]. However, analysis
+ shows that the improvement gained by LSP hierarchies is not as
+ significant in all topologies and at all points in the network as
+ might have been presumed. Further, additional management issues are
+ introduced to determine the end-points of the hierarchical LSPs and
+ to operate them. Although this does not invalidate the benefits of
+ LSP hierarchies, it does indicate that additional techniques may be
+ desirable in order to fully scale MPLS-TE networks.
+
+ This document examines the scaling properties of two generic MPLS-TE
+ network topologies and investigates the benefits of two scaling
+ techniques.
+
+1.1. Overview
+
+ Physical topology scaling concerns are addressed by building networks
+ that are not fully meshed. Network topologies tend to be meshed in
+ the core but tree-shaped at the edges, giving rise to a snowflake
+ design. Alternatively, the core may be more of a ladder shape with
+ tree-shaped edges.
+
+ MPLS-TE, however, establishes a logical full mesh between all edge
+ points in the network, and this is where the scaling problems arise
+ since the structure of the network tends to focus a large number of
+ LSPs within the core of the network.
+
+ This document presents two generic network topologies (the snowflake
+ and the ladder) and attempts to parameterize the networks by making
+ some generalities. It introduces terminology for the different
+ scaling parameters and examines how many LSPs might be required to be
+ carried within the core of a network.
+
+
+
+
+Yasukawa, et al. Informational [Page 3]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Two techniques (hierarchical LSPs and multipoint-to-point LSPs) are
+ introduced and an examination is made of the scaling benefits that
+ they offer as well as of some of the concerns with using these
+ techniques.
+
+ Of necessity, this document makes many generalizations. Not least
+ among these is a set of assumptions about the symmetry and
+ connectivity of the physical network. It is hoped that these
+ generalizations will not impinge on the usefulness of the overview of
+ the scaling properties that this document attempts to give. Indeed,
+ the symmetry of the example topologies tends to highlight the scaling
+ issues of the different solution models, and this may be useful in
+ exposing the worst case scenarios.
+
+ Although protection mechanisms like Fast Reroute (FRR) [RFC4090] are
+ briefly discussed, the main body of this document considers stable
+ network cases. It should be noted that make-before-break
+ re-optimisation after link failure may result in a significant number
+ of 'duplicate' LSPs. This issue is not addressed in this document.
+
+ It should also be understood that certain deployment models where
+ separate traffic engineered LSPs are used to provide different
+ services (such as layer 3 Virtual Private Networks (VPNs) [RFC4110]
+ or pseudowires [RFC3985]) or different classes of service [RFC3270]
+ may result in 'duplicate' or 'parallel' LSPs running between any pair
+ of provider edge nodes (PEs). This scaling factor is also not
+ considered in this document, but may be easily applied as a linear
+ factor by the reader.
+
+ The operation of security mechanisms in MPLS-TE networks [MPLS-SEC]
+ may have an impact on the ability of the network to scale. For
+ example, they may increase both the size and number of control plane
+ messages. Additionally, they may increase the processing overhead as
+ control plane messages are subject to processing algorithms (such as
+ encryption), and security keys need to be managed. Deployers will
+ need to consider the trade-offs between scaling objectives and
+ security objectives in their networks, and should resist the
+ temptation to respond to a degradation of scaling performance by
+ turning off security techniques that have previously been deemed as
+ necessary. Further analysis of the effects of security measures on
+ scalability are not considered further in this document.
+
+ This document is designed to help service providers discover whether
+ existing protocols and implementations can support the network sizes
+ that they are planning. To do this, it presents an analysis of some
+ of the scaling concerns for MPLS-TE core networks and examines the
+
+
+
+
+
+Yasukawa, et al. Informational [Page 4]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ value of two techniques for improving scaling. This should motivate
+ the development of appropriate deployment techniques and protocol
+ extensions to enable the application of MPLS-TE in large networks.
+
+ This document only considers the question of achieving scalability
+ for the support of point-to-point MPLS-TE LSPs. Point-to-multipoint
+ MPLS-TE LSPs are for future study.
+
+1.2. Glossary of Notation
+
+ This document applies consistent notation to define various
+ parameters of the networks that are analyzed. These terms are
+ defined as they are introduced throughout the document, but are
+ grouped together here for quick reference. Refer to the full
+ definitions in the text for detailed explanations.
+
+ n A network level. n = 1 is the core of the network.
+ See Section 3 for more details on the definition of a level.
+ P(n) A node at level n in the network.
+ S(n) The number of nodes at level n. That is, the number of P(n)
+ nodes.
+ L(n) The number of LSPs seen by a P(n) node.
+ X(n) The number of LSP segment states held by a P(n) node.
+ M(n) The number of P(n+1) nodes subtended to a P(n) node.
+ R The number of rungs in a ladder network.
+ E The number of edge nodes (PEs) subtended below (directly or
+ indirectly) a spar-node in a ladder network.
+ K The cost-effectiveness of the network expressed in terms of
+ the ratio of the number of PEs to the number of network nodes.
+
+2. Issues of Concern for Scaling
+
+ This section presents some of the issues associated with the support
+ of LSPs at a Label Switching Router (LSR) or within the network.
+ These issues may mean that there is a limit to the number of LSPs
+ that can be supported.
+
+2.1. LSP State
+
+ LSP state is the data (information) that must be stored at an LSR in
+ order to maintain an LSP. Here, we refer to the information that is
+ necessary to maintain forwarding plane state and the additional
+ information required when LSPs are established through control plane
+ protocols. While the size of the LSP state is implementation-
+ dependent, it is clear that any implementation will require some data
+ in order to maintain LSP state.
+
+
+
+
+
+Yasukawa, et al. Informational [Page 5]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Thus, LSP state becomes a scaling concern because as the number of
+ LSPs at an LSR increases, so the amount of memory required to
+ maintain the LSPs increases in direct proportion. Since the memory
+ capacity of an LSR is limited, there is a related limit placed on the
+ number LSPs that can be supported.
+
+ Note that techniques to reduce the memory requirements (such as data
+ compression) may serve to increase the number of LSPs that can be
+ supported, but this will only achieve a moderate multiplier and may
+ significantly decrease the ability to process the state rapidly.
+
+ In this document, we define X(n) as "the number of LSP segment states
+ held by a P(n) node." This definition observes that an LSR at the
+ end of an LSP only has to maintain state in one direction (i.e., into
+ the network), while a transit LSR must maintain state in both
+ directions (i.e., toward both ends of the LSP). Furthermore, in
+ multipoint-to-point (MP2P) LSPs (see Section 8), a transit LSR may
+ need to maintain LSP state for one downstream segment (toward the
+ destination) and multiple upstream segments (from multiple sources).
+ That is, we define LSP segment state as the state necessary to
+ maintain an LSP in one direction to one adjacent node.
+
+2.2. Processing Overhead
+
+ Depending largely on implementation issues, the number of LSPs
+ passing through an LSR may impact the processing speed for each LSP.
+ For example, control block search times can increase with the number
+ of control blocks to be searched, and even excellent implementations
+ cannot completely mitigate this fact. Thus, since CPU power is
+ constrained in any LSR, there may be a practical limit to the number
+ of LSPs that can be supported.
+
+ Further processing overhead considerations depend on issues specific
+ to the control plane protocols, and are discussed in the next
+ section.
+
+2.3. RSVP-TE Implications
+
+ Like many connection-oriented signaling protocols, RSVP-TE (Resource
+ Reservation Protocol - Traffic Engineering) requires that state is
+ held within the network in order to maintain LSPs. The impact of
+ this is described in Section 2.1. Note that RSVP-TE requires that
+ separate information is maintained for upstream and downstream
+ relationships, but does not require any specific implementation of
+ that state.
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 6]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ RSVP-TE is a soft-state protocol, which means that protocol messages
+ (refresh messages) must be regularly exchanged between signaling
+ neighbors in order to maintain the state for each LSP that runs
+ between the neighbors. A common period for the transmission (and
+ receipt) of refresh messages is 30 seconds, meaning that each LSR
+ must send and receive one message in each direction (upstream and
+ downstream) every 30 seconds for every LSP it supports. This has the
+ potential to be a significant constraint on the scaling of the
+ network, but various improvements [RFC2961] mean that this refresh
+ processing can be significantly reduced, allowing an implementation
+ to be optimized to remove nearly all concerns about soft-state
+ scaling in a stable network.
+
+ Observations of existing implementations indicate that there may be a
+ threshold of around 50,000 LSPs above which an LSR struggles to
+ achieve sufficient processing to maintain LSP state. Although
+ refresh reduction [RFC2961] may substantially improve this situation,
+ it has also been observed that under these circumstances the size of
+ the Srefresh may become very large, and the processing required may
+ still cause significant disruption to an LSR.
+
+ Another approach is to increase the refresh time. There is a
+ correlation between the percentage increase in refresh time and the
+ improvement in performance for the LSR. However, it should be noted
+ that RSVP-TE's soft-state nature depends on regular refresh messages;
+ thus, a degree of functionality is lost by increasing the refresh
+ time. This loss may be partially mitigated by the use of the RSVP-TE
+ Hello message, and can also be reduced by the use of various GMPLS
+ extensions [RFC3473], such as the use of [RFC2961] message
+ acknowledgements on all messages.
+
+ RSVP-TE also requires that signaling adjacencies be maintained
+ through the use of Hello message exchanges. Although [RFC3209]
+ suggests that Hello messages should be retransmitted every 5 ms, in
+ practice, values of around 3 seconds are more common. Nevertheless,
+ the support of Hello messages can represent a scaling limitation on
+ an RSVP-TE implementation since one message must be sent and received
+ to/from each signaling adjacency every time period. This can impose
+ limits on the number of neighbors (physical or logical) that an LSR
+ supports, but does not impact the number of LSPs that the LSR can
+ handle.
+
+2.4. Management
+
+ Another practical concern for the scalability of large MPLS-TE
+ networks is the ability to manage the network. This may be
+ constrained by the available tools, the practicality of managing
+ large numbers of LSPs, and the management protocols in use.
+
+
+
+Yasukawa, et al. Informational [Page 7]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Management tools are software implementations. Although such
+ implementations should not constrain the control plane protocols, it
+ is realistic to appreciate that network deployments will be limited
+ by the scalability of the available tools. In practice, most
+ existing tools have a limit to the number of LSPs that they can
+ support. While a Network Management System (NMS) may be able to
+ support a large number of LSPs, the number that can be supported by
+ an Element Management System (EMS) (or the number supported by an NMS
+ per-LSR) is more likely to be limited.
+
+ Similarly, practical constraints may be imposed by the operation of
+ management protocols. For example, an LSR may be swamped by
+ management protocol requests to read information about the LSPs that
+ it supports, and this might impact its ability to sustain those LSPs
+ in the control plane. OAM (Operations, Administration, and
+ Management), alarms, and notifications can further add to the burden
+ placed on an LSR and limit the number of LSPs it can support.
+
+ All of these considerations encourage a reduction in the number of
+ LSPs supported within the network and at any particular LSR.
+
+3. Network Topologies
+
+ In order to provide some generic analysis of the potential scaling
+ issues for MPLS-TE networks, this document explores two network
+ topology models. These topologies are selected partly because of
+ their symmetry, which makes them more tractable to a formulaic
+ approach, and partly because they represent generalizations of real
+ deployment models. Section 3.3 provides a discussion of the
+ commercial drivers for deployed topologies and gives more analysis of
+ why it is reasonable to consider these two topologies.
+
+ The first topology is the snowflake model. In this type of network,
+ only the very core of the network is meshed. The edges of the
+ network are formed as trees rooted in the core.
+
+ The second network topology considered is the ladder model. In this
+ type of network, the core of the network is shaped and meshed in the
+ form of a ladder and trees are attached rooted to the edge of the
+ ladder.
+
+ The sections that follow examine these topologies in detail in order
+ to parameterize them.
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 8]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+3.1. The Snowflake Network Topology
+
+ The snowflake topologies considered in this document are based on a
+ hierarchy of connectivity within the core network. PE nodes have
+ connectivity to P-nodes as shown in Figure 1. There is no direct
+ connectivity between the PEs. Dual homing of PEs to multiple P-nodes
+ is not considered in this document, although it may be a valuable
+ addition to a network configuration.
+
+ P
+ /|\
+ / | \
+ / | \
+ / | \
+ PE PE PE
+
+ Figure 1 : PE to P-Node Connectivity
+
+ The relationship between P-nodes is also structured in a hierarchical
+ way. Thus, as shown in Figure 2, multiple P-nodes at one level are
+ connected to a P-node at a higher level. We number the levels such
+ that level 1 is the top level (top in our figure, and nearest to the
+ core of the network) and level (n) is immediately above level (n+1);
+ we denote a P-node at level n as a P(n).
+
+ As with PEs, there is no direct connectivity between P(n+1) nodes.
+ Again, dual homing of P(n+1) nodes to multiple P(n) nodes is not
+ considered in this document, although it may be a valuable addition
+ to a network configuration.
+
+ P(n)
+ /|\
+ / | \
+ / | \
+ / | \
+ P(n+1) P(n+1) P(n+1)
+
+ Figure 2 : Relationship between P-Nodes
+
+ At the top level, P(1) nodes are connected in a full mesh. In
+ reality, the level 1 part of the network may be slightly less well-
+ connected than this, but assuming a full mesh provides for
+ generality. Thus, the snowflake topology comprises a clique with
+ topologically equivalent trees subtended from each node in the
+ clique.
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 9]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ The key multipliers for scalability are the number of P(1) nodes and
+ the multiplier relationship between P(n) and P(n+1) at each level,
+ down to and including PEs.
+
+ We define the multiplier M(n) as the number of P(n+1) nodes at level
+ (n+1) attached to any one P(n). Assume that M(n) is constant for all
+ nodes at level n. Since nodes at the same level are not
+ interconnected (except at the top level), and since each P(n+1) node
+ is connected to precisely one P(n) node, M(n) is one less than the
+ degree of the node at level n (that is, the P(n) node is attached to
+ M(n) nodes at level (n+1) and to 1 node at level (n-1)).
+
+ We define S(n) as the number of nodes at level (n).
+
+ Thus:
+
+ S(n) = S(1)*M(1)*M(2)*...*M(n-1)
+
+ So the number of PEs can be expressed as:
+
+ S(PE) = S(1)*M(1)*M(2)*...*M(n)
+
+ where the network has (n) layers of P-nodes.
+
+ Thus, we may depict an example snowflake network as shown in Figure
+ 3. In this case:
+
+ S(1) = 3
+ M(1) = 3
+ S(2) = S(1)*M(1) = 9
+ M(2) = 2
+ S(PE) = S(1)*M(1)*M(2) = 18
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 10]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ PE PE PE PE PE PE
+ \ \/ \/ /
+ PE--P(2) P(2) P(2) P(2)--PE
+ \ | | /
+ \| |/
+ PE--P(2)---P(1)------P(1)---P(2)--PE
+ / \ / \
+ PE \ / PE
+ \/
+ P(1)
+ /|\
+ / | \
+ / | \
+ PE--P(2) P(2) P(2)--PE
+ / /\ \
+ PE PE PE PE
+
+ Figure 3 : An Example Snowflake Network
+
+3.2. The Ladder Network Topology
+
+ The ladder networks considered in this section are based on an
+ arrangement of routers in the core network that resembles a ladder.
+
+ Ladder networks typically have long and thin cores that are arranged
+ as conventional ladders. That is, they have one or more spars
+ connected by rungs. Each node on a spar may have:
+
+ - connection to one or more other spars,
+ - connection to a tree of other core nodes,
+ - connection to customer nodes.
+
+ Figure 4 shows a simplified example of a ladder network. A core of
+ twelve nodes makes up two spars connected by six rungs.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 11]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ PE PE PE PE
+ PE PE PE | PE | PE PE PE | PE | PE
+ \| \|/ |/ | \| \|/
+ PE-P-----P-----P-----P------P-----P--PE
+ | | | | | |\
+ | | | | | | PE
+ | | | | | |
+ PE-P-----P-----P-----P------P-----P
+ /| /|\ |\ |\ |\ \
+ PE PE PE | PE | PE | PE | PE PE
+ PE PE PE PE
+
+ Figure 4 : A Simplified Ladder Network
+
+ In practice, not all nodes on a spar (call them spar-nodes) need to
+ have subtended PEs. That is, they can exist simply to give
+ connectivity along the spar to other spar-nodes, or across a rung to
+ another spar. Similarly, the connectivity between spars can be more
+ complex with multiple connections from one spar-node to another spar.
+ Lastly, the network may be complicated by the inclusion of more than
+ two spars (or simplified by reduction to a single spar).
+
+ These variables make the ladder network non-trivial to model. For
+ the sake of simplicity, we will make the following restrictions:
+
+ - There are precisely two spars in the core network.
+
+ - Every spar-node connects to precisely one spar-node on the other
+ spar. That is, each spar-node is attached to precisely one rung.
+
+ - Each spar-node connects to either one (end-spar) or two (core-spar)
+ other spar-nodes on the same spar.
+
+ - Every spar-node has the same number of PEs subtended. This does
+ not mean that there are no P-nodes subtended to the spar-nodes, but
+ does mean that the edge tree subtended to each spar-node is
+ identical.
+
+ From these restrictions, we are able to quantify a ladder network as
+ follows:
+
+ R - The number of rungs. That is, the number of spar-nodes on
+ each spar.
+ S(1) - The number of spar-nodes in the network. S(1)=2*R.
+ E - The number of subtended edge nodes (PEs) to each spar-node.
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 12]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ The number of rungs may vary considerably. A number less than 3 is
+ unlikely (since that would not be a significantly connected network),
+ and a number greater than 100 seems improbable (because that would
+ represent a very long, thin network).
+
+ E can be treated as for the snowflake network. That is, we can
+ consider a number of levels of attachment from P(1) nodes, which are
+ the spar-nodes, through P(i) down to P(n), which are the PEs.
+ Practically, we need to only consider n=2 (PEs attached direct to the
+ spar-nodes) and n=3 (one level of P-nodes between the PEs and the
+ spar-nodes).
+
+ Let M(i) be the ratio of P(i) nodes to P(i-1) nodes, i.e., the
+ connectivity between levels of P-node as defined for the snowflake
+ topology. Hence, the number of nodes at any level (n) is:
+
+ S(n) = S(1)*M(1)*M(2)*...*M(n-1)
+
+ So the number of PEs subtended to a spar-node is:
+
+ E = M(1)*M(2)*...*M(n)
+
+ And the number of PEs can be expressed as:
+
+ S(PE) = S(1)*M(1)*M(2)*...*M(n)
+ = S(1)*E
+
+ Thus, we may depict an example ladder network as shown in Figure 5.
+ In this case:
+
+ R = 5
+ S(1) = 10
+ M(1) = 2
+ S(2) = S(1)*M(1) = 20
+ M(2) = 2
+ E = M(1)*M(2) = 4
+ S(PE) = S(1)*E = 40
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 13]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ PE PE PE PE PE PE PE PE PE PE PE PE PE PE PE PE
+ \| \| \| \| |/ |/ |/ |/
+ P(2) P(2) P(2) P(2) P(2) P(2) P(2) P(2)
+ \ \ | \ / | / /
+ PE \ \ | \ / | / / PE
+ \ \ \| \/ |/ / /
+ PE-P(2)---P(1)---P(1)---P(1)---P(1)---P(1)---P(2)-PE
+ | | | | |
+ | | | | |
+ | | | | |
+ PE-P(2)---P(1)---P(1)---P(1)---P(1)---P(1)---P(2)-PE
+ / / / | /\ |\ \ \
+ PE / / | / \ | \ \ PE
+ / / | / \ | \ \
+ P(2) P(2) P(2) P(2) P(2) P(2) P(2) P(2)
+ /| /| /| /| |\ |\ |\ |\
+ PE PE PE PE PE PE PE PE PE PE PE PE PE PE PE PE
+
+ Figure 5 : An Example Ladder Network
+
+3.3. Commercial Drivers for Selected Configurations
+
+ It is reasonable to ask why these two particular network topologies
+ have been chosen.
+
+ The most important consideration is physical scalability. Each node
+ (Label Switching Router - LSR) is only able to support a limited
+ number of physical interfaces. This necessarily reduces the ability
+ to fully mesh a network and leads to the tree-like structure of the
+ network toward the PEs.
+
+ A realistic commercial consideration for an operator is the fact that
+ the only revenue-generating nodes in the network are the PEs. Other
+ nodes are needed only to support connectivity and scalability.
+ Therefore, there is a desire to maximize S(PE) while minimizing the
+ sum of S(n) for all values of (n). This could be achieved by
+ minimizing the number of levels and maximizing the connectivity at
+ each layer, M(n). Ultimately, however, this would produce a network
+ of just interconnected PEs, which is clearly in conflict with the
+ physical scaling situation.
+
+ Therefore, the solution calls for a "few" levels with "relatively
+ large" connectivity at each level. We might say that the cost-
+ effectiveness of the network can be stated as:
+
+ K = S(PE)/(S(1)+S(2) + ... + S(n)) where n is the level above the PEs
+
+
+
+
+
+Yasukawa, et al. Informational [Page 14]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ We should observe, however, that this equation may be naive in that
+ the cost of a network is not actually a function of the number of
+ routers (since a router chassis is often free or low cost), but is
+ really a function of the cost of the line cards, which is, itself, a
+ product of the capacity of the line cards. Thus, the relatively high
+ connectivity decreases the cost-effectiveness, while a topology that
+ tends to channel data through a network core tends to demand higher
+ capacity (and so, more expensive) line cards.
+
+ A further consideration is the availability of connectivity (usually
+ fibers) between LSR sites. Although it is always possible to lay new
+ fiber, this may not be cost-effective or timely. The physical shape
+ and topography of the country in which the network is laid is likely
+ to be as much of a problem. If the country is 'long and thin', then
+ a ladder network is likely to be used.
+
+ This document examines the implications for control plane and data
+ plane scalability of this type of network when MPLS-TE LSPs are used
+ to provide full connectivity between all PEs.
+
+3.4. Other Network Topologies
+
+ As explained in Section 1, this document is using two symmetrical and
+ generalized network topologies for simplicity of modelling. In
+ practice, there are two other topological considerations.
+
+ a. Multihoming
+ It is relatively common for a node at level (n) to be attached to
+ more than one node at level (n-1). This is particularly common at
+ PEs that may be connected to more than one P(n).
+
+ b. Meshing within a level
+ A level in the network will often include links between P-nodes at
+ the same level, including the possibility of links between PEs.
+ This may result in a network that looks like a series of
+ concentric circles with spokes.
+
+ Both of these features are likely to have some impact on the scaling
+ of the networks. However, for the purposes of establishing the
+ ground rules for scaling, this document restricts itself to the
+ consideration of the symmetrical networks described in Sections 2.1
+ and 2.2. Discussion of other network formats is for future study.
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 15]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+4. Required Network Sizes
+
+ An important question for this evaluation and analysis is the size of
+ the network that operators require. How many PEs are required? What
+ ratio of P to PE is acceptable? How many ports do devices have for
+ physical connectivity? What type of MPLS-TE connectivity between PEs
+ is required?
+
+ Although presentation of figures for desired network sizes must be
+ treated with caution because history shows that networks grow beyond
+ all projections, it is useful to set some acceptable lower bounds.
+ That is, we can state that we are interested in networks of at least
+ a certain size.
+
+ The most important features are:
+
+ - The network should have at least 1000 PEs.
+ - Each pair of PEs should be connected by at least one LSP in each
+ direction.
+
+4.1. Practical Numbers
+
+ In practice, reasonable target numbers are as follows.
+
+ S(PE) >= 1000
+ Number of levels is 3. That is: 1, 2, and PE.
+ M(2) <= 20
+ M(1) <= 20
+ S(1) <= 100
+
+5. Scaling in Flat Networks
+
+ Before proceeding to examine potential scaling improvements, we need
+ to examine how well the flat networks described in the previous
+ sections scale.
+
+ Consider the requirement for a full mesh of LSPs linking all PEs.
+ That is, each PE has an LSP to and from every other LSP. Thus, if
+ there are S(PE) PEs in the network, there are S(PE)*(S(PE) - 1) LSPs.
+
+ Define L(n) as the number of LSPs handled by a level (n) LSR.
+
+ L(PE) = 2*(S(PE) - 1)
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 16]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+5.1. Snowflake Networks
+
+ There are a total of S(PE) PEs in the network and, since each PE
+ establishes an LSP with every other PE, it would be expected that
+ there are S(PE) - 1 LSPs incoming to each PE and the same number of
+ LSPs outgoing from the same PE, giving a total of 2(S(PE) - 1) on the
+ incident link. Hence, in a snowflake topology (see Figure 3), since
+ there are M(2) PEs attached to each P(2) node, it may tempting to
+ think that L(2) (the number of LSPs traversing each P(2) node) is
+ simply 2*(S(PE) - 1)*M(2). However, it should be noted that of the
+ S(PE) - 1 LSPs incoming to each PE, M(2) - 1 originated from nodes
+ attached to the same P(2) node, and so this value would count the
+ LSPs between the M(2) PEs attached to each P(2) node twice: once when
+ outgoing from the M(2) - 1 other nodes and once when incoming into a
+ particular PE.
+
+ There are a total of M(2)*(M(2) - 1) LSPs between these M(2) PEs and,
+ since this value is erroneously included twice in 2*(S(PE) - 1)*M(2),
+ the correct value is:
+
+ L(2) = 2*M(2)*(S(PE) - 1) - M(2)*(M(2) - 1)
+ = M(2)*(2*S(PE) - M(2) - 1)
+
+ An alternative way of looking at this, that proves extensible for the
+ calculation of L(1), is to observe that each PE subtended to a P(2)
+ node has an LSP in each direction to all S(PE) - M(2) PEs in the rest
+ of the system, and there are M(2) such locally subtended PEs; thus,
+ 2*M(2)*(S(PE) - M(2)). Additionally, there are M(2)*(M(2) - 1) LSPs
+ between the locally subtended PEs. So:
+
+ L(2) = 2*M(2)*(S(PE) - M(2)) + M(2)*(M(2) - 1)
+ = M(2)*(2*S(PE) - M(2) - 1)
+
+ L(1) can be computed in the same way as this second evaluation of
+ L(2). Each PE subtended below a P(1) node has an LSP in each
+ direction to all PEs not below the P(1) node. There are M(1)*M(2)
+ PEs below the P(1) node, so this accounts for 2*M(1)*M(2)*(S(PE) -
+ M(1)*M(2)) LSPs. To this, we need to add the number of LSPs that
+ pass through the P(1) node and that run between the PEs subtended
+ below the P(1). Consider each P(2): it has M(2) PEs, each of which
+ has an LSP going to all of the PEs subtended to the other P(2) nodes
+ subtended to the P(1). There are M(1) - 1 such other P(2) nodes, and
+ so M(2)*(M(1) - 1) other such PEs. So the number of LSPs from the
+ PEs below a P(2) node is M(2)*M(2)*(M(1) - 1). And there are M(1)
+ P(2) nodes below the P(1), giving rise to a total of
+ M(2)*M(2)*M(1)*(M(1) - 1) LSPs. Thus:
+
+
+
+
+
+Yasukawa, et al. Informational [Page 17]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ L(1) = 2*M(1)*M(2)*(S(PE) - M(1)*M(2)) + M(2)*M(2)*M(1)*(M(1) - 1)
+ = M(1)*M(2)*(2*S(PE) - M(2)*(M(1) + 1))
+
+ So, for example, with S(1) = 5, M(1) = 10, and M(2) = 20, we see:
+
+ S(PE) = 1000
+ L(PE) = 1998
+ L(2) = 39580
+ L(1) = 356000
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ S(PE) = 2000
+ L(PE) = 3998
+ L(2) = 79580
+ L(1) = 756000
+
+ In both examples, the number of LSPs at the core (P(1)) nodes is
+ probably unacceptably large, even though there are only a relatively
+ modest number of PEs. In fact, L(2) may even be too large in the
+ second example.
+
+5.2. Ladder Networks
+
+ In ladder networks, L(PE) remains the same at 2*(S(PE) - 1).
+
+ L(2) can be computed using the same mechanism as for the snowflake
+ topology because the subtended tree is the same format. Hence,
+
+ L(2) = 2*M(2)*(S(PE) - 1) - M(2)*(M(2) - 1)
+
+ But L(1) requires a different computation because each P(1) not only
+ sees LSPs for the subtended PEs, but is also a transit node for some
+ of the LSPs that cross the core (the core is not fully meshed).
+
+ Each P(1) sees:
+
+ o all of the LSPs between locally attached PEs,
+ o less those LSPs between locally attached PEs that can be served
+ exclusively by the attached P(2) nodes,
+ o all LSPs between locally attached PEs and remote PEs, and
+ o LSPs in transit that pass through the P(1).
+
+ The first three numbers are easily determined and match what we have
+ seen from the snowflake network. They are:
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 18]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ o E*(E-1)
+ o M(1)*M(2)*(M(2)-1) = E*(M(2) - 1)
+ o 2*E*E*(S(1) - 1)
+
+ The number of LSPs in transit is more complicated to compute. It is
+ simplified by not considering the ends of the ladders but by
+ examining an arbitrary segment of the middle of the ladder, such as
+ shown in Figure 6. We look to compute and generalize the number of
+ LSPs traversing each core link (labeled a and b in Figure 6) and so
+ determine the number of transit LSPs seen by each P(1).
+
+ : : : : : :
+ : : : : : :
+ P(2) P(2) P(2) P(2) P(2) P(2)
+ \ | \ / | /
+ \ | \ / | /
+ \| \/ |/
+ ......P(1)---P(1)---P(1)......
+ | a | |
+ | |b |
+ | | |
+ ......P(1)---P(1)---P(1)......
+ /| /\ |\
+ / | / \ | \
+ / | / \ | \
+ P(2) P(2) P(2) P(2) P(2) P(2)
+ : : : : : :
+ : : : : : :
+
+ Figure 6 : An Arbitrary Section of a Ladder Network
+
+ Of course, the number of LSPs carried on links a and b in Figure 6
+ depends on how LSPs are routed through the core network. But if we
+ assume a symmetrical routing policy and an even distribution of LSPs
+ across all shortest paths, the result is the same.
+
+ Now we can see that each P(1) sees half of 2a+b LSPs (since each LSP
+ would otherwise be counted twice as it passed through the P(1)),
+ except that some of the LSPs are locally terminated and so are only
+ included once in the sum 2a+b.
+
+ So L(1) = a + b/2 -
+ (locally terminated transit LSPs)/2 +
+ (locally contained LSPs)
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 19]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Thus:
+
+ L(1) = a + b/2 -
+ 2*E*E*(S(1) - 1)/2 +
+ E*(E-1) - E*(M(2) - 1)
+ = a + b/2 +
+ E*E*(2 - S(1)) - E*M(2)
+
+ So all we have to do is work out a and b.
+
+ Recall that the ladder length R = S(1)/2, and define X = E*E.
+
+ Consider the contribution made by all of the LSPs that make n hops on
+ the ladder to the totals of each of a and b. If the ladder was
+ unbounded, then we could say that in the case of a, there are n*2X
+ LSPs along the spar only, and n(n-1)*2X/n = 2X(n-1) LSPs use a rung
+ and the spar. Thus, the LSPs that make n hops on the ladder
+ contribute (4n-2)X LSPs to a. Note that the edge cases are special
+ because LSPs that make only one hop on the ladder cannot transit a
+ P(1) but only start or end there.
+
+ So with a ladder of length R = S(1)/2, we could say:
+
+ R
+ a = SUM[(4i-2)*X] + 2RX
+ i=2
+
+ = 2*X*R*(R+1)
+
+ And similarly, considering b in an unbounded ladder, the LSPs that
+ only travel one hop on the LSP are a special case, contributing 2X
+ LSPs, and every other LSP that traverses n hops on the ladder
+ contributes 2n*2X/n = 4X LSPs. So:
+
+ R+1
+ b = 2X + SUM[4X]
+ i=2
+
+ = 2*X + 4*X*R
+
+ In fact, the ladders are bounded, and so the number of LSPs is
+ reduced because of the effect of the ends of the ladders. The links
+ that see the most LSPs are in the middle of the ladder. Consider a
+ ladder of length R; a node in the middle of the ladder is R/2 hops
+ away from the end of the ladder. So we see that the formula for the
+ contribution to the count of spar-only LSPs for a is only valid up to
+ n=R/2, and for spar-and-rung LSPs, up to n=1+R/2. Above these
+ limits, the contribution made by spar-only LSPs decays as (n-R/2)*2X.
+
+
+
+Yasukawa, et al. Informational [Page 20]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ However, for a first-order approximation, we will use the values of a
+ and b as computed above. This gives us an upper bound of the number
+ of LSPs without using a more complex formula for the reduction made
+ by the effect of the ends of the ladder.
+
+ From this:
+
+ L(1) = a + b/2 +
+ E*E*(2 - S(1)) - E*M(2)
+ = 2*X*R*(R+1) +
+ X + 2*X*R +
+ E*E*(2 - S(1)) - E*M(2)
+ = E*E*S(1)*(1 + S(1)/2) +
+ E*E + E*E*S(1) +
+ 2*E+E - E*E*S(1) - E*M(2)
+ = E*E*S(1)*(1 + S(1)/2) + 3*E+E - E*M(2)
+ = E*E*S(1)*S(1)/2 + E*E*S(1) + 3*E*E - E*M(2)
+
+ So, for example, with S(1) = 6, M(1) = 10, and M(2) = 17, we see:
+
+ E = 170
+ S(PE) = 1020
+ L(PE) = 2038
+ L(2) = 34374
+ L(1) = 777410
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ E = 200
+ S(PE) = 2000
+ L(PE) = 3998
+ L(2) = 79580
+ L(1) = 2516000
+
+ In both examples, the number of LSPs at the core (P(1)) nodes is
+ probably unacceptably large, even though there are only a relatively
+ modest number of PEs. In fact, L(2) may even be too large in the
+ second example.
+
+ Compare the L(1) values with the total number of LSPs in the system
+ S(PE)*(S(PE) - 1), which is 1039380 and 3998000, respectively.
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 21]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+6. Scaling Snowflake Networks with Forwarding Adjacencies
+
+ One of the purposes of LSP hierarchies [RFC4206] is to improve the
+ scaling properties of MPLS-TE networks. LSP tunnels (sometimes known
+ as Forwarding Adjacencies (FAs)) may be established to provide
+ connectivity over the core of the network, and multiple edge-to-edge
+ LSPs may be tunneled down a single FA LSP.
+
+ In our network we consider a mesh of FA LSPs between all core nodes
+ at the same level. We consider two possibilities here. In the
+ first, all P(2) nodes are connected to all other P(2) nodes by LSP
+ tunnels, and the PE-to-PE LSPs are tunneled across the core of the
+ network. In the second, an extra layer of LSP hierarchy is
+ introduced by connecting all P(1) nodes in an LSP mesh and tunneling
+ the P(2)-to-P(2) tunnels through these.
+
+6.1. Two-Layer Hierarchy
+
+ In this hierarchy model, the P(2) nodes are connected by a mesh of
+ tunnels. This means that the P(1) nodes do not see the PE-to-PE
+ LSPs.
+
+ It remains the case that:
+
+ L(PE) = 2*(S(PE) - 1)
+
+ L(2) is slightly increased. It can be computed as the sum of all
+ LSPs for all attached PEs, including the LSPs between the attached PE
+ (this figure is unchanged from Section 5.1, i.e., M(2)*(2*S(PE) -
+ M(2) - 1)), plus the number of FA LSPs providing a mesh to the other
+ P(2) nodes. Since the number of P(2) nodes is S(2), each P(2) node
+ sees 2*(S(2) - 1) FA LSPs. Thus:
+
+ L(2) = M(2)*(2*S(PE) - M(2) - 1) + 2*(S(2) - 1)
+
+ L(1), however, is significantly reduced and can be computed as the
+ sum of the number of FA LSPs to and from each attached P(2) to each
+ other P(2) in the network, including (but counting only once) the FA
+ LSPs between attached P(2) nodes. In fact, the problem is identical
+ to the L(2) computation in Section 5.1. So:
+
+ L(1) = M(1)*(2*S(2) - M(1) - 1)
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 22]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ So, for example, with S(1) = 5, M(1) = 10, and M(2) = 20, we see:
+
+ S(PE) = 1000
+ S(2) = 50
+ L(PE) = 1998
+ L(2) = 39678
+ L(1) = 890
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ S(PE) = 2000
+ S(2) = 100
+ L(PE) = 3998
+ L(2) = 79778
+ L(1) = 1890
+
+ So, in both examples, potential problems at the core (P(1)) nodes
+ caused by an excessive number of LSPs can be avoided, but any problem
+ with L(2) is made slightly worse, as can be seen from the table
+ below.
+
+ Example| Count | Unmodified | 2-Layer
+ | | (Section 5.1) | Hierarchy
+ -------+-------+---------------+----------
+ A | L(2) | 39580 | 39678
+ | L(1) | 356000 | 890
+ -------+-------+---------------+----------
+ B | L(2) | 79580 | 79778
+ | L(1) | 756000 | 1890
+
+6.1.1. Tuning the Network Topology to Suit the Two-Layer Hierarchy
+
+ Clearly, we can reduce L(2) by selecting appropriate values of S(1),
+ M(1), and M(2). We can do this without negative consequences, since
+ no change will affect L(PE) and since a large percentage increase in
+ L(1) is sustainable now that L(1) is so small.
+
+ Observe that:
+
+ L(2) = M(2)*(2*S(PE) - M(2) - 1) + 2*(S(2) - 1)
+
+ where S(PE) = S(1)*M(1)*M(2) and S(2) = S(1)*M(1). So L(2) scales
+ with M(2)^2 and we can have the most impact by reducing M(2) while
+ keeping S(PE) constant.
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 23]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ For example, with S(1) = 10, M(1) = 10, and M(2) = 10, we see:
+
+ S(PE) = 1000
+ S(2) = 100
+ L(PE) = 1998
+ L(2) = 20088
+ L(1) = 1890
+
+ And similarly, with S(1) = 20, M(1) = 20, and M(2) = 5, we see:
+
+ S(PE) = 2000
+ S(2) = 400
+ L(PE) = 3998
+ L(2) = 20768
+ L(1) = 15580
+
+ These considerable scaling benefits must be offset against the cost-
+ effectiveness of the network. Recall from Section 3.3 that:
+
+ K = S(PE)/(S(1)+S(2) ... + S(n))
+
+ where n is the level above the PEs, so that for our network:
+
+ K = S(PE) / (S(1) + S(2))
+
+ Thus, in the first example the cost-effectiveness has been halved
+ from 1000/55 to 1000/110. In the second example, it has been reduced
+ to roughly one quarter, changing from 2000/110 to 2000/420.
+
+ So, although the tuning changes may be necessary to reach the desired
+ network size, they come at a considerable cost to the operator.
+
+6.2. Alternative Two-Layer Hierarchy
+
+ An alternative to the two-layer hierarchy presented in Section 6.1 is
+ to provide a full mesh of FA LSPs between P(1) nodes. This technique
+ is only of benefit to any nodes in the core of the level 1 network.
+ It makes no difference to the PE and P(2) nodes since they continue
+ to see only the PE-to-PE LSPs. Furthermore, this approach increases
+ the burden at the P(1) nodes since they have to support all of the
+ PE-to-PE LSPs as in the flat model plus the additional 2*(S(1) - 1)
+ P(1)-to-P(1) FA LSPs. Thus, this approach should only be considered
+ where there is a mesh of P-nodes within the ring of P(1) nodes, and
+ is not considered further in this document.
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 24]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+6.3. Three-Layer Hierarchy
+
+ As demonstrated by Section 6.2, introducing a mesh of FA LSPs at the
+ top level (P(1)) has no benefit, but if we introduce an additional
+ level in the network (P(3) between P(2) and PE) to make a four-level
+ snowflake, we can introduce a new layer of FA LSPs so that we have a
+ full mesh of FA LSPs between all P(3) nodes to carry the PE-to-PE
+ LSPs, and a full mesh of FA LSPs between all P(2) nodes to carry the
+ P(3)-to-P(3) LSPs.
+
+ The number of PEs is S(PE) = S(1)*M(1)*M(2)*M(3), and the number of
+ PE-to-PE LSPs at a PE remains L(PE) = 2*(S(PE) - 1).
+
+ The number of LSPs at a P(3) can be deduced from Section 6.1. It is
+ the sum of all LSPs for all attached PEs, including the LSPs between
+ the attached PE, plus the number of FA LSPs providing a mesh to the
+ other P(3) nodes.
+
+ L(3) = M(3)*(2*S(PE) - M(3) - 1) + 2*(S(3) - 1)
+
+ The number of LSPs at P(2) can also be deduced from Section 6.1 since
+ it is the sum of all LSPs for all attached P(3) nodes, including the
+ LSPs between the attached PE plus the number of FA LSPs providing a
+ mesh to the other P(2) nodes.
+
+ L(2) = M(2)*(2*S(3) - M(2) - 1) + 2*(S(2) - 1)
+
+ Finally, L(1) can be copied straight from 6.1.
+
+ L(1) = M(1)*(2*S(2) - M(1) - 1)
+
+ For example, with S(1) = 5, M(1) = 5, M(2) = 5, and M(3) = 8, we see:
+
+ S(PE) = 1000
+ S(3) = 125
+ S(2) = 25
+ L(PE) = 1998
+ L(3) = 16176
+ L(2) = 1268
+ L(1) = 220
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 25]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Similarly, with S(1) = 5, M(1) = 5, M(2) = 8, and M(3) = 10, we see:
+
+ S(PE) = 2000
+ S(3) = 200
+ S(2) = 25
+ L(PE) = 3998
+ L(3) = 40038
+ L(2) = 3184
+ L(1) = 220
+
+ Clearly, there are considerable scaling improvements with this three-
+ layer hierarchy, and all of the numbers (even L(3) in the second
+ example) are manageable.
+
+ Of course, the extra level in the network tends to reduce the cost-
+ effectiveness of the networks with values of K = 1000/155 and K =
+ 2000/230 (from 1000/55 and 2000/110) for the examples above. That is
+ a reduction by a factor of 3 in the first case and 2 in the second
+ case. Such a change in cost-effectiveness has to be weighed against
+ the desire to deploy such a large network. If LSP hierarchies are
+ the only scaling tool available, and networks this size are required,
+ the cost-effectiveness may need to be sacrificed.
+
+6.4. Issues with Hierarchical LSPs
+
+ A basic observation for hierarchical scaling techniques is that it is
+ hard to have any impact on the number of LSPs that must be supported
+ by the level of P(n) nodes adjacent to the PEs (for example, it is
+ hard to reduce L(3) in Section 6.3). In fact, the only way we can
+ change the number of LSPs supported by these nodes is to change the
+ scaling ratio M(n) in the network -- in other words, to change the
+ number of PEs subtended to any P(n). But such a change has a direct
+ effect on the number of PEs in the network and so the cost-
+ effectiveness is impacted.
+
+ Another concern with the hierarchical approach is that it must be
+ configured and managed. This may not seem like a large burden, but
+ it must be recalled that the P(n) nodes are not at the edge of the
+ network -- they are a set of nodes that must be identified so that
+ the FA LSPs can be configured and provisioned. Effectively, the
+ operator must plan and construct a layered network with a ring of
+ P(n) nodes giving access to the level (n) network. This design
+ activity is open to considerable risk as failing to close the ring
+ (i.e., allowing a node to be at both level (n+1) and at level (n))
+ may cause operational confusion.
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 26]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Protocol techniques (such as IGP automesh [RFC4972]) have been
+ developed to reduce the configuration necessary to build this type of
+ multi-level network. In the case of automesh, the routing protocol
+ is used to advertise the membership of a 'mesh group', and all
+ members of the mesh group can discover each other and connect with
+ LSP tunnels. Thus, the P(n) nodes giving access to level (n) can
+ advertise their existence to each other, and it is not necessary to
+ configure each with information about all of the others. Although
+ this process can help to reduce the configuration overhead, it does
+ not eliminate it, as each member of the mesh group must still be
+ planned and configured for membership.
+
+ An important consideration for the use of hierarchical LSPs is how
+ they can be protected using MPLS Fast Reroute (FRR) [RFC4090]. FRR
+ may provide link protection either by protecting the tunnels as they
+ traverse a broken link or by treating each level (n) tunnel LSP as a
+ link in level (n+1) and providing protection for the level (n+1) LSPs
+ (although in this model, fault detection and propagation time may be
+ an issue). Node protection may be performed in a similar way, but
+ protection of the first and last nodes of a hierarchical LSP is
+ particularly difficult. Additionally, the whole notion of scaling
+ with regard to FRR gives rise to separate concerns that are outside
+ the scope of this document as currently formulated.
+
+ Finally, observe that we have been explaining these techniques using
+ conveniently symmetrical networks. Consider how we would arrange the
+ hierarchical LSPs in a network where some PEs are connected closer to
+ the center of the network than others.
+
+7. Scaling Ladder Networks with Forwarding Adjacencies
+
+7.1. Two-Layer Hierarchy
+
+ In Section 6.2, we observed that there is no value to placing FA LSPs
+ between the P(1) nodes of our example snowflake topologies. This is
+ because those LSPs would be just one hop long and would, in fact,
+ only serve to increase the burden at the P(1) nodes. However, in the
+ ladder model, there is value to this approach. The P(1) nodes are
+ the spar-nodes of the ladder, and they are not all mutually adjacent.
+ That is, the P(1)-to-P(1) hierarchical LSPs can create a full mesh of
+ P(1) nodes where one does not exist in the physical topology.
+
+ The number of LSPs seen by a P(1) node is then:
+
+ o all of the tunnels terminating at the P(1) node,
+ o any transit tunnels, and
+ o all of the LSPs due to subtended PEs.
+
+
+
+
+Yasukawa, et al. Informational [Page 27]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ This is a substantial reduction; all of the transit LSPs are reduced
+ to just one per remote P(1) that causes any transit LSP. So:
+
+ L(1) = 2*(S(1) - 1) +
+ O(S(1)*S(1)/2) +
+ 2*E*E*(S(1) - 1) + E*(E-1) - E*(M(2) - 1)
+
+ where O(S(1)*S(1)/2) gives an upper bound order of magnitude. So:
+
+ L(1) = S(1)*S(1)/2 + 2*S(1) + 2*E*E*(S(1) - 1) - E*M(2) - 2
+
+ So, in our two examples:
+
+ With S(1) = 6, M(1) = 10, and M(2) = 17, we see:
+
+ E = 170
+ S(PE) = 1020
+ L(PE) = 2038
+ L(2) = 34374
+ L(1) = 286138
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ E = 200
+ S(PE) = 2000
+ L(PE) = 3998
+ L(2) = 79580
+ L(1) = 716060
+
+ Both of these show significant improvements over the previous L(1)
+ figures of 777410 and 2516000. But the numbers are still too large
+ to manage, and there is no improvement in the L(2) figures.
+
+7.2. Three-Layer Hierarchy
+
+ We can also apply the three-layer hierarchy to the ladder model. In
+ this case, the number of LSPs between P(1) nodes is not reduced, but
+ tunnels are also set up between all P(2) nodes. Thus, the number of
+ LSPs seen by a P(1) node is:
+
+ o all of the tunnels terminating at the P(1) node,
+ o any transit tunnels between P(1) nodes, and
+ o all of the LSPs due to subtended P(2) nodes.
+
+ No PE-to-PE LSPs are seen at the P(1) nodes.
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 28]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ L(1) = 2*(S(1) - 1) +
+ O(S(1)*S(1)/2) +
+ 2*(S(1) - 1)*M(1)*M(1) + M(1)*(M(1) - 1)
+
+ where O(S(1)*S(1)/2) gives an upper bound order of magnitude. So:
+
+ L(1) = S(1)*S(1)/2 + 2*S(1) + 2*M(1)*M(1)*S(1) - M(1)(M(1) + 1) - 2
+
+ Unfortunately, there is a small increase in the number of LSPs seen
+ by the P(2) nodes. Each P(2) now sees all of the PE-to-PE LSPs that
+ it saw before and is also an end-point for a set of P(2)-to-P(2)
+ tunnels. Thus, L(2) increases to:
+
+ L(2) = 2*M(2)*(S(PE) - 1) - M(2)*(M(2) - 1) + 2*(S(1)*M(1) - 1)
+
+ So, in our two examples:
+
+ With S(1) = 6, M(1) = 10, and M(2) = 17, we see:
+
+ E = 170
+ S(PE) = 1020
+ L(PE) = 2038
+ L(2) = 34492
+ L(1) = 1118
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ E = 200
+ S(PE) = 2000
+ L(PE) = 3998
+ L(2) = 79778
+ L(1) = 1958
+
+ This represents a very dramatic decrease in LSPs across the core.
+
+7.3. Issues with Hierarchical LSPs
+
+ The same issues exist for hierarchical LSPs as described in Section
+ 6.4. Although dramatic improvements can be made to the scaling
+ numbers for the number of LSPs at core nodes, this can only be done
+ at the cost of configuring P(2) to P(2) tunnels. The mesh of P(1)
+ tunnels is not enough.
+
+ But the sheer number of P(2) to P(2) tunnels that must be configured
+ is a significant management burden that can only be eased by using a
+ technique like automesh [RFC4972].
+
+
+
+
+
+Yasukawa, et al. Informational [Page 29]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ It is significant, however, that the scaling problem at the P(2)
+ nodes cannot be improved by using tunnels and that the only solution
+ to ease this in the hierarchical approach would be to institute
+ another layer of hierarchy (that is, P(3) nodes) between the P(2)
+ nodes and the PEs. This is, of course, a significant expense.
+
+8. Scaling Improvements through Multipoint-to-Point LSPs
+
+ An alternative (or complementary) scaling technique has been proposed
+ using multipoint-to-point (MP2P) LSPs. The fundamental improvement
+ in this case is achieved by reducing the number of LSPs toward the
+ destination as LSPs toward the same destination are merged.
+
+ This section presents an overview of MP2P LSPs and describes their
+ applicability and scaling benefits.
+
+8.1. Overview of MP2P LSPs
+
+ Note that the MP2P LSPs discussed here are for MPLS-TE and are not
+ the same concept familiar in the Label Distribution Protocol (LDP)
+ described in [RFC5036].
+
+ Traffic flows generally converge toward their destination and this
+ can be utilized by MPLS in constructing an MP2P LSP. With such an
+ LSP, the Label Forwarding Information Base (LFIB) mappings at each
+ LSR are many-to-one so that multiple pairs {incoming interface,
+ incoming label} are mapped to a single pair {outgoing interface,
+ outgoing label}. Obviously, if per-platform labels are used, this
+ mapping may be optimized within an implementation.
+
+ It is important to note that with MP2P MPLS-TE LSPs, the traffic
+ flows are merged. That is, some additional form of identifier is
+ required if de-merging is required. For example, if the payload is
+ IP traffic belonging to the same client network, no additional de-
+ merging information is required since the IP packet contains
+ sufficient data. On the other hand, if the data comes, for example,
+ from a variety of VPN client networks, then the flows will need to be
+ labeled in their own right as point-to-point (P2P) flows, so that
+ traffic can be disambiguated at the egress of the MP2P LSPs.
+
+ Techniques for establishing MP2P MPLS-TE LSPs and for assigning the
+ correct bandwidth downstream of LSP merge points are out of the scope
+ of this document.
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 30]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+8.2. LSP State: A Better Measure of Scalability
+
+ Consider the network topology shown in Figure 3. Suppose that we
+ establish MP2P LSP tunnels such that there is one tunnel terminating
+ at each PE, and that that tunnel has every other PE as an ingress.
+ Thus, a PE-to-PE MP2P LSP tunnel would have S(PE)-1 ingresses and one
+ egress, and there would be S(PE) such tunnels.
+
+ Note that there still remain 2*(S(PE) - 1) PE-to-PE P2P LSPs that are
+ carried through these tunnels.
+
+ Let's consider the number of LSPs handled at each node in the
+ network.
+
+ The PEs continue to handle the same number of PE-to-PE P2P LSPs, and
+ must also handle the MP2P LSPs. So:
+
+ L(PE) = 2*(S(PE) - 1) + S(PE)
+
+ But all P(n) nodes in the network only handle the MP2P LSP tunnels.
+ Nominally, this means that L(n) = S(PE) for all values of n. This
+ would appear to be a great success with the number of LSPs cut to
+ completely manageable levels.
+
+ However, the number of LSPs is not the only issue (although it may
+ have some impact for some of the scaling concerns listed in Section
+ 4). We are more interested in the amount of LSP state that is
+ maintained by an LSR. This reflects the amount of storage required
+ at the LSR, the amount of protocol processing, and the amount of
+ information that needs to be managed.
+
+ In fact, we were also interested in this measure of scalability in
+ the earlier sections of this document, but in those cases we could
+ see a direct correlation between the number of LSPs and the amount of
+ LSP state since transit LSPs had two pieces of state information (one
+ on the incoming and one on the outgoing interface), and ingress or
+ egress LSPs had just one piece of state.
+
+ We can quantify the amount of LSP state according to the number of
+ LSP segments managed by an LSR. So (as above), in the case of a P2P
+ LSP, an ingress or egress has one segment to maintain, while a
+ transit has two segments. Similarly, for an MP2P LSP, an LSR must
+ maintain one set of state information for each upstream segment
+ (which, we can assume, is in a one-to-one relationship with the
+ number of upstream neighbors) and exactly one downstream segment --
+ ingresses obviously have no upstream neighbors, and egresses have no
+ downstream segments.
+
+
+
+
+Yasukawa, et al. Informational [Page 31]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ So we can start again on our examination of the scaling properties of
+ MP2P LSPs using X(n) to represent the amount of LSP state held at
+ each P(n) node.
+
+8.3. Scaling Improvements for Snowflake Networks
+
+ At the PEs, there is only connectivity to one other network node: the
+ P(2) node. But note that if P2P LSPs need to be used to allow
+ disambiguation of data at the MP2P LSP egresses, then these P2P LSPs
+ are tunneled within the MP2P LSPs. So X(PE) is:
+
+ X(PE) = 2*(S(PE) - 1) if no disambiguation is required,
+
+ and
+
+ X(PE) = 4*(S(PE) - 1) if disambiguation is required.
+
+ Each P(2) node has M(2) downstream PEs. The P(2) sees a single MP2P
+ LSP targeted at each downstream PE with one downstream segment (to
+ that PE) and M(2) - 1 upstream segments from the other subtended PEs.
+ Additionally, each of these LSPs has an upstream segment from the one
+ upstream P(1). This gives a total of M(2)*(1 + M(2)) LSP segments.
+
+ There are also LSPs running from the subtended PEs to every other PE
+ in the network. There are S(PE) - M(2) such PEs, and the P(2) sees
+ one upstream segment for each of these from each subtended PE. It
+ also has one downstream segment for each of these LSPs. This gives
+ (M(2) + 1)*(S(PE) - M(2)) LSP segments.
+
+ Thus:
+
+ X(2) = M(2)*(1 + M(2)) + (M(2) + 1)*(S(PE) - M(2))
+ = S(PE)*(M(2) + 1)
+
+ Similarly, at each P(1) node there are M(1) downstream P(2) nodes and
+ so a total of M(1)*M(2) downstream PEs. Each P(1) is connected in a
+ full mesh with the other P(1) nodes and so has (S(1) - 1) neighbors.
+
+ The P(1) sees a single MP2P LSP targeted at each downstream PE. This
+ has one downstream segment (to the P(2) to which the PE is connected)
+ and M(1) - 1 upstream segments from the other subtended P(2) nodes.
+ Additionally, each of these LSPs has an upstream segment from each of
+ the P(1) neighbors. This gives a total number of LSP segments of
+ M(1)*M(2)*(M(1) + S(1) - 1).
+
+ There are also LSPs running from each of the subtended PEs to every
+ other PE in the network. There are S(PE) - M(1)M(2) such PEs, and
+ the P(1) sees one upstream segment for each of these from each
+
+
+
+Yasukawa, et al. Informational [Page 32]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ subtended P(2) (since the aggregation from the subtended PEs has
+ already happened at the P(2) nodes). It also has one downstream
+ segment to the appropriate next hop P(1) neighbor for each of these
+ LSPs. This gives (M(1) + 1)*(S(PE) - M(1)*M(2)) LSP segments.
+
+ Thus:
+
+ X(1) = M(1)*M(2)*(M(1) + S(1) - 1) +
+ (M(1) + 1)*(S(PE) - M(1)*M(2))
+ = M(1)*M(2)*(S(1) - 2) + S(PE)*(M(1) + 1)
+
+ So, for example, with S(1) = 10, M(1) = 10, and M(2) = 10, we see:
+
+ S(PE) = 1000
+ S(2) = 100
+ X(PE) = 3996 (or 1998)
+ X(2) = 11000
+ X(1) = 11800
+
+ And similarly, with S(1) = 20, M(1) = 20, and M(2) = 5, we see:
+
+ S(PE) = 2000
+ S(2) = 400
+ X(PE) = 5996 (or 2998)
+ X(2) = 12000
+ X(1) = 39800
+
+8.3.1. Comparison with Other Scenarios
+
+ For comparison with the examples in Sections 5 and 6, we need to
+ convert those LSP-based figures to our new measure of LSP state.
+
+ Observe that each LSP in Sections 5 and 6 generates two state units
+ at a transit LSR and one at an ingress or egress. So we can provide
+ conversions as follows:
+
+ Section 5 (flat snowflake network)
+
+ L(PE) = 2*(S(PE) - 1)
+ L(2) = M(2)*(2*S(PE) - M(2) - 1)
+ L(1) = M(1)*M(2)*(2*S(PE) - M(2)*(M(1) + 1))
+ X(PE) = 2*(S(PE) - 1)
+ X(2) = 2*M(2)*(2*S(PE) - M(2) - 1)
+ X(1) = 2*M(1)*M(2)*(2*S(PE) - M(2)*(M(1) + 1))
+
+ For the example with S(1) = 10, M(1) = 10, and M(2) = 10, this
+ gives a comparison table as follows:
+
+
+
+
+Yasukawa, et al. Informational [Page 33]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Count | Unmodified | MP2P
+ ------+-------------+----------
+ X(PE) | 1998 | 3996
+ X(2) | 39780 | 11000
+ X(1) | 378000 | 11800
+
+ Clearly, this technique is a significant improvement over the flat
+ network within the core of the network, although the PEs are more
+ heavily stressed if disambiguation is required.
+
+ Section 6.1 (two-layer hierarchy snowflake network)
+
+ L(PE) = 2*(S(PE) - 1)
+ L(2) = M(2)*(2*S(PE) - M(2) - 1) + 2*(S(2) - 1)
+ L(1) = M(1)*(2*S(2) - M(1) - 1)
+ X(PE) = 2*(S(PE) - 1)
+ X(2) = 2*M(2)*(2*S(PE) - M(2) - 1) + 2*(S(2) - 1)
+ X(1) = 2*M(1)*(2*S(2) - M(1) - 1)
+
+ Note that in the computation of X(2) the hierarchical LSPs only add
+ one state at each P(2) node.
+
+ For the same example with S(1) = 10, M(1) = 10, and M(2) = 10, this
+ gives a comparison table as follows:
+
+ Count | 2-Layer | MP2P
+ | Hierarchy |
+ ------+-------------+----------
+ X(PE) | 1998 | 3996
+ X(2) | 39978 | 11000
+ X(1) | 3780 | 11800
+
+ We can observe that the MP2P model is better at P(2), but the
+ hierarchical model is better at P(1).
+
+ In fact, this comparison can be generalized to observe that the MP2P
+ model produces its best effects toward the edge of the network, while
+ the hierarchical model makes most impression at the core. However,
+ the requirement for disambiguation of P2P LSPs tunneled within the
+ MP2P LSPs does cause a double burden at the PEs.
+
+8.4. Scaling Improvements for Ladder Networks
+
+ MP2P LSPs applied just within the ladder will not make a significant
+ difference, but applying MP2P for all LSPs and at all nodes makes a
+ very big difference without requiring any further configuration.
+
+
+
+
+
+Yasukawa, et al. Informational [Page 34]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ LSP state at a spar-node may be divided into those LSPs' segments
+ that enter or leave the spar-node due to subtended PEs (local LSP
+ segments), and those that enter or leave the spar-node due to remote
+ PEs (remote segments).
+
+ The local segments may be counted as:
+
+ o E LSPs targeting local PEs
+ o (S(1)-1)*E*M(1) LSPs targeting remote PEs
+
+ The remote segments may be counted as:
+
+ o (S(1)-1)*E outgoing LSPs targeting remote PEs
+ o <= 3*S(1)*E incoming LSPs targeting any PE (there are precisely
+ P(1) nodes attached to any other P(1) node)
+
+ Hence, using X(1) as a measure of LSP state rather than a count of
+ LSPs, we get:
+
+ X(1) <= E + (S(1)-1)*E*M(1) + (S(1)-1)*E + 3*S(1)*E
+ <= (4 + M(1))*S(1)*E - M(1)*E
+
+ The number of LSPs at the P(2) nodes is also improved. We may also
+ count the LSP state in the same way so that there are:
+
+ o M(2) LSPs targeting local PEs,
+ o M(2)*(S(1)*E) LSPs from local PEs to all other PEs, and
+ o S(1)*E - M(2) LSPs to remote PEs.
+
+ So using X(2) as a measure of LSP state and not a count of LSPs, we
+ have:
+
+ X(2) = M(2) + M(2)*(S(1)*E) + S(1)*E - M(2)
+ = (M(2) + 1)*S(1)*E
+
+ Our examples from Section 5.2 give us the following numbers:
+
+ With S(1) = 6, M(1) = 10, and M(2) = 17, we see:
+
+ E = 170
+ S(PE) = 1020
+ X(PE) = 2038
+ X(2) = 18360
+ X(1) <= 12580
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 35]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Alternatively, with S(1) = 10, M(1) = 10, and M(2) = 20, we see:
+
+ E = 200
+ S(PE) = 2000
+ X(PE) = 3998
+ X(2) = 42000
+ X(1) <= 26000
+
+8.4.1. Comparison with Other Scenarios
+
+ The use of MP2P compares very favorably with all scaling scenarios.
+ It is the only technique able to reduce the value of X(2), and it
+ does this by a factor of almost two. The impact on X(1) is better
+ than everything except the three-level hierarchy.
+
+ The following table provides a quick cross-reference for the figures
+ for the example ladder networks. Note that the previous figures are
+ modified to provide counts of LSP state rather than LSP numbers.
+ Again, each LSP contributes one state at its end points and two
+ states at transit nodes.
+
+ Thus, for the all cases we have:
+
+ X(PE) = 2*(S(PE) - 1) or
+ X(PE) = 4*(S(PE) - 1) if disambiguation is required.
+
+ In the unmodified (flat) case, we have:
+
+ X(2) = 2*(M(2)*(2*S(PE) - M(2) - 1))
+ X(1) = 2*(M(1)*M(2)*(2*S(PE) - M(2)*(M(1) + 1)))
+
+ In the two-level hierarchy, we have:
+
+ X(2) = 2*(2*M(2)*(S(PE) - 1) - M(2)*(M(2) - 1))
+ X(1) = S(1)*S(1) + 2*S(1) + 4*E*E*(S(1) - 1) - 2*E*M(2) - 2
+
+ In the three-level hierarchy, we have:
+
+ X(2) = 2*(2*M(2)*(S(PE) - 1) - M(2)*(M(2) - 1)) + 2*(S(1)*M(1) - 1)
+ X(1) = S(1)*S(1) + 2*S(1) + 4*M(1)*M(1)*S(1) - 2*M(1)(M(1) + 1) - 2
+
+ Example A: S(1) = 6, M(1) = 10, and M(2) = 17
+ Example B: S(1) = 10, M(1) = 10, and M(2) = 20
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 36]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ Example| Count | Unmodified | 2-Level | 3-Level | MP2P
+ | | | Hierarchy | Hierarchy |
+ -------+-------+------------+------------+-------------+-------
+ A | X(2) | 68748 | 68748 | 68866 | 18360
+ | X(1) | 1554820 | 572266 | 2226 | 12580
+ -------+-------+------------+------------+-------------+-------
+ B | X(2) | 159160 | 159160 | 159358 | 42000
+ | X(1) | 5032000 | 1433998 | 3898 | 26000
+
+8.4.2. LSP State Compared with LSP Numbers
+
+ Recall that in Section 8.3, the true benefit of MP2P was analyzed
+ with respect to the LSP segment state required, rather than the
+ actual number of LSPs. This proved to be a more accurate comparison
+ of the techniques because the MP2P LSPs require state on each branch
+ of the LSP, so the saving is not linear with the reduced number of
+ LSPs.
+
+ A similar analysis could be performed here for the ladder network.
+ The net effect is that it increases the state by an order of two for
+ all transit LSPs in the P2P models, and by a multiplier equal to the
+ degree of a node in the MP2P model.
+
+ A rough estimate shows that, as with snowflake networks, MP2P
+ provides better scaling than the one-level hierarchical model and is
+ considerably better at the core. But MP2P compares less will with
+ the two-level hierarchy especially in the core.
+
+8.5. Issues with MP2P LSPs
+
+ The biggest challenges for MP2P LSPs are the provision of support in
+ the control and data planes. To some extent, support must also be
+ provided in the management plane.
+
+ Control plane support is just a matter of defining the protocols and
+ procedures [MP2P-RSVP], although it must be clearly understood that
+ this will introduce some complexity to the control plane.
+
+ Hardware issues may be a little more tricky. For example, the
+ capacity of the upstream segments must never (allowing for
+ statistical over-subscription) exceed the capacity of the downstream
+ segment. Similarly, data planes must be equipped with sufficient
+ buffers to handle incoming packet collisions.
+
+ The management plane will be impacted in several ways. Firstly, the
+ management applications will need to handle LSPs with multiple
+ senders. This means that, although the applications need to process
+ fewer LSPs, they will be more complicated and will, in fact, need to
+
+
+
+Yasukawa, et al. Informational [Page 37]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ process the same number of ingresses and egresses. Other issues like
+ diagnostics and OAM would also need to be enhanced to support MP2P,
+ but might be borrowed heavily from LDP networks.
+
+ Lastly, note that when the MP2P solution is used, the receiver (the
+ single egress PE of an MP2P tunnel) cannot use the incoming label as
+ an indicator of the source of the data. Contrast this with P2P LSPs.
+ Depending on deployment, this might not be an issue since the PE-PE
+ connectivity may in any case be a tunnel with inner labels to
+ discriminate the data flows.
+
+ In other deployments, it may be considered necessary to include
+ additional PE-PE P2P LSPs and tunnel these through the MP2P LSPs.
+ This would require the PEs to support twice as many LSPs. Since PEs
+ are not usually as fully specified as P-routers, this may cause some
+ concern; however, the use of penultimate hop popping on the MP2P LSPs
+ might help to reduce this issue.
+
+ In all cases, care must be taken not to confuse the reduction in the
+ number of LSPs with a reduction in the LSP state that is required.
+ In fact, the discussion in Section 8.3 is slightly optimistic since
+ LSP state toward the destination will probably need to include sender
+ information and so will increase depending on the number of senders
+ for the MP2P LSP. Section 8.4, on the other hand, counts LSP state
+ rather than LSPs. This issue is clearly dependent on the protocol
+ solution for MP2P RSVP-TE, which is out of scope for this document.
+
+ MPLS Fast Reroute (FRR) [RFC4090] is an attractive scheme for
+ providing rapid local protection from node or link failures. Such a
+ scheme has, however, not been designed for MP2P at the time of
+ writing, so it remains to be seen how practical it could be,
+ especially in the case of the failure of a merge node. Initial
+ examination of this case suggests that FRR would not be a problem for
+ MP2P, given that each flow can be handled separately.
+
+ As a final note, observe that the MP2P scenario presented in this
+ document may be optimistic. MP2P LSP merging may be hard to achieve
+ between LSPs with significantly different traffic and Quality of
+ Service (QoS) parameters. Therefore, it may be necessary to increase
+ the number of MP2P LSPs arriving at an egress.
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 38]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+9. Combined Models
+
+ There is nothing to prevent the combination of hierarchical and MP2P
+ solutions within a network.
+
+ Note that if MP2P LSPs are tunneled through P2P FA LSPs across the
+ core, none of the benefit of LSP merging is seen for the hops during
+ which the MP2P LSPs are tunneled.
+
+ On the other hand, it is possible to construct solutions where MP2P
+ FA LSPs are constructed within the network, resulting in savings from
+ both modes of operation.
+
+10. An Alternate Solution
+
+ A simple solution to reducing the number of LSP tunnels handled by
+ any node in the network has been proposed. In this solution it is
+ observed that part of the problem is caused purely by the total
+ number of LSP in the network, and that this is a function of the
+ number of PEs since a full mesh of PE-PE LSPs is required. The
+ conclusion of this observation is to move the tunnel end-points
+ further into the network so that, instead of having a full mesh of
+ PE-PE tunnels, we have only a full mesh of P(n)-P(n) tunnels.
+
+ Obviously, there is no change in the physical network topology, so
+ the PEs remain subtended to the P(n) nodes, and the consequence is
+ that there is no TE on the links between PEs and P(n) nodes.
+
+ In this case, we have already done the hard work for computing the
+ number of LSPs in the previous sections. The power of the analysis
+ in the earlier sections is demonstrated by its applicability to this
+ new model -- all we need to do is make minor changes to the formulae.
+ This is most simply done by removing a layer from the network. We
+ introduce the term "tunnel end-point" (TEP) and replace the P(n)
+ nodes with TEPs. Thus, the example of a flat snowflake network in
+ Figure 3 becomes as shown in Figure 7. Corresponding changes can be
+ made to all of the sample topologies.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 39]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ PE PE PE PE PE PE
+ \ \/ \/ /
+ PE--TEP TEP TEP TEP--PE
+ \ | | /
+ \| |/
+ PE--TEP---P(1)------P(1)---TEP--PE
+ / \ / \
+ PE \ / PE
+ \/
+ P(1)
+ /|\
+ / | \
+ / | \
+ PE--TEP TEP TEP--PE
+ / /\ \
+ PE PE PE PE
+
+ Figure 7 : An Example Snowflake Network with Tunnel End-Points
+
+ To perform the scaling calculations we need only replace the PE
+ counts in the formulae with TEP counts, and observe that there is one
+ fewer layer in the network. For example, in the flat snowflake
+ network shown in Figure 7, we can see that the number of LSPs seen at
+ a TEP is:
+
+ L(TEP) = 2*(S(TPE) - 1)
+
+ In our sample networks, S(TPE) is typically of the order of 50 or 100
+ (the original values of S(2)), so L(TEP) is less than 200, which is
+ quite manageable.
+
+ Similarly, the number of LSPs handled by a P(1) node can be derived
+ from the original formula for the number of LSPs seen at a P(2) node,
+ since all we have done is reduce n in P(n) from 2 to 1. So our new
+ formula is:
+
+ L(1) = M(1)*(2*S(TEP) - M(1) - 1)
+
+ With figures for M(1) = 10 and S(TEP) = 100, this gives us L(1) =
+ 1890. This is also very manageable.
+
+10.1. Pros and Cons of the Alternate Solution
+
+ On the face of it, this alternate solution seems very attractive.
+ Simply by contracting the edges of the tunnels into the network, we
+ have shown a dramatic reduction in the number of tunnels needed, and
+ there is no requirement to apply any additional scaling techniques.
+
+
+
+
+Yasukawa, et al. Informational [Page 40]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ But what of the PE-P(n) links? In the earlier sections of this
+ document, we have assumed that there was some requirement for PE-PE
+ LSPs with TE properties that extended to the PE-P(n) links at both
+ ends of each LSP. That means that there was a requirement to provide
+ reservation-based QoS on those links, to be able to discriminate
+ traffic flows for priority-based treatment, and to be able to
+ distinguish applications and sources that send data based on the LSPs
+ that carry the data.
+
+ It might be argued that, since the PE-P(n) links do not offer any
+ routing options (each such link provides the only access to the
+ network for a PE), most of the benefits of tunnels are lost on these
+ peripheral links. However, TE is not just about routing. Just as
+ important are the abilities to make resource reservations, to
+ prioritize traffic, and to discriminate between traffic from
+ different applications, customers, or VPNs.
+
+ Furthermore, in multihoming scenarios where each PE is connected to
+ more than one P(n) or where a PE has multiple links to a single P(n),
+ there may be a desire to pre-select the link to be used and to direct
+ the traffic to that link using a PE-PE LSP. Note that multihoming
+ has not been considered in this document.
+
+ Operationally, P(n)-P(n) LSPs offer the additional management
+ overhead that is seen for hierarchical LSPs described in Section 6.
+ That is, the LSPs have to be configured and established through
+ additional configuration or management operations that are not
+ carried out at the PEs. As described in Section 6, automesh
+ [RFC4972] could be used to ease this task. But it must be noted
+ that, as mentioned above, some of the key uses of tunnels require
+ that traffic is classified and placed in an appropriate tunnel
+ according to its traffic class, end-points, originating application,
+ and customer (such as client VPN). This information may not be
+ readily available for each packet at the P(n) nodes since it is PE-
+ based information. Of course, it is possible to conceive of
+ techniques to make this information available, such as assigning a
+ different label for each class of traffic, but this gives rise to the
+ original problem of larger numbers of LSPs.
+
+ Our conclusion is, therefore, that this alternate technique may be
+ suitable for the general distribution of traffic based solely on the
+ destination, or on a combination of the destination and key fields
+ carried in the IP header. In this case, it can provide a very
+ satisfactory answer to the scaling issues in an MPLS-TE network. But
+ if more sophisticated packet classification and discrimination is
+ required, this technique will make the desired function hard to
+
+
+
+
+
+Yasukawa, et al. Informational [Page 41]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ achieve, and the trade-off between scaling and feature-level will
+ swing too far towards solving the scaling issue at the expense of
+ delivery of function to the customer.
+
+11. Management Considerations
+
+ The management issues of the models presented in this document have
+ been discussed in-line. No one solution is without its management
+ overhead.
+
+ Note, however, that scalability of management tools is one of the
+ motivators for this work and that network scaling solutions that
+ reduce the active management of LSPs at the cost of additional effort
+ to manage the more static elements of the network represent a
+ benefit. That is, it is worth the additional effort to set up MP2P
+ or FA LSPs if it means that the network can be scaled to a larger
+ size without being constrained by the management tools.
+
+ The MP2P technique may prove harder to debug through OAM methods than
+ the FA LSP approach.
+
+12. Security Considerations
+
+ The techniques described in this document use existing or yet-to-be-
+ defined signaling protocol extensions and are subject to the security
+ provided by those extensions. Note that we are talking about
+ tunneling techniques used within the network and that both approaches
+ are vulnerable to the creation of bogus tunnels that deliver data to
+ an egress or consume network resources.
+
+ The fact that the MP2P technique may prove harder to debug through
+ OAM methods than the FA LSP approach is a security concern since it
+ is important to be able to detect misconnections.
+
+ General issues of the relationship between scaling and security are
+ covered in Section 1.1, but the details are beyond the scope of this
+ document. Readers are referred to [MPLS-SEC] for details of MPLS
+ security techniques.
+
+13. Recommendations
+
+ The analysis in this document suggests that the ability to signal
+ MP2P MPLS-TE LSPs is a desirable addition to the operator's MPLS-TE
+ toolkit.
+
+ At this stage, no further recommendations are made, but it would be
+ valuable to consult more widely to discover:
+
+
+
+
+Yasukawa, et al. Informational [Page 42]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ - The concerns of other service providers with respect to network
+ scalability.
+
+ - More opinions on the realistic constraints to the network
+ parameters listed in Section 4.
+
+ - Desirable values for the cost-effectiveness of the network
+ (parameter K).
+
+ - The applicability, manageability, and support for the two
+ techniques described.
+
+ - The feasibility of combining the two techniques, as discussed in
+ Section 9.
+
+ - The level of concern over the loss of functionality that would
+ occur if the alternate solution described in Section 10 was
+ adopted.
+
+14. Acknowledgements
+
+ The authors are grateful to Jean-Louis Le Roux for discussions and
+ review input. Thanks to Ben Niven-Jenkins, JP Vasseur, Loa
+ Andersson, Anders Gavler, Ben Campbell, and Tim Polk for their
+ comments. Thanks to Dave Allen for useful discussion of the math.
+
+15. Normative References
+
+ [RFC4206] Kompella, K. and Y. Rekhter, "Label Switched Paths (LSP)
+ Hierarchy with Generalized Multi-Protocol Label Switching
+ (GMPLS) Traffic Engineering (TE)", RFC 4206, October
+ 2005.
+
+16. Informative References
+
+ [RFC2961] Berger, L., Gan, D., Swallow, G., Pan, P., Tommasi, F.,
+ and S. Molendini, "RSVP Refresh Overhead Reduction
+ Extensions", RFC 2961, April 2001.
+
+ [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
+ and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
+ Tunnels", RFC 3209, December 2001.
+
+ [RFC3270] Le Faucheur, F., Wu, L., Davie, B., Davari, S., Vaananen,
+ P., Krishnan, R., Cheval, P., and J. Heinanen, "Multi-
+ Protocol Label Switching (MPLS) Support of Differentiated
+ Services", RFC 3270, May 2002.
+
+
+
+
+Yasukawa, et al. Informational [Page 43]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+ [RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label
+ Switching (GMPLS) Signaling Resource ReserVation
+ Protocol-Traffic Engineering (RSVP-TE) Extensions", RFC
+ 3473, January 2003.
+
+ [RFC3985] Bryant, S., Ed., and P. Pate, Ed., "Pseudo Wire Emulation
+ Edge-to-Edge (PWE3) Architecture", RFC 3985, March 2005.
+
+ [RFC4090] Pan, P., Ed., Swallow, G., Ed., and A. Atlas, Ed., "Fast
+ Reroute Extensions to RSVP-TE for LSP Tunnels", RFC 4090,
+ May 2005.
+
+ [RFC4110] Callon, R. and M. Suzuki, "A Framework for Layer 3
+ Provider-Provisioned Virtual Private Networks (PPVPNs)",
+ RFC 4110, July 2005.
+
+ [RFC4972] Vasseur, JP., Ed., Leroux, JL., Ed., Yasukawa, S.,
+ Previdi, S., Psenak, P., and P. Mabbey, "Routing
+ Extensions for Discovery of Multiprotocol (MPLS) Label
+ Switch Router (LSR) Traffic Engineering (TE) Mesh
+ Membership", RFC 4972, July 2007.
+
+ [RFC5036] Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed.,
+ "LDP Specification", RFC 5036, October 2007.
+
+ [MP2P-RSVP] Yasukawa, Y., "Supporting Multipoint-to-Point Label
+ Switched Paths in Multiprotocol Label Switching Traffic
+ Engineering", Work in Progress, October 2008.
+
+ [MPLS-SEC] Fang, L., Ed., "Security Framework for MPLS and GMPLS
+ Networks", Work in Progress, November 2008.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 44]
+
+RFC 5439 Scaling in MPLS-TE February 2009
+
+
+Authors' Addresses
+
+ Seisho Yasukawa
+ NTT Corporation
+ 9-11, Midori-Cho 3-Chome
+ Musashino-Shi, Tokyo 180-8585 Japan
+ Phone: +81 422 59 4769
+ EMail: s.yasukawa@hco.ntt.co.jp
+
+ Adrian Farrel
+ Old Dog Consulting
+ EMail: adrian@olddog.co.uk
+
+ Olufemi Komolafe
+ Cisco Systems
+ 96 Commercial Street
+ Edinburgh
+ EH6 6LX
+ United Kingdom
+ EMail: femi@cisco.com
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Yasukawa, et al. Informational [Page 45]
+