Change search
ReferencesLink to record
Permanent link

Direct link
Systematically Testing OpenFlow Controller Applications
Show others and affiliations
2015 (English)In: Computer Networks, ISSN 1389-1286, E-ISSN 1872-7069, Vol. 92Article in journal (Refereed) Published
Abstract [en]

The emergence of OpenFlow-capable switches enables exciting new network functionality, at the risk of programming errors that make communication less reliable. The centralized programming model, where a single controller program manages the network, seems to reduce the likelihood of bugs. However, the system is inherently distributed and asynchronous, with events happening at different switches and end hosts, and inevitable delays affecting communication with the controller. In this paper, we present efficient, systematic techniques for testing unmodified controller programs. Our NICE tool applies model checking to explore the state space of the entire system—the controller, the switches, and the hosts. Scalability is the main challenge, given the diversity of data packets, the large system state, and the many possible event orderings. To address this, we propose a novel way to augment model checking with symbolic execution of event handlers (to identify representative packets that exercise code paths on the controller). We also present a simplified OpenFlow switch model (to reduce the state space), and effective strategies for generating event interleavings likely to uncover bugs. Our prototype tests Python applications on the popular NOX platform. In testing three real applications—a MAC-learning switch, in-network server load balancing, and energy-efficient traffic engineering—we uncover thirteen bugs

Place, publisher, year, edition, pages
Elsevier, 2015. Vol. 92
National Category
Communication Systems Computer Science
URN: urn:nbn:se:kth:diva-176481DOI: 10.1016/j.comnet.2015.03.019ISI: 000366785500007ScopusID: 2-s2.0-84948569552OAI: diva2:867620
EU, European Research Council, 259110

QC 20151110

Available from: 2015-11-05 Created: 2015-11-05 Last updated: 2016-01-15Bibliographically approved

Open Access in DiVA

The full text will be freely available from 2017-09-01 14:51
Available from 2017-09-01 14:51

Other links

Publisher's full textScopus

Search in DiVA

By author/editor
Kostic, Dejan
By organisation
Network Systems Laboratory (NS Lab)
In the same journal
Computer Networks
Communication SystemsComputer Science

Search outside of DiVA

GoogleGoogle Scholar
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Altmetric score

Total: 167 hits
ReferencesLink to record
Permanent link

Direct link