Overview of Internet Routing (II)
description
Transcript of Overview of Internet Routing (II)
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