Safe Dynamic Adaptation Department of Computer Science & Engineering Ji Zhang and Zhenxiao Yang Advisor: Prof. Betty H.C. Cheng Software Engineering and.

Slides:



Advertisements
Similar presentations
A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Advertisements

Threads, SMP, and Microkernels
19.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 19: Security The Security Problem Authentication Program Threats.
Software Architecture Design Instructor: Dr. Jerry Gao.
Smart Cruise, an application of M INERVA and Hydra Dr. William E. McUmber, Laura A. Campbell, and Dr. Betty H.C. Cheng This work is supported in part by.
Metrics-Based Analysis of UML Designs Department of Computer Science & Engineering Ryan Stephenson Advisor: Prof. Betty H.C. Cheng Software Engineering.
Hands-On Microsoft Windows Server 2003 Networking Chapter 1 Windows Server 2003 Networking Overview.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
A given modeling and code generation framework Formalization of UML with Traceability Department of Computer Science & Engineering College of Engineering.
Department of Computer Science & Engineering College of Engineering Dr. Betty H.C. Cheng, Laura A. Campbell, Sascha Konrad The demand for distributed real-time.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
The OSI Model A layered framework for the design of network systems that allows communication across all types of computer systems regardless of their.
On Error Preserving Encryption Algorithms for Wireless Video Transmission Ali Saman Tosun and Wu-Chi Feng The Ohio State University Department of Computer.
©Brooks/Cole, 2003 Chapter 6 Computer Networks. ©Brooks/Cole, 2003 Understand the rationale for the existence of networks. Distinguish between the three.
MCTS GUIDE TO MICROSOFT WINDOWS 7 Chapter 14 Remote Access.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 9 Network Policy and Access Services in Windows Server 2008.
Computer Networks Lecture 1 & 2 Introduction and Layer Model Approach Lahore Leads University.
Object Oriented Databases by Adam Stevenson. Object Databases Became commercially popular in mid 1990’s Became commercially popular in mid 1990’s You.
1 Kyung Hee University Prof. Choong Seon HONG Network Control.
Philip K. McKinley Software Engineering and Network Systems Laboratory Department of Computer Science and Engineering Michigan State University RAPIDware:
Run-Time Support for Adaptive Communication Services By: SeyedMasoud Sadjadi Advisor: Dr. Philip K. McKinley Computer Science and Engineering Michigan.
Mobile IP: Introduction Reference: “Mobile networking through Mobile IP”; Perkins, C.E.; IEEE Internet Computing, Volume: 2 Issue: 1, Jan.- Feb. 1998;
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 12 Electronic Mail.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
1 Computer Networks DA Chapter 1-3 Introduction.
L. Dillon Software Engineering & Network Systems Laboratory Michigan State University 1 Getting Results From Testing Laura K. Dillon Software Engineering.
Objectives Configure routing in Windows Server 2008 Configure Routing and Remote Access Services in Windows Server 2008 Network Address Translation 1.
Lector: Aliyev H.U. Lecture №15: Telecommun ication network software design multimedia services. TASHKENT UNIVERSITY OF INFORMATION TECHNOLOGIES THE DEPARTMENT.
Distributed Systems: Concepts and Design Chapter 1 Pages
1 of of 25 3 of 25 ORBs (Object Request Broker) – A distributed software bus for communication among middleware services and applications – To.
The OSI Model.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
MODULE I NETWORKING CONCEPTS.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
International Symposium on Distributed Objects and Applications (DOA 2002) MetaSockets MetaSockets Run-Time Support for Adaptive Communication Services.
Summary of Distributed Computing Security Yifeng Zou Georgia State University
©Brooks/Cole, 2003 Model and protocol  A model is the specification set by a standards organization as a guideline for designing networks.  A protocol.
Network Emulation for the Study and Validation of Traffic Models, Congestion and Flow Control in TCP/IP Networks Cheryl Pope Lecturer Department of Computer.
Visualizing QoS. Background(1/2) A tremendous growth in the development and deployment of networked applications such as video streaming, IP telephony,
Jini Architecture Introduction System Overview An Example.
Prepared by Engr.Jawad Ali BSc(Hons)Computer Systems Engineering University of Engineering and Technology Peshawar.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
INFORMATION SECURITY MANAGEMENT P ROTECTION M ECHANISMS - C RYPTOGRAPHY.
Distributed systems (NET 422) Prepared by Dr. Naglaa Fathi Soliman Princess Nora Bint Abdulrahman University College of computer.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR NEXT GENERATION MIDDLEWARE.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Chapter 40 Network Security (Access Control, Encryption, Firewalls)
Networking Components Quick Guide. Hubs Device that splits a network connection into multiple computers Data is transmitted to all devices attached Computers.
Distributed Systems Ryan Chris Van Kevin. Kinds of Systems Distributed Operating System –Offers Transparent View of Network –Controls multiprocessors.
Major OS Components CS 416: Operating Systems Design, Spring 2001 Department of Computer Science Rutgers University
INFORMATION SECURITY MANAGEMENT P ROTECTION M ECHANISMS - C RYPTOGRAPHY.
Mr. Sathish Kumar. M Department of Electronics and Communication Engineering I’ve learned that people will forget what you said, people will forget what.
Computer Network Lab. 1 3 장 OSI 기본 참조 모델 n OSI : Open System Interconnection n Basic Reference Model : ISO-7498 n Purpose of OSI Model ~ is to open communication.
The OSI Model Prof. Choong Seon HONG.
Introduction Wireless devices offering IP connectivity
Klara Nahrstedt Spring 2009
Networking COMP
Software Security II Karl Lieberherr.
Net431:advanced net services
On and Off Premise Secure Access
Chapter 3: Open Systems Interconnection (OSI) Model
Software models - Software Architecture Design Patterns
Multithreaded Programming
Design Yaodong Bi.
Computer Networks DA2402.
Presentation transcript:

Safe Dynamic Adaptation Department of Computer Science & Engineering Ji Zhang and Zhenxiao Yang Advisor: Prof. Betty H.C. Cheng Software Engineering and Network Systems (SENS) Laboratory Motivation Dynamic adaptation is the trend : Increasingly, computer software systems and applications must adapt to changing con- ditions in both the supporting computing and communication infrastructure, as well as in the surrounding physical environ- ment. Examples warranting dynamic adaptations  Dynamic introductions of new strategies.  Quick responses to security threats.  Switching to certain execution mode to save battery life.  Insertions of encryption layers to network protocol stack. Existing research efforts include: Supports in programming languages Framework supporting adaptation Adaptive middleware Adaptable and extensible operating systems Separation of concerns: These techniques separates the adaptation behavior from the base program behavior. Safe dynamic adaptation Unless adaptive software mechanisms are grounded in for- malisms that codify invariants and other properties that must hold during adaptation, the resulting systems will be prone to errant behavior. Safe dynamic adaptation further separates the correctness issue from the adaptation mechanism, and thus provides the basis for formal reasoning of the adaptation behavior. Video Streaming Example MetaSocket (background) MetaSockets are created from existing Java socket classes. A MetaSocket can be modeled as a chain of filters that manipulate the passing data stream, and a multicast socket attached to the end of the chain Filters can perform encryption, decryption, forward error correction, compression, and so forth. Video Streaming Example (Figure 1) On the server, a web camera captures video input and a video processor encodes the stream and delivers the data stream through a MetaSocket. Two clients (a handheld computer and a laptop computer) On each client the packets are processed by a chain of decoder filters in a receiving MetaSocket and passed to the video processor, where they are decomposed into video. The server and the clients are connected with wireless net- works. May. 10, 2004 Filter schemas: Two forward error correction schemes are available for data processing: DES 64-bit encoding/decoding, and DES 128-bit enco- ding/decoding. The server has two components: E1 ( a DES 64-bit encoder) and E2 ( a DES 128-bit encoder). The hand-held client has three components: D1 ( a DES 64-bit de- coder), D2 ( a DES 128/64-bit compatible decoder), and D3 (a DES 128-bit decoder). The laptop client has two components: D4 (a DES 64-bit decoder) and D5 (a DES 128-bit decoder). Adaptations and adaptive actions The overall adaptation objective is to reconfigure the system from running the DES 64-bit encoder/decoders to running the DES 128-bit encoder/decoders to "harden" security at run time. Available adaptation actions are inserting, removing, and replacing filter(s) Cases of unsafe adaptation Replacing the encoder when it is in the process of encoding a packet: Interrupting the encoding process causes unexpected program behavior. Replacing the encoder and the decoders at the same time: The in-flight packets will not be able to be decoded, causing packet loss. Removing the 64-bit DES encoders/decoders then insert the 128-bit DES encoders/decoders: creating security breach during adaptation. Causes of unsafe adaptation Interrupting atomic communication. (case 1) Violating dependency invariants. (case 2, 3) Safe Definition System modeling: A distributed system is modeled as set of communicating components running on one or more processes. Atomic communication: an interaction either within a component or between components that cannot be interrupted. Otherwise, it would potentially yield erroneous or unexpected results. Dependency invariants : The relationships among the components that should be held true throughout the programs execution. A system configuration is safe if the configuration does not violate any dependency invariants. Safe adaptation process definition: The process does not interrupt atomic communication. The process does not violate dependency invariants. Safe Adaptation Process Constructing minimum adaptation path (Figure 2) Construct safe configuration set: The set of safe configurations. Construct safe adaptation graph: Vertices are safe confi- gurations and arcs are adaptive actions. Each action is as- signed a application specific cost value. Search for minimum adaptation path (MAP): The path with minimum cost from one configuration (source) to another (target). Managing adaptation process It is achieved by an adaptation manager and multiple agents (one on each process) The manager and agents communicate with messages. The adaptation actions are synchronized and the components are blocked when and only when it is necessary to ensure safeness. Acknowledgements: This work has been supported in part by the following grants: NSF EIA , CDA , CCR , EIA , Department of the Navy, and Office of Naval Research under Grant No. N , and in cooperation with Siemens Automotive and Detroit Diesel Corporation. In the example, we use a 7-bit vector (D5,D4,D3,D2,D1,E2,E1) to represent a configuration. The source configuration is ( ) and the target configuration is ( ).