1 Routing Design in Operational Networks: A Look from the Inside David A. Maltz, Geoffrey Xie, Jibin Zhan, Hui Zhang Carnegie Mellon University Gisli Hjalmtysson,

Slides:



Advertisements
Similar presentations
MPLS VPN.
Advertisements

Route Optimisation RD-CSY3021.
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Routing Basics.
Enhanced Interior Gateway Routing Protocol (EIGRP) Part 2
Technical Aspects of Peering Session 4. Overview Peering checklist/requirements Peering step by step Peering arrangements and options Exercises.
1 Copyright  1999, Cisco Systems, Inc. Module10.ppt10/7/1999 8:27 AM BGP — Border Gateway Protocol Routing Protocol used between AS’s Currently Version.
Routing Basics By Craig Lindstrom. Overview Routing Process Routing Process Default Routing Default Routing Static Routing Static Routing Dynamic Routing.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
The need for BGP AfNOG Workshops Philip Smith. “Keeping Local Traffic Local”
Best Practices for ISPs
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—4-1 Implement an IPv4-Based Redistribution Solution Lab 4-1 Debrief.
1 © 2003, Cisco Systems, Inc. All rights reserved. Computer Networks 6 Layer 3 troubleshooting Halmstad University Olga Torstensson
1 Problems and Solutions in Enterprise Network Control: Motivations for a 4D Architecture David A. Maltz Microsoft Research Joint work with Albert Greenberg,
The Cutting EDGE of Router Configuration D. Caldwell, A. Gilbert, J. Gottlieb, A. Greenberg, G. Hjalmtysson, and J. Rexford AT&T Labs—Research; Florham.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
Routing.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—5-1 Implementing Path Control Assessing Path Control Network Performance Issues.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—4-1 Implement an IPv4-Based Redistribution Solution Assessing Network Routing Performance and.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network Considering the Advantages of Using BGP.
MPLS L3 and L2 VPNs Virtual Private Network –Connect sites of a customer over a public infrastructure Requires: –Isolation of traffic Terminology –PE,
1 Network-wide Decision Making: Toward a Wafer-thin Control Plane Jennifer Rexford, Albert Greenberg, Gisli Hjalmtysson ATT Labs Research David A. Maltz,
Fundamentals of Networking Discovery 2, Chapter 6 Routing.
Introduction to BGP 1. Border Gateway Protocol A Routing Protocol used to exchange routing information between different networks – Exterior gateway protocol.
Theophilus Benson Aditya Akella David A Maltz
Interior Gateway Routing Protocol (IGRP) is a distance vector interior routing protocol (IGP) invented by Cisco. It is used by routers to exchange routing.
1 Structure Preserving Anonymization of Router Configuration Data David A. Maltz, Jibin Zhan, Geoffrey Xie, Hui Zhang Carnegie Mellon University Gisli.
Manipulating Routing Updates Controlling Routing Update Traffic.
TCOM 515 Lecture 6.
6: Routing Working at a Small to Medium Business.
Routing/Routed Protocols. Remember: A Routed Protocol – defines logical addressing. Most notable example on the test – IP A Routing Protocol – fills the.
Introduction to BGP.
Routing and Routing Protocols Routing Protocols Overview.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.
Objectives: Chapter 5: Network/Internet Layer  How Networks are connected Network/Internet Layer Routed Protocols Routing Protocols Autonomous Systems.
BGP Border Gateway Protocol By Amir and David. What Is BGP ? Exterior gateway protocols are designed to route between autonomous systems. AS’s : A set.
Chapter 9. Implementing Scalability Features in Your Internetwork.
UNIT 5 SEMINAR Unit 5 Chapter 6, plus Lab 10 for next week Course Name – IT482 Network Design Instructor – David Roberts Contact Information:
© Synergon Informatika Rt., 1999 Chapter 12 Connecting Enterprises to an Internet Service Provider.
1 Rethinking Network Control & Management The Case for a New 4D Architecture David A. Maltz Carnegie Mellon University Joint work with Albert Greenberg,
Chapter 11 Configuring Enhanced IGRP. Objectives Upon completion of this chapter, you will be able to perform the following tasks: Describe Enhanced IGRP.
11 Tesseract* A 4D Network Control Plane Hong Yan, David A. Maltz, T. S. Eugene Ng Hemant Gogineni, Hui Zhang, Zheng Cai *Tesseract is a 4-dimensional.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Inter-domain routing Some slides used with.
CCNA 2 Week 6 Routing Protocols. Copyright © 2005 University of Bolton Topics Static Routing Dynamic Routing Routing Protocols Overview.
Routing and Routing Protocols
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
Load Sharing (pages ) Can be equal cost or unequal-cost Load sharing can be: per destination (fast switching), or per packet (process switch) ASIC.
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
Routing in the Inernet Outcomes: –What are routing protocols used for Intra-ASs Routing in the Internet? –The Working Principle of RIP and OSPF –What is.
Transport Layer3-1 Network Layer Every man dies. Not every man really lives.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—6-1 Scaling Service Provider Networks Scaling IGP and BGP in Service Provider Networks.
+ Routing Concepts 1 st semester Objectives  Describe the primary functions and features of a router.  Explain how routers use information.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—2-1 BGP Transit Autonomous Systems Forwarding Packets in a Transit AS.
Inter-domain Routing Outline Border Gateway Protocol.
Chapter 4: Routing Concepts
Optimizing Routing 1. Using Multiple Routing Protocols
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Shedding Light on the Glue Logic of the Internet Routing Architecture
Chapter 4: Routing Concepts
CCNA 2 v3.1 Module 6 Routing and Routing Protocols
Implementing a Scalable Multiarea Network OSPF-Based Solution
Routing.
BGP Overview BGP concepts and operation.
Cours BGP-MPLS-IPV6-QOS
COS 561: Advanced Computer Networks
Dynamic Routing and OSPF
COS 561: Advanced Computer Networks
Computer Networks Protocols
Routing.
Presentation transcript:

1 Routing Design in Operational Networks: A Look from the Inside David A. Maltz, Geoffrey Xie, Jibin Zhan, Hui Zhang Carnegie Mellon University Gisli Hjalmtysson, Albert Greenberg ATT Labs Research

2 The Problem of Routing Design HostA HostB HostCHostD eBGP iBGP OSPF RIP EIGRP ACLs policy

3 Many Routing Designs Possible A B C A B C A B C A B C A B C Drop A B AS1 AS2 AS3 Multiple OSPF instances Packet filters Multiple AS’s & BGP

4 Routing Design Selecting routing protocols Configuring their boundaries Setting the policies that control their interaction Adding packet filters, other mechanisms Routing design fundamentally establishes the network’s properties Remains constant as network expands Details of protocol, path computation are second-order effects Topology doesn’t say much about reachability

5 Reachability Example Enterprise with two remote offices Only A&B should be able to talk to server C Internet A B C Permit B->C Permit A->C

6 Reachability Example Network designers add two links for robustness Configure routing protocols to use new links in failure Internet A B C Permit B->C Permit A->C

7 Reachability Example Designers apply packet filters to new links Internet A B C Permit B->C Permit A->C Permit B->C

8 Reachability Example Internet A B C Permit A->C Permit B->C

9 Reachability Example Packet from B->C dropped! Testing under normal conditions won’t find this error! Internet A B C Permit A->C Permit B->C

10 How Are Routing Designs Expressed Today? interface Ethernet0 ip address interface Serial1/0.5 point-to-point ip address ip access-group 143 in frame-relay interface-dlci 28 router ospf 64 redistribute connected subnets redistribute bgp metric 1 subnets network area 0 router bgp redistribute ospf 64 match route-map 8aTzlvBrbaW neighbor remote-as neighbor distribute-list 4 in access-list 143 deny /16 access-list 143 permit any route-map 8aTzlvBrbaW deny 10 match ip address 4 route-map 8aTzlvBrbaW permit 20 match ip address 7 ip route /

11 Lots of Configuration Files Router ID 8810 Lines in config file

12 Problems with State of the Art No good way to visualize or describe routing design Impossible to establish linkage between configurations and routing design Only a few “textbook” routing designs are widely known

13 Approaches? Option 1: High-level design compiled down to configuration commands Feasible? What are the constructs? How to capture design intents? Our starting point: Bottom-up white-box approach Start with router configuration files Reverse-engineer the routing design

14 Contributions Abstractions for modeling routing design Routing Process Graph Routing Instance Graph Reverse-engineering methodology Anonymization of configuration files Tools to convert configurations into model Study of 31 production networks using model Verified some bits of common wisdom Found counter examples for other bits

15 Router Model OSPFBGPOSPF Route Selection Route Table Router 1

16 Route Redistribution OSPFBGPOSPF Route Selection Route Table Router 1 Routing policy 1Routing policy 2

17 Routing Protocol Adjacencies OSPFBGPOSPF Route Selection Route Table OSPF RS Route Table Router 1Router 2 Routing policy 1Routing policy 2

18 Reverse-Engineering Overview Configuration files Find links Find adjacent routing processes Construct Routing Process Graph Condense adjacent routing processes Construct Routing Instance Graph Construct Layer 3 Topology OSPF #1OSPF #2BGP AS1 AS2

19 Reconstruct the Layer 3 Topology interface Serial1/0.5 ip address …. Router 1 Config interface Serial2/1.5 ip address …. Router 2 Config Internet

20 Construct the Routing Process Graph OSPFBGPOSPF Route TableRT OSPF RT OSPF RT OSPF RT OSPF EBGP Policy1Policy2 Internet

21 Abstract to a Routing Instance Graph Pick an unassigned Routing Process Flood fill along process adjacencies, labeling processes Repeat until all processes assigned to an Instance OSPF #1OSPF #2BGP AS1 EBGP AS2 Policy1Policy2 OSPFBGPOSPF Route Table RT OSPF RT OSPF RT OSPF RT OSPF

22 Abstract to a Routing Instance Graph Router1Router2 OSPFBGPOSPF Route Table RT OSPF RT OSPF RT OSPF RT OSPF Router2Router1 OSPF #1OSPF #2BGP AS1 EBGP AS2 Policy1Policy2

23 A Study of Operational Production Networks Obtained anonymized configuration files for 31 active networks (>8,000 configuration files) Networks include: 6 Tier-1 and Tier-2 Internet backbone networks 25 enterprise networks Sizes between 10 and 1,200 routers 4 enterprise networks significantly larger than the backbone networks Networks created by diverse set of designers and companies

24 Textbook Routing Design for Enterprise Networks Border routers speak eBGP to external peers BGP selects a few key external routes to redistribute into OSPF 7 of 25 enterprise networks follow this pattern OSPF BGP AS #1 EBGP AS2 AS3

25 Reality: A Diversity of Unusual Routing Designs Network broken up into compartments, each with only 1 to 4 routers Each compartment has its own AS number Hub and spoke logical topology Why? Lots of control over how spokes communicate BGP AS #1 BGP AS #4 BGP AS #2 BGP AS #3 BGP AS #5 EBGP Rest of the World

26 Routing Design for 900 Router Network

27 Reality: A Diversity of Unusual Routing Designs Network broken up into many compartments, each running EIGRP, some with 400+ routers BGP used to filter routes passed between compartments Compartments themselves pass information between BGP speakers Why? Little need for IBGP; few routers speak BGP; Lots of control over how packets move between compartments BGP AS #1 EBGP Rest of the World EIGRP BGP AS #2 EIGRP BGP AS #3 BGP AS #4 Rest of the World EBGP

28 Myth: Policy Enforced at Edge of Network Conventional wisdom: Place packet filters on the edge to defend infrastructure Routing policy applied where networks touch

29 Reality: Policy Exists Throughout Networks Packet filters commonly used on internal links Protect routers from attack Implement reachability matrix –Prevent some hosts from communicating with others –Localize traffic, particularly multicast

30 Summary Developed abstractions to model routing design Routing Instance – abstracts away details Reverse-engineer routing design from configs We presented our extracted design to designers They agreed we captured their design intent Focusing on individual protocols is not enough Understanding composition is equally important First step towards turning routing design from an art into a science

31 Applications of Routing Design Analysis Enables static analysis of network properties Reachability/security analysis –Route leaks? Reachability violations? Robustness analysis –How sensitive is the network to external events such as route announcements? Resource usage analysis –Will a particular configuration cause the routing table of a router to overflow?

32 The Value of Investigating Routing Design: Next Steps Found many different designs in use Do we need so many designs? Framework to ask and answer questions of scalability, completeness, optimality Do we have the right abstractions? Is this the right way to program routers? Suggest improvements to protocols and configuration languages Can the network be run using abstractions?

33 Questions?

34 Textbook Routing Design for Backbone Network Border routers speak eBGP to external peers All routers speak iBGP with each other All routers participate in both BGP and OSPF (learning infrastructure routes from OSPF, external routes from BGP) OSPF BGP AS #1 EBGP IGBP MESH AS2 AS3 ASn …

35 Real Routing Designs for Backbone Networks All 6 backbone networks used basic OSPF/BGP pattern OSPF BGP AS #1 AS2 AS3 ASn

36 Real Routing Designs for Backbone Networks All 6 backbone networks used basic OSPF/BGP pattern 3 of 6 include many additional routing instances Used to exchange routes with customers OSPF BGP AS #1 AS2 AS3 ASn RIP EIGRP Customer EIGRP

37 BGP Used an IGP

38 What do Designers do Today? Network designers balance many goals Scalability Resiliency to failure Make it easy to expand network Many “rules of thumb” in use Instability results from overloaded routers Too much routing state is bad Use routing boundaries to control spread of change Routing Design is currently an art – can we add more science?

39 Approaches? Need deeper understanding than network topology Need broader study than backbone networks Interviewing network designers isn’t enough No language/visualization exists for communicating about routing design Documentation is out-of-date or non-existent Our approach: Bottom-up white-box Start with router configuration files Reverse-engineer the routing design

40 Potential Approaches Top-down design problem How should networks be designed? First must understand what happens in real networks Bottom-up black-box approach Send probe traffic to explore network properties Very successful at recovering topology [RocketFuel] [Skitter] [Mercator] Measured topology a result of a routing design --- it does not expose the routing design itself Our approach: Bottom-up white-box Start with router configuration files Reverse-engineer the routing design

41 Router Configuration Files

42 Lots of Configuration Files