skip to main content
10.5555/2228298.2228311guideproceedingsArticle/Chapter ViewAbstractPublication PagesnsdiConference Proceedingsconference-collections
Article

Header space analysis: static checking for networks

Published: 25 April 2012 Publication History

Abstract

Today's networks typically carry or deploy dozens of protocols and mechanisms simultaneously such as MPLS, NAT, ACLs and route redistribution. Even when individual protocols function correctly, failures can arise from the complex interactions of their aggregate, requiring network administrators to be masters of detail. Our goal is to automatically find an important class of failures, regardless of the protocols running, for both operational and experimental networks.
To this end we developed a general and protocol-agnostic framework, called Header Space Analysis (HSA). Our formalism allows us to statically check network specifications and configurations to identify an important class of failures such as Reachability Failures, Forwarding Loops and Traffic Isolation and Leakage problems. In HSA, protocol header fields are not first class entities; instead we look at the entire packet header as a concatenation of bits without any associated meaning. Each packet is a point in the {0,1}L space where L is the maximum length of a packet header, and networking boxes transform packets from one point in the space to another point or set of points (multicast).
We created a library of tools, called Hassel, to implement our framework, and used it to analyze a variety of networks and protocols. Hassel was used to analyze the Stanford University backbone network, and found all the forwarding loops in less than 10 minutes, and verified reachability constraints between two subnets in 13 seconds. It also found a large and complex loop in an experimental loose source routing protocol in 4 minutes.

References

[1]
P. Kazemian, G. Varghese, N. McKeown, Header Space Analysis, Technical Report, http://stanford.edu/~kazemian/hsa.pdf
[2]
Header Space Library (Hassel) http:/stanford.edu/~kazemian/ hassel.tar.gz
[3]
T. V. Lakshman and D. Stiliadis, High-Speed Policy-based Packet Forwarding Using Efficient Multi-dimensional Range Matching, In SIGCOMM. 1998.
[4]
G. Xie, J. Zhan, D. Maltz, H. Zhang, A. Greenberg, G. Hjalmtysson, and J. Rexford, On Static Reachability Analysis of IP Networks, In INFOCOM. 2005.
[5]
N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner, OpenFlow: Enabling Innovation in Campus Networks, In ACM SIGCOMM Computer Communication Review, Volume 38, Number 2, 2008.
[6]
R. Sherwood, G. Gibb, K.K Yap, G. Appenzeller, M. Casado, N. McKeown, G. Parulkar, Can the Production Network Be the Test-bed?, In OSDI. 2010.
[7]
R. Draves, C. King, S. Venkatachary, B. Zill, Constructing optimal IP routing tables, In INFOCOM. 1999.
[8]
T. Roscoe, S. Hand, R. Isaacs, R. Mortier, P. Jardetzky Predicate Routing: Enabling Controlled Networking In HotNets. 2002.
[9]
Y. Bartal, A. J. Mayer, K. Nissim, and A. Wool. Firmato: A novel firewall management toolkit, In IEEE Symposium on Security and Privacy. 1999.
[10]
A. Mayer, A. Wool, and E. Ziskind, Fang: A firewall analysis engine, In IEEE Symposium on Security and Privacy. 2000.
[11]
L. Yuan, J. Mai, Z. Su, H. Chen, C-N. Chuah, and P. Mohapatra, FIREMAN: A Toolkit for Firewall Modeling and Analysis, In IEEE Symposium on Security and Privacy. 2006.
[12]
F. Le, G. Xie, D. Pei, J. Wang, and H. Zhang, Shedding Light on the Glue Logic of the Internet Routing Architecture, In SIGCOMM. 2008.
[13]
F. Le, G. Xie, and H. Zhang, Understanding Route Redistribution, In IEEE ICNP. 2007.
[14]
M. Karsten, S. Keshav, S. Prasad, M. Beg An Axiomatic Basis for Communication In SIGCOMM. 2007.
[15]
N. Feamster, H. Balakrishnan, Detecting BGP configuration faults with static analysis, In NSDI. 2005.
[16]
H. Mai, A. Khurshid, R. Agarwal, M. Caesar, P. B. Godfrey, S. T. King, Debugging the data plane with anteater In SIGCOMM. 2011.
[17]
E. M. Clarke, O. Grumberg, D. A. Peled, Model Checking, MIT Press, 1999.
[18]
S. Brown, Z. Vranesic, Fundamentals of Digital Logic with Verilog Design, McGraw-Hill, 2003.
[19]
Global Environment for Network Innovations (GENI), http://www.geni.org
[20]
The Health Insurance Portability and Accountability Act (HIPAA), http://www.hhs.gov/ocr/privacy/

Cited By

View all
  1. Header space analysis: static checking for networks

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Guide Proceedings
    NSDI'12: Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
    April 2012
    30 pages

    Sponsors

    • VMware
    • NSF: National Science Foundation
    • Google Inc.
    • Infosys
    • Microsoft Reasearch: Microsoft Reasearch

    Publisher

    USENIX Association

    United States

    Publication History

    Published: 25 April 2012

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 14 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media