Dynamically Evolving Klaim Nets Lorenzo Bettini Joint work with Michele Loreti, Rosario Pugliese Dipartimento di Sistemi ed Informatica,

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

Distributed Data Processing
Mobile Application Architectures
Handheld Contact Wireless syncing ACT! Blackberry and Windows Mobile 5/6.
An infrastructure language for Open Nets Michele Loreti Joint work with: Lorenzo Bettini and Rosario Pugliese Dipartimento di Sistemi e Informatica Università.
Presentation viewer : _ Mahmoud matter. Ahmed alasy Dr: Rasha Atallah.
Module 5: Configuring Access for Remote Clients and Networks.
Chapter 9 Chapter 9: Managing Groups, Folders, Files, and Object Security.
What we will cover… Home Networking: Network Address Translation (NAT) Mobile Routing.
MCDST : Supporting Users and Troubleshooting a Microsoft Windows XP Operating System Chapter 14: Troubleshooting Remote Connections.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Subnetting.
SensIT PI Meeting, April 17-20, Distributed Services for Self-Organizing Sensor Networks Alvin S. Lim Computer Science and Software Engineering.
A Klaim specification of the Handover protocol: logic-based and type-based analysis Michele Loreti and Daniele Gorla Dipartimento di Sistemi e Informatica.
DAKNET Presented By: rreema.
The OSI Model A layered framework for the design of network systems that allows communication across all types of computer systems regardless of their.
CECS 474 Computer Network Interoperability Tracy Bradley Maples, Ph.D. Computer Engineering & Computer Science Cal ifornia State University, Long Beach.
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
MCTS GUIDE TO MICROSOFT WINDOWS 7 Chapter 14 Remote Access.
WLAN. A wireless LAN, or WLANLAN WLAN, is a local area network that does not have wired Ethernet connections. A WLAN can be either an extension to a current.
PERSONALLY CUSTOMIZABLE GROUP NAVIGATION SYSTEM USING CELLULAR PHONES AND WIRELESS AD-HOC COMMUNICATION Yoshitaka Nakamura, Guiquan Ren, Masatoshi Nakamura,
Adapted from: Computer Networking, Kurose/Ross 1DT066 Distributed Information Systems Chapter 6 Wireless, WiFi and mobility.
Configuring Routing and Remote Access(RRAS) and Wireless Networking
Chapter 2 Network Design Essentials Instructor: Nhan Nguyen Phuong.
Wave Relay System and General Project Details. Wave Relay System Provides seamless multi-hop connectivity Operates at layer 2 of networking stack Seamless.
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
Network Basics. Outline Objective Types of Networks LAN Topologies LAN Networking Standards Network Devices Dial-Up Access Ethernet Wiring Summary References.
Common Devices Used In Computer Networks
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Networking Components Presented by Jaisson Mailloux LTEC 4550 Network Systems Administration.
Cloud Computing.
Definitions What is a network? A series of interconnected computers, linked together either via cabling or wirelessly. Often linked via a central server.
CHAPTER 3 PLANNING INTERNET CONNECTIVITY. D ETERMINING INTERNET CONNECTIVITY REQUIREMENTS Factors to be considered in internet access strategy: Sufficient.
Computer and Information Science Ch1.3 Computer Networking Ch1.3 Computer Networking Chapter 1.
Hands-On Microsoft Windows Server Introduction to Remote Access Routing and Remote Access Services (RRAS) –Enable routing and remote access through.
BZUPAGES.COM. What is a VPN VPN is an acronym for Virtual Private Network. A VPN provides an encrypted and secure connection "tunnel" path from a user's.
Locating Mobile Agents in Distributed Computing Environment.
MODULE I NETWORKING CONCEPTS.
IP Security IP sec IPsec is short for Internet Protocol Security. It was originally created as a part of IPv6, but has been retrofitted into IPv4. It.
ECI – electronic Commerce Infrastructure “ An application to the Shares Market ” Demetris Zeinalipour ( Melinos Kyriacou
A Membership Management Protocol for Mobile P2P Networks Mohamed Karim SBAI, Emna SALHI, Chadi BARAKAT.
BZUPAGES.COM Presentation on TCP/IP Presented to: Sir Taimoor Presented by: Jamila BB Roll no Nudrat Rehman Roll no
Module 4 Planning for Group Policy. Module Overview Planning Group Policy Application Planning Group Policy Processing Planning the Management of Group.
1 Network Firewalls CSCI Web Security Spring 2003 Presented By Yasir Zahur.
WLAN.
Mobile agents based implementation of a distance evaluation system Vikram Jamwal Sridhar Iyer School of Information Technology IIT Bombay SAINT’2003.
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
1 The Network Menu. 2 Static Routing The Static Routing functionality within GD eSeries allows users to easily configure static routes to networks not.
11 ROUTING IP Chapter 3. Chapter 3: ROUTING IP2 CHAPTER INTRODUCTION  Understand the function of a router.  Understand the structure of a routing table.
Routing Algorithms Lecture Static/ Dynamic, Direct/ Indirect, Shortest Path Routing, Flooding, Distance Vector Routing, Link State Routing, Hierarchical.
VPN. CONFIDENTIAL Agenda Introduction Types of VPN What are VPN Tokens Types of VPN Tokens RSA How tokens Work How does a user login to VPN using VPN.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
Module 11 Configuring and Managing Distributed File System.
Computer Network Architecture Lecture 7: OSI Model Layers Examples II 1 26/12/2012.
Windows Vista Configuration MCTS : Advanced Networking.
Presented by Edith Ngai MPhil Term 3 Presentation
Chapter 7. Identifying Assets and Activities to Be Protected
Chapter 1 Introduction to Networking
DMET 602: Networks and Media Lab
Understand Wide Area Networks (WANs)
IP Security IP sec IPsec is short for Internet Protocol Security. It was originally created as a part of IPv6, but has been retrofitted into IPv4. It works.
Planning and Troubleshooting Routing and Switching
Wireless Modes.
Introduction to Networking
NET323 D: Network Protocols
Quick Comparison of workspaces
Data Communication and Computer Networks
NET323 D: Network Protocols
DMET 602: Networks and Media Lab
Presentation transcript:

Dynamically Evolving Klaim Nets Lorenzo Bettini Joint work with Michele Loreti, Rosario Pugliese Dipartimento di Sistemi ed Informatica, Firenze

Dynamic Infrastructure It evolves over time: New nodes can get connected Existing nodes can disconnect Connections and disconnections can be temporary and unexpected A connection can be established on the fly with wireless devices Ad-hoc paths to services can be establish to enable communication among components

Dynamic Infrastructure The assumption that the underlying network is always available may be too strong; Permanent connection may not always be available; The knowledge of the address of a remote host may be not sufficient to communicate with it; Necessity of making Node Connectivity explicit in the language.

Communication Layer in Klaim is based on nodes’ location knowledge, is influenced by: Allocation environments; Tuple and Process distribution.

Connections and Disconnections TS s1s1 s2s2 Two nodes are disconnected if one doesn’t know the locality of the other

Connections and Disconnections TS s1s1 s2s2 s2s2 There is a (re)connection when one gets to know about the other

Connections and Disconnections TS s1s1 s2s2 Two nodes will be disconnected again when that knowledge is lost s2s2

Node “Mobility” TS s1s1 s2s2 s3s3 s3s3 s3s3 Node mobility corresponds to mobility of (knowledge of) links If a process, that knows a node, moves, then the known node moves too. s3s3

Clusters & SuperProcesses A Cluster is a collection of nodes There can be multiple clusters Two nodes can interact with each other only if they stay in the same cluster SuperProcesses are processes that: Can create new Clusters; Can add or remove their node to Clusters; Cannot move

New Actions Create a new cluster: newc(w) Add a node to a cluster: add(c) Remove a node from a cluster: rm(c) Not indexed with a locality They act on the node they are executed on.

s c2c2 s s Example c1c1 newc(w) add(c 2 ) rm(c 1 )

Syntax N ::= s ::  P  c :: {s}  N | N P ::= nil  out(et)  act.P  P | P  act.P + act.P  X  A SP ::= P  sact.SP  SP | SP act ::=     newloc(SP,u) sact::= add(c)  rm(c)  newc(w)

Connection Modes Tethered mode Disconnected mode Untethered mode

Tethered mode WAN connectivity is available Information can be accessed from any point at any time Idealized situation that takes place only for a limited computers in a network.

Disconnected mode WAN connectivity is available Users can work offline When online a user works like in Tethered Mode When a user goes online reconciliation and/or notification can be needed. Typical for a user that does not own a network access. The user works in isolation and, at some time, connects to Internet (e.g. via a modem).

Untethered mode WAN connectivity is unavailable Local-area connectivity may still be available Communication: is enabled by wireless devices is limited to those devices that are in a communication range Usual form for a mobile user, that from time to time enters different areas where connectivity is constrained (e.g. by firewalls).

Tethered mode All nodes are in the same cluster and there are no SuperProcesses.

Disconnected mode All nodes are in the same cluster Occasionally some node can be removed and added

Untethered mode Multiple clusters are available Nodes can change cluster

Scenarios Location dependent connection Ad-hoc networking Disconnection

Location-dependent Connection A mechanical engineer visits a plant in the Third World WAN connectivity is not available There is a single wireless access point When connected engineer can access plant’s resources (data and applications)

Location-dependent Connection 0101 Plant-access point 0101 add(c ap ) Private area c ap rm(c ap ) cpcp

Ad hoc networking A team of experts meet in a site where a new plant must be established Experts can interact locally by using an ad hoc network, sharing data and resources Occasionally connection to the headquarters might be needed to check additional information

Local area Ad hoc networking Headquarters Local area

Disconnection A software engineer works in isolation At a given point she dials up and gets reconnected to a virtual community server She downloads work updates She asks for help and goes offline Later she reconnects to the virtual community: She contacts one of the connected experts She establishes a synchronous communication After acquiring enough information she logs off Finally, when she ends her work, she logs on and uploads the artifacts

Disconnection s2s s2s2 c add(c) rm(c) add(c) rm(c) add(c)

Remarks Proposed extensions can be “expressed” in standard Klaim; Klaim’s Logical framework can be automatically applied to extended Klaim; Klaim’s Types for Access Control can be easily extended too. Proposed extensions can be “expressed” in standard Klaim; Klaim’s Logical framework can be automatically applied to extended Klaim; Klaim’s Types for Access Control can be easily extended too.

Comparison with Ambients Clusters do not move Can intersect Represent a communication ability, not necessarily an environment Still locality-aware More similar to channels

Translation in standard Klaim A cluster c becomes a node s c If s belongs to c then tuple (s) is in the TS of s c and (cluster, s c ) in the TS of s newc becomes newloc add(c) becomes c.out(cluster, s c rm(c) becomes c.in(cluster, s c

Translation in standard Klaim Communication and migration operations are translated into sequences of operations that first test for the presence of a cluster and then perform the operation A counter should be used in order to exhaustively examine all the clusters to which a node belongs

Extending the implementation

Connecting to a Klava Net hostnet.dsi.unifi.it $> java client2 hostnet.dsi.unifi.it 9999 Connecting to hostnet.dsi.unifi.it: Login as client2... Login successful! $> java Klava.Net Starting Net on port

Communication in Klava Net s1s2

Extending the implementation s1 s2 Net s1s2

Extending the implementation s1 s2 c1 c2 s3 c1 s1s2 c2 s3

Future work Extend the implementation Apply the extensions to our existing frameworks Merge with Structured Nets

Structured Nets Ordering relation on nodes (<): is- parent-of Routing function (  ): the nodes that have to be crossed to reach a site System operations (sys(t)): to access and modify the structure of the net