1 / 96

Deploying MPLS Traffic Engineering

Deploying MPLS Traffic Engineering. Rodrigo Linhares rlinhare@cisco.com Consulting Systems Engineering Latin America Core Technologies Group. What It Is, How It Works, and How to Use It. 2. Agenda. How MPLS-TE Works Basic Configuration Knobs! Knobs! Knobs! Deploying and Designing.

aminia
Télécharger la présentation

Deploying MPLS Traffic Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Deploying MPLS Traffic Engineering Rodrigo Linhares rlinhare@cisco.com Consulting Systems Engineering Latin America Core Technologies Group

  2. What It Is, How It Works, and How to Use It 2

  3. Agenda • How MPLS-TE Works • Basic Configuration • Knobs! Knobs! Knobs! • Deploying and Designing

  4. How MPLS-TE Works • How MPLS-TE works • What good is MPLS-TE? • Information distribution • Path calculation • Path setup • Forwarding traffic down a tunnel

  5. What Good Is MPLS-TE? • There are three kinds of networks • 1. Those that have plenty of bandwidth everywhere • 2. Those with congestion in some places, but not in others • 3. Those with constant congestion everywhere • The first kind always evolves into the second kind!

  6. What Good Is MPLS-TE? • MPLS-TE introduces a 4th kind: • 1. Those that have plenty of bandwidth everywhere • 2. Those with congestion in some places, but not in others • 3. Those with constant congestion everywhere • 4. Those that use all of their bandwidth to its maximum efficiency, regardless of shortest-path routing! • MPLS-TE can help turn #2 into #4 • If you have #1, you probably don’t need MPLS-TE—yet • If you have #3, you’re stuck—you either need morebandwidth (or less traffic)

  7. Multi protocol label switching—traffic engineering Magic problemsolving labor substitute which is totally effortless What Good Is MPLS-TE? What Is MPLS-TE? What Is It Not? This Stuff Takes Work, but It’s Worth It!!!

  8. Information Distribution • You need a link-state protocol as your IGP • IS-IS or OSPF • Link-state requirement is only for MPLS-TE! • Not a requirement for VPNs, etc!

  9. Need for a Link-State Protocol • Why do I need a link-state protocol? • To make sure info gets flooded • To build a picture of the entire network

  10. Cost Node Next-Hop B 10 B C 10 C 20 D C E B 20 F B 30 G 30 B Router F OC-3 OC-3 DS3 OC-3 DS3 OC-3 DS3 The Problem with Shortest-Path • Some links are DS3, some are OC-3 • Router A has 40Mb of traffic for Route F, 40Mb of traffic for Router G • Changing to A->C->D->E won’t help • Massive (44%) packet loss at Router B->Router E! Router B 35Mb Drops! Router E Router A Router G 80Mb Traffic Router C Router D

  11. What MPLS-TE Address Cost Node Next-Hop • Router A sees all links • Router A computes paths on properties other than just shortest cost • No link oversubscribed! B 10 B C 10 C 20 D C E B 20 F Tunnel 0 30 Tunnel 1 G 30 Router B Router F OC-3 OC-3 Router E Router A DS3 Router G 40Mb OC-3 40Mb DS3 OC-3 DS3 Router C Router D

  12. How MPLS-TE Works • How MPLS-TE works • What good is MPLS-TE? • Information distribution • Path calculation • Path setup • Forwarding traffic down a tunnel

  13. Information Distribution • IS-IS • Uses Type 22 TLVs • See draft-ietf-isis-traffic • OSPF • Uses type 10 (opaque area—local) LSAs • See draft-katz-yeung-ospf-traffic

  14. Information Distribution • IS-IS and OSPF propagate the same information! • Link identification • TE metric • Bandwidth information (physical, reserveable, available) • Attribute flags

  15. Information Distribution • TE flooding is local to a single {area|level} • Inter-{area|level} TE harder, but possible (think PNNI)

  16. How MPLS-TE Works • How MPLS-TE works • What good is MPLS-TE? • Information distribution • Path calculation • Path setup • Forwarding traffic down a tunnel

  17. Path Calculation • Modified Dijkstra at tunnel head-end • Often referred to as CSPF • Constrained SPF • …or PCALC (path calculation)

  18. Router F Path Calculation Cost Node Next-Hop • PCALC takes bandwidth, other constraints into account • Paths calculated, resources reserved if necessary • End result: Bandwidth used more efficiently! B 10 B C 10 C 20 D C E B 20 F Tunnel 0 30 Tunnel 1 G 30 Router B OC-3 OC-3 Router E Router A DS3 Router G 40Mb OC-3 40Mb DS3 OC-3 DS3 Router C Router D

  19. Path Calculation • What if there’s more than one path that meets the minimum requirements (bandwidth, etc.)? • PCALC algorithm: • Find all paths with the lowest IGP cost • Then pick the path with the highest minimum available bandwidth along the path • Then pick the path with the lowest hop count (not IGP cost, but hop count) • Then just pick one path at random

  20. How MPLS-TE Works • How MPLS-TE works • What good is MPLS-TE? • Information distribution • Path calculation • Path setup • Forwarding traffic down a tunnel

  21. Path Setup • Cisco MPLS-TE uses RSVP • RFC2205, plus draft-ietf-mpls-rsvp-lsp-tunnel (RSVP-TE) • Once the path is calculated, it is handed to RSVP • RSVP uses PATH and RESV messages to request an LSP along the calculated path

  22. = PATH messages = RESV messages Router F Path Setup • PATH message: “Can I have 40Mb along this path?” • RESV message: “Yes, and here’s the label to use” • LFIB is set up along each hop Router B Router E Router A Router G Router C Router D

  23. How MPLS-TE Works • How MPLS-TE works • What good is MPLS-TE? • Information distribution • Path calculation • Path setup • Forwarding traffic down a tunnel

  24. Forwarding Traffic Down a Tunnel • There are three ways traffic can be forwarded down a TE tunnel • Auto-route • Static routes • Policy routing • With the first two, MPLS-TE gets you unequal cost load balancing

  25. Auto-Route • Auto-route = “Use the tunnel as a directly connected link for SPF purposes” • This is not the CSPF (for path determination), but the regular IGP SPF (route determination)

  26. Router B Router F Router H Router E Router A Router G Router I Router C Router D Auto-Route This Is the Physical Topology

  27. Router F Auto-Route • This is Router A’s logical topology • By default, other routers don’t see the tunnel! Router B Router H Router E Router A Router G Tunnel1 Router I Router C Router D

  28. Cost Node Next-Hop B 10 B C 10 C 20 D C E B 20 B F 30 G Tunnel 1 30 40 H Tunnel 1 40 I Tunnel 1 Router B Router F Router H Router E Router A Router G Router I Router C Router D Auto-Route • Router A’s routing table, built via auto-route • Everything “behind” the tunnel is routed via the tunnel Tunnel1

  29. Unequal Cost Load Balancing • IP routing has equal-cost load balancing, but not unequal cost* • MPLS-TE does unequal cost load balancing, using 16 hash buckets for next-hop, shared in rough proportion to configured tunnel bandwidth or load-share value *EIGRP Has ‘Variance’, but That’s Not As Flexible

  30. Unequal Cost: Example Router F Router E Router A 40MB Router G 20MB gsr1#show ip route 192.168.1.8 Routing entry for 192.168.1.8/32 Known via "isis", distance 115, metric 83, type level-2 Redistributing via isis Last update from 192.168.1.8 on Tunnel0, 00:00:21 ago Routing Descriptor Blocks: * 192.168.1.8, from 192.168.1.8, via Tunnel0 Route metric is 83, traffic share count is 2 192.168.1.8, from 192.168.1.8, via Tunnel1 Route metric is 83, traffic share count is 1

  31. Router F Router E Router A Router G Unequal Cost: Example 40MB 20MB gsr1#sh ip cef 192.168.1.8 internal ……… Load distribution: 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 (refcount 1) Hash OK Interface Address Packets Tags imposed 1 Y Tunnel0 point2point 0 {23} 2 Y Tunnel1 point2point 0 {34} ……… Note That the Load Distribution Is 11:5—Very Close to 2:1, but Not Quite!

  32. Router B Router F Router H Router E Router A Router G Router I Router C Router D Static Routing RtrA(config)#ip route H.H.H.H 255.255.255.255 Tunnel1

  33. Cost Node Next-Hop B 10 B C 10 C 20 D C E B 20 B F 30 G 30 B 40 H Tunnel 1 40 I B Router B Router F Router H Router E Router A Router G Router I Router C Router D Static Routing • Router H is known via the tunnel • Router G is not routed to over the tunnel, even though it’s the tunnel tail! Tunnel1

  34. Router F Router E Router A Router G Static Routing 40MB 20MB gsr1(config)#ip route 1.2.3.4 255.255.255.255 192.168.1.11 gsr1#sh ip cef 1.2.3.4 ……… Load distribution: 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 (refcount 1) Hash OK Interface Address Packets Tags imposed 1 Y Tunnel0 point2point 0 {23} 2 Y Tunnel1 point2point 0 {34} ……… Static Routes Inherit Unequal Cost Load-Sharing When Recursing through a Tunnel

  35. Router B Router F Router H Router E Router A Router G Router I Router C Router D Policy Routing RtrA(config-if)#ip policy route-map set-tunnel RtrA(config)#route-map set-tunnel RtrA(config-route-map)#match ip address 101 RtrA(config-route-map)#set interface Tunnel1 Tunnel1

  36. Cost Node Next-Hop B 10 B C 10 C 20 D C E B 20 B F 30 G 30 B 40 H B 40 I B Router B Router F Router H Router E Router A Router G Router I Router C Router D Policy Routing • Routing table isn’t affected by policy routing • Need (12.0(16)ST or 12.2T) or higher for ‘set interface tunnel’ to work Tunnel1 Tunnel1

  37. Forwarding Traffic down a Tunnel • You can use any combination of auto-route, static routes, or PBR • …But simple is better unless you have a good reason • Recommendation: Either auto-route or statics to BGP next-hops, depending on your needs

  38. Agenda • Prerequisites • How MPLS-TE Works • Basic Configuration • Knobs! Knobs! Knobs! • Deploying and Designing

  39. (globally) ip cef {distributed} mpls traffic-eng tunnels (per interface) mpls traffic-eng tunnels Basic Midpoint/Tail Configuration

  40. (if IGP = OSPF) router ospf <x> mpls traffic-eng router-id Loopback0 mpls traffic-eng area <y> Basic Midpoint/Tail Configuration

  41. (if IGP = IS-IS) router isis <x> mpls traffic-eng router-id Loopback0 mpls traffic-eng level-{1,2} metric-style wide Basic Midpoint/Tail Configuration

  42. Basic Head-End Configuration • Head-end needs the 4–5 ‘mid/tail’ lines • But wait—there’s more!

  43. Basic Head-End Configuration • Create the tunnel interface interface Tunnel0 ip unnumbered Loopback0 tunnel mode mpls traffic-eng tunnel source Loopback0 tunnel destination <tunnel endpoint> tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng path-option 10 dynamic

  44. Basic Head-End Configuration • Total configuration: • 1 line globally • 1 line per interface • 2 lines if OSPF • 3 lines if IS-IS • + 7 lines per tunnel at head-end • Not really much to the basic configuration

  45. Agenda • Prerequisites • How MPLS-TE Works • Basic Configuration • Knobs! Knobs! Knobs! • Deploying and Designing

  46. Knobs! Knobs! Knobs! • Influencing the path selection • Auto-bandwidth • Fast reroute • DiffServ-Aware Traffic Engineering

  47. Knobs! Knobs! Knobs! • Influencing the path selection • Bandwidth • Priority • Administrative weight • Attributes and affinity

  48. Bandwidth ip rsvp bandwidth <x> • Per-interface command • X = amount of reservable BW, in K • Default: X=75% of link bandwidth

  49. Bandwidth tunnel mpls traffic-eng bandwidth <Kb> • Per-tunnel command • Tunnel default: 0 Kb

  50. Priority • Configured on tunnel interface • S = setup priority (0–7) • H = holding priority (0–7) • Lower number is more important, or better tunnel mpls traffic-eng <S> {H}

More Related