Race conditions in Software-Defined Networks (SDNs) pose a significant threat to the correctness and reliability of network behavior, particularly in dynamic and distributed control plane environments. This paper presents a formal approach to identifying and analyzing races in SDNs using vector clocks and DyNetKAT, a domain-specific language for specifying and reasoning about dynamic packet-processing policies. By modeling network execution traces with vector clocks, we detect concurrent events through incomparable clock states, which signal potential races. We then assess the harmfulness of these races by comparing the DyNetKAT expressions associated with the corresponding transitions, determining if the race affects the network’s behaviour. Our methodology enables systematic detection of harmful races that lead to packet drops, policy violations, or inconsistent forwarding behaviors. Through case studies and experimental validation on real network topologies, we demonstrate the effectiveness of our approach in uncovering subtle concurrency bugs that are often missed by traditional testing. This work provides a foundation for more robust SDN verification tools and contributes to the safe evolution of programmable network infrastructures.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Concurrency Under Control: Systematic Analysis of SDN Races Hazards

  • Georgiana Caltais,
  • Andrei Covaci,
  • Hossein Hojjat

摘要

Race conditions in Software-Defined Networks (SDNs) pose a significant threat to the correctness and reliability of network behavior, particularly in dynamic and distributed control plane environments. This paper presents a formal approach to identifying and analyzing races in SDNs using vector clocks and DyNetKAT, a domain-specific language for specifying and reasoning about dynamic packet-processing policies. By modeling network execution traces with vector clocks, we detect concurrent events through incomparable clock states, which signal potential races. We then assess the harmfulness of these races by comparing the DyNetKAT expressions associated with the corresponding transitions, determining if the race affects the network’s behaviour. Our methodology enables systematic detection of harmful races that lead to packet drops, policy violations, or inconsistent forwarding behaviors. Through case studies and experimental validation on real network topologies, we demonstrate the effectiveness of our approach in uncovering subtle concurrency bugs that are often missed by traditional testing. This work provides a foundation for more robust SDN verification tools and contributes to the safe evolution of programmable network infrastructures.