sistem terdistribusi 11 [compatibility mode]

54
Sistem Terdistribusi Peer to Peer Systems

Upload: buinhi

Post on 20-Jan-2017

232 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Sistem Terdistribusi 11 [Compatibility Mode]

Sistem Terdistribusi

Peer to Peer Systems

Page 2: Sistem Terdistribusi 11 [Compatibility Mode]

Client Server vs P2P

• Client/server is hierarchical system, with resources centralized on a limited number of servers.

• In peer-to-peer networks, both resources and control are widely distributed among and control are widely distributed among nodes that are theoretically equals . – A node with more information, better

information, or more power may be “more equal,” but that is a function of the node, not the network controllers.

Page 3: Sistem Terdistribusi 11 [Compatibility Mode]

• Server-based architecture– Client-Server / Server-Cluster– Problems:

• Limited resources• All loads are centered on the server

– Server-based architecture has low scalability .

The architectures

– Server-based architecture has low scalability .– The setup and maintenance cost is high .

• Peer-to -Peer (P2P) architecture– Advantages:

• Distributing loads to all users• Users consume and provide resources

– P2P architecture has high scalability .– The setup and maintenance cost is low .

Page 4: Sistem Terdistribusi 11 [Compatibility Mode]

The Client Side

• Today’s clients can perform more roles than just forwarding users requests

• Today’s clients have:– more computing power– more computing power– more storage space

• As the Internet usage grow, more and more PCs are connecting to the global net

• Most of the time PCs are idle• Thin client � Fat client

Page 5: Sistem Terdistribusi 11 [Compatibility Mode]

Decentralization

• A key feature of peer-to-peer networks is decentralization .

• This has many implications:– robustness : handal– robustness : handal– availability of information: selalu ada &

tersebar dimasing2 client– fault-tolerance tends to come from

redundancy => satu down yg lain bisa handle– and shared responsibility : tugas dibagi

Page 6: Sistem Terdistribusi 11 [Compatibility Mode]

Technology Transition

The Client/Server Model

The Peer-to-Peer Model

Page 7: Sistem Terdistribusi 11 [Compatibility Mode]

Peer to Peer (P2P)

- Setiap komputer yang terhubung ke jaringan dapat bertindak baik sebagai client maupun server.

- Server di jaringan tipe peer to peer disebut non -dedicated serverdedicated server- karena server tidak berperan sebagai server murni,

tetapi sekaligus dapat berperan sebagai client.

- Pada jaringan tipe ini semua komputer berkedudukan sama, dapat bertindak sebagai sebuah PC client (information requestor) maupun PC server (information provider).

Page 8: Sistem Terdistribusi 11 [Compatibility Mode]

Jenis P2P: Pure P2P �Masing-masing peer berstatus setara (egaliter),

setiap peer berstatus sebagai client juga server.�Tidak ada server pusat yang mengatur jaringan.�Tidak ada router yang menjadi pusat jaringan.�Tidak ada router yang menjadi pusat jaringan.� Bisa terdiri dari > 2 komputer

Page 9: Sistem Terdistribusi 11 [Compatibility Mode]

Hybrid P2P

- Mempunyai server pusat yang memantau danmenjaga informasi yang berada di setiap peersekaligus merespon peer ketika ada yangmeminta informasi tertentu.

- Setiap peer bertanggung jawab untukmenyediakan resource yang tersedia.- Karena server pusat tidak memiliki resource

tersebut, hal ini juga dilakukan agar server pusattersebut dapat mengetahui resource apa saja yangakan didistribusikan di dalam jaringan.

Page 10: Sistem Terdistribusi 11 [Compatibility Mode]

Why P2P?

• Information - Hard to find, impossible to catalog and index all of the information

• Bandwidth - Hot links get hotter– Makin bagus informasi, makin laris dan makin – Makin bagus informasi, makin laris dan makin

tak terbendung– Makin banyak juga yg “memilikinya” dan

tersebar dimana-mana• Computing resources - Heavily loaded

nodes get overloaded, idle nodes remain idle

Page 11: Sistem Terdistribusi 11 [Compatibility Mode]

P2P Goals/Benefits

• Cost/data sharing• Reduce cost: operasional murah• Resource aggregation (digabungkan) dari

berbagai sumber• Improved reliability : kerja jaringan tidak • Improved reliability : kerja jaringan tidak

tergantung pada satu server• Increased autonomy (kebebasan) pada

masing-masing peer• Anonymity/privacy masing2 peer• Scalability : since every peer is alike, it is possible to add

more peers to the system and scale to larger networks.

Page 12: Sistem Terdistribusi 11 [Compatibility Mode]

P2P Computing Applications

• File sharing– Improves data availability– E.g., Napster, Gnutella, Freenet, KaZaA

• Process sharing– For large -scale computations– For large -scale computations– Data analysis, data mining, scientific computing– E.g.: SETI@Home, Folding@Home, distributed.net

• Collaborative environments– For remote real-time human collaboration .– Instant messaging, virtual meetings, shared

whiteboards, teleconferencing, tele-presence.– E.g.: talk, IRC, ICQ, AOL Messenger, Jabber, MS

Netmeeting, NCSA Habanero, some of Games

Page 13: Sistem Terdistribusi 11 [Compatibility Mode]

SETI@Home

• SETI – Search for Extra-Terrestrial Intelligence• @Home – On your own computer• A radio telescope in Puerto Rico that scans the

sky for radio signals• Its purpose is to analyze radio signals, searching • Its purpose is to analyze radio signals, searching

for signs of extra terrestrial intelligence, and is one of many activities undertaken as part of SETI

• to prove the practicality of the 'volunteer computing ' concept.

• Fills a DAT tape of 35GB in 15 hours• That data have to be analyzed (very large

computing)

Page 14: Sistem Terdistribusi 11 [Compatibility Mode]

SETI@Home - Example

Page 15: Sistem Terdistribusi 11 [Compatibility Mode]

Kelemahan Peer to Peer (P2P)�Troubleshooting jaringan relatif lebih sulit ,

karena pada jaringan tipe peer to peer setiapkomputer dimungkinkan untuk terlibat dalamkomunikasi yang ada.��Di jaringan client-server, komunikasi adalah antara

server dengan workstation.

� Unjuk kerja lebih rendah dibandingkandengan jaringan client-server, karena setiapkomputer/peer disamping harus mengelolapemakaian fasilitas jaringan juga harusmengelola pekerjaan atau aplikasi sendiri.

Page 16: Sistem Terdistribusi 11 [Compatibility Mode]

Kelemahan Peer to Peer (P2P)

�Sistem keamanan jaringan ditentukanoleh masing -masing user denganmengatur keamanan masing-masingmengatur keamanan masing-masingfasilitas yang dimiliki.

�Karena data jaringan tersebar di masing-masing komputer dalam jaringan, makabackup harus dilakukan oleh masing -masing komputer tersebut.

Page 17: Sistem Terdistribusi 11 [Compatibility Mode]

Kelemahan P2P

• Decentralized coordination– How to keep global state consistent?– Need for distributed coherency protocols .

• All nodes are not created equal .• All nodes are not created equal .– Computing power, bandwidth have an impact

on overall performance.

Page 18: Sistem Terdistribusi 11 [Compatibility Mode]

Dangers and Attacks on P2P

• Poisoning (files with contents different to its description)• Polluting (inserting bad packets into the files)• Defection (users use the service without sharing )• Insertion of viruses (attached to other files)• Insertion of viruses (attached to other files)• Malware (spy originally attached to the files)• Denial of Service (slow down or stop the network traffic)• Filtering (some networks don’t allow P2P traffic)• Identity attacks (tracking down users and disturbing them)• Spam (sending unsolicited information)

Page 19: Sistem Terdistribusi 11 [Compatibility Mode]

P2P Technical Challenges

• Peer identification • Routing protocols• Network topologies• Peer discovery• Communication/coordination protocols• Quality of service• Security• Resource management

Page 20: Sistem Terdistribusi 11 [Compatibility Mode]

P2P Topologies

Centralized Ring Hierarchical

Decentralized Hybrid

Page 21: Sistem Terdistribusi 11 [Compatibility Mode]

Centralized Ring

Hieralchical Decentralized

Page 22: Sistem Terdistribusi 11 [Compatibility Mode]

Hybrid

EXAMPLEP2P Centralized � NapsterP2P Decentralized � KaZaAP2P Hybrid � JXTA

Page 23: Sistem Terdistribusi 11 [Compatibility Mode]

Napster• The first large scale peer-to-peer network was

Napster, set up in 1999 to share digital music files over the Internet .

• While Napster maintained centralized (and replicated ) index , the music files were created and replicated ) index , the music files were created and made available by individuals , usually with music copied from CDs to computer files.

• Music content owners sued Napster for copyright violations and succeeded in shutting down the service.

Page 24: Sistem Terdistribusi 11 [Compatibility Mode]

Napster: a centralized, replicated index

Napster server

Index1. File locationrequest

peers

Napster server

Index

2. List of peers

request

offering the file

3. File request

4. File delivered5. Index update

Page 25: Sistem Terdistribusi 11 [Compatibility Mode]

Napster Sharing Style

1. Users launch Napster and connect to Napster server

3. beastieboy enters search criteria

2. Napster creates dynamic directory from users’ personal .mp3 libraries

Title User Speed song1.mp3 beasiteboy DSLsong2.mp3 beasiteboy DSLsong3.mp3 beasiteboy DSLsong4.mp3 kingrook T1song5.mp3 kingrook T1song5.mp3 slashdot 28.8song6.mp3 kingrook T1song6.mp3 slashdot 28.8song7.mp3 slashdot 28.8

“slashdot”•song5.mp3•song6.mp3•song7.mp3

“kingrook”•song4.mp3•song5.mp3•song6.mp3

•song5.mp3

3. beastieboy enters search criteria

4. Napster displays matches to beastieboy

5. beastieboy makes direct connection to kingrook for file transfer

s o n g 5

“beastieboy”•song1.mp3•song2.mp3•song3.mp3

Page 26: Sistem Terdistribusi 11 [Compatibility Mode]

Napster: Lessons Learned

• Napster created a network of millions of people , with thousands of files being transferred at the same time.

• There were quality issues . While Napster displayed link speeds to allow users to choose faster link speeds to allow users to choose faster downloads, the fidelity of recordings varied widely.

• Since Napster users were parasites of the recording companies, there was some central control over selection of music.

• There was no guarantee of availability for a particular item of music.

Page 27: Sistem Terdistribusi 11 [Compatibility Mode]

P2P legal controversy

• P2P structure and functionalities make it perfectfor sharing vast ammounts of files

• Unfortunately, people use it fo illegal downloading

• Recording Industry Association of America • Recording Industry Association of America introduces lawsuits and seeks legal changes– CDs, mp3 players introduce restrictions and

become more expensive

27

Page 28: Sistem Terdistribusi 11 [Compatibility Mode]

Legal Facts from RIAA

• “Music piracy is any form of unauthorized duplication and/or distribution of music including downloading, file sharing, and CD-burning.”CD-burning.”

• “Criminal penalties can be as high as five years in prison or $250,000 in fines.”

• RIAA wants to find violators of copyright law

Page 29: Sistem Terdistribusi 11 [Compatibility Mode]

Morpheus : Free Anonymizer

• Another file -sharing application• In 2003 Streamcast Networks (owners)

included a free Anonymizer with Morpheus• Through proxies , users don’t see each other• Through proxies , users don’t see each other• Also includes blacklist of data ‘snooping’• iMesh (Israel) and Blubster (Spain) among

others now provide the same service

Page 30: Sistem Terdistribusi 11 [Compatibility Mode]

The ‘Animal’ GNU

Gnutella =

GNU: Recursive AcronymGNU’s Not Unix ….

+GNU

Gnutella = +

Nutella: a hazelnut chocolate spread produced by the Italian confectioner Ferrero ….

Nutella

Page 31: Sistem Terdistribusi 11 [Compatibility Mode]

Gnutella History• Gnutella was written by Justin Frankel , the

21-year-old founder of Nullsoft .• Nullsoft acquired by AOL, June 1999• Nullsoft (the maker of WinAmp ) posted

Gnutella on the Web, March 14, 2000.Gnutella on the Web, March 14, 2000.• 23k users on Gnutella • People had already downloaded and shared

the program.• Gnutella continues today, run by independent

programmers.

Page 32: Sistem Terdistribusi 11 [Compatibility Mode]

Gnutella ProtocolScenario: Joining Gnutella Network

Gnutella Network• ping : discover hosts on network • pong : reply to ping • query : search for a file query • hit : reply to query • push : download request

NewPING

A

• push : download request• The new node connects to a well known

‘Anchor’ node or ‘Bootstrap’ node.• Then sends a PING message to discover

other nodes.• PONG messages are sent in reply from

hosts offering new connections with the new node.

• Direct connections are then made to the newly discovered nodes.

PINGPING

PINGPING

PINGPING

PINGPING

PING

PONG

PONG

Page 33: Sistem Terdistribusi 11 [Compatibility Mode]

Gnutella: Issue a Request

xyz.mp3 ?

Page 34: Sistem Terdistribusi 11 [Compatibility Mode]

Gnutella: Flood the Request

Page 35: Sistem Terdistribusi 11 [Compatibility Mode]

Gnutella: Reply with the File

Fully distributed storage and directory!

Page 36: Sistem Terdistribusi 11 [Compatibility Mode]

P2P is using Hasing

Shark SHA-1

Object ID (key):AABBCC

Shark SHA-1

Object ID (key):DE11AC

SHA-1194.90.1.5:8080

Page 37: Sistem Terdistribusi 11 [Compatibility Mode]

Hashing Basic Idea

P2P NetworkJoin (H(x))

Publish (H(y))

Hash key

Object “y”

Objects have hash keys

Peer “x”

Peer nodes also have hash keys in the same hash space

y x

H(y) H(x)

Place object to the peer with closest hash keys

Page 38: Sistem Terdistribusi 11 [Compatibility Mode]

Viewed as a Distributed Hash Table

Hashtable

0 2128-1

Peernodenode

Internet

Page 39: Sistem Terdistribusi 11 [Compatibility Mode]

How to Find an Object?

Hashtable

0 2128-1

PeerPeernode

Page 40: Sistem Terdistribusi 11 [Compatibility Mode]

Chord Lookup – with finger tableStart Int. node

2+1 [3,4) 3

2+2 [4,6) 7

2+4 [6,10) 7

2+8 [10,2) 1014 2

15 1

3

I’m node 2.Please find key 14!

14 ∈∈∈∈[10,2)

40/46

12

10

3

7

Start Int. node

10+1 [11,12) 12

10+2 [12,14) 12

10+4 [14,2) 14

10+8 [2,10) 2

14 ∈∈∈∈[14,2)

Circular 4-bitID space

Page 41: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA

• Website : https://jxta.dev.java.net/

• Dimotori oleh Bill Joy dari Sun Microsystem, didukung oleh komunitas Microsystem, didukung oleh komunitas dari kalangan akademis dan industri

• JXTA dirancang untuk lebih baik dibanding solusi P2P yang sudah ada

Page 42: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA

• JXTA merupakan kependekan darijuxtapose , yang artinyamendekatkan /menghubungkan

• Tujuan utama JXTA � sebagai platform P2P • Tujuan utama JXTA � sebagai platform P2P yang :– Interoperability– Platform Independence– Ubiquity (seamless integration between devices)

Page 43: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA

• Interoperability– Setiap vendor dapat mengeluarkan protokol P2P

sendiri yang tidak sama, namun tetap dapat terkoneksi

• Platform Independence• Platform Independence– Dapat dijalankan di banyak platform, mendukung

banyak bahasa pemrograman

• Ubiquity– Tidak hanya PC, mobile device juga bisa

terhubung dalam jaringan P2P JXTA ini

Page 44: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Terms and Concepts• Peers : tiap-tiap node dalam JXTA• Advertisements

– Dokumen XML terstruktur tentang informasi layanan/resource yang ada pada suatu peer

• Messages– Data yang dipertukarkan antar peer (XML atau binary)– Data yang dipertukarkan antar peer (XML atau binary)

• Pipes– Jalur yang digunakan untuk mengirim Message

• Identifiers– Identitas unik setiap peer (UUID Identifier)

• Rendezvous Nodes : – node yang dapat menerima dan mengeluarkan koneksi dari

banyak node serta membetuk suatu group• Relay Nodes

– JXTA routers, untuk akses network dari belakang firewall, NAT

Page 45: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Architecture

JXTA Community ApplicationsJXTAApplications

JXTA Community Services

JXTASUNJXTA

• Indexing• Searching

JXTAShell

PeerCommands

SUNJXTA

Applications

ServicesServicesJXTAServices

• Searching• File Sharing

Peer GroupsJXTACore

Any Peer on the extended Web

Peer Pipes Peer Monitoring

Security (authentication, authorization and on the wire)

Commands

Page 46: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Virtual Network

Peer

Peer

PeerPeer

Peer PeerPeer

Peer

JXTA Virtual

Network

Bluetooth TCP/IP

Fire

wal

l

Firewall

Physical Network

Http

Virtual Mapping

Page 47: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA

Peer Peer

Peer

Peer

Peer: A JXTA node.

JXTA Group: a group is a set of JXTA nodes who share a common interest

Peer

Peer

Peer

Peer

A Rendezvous Peer Peer A Rendezvous Peer: a meeting place e.g. gateway for JXTA groups

Peer

Peer

Peer

Peer Peer

Peer

Peer

Peer

Page 48: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Group

Peer

Peer

Peer

Peer

• Sekumpulan peer yang memiliki kesamaanlayanan/resource , misalnya: file sharing, cpu sharing, dsb

Peer

Peer

Peer

Peer

sharing, dsb

•Setiap peer tergabung dalam satu group default yang bernama World Peer Group yang terdiri dari semua JXTA Peers

Page 49: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA

• Protokol pada JXTA �• Peers :

– Discover each others– Self organize into peers group– Self organize into peers group– Advertise and discover network service– Communicate with each others– Monitor each others

Page 50: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Pipe

Peer1

Peer2

A JXTA Pipe

Actual Route

Output Pipe Input Pipe

Peer3

Peer4

Firewall

Page 51: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Scenario

RV

13

2

1. RV

4

7

6

5

NewNode

2.

1.

3.

4..

5..

Page 52: Sistem Terdistribusi 11 [Compatibility Mode]

JXTA Protocol LayerPeer Discovery

Protocol

Peer InformationProtocol

Pipe Binding Protocol

Peer DiscoveryProtocol

Peer InformationProtocol

Pipe Binding Protocol

Via Peer Resolver Protocol

Via Peer Resolver Protocol

Via Peer Resolver Protocol

Peer Resolver Protocol

Rendezvous Protocol

Peer EndpointProtocol

Network Transport

Peer Resolver Protocol

Rendezvous Protocol

Peer EndpointProtocol

Network Transport

Via Enpoint Routing Protocol

Via Enpoint Routing Protocol

Via installed Network Transports

Via Installed Network Transports

Page 53: Sistem Terdistribusi 11 [Compatibility Mode]

Fungsi-fungsi• Peer discovery protocol : untuk mencari resource yang

diinginkan• Peer information protocol : untuk menyimpan informasi

mengenai suatu peer (uptime, trafic load, capabilities, state, dsb)

• Peer binding protocol : memungkinkan suatu peer membuat sebuah virtual channel (pipe) untuk pertukaran datasebuah virtual channel (pipe) untuk pertukaran data

• Peer resolver protocol : memungkinkan suatu peer mengirimkan suatu kriteria pencarian resource

• Redezvous protocol : memungkinkan peer mengirimkan data ke semua peer (listener) pada layanan tertentu

• Peer end point protocol : untuk mengirimkan data dari suatu peer ke peer lainnya melalui jalur tertentu

Page 54: Sistem Terdistribusi 11 [Compatibility Mode]

NEXT

• Multimedia dan Ubiquitous Computing