Network Layer4-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,

Slides:



Advertisements
Presentazioni simili
Prof. Carla Fanchin – L.S. Tron
Advertisements

Indirizzamento LAN e ARP
Elaborazione del Book Informatico
Italo Losero S tray B ytes strane cose succedono nelle reti....
Corso di laurea in INFORMATICA
Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Indirizzamento a classi Alberto Polzonetti
Corso di laurea in INFORMATICA
Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Messaggi di errore e di controllo Alberto Polzonetti
Corso di laurea in INFORMATICA RETI di CALCOLATORI A.A. 2003/2004 Protocollo Internet Alberto Polzonetti
TCP/IP.
4-1 Il Livello di Rete in Internet Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All.
5-1 Interconnessione di LAN Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
4-1 Mobilità in Internet Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
4-1 Il Livello di Rete Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
I modelli di riferimento OSI e TCP/IP
5-1 ATM Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
Routing Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
La rete in dettaglio: rete esterna (edge): applicazioni e host
3-1 User Datagram Protocol: UDP Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All.
4-1 Multicast Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
Come programmare servizi di rete?
La rete del futuro nellautonomia scolastica Sezione propedeutica I fondamentali e concetti di TCP/IP.
Reti di Calcolatori Domande di riepilogo Quarta Esercitazione
Programmazione su Reti
PPPoE significa "Point-to-Point Protocol over Ethernet" ovvero "protocollo punto a punto operante su Ethernet", una nuova alternativa per le connessioni.
Reti di Calcolatori II Prof. Stefano Leonardi
Internet Control Message Protocol rfc. Error Reporting Testing di affidabilità Controllo di congestione Notifica di route-change Misurazione di performance.
1 Protocollo di comunicazione. 2 Reti eterogenee.
Routing Gerarchico Gli algoritmi proposti non sono pratici:
RETI E INTERNET.
Reti di Calcolatori IL LIVELLO RETE.
Concetti introduttivi
Reti di Calcolatori IL LIVELLO RETE.
Corso di Laurea in Ingegneria Gestionale
ICMP - PING - TRACEROUTE
Corso di Informatica per Giurisprudenza Lezione 7
La sicurezza può essere fornita in ciascuno degli strati: applicazione, trasporto, rete. Quando la sicurezza è fornita per uno specifico protocollo dello.
Realizzato da Roberto Savino 3-1 Il livello di trasporto r Dobbiamo assumere di avere a che fare con un canale di comunicazione molto particolare 1. Inaffidabile.
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
Gestione Informatica dei Dati Aziendali
Realizzato da Roberto Savino Codice di avviamento postale PROVINCIA (CZ) REGIONE (CALABRIA) REGIONE (SICILIA) PROVINCIA (CS)
AICA Corso IT Administrator: modulo 4 AICA © EUCIP IT Administrator Modulo 4 - Uso Esperto della Rete Risoluzione dei Problemi e Analisi del Traffico.
Indirizzamento-routing-sottoreti
Modulo 2 - U.D. 3 - L.4 Ernesto Damiani - Sistemi di eleborazione dell'informazione.
Introduzione al controllo derrore. Introduzione Quando dei dati vengono scambiati tra due host, può accadere che il segnale venga alterato. Il controllo.
Modulo n – U.D. n – Lez. n Nome Cognome – titolo corso.
TCP/IP.
Le reti di calcolatori ©Apogeo 2004.
TCP/IP.
L’architettura a strati
Indirizzi IP e Subnet mask
Computer Networks Internet Protocol
Internetworking – Subnet e Supernet
Greco Rodolfo 2002 Application Trasport Network Phisic HTTP IP UDPTCP DNS SNAP MAC ARP L’utente fa una richiesta di pagina.
1: Introduction1 Stratificazione protocollare (Protocol “Layering”) Le reti sono complesse! r Molti elementi: m host m router m link fisici dalle caratteristiche.
Consuntivo corso Reti diCalcolatori Reti di Calcolatori (F1I063) Docente Luigi Vetrano Durata Ore di lezione56 di cui, ore di.
1 Luigi Vetrano Esercitazione di Reti di Calcolatori A.A
Reti II Stefano Leonardi
Sistemi di elaborazione dell’informazione Modulo 2 -Protocolli di rete TCP/IP Unità didattica 3 -Instradamento statico Ernesto Damiani Lezione 2 – ICMP.
Lezione 17 Transizione IPV4 -> IPV6 Corso di Reti di calcolatori
Software di Packet-Filtering e Port-Filtering su reti TCP/IP Come filtrare il traffico di rete in transito sulle interfacce presenti, frapponendosi tra.
Corso "RouterOS in Pratica"
Applicazione Presentazione Sessione Trasporto Rete Data link Fisico OSI Processo / Applicazione Trasporto Rete- Internet Interfaccia di.
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
Sezione propedeutica I fondamentali e concetti di TCP/IP.
II PROVA Svolgimento tramite protocollo ISO/OSI. I LIVELLO : LIVELLO FISICO Scelta del mezzo fisico; tenere conto degli standard IEEE Procedura di codifica.
Ing. L. A. Grieco DEE – Telematics Lab. 1 Internet Protocol (IP) – Telematica I – - I Facoltà di Ingegneria – CdL in Ingegneria Informatica.
Slide #: 1/232 Internet - Architettura, principali protocolli e linee evolutive Nicola Blefari Melazzi Copyright © 2005 – The McGraw-Hill Companies srl.
Chapter 4 Network Layer A note on the use of these ppt slides:
Il Livello di Trasporto
Transcript della presentazione:

Network Layer4-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July A note on the use of these ppt slides: We’re making these slides freely available to all (faculty, students, readers). They’re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following:  If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!)  If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. Thanks and enjoy! JFK/KWR All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

Network Layer4-2 Dove siamo? application transport network link physical P1 application transport network link physical application transport network link physical P3 P4 host 1 Router host 2 = process= socket = TCP IP interface

Network Layer4-3 Lo strato di rete r trasporta i segmenti da mittente a destinatario r i segmenti TCP vengono spezzettati (se necessario) in datagrammi IP alla partenza r dall’altro avviene la ricomposizione e la consegna allo strato superiore r Ogni nodo intermedio interviene solo a livello di rete r I router guardano dentro i datagrammi e decidono cosa farne r Primitive fornite: send() e receive() network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical application transport network data link physical

Network Layer4-4 Modello di servizio Q: Che caratteristiche fornisce questo strato al livello superiore (Trasporto)? Architettura IP Modello di servizio best effort Banda no Perdita no Ordine no Timing no Controllo congestione no Garanzie ?

Network Layer4-5 Funzionalità di questo strato r forwarding: inoltro dei pacchetti non direttamente destinati all’host in cui ci si trova r routing: determinazione del percorso completo da sorgente a destinazione m Esempio di forwarding Forwarding Forwarding m Algoritmi di routing analogia: r routing: processo di pianificare un viaggio completo da sorgente a destinazione r forwarding: atto di prendere una singola coincidenza aerea

Network Layer4-6 Funzioni di un router r Fa girare algoritmi di routing (RIP, OSPF, BGP) r Inoltra i datagrammi in base alla sua tabella di routing corrente

Network Layer4-7 Code di input Routing decentrato: r dalla tabella, il router deduce dove inoltrare il pacchetto r obiettivo: non compromettere la banda r accodamento: nel caso in cui i datagrammi arrivino più velocemente rispetto a quanti se ne possono processare Livello fisico: ricezione di bit Livello data-line: es. Ethernet, collegamento diretto PPP

Network Layer4-8 Code di output r Buffering richiesto se arrivano più datagrammi di quanti ne possano partire r Scheduling: è possibile in teoria dare priorità a determinati pacchetti.

Network Layer4-9 Perchè le perdite di pacchetti? r Le code sono necessarie per regolare i flussi r Head-of-the-Line (HOL) blocking: le code possono congestionarsi a vicenda r Le perdite sono dovute a code che si riempiono totalmente! PerditePerdite

Network Layer4-10 Il protocollo IP forwarding table Host, router network layer functions: Protocolli di route path selection RIP, OSPF, BGP IP protocol indirizzi formato datagrammi sottoreti e maschere ICMP protocol segnala errori dialogo routers Livello trasporto: TCP, UDP Livello Data Link Livello Fisico Network layer

Network Layer4-11 Formato di un datagramma ver length 32 bits DATI (lunghezza variab., tipicamente un pacchetto TCP o UDP) 16-bit identifier Internet checksum time to live 32 bit source IP address Numero di versione lunghezza intestazione (bytes) numero massimo di hops attraversabili (diminuito di 1 a ogni salto) per gestire la frammentazione Lung. totale datagramma (bytes) codice del protocollo di liv. superiore veicolato head. len type of service “tipo” dei dati flgs fragment offset upper layer 32 bit destination IP address Options (if any) Es. lista dei Possibili routers ecc. ecc. Quanto overhead con TCP/IP? r 20 bytes di TCP r 20 bytes di IP r = 40 bytes + overhead appl.

Network Layer4-12 Frammentazione r Ogni link ha una sua MTU (max.transfer unit). m tipi di link differenti, hanno differenti MTU r I datagrammi vengono spezzettati da un link a un altro m 1 datagramma diviso in più datagrammi m riassemblato solo a destinazione m I bit di controllo dell’intestazione ci dicono come riassemblare un datagramma frammentazione: in: 1 datagramma grande out: 3 datagrammi piccoli reassembly

Network Layer4-13 Riassemblaggio ID =x offset =0 fragflag =0 length =4000 ID =x offset =0 fragflag =1 length =1500 ID =x offset =185 fragflag =1 length =1500 ID =x offset =370 fragflag =0 length =1060 Spezzettato! Esempio r datagramma da 4000 byte r MTU = 1500 bytes 1480 bytes in data field offset = 1480/8

Network Layer4-14 Indirizzamento r IP address: un indirizzo a 32 bit per ogni interfaccia r interfaccia: connessione verso un altro host, router. DIRETTA. m I router hanno di solito più interfacce m gli host ne hanno di solito una attiva, ma spesso anche di più =

Network Layer4-15 Sottoreti r Indirizzo IP m Parte sottorete (high order bits) m Parte numero di host (low order bits) r Cos’è una sottorete ? m un insieme di host/interfacce che hanno lo stesso identificativo di subnet m Le sottoreti di livello più basso normalmente possono interfacciarsi tra di loro senza fare uso di un router (usando il link diretto, o il protocollo di livello 2) network consisting of 3 subnets subnet

Network Layer4-16 Sottoreti / / /24 Ricetta r Per determinare le sottoreti di livello più basso, ogni interfaccia viene distaccata dal router. r Si creano poi delle “bolle” di sottoreti isolate. Ogni sottorete di livello più basso è detta “dominio di collisione”. Maschera di sottorete: /24

Network Layer4-17 Domini di col. Quanti?

Network Layer4-18 Modalità di assegnazione CIDR: Classless InterDomain Routing m L’identificativo di sottorete può essere di lunghezza arbitraria (da 1 a 31 bit) m Formato indirizzo: a.b.c.d/x, dove x è il numero di bit che costituiscono l’identificativo di sottorete ID di subnet numero host /23

Network Layer4-19 Come farsi assegnare un indirizzo IP? r Fissato staticamente m Windows: Connessioni di rete->Proprietà->TCP/IP -> Proprietà. ipconfig m Linux: /etc/network... (dipende dalla distr.) ifconfig r DHCP: Dynamic Host Configuration Protocol: m Ottiene un indirizzo “usa e getta” (validità limitata nel tempo) da un server. m Chiaramente, non avendo l’host ancora un indirizzo IP valido, DHCP non può essere basato su TCP/IP, ma si appoggia direttamente sui protocolli di livello 2

Network Layer4-20 Assegnazione degli IP Normalmente c’è un ISP (Internet Service Provider) che si occupa di distribuire i numeri alle sue sottoreti Esempio: UNICAL /16 DEIS /24 Matematica /24 Matematica /25 Labmat /25 …....

Network Layer4-21 Indirizzamento gerarchico: aggregazione per gruppi di indirizzi Riceve tutto quello che inizia per / / / /23 Fly-By-Night-ISP Organization 0 Organization 7 Internet Organization 1 ISPs-R-Us Riceve tutto quello che inizia per / /23 Organization Le tabelle di forwarding non hanno un rigo per ogni IP, ma per ogni sottorete: questo consente una più efficiente gestione delle tabelle

Network Layer4-22 Indirizzamento D: Ma come fa un ISP ad avere degli indirizzi? R: ICANN: Internet Corporation for Assigned Names and Numbers m Alloca gli indirizzi m Gestisce i DNS top level m Risolve le dispute e assegna i domini

r x.x m x m x Network Layer4-23

Network Layer4-24 ICMP r E’ un protocollo senza numero di porta r I suoi pacchetti vengono intercettati e processati prima di essere smistati a un socket r Ping fa uso di ICMP, per misurare il round trip time, ma anche, in teoria, per controllare altri parametri di TCP. E’ un protocollo di servizio r I pacchetti ICMP contengono un codice messaggio, una checksum ed eventuali dati.

Network Layer4-25 NAT: Network Address Translation rete locale (es., rete casalinga) /24 resto di Internet Internamente i datagrammi vengono scambiati usando gli indirizzi locali del tipo /24 Il router RISCRIVE i pacchetti! Tutti i datagrammi in uscita dalla rete locale hanno lo stesso indirizzo sorgente NAT: , ma possono avere numeri di porta sorgente differenti

Network Layer4-26 NAT: Network Address Translation r Motivazione: la rete locale usa un solo IP per comunicare con l’esterno: m non è più necessario richiedere un IP per ogni host collegato m posso cambiare gli indirizzi interni senza che il mondo esterno ne risenta m posso cambiare ISP senza dover cambiare gli IP di tutte le macchine m è una prima forma di firewalling: i dispositivi interni non sono direttamente raggiungibili ( oppure non sono indirizzi validi all’esterno).

Network Layer4-27 NAT: Network Address Translation S: , 3345 D: , : l’host manda datagramma a , 80 NAT translation table WAN side addr LAN side addr , , 3345 …… S: , 80 D: , S: , 5001 D: , : Il router NAT cambia i datagrammi uscenti da , 3345 a , 5001, e aggiorna la tabella S: , 80 D: , : Arriva risposta destinata a: , : Il router NAT cambia l’indirizzo e porta di destinazione , 5001 to , 3345

Network Layer4-28 NAT: Network Address Translation Implementazione: Un router NAT deve: m datagrammi uscenti: cambiare IP sorgente, numero di porta con (Indirizzo router NAT, nuovo num. di porta) i client remoti rispondono credendo di avere a che fare con una connessione aperta su (Indirizzo router NAT, nuovo num. di porta) m ricordare (in una tabella speciale detta NAT translation table) ogni coppia (indirizzo interno, porta) (nuova porta) m datagrammi entranti: cambiare (Indirizzo router NAT, nuova porta) nei campi destinazione in base alla tabella di traduzione

Network Layer4-29 NAT: Network Address Translation r Non più di 16 bit per indicare il num di porta: m Tutta la sottorete può usare al più porte simultaneamente r NAT è un meccanismo ibrido: m I router dovrebbero solo veicolare i protocolli di livello 4 (trasporto) m I P2P soffrono. In generale ci può essere un solo server su ogni porta (e.g. un solo server web su porta 80, ecc.) m Risolve temporaneamente il problema dei pochi indirizzi

Network Layer4-30 Port Forwarding S: , 80 D: , : l’host manda datagramma a , 501 NAT forwarding table WAN side addr LAN side addr , , 80 …… S: , 501 D: , 80 2 S: , 80 D: , : Il router NAT cambia i datagrammi uscenti da , 80 a , 80 S: , 501 D: , : Arriva richiesta destinata a: , 80 2: Il router NAT cambia l’INDIRIZZO di destinazione a Questa tabella è fissata manualmente. Il server interno deve avere IP FISSATO.

NAT e connessioni P2P r Considerate due peer, Alice e Bob r Alice e Bob fuori NAT (con IP pubblico): m Possono aprire liberamente connessioni reciproche r Alice e Bob dentro NAT (senza IP pubblico o Port Forwarding): m I due non possono aprire una mutua connessione TCP, né dialogare direttamente via UDP r Alice dentro NAT, Bob fuori NAT m Alice può aprire connessioni verso Bob, non viceversa (ma Bob può usare il “callback” via server) r Possibilità di NAT traversal m (e.g. STUN+ICE) Network Layer4-31

Network Layer4-32 Indirizzi Broadcast e altri indirizzi speciali r x.x – 10.x.x.x m Sono indirizzi riservati a reti locali. Impossibile usarli pubblicamente. r Tutti i bit riservati al numero host posti a 1: m Broadcast nella sottorete di appartenenza! m es /24 ha indirizzo broadcast m Ping raggiunge tutti.

Network Layer4-33 Alcune falle di sicurezza r Attacchi broadcast: m Fingere di avere l’IP della vittima (IP spoof) m Mandare dei ping broadcast a suo nome m Le risposte raggiungono la vittima e non l’aggressore m Necessità delle condizioni adatte (di solito l’aggressore sta fisicamente nella stessa sottorete della vittima) Aggressore IP falso: Rete Vittima IP: Ignari host della sottorete

Network Layer4-34 Alcune falle di sicurezza r Man-in-the-middle m Interporsi tra la vittima e il resto del mondo m Funzionamento simile a un router NAT m Deve interporsi fra il mondo e la vittima: un router potrebbe farlo, ma ci sono altre condizioni in cui si può fare man-in-the-middle (ARP spoofing) Vittima Aggressore Dati per Dati da (ma apparentemente da ) Dati per (modificati) Dati da (ma apparentemente da )