Reti - UniTrento

Post on 02-Jan-2022

19 views 0 download

Transcript of Reti - UniTrento

Reti(già “Reti diCalcolatori”)

Applicazioni P2P

RenatoLoCigno

http://disi.unitn.it/locigno/index.php/teaching-duties/computer-networks

ComputerNetworking:ATopDownApproach,

6thedition.JimKurose, KeithRoss

Addison-Wesley

A note on the use of these slides:These slides are an adaptation from the freely available version provided by the book authors to all (faculty, students, readers). The originals are in PowerPoint and English.

Adaptation is by Renato Lo Cigno, and Fabrizio Granelli

All material copyright 1996-2016J.F Kurose and K.W. Ross, All Rights Reserved

Livello diapplicazione

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 2

Livello applicativo

r 2.6ApplicazioniP2P

r 2.7Cloudcomputing

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 3

ArchitetturaP2Ppura

❏ nonc’èunserversempreattivo❏ coppiearbitrariedihost (peer)

comunicanodirettamentetraloro❏ ipeer nondevono

necessariamenteesseresempreattivi,ecambianoindirizzoIP

❏ Treargomentichiave:❏ Distribuzionedifile❏ Ricercainformazioni❏ Casodistudio:Skype

peer to peer

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 4

Distribuzione di file:confronto tra Server-Client e P2P

Domanda :QuantotempocivuoleperdistribuirefiledaunserveraN host?

us

u2d1 d2u1

uN

dN

Server

Rete (capacità “infinita”)

File,dim.F

us: capacità diuploaddelcollegamentodiaccessodelserver

ui: capacità diuploaddelcollegamentodiaccessodell’i-esimohost

di: capacità didownloaddelcollegamentodiaccessodell’i-esimohost

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 5

Client - Server

us

u2d1 d2u1

uN

dN

Server

Rete (con abbondante ampiezza di banda)

F

r IlserverinviainsequenzaN copie:v Tempo=N (F/us)

r IlclientiimpiegailtempoF/diperscaricare

aumentalinearmenteconN

=dcs =max {NF/us ,F/min(di) }i

TempoperdistribuireFaN clientusando

l’approccioclient/server

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 6

P2P

us

u2d1 d2u1

uN

dN

Server

Rete (con abbondante ampiezza di banda))

F

❒ ilserverdeveinviareunacopianeltempoF/us

❒ ilclientiimpiegailtempoF/diperildownload

❒ DevonoesserescaricatiNFbit❒ Ilpiùvelocetassodiuploadè:

us +Σui

dP2P =max {F/us,F/mini (di),NF/(us +Σui) }

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 7

0

0.5

1

1.5

2

2.5

3

3.5

0 5 10 15 20 25 30 35

N

Min

imum

Dis

tribu

tion

Tim

e P2PClient-Server

Confronto client-server e P2P

Capacità uploaddelclient=u,F/u=1ora,us =10u,dmin ≥us

Tem

po di distribuzione minim

o

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 8

BitTorrent

tracker: tienetracciadeipeerchepartecipano

torrent: gruppodipeerchesiscambianopartidiunfile

Ottienelalistadeipeer

Scambidellepartidelfile

peer

r DistribuzionedifileP2P

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 9

BitTorrent (1)

r Ilfilevienedivisoinparti(chunk)da256Kbr Quandounpeer entraafarpartedeltorrent:

v siregistrapressoiltracker peraverelalistadeipeer,esicollegaadunsottoinsiemedipeer vicini(“neighbors”)

v nonpossiedenessunapartedelfile,maleaccumulacolpassaredeltempo

r Mentreeffettuaildownload,ilpeer caricalesuepartisualtripeer

r Ipeer possonoentrareeuscireapiacimentodaltorrentr Unavoltaottenutol’interofile,ilpeer puòlasciareiltorrent

(egoisticamente)o(altruisticamente)rimanerecollegato

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 10

BitTorrent (2)

r Inundatoistante,peerdiversihannodifferentisottoinsiemidelfile

r periodicamente,unpeer(Alice)chiedeaciascunvicinolalistadeichunk chepossiede

r Aliceinvialerichiesteperlesuepartimancanti:v Adottalatecnicadelrarest first

r Aliceinvialesuepartiaquattrovicini,quellicheattualmentelestannoinviandoiproprichunkallafrequenzapiùaltav i4favoritivengonorivalutatiogni10secondi

r ogni30secondiselezionacasualmenteunaltropeer,einiziaainviarglichunkv Ilpeer appenasceltopuòentrareafarpartedeitop4

v Apartei“top4” eil“nuovoentrato”,glialtripeer sono“soffocati”,cioènonricevononulla

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 11

BitTorrent:occhioperocchio(tit-for-tat)

(1)AlicecasualmentesceglieRoberto(2)AlicediventaunodeiquattrofornitoripreferitidiRoberto;Robertoricambia(3)RobertodiventaunodeiquattrofornitoripreferitidiAlice

Con un’elevata frequenza di upload, è possibile trovare i partner migliori e ottenere il file più velocemente!

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 12

P2P: ricerca di informazioni

Filesharing (es.e-mule)r L’indicetienetraccia

dinamicamentedellaposizionedeifilecheipeercondividono.

r Ipeer comunicanoall’indiceciòchepossiedono.

r Ipeer consultanol’indiceperdeterminaredovetrovareifile

Messaggisticaistantanear L’indicecreala

corrispondenzatrautentieposizione.

r Quandol’utentelancial’applicazione,informal’indicedellasuaposizione

r Ipeer consultanol’indiceperdeterminarel’indirizzoIPdell’utente.

IndiceneisistemiP2P:corrispondenzatraleinformazionielaloroposizioneneglihost

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 13

P2P: directory centralizzata

Progettooriginaledi“Napster”1) quandoilpeer

sicollega,informailservercentrale:v indirizzoIPv contenuto

2)Alicecercalacanzone“Hey Jude”

3)AlicerichiedeilfileaRoberto

Serverdidirectory

centralizzato

peer

Alice

Roberto

1

1

1

12

3

Reti - locigno@disi.unitn.it - Livello applicativo:P2PeCloud 14

problemi con la directory centralizzata

r Unicopuntodiguastor Collodibottigliaperleprestazionir Violazionedeldirittod’autore

r Noncambia,machiospitaladirectoryè faciledacolpiree...tradisce gli altri

Iltrasferimentodeifileèdistribuito,mailprocesso

dilocalizzazioneèfortementecentralizzato

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 15

Query flooding

r Completamentedistribuitov nessunservercentrale

r ProtocollodipubblicodominiousatodaGnutella

r Ciascunpeer indicizzaifilecherendedisponibiliperlacondivisione(enessunaltro)

Retedicopertura:grafor Arcotraipeer XeYsec’èuna

connessioneTCPr Tuttiipeer attiviegliarchi

formanolaretedicoperturar Unarcoèuncollegamento

virtualeenon fisicor Undatopeer saràsolitamente

connessoconmenodi10peervicininellaretedicopertura

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 16

Query flooding

Query

Successo

Query

Successo

Trasferimento file:HTTP

r IlmessaggiodirichiestaètrasmessosulleconnessioniTCPesistentir Ilpeer inoltrailmessaggiodirichiesta

r Ilmessaggiodisuccessoètrasmessosulpercorsoinverso

Floodingè moltocarointerminidioverheadSoluzione:DHT

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 17

Ricerca gerarchica

r Lacoperturagerarchicacombinalemiglioricaratteristichediindicecentalizzato equery flooding

r Ognipeer èunleaderdigruppooèassegnatoaunleaderdigruppov ConnessioneTCPtrapeer eilsuoleaderdigruppo

v ConnessioniTCPtraqualchecoppiadileaderdigruppo

r Illeaderdigruppotienetracciadelcontenutodituttiisuoifigli.

PeerordinarioPeerleaderdigruppoRelazionidiadiacenzanellaretedicopertura

Reti - locigno@disi.unitn.it - Livello applicativo:P2PeCloud 18

Skype

r intrinsecamenteP2P:coppiediutenticomunicanotraloro

r Protocolloproprietario(dedottomediantereverseengineering)

r Coperturagerarchicaconisupernodi

r L’indicecreacorrispondenzatranomiutenteeindirizziIP

r Autenticazioneegestionedegliaccountcentralizzata

Skype client (SC)

Supernodo (SN)

Skype login server

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 19

Peererelay

r SiponeunproblemaquandosiaAlicecheRobertohannoNAT.v NATevitacheunhost aldifuori

dellaretedomesticacreiunaconnessioneconunhost all’internodiquesta

r Soluzionev Usandoilsupernodo diAlicee

Roberto,sisceglieunrelayv Ciascunpeer inizialasessionecon

ilrelay.v Ipeer oracomunicanoconNAT

attraversoilrelay

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 20

Livello applicativo

r 2.6CondivisionedifileP2P

r 2.7Cloudcomputing

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 21

Cloud

❏ Virtualizzazionedell’infrastruttura❏ Ilfornitorediservizi“compra”l’infrastrutturavirtualedalfornitore

della“cloud”anziché gestire l’hardware inproprio❏ Ilfornitorecloud esponedelleinterfacceperelencaree

gestirelapropriaoffertadipiattaformavirtuale❏ Ilfornitorediserviziutilizzataliinterfacceperselezionareilservizio

richiesto(ades.unservervirtualecompletooppuresolostorage)eper amministrarlo(configurazione,attivazione,disattivazione)

❏ Ilclientefinaleutilizzailservizioconfiguratodalfornitorediservizio

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 22

Cloud

Fornitore diservizi

Fornitore diCloud

Cliente finale

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 23

Cloudcomputing

r Lecaratteristichefisichedell'implementazione(serverreale,localizzazionedeldatacenter)sonoirrilevanti(quasi)

r Criticità:r Sicurezzaeprivacyr Problemiinternazionalidinaturaeconomicaepoliticar Continuitàdelserviziooffertor Difficoltàdimigrazionedeidati

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 24

Video delivery - YouTube

• YouTubeservepiù di100milioni divideoalgiornoComefa?

• Ogni videoè ospitato su diunmini-clusterà qualsiasi videoègestito dapiù diunamacchina (più velocità,backuponline)

• Utilizzano il serverlighttpd[*]peri video(più veloce escalabile dialtri servercomeApacheoTomCat)su TCP...quindi affidabile,manonreal-time

[*]http://www.lighttpd.net/ ...forse oforse no,odipende dalmomento,maè deltutto irrilevanteessendo undettaglio diimplementazionedelservizio

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 25

Video delivery - YouTube

• Icontenuti più popolari vengono spostati sulla ContentDeliveryNetwork(CDN):– Replicadei contenuti indifferenti posizioni inmodo da“avvicinarle” agli utenti (meno hop,retemeno congestionata)

• Icontenutimeno popolari (<1-20views/day)restano suiserverYouTube

Reti- locigno@disi.unitn.it- Livelloapplicativo:P2PeCloud 26