CSE 222A: Computer Communication NetworksAlex C. Snoeren
Lecture 4:Routing
Thanks: Amin Vahdat
Lecture 4 Overview
● Paxon ‘95 discussion
● Brief intro to overlay and active networking
2CSE 222A – Lecture 4: Routing
End-to-End Routing Behavior● Importance of paper
u Revitalized field of network measurementu Use of statistical techniques to capture new types of
measurementsu Empirical findings of routing behavior
(motivation for future work)
● Various routing pathologiesu Routing loopsu Erroneousu Connectivity altered mid-streamu Fluttering…
3CSE 222A – Lecture 4: Routing
Paxson Study: Forwarding Loops
● Forwarding loopu Packet returns to same router multiple times
● May cause traceroute to show a loopu If loop lasted long enoughu So many packets traverse the loopy path
● Traceroute may reveal false loopsu Path change that leads to a longer pathu Causing later probe packets to hit same nodes
● Heuristic solutionu Require traceroute to return same path 3 times
CSE 222A – Lecture 4: Routing
Routing Loops● Persistent Routing Loops
u 10 persistent routing loops in D1u 50 persistent routing loops in D2
● Temporary Routing Loopsu 2 loops in D1u 21 in D2
● Location of Routing Loops: All in one AS
5CSE 222A – Lecture 4: Routing
Paxson Study: Causes of Loops
● Transient vs. persistentu Transient: routing-protocol convergenceu Persistent: likely configuration problem
● Challengesu Appropriate time boundary between the two?u What about flaky equipment going up and down?u Determining the cause of persistent loops?
● Anecdote on recent study of persistent loopsu Provider has static route for customer prefixu Customer has default route to the provider
CSE 222A – Lecture 4: Routing
Pathologytype
Prevalencein 1995
Prevalencein 1996
Long-livedRouting loops
Short-livedRouting loops
Outage>30s
Total
0.065%~
0.14%~same
same
0.96% 2.2%
3.4%1.5%
End-to-End Routing Behavior
7CSE 222A – Lecture 4: Routing
Paxson Study: Path Fluttering
● Rapid changes between pathsu Multiple paths between a pair of hostsu Load balancing policies inside the network
● Packet-based load balancingu Round-robin or randomu Multiple paths for packets in a single flow
● Flow-based load balancingu Hash of some fields in the packet headeru E.g., IP addresses, port numbers, etc.u To keep packets in a flow on one path
CSE 222A – Lecture 4: Routing
Paxson Study: Routing Stability
● Route prevalenceu Likelihood of observing a particular routeu Relatively easy to measure with sound samplingu Poisson arrivals see time averages (PASTA)u Most host pairs have a dominant route
● Route persistenceu How long a route endures before a changeu Much harder to measure through active probesu Look for cases of multiple observationsu Typical host pair has path persistence of a week
CSE 222A – Lecture 4: Routing
Paxson Study: Route Asymmetry
● Hot-potato routing ● Other causesu Asymmetric link weights
in intradomain routingu Cold-potato routing,
where AS requests traffic enter at particular place
● Consequencesu Lots of asymmetryu One-way delay is not
necessarily half of the round-trip time
Customer A
Customer B
multiplepeeringpoints
Provider A
Provider B
Early-exit routing
Questions● Why can’t we measure the Internet more directly?
u What can we do about it?
● Right division of labor between host and network?u For path selectionu For network monitoring
● How do we fix these routing problems?u In a decentralized, federated networku How to incentivize better network management
11CSE 222A – Lecture 4: Routing
Internet “Ossification”● Internet protocols evolve over long timescales
u Witness the paper we just read from 1974u IPv6 was proposed over 20 years ago now! (RFC2460)
● Yet new ideas appear all the timeu RFCs are now at 8500+u SIGCOMM/NSDI/etc. are full of new protocols/architectures
● Key challenge: how to deploy new things STAT?u In particular changes to the networking layeru Would naively require changing every router on the Internet!
12CSE 222A – Lecture 4: Routing
Obvious solution: Overlays● Build the service at a layer above IP
u Create an “overlay” of nodes connected by IPu Functionality implemented at IP “end hosts” and forwarded onu IP provides “tunnels” between nodes of overlay
● Exactly the same approach originally used by IPu IP treated the phone network as a series of tunnels
● Used to introduce a variety of services in the ‘90su M-Bone, X-Bone, A-Bone, etc., etc.
● Major downside is performanceu Each packet needs to be handled by an end hostu Likely traverses an inefficient route
13CSE 222A – Lecture 4: Routing
An Alternative Approach● Make the routers extensible: Active Networking
u Provide a mechanism to implement services at an Internet routeru Removes the need to route indirectlyu But still requires additional end-host-like processing
● Same idea, two different layersu Active nodes are implemented at the (extended) network layeru Overlay nodes operate at the application layer
● Performance/deployment tradeoffsu Anybody can deploy an overlay networku But Active networks could be much more efficient
14CSE 222A – Lecture 4: Routing
Active Nodes● Execute protocols in restricted environment
u Limits access to sensitive/shared resources
● Primitives for application-defined protocol processing● Enforce limits on resource consumption
u Active Nodes responsible for network integrity and errorsu TTL fields decreased as resources are consumedu Capsules with 0 TTL’s discarded
● Code propagationu Capsules identify protocolu Protocol uniquely define code path, Active Node retrieves itu MD-5 signature for safety
15CSE 222A – Lecture 4: Routing
ANTS● Java toolkit for writing and executing active protocol code● Goals
u Simultaneous use of multiple network protocolsu Deploy multiple protocols with no central control (orig)u Dynamic deployment of new protocols (orig)
● Migration path from non-active to active worldu Benefits from a small number of active nodesu Rather than make hop by hop routing decisions, make active
node to active node routing decisionsu Minimum number of nodes necessary for success?u Small number of nodes successful/meltdown under scale?
16CSE 222A – Lecture 4: Routing
For Next Class…
● Read Wetherall ‘98
● Submit project ideas by Thursdayu I’ll post some suggestions by next weeku We’ll post ideas/names to help you find groups afterwardsu Email to me
17CSE 222A – Lecture 4: Routing
Top Related