reti_cap1_569601b39e938132b1f87549242e786f.pdf

Full Transcript

Fondamenti di Comunicazioni Modulo 2 - Reti Introduzione alle reti Docente: Fabrizio Granelli AA 2024/2025 Capitolo 1: Introduzione Obiettivi: Panoramica: q Introdurre la terminologia e i q Cos’è Internet? concetti di base q Cos’è un protocollo? q...

Fondamenti di Comunicazioni Modulo 2 - Reti Introduzione alle reti Docente: Fabrizio Granelli AA 2024/2025 Capitolo 1: Introduzione Obiettivi: Panoramica: q Introdurre la terminologia e i q Cos’è Internet? concetti di base q Cos’è un protocollo? q Gli approfondimenti q Ai confini della rete: host, reti di accesso, arriveranno nei capitoli mezzi trasmissivi successivi q Il nucleo della rete: commutazione di q Approccio: circuito e commutazione di pacchetto, v Usare Internet come struttura di Internet fonte di esempi q Prestazioni: ritardi, perdite e throughput q Sicurezza q Livelli di protocollo, modelli di servizio q Un po' di storia 1-2 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-3 Che cos’è Internet? PC q Milioni di dispositivi collegati: host = sistema terminale server Rete mobile ISP nazionale Portatile q Applicazioni di rete o internazionale Telefono cellulare q Collegamenti Rete domestica v Rame, fibra ottica, onde Punti di elettromagnetiche, satellite ISP distrettuale accesso v Frequenza di trasmissione = Collegamento ampiezza di banda via cavo Rete aziendale q Router: instrada i pacchetti verso router la loro destinazione finale q ISP: Internet Service Provider 1-4 Che cos’è Internet? Rete mobile q Un protocollo definisce il formato e l’ordine dei messaggi scambiati fra due o ISP nazionale più entità in comunicazione o internazionale v es.: TCP, IP, HTTP, Skype, Ethernet q Internet: “rete delle reti” Rete domestica v Struttura gerarchica ISP distrettuale v Internet pubblica e intranet private q Standard Internet v RFC: Request for comments Rete aziendale v IETF: Internet Engineering Task Force 1-5 Cos’è Internet q Infrastruttura di comunicazione per applicazioni distribuite: v Web, VoIP, e-mail, giochi, database e-commerce, condivisione di file, streaming, virtual/augmented reality… v Smartphone apps: messaggistica istantanea, meteo, traffico su strada, cloud music, video streaming… q Servizi forniti alle applicazioni: v Servizio affidabile dalla sorgente alla destinazione v Servizio “best effort” (non affidabile) senza connessione 1-6 Cos’è un protocollo? Protocolli umani: Protocolli di rete: q “Che ore sono?” q Dispositivi hardware e q “Ho una domanda” software, non umani q Presentazioni q Tutta l’attività di comunicazione in … invio di specifici messaggi Internet è governata dai … quando il messaggio è protocolli ricevuto, vengono intraprese specifiche azioni, o si Un protocollo definisce il formato e verificano altri eventi l’ordine dei messaggi scambiati tra due o più entità in comunicazione, così come le azioni intraprese in fase di trasmissione e/o ricezione di un messaggio o di un altro evento 1-7 Cos’è un protocollo? Protocollo umano e protocollo di rete Ciao Richiesta di connessione TCP Ciao Risposta di Sai l’ora? connessione TCP GET http://www.awl.com/kurose-ross 17:00 Take-away: mandiamo messaggi specifici, e agiamo diversamente tempo a seconda delle risposte D: Conoscete altri protocolli umani? 1-8 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø Commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-9 Uno sguardo da vicino alla struttura di rete q Ai confini della rete: Applicazioni e sistemi terminali q Reti, dispositivi fisici: Collegamenti cablati e wireless q Al centro della rete: v Router interconnessi v La rete delle reti 1-10 Ai confini della rete Sistemi terminali (host): v Fanno girare programmi applicativi v Es.: Web, e-mail v Situati all’estremità di Internet peer to peer q Architettura client/server v L’host client richiede e riceve un servizio da un programma server in esecuzione su un altro terminale v Es.: browser/server Web; client/server client/server e-mail v D: Dove si trovano i server? q Architettura peer to peer v Uso limitato (o inesistente) di server dedicati v Es.: Skype, Bit Torrent 1-11 Reti d’accesso e mezzi fisici D: Come collegare sistemi terminali e router esterni? q Reti di accesso residenziale q Reti di accesso aziendale (università, istituzioni, aziende)... q Reti di accesso mobile Ricordate: q Ampiezza di banda (bit al secondo)? q Risorse condivise o dedicate? 1-12 Accesso residenziale: punto-punto q Modem dial-up v Fino a 56 kbit/s e accesso diretto al router (ma spesso è inferiore) v Non è possibile “navigare” e telefonare nello stesso momento q DSL: digital subscriber line v Installazione: In genere da parte di una società telefonica v Fino a 1-5 Mbit/s in upstream v Fino a 10-50 Mbit/s in downstream v Linea dedicata 1-13 Fiber-to-the-Home (FTTH) 1-14 Accesso aziendale: reti locali (LAN) q Una Local Area Network, o LAN, collega i sistemi terminali di aziende e università all’edge router q Ethernet: v 10 Mbit/s, 100 Mbit/s, 1 Gbit/s, 10 Gbit/s v Moderna configurazione: sistemi terminali collegati mediante uno switch Ethernet q Le LAN: Capitolo 5 1-15 Accesso wireless q Una rete condivisa d’accesso wireless collega i sistemi terminali al router v Attraverso la stazione base, detta anche “access point” Router q LAN wireless: Stazione v 802.11a/b/g/n/ac (WiFi): 11, 54, base 100+Mbit/s q Rete d’accesso wireless geografica v Gestita da un provider di telecomunicazioni v WiMax? Host v Da qualche Mbit/s per i sistemi cellulari wireless 3G (UMTS, HSDPA) ad 1 Gbit/s (?!?) v Oggi: 4G / 5G 1-16 wigle.net – WiFi access point mapping 1-17 wigle.net – WiFi access point mapping 1-18 Reti domestiche Componenti di una tipica rete da abitazione: q DSL o modem via cavo q Router/firewall/NAT q Ethernet q Punto d’accesso wireless laptop a/da wireless terminazione modem router/ via cavo via cavo firewall Punto d’accesso senza fili Ethernet 1-19 Mezzi di trasmissione e definizioni q Bit: unità di informazione base Doppino intrecciato (TP) 0/1, viaggia da un sistema q Due fili di rame avvolti terminale a un altro, passando per v Tipico cavo usato per lo una serie di coppie trasmittente- standard Ethernet ricevente q Mezzo fisico: strumento che q Diversi tipi di schermatura permette il passaggio di bit tra v Nessuna (unshielded) trasmittente e il ricevente v Schermatura per doppino q Mezzi guidati: (shielded) v i segnali si propagano in un mezzo v Lamina o maglia che avvolge fisico: fibra ottica, filo di rame o cavo coassiale l’intero cavo (foiled) RJ-45 v Entrambe (screened) q Mezzi a onda libera: v i segnali si propagano nell’atmosfera, o nello spazio esterno 1-20 Cavi a doppino intrecciato (twisted pair) 1-21 Denominazione sintetica dei cavi q X / Y TP q X è la schermatura dell’intero cavo v U : unshielded v F : foiled (di solito, una lamina di alluminio) v S : maglia metallica intrecciata (di solito, rame placcato alluminio) v SF : entrambe q Y è la schermatura di ogni doppino v U : unshielded v F : shielded q Esempi: U/UTP? F/UTP? S/FTP? 1-22 Sezione di cavi con/senza schermature 1-23 Cavi reali 1-24 Cavi usati nello standard Ethernet Name Standard Status Mbit/s Pairs Distance Cable 10BASE-T 802.3i-1990 Legacy 10 2 100 m Cat. 3 100BASE-T1 802.3bw-2015 Legacy 100 1 15 m Cat. 5e 100BASE-TX 802.3u-1995 Current 100 2 100 m Cat 5e 1000BASE-T 802.3ab-1999 Current 1000 3 100 m Cat 5e 1000BASE-T1 802.3bp-2016 Current 1000 1 40 m Cat 6A 2.5GBASE-T 802.3bz-2016 Current 2500 4 100 m Cat 5e 5GBASE-T 802.3bz-2016 Current 5000 4 100 m Cat 6 10GBASE-T 802.3an-2016 Current 10000 4 100 m Cat 6A 25GBASE-T 802.3bq-2016 Future 25000 4 30 m Cat 8 40GBASE-T 802.3bq-2016 Future 40000 4 30 m Cat 8 1-25 Connessione di cavi e connettori Cavo “patch” Cavo “cross” 1-26 Mezzi trasmissivi: cavo coassiale e fibra ottica Cavo coassiale: Fibra ottica: q due conduttori in rame q Mezzo sottile e flessibile che concentrici conduce impulsi di luce q bidirezionale (ciascun impulso rappresenta un bit) q banda base: q Alta frequenza trasmissiva: v singolo canale sul cavo v Elevata velocità di trasmissione v legacy Ethernet punto-punto (da 10 a 100 Gbit/s) q banda larga: q Basso tasso di errore, ripetitori v più canali sul cavo distanziati, immune all’interferenza v HFC elettromagnetica q Mezzo preferito per collegamenti “long-haul” 1-27 Mezzi trasmissivi: canali radio q Trasportano segnali nello spettro Tipi di canali radio: elettromagnetico q Microonde terrestri q Non richiedono l’installazione v Es.: canali fino a 45 Mbit/s fisica di cavi q LAN (es.: WiFi) q Bidirezionali v 11 Mbit/s, 54 Mbit/s, 100+ Mbit/s q Effetti dell’ambiente di q Wide-area (es.: cellulari) propagazione: v 3G: ~1 Mbit/s, HSDPA: ~14.4 Mbit/s v Riflessione v LTE: 100 Mbit/s v Ostruzione da parte di v 5G: ? ostacoli q Satellitari v Interferenza v Canali fino a 45 Mbit/s (o sottomultipli) v Ritardo punto-punto di > 200 ms v Geostazionari (GEO) a 36.000 km v Low-earth orbit (LEO) a bassa quota 1-28 Esercizio q Provate a misurare la velocità della vostra connessione ad Internet (ad es., usate http://www.speedtest.net/) q D: è quella dichiarata dal vostro ISP? Se no, come mai? 1-29 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø Commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-30 Il nucleo della rete q Rete magliata di router che interconnettono i sistemi terminali q Il quesito fondamentale: come vengono trasferiti i dati attraverso la rete? v Commutazione di circuito: circuito dedicato per l’intera durata della sessione (rete telefonica) v Commutazione di pacchetto: i messaggi di una sessione utilizzano le risorse su richiesta, e di conseguenza potrebbero dover attendere per accedere a un collegamento 1-31 Il nucleo della rete: commutazione di circuito Risorse punto-punto riservate alla comunicazione q Ampiezza di banda, capacità del commutatore q Risorse dedicate: non c’è condivisione q Prestazioni garantite q Necessaria l’impostazione della connessione v Esempio tipico: chiamata v Usato anche per traffico dati 1-32 Il nucleo della rete: commutazione di circuito Risorse di rete (ad es., q Suddivisione della banda in ampiezza di banda, “porzioni” bandwidth) v Ripartizione della bit rate suddivise in “porzioni” v Divisione di frequenza q Ciascuna “porzione” viene allocata ai vari collegamenti v Divisione di tempo q le risorse rimangono inattive se non utilizzate (non c’è condivisione) 10 Mbit/s = 5 + 5 Mbit/s = 1 + 1 + 8 (free) 1-33 Commutazione di circuito: FDM e TDM Esempio: Time Division Multiplexing (TDM) 4 utenti frequenza tempo Frequency Division Multiplexing (FDM) frequenza tempo 1-34 Un esempio numerico q Quanto tempo occorre per inviare un file di 640.000 bit dall’host A all’host B su una rete a commutazione di circuito? v Tutti i collegamenti presentano un bit rate di 1,536 Mbit/s v Ciascun collegamento utilizza TDM con 24 slot/secondo v Si impiegano 500 ms per stabilire un circuito punto-punto Provate a calcolarlo! 1-35 Soluzione q Ttot=500ms (attesa x setup connessione) + Ttrasm q Ttrasm=L (640.000 bit) / R (frequenza in bit x connessione) q R = Ctot (1,536 Mbit/s) / 24 = 0,064 Mbps = 64kbps q Ttrasm=640.000bit/64kbps=10sec q Ttot=500ms+10sec=10,5 sec. 1-36 Il nucleo della rete: commutazione di pacchetto Il flusso di dati punto-punto Contesa per le risorse viene suddiviso in pacchetti q La richiesta di risorse può q I pacchetti degli utenti A e B condividono eccedere il quantitativo le risorse di rete disponibile q Ciascun pacchetto utilizza q Store and forward: completamente le risorse fisiche Chi inoltra un pacchetto deve q Le risorse vengono ripartitein modalità riceverlo per intero prima di best effort ed a seconda delle necessità cominciare a trasmettere sul (on demand) collegamento in uscita q Congestione: accodamento dei pacchetti, attesa per l’utilizzo Larghezza di banda suddivisa in “porzioni” del collegamento Allocazione dedicata Risorse riservate 1-37 Commutazione di pacchetto: multiplexing statistico Ethernet A a 10 Mbit/s Multiplexing statistico C 1,5 Mbit/s B Coda dei pacchetti in attesa sul collegamento in uscita D E q La sequenza dei pacchetti A e B non segue uno schema prefissato v Condivisione di risorse su richiesta à multiplexing statistico q TDM: ciascun host ottiene uno slot di tempo v Dedicato unicamente a quella trasmissione 1-38 Commutazione di pacchetto: store-and-forward L R R R q Occorrono L/R secondi per Esempio: trasmettere (push out) un q L = 12 kbit pacchetto di L bit su un collegamento in uscita da R bit/s q R = 1,5 Mbit/s q Store and forward: l’intero q Tempo di transmissione: pacchetto deve arrivare al router v L/R = 8 millisecondi prima che questo lo trasmetta sul link successivo v D: Perché non inoltrare direttamente ogni bit ricevuto? q Tempo di trasmissione totale: v 3L/R (supponendo che il ritardo di approfondiremo tra breve il ritardo … propagazione sia zero) 1-39 Confronto tra commutazione di pacchetto e commutazione di circuito La commutazione di pacchetto consente a più utenti di usare la rete! q 1 collegamento da 1 Mbit/s q Ciascun utente: v 100 kbit/s quando è “attivo” v Attivo per il 10% del tempo q Commutazione di circuito: N utenti v 10 utenti q Commutazione di pacchetto: Collegamento da 1 Mbit/s v Fino a 10 utenti attivi, tutti possono trasmettere contemporaneamente v Oltre, i pacchetti si accumulano finché gli utenti attivi non diminuiscono D: come è stato ottenuto il valore 0,0004? v Con 35 utenti, la probabilità di averne > 10 attivi è inferiore a (ricordate le distribuzione binomiale) 0,0004!! 1-40 Confronto tra commutazione di pacchetto e commutazione di circuito La commutazione di pacchetto è la “scelta vincente?” q Ottima per i dati a raffica (“burst”) v Condivisione delle risorse v Più semplice, non necessita scambio di messaggi per riservare risorse q Se si verificano congestioni: ritardo e perdita di pacchetti v Sono necessari protocolli per il trasferimento affidabile dei dati e per prevenire o controllare la congestione q D: Come ottenere un comportamento circuit-like? v È necessario fornire garanzie di larghezza di banda per le applicazioni audio/video v È ancora un problema irrisolto (cfr. Capitolo 7 – non coperto dal corso) 1-41 Meglio inviare pacchetti lunghi o corti? q Applet: v https://media.pearsoncmg.com/aw/ecs_kurose_compnetwork_7/c w/content/interactiveanimations/message- segmentation/index.html q Discutiamo insieme i risultati 1-42 Struttura di Internet: la rete delle reti q Fondamentalmente gerarchica q Al centro: “ISP di livello 1” (es.: Verizon, Sprint, AT&T, Orange, Deutsche Telekom, Telecom Italia Sparkle, …) v Copertura nazionale/ internazionale v Comunicano tra di loro come “pari” (peer) Gli ISP di livello 1 sono direttamente connessi a ciascuno degli altri ISP di livello ISP di livello 1 1 attraverso il cosiddetto “peering” (“peer” = pari grado) ISP di livello 1 ISP di livello 1 1-43 Struttura di Internet: la rete delle reti q ISP di livello 2: ISP più piccoli (nazionali o distrettuali) v Si può connettere solo ad alcuni ISP di livello 1 v Possibilmente ad altri ISP di livello 2 Può succedere che due ISP siano direttamente interconnessi: Un ISP di livello 2 ISP di livello 2 ISP di livello 2 in questo caso, paga l’ISP di livello 1 anche per essi si che gli fornisce la ISP di livello 1 parla di “peering” connettività per il resto della rete q Un ISP di livello 2 è cliente di un ISP di ISP di livello 1 ISP di livello 1 ISP di livello 2 livello 1 ISP di livello 2 ISP di livello 2 1-44 Struttura di Internet: la rete delle reti q ISP di livello 3 e ISP locali (ISP di accesso) v Reti “ultimo salto” (last hop network), le più vicine ai sistemi terminali ISP locale ISP ISP ISP locale ISP di livello 3 locale locale ISP locali e di ISP di livello 2 ISP di livello 2 livello 3 sono clienti degli ISP di ISP di livello 1 livello superiore che li collegano all’intera Internet ISP di livello 1 ISP di livello 1 ISP di livello 2 ISP ISP di livello 2 ISP di livello 2 locale ISP ISP ISP locale locale locale 1-45 E’ anche più complicato di così… Content provider network (Google, Akamai…) Google’s access network 1-46 Struttura di Internet: la rete delle reti q Un pacchetto passa attraverso molte reti q I percorsi di andata e ritorno tra due host non sono necessariamente gli stessi ISP locale ISP ISP ISP locale ISP di livello 3 locale locale ISP di livello 2 ISP di livello 2 ISP di livello 1 NAP ISP di livello 1 ISP di livello 1 ISP di livello 2 ISP ISP di livello 2 ISP di livello 2 locale ISP ISP ISP locale locale locale 1-47 Struttura di Internet q Core: circa 80 nodi con molte connessioni verso altri nodi q Intorno al core, 5000 nodi con minor connettività, dipendenti dal core q Poi altri 15k con Mappa topologica di Internet connessioni peer tra (2007) - Proceedings of the di loro… etc. National Academy of Sciences 1-48 Struttura di Internet: Accesso, Trasporto, Core OLLA et al.: ENERGY EFFICIENCY IN THE FUTURE INTERNET: A SURVEY OF EXISTING APPROACHES ig. 8. Typical access, metro and core device density and energy requirements in today’s typical netw equirements of access and metro/core networks. 1-49 Collegamenti intercontinentali 1-50 Collegamenti intercontinentali https://submarine-cable-map-2015.telegeography.com/ 1-51 Collegamenti intercontinentali https://submarine-cable-map-2015.telegeography.com/ 1-52 Struttura di Internet - NSFnet 1-53 Struttura di Internet - GEANT Da http://www.geant.org 1-54 Struttura di Internet - GARR Per maggiori informazioni http://www.garr.it/rete/ infrastruttura-di- rete/mappa-della-rete 1-55 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø Sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø Commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-56 Come si verificano ritardi e perdite? I pacchetti si accodano nei buffer (memorie) dei router q Succede quando il tasso di arrivo dei pacchetti sul collegamento eccede la capacità di evaderli del router e dei collegamenti di uscita Pacchetti in attesa di essere trasmessi (ritardo) A B Pacchetti accodati (ritardo) Buffer liberi (disponibili): se non ci sono buffer liberi i pacchetti in arrivo vengono scartati (perdita) 1-57 Quattro cause di ritardo per i pacchetti q 1. Ritardo di elaborazione del nodo: q 2. Ritardo di accodamento v Controllo errori sui bit v Attesa di trasmissione v Determinazione della porta o del canale v Livello di congestione del router di uscita Trasmissione A Propagazione B Elaborazione nel nodo Accodamento 1-58 Ritardo nelle reti a commutazione di pacchetto 3. Ritardo di trasmissione (L/R): 4. Ritardo di propagazione (d/s) q R = frequenza di trasmissione q d = lunghezza del collegamento fisico del collegamento (in bit/s) q s = velocità di propagazione del q L = lunghezza del pacchetto (in bit) collegamento (~2x108 m/s) q Tempo (o ritardo) di trasmissione q Ritardo di propagazione = d/s = L/R Nota s e R sono due quantità molto diverse! Trasmissione A Propagazione B Elaborazione nel nodo Accodamento 1-59 L’analogia del casello autostradale 100 km 100 km 10 auto casello casello in colonna q Le automobili viaggiano q Tempo richiesto al casello per (ossia “si propagano”) trasmettere l’intera colonna alla velocità di 100 km/h sull’autostrada = 12*10 = 120 sec q Il casello serve (ossia “trasmette”) q Tempo richiesto a un’auto per un’auto ogni 12 secondi viaggiare dall’uscita di un casello q Auto~bit; Colonna ~ pacchetto fino al casello successivo: 100km / (100km/h) = 1 hr q D: quanto tempo occorre perché le q R: 62 minuti 10 auto in carovana si trovino di fronte al secondo casello? 1-60 L’analogia del casello autostradale 100 km 100 km 10 auto casello casello in colonna q Sì! Dopo 7 minuti, la prima auto sarà q Le auto ora “si propagano” alla al secondo casello, e tre auto velocità di 1000 km/h saranno ancora in coda davanti al q Al casello adesso occorre 1 min primo casello. per servire ciascuna auto q Il primo bit di un pacchetto può q D: le prime auto arriveranno al arrivare al secondo router prima che secondo casello prima che le il pacchetto sia stato interamente ultime auto della colonna lascino trasmesso dal primo router! il primo? v Si veda l’applet sul sito web: v https://www.ccs- labs.org/teaching/rn/animations/pro pagation/ 1-61 Ritardo di nodo 𝑑!"#$ = 𝑑%&"' + 𝑑()$)$ + 𝑑*&+!, + 𝑑%&"% q dproc = ritardo di elaborazione (processing delay) v in genere pochi microsecondi, o anche meno q dqueue = ritardo di accodamento (queuing delay) v dipende dalla congestione q dtrans = ritardo di trasmissione (transmission delay) v = L/R, significativo sui collegamenti a bassa velocità q dprop = ritardo di propagazione (propagation delay) v da pochi microsecondi a centinaia di millisecond q D: c’è un altro ritardo nascosto non elencato sopra? 1-62 Ritardo di accodamento q R = frequenza di trasmissione (bit/s) q L = lunghezza del pacchetto (bit) q A = tasso medio di arrivo dei pacchetti L*A/R = intensità di traffico q L*A/R ~ 0: poco ritardo q L*A/R → 1: il ritardo si fa consistente q L*A/R > 1: più “lavoro” in arrivo di quanto possa essere effettivamente svolto, ritardo medio infinito! 1-63 Ritardi e percorsi in Internet q Ma cosa significano effettivamente ritardi e perdite nella “vera” Internet? q traceroute: programma diagnostico che fornisce una misura del ritardo dalla sorgente al router lungo i percorsi Internet punto-punto verso la destinazione v Invia tre pacchetti che raggiungeranno il router i sul percorso verso la destinazione v Il router i restituirà i pacchetti al mittente, tipicamente rivelando la sua identità v Il mittente calcola l’intervallo tra trasmissione e risposta 3 invii 3 invii 3 invii 1-64 Ritardi e percorsi in Internet traceroute: da gaia.cs.umass.edu a www.eurecom.fr Tre misure di ritardo da gaia.cs.umass.edu a cs-gw.cs.umass.edu 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms collegamento 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms transoceanico 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * 18 * * * * significa nessuna risposta (risposta persa, il router non risponde) 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms 1-65 Provate traceroute q Fornito con sistemi Linux – comando traceroute q Oppure cercate un servizio di traceroute online v Es. https://ping.eu/traceroute v Oppure https://foss.aueb.gr/network_tools/index.php (traccia rotte che partono dai server della Athens University of Economics and Business verso un indirizzo che dovete inserire voi – provate www.kame.net) q Digitate un indirizzo web e controllate quali salti vi vengono restituiti v Provate anche query “where is 129.250.3.56” su Google 1-66 Perdita di pacchetti q Una coda (detta anche buffer) ha capacità finita q Quando il pacchetto trova la coda piena, viene scartato (e quindi perso) q Il pacchetto perso può essere ritrasmesso v Dal nodo precedente v O dal sistema terminale che lo ha generato q Oppure può non essere ritrasmesso affatto Buffer (area di attesa) Pacchetto che sta per essere trasmesso A B I pacchetti che arrivano in un buffer pieno vanno persi 1-67 Throughput q Throughput: frequenza (dati/unità di tempo) alla quale una certa unità dati viene trasferita tra mittente e ricevente v Instantaneo: in un determinato istante v Medio: in un periodo di tempo più lungo q {Bit, file, pacchetti, …} per {secondo, ora, sessione, …) q Esempio con bit e secondi server, Il server invia bit Tubolink with che capacity può trasportare link Tubo capacity che può trasportare file ofnelF tubo (fluido) bits Rs fluido bits/seca Rc bits/sec fluido a Rs bit/s Rc bit/s 1-68 Throughput (segue) q Rs < Rc Qual è il throughput medio end to end? Rs bit/s Rc bit/s q Rs > Rc Qual è il throughput medio end to end? Rs bit/s Rc bit/s Collo di bottiglia Collegamento su un percorso punto-punto che vincola il throughput end to end 1-69 Throughput: scenario Internet Rs... q Throughput end to Rs Rs end per ciascuna connessione: R min(Rc, Rs, R/10) q In pratica: Rc o Rs Rc Rc sono spesso il collo Rc di bottiglia... 10 collegamenti condividono equamente un link di capacità R bit/s 1-70 Curiosità (P25 cap. 1 del Kurose-Ross) q Due host A e B sono separati da m = 20.000 km e connessi da un link a velocità R = 2 Mbit/s q La velocità di propagazione è c = 2.5$108 m/s 1. Qual è il prodotto tra banda e ritardo (bandwidth-delay product)? 2. Volete mandare un messaggio di 800.000 bit da A a B, inviando tutti i bit uno dopo l’altro in un’unica lunga trasmissione. Quanti bit ci sono sul link in un momento qualsiasi? 3. La risposta precedente è legata alla risposta 1? 1-71 Curiosità (P25 cap. 1 del Kurose-Ross) q Due host A e B sono separati da m = 20.000 km e connessi da un link a velocità R = 2 Mbit/s q La velocità di propagazione è c = 2.5$108 m/s 4. Qual è la lunghezza (in metri) di un bit sul link? 1-72 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-73 Livelli di protocollo Le reti sono complesse! q Molti componenti: v Host Domanda: v Router C’è qualche speranza di v Svariate tipologie di organizzare l’architettura mezzi di trasmissione delle reti? v Applicazioni v Protocolli v Hardware, software O almeno la nostra trattazione sulle reti? 1-74 Organizzazione di un viaggio aereo biglietto (acquisto) biglietto (lamentele) bagaglio (check-in) bagaglio (ritardo) gate (imbarco) gate (uscita) pista di decollo pista di atterraggio rotta aerea rotta aerea rotta aerea q Una serie di passi successivi 1-75 Stratificazione delle funzionalità di una linea aerea ticket (purchase) ticket (complain) biglietto baggage (check) baggage (claim bagaglio gates (load) gates (unload) gate runway (takeoff) runway (land) decollo/atterraggio airplane routing airplane routing airplane routing airplane routing rotta aerea aeroporto centri intermedi aeroporto di partenza di controllo del traffico di arrivo Livelli: ciascun livello realizza un servizio v Effettuando determinate azioni all’interno del livello stesso v Utilizzando i servizi del livello immediatamente inferiore 1-76 Perché la stratificazione? Quando si ha a che fare con sistemi complessi: q Una struttura “esplicita” consente l’identificazione dei vari componenti di un sistema complesso e delle loro inter- relazioni v Analisi del modello di riferimento a strati q La modularizzazione facilita la manutenzione e l’aggiornamento di un sistema v Modifiche implementative al servizio di uno dei livelli risultano trasparenti al resto del sistema v Es.: modifiche nelle procedure effettuate al gate non condizionano il resto del sistema q D: Il modello a strati può essere considerato dannoso? 1-77 Layer q Ogni sistema è composto da sottosistemi q Ogni sotto-sistema è composto da diverse entità, ciascuna delle quali implementa le funzionalità di un layer Sistema A Sistema B Layer più alto Layer N+1 Sottosistema Layer N Layer N-1 (N) - entità Layer più basso Mezzo di trasmissione 1-78 Layer q Ogni layer v Fornisce servizi al layer superiore v Usa I servizi del layer inferiore Le proprie funzionalità q I servizi vengono forniti attraverso i Service Access Points (SAP) 1-79 Servizi q Il layer N+1 sa solo che i layer inferiori offrono il servizio “N” q I layer da N in giù sono una “black box” per le entità al layer N+1 N+1 (N) - service N+1 N (N) – service provider N Black-Box for (N+1) - entities Mezzo di trasmissione 1-80 Service access point q Un servizio del layer N è offerto all’entità di layer N+1 attraverso un’interfaccia di programmazione chiamata Service Access Point (SAP) N+1 entity (N) - SAP (N+1) - layer (N) - layer N entity N entity 1-81 Protocolli q Lo scambio di informazioni tra entità dello stesso layer è regolata da un protocollo System A System B (N+1) - protocol (N+1) - entity (N+1) - entity (N) - protocol (N) - entity (N) - entity 1-82 Stack di protocolli Internet q Applicazione: di supporto alle applicazioni di rete v FTP, SMTP, HTTP, DNS … q Trasporto: trasferimento dei messaggi di livello applicazione applicazione tra il modulo client e server di un’applicazione trasporto v TCP, UDP q Rete: instradamento dei datagrammi dall’origine rete al destinatario v IP, protocolli di instradamento q Link (collegamento): instradamento dei link datagrammi attaverso una serie di commutatori di pacchetto fisico v PPP, Ethernet q Fisico: trasferimento dei singoli bit 1-83 Servizi, Stratificazione ed Incapsulamento M applicazione L’applicazione scambia messaggi per implementare un applicazione servizio applicativo utilizzando servizi dello strato di trasporto trasporto Ht M trasporto Il protocollo di trasporto trasferisce M (es., in maniera affidabile) da un processo ad un altro, usando i servizi dello strato di rete rete rete § Il protocollo di trasporto incapsula il link messaggio dello strato applicazione, M, link con l’header di trasporto Ht per creare un segmento di trasporto fisico Ht è utilizzato dal protocollo di fisico trasporto per implementare il proprio servizio sorgente destinazione Servizi, Stratificazione ed Incapsulamento M applicazione applicazione trasporto Ht M trasporto Il protocollo di trasporto trasferisce M (es., in maniera affidabile) da un processo ad un altro, usando i servizi dello strato di rete rete Hn Ht M rete Il protocollo di rete trasferisce il segmento [Ht | M] da un host ad un altro, usando i servizi dello strato di link link link § Il protocollo di rete incapsula il fisico segmento di trasporto [Ht | M] con fisico l’header di rete Hn per creare un datagramma di rete sorgente Hn viene usato dal protocollo di destinazione rete per implementare il proprio servizio Servizi, Stratificazione ed Incapsulamento M applicazione applicazione trasporto Ht M trasporto rete Hn Ht M rete Il protocollo di rete trasferisce il segmento [Ht | M] da un host ad un altro, usando i servizi dello strato di link link Hl Hn Ht M link Il protocollo di link trasferisce il datagramma [Hn| [Ht |M] da un host all’host vicino, utilizzando i servizi dello fisico strato fisico fisico § Il protocollo di link incapsula il datagramma di rete [Hn| [Ht |M] con sorgente l’header di link Hl per creare un destinazione frame dello strato di link Servizi, Stratificazione ed Incapsulamento M applicazione M applicazione messaggio trasporto Ht M Ht M trasporto segmento rete Hn Ht M Hn Ht M rete datagramma link Hl Hn Ht M Hl Hn Ht M link frame/trama fisico fisico sorgente destinazione Modello di riferimento ISO/OSI q Presentazione: consente alle applicazioni di interpretare il significato dei dati (es. applicazione cifratura, compressione, convenzioni specifiche della macchina) presentazione q Sessione: sincronizzazione, controllo, sessione recupero dei dati trasporto q Lo stack Internet è privo di questi due livelli rete v Questi servizi, se necessario, possono essere implementati nelle applicazioni collegamento v Sono necessari? fisico 1-88 Layer 7: Applicazione (Application) q Fornisce alle applicazioni i mezzi per scambiarsi i dati q Esempi di servizi v World-wide web (HTTP) v Trasferimento file (FTP) v Email (POP3, IMAP, SMTP) v File sharing peer-to-peer (P2P) v Terminale virtuale remoto (SSH) v… q Le data unit di livello 7 si chiamano “messaggi” 1-89 Layer 6: Presentazione (Presentation) q Rappresentazione e codifica/decodifica dei dati q Conversione dati dal formato host (little endian) al formato della rete (big endian) q Criptatura q Spesso integrato con l’applicazione 1-90 Layer 5: Sessione (Session) q Stabilisce e mantiene una sessione di comunicazione tra due entità v Una sessione può essere composta da più connessioni dati che richiedono qualità differenti (es. videochiamata) q Gestisce lo scambio dati in modo che lo si possa interrompere, riprendere, e terminare q Maschera eventuali disconnessioni al layer 4 q Spesso integrato con l’applicazione 1-91 Layer 4: Trasporto (Transport) q Risolve i problemi di qualità del servizio del livello 3 q Segmentazione e ricomposizione dei dati q Multiplexing e demultiplexing di applicazioni q Funzioni principali (non obbligatorie) v Controllo di flusso v Controllo di errore v Riordino dei pacchetti ricevuti q I pacchetti di livello 4 sono chiamati “segmenti” v Più raramente “datagrammi” 1-92 Layer 3: Rete (Network) q Responsabile della consegna di Data Unit tra entità di livello 3 da un host all’altro q Può fornire diversi servizi v Connection-less: reti orientate al datagramma Ogni pacchetto viene instradato indipendentemente v Connection oriented: reti a circuito virtuale Stabiliscono una rotta all’inizio delle operazioni di trasferimento dati, e la mantengono per tutti i pacchetti da trasferire q Funzioni principali v Instradamento pacchetti e inoltro v Controllo di congestion (non obbligatorio) q I pacchetti di livello 3 sono chiamati “pacchetti” o “datagrammi” 1-93 Layer 2: Collegamento (link) q Fornisce funzionalità di trasferimento di Data Unit tra entità di livello 2, e la correzione di errori avvenuti al livello 1 q Comunicazioni punto-punto (“single-hop”) q Funzioni principali: v Multiplexing e demultiplexing di protocolli layer 3 (LLC sublayer) v Controllo e correzione di errori di trasmissione v Medium access control (MAC sublayer) v Affidabilità q I pacchetti di livello 2 sono chiamati “frame” 1-94 Layer 1: Fisico q Trasmette bit sul mezzo di comunicazione v Elettrico v Elettromagnetico v Luminoso v Sonoro q Fornisce i mezzi per creare, mantenere e distruggere connessioni fisiche q Le Data Unit sono bit, o “simboli” (gruppi di bit multipli) q Definisce proprietà come la codifica, livelli di tensione elettrica corrispondenti ai bit, la modulazione… 1-95 Data Units (DUs) q Come si traduce l’esistenza dei layer nella struttura dei dati inviati attraverso i collegamenti di rete? q In un sistema con M layer, i dati da trasmetter costituiscono una «M-SDU» (Service Data Unit di Layer M) v A ciò il layer aggancia la propria M-PCI (Protocol Control Information) v Il risultato è una M-PDU (Protocol Data Unit) v SDU: testo di una lettera PCI: mittente e destinatario q Ogni layer considera la PDU del layer superiore come una «busta chiusa» q La N-PDU del layer N v E’ la (N-1)-SDU del layer N-1 v Preponendo la (N-1)-PCI, diventa la (N-1)-PDU q Al ricevitore, si inverte il processo v Ogni layer rimuove le proprie PCI 1-96 Creare una PDU (N) - PDU Layer N (N-1) - SDU SAP interfaccia (N-1) - PCI (N-1) - SDU Layer N-1 (N-1) - PDU 1-97 Creare una PDU q Scendendo lungo lo stack, la PDU diventa un “sandwich” di dati Header Header Header Header Payload Trailer (N-2)- (N-1)- 1-PCI … PCI PCI N-PCI User data q Le Data Unit possono essere v Assemblate v Segmentate v Ri-assemblate q Assemblare può essere necessario per evitare inefficienze v Attendi che arrivino più pagine per riempire una busta q La segmentazione può aver luogo per l’eccessiva lunghezza dei dati v Spezzare un testo lungo in due pagine, inviare ogni pagina in una busta separata q Il ri-assemblaggio è il processo inverso della segmentazione 1-98 origine messaggio M Applicazione Incapsulamento segmento Ht M Trasporto datagramma Hn Ht M Rete frame Hl Hn Ht M Collegamento Fisico Hl Hn Ht M Collegamento Hl Hn Ht M Fisico switch (commutatore) destinatario Hn Ht M Rete Hn Ht M M Hl Hn Ht M Collegamento Hl Hn Ht M Applicazione Ht M Fisico Trasporto Hn Ht M Rete Hl Hn Ht M Collegamento router Fisico 1-99 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-100 Sicurezza di rete (non tema d’esame) q Il campo della sicurezza di rete si occupa di: v Malintenzionati che attaccano le reti di calcolatori v Come difendere le reti dagli attacchi v Come progettare architetture immuni da attacchi q Internet non fu inizialmente progettato per la sicurezza v Visione originaria: “un gruppo di utenti che si fidavano l’uno dell’altro, collegati ad una rete trasparente” v I progettisti deI protocolli Internet stanno recuperando v Un occhio alla sicurezza in tutti i livelli 1-101 I malintenzionati installano malware negli host attraverso Internet q Il malware può raggiungere gli host attraverso virus, worm, o cavalli di Troia q Malware di spionaggio può registrare quanto viene digitato, i siti visitati e informazioni di upload q Gli host infettati possono essere “arruolati” in botnet, e usati per lo spamming e per gli attacchi di DDoS q Il malware è spesso auto-replicante: da un host infettato può passare ad altri host 1-102 I malintenzionati installano malware negli host attraverso Internet q Cavalli di Troia q Worm: v Parte nascosta di un v L’infezione proviene da un software utile oggetto passivamente ricevuto v Oggi si trova spesso su che si auto-esegue alcune pagine web (non richiede interazione) (Active-X, plugin)... v Auto-replicante: si propaga da solo ad altri host e utenti q Virus Worm Sapphire : scan/secondo aggregati v L’infezione proviene da un nei primi 5 minuti di diffusione (CAIDA, UWisc data) oggetto ricevuto (attachment di e-mail), e mandato in esecuzione (richiede interazione) v Auto-replicante: si propaga da solo ad altri host e utenti 1-103 I malintenzionati attaccano server e infrastrutture di rete q Negazione di servizio (DoS): gli attaccanti fanno sì che le risorse (server, ampiezza di banda) non siano più disponibili per il traffico legittimo, sovraccaricandole di traffico artefatto q Si può distribuire l’attacco (D-DoS) N v D: perché? N N o o o n 1. Selezione dell’obiettivo n è n è è p N p N p o N 2. Irruzione negli host o n o ss o n o ss ss ib o n attraverso la rete è p Nil ib è p ib il il e è pN o oe o e vi oo 3. Invio di pacchetti verso un ss nvi ss obiettivo vi s ssn ib ès ib s u ibè obiettivo da parte degli il e N pu oal Nil oe u al al iz ilp eo N o host compromessi vi s o n ssiz ibz nvi ès iz z N o z ar viss sib n pu è u il ar ar n e uil è N p al oal e è ale p ee o l'i o iz ss iz l'i p izvi o vil'i n m ss 1-104 z ib z m o zs ss sm è m il uib I malintenzionati analizzano i pacchetti Analisi dei pacchetti (packet sniffing): v Media broadcast (Ethernet condivisa, wireless) v Un’interfaccia di rete legge/registra tutti i pacchetti (password comprese, se in chiaro!) che la attraversano A C srg:B dest:A payload B v Wireshark è un packet sniffer 1-105 I malintenzionati usano indirizzi sorgente falsi q IP spoofing: Invio di pacchetti con un indirizzo sorgente falso A C B srg:B dest:A payload 1-106 I malintenzionati registrano e riproducono q Record-and-playback: “Sniffano” dati sensibili (password, ad esempio), per poi utilizzarli in un secondo tempo C A srg:B dest:A utente: B; password: foo B 1-107 Capitolo 1: roadmap 1.1 Cos’è Internet? 1.2 Ai confini della rete Ø sistemi terminali, reti di accesso, collegamenti 1.3 Il nucleo della rete Ø commutazione di circuito e di pacchetto, struttura della rete 1.4 Ritardi, perdite e throughput nelle reti a commutazione di pacchetto 1.5 Livelli di protocollo e loro modelli di servizio 1.6 Reti sotto attacco: la sicurezza 1.7 Storia del computer networking e di Internet 1-108 Storia di Internet (non tema d’esame) 1961-1972: sviluppo della commutazione di pacchetto q 1961: Kleinrock - la teoria delle q 1972: code dimostra l’efficacia v Dimostrazione pubblica di ARPAnet dell’approccio a commutazione di v NCP (Network Control Protocol), primo pacchetto protocollo tra nodi q 1964: Baran - uso della v Primo programma di posta elettronica commutazione di pacchetto nelle v ARPAnet ha 15 nodi reti militari q 1967: il progetto ARPAnet viene concepito dall’Advanced Research Projects Agency q 1969: primo nodo operativo ARPAnet 1-109 Storia di Internet (non tema d’esame) 1972-1980: Internetworking e reti proprietarie q 1970: rete satellitare ALOHAnet Le linee guida di Cerf e Kahn che collega le università delle sull’internetworking: Hawaii v minimalismo, autonomia: q 1974: Cerf e Kahn - architettura per collegare le varie reti per l’interconnessione delle reti non occorrono cambiamenti interni q 1976: Ethernet allo Xerox PARC v modello di servizio q Fine anni ’70: architetture best effort proprietarie: DECnet, SNA, XNA v router stateless q Fine anni ’70: commutazione di v controllo decentralizzato pacchetti: ATM ante-litteram definiscono l’attuale q 1979: ARPAnet ha 200 nodi architettura di Internet 1-110 Storia di Internet (non tema d’esame) 1980-1990: nuovi protocolli, proliferazione delle reti q 1983: rilascio di TCP/IP q nuove reti nazionali: q 1982: definizione del Csnet, BITnet, NSFnet, protocollo SMTP per la Minitel posta elettronica q 100.000 host collegati q 1983: definizione del DNS per la traduzione degli indirizzi IP q 1985: definizione del protocollo FTP q 1988: controllo della congestione TCP 1-111 Storia di Internet (non tema d’esame) 1990-2000: commercializzazione, Web, nuove applicazioni q Primi anni ’90: ARPAnet viene Fine anni ’90 – 2007: dismessa q arrivano le q 1991: NSF lascia decadere le restrizioni sull’uso commerciale di “killer applications”: NSFnet messaggistica istantanea, q Primi anni ’90: il Web condivisione di file P2P v Ipertestualità q sicurezza di rete [Bush 1945, Nelson 1960’s] q 50 milioni di host, oltre 100 v HTML, HTTP: Berners-Lee milioni di utenti v 1994: Mosaic, poi Netscape q velocità nelle dorsali q Fine ’90 : commercializzazione del Web dell’ordine di Gbit/s 1-112 Storia di Internet (non tema d’esame) 2008: 2012: q ~ 500 milioni di host q ~2 miliardi di utenti q Voice, Video over IP q Cloud computing q Applicazioni P2P: BitTorrent q Apps e Social Networks (condivisione di file) Skype q Più dispositivi: smartphone, (VoIP), PPLive (video)... tablet, l’Internet of Things (IoT) q Più applicazioni: YouTube, q Sicurezza e privacy gaming q wireless, mobilità 2020: q 4.39 miliardi di utenti q Internet “sparisce” (IoT) q 5G, Cloud/Fog/MEC q Sicurezza e privacy 1-113 Riassunto Quite a lot of stuff so far J Adesso siete in grado di: q Panoramica di Internet q Contestualizzare, fornire una q Cos’è un protocollo? panoramica sulle reti, avere q Ai confini e nel cuore delle reti un’idea precisa di che cosa si intende per “networking” v Commutazione di pacchetto e q Maggiori approfondimenti e commutazione di circuito dettagli nel seguito v Struttura di Internet q Prestazioni: perdite, ritardo, throughput q Stratificazioni e modelli di servizio q Sicurezza q Cenni storici 1-114

Use Quizgecko on...
Browser
Browser