Monitoring Networks through Multiparty Session Types

Size: px
Start display at page:

Download "Monitoring Networks through Multiparty Session Types"

Transcription

1 Monitoring Networks through Multiparty Session Types Laura Bocchi 1, Tzu-Chun Chen 2, Romain Demangeon 1, Kohei Honda 2, Nobuko Yoshida 1 2 Queen Mary, University of London, 1 Imperial College, London FORTE/FMOODS 2013, Firenze, 03/06/2013

2 Background Distributed programming Message-passing concurrency. asynchronous networks. examples: services, web applications,... Distant interactions. Interoperability. Distributed verification Desirable properties: fidelity, lock-freedom, governance, security,... Control is local 1 only. Typechecking impossible 2. Communicating programs different languages, compilers, libraries. different hardware. different locations. Solution: 2 Monitoring through 1 Multiparty Session-Types

3 Our collaboration: OOI international oceanography project. vast, connected array of sensors, buoys, intruments. using message-passing communications. applications written in different languages, running on heterogenous hardware in an asynchronous network. web-based user interface for oceanographs. requires correct, safe interactions. perfect framework for session type verification. integration into the CyberInfrastructure sub-project design and maintain Scribble, a protocol language strongly based on MPST.

4 Session types Verification theory originating in typed π-calculi. formal methods, type systems naturally generate typecheckers. Principles: design a specification for network interactions called session session as atomic protocols (global types). participants are abstracted in roles (Instrument, Buyer,... ). specifies only the message layer. project the session into local types local behaviors for each endpoint. ensure each endpoint conforms to its local type. Fidelity: Local conformance implies global correction w.r.t. the specification. Multisession model: one participant can be engaged in several sessions.

5 Session types (II) T A p G p T B p T C G : A B; B C; B A T A :!B.?A v v v P A P B P C P A : s[b]! 8.s[C]?(y)... p: projection from global types to local types. v: verification of processes against local types. type systems: ensure soundness and progress. type-checkers not adapted to heterogenous networks. suggests dynamic verification (monitors). (session type theory includes choices, recursion, predicates,... )

6 Monitors run in parallel (can be embedded or external). act as membranes between the trusted network and applications. ensure interoperability (no access to source code). unmonitored trusted components can be introduced.

7 Session types for monitoring Adapting MPST theory to monitoring. Allowing mixed networks. Principles: developers design protocols for the whole network in a dedicated language, well-formedness is checked, protocols are projected into local types, local types generate monitors, or are statically typechecked.

8 Our Contribution A theory for MPST-monitored networks: Formalise MPST-monitoring and asynchronous networks. Introduce monitors as first-class objects in the theory and make explicit routing information propagation. Compare different networks through equivalences. Justify monitoring by soundness theorems. safety: monitors enforces specification conformance. transparency: monitors does not affect correct behaviors. fidelity: correspondence to global types is maintained. Ensure that theory interacts with implementation.

9 Formalism: MPST syntax G ::= r 1 r 2 : {l i (x i :S i ){A i }.G i } i I G 1 G 2 G 1 ; G 2 µt.g t ɛ end T ::= r!{l i (x i :S i ){A i }.T i } i I r?{l i (x i :S i ){A i }.T i } i I T 1 T 2 T 1 ; T 2 µt.t t ɛ end G: global types: interaction from role r 1 to role r 2 (with choice), parallel and sequential composition, recursion and end. T : local types. A: predicates and expressions used to validate properties over messages inside types.

10 Formalism: Example G ATM = C A : { Login(x i : string){tt}. A S : { LoginOK(){tt}. A C : {LoginOK(){tt}. G Loop}, LoginFail(){tt}. A C : {LoginFail(){tt}. end}}} G Loop = µ LOOP. S C : { Account(x b : int){x b 0}. C S : { Withdraw(x p : int){x p > 0 x b x p 0}. LOOP, Deposit(x d : int){x d > 0}. LOOP, Quit(){tt}.end}} Protocol for interaction with ATM with three commands. Three roles are involved: Client, ATM and bank Server. Contains choices, nested loops and predicate checks.

11 Formalism: Example (projection) T C = A!{Login(x i : string){tt}. A?{LoginOK(){tt}. T Loop LoginFail(){tt}. end}} T Loop = µ LOOP. S?{Account(x b : int){x b 0}. S!{Withdraw(x p : int){x p > 0 x b x p 0}. LOOP, Deposit(x d : int){x d > 0}.LOOP, Quit(){tt}.end}} Projection of ATM example onto role Client. Session seen from the point of view of Client. Type used for monitoring (local enforcement).

12 Formalism: Networks P ::= a s[r] : T a(y[r]:t ).P k[r 1, r 2 ]!l e k[r 1, r 2 ]?{l i (x i ).P i } i I if e then P else Q P Q 0 µx.p X P; Q (νa) P (νs)p N ::= [P] α N 1 N 2 0 (νa)n (νs)n r ; h r ::= a α s[r] α h ::= m h m ::= a s[r] : T s r 1, r 2, l v π-based calculus. Asynchronous networks composed of: processes P located at principals α, abstracts local applications. router r, abstracts network routing information, updated on-the-fly. global queue h. abstracts messages in transit.

13 Formalism: Semantics [a s[r] : T ] α r ; h [0] α r ; h a s[r] : T [a(y[r] : T ).P] α r ; a s[r] : T h [P[s/y]] α r s[r] α ; h [s[r 1, r 2 ]!l j v ] α r ; h [0] α r ; h s r 1, r 2, l j v [s[r 1, r 2 ]?{l i (x i ).P i } i ] α r ; s r 1, r 2, l j v h [P j [v/x j ]] α r ; h : r(a) = α : r(s[r 2 ]) α : r(s[r 2 ]) = α (reductions can happen inside contexts) Two rules for session invitations. Two rules for session interactions. Asynchrony is handled through global queue. Routing information is used and updated at runtime.

14 Specifications Σ ::= Σ, α: Γ;, Γ ::= Γ, a :?(T [r]) Γ, a :!(T [r]) ::=, s[r]:t, Σ: spec., : session env, Γ: shared env. Specifications have a semantics (used for satisfaction). Monitored Networks Monitors M = α: Γ; are introduced as component of monitored networks. Reduction rules for monitored networks (send rules): M r(s[r 2 ]) α [s[r 1, r 2 ]!l v ] α M r ; h [0] α M r ; h s r 1, r 2, l v M s[r 1,r 2 ]!l v s[r 1,r 2 ]!l v M [s[r 1, r 2 ]!l v ] α M r ; h [0] α M r ; h

15 Equivalences To compare networks, we use: weak bisimulation over partial networks (i.e. without transport) reduction-closed barbed congruence = over networks. barbed congruence allows us to model interfaces: 2 structurally different networks implementing the same services are equated, structure is hidden through routing. Interface: example G 2 Loop = µ LOOP. S T : { Query(){true}. T S : { Answer(x t : int){true}. S C : { Account(x b : int){x b 0}. C S : { Withdraw(x p : int){x p 0 x b x p 0}. LOOP, Deposit(x d : int){x d > 0}. LOOP, Quit(){true}.end }}}} same protocol, except makes use of a transaction agent. P S: original server program, PS 2 : new server program, PT: agent program. ([P S] α ; s[s] α, s[c] β, s[a] γ ) = ([P 2 S ]α [PT] δ ; s[s] α, s[c] β, s[a] γ, s[t] δ )

16 Satisfaction The satisfaction relation = N : Σ relates networks and specification: if Σ expects an input, N should be able to process it. if N performs an output, Σ should be expecting it. still holds after reduction (coinductive definition). Tailored for monitoring. monitors do not enforce liveness. Satisfaction equivalence If N 1 = N2 and = N 1 : Σ then = N 2 : Σ.

17 Results (Safety) Local Safety = [P] α M : α : Γ; with M = α: Γ;. A monitored process satisfies its specification. Global Safety If N is fully monitored w.r.t. Σ, then = N : Σ. monitored networks behave as expected. does not ensure liveness.

18 Results (Transparency) Local Transparency If = [P] α : α : Γ;, then [P] α ([P] α M) with M = α : Γ;. unmonitored correct processes are undistinguishable from their monitored counterparts. allows one to mix monitored and typechecked processes. Global Transparency Assume N and N have the same global transport r ; h. Assume: 1. N is fully monitored w.r.t. Σ and 2. N = M r ; h is unmonitored but = M : Σ. We have N = N. monitors does not alterate behaviors of correct networks. monitor actions are not observable on correct components.

19 Results (Fidelity) a configuration is consistent: when it corresponds to a well-formed array of global types (G 1,..., G n ) through projection. conformance is satisfaction + receivability (queue can be emptied). Session Fidelity Assume: 1. configuration Σ; r ; h is consistent, 2. network N M r ; h conforms to configuration Σ; r ; h. For any l, whenever we have N l g N s.t. Σ; r ; h l g Σ ; r ; h, it holds that Σ ; r ; h is consistent and N conforms to Σ ; r ; h. consistence is preserved by reduction, at any time, the network correspond to a well-formed specification.

20 Conclusion A theory for monitoring through MPST inside asynchronous networks: models monitor behaviors, models dynamic routers, monitoring ensures correction, equate networks with the same interface. Implementation is done. Future works: Ongoing partnership with OOI. Express governance properties. Handle interruptions and exceptional behaviors.

Imperial College London Activity Report

Imperial College London Activity Report Imperial College London Activity Report Nobuko Yoshida Imperial College London http://mrg.doc.ic.ac.uk 1 Members Current Members Post-doc Laura Bocchi, Raymond Hu, Julien Lauge Phd students Rumyana Neykova,

More information

Monitoring Networks through Multiparty Session Types

Monitoring Networks through Multiparty Session Types Monitoring Networks through Mutiparty Session Types Laura Bocchi 1, Tzu-Chun Chen 2, Romain Demangeon 2, Kohei Honda 2, and Nobuko Yoshida 3 1 University of Leicester 2 Queen Mary, University of London

More information

Ingegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/]

Ingegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/] Course: Ingegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/] Middleware Technology: Middleware Applications and Distributed Systems Lecturer: Henry Muccini

More information

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL

CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL CHAPTER 2 MODELLING FOR DISTRIBUTED NETWORK SYSTEMS: THE CLIENT- SERVER MODEL This chapter is to introduce the client-server model and its role in the development of distributed network systems. The chapter

More information

The Service Revolution software engineering without programming languages

The Service Revolution software engineering without programming languages The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)

More information

Service-Oriented Architectures

Service-Oriented Architectures Architectures Computing & 2009-11-06 Architectures Computing & SERVICE-ORIENTED COMPUTING (SOC) A new computing paradigm revolving around the concept of software as a service Assumes that entire systems

More information

A Distributed Calculus for Role-Based Access Control

A Distributed Calculus for Role-Based Access Control A Distributed Calculus for Role-Based Access Control Chiara Braghin joint work with D. Gorla and V. Sassone MyThS Meeting, Venice, June, 14th, 2004 A Distributed Calculus for Role-Based Access Control

More information

Application Architectures

Application Architectures Software Engineering Application Architectures Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the organization of two fundamental models of business systems - batch

More information

Challenges and Opportunities for formal specifications in Service Oriented Architectures

Challenges and Opportunities for formal specifications in Service Oriented Architectures ACSD ATPN Xi an China June 2008 Challenges and Opportunities for formal specifications in Service Oriented Architectures Gustavo Alonso Systems Group Department of Computer Science Swiss Federal Institute

More information

Parallel programming with Session Java

Parallel programming with Session Java 1/17 Parallel programming with Session Java Nicholas Ng (nickng@doc.ic.ac.uk) Imperial College London 2/17 Motivation Parallel designs are difficult, error prone (eg. MPI) Session types ensure communication

More information

Simulation-Based Security with Inexhaustible Interactive Turing Machines

Simulation-Based Security with Inexhaustible Interactive Turing Machines Simulation-Based Security with Inexhaustible Interactive Turing Machines Ralf Küsters Institut für Informatik Christian-Albrechts-Universität zu Kiel 24098 Kiel, Germany kuesters@ti.informatik.uni-kiel.de

More information

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification

Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Introduction Overview Motivating Examples Interleaving Model Semantics of Correctness Testing, Debugging, and Verification Advanced Topics in Software Engineering 1 Concurrent Programs Characterized by

More information

Real Time Programming: Concepts

Real Time Programming: Concepts Real Time Programming: Concepts Radek Pelánek Plan at first we will study basic concepts related to real time programming then we will have a look at specific programming languages and study how they realize

More information

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999 The ConTract Model Helmut Wächter, Andreas Reuter November 9, 1999 Overview In Ahmed K. Elmagarmid: Database Transaction Models for Advanced Applications First in Andreas Reuter: ConTracts: A Means for

More information

Formal Modelling of Network Security Properties (Extended Abstract)

Formal Modelling of Network Security Properties (Extended Abstract) Vol.29 (SecTech 2013), pp.25-29 http://dx.doi.org/10.14257/astl.2013.29.05 Formal Modelling of Network Security Properties (Extended Abstract) Gyesik Lee Hankyong National University, Dept. of Computer

More information

Chapter 2: Remote Procedure Call (RPC)

Chapter 2: Remote Procedure Call (RPC) Chapter 2: Remote Procedure Call (RPC) Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 2 - RPC

More information

StreamStorage: High-throughput and Scalable Storage Technology for Streaming Data

StreamStorage: High-throughput and Scalable Storage Technology for Streaming Data : High-throughput and Scalable Storage Technology for Streaming Data Munenori Maeda Toshihiro Ozawa Real-time analytical processing (RTAP) of vast amounts of time-series data from sensors, server logs,

More information

3 Extending the Refinement Calculus

3 Extending the Refinement Calculus Building BSP Programs Using the Refinement Calculus D.B. Skillicorn? Department of Computing and Information Science Queen s University, Kingston, Canada skill@qucis.queensu.ca Abstract. We extend the

More information

Session Types, Typestate and Security! Simon Gay! School of Computing Science! University of Glasgow!

Session Types, Typestate and Security! Simon Gay! School of Computing Science! University of Glasgow! Session Types, Typestate and Security! Simon Gay! School of Computing Science! University of Glasgow! Session Types! Type-theoretic specification of communication protocols,! so that protocol implementations

More information

GUI and Web Programming

GUI and Web Programming GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program

More information

A Framework for the Semantics of Behavioral Contracts

A Framework for the Semantics of Behavioral Contracts A Framework for the Semantics of Behavioral Contracts Ashley McNeile Metamaxim Ltd, 48 Brunswick Gardens, London W8 4AN, UK ashley.mcneile@metamaxim.com Abstract. Contracts have proved a powerful concept

More information

THE EVOLVING ROLE OF DATABASE IN OBJECT SYSTEMS

THE EVOLVING ROLE OF DATABASE IN OBJECT SYSTEMS THE EVOLVING ROLE OF DATABASE IN OBJECT SYSTEMS William Kent Database Technology Department Hewlett-Packard Laboratories Palo Alto, California kent@hpl.hp.com 1990 CONTENTS: ABSTRACT 1 INTRODUCTION...

More information

SERVICE ORIENTED ARCHITECTURE

SERVICE ORIENTED ARCHITECTURE SERVICE ORIENTED ARCHITECTURE Introduction SOA provides an enterprise architecture that supports building connected enterprise applications to provide solutions to business problems. SOA facilitates the

More information

Replication on Virtual Machines

Replication on Virtual Machines Replication on Virtual Machines Siggi Cherem CS 717 November 23rd, 2004 Outline 1 Introduction The Java Virtual Machine 2 Napper, Alvisi, Vin - DSN 2003 Introduction JVM as state machine Addressing non-determinism

More information

C#5.0 IN A NUTSHELL. Joseph O'REILLY. Albahari and Ben Albahari. Fifth Edition. Tokyo. Sebastopol. Beijing. Cambridge. Koln.

C#5.0 IN A NUTSHELL. Joseph O'REILLY. Albahari and Ben Albahari. Fifth Edition. Tokyo. Sebastopol. Beijing. Cambridge. Koln. Koln C#5.0 IN A NUTSHELL Fifth Edition Joseph Albahari and Ben Albahari O'REILLY Beijing Cambridge Farnham Sebastopol Tokyo Table of Contents Preface xi 1. Introducing C# and the.net Framework 1 Object

More information

Static Program Transformations for Efficient Software Model Checking

Static Program Transformations for Efficient Software Model Checking Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major

More information

Session Types: Towards safe and fast reconfigurable programming

Session Types: Towards safe and fast reconfigurable programming Session Types: Towards safe and fast reconfigurable programming Nicholas Ng, Nobuko Yoshida, Xin Yu Niu, Kuen Hung Tsoi, Wayne Luk Department of Computing, Imperial College London, UK {nickng,yoshida,nx210,khtsoi,wl}@doc.ic.ac.uk

More information

Event-based middleware services

Event-based middleware services 3 Event-based middleware services The term event service has different definitions. In general, an event service connects producers of information and interested consumers. The service acquires events

More information

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm...

BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm... 1 Table of Contents BUSINESS RULES CONCEPTS... 2 BUSINESS RULES... 2 RULE INFERENCE CONCEPT... 2 BASIC BUSINESS RULES CONCEPT... 3 BUSINESS RULE ENGINE ARCHITECTURE... 4 BUSINESS RULE ENGINE ARCHITECTURE...

More information

Specification and Analysis of Contracts Lecture 1 Introduction

Specification and Analysis of Contracts Lecture 1 Introduction Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider gerardo@ifi.uio.no http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.

More information

Programming Languages

Programming Languages Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:

More information

Chapter 7 Uncomputability

Chapter 7 Uncomputability Chapter 7 Uncomputability 190 7.1 Introduction Undecidability of concrete problems. First undecidable problem obtained by diagonalisation. Other undecidable problems obtained by means of the reduction

More information

How To Secure Cloud Computing

How To Secure Cloud Computing Resilient Cloud Services By Hemayamini Kurra, Glynis Dsouza, Youssif Al Nasshif, Salim Hariri University of Arizona First Franco-American Workshop on Cybersecurity 18 th October, 2013 Presentation Outline

More information

Roma and Conjugation of a RBAC System

Roma and Conjugation of a RBAC System In Proc. of 17th Computer Security Foundations Workshop (CSFW 04), pagg. 48 60. c IEEE. A Distributed Calculus for Rôle-Based Access Control Chiara Braghin Dip. di Informatica niv. Ca Foscari di Venezia

More information

Principles and characteristics of distributed systems and environments

Principles and characteristics of distributed systems and environments Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single

More information

Formal Verification and Linear-time Model Checking

Formal Verification and Linear-time Model Checking Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging

More information

Software Modeling and Verification

Software Modeling and Verification Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system

More information

Architecture Design & Sequence Diagram. Week 7

Architecture Design & Sequence Diagram. Week 7 Architecture Design & Sequence Diagram Week 7 Announcement Reminder Midterm I: 1:00 1:50 pm Wednesday 23 rd March Ch. 1, 2, 3 and 26.5 Hour 1, 6, 7 and 19 (pp.331 335) Multiple choice Agenda (Lecture)

More information

Distribution transparency. Degree of transparency. Openness of distributed systems

Distribution transparency. Degree of transparency. Openness of distributed systems Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science steen@cs.vu.nl Chapter 01: Version: August 27, 2012 1 / 28 Distributed System: Definition A distributed

More information

Apigee Gateway Specifications

Apigee Gateway Specifications Apigee Gateway Specifications Logging and Auditing Data Selection Request/response messages HTTP headers Simple Object Access Protocol (SOAP) headers Custom fragment selection via XPath Data Handling Encryption

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

White Paper How to Remotely Access Ethernet I/O Over the Internet

White Paper How to Remotely Access Ethernet I/O Over the Internet White Paper How to Remotely Access Ethernet I/O Over the Internet ACROMAG INCORPORATED Tel: (248) 295-0880 30765 South Wixom Road Fax: (248) 624-9234 P.O. BOX 437 Wixom, MI 48393-7037 U.S.A. Copyright

More information

Semantics and Verification of Software

Semantics and Verification of Software Semantics and Verification of Software Lecture 21: Nondeterminism and Parallelism IV (Equivalence of CCS Processes & Wrap-Up) Thomas Noll Lehrstuhl für Informatik 2 (Software Modeling and Verification)

More information

Software design (Cont.)

Software design (Cont.) Package diagrams Architectural styles Software design (Cont.) Design modelling technique: Package Diagrams Package: A module containing any number of classes Packages can be nested arbitrarily E.g.: Java

More information

Channel Abstractions for Network Security

Channel Abstractions for Network Security Math. Struct. in Comp. Science 20(1), 2010 Channel Abstractions for Network Security M I C H E L E B U G L I E S I, R I C C A R D O F O C A R D I Dipartimento di Informatica, Università Ca Foscari, Venice.

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

Introduction to Service Oriented Architectures (SOA)

Introduction to Service Oriented Architectures (SOA) Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction

More information

Components for Operating System Design

Components for Operating System Design Components for Operating System Design Alan Messer and Tim Wilkinson SARC, City University, London, UK. Abstract Components are becoming used increasingly in the construction of complex application software.

More information

Delivering Heterogeneous Hydrologic Data services with an Enterprise Service Bus Application

Delivering Heterogeneous Hydrologic Data services with an Enterprise Service Bus Application 18 th World IMACS / MODSIM Congress, Cairns, Australia 13-17 July 2009 http://mssanz.org.au/modsim09 Delivering Heterogeneous Hydrologic Data services with an Enterprise Service Bus Abstract: Bai, Q.F

More information

CA Workload Automation Agents Operating System, ERP, Database, Application Services and Web Services

CA Workload Automation Agents Operating System, ERP, Database, Application Services and Web Services PRODUCT SHEET CA Workload Automation Agents CA Workload Automation Agents Operating System, ERP, Database, Application Services and Web Services CA Workload Automation Agents extend the automation capabilities

More information

Sample Configuration Using the ip nat outside source static

Sample Configuration Using the ip nat outside source static Sample Configuration Using the ip nat outside source static Table of Contents Sample Configuration Using the ip nat outside source static Command...1 Introduction...1 Before You Begin...1 Conventions...1

More information

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters COMP5426 Parallel and Distributed Computing Distributed Systems: Client/Server and Clusters Client/Server Computing Client Client machines are generally single-user workstations providing a user-friendly

More information

A High Performance Computing Scheduling and Resource Management Primer

A High Performance Computing Scheduling and Resource Management Primer LLNL-TR-652476 A High Performance Computing Scheduling and Resource Management Primer D. H. Ahn, J. E. Garlick, M. A. Grondona, D. A. Lipari, R. R. Springmeyer March 31, 2014 Disclaimer This document was

More information

Semantic Description of Distributed Business Processes

Semantic Description of Distributed Business Processes Semantic Description of Distributed Business Processes Authors: S. Agarwal, S. Rudolph, A. Abecker Presenter: Veli Bicer FZI Forschungszentrum Informatik, Karlsruhe Outline Motivation Formalism for Modeling

More information

Firewall Verification and Redundancy Checking are Equivalent

Firewall Verification and Redundancy Checking are Equivalent Firewall Verification and Redundancy Checking are Equivalent H. B. Acharya University of Texas at Austin acharya@cs.utexas.edu M. G. Gouda National Science Foundation University of Texas at Austin mgouda@nsf.gov

More information

HelenOS IPC and Behavior Protocols

HelenOS IPC and Behavior Protocols HelenOS IPC and Behavior Protocols Martin Děcký DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz/ CHARLES UNIVERSITY IN PRAGUE FACULTY OF MATHEMATICS AND PHYSICS Motivation HelenOS components1

More information

Gild: An Integrated Learning and Development plug-in for Eclipse

Gild: An Integrated Learning and Development plug-in for Eclipse Gild: An Integrated Learning and Development plug-in for Eclipse Teaching students how to program can be a challenging task. Unfortunately, there is a lack of tools that provide pedagogical support for

More information

Configuration of Cisco Routers. Mario Baldi

Configuration of Cisco Routers. Mario Baldi Configuration of Cisco Routers Basics Static Routing Mario Baldi Politecnico di Torino mario.baldi[at]polito.it http://staff.polito.it/mario.baldi ConfRoutEn - 1 M. Baldi: see page 2 Copyright Notice This

More information

Type and Effect Systems for Dynamically Changing Code DRAFT CORRECTIONS, DO NOT DISTRIBUTE

Type and Effect Systems for Dynamically Changing Code DRAFT CORRECTIONS, DO NOT DISTRIBUTE Type and Effect Systems for Dynamically Changing Code DRAFT CORRECTIONS, DO NOT DISTRIBUTE Gabrielle Anderson Dependable Systems and Software Engineering School of Electronics and Computer Science University

More information

Verification of Network Management System Configurations

Verification of Network Management System Configurations Verification of Network Management System Configurations David L. Cohrs (608) 262-6617 dave@cs.wisc.edu Barton P. Miller (608) 262-3378 bart@cs.wisc.edu Computer Sciences Department University of Wisconsin

More information

Simple Network Management Protocol

Simple Network Management Protocol CHAPTER 32 Simple Network Management Protocol Background Simple Network Management Protocol (SNMP) is an application-layer protocol designed to facilitate the exchange of management information between

More information

IBM DataPower SOA Appliances & MQ Interoperability

IBM DataPower SOA Appliances & MQ Interoperability Appliances & MQ Interoperability Joel Gauci-Certified IT Specialist, & Connectivity Appliances gauci@fr.ibm.com MQ Guide Share France 2006 Corporation Agenda Appliances & MQ Interoperability Part 1: Appliances

More information

Elemental functions: Writing data-parallel code in C/C++ using Intel Cilk Plus

Elemental functions: Writing data-parallel code in C/C++ using Intel Cilk Plus Elemental functions: Writing data-parallel code in C/C++ using Intel Cilk Plus A simple C/C++ language extension construct for data parallel operations Robert Geva robert.geva@intel.com Introduction Intel

More information

Access Control Lists: Overview and Guidelines

Access Control Lists: Overview and Guidelines Access Control Lists: Overview and Guidelines Cisco provides basic traffic filtering capabilities with access control lists (also referred to as access lists). Access lists can be configured for all routed

More information

Goal-Driven Adaptable Software Architecture for UAVs

Goal-Driven Adaptable Software Architecture for UAVs SEAS DTC Annual Technical Conference 2008 Goal-Driven Adaptable Software Architecture for UAVs William Heaven, Daniel Sykes, Jeff Magee, Jeff Kramer SER001 Imperial College London The Challenge Autonomous

More information

A Semantic Analysis of Wireless Network Security Protocols

A Semantic Analysis of Wireless Network Security Protocols A Semantic Analysis of Wireless Network Security Protocols Massimo Merro (joint work with Damiano Macedonio) Dipartimento di Informatica Università degli Studi di Verona - Italy NFM 2012 - Norfolk, April

More information

AT&T Managed IP Network Service (MIPNS) MPLS Private Network Transport Technical Configuration Guide Version 1.0

AT&T Managed IP Network Service (MIPNS) MPLS Private Network Transport Technical Configuration Guide Version 1.0 AT&T Managed IP Network Service (MIPNS) MPLS Private Network Transport Technical Configuration Guide Version 1.0 Introduction...2 Overview...2 1. Technology Background...2 2. MPLS PNT Offer Models...3

More information

Modular Communication Infrastructure Design with Quality of Service

Modular Communication Infrastructure Design with Quality of Service Modular Communication Infrastructure Design with Quality of Service Pawel Wojciechowski and Péter Urbán Distributed Systems Laboratory School of Computer and Communication Sciences Swiss Federal Institute

More information

Java Real-Time Distributed Processing over Chorus/OS

Java Real-Time Distributed Processing over Chorus/OS Java Real-Time Distributed Processing over Chorus/OS Christophe Lizzi CS Technologies Informatiques lizzi@csti.fr CNAM, CEDRIC lab. lizzi@cnam.fr Outline Motivations Our vision Real-time Java Operating

More information

Authenticity by Typing for Security Protocols

Authenticity by Typing for Security Protocols Authenticity by Typing for Security Protocols Andrew D. Gordon Microsoft Research Alan Jeffrey DePaul University June 2002 Technical Report To appear in the Journal of Computer Security Microsoft Research

More information

A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus

A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus A Unified Messaging-Based Architectural Pattern for Building Scalable Enterprise Service Bus Karim M. Mahmoud 1,2 1 IBM, Egypt Branch Pyramids Heights Office Park, Giza, Egypt kmahmoud@eg.ibm.com 2 Computer

More information

A Propositional Dynamic Logic for CCS Programs

A Propositional Dynamic Logic for CCS Programs A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are

More information

Concurrency Control. Chapter 17. Comp 521 Files and Databases Fall 2010 1

Concurrency Control. Chapter 17. Comp 521 Files and Databases Fall 2010 1 Concurrency Control Chapter 17 Comp 521 Files and Databases Fall 2010 1 Conflict Serializable Schedules Recall conflicts (WR, RW, WW) were the cause of sequential inconsistency Two schedules are conflict

More information

Temporal Logics. Computation Tree Logic

Temporal Logics. Computation Tree Logic Temporal Logics CTL: definition, relationship between operators, adequate sets, specifying properties, safety/liveness/fairness Modeling: sequential, concurrent systems; maximum parallelism/interleaving

More information

A Reputation Replica Propagation Strategy for Mobile Users in Mobile Distributed Database System

A Reputation Replica Propagation Strategy for Mobile Users in Mobile Distributed Database System A Reputation Replica Propagation Strategy for Mobile Users in Mobile Distributed Database System Sashi Tarun Assistant Professor, Arni School of Computer Science and Application ARNI University, Kathgarh,

More information

Modeling and Validation of a Data Process Unit Control for Space Applications

Modeling and Validation of a Data Process Unit Control for Space Applications Modeling and Validation of a Data Process Unit Control for Space Applications Wan Hai, Huang Chongdi, Wang Yuhui, He Fei and Gu Ming Key Lab of ISS of MOE, TNList, School of Software, Tsinghua University,

More information

Configuring DHCP Snooping

Configuring DHCP Snooping CHAPTER 19 This chapter describes how to configure Dynamic Host Configuration Protocol (DHCP) snooping on Catalyst 4500 series switches. It provides guidelines, procedures, and configuration examples.

More information

Sample Configuration Using the ip nat outside source list C

Sample Configuration Using the ip nat outside source list C Sample Configuration Using the ip nat outside source list C Table of Contents Sample Configuration Using the ip nat outside source list Command...1 Introduction...1 Before You Begin...1 Conventions...1

More information

Comp 411 Principles of Programming Languages Lecture 34 Semantics of OO Languages. Corky Cartwright Swarat Chaudhuri November 30, 20111

Comp 411 Principles of Programming Languages Lecture 34 Semantics of OO Languages. Corky Cartwright Swarat Chaudhuri November 30, 20111 Comp 411 Principles of Programming Languages Lecture 34 Semantics of OO Languages Corky Cartwright Swarat Chaudhuri November 30, 20111 Overview I In OO languages, data values (except for designated non-oo

More information

SOFTWARE ENGINEERING PROGRAM

SOFTWARE ENGINEERING PROGRAM SOFTWARE ENGINEERING PROGRAM PROGRAM TITLE DEGREE TITLE Master of Science Program in Software Engineering Master of Science (Software Engineering) M.Sc. (Software Engineering) PROGRAM STRUCTURE Total program

More information

DataGrids 2.0 irods - A Second Generation Data Cyberinfrastructure. Arcot (RAJA) Rajasekar DICE/SDSC/UCSD

DataGrids 2.0 irods - A Second Generation Data Cyberinfrastructure. Arcot (RAJA) Rajasekar DICE/SDSC/UCSD DataGrids 2.0 irods - A Second Generation Data Cyberinfrastructure Arcot (RAJA) Rajasekar DICE/SDSC/UCSD What is SRB? First Generation Data Grid middleware developed at the San Diego Supercomputer Center

More information

Moving from CS 61A Scheme to CS 61B Java

Moving from CS 61A Scheme to CS 61B Java Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you

More information

Components and Concepts of the Ambient Networks Architecture

Components and Concepts of the Ambient Networks Architecture Components and Concepts of the Ambient Networks Architecture Andreas Schieder, Ericsson Deutschland GmbH, Ericsson Allee 1, 52134 Herzogenrath, Germany Lars Eggert, NEC Europe Ltd., Network Laboratories,

More information

Software Stacks for Mixed-critical Applications: Consolidating IEEE 802.1 AVB and Time-triggered Ethernet in Next-generation Automotive Electronics

Software Stacks for Mixed-critical Applications: Consolidating IEEE 802.1 AVB and Time-triggered Ethernet in Next-generation Automotive Electronics Software : Consolidating IEEE 802.1 AVB and Time-triggered Ethernet in Next-generation Automotive Electronics Soeren Rumpf Till Steinbach Franz Korf Thomas C. Schmidt till.steinbach@haw-hamburg.de September

More information

Doina Bucur. Temporal Monitors for

Doina Bucur. Temporal Monitors for Doina Bucur / Temporal Monitors for 1 Application area: wireless sensor/actuator systems running TinyOS, a best-effort, asynchronous embedded OS In summary: 2 Application area: wireless sensor/actuator

More information

IBM CELL CELL INTRODUCTION. Project made by: Origgi Alessandro matr. 682197 Teruzzi Roberto matr. 682552 IBM CELL. Politecnico di Milano Como Campus

IBM CELL CELL INTRODUCTION. Project made by: Origgi Alessandro matr. 682197 Teruzzi Roberto matr. 682552 IBM CELL. Politecnico di Milano Como Campus Project made by: Origgi Alessandro matr. 682197 Teruzzi Roberto matr. 682552 CELL INTRODUCTION 2 1 CELL SYNERGY Cell is not a collection of different processors, but a synergistic whole Operation paradigms,

More information

Business Intelligence (BI) Cloud. Prepared By: Pavan Inabathini

Business Intelligence (BI) Cloud. Prepared By: Pavan Inabathini Business Intelligence (BI) Cloud Prepared By: Pavan Inabathini Summary Federal Agencies currently maintain Business Intelligence (BI) solutions across numerous departments around the enterprise with individual

More information

Oracle Database: SQL and PL/SQL Fundamentals NEW

Oracle Database: SQL and PL/SQL Fundamentals NEW Oracle University Contact Us: + 38516306373 Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training delivers the

More information

Lecture 03 (04.11.2013) Quality of the Software Development Process

Lecture 03 (04.11.2013) Quality of the Software Development Process Systeme hoher Qualität und Sicherheit Universität Bremen, WS 2013/14 Lecture 03 (04.11.2013) Quality of the Software Development Process Christoph Lüth Christian Liguda Your Daily Menu Models of Software

More information

Data Structure Oriented Monitoring for OpenMP Programs

Data Structure Oriented Monitoring for OpenMP Programs A Data Structure Oriented Monitoring Environment for Fortran OpenMP Programs Edmond Kereku, Tianchao Li, Michael Gerndt, and Josef Weidendorfer Institut für Informatik, Technische Universität München,

More information

Introducing Formal Methods. Software Engineering and Formal Methods

Introducing Formal Methods. Software Engineering and Formal Methods Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended

More information

Chapter 7 Application Protocol Reference Architecture

Chapter 7 Application Protocol Reference Architecture Application Protocol Reference Architecture Chapter 7 Application Protocol Reference Architecture This chapter proposes an alternative reference architecture for application protocols. The proposed reference

More information

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Component-Based Software Engineering Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain that CBSE is concerned with developing standardised components

More information

Driving force. What future software needs. Potential research topics

Driving force. What future software needs. Potential research topics Improving Software Robustness and Efficiency Driving force Processor core clock speed reach practical limit ~4GHz (power issue) Percentage of sustainable # of active transistors decrease; Increase in #

More information

Agent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents

Agent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents Agent Languages Requirements Overview Java Tcl/Tk Telescript Evaluation Franz J. Kurfess, Cal Poly SLO 211 Requirements for agent Languages distributed programming large-scale (tens of thousands of computers)

More information

Avid. Interfacing with Avid inews. Including inews Web Services Version 1.0

Avid. Interfacing with Avid inews. Including inews Web Services Version 1.0 Avid Interfacing with Avid inews Including inews Web Services Version 1.0 Table of Contents Overview...1 Exchanging Data with inews...2 inews FTP Server...2 RXNET/TXNET...2 Support for MOS Protocol...2

More information

The MILS Component Integration Approach To Secure Information Sharing

The MILS Component Integration Approach To Secure Information Sharing The MILS Component Integration Approach To Secure Information Sharing Carolyn Boettcher, Raytheon, El Segundo CA Rance DeLong, LynuxWorks, San Jose CA John Rushby, SRI International, Menlo Park CA Wilmar

More information

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm

More information

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis Steve Vestal Honeywell Labs Steve.Vestal@Honeywell.com 18 October 2005 Outline Background Binding and Routing Scheduling

More information

Improvised Software Testing Tool

Improvised Software Testing Tool Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 3, Issue. 9, September 2014,

More information