6,108 research outputs found
Applying Formal Methods to Networking: Theory, Techniques and Applications
Despite its great importance, modern network infrastructure is remarkable for
the lack of rigor in its engineering. The Internet which began as a research
experiment was never designed to handle the users and applications it hosts
today. The lack of formalization of the Internet architecture meant limited
abstractions and modularity, especially for the control and management planes,
thus requiring for every new need a new protocol built from scratch. This led
to an unwieldy ossified Internet architecture resistant to any attempts at
formal verification, and an Internet culture where expediency and pragmatism
are favored over formal correctness. Fortunately, recent work in the space of
clean slate Internet design---especially, the software defined networking (SDN)
paradigm---offers the Internet community another chance to develop the right
kind of architecture and abstractions. This has also led to a great resurgence
in interest of applying formal methods to specification, verification, and
synthesis of networking protocols and applications. In this paper, we present a
self-contained tutorial of the formidable amount of work that has been done in
formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial
Model Checking Tap Withdrawal in C. Elegans
We present what we believe to be the first formal verification of a
biologically realistic (nonlinear ODE) model of a neural circuit in a
multicellular organism: Tap Withdrawal (TW) in \emph{C. Elegans}, the common
roundworm. TW is a reflexive behavior exhibited by \emph{C. Elegans} in
response to vibrating the surface on which it is moving; the neural circuit
underlying this response is the subject of this investigation. Specifically, we
perform reachability analysis on the TW circuit model of Wicks et al. (1996),
which enables us to estimate key circuit parameters. Underlying our approach is
the use of Fan and Mitra's recently developed technique for automatically
computing local discrepancy (convergence and divergence rates) of general
nonlinear systems. We show that the results we obtain are in agreement with the
experimental results of Wicks et al. (1995). As opposed to the fixed parameters
found in most biological models, which can only produce the predominant
behavior, our techniques characterize ranges of parameters that produce (and do
not produce) all three observed behaviors: reversal of movement, acceleration,
and lack of response
Verifying service continuity in a satellite reconfiguration procedure: application to a satellite
The paper discusses the use of the TURTLE UML profile to model and verify service continuity during dynamic reconfiguration of embedded software, and space-based telecommunication software in particular. TURTLE extends UML class diagrams with composition operators, and activity diagrams with temporal operators. Translating TURTLE to the formal description technique RT-LOTOS gives the profile a formal semantics and makes it possible to reuse verification techniques implemented by the RTL, the RT-LOTOS toolkit developed at LAAS-CNRS. The paper proposes a modeling and formal validation methodology based on TURTLE and RTL, and discusses its application to a payload software application in charge of an embedded packet switch. The paper demonstrates the benefits of using TURTLE to prove service continuity for dynamic reconfiguration of embedded software
Diagnose network failures via data-plane analysis
Diagnosing problems in networks is a time-consuming and error-prone process. Previous tools to assist operators primarily focus on analyzing control
plane configuration. Configuration analysis is limited in that it cannot find
bugs in router software, and is harder to generalize across protocols since it
must model complex configuration languages and dynamic protocol behavior.
This paper studies an alternate approach: diagnosing problems through
static analysis of the data plane. This approach can catch bugs that are
invisible at the level of configuration files, and simplifies unified analysis of a
network across many protocols and implementations. We present Anteater, a
tool for checking invariants in the data plane. Anteater translates high-level
network invariants into boolean satisfiability problems, checks them against
network state using a SAT solver, and reports counterexamples if violations
have been found. Applied to a large campus network, Anteater revealed 23
bugs, including forwarding loops and stale ACL rules, with only five false
positives. Nine of these faults are being fixed by campus network operators
SDL based validation of a node monitoring protocol
Mobile ad hoc network is a wireless, self-configured, infrastructureless
network of mobile nodes. The nodes are highly mobile, which makes the
application running on them face network related problems like node failure,
link failure, network level disconnection, scarcity of resources, buffer
degradation, and intermittent disconnection etc. Node failure and Network fault
are need to be monitored continuously by supervising the network status. Node
monitoring protocol is crucial, so it is required to test the protocol
exhaustively to verify and validate the functionality and accuracy of the
designed protocol. This paper presents a validation model for Node Monitoring
Protocol using Specification and Description Llanguage (SDL) using both Static
Agent (SA) and Mobile Agent (MA). We have verified properties of the Node
Monitoring Protocol (NMP) based on the global states with no exits, deadlock
states or proper termination states using reachability graph. Message Sequence
Chart (MSC) gives an intuitive understanding of the described system behavior
with varying node density and complex behavior etc.Comment: 16 pages, 24 figures, International Conference of Networks,
Communications, Wireless and Mobile 201
Reachability for dynamic parametric processes
In a dynamic parametric process every subprocess may spawn arbitrarily many,
identical child processes, that may communicate either over global variables,
or over local variables that are shared with their parent.
We show that reachability for dynamic parametric processes is decidable under
mild assumptions. These assumptions are e.g. met if individual processes are
realized by pushdown systems, or even higher-order pushdown systems. We also
provide algorithms for subclasses of pushdown dynamic parametric processes,
with complexity ranging between NP and DEXPTIME.Comment: 31 page
- …