240-322 cli/serv.: p2p/31 client/server distributed systems v objectives –introduce p2p, discuss...

63
40-322 Cli/Serv.: P2P/3 Client/Server Distributed Client/Server Distributed Systems Systems Objectives Objectives introduce P2P, discuss some introduce P2P, discuss some current systems, highlight key current systems, highlight key issues issues 240-322, Semester 1, 2005-2006 3. Peer-to-Peer Technologies (P2P)

Upload: bartholomew-perry

Post on 26-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

240-322 Cli/Serv.: P2P/3 1

Client/Server Distributed SystemsClient/Server Distributed Systems

ObjectivesObjectives– introduce P2P, discuss some current introduce P2P, discuss some current

systems, highlight key issuessystems, highlight key issues

240-322, Semester 1, 2005-2006

3. Peer-to-Peer Technologies (P2P)

240-322 Cli/Serv.: P2P/3 2

ContentsContents

1.1. What is P2P (briefly) ?What is P2P (briefly) ?

2.2. The Early Days of the InternetThe Early Days of the Internet

3.3. The Internet NowThe Internet Now

4.4. Reader-Centric P2PReader-Centric P2P

5.5. Publisher-Centric P2PPublisher-Centric P2P

6.6. P2P Meme MapP2P Meme Map

7.7. P2P IssuesP2P Issues

8.8. More InformationMore Information

240-322 Cli/Serv.: P2P/3 3

1. What is P2P (briefly) ?1. What is P2P (briefly) ? Peer-to-peer (P2P) allows Peer-to-peer (P2P) allows everyoneeveryone on the Internet to on the Internet to

share their resourcesshare their resources with others. with others.

P2P is a class of applications that uses resources from P2P is a class of applications that uses resources from the 'edges' of the Internetthe 'edges' of the Internet– e.g. storage space, CPU time, filese.g. storage space, CPU time, files

Some P2P applications:Some P2P applications:– Napster, Gnutella, FreeNet, FreeHavenNapster, Gnutella, FreeNet, FreeHaven

240-322 Cli/Serv.: P2P/3 4

Client/Server vs. P2PClient/Server vs. P2P

server

clients

P2P

240-322 Cli/Serv.: P2P/3 5

2. The Early Days of the Internet2. The Early Days of the Internet

Many users think that P2P ideas are new.Many users think that P2P ideas are new.

Infact, the Internet was originally designed Infact, the Internet was originally designed to be P2Pto be P2P– but due to the Web and browsers it has changed but due to the Web and browsers it has changed

into a client/server model during the 1990'sinto a client/server model during the 1990's

240-322 Cli/Serv.: P2P/3 6

The Arpanet (late 1960's)The Arpanet (late 1960's)

Arpanet's aim was to share computing resources Arpanet's aim was to share computing resources around the main USA universities and around the main USA universities and Government installations.Government installations.

'Killer' applications of 1970-1980's:'Killer' applications of 1970-1980's:– FTP, telnet, e-mail, chatFTP, telnet, e-mail, chat– mostly client/server but...mostly client/server but...– usage patterns were usage patterns were symmetricsymmetric

most machines were both clients most machines were both clients andand servers servers

240-322 Cli/Serv.: P2P/3 7

Usenet (since 1979)Usenet (since 1979)

A A decentralizeddecentralized file sharing model for file sharing model for distributing news.distributing news.

newsserver

newsserver

newsservernews

servernewsserver

rs rsrs

rs

rs

continuedreaders (and senders)

240-322 Cli/Serv.: P2P/3 8

No central authorityNo central authority– authority is localised in each news serverauthority is localised in each news server

But, an unofficial Usenet backbone has But, an unofficial Usenet backbone has developed:developed:– these are servers which store more newsgroups, these are servers which store more newsgroups,

have faster processing, better connectivity, etc.have faster processing, better connectivity, etc.– server inequalities cause a hierarchy to appearserver inequalities cause a hierarchy to appear

continued

240-322 Cli/Serv.: P2P/3 9

News News topic hierarchytopic hierarchy (the ordering of the news (the ordering of the news groups) is controlled by users in the groups) is controlled by users in the news.adminnews.admin news groupnews group– but new users find it hard to influence decisionsbut new users find it hard to influence decisions

There is an "anything goes" There is an "anything goes" alt.*alt.* news group news group hierarchy.hierarchy.

Main problem: lots of useless news itemsMain problem: lots of useless news items

240-322 Cli/Serv.: P2P/3 10

DNS (Domain Name System)DNS (Domain Name System)

DNS allows IP names to be mapped to IP DNS allows IP names to be mapped to IP addressesaddresses– used by almost all network applicationsused by almost all network applications

Names are organised into a hierarchy:Names are organised into a hierarchy:– psu.ac.thpsu.ac.th, , ait.ac.thait.ac.th, , foo.org.thfoo.org.th

Since 1983

continued

240-322 Cli/Serv.: P2P/3 11

The name hierarchy has led to a mixed P2P The name hierarchy has led to a mixed P2P and hierarchical server modeland hierarchical server model

nameserver

nameserver

nameserver

nameserver

nameserver

nameserver

nameserver

rsrs rs rs

th

ac

psu ait

org

foo

continued

lookups and requests

240-322 Cli/Serv.: P2P/3 12

Each name server deals with part of the Each name server deals with part of the namespace and passes other requests on.namespace and passes other requests on.

Each name server does Each name server does cachingcaching to reduce to reduce network load.network load.

A hierarchy makes search easier.A hierarchy makes search easier.

240-322 Cli/Serv.: P2P/3 13

3. The Internet Now3. The Internet Now

Most people use a browser to surf the Most people use a browser to surf the WebWeb– the Web encourages a client/server modelthe Web encourages a client/server model

request a page, get itrequest a page, get it

Most users do not run Web serversMost users do not run Web servers– hard to setuphard to setup– many ISPs do not allow themmany ISPs do not allow them

continued

240-322 Cli/Serv.: P2P/3 14

The present Web makes it hard for an The present Web makes it hard for an ordinary user to publish (serve) Web pagesordinary user to publish (serve) Web pages– dynamic addressesdynamic addresses– firewallsfirewalls– asymmetric bandwidth (e.g. cable modems)asymmetric bandwidth (e.g. cable modems)

Today's Web in summary:Today's Web in summary:– easy to read, difficult to publisheasy to read, difficult to publish

240-322 Cli/Serv.: P2P/3 15

AccountabilityAccountability

Many of the restrictions on users Many of the restrictions on users (e.g. firewalls) are quite recent(e.g. firewalls) are quite recent– they started appearing in the mid 1990'sthey started appearing in the mid 1990's

The reason is lack of The reason is lack of accountabilityaccountability– an Internet user can send spam, attack machines, an Internet user can send spam, attack machines,

etc.etc. due to the 'poor' design of the Internet protocoldue to the 'poor' design of the Internet protocol it assumes that users are it assumes that users are responsibleresponsible

240-322 Cli/Serv.: P2P/3 16

P2P AimsP2P Aims P2P has a P2P has a politicalpolitical and and socialsocial component component

– it aims to allow it aims to allow everyoneeveryone to share resources to share resources

– this is quite different from today's Web where this is quite different from today's Web where business/governement/university servers present business/governement/university servers present information, and ordinary uses read itinformation, and ordinary uses read it

There are many technological, political, and There are many technological, political, and social problems to be dealt with.social problems to be dealt with.

240-322 Cli/Serv.: P2P/3 17

4. Reader-Centric P2P4. Reader-Centric P2P

Reader-centric P2P systems distribute Reader-centric P2P systems distribute content (information) by anyone, for content (information) by anyone, for anyone to read.anyone to read.

Example systems:Example systems:– Napster, Gnutella, FreeNetNapster, Gnutella, FreeNet

240-322 Cli/Serv.: P2P/3 18

4.1. Napster4.1. Napster

Napster Napster use touse to allow users to publish music allow users to publish music files which other users can download files which other users can download for freefor free– publishing is not the same as authoringpublishing is not the same as authoring

Napster is a Napster is a hybridhybrid of P2P and client/server of P2P and client/server since a Napster server stores who is logged since a Napster server stores who is logged onto the system and details about the files onto the system and details about the files they are publishing.they are publishing.

240-322 Cli/Serv.: P2P/3 19

Using NapsterUsing Napster

Hey Jude/Beatles. JohnYesterday/Beatles. BobSgt. Pepper/Beatles. CarolYesterday/Beatles. Ted

::

Napster server

Bob

Carol

Ted

John

Napsterclient

1. request"Yesterday" 0. login and upload

details

2. sendmatchinginfo.

3. request music file

4. send the file0. login/upload

240-322 Cli/Serv.: P2P/3 20

FeaturesFeatures

Downloading a file makes it available from a Downloading a file makes it available from a new machine (your machine)new machine (your machine)– decentralizes file storagedecentralizes file storage– increases redundancy (good for reliability)increases redundancy (good for reliability)– reduces search time for nearby usersreduces search time for nearby users

Napster can be Napster can be 'attacked''attacked' easily easily– music lawyers sued the Napster server owners, and music lawyers sued the Napster server owners, and

closed it down (changed it)closed it down (changed it)

continued

240-322 Cli/Serv.: P2P/3 21

The peers (clients) are not equalThe peers (clients) are not equal– some do not publish (they are some do not publish (they are freeloadersfreeloaders))– some clients are recognized as being 'better'some clients are recognized as being 'better'

e.g. more songs, better quality recordingse.g. more songs, better quality recordings people choose those clients firstpeople choose those clients first

Client inequality means business opportunitiesClient inequality means business opportunities– e.g. for the music industrye.g. for the music industry

240-322 Cli/Serv.: P2P/3 22

4.2. Gnutella4.2. Gnutella

A network of shared file stores A network of shared file stores ((serventsservents)that can be searched.)that can be searched.

serventssearch bybroadcasting

info.reply

myservent

240-322 Cli/Serv.: P2P/3 23

FeaturesFeatures

No central server (authority)No central server (authority)– so much harder to ‘switch off’ than Napsterso much harder to ‘switch off’ than Napster

Illustrates how to access dynamic, heterogeneous file Illustrates how to access dynamic, heterogeneous file systemssystems

Queries can be interpreted differently by each serventQueries can be interpreted differently by each servent– results can be results can be anythinganything

continued

240-322 Cli/Serv.: P2P/3 24

Gnutella servents have been ported to i-Gnutella servents have been ported to i-Mode mobile phone in JapanMode mobile phone in Japan– servents are meant to run on anythingservents are meant to run on anything

InfraSearchInfraSearch– a prototype search engine for Gnutellaa prototype search engine for Gnutella– not fully developed as yetnot fully developed as yet– uses a uses a broadcast modelbroadcast model

240-322 Cli/Serv.: P2P/3 25

Broadcast Model DetailsBroadcast Model Details Broadcasting is done with TCPBroadcasting is done with TCP

– can avoid some firewall problemscan avoid some firewall problems– utilises TCP’s best effort packet sendingutilises TCP’s best effort packet sending

TCP will discard packets if the network is too loadedTCP will discard packets if the network is too loaded

Rebroadcasting/looping is avoided by each Rebroadcasting/looping is avoided by each packet having a unique IDpacket having a unique ID– a servent does not transmit a packet with the same a servent does not transmit a packet with the same

ID more than onceID more than once

continued

240-322 Cli/Serv.: P2P/3 26

Packets have a TTL (Time-To-Live) value of Packets have a TTL (Time-To-Live) value of 7 to get rid of old stuff7 to get rid of old stuff– TTL is the number of machines a packet can TTL is the number of machines a packet can

travel between before ‘dying’travel between before ‘dying’

A servent replies to the node that sent it the A servent replies to the node that sent it the packetpacket– answers are routed back along the transmission answers are routed back along the transmission

path of the querypath of the query

240-322 Cli/Serv.: P2P/3 27

Network ShapeNetwork Shape A new servent will search for connections to nodes A new servent will search for connections to nodes

with similar bandwidths or higherwith similar bandwidths or higher– this will cause the ‘shape’ of the Gnutella network to this will cause the ‘shape’ of the Gnutella network to

change over timechange over time– a a backbone topologybackbone topology (shape) will develop with high (shape) will develop with high

bandwidth nodes in the center, surrounded by slower bandwidth nodes in the center, surrounded by slower nodesnodes

This dynamic behaviour is not implemented in all This dynamic behaviour is not implemented in all servents.servents.

240-322 Cli/Serv.: P2P/3 28

ProblemsProblems

Node overloadingNode overloading– many servents are hardwired to connect to the many servents are hardwired to connect to the

same nodessame nodes these nodes can easily become overloadedthese nodes can easily become overloaded these nodes can be attacked to affect the Gnutella these nodes can be attacked to affect the Gnutella

networknetwork

– many sevents cannot be reconfigured to look many sevents cannot be reconfigured to look for other nodesfor other nodes

continued

240-322 Cli/Serv.: P2P/3 29

Too much broadcastingToo much broadcasting– some servents use broadcasting when direct node-some servents use broadcasting when direct node-

to-node communication is possibleto-node communication is possible– degrades the networkdegrades the network

Once a servent has found a node with the file it Once a servent has found a node with the file it wants, the file is downloaded using ordinary wants, the file is downloaded using ordinary HTTPHTTP– no security or anonymityno security or anonymity

240-322 Cli/Serv.: P2P/3 30

4.3. FreeNet4.3. FreeNet

FreeNet supports disk space sharingFreeNet supports disk space sharing– it creates a geographically distributed collection it creates a geographically distributed collection

of hard drivesof hard drives

search by key

reply

new linkscreated

240-322 Cli/Serv.: P2P/3 31

FeaturesFeatures

Documents are Documents are encryptedencrypted, so the owners of the , so the owners of the hard drives do not (easily) know what they are hard drives do not (easily) know what they are storingstoring– prevents document censorshipprevents document censorship– provides owner deniability provides owner deniability

e.g. if they are suede.g. if they are sued

An encrypted file comes with a unique key An encrypted file comes with a unique key which is used by search tools which is used by search tools

continued

240-322 Cli/Serv.: P2P/3 32

A search returns links to the answer nodes, A search returns links to the answer nodes, so a search node so a search node collects new connectionscollects new connections to the network over time.to the network over time.

Often requested documents are Often requested documents are cachedcached (for (for a certain time) by the search nodesa certain time) by the search nodes– increases network reliabilityincreases network reliability– decreases search time in the future for that doc.decreases search time in the future for that doc.

continued

240-322 Cli/Serv.: P2P/3 33

Nodes only have a certain amount of spaceNodes only have a certain amount of space– less popular files are deletedless popular files are deleted to make way for the to make way for the

caching of new onescaching of new ones

– any unpopular files can be deleted, even ones put any unpopular files can be deleted, even ones put there by the node ownerthere by the node owner

– may mean that FreeNet will end up storing may mean that FreeNet will end up storing music music and pornographyand pornography while more serious information while more serious information disappears!disappears!

240-322 Cli/Serv.: P2P/3 34

Key FormatsKey Formats

FreeNet has a complex range of different FreeNet has a complex range of different keys for documents:keys for documents:– keys using a hash function on the datakeys using a hash function on the data– keys using data keywords (metadata)keys using data keywords (metadata)– keys using public/private key encryptionkeys using public/private key encryption

These are likely to change/evolve as These are likely to change/evolve as FreeNet is developed.FreeNet is developed.

continued

240-322 Cli/Serv.: P2P/3 35

Keys are very important to FreeNetKeys are very important to FreeNet– they allow document contents to be hiddenthey allow document contents to be hidden

– they allow more efficient search than the Gnutella they allow more efficient search than the Gnutella broadcast modelbroadcast model

– they allow fake documents to be detectedthey allow fake documents to be detected

FreeNet search engines are still being developedFreeNet search engines are still being developed– early versions use a broadcast model like the one in early versions use a broadcast model like the one in

GnutellaGnutella

240-322 Cli/Serv.: P2P/3 36

4.4. Gnutella and FreeNet Compared4.4. Gnutella and FreeNet Compared

Availability of files:Availability of files:– Gnutella nodes do not delete filesGnutella nodes do not delete files

– cached behaviour of FreeNet means no guarantees cached behaviour of FreeNet means no guarantees about what will be stored on a nodeabout what will be stored on a node

Node controlNode control– Gnutella nodes only contain what their owners put Gnutella nodes only contain what their owners put

therethere

– FreeNet nodes may end up containing anythingFreeNet nodes may end up containing anything

continued

240-322 Cli/Serv.: P2P/3 37

Anonymity and DeniabilityAnonymity and Deniability– Gnutella does not hide document contentsGnutella does not hide document contents

– FreeNet encrypts documentsFreeNet encrypts documents

ScalabilityScalability– the caching and dynamic connectivity of FreeNet the caching and dynamic connectivity of FreeNet

nodes means it will probably scale better than nodes means it will probably scale better than GnutellaGnutella

– Gnutella’s broadcast search model will not scaleGnutella’s broadcast search model will not scale

240-322 Cli/Serv.: P2P/3 38

4.5. MojoNation4.5. MojoNation

A distributed file sharing system, but A distributed file sharing system, but searches use a complex searches use a complex micropayment micropayment systemsystem– a searcher must ‘compensate’ the node a searcher must ‘compensate’ the node

containing the content it wantscontaining the content it wants this might be in the form of digital money or some this might be in the form of digital money or some

other resource such as disk space or CPU cyclesother resource such as disk space or CPU cycles

240-322 Cli/Serv.: P2P/3 39

For supporting P2P business applications.For supporting P2P business applications.

Micropayments can solve many hacker Micropayments can solve many hacker problems:problems:– spam, distributed denial of service, freeloadersspam, distributed denial of service, freeloaders

Uses of MicropaymentsUses of Micropayments

240-322 Cli/Serv.: P2P/3 40

Problems with MicropaymentsProblems with Micropayments

If a node is based on a slow machine, its If a node is based on a slow machine, its network link is slow, and/or it does not contain network link is slow, and/or it does not contain much space then:much space then:– no one will use the node, andno one will use the node, and– the node has nothing to give in compensation when the node has nothing to give in compensation when

it uses other nodes (except money)it uses other nodes (except money)

One solution is for a network of machines to One solution is for a network of machines to become a single MojoNation node.become a single MojoNation node.

240-322 Cli/Serv.: P2P/3 41

5. Publisher-Centric P2P5. Publisher-Centric P2P

Publisher-centric systems concentrate on Publisher-centric systems concentrate on anonymously preserving informationanonymously preserving information– derived from the ‘Eternity Service’ ideaderived from the ‘Eternity Service’ idea– examples: FreeHaven, Publiusexamples: FreeHaven, Publius

Most systems do not process queries quickly.Most systems do not process queries quickly. Most systems assume a fixed network Most systems assume a fixed network

topology (shape).topology (shape).

240-322 Cli/Serv.: P2P/3 42

5.1. FreeHaven5.1. FreeHaven

A system of distributed anonymous storage.A system of distributed anonymous storage.

Anonymity for everything!Anonymity for everything!– authors, publishers, readers, servers, documentsauthors, publishers, readers, servers, documents

Documents can only be deleted/changed by Documents can only be deleted/changed by their publishers not the serverstheir publishers not the servers

continued

240-322 Cli/Serv.: P2P/3 43

FreeHaven does allow servers to be dynamically FreeHaven does allow servers to be dynamically added/removed.added/removed.

Uses complex Uses complex reputation and accountability reputation and accountability systemssystems– to detect if documents are fakes/rubbish to detect if documents are fakes/rubbish – prevents over-publicationprevents over-publication– the complexity is because author and publisher the complexity is because author and publisher

anonymity must be maintainedanonymity must be maintained

240-322 Cli/Serv.: P2P/3 44

5.2. Publius5.2. Publius

A Web-based publishing system that A Web-based publishing system that resists resists censorship and tamperingcensorship and tampering..

A file is replicated among many serversA file is replicated among many servers– combats distributed denial of service attackscombats distributed denial of service attacks

Files are encrypted, but come with a ‘Files are encrypted, but come with a ‘shareshare’’– each copy of the document has its own unique shareeach copy of the document has its own unique share

continued

240-322 Cli/Serv.: P2P/3 45

A document search returns one copy of the A document search returns one copy of the encrypted doc and several sharesencrypted doc and several shares– the shares are combined to create a key which the shares are combined to create a key which

is used to decrypt the fileis used to decrypt the file

– not all the shares for a document are needed to not all the shares for a document are needed to create the key create the key

240-322 Cli/Serv.: P2P/3 46

6. P2P Meme Map6. P2P Meme MapFile sharingand caching

email routing

open source

instantmessaging

networkeddevices

distributedcomputation

projects,actions,apps thatdefineP2P

IP routing

Strategic Positioning: an Internet OSUser Positioning: make a more capable computerCore Competencies:* metadata management* seemless connectivity and communication* self-organizing systems, zero administration* security

client and server

simplejoining

decouplingfrom machine

allowunreliability

user power

P2P is morefundamental

we createcommunities

decentralized

use edgeresources

ideassupported by P2P

240-322 Cli/Serv.: P2P/3 47

7. Some P2P Issues7. Some P2P Issues

DecentralizationDecentralization MetadataMetadata AccountabilityAccountability TrustTrust

240-322 Cli/Serv.: P2P/3 48

7.1. Decentralization7.1. Decentralization

Most models are a Most models are a hybridhybrid with some with some hierarchy and/or central servershierarchy and/or central servers– e.g. Napster, DNS, ICQe.g. Napster, DNS, ICQ

ICQ (from 1996) allows direct client-to-ICQ (from 1996) allows direct client-to-client communication where possible, but client communication where possible, but has a server as a fallback.has a server as a fallback.

240-322 Cli/Serv.: P2P/3 49

7.2. Metadata7.2. Metadata

Metadata is “Metadata is “information (data) about datainformation (data) about data””– e.g. the column headings of a databasee.g. the column headings of a database

– e.g. Napster’s metadata is the artist and song e.g. Napster’s metadata is the artist and song names used for searching for music filesnames used for searching for music files

240-322 Cli/Serv.: P2P/3 50

Why is Metadata Useful?Why is Metadata Useful?

Metadata about a resource (e.g. about a Metadata about a resource (e.g. about a Web page, a music file, a video) gives extra Web page, a music file, a video) gives extra information about the resourceinformation about the resource– explains the resource in a clear wayexplains the resource in a clear way

Metadata can be used by search engines to Metadata can be used by search engines to search faster, and give more accurate search faster, and give more accurate results.results.

continued

240-322 Cli/Serv.: P2P/3 51

Metadata can be used for information Metadata can be used for information addressing and more clever routingaddressing and more clever routing– e.g. use country information about a music file e.g. use country information about a music file

to direct a request to better serversto direct a request to better servers

240-322 Cli/Serv.: P2P/3 52

Metadata in the WebMetadata in the Web

HTTP added support for metadata late in HTTP added support for metadata late in 1997:1997:– the the <meta><meta> tags tags– not widely used, can be misusednot widely used, can be misused– meant to contain information such as a meant to contain information such as a

description (keywords) about the file, the description (keywords) about the file, the creator name, date, etc.creator name, date, etc.

continued

240-322 Cli/Serv.: P2P/3 53

XMLXML– allows the creation of new tags which more allows the creation of new tags which more

accurately reflect the meaning of the dataaccurately reflect the meaning of the data e.g. e.g. <author><author>, , <publisher><publisher>, , <owner><owner>, ..., ...

RDF (Resource Description Framework)RDF (Resource Description Framework)– talks about the properties of resourcestalks about the properties of resources– e.g. the meaning of a link can be made more e.g. the meaning of a link can be made more

accurate: accurate: was_written_bywas_written_by, , is_interestingis_interesting

240-322 Cli/Serv.: P2P/3 54

7.3. Accountability7.3. Accountability

““The Tragedy of the Commons”The Tragedy of the Commons”– a commonly owned resource will be overused a commonly owned resource will be overused

until it degrades due to the user’s putting self-until it degrades due to the user’s putting self-interest firstinterest first

One solution:One solution:– give ownership of the resource to its users so that give ownership of the resource to its users so that

caring for the resource prolongs the user’s caring for the resource prolongs the user’s incomeincome

240-322 Cli/Serv.: P2P/3 55

Accountability Problems in P2PAccountability Problems in P2P

Peers are often anonymous / hard to track / Peers are often anonymous / hard to track / transienttransient– so there is no reason for them to look after the so there is no reason for them to look after the

resources they useresources they use

Assigning IDs to users to encourage Assigning IDs to users to encourage responsibility often failsresponsibility often fails– e.g. pseudospoofinge.g. pseudospoofing

continued

240-322 Cli/Serv.: P2P/3 56

PseudospoofingPseudospoofing– a person creates many fake IDs in the a person creates many fake IDs in the

system (e.g. at eBay)system (e.g. at eBay) each fake ID is used to give a high positive each fake ID is used to give a high positive

rating to the other fake IDsrating to the other fake IDs then one of the IDs is used to stealthen one of the IDs is used to steal

– also used to get extra free disk space on also used to get extra free disk space on GeoCities Web sitesGeoCities Web sites

240-322 Cli/Serv.: P2P/3 57

Some SolutionsSome Solutions

A micropayments modelA micropayments model– based on digital cash or compensation of resourcesbased on digital cash or compensation of resources– e.g. MojoNatione.g. MojoNation

A reputation systemA reputation system– relatively new idearelatively new idea– based on encrypted ‘signatures’ and third party based on encrypted ‘signatures’ and third party

verifiersverifiers

continued

240-322 Cli/Serv.: P2P/3 58

Tolerate a certain amount of bad behaviourTolerate a certain amount of bad behaviour– use mirroring of resources, and other forms of use mirroring of resources, and other forms of

redundancyredundancy

240-322 Cli/Serv.: P2P/3 59

7.4. Trust 7.4. Trust (between peers/servers)(between peers/servers)

Trust increases based on the Trust increases based on the reputationreputation of of peers and serverspeers and servers– how to implement reputation?how to implement reputation?

Trust increases when less people are Trust increases when less people are involved in the transactioninvolved in the transaction– e.g. buying directly without a middlemane.g. buying directly without a middleman

240-322 Cli/Serv.: P2P/3 60

Trust increases when the environment Trust increases when the environment contains less riskcontains less risk– e.g. applet execution inside a JVM sandboxe.g. applet execution inside a JVM sandbox

240-322 Cli/Serv.: P2P/3 61

Trust Issues in Censorship-resistent Trust Issues in Censorship-resistent Publication SystemsPublication Systems

RiskRisk SolutionSolutionlogging your requestslogging your requests use secure channelsuse secure channels

server-altered contentserver-altered content use multiple serversuse multiple servers

fake updating of doc.fake updating of doc. encryption/encryption/multiple copiesmultiple copies

multiple fake docs.multiple fake docs. impose pub. limits/impose pub. limits/micropaymentsmicropayments

legal deletionlegal deletion multiple copiesmultiple copies

240-322 Cli/Serv.: P2P/3 62

8. More Information8. More Information

Peer-to-Peer: Harnessing the Power of Peer-to-Peer: Harnessing the Power of Disruptive TechnologiesDisruptive TechnologiesAndy Oram (ed.)Andy Oram (ed.)O'Reilly, 2001O'Reilly, 2001– very good non-technical overviewvery good non-technical overview– contains chapters on the main projects contains chapters on the main projects

(e.g. Gnutella, FreeNet) and main issues(e.g. Gnutella, FreeNet) and main issues– the the P2P meme mapP2P meme map is explained in chapter 3 is explained in chapter 3

in our library

continued

240-322 Cli/Serv.: P2P/3 63

O'Reilly's P2P Web site:O'Reilly's P2P Web site:http://www.openp2p.com/http://www.openp2p.com/

– articles about P2Particles about P2P

Google's Google's longlong list of P2P links (~150): list of P2P links (~150):http://directory.google.com/Top/http://directory.google.com/Top/

Computers/Software/Computers/Software/Internet/Internet/

Clients/File_Sharing/Clients/File_Sharing/