UPPAAL-based Software-Defined Network Verification Uliana Popesko Lomonosov Moscow State University 2014.

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

Heng Pan , Hongtao Guan, Junjie Liu (ICT, CAS)
Lecture 23UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 23.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
1 Model checking. 2 And now... the system How do we model a reactive system with an automaton ? It is convenient to model systems with Transition systems.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
CloudWatcher: Network Security Monitoring Using OpenFlow in Dynamic Cloud Networks or: How to Provide Security Monitoring as a Service in Clouds? Seungwon.
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 3 School of Innovation, Design and Engineering Mälardalen University 2012.
UPPAAL Introduction Chien-Liang Chen.
An Overview of Software-Defined Network Presenter: Xitao Wen.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
August Moscow meeting1August Moscow meeting1August Moscow meeting11 Deductive tools in insertion modeling verification A.Letichevsky.
VeriCon: Towards Verifying Controller Programs in SDNs (PLDI 2014) Thomas Ball, Nikolaj Bjorner, Aaron Gember, Shachar Itzhaky, Aleksandr Karbyshev, Mooly.
Review of topics Final exam : -May 2nd to May 7 th - Projects due on May 7th.
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
CSE 555 Protocol Engineering Dr. Mohammed H. Sqalli Computer Engineering Department King Fahd University of Petroleum & Minerals Credits: Dr. Abdul Waheed.
1 Lecture 16 FSA’s –Defining FSA’s –Computing with FSA’s Defining L(M) –Defining language class LFSA –Comparing LFSA to set of solvable languages (REC)
Modeling and the simulator of Digital Circuits in Object-Oriented Programming Stefan Senczyna Department of Fundamentals of Technical Systems The Silesian.
Review of the automata-theoretic approach to model-checking.
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
Chapter 1 Principles of Programming and Software Engineering.
Automata and Formal Lanugages Büchi Automata and Model Checking Ralf Möller based on slides by Chang-Beom Choi Provable Software Lab, KAIST.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
Real-Time System Requirements & Design Specs Shaw - Chapters 3 & 4 Homework #2: 3.3.1, 3.4.1, Add Error states to Fig 4.1 Lecture 4/17.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Timed UML State Machines Ognyana Hristova Tutor: Priv.-Doz. Dr. Thomas Noll June, 2007.
Experience and Expertise of Designing SDN MPI_Bcast Khureltulga Dashdavaa, Susumu Date, Hiroaki Yamanaka, Eiji Kawai, Yasuhiro Watashiba, Kohei Ichikawa,
VeriFlow: Verifying Network-Wide Invariants in Real Time
CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dell’Informazione Politecnico di Milano Model Checking UML Specifications of Real Time Software.
Software Defined Networking Kathryn Abbett. Definition □Origins from Berkley and Stanford, around 2008 □Software-Defined Networking (SDNs) allows applications.
Reactive systems – general
4b 4b Lexical analysis Finite Automata. Finite Automata (FA) FA also called Finite State Machine (FSM) –Abstract model of a computing entity. –Decides.
VeriCon: Towards Verifying Controller Programs in SDNs Thomas Ball, Nikolaj Bjorner, Aaron Gember, Shachar Itzhaky, Aleksandr Karbyshev, Mooly Sagiv, Michael.
Procedures for managing workflow components Workflow components: A workflow can usually be described using formal or informal flow diagramming techniques,
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
Lecture 81 Optimizing CTL Model checking + Model checking TCTL CS 5270 Lecture 9.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 3 Mälardalen University 2010.
SDN AND OPENFLOW SPECIFICATION SPEAKER: HSUAN-LING WENG DATE: 2014/11/18.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
- 1 -  P. Marwedel, Univ. Dortmund, Informatik 12, 05/06 Universität Dortmund Validation - Formal verification -
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Modelling Reactive Systems 4 Professor Muffy Calder Dept. of Computing Science University of Glasgow
Modelling and Analysis of Time-related Properties in Web Service Compositions Raman KazhamiakinParitosh K. PandyaMarco Pistore
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 3: Embedded Computing High Performance Embedded Computing Wayne Wolf.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Data-Plane Verification COS 597E: Software Defined Networking.
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.1 Module 10 Routing Fundamentals and Subnets.
SPEAKER: MUHAMMAD REZA ZULMAN DATE: NOVEMBER 17, 2014 OPENFLOW SPECIFICATION.
Today’s Agenda  Quiz 4  Temporal Logic Formal Methods in Software Engineering1.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.1 Module 10 Routing Fundamentals and Subnets Claes Larsen, CCAI.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Programming Assignment 2 Zilong Ye. Traditional router Control plane and data plane embed in a blackbox designed by the vendor high-seed switching fabric.
CS5270 Lecture 41 Timed Automata I CS 5270 Lecture 4.
SDN challenges Deployment challenges
SDN Network Updates Minimum updates within a single switch
Martin Casado, Nate Foster, and Arjun Guha CACM, October 2014
Lecture 6: Universal Gates
Chapter 2 Scanning – Part 1 June 10, 2018 Prof. Abdelaziz Khamis.
Lecture 6: Universal Gates
Networking Theory and Protocol.
FIGURE 5-1 MOS Transistor, Symbols, and Switch Models
Program correctness Model-checking CTL
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

UPPAAL-based Software-Defined Network Verification Uliana Popesko Lomonosov Moscow State University 2014

Plan SDN Timed automata TCTL Translation UPPAAL Experiments

Computer network 3 Switch1 Switch2 Switch3 1 2

Software-Defined Network 4 Controller Switch1 Switch2 Switch3 1

Software-Defined Network 5 Controller Switch1 Switch2 Switch3 1 2

Software-Defined Network 6 Controller Switch1 Switch2 Switch

Software-Defined Network 7 Controller Switch1 Switch2 Switch

SDN features Control level is separated from communication devices Network management is programmable OpenFlow standart

Flow table. Rule 9 Field 1Field 2Field 3Field 4 Pattern Priority Timeout Actions modify(h,n)output(op)

SDN invariants No loop No packet loss OpenFlow rule consistency Consistency with protocols

Timed Automata

Timed Automata. Definition

Timed Computation Tree Logic, TCTL

TCTL, examples

Formal model, UML diagram Controller Switch

Translation algorithm Input: UML-diagram Output: UPPAAL network of timed automata

Algorithm correctness Correct iff UPPAAL formulae are equisatisfiable for an SDN and an NTA Formalization for SDN behavior with rewriting Stuttering equivalence for labeled transition systems

Experiment The system contains no deadlocks: A[] not deadlock The environment constantly generates new packets: A <> forall(num : int[0; 2]) (channel_h[stream:align[num]]) The switch does not process any packet: E[] com1:start At least one packet is sent to the controller: E <> !con:idle The switch successfully processes at least one packet: E <> com1:hit Number of property sw, empty tables27 h1 s 3 sw, ring-1 s 7 s1 s 4 sw, star-1 s 62 s85 s 4 sw-1 s 60 s79s

Results A formal description of SDNs A translation algorithm which converts a given SDN description into an NTA We proposed and implemented an approach to verification of software-defined networks considered as real-time systems against temporal property