4 livello ip parte1 color
TRANSCRIPT
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.1
PARTE 4
LIVELLO IP
(La �dorsale� di Internet)
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.2
Modulo 1:
Importanza del livello IP
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.3Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Suite di protocolli TCP/IP
Host-to-
network
Transport
Application
Applicativi di rete
Network(IP) INTERNET
4.3
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.4Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Il successo continuo
e costante di Internet
Numero di host collegati ad Internet 1969 41979 2001989 100.000Gennaio 1993 1.313.000Gennaio 1994 2.217.000Gennaio 1995 4.852.000Gennaio 1996 9.472.000Gennaio 1997 16.146.000Gennaio 1998 29.670.000Gennaio 1999 43.230.000Gennaio 2000 72.340.000Gennaio 2001 109.574.000Gennaio 2002 147.344.000 Gennaio 2003 171.638.000Gennaio 2004 233.101.000 Gennaio 2005 317.646.000Gennaio 2006 394.992.000Gennaio 2007 433.194.000Gennaio 2008 541.677.000Gennaio 2009 625.226.000
Tutti gli host collegati ad
Internet devono essere
�identificati� in modo univoco
Fonte: www.isc.org
4.4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.5Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Il numero di host in Internet
4.5
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.6Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Funzioni del livello network
1. Si definisce l�unità di trasferimento dati� Definisce l�unità informativa utilizzata da Internet per trasferire dati
� datagram (da 64 a 1500 byte)
2. Si garantisce l�indirizzamento univoco degli host� Tutti gli host collegati a Internet devono essere identificati ed in
modo esclusivo � indirizzo IP
3. Si chiarisce l�architettura di Internet� Definisce i componenti fondamentali di una rete distribuita su scala
geografica � router, Autonomous Systems
4. Si illustrano le diverse funzioni di routing� Gli algoritmi di routing determinano il percorso nell�ambito di una
rete geografica attraverso il quale si consegnano i datagram� Caratteristica best-effort: la consegna dei datagram è non affidabile
4.6
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.7Protocolli e Architetture di Rete 2009/2010 � Livello Internet
NOTA: altri tipi di protocolli
� Non tutti i protocolli operanti a livello �network�
forniscono un servizio di consegna di pacchetti non
affidabile
� Ad esempio, vi sono vari protocolli (usati nell�ambito delle
telecomunicazioni) che forniscono un �circuito virtuale� tra
mittente e destinatario anche a livello �network�:
� X.25 (praticamente estinto)
� Frame Relay (popolare in Europa negli anni �90, ora in declino)
� ATM (Asynchronous Transfer Mode, in declino anch�esso)
Internet: livello network connection-less
Telefonia: livello network connection-oriented4.7
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.8
Modulo 2:
Packet switching vs
Circuit switching
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.9Protocolli e Architetture di Rete 2009/2010 � Livello Internet
La prima idea rivoluzionaria:Packet switching
� 1961: Kleinrock mediante la teoria delle reti di
code dimostra l�efficacia delle comunicazioni
packet- switching
� Per tutti gli anni �60 (e molti anche in seguito�), gli �esperti� di telecomunicazioni, sostenitori delle comunicazioni circuit-switching, sentenziavano �It will never work�
[da �La storia di Internet scritta da coloro che l�hanno creata�, 1997]
4.9
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.10Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Due modalità per trasferire dati
� Circuit switching� Un circuito virtuale dedicato per ogni comunicazione
� Packet switching
� I dati sono suddivisi in �parti� ed inviati attraverso la rete
� L�idea alla base di Internet
� L�idea alla base del sistema telefonico
4.10
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.11Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Circuit switching
� Necessità di riservare tutte le risorse
(link e switch) end-to-end prima di
trasmettere
� Avere risorse dedicate
� CONTRO� Non c�è possibilità di condividere le risorse assegnate
� Necessaria una fase di setup per ogni chiamata
� PRO� Prestazioni garantite rispetto alla tipologia di risorse riservate
4.11
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.12Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Multiplexing
� Il multiplexing (condivisione) di risorse è
indispensabile per ottimizzare il loro utilizzo
Deterministico nel circuit switching: � Time-Division Multiplexing (TDM)
� Frequency-Division Multiplexing (FDM)
Probabilistico nel packet switching
L1
L2
L3
R1
R2
R3Switch 1 Switch 2
4.12
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.13Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Multiplexing nel circuit switching
Anche nel circuit switching lerisorse di rete (per es., la banda)non sono completamentededicate, ma suddivise in �parti�� Le parti sono assegnate alle
chiamate� Le parti di risorse, riservate per una
chiamata, non sono utilizzabili da altre anche se non sono utilizzabili dalla chiamata che le possiede (non c�è possibilità di condivisione)
� Vi sono due metodi per suddividere la risorsa (link):� Metodi basati sulla frequenza
(FDM)
� Metodi basati sul tempo (TDM)
(Frequency Division Multiplexing)
(Time Division Multiplexing)
4.13
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.14Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Packet switching
Ogni comunicazione è suddivisa in pacchetti
� I pacchetti condividono le risorse della rete
� Ogni pacchetto utilizza tutta la capacità trasmissiva di un link
� Le risorse sono utilizzate sulla base della necessità e
non della prenotazione
Prenotazione delle risorse
Assegnamento esclusivo
Divisione della banda in parti
4.14
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.15Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Multiplexing statistico del packet switching
� Si può dire che il packet switching segua un principio di multiplexing statistico a suddivisione di tempo, ma su richiesta invece che a intervalli prefissati (come nel caso del TDM del circuit switching)
� Pacchetti provenienti da diverse sorgenti sono �mescolati� sullo stesso link
� Poiché non c�è garanzia di avere una risorsa disponibile, ci può essere conflitto
� I pacchetti in conflitto per lo stesso link sono inseriti in un buffer del router
�Analogia del ristorante�� Circuit switching = con prenotazione del tavolo� Packet switching = senza prenotazione
4.15
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.16Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Gestione del conflitto
� Si bufferizzano i pacchetti in conflitto per lo stesso link
� Il buffer determina in pratica una coda di pacchetti che può essere processata in ordine FIFO (First-In-First-Out), ma non necessariamente (es., in base alla priorità)
� Congestione = riempimento del buffer
�
buffer
destin.
sorg.
sorg.
sorg.
4.16
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.17Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Trasmissioni e conflittinel packet switching
Comunicazione store and forward:
(i pacchetti si muovono di un hop alla volta)1. trasmessi su un link, arrivano ad un router2. aspettano (presso il router), il loro turno per poter essere
trasmessi sul successivo
Conflitto di risorse
� La domanda aggregata di risorse può eccedere la quantità disponibile
� Non essendoci prenotazione, si possono creare congestioni (impreviste):� i pacchetti rimangono accodati (se c�è spazio) in attesa di poter utilizzare il
link
� Se la coda è piena, il pacchetto viene perduto (senza avvisi!)
� Possibilità di utilizzare un link differente a seconda dello stato della rete4.17
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.18Protocolli e Architetture di Rete 2009/2010 � Livello Internet
PRO: � C�è condivisione di risorse� Non c�è la necessità di prenotare risorse end-to-end� Il packet switching è ottimo per dati che arrivano in
gruppi
CONTRO: Rischi di congestione
� Ci possono essere ritardi e perdita di pacchetti � Oltre al livello IP, sarà necessario un protocollo che
garantisca almeno le seguenti due proprietà:� Trasferimento dei dati affidabile (in grado di capire se c�è
perdita di pacchetti e in grado di provvedere)
� Controllo della congestione
Packet switching: pro e contro
4.18
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.19Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Packet switching
A
B
C
D E
C o d a d i p a c c h e tti
in a tte s a d e l lin k
d i u s c ita
Invia messaggiocomposto da 4 pacchetti
Invia messaggiocomposto da 8 pacchetti
4.19
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.20Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Metrica di prestazione
� Bandwidth (banda di trasmissione): quantità di
dati trasmessi per unità di tempo
Tipicamente:� Unità di tempo = secondo
� Quantità di dati trasmessi = multipli di bit
� Quindi, metriche tipiche sono:� Kbps o Kbit/s � Kilo-bit per secondo
� Mbps o Mbit/s � Megabit per secondo
� Gbps o Gbit/s � Gigabit per secondo
[Notare la b minuscola]
4.20
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.21Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Vantaggi del packet switching
Esempio� Link a 1 Mbps� Ciascun utente richiede 0.1 Mbps quando
trasmette, ed è attivo il 10% del tempo
� Circuit switching: può supportare al più 10 utenti� Packet switching: con 35 utenti, la probabilità
che più di 10 utenti trasmettano contemporaneamente è bassissima (0.0004), quindi è possibile far comunicare 35 utenti sulla stessa linea con minimi rischi di conflitti
4.21
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.22
Modulo 3:
Servizi del livello IP
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.23Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Servizi principali del protocollo IP
1. Indirizzamento univoco degli host: offre un grafo virtualmente completo tra tutti gli host (indirizzi IP)
2. Unità di trasferimento dati: definisce l�unità base di informazione utilizzata da Internet per trasferire dati
3. Funzione di routing: sceglie il percorso nella rete attraverso il quale consegnare i pacchetti
4. Caratteristica: consegna non affidabile dei pacchetti:
� Consegna priva di connessione: ogni pacchetto (anche tra stessi host) è trattato in modo indipendente da tutti gli altri
� Consegna con impegno (best effort): tentativo di consegnare ogni pacchetto (possibili inaffidabilità derivanti da congestione della rete o guasto dei nodi)
� Consegna non garantita: i pacchetti possono essere persi, duplicati, ritardati, o consegnati senza ordine
4.23
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.24Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Unità di trasferimento dati: datagram
Layout dell�Internet datagram (IP datagram)
Indirizzo sorgenteIndirizzo destinazione
Payload(dati)
Header deldatagram
Dati deldatagram
Tutto il traffico Internet consiste di pacchetti. Ciascun pacchetto è lungo fino a 64 Kbyte
4.24
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.25Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Esempi di datagrammi
209.101.56.122207.85.155.125
�Elenco UniversitàItaliane�
207.85.155.125209.101.56.122
�84 matches found�Match 1: �Match 2: �
Sorg.Dest.
4.25
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.26Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Formato del datagramma IP
VERS HLEN SERVICE TYPE TOTAL LENGTH
IDENTIFICATION FRAGMENT OFFSET
HEADER CHECKSUM
DATI
. . .
PADDINGIP OPTIONS
TIME TO LIVE PROTOCOL
SOURCE IP ADDRESS (32 bit)
DESTINATION IP ADDRESS (32 bit)
0 4 8 16 19 24 31 bit
FLAGS
4.26
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.27Protocolli e Architetture di Rete 2009/2010 � Livello Internet
� VERS: versione del protocollo IP usata per creare il datagram (4 bit)
� HLEN: lunghezza dell�header del datagram (in parole di 32 bit); in generale uguale a 5 (20 byte)
� TOTAL LENGTH: lunghezza del datagram IP (in byte); max dimensione 216 = 65536 byte (64 Kbyte)
� TYPE OF SERVICE (TOS): specifica come si richiede che sia trattato il datagram (di uso recente):
PRECEDENCE D T R NON USATI
0 1 2 3 4 5 6 7
PRECEDENCE: specifica l�importanza del datagram
D (delay): basso ritardo
T (throughput): alto throughput tipo di trasporto desiderato
R (reliability): alta affidabilità
Analisi header del datagramma IP (1)
4.27
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.28Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Analisi header del datagramma IP (2)
� I successivi tre campi dell�header del datagram (denotati in figura come identification, flags, fragment offset) servono per gestire, quando si rende necessaria, a livello H2N, la frammentazione e la ricostruzione del datagram
� IDENTIFICATION: intero che identifica il datagram
� FLAGS: controllo della frammentazione
� FRAGMENT OFFSET: la posizione del frammento nel
datagram originale
4.28
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.29Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Analisi header del datagramma IP (3)
� TIME TO LIVE: non è un vero valore temporale! Indica per quanto tempo il datagram può circolare in Internet. E� decrementato da ciascun router che gestisce il datagram: quando diviene uguale a 0, è eliminato dal router corrispondente
� PROTOCOL: indica quale protocollo applicativo può utilizzare i dati contenuti nel datagram
� HEADER CHECKSUM: serve per controllare l�integrità dei dati trasportati nell�header
� SOURCE IP ADDRESS: indirizzo IP (32 bit) del mittente del datagram
� DESTINATION IP ADDRESS: indirizzo IP (32 bit) del destinatario del datagram
� IP OPTIONS: campo opzionale di lunghezza variabile; serve per il testing ed il debugging della rete
� PADDING: campo opzionale che serve per fare in modo che l�header abbia lunghezza multipla di 32 bit (byte stuffing); è presente soltanto se il campo IP OPTIONS denota una lunghezza variabile
4.29
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.30
Modulo 4:
Indirizzamento
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.31Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Indirizzi IP
� Per fornire un servizio di comunicazione universale (ogni nodo della rete può comunicare con ciascun altro nodo) occorre un metodo che permetta di identificare univocamente ogni nodo� A ogni nodo è assegnato un unico indirizzo Internet
(indirizzo IP) formato da 32 bit → 232 ≅ 4,3 miliardi di indirizzi diversi
� L�indirizzo IP (32 bit) è suddiviso in 4 campi:� Ciascun campo è formato da un byte (8 bit)� E� separato da un punto (notazione decimale puntata o
dotted notation)� Esempio: 130.192.5.189
4.31
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.32Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Possibili scelte progettuali
� Lunghezza indirizzi IP
� lunghezza fissa
� lunghezza variabile� Vantaggi a livello di flessibilità, ma maggiori costi nella
gestione dei pacchetti e del routing
� Spazio di indirizzamento
� Gerarchico (strutturato)
� Flat
4.32
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.33Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Gerarchie delle aree di Internet
Backbone (dorsali)
Regional (nazioni)
LAN
4.33
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.34Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Componenti dell�indirizzo IP
Ogni indirizzo IP è strutturato in una coppia:
<netid, hostid>
dove netid (o prefisso di rete) identifica la rete
e hostid identifica un host di quella rete
Gli host che si trovano sulla stessa rete condividono
lo stesso network ID, ovvero la stessa parte a sinistra dell�indirizzo IP
4.34
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.35Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Suddivisione in classi
� Possibili scelte �iniziali�:� Un byte dedicato al netid, tre byte all�hostid
� Due byte dedicati al netid, due byte all�hostid
� Tre byte dedicati al netid, un byte all�hostid
4.35
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.36Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Classi di indirizzi IP
� 3 classi utilizzabili per l�indirizzamento di host (classe A, classe B, classe C), più 1 classe per multicast address (classe D), più 1 classe riservata (classe E)� La quantità di bit destinati al prefisso di rete dipende dalla classe
cui l�indirizzo appartiene
� La classe è codificata dai bit più significativi dell�indirizzo
da 224.0.0.0a 239.255.255.255
0 n e tid h o s tid
1 0
1 1 0 n e tid h o s tid
1 1 1 0
A
B
C
D
Cla
sse
da 0.1.0.0 a 127.255.255.255
da 128.0.0.0 a 191.255.255.255
da 192.0.0.0a 223.255.255.255
3 2 b it
h o s tidn e tid
in d ir izzi p e r m u ltic a s t
da 240.0.0.0a 255.255.255.254
1 1 1 1 1E r is e r v a ti p e r e s p e r im e n ti
4.36
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.37Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Dimensioni delle classi di indirizzi
� Classe A
� 128 (2^7) possibili network ID
� Oltre 16 milioni di host ID per ciascun network ID
� Classe B
� 16K =16384 (2^14) possibili network ID
� 64K = 65536 (2^16) host ID
� Classe C
� Oltre 2 milioni (2^21) di possibili network ID
� 256 (2^8) host ID
4.37
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.38
Chi possiede indirizzi Classe A
� IANA
� General Electric
� Level 3 Communications
� Army Information Systems Center
� IBM
� DoD
� AT&T Bell Laboratories
� Xerox Corporation
� Hewlett-Packard Company
� Digital Equipment Corporation
� Apple Computer Inc.
� Ford Motor Company
� �
Protocolli e Architetture di Rete 2009/2010 � Livello Internet
� Japan Inet
� Bell-Northern Research
� Prudential Securities
� Army Information Systems Center
� Deparment Social Security (UK)
� APNIC
� DoD Network Information Center
� US Postal Service
� UK Ministry of Defence
� AfriNIC
� ARIN
� �
4.38
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.39Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Gestione indirizzi e domini (dal 1986)
� Il governo USA creò la Internet Assigned
Numbers Authority (IANA), in pratica il gruppo
di Jon Postel, per gestire le assegnazioni di gruppi di indirizzi
� �IANA è nata con Jon Postel, era Jon Postel� (in qualche modo �muore� con lui)
4.39
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.40Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Jon Postel [1943-1998]
� Autore degli RFC 791-793 (Internet Protocol standard)
� Autore di oltre 200 RFC� Verificatore degli standard� Definito lo �Zar dei numeri�
� Curatore delle well known port dei protocolli
� Editor degli RFC� Direttore di IANA
� Bellissimo RFC2468 scritto in sua memoria da Vint Cerf
� �Be conservative in what you do, be liberal in what you accept from others�
4.40
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.41Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Gestione di Internet
� Struttura estremamente decentralizzata in cui esiste soltanto un coordinamento molto lasco a livello di:� definizione ed accettazione degli standard� distribuzione della documentazione� assegnamento degli indirizzi e dei nomi
� La giurisdizione sugli IP number era della IANA (Internet Assigned Number Authority)
� La distribuzione era effettuata da INTERNIC (Internet Network Information Center)
� A livello locale, gli indirizzi si ottenevano da un provider che aveva a disposizione degli insiemi su delega di INTERNIC
� Per la ricerca scientifica italiana (Università e centri di ricerca) l�organo di riferimento era ed è il GARR
4.41
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.42Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Dal 1998
� Il Governo statunitense riconosce l�autorità della Internet Corporation for Assigned Names and
Numbers (ICANN) internazionale:
4.42
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.43Protocolli e Architetture di Rete 2009/2010 � Livello Internet
IANA � ICANN
� IANA è adesso sotto il controllo formale di ICANN
� ICANN incorpora tutte le responsabilità di IANA anche se delega a IANA alcune funzioni di gestione:� IANA alloca lo spazio di indirizzi IP in collaborazione
con i cinque Regional Internet Registry (RIR): AfriNIC (Africa), APNIC (Asia/Pacific), ARIN (North America), LACNIC (Latin America), RIPE NCC (Europe, Middle East, Central Asia)
� IANA gestisce il Servizio di registrazione per gli identificativi dei numeri di porta dei protocolli (il significato si vedrà a livello 4 �trasporto�)
4.43
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.44Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Standard e distribuzione documentazione
IAB Organization
Board
IRSG IESGIRTF IETF
Research Groups Working Groups
IAB = Internet Architecture BoardIRTF = Internet Research Task ForceIETF = Internet Engineering Task Force � valuta RFC per Internet standards IRSG = Internet Research Steering GroupIESG = Internet Engineering Steering Group
4.44
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.45Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Ricordare la tempistica degli RFC
� [RFC 0001] �Host software�, April 1969
� [RFC 1000] �RFC reference guide�, Aug. 1987
� [RFC 2000] �Internet Official Protocol standards�, Feb. 1997
� [RFC 3000] �Internet Official Protocol standards�, Nov. 2001
� [RFC 4001] �Textual Conventions for Internet Network Addresses�, Feb. 2005
� [RFC 5001] �DNS Name Server Identifier option�, Aug. 2007
4.45
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.46Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Assegnamento indirizzi IP
� Un network ID, corrispondente ad un insieme di indirizzi IP, è assegnato a (poche) organizzazioni e tipicamente agli Internet Service Provider da IANA/ICANN
� Un�organizzazione richiede un network ID a qualche ISP
� Gli host ID sono assegnati localmente a ciascun host dall�amministratore di rete della organizzazione
4.46
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.47Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Assegnamento indirizzi IP (cont.)
� Gli indirizzi IP sono indirizzi logici (non fisici)
� Ciascun host deve essere identificato da un indirizzo IP, che può essere assegnato:� permanentemente ad un host
� oppure dinamicamente al momento del boot di un host
� Come fa un host a conoscere il proprio indirizzo
IP?� Configurazione manuale: l�indirizzo IP è configurato in
un file dall�amministratore del sistema
� Dynamic Host Configuration Protocol (DHCP): allocazione dinamica effettuata da un server speciale
4.47
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.48Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Host address
NOTA IMPORTANTE
� Un indirizzo IP (detto host address) viene in realtà assegnato ad una interfaccia di rete
� Un host (per es., un computer) può essere
dotato di più interfacce di rete e quindi può
avere multipli host address
4.48
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.49Protocolli e Architetture di Rete 2009/2010 � Livello Internet
MERLIN
( m u lti-
h o m e d
h o s t)
G UENEVERE
( Eth e r n e t
h o s t)
LANC ELO T
( Eth e r n e t
h o s t)
1 2 8 .1 0 .2 .3 1 2 8 .1 0 .2 .8 1 2 8 .1 0 .2 .2 6
ET HERNET
1 2 8 .1 0 .0 .0
T O KEN
RING
1 9 2 .5 .4 8 .0
ART HUR
( to k e n -r in g
h o s t)
1 9 2 .5 .4 8 .1
1 9 2 .5 .4 8 .3
1 9 2 .5 .4 8 .71 2 8 .1 0 .2 .7 0
G LATIS AN
( r o u te r )
1 0 .0 .0 .3 71 9 2 .5 .4 8 .6
ARPANET
T ALIES YN ( r o u te r )
Assegnamento di indirizzi IP
L�indirizzo IP identifica una interfaccia di rete di un host, non necessariamente un host
4.49
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.50Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Indirizzi IP speciali (non assegnati a host)
Insieme di indirizzi speciali riservati :
- network address: hostid con tutti i bit uguali a 0 (es., 128.211.0.0 indica la rete di classe B avente netid 128.211) � denota il netid (prefisso) assegnato ad una rete
- directed broadcast address: hostid con tutti i bit uguali a 1 (es., 128.211.255.255 indica il broadcast per la rete di classe B avente netid 128.211) � permette il broadcast a tutti gli host di una certa rete
- limited broadcast address: tutti i bit uguali a 1 (ossia 255.255.255.255) � permette il broadcast sulla rete fisica locale
- this host on this network: tutti i bit uguali a 0 (ossia 0.0.0.0) � usato per il boot dell�host
- loopback address: la classe A con netid pari a 127 (es., 127.0.0.1) � usato per il testing di applicazioni di rete (ad es., consente di comunicare con un server sulla stessa macchina: http://127.0.0.1)
4.50
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.51Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Network Address e Broadcast IP
� Un indirizzo IP address che ha un host ID di tutti 0, è detto network address e si riferisce all�intera rete Internet. Per es., per un indirizzo di classe C
� Un indirizzo IP broadcast ha un host ID di tutti 1
� IP broadcasting non è un vero broadcast in quanto si fonda sulla tecnologia hardware sottostante per il broadcast
1 1 0 n e t i d 0 0 0 0 0 0 0 0C
1 1 0 1 1 1 1 1 1 1 1C
h o s tid
h o s tidn e t i d
4.51
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.52
Modulo 5:
Subnetting e Supernetting
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.53Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Motivazione
� La ripartizione degli indirizzi in classi è molto rigida e poco graduale perché basata su interi byte:� si passa da reti con 250 host (Classe C) a reti con 65000
host (Classe B)
� D�altro canto per motivi gestionali e di routing, in molti casi, può convenire definire degli �insiemi logici� di indirizzi più flessibili rispetto alla rigida suddivisione in 1, 2, 3 byte per il netid
� Più flessibili significa passare da una suddivisione in byte in una suddivisione logica in bit per la coppia <netid, hostid>
4.53
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.54Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnetting e Supernetting
� Due opportunità� sottoclassi di indirizzi IP (subnet), per organizzazioni� sopraclassi di indirizzi IP (supernet), per ISP
� Due vantaggi:� Si crea maggiore flessibilità nella ripartizione degli
indirizzi all�interno di un�organizzazione (es., Università con indirizzi di Classe B)
� Si facilitano le operazioni di routing dei pacchetti identificando insiemi di indirizzi di host contigui
4.54
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.55Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Network mask
� Per definire i bit (non i byte!) dedicati al netid si usa una network mask di 4 byte. Es.
Net mask: 11111111.11111111.11111111.11000000
� La network mask permette di individuare mediante un AND logico con l�indirizzo IP:� quale parte di un indirizzo IP è riservata per il netid (la
parte di 1)� quale parte è disponibile per l�hostid (la parte di 0)
4.55
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.56Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnetting
� Un�organizzazione può suddividere il suo spazio di host address in gruppi detti subnet
� Il subnet ID è tipicamente utilizzato per raggruppare host basati sulla topologia fisica della rete
� Per esempio, per un indirizzo di classe B si può avere:
10 NetID SubnetID HostID
4.56
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.57Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnet mask: esempio
� Indirizzo IP: 156.154.81.56
� Network mask: 255.255.255.240
� Calcolare la sottorete:
Indirizzo IP: 10011100.10011010.01010001.00111000
Subnet mask: 11111111.11111111.11111111.11110000
(AND) --------------------------------------------
Subnet: 10011100.10011010.01010001.00110000
� Calcolare l�insieme di host della sottorete:� Ci sono 2n-2 host nella subnet, dove n è il numero degli ultimi 0 della
subnet mask. Nell�esempio: 24-2=14, ovvero da 156.154.81.49 a 156.154.81.62
� Calcolare il broadcast address della sottorete:� 10011100.10011010.01010001.00111111 � 156.154.81.63
4.57
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.58Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Esempio di subnetting
Contesto� Una università con un indirizzo di classe B: 150.100
� Si assuma che ciascun dipartimento abbia meno di 100 host
� Quanti bit servono per identificare gli host di una sottorete?
� Qual è la network mask?� 11111111 11111111 11111111 10000000
� 255.255.255.128
7
4.58
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.59Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Esempio di subnetting (cont.)
network host
network hostsubnet
1111� 10000000...1111 mask
4.59
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.60Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Come usare le subnet mask per routing
� Le subnet servono anche (e soprattutto) per facilitare il routing dei pacchetti all�interno della rete amministrata
� Si assuma, nel caso dell�università precedente, che arrivi un pacchetto con indirizzo destinazione: 150.100.12.176
� Si effettua un AND tra l�indirizzo e la subnet mask� (150.100.12.176) AND (255.255.255.128)� Risultato: 150.100.12.128 che corrisponde alla
sottorete di destinazione i cui host si trovano nel range
150.100.12.129 - 150.100.12.254
4.60
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.61Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnetting
router
Subnet 1128.213.1.x
Subnet 2128.213.2.x
Subnet 3128.213.3.x
4.61
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.62Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnetting (cont.)
� Il subnetting consente la massima flessibilità
� E� possibile avere una sola rete fisica (wire
network) con multiple subnet, corrispondenti per esempio a diversi gruppi di un dipartimento
� Es.,
4.62
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.63Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Il subnet addressing modifica l�interpretazione degli indirizzi IP: l�indirizzo IP è composto da una porzione di rete ed una locale
rete
rete
locale
retefisica host
� Risultato: indirizzamento gerarchico → routing gerarchico
Routing gerarchico: i router esterni usano i primi due byte
dell�indirizzo IP per il routing, mentre il router della rete locale usa il
terzo byte dell�indirizzo IP
SubnetSubnet
4.63
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.64Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Subnet addressing
� Schema di indirizzamento IP originale:� ad ogni rete fisica è assegnato un unico �indirizzo di
rete�
� ogni host appartenente a questa rete ha come netid l�indirizzo di rete
� Esaurimento dello spazio di indirizzamento:� minimizzare il numero di indirizzi di rete: lo stesso netid
può essere condiviso da più reti fisiche (subnet addressing per indirizzi di classe B)
4.64
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.65Protocolli e Architetture di Rete 2009/2010 � Livello Internet
R H2H1
Network 128.10.1.0
Network 128.10.2.0
128.10.1.1 128.10.1.2
H3
128.10.2.1H4
128.10.2.2
Internet
traffico destinato a 128.10.0.0
Esempio: subnet addressing
4.65
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.66Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Esempio di rete con cinque reti fisiche suddivise in tre livelli:
- rete di classe B (16 bit per parte locale)
- 5 reti fisiche: occorrono 3 bit (essendo 5 < 23 = 8) per identificarle
- ad ognuna delle 5 reti fisiche è possibile collegare: 213 = 8192 host
R1
R2 R3
R4 R5
Rete 1
Rete 3Rete 2
Rete 4 Rete 5
Esempio di subnetEsempio di subnet
Internet
4.66
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.67Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Esempi di subnet mask
� Implementazione delle subnet usando le maschere:� subnet mask formata da 32 bit per ciascuna rete che usa
il subnet addressing� nella mask, i bit settati ad 1 corrispondono alla parte di
rete, quelli settati a 0 alla parte locale
� Esempio di rete con cinque reti fisiche suddivise su tre livelli:� maschera = 11111111 11111111 11100000 00000000
� Esempio di rete in cui il terzo byte dell�indirizzo IP è usato per la subnet:� maschera = 11111111 11111111 11111111 00000000
4.67
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.68Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.68
Supernet
� MOTIVAZIONE� Esaurimento dello spazio di indirizzamento di classe B
Approccio opposto al subnet addressing: una singola organizzazione può utilizzare più indirizzi di rete per la sua rete (supernet addressing)� un blocco di indirizzi di classe C contiguo viene
assegnato ad una singola organizzazione invece di un solo indirizzo di classe C
� usato dagli Internet Service Provider
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.69Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.69
Problema delle Supernet
� La presenza di supernet aumenta il numero di ingressi nella tabella di routing (si vedrà in seguito)
� Pertanto, si usa il meccanismo Classless Inter-
Domain Routing (CIDR) in cui:
(network address, count)
� network address è il più piccolo indirizzo nel blocco
� count è il numero di blocchi di indirizzi di classe C contigui
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.70
Modulo 6:
Aumentare il numero di indirizzi
Parte 4
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.71Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Indirizzi IP: sufficienti?
� Attualmente ciascun indirizzo IP (IPv4) consiste di 4 byte (32 bit)
� In IPv4 vi sono 3.758.096.384 indirizzi IP utilizzabili per l�indirizzamento degli host
� Ci sono circa 600 milioni di host connessi
� Eppure gli indirizzi stanno (quasi!) esaurendo�
Perché?
4.71
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.72Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Perché gli indirizzi IP esauriscono
1. Evoluzione della tecnologia e dei dispositivi che
consentono connessione a Internet:
� Siamo partiti con un indirizzo IP (computer) per molte persone
� Stiamo arrivando a un indirizzo IP per persona
� Arriveremo ad aver bisogno di più indirizzi IP per persona
2. Gli indirizzi IP non sono e non possono essere
distribuiti uniformemente
� Classe A: 128 reti, 16M host
� Classe B: 16K reti, 64K host
� Classe C: 2M reti, 256 host
4.72
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.73Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Possibili soluzioni
� Presente (la soluzione �a breve termine�)
� Tecniche di Network Address Translation
(�NATting� � si vedrà in seguito)
� Futuro (la soluzione �definitiva�):
� Passaggio al nuovo standard IPv6
4.73
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.74Protocolli e Architetture di Rete 2009/2010 � Livello Internet
IP version 6 (IPv6)
� E� senza dubbio l�unica strada che bisognerà seguire per risolvere definitivamente i problemi di indirizzamento� Rende lo spazio di indirizzamento enorme:
da 2^32 a 2^128 bit (≈ 666 mila miliardi di miliardi... per ogni metro quadro della superficie terrestre!!!)
� E risolve qualche altro problemino
� Svantaggio (di non poco conto):� Richiede l�adozione di un nuovo stack
� Adozione lenta, continuamente rimandata (anche per motivi di �geopolitica�)
4.74
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.75Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Layout dell�header IPv6
Source address
(128 bits)
Destination address(128 bits)
Version (4 bit) Priority (4 bit) Flow label (24 bit)
Payload length (16 bit) Hop limit (8 bit)Next header (8 bit)
Un indirizzo IPv6 consiste di 16 byte (128 bit)!
4.75
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.76Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Reti private e semi-private
� Per alcune (poche) organizzazioni è importante avere reti private in senso stretto:� nessun nessun pacchetto esce da una rete privata e
nessun pacchetto entra in una rete privata� indirizzi univoci solo all�interno della rete privata
� Per molte altre organizzazioni è importante avere reti semi-private con tre categorie di host:� nessun accesso da/a host fuori �dall�organizzazione�
(molti host)� accesso parziale (host che possono raggiungere
l�esterno ma non sono raggiungibili dall�esterno)� accesso completo (pochi host, es. server Web)
4.76
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.77Protocolli e Architetture di Rete 2009/2010 � Livello Internet
NATting per reti semi-private
� Il NATting è una funzionalità
attivabile sul router �al bordo�
della rete dell�organizzazione
Dominio privato
Dominioesterno
Router (con funzioni di Natting)
4.77
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.78
Indirizzi non routable
� Poiché per molte organizzazioni non è necessario che tutti i loro indirizzi siano visibili globalmente, per evitare di sprecare indirizzi, la IANA ha definito delle reti private, ossia:� non uniche a livello mondiale (RFC 1918)
� con indirizzi IANA privati (Non-Internet Routable IP Addresses)
� gli indirizzi �non routable� si possono utilizzare senza richiedere autorizzazione, purché si garantisca che il traffico e gli indirizzi siano limitati alla rete interna
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.78
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.79
� In questo modo, un�organizzazione tipicamente ha la possibilità di progettare una rete che:
� include host visibili da Internet (host pubblici)
� altri host che non sono visibili (host privati)
� Gli host privati possono scambiare pacchetti:
� solo con altri host privati all�interno della stessa rete senza intermediari
� con host pubblici mediante:� application gateway (proxy) sugli host pubblici
� Network Address Translation (NAT)
Indirizzi IP privati per Intranet
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.79
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.80
Indirizzi per NAT
Intervallo di indirizzi
Classe A: [10.0.0.0 - 10.255.255.255] (10.0.0.0/8) � 1 rete
Classe B: [172.16.0.0 - 172.31.255.255] (172.16.0.0/12) � 16 reti
Classe C: [192.168.0.0 - 192.168.255.255] (192.168.0.0/16) � 256 reti
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.80
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.81
NAT router
� Il NAT router (un router con funzionalità di NATting) si interpone tra la rete locale di una organizzazione e Internet con i seguenti compiti:� Mappa gli indirizzi IP tra due domini (interno-esterno)
indirizzi locali �� indirizzi IP globali
� Garantisce la trasparenza del routing tra gli end system
� �Moltiplica� le possibilità di interconnessioni di host di una organizzazione (nel caso in cui l�organizzazione abbia a disposizione un numero di indirizzi IP inferiore al numero di host)
� Aumenta la sicurezza evitando di rendere visibili all�esterno alcuni computer di una organizzazione
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.81
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.82
NAT router
In realtà, ha due funzionalità: natting e switching
NetworkAddressTranslator
Networkswitch LANInternet
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.82
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.83Protocolli e Architetture di Rete 2009/2010 � Livello Internet
NATting
� Il NATting si interpone tra la rete locale di una organizzazione e Internet con i seguenti compiti:� Mappa gli indirizzi IP tra due domini (interno-esterno)
indirizzi locali �� indirizzi IP globali
� Garantisce la trasparenza del routing tra gli end system
� �Moltiplica� le possibilità di interconnessioni di host di una organizzazione (nel caso in cui l�organizzazione abbia a disposizione un numero di indirizzi IP inferiore al numero di host)
� Aumenta la sicurezza evitando di rendere visibili all�esterno alcuni computer di una organizzazione
4.83
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.84Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Traduzione indirizzi
Router (NAT)
Dominio esterno (Internet)
Domino privato
10.33.96.5 198.76.28.4
s=10.33.96.5
d=198.76.28.4
s=193.10.2.2
d=198.76.28.4
s=198.76.28.4
d=193.10.2.2
s=198.76.28.4
d=10.33.96.5
4.84
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.85Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Modifica del datagram IP
source IP address
type of service total length
ident
header checksum
destination IP address
options
data
vers len
flags fragment offset
time to live proto
padding
0 31
modificato in entrata
modificato in uscita
4.85
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.86Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Binding degli indirizzi
� Il router gestisce una corrispondenza (binding) tra gli indirizzi dei due domini tramite una TABELLA:� binding statico
� la tabella viene configurata manualmente
� binding dinamico� la tabella viene calcolata dinamicamente
� cambia nel tempo a seconda del traffico
� ciascuna �sessione� ha una riga nella tabella
� gli indirizzi privati vengono mappati in indirizzi presi da un pool di indirizzi pubblici
� il pool può essere molto piccolo rispetto alla rete locale: questo determina il numero massimo di connessioni contemporanee a internet, le altre vengono rigettate dal router
4.86
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.87Protocolli e Architetture di Rete 2009/2010 � Livello Internet
Natting: pro e contro
Svantaggi� Distrugge la semantica della comunicazione end-to-end in quanto
gli host interni non possono essere raggiunti dall�esterno� La cosiddetta NAT box modifica i pacchetti al volo:
� qualche volta questo richiede modifiche a livello di informazioni application e non solo header del datagramma IP (es., indirizzo IP nel protocollo FTP)
� È necessario usare dei gateway NAT box livello application
Vantaggi� Distrugge la semantica della comunicazione end-to-end in quanto
gli host interni non possono essere raggiunti dall�esterno � Ottima cosa per la SICUREZZA
� Soluzione economica, relativamente facile e veloce� Consente massima flessibilità nella gestione interna degli indirizzi
senza richiedere alcun permesso al proprio ISP �
4.87
Protocolli e Architetture di Rete 2009/2010 � Livello Internet 4.88Protocolli e Architetture di Rete 2009/2010 � Livello Internet
RFC per NAT
� RFC 1631
The IP Network Address Translator (NAT)
K. Egevang, P. Francis
May 1994
� RFC 2663
IP Network Address Translator (NAT)
Terminology and Considerations
P. Srisuresh, M. Holdrege
August 1999
4.88