strato di rete (parte 1) “reti a pacchetto” e “protocollo...

77
1 Marco Listanti Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP” DIET Dept Telecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Upload: dokhanh

Post on 17-Feb-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

1

Marco Listanti

Strato di rete(parte 1)

“Reti a pacchetto” ep“Protocollo IP”

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 2: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

2

Funzioni dello strato di reteR i d Ci i Vi lReti datagramma e a Circuito Virtuale

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 3: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Funzioni del livello di rete3

Funzioni del livello di rete

Forwarding (inoltro)Funzione attuativa

trasferisce i pacchetti da un interfaccia di ingresso di un nodo (router) verso un’opportuna interfaccia di uscita

Routing (instradamento)Funzione decisionale

determina il percorso seguito dai pacchetti dall’origine alla destinazione

d l’ f d dper ciascun router determina l’interfaccia di uscita su cui deve essere inoltrato un pacchetto

utilizza protocolli e algoritmi specifici

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

p g p

Page 4: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Routing e forwarding4

Routing e forwarding

P t ll Al itmProtocollo e Algoritmo d’instradamento

Tabella di forwardingTabella di forwardingInformazione di indirizzo

Interfaccia d’uscita

01000101

320101

01111001

221

1

23

0111

Informazione di indirizzamentocontenuta nell’header del pacchetto in arrivo

23

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 5: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Tipologie di servizio di rete5

Tipologie di servizio di rete

Servizio senza connessionereti a “datagramma”i pacchetti sono inviati da una sorgente senza un preventivo accordo sia coni pacchetti sono inviati da una sorgente senza un preventivo accordo sia con la destinazione sia con la retei pacchetti sono trattati dalla rete e quindi da ciascun nodo come entità indipendentil’instradamento è deciso pacchetto per pacchettoi router hanno un funzionamento “stateless”

Servizio connection orientedServizio connection-orientedreti a “circuito virtuale” (VC)prima dell’invio dei pacchetti viene instaurata una connessione di reteil cammino (path) di instradamento dei pacchetti è deciso al momento dell’instaurazione della connessionei nodi hanno un funzionamento “statefull”

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

i nodi mantengono informazioni sullo stato delle connessioni

Page 6: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Packet Switching – Virtual Circuit6

Packet Switching Virtual Circuit

Packet PacketPacket

Virtual circuit

Packet

E’ i f di t d ll i

Virtual circuit

E’ necessaria una fase di set-up della connessioneE’ necessario un protocollo di segnalazioneTutti i pacchetti seguono lo stesso path in retep g p

Consegna in sequenza dei pacchetti

L’informazione di indirizzamento contenuta nell’header di ogni pacchetto è l’identificatore della connessione a cui appartiene

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

l’identificazione della connessione avviene “per link”

Page 7: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Connection Setup7

Connection Setup

Connect Connect Connect

SW 1

SW 2

SW n

requestConnect request request

Connect Connect Connect

I messaggi di segnalazione

Connect confirm confirm

Connect confirm

sono trasmessi lungo il path della connessionedeterminano in ogni nodo l’esecuzione della funzione di routing che identifica il nodo successivo sul path inizializzano le tabelle di forwarding nei nodi

La connessione è identificata su ogni link da un “local tag” (Virtual Circuit Identifier – VCI))Ogni nodo (switch) memorizza la relazione tra input tag e output tag e interfaccia di uscita nella tabella di forwardingUna volta che le tabelle di forwarding sono inizializzate i pacchetti

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Una volta che le tabelle di forwarding sono inizializzate i pacchetti possono essere trasmessi in rete

Page 8: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Connection Setup Delay8

Connection Setup Delay

Connection setup delay Tempo di trasferimento Release delay

t

t321Connect

request CC

p y p Release delay

t

t31 2

1 2

ReleaseCR

Connect

CC

t31 2CR Connect

confirm

Il ritardo di instaurazione della connessione (connection setup delay) si somma al ritardo di transito dei pacchetti Tale ritardo addizionale èTale ritardo addizionale è

tollerabile se è inferiore al tempo di trasferimento dei pacchetti dati

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

inaccettabile se devono essere trasferiti pochi pacchetti

Page 9: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Virtual Circuit Forwarding Table9

Virtual Circuit Forwarding Table

O i t di i hOgni porta di ingresso ha una propria forwarding table

Si utilizza il VCI contenuto

InputVCI

Outputport

OutputVCI

nell’header del pacchetto come indice di accesso della tabella

1312 44

Si individua il record corrispondente al VCI, si legge la porta di uscita e il

l d l VCI l li k

15 15

1327

23

16

27

valore del VCI sul link d’uscita

Il valore del VCI d’uscita è ll’h d d l

1327 16

scritto nell’header del pacchetto

Commutazione molto veloce58 7 34

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 10: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Riassumendo10

Riassumendo…

Un circuito virtuale consiste inun percorso tra origine e destinazione p g

identificatori di connessione (VCI), uno per ciascun link

righe nella tabella di forwarding in ciascun nodo (switch)righe nella tabella di forwarding in ciascun nodo (switch)

Il pacchetto di un circuito virtuale ha un VCI nella propria intestazionepropria intestazione

Il VCI del pacchetto cambia su tutti i collegamenti llungo un percorso

Un nuovo VCI viene rilevato dalla tabella di forwarding

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 11: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Reti a datagramma11

Reti a datagramma

I router della rete sono “stateless”I router della rete sono stateless Non esiste il concetto di “connessione” a livello di rete

I router utilizzano gli indirizzi di destinazione per effettuareI router utilizzano gli indirizzi di destinazione per effettuare il forwarding

I pacchetti possono seguire percorsi diversi in reteLa consegna in sequenza non è garantita

l

1 Invio di dati 2 Ricezione di dati

ApplicazioneTrasporto

ReteC ll t

ApplicazioneTrasporto

Rete1. Invio di dati 2. Ricezione di datiCollegamentoFisico

ReteCollegamento

Fisico

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 12: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Esempio di Tabella di routing12

Esempio di Tabella di routing

Intervallo degli indirizzi di destinazione InterfacciaIntervallo degli indirizzi di destinazione Interfaccia

da 11001000 00010111 00010000 0000000000

a 11001000 00010111 00010111 11111111

d 11001000 00010111 00011000 00000000da 11001000 00010111 00011000 000000001

a 11001000 00010111 00011000 11111111

da 11001000 00010111 00011001 000000002

a 11001000 00010111 00011111 11111111a 11001000 00010111 00011111 11111111

altrimenti 3

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

232 = circa 4 miliardi di possibili indirizzi

Page 13: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Concetto di prefisso13

Concetto di prefisso

Prefisso Interfaccia

11001000 00010111 00010 0E’ necessaria una fase di ricerca del prefisso nella tabella

11001000 00010111 00011000 1prefisso nella tabella

Algoritmi di lookup11001000 00010111 00011 2

altrimenti 3

Esempi11001000 00010111 00010110 10100001 Q l i t f i di it ?

con: 11001000 00010111 00011000 10101010

con: 11001000 00010111 00010110 10100001 Qual interfaccia di uscita ?

Qual interfaccia di uscita ?

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

con: 11001000 00010111 00011000 10101010 Qual interfaccia di uscita ?

Page 14: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

14

A hit tt di tArchitettura di un router

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 15: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Architettura di un router15

Architettura di un router

dInput Line CardFunzioni di strato 1 & 2Header processing

Controller

Header processingRouting

Controller12

Line card

d icLine card

d

12 Segnalazione & resource

allocation

Switching Fabric

2

3Line card

Line card

hing

fab

r Line card

Line card

2

3

Funzione di forwarding tra porte di ingresso e di uscita

Output Line CardN Line card Sw

itch

Line card N…………

utput L n arScheduling & priorityMultiplexing

D t th

Input ports Output ports

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Data path Control path

Page 16: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Porte d’ingresso (Input Line Card)16

Porte d ingresso (Input Line Card)

Commutazione distribuita

Determina la porta d’uscita dei pacchetti

Livello fisico:ricezione a livello di bit

d uscita dei pacchetti utilizzando le informazioni della tabella di routingtabella di routing

Obiettivo: completare l’elaborazione allo stesso tasso della lineastesso tasso della linea

Funzione di bufferizzazione se il fftasso di arrivo dei pacchetti è superiore a quello di inoltro

Livello di linkEs. Ethernet

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

q

Page 17: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Porte d’uscita17

Porte d uscita

Bufferizzazionequando la struttura di commutazione consegna pacchetti alla porta d’ it f h ll d l ll t td’uscita a una frequenza che supera quella del collegamento uscente

Packet schedulingstabilisce in quale ordine trasmettere i pacchetti accodati

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

stabilisce in quale ordine trasmettere i pacchetti accodati

Page 18: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

18

Il protocollo IP

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 19: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Architettura del protocollo IP19

Architettura del protocollo IP

Livello di trasporto: TCP, UDP

Protocolli di instradamento•Selezione di percorso

Protocollo IP•Convenzioni di indirizzamento•Formato dei pacchetti•Convenzioni di manipolazioneLi ll

Tabellad’inoltro

p•RIP, OSPF, BGP

pdei pacchetti

Protocollo ICMPN tific d li rr ri

Livellodi rete

d inoltro •Notifica degli errori•Segnalazioni del router

Livello di collegamentoLivello di collegamento

Livello fisico

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 20: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Architettura protocollare20

Architettura protocollare

Il protocollo IP (RFC 791, 919, 922, 950, 1349)è un protocollo di strato di rete

opera con modalità di trasferimento senza connessione

non fornisce alcuna garanzia sulla QoS (servizio “best effort”)

Il protocollo IP esegue le seguenti funzionidefinisce il formato dei pacchetti

la lunghezza massima di un pacchetto è di 65536 byte

definisce lo schema di indirizzamento

definisce le modalità di instradamento dei pacchetti

esegue, se necessario, la frammentazione e il ri-assemblaggio delle unità dati

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

un tà at

Page 21: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Architettura protocollare21

Architettura protocollare

Il protocollo ICMP (Internet Control Message Protocol)è un protocollo senza connessione

èè orientato arisolvere eventuali situazioni anomale

controllare il trasferimento (controllo di flusso di tipo On-Off)

comunicare alle sorgenti eventuali problemi (ad es. di indirizzamento)

Esempi:Q h i i d l d i i i l' i i di h iSource Quench: inviato dal destinatario, interrompe l'emissione di pacchetti

del mittente;

Redirect: il destinatario segnala al mittente di re-instradare il pacchetto verso un altro host;

Echo: controlla se un possibile destinatario è attivo,

Destination Unreacheable: notifica il mittente la non raggiungibilità di un

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Destination Unreacheable: notifica il mittente la non-raggiungibilità di un host

Page 22: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IPv422

Formato del pacchetto IPv4

0 4 8 12 16 20 24 28 31

Bit

Vers HLEN Service Type Total Length

Identification Flag + Fragment Offset

Ti T Li P t l H d Ch k20

Time To Live Protocol Header Checksum

Source IP Address

Destination IP Address

byteMax

65536Options Padding

Destination IP Address

Data

Max 40 byte

65536byte

Data

. . . . . . . .

Data

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Data

Page 23: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP23

Formato del pacchetto IP

V (4 b )Vers (4 bit)versione del protocollo, è possibile la coesistenza di più versioni di IPversioni di IP

Header Length (HLEN) (4 bit)l n h d ll'int st i n (sp ifi t in p l di 32 bit)lunghezza dell intestazione (specificata in parole di 32 bit)comprende la parte fissa (20 bytes) e la parte opzionalev l r m ssim : 60 b tvalore massimo: 60 byte

Total length (16 bit)lunghezza complessiva del pacchetto (specificata in byte)comprende la lunghezza dell’header e del payload

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

valore massimo: 65536 byte

Page 24: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP24

Formato del pacchetto IP

Service Type (8 bit)specifica i parametri di qualità di servizio richiesti dall’utente p p qper il pacchetto

Precedence (3 bit)indicano il livello di priorità del pacchetto

in passato non sono stati utilizzati

ora implementano i meccanismi DiffServ

Precedence Delay Thput Reliab. Cost 0

4 5 6 7 81 2 3

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 25: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP25

Formato del pacchetto IP

Service Type (8 bit)Type Of Service (TOS) (4 bit)Type Of Service (TOS) (4 bit)

indicano il tipo di servizio richiesto per il pacchetto

il servizio normale si ha se tutti i quattro bit sono a 0m q

solo uno dei quattro bit può essere posto a 1

1 0 0 00 1 0 00 0 1 0

Minimize delayMaximize ThroughputM i i R li bilit0 0 1 0

0 0 0 1Maximize Reliability

Minimize Monetary Cost0 0 0 0 Normal Service

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

0 0 0 0 Normal Service

Page 26: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP26

Formato del pacchetto IP

Ogni rete fisica ha un valore massimo di lunghezza della propria unità informativa

Maximum Transmission Unit - MTU

La frammentazione di un pacchetto IP è necessaria se il valore d ll MTU ll tt t fi i è i f i ll l h d ldella MTU nella sottorete fisica è inferiore alla lunghezza del pacchetto

Il valore minimo di una MTU è 68 byteIl valore minimo di una MTU è 68 byte

La frammentazione è effettuata dal router/host prima del rilancio nella sottorete

La ricomposizione del pacchetto originale è effettuata dall’hostdi destinazione

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 27: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP27

Formato del pacchetto IP

Identification (16 bit)numero identificativo del pacchetto da frammentare

è assegnato dal processo sorgente

Flags (3 bit)X: non usato e posto a zero

DF: Don't Fragment (0: frammentazione permessa; 1: frammentazione vietata)frammentazione vietata)

MF: More Fragment (0: ultimo frammento del pacchetto; 1: non è l’ultimo frammento)

Fragment Offset (13 bit)posizione del frammento all'interno del pacchetto (espresso in unità di 8 byte) consente di valutare l’integrità del pacchetto

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

di 8 byte) consente di valutare l integrità del pacchetto

Page 28: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Frammentazione dei pacchetti IP28

Frammentazione dei pacchetti IP

L’unità massima diL unità massima di trasmissione (MTU) è la massima quantità di dati che un frame a livello di

Frammentazioneingresso: un pacchettouscita: 3 pacchetti più

collegamento può trasportareDifferenti tipi di link, differenti MTU

uscita 3 pacchetti più piccoli

Pacchetti IP grandi vengono suddivisi (“frammentati”) in pacchetti IP più piccoli

Riassemblaggiop p p

I frammenti saranno riassemblati solo una volta raggiunta la destinazione

I bit dell’intestazione IP sono usati per identificare e ordinare i frammenti

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 29: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Frammentazione e riassemblaggio IP29

Frammentazione e riassemblaggio IP

Esempio

Pacchetto = 4000 byteID=x

Offset=0

Flag=0

Lunghez.=4000

MTU = 1500 byte Un pacchetto IP grande viene frammentato in pacchetti IP più piccoli

ID=x

Offset=0

Flag=1

Lunghez.=1500

ID=x

Offset=185

Flag=1

Lunghez.=1500

1480 byte nel campo dati

ID=x

Offset=370

Flag=0

Lunghez.=1040Offset = 1480/8

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 30: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP30

Formato del pacchetto IP

Ti T Li (TTL) (8 bit)Time To Live (TTL) (8 bit)indica il numero massimo di router che possono essere ancora attraversati dal pacchetto

è inizializzato dall’host sorgente ed è decrementato di una unità da ogni router

quando il valore del campo è nullo, il pacchetto è scartato e viene emesso un messaggio ICMP di notifica verso l’host sorgentemessaggio ICMP di notifica verso l host sorgente

Protocol (8 bit)indica a quale protocollo dello stato superiore deve essere trasferito ilindica a quale protocollo dello stato superiore deve essere trasferito il contenuto informativo del pacchetto (es. TCP=6, UDP=17, ICMP=1)

Header Cecksum (16 bit)protegge solo l'intestazione del pacchetto

se viene rivelato un errore il pacchetto è scartato

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 31: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Formato del pacchetto IP31

Formato del pacchetto IP

S Add (32 bit) D ti ti Add (32 bit)Source Address (32 bit) e Destination Address (32 bit)Options (lunghezza variabile a multipli di 8 bit)

Record Route Option (RRO)Record Route Option (RRO)lista vuota di indirizzi IP, ogni router attraversato inserisce il suo indirizzo

Timestamp OptionTimestamp Optioncome RRO con in più l'istante in cui il pacchetto attraversa ogni router

Loose Source Routing Option (LSRO)specifica una lista di router che devono essere attraversati dal pacchetto

Strict Source Route Option (SSRO)specifica tutti i router attraverso i quali deve transitare il pacchetto

Paddingrende l'intestazione multipla di 32 bit mediante introduzione di zeri

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

rende l intestazione multipla di 32 bit mediante introduzione di zeri

Page 32: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

32

Il t ll ICMPIl protocollo ICMP

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 33: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Internet Control Message Protocol (ICMP)33

Internet Control Message Protocol (ICMP)

Il protocollo ICMP (RFC 792, 950) consente ai router di inviare all’host sorgente informazioni riguardanti anomalie nel processamento di unriguardanti anomalie nel processamento di un pacchetto

errori di instradamentoerrori di instradamento

TTL scaduto

congestione eccessivacongestione eccessiva

ICMP è una parte integrante di IP è deve essere incluso in ogni implementazione di IPincluso in ogni implementazione di IP

Un messaggio ICMP è incapsulato nella parte dati di un pacchetto IP

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

un pacchetto IP

Page 34: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

ICMP34

ICMP

MP h l l d fICMP ha lo scopo esclusivo di notificare errori all’host di origine

ICMP non specifica le azioni che devono essere prese perICMP non specifica le azioni che devono essere prese per rimediare ai malfunzionamentispetta all’host di origine decidere le azioni da intraprendere

il blper correggere il problema

I messaggi ICMP non sono elaborati dai router intermediintermediNon vengono generati nuovi messaggi ICMP in seguito ad errori causati da pacchetti contenentiseguito ad errori causati da pacchetti contenenti messaggi ICMP

evita messaggi di errore relativi a messaggi di errore

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 35: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

ICMP35

ICMP

Un messaggio ICMP si riferisce ad uno specifico pacchetto

Un messaggio ICMP contiene l’indicazione del particolare pacchetto IP che ha generato l’errore

nel caso di frammentazione, un messaggio ICMP viene emesso solo per il frammento 0

Formato messaggio ICMP

0 8 16 24 31Byte

ICMP data

Type Code Checksum0 8 16 24 31

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

ICMP data

Page 36: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

ICMP36

ICMP

Type (4 bit): identificano il particolare messaggio ICMP

0 Echo replay 11 Time exceededp y3 Dest. Unreachable4 Source Quench5 Redirect

13 Time stamp request14 Time stamp replay17 Address mask req

C d (4 bit)

5 Redirect 17 Address mask req.8 Echo 18 Address mask rep.

Code (4 bit)contiene il codice di errore

D tDataconsente l’individuazione del pacchetto che ha causato l’errore

ti t d l h tt IP

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

contiene parte del pacchettoIP

Page 37: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

ICMP37

ICMP

R dRedirect messagese è emesso da un router significa che i successivi pacchetti emessi dall’host verso la rete dovranno essere indirizzati verso il router i di l i ICMPindicato nel messaggio ICMPcausa una modifica della tabella di instradamento dell’host sorgente

Source quenchSource quenchse è emesso da un router intermedio indica che il router non ha buffer sufficiente per memorizzare il pacchettose è emesso dall’host di destinazione indica che il pacchetto non è stato processato dall’hostil messaggio è utilizzato dal TCPm agg ut zzat a

Time exceededindica che il TTL si è esaurito

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 38: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

ICMP38

ICMP

Echo e Echo replaysono utilizzati per stabilire l’attività di un elemento di un host

Destination unreachableindica che l’instradamento di un pacchetto non è stato completato

Time Stamp Request e Time Stamp Replaysono utilizzati per effettuare misure di prestazioni (es. ritardi di transito)transito)

Address mask request e Address mask replaysono usati per determinare la maschera della sotto-rete a cui èsono usati per determinare la maschera della sotto-rete a cui è connesso un host

sono usati da host molto semplici (diskless) dopo aver individuato il proprio indirizzo con il protocollo RARP

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

proprio indirizzo con il protocollo RARP

Page 39: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Ping39

Ping

Si utilizza per verificarel’istallazione della pila TCP/IPl istallazione della pila TCP/IP

l’attività di un host

il tempo di transito tra host sorgente e host destinazione

utilizza i messaggi ICMP Echo e Echo Replay

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 40: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Traceroute40

Traceroute

Il programma invia una serie di pacchetti IP alla destinazione

Il primo con TTL =1

Quando il messaggio ICMP arriva, l’origine può calcolare RTTp

Il secondo con TTL=2, ecc.

Numero di porta qualsiasi

Traceroute lo fa per 3 volte

Quando l’n-esimo pacchetto arriva all’n-esimo router

Criteri di arresto dell’invioQuando un segmento UDP arriva all’host di destinazionearr a a n s mo rout r

Il router scarta il pacchetto

Invia all’origine un messaggio di allerta ICMP (tipo 11 codice

L’host di destinazione restituisce un messaggio ICMP di porta non raggiungibile (tipo 3 di 3)di allerta ICMP (tipo 11, codice

0)

Il messaggio include il nome del router e l’indirizzo IP

3, codice 3).

Quando l’origine riceve questo messaggio ICMP, si blocca

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

del router e l indirizzo IP

Page 41: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

I di i tIndirizzamentoin IPv4in IPv4

DIET Dept4141

Page 42: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Indirizzamento IP42

Indirizzamento IP

Un indirizzo IP (IP Address) identifica un interfaccia di rete

223 1 1 1se un host è connesso a più di una rete (multi-homed) avrà un indirizzo

223.1.1.1

223.1.1.2223 1 1 4 223 1 2 9

223.1.2.1)

IP per ogni interfaccia

Un router ha tanti indirizzi IP quanto sono le 223.1.1.3

223.1.1.4 223.1.2.9

223.1.2.2223.1.3.27indirizzi IP quanto sono le interfacce di rete che gestisce

Un indirizzo IP pubblico èUn indirizzo IP pubblico è unico in tutta la rete

ha una lunghezza di 32 bit

223.1.3.2223.1.3.1

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 43: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Schema di indirizzamento43

Schema di indirizzamento

Notazione numerical’indirizzo è espresso da una stringa di 32 bitp g

Notazione “dotted”i di 8 bit d ll t i i è tit itogni gruppo di 8 bit della notazione numerica è sostituito

dall’equivalente numero decimale

Notazione Numerica 10010111 01100100 00001000 00010010

Notazione Dotted 151. 100. 8. 18

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 44: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Indirizzamento IP44

Indirizzamento IP

Una sottorete è una rete isolata i

i ti t i li223.1.1.1

cui punti terminali sono collegati all’interfaccia di un

223.1.1.2223.1.1.4 223.1.2.9

223.1.2.1

all interfaccia di un host o di un router

Esempio: LAN223.1.1.3 223.1.2.2

223.1.3.27Esempio: LAN

Una sottorete è anche detta rete

223.1.3.2223.1.3.1

sottorete

anche detta rete IP

t t d 3 tt ti

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

rete composta da 3 sottoreti

Page 45: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Indirizzamento IP45

Indirizzamento IP

Quante sottoreti compongono la rete IP t t i 223.1.1.1 223.1.1.4

223.1.1.2

IP mostrata in figura ?

223.1.1.1

223.1.1.3

223.1.1.4

223 1 7 0223 1 9 2

Un link diretto tra

223.1.7.0223.1.9.2

Un l nk d retto tradue router è una sottorete con due

f

223.1.7.1223.1.8.0223.1.8.1

223.1.9.1

interfacce

223.1.2.2223.1.2.1

223.1.2.6

223.1.3.2223.1.3.1

223.1.3.27

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

. . .

Page 46: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Indirizzamento IP46

Indirizzamento IP

d P è f dUn indirizzo IP è formato da due parti

Net_Id: identificativo di 223.1.1.1_sotto-reteHost_Id: identificativo di host all’interno della sotto-

t

223.1.1.2223.1.1.4 223.1.2.9

223.1.2.1

rete

IP_Address = Net_Id . Host_Id

L d N d

223.1.1.3 223.1.2.2223.1.3.27

La divisione tra Net_Id e Host_Id non è fissa

Una sottorete è una rete223.1.3.2223.1.3.1

sottorete

Una sottorete è una rete isolata i cui punti terminali sono collegati all’interfaccia di un host o di un router t t d 3 tt ti

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

di un host o di un router rete composta da 3 sottoreti

Page 47: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Concetto di prefisso di sottorete47

Concetto di prefisso di sottorete

è d f d223.1.1.0/24 223 1 2 0/24Una sottorete è identificata da un

prefisso (Net_Id)parte dell’indirizzo IP identica per tutte le interfacce che

ll

223.1.2.0/24

appartengono alla sottorete

Gli indirizzi IP delle interfacce di una stessa sottorete sono caratterizzati dallo stesso prefissocaratterizzati dallo stesso prefisso

Un indirizzo IP è quindi formato da due partidue parti

Prefisso (Net_Id): identificativo di sotto-reteHost_Id: identificativo di host ll’i t d ll tt tall’interno della sotto-rete

IP_Address = Net_Id . Host_Id

La divisione tra Net_Id e Host_Id 223.1.3.0/24

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

non è fissa Maschera di sottorete: /24

Page 48: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Schema di indirizzamento “Classfull”48

Schema di indirizzamento Classfull

In origine (1981, RFC 1166) le sottoreti erano divise in classila classe era individuata dai bit iniziali dell’indirizzo

i prefissi (Net_Id) di sottorete avevano lunghezza fissa

Bit “R ti” “H t”Classe Bitiniziali Net_Id Host_Id “Reti”

disponibili

A 0 7 bit 24 bit

“Host”disponibili

128 16.777.216A

B

C

0

10

110

7 bit

14 bit

21 bit

4 bit

16 bit

8 bit

8 6.777. 6

16384 65.536

2 097 152 256C

D

E

110

1110

11110

21 bit 8 bitIndirizzo multicast: 28 bit

Indirizzi possibili: 268.435.456Riservata per usi futuri: 27 bit

2.097.152 256

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

E 11110 p fIndirizzi possibili: 134.217.728

Page 49: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Schema di indirizzamento “Classful”49

Schema di indirizzamento Classful

Classi di indirizzi IP

Classe A 0 Host_Id8 16 24 310

Net_Id

Classe B

Cl C H t Id

Host_Id

1 1 0

1 0 Net_id

N t IdClasse C

Classe D

Host_Id

1 1 1 0

1 1 0

1 1 1 0

Net_Id

Multicast Address

Classe E 1 1 1 1 0 Reserved

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 50: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Convenzioni speciali50

Convenzioni speciali

Se un host si muove dalla rete in cui si trova, il suo indirizzo deve essere cambiato

Mobilità: protocollo Mobile IP

Convenzioni specialiConvenzioni speciali

Questo host (fase di boot) Tutti “0”

Host nella rete locale Tutti “0” Host_Id

“ ”Broadcast sulla rete locale Tutti “1”

Broadcast sulla rete Net_Id Net_Id Tutti “1”

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

_

Page 51: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Subnetting51

Subnetting

La struttura di indirizzamento a due livelli gerarchici era sufficiente nella fase iniziale di Internet

Nel 1984 è stato aggiunto un terzo livello gerarchicoNel 1984 è stato aggiunto un terzo livello gerarchicoil livello di Sottorete (Subnet)

Si utilizzano alcuni bit dell’Host Id per codificare ilSi utilizzano alcuni bit dell Host_Id per codificare il Subnet_Id

OriginalOriginaladdress Net ID Host ID1 0

Subnettedaddress Net ID Host ID1 0 Subnet ID

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 52: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Subnetting52

Subnetting

Il campo Subnet_Id è identificato da una maschera denominata “Subnet Mask”

U b M k è l di 32 bi i iUna Subnet Mask è una parola di 32 bit in cui

i bit uguali a “1” identificano i bit del Net_Id e del Subnet_Id

i bit uguali a “0” identificano i bit dell’Host_Id

La Subnet_Id ha significato solo nel router a cui sono l tt ticonnesse le sottoreti

IP address Net ID Host ID1 0 Subnet ID

Subnet Mask 1 1 1 1 1 1 1 1 1 11 1 0 00 00 00. . .

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 53: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Subnetting Statico (lunghezza fissa)53

Subnetting Statico (lunghezza fissa)

Tutte le subnet hanno la stessa maschera

Esempio:Esempio:

Net id Host id0

Subnet

Net_id Host_id0

1 8 16 24 32SubnetMask

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

255 255 255 192

numero massimo di sottoreti possibili = 218 = 262.142

numero massimo di host per sottorete = 26 - 2 = 62

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 54: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Subnetting a lunghezza variabile54

Subnetting a lunghezza variabile

Le sotto-reti di una rete usano maschere diverseConsente di gestire reti di dimensione diversa 64 host

Esempio:Router con un indirizzo di classe C

193 214 32 0

A

B 0001

64 host

193.214.32.0

5 SottoretiSubnet A, Subnet B, Subnet C: 50 host

Router165.214.32.0

C10

11Subnet A, Subnet B, Subnet 50 host

Subnet D, Subnet E: 30 host

Subnetting ED

110 11164 host

3 sottoreti con 64 host ciascuna (Host_id: 6 bit)(subnet mask 255.255.255.192)

1 sottorete divisa in due ulteriori sottoreti con 32 host ciascuna (Host_id: 5 bit) (subnet mask 255 255 255 224)

32 host32 host

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

(subnet mask 255.255.255.224)

Page 55: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Esempio subnetting55

Esempio subnetting

d h d d l B (H d 16 b )Un provider ha un indirizzo di classe B (Host Id = 16 bit) con Net_Id = 150.100.0.0Si devono creare sottoreti con un numero massimo di 100 host iciascuna

7 bit sufficenti per ciscuna sottorete16 – 7 = 9 bit per il Subnet_Idp _

Si applicano le subnet mask per individuare la sottoreteEsempio: trovare la sottorete per 150.100.12.176IP add = 10010110 01100100 00001100 10110000Mask = 11111111 11111111 11111111 10000000AND = 10010110 01100100 00001100 10000000AND 10010110 01100100 00001100 10000000Subnet = 150.100.12.128L’indirizzo di sottorete è usato dai router del provider

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 56: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Subnetting a lunghezza variabile56

Subnetting a lunghezza variabile

H1 H2150 100 12 176150 100 12 154

150.100.12.128150.100.12.176150.100.12.154

150.100.12.129

R1H3 H4To Internet

150.100.0.1

150.100.12.4

150.100.12.0

150.100.12.24 150.100.12.55

150.100.12.1

R2 H5

150.100.15.54 150.100.15.11

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

150.100.15.0

Page 57: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Routing in reti IPRouting in reti IP

DIET Dept5757

Page 58: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Routing in reti IP58

Routing in reti IP

Sia gli host che i router hanno una Tabella di Routing (Routing table)Sia gli host che i router hanno una Tabella di Routing (Routing table)Host origine

Se la destinazione è sulla stessa rete, il pacchetto è emesso direttamente d l’ f d

pusando l’interfaccia di rete

La frame in cui viene incapsulato il pacchetto conterrà l’indirizzo MAC della destinazione

Se la destinazione non è nella stessa rete, il pacchetto è inviato al default routerrouter

La frame in cui viene incapsulato il pacchetto conterrà l’indirizzo MAC del router

RouterEsamina l’indirizzo IP di destinazione (IP destination address) nel pacchetto entranteSe la destinazione è su una delle reti a cui è connesso il router, il pacchetto è emesso direttamente usando l’interfaccia di reteè emesso direttamente usando l interfaccia di reteSe la destinazione non è su una delle reti a cui è connesso il router, il router accede alla routing table per determinare il next-hop verso cui inoltrare il pacchetto

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

p

Page 59: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Routing Table59

Routing Table

Ogni riga contieneDestination IP address

Crieri di ricerca e relative azioni

1 D ti ti ddIP address del next-hop router

1. Destination address completo

2. Destination Net ID Identificatore della porta di uscita

. Dest nat on Net_ID(prefisso)

3. Default router

Informazioni statistiche 4. Altrimenti “Declare packet undeliverable”

emissione di un pacchettoemissione di un pacchetto ICMP “host unreachable error” verso l’host mittente

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 60: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Esempio: H5 emette un pacchetto verso H260

Esempio: H5 emette un pacchetto verso H2

H1 H2H1 H2

150.100.12.128150.100.12.176150.100.12.154

R1H3 H4T th st f

150.100.0.1150.100.12.129

H3 H4To the rest ofthe Internet

150 100 12 0

150.100.12.24 150.100.12.55150.100.12.4

R2 H5

150.100.12.0150.100.12.1

Destination Next-Hop

Routing Table a H5

150.100.15.54

150.100.15.0

150.100.15.11Destination Next-Hop

127.0.0.1 127.0.0.1

default 150 100 15 54 150.100.12.176

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

default 150.100.15.54

150.100.15.0 150.100.15.11

Page 61: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Esempio: H5 emette un pacchetto verso H261

Esempio: H5 emette un pacchetto verso H2H1 H2

150.100.12.176150.100.12.154

150 100 0 1

150.100.12.12850. 00. . 7650. 00. . 54

150.100.12.129

R1H3 H4To the rest of

the Internet

150.100.0.1

150 100 12 24 150 100 12 55150.100.12.4

150.100.12.0

150.100.12.24 150.100.12.55

150.100.12.1150 100 12 176 R2 H5

150.100.15.54 150.100.15.11Destination Next-Hop

127 0 0 1 127 0 0 1

150.100.12.176

150.100.15.0127.0.0.1 127.0.0.1

default 150.100.12.4

150 100 15 0 150 100 15 54Routing Table

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

150.100.15.0 150.100.15.54

150.100.12.0 150.100.12.1a R2

Page 62: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Esempio: H5 emette un pacchetto verso H262

Esempio: H5 emette un pacchetto verso H2H1 H2

150.100.12.176150.100.12.154

150 100 0 1

150.100.12.12850. 00. . 7650. 00. . 54

150.100.12.129 150.100.12.176R1

H3 H4To the rest ofthe Internet

150.100.0.1

150 100 12 24 150 100 12 55150.100.12.4

150.100.12.0

150.100.12.24 150.100.12.55

150.100.12.1Routing Table a R1R2 H5

150.100.15.54 150.100.15.11Destination Next-Hop

127.0.0.1 127.0.0.1

g

150.100.15.0150.100.12.128 150.100.12.129

150.100.12.0 150.100.12.4

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

150.100.15.0 150.100.12.1

Page 63: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Classless Inter Domain RoutingCIDR

DIET Dept6363

Page 64: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Problemi dell’indirizzamento IP64

Problemi dell indirizzamento IP

l h d lNel 1990, sono apparsi chari due prolemiGli indirizzi IP erano in via di esauriemntoLe tabelle di routing stavano crescendo di dimensione

Esaurimento de li indirizzi IPEsaurimento degli indirizzi IPla struttura Classful era inefficiente

Indirizzi di Classe B troopo grandi per la maggior parte delle organizzazioniIndirizzi di Classe C troopo piccoliC l f di ll i di i di i i di Cl B d l’ i il 1994Con la frequenza di allocazione di indirizzi di Classe B se ne prevedeva l’esaurimento entro il 1994

Dimensione delle IP routing tablela crescita del numero di reti IP si rifletteva nella crescita del numero di entry delle tabelle di routing

Dal 1991 al 1995, la dimensione delle routing table raddoppiava ogni 10 mesig pp gAumento del tempo di processing e della dimensione dell’ipegno di memoria

Soluzione Short-term Classless Interdomain Routing (CIDR), RFC 1518N ll i li (RFC 2050)New allocation policy (RFC 2050)Uso di indirizzi Privati per le Intranet

Long-term solutionAumento dello spazio di indirizzamento (IPv6 indirizzi a 128 bit)

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Aumento dello spazio di indirizzamento (IPv6, indirizzi a 128 bit)

Page 65: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Classless Inter Domain Routing (CIDR)65

Classless Inter Domain Routing (CIDR)

CIDR è stato ideato perrendere più efficiente l’impiego dello spazio di indirizzamento di IP

diminuire la complessità delle tabelle di instradamento nei router

Ad una rete è assegnato un certo numero di blocchi contigui di indirizzi (Supernetting)indirizzi (Supernetting)

la rete sarà caratterizzata da un unico prefisso (insieme dei bit più significativi)

la rete sarà individuata nei router solo dal suo prefisso

Un insieme di reti caratterizzato da blocchi di indirizzi àcontigui sarà identificato da un unico prefisso

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 66: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Address Allocation Policy66

Address Allocation Policy

Indirizzi di Classe A e B sono assegnati solo in caso di dimostrata necessità

Address Requirement

Address Allocation

Sono assegnati blocchi consecutivi di classe C (fino a 64 blocchi)

< 256 1 Class C

256<,<512 2 Class C64 blocchi)

Tutti gli IP addresses hanno un common prefix

ò

512<,<1024 4 Class C

1024< <2048 8 Class CLa lunghezza del prefisso può essere arbitraria

La metà inferiore degli indirizzi

1024<,<2048 8 Class C

2048<,<4096 16 Class Cg

di classe C è assegnata su base geografica

4096<,<8192 32 Class C

8192<,<16384 64 Class C

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 67: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

CIDR67

CIDR

P f f d l d d lPianificazione geografica degli indirizzi di classe CMultiregional 192.0.0 193.255.255E 194 0 0 195 255 255Europe 194.0.0 195.255.255Others 196.0.0 197.255.255North America 198.0.0 199.255.255Central/South America 200.0.0 201.255.255Pacific Rim 202.0.0 203.255.255Others 204.0.0 205.255.255

Tutte le reti appartenenti ad una regione geografica id tifi t d li t i 7 bit di fi

Others 206.0.0 207.255.255

sono identificate dagli stessi 7 bit di prefissoEsempio: Europa

da 194 = 11000010 0 a 195 = 11000011 1

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

da 194 = 11000010 0 a 195 = 11000011 1

Page 68: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Supernetting68

Supernetting

Esempio: 150.158.16.0/20IP Address (150.158.16.0); lunghezza della maschera (20)( ) g ( )

IP add = 10010110 10011110 00010000 00000000

Mask = 11111111 11111111 11110000 00000000Mask = 11111111 11111111 11110000 00000000

Contiene 16 blocchi di Classe C

Da 10010110 10011110 00010000 00000000150.158.16.0

Fino a 10010110 10011110 00011111 00000000150.158.31.0

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 69: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Classless Inter-Domain Routing69

Classless Inter Domain Routing

Il CIDR rallenta la crescita della dimensione delle Routing TableUna rete è rappresentata da un prefisso e da una maschera

Pre CIDR: Una rete con 16 blocchi di classe C contigui richiedeva 16 entryPre-CIDR: Una rete con 16 blocchi di classe C contigui richiedeva 16 entry

Post-CIDR: Una rete con 16 blocchi di classe C contigui richiedeva 1 entry

L’instradamento è effettuato in base al prefissoL m ff u p fUn entry di una Routing table entry contiene <IP address, network mask>

Esempio: 192.32.136.0/2111000000 00100000 10001000 00000001 min address

11111111 11111111 11111--- -------- mask

11000000 00100000 10001--- -------- IP prefix

11000000 00100000 10001111 11111110 max address

11111111 11111111 11111--- -------- mask

11000000 00100000 10001--- -------- same IP prefix

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 70: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

CIDR70

CIDR

E 1Esempio 1Assegnazione degli indirizzi nel Nord America

CIDR mask per il North America = 198.0.0.0/7

Ad un grande Internet Service Provider (ISP) sono assegnati 2048 blocchi di indirizzi di classe C

da 198.24.0.0 (11000110.00011000.00000000.0)a 198.31.255.0 (11000110.00011111.11111111.0)CIDR k il d ISP 198 24 0 0/13CIDR mask per il grande ISP = 198.24.0.0/13

Un piccolo ISP locale richiede al grande ISP 16 blocchi di indirizzi di classe C

da 198.24.16.0 (11000110.00011000.00010000.0)a 198.24.31.0 (11000110.00011000.00011111.0)CIDR k il i l ISP l l 198 24 16 0/20

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

CIDR mask per il piccolo ISP locale = 198.24.16.0/20

Page 71: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

CIDR71

CIDR

Esempio 2Assegnazione degli indirizzi in EuropaAssegnazione degli indirizzi in Europa

CIDR mask per l’Europa = 194.0.0.0/7

Ad una organizzazione sono assegnati 2048 indirizzi di classe C

da 194.32.136.0 (11000010.00100000. 10001000.0)

a 194.32.143.0 (11000010. 00100000.10001111.0)

CIDR mask per il grande ISP = 194.32.136.0/21

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 72: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

CIDR Allocation Principles (RFC 1518-1520)72

CIDR Allocation Principles (RFC 1518-1520)

L’assegnazione degli IP address riflette la topologia fisica della rete

La topologia di rete segue i confini continentali e nazionaliLa topologia di rete segue i confini continentali e nazionali Gli indirizzi IP devono essere assegnati su questa base

I domini di transito (TRD) hanno un prefisso IP unicoI domini di transito (TRD) hanno un prefisso IP unicoTrasportano traffico tra domini terminali

la maggior parte dei domini terminali sono single homed: connessila maggior parte dei domini terminali sono single-homed: connessi ad un solo TRD

A tali domini sono assegnati indirizzi con lo stesso prefisso del TRD

Tutte le reti connesse ad un TRD sono aggregate in un solo entry delle tabelle di routing (BGPv4, RFC 1520)

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 73: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

CIDR73

CIDR

16 blocchi32 blocchi4 blocchiClasse C

198.100.4.X/22 4 blocchiClasse C

16 blocchiClasse C

32 blocchiClasse C

8 blocchiClasse C

198.100.0.X/19

198.100.20.X/22 4 blocchi

16 blocchiClasse C

4 blocchiClasse C

4 blocchiClasse C

8 blocchiClasse C

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 74: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Longest Prefix Matching74

Longest Prefix Matching

In una routing table una Super rete può essere rappresentata da un unico elemento ppcorrispondente al suo prefisso

Per ogni pacchetto entrante, un router er ogn pacchetto entrante, un routersceglie l’instradamento verso la direzione corrispondente al prefisso di lunghezza c rr p n nt a pr f ungh zzamaggiore

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 75: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Longest Prefix Matching75

Longest Prefix Matching

Instradamentoindirizzo 198.15.7.3

indirizzo 198 15 7 4

Tabella di instradamento

Prefix Porta d’uscitaindirizzo 198.15.7.4

198.15.7.3porta 1: matching prefisso 16

Prefix

198.15.0.0/16

198 15 7 0/24

Porta d uscita

1

7porta match ng pref sso 6

porta 7: matching prefisso 24

porta 4: matching prefisso 32

198.15.7.0/24

198.15.7.3/32

7

4

198.15.7.4porta 1: matching prefisso 16

h f 198 15 7 3 porta 4porta 7: matching prefisso 24

porta 4: no matching

198.15.7.3 porta 4

198.15.7.4 porta 7

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 76: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Longest Prefix Matching76

Longest Prefix Matching

4 blocchi

No MatchingMatching 22

Matching 18198.100.4.X/22

Classe C

4 blocchiClasse C

16 blocchiClasse C

32 blocchiClasse C

Matching 20

Matching 198 blocchiClasse C

198 100 0 X/19No Matching

198 100 20 X/22

4 blocchiClasse C

198.100.0.X/19

16 blocchiClasse C

No Matching

198.100.20.X/22 4 blocchiClasse C

8 blocchiClasse C

198.100.6.22

No Matching

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

Page 77: Strato di rete (parte 1) “Reti a pacchetto” e “Protocollo IP”netlab.uniroma1.it/netgroup/sites/default/files/13_Strato di rete_1... · Funzioni del livello di rete 3 Funzioni

Longest Prefix Matching77

Longest Prefix Matching

Potrei spostare

4 blocchi

Potrei spostare questa sottorete nella sottorete 198.100.16.X/20?

198.100.4.X/22

Classe C

4 blocchiClasse C

16 blocchiClasse C

32 blocchiClasse C Come?

Matching 198 blocchiClasse C

198 100 0 X/19

198 100 20 X/22

4 blocchiClasse C

198.100.0.X/19

16 blocchiClasse C

198.100.20.X/22 4 blocchiClasse C

8 blocchiClasse C

198.100.6.22

4 blocchi

DIET DeptTelecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2017/2018

4 blocchiClasse C