1 © 1999, cisco systems, inc. mosaddaq turabi mpls traffic engineering -session a- (mpls bootcamp)...

100
1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic MPLS Traffic Engineering Engineering -SESSION A- -SESSION A- (MPLS BOOTCAMP) (MPLS BOOTCAMP) Mosaddaq Turabi Mosaddaq Turabi ([email protected]) ([email protected])

Upload: conrad-worthing

Post on 14-Dec-2015

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

1© 1999, Cisco Systems, Inc. Mosaddaq Turabi

MPLS Traffic MPLS Traffic EngineeringEngineering

-SESSION A--SESSION A-

(MPLS BOOTCAMP)(MPLS BOOTCAMP)

Mosaddaq Turabi Mosaddaq Turabi ([email protected])([email protected])

Page 2: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

2MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

What is Traffic Engineering?What is Traffic Engineering?

• “Traffic Engineering is the process of controlling how traffic flows through one’s network so as to optimize resource utilization and network performance”

(Global Crossing, IEEE)(Global Crossing, IEEE)

Page 3: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

3MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Traffic Engineering: MotivationsTraffic Engineering: Motivations

• Reduce the overall cost of operations by more efficient use of bandwidth resources

– by preventing a situation where some parts of a service provider network are over-utilized (congested), while other parts under-utilized

The ultimate goal is cost saving !cost saving !

Page 4: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

4MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

The “Overlay” SolutionThe “Overlay” Solution

• Routing at layer 2 (ATM or FR) is used for traffic engineering

• Full mesh of VCs between routers; each router has a direct VC to every other router in the mesh

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L3L3

L2L2

L2L2

L2L2

L2L2

L2L2

L2L2

L3L3

L3L3

L3L3

L3L3 L3L3

Physical Logical

Page 5: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

5MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Traffic Engineering with OverlayTraffic Engineering with Overlay

R1R1

R2R2

R4R4

R3R3

TRAFFIC ENGINEERING

AT LAYER 2

R1R1

L2L2

L2L2 L2L2

L2L2R2R2

R4R4 R3R3

R1R1

L2L2

L2L2 L2L2

L2L2R2R2

R4R4 R3R3

R1R1

R2R2

R4R4

R3R3

R1’s VIEW OF THE NETWORK

AT LAYER3

Page 6: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

6MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

““Overlay” Solution: DrawbacksOverlay” Solution: Drawbacks

• Extra network devices (cost)

• More complex network management (cost)

– two-level network without integrated network management

– additional training, technical support, field engineering

• IGP routing scalability issue for meshes

• Additional bandwidth overhead (“cell tax”)

Page 7: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

7MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Issues with IGP RoutingIssues with IGP Routing

• IGPs forward packets based on shortest path (metric).

• Flows from multiple sources may go over some common link(s) causing congestion.

• Alternate longer and underutilized path will not be used.

• IGP metric change may have side effects.

Page 8: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

8MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Traffic Engineering With Layer 3Traffic Engineering With Layer 3R2

R3

R1

IP routing: destination-based least-cost routingIP routing: destination-based least-cost routing

under-utilized alternate pathunder-utilized alternate path

Path for R2 to R3 trafficPath for R2 to R3 traffic

Path for R1 to R3 trafficPath for R1 to R3 traffic

Page 9: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

9MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Traffic Engineering with Layer 3Traffic Engineering with Layer 3

R2

R3

R1

IP routing: destination-based least-cost routingIP routing: destination-based least-cost routing

under-utilized alternate pathunder-utilized alternate path

Path for R2 to R3 trafficPath for R2 to R3 traffic

Path for R1 to R3 trafficPath for R1 to R3 traffic

Page 10: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

10MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Traffic Engineering with Layer 3 Traffic Engineering with Layer 3 What is Missing ?What is Missing ?

• Path computation based just on IGP metric is not enough

• Packet forwarding in IP network is done on a hop by hop basis, derived from IGP

• Support for “explicit” routing (aka “source routing”) is not available

Page 11: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

11MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Routing Solution to Traffic Routing Solution to Traffic Engineering Engineering

• Construct routes for traffic streams within a service provider in such a way as to avoids causing some parts of the provider’s network to be over-utilized, while others parts remain under-utilized

R2

R3

R1

Page 12: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

12© 1999, Cisco Systems, Inc. Mosaddaq Turabi

MPLS Traffic MPLS Traffic EngineeringEngineering

12© 1999, Cisco Systems, Inc.

Page 13: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

13MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

TE - KEY COMPONENTSTE - KEY COMPONENTS

- Be able to set up a LSP based on BW availability (RSVP)

- Be able to set up a LSP based on user defined policies (Explicit Path or Link resource-class attribute string)

- Flooding of resource availability and policies to all the routers in the network (IS-IS or OSPF)

- Be able to run C-SPF based on constraints defined by a user

- MPLS as the forwarding mechanism

Page 14: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

14MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

TE - KEY COMPONENTSTE - KEY COMPONENTS

R2

R3

R1

- RSVP (extensions) on all links to reserve and monitor reservations per LSP plus Label distribution

- Resource-class attribute string (policy) defined on all links

- IS-IS or OSPF (extensions) to flood policy and resource availability

- C-SPF to find the path meeting the constraints

Page 15: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

15MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

TE - KEY COMPONENTSTE - KEY COMPONENTS

- TE tunnel (LSP) is initiated from the source (R1 and R2)

- Source of TE tunnel (LSP) is called “Head End” (R1 and R2)

- Destination of the TE tunnel (LSP) is called “Tail End” (R3)

- All the intermediate LSR are called “Mid Points”

- TE tunnel (LSP) is unidirectional and traffic flows from Head-end to the Tail-end

R2

R3

R1

Page 16: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

16MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

What is a “traffic trunk” ?What is a “traffic trunk” ?

• Aggregation of (micro) flows that are:

– forwarded along a common path (within a service provider)

– often from a POP to another POP

• Essential for scalability

D

A B

C

Page 17: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

17MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

TE basicsTE basics

• Traffic within a Service Provider as a collection of “POP to POP traffic trunks” with known bandwidth and policy requirements

• TE provides traffic trunk routing that meets the goal of Traffic Engineering

– via a combination of on-line and off-line procedures

Page 18: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

18© 1999, Cisco Systems, Inc. Mosaddaq Turabi

MPLS TE MPLS TE REQUIREMENTSREQUIREMENTS

18© 1999, Cisco Systems, Inc.

Page 19: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

19MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

RequirementsRequirements

• Differentiating traffic trunks:

– large, ‘critical’ traffic trunks must be well routed in preference to other trunks

• Handling failures:

– automated re-routing in the presence of failures

• Pre-configured paths:

– for use in conjunction with the off-line route computation procedures

• Support of multiple Classes of Service

Page 20: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

20MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Requirements (cont.)Requirements (cont.)

• Constraining sub-optimality:

– should re-optimize on new/restored bandwidth• in a non-disruptive fashion - maintain the existing route until the new route is established, without any double counting

• Ability to “spread” traffic trunk across multiple Label Switched Paths (LSPs)

– could provide more efficient use of networking resources

• Ability to include/exclude certain links for certain traffic trunks

Page 21: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

21MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Design ConstraintsDesign Constraints

• Constrained to a single routing domain

– initially constrained to a single area

• Requires OSPF or IS-IS

• Unicast traffic

• Focus on supporting routing based on a combination of administrative + bandwidth constraints

Page 22: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

22© 1999, Cisco Systems, Inc. Mosaddaq Turabi

Trunk AttributesTrunk Attributes

22© 1999, Cisco Systems, Inc.

Page 23: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

23MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Trunk AttributesTrunk Attributes

• Configured at the head-end of the trunk

• Bandwidth

• Priorities

– setup priority: priority for taking a resource

– holding priority: priority for holding a resource

Page 24: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

24MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Trunk AttributesTrunk Attributes

• Ordered list of Path Options

– possible administratively specified paths (via an off-line central server) - {explicit list}

– Constrained-based dynamically computed paths based on combo of BW and policies

• Re-optimization

– each path option is enabled or not for re-optimization, interval given in seconds.

– Max 1 week (7*24*3600), Disable 0, Def 1h.

Page 25: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

25MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Trunk AttributesTrunk Attributes

• Resource class affinity (Policy)

– supports the ability to include/exclude certain links for certain traffic trunks based on a user-defined Policy

– Tunnel is characterized by a

• 32-bit resource-class affinity bit string

• 32-bit resource-class mask (0 = don’t care, 1 = care)

– Link is characterized by a 32-bit resource-class attribute string

– Default-value of tunnel/link bits is 0

– Default value of the tunnel mask = 0x0000FFFF

Page 26: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

26MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 1: 4-bit String, DefaultExample 1: 4-bit String, Default

• Trunk A to B:

– tunnel = 0000, t-mask = 0011

• ADEB and ADCEB are possible

A B

0000

0000 0000

00000000

C

D E

Page 27: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

27MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 1a: 4-Bit StringExample 1a: 4-Bit String

• Setting a link bit in the lower half drives all tunnels off the link, except those specially configured

• Trunk A to B:

– tunnel = 0000, t-mask = 0011

• Only ADCEB is possible

A B

0000

0000 0000

00100000

C

D E

Page 28: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

28MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 1b: 4-Bit StringExample 1b: 4-Bit String

• A specific tunnel can then be configured to allow such links by clearing the bit in its affinity attribute mask

• Trunk A to B:

– tunnel = 0000, t-mask = 0001

• Again, ADEB and ADCEB are possible

A B

0000

0000 0000

00100000

C

D E

Page 29: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

29MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 1c: 4-Bit StringExample 1c: 4-Bit String

• A specific tunnel can be restricted to only such links by instead turning on the bit in its affinity attribute bits

• Trunk A to B:

– tunnel = 0010, t-mask = 0011

• No path is possible

A B

0000

0000 0000

00100000

C

D E

Page 30: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

30MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 2a: 4-Bit StringExample 2a: 4-Bit String

• Setting a link bit in the upper half drives has no immediate effect

• Trunk A to B:

– tunnel = 0000, t-mask = 0011

• ADEB and ADCEB are both possible

A B

0000

0000 0000

01000000

C

D E

Page 31: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

31MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 2b: 4-Bit StringExample 2b: 4-Bit String

• A specific tunnel can be driven off the link by setting the bit in its mask

• Trunk A to B:

– tunnel = 0000, t-mask = 0111

• Only ADCEB is possible

A B

0000

0000 0000

01000000

C

D E

Page 32: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

32MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Example 2c: 4-Bit StringExample 2c: 4-Bit String

• A specific tunnel can be restricted to only such links

• Trunk A to B:

– tunnel = 0100, t-mask = 0111

• No path is possible

A B

0000

0000 0000

01000000

C

D E

Page 33: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

33MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Trunk AttributeTrunk Attribute Resource Class Affinity (Policy)Resource Class Affinity (Policy)

• The user defines the semantics:

– this bit/mask says “low-delay path excluded”

– this bit/mask says “use only links 0C-3 or higher”

– this bit/mask says “use only links in region 1,2,3”

Page 34: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

34© 1999, Cisco Systems, Inc. Mosaddaq Turabi

Link Attributes and Link Attributes and Their FloodingTheir Flooding

34© 1999, Cisco Systems, Inc.

Page 35: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

35MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Link Resource AttributesLink Resource Attributes

• Resource attributes are configured on every link in a network

– Bandwidth

– Link Attributes

– TE-specific link metric

Page 36: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

36MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Link Resource AttributesLink Resource Attributes

• Resource attributes are flooded throughout the network

– Bandwidth per priority (0-7)

– Link Attributes (Policy)

– TE-specific link metric

Page 37: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

37MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Per-Priority Available BWPer-Priority Available BW

DT=0 Link L, BW=100 D advertises: AB(0)=100=…= AB(7)=100

AB(i) = “Available Bandwidth at priority I”

DT=2 Link L, BW=100 D advertises: AB(0)=AB(1)=AB(2)=100

AB(3)=AB(4)=…=AB(7)=70

T=1 Set-up of a tunnel over L at priority=3 for 30 units

DT=4 Link L, BW=100

D advertises: AB(0)=AB(1)=AB(2)=100 AB(3)=AB(4)=70 AB(5)=AB(6)=AB(7)=40

T=3 Set-up of an additional tunnel over L at priority=5 for 30 units

Page 38: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

38MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Information DistributionInformation Distribution

• Re-use the flooding service from the Link-State IGP

– opaque LSA for OSPF• draft-katz-yeung-ospf-traffic-00.txt

– new wide TLV for IS-IS• draft-ietf-isis-traffic-00.txt

Page 39: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

39MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Information DistributionInformation Distribution

• Periodic (timer-based)

• On significant changes of available bandwidth (threshold scheme)

• On link configuration changes

• On LSP Setup failure

Page 40: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

40MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Periodic TimerPeriodic Timer

• Periodically, a node checks if the current TE status is the same as the one last broadcasted

• If different, it floods its updated TE Links status

Page 41: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

41MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Significant ChangeSignificant Change

• Each time a threshold is crossed, an update is sent

• Denser population as utilization increases

• Different thresholds for Up and Down (stabler)

50%

100%

70%85%92%

Update

Update

Page 42: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

42MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

LSP Setup FailureLSP Setup Failure

• Due to the threshold scheme, it is possible that one node thinks it can signal an LSP tunnel via node Z while in fact, Z does not have the required resources

• When Z receives the Resv message and refuses the LSP tunnel, it broadcasts an update of its status

Page 43: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

43© 1999, Cisco Systems, Inc. Mosaddaq Turabi

Constrained-Based Constrained-Based Computation (C-SPF)Computation (C-SPF)

43© 1999, Cisco Systems, Inc.

Page 44: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

44MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Constrained-Based RoutingConstrained-Based Routing

• “In general, path computation for an LSP may seek to satisfy a set of requirements associated with the LSP, taking into account a set of constraints imposed by administrative policies and the prevailing state of the network -- which usually relates to topology data and resource availability. Computation of an engineered path that satisfies an arbitrary set of constraints is referred to as "constraint based routing”.

Draft-li-mpls-igp-te-00.txt

Page 45: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

45MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path ComputationPath Computation

“On demand” by the trunk’s head-end:

– for a new trunk

– for an existing trunk whose (current) LSP failed

– for an existing trunk when doing re-optimization

Page 46: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

46MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path ComputationPath Computation

Input:

– configured attributes of traffic trunks originated at this router

– attributes associated with resources

• available from IS-IS or OSPF

– topology state information

• available from IS-IS or OSPF

Page 47: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

47MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path ComputationPath Computation

• Prune links if:

– insufficient resources (e.g., bandwidth)

– violates policy constraints

• Compute shortest distance path

– TE uses its own metric

– Tie-break: selects the path with the highest minimum bandwidth so far, then with the smallest hop-count

Page 48: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

48MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path ComputationPath Computation

Output:

– explicit route - expressed as a sequence of router IP addresses

• interface addresses for numbered links

• loopback address for unnumbered links

– used as an input to the path setup component

Page 49: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

49MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

C-SPF AlgorithmC-SPF Algorithm

• Prune off the links that do not have the required BW

• Prune off the links that do not have the required affinity

• Run a dijkstra on the remaining topology, optimised based on the IGP metric (or RRR metric if configured)

• If several paths are still available, then do the following to ultimately select a single path

– choose the path that maximize the following value V

• V of a path is the minimum of the value L computed for each link. L on a link is the available bw at the required priority.

• This rule helps loadbalancing tunnels on various paths

– If several paths are still available, then select the path with the smallest number of hops

– If several paths are still available, select a random one

Page 50: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

50MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

• Tunnel’s request:

– Priority 3, BW = 30 units,

– Policy string: 0000, mask: 0011

A B

0000

1000 0100

0000 0000

C

D E

10000010

G

BW(3)=60

BW(3)=50

BW(3)=80

BW(3)=20

BW(3)=50 BW(3)=70

BW(3)=80

BW/Policy ExampleBW/Policy Example

Page 51: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

51MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

• Tunnel’s request:

– Priority 3, BW = 30 units,

– Policy string: 0000, mask: 0011

A B

C

D E

G

BW(3)=60

BW(3)=80

BW(3)=80

BW(3)=50 BW(3)=40

BW(3)=80

Tightest Constraint: 40

Tightest Constraint: 60

Maximizing the Tightest ConstraintMaximizing the Tightest Constraint

Page 52: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

52MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Load-Balancing TunnelsLoad-Balancing Tunnels

• all tunnels require 10

A B

C

D E

G

BW(3)=100

BW(3)=200

BW(3)=100

BW(3)=100 BW(3)=100

BW(3)=200

Page 53: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

53MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Load-Balancing TunnelsLoad-Balancing Tunnels

• all tunnels require 10

A B

C

D E

G

BW(3)=90

BW(3)=190

BW(3)=90

BW(3)=100 BW(3)=100

BW(3)=190

Page 54: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

54MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Load-Balancing TunnelsLoad-Balancing Tunnels

• all tunnels require 10

A B

C

D E

G

BW(3)=90

BW(3)=180

BW(3)=90

BW(3)=90 BW(3)=90

BW(3)=180

Page 55: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

55MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Load-Balancing TunnelsLoad-Balancing Tunnels

• all tunnels require 10

A B

C

D E

G

BW(3)=80

BW(3)=170

BW(3)=80

BW(3)=90 BW(3)=90

BW(3)=170

Page 56: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

56MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Load-Balancing TunnelsLoad-Balancing Tunnels

• all tunnels require 10

A B

C

D E

G

BW(3)=80

BW(3)=160

BW(3)=80

BW(3)=80 BW(3)=80

BW(3)=160

Page 57: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

57© 1999, Cisco Systems, Inc. Mosaddaq Turabi

MPLS as the Forwarding MPLS as the Forwarding MechanismMechanism

57© 1999, Cisco Systems, Inc.

Page 58: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

58MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

MPLS LabelsMPLS Labels

Two types of MPLS Labels:

Prefix Labels & Tunnel Labels

LDP RSVP

MP-BGP CR-LDP

PIM

Distributed by:

Page 59: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

59MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

MPLS as Forwarding EngineMPLS as Forwarding Engine

• Traffic engineering requires explicit routing capability

• IP supports only the destination-based routing

– not adequate for traffic engineering

• MPLS provides simple and efficient support for explicit routing

– label swapping

– separation of routing and forwarding

Page 60: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

60© 1999, Cisco Systems, Inc. Mosaddaq Turabi

LSP Tunnel SetupLSP Tunnel Setup

60© 1999, Cisco Systems, Inc.

Page 61: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

61MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

RSVP Extensions to RFC2205RSVP Extensions to RFC2205for LSP Tunnelsfor LSP Tunnels

• Downstream-on-demand label distribution

• Instantiation of explicit label switched paths

• Allocation of network resources (e.g., bandwidth) to explicit LSPs

• Re-routing of established LSP-tunnels in a smooth fashion using the concept of make-before-break

• Tracking of the actual route traversed by an LSP-tunnel

• Diagnostics on LSP-tunnels

• The concept of nodal abstraction

• Pre-emption options that are administratively controllable

draft-ietf-mpls-rsvp-lsp-tunnel-0X.txt

Page 62: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

62MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

RSVP Extensions: New ObjectsRSVP Extensions: New Objects

• LABEL_REQUESTLABEL_REQUEST found in Path

• LABELLABEL

• EXPLICIT_ROUTE EXPLICIT_ROUTE found in Path

• RECORD_ROUTERECORD_ROUTE found in Path, Resv

• SESSION_ATTRIBUTESESSION_ATTRIBUTE found in Path 0x01 Fast Re-route Capable, 0x02 Permit Merging, 0x04 May Reoptimize => SE

• New C-Types are also assigned for the SESSIONSESSION, SENDER_TEMPLATESENDER_TEMPLATE, FILTER_SPECFILTER_SPEC, FLOWSPECFLOWSPEC objects

• All new objects are optional with respect to RSVP (RFC2205)

• The LABEL_REQUEST and LABEL objects are mandatory with respect to MPLS LSP signalisation specification

Page 63: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

63MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

LSP SetupLSP Setup

• Initiated at the head-end of a trunk

• Uses RSVP (with extensions) to establish Label Switched Paths (LSPs) for traffic trunks

Page 64: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

64MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - ExamplePath Setup - Example

Setup: Path (ERO = R1->R2->R6->R7->R4->R9)Setup: Path (ERO = R1->R2->R6->R7->R4->R9)

Reply: Resv communicates labels andReply: Resv communicates labels andreserves bandwidth on each linkreserves bandwidth on each link

Pop

Label 22

Label 49Label 17

R8

R2

R6

R3

R4

R7

R1R5

R9

Label 32

Page 65: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

65MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More Details Path Setup - More Details

R2 R3R1

Path: Common_HeaderSession(R3-lo0, 0, R1-lo0)PHOP(R1-2)Label_Request(IP)ERO (R2-1, R3-1)Session_Attribute (S(3), H(3), 0x04) Sender_Template(R1-lo0, 00) Sender_Tspec(2Mbps)Record_Route(R1-2)

2 21 1

Page 66: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

66MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R1

Path State: Session(R3-lo0, 0, R1-lo0)PHOP(R1-2)Label_Request(IP)ERO (R2-1, R3-1)Session_Attribute (S(3), H(3), 0x04) Sender_Template(R1-lo0, 00) Sender_Tspec(2Mbps)Record_Route (R1-2)

2 1R2

21

Page 67: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

67MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R1

Path: Common_Header Session(R3-lo0, 0, R1-lo0)PHOP(R2-2)Label_Request(IP)ERO (R3-1)Session_Attribute (S(3), H(3), 0x04) Sender_Template(R1-lo0, 00) Sender_Tspec(2Mbps)Record_Route (R1-2, R2-2)

2 1R2

21

Page 68: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

68MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R12 1

R221

Path State: Session(R3-lo0, 0, R1-lo0)

PHOP(R2-2)Label_Request(IP)

ERO ()Session_Attribute (S(3), H(3), 0x04)

Sender_Template(R1-lo0, 00) Sender_Tspec(2Mbps)

Record_Route (R1-2, R2-2, R3-1)

Page 69: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

69MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Resv: Common_Header

Session(R3-lo0, 0, R1-lo0)PHOP(R3-1)

Style=SE FlowSpec(2Mbps)

Sender_Template(R1-lo0, 00) Label=POP

Record_Route(R3-1)

Path Setup - More DetailsPath Setup - More Details

R3R12 1

R221

Page 70: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

70MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R12 1

R221

Resv State Session(R3-lo0, 0, R1-lo0)

PHOP(R3-1)Style=SE

FlowSpec (2Mbps) Sender_Template(R1-lo0, 00)

OutLabel=POPIntLabel=5

Record_Route(R3-1)

Page 71: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

71MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R12 1

R221

Resv:Common_Header

Session(R3-lo0, 0, R1-lo0)PHOP(R2-1)

Style=SE FlowSpec (2Mbps)

Sender_Template(R1-lo0, 00) Label=5

Record_Route(R2-1, R3-1)

Page 72: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

72MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Setup - More DetailsPath Setup - More Details

R3R12 1

R221

Resv state:Session(R3-lo0, 0, R1-lo0)PHOP(R2-1)Style=SEFlowSpec (2Mbps) Sender_Template(R1-lo0, 00)Label=5Record_Route(R1-2, R2-1, R3-1)

Page 73: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

73MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Trunk Admission ControlTrunk Admission Control

• Performed by routers along a Label Switched Path (LSP)

• Determines if resources are available

• May tear down (existing) LSPs with a lower priority

• Does the local accounting

• Triggers IGP information distribution when resource thresholds are crossed

Page 74: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

74MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Link Admission ControlLink Admission Control

• Already invoked by Path message

– if BW is available, this BW is put aside in a waiting pool (waiting for the RESV msg)

– if this process required the pre-emption of resources, LCAC notified RSVP of the pre-emption which then sent PathErr and/or ResvErr for the preempted tunnel

– if BW is not available, LCAC says “No” to RSVP and a Path error is sent. A flooding of the node’s resource info is triggered, if needed

– “draft-ietf-mpls-rsvp-lsp-tunnel-02.txt”

Page 75: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

75MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path MonitoringPath Monitoring

• Use of new Record Route Object

– keep track of the exact tunnel path

– detects loops

Page 76: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

76MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Path Re-OptimizationPath Re-Optimization

• Looks for opportunities to re-optimize

– make before break

– no double counting of reservations

– via RSVP “shared explicit” style!

Page 77: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

77MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Non-Disruptive Rerouting - New Non-Disruptive Rerouting - New Path SetupPath Setup

Current Path (ERO = R1->R2->R6->R7->R4->R9)Current Path (ERO = R1->R2->R6->R7->R4->R9)

New Path (ERO = R1->R2->R3->R4->R9) - shared with Current PathNew Path (ERO = R1->R2->R3->R4->R9) - shared with Current Path

Until R9 gets new Path Message, current Resv is refreshedUntil R9 gets new Path Message, current Resv is refreshed

Pop

22

4917

R8

R2

R6

R3

R4

R7

R1R5

R9

32

Page 78: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

78MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Non-Disruptive Rerouting - Non-Disruptive Rerouting - Switching PathsSwitching Paths

PopPop

22

3849 17

R8

R2

R6

R3

R4

R7

R1R5

R9

32

Resv: allocates labels for both pathsResv: allocates labels for both pathsReserves bandwidth once per linkReserves bandwidth once per link

PathTear can then be sent to remove old path (and release PathTear can then be sent to remove old path (and release resources)resources)

8926

Page 79: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

79MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R1

ERO (R2-1, R3-1R2-1, R3-1)Sender_Template(R1-lo0, 0000)

2

3

1

3

12

Session(R3-lo0, 0, R1-lo0)

ERO (R2-1, …, R3-3R2-1, …, R3-3)Sender_Template(R1-lo0, 0101)

00

01

0101

Resource Sharing

Page 80: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

80MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R1

Path: Common_HeaderSession(R3-lo0, 0, R1-lo0)PHOP(R1-2)Label_Request(IP)ERO (R2-1, …,R3-3)Session_Attribute (S(3), H(3), 0x04) Sender_Template(R1-lo0, 01) Sender_Tspec(3Mbps)Record_Route(R1-2)

2

3

1

3

12

Page 81: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

81MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

Path State: Session(R3-lo0, 0, R1-lo0)PHOP(R1-2)Label_Request(IP)ERO (R2-1, …,R3-3)Session_Attribute (S(3), H(3), 0x04) Sender_Template(R1-lo0, 01)Sender_Tspec(3Mbps) Record_Route (R1-2)

Page 82: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

82MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

Page 83: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

83MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

RSVP:Common_Header

Session(R3-lo0, 0, R1-lo0)PHOP(R3-3)

Style=SE FlowSpec(3Mbps)

Sender_Template(R1-lo0, 01) Label=POP

Record_Route(R3-3)

Page 84: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

84MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

Page 85: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

85MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

RSVP:Common_Header

Session(R3-lo0, 0, R1-lo0)PHOP(R2-1)

Style=SE FlowSpec (3Mbps)

Sender_Template(R1-lo0, 01) Label=6

Record_Route(R2-1, …, R3-3)Sender_Template(R1-lo0, 00)

Label=5Record_Route(R2-1, R3-1)

Page 86: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

86MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Reroute - More DetailsReroute - More Details

R2 R3R12 31 3

RSVP state:Session(R3-lo0, 0, R1-lo0)PHOP(R2-1)Style=SEFlowSpec Sender_Template(R1-lo0, 01)Label=6Record_Route(R2-1, …, R3-3)Sender_Template(R1-lo0, 00)Label=5Record_Route(R2-1, R3-1)

Page 87: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

87MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Fast RestorationFast Restoration

Handling link failures - two complementary mechanisms:

• Path protection

• Link/Node protection

Page 88: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

88© 1999, Cisco Systems, Inc. Mosaddaq Turabi

Assigning Traffic to PathsAssigning Traffic to Paths (aka autoroute) (aka autoroute)

88© 1999, Cisco Systems, Inc.

Page 89: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

89MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Enhancement to SPFEnhancement to SPF

• During SPF, each new node found is moved from a TENTative list to PATHS list. Now the first-hop is being determined via:

A. Check if there is any TE tunnel terminating at this node from the current router and, if so, do the metric check

B. If there is no TE tunnel and the node is directly connected, use the first-hop from adj database

C. In none of the above applies, the first-hop is copied from the parent of this new node

Page 90: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

90MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Enhancement to SPF - Metric CheckEnhancement to SPF - Metric Check

Tunnel metric:

A. Relative +/- X

B. Absolute Y

C. Fixed Z

The default is relative metric of 0

Example:

Metric of native IP path to the found node = 50

1. Tunnel with relative metric of -10 => 40

2. Tunnel with relative metric of +10 => 60

3. Tunnel with absolute metric of 10 => 10

Page 91: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

91MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Enhancement to SPF - Metric CheckEnhancement to SPF - Metric Check

• If the metric of the found TE tunnel at this node is higher then the metric for other tunnels or native IGP path, this tunnel is not installed as next-hop

• If the metric of the found TE tunnel is equal to other TE tunnels, the tunnel is added to the existing next-hops

• If the metric of the found TE tunnel is lower than the metric of other TE tunnels or native IGP, the tunnel replaces them as the only next-hop

Page 92: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

92© 1999, Cisco Systems, Inc. Mosaddaq Turabi

ConfigurationConfiguration

92© 1999, Cisco Systems, Inc.

Page 93: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

93MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Enabling a Device for MPLS-TEEnabling a Device for MPLS-TE

Router(config)# mpls traffic-eng tunnels

Page 94: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

94MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Enabling MPLS-TE On Enabling MPLS-TE On Physical InterfacesPhysical Interfaces

Router(config-if)# mpls traffic-eng tunnels

Router(config-if)# ip rsvp bandwidth <bw1> <bw2>

Page 95: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

95MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

MPLS-TE Configuration for OSPFMPLS-TE Configuration for OSPF

Router(config)# router ospf <AS>Router(config-router)# mpls traffic-eng area <x>Router(config-router)# mpls traffic-eng router-id loopback0

Page 96: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

96MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

MPLS-TE Configuration For IS-ISMPLS-TE Configuration For IS-IS

Router(config)# router isisRouter(config-router)# mpls traffic-eng level <level>Router(config-router)# mpls traffic-eng router-id loopback0Router(config-router)# metric-style wide

Page 97: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

97MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

Configuring TE Tunnel On The Configuring TE Tunnel On The HeadendHeadend

Router(config)# interface tunnel1Router(config-if)# tunnel destination A.B.C.DRouter(config-if)# tunnel mode mpls traffic-engRouter(config-if)# tunnel mpls traffic-eng bandwidth <bw1>Router(config-if)# tunnel mpls traffic-eng affinity <A> mask <M>Router(config-if)# tunnel mpls traffic-eng autoroute announceRouter(config-if)# tunnel mpls traffic-eng autoroute metric rel/abs ... Router(config-if)# tunnel mpls traffic-eng path-option 1 explicit name testRouter(config-if)# tunnel mpls traffic-eng path-option 2 dynamic

Page 98: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

98© 1999, Cisco Systems, Inc. Mosaddaq Turabi

SummarySummary

98© 1999, Cisco Systems, Inc.

Page 99: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

99MPLS BOOTCAMP ( Mosaddaq Turabi) © 2000, Cisco Systems, Inc.

MPLS TE BenefitsMPLS TE Benefits

• Provides traffic engineering capabilities at Layer 3

– above and beyond of what is provided with ATM (e.g. load-sharing on unequal cost paths)

Page 100: 1 © 1999, Cisco Systems, Inc. Mosaddaq Turabi MPLS Traffic Engineering -SESSION A- (MPLS BOOTCAMP) Mosaddaq Turabi (mturabi@cisco.com) MPLS Traffic Engineering

101Presentation_ID © 1999, Cisco Systems, Inc.