12
[email protected] 1 Peer-to-Peer System Raviteja Adusumalli

Peer to peer

Embed Size (px)

Citation preview

Page 1: Peer to peer

[email protected] 1

Peer-to-Peer SystemRaviteja Adusumalli

Page 2: Peer to peer

[email protected] 2

Definition

• What is a distributed system?

Leslie Lamport

”You know you have a distributed system when the crash of a computer you have never heard of stops you from getting any work done.”

We counteract this definition!

Page 3: Peer to peer

[email protected] 3

Distributed Systems

• Example of distributed systems:– File systems–Web servers–Mail servers– Databases

Frequently, an organization stores all its

files on a centralized distributed file server

If it fails, no one can access their files

Webb servers often become overloaded and

fail

The central mail server crashes, no one can read their email!

Page 4: Peer to peer

[email protected] 4

Our effort

• Build on an 30-year old idea

• Arpanet, the precursor of Internet, was built for:– Military survivability

• If some part stops working, the rest should continue to function

• Internet has been quite successful so far…– No fail-stop yet

• But the effort stopped here…

Page 5: Peer to peer

[email protected] 5

Peer-to-Peer System

• We want to build– Services– Servers– Applications

• That are self-managed

• Achieved by peer-to-peer techniques!

Page 6: Peer to peer

[email protected] 6

Peer-to-Peer Middleware

• After several years of research– Built a middleware: DKS

• Provides:– Routing services– Directory services – Name-based messaging

(multicast/publish/subscribe)

Page 7: Peer to peer

[email protected] 7

Peer-to-Peer System

• DKS is self-managing

• Automatic managent:– Adding servers/resources– Removing servers/resources

– Crash of servers/resources

– Load balancing of data/nodes– Security

Page 8: Peer to peer

[email protected] 8

Peer-to-Peer?

• How is it different from:– KaZaa– Napster– Gnutella– Skype

• These are so called unstructured p2p systems– Limited applicability (file sharing)– Inefficient (wastes bandwidth)

• Our focus is on structured p2p systems– Chord/CAN/Pastry (USA)– DKS/P-Grid (Europe)

Page 9: Peer to peer

[email protected] 9

What can we do with DKS?

• Three concrete applications:– P2P Web server– P2P Backup– P2P File system

Page 10: Peer to peer

[email protected] 10

P2P Web

• Works like an ordinary web server

• Differences:– It is distributed– Automatic data

replication– Load-balancing

of users

• Too much load– Add another

server

Publish your web pages

Gets stored on the DKS

0 1

2

3

4

5

67

89

10

11

15

14

13

12

115

13

4

5

Store it here

Store a new copy here

Store a copy here

Page 11: Peer to peer

[email protected] 11

P2P Backup

• Initialization– Install a client on your computer– Decide on amount of space to share– Choose files for backup

• Regular backup– Data is encrypted– Always accessible

Page 12: Peer to peer

[email protected] 12

Conclusion

• Structured Peer-to-Peer system– Self-organizing

• Automatic fault-tolerance• Automatic addition of nodes/resources• Automatic removal of nodes/resources• Automatic load-balancing

• Many interesting applications– File systems– Backup– Web– M.m.

• Cost-saving for companies– Save money on administration