Sei sulla pagina 1di 70

4 - Livello Rete (parte A)

Introduzione, indirizzamento, inoltro

Fondamenti di Internet e Reti


Strato di rete e strato di trasporto
• Lo strato di trasporto realizza la comunicazione tra due
processi
• Lo strato di rete si incarica di trasferire i dati tra gli host che
ospitano i due processi comunicanti
processo _____ _____
_____ _____ processo
applicativo _____ _____
_____ _____ applicativo
_____ _____

Strato di
trasporto

Strato di rete

FIR 4a: Livello di Rete 2


Architettura di protocolli TCP/IP
Application layer Telnet HTTP FTP SMTP BGP SNMP RIP
Transport layer TCP UDP
Network layer ICMP OSPF
IP ARP RARP
(Data-link layer) Network access
(non specificato in
Internet)

• Piano Dati (Data Plane): protocolli per trasferire i dati


d’utente
– IP
• Piano di Controllo (Control Plane): protocolli di
segnalazione per supportare il trasferimento dati
– ICMP, ARP, RARP, OSPF, RIP

FIR 4a: Livello di Rete 3


Funzioni fondamentali dello strato di rete

• Indirizzamento
– Identificazione univoca dell’interfaccia di
rete di un host/router
• Inoltro / Forwarding:
– Funzione locale con cui il router trasferisce
i pacchetti dall’ingresso all’uscita
• Instradamento / Routing:
– Processo che determina i percorsi dei
pacchetti dalla sorgente alla destinazione
– Processo globale svolto dagli Algoritmi di
Routing
o Processo centralizzato vs distribuito, statico vs
dinamico, manuale vs dinamico

FIR 4a: Livello di Rete 4


Data Plane a livello di rete
• I segmenti dello strato di trasporto application
vengono trasferiti dallo strato di rete transport
network
dall’host sorgente all’host destinazione data link
physical
network network
– Lato sorgente, vengono incapsulati data link data link
network physical
in datagram data link
physical
physical network network
– I datagram vengono inoltrati hop- data link data link
physical physical
by-hop fino a destinazione
– I router esaminano i campi network
data link
network
data link
dell’header di ciascun datagram IP physical
network
physical

che li attraversa data link


physical

– Lato destinazione, i segmenti network


application
transport
data link
vengono consegnati allo strato di network physical
network
data link
network
data link
trasporto data link physical physical
physical
• I protocolli dello strato di rete sono
implementati in ogni host e in ogni
router

FIR 4a: Livello di Rete 5


Data Plane a livello di rete: caratteristiche
• Servizio di trasferimento dell’informazione
– Best Effort e senza connessione
• Ogni router che riceve un datagramma legge l’header e decide
come/dove inoltrare il datagramma sulla base di:
– Un “indirizzo di destinazione” presente nell’header del datagramma
– Una tabella di instradamento presente in ogni nodo
• I pacchetti possono (potenzialmente) percorrere strade diverse tra
sorgente e destinazione

application
application
transport
transport
network
1. Send data 2. Receive data network
data link
data link
physical
physical

FIR 4a: Livello di Rete 6


Funzioni base svolte dal router (richiamo)

routing algorithm Gli algoritmi di routing determinano il


percorso end-to-end attraverso la rete

local routing table La tabella di routing governa


header value output link l’attraversamento (local forwarding)
0100 3 di questo router
0101 2
0111 2
1001 1

Valore nell’header del


pacchetto in arrivo

0111 1

3 2

FIR 4a: Livello di Rete 7


Agenda

• Introduzione agli indirizzi IPv4


• Indirizzamento IP
– Indirizzamento CIDR (Classless Inter Domain Routing)
– Subnetting
• Inoltro dei pacchetti IP
– Aggregazione di indirizzi (supernetting)

FIR 4a: Livello di Rete 8


Indirizzo IP (IPv4)
• E’ un numero binario di 32 bit
• “A beneficio degli esseri umani”, viene scritto nella forma x.y.z.w.
Ciascuno dei x,y,z,w
– rappresenta 8 bit
– può assumere tutti i valori da 00000000 a 11111111 (0 – 255 in base
10)
• Sempre “a beneficio degli esseri umani” si usa scriverlo nella forma
decimale (notazione decimale puntata)

“Dotted decimal notation”

FIR 4a: Livello di Rete 9


Indirizzo IP (IPv4)
• E’ associato in modo univoco ad un’interfaccia di rete di un host o di un
router
– Non è associato direttamente a un host o a un router perché questi
possono avere più interfacce di rete
• Indirizzo IP deve avere valenza e univocità universali (in tutto Internet)
– Il routing in IP è basato sull’indirizzo dell’host destinazione
• Ogni gestore di rete ha a disposizione un blocco di indirizzi che
distribuisce alle interfacce dei singoli apparati

“Dotted decimal notation”

FIR 4a: Livello di Rete 10


IP Network, Network prefix (NetID)
• Un blocco elementare di indirizzi IP è assegnato alle interfacce
di una rete IP
• Gli indirizzi del blocco devono avere identici i primi n bit
• Questi primi n bit si chiamano prefisso (o identificativo) di rete
(network prefix o NetID)
• L’indirizzo IP è dunque diviso in due campi (o livelli)
– I primi n bit (prefix o NetID) identificano la rete
– I rimanenti bit (HostID) sono usati per identificare un host
specifico (un’interfaccia) nell’ambito della rete
• Il valore di n dipende dal tipo di rete

n bit più significativi 32 - n bit

(Prefix)

FIR 4a: Livello di Rete 11


Agenda

• Introduzione agli indirizzi IPv4


• Indirizzamento IP
– Indirizzamento CIDR (Classless Inter Domain Routing)
– Subnetting
• Inoltro dei pacchetti IP
– Aggregazione di indirizzi (supernetting)

FIR 4a: Livello di Rete 12


Classless Inter-Domain Routing (CIDR)
• CIDR sviluppato negli anni ‘90 e introdotto in via definitiva
nel settembre 1993
– RFC 1517, 1518, 1519, 1520
– x.y.z.w/n significa che viene allocato a una rete un
insieme di indirizzi contigui con
o Primo indirizzo: x.y.z.w e 232-n indirizzi in totale

0110000 = 96 232-19 = 213

– Esempio: 134.76.96.0/19 sono 8192 indirizzi IP adiacenti


da 134.76.96.0 a 134.76.127.255

• Ha razionalizzato l’assegnazione di indirizzi del poco


flessibile sistema classful (si veda oltre)

FIR 4a: Livello di Rete 13


Netmask

11111111 1111111 11111111 00000000

• La netmask è un numero binario di 32 bit associato ad una


rete IP
– Inizia con n bit a 1(dal più significativo), con n pari alla
lunghezza del NetID
– I restanti 32 – n bit sono a 0
– Indica quali bit di un indirizzo IP sono assegnati al NetID
– Viene indicata con dotted decimal notation
• Esempio:
– Indirizzo IP 193.17.31.45 e Netmask: 255.255.255.0
– La rete a cui appartiene l’indirizzo è 193.17.31.0

FIR 4a: Livello di Rete 14


NetID: notazioni alternative equivalenti

• Esempio: NetID 130.86.0.0


– Rappresenta tutti i 216 indirizzi IP che
iniziano con il pattern di bit 10000010
01010110
• Questo si può scrivere come
– Coppia: 130.86.0.0 + Netmask
255.255.0.0
– 130.86.0.0/16
– 130.86.*.*
– Intervallo (range) [130.86.0.0,
130.86.255.255]

FIR 4a: Livello di Rete 15


Rete IP ßà rete fisica
IP-B: 193.17.31.55/24 IP-A:193.17.31.45/24
MAC-B: 05:98:76:6c:4a:7b MAC-A: 00:9f:7a:89:90:7a

B A
Rete IP C
193.17.31.0
IP-C: 193.17.31.254
MAC-C: 99:8b:6f:ac:58:7f

• Una rete IP, identificata da un NetID, è una insieme di


interfacce (host + router) fisicamente interconnesse,
tipicamente con switch e hub
• E’ necessario che vi sia almeno un router con un’interfaccia
collegata alla rete IP per comunicare con altre reti IP

FIR 4a: Livello di Rete 16


Esempio

• Notare che anche un host può avere più interfacce di rete


(dual homing)
• Ogni interfaccia di un router (e di un host) deve
appartenere a reti IP diverse
• Non è possibile assegnare due interfacce dello stesso
apparato alla stessa rete IP

L’indirizzo di una
rete IP si ottiene
ponendo a 0 tutti i
bit di HostID

FIR 4a: Livello di Rete 17


CIDR: esempio
200 = 128 + 64 + 8 = 11001000

207 = 11001111

FIR 4a: Livello di Rete 18


Indirizzi privati
• Utilizzabili da chiunque ma solo in ambito privato. In
Internet possono essere riutilizzati più vote à Non sono
univoci
– Tre blocchi (usati anche in CIDR)
o I: 10.0.0.0 - 10.255.255.255
o II: 172.16.0.0 -172.31.255.255
o III:192.168.0.0 -192.168.255.255
• Un router non deve mai inoltrare un pacchetto con
destinazione un indirizzo IP privato verso una propria
interfaccia di uscita che abbia un indirizzo IP pubblico

FIR 4a: Livello di Rete 19


Indirizzi Speciali

Indirizzo di rete
– L'indirizzo con il campo HostID posto a 0 serve ad
indicare la rete il cui indirizzo è contenuto nel campo
NetID (usato solo nelle tabelle di instradamento)
– esempio:
o rete /16: 131.175.0.0
o rete /24: 193.17.31.0

193.17.31.76
193.17.31.55 193.17.31.45

193.17.31.0/24

FIR 4a: Livello di Rete 20


Indirizzi Speciali
Indirizzo broadcast diretto (Directed Broadcast):
– Un indirizzo con il campo HostID di soli 1 assume il significato
di indirizzo broadcast della rete indicata nel campo NetID
(usato nel campo destinatario di un pacchetto IP)
– I router di transito lo trattano come un normale pacchetto
(inoltrano al next hop)
– Il router della rete di destinazione esegue il broadcast (a livello
2) solo se è abilitato a farlo
– esempio: 193.17.31.255
193.17.31.76
193.17.31.55 193.17.31.45

193.17.31.0/24

FIR 4a: Livello di Rete 21


Indirizzi Speciali

Indirizzo broadcast limitato (Limited Broadcast):


– Un indirizzo di soli 1 assume il significato di indirizzo
broadcast nella stessa rete di chi invia il pacchetto. Il
pacchetto non può oltrepassare il router (usato nel
campo destinatario del pacchetto IP) 255.255.255.255

193.17.31.76
193.17.31.55 193.17.31.45

193.17.31.0/24

FIR 4a: Livello di Rete 22


Indirizzi Speciali

• Quando il campo NetID è posto a zero, l'indirizzo indica l'host il cui


indirizzo è contenuto nel campo host sulla stessa rete del mittente.
– usato come campo destinazione, filtrato dai router
– esempio: 0.0.21.173 (in una rete /16)

• Se anche il campo host è posto a zero l'indirizzo indica il mittente stesso


del pacchetto
– Usato come campo sorgente quando l’host non conosce il proprio indirizzo, ad
es. in fase di bootstrap
– esempio: 0.0.0.0

• Infine, l'indirizzo con il primo ottetto pari a 127 e gli altri campi qualsivoglia
indica il loopback sullo stesso host
– (usato nei sistemi operativi per testare le funzionalità di rete).
– esempio: 127.x.y.z

FIR 4a: Livello di Rete 23


Procedure di assegnamento degli indirizzi

ICANN, Los Angeles, USA

Internet Assigned Numbers Authority (IANA)


– Coordina e pianifica l’assegnazione degli indirizzi IP su base mondiale
(sia per IPv4 che per IPv6)
– E’ un Dipartimento di ICANN (Internet Corporation for Assigned
Names and Numbers, organizzazione no-profit americana), istituito nel
1998
– Amministra anche i DNS root
IANA assegna blocchi di indirizzi a 5 Regional Internet Registries (RIRs)
– Tipicamente alloca indirizzi delle dimensioni di /8 ai RIR che li
richiedono

FIR 4a: Livello di Rete 24


Procedure di assegnamento degli indirizzi
• I RIR sono:
o African Network Information Centre (AfriNIC): Africa
o American Registry for Internet Numbers (ARIN): Stati Uniti,
Canada, molti stati caraibici e Antartide.
o Asia-Pacific Network Information Centre (APNIC): Asia,
Australia, Nuova Zelanda e stati limitrofi
o Latin America and Caribbean Network Information Centre
(LACNIC): America Latina e stati caraibici rimanenti
o Réseaux IP Européens Network Coordination Centre (RIPE
NCC): Europa, Russia, Medio Oriente e Asia Centrale
• Ciascun RIR assegna blocchi al Local Internet Registries
(LIRs), che sono ISP o istituzioni che a loro volta possono
assegnare prefissi di rete ai propri clienti
Lista completa: http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xhtml

FIR 4a: Livello di Rete 25


Esaurimento degli indirizzi IPv4

• Tutti gli indirizzi IPv4 sono ormai ESAURITI!!


– IANA ha assegnato tutti gli indirizzi ai RIR nel 2011
– Quasi ogni RIR ha terminato gli indirizzi disponibili
• L’utilizzo di soli 32 bit per gli indirizzi IPv4 si è rivelata una scelta sbagliata
– Nessuno poteva aspettarsi negli anni ’70-80 l’attuale sviluppo di Internet
• L’unica possibilità di assegnare nuovi indirizzi è passare a IPv6 (indirizzi lunghi 128 bit à 2128
indirizzi)

FIR 4a: Livello di Rete 26


Indirizzamento classful
• Gli indirizzi IPv4 erano divisi in 5 classi:
– Classe A: poche reti grandi:
o NetID 7 bit (x=1,...,126), HostID 24
bit
– Classe B: reti medio-grandi:
o NetID 14 bit (x=128,...,191), HostID
16 bit
– Classe C: tante reti piccole:
o NetID 21 bit (x=192,...,223), HostID
8 bit
– Classe D: indirizzi multicast:
o (x=224,...,239)
– Classe E: riservato a uso futuro
o (x=240,...,255)

FIR 4a: Livello di Rete 27


Classful vs. CIDR

• Nel sistema classful i router deducono la lunghezza del prefisso


dai primi bit del primo byte:
– Non occorre la netmask per ciascuna entry della tabella di
routing. In CIDR è fondamentale
– Non occorre che i protocolli di routing supportino la netmask
nei messaggi. In CIDR è necessario
• Problemi principali delle classi
– Le reti di classe A e B sono troppo grandi
o Reti di classe B con meno di 100 host effettivi sono frequenti
– Le reti di classe B sono troppo poche
– Le reti di classe C sono troppo piccole
• Eliminando completamente la distinzione tra reti di classe A, B e
C, CIDR risolve il problema

FIR 4a: Livello di Rete 28


Agenda

• Introduzione agli indirizzi IPv4


• Indirizzamento IP
– Indirizzamento CIDR (Classless Inter Domain Routing)
– Subnetting
• Inoltro dei pacchetti IP
– Aggregazione di indirizzi (supernetting)

FIR 4a: Livello di Rete 29


Problema: reti IP troppo grandi

• Le reti IP possono essere troppo grandi


– Es. Le reti di /16 (classe B) e /8 (classe A) sono poco
adatte a corrispondere ad uniche reti di livello 2

131.175.0.2 131.175.0.3 131.175.45.54 131.175.255.254

131.175.0.1 65534 host nella stessa rete fisica????


- performance?
Rete /16: - management?
Da: 131.175.0.1
A: 131.175.255.254

FIR 4a: Livello di Rete 30


Soluzione: introdurre una gerarchia nelle reti IP
• Suddividere la rete in molte sottoreti (subnet)
• Ciascuna subnet = una rete fisica

131.175.21.42 131.175.12.33
131.175.12.12 131.175.12.34
131.175.21.4
131.175.12.254

Router Ethernet FDDI


131.175.33.0

Host

131.175.12.0
131.175.21.0 131.175.21.1

Sub-Net ATM
Class B network: 131.175.0.0/16

Si potrebbe usare il terzo byte per identificare la subnet: 131.175.X.0

FIR 4a: Livello di Rete 31


Extended network prefix, subnet ID

• Esempio con rete /16

network prefix
(network address)

NET ID (16bit) HOST ID (16 bit)

Extended network prefix


(subnet address)

NET ID (16bit) SUBNET ID (n bit) HOST ID (16-n bit)

FIR 4a: Livello di Rete 32


Analogia con le reti telefoniche
• Il concetto di suddivisione gerarchica degli indirizzi è
ripreso dal mondo delle reti telefoniche.

Mondo IP

141 . 14 . 192 . 192


Site Subnet host

Reti Telefoniche

(310) 824 - 2296


Area Code Exchange Connection

FIR 4a: Livello di Rete 33


Esempio di Subnetting-1

• Indirizzo originario della rete: 128.234.0.0/16


(classe B, Netmask di 16 bit)
• Si vogliano creare almeno 1000 piccole sottoreti
• Occorrono 10 bit per il campo subnet in grado di
indirizzare 210=1024 subnet
• La netmask dovrà dunque avere 16+10=26 bit
(255.255.255.192)

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0

FIR 4a: Livello di Rete 34


Esempio di Subnetting-1
• Rimangono 6 bit per il campo host, quindi ogni
sottorete supporta (26 – 2) host
255 192
1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 subnet mask

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 128.234.0.0/26
0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 128.234.0.64/26
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 128.234.0.128/26
0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 128.234.0.192/26
...
1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 128.234.255.128/26
1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 128.234.255.192/26

FIR 4a: Livello di Rete 35


Esempio di subnetting-2
• E’ assegnato il blocco 130.34.12.64/26 servono 4 subnet

80 = 96 =
01010000 01100000

64 = 112 =
01000000 01110000

Ogni pacchetto con


destinazione compresa tra
64 = 01000000 130.34.12.65 e 130.34.12.127
arriva al router R1
127 = 128 - 1 = 01111111

FIR 4a: Livello di Rete 36


Quando il Subnetting non basta..
• Esempio: un’organizzazione possiede un indirizzo in classe
C ed ha la necessità di creare 3 sottoreti con 60 host e altre
due sottoreti con 30 host.
• Il Subnetting classico fallisce:
– Subnet con 2 bit: 4 reti con 64 host ciascuna
– Subnet con 3 bit: 8 reti con 32 host ciscuna
• Come fare ??

FIR 4a: Livello di Rete 37


Netmask Variabile

• Variable Length Subnet Mask (VLSM)


• Applicare due netmask in cascata
– La prima netmask 255.255.255.192 con 26 “1” definisce 4 subnet
con 62 indirizzi per gli host.
– Si applica ad una delle subnet la netmask 255.255.255.224 che
divide la sottorete in due ulteriori subnet con 30 indirizzi per host

62 hosts
First Mask 62 hosts
255.255.255.192 62 hosts

30 hosts
Second Mask
255.255.255.224 30 hosts

FIR 4a: Livello di Rete 38


Esempio VLSM

A x-net-1
pc-net
100 host 20 host

Link-1
B
Link-3

Link-2
ws-net x-net-2
20 host 10 host

• I link punto-punto (Link-1, Link-2, Link-3) sono reti particolari


– Hanno bisogno di due indirizzi IP, uno per interfaccia
• Necessitano comunque di un NetID

FIR 4a: Livello di Rete 39


Esempio VLSM

192.168.1.0/25
(pc-net) ð Suddivido le sottoreti
(max 126 hosts)
192.168.1.0/24 iterativamente
(max 254 hosts)
192.168.1.128/25
(max 126 hosts)
192.168.1.128/27 (ws-net)
(max 30 hosts)
XXXXXXXX
192.168.1.160/27
(max 30 hosts) (x-net-1)
Available for
further subnets 192.168.1.192/27
(max 30 hosts)
192.168.1.224/27
(max 30 hosts) (non usata)
PC-net
(0-127)
x-net-1 XXXXXXXX
160-191
ws-net
128-159

FIR 4a: Livello di Rete 40


Esempio VLSM
ð Suddivido le sottoreti
iterativamente
192.168.1.192/28
(x-net-2)
(max 14 hosts)
192.168.1.192/27
(max 30 hosts)
192.168.1.208/28
(max 14 hosts)
192.168.1.208/30 (ptp)
XXXXXXXX
192.168.1.212/30 (ptp)
Available for
further subnets 192.168.1.216/30 (ptp)
Link3 216-219 192.168.1.220/30 (non usata)
Link2 212-215
Link1 208-211 XXXXXXXX
x-net-2
192-207 PC-net
(0-127)
x-net-1
160-191
ws-net
128-159

FIR 4a: Livello di Rete 41


Esempio VLSM

pc-net
192.168.1.0/25 A x-net-1
(0-127, 126 host) 192.168.1.160/27
255.255.255.128 (160-191, 30 host)
192.168.1.208/30
192.168.1.217 255.255.255.224
Link-1
B
Point2point links: Link-3
255.255.255.252
192.168.1.216/30
192.168.1.213

ws-net Link-2 C x-net-2


192.168.1.128/27 192.168.1.212/30 192.168.1.192/28
(128-159, 30 host)
255.255.255.224
Router C table (192-207, 14 host)
192.168.1.128 /27 192.168.1.213 255.255.255.240
192.168.1.0 /25 192.168.1.213
192.168.1.160 /27 192.168.1.217
192.168.1.192 /28 Direct fwd
192.168.1.208 /30 192.168.1.217 192.168.1.0 network
192.168.1.212 /30 Direct fwd
192.168.1.216 /30 Direct fwd
FIR 4a: Livello di Rete 42
Agenda

• Introduzione agli indirizzi IPv4


• Indirizzamento IP
– Indirizzamento CIDR (Classless Inter Domain Routing)
– Subnetting
• Inoltro dei pacchetti IP
– Aggregazione di indirizzi (supernetting)

FIR 4a: Livello di Rete 43


Inoltro dei pacchetti

• IP è una tecnica di internetworking


– Nel trasferimento di pacchetti tra due host si serve della
capacità di inoltro delle reti (locali) attraversate
• Inoltro diretto:
– quando la destinazione è nella stessa rete IP (e rete
locale)
• Inoltro indiretto:
– quando la destinazione non è nella stessa rete IP (e rete
locale)
• Trasmissione di pacchetti nelle reti locali attraversate
– Incapsulati in trame di livello 2
– Si basa sugli indirizzi di livello 2 (indirizzi MAC) dei
dispositivi

FIR 4a: Livello di Rete 44


Inoltro diretto negli host
• Rete locale coincidente con rete IP

IP-B: 193.17.31.55 IP-A:193.17.31.45


MAC-B: 05:98:76:6c:4a:7b MAC-A: 00:9f:7a:89:90:7a

B A

193.17.31.0

2. B conosce l’indirizzo IP-B


1. L’entità IP di B deve
della propria interfaccia e dal
spedire un pacchetto
confronto con IP-A capisce
all’indirizzo IP-A
che A si trova nella stessa
rete

FIR 4a: Livello di Rete 45


Inoltro diretto negli host
IP addr. MAC addr.

IP-B: 193.17.31.55 193.17.31.45 00:9f:7a:89:90:7a IP-A:193.17.31.45


... ...

MAC-B: 05:98:76:6c:4a:7b MAC-A: 00:9f:7a:89:90:7a

B A

193.17.31.0
3. B consulta una tabella di
corrispondenza tra indirizzi IP 4. L’entità IP di B passa il
e indirizzi della rete (indirizzi pacchetto al livello inferiore
MAC nel caso di rete locale) che crea un pacchetto con
per reperire l’indirizzo MAC-A destinazione MAC-A

FIR 4a: Livello di Rete 46


Inoltro diretto negli host

IP-B: 193.17.31.55 IP-A:193.17.31.45


MAC-B: 05:98:76:6c:4a:7b MAC-A: 00:9f:7a:89:90:7a

B A

193.17.31.0

src-MAC = MAC-B, dst-MAC = MAC-A pacchetto IP

src-IP = IP-B, dst-IP = IP-A payload

FIR 4a: Livello di Rete 47


Inoltro indiretto negli host

IP-B: 193.17.31.55
MAC-B: 05:98:76:6c:4a:7b
IP-C: 193.17.31.254
B MAC-C: 99:8b:6f:ac:58:7f

193.17.31.0 C

1. L’entità IP di B deve spedire


2. B conosce l’indirizzo IP-B
un pacchetto all’indirizzo IP-
della propria interfaccia e dal
D=131.17.23.4
confronto con IP-D capisce
che D NON si trova nella
stessa rete

FIR 4a: Livello di Rete 48


Inoltro indiretto negli host
IP addr. MAC addr.
193.17.31.45 00:9f:7a:89:90:7a
IP-B: 193.17.31.55 ... ...

MAC-B: 05:98:76:6c:4a:7b 193.17.31.254 99:8b:6f:ac:58:7f

IP-C: 193.17.31.254
B MAC-C: 99:8b:6f:ac:58:7f

193.17.31.0 C

3. B deve dunque inoltrare il 4. B recupera l’indirizzo MAC


pacchetto ad un router (di solito del router nella tabella di
è configurato un solo default corrispondenza e passa il
router) pacchetto al livello inferiore

FIR 4a: Livello di Rete 49


Inoltro indiretto negli host

5. il pacchetto viene costruito e


spedito sull’interfaccia
IP-B: 193.17.31.55
MAC-B: 05:98:76:6c:4a:7b
IP-C: 193.17.31.254
B MAC-C: 99:8b:6f:ac:58:7f

193.17.31.0 C

src-MAC = MAC-B, dst-MAC = MAC-C pacchetto IP

src-IP = IP-B, dst-IP = IP-D payload

FIR 4a: Livello di Rete 50


Configurazione degli host

Router di
default

FIR 4a: Livello di Rete 51


Inoltro nei router

• Router: dispositivi di internetworking con interfacce di uscita multiple.


• Anche i router seguono le tecniche di inoltro diretto ed indiretto ma:
– Inoltro diretto: hanno di solito più di una interfaccia dove poter
effettuare l’inoltro diretto
– Inoltro indiretto: si basa su tabelle di routing dove è definita la “rotta”
di instradamento
• Caratteristiche dell’inoltro:
– DESTINATION BASED: L’inoltro IP è basato sul solo indirizzo di
destinazione
– NEXT HOP ROUTING: Nelle tabelle di routing per ogni rete di
destinazione è indicato solo il prossimo router (next-hop) nel
percorso verso la destinazione

FIR 4a: Livello di Rete 52


Inoltro nei router
• L’inoltro avviene da router a router attraverso le reti IP
• I router inoltrano i pacchetti basandosi esclusivamente sulla
parte di NetID dell’indirizzo di destinazione
• Tutti gli host che appartengono alla rete di destinazione
sono identificati nelle tabelle di routing da una singola entry
(il prefisso di rete) à Address Aggregation

131.175.31.5 131.30.0.121
131.175.24.51

A B Rete
131.30.0.0 A Rete 131.175.0.0 B

131.175.0.0 131.30.0.0

131.175.1.253 131.30.78.4
131.30.18.254
131.175.1.254 131.30.18.7

FIR 4a: Livello di Rete 53


Requisiti di CIDR

• Nelle tabelle di routing deve sempre essere


indicata per ogni entry in modo esplicito la … … …
net mask route
lunghezza del NetID … … …
– La divisione tra NetID e HostID non
potrebbe essere determinata altrimenti
• I protocolli di routing devono supportare
l’invio dell’informazione di Netmask insieme
agli indirizzi di rete in tutti i messaggi di
annuncio di rotte (route advertisement)
– In passato non tutti i protocolli di routing lo
consentivano (es. RIP v1)

FIR 4a: Livello di Rete 54


Tabella di routing (routing table)

Destination prefix Next-hop Output interface


24.40.32/20 192.41.177.148 2
130.86/16 191.41.177.181 6
208.12.16/20 192.41.177.241 4
208.12.21/24 192.41.177.196 1
167.24.103/24 192.41.177.148 2

Netmask

Tutti gli indirizzi nell’intervallo: 167.24.103.0 –


167.24.103.255

FIR 4a: Livello di Rete 55


Inoltro diretto e indiretto con le netmask
• Per inoltrare un pacchetto occorre capire se appartiene alla
sottorete di una delle interfacce
• Per effettuare la verifica si fa un AND bit a bit tra indirizzo
dell’interfaccia e netmask e tra indirizzo di destinazione e
netmask
• Se i due risultati coincidono allora la sottorete è la stessa e
si procede all’inoltro diretto

destinazione: (131.175.21.77) AND (255.255.255.0) = 131.175.21.0


Nota: gli indirizzi a bordo dei PACCHETTI non hanno MAI confronto
NETMASK. positivo
interfaccia: (131.175.21.96) AND (255.255.255.0) = 131.175.21.0

FIR 4a: Livello di Rete 56


Tabelle di routing con le netmask
• Se i confronti con le interfacce sono negativi occorre procedere ad un inoltro indiretto
• Occorre analizzare la tabella di routing del router
• Il confronto riga per riga si effettua allo stesso modo (AND bit a bit) usando la netmask
relativa a ciascuna riga
• Se il confronto dà esito positivo per più righe della tabella viene selezionata la tabella con
la netmask che ha il maggior numero di 1 (si dice comunemente che vale il principio del
prefisso più lungo o longest prefix matching).
– Prefisso più lungo equivale a rotta più “specifica”

Routing table
11.0.0.0 /8 Route 1
3
11.1.0.0 /16 Route 2
IP packet matches
Destination: 11.1.2.5 11.1.2.0 /24 Route 3

Best (longest) match


Longest match = smallest network, informazioni di routing più precise e dettagliate

FIR 4a: Livello di Rete 57


Tabelle di routing con le netmask
ne two rk ne tm as k firs t ho p
1 3 1 .1 7 5 .2 1 .0 2 5 5 .2 5 5 .2 5 5 .0 1 3 1 .1 7 .1 2 3 .2 5 4
1 3 1 .1 7 5 .1 6 .0 2 5 5 .2 5 5 .2 5 5 .0 1 3 1 .1 7 .7 8 .2 5 4
1 3 1 .5 6 .0 .0 2 5 5 .2 5 5 .0 .0 1 3 1 .1 7 .1 5 .2 5 4
1 3 1 .1 5 5 .0 .0 2 5 5 .2 5 5 .0 .0 1 3 1 .1 7 .1 5 .2 5 4
0 .0 .0 .0 0 .0 .0 .0 1 3 1 .1 7 .1 2 3 .2 5 4
inte rfac e e th0
IP ad d re s s 1 3 1 .1 7 .1 2 3 .1
ne tm as k 2 5 5 .2 5 5 .2 5 5 .0
default router:
il confronto dà sempre
inte rfac e e th1 esito positivo ma la
IP ad d re s s 1 3 1 .1 7 .7 8 .1
ne tm as k 2 5 5 .2 5 5 .2 5 5 .0
netmask è lunga 0 bit

inte rfac e e th2


IP ad d re s s 1 3 1 .1 7 .1 5 .1 2
ne tm as k 2 5 5 .2 5 5 .2 5 5 .0

FIR 4a: Livello di Rete 58


Tabelle di routing: esempio (1)

network netmask first hop 131.175.21.86


131.175.15.0 255.255.255.0 131.175.21.1

131.175.16.0 255.255.255.0 131.175.21.2

131.175.17.0 255.255.255.0 131.175.21.3

131.180.23.0 255.255.255.0 131.175.21.4

131.180.18.0 255.255.255.0 131.175.21.4

131.180.21.0 255.255.255.0 131.175.21.4

131.180.0.0 255.255.0.0 131.175.21.5

0.0.0.0 0.0.0.0 131.175.12.254

interfaccia 1: 131.175.21.254, 255.255.255.0


interfaccia 2: 131.175.12.253, 255.255.255.0

FIR 4a: Livello di Rete 59


Tabelle di routing: esempio (2)

network netmask first hop


131.175.16.65
131.175.15.0 255.255.255.0 131.175.21.1 x
131.175.16.0 255.255.255.0 131.175.21.2
OK
131.175.17.0 255.255.255.0 131.175.21.3
x
131.180.23.0 255.255.255.0 131.175.21.4
x
131.180.18.0 255.255.255.0 131.175.21.4
x
131.180.21.0 255.255.255.0 131.175.21.4
x
131.180.0.0 255.255.0.0 131.175.21.5
x
0.0.0.0 0.0.0.0 131.175.12.254
OK

interfaccia 1: 131.175.21.254, 255.255.255.0 X

interfaccia 2: 131.175.12.253, 255.255.255.0 X

FIR 4a: Livello di Rete 60


Tabelle di routing: esempio (3)

network netmask first hop


131.180.21.78
131.175.15.0 255.255.255.0 131.175.21.1 x
131.175.16.0 255.255.255.0 131.175.21.2 x
131.175.17.0 255.255.255.0 131.175.21.3 x
131.180.23.0 255.255.255.0 131.175.21.4 x
131.180.18.0 255.255.255.0 131.175.21.4 x
131.180.21.0 255.255.255.0 131.175.21.4 OK
131.180.0.0 255.255.0.0 131.175.21.5 OK
0.0.0.0 0.0.0.0 131.175.12.254 OK

interfaccia 1: 131.175.21.254, 255.255.255.0 X

interfaccia 2: 131.175.12.253, 255.255.255.0 X

FIR 4a: Livello di Rete 61


Tabelle di routing: esempio (4)

network netmask first hop


200.45.21.84
131.175.15.0 255.255.255.0 131.175.21.1 x
131.175.16.0 255.255.255.0 131.175.21.2 x
131.175.17.0 255.255.255.0 131.175.21.3 x
131.180.23.0 255.255.255.0 131.175.21.4 x
131.180.18.0 255.255.255.0 131.175.21.4 x
131.180.21.0 255.255.255.0 131.175.21.4 x
131.180.0.0 255.255.0.0 131.175.21.5 x
0.0.0.0 0.0.0.0 131.175.12.254 OK

interfaccia 1: 131.175.21.254, 255.255.255.0 X

interfaccia 2: 131.175.12.253, 255.255.255.0 X

FIR 4a: Livello di Rete 62


Agenda

• Introduzione agli indirizzi IPv4


• Indirizzamento IP
– Indirizzamento CIDR (Classless Inter Domain Routing)
– Subnetting
• Inoltro dei pacchetti IP
– Aggregazione di indirizzi (supernetting)

FIR 4a: Livello di Rete 63


Crescita tabelle di routing

213.2.96.8
11.0.0.32 20.0.0.5 20.0.0.6 130.11.0.12 130.11.0.7
213.2.96.0
Net Net Net R3
11.0.0.0 R1 20.0.0.0 R2 130.11.0.0
213.2.97.0

R2 Routing Table 213.2.98.0


Destination Network Next Hop 213.2.99.5
20.0.0.0/8 Direct forward 213.2.99.0
130.11.0.0/16 Direct forward
è Limiti HW e SW sul tempo di
11.0.0.0/8 20.0.0.5
ricerca nelle routing table
213.2.96.0/24 130.11.0.7 è Gli aggiornamenti della routing
213.2.97.0/24 130.11.0.7 table diventano critici (tante info
213.2.98.0/24 130.11.0.7 trasferite tra i router)
è Il default routing non è una
213.2.99.0/24 130.11.0.7
soluzione ottima

FIR 4a: Livello di Rete 64


Supernet mask

• 4 reti con indirizzi contigui


– 213.2.96.0 11010101.00000010.01100000.00000000
– 213.2.97.0 11010101.00000010.01100001.00000000
– 213.2.98.0 11010101.00000010.01100010.00000000
– 213.2.99.0 11010101.00000010.01100011.00000000
• Definisco una Supernet con “2 bit in meno”
– Da 255.255.255.0 a 255.255.252.0

11111111.11111111.11111111.00000000

11111111.11111111.11111100.00000000

• Supernet address: 213.2.96.0/22


– 11010101 . 00000010 . 011000 00 . 00000000

FIR 4a: Livello di Rete 65


Supernetting (aggregazione di rotte)

213.2.96.8
11.0.0.32 20.0.0.5 20.0.0.6 130.11.0.12 130.11.0.7
213.2.96.0
Net Net Net R3
11.0.0.0 R1 20.0.0.0 R2 130.11.0.0
213.2.97.0

R2 Routing Table
Dest.Net Dest.Netmask Next Hop 213.2.99.5 213.2.98.0
20.0.0.0 255.0.0.0 Direct forward
130.11.0.0 255.255.0.0 Direct forward
213.2.99.0
11.0.0.0 255.0.0.0 20.0.0.5
213.2.96.0 255.255.252.0 130.11.0.7
• Per consentire l’aggregazione delle rotte in modo significativo è
opportuno che i blocchi di indirizzi vengano assegnati su base
geografica (blocchi adiacenti nella stessa area)

FIR 4a: Livello di Rete 66


I core router ignorano il subnetting
.33 =
.00100001
Net Next Hop Net Next Hop Net Next Hop
162.12.0.0/16 193.1.1.36 162.12.0.0/16 145.54.3.5 162.12.0.0/16 145.54.3.5
… … 162.12.34.33
… … … …
.64 =
162.12.34.75 145.54.55.1 .01000000

A 193.1.1.36 E Net Next Hop


B
.75 = 145.54.0.0 145.54.3.5 162.12.34.64/27 162.12.1.1

.01001011 193.1.1.0 162.12.34.32/27 162.12.1.33


D default 162.12.9.65

.32 =
193.1.1.1 162.12.1.33 162.12.9.65 .00100000
C 162.12.1.1

162.12.34.32
162.12.34.64
Subnet mask =
255.255.255.224 162.12.34.33
Rete
162.12.0.0/16 .224 =
162.12.34.75 .11100000
= /27

FIR 4a: Livello di Rete 67


Indirizzamento gerarchico: aggregazione di rotte

• L’aggregazione degli indirizzi consente un’efficente


propagazione delle rotte

Organization 0
200.23.16.0/23
Organization 1
“Send me anything
200.23.18.0/23 with addresses
Organization 2 beginning
200.23.20.0/23 . Fly-By-Night-ISP 200.23.16.0/20”
.
. . Internet
.
Organization 7 .
200.23.30.0/23
“Send me anything
ISPs-R-Us
with addresses
beginning
199.31.0.0/16”

FIR 4a: Livello di Rete 68


Indirizzamento gerarchico: exception route

• ISPs-R-Us ha una rotta più specifica (eccezione) verso


l’Organizzazione I
• La rete funziona ugualmente grazie al longest prefix matching
Organization 0
200.23.16.0/23

“Send me anything
with addresses
Organization 2 beginning
200.23.20.0/23 . Fly-By-Night-ISP 200.23.16.0/20”
.
. . Internet
.
Organization 7 .
200.23.30.0/23
“Send me anything
ISPs-R-Us
with addresses
Organization 1 beginning 199.31.0.0/16
or 200.23.18.0/23”
200.23.18.0/23

FIR 4a: Livello di Rete 69


Formato della tabella di routing

Netmask Destination Next Hop Flag Metric Use Interface


(Gateway)

255.0.0.0 124.0.0.0 145.6.7.23 UG 4 20 Eth1


................ ................... ............... .............. ................. ............... ................
................ ................... ............... .............. ................. ............... ................
................ ......... ............... .............. .............. ............... ................
... ...... ...

• Flag:
– U: route attiva
– G: destinatario fuori dalla sottorete (default gateway)
– H: destinatario è un host specifico (non una rete)
– D: rotta dinamica creata da protocollo di routing o reindirizzamento
ICMP
– M: rotta modificata da protocollo di routing o reindirizzamento ICMP
• Reference Count: numero connessioni attive per quella rotta
• Use: numero pacchetti verso il destinatario (numero di lookup)
• Interface: nome interfaccia di uscita

FIR 4a: Livello di Rete 70

Potrebbero piacerti anche