SDN traceroute: tracing SDN forwarding without changing network behavior

Software-defined networking provides flexibility in designing networks by allowing distributed network state to be managed by logically centralized control programs. However, this flexibility brings added complexity, which requires new debugging tools that can provide insights into network behavior. We propose a tool, SDN traceroute, that can query the current path taken by any packet through an SDN-enabled network. The path is traced by using the actual forwarding mechanisms at each SDN-enabled device without changing the forwarding rules being measured. This enables administrators to discover the forwarding behavior for arbitrary Ethernet packets, as well as debug problems in both switch and controller logic. Our prototype implementation requires only a few high-priority rules per device, runs on commodity hardware using only the required features of the OpenFlow 1.0 specification, and can generate traces in about one millisecond per hop.

[1]  Brighten Godfrey,et al.  VeriFlow: verifying network-wide invariants in real time , 2012, HotSDN '12.

[2]  Nick McKeown,et al.  Where is the debugger for my software-defined network? , 2012, HotSDN '12.

[3]  Anja Feldmann,et al.  OFRewind: Enabling Record and Replay Troubleshooting for Networks , 2011, USENIX Annual Technical Conference.

[4]  Martín Casado,et al.  NOX: towards an operating system for networks , 2008, CCRV.

[5]  George Varghese,et al.  Automatic Test Packet Generation , 2012, IEEE/ACM Transactions on Networking.

[6]  Brighten Godfrey,et al.  Debugging the data plane with anteater , 2011, SIGCOMM.

[7]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[8]  Nick McKeown,et al.  I Know What Your Packet Did Last Hop: Using Packet Histories to Troubleshoot Networks , 2014, NSDI.

[9]  David Walker,et al.  Abstractions for network update , 2012, SIGCOMM '12.

[10]  Sujata Banerjee,et al.  DevoFlow: scaling flow management for high-performance networks , 2011, SIGCOMM.

[11]  Marco Canini,et al.  A NICE Way to Test OpenFlow Applications , 2012, NSDI.

[12]  George Varghese,et al.  Real Time Network Policy Checking Using Header Space Analysis , 2013, NSDI.

[13]  Randy Presuhn Version 2 of the Protocol Operations for the Simple Network Management Protocol (SNMP) , 2002, RFC.

[14]  Amin Vahdat,et al.  Helios: a hybrid electrical/optical switch architecture for modular data centers , 2010, SIGCOMM '10.

[15]  George Varghese,et al.  Header Space Analysis: Static Checking for Networks , 2012, NSDI.

[16]  Junda Liu,et al.  Libra: Divide and Conquer to Verify Forwarding Tables in Huge Networks , 2014, NSDI.