Internet of Things A Process Calculus Approach

Slides:



Advertisements
Similar presentations
Chart 1 C3 & IO Advanced Concepts SPARQLMotion for Distributed Network Ops John Carson, Lockheed Martin 2009 Semantic Technology.
Advertisements

1 Reversibility for Recoverability Ivan Lanese Computer Science Department FOCUS research group University of Bologna/INRIA Bologna, Italy.
Behavioral Equivalence Hossein Hojjat Formal Lab University of Tehran.
Interactive Generation of Integrated Schemas Laura Chiticariu et al. Presented by: Meher Talat Shaikh.
1 Ivan Lanese Computer Science Department University of Bologna Italy Towards a Unifying Theory for Web Services Composition Manuel Mazzara Faculty of.
1 Ivan Lanese Computer Science Department University of Bologna Italy Exploiting user-definable synchronizations in graph transformation.
1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna.
1 Ivan Lanese Computer Science Department University of Bologna Roberto Bruni Computer Science Department University of Pisa A mobile calculus with parametric.
1 Ivan Lanese Computer Science Department University of Bologna Italy Evolvable systems: some ideas for modelling With input from Davide Sangiorgi, Fabrizio.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio Montesi and Gianluigi.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio Montesi and Gianluigi.
1 Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Error Handling: From Theory to Practice Joint work with Fabrizio Montesi italianaSoftware.
1 Static vs dynamic SAGAs Ivan Lanese Computer Science Department University of Bologna/INRIA Italy.
1 Joint work with Claudio Antares Mezzina (INRIA), Jean-Bernard Stefani (INRIA) and Alan Schmitt (INRIA) Controlling Reversibility in Rhopi Ivan Lanese.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
1 Ivan Lanese Computer Science Department University of Bologna Italy On the expressive power of primitives for compensation handling Joint work with Catia.
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory at Work: Program Transformations in a Service-centred Calculus.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
1 Ivan Lanese Computer Science Department University of Bologna Italy Towards a Unifying Theory for Web Services Composition Manuel Mazzara Faculty of.
1 Ivan Lanese Computer Science Department University of Bologna Synchronization strategies for global computing models.
1 Joint work with Antonio Bucchiarone (Fondazione Bruno Kessler - IRST, Trento) and Fabrizio Montesi (University of Bologna/INRIA, Bologna) A Framework.
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
Tufts Wireless Laboratory School Of Engineering Tufts University “Network QoS Management in Cyber-Physical Systems” Nicole Ng 9/16/20151 by Feng Xia, Longhua.
Dynamic Choreographies Safe Runtime Updates of Distributed Applications Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint.
Towards Global and Local Types for Adaptation Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint work with Mario Bravetti,
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Amending Choreographies Joint work with Fabrizio Montesi and Gianluigi Zavattaro.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Causal-Consistent Reversibility in a Tuple-Based Language Joint work with Elena.
A Context Model based on Ontological Languages: a Proposal for Information Visualization School of Informatics Castilla-La Mancha University Ramón Hervás.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Decidability Results for Dynamic Installation of Compensation Handlers Joint.
Towards Interoperability Test Generation of Time Dependent Protocols: a Case Study Zhiliang Wang, Jianping Wu, Xia Yin Department of Computer Science Tsinghua.
1 Joint work with Claudio Antares Mezzina and Jean-Bernard Stefani Controlled Reversibility and Compensations Ivan Lanese Focus research group Computer.
2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.5.
1. 2 Purpose of This Presentation ◆ To explain how spacecraft can be virtualized by using a standard modeling method; ◆ To introduce the basic concept.
OWL-S: As a Semantic Mark-up Language for Grid Services By Narendranadh.J.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
DEPENDABILITY ANALYSIS (towards Networked Information Systems) Ester Ciancamerla, Michele Minichino ENEA {ciancamerlae, In.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Adaptive Choreographies Joint work with Mila Dalla Preda, Jacopo Mauro and Maurizio.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Causal-Consistent Reversibility in a Tuple-Based Distributed Language Joint work.
Realistic Mobility Models for Vehicular Ad hoc Network (VANET) Simulations ITST 高弘毅 洪佳瑜 蔣克欽.
Rewriting Nested Graphs, through Term Graphs Roberto Bruni, Andrea Corradini, Fabio Gadducci Alberto Lluch Lafuente and Ugo Montanari Dipartimento di Informatica,
Knowledge Representation Techniques
Luca Pazzi, Marco Pradelli University of Modena and Reggio Emilia
Coordination and conversation protocols in open multi-agent systems
SysML v2 Formalism: Requirements & Benefits
1st Draft for Defining IoT (1)
OPM/S: Semantic Engineering of Web Services
Java Beans Sagun Dhakhwa.
Deadlock Freedom by Construction
J. Michael, M. Shing M. Miklaski, J. Babbitt Naval Postgraduate School
Algorithms for Big Data Delivery over the Internet of Things
Choreographies: the idea
Physical Architecture Layer Design
(One-Path) Reachability Logic
Software Architecture & Design Pattern
Analysis of Link Reversal Routing Algorithms
Unified Modeling Language
Principles/Paradigms Of Pervasive Computing
Submission Title: [Proposal on PAR and 5C draft for BAN]
Why this Paper isn’t useful ?
Department of Computer Science Abdul Wali Khan University Mardan
Language-Independent Verification Framework
Introduction to verification
IoT Requirements for Networking Protocols Sadoon Azizi Department of Computer Engineering and IT.
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
From Use Cases to Implementation
Presentation transcript:

Internet of Things A Process Calculus Approach Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint work with Luca Bedogni and Marco Di Felice University of Bologna, Italy

Map of the talk Motivation Modeling Internet of Things System equivalences Conclusions

Map of the talk Motivation Modeling Internet of Things System equivalences Conclusions

Internet of Things An emerging paradigm allowing different things to interact without human intervention

Internet of Things What is a thing? Sample scenario: Oven, alarm clock, coffee machine, ... Equipped with suitable computing and communication capabilities To provide composite services to human users Sample scenario: the alarm clock sets itself according to information on traffic on the road home-work from the net the micro oven turns on automatically 5 minutes later to warm your breakfast

Internet of Things: properties No real agreement on what is an Internet of Things, even less on what it is not Some relevant features shared by most definitions Distribution Wireless communications (normally short range) Heterogeneity Effects on real world Partial communication Dynamicity Self-healing

Process calculi Algebraic abstractions of interacting systems Allow to: Clearly specify the behavior of those systems Allow to prove equivalences Equipped with tools to help reasoning Behavioral equivalences, type systems Provide formal ground to programming languages and analysis tools

General calculi and paradigm-specific calculi General purpose calculi: CCS, π-calculus,… Calculi targeting a specific paradigm For object-oriented languages, for service-oriented computing, for wireless sensor networks We propose a calculus targeting Internet of Things

Why (yet another) calculus? No calculi for Internet of Things in the literature Capture in a clear algebraic setting the peculiar aspects of IoT Have the relevant entities as first-class in the calculus Needed to speak about them, e.g. when developing a logic All the sensors are reachable from the smartphone T1 Difficult to express if sensors and smartphones are not explicitly represented

Map of the talk Motivation Modeling Internet of Things System equivalences Conclusions

Internet of Things: relevant elements

Internet of Things: relevant elements Nodes

Internet of Things: relevant elements Links

Internet of Things: relevant elements Sensors

Internet of Things: relevant elements Actuators

Internet of Things: relevant elements Processes

Basic elements A network of nodes connected by edges Nodes may include Nodes are things Edges are communication links Nodes may include Sensors Actuators Running processes Processes may Communicate along links Read sensors Write to actuators

Syntax

Semantics: main ideas Communication follows the π-calculus semantics but Partial communication: only processes in the same node or in connected nodes can communicate Actuators may be written, sensors may be read Connections with the real world Sensors may be written by the environment Actuators may be read by the environment Topology changes are decided by the environment These transitions are always enabled

Semantics of processes

Semantics of networks

Sample system

Sample system

Sample system

Map of the talk Motivation Modeling Internet of Things System equivalences Conclusions

System equivalence Are two systems equivalent from the point of view of the end user? What can the end user observe? Can see the values provided by the actuators Can send values to sensors Can move things thus creating and removing connections

End-user bisimilarity We use a form of bisimilarity Two systems are equivalent iff they can match each other actions and go to equivalent systems Only notification actions (including τ) are valid challenges Strong and weak variants Strong: ~e Weak: ≈e, needs not to match the number of τs S1 S2 ~e T1 T2 α

Strong end-user bisimilar systems

Weak end-user bisimilar systems

Compositionality issues End-user bisimilarity is not compositional Proof sketch: Any two systems with the same sensors and nodes, and no actuators are weak bisimilar, regardless of their computation capabilities Easy to find two such systems that are no more equivalent when adding the same actuator Difficult to prove end-user bisimilarity for large systems

A criterium for end-user bisimilarity We need an equivalence: Compositional Which implies end-user bisimilarity Standard bisimilarity satisfies the requirements Essentially, all actions have to be matched, not only notification actions Strong and weak variants

Map of the talk Motivation Modeling Internet of Things System equivalences Conclusions

Did we succeed? Which features did our model captures? Distribution Wireless communications (normally short range) Heterogeneity Effects on real world Partial communication Dynamicity Self-healing

Future work Refining the calculus Applying it to more complex case studies Controlling the cost of computation and communication In terms of energy consumption Looking for bounds on the energy needed for a given computation Controlling mobility Not all mobility patterns are allowed Impact on bisimulations

End of talk Thanks! Questions?