overview of internet routing (ii) fall 2004 cs644 advanced topics in networking sue b. moon division...

27
Overview of Internet Routin g (II) Fall 2004 CS644 Advanced Topics in Networking Sue B. Moon Division of Computer Science Dept. of EECS KAIST

Upload: augustus-perkins

Post on 12-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Overview of Internet Routing (II)

Fall 2004CS644

Advanced Topics in Networking

Sue B. MoonDivision of Computer Science

Dept. of EECSKAIST

2

Overview

• Refresh Our Memory

• Intra-Domain Routing

• Inter-Domain Routing

3

Hierarchical OSPF

• Why Multi-Area OSPF?– Scalability

• size of routing table• router CPU overhead (shortest path

computation)• control traffic increase

4

A Sample Area Configuration

Area 0.0.0.2

Area 0.0.0.3Area 0.0.0.1

Area 0.0.0.010.1.2.0/24

10.1.1.0/24

10.1.3.0/24

10.2.1.0/24 10.2.2.0/24

10.3.7.0/2410.8.2.0/24

10.1.0.0/16

10.2.0.0/16

10.3.7.0/2410.8.2.0/24

5

Multi-Area OSPF

• Backbone Area + Areas– connected by area border routers– ABRs send out summary-LSAs– stub areas: no AS-boundary border routers– NSSAs (not-so-stubby areas): external info can flow into o

ther areas, but not vice versa• Combination of LS and DV algorithms

– In a backbone area, DV• DV amenable to route aggregation and simple routing policies• Simple hub-and-spoke topology

– In other areas, LS

6

Inter-Area Routing Exchange

OSPF Backbone

Area 0.0.0.1 Area 0.0.0.2 Area 0.0.0.3

7

Advantages of OSPF Areas

• Over flat routing– Increased robustness

• local failures dampened externally

– Routing protection• protected from external instabilities/misconfiguration

– Hidden prefixes• configured not to be advertised outside

8

Improving on OSPF

• Prefix allocation/aggregation– Prefix aggregation to reduce routing table

size– trade-off: sub-optimal routing

• Work around S/W upgrade

9

Software Upgrade is a Pain

• Upgrade of routing software on routers is a fact of life– Extensions to routing protocols, new functionality, version

upgrades, bug fixes– Critical need for seamless upgrades

• Current practice– During upgrade, network operators withdraw “router-under-

upgrade” from forwarding service• Route flaps, traffic disruption, instability

– Operators have to carefully schedule upgrades• Schedule them during night when load is moderate• Stagger upgrades of different routers

– A painful job

10

We Can do Better

• Router can continue forwarding even while its routing process is inactive, at least for a while– Current routers have separate routing and forwarding paths

• Routing in software (CPU), forwarding in hardware (switching)

• Routing protocols need to be extended since they always try to route around inactive router

• Our proposal: IBB (I’ll Be Back) Extension to OSPF• Other proposals

– OSPF: Hitless restart proposal by Jonh Moy• Internet draft: draft-ietf-ospf-hitless-restart-02.txt

– BGP: Graceful restart proposal by Sangli et al.• Internet draft: draft-ietf-idr-restart-05.txt

11

Router ModelRoute Processor (CPU)

Forwarding Info. Base (FIB)

Interface card Interface card

Forwarding

SwitchingFabric

Data packet

Data packet

Topology view

Shortest Path Tree (SPT)

OSPF Process

LSA LSA

Forwarding

12

IBB Proposal in a Nutshell

• OSPF process on router R needs to be shutdown• Before shutdown, R informs other routers that • it is going to be inactive for a while• R specifies a time period (IBB Timeout) by which it • expects to become operational again• Other routers continue using R for forwarding during • IBB Timeout period• If R comes back within IBB Timeout period, • no routing instability or flaps• Else other routers start forwarding packets around R

13

What if Topology Changes

• R cannot update its forwarding table to reflect the change– Can lead to loop or black holes

B

A

R

3

2

6

(a) Topology when R went down

B

A

R

10

2

6

(b) Topology changes while R is inactive

14

Handling Changes: Options

• Don’t do anything• Stop using R: Moy’s proposal

– Inadvertent changes during upgrade are likely• Flapping due to a bad interface somewhere

– But all changes are not bad• Do not always lead to loops or black holes

• Stop using R only when loop or black hole gets formed– And only for those destinations for which there is a problem– Need algorithms which is what the bulk of the paper is about

Shaikh et al.

15

BGP

• De-facto standard inter-domain routing protocol

• Became popular only in 1995– significant increase in # of ISPs– CIDR introduced in 1995

16

Configuration and Policy

• A BGP node decides which routes to share with its neighbor

• A BGP node can selectively accept and reject messages

• What to share and what to accept– determined by routing policy

17

Four Basic BGP Messages

• Open– Establishes BGP session (TCP port #179)– Sets the hold timer

• Notification– Report unusual conditions– Terminates the TCP session and gives an indication (hold

er timer expiry, bad peer AS, malformed attribute list, etc.)

• Update– Inform neighbor of new/old routes that become active/ina

ctive• Keepalive

– Inform neighbor that connection is still alive

18

UPDATE Message

• Advertise/Withdraw prefixes

Withdrawn routes length (2 bytes)

Withdrawn routes (variable length)

Total path attributes length (2 bytes)

Path attributes (variable length)

Reachability information (variable length)

19

Attributes

• ORIGIN– Who originated the announcement?– IGP, EGP or Incomplete (often for static routes)

• AS-PATH– list of AS's– useful to detect and prevent loops

• NEXT HOP– For EBGP, IP addr of neighbor that announced– For IBGP, if route originated inside, IP addr of neighbor– For IBGP, if route originated outside, EBGP node that learned of rout

e, is carried unaltered into IBGP• Multi-Exit Discriminator (MED)

• Local Preference

20

Attribute: Multi-Exit Discriminator (MED)

• When ASes have multiple interconnecting links

• Lower, more preferred• Non-transitive

AS1

AS2

R1

R3 R4

R2

143.248.0.0/16MED=2

143.248.0.0/16MED=10

21

Attribute: LOCAL PREF

• Indicates preference among multiples paths for the same prefix– higher, more preferred

• Exchanged between IBGP peers only

• Often used to select a specific egress point for a particular destination

AS1

AS4

AS2 AS3

143.248.0.0/16

Destination AS Path Local Pref

143.248.0.0/16

AS3 AS1 300

143.248.0.0/16

AS2 AS1 100

22

BGP Decision Process

1. Highest LOCAL-PREF2. Shortest AS-PATH3. Lowest ORIGIN (IGP < EGP < Incomplete)4. Lowest MED5. Min cost path to NEXT HOP using IGP

metrics6. BGP Router ID to break tie

23

Input Policy Engine

• Inbound filtering– filter based on IP prefixes, AS_PATH,

community– deny = BGP won't reach that prefix via the

peer– accept = traffic to that prefix via the peer

• Attribute manipulation– Sets attributes on accepted routes

• E.g.: Specify LOCAL-PREF to set priorities among multiple peers

24

Output Policy Engine

• Outbound filtering– forward = peers may route traffic via you

• Attribute manipulation– Sets attributes such as AS-PATH and MEDs

25

Transit vs. Nontransit

AS3

AS2

AS1

C1C3

C2

Transit

26

Routing Engine

BGPInput Policy BGP Table

IP RoutingTable

OSPF Topology Shortest Path

ForwardingTable

BGPOutput Policy

27

References & Acknowledgements

• Slides on "IBB" are from Aman Shaikh's INFOCOM 2002 presentation

• Some use of Nina Taft's tutorial slides on BGP• OSPF Anatomy of an Internet Routing Protocol, John T. Moy,

Addison-Wesley, 1998• BGP4 Inter-Domain Routing in the Internet, John W. Stewart,

Addison-Wesley, 1998