SDNRacer: Concurrency Analysis for Software-Defined Networks

被引:0
作者
El-Hassany, Ahmed [1 ]
Miserez, Jeremie [2 ]
Bielik, Pavol [2 ]
Vanbever, Laurent [1 ]
Vechev, Martin [2 ]
机构
[1] Swiss Fed Inst Technol, Dept Informat Technol & Elect Engn, Zurich, Switzerland
[2] Swiss Fed Inst Technol, Dept Comp Sci, Zurich, Switzerland
关键词
Software Defined Networking; OpenFlow; Commutativity Specification; Happens-before; Nondeterminism;
D O I
10.1145/2908080.2908124
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Concurrency violations are an important source of bugs in Software-Defined Networks (SDN), often leading to policy or invariant violations. Unfortunately, concurrency violations are also notoriously difficult to avoid, detect and debug. This paper presents the design and the implementation of a sound and complete dynamic analyzer, SDNRacer, which can ensure a network is free of harmful errors such as data races or per-packet incoherences. SDNRacer is based on two key ingredients: (i) a precise happens-before model for SDNs that captures when events can happen concurrently, and; (ii) a set of sound, domain-specific filters that reduce the reported violations by orders of magnitude. We evaluated SDNRacer on several real-world SDN controllers, running both reactive and proactive applications in large networks. We show that SDNRacer is practically effective: it quickly (within 30 seconds in 90 % of the cases) pinpoints harmful concurrency violations (including unknown bugs) without overwhelming the user with false positives.
引用
收藏
页码:402 / 415
页数:14
相关论文
共 37 条
[1]  
[Anonymous], 2014, P 3 WORKSH HOT TOP S, DOI DOI 10.1145/2620728.2620744
[2]  
Ball T, 2014, ACM SIGPLAN NOTICES, V49, P282, DOI [10.1145/2594291.2594317, 10.1145/2666356.2594317]
[3]  
Beckett Ryan., 2014, P 3 WORKSHOP HOT TOP, P91
[4]  
Big Switch Networks Inc., 2013, FLOODL LEARN SWITCH
[5]  
Big Switch Networks Inc., 2013, FLOODL LOAD BAL APPL
[6]  
Big Switch Networks Inc., 2013, FLOODL CIRC PUSH APP
[7]  
Big Switch Networks Inc., 2013, FLOODL FORW APPL
[8]  
Big Switch Networks Inc., 2013, FLOODL FIR
[9]  
Canini M., USENIX NSDI'12
[10]   The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors [J].
Clements, Austin T. ;
Kaashoek, M. Frans ;
Zeldovich, Nickolai ;
Morris, Robert T. ;
Kohler, Eddie .
SOSP'13: PROCEEDINGS OF THE TWENTY-FOURTH ACM SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, 2013, :1-17