60
A DIRTY-SLATE APPROACH Scaling the Internet Paul Francis Hitesh Ballani, Tuan Cao Cornell to

A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Embed Size (px)

Citation preview

Page 1: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

A DIRTY-SLATE APPROACH

Scaling the Internet

Paul Francis Hitesh Ballani, Tuan Cao

Cornell

to

Page 2: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

1989 2008

300000

0

Routing Table Size versus Time (BGP)

BGP data from AS65000, http://bgp.potaroo.net/as2.0/bgp-active.html

Page 3: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Internet is addressed like a forest of Autonomous Systems (AS)

Page 4: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Routing: Up, Across, Down

Page 5: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Should scale by: Number of top-level AS’s, and Size of Fan-out

Page 6: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

1989 2008

30000

0

Routing Table Size versus Time (BGP)

What went wrong???

Page 7: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Multi-homing (sites and ISPs)

Address ↔ Topology Mismatch

Page 8: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

1989 2008

250000

0

Large routing table managed using: Brute Force Engineering Constraints

Page 9: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Engineering Constraints

Brute Force: Large physical memory (FIB)

•  Prefix size (e.g. /24) •  Frequency/Delay of BGP updates •  Route flap hold-down

ASIC FIB

Line Card

CPU RIB

Route Processor

LC LC

Routing Information Base (DRAM $)

Forwarding Information Base (SRAM $$$$)

Page 10: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

1989 2008

250000 0

Growth rate may increase!

IPv4 address exhaustion,

Uptake of IPv6

leading to increased address fragmentation

Page 11: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

An Overview of Previous Approaches Geographic Addressing

Indirection and Tunneling Schemes

OUTLINE

Virtual Aggregation

Page 12: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Current IP addressing is ISP-centric

What about geographical addressing?

ISP POPs tend to cluster around metro areas

Multihomed site will almost always connect to ISPs in a given metro area

Page 13: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

ISP-centric Addressing

Page 14: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

ISP-centric Addressing

Routing: First get packet to ISP, then to egress POP

Page 15: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Geographical Addressing

Page 16: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Routing: First get packet to metro-area, then to egress POP

Geographical Addressing

Page 17: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Routing: First get packet to metro-area, then to egress POP

Geographical Addressing

Page 18: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Geographical Addressing

Page 19: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Geographical versus ISP-centric ISP-centric: Robust intra-ISP topology Geographical: Robust intra-metro topology

Need to re-think address assignment: Metro-oriented (but ISP-centric within a metro??)

Need some political entity to manage topology and addresses in each metro

True in 1994 [F94], still true today

Page 20: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Indirection

Should be singular, unique, and stable

IP addresses both IDENTIFY and LOCATE

Identify Find a Path IP Address Routing Protocol

(BGP, OSPF, ...)

Page 21: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Indirection

Should be singular, unique, and stable

IP addresses both IDENTIFY and LOCATE

Identify Find a Path IP Address Routing Protocol

(BGP, OSPF, ...) Domain Name

Page 22: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Indirection

Addressing could be more flexible

Identify Find a Path IP Address Routing

Protocol

What if we limit the role of IP?

???

Page 23: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Multiple, dynamic addresses Helps with hierarchy and mobility

Page 24: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Can be used to select an ISP [F91] Map DNS names to IP addresses

Later adopted by IPv6, subsequently rejected because site renumbering is hard

I’m fond of name-based approaches (IPNL [GF01] and NUTSS [GF07])

Identify Find a Path IP Address Routing

Protocol Domain Name

Page 25: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Flat identifier in packet headers Early proposal for IPng (Pip) [FG94]

Recent: HIP, SHIM6 (IETF) and various research papers (i3, DONA . . .)

Identify Find a Path IP Address Routing

Protocol Domain Name ID

(Though naive because lacked encryption)

Page 26: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Map IP addresses to IP addresses

Network Address Translation (NAT) [FE93]

Identify Find a Path Public IP Address

Routing Protocol

Domain Name

IP Address

Tunnels

Identify Find a Path Public IP Address

Routing Protocol

Domain Name

Private IP Address

Page 27: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

NAT commonly used for multi-homing

Many Problems... (though most problems go away with IPv6)

Including load balance

NAT selects a link, translates internal private address into corresponding global public address

Page 28: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Tunnels

Site addresses are permanent

Core maintains routes to edge routers only

Edge routers know how to tunnel packets to each other

Page 29: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Tunnels

Page 30: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Tunnels

Recently suggested for global routing Routing Research Group (RRG) in IRTF (many proposals)

Main issue is how to distribute global mapping table Cache versus full, push versus pull, failure recovery . . .

Page 31: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

So many ideas, so little impact! Identify Find a Path

IP Address

IP Address

Routing Protocol

IP Address ID

Public IP Address

Domain Name

Private IP Address

Public IP Address

IP Address

Page 32: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

So many ideas, so little impact!

Industry impact in networking is hard

Standards: IETF, IEEE, ITU . . .

All players must see short term $$$$

Vendors: OS, host, network gear . . .

Providers: ISP, enterprise, data center . . .

Page 33: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Virtual Aggregation

Easily order-of-magnitude Reduces routing table size

Latency and load

Config changes only No software or protocol changes

ISPs can independently and autonomously deploy

Negligible performance penalty

[BF08]

CRIO [ZF06]

Page 34: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Never-the-less, disrupts network operation

Chance of Impact?

No standards or vendors Only one player involved (ISP)

New configuration must be error-free

Addresses specific pain point ISPs need to upgrade router due to FIB size

ISPs are risk averse

(Note that this may hurt router vendors)

Page 35: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Today: All routers have routes to all destinations

Dest Next Hop 20.5/16 1.1.1.1 36.3/16 2.1.1.1 . . . .

Page 36: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Virtual Aggregation: Routers have routes to only part of the address space

Virtual Prefixes

Dest Next Hop 20.5/16 1.1.1.1 . . . .

Dest Next Hop 188.3/16 2.1.1.1 . . . .

Page 37: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

“Aggregation Point” routers for the red Virtual Prefix

Virtual Prefixes

Page 38: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Paths through the ISP have two components:

1: Route to a nearby Aggregation Point

2: Tunnel to the neighbor router

Page 39: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

1: Routing to a nearby Aggregation Point

Configure Aggregation Point with static route for the Virtual Prefix

Virtual Prefix is advertised into BGP

Page 40: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

2: Tunnel packet to neighbor router (MPLS)

Static routes for all neighbors are imported into OSPF

MPLS LDP creates tunnels to every neighbor router

Page 41: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

4.4.4.4 IP

Page 42: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Tag=17 identifies 1.1.1.1, routes packet to egress

4.4.4.4 IP

17 MPLS

Page 43: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

4.4.4.4 IP

Egress strips MPLS before giving to 1.1.1.1

Page 44: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Virtual Aggregation paths can be longer than shortest path

Adds to both latency and load

Basic table-size versus overhead trade-off

Page 45: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Neighbor routers require full routing tables!

How can an Aggregation Point router peer with a neighbor router?

Page 46: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Use a Route Reflector (RR) to peer with neighbors

Hierarchy of RR’s are used by ISPs today to help scale iBGP (interior BGP)

Page 47: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Route Reflectors (RR) filter out prefixes from neighbors and assigns to aggregation point routers

Page 48: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

RR’s don’t forward packets, so don’t need (expensive) line card FIB memory

ASIC FIB

Line Card

CPU RIB

Route Processor

LC LC

RR doesn’t need fast FIB memory---full routing table stored in RR RIB only

Routers need fast FIB, but only need to store partial routing table

RR’s scale by number of neighbors (hierarchical organization)

Page 49: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Configuration Testbed

WAIL (Wisconsin Advanced Internet Lab)

Page 50: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Minimizing Overhead

Traffic volume follows a power-law distribution

This has held up for years 95% of traffic goes to 5% of prefixes

Install “Popular Prefixes” in routers On a per-POP or per-router basis Different POPs have different popular prefixes Popular prefixes are stable over weeks

Page 51: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Performance Study

Data from a large tier-1 ISP

Naive AP deployment: A POP has either (redundant) AP’s for all virtual prefixes, or no virtual prefixes

Vary number of Aggregation Points (AP) and number of popular prefixes

Topology and traffic matrix

Naive popular prefixes deployment: same popular prefixes in all routers

Page 52: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Install 1.5% of popular prefixes in all routers

Stretch versus FIB size

Worst-case Stretch Worst-case FIB Size

Average FIB Size Average Stretch

% of Aggregating POPs

Stre

tch

(ms)

FIB

Siz

e (%

of f

ull r

outin

g ta

ble)

Page 53: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Cuts FIB in half (2004 level), virtually no stretch

1989 2008

250000

0

Worst-case Stretch Worst-case FIB Size

Average FIB Size Average Stretch

% of Aggregating POPs

Stre

tch

(ms)

FIB

Siz

e (%

of f

ull r

outin

g ta

ble)

Page 54: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Cuts FIB five times (1996 level), worst case 2ms stretch

1989 2008

250000

0

Worst-case Stretch Worst-case FIB Size

Average FIB Size Average Stretch

% of Aggregating POPs

Stre

tch

(ms)

FIB

Siz

e (%

of f

ull r

outin

g ta

ble)

Page 55: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

0 2 4 6 8

10 12

’26(2.6M)

’24(2M)

’20(1.2M)

’16(.71M)

’12(.42M)

2008(.25M)

0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16

Ave

rag

e L

oa

d I

ncre

ase

(% o

f n

ative

lo

ad

)

Pa

th-le

ng

th I

ncre

ase

(# o

f h

op

s)

Year (Predicted FIB Size in parenthesis)

Load IncreasePath-length Increase

Year (predicted FIB size) Aver

age

Load

Incr

ease

(%

of n

ativ

e lo

ad)

Pat

h-le

ngth

Incr

ease

(#

of h

ops)

Load Increase Path-length Increase

Load and path-length over time

Assume 240K FIB entries (current routers)

Page 56: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

0

20

40

60

80

100

20151053210 0

20

40

60

80

10028231813111098

% o

f T

raff

ic I

mp

acte

d

Ave

rag

e L

oa

d I

ncre

ase

(% o

f n

ative lo

ad

)

% of prefixes considered popular

Worst-case FIB size (% of DFZ routing table)

Traffic ImpactedIncreased Load

Load versus FIB size

% of popular prefixes % o

f tra

ffic

impa

cted

Aver

age

Load

Incr

ease

(%

of n

ativ

e lo

ad)

Worst-case FIB size (% of full routing table)

Roughly 50 % aggregating POPs

Increased Load Traffic Impacted

Page 57: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Time to install full routing table

VA with RRs

No VA

273s

124s

Page 58: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Is this a “real” solution???

Dependency on traffic matrix unfortunate

Global convergence time and update frequency unchanged

Reduction is not log(N) Rather, we reduce slope of growth

RR’s still require full routing table, ISPs exchange full routing table

Page 59: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

Current status and thinking

Router vendor (Huawei) is implementing VA natively

Pushing in IETF

Next: Use similar “divide and conquer” approach to shrink RIB size and processing

http://tools.ietf.org/html/draft-francis-intra-va-00

Page 60: A DIRTY-SLATE APPROACH to Scaling the Internet · IP Address Routing Protocol (BGP, OSPF, ...) Domain Name . ... Performance Study ... Worst-case FIB size (% of full routing table)

[F91] "Efficient and Robust Policy Routing using Multiple Hierarchical Addresses," SIGCOMM 91

[FE93] Tony Eng “Extending the Internet through Address Reuse," SIGCOMM CCR 1993

[F94] "Comparison of Geographical and Provider-rooted Internet Addressing," Computer Networks and ISDN Systems 27(3)437-448, 1994

[FG94] Ramesh Govindan "Flexible Routing and Addressing for a Next Generation IP," SIGCOMM 94

[GF01] Ramakrishna Gummadi “IPNL: A NAT-Extended Internet Architecture,” SIGCOMM 2001

[ZF06] Joy Zhang, Jia Wang “Scaling Global IP Routing with the Core Router-Integrated Overlay,“ ICMP 2006

[GF07] Saikat Guha "An End-Middle-End Approach to Connection Establishment," ACM SIGCOMM 2007

[BF08] Hitesh Ballani, Tuan Cao, Jia Wang

“ViAggre: Making Routers Last Longer," ACM Hotnets 2008, NSDI 2009