1 / 33

Measuring Load-Balanced Paths in the Internet

Measuring Load-Balanced Paths in the Internet. Brice Augustin Timur Friedman and Renata Teixeira Laboratoire LIP6 – CNRS Université Pierre et Marie Curie – Paris 6. Measurement tools expect a single path. The traditional model:. The actual “path”:. K. D. B. C. I. J. Dst. Src. B.

ziazan
Download Presentation

Measuring Load-Balanced Paths in the Internet

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Measuring Load-Balanced Paths in the Internet • Brice Augustin • Timur Friedman and Renata Teixeira • Laboratoire LIP6 – CNRS • Université Pierre et Marie Curie – Paris 6

  2. Measurement tools expect a single path The traditional model: The actual “path”: K D B C I J Dst Src B C J G H I A D L M E F N Many network operators use the load balancing capabilities of their routers

  3. Per-destination load balancing Dst1 A C Dst1 E Src L Dst2 Dst2 B D • Different Dsts in a prefix, different paths • Different flows to same Dst, same path

  4. Per-flow load balancing Flow 1 A C Dst E Src L Flow 2 B D • A flow = 5-tuple • Src and dst addresses, protocol, src and dst ports • All packets in a flow take the same path

  5. Per-packet load balancing Flow 1 A C Dst E Src L Flow 1 B D • Packets to a host may take different paths • Even if they belong to the same flow

  6. Paris traceroute: Tracing a single path • Construct probes for per-flow load balancing • All probes follow the same path Port 1 Port 1 A C Port 1 Dst E Src L TTL = 2 TTL = 3 B D TTL = 1

  7. Paris traceroute: Tracing all the paths Port 5 Port 3 Port 1 A C Dst E Src L Port 6 Port 4 Port 2 B D 1. Discover the load balancers • Vary the flow identifier of probes 2. Classify them according to their types • Maintain the flow identifier

  8. Outline • Measurements of load-balanced paths • Measurement setup • Metrics describing load-balanced paths • Characterization • General statistics • Structure of load-balanced paths • RTTs of load-balanced paths

  9. Measurement infrastructure • 15 sources • RON nodes: USA (mostly) and Europe • 68k destinations • Randomly picked from prefixes in a BGP table • Two series of measurements • Trace load-balanced paths for all src-dst pairs • Collect RTTs for a subset of src-dst pairs

  10. Load balancing is common • % of src-dst pairs affected by load balancing • Found load balancing in 10% of ASes • Especially tier-1 ISPs: 7 out of 9 • Generally intra-domain load balancing • Very few paths spanning 2 ASes

  11. Metrics of interest • Connectivity: length, width, symmetry • Round-trip times RTT1 A A C Dst E Src L B D RTT2 Diamond length: 3 hops Diamond asymmetry: 1 hop A diamond Diamond width: 2 paths Compare RTT1 and RTT2

  12. Length 2 generally means parallel links: Paris traceroute outcome: Actual topology: A A C R2 C L L R1 R3 B B Diamonds are often short… Per-flow and per-dest More than 50% of diamonds are 2 or 3 hops long 1% of diamonds have more than 8 hops # source-destination pairs Per-packet 90% are 2 hops long Length

  13. …but a few are very long! • Up to 17 hops long • Longer paths tend to be per-flow and per-destination Source Destination

  14. Diamonds are often narrow… All types of load balancing 50% of diamonds have only 2 disjoint paths Width and length 50% of diamonds are both short and narrow # source-destination pairs Width

  15. …but a few are very wide! A B C Q R S P N O L I J K M H E F G D T U • Maximum width is 16: built-in limit of routers • Why so many links? Bundle of low-capacity links

  16. Diamonds are often symmetric… Per-flow and per-dest More than 80% of diamonds are symmetric Per-packet 95% are symmetric # source-destination pairs Asymmetry greater than 3 is rare Asymmetry

  17. …but a few are very unbalanced! • Origins of asymmetry: routers can select.. • Paths with the same cost • Same link weight, but different hop count • Paths with slightly different costs • “Unequal-cost multipath” mechanism • For per-flow, maximum asymmetry is 8 hops G D F E C B H I J A MPLS tunnel

  18. Refining RTT measurements • Compare RTTs of load-balanced paths • Maintain the flow identifier for each path • But responses might take different return paths • Responses are ICMP packets • ICMP packets often are load-balanced Response 1 D B L A Src F E C Response 2

  19. Maintaining the return flow identifier • Build a probe • Fix the desired forward flow identifier • Predict the ICMP response • Its content essentially depends on the probe • Tweak the probe • Modify data to get the desired return flow id

  20. Few diamonds have RTT differences • Out of 21k per-flow load-balanced paths: • 12% with delay difference > 1 ms • A few cases with delay difference > 20 ms • Asymmetric and long diamonds • Often exhibit delay differences

  21. Conclusion • Load balancing is widely used in the Internet • Diamonds are often short and narrow • Some exceptionally long or wide diamonds • Implications of these findings • Measurement of path properties • Control the measured paths under load balancing • Fix the return path for RTT measurements • Troubleshooting of end-to-end paths • Problems may be “hidden” because of load balancing

  22. More information www.paris-traceroute.net

  23. Enumerating interfaces Steps: Port 11 Port 8 Port 4 Port 2 • Nexthops of L? Port 1 ? A • Suppose 2 interfaces • Send 6 probes through L Port 10 Src Port 9 L Port 7 • Responses from 2 interfaces Port 6 Port 5 Port 3 • Suppose actually 3 interfaces ? B • Send 5 more probes through L TTL = 1 • No third interface • Stop probing ? Parameters: • 95% confidence degree

  24. Few diamonds have RTT differences Per-flow and per-dest More than 80% of diamonds are symmetric # source-destination pairs Ratio between min delay and max delay of paths in a diamond

  25. Diamonds are often short.. • Per-flow and per-destination diamonds • More than 50% have less than 4 hops • Per-packet diamonds • 90% with length 2 • Length 2 generally means parallel links: Paris traceroute outcome: Actual topology: A0 0 1 2 0 A 0 B0 L B L0 A1 2 1

  26. Length 2 generally means parallel links: Diamonds are often short… Paris traceroute outcome: Actual topology: # source-destination pairs A0 0 1 2 0 A 0 B0 L B L0 A1 2 1 Length

  27. Diamonds are often narrow… • For all types of load balancing: • More than 50% have only 2 disjoint paths • Width and length • Half of diamonds are both short and narrow • Others are either long and narrow.. • .. or short and wide

  28. Length 2 generally means parallel links: Paris traceroute outcome: Actual topology: A A C R2 C L L R1 R3 B B

  29. Length 2 generally means parallel links: Paris traceroute outcome: Actual topology: A A C R2 C L L R1 R3 B B Diamonds are often short… Per-flow and per-dest More than 50% of diamonds are 2 or 3 hops long 1% of diamonds have more than 8 hops # source-destination pairs Per-packet 90% are 2 hops long Length

  30. Diamonds are often symmetric… Per-flow and per-dest More than 80% of diamonds are symmetric Per-packet 95% are symmetric # source-destination pairs Asymmetry greater than 3 is rare Asymmetry

  31. Diamonds are often narrow… All types of load balancing 50% of diamonds have only 2 disjoint paths Width and length 50% of diamonds are both short and narrow # source-destination pairs Width

  32. Length 2 generally means parallel links: Diamonds are often short… Per-flow and per-dest More than 50% of diamonds are 2 or 3 hops long 1% of diamonds have more than 8 hops # source-destination pairs Per-packet 90% are 2 hops long Paris traceroute outcome: Actual topology: A0 0 1 2 0 A 0 B0 L B L0 A1 2 1 Length

More Related