Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica."

Transcript

1 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Sistemidistribuiti peer-to-peer Ing. Domenico Cotroneo

2 Sommario Introduzione e classificazione Storia ed esempi Distributed Hash Table (DHT) - Chord Problemi aperti Applicazioni - WinMx, Kazaa, Overnet, Freenet Riferimenti: G. Coulouris et al.: Distributed Systems: Concepts and Design (Cap. X), IV ed., Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 2

3 Sistemi distribuiti peer-to-peer (P2P) Un sistema peer-to-peer (P2P) è un sistema distribuito nel quale ogni nodo ha identiche capacità e responsabilità e tutte le comunicazioni sono potenzialmente simmetriche; Peer to peer (obiettivi): condividere risorse e servizi (dove per risorse e servizi intendiamo: scambio di informazioni, cicli di CPU, spazio sul disco ); I sistemi P2P sono caratterizzati da: controllo decentralizzato; adattabilità; si organizzano e si gestiscono da soli; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 3

4 P2P: Requisiti Requisiti Funzionali File sharing system; File storage system; Distributed file system; Redundant storage; Chat service; Distributed computation; Requisiti non funzionali Availability; Reliability; Performance; Scalability; Anonymity; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 4

5 P2P: Classificazione (1/3) Un applicazione P2P è caratterizzata da tre fasi : Boot: permette a un peer di trovare la rete e di connettersi ad essa; (nessuno o quasi fa boot P2P) Lookup: permette ad un peer di trovare il gestore/responsabile di una determinata informazione; (pochi sono P2P, alcuni usano SuperPeer) Scambio di file o resource sharing;(tutti P2P) Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 5

6 P2P: Classificazione (2/3) Parleremo di applicazioni: P2P pure se: le fasi di boot, lookup e scambio di file sono P2P; P2P se: le fasi di lookup e scambio di file sono P2P; la fase di boot utilizza qualche SERVER; P2P Ibride se: la fase di scambio dei file è P2P; la fase di boot utilizza qualche SERVER; nella fase di lookup vengono usati Peer particolari: Hub (Direct Connect) SuperPeer, Ultra Peer(Gnutella2) Supernodo (KaZaA) NodoRandezVous (JXTA) MainPeer (EDonkey) Server (WinMX) Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 6

7 P2P: Classificazione (3/3) In base all operazione di lookup: Lookup Centralizzato Indice centralizzato; Lookup Decentralizzato Indice completamente distribuito; Lookup Ibrido Più sistemi centralizzati collegati in un sistema decentralizzato; In tutti e tre questi sistemi il trasferimento e la memorizzazione dei file è P2P; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 7

8 Un po di storia (1/3) Proposti già da oltre 30 anni; Sviluppati nell ultimo decennio; L interesse verso questo tipo di protocolli è aumentato con la nascita dei primi sistemi per file-sharing (Napster (1999), Gnutella(2000)); Nel 2000, 50 milioni di utenti hanno scaricato il client di Napster; Napster ha avuto un picco di traffico di circa 7 TB in un giorno; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 8

9 Un po di storia (1/3) Proposti già da oltre 30 anni; Sviluppati nell ultimo decennio; L interesse verso questo tipo di protocolli è aumentato con la nascita dei primi sistemi per file-sharing (Napster (1999), Gnutella(2000)); Nel 2000, 50 milioni di utenti hanno scaricato il client di Napster; Napster ha avuto un picco di traffico di circa 7 TB in un giorno; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 9

10 Un po di storia (2/3) L eredità di Napster è stata raccolta da Gnutella; Il 14 / 03 / 2000 Justin Frankel e Tom Pepper realizzano la prima release di Gnutella (!!! Solo 14 ore!!! ); La dimensione della rete cresce in 7 mesi da 2K a 48K nodi; Tuttavia è stato stimato che il 95% delle query aveva un diametro di 7-8 hop; Le applicazioni più conosciute che si basano sul protocollo Gnutella sono: BearShare; LimeWire; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 10

11 Un po di storia (3/3) La lista degli host presenti nella rete è disponibile sul Server gnutellahost.com; Il Server gnutellahost.com viene usato dai nodi per il boot. Ciò significa Single point of failure; Gnutella non è P2P Puro!!!; Le richieste di Ricerca di un file vengono propagate con tecniche di flooding (non è scalabile): controllo dei cicli; TTL per evitare di congestionare la rete; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 11

12 GET X.mp3 X X A C B D A s query (e.g., X) C s query hit E s query hit E X Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 12

13 Gnutella: Flooding Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 13

14 Scalabilità (1/2) Le prestazioni (es. tempo di ricerca di un file) peggiorano linearmente all aumentare del numero dei nodi. In altri termini, la quantità di lavoro richiesta a un determinato nodo deve crescere linearmente in funzione del numero di nodi nel sistema; I protocolli usati da Napster e Gnutella non sono scalabili; Per migliorare la scalabilità sono nati i cosiddetti protocolli P2P di seconda generazione che supportano DHT (Distributed Hash Table); Alcuni esempi di questi protocolli sono: Tapestry, Chord, Can, Viceroy, Koorde, kademlia,kelips ; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 14

15 Scalabilità (2/2) La scalabilità di un protocollo è direttamente legata all efficienza dell algoritmo usato per il routing (lookup); In questo senso, sostanzialmente gli obiettivi sono due: Minimizzare il numero di messaggi necessari per fare lookup; Minimizzare, per ogni nodo, le informazioni relative agli altri nodi; I vari DHT conosciuti differiscono proprio nel routing; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 15

16 Messaggi necessari per trovare una chiave Anello n -1 DHT O(log n) Grafo Totalmente connesso 1 1 O(log n) n -1 n è il numero dei peer; Dimensione tabella di routing Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 16

17 P2P di seconda generazione e DHT A ogni file e ad ogni nodo è associata una chiave; La chiave viene di solito creata facendo l hash del nome del file o dell IP del nodo; Ogni nodo del sistema è responsabile di un insieme di file/chiavi e tutti realizzano una DHT; La principale operazione che un sistema DHT deve fornire è lookup(key), la quale restituisce l identità del responsabile di una determinata chiave. IP Address Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 17

18 P2P di seconda generazione e DHT Tutti i nodi del sistema condividono una tabella hash; Conoscono la struttura della tabella Ma non conoscono il responsabile di una data entry! Nodo x Nodo y Nodo z ID m Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 18

19 DHT: Chord (1/4) Le chiavi sono mappate su un array circolare costituito da 2 m identificatori; I nodi sono identificati con le stesse chiavi. Il nodo responsabile di una determinata chiave K è quello con il primo identificativo W tale che W succede K in senso orario; Ogni nodo x di Chord mantiene due insiemi di vicini: gli m successori del nodo x più il predecessore. Questo insieme viene usato per dimostrare la correttezza del Routing; Fingers: Un insieme m nodi costituito dai responsabili delle chiavi distanziate esponenzialmente dal nodo x, vale a dire l insieme delle chiavi che si trovano a distanza 2 i da x dove 0 i m-1. Questo insieme viene usato per dimostrare l efficienza del Routing; m=6 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 19

20 DHT: Chord (2/4) Successors indice Nodo Predecessor Nodo 1 m=6 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 20

21 DHT: Chord (2/4) Fingers ID Resp. 8+1= = = = = =40 42 m=6 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 21

22 DHT: Chord (3/4) Le informazioni che il nodo deve mantenere sugli altri nodi sono m + m + 1 = 2m +1 (O(log N)); Il numero di messaggi necessari per fare lookup è m (O(log N)); L algoritmo di routing effettua a ogni step il passo più grande che riesce a fare; Il costo che si paga quando un nodo lascia o si connette alla rete è di O(log 2 N) messaggi; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 22

23 DHT: Chord (4/4) Algoritmo di lookup: Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 23

24 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 24

25 DHT: Capacità di tollerare i fallimenti Cosa succede se un nodo cade? I dati presenti nel nodo possono essere recuperati solo se ci sono duplicati. Il routing continua a funzionare? Con quale efficienza? (Graceful degradation??) Quanto costa una procedura di recovery (ripristinare tutti i link)? Chi ha la responsabilità di rilevare fallimenti (failure detection)? Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 25

26 DHT: Routing Hot Spots Se una chiave è richiesta più spesso, il responsabile della chiave e anche i suoi vicini potrebbero sovraccaricarsi; Per ovviare al problema si possono usare meccanismi di caching e di duplicazione; Diverso è il problema relativo ai nodi che si sovraccaricano per il traffico generato dalle lookup; Questo tipo di traffico è abbastanza difficile da individuare e da gestire; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 26

27 DHT: Incorporating Geography (1/2) Tradizionalmente le prestazioni del routing si ottengono contando il numero di hop necessari a individuare il responsabile di una chiave; Sarebbe utile, inoltre, minimizzare la latenza del singolo hop; Alcune tecniche: Geographic Layout: Usare un algoritmo per attribuire le chiavi ai nodi in modo che nodi fisicamente vicini abbiano identificatori simili. (Controindicazioni: Bilanciamento del carico, Routing Hot Spots e Sicurezza); PNS(Proximity neighbor selection) La scelta dei vicini non dipende solo dalla distanza fra i nodi sulla rete di overlay ma è influenzata anche dalle distanze reali. PRS(Proximity routing selection) Durante la ricerca l algoritmo di routing non sceglie il successivo step basandosi solo sulla distanza fra i nodi nella rete di overlay; considera anche la distanza effettiva fra i nodi (in termini di RTT); Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 27

28 DHT: Incorporating Geography (2/2) Osservazioni: PRS e PNS sono i sistemi più usati,(sembra che PNS offre prestazioni migliori di PRS); PRS e PNS partono dal presupposto che è possibile conoscere il RTT con ogni altro nodo (non è fattibile, ma è possibile ottenere delle stime a un costo relativamente basso); Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 28

29 Incorporating geography: Chord Chord e PRS: L algoritmo di routing non va semplicemente al nodo più vicino sulla rete di overlay, ma ad esempio potrebbe considerare i due nodi più vicini e scegliere quello con RTT minore; Le path-lenght si allungano ma rimangono O(log n); Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 29

30 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 30

31 Incorporating geography: Chord Chord e PNS: La finger table viene riempita considerando anche il RTT: l i-esimo finger del nodo α non è semplicemente il responsabile della chiave α+2 i ma è il nodo più vicino(rtt) fra i nodi responsabili delle chiavi nell intervallo [α+2 i-1, α+2 i ]. Anche in questo caso le path-lenght si allungano ma rimangono O(log n) (dimostrazione analoga alla precedente). Anche usando simultaneamente PRS e PNS la lunghezza asintotica delle path non varia; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 31

32 Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 32

33 DHT: Extreme Heterogeneity I nodi connessi a questo tipo di reti sono eterogenei (Es. capacità di calcolo e banda); E possibile progettare algoritmi di routing che considerino anche questa eterogeneità; La tecnica più diffusa per risolvere questo problema consiste nel considerare dei nodi virtuali tutti con le stesse capacità e assegnare a ogni nodo reale un numero di nodi virtuali proporzionale alle proprie capacità; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 33

34 DHT: Sicurezza E possibile realizzare un protocollo P2P che resiste ad attacchi di tipo denial of service; E necessario replicare i dati; E importante usare funzioni hash One Way (per i dati e per i nodi); E importante osservare che tutte le dimostrazioni relative alla sicurezza dei vari algoritmi incontrati finora si basano sul fatto che le chiavi vengono associate ai files in modo casuale (quasi tutti gli algoritmi usano SHA); Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 34

35 P2P(quasi): Direct Connect (DC++) Usa una serie di hub (server) che mantiene le informazioni relative a un gruppo di utenti; Una volta connessi ad un hub si condivide file solo con i nodi connessi a tale hub; E possibile connettersi a più hub contemporaneamente; Gli hub sono connessi tra loro ma non si scambiano informazioni relative alla ricerca di una determinata chiave (Sono tanti piccoli Napster); La lista degli hub attivi viene mantenuta da tutti gli hub e aggiornata periodicamente dagli altri hub mediante messaggi del tipo I am here ; P2P ibrido Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 35

36 P2P(quasi): WinMx E basato su una rete di Server (circa 50) chiamata OpenNap nata subito dopo che è stato chiuso il Server di Napster; Viene usata anche da NapMx; In WinMx viene fatta una distinzione fra nodi di connessione primaria: direttamente connessi ai server; sono usati anche per il Routing; e nodi di connessione secondaria: connessi solo ai nodi di connessione primaria; non si occupano di Routing; P2P ibrido Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 36

37 P2P(quasi): KaZaA Viene usata una rete proprietaria; In KaZaA viene fatta una distinzione fra nodo e Supernodo(server): Ogni nodo semplice collabora con il proprio Supernodo; I Supernodi collaborano tra loro e con i propri sottonodi; Come sono connessi i Supernodi? P2P ibrido Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 37

38 Gnutella2 L obiettivo della lookup in Gnutella è trovare tutti i peer che dispongono di un determinato oggetto (non ci sono limitazioni sul tempo); L obiettivo della lookup in Gnutella2 è trovare, nel minor tempo possibile, almeno un peer (se c è) che dispone di un determinato oggetto; una volta trovata un istanza dell oggetto desiderato è possibile scegliere se fermarsi o continuare la ricerca; L abilità di trovare almeno un istanza di un oggetto è molto importante, altrimenti non sono possibili altre azioni; Bisogna trovare un modo per tenere sotto controllo la ricerca; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 38

39 Gnutella2: Ricerca (1/4) Gnutella2 Esistono tre approcci per controllare la ricerca; Random walker approach;(il nodo che origina la query ne controlla l esecuzione e in ogni istante può decidere se continuare o abortire la ricerca). Random or crawling mesh approach;(il nodo che origina la query iterativamente contatta alcuni nodi della rete, finché non si verifica una determinata condizione). Future Guided mesh approach;(dht) Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 39

40 Gnutella2: Ricerca (2/4) Su una rete pubblica di grandi dimensioni non è possibile effettuare direttamente la ricerca di un oggetto: ci sono troppi nodi da contattare; il costo per mettersi in contatto con un nodo è troppo alto paragonato alla probabilità di successo su quel nodo; la maggior parte dei nodi non dispongono di risorse sufficienti per far fronte a un numero notevole query; non tutti i nodi si possono contattare direttamente (es. firewall); Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 40

41 Gnutella2: Ricerca (3/4) Soluzione? P2P Ibrido: Gnutella2 organizza i nodi in un sistema gerarchico a due livelli dove i nodi ad alta capacità chiamati Hub rispondono alle query per le proprie foglie; La re-distribuzione della rete agli Hub è P2P; Hub vantaggi: Viene ridotto il numero totale dei nodi da contattare; Un Hub contiene informazioni relative a tanti oggetti, quindi è maggiore la probabilità che una query trovi un istanza di un oggetto; E possibile avere informazioni su nodi down; Nodo Hub Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 41

42 Gnutella2: Ricerca (4/4) Per evitare che questo sistema degeneri in un sistema centralizzato viene limitato il numero di leaves per ogni hub;(circa 150) La comunicazione fra leaves e hub è diretta; Problema Inter-Hub Communication; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 42

43 Gnutella2: Inter-Hub Communication (1/5) Ogni hub conosce solo i propri vicini; Quando un hub riceve una query dal nodo di origine, oltre a elaborarla, la inoltra ai propri vicini che non la inoltrano ulteriormente; (in pratica TTL = 2) Ad esempio se la ricerca viene inviata ad un hub che ha 5 vicini in un solo passo (con una query) vengono analizzate le foglie relative a 6 hub; L insieme dei nodi raggiunti in un passo viene chiamato cluster; Nodo Hub Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 43

44 Gnutella2: Inter-Hub Communication (2/5) Quando un nodo richiede la ricerca di un oggetto al proprio hub: Viene ricercato l elemento nel proprio cluster Viene ricercato l elemento nei cluster vicini(a distanza 1) più qualche cluster lontano scelto a caso; Viene ricercato l elemento nei cluster vicini dei vicini (a distanza 2) più qualche cluster lontano scelto a caso; Nodo Hub Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 44

45 Gnutella2: Inter-Hub Communication (3/5) Non è possibile per ogni hub mantenere la lista di tutti gli hub; (Non è scalabile); La lista dei cluster a distanza i+1 è ottenuta in risposta alla ricerca effettuata sui cluster a distanza i; Le risposte contengono inoltre altre informazioni utili per le statistiche (es. numero di nodi presenti nel cluster); Nodo Hub Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 45

46 Gnutella2: Inter-Hub Communication (4/5) Ogni hub mantiene la lista degli hub vicini (direttamente connessi) più una cache di hub lontani aggiornata di tanto in tanto; Viene mantenuta una done list; Le ricerche all interno del cluster sono fatte usando TCP; Le ricerche fra cluster sono fatte usando UDP; Nodo Hub TCP SEARCH UDP SEARCH Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 46

47 Gnutella2: Inter-Hub Communication (Esempio) try list cluster Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 47

48 Gnutella2: Inter-Hub Communication (5/5) Ogni hub deve mantenere quindi: la lista dei propri vicini; una lista di hub lontani (da aggiornare di tanto in tanto); una done list (i nodi a cui abbiamo inviato una query più i loro vicini); una try list; (i vicini dei vicini dei nodi a cui abbiamo inviato una query); per ogni query Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 48

49 Gnutella2: Boot Come fa un nuovo nodo a connettersi alla rete? E necessario conoscere almeno un host attivo; Chi mantiene la lista degli host attivi? un Server; (Gnutella, Napster) tanti Server; (Gnutella2) nessun Server.( ) Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 49

50 Overnet Sistema P2P per il file sharing sviluppato dalla MetaMachine; Non ci sono server; (P2P puro) Usano DHT (Distribuited Hash Table) con ID a 128 bit; Purtroppo non è Open Source; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 50

51 Overnet:boot Ogni nodo mantiene una cache dei nodi connessi alla rete; Durante la fase di boot il nodo tenta di connettersi ai nodi presenti nella cache; Se questa fase non ha successo viene richiesto l indirizzo di un nodo on-line;(a regime non capita praticamente mai) In ogni caso è stato creato un canale IRC per mantenere queste informazioni; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 51

52 P2P(file-storage-service): FreeNet Ogni nodo mette a disposizione un po di spazio; Le operazioni possibili sono get e put di un file; Per aggiugere un nuovo file si invia un send message nella rete e un identificatore GUID (Global Unique Identifier) in base al quale il file viene memorizzato in un insieme di nodi (Data Partition); Per recuperare un file basta inviare un messaggio di richiesta contenente il GUID del file; Servizi aggiuntivi: Persistenza; Anonimia; P2P Puro Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 52

53 P2P: FreeNet (Routing) E tutt altro che efficiente; Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 53

54 Ulteriori riferimenti S. Ratnasamy, S. Shenker, and I. Stoica. Routing algorithms for DHTs: Some open questions. In In 1st International Peer To Peer Systems Workshop (IPTPS02). I. Stoica, R. Morris, D. Liben-Nowell, D. R. Karger, M. F. Kaashoek, F. Dabek, H. Balakrishnan, Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications. In IEEE/ACM Trans. on Networking, Corso di Sistemi Distribuiti, prof. S. Russo Sistemi distribuiti peer-to-peer 54

Sistemi distribuiti peer-to-peer

Sistemi distribuiti peer-to-peer Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Sistemi distribuiti peer-to-peer

Dettagli

Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P

Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P Sistemi P2P Sistemi Peer To Peer (P2P) Peer-to-Peer (P2P) File Sharing? Sistema distribuito nel quale ogni nodo ha identiche capacità e responsabilità e tutte le comunicazioni sono potenzialmente simmetriche; Gennaro

Dettagli

Contesto: Peer to Peer

Contesto: Peer to Peer Contesto: Peer to Peer Un architettura di rete P2P è caratterizzata da: Connessioni dirette tra i suoi componenti. Tutti i nodi sono entità paritarie (peer). Risorse di calcolo, contenuti, applicazioni

Dettagli

Outline. P2P: Applicazioni. Peer-to-Peer (P2P) P2P: Storia(2) P2P: Storia. Sistemi Peer To Peer (P2P) Avanzati. Peer-to-Peer (P2P) Un po di storia

Outline. P2P: Applicazioni. Peer-to-Peer (P2P) P2P: Storia(2) P2P: Storia. Sistemi Peer To Peer (P2P) Avanzati. Peer-to-Peer (P2P) Un po di storia Sistemi Peer To Peer (P2P) Avanzati Gennaro Cordasco cordasco[@]dia.unisa.it http://www.dia.unisa.it/~cordasco Laboratorio ISISLAB 2 (L8 a Baronissi) Outline Peer-to-Peer (P2P) Motivazioni Un po di storia

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di. Sistemi Distribuiti. Prof. Stefano Russo. Sistemi distribuiti peer-to-peer

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di. Sistemi Distribuiti. Prof. Stefano Russo. Sistemi distribuiti peer-to-peer Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Sistemi distribuiti peer-to-peer

Dettagli

Algoritmi per protocolli peer-to-peer

Algoritmi per protocolli peer-to-peer Algoritmi per protocolli peer-to-peer Introduzione Livio Torrero (livio.torrero@polito.it) 09/2009 Approccio client-server (1/2) Client 1 Client 3 Server Client 2 Client 4 Paradigma molto comune Un client

Dettagli

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini. Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio

Dettagli

Modelli e Sistemi di Elaborazione Peer-to-Peer

Modelli e Sistemi di Elaborazione Peer-to-Peer Università degli Studi della Calabria Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Matematica Modelli e Sistemi di Elaborazione Peer-to-Peer Concetti di base sul Peer-to-Peer: -

Dettagli

Algoritmi per protocolli peer-to-peer

Algoritmi per protocolli peer-to-peer Algoritmi per protocolli peer-to-peer Reti non strutturate: casi di studio Livio.torrero@polito (Livio.torrero@polito.it) 09/2009 Napster: introduzione Livio Torrero - Politecnico di Torino Nato come applicativo

Dettagli

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo

Dettagli

Peer to Peer non solo file sharing

Peer to Peer non solo file sharing Peer to Peer non solo file sharing Indice Prima Parte: il Peer to Peer in generale P2P: definizione Curiosità Punti di forza e di debolezza Il Free Riding Seconda Parte: classificazione del Peer to Peer

Dettagli

FTP. Appunti a cura del prof. ing. Mario Catalano

FTP. Appunti a cura del prof. ing. Mario Catalano FTP Appunti a cura del prof. ing. Mario Catalano Il protocollo FTP 1/2 Attraverso il protocollo FTP (File Transfer Protocol) è possibile trasferire uno o più files di qualsiasi tipo tra due macchine Tale

Dettagli

Perché progettare sistemi P2P Breve storia del le-sharing Distributed Hash Table. P2P: Overlay. Matteo Dell'Amico. Master SIIT 1 luglio 2008

Perché progettare sistemi P2P Breve storia del le-sharing Distributed Hash Table. P2P: Overlay. Matteo Dell'Amico. Master SIIT 1 luglio 2008 Master SIIT 1 luglio 2008 Scaletta 1 Che signica P2P? Vantaggi e svantaggi Obiettivi 2 La prima generazione: Napster e Gnutella Seconda generazione: Superpeer e Kazaa I più usati (per ora): emule e BitTorrent

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Reti di calcolatori. Lezione del 10 giugno 2004

Reti di calcolatori. Lezione del 10 giugno 2004 Reti di calcolatori Lezione del 10 giugno 2004 Internetworking I livelli 1 fisico e 2 data link si occupano della connessione di due host direttamente connessi su di una rete omogenea Non è possibile estendere

Dettagli

Il protocollo BitTorrent

Il protocollo BitTorrent 4 Università degli studi di Bari Corso di Laurea Magistrale in Informatica Sistemi Distribuiti: architetttura e modelizzazione Modulo B modellizzazione Anno Accademico 2008 2009 Modellizzazione del protocollo

Dettagli

Lezione n.1 Sistemi P2P: Introduzione

Lezione n.1 Sistemi P2P: Introduzione Università degli Studi di isa Lezione n.1 Sistemi 2: 19-2-2007 eer-to-eer Systems and Applications Capitolo 2 Università degli Studi di isa 1 INFORMAZIONI UTILI Orario corso : martedì ore 14.00-16.00 venerdì

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Parte II: Reti di calcolatori Lezione 9

Parte II: Reti di calcolatori Lezione 9 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 9 Martedì 1-04-2014 1 Applicazioni P2P

Dettagli

Coordinazione Distribuita

Coordinazione Distribuita Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza 21.1 Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,

Dettagli

Una architettura peer-topeer per la visualizzazione 3D distribuita

Una architettura peer-topeer per la visualizzazione 3D distribuita Una architettura peer-topeer per la visualizzazione 3D distribuita Claudio Zunino claudio.zunino@polito.it Andrea Sanna andrea.sanna@polito.it Dipartimento di Automatica e Informatica Politecnico di Torino

Dettagli

Capitolo 2 - parte 4. Corso Reti ed Applicazioni Mauro Campanella Como 2003

Capitolo 2 - parte 4. Corso Reti ed Applicazioni Mauro Campanella Como 2003 Capitolo 2 - parte 4 Corso Reti ed Applicazioni Mauro Campanella Como 2003 Agenda - Content Distribution Networks (CDN) - Peer to Peer M. Campanella Corso Reti ed Applicazioni - Como 2003 Cap 2-4 pag.

Dettagli

Lezione 1 Introduzione

Lezione 1 Introduzione Lezione 1 Introduzione Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano I Servizi Web Un Servizio Web è un implementazione software

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1 GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Progettare un Firewall

Progettare un Firewall Progettare un Firewall Danilo Demarchi danilo@cuneo.linux.it GLUG Cuneo Corso Sicurezza 2006 Concetti introduttivi Come pensare un Firewall Argomenti trattati I Gli strumenti del Firewall Gli strumenti

Dettagli

Quattro chiacchere sul Peer to Peer p.1/20

Quattro chiacchere sul Peer to Peer p.1/20 Networks Quattro chiacchere sul Peer to Peer Marco Marongiu bronto@crs4.it CRS4 Networks System Area Quattro chiacchere sul Peer to Peer p.1/20 Networks Concetti Generali Quattro chiacchere sul Peer to

Dettagli

Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica.

Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica. Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Caratterizzazionedei SistemiDistribuiti

Dettagli

Reti di Telecomunicazione Lezione 8

Reti di Telecomunicazione Lezione 8 Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato

Dettagli

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti:

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti: Pagina 1 di 8 Struttura di Internet ed il livello rete Indice Struttura delle reti Estremità della rete Il nucleo della rete Reti a commutazione di pacchetto e reti a commutazione di circuito Funzionalità

Dettagli

Introduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)

Introduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME) Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,

Dettagli

Lezione n.15 DHT: LOAD BALANCING. Peer-to-Peer Systems and Applications Capitolo 9. Laura Ricci

Lezione n.15 DHT: LOAD BALANCING. Peer-to-Peer Systems and Applications Capitolo 9. Laura Ricci Lezione n.15 DHT: LOAD BALANCING Peer-to-Peer Systems and Applications Capitolo 9 1 DHT: LOAD BALANCING DHT: in generale assumono che la funzione hash distribuisce uniformemente gli indirizzi ogni nodo

Dettagli

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005 Si svolga il compito su questi fogli. Nel caso di domande a risposta aperta, lo spazio lasciato sul foglio

Dettagli

Cognome:.. Nome:.. 1/5

Cognome:.. Nome:.. 1/5 Cognome:.. Nome:.. 1/5 Sistemi P2P Prova del 17/12/2007 Note: 1) Per ogni risposta corretta a domande di tipo A vengono assegnati 4 punti 2) Per ogni risposta scorretta a domande di tipo A viene sottratto

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci CORSO DI RETI SSIS Lezione n.2. 2 Novembre 2005 Laura Ricci IL DOMAIN NAME SYSTEM (DNS) Indirizzi IP poco adatti per essere memorizzati da utenti umani è prevista la possibiltà di associare nomi simbolici

Dettagli

Rete Internet Prova in Itinere Mercoledì 23 Aprile 2008

Rete Internet Prova in Itinere Mercoledì 23 Aprile 2008 Rete Internet Prova in Itinere Mercoledì 23 Aprile 2008 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome: Corso di laurea e anno: Matricola:

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 200, ore 1.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:

Dettagli

Lezione n.6. Università degli Studi di Pisa. Materiale didattico: Peer-to-Peer Systems and Applications Capitolo 5. Dipartimento di Informatica

Lezione n.6. Università degli Studi di Pisa. Materiale didattico: Peer-to-Peer Systems and Applications Capitolo 5. Dipartimento di Informatica Lezione n.6 Sistemi P2P: Gnutella Materiale didattico: Peer-to-Peer Systems and Applications Capitolo 5 1 Gnutella: il protocollo in breve Messaggi scambiati sulla Overlay Network Messaggi di keep-alive:

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

Contesto. Reti e applicazioni peer-to-peer. Reti client/server. Reti client/server - svantaggi. Reti P2P - generalità. Reti peer-to-peer (P2P)

Contesto. Reti e applicazioni peer-to-peer. Reti client/server. Reti client/server - svantaggi. Reti P2P - generalità. Reti peer-to-peer (P2P) Contesto Reti e applicazioni -to- Applicazioni client/server Applicazioni di rete Applicazioni -to- File sharing Basi di dati Calcolo distribuito Informatica Generale A.A. 2002/03 Mirko Innocenti Reti

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing

Informatica 3. LEZIONE 21: Ricerca su liste e tecniche di hashing. Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing Informatica 3 LEZIONE 21: Ricerca su liste e tecniche di hashing Modulo 1: Algoritmi sequenziali e basati su liste Modulo 2: Hashing Informatica 3 Lezione 21 - Modulo 1 Algoritmi sequenziali e basati su

Dettagli

Reti di Telecomunicazione Lezione 7

Reti di Telecomunicazione Lezione 7 Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

Dettagli

Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it

Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it Socket Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Tale

Dettagli

Corso di recupero di sistemi Lezione 8

Corso di recupero di sistemi Lezione 8 Corso di recupero di sistemi Lezione 8 a.s. 2011/2012 - Prof. Fabio Ciao 24 aprile 2012 Reti TCP/IP Una rete TCP/IP è una rete locale o geografica che utilizza protocolli TCP/IP con i primi 2 livelli una

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

P2-11: BOOTP e DHCP (Capitolo 23)

P2-11: BOOTP e DHCP (Capitolo 23) Autunno 2002 Prof. Roberto De Prisco -11: BOOTP e DHCP (Capitolo 23) Università degli studi di Salerno Laurea e Diploma in Informatica Indirizzi IP dinamici 11.2 Un indirizzo IP statico è assegnato ad

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15. Pietro Frasca. Parte II Lezione 5

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15. Pietro Frasca. Parte II Lezione 5 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Parte II Lezione 5 Giovedì 19-03-2015 1 Intensità del traffico e perdita dei pacchetti La componente

Dettagli

Guida Compilazione Piani di Studio on-line

Guida Compilazione Piani di Studio on-line Guida Compilazione Piani di Studio on-line SIA (Sistemi Informativi d Ateneo) Visualizzazione e presentazione piani di studio ordinamento 509 e 270 Università della Calabria (Unità organizzativa complessa-

Dettagli

Lo scenario: la definizione di Internet

Lo scenario: la definizione di Internet 1 Lo scenario: la definizione di Internet INTERNET E UN INSIEME DI RETI DI COMPUTER INTERCONNESSE TRA LORO SIA FISICAMENTE (LINEE DI COMUNICAZIONE) SIA LOGICAMENTE (PROTOCOLLI DI COMUNICAZIONE SPECIALIZZATI)

Dettagli

La memoria - generalità

La memoria - generalità Calcolatori Elettronici La memoria gerarchica Introduzione La memoria - generalità n Funzioni: Supporto alla CPU: deve fornire dati ed istruzioni il più rapidamente possibile Archiviazione: deve consentire

Dettagli

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento I protocolli del livello di applicazione Porte Nelle reti di calcolatori, le porte (traduzione impropria del termine port inglese, che in realtà significa porto) sono lo strumento utilizzato per permettere

Dettagli

Man-in-the-middle su reti LAN

Man-in-the-middle su reti LAN Università degli Studi di Udine Dipartimento di Ingegneria Gestionale, Elettrica e Meccanica 21 Marzo 2011 Scaletta 1 2 LAN switched ARP Alcuni attacchi MITM 3 4 5 Che cos è L attacco man-in-the-middle

Dettagli

INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam. Laurea in INFORMATICA INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 Dynamic Host Configuration Protocol fausto.marcantoni@unicam.it Prima di iniziare... Gli indirizzi IP privati possono essere

Dettagli

Sicurezza nelle reti

Sicurezza nelle reti Sicurezza nelle reti Manipolazione indirizzi IP 1 Concetti Reti Rete IP definita dalla maschera di rete Non necessariamente concetto geografico Non è detto che macchine della stessa rete siano vicine 2

Dettagli

INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP FORME DI INDIRIZZI IP CINQUE FORME DI INDIRIZZI IP

INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP FORME DI INDIRIZZI IP CINQUE FORME DI INDIRIZZI IP INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP Un indirizzo IP è composto da 32 bit. Generalmente, per convenienza, è presentato in decimale: 4 ottetti (bytes) separati da un punto. Ogni rete fisica

Dettagli

Naming nei Sistemi Distribuiti

Naming nei Sistemi Distribuiti Naming nei Sistemi Distribuiti Naming (1) La risoluzione dei nomi permette ad un processo di accedere ad una entità in un sistema distribuito. Un sistema di naming è necessario per avere un modello comune

Dettagli

Naming nei Sistemi Distribuiti

Naming nei Sistemi Distribuiti Naming nei Sistemi Distribuiti Naming (1) La risoluzione dei nomi permette ad un processo di accedere ad una entità in un sistema distribuito. Un sistema di naming è necessario per avere un modello comune

Dettagli

Agenti Mobili Intelligenti e Sicurezza Informatica Utilizzare un nuovo paradigma applicativo per la realizzazione di sistemi informatici sicuri.

Agenti Mobili Intelligenti e Sicurezza Informatica Utilizzare un nuovo paradigma applicativo per la realizzazione di sistemi informatici sicuri. Agenti Mobili Intelligenti e Sicurezza Informatica Utilizzare un nuovo paradigma applicativo per la realizzazione di sistemi informatici sicuri. Roma, 25 ottobre 2010 Ing. Antonio Salomè Ing. Luca Lezzerini

Dettagli

Organizzazioni virtuali di tipo Peer-to-Peer

Organizzazioni virtuali di tipo Peer-to-Peer Organizzazioni virtuali di tipo Peer-to-Peer Ing. Michele Amoretti Distributed Systems Group VI Incontro del GARR 17 Novembre 2005 Sommario - Organizzazioni virtuali - Modelli architetturali P2P - Skype

Dettagli

Il sistema monetario

Il sistema monetario Il sistema monetario Premessa: in un sistema economico senza moneta il commercio richiede la doppia coincidenza dei desideri. L esistenza del denaro rende più facili gli scambi. Moneta: insieme di tutti

Dettagli

Dal protocollo IP ai livelli superiori

Dal protocollo IP ai livelli superiori Dal protocollo IP ai livelli superiori Prof. Enrico Terrone A. S: 2008/09 Protocollo IP Abbiamo visto che il protocollo IP opera al livello di rete definendo indirizzi a 32 bit detti indirizzi IP che permettono

Dettagli

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base

Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base Scheduling Sistemi Operativi e Distribuiti A.A. 2-25 Bellettini - Maggiorini Concetti di base Il massimo utilizzo della CPU si ottiene mediante la multiprogrammazione Ogni processo si alterna su due fasi

Dettagli

Indice. Recupero CDDB

Indice. Recupero CDDB Mike McBride Jonathan Singer David White Sviluppatore: Bernd Johannes Wübben Sviluppatore: Dirk Försterling Sviluppatore: Dirk Försterling Revisore: Lauri Watts Traduzione italiana: Giorgio Moscardi Manutenzione

Dettagli

ARP (Address Resolution Protocol)

ARP (Address Resolution Protocol) ARP (Address Resolution Protocol) Il routing Indirizzo IP della stazione mittente conosce: - il proprio indirizzo (IP e MAC) - la netmask (cioè la subnet) - l indirizzo IP del default gateway, il router

Dettagli

Reti diverse: la soluzione nativa

Reti diverse: la soluzione nativa Reti diverse: la soluzione nativa Quando si deve trasmettere un messaggio attraverso reti diverse, per il mezzo fisico, per il protocollo di accesso o altro, a che livello si colloca la procedura di traduzione

Dettagli

Problema del naming. Modello di Naming

Problema del naming. Modello di Naming Sistemi Distribuiti Problema del naming 1 Modello di Naming Conoscenza reciproca delle entità / servizi In una relazione cliente/servitore il cliente deve avere un riferimento al servitore Problema della

Dettagli

Algoritmi e strutture dati. Codici di Huffman

Algoritmi e strutture dati. Codici di Huffman Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per

Dettagli

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Calcolatori. Il Livello delle Applicazioni Reti di Calcolatori Il Livello delle Applicazioni Il DNS Gli indirizzi IP sono in formato numerico: sono difficili da ricordare; Ricordare delle stringhe di testo è sicuramente molto più semplice; Il Domain

Dettagli

NodeXL: l amo delle Reti Sociali

NodeXL: l amo delle Reti Sociali UNIVERSITA DEGLI STUDI DI MILANO Facoltà di Giurisprudenza Cattedre di Informatica Giuridica e Informatica Avanzata CORSO DI PERFEZIONAMENTO IN COMPUTER FORENSICS E DATA PROTECTION l amo delle Reti Sociali

Dettagli

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, > Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta

Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria

Dettagli

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Università degli Studi di Napoli Federico II

Università degli Studi di Napoli Federico II Università degli Studi di Napoli Federico II Ottimizzazione del traffico P2P nelle Wireless Community Network Stefano Avallone, Roberto Canonico, Giorgio Ventre, Francesco Paolo D'Elia Conferenza GARR

Dettagli

Cos è. Protocollo TCP/IP e indirizzi IP. Cos è. Cos è

Cos è. Protocollo TCP/IP e indirizzi IP. Cos è. Cos è Protocollo TCP/IP e indirizzi IP Il protocollo TCP/IP è alla base dei sistemi di trasmissione dati impiegati sulle reti locali e su Internet. Nato nel Gennaio 1983 negli Stati Uniti come sistema di comunicazione

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

Parte II: Reti di calcolatori Lezione 11

Parte II: Reti di calcolatori Lezione 11 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Parte II: Reti di calcolatori Lezione 11 Martedì 14-04-2015 1 Esempio di uso di proxy Consideriamo

Dettagli

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto Laboratorio di reti Relazione N 5 Gruppo 9 Vettorato Mattia Mesin Alberto Virtual LAN Che cosa è una VLAN? Il termine Virtual LAN indica una serie di tecniche atte a separare un dominio di broadcast, di

Dettagli

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client RETI INFORMATICHE - SPECIFICHE DI PROGETTO A.A. 2013/2014 1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014 Il progetto consiste nello sviluppo di un

Dettagli

Interconnessione di reti

Interconnessione di reti Interconnessione di reti Collegamenti tra reti eterogenee Instradamento (routing) e inoltro (forwarding) IPv4 - indirizzi IP e MAC - sottoreti IPv6 - evoluzione di Internet DNS - Domain Name System Conclusioni

Dettagli

Memoria Virtuale. Anche la memoria principale ha una dimensione limitata. memoria principale (memoria fisica) memoria secondaria (memoria virtuale)

Memoria Virtuale. Anche la memoria principale ha una dimensione limitata. memoria principale (memoria fisica) memoria secondaria (memoria virtuale) Memoria Virtuale Anche la memoria principale ha una dimensione limitata. Possiamo pensare di superare questo limite utilizzando memorie secondarie (essenzialmente dischi) e vedendo la memoria principale

Dettagli

IL CICLO DI VITA DEL PROGETTO. Elementi essenziali di progetto. Fasi e tappe Gli Approcci

IL CICLO DI VITA DEL PROGETTO. Elementi essenziali di progetto. Fasi e tappe Gli Approcci UNIVERSITA MILANO BICOCCA Corso di laurea di primo livello in servizio sociale anno accademico 2009-2010 Progettare il sociale Prof. Dario A. Colombo IL CICLO DI VITA DEL PROGETTO Elementi essenziali di

Dettagli

ENERGY EFFICIENCY PERFORMANCE IL MIGLIORAMENTO DELL EFFICIENZA EFFICIENZA ENERGETICA NELLE PICCOLE E MEDIE IMPRESE DAVIDE VITALI ALESSANDRO LAZZARI

ENERGY EFFICIENCY PERFORMANCE IL MIGLIORAMENTO DELL EFFICIENZA EFFICIENZA ENERGETICA NELLE PICCOLE E MEDIE IMPRESE DAVIDE VITALI ALESSANDRO LAZZARI ENERGY EFFICIENCY PERFORMANCE IL MIGLIORAMENTO DELL EFFICIENZA EFFICIENZA ENERGETICA NELLE PICCOLE E MEDIE IMPRESE DAVIDE VITALI ALESSANDRO LAZZARI CHI E ASSOEGE? (..E CHI SONO GLI EGE) Associazione degli

Dettagli

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI Un utilizzatore a valle di sostanze chimiche dovrebbe informare i propri fornitori riguardo al suo utilizzo delle sostanze (come tali o all

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Il livello 3 della pila ISO/OSI. Il protocollo IP e il protocollo ICMP

Il livello 3 della pila ISO/OSI. Il protocollo IP e il protocollo ICMP Il livello 3 della pila ISO/OSI Il protocollo IP e il protocollo ICMP IL LIVELLO 3 - il protocollo IP Il livello 3 della pila ISO/OSI che ci interessa è l Internet Protocol, o più brevemente IP. Visto

Dettagli

Attività 9. La città fangosa Minimal Spanning Trees

Attività 9. La città fangosa Minimal Spanning Trees Attività 9 La città fangosa Minimal Spanning Trees Sommario la nostra società ha molti collegamenti in rete: la rete telefonica, la rete energetica, la rete stradale. Per una rete in particolare, ci sono

Dettagli

Linee guida per il Comitato Tecnico Operativo 1

Linee guida per il Comitato Tecnico Operativo 1 Linee guida per il Comitato Tecnico Operativo 1 Introduzione Questo documento intende costituire una guida per i membri del Comitato Tecnico Operativo (CTO) del CIBER nello svolgimento delle loro attività.

Dettagli

Algoritmi per protocolli peer-to-peer

Algoritmi per protocolli peer-to-peer Algoritmi per protocolli peer-to-peer Bittorrent (caso di studio) Livio Torrero (livio.torrero@polito.it) 09/2009 Bittorent: concetti base (1/2) La rete Bittorrent si basa su tracker Spesso integrato con

Dettagli

CdL MAGISTRALE in INFORMATICA A.A. 2014-15 corso di Sistemi Distribuiti. 8. Le architetture (prima parte) Prof. S.Pizzutilo

CdL MAGISTRALE in INFORMATICA A.A. 2014-15 corso di Sistemi Distribuiti. 8. Le architetture (prima parte) Prof. S.Pizzutilo CdL MAGISTRALE in INFORMATICA A.A. 2014-15 corso di Sistemi Distribuiti 8. Le architetture (prima parte) Prof. S.Pizzutilo I Sistemi Distribuiti Un Sistema Distribuito è un insieme di processori indipendenti

Dettagli