Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven...
-
Upload
eric-hopkins -
Category
Documents
-
view
218 -
download
2
Transcript of Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven...
![Page 1: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/1.jpg)
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
PeerSpaces: Data-Driven Coordination on P2P Networks
(2003)
From Nadia Busi, Cristian Manfredini, Alberto Montresor and Gianluigi Zavattaro of
University of Bologna
Presented by Samuele Milani
![Page 2: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/2.jpg)
2
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
![Page 3: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/3.jpg)
3
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Summary
New coordination model (The Peer Spaces Model)
Exploit the Linda Model for Peer-to-Peer Networks.
Prototypical implementation (JXTA).
![Page 4: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/4.jpg)
4
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Overview
1)Peer-to-Peer Networks
2)The Linda Model
3)Linda in a Mobile Environment (LIME)
4)Peer Spaces
5)An Implementation with JXTA
![Page 5: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/5.jpg)
5
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
1. Peer-to-Peer Networks1. Peer-to-Peer Networks
![Page 6: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/6.jpg)
6
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Peer-to-Peer Basics
Various type of Networks :
- Client-Server : Web servers
- Hybrid P2P : Napster, eDonkey
- Pure P2P : Gnutella, Freenet
![Page 7: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/7.jpg)
7
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
The eDonkey Network
![Page 8: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/8.jpg)
8
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Problems ?
High comunication overhead Slow search Distribution of load & resources Elephant & Mice problem …
![Page 9: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/9.jpg)
9
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
2. The Linda Model2. The Linda Model
![Page 10: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/10.jpg)
10
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
The Linda Model
Developped at Yale University in 1985 Shared memory accessible by all processes Data elements consists of tuples Tuple is like a record ex. (‘worker’, 0, i) Four basic primitives Implemented through libraries (Linda for C,
Fortran, C++)
![Page 11: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/11.jpg)
11
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
The Fantastic 4
out(‘test’, 4, 64)places a data tuple in tuple space
eval(‘test’,i, f(i))creates a live tuple, which start a process that evaluate each argument
rd(‘test’, ?i, ?j) blockingread the values in a tuple in a tuple space
in(‘test’, ?i, ?j) blockingsame as rd except that it also removes the tuple from the tuple space
![Page 12: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/12.jpg)
12
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Example
(‘Test’,1)
(‘Test2’,18)
Boss
Slave
(‘Car’,180,’Volvo’)
Slave
![Page 13: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/13.jpg)
13
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Example
(‘Test’,1)
(‘Test2’,18)
Boss
Slave
(‘Car’,180,’Volvo’)
Slave
out(‘Job1’,100,’$’)
![Page 14: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/14.jpg)
14
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Example
(‘Test’,1)
(‘Test2’,18)
Boss
Slave
(‘Car’,180,’Volvo’)
Slave
(‘Job1’,100,’$’)
![Page 15: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/15.jpg)
15
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Example
(‘Test’,1)
(‘Test2’,18)
Boss
Slave
(‘Car’,180,’Volvo’)
Slave
(‘Job1’,100,’$’)in(‘Job1’,?i,’$’)
![Page 16: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/16.jpg)
16
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Example
(‘Test’,1)
(‘Test2’,18)
Boss
Slave
(‘Car’,180,’Volvo’)
Slave
(‘Job1’,100,’$’)
![Page 17: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/17.jpg)
17
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
3. Lime 3. Lime
(Linda in Mobile Environment)(Linda in Mobile Environment)
![Page 18: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/18.jpg)
18
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Lime
Problems with Linda :- where i store the tuples (Server)- rather statical model- not suitable for dynamical changing networks
Lime designed for mobile applications over wired and ad hoc networks
Supports physical and logical mobility of the hosts Introduces transiently shared data space Decoupled and opportunistic style of computation
![Page 19: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/19.jpg)
19
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Transiently shared Dataspaces
Process Level
Data Space
Host Level
Data Space
Transiently shared
Data Space
![Page 20: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/20.jpg)
20
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
4. Peer Spaces4. Peer Spaces
![Page 21: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/21.jpg)
21
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Motivation
Adapt the Linda/Lime Model to P2P Generative communication Must support extreme dynamism in structure,
content and load Large degree of self-configuration and self
management is required New coordination model PeerSpaces Formal rules, abstraction of data and network
structure
![Page 22: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/22.jpg)
22
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Definitions
Data (d) Local data Generic data (Chat) Replicable data (FileSharing)
Peer p [P, DS] Ps set of peers MD Misplaced data Network topology
gdrd
d
![Page 23: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/23.jpg)
23
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(write(job,Gen).read(response,8).write(cash,Gen).P, { })Peer q :q(read(job,8).write(response,Rep).read(cash,8).
write(pay,Gen).Q, {dog})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
![Page 24: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/24.jpg)
24
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(write(job,Gen).read(response,8).write(cash,Gen).P, { })Peer q :q(read(job,8).write(response,Rep).read(cash,8).
write(pay,Gen).Q, {dog})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
![Page 25: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/25.jpg)
25
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(read(response,8).write(cash,Gen).P, {job })Peer q :q(read(job,8).write(response,Rep).read(cash,8).
write(pay,Gen).Q, {dog})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
g
![Page 26: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/26.jpg)
26
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(read(response,8).write(cash,Gen).P, {})Peer q :q(read(job,8).write(response,Rep).read(cash,8).
write(pay,Gen).Q, {dog})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = {job }g
![Page 27: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/27.jpg)
27
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(read(response,8).write(cash,Gen).P, { })Peer q :q(write(response,Rep).read(cash,8).
write(pay,Gen).Q, {dog, job })
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
g
![Page 28: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/28.jpg)
28
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(read(response,8).write(cash,Gen).P, { })Peer q :q(read(cash,8).
write(pay,Gen).Q, {dog, job, response })
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
r
![Page 29: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/29.jpg)
29
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(write(cash,Gen).P, {response })Peer q :q(read(cash,8).
write(pay,Gen).Q, {dog, job, response})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
r
![Page 30: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/30.jpg)
30
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(P, {response, cash })Peer q :q(read(cash,8).
write(pay,Gen).Q, {dog, job, response})
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
g
![Page 31: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/31.jpg)
31
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(P, {response})Peer q :q(
write(pay,Gen).Q, {dog, job, response, cash } )
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
g
![Page 32: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/32.jpg)
32
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(P, {response})Peer q :q(
Q, {dog, job, response, cash, pay } )
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- fully connectedMD = { }
g
![Page 33: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/33.jpg)
33
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
A Peer Space Example
Peer p :p(P, {response})Peer q :q(
Q, {dog, job, response, cash} )
Peer r :r(read(pay,8).write(receipt,Gen).R, {credit})
Network :- A Node has disconnected now Route(q,r) = falseMD = {pay }g
![Page 34: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/34.jpg)
34
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Data Production
![Page 35: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/35.jpg)
35
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Data Retrieval
![Page 36: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/36.jpg)
36
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Constant and Context Rules
![Page 37: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/37.jpg)
37
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Open issues ?
• Implementation of :- Route (p, p’)- Hor (p, h)- LoadBal (p,p’,d)
![Page 38: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/38.jpg)
38
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
5. A JXTA Prototypical 5. A JXTA Prototypical ImplementationImplementation
![Page 39: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/39.jpg)
39
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
What’s JXTA ?
JXTA is an open-source project by Sun to provide a set of basic facilities for P2P applications
Based on a set of XML protocols JXTA middleware has 3 layers
- core : low-level functions (routing, communication, …)
- services : indexing, searching, file sharing
- applications : high-level application (chat, auction, …)
![Page 40: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/40.jpg)
40
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
The JPS Network
![Page 41: Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks PeerSpaces: Data-Driven Coordination on P2P Networks (2003) From Nadia Busi,](https://reader036.fdocuments.net/reader036/viewer/2022062515/56649d155503460f949ea115/html5/thumbnails/41.jpg)
41
Concurrency Seminar : PeerSpaces Data-Driven Coordination on P2P Networks
Conclusion
We can not yet draw conclusions until concrete implementations comes out !!!!
But the model should theoretically work
To be continued…