Saved in:
Bibliographic Details
Main Authors: Xu, Xieyang, Yuan, Yifei, Kincaid, Zachary, Krishnamurthy, Arvind, Mahajan, Ratul, Walker, David, Zhai, Ennan
Format: Preprint
Published: 2024
Subjects:
Online Access:https://arxiv.org/abs/2403.17277
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916176547807232
author Xu, Xieyang
Yuan, Yifei
Kincaid, Zachary
Krishnamurthy, Arvind
Mahajan, Ratul
Walker, David
Zhai, Ennan
author_facet Xu, Xieyang
Yuan, Yifei
Kincaid, Zachary
Krishnamurthy, Arvind
Mahajan, Ratul
Walker, David
Zhai, Ennan
contents Relational network verification is a new approach to validating network changes. In contrast to traditional network verification, which analyzes specifications for a single network snapshot, relational network verification analyzes specifications concerning two network snapshots (e.g., pre- and post-change snapshots) and captures their similarities and differences. Relational change specifications are compact and precise because they specify the flows or paths that change between snapshots and then simply mandate that other behaviors of the network "stay the same", without enumerating them. To achieve similar guarantees, single-snapshot specifications need to enumerate all flow and path behaviors that are not expected to change, so we can check that nothing has accidentally changed. Thus, precise single-snapshot specifications are proportional to network size, which makes them impractical to generate for many real-world networks. To demonstrate the value of relational reasoning, we develop a high-level relational specification language and a tool called Rela to validate network changes. Rela first compiles input specifications and network snapshot representations to finite state transducers. It then checks compliance using decision procedures for automaton equivalence. Our experiments using data on complex changes to a global backbone (with over 10^3 routers) find that Rela specifications need fewer than 10 terms for 93% of them and it validates 80% of them within 20 minutes.
format Preprint
id arxiv_https___arxiv_org_abs_2403_17277
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Relational Network Verification
Xu, Xieyang
Yuan, Yifei
Kincaid, Zachary
Krishnamurthy, Arvind
Mahajan, Ratul
Walker, David
Zhai, Ennan
Networking and Internet Architecture
Relational network verification is a new approach to validating network changes. In contrast to traditional network verification, which analyzes specifications for a single network snapshot, relational network verification analyzes specifications concerning two network snapshots (e.g., pre- and post-change snapshots) and captures their similarities and differences. Relational change specifications are compact and precise because they specify the flows or paths that change between snapshots and then simply mandate that other behaviors of the network "stay the same", without enumerating them. To achieve similar guarantees, single-snapshot specifications need to enumerate all flow and path behaviors that are not expected to change, so we can check that nothing has accidentally changed. Thus, precise single-snapshot specifications are proportional to network size, which makes them impractical to generate for many real-world networks. To demonstrate the value of relational reasoning, we develop a high-level relational specification language and a tool called Rela to validate network changes. Rela first compiles input specifications and network snapshot representations to finite state transducers. It then checks compliance using decision procedures for automaton equivalence. Our experiments using data on complex changes to a global backbone (with over 10^3 routers) find that Rela specifications need fewer than 10 terms for 93% of them and it validates 80% of them within 20 minutes.
title Relational Network Verification
topic Networking and Internet Architecture
url https://arxiv.org/abs/2403.17277