copyright, 1995-2008 1 ecom6001 – internet and the www peer-to-peer (p2p) technologies roger...
TRANSCRIPT
Copyright,1995-2008
1
ECOM6001 – Internet and the WWW
Peer-to-Peer (P2P) Technologies
Roger Clarke, Xamax Consultancy, Canberra
Visiting Professor, CSIS, Uni of Hong Kong
http://www.xamax.com.au/ECOM6001/33-P2P.ppt
Hong Kong, October 2008
Copyright,1995-2008
2
Peer-to-Peer (P2P) Technologies
Agenda
• Conventional Network Topologies, Architectures
• Star Topology / Master-Slave Architecture• Client-Server Architecture
• Key Developments since the Mid-1990s• Workstations • Networking
• How and Why P2P is Unconventional• Relative Equality of Nodes • Node-IDs
• Why P2P is Attractive• Technical Concerns about P2P
Copyright,1995-2008
3
Star Topology / Master-Slave Architecture
1950s OnwardsMaster
ComputerSlave‘Dumb
Terminal’
Copyright,1995-2008
4
The ARPANet’s Peer-to-Peer Topology
1969 Onwards Multi-Organisational
Slave‘Dumb
Terminals’
Copyright,1995-2008
5
‘The PC’ Era – Mid-Late 1970s Onwards
From Peer-to-Peer to Client-Server
Personal, later Multi-Personal SmallPC
BBSin
SmallPC
SmallPCs
SmallPC
SmallPC
- to -
Copyright,1995-2008
6
Client-Server Architecturemid-1980s Onwards, esp. mid-
1990s Onwards Multi-Organisational
ServerSoftware
inLarge
CentralHost
ClientSoftware
inSmall
RemotePC
PCsin
LocalArea
Network
Copyright,1995-2008
7
Client-Server Architecturemid-1980s Onwards, esp. mid-
1990s Onwards Internet-Mediated
Serverin
Host
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Clientin
Workstation
Serverin
Host
Serverin
Host
Copyright,1995-2008
8
Key Developments Since the Mid-1990s
• Workstation Capacity (now rivals Hosts)• Workstation Diversity (vast, expanding)
desktops, laptops, handhelds, smartcards, ...phones, PDAs, cameras, ...carburettors, fridges, ... RFID tags, ...
• Broadband Connectivity (now widespread)This enables dispersion and replicationof devices capable of providing services
• Wireless Connectivity (rapidly increasing)This enables Mobilitywhich means Devices change networkswhich means their IP-addresses change
Copyright,1995-2008
9
Wireless Comms Using Electromagnetic Radiation• Wide Area Networks – Satellite (Geosynch, Low)
GS is Large footprint, very high latency (c. 2 secs)• Wide Area Networks – Cellular (to 20km per cell)
1 – Analogue Cellular, e.g. AMPS, TACS2 – Digital Cellular, e.g. GSM, CDMA3 – ‘3G’, e.g. GSM/GPRS and W-CDMA
• Wide Area Networks – ‘WiMax’, IEEE 802.16; iBurst
• Local Area Networks – ‘WiFi’ (10-100 m radius)e.g. IEEE 802.11x esp. 11b,g / Apple Airport
• Personal Area Networks (1-10 metre distance)e.g. Bluetooth (or beamed infra-red)
• Contactless Cards / RFID Tags / NFC (1-10 cm)
Copyright,1995-2008
10
Computing Power ‘at the Edge’
Mobiles
Copyright,1995-2008
11
P2P – The Motivation
• Take advantage of resources that are available at the edges of the Internet
• In order to do so, make each participating program both a Client and a Serverand hence each workstation acts as a host as well, e.g.
• a music playstation can be a mixer too• your PDA can host part of a music catalogue• your PC can host part of a music repository
Copyright,1995-2008
12
P2P ArchitectureCooperative Use of Resources at
the Edge
Server & Client
inWorkstation
Server & Client
inWorkstation
Copyright,1995-2008
13
A Virtual TopologyThe P2P ‘Overlay Network’
PowerfulWork-andPlay-Workstations
Copyright,1995-2008
14
P2P Differentiated from Client-Server
Copyright,1995-2008
15
P2P – Towards a Technical Definition
P2P is a network architecture in which each node
is capable of performing each of the functions
necessary to support the network
and in practice many nodes do perform many of the functions
Copyright,1995-2008
16
The P2P Server-Component’s Multiple Functions
Server & Client
inWorkstation
Server & Client
inWorkstation
Network ManagementDirectory Management
Object ManagementProcess Management
Copyright,1995-2008
17
Server-Functions of a P2P Package
• Manage Comms with other devices• Manage Directories:
• of Objects (e.g. files)• of Services (e.g. currency
conversion, or credit-card payment processes)
• Manage Repositories of Objects• Manage Services
Copyright,1995-2008
18
Important Characteristics of P2P
• Collaboration is inherent• Clients can find Servers• Enough Devices with Enough Resources act as
Servers for discovery, and as Servers for services
• ‘Single Points-of-Failure’ / Bottlenecks / Chokepoints are avoided by means of networking dynamics
• 'Free-Riding' / 'Over-Grazing' of the 'Commons' is restrained through software and psych. features
Copyright,1995-2008
19
Some Characteristics of P2P Nodes
• A P2P node may be a device, a process, content, a person, or an identity of a person
• A P2P node’s availability may be unreliable or unstable (dial-up or mobile)
• A P2P node’s IP-Address may change (dial-up, or moving between subnets)
• So P2P apps commonly:• build and re-build a virtual ‘overlay network’• use their own addressing schemes, not the
DNS
Copyright,1995-2008
20
Alternatives to the DNS• An application-specific name-based directory
(ICQ since 1996, and Groove, Napster, NetMeeting)
• An application-specific directory of IP-addresses without names, dynamically managed in real-time (Gnutella, Freenet)
• Authentication of names, and use of whateverIP-Address is advised each time they register (SETI@Home, PopularPower)
• A flexible, real-time DNS• ...
Copyright,1995-2008
21
The Scale of the Undertaking
• The DNS grew to c. 30 million names in 18 yearsfrom its establishment in 1984 to 2002
• Napster achieved that many in 2 years• The top 3 distributed-catalogue services
combined quickly exceeded Napster at its peak
• AOL Instant Messaging is also very large• The total of all P2P names may exceed
10 times the number in the DNS
Copyright,1995-2008
22
Categories of P2P
Pure• Functions, objects and the catalogue are distributed across
all nodes. No one node is critical to the network's operation. Control is very difficult – USENET, Fidonet, Freenet, Gnutella-1
Compromised / ‘Two-Tier’• Functions and objects are highly, not fully distributed• The index is highly, not fully distributed – FastTrack,
Gnutella-2
Hybrid• Functions and objects are fully or highly distributed• The index is not, e.g. it may be hierarchical (the DNS),
centralised (Napster), or independent from the repository (BitTorrent)
Copyright,1995-2008
23
Why P2P Is Attractive• Much-Reduced Dependence on individual devices
and sub-networks (no central servers)• Robustness not Fragility (no single point-of-
failure)• Resilience / Quick Recovery (inbuilt redundancy)• Resistance to Denial of Service (D)DOS Attacks
(no central servers)
• Much-Improved Scalability (proportionality)• Improved Servicing of Highly-Peaked Demand
(more devices on the demand-side implies there are also more server-resources)
Copyright,1995-2008
24
Technical Concerns about P2P
• Address Volatility: old addresses may not work(hence trust based on repetitive dealings is difficult)
• Absence of Central Control (hence risk of anarchy)
• Inadequate Server Participation (over-grazing)
• Security Challenges:• Malware, embedded or infiltrated• Surreptitious Enlistment (at least potential)• Vulnerability to Masquerade• Vulnerability to Pollution Attacks (decoys)
Copyright,1995-2008
25
P2P Applications – Access to Digital Objects
• Software:• Fixes/Patches• Releases
• Virus Signatures• Announcements, e.g. of
technical info, business info, entertainment ‘info’, sports results, promotional messages, advertisements
• News Reports, by news organisations, and by members of the public
• Emergency Services Data• Backup and Recovery
Data• Games Data, e.g. scenes
and battle configurations• Archived Messages, for
conferencing/chat/IM, and cooperative publishing
• Learning Materials, in various formats
• Entertainment Materials,
in various formats
Copyright,1995-2008
26
P2P Networks and Protocols (2005)
http://en.wikipedia.org/wiki/Peer-to-peer#Networks.2C_protocols_and_applications
BitTorrent network: ABC, Azureus, BitAnarch, BitComet, BitSpirit, BitTornado, BitTorrent, BitTorrent++, BitTorrent.Net, G3 Torrent, mlMac, MLDonkey, QTorrent, SimpleBT, Shareaza, TomatoTorrent (Mac OS X) [2], TorrentStormeDonkey network: aMule (Linux, Mac OS X, others), eDonkey2000, eMule, LMule, MindGem, MLDonkey, mlMac, Shareaza, xMule, iMesh Light, ed2k (eDonkey 2000 protocol)FastTrack protocol: giFT, Grokster, iMesh (and its variants stripped of adware including iMesh Light), Kazaa by Sharman Networks (and its variants stripped of adware including: Kazaa Lite, K++, Diet Kaza and CleanKazaa), KCeasy, Mammoth, MLDonkey, mlMac, PoisonedFreenet network: Entropy (on its own network), Freenet, FrostGnutella network: Acquisitionx (Mac OS X), BearShare, BetBug, Cabos, CocoGnut (RISC OS) [3], Gnucleus Grokster, iMesh, gtk-gnutella (Unix), LimeWire (Java), MLDonkey, mlMac, Morpheus, Phex Poisoned, Swapper, Shareaza, XoloXGnutella2 network: Adagio, Caribou, Gnucleus, iMesh, MLDonkey, mlMac, Morpheus, Shareaza, TrustyFilesJoltid PeerEnabler: Altnet, Bullguard, Joltid, Kazaa, Kazaa LiteNapster network: Napigator, OpenNap, WinMX
Applejuice network: Applejuice Client, Avalanche, CAKE network: BirthdayCAKE the reference implementation of CAKE, Direct Connect network: BCDC++, CZDC++, DC++, NeoModus Direct Connect, JavaDC, DCGUI-QT, HyperCast [4], Kad Network (using Kademila protocol): eMule, MindGem, MLDonkey, LUSerNet (using LUSerNet protocol): LUSerNet, MANOLITO/MP2P network: Blubster, Piolet, RockItNet, TVP2P type networks: CoolStreaming, Cybersky-TV, WPNP network: WinMXOther networks: Akamai, Alpine, ANts P2P, Ares Galaxy, Audiogalaxy network, Carracho, Chord, The Circle, Coral[5], Dexter, Diet-Agents, EarthStation 5 network, Evernet, FileTopia, GNUnet, Grapevine, Groove, Hotwire, iFolder[6], konspire2b, Madster/Aimster, MUTE, Napshare, OpenFT (Poisoned), P-Grid[7], IRC @find and XDCC, used by IRC clients including: mIRC and Trillian, JXTA, Peersites [8], MojoNation, Mnet, Overnet network, Peercasting type networks: PeerCast, IceShare - P2P implementation of IceCast, Freecast, Scour, Scribe, Skype, Solipsis a massively multi-participant virtual world, SongSpy network, Soulseek, SPIN, SpinXpress, SquidCam [9], Swarmcast, WASTE, Warez P2P, Winny, AsagumoWeb, OpenExt, Tesla, soribada, fileswapping, XSC
Copyright,1995-2008
27
P2P Multi-Protocol Applications (2005)
http://en.wikipedia.org/wiki/Peer-to-peer#Networks.2C_protocols_and_applications
aMule (eDonkey network) (Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows and Solaris Op Env)eMule (Edonkey Network, Kad Network) (Microsoft Windows, Linux)Epicea (Epicea, BitTorrent, Edonkey Network, Overnet, FastTrack, Gnutella) (Microsoft Windows)GiFT (own OpenFT protocol, and with plugins - FastTrack, eDonkey and Gnutella)
and xfactor (uses GiFT) (Mac OS X)Gnucleus (Gnutella, Gnutella2) (Microsoft Windows)Hydranode (eDonkey2000) (Microsoft Windows, Linux, Mac OS X)iMesh (Fasttrack, Edonkey Network, Gnutella, Gnutella2) (Microsoft Windows)Kazaa (FastTrack, Joltid PeerEnabler) (Microsoft Windows)Kazaa Lite (FastTrack, Joltid PeerEnabler) (Microsoft Windows)KCeasy (Gnutella, Ares, giFT)MindGem (Edonkey Network, Kademlia)MLDonkey (BitTorrent, eDonkey, FastTrack, Gnutella, Gnutella2, Kademlia)
(MS Windows, Linux, Mac OS X, Palm OS, Java)mlMac (BitTorrent, eDonkey, FastTrack, Gnutella, Gnutella2)Morpheus (Gnutella, Gnutella2) (Microsoft Windows)Poisoned (FastTrack, Gnutella)Shareaza (BitTorrent, eDonkey, Gnutella, Gnutella2) (Microsoft Windows)WinMX (Napster, WPNP) (Microsoft Windows)XNap (OpenNAP, GiFT, Limewire, Overnet, ICQ, IRC) (Java)Zultrax (Gnutella, ZEPP)
Copyright,1995-2008
28
Business and Government Concerns about P2P
• Address Volatility, plus Inadequate Identifiers, hence:
• Difficulty in identifying and locating users• Reduction in user accountability
• Absence of Central Control, hence:• Reduction in technology-provider
accountability• No single point for a denial of service attack
• Challenge to Authority:• of Copyright-Owners over Users• of Censors over Users
Copyright,1995-2008
29
Challenges for Copyright-Owners
• Identification of Copyright Objects
• Identification of Devices that store those objects and that traffic in them
• Demonstrating:Unauthorised Reproduction, Publication, Adaptation and/or Authorisation
• Identification of the Person Responsible for a breach
• Association of the Person with the Device used to perform the act that constitutes the breach
• Location of the responsible Person• Bringing Suit (e.g. jurisdiction)• Collection and Presentation of
Evidence sufficient to win even civil, let alone criminal cases
• Proposing Interventions that could be awarded by court injunction
Copyright,1995-2008
30
Application of P2P to eTrading in Music
• Identify price resistance-points in the various customer-segments i.e. ‘what the market will bear’
• Set prices accordingly (and hence sustain payment morality)
• Make backlists and new releases available via for-fee P2P channels
• Discourage and prosecute breaches where the purpose is commercial
• Take no action over breaches by consumers (esp. time-shifting, format-change, even sharing?)
The Evidence• Since 2003, Apple
iTunes charges USD 0.99/track!?
• Copyright-Owners get USD 0.70
• Since 2005-06, they want more
• They want Jobs to enable variable track-pricing