RETI DI CALCOLATORI
E APPLICAZIONI TELEMATICHE
Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria
Università degli Studi di Udine
Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio, musica e testo) sono di proprietà dell’autore prof. Pier Luca Montessoro, Università degli Studi di Udine.
Le slide possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero dell’Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di lucro. In tal caso non è richiesta alcuna autorizzazione.
Ogni altro utilizzo o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su supporti magnetici, su reti di calcolatori e stampe) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte degli autori.
L’informazione contenuta in queste slide è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza preavviso. L’autore non assume alcuna responsabilità per il contenuto di queste slide (ivi incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento dell’informazione).
In ogni caso non può essere dichiarata conformità all’informazione contenuta in queste slide.
In ogni caso questa nota di copyright e il suo richiamo in calce ad ogni slide non devono mai essere rimossi e devono essere riportati anche in utilizzi parziali.
Nota di Copyright
Lezione 24
Protocolli del livello network
e funzionamento del protocollo IP
Lezione 24: indice degli argomenti
• Indirizzi IP e indirizzi MAC: il protocollo ARP
• Protocolli di routing
• autonomous systems
• IGP: Interior Gateway Protocol
• EGP: Exterior Gateway Protocol
• IPv6
Indirizzi IP e indirizzi MAC:
il protocollo ARP
Indirizzi IP e indirizzi MAC
• Indirizzo conosciuto dall’applicazione:
• IP
• Indirizzo necessario per spedire un messaggio su una LAN:
• MAC
• Come trovare la corrispondenza tra
indirizzi di livello 3 e indirizzi di livello 2?
ARP: Address Resolution Protocol
• Sfrutta la trasmissione broadcast delle LAN
• Viene inviato in broadcast (MAC DSAP FF-FF-FF-FF-FF-FF) un pacchetto
contenente l’indirizzo IP di cui si cerca il corrispondente MAC
• Tutte le stazioni leggono il pacchetto,
quella interessata risponde
ARP: Address Resolution Protocol
158.109.1.38 08-00-2B-92-30-03
158.109.1.39
08-00-2B-BC-17-24
158.109.1.40 08-00-2B-09-56-8A
DEVO INVIARE
UN MESSAGGIO A
158.109.1.40
ARP: Address Resolution Protocol
158.109.1.38 08-00-2B-92-30-03
158.109.1.39
08-00-2B-BC-17-24
158.109.1.40 08-00-2B-09-56-8A MAC DSAP = FF-FF-FF-FF-FF-FF
IP cercato = 158.109.1.40 pacchetto ARP
MA SONO IO!
ARP: Address Resolution Protocol
158.109.1.38 08-00-2B-92-30-03
158.109.1.39
08-00-2B-BC-17-24
158.109.1.40 08-00-2B-09-56-8A MAC DSAP = 08-00-2B-92-30-03
MAC cercato = 08-00-2B-09-56-8A pacchetto ARP di risposta
BENE, ORA SO
COME INVIARE
IL MESSAGGIO
ARP: Address Resolution Protocol
158.109.1.38 08-00-2B-92-30-03
158.109.1.39
08-00-2B-BC-17-24
158.109.1.40 08-00-2B-09-56-8A MAC DSAP = 08-00-2B-09-56-8A
IP DSAP = 158.109.1.40 messaggio
Esempio
router Ethernet
Ethernet router
FDDI
router bridge
Ethernet PVC
Frame Relay
router CDN
rete 158.109.0.0
netmask 255.255.255.0
router 158.109.1.1
158.109.1.1
router
router bridge router
158.109.1.2 158.109.1.2
158.109.1.254 158.109.1.254 158.109.1.3
158.109.1.3
158.109.2.2 158.109.2.2
158.109.2.1 158.109.2.1
158.109.2.254 158.109.2.254
158.109.3.1 158.109.3.1 158.109.3.254
158.109.3.254
158.109.3.253 158.109.3.253
158.109.3.252 158.109.3.252 158.109.3.2
158.109.3.2
158.109.3.3 158.109.3.3
158.109.4.253 158.109.4.253 158.109.4.254
158.109.4.254
158.109.5.254 158.109.5.254
158.109.5.253 158.109.5.253
router 158.109.1.1
158.109.1.1
router
router bridge router
158.109.1.2 158.109.1.2
158.109.1.254 158.109.1.254 158.109.1.3
158.109.1.3
158.109.2.2 158.109.2.2
158.109.2.1 158.109.2.1
158.109.2.254 158.109.2.254
158.109.3.1 158.109.3.1 158.109.3.254
158.109.3.254
158.109.3.253 158.109.3.253
158.109.3.252 158.109.3.252 158.109.3.2
158.109.3.2
158.109.3.3 158.109.3.3
158.109.4.253 158.109.4.253 158.109.4.254
158.109.4.254
158.109.5.254 158.109.5.254
158.109.5.253 158.109.5.253
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
La stazione 158.109.1.3 conosce:
• il proprio indirizzo IP
• la netmask (255.255.255.0)
• il default gateway (158.109.1.254)
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
La stazione 158.109.1.3 confronta il proprio indirizzo IP con quello di destinazione
(158.109.3.1) mascherando il risultato con la netmask.
Risultato: scopre che la destinazione è su una diversa subnet.
Quindi è necessario usare il router.
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
La stazione 158.109.1.3 invia un ARP,
in broadcast, per scoprire l’indirizzo MAC
di 158.109.1.254.
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Il router risponde comunicando il proprio MAC:
08-00-2B-4A-55-30.
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
La stazione 158.109.1.3 invia il messaggio al router. Il pacchetto ha una busta di livello 3
dentro una busta di livello 2, con DSAP differenti:
• IP DSAP: 158.109.3.1 (destinazione finale)
• MAC DSAP: 08-00-2B-4A-55-30 (router)
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Il router, usando le tabelle di instradamento, imbusta il pacchetto IP in un pacchetto PPP e lo invia sul CDN.
L’indirizzo 158.109.5.253 è utile per gli
algoritmi di routing e per l’instradamento.
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Il secondo router, usando le tabelle di
instradamento, scopre che il destinatario
è adiacente alla sua porta 158.109.3.252
(stessa subnet).
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Il secondo router invia un ARP in broadcast per scoprire il
MAC di 158.109.3.1
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Trattandosi di un messaggio
broadcast, il bridge FDDI/Ethernet
lo inoltra sull’anello FDDI
router
router
router bridge router
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253 158.109.1.254
158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
La stazione 158.109.3.1 risponde all’ARP comunicando il proprio MAC: 08-00-2B-45-67-22.
Il bridge, avendo prima appreso
la posizione di 08-00-2B-3D-BE-19,
fa passare il pacchetto.
router
router
router bridge router
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253 158.109.1.254
158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
Il secondo router imbusta il pacchetto IP in un pacchetto Ethernet con
indirizzo di destinazione singlecast 08-00-2B-45-67-22 e lo invia.
Anche questa volta il bridge fa
passare il pacchetto.
router
router
router bridge router
158.109.1.254 158.109.1.254
08-00-2B-4A-55-30 08-00-2B-4A-55-30
158.109.1.3 158.109.1.3
08-00-2B-3C-AF-01 08-00-2B-3C-AF-01
158.109.3.1 158.109.3.1
08-00-2B-45-67-22 08-00-2B-45-67-22 158.109.3.252 158.109.3.252
08-00-2B-3D-BE-19 08-00-2B-3D-BE-19
158.109.5.254
158.109.5.254 158.109.5.253158.109.5.253
Trattandosi di un messaggio
broadcast, il bridge FDDI/Ethernet
lo inoltra sull’anello FDDI
ICMP
Internet Control Message Protocol
• Verifica dello stato della rete
• “echo request” ed “echo reply”
• Riportare anomalie
• destination unreachable
• time exceeded for a datagram
• parameter problem on a datagram
ICMP
Internet Control Message Protocol
• Scoprire la netmask
• mask request
• address mask reply
• Migliorare il routing (per più router sulla stessa LAN)
• redirect
Protocolli di routing
Autonomous System (AS)
• È un insieme di sottoreti raggruppate
secondo criteri topologici e organizzativi
• All’interno di un AS il routing e
l'indirizzamento sono strettamente coordinati
• Interior router:
• visibilità limitata all’interno dell’AS
• Exterior router:
• visibilità all’interno dell’AS e sugli exterior
router degli altri AS
Autonomous System (AS)
AS 137 AS 66
E I I
E
E: exterior router
I: interior router
Protocolli di routing
• IGP: Interior Gateway Protocol
• RIP: Routing Information Protocol (distance vector)
• IGRP: Interior Gateway Routing Protocol (distance vector)
• OSPF: Open Shortest Path First (link- state)
• Integrated IS-IS (link-state)
Protocolli di routing
• EGP: Exterior Gateway Protocol
• EGP*: Exterior Gateway Protocol (reachability-only)
• BGP: Border Gateway Protocol (distance vector)
• IDRP: Inter Domain Routing Protocol
* lo stesso nome è utilizzato sia come termine
generico che come nome del protocollo
IGP: Interior Gateway Protocol
RIP
Routing Information Protocol
• Protocollo di routing intradominio basato su un algoritmo di tipo distance vector
• Metrica di costo: basata su hop count
• Messaggi di update: inviati ogni 30 s
• Aggiornamento dei percorsi: entro 3 minuti
• Memorizzazione in tabella del solo
percorso migliore verso la destinazione
IGRP
Interior Gateway Routing Protocol
• Protocollo distance vector proprietario Cisco
• Supera i limiti di RIP (max hop count, nessun instradamento alternativo)
• Metriche sofisticate contenenti ritardo, banda, affidabilità, lunghezza massima del pacchetto, carico
• Multipath routing
• suddivisione del traffico tra più linee
parallele
OSPF
Open Shortest Path First
• Protocollo di tipo link state packet
• Prevede un’organizzazione gerarchica
• un AS può essere suddiviso in aree
• ogni area è costituita da una rete o da un gruppo di reti contigue
• Esiste una backbone area che connette
tutte le altre aree
H3
FDDI
BACKBONE AREA
AREA 1 AREA 2
backbone router
area border router
altro AS AS
Boundary Router
internal router internal
router
H1 R1
R3 R2 Ethernet
Ethernet R6
H4 R5
R4
H2 H5 H6 Ethernet
EGP: Exterior Gateway Protocol
EGP
Exterior Gateway Protocol
• Propaga solo le informazioni di raggiungibilità dei nodi
• Non ha metriche associate
• Non ammette magliature nella topologia
BGP
Border Gateway Protocol
• Algoritmo di tipo distance vector
• invece di propagare i costi propaga la sequenza di AS da attraversare per raggiungere una data destinazione
• I router comunicano utilizzando un servizio affidabile del TCP
• La politica di calcolo dell’instradamento
preferito è configurabile
CIDR
Classless Inter Domain Routing
• Pensato per sfruttare al massimo gli indirizzi disponibili
• Propaga la netmask insieme all’indirizzo
• Consente di propagare informazioni di raggiungibilità di cluster di reti
• Esempio:
• 199.9.4.0 con netmask 255.255.252.0
annuncia 199.9.4.0, 199.9.5.0, 199.9.6.0
e 199.9.7.0
IPv6
IPv6
• Spazio degli indirizzi grande a sufficienza
• Indirizzi multicast e anycast (indica il
server più vicino al mittente che fornisce un dato servizio)
• Unificazione di Internet e Intranet
• Miglior utilizzo delle LAN
• Sicurezza
• Policy routing
IPv6
• Buon supporto di ATM
• Priorità per tipo di traffico
• Plug and play
• Mobilità
• Transizione semplice da IPv4 a IPv6
Indirizzi IPv6
• Scritti su 128 bit (circa 10
38indirizzi disponibili)
• Rappresentati in esadecimale come 8 numeri naturali separati da “:”
• Esempi:
• FEDC:BA98:0876:45FA:0562:CDAF:3DAF:BB01
• 1080:0000:0000:0007:0200:A00C:3423
Header IPv6
32 bit
vers. priority flow label
payload length hop limit
source address
next header source address
(16 byte)
destination address
(16 byte)
Header IPv6
32 bit
vers. priority flow label
payload length next header hop limit source address
(16 byte)
destination address (16 byte)
PER OTTENERE DALLA RETE DATAGRAM GARANZIE DI
SERVIZIO TIPICHE DEI
CIRCUITI VIRTUALI
Header IPv6
32 bit
vers. priority flow label
payload length next header hop limit source address
(16 byte)
destination address (16 byte)
IL PREAMBOLO HA LUNGHEZZA FISSA (40 BYTE), MA È POSSIBILE
AGGIUNGERNE ALTRI OPZIONALI
Header IPv6
32 bit