Active Learning of Symbolic NetKAT Automata
By: Mark Moeller , Tiago Ferreira , Thomas Lu and more
Potential Business Impact:
Teaches computers to understand network traffic automatically.
NetKAT is a domain-specific programming language and logic that has been successfully used to specify and verify the behavior of packet-switched networks. This paper develops techniques for automatically learning NetKAT models of unknown networks using active learning. Prior work has explored active learning for a wide range of automata (e.g., deterministic, register, B\"uchi, timed etc.) and also developed applications, such as validating implementations of network protocols. We present algorithms for learning different types of NetKAT automata, including symbolic automata proposed in recent work. We prove the soundness of these algorithms, build a prototype implementation, and evaluate it on a standard benchmark. Our results highlight the applicability of symbolic NetKAT learning for realistic network configurations and topologies.
Similar Papers
StacKAT: Infinite State Network Verification
Programming Languages
Checks if computer networks work correctly.
Softly Symbolifying Kolmogorov-Arnold Networks
Machine Learning (CS)
Makes AI understand and explain its own thinking.
Weighted GKAT: Completeness and Complexity
Logic in Computer Science
Makes computer programs easier to check for mistakes.