Professional Documents
Culture Documents
allarchitettura TCP/IP
1 PARTE
INTRODUZIONE ALLA RETI
Internetworking ?!?
Internetworking !
router
router
Internet !
Rete 2
router
Rete 1
router
Internet
router
Rete 4
Rete 3
Topologia di Internet
Internet consiste di un insieme di reti, dalle dimensioni
Router
Network 1
Network 2
Network 3
Topologie di rete
Topologie di rete
Potremmo classificare le reti in base:
Reti broadcast
Reti punto-punto
Reti metropolitane
Cablaggio a stella
HUB
D
E
D
E
D
E
D
E
Cavetti di
permutazione
Prese
utente
Armadio
PABX
Telaio
apparati LAN
MC
IC
TC
TC
IC
TC
TC
TC
Armadi di piano
TC
TC
TC
Edificio A
Edificio C
placchetta utente
centro stella
di piano
Edificio B
centro stella
di edificio
dorsali di
edificio
dorsali di
comprensorio
centro stella di
comprensorio
Cablaggio orizzontale
max 3 m
S
Stazioni di lavoro
Il livello fisico
Il livello fisico
Per realizzare una rete necessario collegare
Mezzi elettrici
Mezzi ottici
Mezzi elettromagnetici
Attenuazione
Distorsione
Rumore, Diafonia
1 - telefonia analogica
CLADDING
CORE
GUAINA PROTETTIVA
RIVESTIMENTO PRIMARIO
prestazioni inferiori
costo pi alto
Fibre monomodali
l
prestazioni pi elevate
interfacce pi costose
Tecniche di codifica
Sono necessarie perch le grandezze fisiche coinvolte
Architetture a livelli
Protocolli e interfacce
Analogia
Protocolli
SISTEMA DI UTENTE
Applicazione A
SISTEMA DI UTENTE
costruzione
trame uscenti
estrazione
trame entranti
PRESENT.
PH
SH
SESSIONE
TH
TRASPORTO
RETE
LINK
FISICO
APPL.
AH dati dellappl.
APPL.
NH
F A CTRL
PRESENT.
unit dati
SESSIONE
unit dati
TRASPORTO
unit dati
RETE
unit dati
unit dati
Applicazione B
FCS F
LINK
FISICO
Open System B
7 Strato di applicazione
Strato di applicazione
6 Strato di presentazione
Strato di presentazione 6
5 Strato di sessione
Strato di sessione
4 Strato di trasporto
Strato di trasporto
3 Strato di rete
Strato di rete
2 Strato di collegamento
Strato di collegamento
1 Strato Fisico
Strato Fisico
Mezzo fisico
Open System B
7 Strato di applicazione
Strato di applicazione
6 Strato di presentazione
Strato di presentazione 6
5 Strato di sessione
Strato di sessione
4 Strato di trasporto
Strato di trasporto
3 Strato di rete
Strato di rete
2 Strato di collegamento
Strato di collegamento
1 Strato Fisico
Strato Fisico
Mezzo fisico
TCP/IP
Telnet
FTP
SNMP
...
NFS
XDR
Sessione
RPC
Trasporto
TCP / UDP
ICMP
Rete
ARP/RARP
IP
Interfaccia di rete
Collegamento
Fisico
Reti locali
Data Link
Al livello Data Link sono in genere demandate funzioni
importanti come:
l
sequenze di bit
Ed ora... la definizione!
Una LAN un sistema di comunicazione che permette
l
La velocit richiesta
elevata
Mezzo trasmissivo
condiviso da
tutti gli utenti
LLC
MAC
802.3
802.5
FDDI
802.11
ISO
8802.3
ISO
8802.5
ISO
9314
ISO
8802.11
CSMA/CD
TOKEN
RING
FDDI
LIVELLO
NETWORK
LIVELLO
DATA LINK
802.12
ISO
8802.1
2
Wireless AnyLAN
LIVELLO
FISICO
Logical Link
Control (LLC)
Medium Access
Control (MAC)
Fisico
Il sottolivello MAC
Il sottolivello MAC di fondamentale importanza nelle
Indirizzi MAC
Sono univoci a livello mondiale
l
Alcuni OUI
00000Ch
DEC
08002B (e altri)
IBM
08005A (e altri)
Sun
080020h
Proteon
000093h
Bay-Networks
0000A2h
Indirizzi MAC
Quando una scheda di rete locale riceve un pacchetto,
IBM
SNA
OSI
CLNP
TCP
IP
Netbios
(04)
(FE)
(06)
(F0)
IBM
Livello
LLC
...
Indirizzamento
di livello LLC
Medium Access
Control
Fisico
Entit di livello
Logical Link Control
Ethernet
Topologia e cablaggio
Topologia a bus
A
HUB
A
Cablaggio a bus
F
A
Cablaggio a stella
Carrier Sense
Multiple Access
Protocollo MAC:
l
l
Fase1:
Ascolto
Si lenzi o
Parlo
e
ascol to
!
Fase2:
Invio dei
messaggi
M essaggi o
Qualcuno
sta
parlando ?
Fase1:
Si lenzio
Ascolto
Parlo
e
ascol to
!
P arl o
e
ascolto
!
Fase2:
Invio dei
messaggi
C ol li si one
C ol li si one
Dominio di collisione
In una rete CSMA/CD al crescere del numero di stazioni e/o
Topologia e cablaggio
Una rete Token Ring consiste in un certo numero di
D
E
Topologia ad anello
D
E
Cablaggio a stella
informativa
B
T
C
D
C
D
C
D
trama
Il nodo mittente riceve la trama che ha compiuto il giro
dell'anello ed emette un nuovo Token che pu essere
catturato dai nodi a valle
Nodo di monitor
E' necessaria la presenza di un
n1
CK
master
il ruolo di monitor
CKslave
n2
CKslave
n3
CKslave
Concentratore (MAU)
Quando un stazione spenta o guasta, il concentratore
Bypass
Multistation
Access
Unit
Concentratore
Interconnessione di LAN
Interconnessione di LAN
Gli apparati utilizzati per interconnettere le LAN sono:
l
Repeater
Switch
Router
Generalit
I Bridge
l
Gli Switch
l
I Router
l
operano a livello 3
Applicazione
Applicazione
Presentazione
Presentazione
Sessione
Sessione
Trasporto
Trasporto
Rete
Rete
Data Link
Fisico
Repeater
Fisico
Fisico
Data Link
Fisico
Repeater
Serve per ripetere e rigenerare una sequenza di bit
Repeater
Multiport-Repeater
Switch
Sono dei bridge multi-porta
l
molto veloci
HUB
Concentratore
Banda condivisa
SWITCH
Banda dedicata
Modalit di switching
Store-and-Forward
l
Cut through
l
Fragment free
l
Modalit di switching
Uno switch quando opera in modalit cut-through non pu
quando uno switch opera tra due reti locali appartenenti a due
standard diversi
quando uno switch opera tra due reti identiche, ma a velocit
diverse
Ethernet switching
Mezzo dedicato
Pi comunicazioni simultanee
Throughput massimo: 10 Mb/s dedicati
SWITCH
Flussi di traffico
Switched LAN
Necessit di interconnettere pi Switch
10 Mb/s costituiscono un collo di bottiglia
Necessit di connessioni ad elevata velocit
Spanning Tree
La rete magliata deve essere trasformata in albero
l
A B
INFO
LAN 2
LAN 1
LAN 3
RB
B
LAN 5
LAN 6
LAN 4
B
B
LAN 7
Il livello di rete
Il livello network si occupa di trasmettere pacchetti
Router
Livelli
4-7
Livelli
4-7
Rete
Rete
Rete
Data Link
Fisico
Data Link
Fisico
rete 1
rete 2
Router 1
Router 2
IP
IP
IP
Applicat.
TCP/UDP
IP
MAC- LLC
MAC- LLC
X.25
X.25
MAC- LLC
MAC- LLC
PHY
PHY
PHY
PHY
PHY
PHY
X.25
LAN 1
MLH-1 IPH
INFO
X.25-1 IPH
INFO
X.25-2 IPH
LAN 2
INFO
MLH-2 IPH
INFO
Router multiprotocollo
Decnet
TCP/IP
OSI
Algoritmo di
calcolo della
tabella di
instradamento
Algoritmo di
calcolo della
tabella di
instradamento
Algoritmo di
calcolo della
tabella di
instradamento
Tabella di
instradamento
Tabella di
instradamento
Tabella di
instradamento
Processo di
forwarding
Processo di
forwarding
Processo di
forwarding
LAN #1
LAN #2
WAN #1
Livello 3
(Network)
Livelli
1e2
WAN #2
HDLC
PPP
Network di destinazione
Tempo di vita
20.0.0.5
Network
10.0.0.0
30.0.0.6
Network
20.0.0.0
10.0.0.5
To reach hosts
on network
30.0.0.0
20.0.0.0
10.0.0.0
40.0.0.0
Network
30.0.0.0
G
20.0.0.6
Route to
this address
Direct
Direct
20.0.0.5
30.0.0.7
40.0.0.7
H
30.0.0.7
Metric to
destination
Time to
live
0
0
1
1
60
85
routing table di G
Network
40.0.0.0
Before Switching
LAN
Collision
Domain
Collision
Domain
Collision
Domain
Collision
Domain
Switch
Collision
Domain
Collision
Domain
Collision
Domain
Broadcast Domain
Broadcast Domain
Collision
Domain
Switch
Collision
Domain
Collision
Domain
Collision
Domain
Switch
Collision
Domain
Collision
Domain
Collision
Domain
Collision
Domain
Broadcast Domain
Collision
Domain
Collision
Domain
Switch
Collision
Domain
Collision
Domain
Broadcast Domain A
Collision
Domain
Collision
Domain
Router
Collision
Domain
Collision
Domain
Switch
Collision
Domain
Broadcast Domain B
Collision
Domain
l
l
Repeater/Hub
10/100
Switch
Repeater/Hub
Repeater/Hub
Power Users
Elevato throughput
Bassa latenza
10 Mbps condivisi
10 Mbps dedicati
100 Mbps condivisi
WAN
Switch
Switch
U
s
e
r
s
10 Mbps condivisi
10 Mbps dedicati
100 Mbps dedicati
Router
Switch
Switch
U
s
e
r
s
sicurezza (firewall)
10 Mbps condivisi
Collision Domain
Repeater/Hub
Broadcast Domain
Server
Repeater/Hub
banda condivisa
R assegnare una banda dedicata di 10 Mbps ad un numero limitato di power
users
Soluzione 1: Router
10 Mbps condivisi
10 Mbps dedicati
Repeater/Hub
Repeater/Hub
High-speed dedicati
Collision Domain
Server
Power
User
Broadcast Domain
Router
Soluzione 2: Switch
10 Mbps condivisi
10 Mbps dedicati
Repeater/Hub
Repeater/Hub
High-speed dedicati
Collision Domain
Server
Switch
Switch
Power
User
Broadcast Domain
di broadcast
Uno switch ha diversi vantaggi rispetto ad un router:
l
maggior throughput
VLAN
VLAN Trunk
Switch A
1
Switch B
4
VLAN 2
VLAN 1
VLAN 3
VLAN 1
VLAN 2
VLAN 3
Interconnessione di VLAN
Per interconnettere differenti VLAN necessario un
router
VLAN 1
ROUTER
VLAN 2
Tecnologie di WAN
Velocit max.
X.25
64 Kb/s
Frame
Relay
155 Mb/s
ATM
2.4 Gb/s
Connessioni virtuali
X.25, Frame Relay e ATM sono tecniche orientate alla connessione:
Circuiti Virtuali
Rete
X.25
Frame Relay
ATM
Circuiti
virtuali
Link di
accesso
Label Swapping
Input
Output
Port
Label
Port
Label
29
45
45
45
29
64
29
1
1
64
29
29
64
Look-up Table
Nodo di commutazione
29
Output
Input
29
30
Output
15
15
30
Input
45
14
43
16
Output
2
1
10
Input
Output
14
10
Output
Input
Output
A
1
UNI
Signaling
NNI
Signaling
Output
3
3
Input
UNI
Signaling
2
2
Input
Output
Output
Input
Output
A
1
4
Input
Output
2
2
Input
Output
Output
Input
Output
A
1
UNI
Signaling
NNI
Signaling
Output
3
3
Input
UNI
Signaling
2
2
Input
Output
2 PARTE
L ARCHITETTURA TCP/IP
La storia di Internet
Internet: statistiche
l 5.6 Milioni Domini Internet (www.nw.com)
l 56 Milioni di Host (www.nw.com)
l 246 IP countries (www.nw.com)
l 201 Milioni di utenti (www.nua.ie)
l 75% del traffico su Internet WWW
l 3 Milioni di siti Web
l 8000 ISPs nel mondo (4700+ negli U.S.A.)
hosts
0
2005
2003
2001
1999
1997
1995
1993
1991
1989
Internet: storia
Internet: topologia
Rete 2
router
Rete 1
router
Internet
router
Rete 4
Rete 3
Architettura TCP/IP
L'architettura di comunicazione ha una struttura stratificata:
Application
Transport
Internetwork
Tecnologie di
sottorete
Strati di
sottorete
Architettura TCP/IP
Network 2
Network 1
Host A
Network 3
Router B
Router A
Host A
Host B
Host B
application
application
transport
Router A
Router B
transport
IP
IP
IP
IP
network
interface
network
interface
network
interface
network
interface
Network 1
Network 2
Network 3
Lindirizzamento IP
Architettura TCP/IP
Pila dei protocolli Internet
...
TCP
UDP
IP
Ethernet
X.25
ATM
...
Architettura TCP/IP
dati
tcp
app
dati
app
dati
TCP segment
ipip
tcp
app
dati
IP datagram
Header
Data Link
ipip
tcp
app
dati
Trailer
Data Link
Architettura TCP/IP
Dati
Header
Data Link
UDP
Dati
IP
UDP
Dati
IP
UDP Dati
Dati
Trailer
Data Link
Header
Data Link
Network
UDP
Dati
IP
UDP
Dati
IP
UDP Dati
Trailer
Data Link
Il protocollo IP
IP is the workhorse protocol of the TCP/IP protocol suite (W. R.
Stevens)
Il protocollo IP fornisce un servizio datagram connectionless ed
inaffidabile
Il termine inaffidabile significa che non ci sono garanzie che un
pacchetto IP giunga a destinazione (servizio best effort)
Il termine connectionless significa che il protocollo IP non mantiene
alcuna informazione di stato circa i pacchetti inoltrati. Ciascun
pacchetto trattato indipendentemente da tutti gli altri. Questo
significa anche che i datagrammi IP possono essere consegnati
fuori sequenza
Header IP
bit 0
Versione
8
IHL
16
Tempo di vita
Lunghezza totale
Tipo di servizio
Identificativo
31
Flags
Protocollo
Indirizzo IP sorgente
Indirizzo IP destinatario
Opzioni IP
Padding
Dati
Header IP
IP: frammentazione
Router
MTU=1500
ID=12345 OS=0
M=0
TL=1500
Router
MTU=512
MTU=256
ID=12345
M=1
OS=0
TL=512
ID=12345
M=1
OS=0
TL=256
ID=12345
M=1
OS=64
TL=512
ID=12345
M=1
OS=32
TL=256
ID=12345
M=0
OS=128
TL=476
ID=12345
M=1
OS=64
TL=256
ID=12345
M=1
OS=96
TL=256
ID=12345
M=1
OS=128
TL=256
ID=12345
M=0
OS=160
TL=220
Indirizzi IP
32 bit
Network
8 bit
198 .
Host
8 bit
18
8 bit
140
8 bit
208
Indirizzi IP
Classe A
(0.0.0.0
24 bit
7 bit
0
netid
hostid
Classe B
(128.0.0.0 - 191.255.255.255)
14 bit
1 0
16 bit
netid
hostid
Classe C
(192.0.0.0 - 223.255.255.255)
21 bit
1 1 0
Classe D
1 1 1 0
8 bit
netid
hostid
28 bit
(224.0.0.0 - 239.255.255.255)
multicast group ID
Classe E
(240.0.0.0 - 255.255.255.254)
27 bit
1 1 1 10
- 127.255.255.255
reserved
Indirizzi di classe A
8 bit
8 bit
8 bit
8 bit
15.10.10.90
Net ID
Host ID
Indirizzi di classe B
8 bit
8 bit
8 bit
8 bit
130.20.18.62
Net ID
Host ID
Indirizzi di classe C
8 bit
8 bit
8 bit
8 bit
195.31.235.10
Net ID
Host ID
Indirizzi IP privati
Class
10.0.0.0-10.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255
Indirizzi IP particolari
This host1
All 0s
All 0s
Host
All 1s
Net
All 1s
Indirizzi di broadcast
200.168.4.0
200.168.3.0
200.168.1.0
200.168.2.0
Forwarding di datagrammi IP
Forwarding diretto
La trasmissione di un IP datagram tra due host connessi su una
stessa rete IP (stesso prefisso) non coinvolge i router
Il trasmettitore incapsula il datagram nel frame fisico e lo invia
direttamente all'host destinatario
Forwarding indiretto
La trasmissione di un IP datagram tra due host connessi su
differenti reti IP (diverso prefisso) coinvolge i router
Il trasmettitore incapsula il datagram nel frame fisico e lo invia al
default gateway
I datagram passano da un router all'altro finch non raggiungono un
router che pu trasmetterli direttamente
.10
Rete 192.168.10.0/24
MAC 00082C785852
.35
MAC 000060AD8744
MAC-D 000060AD8744
MAC-S 00082C785852
IP-D 192.168.10.35
IP-S 192.168.10.10
Internet
172.168.1.1
IP Add: 172.168.1.10
Mask: 255.255.255.0
Default Gateway: 172.168.1.1
172.168.1.0/24
IP Add: 172.168.1.120
Mask: 255.255.255.0
Default Gateway: 172.168.1.1
Mapping dinamico
l
MAC broadcast
MAC A
MAC A
MAC E
ARP Req
ARP Request
MAC A IP A
??
IP E
B
ARP Reply
2
prot
type
HEADER
1
hard
size
1
prot
size
6
sender
operation
Ethernet Address
target
Ethernet Address
INFO
4
sender
IP Address
target
IP Address
FCS
ARP Cache
I mapping
<IP address>
<MAC address>
vengono memorizzati in una cache (ARP Cache)
Quando il driver di rete richiede la spedizione di un pacchetto:
l
C:\>arp -a
Interface: 195.31.237.213 on Interface 1
Internet Address
Physical Address
195.31.237.136
08-00-20-95-1f-d3
195.31.237.138
08-00-20-20-3d-28
195.31.237.140
08-00-20-90-3e-b9
195.31.237.193
00-e0-1e-84-cc-a0
Type
dynamic
dynamic
dynamic
dynamic
IP versione 6 (IPv6)
Subnetting
netid
hostid
Network Prefix
netid
Network Prefix
subnetid
hostid
quella implicita
Subnetting: deriva da una maschera con pi bit a 1 rispetto alla
maschera naturale
Network
193
205
Subnet
102
Host
36
1 1 0 0 0 0 0 1 1 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 0 0
255
255
255
248
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 1 1 1 0 0 0
la netmask sono:
128
192
224
240
248
252
254
255
1000
1100
1110
1111
1111
1111
1111
1111
0000
0000
0000
0000
1000
1100
1110
1111
(128)
(64)
(32)
(16)
(8)
(4)
(2)
(1)
Esempio: subnetting
172.16.1.0
172.16.0.0
Router
172.16.2.0
172
16
Host
Network
255
255
Network
255
255
0
Host
Subnet
Host
255
VLSM
Un grosso limite del subnetting tradizionale il dover
CIDR
Il Classless InterDomain Routing (CIDR) supporta due
198.32.7.0/24
198.32.0.0/24
198.32.1.0/24
198.32.2.0/24
198.32.3.0/24
198.32.6.0/24
198.32.7.0/24
198.32.4.0/24
198.32.5.0/24
198.32.3.0
198.32.0.0
Token
Ring
198.32.1.0
Token
Ring
Token
Ring
198.32.2.0
Token
Ring
Token
Ring
198.32.5.0
198.32.4.0
Token
Ring
198.32.7.0
198.32.6.0
198.32.0.0/22
198.32.6.0/23
198.32.4.0/23
198.32.3.0
198.32.0.0
Token
Ring
198.32.1.0
Token
Ring
Token
Ring
198.32.2.0
Token
Ring
Token
Ring
198.32.5.0
198.32.4.0
Token
Ring
198.32.7.0
198.32.6.0
DHCP
Il protocollo DHCP
Il
IP Address1
IP Address2
DHCP
Client
DHCP
Server
DHCP
DHCPDatabase
Database
IP
IPAddress1
Address1
IP
IPAddress2
Address2
IP
IPAddress3
Address3
Il protocollo DHCP
DHCP utilizza un processo in quattro fasi per configurare un client
DHCP
Lintero processo di comunicazione DHCP avviene tramite le porte
UDP 67 (server) e 68 (client)
1. Discover
2. Offer
3. Request
Client DHCP
4. Ack
Server DHCP
.1
E nd Address:
131 .107 .2
.254
Subnet Mask:
Exclusion Range:
S tart Address: 131 .107 .2
.150
Add ->
131 .107 .2
.160
<- Remove
E nd Address:
Lease Duration
Unl imited
. Li mited To:
Name:
Day (s) 00
Hour (s) 00
Minutes
Subnet 131.107.2.200
OK
Cancel
Help
lo stack TCP/IP viene inizializzato per la prima volta come client DHCP
lindirizzo MAC del client, unofferta di indirizzo IP, la subnet mask, durata
del lease
viene inviato inoltre un identificatore del server (indirizzo IP del server che
ha inviato lofferta)
DHCP OFFER
client DHCP
server DHCP
DHCP ACK
Source IP address = 131.107.3.24
Dest. IP address = 255.255.255.255
client DHCP
server DHCP
Initial
refresh interval
1/
2
Refresh interval
DHCP ACK
Source IP address = 131.107.3.24
Dest. IP address = 255.255.255.255
client DHCP
server DHCP
TTL
7/
8
TTL
vengono spenti
E possibile forzare un client a rilasciare il proprio
indirizzo IP (il client invia un messaggio DHCPRELEASE
al server DHCP per rinunciare al lease)
Ci risulta utile quando il client deve essere rimosso
dalla rete oppure spostato in unaltra subnet
seguenti modi:
l
192.204.7.7
Pacchetto DHCP
DHCP
Server
GIADDR
192.204.18.1
ReteNetwork
IP
Physical
192.204.18.0
DHCP
Client
Server DHCP
DHCP
Relay Agent
Discover (broadcast)
Discover (unicast)
Offer (unicast)
Offer (unicast)
Request (broadcast)
Request (unicast)
Ack (unicast)
Ack (unicast)
10.1.1.2
10.1.1.1
client DHCP
DHCP
Relay Agent
20.1.1.1
ip helper-address 10.1.1.2
Routing IP
Network di destinazione
Network
10.0.0.0
10.0.0.5
30.0.0.6
G
Network
20.0.0.0
Network
30.0.0.0
20.0.0.6
Network ID
Next Hop
30.0.0.0
20.0.0.0
10.0.0.0
40.0.0.0
Direct
Direct
20.0.0.5
30.0.0.7
Tabella di routing di G
40.0.0.7
H
30.0.0.7
Network
40.0.0.0
Algoritmi di routing
Le tabelle possono essere costruite con algoritmi di
tipo:
l
Statico
R
Dinamico
R
Routing Dinamico
TABELLA
B
TABELLA
ROUTER
ROUTER
Protocollo
di routing
TABELLA
ROUTER
Routing Dinamico
Ogni router calcola le proprie tabelle dialogando con gli altri router
Tale dialogo avviene tramite dei protocolli ausiliari a livello 3 o
Protocolli di routing
Link
State
Distance
Vector
Tradizionale
Distance
Vector
Avanzato
Algoritmo
Protocollo
Dijkstra SPF
OSPF
RIP
Bellman-Ford
DUAL
IGRP (Cisco)
EIGRP (Cisco)
Metrica
Quando
numero di hop
banda
carico
ritardo
affidabilit
Metrica: esempio
B
2 Mb/s
2 Mb/s
A
Network
X
2 Mb/s
2 Mb/s
512 Kb/s
E
Network
Y
Load Balancing
Con il termine di load balancing si intende la pratica di distribuire il
2 Mb/s
2 Mb/s
A
Network
X
2 Mb/s
2 Mb/s
512 Kb/s
E
Network
Y
Convergenza
Il processo di portare tutte le tabelle di routing ad uno
Convergenza: esempio
B
Primary
x
C
A
Network
X
Backup
E
Network
Y
Distance Vector
Ogni nodo mantiene un database con le distanze
[indirizzo - distanza]
Distance Vector
Un router che opera con un protocollo distance vector opera come segue:
1) Quando riceve un messaggio da un router adiacente confronta ogni coppia
(destinazione, costo) col contenuto della tabella di routing e:
a) se la destinazione non in tabella (e il costo dellannuncio non infinito) allora
crea una nuova entry per la nuova destinazione e fa partire un timout timer per la
nuova entry
b) se la destinazione in tabella e lannuncio proviene dal next hop allora aggiorna
il costo e fa ripartire il timeout timer
c) se la destinazione in tabella e il costo indica un percorso migliore allora
aggiorna il costo e il next hop nella entry e fa ripartire il timeout timer
d) altrimenti ignora la coppia (destinazione, costo)
2) Quando scatta il timeout timer pone il costo a infinito e fa partire il garbage
collection timer
3) Quando scatta il garbage collection timer cancella la entry dalla tabella di routing
4) Ad intervalli regolari trasmette ai router adiacenti un messaggio che riporta tutte le
coppie (destinazione, costo) contenute nella tabella di routing
Distance Vector
R2
R1
R3
D NH
10
15
25
15
R1
R4
R2
R4
Tabella di routing
N = Network
D = Distanza
NH = Next Hop
N
D
10.0.0.0 0
20.0.0.0 10
30.0.0.0 10
40.0.0.0 15
N
10.0.0.0
20.0.0.0
30.0.0.0
40.0.0.0
.
t
dis
5
1
=
.=
dist
N
D
10.0.0.0 5
20.0.0.0 30
30.0.0.0 30
40.0.0.0 35
dist
anz
a=
R4
N
10.0.0.0
20.0.0.0
30.0.0.0
40.0.0.0
15
10
30
10
Router B
Router C
10.1.2.0
10.1.1.0
.1
.1
Router D
10.1.3.0
.2
.1
10.1.4.0
.2
.1
10.1.5.0
.2
.1
t0
Net
10.1.1.0
10.1.2.0
Via
-----
Hop
0
0
Net
10.1.2.0
10.1.3.0
Via
-----
Hop
0
0
Net
10.1.3.0
10.1.4.0
Via
-----
Hop
0
0
Net
10.1.4.0
10.1.5.0
Via
-----
Hop
0
0
t1
Net
10.1.1.0
10.1.2.0
10.1.3.0
Via
----10.1.2.2
Hop
0
0
1
Net
10.1.2.0
10.1.3.0
10.1.1.0
10.1.4.0
Via
----10.1.2.1
10.1.3.2
Hop
0
0
1
1
Net
10.1.3.0
10.1.4.0
10.1.2.0
10.1.5.0
Via
----10.1.3.1
10.1.4.2
Hop
0
0
1
1
Net
10.1.4.0
10.1.5.0
10.1.3.0
Via
----10.1.4.1
Hop
0
0
1
t2
Net
10.1.1.0
10.1.2.0
10.1.3.0
10.1.4.0
Via
----10.1.2.2
10.1.2.2
Hop
0
0
1
2
Net
10.1.2.0
10.1.3.0
10.1.1.0
10.1.4.0
10.1.5.0
Via
----10.1.2.1
10.1.3.2
10.1.3.2
Hop
0
0
1
1
2
Net
10.1.3.0
10.1.4.0
10.1.2.0
10.1.5.0
10.1.1.0
Via
----10.1.3.1
10.1.4.2
10.1.3.1
Hop
0
0
1
1
2
Net
10.1.4.0
10.1.5.0
10.1.3.0
10.1.2.0
Via
----10.1.4.1
10.1.4.1
Hop
0
0
1
2
t3
Net
10.1.1.0
10.1.2.0
10.1.3.0
10.1.4.0
10.1.5.0
Via
----10.1.2.2
10.1.2.2
10.1.2.2
Hop
0
0
1
2
3
Net
10.1.2.0
10.1.3.0
10.1.1.0
10.1.4.0
10.1.5.0
Via
----10.1.2.1
10.1.3.2
10.1.3.2
Hop
0
0
1
1
2
Net
10.1.3.0
10.1.4.0
10.1.2.0
10.1.5.0
10.1.1.0
Via
Hop
--0
--0
10.1.3.1
1
10.1.4.2
1
10.1.3.1
2
Net
10.1.4.0
10.1.5.0
10.1.3.0
10.1.2.0
10.1.1.0
Via
----10.1.4.1
10.1.4.1
10.1.4.1
Hop
0
0
1
2
3
Distance
vector
ricevuti
Tabella di routing
Distance
vector
trasmessi
Link State
Ogni router impara il suo ambito locale: linee e nodi
adiacenti
Trasmette queste informazioni a tutti gli altri router
della rete tramite un Link State Packet (LSP)
Tutti i router, memorizzando i LSP trasmessi dagli
altri router, si costruiscono una mappa della rete
Ogni router calcola indipendentemente la sua tabella
di instradamento applicando alla mappa della rete
l'algoritmo di Dijkstra o SPF (Shortest Path First)
LSP ricevuto
da uninterfaccia
Link-state
database
LSP ritrasmesso su
tutte le altre interfacce
Algoritmo di
Dijkstra
Tabella di
routing
Flooding (1)
A
Flooding (2)
A
Costo
2
1
3
LSP database
A
B
C
D
E
F
G
H
2
1
E
2
5
F
G
4
B /2
A /2
D /1
B /3
B /2
E /5
D /1
F/4
D /3
E /2
C /1
F/5
H /4
E /2
G /1
G /1
G /2
H /1
Tabella di routing
Ogni router calcola indipendentemente le sue tabelle di
L1
3
L2
L3
Tabella di routing di B
A
C
D
E
F
G
H
2
E
2
G
1
L1
L2
L2
L3
L3
L3
L3
Domini di routing
OSPF
Dominio C
R
R
R
R
R
IGRP
RIP
R
R
Dominio A
Dominio B
R
Autonomous
System
R
R
R
R
R
Dominio A
R
R
Dominio B
Domini di routing ed AS
Protocolli IGP:
AS3
AS2
Distance Vector
R
R
R
R
R
R
RIP
RIPv2
IGRP
E-IGRP
Link state
OSPF
Protocolli EGP
R
R
R
Dominio A
AS1
BGP
R
R
Dominio B
EGP: Exterior Gateway Protocol
IGP: Interior Gateway Protocol
TCP
AS 3
AS 4
AS 5
ISP: esempio
ISP B (AS 100)
20.0.0.0
A
ISP C
BGP
BGP
30.0.0.0
AS Border
Routers
(AS 200)
OSPF
ISP A
10.0.0.0
BGP
G
40.0.0.0
ISP D
(AS 400)
(AS 300)
ICMP e traceroute
Descrizione
Echo Reply
Destination Unreachable
Source Quench
Redirect (change a route)
Echo Request
Time Exceeded for a Datagram
Parameter Problem for a Datagram
Timestamp Request
Timestamp Reply
Information Request
Information Reply
Address Mask Request
Address Mask Reply
diagnosi di raggiungibilit
R generazione di pacchetti di Echo Request verso Echo Server
R attesa di Echo Reply
Echo Request
Echo Replay
Problemi
l
TraceRoute
l
identificazione dei percorsi sulla rete
R generazione di pi pacchetti successivi di Echo Request
TTL inizia da 1 e viene incrementato di 1 ad ogni successivo Echo Request
R ogni pacchetto percorre un passo in pi rispetto al precedente
R osservazione dellindirizzo sorgente dei pacchetti di Time Exceded
Echo Request
Time Exceded
Problemi
l
R2
1.1.3.2
1.1.4.2
1.1.3.1
1.1.1.1
1.1.4.1
1.1.6.1
1.1.1.0/24
1.1.2.10
1.1.7.1
R1
R4
1.1.6.2
R3
1.1.7.2
1.1.2.1
1.1.2.0/24
I protocolli di trasporto:
TCP e UDP
Architettura TCP/IP
Pila dei protocolli Internet
...
TCP
UDP
IP
Ethernet
X.25
ATM
...
Processo server
R Programma che mette a disposizione un certo servizio
Processo client
R Programma che richiede lesecuzione di un servizio al server
Definizione hardware
l
Client
R Workstation o PC che per la maggior parte delle applicazioni esegue il lato
Server
R Host (mini, mainframe, WS, PC) che esegue per la maggior parte delle
Servizio XXX
Client
XXX
Servizio WWW
Richiesta di Servizio FTP
Server
FTP
Servizio FTP
Client
WWW
Client
FTP
Strato di Trasporto
Lo scopo di tale strato quello di fornire una comunicazione end
Strato di Trasporto
La divisione dei compiti fra lo strato di trasporto (UDP,
TCP) e IP la seguente:
l
programma server
l
Caratteristiche
l
Servizio
Porta
TCP
FTP
Telnet
SMTP
TFTP
DNS
HTTP
SNMP
POP3
21
23
25
69
53
80
161
110
4
4
4
4
4
UDP
4
4
4
FTP
21
HTTP
80
TCP
DNS
SNMP
53
161
UDP
IP
TFTP
69
DATA #1
ACK #1
Start Timer
DATA #2
Timeout
Timer Expires
DATA #2
ACK #2
DATA #1
Delayed
ACK
DATA, ACK #1
Header TCP
0
16
source port
31
destination port
sequence number
Acknowledge number
uap r s f
data
res. r c s s y i
offset
gkh t nn
checksum
options
data
window
urgent pointer
padding
TCP segment
Il segmento viene incapsulato in un IP Datagram
La dimensione dell'header TCP e' 20 byte durante lo
IP
header
20 byte
TCP
header
20 byte
TCP
data
Connessione TCP
TCP identifica un canale di comunicazione con il nome di
connessione
Sono identificate dalla quadrupla:
Internet dove
molto diverse
RX
Slow start
feedback
pacchetti persi per congestione
non affidabile
connectionless
Header UDP
l
l
31
source port
destination port
length
checksum
data
Protocollo UDP
Protocollo di trasporto di tipo non connesso
Aggiunge due funzionalit a quelle di IP:
l
di traffico
Non prevede meccanismi di ritrasmissione in caso di
errori/perdite
l
RX
full speed start
NAT
(Network Address Translation)
Indirizzi IP privati
10.0.0.0-10.255.255.255 (10.0.0.0/8)
172.16.0.0-172.31.255.255 (172.16.0.0/12)
192.168.0.0-192.168.255.255 (192.168.0.0/16)
NAT: benefici
Accedere alla Internet pubblica senza richiedere indirizzi
IP registrati
Interconnettere reti IP con spazi di indirizzamento
sovrapposti
Ridurre il consumo di indirizzi ufficiali (Port Address
Translation, PAT)
Migliorare la sicurezza della rete nascondendo gli
indirizzi reali degli host
Flessibilt
l
NAT: caratteristiche
Descritto in RFC 1631 (Maggio 1994)
Modifica gli indirizzi IP nellheader IP (e, se serve, nel
Statica
R
Dinamica
R
NAT: terminologia
Inside Local (IL)
l
Traduzione uno-a-N
Rete Esterna
NAT
SA
10.0.0.2
SA
10.0.0.2
192.69.1.1
Internet/Intranet
10.0.0.3
SA = Source Address
NAT Table
Inside Local
IP Address
Inside Global
IP Address
10.0.0.2
10.0.0.3
192.69.1.1
192.69.1.2
Rete Esterna
SA
10.0.0.2
SA
NAT
171.68.1.1
10.0.0.20
Internet/Intranet
10.0.0.3
SA = Source Address
NAT Table
Outside Local Outside Global
IP Address
IP Address
171.68.1.1
171.68.1.2
10.0.0.20
10.0.0.21
Rete Esterna
NAT
SA
10.0.0.1
10.0.0.2
SA
192.69.1.1
Internet/Intranet
10.2.0.5
SA = Source Address
NAT Table
Inside Local
IP Address
Inside Global
IP Address
10.0.0.2:1026 192.69.1.1:5001
10.0.0.3:1029 192.69.1.1:5002
NAT: considerazioni
Oltre a modificare lindirizzo IP nellintestazione del
pacchetto devono
operazioni:
essere
effettuate
anche
altre
DHCP
SNMP
IP multicast
NAT: FAQs
Quante sessioni concorrenti sono supportate dal NAT?
l
Il numero max di sessioni concorrenti supportate dipende dalla quantit di
memoria disponibile sullapparato
E possibile utilizzare contemporaneamente sia traduzioni statiche che
dinamiche?
l
S, facendo attenzione che gli indirizzi statici siano esclusi dai pool di indirizzi
dinamici
Posso fare in modo che soltanto una parte degli indirizzi della mia rete siano
tradotti attraverso il NAT?
l
S, configurando una access-list che include linsieme di host/reti che
richedono la traduzione
Quanti indirizzi interni posso mappare su un unico indirizzo pubblico
attraverso il PAT?
l
Poich il campo port di 16 bit, fino a 65535 indirizzi (molte implementazioni
allocano soltanto le porte non privilegiate da 1024 a 65535)
SOHO
Central Site
2
1
10.0.0.1
NAS
WAN
5
Internal
192.123.128.50
External
DHCP Server
2 NAT
1
10.0.0.1
NAS
WAN
5
Internal
192.123.128.50
External
DHCP Server
3. Quando il router riceve un pacchetto IP destinato verso la rete esterna invia una
richiesta (attraverso PPP/IPCP) di un indirizzo IP pubblico alla sede centrale
4. La sede centrale (attraverso il NAS) risponde fornendo al router un indirizzo IP pubblico
(prelevato dal pool locale oppure richiesto al DHCP server)
5. Il router associa tutti gli indirizzi IP interni allindirizzo IP pubblico assegnatogli dalla sede
centrale utilizzando la funzionalit di PAT
10.0.0.1
192.123.128.50
WAN
NAS
NAT Table
10.0.0.2
10.0.0.3
Outside Local
Inside Local
IP Address
IP Address
192.123.128.50:5000
10.0.0.1
10.0.0.2
192.123.128.50:5001
192.123.128.50:5002
10.0.0.3
DHCP Server
Esempio: non-sovrapposizione di
spazi di indirizzamento mediante NAT
Rete b.com
Rete a.com
dns.b.com
dns.a.com
IG 192.168.0.0
NAT
OL 171.68.1.0
10.0.0.1
10.0.0.1
NAT Table
pippo.a.com
a) 171.68.1.1
b) 10.0.0.3
10.0.0.3
pippo.b.com
10.0.0.1
192.168.0.10
DNS
Domini
II livello
ssgrr
it
edu
polito
com
amazon
DNS
Top level domains
com
edu
gov
mil
net
org
int
country-code
Resolver
1. Immetto
www.cisco.com
Voglio andare
sul sito della
Cisco
2. Call Library
or Subroutine
Applicazione
TCP/UDP
Resolver
3. Il Resolver
interroga il
Nameserver
in UDP
IP
Network Interface
Query
DNS Server
SSGRR.IT
DNS Server
CISCO.COM
Internet
4. Risposta
(192.31.7.130)
2. Query
Dominio SSGRR.IT
3. Risposta
3
2
name
server
locale
8
4
5
6
7
root
name server
root
.com
name server
com
edu
.cisco.com
name server
cisco
ascend
resolver
Esempio:
l
Le applicazioni Internet
Gli Applicativi
Telnet
FTP
HTTP
DNS
TCP
SNMP
UDP
IP
TFTP
Web Server
HTTP
httpd
TCP
TCP
internetwork (IP)
internetwork (IP)
network interface
network interface
Internet
file.html
Protocollo HTTP
Il WWW basato sul protocollo HTTP (HyperText Transfer
Protocol)
HTTP utilizza principalmente due tipi di messaggio:
l
Internet
Web Browser
Web Server
HTTP GET request
HTTP response
ad esempio, http://www.w3.org/pub/WWW/TheProject.html
GET
HTTP/1.0
http://www.w3.org/pub/WWW/TheProject.html
FTP: esempio
FTP client
FTP server
(control connection)
Port 21
Port 1173
PORT 195,31,235,5,4,150
IP: 195.31.235.5
FTP client
FTP server
(control connection)
Port 21
Port 1173
(data connection)
Port 1174
IP: 195.31.235.5
Port 20
SYN to 195.31.235.5
port 1174
CLIENT
SMTP
POP3/IMAP4
formato messaggi:
RFC822/MIME
MAIL USER AGENT (MUA):
ha uninterfaccia utente per
linserimento dei messaggi
"conosce" il protocollo per spedire
messaggi (SMTP)
ed il protocollo per riceverli (POP3
o IMAP4)
"conosce" come comporre i
messaggi (RFC822/MIME)
pippo@mail.net.it
MAIL SERVER
pippo@mail.net.it
pippo@mail.net.it
CLIENT
LA LETTURA DELLA POSTA AVVIENE
COLLEGANDOSI ALLA CASELLA
POSTALE DI RIFERIMENTO
mail user
agent
MTA
coda di messaggi
mail transfer
client
agent
mail user
agent
mailbox utenti
mail transfer
server
agent
Mail Server
ISP
Server DNS
ISP
Mail a
giuseppe.marmo@hts-europe.com
SMTP
Mail Server
HORIZON T.S.
POP3
G. Marmo