side 1 Anders Fongen Den Polytekniske Høgskolen Peer-to-Peer teknologi Nettverk uten sentrale tjenere hva kan det brukes til? hvilke problemer må løses? Foredragsholder: Anders Fongen høgskolelektor ved Den Polytekniske Høgskolen norges største IT-høgskole med mer enn 2000 studenter skriver sin doktoravhandling innenfor p2p-området om distribuert web-søking
side 2 Anders Fongen Den Polytekniske Høgskolen p2p – "tjenerløse" nettverk Tradisjonell C/S Peer-to-peer Forsøk på definisjon: p2p er en tjenerløs arkitektur hvor klientene samhandler symmetrisk.
side 3 Anders Fongen Den Polytekniske Høgskolen Disse spørsmålene reiser seg: Egnede bruksområder? Arkitekturspørsmål Er det sikkert nok? Metoder for programutviklingen
side 4 Anders Fongen Den Polytekniske Høgskolen Vi har hatt p2p lenge... E-post er peer-to-peer sendmail inngår i p2p-samarbeid noen som husker UUCP? filkopiering og e-post uten tjenere Gruppevare har symmetrisk anvendelse, men oftest klient/tjener arkitektur
side 5 Anders Fongen Den Polytekniske Høgskolen...så hva er det som er nytt? millioner av PC'er over hele verden knyttet sammen i ett transportnett venter stort sett på noe å gjøre Internet er blitt kommersialisert ønske om å få "dugnadsånden" tilbake? "open source"-bevegelsen egen Internet-republikk? reklamefritt Kalddusj:
side 6 Anders Fongen Den Polytekniske Høgskolen Eksempler på p2p-anvendelser: søking etter intelligens i verdensrommet analyserer store mengder radiosignaler tilbyr en skjermsparer som behandler data laster ned "batcher" fra tjeneren returnerer resultatet samlet kan derfor jobbe off-line
side 7 Anders Fongen Den Polytekniske Høgskolen Eksempler på p2p-anvendelser (forts.) Gnutella felles filarkiv (mest mp3) helt uten sentrale tjenere delvis anonymisert umodent design skalerer dårlig gnutella.wego.com Kalddusj (flere):
side 8 Anders Fongen Den Polytekniske Høgskolen Eksempler på p2p-anvendelser (forts.) Napster felles filarkiv for musikkfiler blanding av c/s og p2p katalogen ligger på en tjener lagring og overføring av musikkfiler er p2p trolig en gunstig teknisk løsning kontroversielt pulveriserer åndsverksbeskyttelsen
side 9 Anders Fongen Den Polytekniske Høgskolen Eksempler på p2p-anvendelser (forts.) Freenet felles datalagring (ikke filer, men innhold) fullstendig anonymisert forspørsel og svardata sendes gjennom mange ledd bare naboer kjenner hverandre vanskelig å analysere ytelsen lanseres som et forsvar for ytringsfriheten freenet.sourceforge.net freenetproject.org
side 10 Anders Fongen Den Polytekniske Høgskolen Eksempler på p2p-anvendelser (forts.) NetMeeting synkront samarbeidsverktøy (CVE), del av IE5 chat, mediekonferanser, fil- og programdeling sentral katalog (LDAP), forøvrig p2p-arkitektur Her averteres det anonymt etter barnepornografi
side 11 Anders Fongen Den Polytekniske Høgskolen Når tjenester og informasjon er spredt: Hvordan finner vi data og tjenester? Hvem tar backup? Hvor ligger bruker- databasen? Hvordan håndteres sammensatte operasjoner (transaksjoner)? p2p er ikke "venner" med: - brannvegger - asymmetrisk aksessnett p2p er ikke "venner" med: - brannvegger - asymmetrisk aksessnett
side 12 Anders Fongen Den Polytekniske Høgskolen Skalerer p2p-løsninger? ant.piler = n(n-1)/2 ant.piler = n Vi øker nettverksbelastning ved å la alle snakke til alle!
side 13 Anders Fongen Den Polytekniske Høgskolen Nei, så vi må bruke "mellomledd": Nå reduseres nettverkstrafikken, men mellomleddene innebærer farer for påliteligheten for sikkerheten Ønsket om skalerbarhet og pålitelighet er alltid er kompromiss!
side 14 Anders Fongen Den Polytekniske Høgskolen Er dette sikkert nok? Hva kan et fiendtlig mellomledd (B) finne på? avlytte innholdet i passerende data endre innholdet (sette inn virus o.l.) kan utgi seg for å være A overfor C Hvem kan du saksøke? AB C
side 15 Anders Fongen Den Polytekniske Høgskolen Kan sikkerheten forbedres? Ja, men vi tror "public-key" krypto er nødvendig, omstendelige lisens- og lovbestemmelser ulikt i ulike land krever en "Public Key Infrastructure" holder orden på nøkler og sertifikater og en PKI er slett ingen p2p-arkitektur og en sikkerhetsplattform for kjøring av flyttbar kode (f.eks. Applets) kun Java tilbyr dette idag
side 16 Anders Fongen Den Polytekniske Høgskolen Gunstige anvendelsesområder: CPU-dugnad / Disk-dugnad store beregninger som kan parallelliseres ex. Intel medielagring ex. Napster beskjedent kommunikasjonsbehov Spredning av nettverkstrafikk ex. web-søking stort kommunikasjonsbehov, lavt sikkerhetsbehov Spontane nettverk Tjenestefokusert gruppevare
side 17 Anders Fongen Den Polytekniske Høgskolen Spontan nettverksdannelse: Klienter kan selv oppdage nettverket og deretter slutte seg til det tar del i dugnaden med alle rettigheter og plikter autentiseringsproblemer! Både p2p og c/s kan tilby dette men er ofte en "integrert" del av en p2p-arkitektur en viktig del av "embedded" p2p ex. Fremtidshuset
side 18 Anders Fongen Den Polytekniske Høgskolen Tjenestefokusert gruppevare: Der deltakerne utveksler tjenester, ikke data f.eks. i form av ASP/CGI-programmer tjenester kan ikke kopieres, men må brukes der de er evt. kan tjenesten tilbys i form av flyttbar kode f.eks. Java Applets Alle maskinene blir både klienter og tjenere krever egnet rammeverk (mellomvare, API) finnes såvidt vites ikke ikke særlig "brannvegg-vennlig"
side 19 Anders Fongen Den Polytekniske Høgskolen Hvordan skal p2p-programmer lages? c/s-arkitektur er vel forstått innen software engineering av verktøyleverandørene p2p har ikke denne plattformen programmererne må klare seg selv distribuert systemteori kan hjelpe til med: tilstands- og transaksjonsforståelse replikeringsmetoder feiltoleranse sikkerhet
side 20 Anders Fongen Den Polytekniske Høgskolen Pågående p2p-prosjekter: Groove Networks gründeren av Lotus Notes bygger gruppevare som p2p gjennomtenkt sikkerhetsarkitektur men hva har de å tilby (i forhold til c/s)?
side 21 Anders Fongen Den Polytekniske Høgskolen Pågående p2p-prosjekter (forts) Fremtidshuset (Telenor) bygger programvare inn i husholdningsmaskiner samarbeider med p2p-teknologi (Jini) godt eksempel på spontane nettverk
side 22 Anders Fongen Den Polytekniske Høgskolen Pågående p2p-prosjekter (forts) DPH Presence Collaborative Virtual Environment (CVE) bygget på Jini-teknologi diplomprosjekt ved Den Polytekniske Høgskolen Terese Olstad Kjellaug Johansen støtter "spontan" nettverksdannelse tjenestefokusert, ikke datafokusert brukerne tilbyr tjenester til hverandre, ikke data grunnlag for å studere dynamikken i teknologi vs. brukeradferd (teorier fra Giddens, Orlikowski)
side 23 Anders Fongen Den Polytekniske Høgskolen Pågående p2p-prosjekter (forts) Content-Sensitive Infrastructure (CSI) Anders Fongens PhD-prosjekt distribuert web-søking stort antall (millioner) "frivillige" noder spredning av database og spørringer gjennom: distribuert clustering av metadata query routing legger stor vekt på analyse av skalerbarhet og pålitelighet gjennomføres med veiledning fra University of Sunderland, UK
side 24 Anders Fongen Den Polytekniske Høgskolen Oppsummering: p2p har fordeler fremfor c/s på noen felt: storskala løsninger spontane nettverk (embedded systems) tjenesteorientert gruppevare p2p krever mer forskning/utvikling på: nettverksøkonomi (skalerbarhet, effektivitet, feiltolerans) programutviklingsmetoder brukervennlig sikkerhets-infrastruktur (PKI)