Detection of Routing Loops and Analysis of Its Causes

Slides:



Advertisements
Similar presentations
Dynamic Routing Overview 1.
Advertisements

COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
University of Massachusetts at Amherst 1 Flooding Attacks by Exploiting Persistent Forwarding Loops Jianhong Xia, Lixin Gao and Teng Fei University of.
MPLS and Traffic Engineering
Delayed Internet Routing Convergence Craig Labovitz, Abha Ahuja, Abhijit Bose, Farham Jahanian Presented By Harpal Singh Bassali.
Impact of BGP Dynamics on Intra-Domain Traffic Patterns in the Sprint IP Backbone Sharad Agarwal, Chen-Nee Chuah, Supratik Bhattacharyya, Christophe Diot.
Extending Networks. Three Levels of Extension Physical Layer –Repeaters Link Layer –Bridges –Switches Network –Routers: “Connecting networks”
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
Guide to TCP/IP, Third Edition
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
Routing Algorithms (Ch5 of Computer Network by A. Tanenbaum)
Distance Vector Routing Protocols W.lilakiatsakun.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
10/8/2015CST Computer Networks1 IP Routing CST 415.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Hierarchical Routing (§5.2.6)
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 7 Internet Protocol (IP) Routing.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
A Measurement Study on the Impact of Routing Events on End-to-End Internet Path Performance Feng Wang 1, Zhuoqing Morley Mao 2 Jia Wang 3, Lixin Gao 1,
Detection of Routing Loops and Analysis of Its Causes Sue Moon Dept. of Computer Science KAIST Joint work with Urs Hengartner, Ashwin Sridharan, Richard.
By, Matt Guidry Yashas Shankar.  Analyze BGP beacons which are announced and withdrawn, usually within two hour intervals.  The withdraws have an effect.
ICS 156: Networking Lab Magda El Zarki Professor, ICS UC, Irvine.
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
Advanced Technology Laboratories 8 December 2000 page 1 Characterization of Traffic at a Backbone POP Nina Taft Supratik Bhattacharyya Jorjeta Jetcheva.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 Module 10 Routing Fundamentals and Subnets.
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
1 Monitoring: from research to operations Christophe Diot and the IP Sprintlabs ipmon.sprintlabs.com.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
COMPUTER NETWORKS CS610 Lecture-30 Hammad Khalid Khan.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 2 v3.1 Module 8 TCP/IP Suite Error and Control Messages.
1 Computer Networks Chapter 5. Network layer The network layer is concerned with getting packets from the source all the way to the destination. Getting.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
CS 3700 Networks and Distributed Systems
Introduction to TCP/IP networking
Dynamic Routing Protocols II OSPF
CS 3700 Networks and Distributed Systems
ICMP ICMP – Internet Control Message Protocol
Forwarding and Routing IP Packets
Chapter 22 Q and A Victor Norman CS332 Fall 2017.
COMP 3270 Computer Networks
Ad-hoc Transport Layer Protocol (ATCP)
THE NETWORK LAYER.
Chapter 5 The Network Layer.
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Routing.
EEC-484/584 Computer Networks
Network Core and QoS.
Intradomain Routing Outline Introduction to Routing
Dynamic Routing and OSPF
COS 561: Advanced Computer Networks
A Probabilistic Routing Protocol for Mobile Ad Hoc Networks
Distributed Systems CS
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Transient BGP Loops Do they matter, and what can be done about them?
BGP Instability Jennifer Rexford
Networking and Network Protocols (Part2)
COMPUTER NETWORKS CS610 Lecture-29 Hammad Khalid Khan.
IP Forwarding Relates to Lab 3.
Transport Protocols: TCP Segments, Flow control and Connection Setup
ITIS 6167/8167: Network and Information Security
Routing.
Lecture 4a Mobile IP 1.
Review of Internet Protocols Network Layer
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Network Core and QoS.
Distributed Systems CS
Presentation transcript:

Detection of Routing Loops and Analysis of Its Causes Sue Moon Dept. of Computer Science KAIST Joint work with Urs Hengartner, Ashwin Sridharan, Richard Mortier, Christophe Diot

Link Utilization Internet backbone link Routing loop causes increase by 25%! Why do we know it is a loop? What exactly causes increase? Why is this bad? (useful traffic might be dropped)

Overview Routing protocols have much impact on the performance of the network How do we detect them? How often do loops occur? How do they impact loss and delay? Analyze causes of loops What causes them?

Possible Causes of Routing Loops Persistent routing loops E.g., due to misconfiguration. Loops can last hours if undetected. Transient routing loops Routing state is dynamic. Inconsistencies in routing state can cause loops. Inconsistencies should disappear within seconds/minutes. Expectation: Loops last seconds/minutes.

How Can Transient Routing Loop Occur?

Detection of “Loops” in Packet Traces Detect replicas in a packet trace Packets with exact same header but for TTL,CRC TTL difference: 2 or larger Set of replicas = Packet Loop Set of packet loops associated with a routing event = Routing Loop

Traces Backbone traces NYC and SJ links from Nov. 8th, 2001 NYC links from Oct. 9th, 2002

Packet Traces Trace Length Avg BW Packets Looped Total (106) (hours) (Mbps) Total (106) Backbone 1 24 1 50 4.839% Backbone 2 7.5 243 1 677 0.118% Backbone 3 11 2.2 20 1.687% Backbone 4 107 1350 0.026% …loops occur in bursts and can affect up to 25% of packets! Highlight that we measured looped packets with our algorithm On average, loops do not affect much traffic, but…

Observations about Packet Loops General Observations Loop size: # of nodes involved in packet loop Number of replicas in packet loop Properties of packet loops Packet types Duration Of packet loops in packets

Loop Size Loop size: value by which TTL field in packet loops gets decremented. Figure 2

Packet Loop Length How often does a packet show up before it expires? Figure 3

Traffic Types Different types of Internet traffic. Routers are oblivious to type of traffic. Expectation: Traffic types of packet loops streams are distributed similarly as traffic types of overall traffic.

Traffic Types (Backbone 2) By protocol TCP: 10% (93%) UDP: 16% (6%) ICMP 77% (0.3%) TCP Flags SYN: 51% (5%) ACK: 73% (97%) RST: 13% (1.5%) FIN: 8% (4%) Most traffic has ack bit set TCP does not add up to 100% After first figure: mention that reasons will be discussed soon

Reasons for Increases TCP SYN traffic. UDP traffic. ICMP traffic. TCP is connection oriented. End point tries to open connection, sends SYN packet. SYN packet loops and expires, no other packets are sent. UDP traffic. UDP is connectionless, no feedback from receiver. Sending application is oblivious of loop. ICMP traffic. Caused by traceroute/ping applications. People are exploring loop. Observations confirm presence of loops!

Out-Of-Order Delivery

Causes of Packet Loops: BGP customer AS 2 C AS 1 A B D

Matching BGP Updates Any advertisement of the longest prefix? Temporal vicinity of 2 minutes to packet loops? Change in next hop or AS path?

Causes of Loops: ISIS R1 1 1 R2 1 R3 1 1 R4 4 R5

Time-Line at Nodes R2 and R3 Failure Detection LSP generation Shortest Path Computation LSP Flooding FIB Update LSP Arrival Shortest Path Computation FIB Update

If forwarding path changed and it is within temporal vicinity of loop Matching ISIS Updates Upon receipt of an LSP, compute the shortest path from the observation node to the egress router If forwarding path changed and it is within temporal vicinity of loop see if the observation node lies on the shortest path before or after the change

BGP Update Matches Trace % transient % persistent (BGP) % persistent (no BGP) Total NYC-20 40.1 50.8 90.8 NYC-21 80.2 7.5 87.9 NYC-23 3.3 NYC-22 18.8 80.6 99.4 NYC-24 70.0 NYC-25 43.7 15.5 59.2

Factors to Varying Success Persistent Loops Events occurred before trace collection BGP changes external to Sprint Comparison with RouteView updates: increase in matches Geographical distribution of loop destinations Measurement PoP not involved in route changes Avg # of ASes traversed: longest for NYC-23

Conclusions Loops can be detected and analyzed Loops are not uncommon Most are due to BGP updates BGP changes farther away from the observations point may not be identified

BACKUP SLIDE

CDF of Number of Replicas

CDF of Inter-Replica Spacing Time

Packet Types of All Traffic

Packet Types of Loops

Destination Addresses of Loops Backbone 1 Regional 2

CDF of Replica Stream Duration in Time

CDF of Routing Loop Duration in Time

Overview Types and causes behind routing loops Transient - part of normal routing protocol operation Persistent - “long-lasting”, manual intervention required Detection of routing loops in packet traces Detection algorithm Observations about the routing loops Analysis of performance impact Loss, delay, out-of-order delivery On-line detection algorithm Summary

Fraction of Packets in Loops Backbone 1 Backbone 4

Construction of a Typical End-To-End Path 10 hops in the Backbone Regional to Backbone DSL/LAN/Cable/Phone

Estimate of End-to-End Loss Assume: No loss on the access link due to routing loops Losses are independence between links Estimate: Lr: from Regional traces Lb: from Backbone traces but for Backbone 4 1 - (1- Lr)2(1- Lb)10 = 0.003 ~ 0.025 Implications on SLA??

Delay Due to Routing Loops Average delays range from 50 to 500ms.

Out-Of-Order Delivery

Causes of Loop Backbone 2,3, and 6 possibly had configuration problems. BGP updates - transient IGP - transient and persistent

Overview Types and causes behind routing loops Transient - part of normal routing protocol operation Persistent - “long-lasting”, manual intervention required Detection of routing loops in packet traces Detection algorithm Observations about the routing loops Analysis of performance impact Loss, delay, out-of-order delivery On-line detection algorithm Summary & Future Work

To Detect a Loop On-line Focus on persistent loops Questions: More focus on persistent loops How much traffic is affected? -> alarm What prefix is affected? -> warning

On-Line Detection Algorithm How many packets to /24 get looped? 100 WARNING How many looped packets / million? 5% How long (in millions) did it last? 10 millions ALARM By the time an alarm is raised, warnings are raised and help debugging the system Fixed memory and computation complexity

Validation of On-Line Algorithm

Summary Impact of routing on performance has been analyzed in terms of loss and delay. Per-link loss varies greatly. Excluding “outliers”, end-to-end loss of 0.3% is unavoidable. For a small number of packets that escape the loops, 50 ~ 500 msec delay is added on the average. On-line detection algorithm In conjunction with routing protocol monitoring, it will help detect and fix persistent loops.

More work needed to determined causes behind routing loops Future Work More work needed to determined causes behind routing loops Correlate with BGP/IS-IS updates Address hijacking Wrong aggregation Origin misconfiguration Export misconfiguration Integration with existing monitoring tools

Backup Slides

Superbowl Sunday, 2/3/2002 New Traces, not yet analyzed in detail. Only the on-line detection algorithm was used to collect alarms and warnings.

Superbowl Sunday, 2/3/2002 New Traces, not yet analyzed in detail. Only the on-line detection algorithm was used to collect alarms and warnings.

What Next? Alarms and warnings How to extract just enough info to be useful How to relate it with BGP/IS-IS update info How to integrate with management/monitoring infrastructure