skip to main content
10.1145/2620728.2620743acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Free Access

An assertion language for debugging SDN applications

Published:22 August 2014Publication History

ABSTRACT

Software Defined Networking (SDN) provides opportunities for network verification and debugging by offering centralized visibility of the data plane. This has enabled both offline and online data-plane verification. However, little work has gone into the verification of time-varying properties (e.g., dynamic access control), where verification conditions change dynamically in response to application logic, network events, and external stimulus (e.g., operator requests).

This paper introduces an assertion language to support verifying and debugging SDN applications with dynamically changing verification conditions. The language allows programmers to annotate controller applications with C-style assertions about the data plane. Assertions consist of regular expressions on paths to describe path properties for classes of packets, and universal and existential quantifiers that range over programmer-defined sets of hosts, switches, or other network entities. As controller programs dynamically add and remove elements from these sets, they generate new verification conditions that the existing data plane must satisfy. This work proposes an incremental data structure together with an underlying verification engine, to avoid naively re-verifying the entire data plane as these verification conditions change. To validate our ideas, we have implemented a debugging library on top of a modified version of VeriFlow, which is easily integrated into existing controller systems with minimal changes. Using this library, we have verified correctness properties for applications on several controller platforms.

References

  1. Pox. http://www.noxrepo.org/pox/about-pox/.Google ScholarGoogle Scholar
  2. Handigol, N., Heller, B., Jeyakumar, V., Lantz, B., and McKeown, N. Reproducible network experiments using container-based emulation. In Proceedings of the 8th International Conference on Emerging Networking Experiments and Technologies (2012), CoNEXT '12, ACM, pp. 253--264. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Handigol, N., Heller, B., Jeyakumar, V., Maziéres, D., and McKeown, N. I know what your packet did last hop: Using packet histories to troubleshoot networks. In 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI 14) (Apr. 2014), USENIX Association, pp. 71--85. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Kazemian, P., Chang, M., Zeng, H., Varghese, G., McKeown, N., and Whyte, S. Real time network policy checking using header space analysis. In Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation (2013), pp. 99--112. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Kazemian, P., Varghese, G., and McKeown, N. Header space analysis: Static checking for networks. In Presented as part of the 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI (San Jose, CA, 2012), USENIX, pp. 113--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Khurshid, A., Zou, X., Zhou, W., Caesar, M., and Godfrey, P. B. Veriflow: Verifying network-wide invariants in real time. In Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation (2013), pp. 15--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Mai, H., Khurshid, A., Agarwal, R., Caesar, M., Godfrey, P. B., and King, S. T. Debugging the data plane with anteater. 290--301.Google ScholarGoogle Scholar
  8. Monsanto, C., Reich, J., Foster, N., Rexford, J., and Walker, D. Composing software-defined networks. In Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation (2013), nsdi'13, pp. 1--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Reitblatt, M., Canini, M., Guha, A., and Foster, N. Fattire: Declarative fault tolerance for software-defined networks. In Proceedings of the Second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking (2013), pp. 109--114. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Soul--e, R., Basu, S., Kleinberg, R., Sirer, E. G., and Foster, N. Managing the network with merlin. In Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks (2013), pp. 24:1--24:7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Wundsam, A., Levin, D., Seetharaman, S., and Feldmann, A. Ofrewind: Enabling record and replay troubleshooting for networks. In Proceedings of the 2011 USENIX Conference on Annual Technical Conference (2011), pp. 29--29. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An assertion language for debugging SDN applications

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      HotSDN '14: Proceedings of the third workshop on Hot topics in software defined networking
      August 2014
      252 pages
      ISBN:9781450329897
      DOI:10.1145/2620728

      Copyright © 2014 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 22 August 2014

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      HotSDN '14 Paper Acceptance Rate50of114submissions,44%Overall Acceptance Rate88of198submissions,44%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader