Abstractions for Verifying Isolation Properties in Stateful Networks

08/19/2017
by   Kalev Alpernas, et al.
0

Modern networks achieve robustness and scalability by maintaining states on their nodes. These nodes are referred to as middleboxes and are essential for network functionality. However, the presence of middleboxes drastically complicates the task of network verification. Previous work showed that the problem is undecidable in general and EXPSPACE-complete when abstracting away the order of packet arrival. We describe a new algorithm for conservatively checking isolation properties of stateful networks. The asymptotic complexity of the algorithm is polynomial in the size of the network, albeit being exponential in the maximal number of queries of the local state that a middlebox can do, which is often small. Our algorithm is sound, i.e., it can never miss a violation of safety but may fail to verify some properties. The algorithm performs on-the fly abstract interpretation by (1) abstracting away the order of packet processing and the number of times each packet arrives, (2) abstracting away correlations between states of different middleboxes and channel contents, and (3) representing middlebox states by their effect on each packet separately, rather than taking into account the entire state space. We show that the abstractions do not lose precision when middleboxes may reset in any state. This is encouraging since many real middleboxes reset, e.g., after some session timeout is reached or due to hardware failure.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/19/2017

Modular Safety Verification for Stateful Networks

Modern networks achieve robustness and scalability by maintaining states...
research
06/02/2021

Some Complexity Results for Stateful Network Verification

In modern networks, forwarding of packets often depends on the history o...
research
01/16/2021

Galleon: Reshaping the Square Peg of NFV

Software is often used for Network Functions (NFs) – such as firewalls, ...
research
12/28/2018

Clippy(ing) Network Functions: Towards Better Abstractions for Checking and Designing Network Programs

When programming network functions, changes within a packet tend to have...
research
01/15/2021

Deadlock in packet switching networks

A deadlock in a packet switching network is a state in which one or more...
research
12/24/2020

Verifying Liveness Properties of ML Programs

Higher-order recursion schemes are a higher-order analogue of Boolean Pr...
research
01/12/2022

The Information Velocity of Packet-Erasure Links

We consider the problem of in-order packet transmission over a cascade o...

Please sign up or login with your details

Forgot password? Click here to reset