Proposed NFVRG Honolulu, Hawaii

Slides:



Advertisements
Similar presentations
Network Virtualization and Service Awareness Properties of FNs
Advertisements

ETSI NFV Management and Orchestration - An Overview
Semantics Static semantics Dynamic semantics attribute grammars
ICE1341 Programming Languages Spring 2005 Lecture #6 Lecture #6 In-Young Ko iko.AT. icu.ac.kr iko.AT. icu.ac.kr Information and Communications University.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
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.
ISBN Chapter 3 Describing Syntax and Semantics.
1 Semantic Description of Programming languages. 2 Static versus Dynamic Semantics n Static Semantics represents legal forms of programs that cannot be.
CS 355 – Programming Languages
Troubleshooting SDNs Peyman Kazemian. Why SDN Troubleshooting SDN decouples software (control plane) from hardware (data plane). Opens doors for innovation.
Gap Analysis of Simplified Use of Policy Abstractions (SUPA) Presenter: Jun Bi draft-bi-supa-gap-analysis-02 IETF 92 SUPA BoF Dallas, TX March 23, 2015.
Copyright © 2006 Addison-Wesley. All rights reserved.1-1 ICS 410: Programming Languages Chapter 3 : Describing Syntax and Semantics Operational Semantics.
SNAL Sensor Networks Application Language Alvise Bonivento Mentor: Prof. Sangiovanni-Vincentelli 290N project, Fall 04.
NFVRG Dallas Verification of NFV Services : Problem Statement and Challenges draft-shin-nfvrg-service-verification-01 M-K. Shin, ETRI.
Dynamic Adaptation of VNF Forwarding Graph
Resource Management for Dynamic Service Chain Adaptation
Describing Syntax and Semantics
The DOCTOR Project DeplOyment and seCurisaTion of new functiOnalities in virtualized networking enviRonnements François-Xavier Aguessy – Thales Bertrand.
A Software-Defined Approach for End-to-end IoT Networking
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
A Survey on Interfaces to Network Security
Fundamentals of Python: From First Programs Through Data Structures
Formal checkings in networks James Hongyi Zeng with Peyman Kazemian, George Varghese, Nick McKeown.
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
PROCESS MODELING Chapter 8 - Process Modeling
IEEE MEDIA INDEPENDENT SERVICES DCN: SAUC Title: Use cases of MIS framework to cooperate with SDN wireless access networks Date.
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
Kostas Giotis, Yiannos Kryftis, Vasilis Maglaris
Software-Defined Networks Jennifer Rexford Princeton University.
VeriFlow: Verifying Network-Wide Invariants in Real Time
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
Software-Defined Networking - Attributes, candidate approaches, and use cases - MK. Shin, ETRI M. Hoffmann, NSN.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
UPPAAL-based Software-Defined Network Verification Uliana Popesko Lomonosov Moscow State University 2014.
Chapter 3 Part II Describing Syntax and Semantics.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Semantics In Text: Chapter 3.
BoF: Open NFV Orchestration using Tacker
SDN Management Layer DESIGN REQUIREMENTS AND FUTURE DIRECTION NO OF SLIDES : 26 1.
Lecture 5 1 CSP tools for verification of Sec Prot Overview of the lecture The Casper interface Refinement checking and FDR Model checking Theorem proving.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
NFV Configuration Problem Statements Haibin Song Georgios Karagiannis
CSC3315 (Spring 2009)1 CSC 3315 Languages & Compilers Hamid Harroud School of Science and Engineering, Akhawayn University
Header Space Analysis: Static Checking for Networks Broadband Network Technology Integrated M.S. and Ph.D. Eun-Do Kim Network Standards Research Section.
Outline PART 1: THEORY PART 2: HANDS ON
IEEE MEDIA INDEPENDENT SERVICES DCN: SAUC Title: Use cases of MIS framework to cooperate with SDN wireless access networks Date.
Software Defined Networking BY RAVI NAMBOORI. Overview  Origins of SDN.  What is SDN ?  Original Definition of SDN.  What = Why We need SDN ?  Conclusion.
Early Adopter of NFV? Mitigate Risk! UKNOF 34 - Manchester Anthony Magee, 21 st April 2016 Global Business Development.
When RINA Meets NFV Diego R. López Telefónica
NFP: Enabling Network Function Parallelism in NFV
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
SDN challenges Deployment challenges
SDN Network Updates Minimum updates within a single switch
Orchestration and Controller Alignment for ONAP Release 1
draft-bernini-nfvrg-vnf-orchestration
X V Consumer C1 Consumer C2 Consumer C3
Martin Casado, Nate Foster, and Arjun Guha CACM, October 2014
Effective Network Orchestration Starts by Automating Provisioning Downloadable Figures Simon Richard.
Software Design Methodology
ONAP Amsterdam Architecture
NFP: Enabling Network Function Parallelism in NFV
Software Defined Networking (SDN)
Management and Orchestration in Complex and Dynamic Environment
NFP: Enabling Network Function Parallelism in NFV
Programmable Networks
Lecture 10, Computer Networks (198:552)
Presentation transcript:

Proposed NFVRG Meeting@IETF91, Honolulu, Hawaii Verification of NFV Services : Problem Statement and Architecture draft-shin-nfvrg-service-verification-00 M-K. Shin, ETRI K. Nam, Friesty S. Pack, Korea Univ. S. Lee, J. Yi, ETRI Proposed NFVRG Meeting@IETF91, Honolulu, Hawaii

Programmable Infrastructure Network service Descriptions (High-level Programming/ Yang Modeling + Compiler) NBAPIs SDN/NFV Controller Orchestrator A Network Compiler that translates network service description in which 3rd Parties as well as Operators define what they want from the infrastructure and compiles it into low level instructions (e.g., Network Controller/OpenStack primitives) for network service components VNF2a VNF2b VNF3 VNF4a VNF1 VNF2c VNF4b End Point End Point Virtualization Computing/Network Infrastructure

Problem Statement (1/2) (Key Properties to be checked) Dependencies of Network Service Components NFV components (e.g., NFVI, VNFs, Orchestrator, Network Controller, etc.) have intricate dependencies that make operation incorrect. Loop-Free in VNF FGs In VNF FGs, an infinite loop construction should be avoided and verified. Policy and State Consistency When the policy is changed, the policy should be reconfigured in VNF service nodes as soon as possible. If the reconfiguration procedure is delayed, inconsistent policies may exist in service nodes.

Problem Statement (2/2) (Key Properties to be checked) Load Balancing and Optimization among VNF Instances Performance Bottleneck Security Hole More general requirements (esp., related to service functions chains) can be also found at draft-boucadair-sfc- requirements-05 Note that some of properties above, such as load balancing, optimization, performance, etc. should be monitored and checked together by MANO operations.

Minimal Requirements R1 : It should be able to check global and local properties and invariants. (E.g., Loop-freeness and resource isolation between VNFs can be regarded as global. The policies that are related only to the specific network controllers or devices are local.) R2 : It should be able to access to the entire resource DBs as well as network states whenever verification tasks are started. R3 : It should be independent from specific solutions and frameworks, and APIs. R4 : It should process standard protocols such as Netconf, YANG, OpenFlow, I2RS, etc. and northbound and southbound interfaces that are related network configurations, and used by OSS.

Verification Framework MANO Orchestrator Verification Manager OSS/BSS Service, VNF and Infrastructure Description Verification Service APIs EMS 1 EMS 2 EMS 3 VNF Manager(s) Compiler & Interpreter VNF 1 VNF 2 VNF 3 Property Library NFVI Verifier Virtualised Infrastructure Manager(s) Virtual Computing Virtual Storage Virtual Network Network States DB Virtualisation Layer Hardware resources Computing Hardware Storage Hardware Network Hardware Note that Verification Service and Verification Manager in the NFV MANO should communicate using APIs to accomplish the verification tasks.

Verification APIs Example Verification Manager (in NFV MANO) set_properties(properties or invariants) It sets a list of properties to be checked. After calling this API, verification tasks are automatically started whenever configurations are changed It returns a structure consists of the result (true or false) and explanation in case of false (e.g. properties are already set, conflictions) get_properties() returns a list of properties set in the NFV MANO get/set_network_configuration gets or sets global network configurations required for VNFs Verification Service verify (property, virtual_network, vnf) parameters: returns a structure consists of verification result(true or false), and explanation or counter example in case of false

Challenging Issues Finding infinite loops Real-time verification General solutions for the infinite loop can lead to intractable problem (e.g. the halting problem). To make the verification practical and minimize the complexity, some of the restrictions are required. Real-time verification A few invariants can be checked in real-time but it would be impossible if the size of VNFs increases or properties checked are complex. Languages and their semantics Network service descriptions in NFV need to be precisely expressed using appropriate semantics (e.g., formal method). Languages and semantic models optimized to the verification framework need to selected or newly developed.

Back-up slides

Our Approach – Formalism Network Formalism A formal description is a specification expressed in a language whose semantics are formally defined, as well as vocabulary and syntax. The need for a formal semantic definition means that the specification language must be based on logic, mathematics, etc., not natural languages. Formal verification The act of proving or disproving the correctness of designs or implementations with respect to requirements and properties with which they must satisfy, using the formal methods or techniques

Our Verification Theory and Tool Set (VeriSDNFV) The goal is to provide a formal foundation for verification of SDN/NFV-enabled services.

VeriSDNFV Tool Set

pACSR (Process Algebra Lang.) Syntax Description NIL A process that executes no action(i.e., it is deadlocked) A:P To execute a timed, resource-consuming action A, consume one time unit, and proceed to the process P. e,P To execute the instantaneous event e, and proceed to P. P1+P2 A non-deterministic choice between P1 and P2 which is subject to priority arbitration. P1||P2 The parallel composition of P1 and P2 in which the events from P1 and P2 synchronize or interleave while the timed actions from P1 and P2, if they do not share any resource, reflect the synchronous passage of time. [P]l The close operator, to produce a process that uses the resources in I exclusively. P\F The restriction operator, to restricts events with labels in F from executing. P\\l To represent the behavior of P in which the identities of resources in I are concealed. C A process constant with a certain arity. Each process constant C with arity n is associated with a process definition of the form C x ≝P , where x is a vector of n variables. be->P A conditional process term which behaves like P if the boolean expression be evaluates to true, or NIL if be is false. An Example of OpenFlow Flow table’s Operations P(x) := if matchSrcIP(x,source_IP)ch!x.nil S := ch?y.nil Sys := (P(x) || S)/{ch} ….

pACSR (Process Algebra Lang.) An Example of Service Functions Chains (End-to-end Virtual Content Delivery Service) NFV(x) := ServiceChain || PacketFlow(x) ServiceChain := {}*:HDVC_S3?.ServiceChain + replicated?.ServiceChain_R ServiceChain_R := {}*:HDVC_R_S2?.ServiceChain_R + PacketFlow(x) := {}*:{PACKETFLOW}:SW1_P3(x) SW1_P3(x) := {}*:if SW1_P3_C1(x)  {SW1_P1}:R1_P1(x) else IDLE SW2_P1(x) := {}*:if SW2_P1_C1(x)  {SW2_P2}:Host3(x) else if SW2_P1_C2(x)  {SW2_P3}:Host4(x) SW2_P2(x) := {}*:if SW2_P2_C1(x)  {SW2_P1}:R1_P1(x) SW2_P3(x) := {}*:if SW2_P3_C1(x) …..

End-to-end SDN/NFV Services SDN/NFV-enabled end-to-end network service VNF2a VNF4 VNF3 FG-1 VNF5a VNF1 VNF2b VNF5b FG-2 End Point End Point OpenStack Controller/Orchestrator SDN Controller Verification Layer OpenStack Agent SDN Switch Virtualization Layer compute memory storage network NFVI (NFV Infrastructure) : VNFs (Virtualized Network Functions) : Firewall, DPI, SSL, Load Balancer, NAT, AAA SD Video Content, HD Video Content, etc. Logical Link Compute/Memory/Storage Physical Link Infrastructure Network Virtualization

Related Works Product/Project Goals VeriFlow To verify network-wide invariants in real time (Data plane verification, no formal technique) NICE To test/debug OpenFlow applications (Debugger for simplified OF-based models) Frenetic To develop network programming languages with Rigorous semantic foundations Abstraction for Network Update To develops a formal model of OpenFlow networks Header Space Analysis (HSA) To allows to statically check network specifications and configurations (e.g., reachability failures, forwarding loops and traffic isolation and leakage problems)