Il modello
Client/Server
Internet: gli
standard
de facto
Host A
Application
Host B
HTTP – SMTP – FTP …
Application
Presentation
Presentation
Session
Session
Transport
Network
Link
Node
UDP e TCP
Node
IP
Ethernet, PPP, ATM …
Network
Link
Physical
Physical
2003-2004
Transport
Reti di Calcolatori
1
Il modello
InternetClient/Server
Interconnessione tra reti
Le implementazioni per internet devono
tenere conto della presenza di
tante reti interconnesse
• Gateway: modulo di rete che si
occupa di connettere due sistemi
Indipendenti di rete: il gateway
Risolve i problemi di routing
(livello 3) il bridge invece risolve
i problemi di interfacciamento tra le
diverse implementazioni dei livelli fisici
e di data link
rete 1
rete 2
gateway
gateway
rete 3
• Routing: per esigenze reali non costruisco
Reti ad hoc per ogni applicazione. Riutilizzo le reti già stese ed operative per un sistema
di interconnessione universale
•
Apertura: il sistema interconnesso è un sistema aperto in grado di accettare qualsiasi
tipo di applicazione al di sopra degli standard sottostanti:
• Il requisito di base è la capacità di adattarsi alle nuove tecnologie relative ai
diversi livelli del sistema
•
Pagamento: se i servizi utilizzano le reti interconnesse… chi paga?
2003-2004
Reti di Calcolatori
2
Il modello
InternetClient/Server
Lo stack TCP-IP
livello di TRASPORTO:
•
•
TCP Transmission Control
Protocol: flusso di byte
bidirezionale a canale virtuale
best effort, dati non duplicati,
affidabili, con controllo di
flusso
UDP User Datagram
Protocol: Scambio di
datagrammi
Processo
di utente
TCP
ICMP
Livello 4
UDP
Livello 3
IP
ARP
RARP
Interfaccia
fisica di rete
livello di RETE:
•
•
•
Processo
di utente
Livello 2
Livello 1
•
IP Internet Protocol: Scambio di datagrammi senza garanzia di consegna
ICMP Internet Control Message Protocol: Scambio messaggi di controllo
ARP Address Resolution Protocol: Ricerca dell’indirizzo fisico di un nodo
RARP Reverse Address Resolution Protocol: Ricerca un indirizzo IP di un nodo
2003-2004
Reti di Calcolatori
3
Il modello
InternetClient/Server
Applicazioni e Comunicazioni in TCP/IP
Host A
Applicazione
Host B
Protocollo
di Applicazione
Applicazione
Trasporto
Protocollo
TCP o UDP
Trasporto
Internet
Protocollo
IP
Internet
Interfaccia
di rete
Protocollo
di Datalink
Interfaccia
di rete
Rete fisica
2003-2004
Reti di Calcolatori
4
Il modello
InternetClient/Server
Interazioni via Gateway
Host A
Host B
Applicazione
Identico
messaggio
Applicazione
Trasporto
Identico
pacchetto
Trasporto
Internet
Internet
Internet
Identico
datagramma
Identico
datagramma
Interfaccia
di rete
Identico frame
Rete fisica 1
2003-2004
Interfaccia
di rete
Identico frame
Interfaccia
di rete
Rete fisica 2
Reti di Calcolatori
5
Il modello
InternetClient/Server
Il Servizio IP
IP si occupa di gestire il scambio dei pacchetti sulla rete:
•
Problema dei Nomi: come identifico un nodo sulla rete?
•
IP definisce uno standard gerarchico basato su una sequenza di 4 byte: ad
esempio 137.204.56.1
•
Protezione delle informazioni: i pacchetti dovrebbero essere manipolati solo
dai destinatari
•
Routing: i pacchetti devono poter essere consegnati su reti diverse attreverso i
gateway
2003-2004
Reti di Calcolatori
6
Il modello
InternetClient/Server
IP Naming ed indirizzamento gerarchico
•
•
•
Ogni connessione di un host a una rete ha un indirizzo internet unico formato da due
elementi e detto IP-ADDRESS=NETID, HOSTID
• NETID è l’identificatore di rete
• HOSTID è l’dentificatore di host
• La distinzione facilita il routing
Una rete è un ambiente considerato omogeneo: se il mio indirizzo è 137.204.56.1 ed
il numero di rete è per esempio 137, sono sicuro che all’interno della rete 137 ci sarà
o il nodo identificato dall’id 204.56.1 oppure il gateway per la rete 137.204
• Il routing quindi è automaticamente definito dalla struttura del nome
Esiste inoltre uno standard per definire la struttura di una rete:
1
7 8
• Reti di Classe A:
• Le WAN tipicamente
0 NETID
HOSTID
•
•
Reti di Classe B:
• LAN di grandi dimensioni
1
1 0
Reti di Classe C:
• LAN di piccole dimensioni
31
NETID
HOSTID
1
0 1NETID
1
0
2003-2004
31
Reti di Calcolatori
classe B
31
NETID HOSTID HOSTID
classe C
7
Il modello
InternetClient/Server
IP Naming: le classi degli indirizzi
0 1 2 3 4
classe A
0
classe B
1 0
classe C
1 1 0
classe D
1 1 1 0
classe E
1 1 1 1 0
8
16
netid
24
31
hostid
netid
hostid
netid
hostid
indirizzo multicast
indirizzi riservati ad usi futuri
Esempio: 137.204.56.1:
137= 10001001  è una rete di classe B !  una LAN di grandi dimensioni
NETID= 137.204
HOSTID= 56.1
2003-2004
Reti di Calcolatori
8
Il modello
InternetClient/Server
IP Naming: Broadcast e Multicast
Se un byte è a 255 (11111111) indico tutti i nodi a quel livello gerarchico:
•
255.255.255.255: indirizzo di tutti i nodi della rete locale (si parla di
limited broadcast perché i gateway scarcano il messaggio che quindi
non si propaga tra le reti)
•
137.204.255.255: indirizzo tutti i nodi della rete 137.204 (si parla di
directed broadcast perché scelgo la rete locale che voglio
indirizzare)
Tutti gli indirizzi dal 224.x.x.x al 239.x.x.x invece rappresentano un gruppo di
specifici indirizzi che si sono precedentemente accreditati (multicast)
2003-2004
Reti di Calcolatori
9
Il modello
InternetClient/Server
IP Naming: Assegnamento indirizzi
•
Il numero IP identifica in modo univoco un host nella sua rete
•
Attraverso i protocolli ARP e RARP è possibile passare dal MAC-ADDRESS di
una scheda di rete ethrnet al suo corrispettivo indirizzo
•
Un host può avere più indirizzi IP associati ad una o più schede di rete
• Se un host ha più di un indirizzo IP allora può anche avere compiti di
routing tra una rete ed un’altra
•
Ci sono 2 modi per assegnare un indirizzo IP ad un host
• Assegnamento statico: configuro ogni macchina con un suo specifico
IP  reti molto stabili o di piccole dimensioni
• Assegnamento dinamico: ogni volta che un host viene agganciato alla
rete gli viene assegnato dinamicamente un IP  DHCP Dynamic Host
Configuration Protocol: utile in reti di computer che a variabilità molto
elevata
2003-2004
Reti di Calcolatori
10
Il modello
InternetClient/Server
IP: Caratteristiche e specifiche
IPv4: gestisce la comunicazione attraverso datagrammi
•
Servizio:
• Connectionless: ciascun pacchetto è trattato indipendentemente
dagli altri. Diversi pacchetti possono seguire percorsi diversi ed essere
consegnati fuori ordine
• Unreliable: la consegna non è garantita, cioè non effettua un
controllo sull'avvenuta ricezione di un pacchetto
• Best-effort: l'inaffidabilità del trasferimento è dovuta a cause esterne
e non al software di rete nessun messaggio di errore al richiedente
•
Protocollo:
• Elaborazione: del messaggio del livello superiore nel formato per la
trasmissione
• Incapsulamento / frammentazione
• Instradamento (routing) cioè:
• Traduzione da indirizzo logico a indirizzo fisico
• Scelta del percorso
2003-2004
Reti di Calcolatori
11
Il modello
InternetClient/Server
IP: Struttura del Datagramma
Intestazione
DATAGRAM HEADER
Dati
DATAGRAM DATA
I sottocampi del campo header contengono:
• versione del protocollo
• lunghezza header e totale (totale < 64K)
• identificazione del datagramma (usato per ricomporre i frammenti)
• precedenza (0-7)
• tipo di trasporto desiderato (bit di qualità): Type of Service (ToS vedi
qualità del servizio)
• throughput T,di affidabilità R, di ritardo D, costo C
• Internet non può garantire il soddisfacimento del tipo di trasporto
richiesto che dipende dal cammino che deve percorrere il datagramma
• frammentazione e flags
• time to live, tempo di permanenza del datagramma
• indirizzo IP sorgente e destinazione
• tipo di protocollo livello superiore (TCP 6, UDP 17, ICMP 1, ...)
• checksum per il controllo
• opzioni: monitoraggio e controllo rete
2003-2004
Reti di Calcolatori
12
Il modello
InternetClient/Server
ARP Address Resolution Protocol
ARP protocollo semplice ed efficiente (costo broadcast)
•
invia un pacchetto broadcast in cui chiede l'indirizzo fisico corrispondente
ad indirizzo IP (Quale Fa per questo Ia?)
•
tutti gli hosts ricevono tale pacchetto: solo quello che riconosce il suo
indirizzo IP risponde con il proprio indirizzo fisico
richiesta ARP broadcast
risposta ARP
2003-2004
Reti di Calcolatori
13
Il modello
InternetClient/Server
ARP Address Resolution Protocol
•
IP non ha bisogno di scatenare una sequenza ARP ad ogni invio di
messaggio. Esiste una memoria cache che contienne le coppie IP- MAC
Address ottenute in precedenza
• Lo stato viene mantenuto per un certo tempo e poi scade
• Se si riceve un errore dal livello di datalink all’invio di un messaggio il
dato viene invalidato
•
Attraverso i broadcast ARP tutti i nodi della rete cercano di mantenere
aggiornata la loro cache  non è in generale il nodo a cui appartiene
l’indirizzo IP a rispondere, ma tutti i nodi che conoscono il MAC Address
associato a quello specifico IP
•
Il pacchetto ARP:
messaggio ARP
frame data area
frame header
2003-2004
Reti di Calcolatori
14
Il modello
InternetClient/Server
RARP Reverse Address Resolution Protocol
Normalmente un sistema si attiva caricando le sue configurazioni (e quindi
anche il suo indirizzo IP) da una memoria di massa.
Cosa succede se una macchina è diskless?
•
L’host conosce il suo Mac Address  ha bisogno di chiedere ad un server
dedicato quale è il suo indirizzo IP
•
Il cliente fa un broadcast per richiedere il suo IP
•
Il server risponde con l’ip corrispondente
•
Ci possono essere più server sulla rete  possono rispondere tutti senza
problemi di coordinamento (operazione idempotente)
2003-2004
Reti di Calcolatori
15
Il modello
InternetClient/Server
Routing e separazione fra reti
ARP e RARP funzionano solamente all’interno della stessa LAN: non è possibile
fare indirizzamento diretto tra due reti diverse.
•
Reti Logicamente Separate: se definisco due o più reti logiche al di
sopra della rete fisica (esempio: nella stessa LAN definisco due reti ip,
come 137.204 e 137.205)
•
Reti Fisicamente Separate: sono completamente distinte e sono unite da
un gateway, un host con due o più schede di rete con il compito di
reindirizzare i pacchetti da una rete all’altra
deis33
GATEWAY
HOST
dida02
2003-2004
Reti di Calcolatori
cineca
16
Il modello
InternetClient/Server
Routing e separazione fra reti
La separazione logica può essere ulteriorimente diversificata attraverso il
concetto di subnet:
•
All’interno della rete 137.204 è possibile definire due sottoreti: 137.204.56
e 137.204.57
•
La subnet è rispettata permettendo una comunicazione diretta solo
all’interno, obbligando il passaggio per un gateway per andare nell’altra
rete
•
Si realizza questa astrazione attraverso lo strumento della Maschera
• Viene impostata una maschera di 32 bit es: 255.255.255.0 
maschera di classe C implica che sono visibili al nodo solo gli host che
hanno la stessa rete di classe C
• La maschera è una impostazione di connessione (viene decisa sul lato
client, può essere quindi rimossa per accedere direttamente fuori dalla
subnet
2003-2004
Reti di Calcolatori
17
Il modello
InternetClient/Server
Routing in topologie complesse
GATEWAY
Per garantire prestazioni e tolleranza ai guasti ratamente le reti hanno un
unico cammino per procedere da un host ad un altro: Nello schema
seguente sono identificabili diversi percorsi per connettere Host A a Host B
HOST A
HOST B
2003-2004
Reti di Calcolatori
18
Il modello
InternetClient/Server
Routing: i percorsi multipli
Si
•
•
•
possono identificare vari percorsi:
Rosso: percorso più breve (3 nodi prima di destinazione  hop)
Blu: percorso alternativo che salta una rete (5 hop)
Verde: un percorso completamente diverso (5 hop)
HOST A
HOST B
2003-2004
Reti di Calcolatori
19
Il modello
InternetClient/Server
Routing: gestione dei percorsi
Ricordiamo che in generale, dal protocollo esistono solo due casi:
•
I due host sono nella stessa rete fisica (direct routing):
• Grazie a ARP posso avere indirizzo fisico
• Invio diretto dei datagrammi
•
I due host sono in due reti fisiche diverse (indirect routing):
• Invio il datagramma al gateway più adatto ( secondo quali
politiche?)
• Se il gateway è fisicamente connesso alla rete destinazione passa in
uno stato di direct routing
• Se non conosce la rete fisica invia il pacchetto ad un altro gateway
Il datagramma passa da un gateway ad un altro fino ad un gateway che può
inoltrarlo direttamente
Alterata solo la parte di frame fisico (checksum e fram.)
Utilizzo di tabella di routing che lavora (per lo più) sulle informazioni di rete
2003-2004
Reti di Calcolatori
20
Il modello
InternetClient/Server
Algoritmi di routing
•
•
Algoritmi generalmente globali basati su tabelle che sono disponibili ai
diversi router partecipanti
A parte alcuni casi iniziali è diffuso l’uso di protocolli isolati tipo patata
bollente
1. Algoritmi Statici
•
basati su informazioni statiche riguardanti il cammino più breve (per piccole reti
ed interconnessioni)
2. Algoritmi Dinamici
•
basati su informazioni dinamiche di traffico della rete, lunghezza del messaggio
e tipo di servizio richiesto
•
I Router (gli host che si occupano di routing) si coordinano attraverso protocolli:
• time out delle entry dei router in modo asincrono
• propagazione asincrona delle informazioni di routing
•
Sia che l’impostazione del routing sia statica o dinamica è necessario tenere conto che
la rete è comunque un sistema dinamico
• I percorsi possono mutare per guasti o modifica della struttura della rete
• È necessario gestire attraverso diversi protocolli specifici la evoluzione delle
topologie
2003-2004
Reti di Calcolatori
21
Il modello
InternetClient/Server
Algoritmi di routing: Distance Vector
•
Ogni gateway mantiene una tabella per tutte le reti che conosce memorizzando i
diversi percorsi in funzione della distanza misurata in hop
•
•
Associo quindi staticamente quale è il miglior percorso per una rete
I percorsi non sono memorizzati per intero  viene memorizzato solo l’hop
successivo
La propagazione delle informazioni (nelle tabelle di routing) è la chiave della
gestione dell’algoritmo
•
Rete
R0
Rete
G1
R1
Rete
G2
R2
R0 0
R1 0
R2 0
R1 0
R2 0
R3 0
R0 0
R1 0
R1 0
R2 1 G2
2003-2004
Rete
G3
Gn
Rn
Rn-1 0
...
Rn
0
R2 0
Rn
0
R2 0
R3 0
Rn-1 0
R0 1 G1
R1 1 G2
R3 1 G3
R4 1 G4
.. ...
Reti di Calcolatori
1° passo
propagazione
2° passo
propagazione
Rn-2 1 Gn-1
22
Il modello
InternetClient/Server
Algoritmi di routing: Distance Vector
•
Cosa succede se cambia un percorso:
Rete
RQ
Rete
R0
Rete
G1
R1
Rete
G2
R2
Rete
G3
Gn
R0 0
R1 0
R2 0
Rn
R1 0
R2 0
R3 0
Rn-1 0
RQ 0
R0 1 G1
RQ 0
Rn-2 1 Gn-1
R2 1 G2
R3 1 G3
R1 1 G2
Rn-3 2 Gn-1
R3 1 G3
RQ 1 G3
R0 1 G1
Rn-4 3 Gn-1
...
...
...
...
Rn
0
Propagazione locale delle tabelle di routing ad ogni vicino in modo asincrono
Chi riceve una offerta aggiorna la propria tabella se la proposta è conveniente in base alla
metrica
Le entry hanno scadenza (e devono essere sostituite)
Ogni gateway decide il routing in modo indipendente in base alla tabella locale
2003-2004
Reti di Calcolatori
23
Il modello
InternetClient/Server
Distance Vector: problemi di riconfigurazione
•
Supponiamo che ci sia una variazione di configurazione come da esempio:
A
D
C
E
B
•
Se un pacchetto deve andare da E a B:
• Il pacchetto viene inviato a D
• D non ha più rotta per B e quindi manda il pacchetto all’unico gateway che
conosce: E
• Finché E non viene aggiornato ho una condizione di loop  counting-toinfinity incremento infatti il numero di hop del mio pacchetto ogni volta e posso
potenzialmente andare avanti all’infinito (spesso si limita infinito a 16 !!)
• E e D continuano ad incrementare la loro distanza da B in base alla rotta che
prende il pacchetto  informazioni errate di routing
A
Rete
D
10
C
B
•
In una condizione come questa A,B e C si danno delle informazioni non
coerenti il problema è che non si tiene traccia di chi fornisce le informazioni
2003-2004
Reti di Calcolatori
24
Il modello
InternetClient/Server
Distance Vector: Varianti per ridurre i problemi
•
Il problema è sostanzialmente legato alla lenta convergenza del sistema:
• Le buone notizie viaggiano con i pacchetti (aggiornamenti sui costi di routing)
• Le cattive notizie invece sono molto lente (informazioni di caduta di un nodo
viene raccolta in caso di timeout), solo dopo il timeout possono essere inoltrate,
nel frattempo la situazione è inconsistente e vengono danneggiate le tabelle di
routing
•
Split Horizon: per evitare di inserire informazioni errate nella mia tabella di routing
non accetto informazioni da nodi a cui ho precedentemente inoltrato aggiornamenti su
quella specifica riga
•
Hold down: dopo una notifica di un problema si ignorano le informazioni di cammino
per un certo periodo, lasciando il tempo a tutti i nodi di accorgersi della eccezione
• I loop che si sono già creati vengono mantenuti durante il periodo di attesa
•
Split Horizon con Poisoned Reverse e Triggered Broadcast: quando avviene una
eccezione ogni nodo invia in broadcast le informazioni dei cammini in loro possesso:
• A inva a C un messaggio di non raggiungibilità se crede di raggiungere D via C
• C non può rifarsi ad A (che non raggiungeva D)
• L’algoritmo permette di ricostruire i cammini corretti in base alle informazioni
ottenute in broadcast
• Ci sono ulteriori problemi relativamente alla possibilità di creare diverse catene
di boradcast che rendono difficile la rigenerazione delle tabelle
2003-2004
Reti di Calcolatori
25
Il modello
InternetClient/Server
Algoritmi di routing: Link State
Link State: si basano sul principio della completa conoscenza della topologia di rete
e della relativa ricerca del percorso minimo (Shortest Path First)
Il grafo di interconnessione per evitare cicli viene gestito con algoritmi che
possono favorire decisioni locali (routing dinamico)
Dijkstra shortest-path-first
Possibilità di fare source routing e anche di spedire messaggi su cammini diversi
(routing dinamico)
A REGIME, ogni gateway tiene sotto controllo le proprie connessioni e le verifica
periodicamente
•
invio periodico di messaggi nel vicinato per controllare la
correttezza delle risorse locali
•
identificazione del guasto e segnalazione di eventi di guasto (uso
di più messaggi per evitare transitori e accelerare la
propagazione)
Non appena si verifica un problema  chi ha rilevato il problema invia il messaggio
a tutti i componenti (broadcast o flooding)
2003-2004
Reti di Calcolatori
26
Il modello
InternetClient/Server
Link State: Caratteristiche degli Algoritmi
•
Vantaggi:
• si controlla solo il vicinato
• informazioni di variazione propagate rapidamente (senza ambiguità
via broadcast)
• possibilità di scelte differenziate dei cammini nella topologia
• conoscenza dei cammini completi e source routing
•
•
•
In sostanza le variazioni non sono dipendenti da possibili intermediari
I messaggi sono gli stessi qualunque sia la dimensione del sistema
Problemi:
• necessità di mantenere tutta la topologia
• azioni costose (broadcast) in caso di variazione
•
In generale, necessità di limitare i domini di conoscenza reciproca
 In conclusione possiamo dire che algoritmi di natura globale come i link
state sono molto efficienti ma non permettono una forte scalabilità
2003-2004
Reti di Calcolatori
27
Il modello
InternetClient/Server
Routing: i protocolli di coordinamento tra gateway
•
Per implementare i diversi algoritmi sono necessari protocolli che
permettano ai router di coordinarsi e scambiarsi informazioni
•
Ci sono differenze legate alle possibilità di controllo sulla rete:
•
•
Un sistema si dice autonomo se è controllato in modo unificato da una unica
autorità  all’interno di un sistema autonomo sono implementate in autonomia
le politiche di routing considerate più appropriate  internet è un aggregato di
molti sistemi autonomi
Esistono dei router detti core  mantengono la totalità delle informazioni di
routing per un sistema
•
IGP: Interior Gate Protocol
•
EGP: Exterior Gate Protocol
•
•
•
protocollo per trovare il percorso all'interno di un sistema autonomo politica che
consente percorsi multipli e con possibilità di tollerare i guasti (algoritmi
multipath IGRP CISCO)
protocollo rilevente per i gateway di controllo per trovare il percorso fino ai core
dei diversi sistemi autonomi
struttura ad albero con i core come radice
2003-2004
Reti di Calcolatori
28
Il modello
InternetClient/Server
ICMP: Internet Control Message Protocol
Permette di gestire e controllare la rete
• ICMP consente di inviare messaggi di controllo o di errore al sorgente del
messaggio (solo a questo)
• ICMP usato per il coordinamento tra livelli di IP
• Condizioni di errore al mittente (non correzione) per i relativi
provvedimenti
• nodi intermedi non informati dei problemi
• nodo sorgente può provvedere a correggere
•
Rappresenta un mezzo per rendere note condizioni anomale a chi ha
mandato datagrammi (usando IP)  La politica di uso è tutta a carico
dell'utilizzatore
•
METALIVELLO: Errori su messaggi ICMP non possono causare a loro volta
messaggi ICMP
I messaggi ICMP sono considerati a livello di datagrammi IP sono soggetti
alle stesse regole di routing
• non hanno priorità
• possono essere persi
• possono causare ulteriore congestione
•
2003-2004
Reti di Calcolatori
29
Il modello
InternetClient/Server
ICMP: Internet Control Message Protocol
Formato:
0
8
TYPE
16
CODE
31
CHECKSUM
DATA
in caso di errore l'header del datagramma sbagliato
...
•
•
Messaggio ICMP inserito un datagramma IP: il
messaggio ICMP contiene sempre l'header e
64 bit dell'area dati del datagramma che ha
causato il problema
I campi type e code consentono di fornire
informazioni ulteriori -----------------------
0
Echo Reply
3
Destinazione irraggiungibile
4
Problemi di congestione (source quench)
5
Cambio percorso (redirect)
8
Echo Request
12
Superati i limiti di tempo del
datagramma
Problemi sui parametri del datagramma
13
Richiesta di timestamp
14
Risposta di timestamp
15
Richiesta di Address mask
16
Risposta di Address mask
11
2003-2004
Reti di Calcolatori
30
Il modello
InternetClient/Server
ICMP: Internet Control Message Protocol
Eventi Segnalati
campo CODE ==> un intero dipendente dai valori di TYPE
• Se il destinatario non si raggiunge campo type vale 3
• Il campo Code contiene quindi il codice di errore
2003-2004
0
Rete irraggiungibile
1
Host irraggiungibile
2
Protocollo irraggiungibile
3
Porta irraggiungibile
4
Frammentazione necessaria
5
Errore nel percorso sorgente (source route fail)
6
Rete di destinazione sconosciuta
Reti di Calcolatori
31
Il modello
InternetClient/Server
ICMP: Internet Control Message Protocol
I servizi offerti dal protocollo sono relativi alla gestione dinamica della rete:
•
echo request/reply (type 8/0): controllo percorso
• un host può verificare la raggiungibilità di una destinazione
• Comando ping
•
address mask (type 17/18) richiesta di maschera
• un gateway può richiedere la struttura di mack si una sottorete
•
sincronizzazione degli orologi (type 13/14)
• ricezione e invio del tempo fisico
• si misurano i millisecondi
• si considera tempo di invio, di ricezione, di risposta
•
redirect (type 5) cambio percorso
• un gateway deve cambiare la propria tabella di routing
• funzione di controllo di gestione
2003-2004
Reti di Calcolatori
32
Il modello
InternetClient/Server
UDP: User Datagram Protocol
È il protocollo di livello trasporto per la gestione da parte dell’utente di comunicaizoni di
tipo datagramma
•
Indirizzo: mentre IP deve identificare un nodo, UDP deve identificare uno specifico
processo all’interno di un nodo
• Definisco la porta UDP come numero di 2 byte in grado di identificare uno
specifico processo da parte del sistema operativo
• Indirizzo UDP: indirizzo IP + porta UDP
•
Si appoggia a IP per la consegna dei datagrammi
Application
User Datagram
UDP
header
Area dati
(UDP)
Internet (IP)
Interfaccia di rete
2003-2004
IP
header
Frame
Area dati
Area dati Frame
Reti di Calcolatori
33
Il modello
InternetClient/Server
UDP: User Datagram Protocol
UDP fornisce un servizio unreliable e connectionless
•
•
I datagrammi possono essere persi, duplicati, pesantemente ritardati o
consegnati fuori ordine
il programma applicativo che usa UDP deve trattare i problemi
Formato di un datagramma UDP
0
16
UDP SOURCE PORT
31
UDP DESTINATION PORT
UDP MESSAGE LENGTH
UDP CHECKSUM
DATA
...
2003-2004
Reti di Calcolatori
34
Il modello
InternetClient/Server
UDP: User Datagram Protocol
Quali sono i servizi che offre UDP:
•
•
Processo
di utente
Multiplexing: possibilità di
inviare diversi messaggi in
parallelo da parte di diversi
processi al di sopra di un unico
servizio IP
Porta
Demultiplexing: ricostruzione in
ricezione dei messaggi in modo
che vengano recapitati alla porta
corretta
Processo
di utente
Porta
Porta
UDP
ICMP
IP
Interfaccia
verso la rete fisica
2003-2004
Reti di Calcolatori
35
Il modello
InternetClient/Server
UDP: User Datagram Protocol
Assegnazione dei numeri di porta:
•
Alcune porte sono riservate secondo lo standard del protocollo a specifici
servizi:
2003-2004
0
Riservato
7
Echo
9
Discard
11
Users
13
Daytime
37
Time
69
tfpt (trivial file transfer protocol)
111
Sun RPC protocol
513
who (demone di rwho)
514
system log
Reti di Calcolatori
36
Il modello
InternetClient/Server
UDP: User Datagram Protocol
Assegnazione dei numeri di porta:
•
Quando un processo ha bisogno di inviare un datagramma:
• UDP assegna al processo dinamicamente una porta
• UDP genera il pacchetto e passa ad IP per l’invio
•
Quando un processo riceve un datagramma:
• Il processo deve richiedere una specifica porta per la ricezione
• Porte da 1-1024 sono accessibili solo da processi di sistema (servizi
standard)
Quando un processo risponde ad un datagramma:
• UDP invia il messaggio verso la porta mittente che ha letto nel
pacchetto di request
•
•
Non esiste nessun concetto di connessione: l’unico stato è dato dalla
definizione di una porta specifica per la ricezione
2003-2004
Reti di Calcolatori
37
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
TCP fornisce un servizio reliable e connection oriented
 stream full-duplex:
•
•
Se i pacchetti TCP si perdono vengono automaticamente reinviati
Garanzia della sequenza dei pacchetti
•
Astrazione del canale virtuale o stream: i messaggi del mittente vengono
inviati sotto forma di stream di byte in modo affidabile
•
Gestione dei dati prioritari:
• Banda  per i dati normali
• Fuori Banda  per i dati urgenti
•
Gestire una connessione significa avere uno stato relativo: TCP non
impegna risorse nei nodi intermedi: è un canale virtuale end-to-end
2003-2004
Reti di Calcolatori
38
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Formato del segmento TCP (header 20 byte):
0
4
10
16
SOURCE PORT
24
31
DESTINATION PORT
SEQUENCE NUMBER
ACKNOWLEDGEMENT NUMBER
HLEN RSRVD CODE BIT
CHECKSUM
WINDOW
URGENT POINTER
OPTIONS (IF ANY)
PADDING
DATA
...
2003-2004
Reti di Calcolatori
39
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
CODE BIT
URG
ACK
PUSH
RST
SYN
FIN
•
un dato urgente nel segmento
acknowledgement nel segmento
invio immediato del segmento
reset di una connessione
si stabilisce la connessione
termine della connessione
Si cerca di frammentare meno possibile i messaggi detti segmenti dal
protocollo:
• segmenti troppo corti: grosso overhead di trasmissione
• segmenti troppo lunghi: frammentazione a livello di IP e possibili
perdite ed overhead
2003-2004
Reti di Calcolatori
40
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Le porte seguono lo stesso razionale di UDP  alcune delle porte
riservate:
PORTA
PROTOCOLLO
DESCRIZIONE
20
FTP-DATA
File Transfer Protocol (dati)
21
FTP
File Transfer Protocol
23
TELNET
Terminale remoto
25
SMTP
Protocollo di posta elettronica
80
HTTP
Protocollo WWW
119
NNTP
Protocollo di invio news
2003-2004
Reti di Calcolatori
41
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Come viene implementata la Reliability:
• richiederebbe una attesa sincrona di un messaggio di conferma
(acknowledgement o ACK) per ogni segmento spedito prima di inviarne
uno successivo  vedi ARQ
Il mittente deve attendere tra una
trasmissione e l'altra
• Soluzione inefficiente: devo inviare
una conferma per ogni pacchetto
inviato
• PiggyBacking: inserisco uno stato
di ack nel messaggio di risposta
successivo
• Finestra scorrevole: TCP invia gli
ack tutti insieme per una
determinata finestra di messaggi
•
MITTENTE
RETE
RICEVENTE
Invio pacchetto 1
Ricezione pacchetto 1
Invio ACK 1
Ricezione ACK 1
Invio pacchetto 2
Ricezione pacchetto 2
Invio ACK 2
TCP usa GO BACK-N: se un segmento non viene ricevuto (manca ack) viene
richiesta la rispedizione del segmento complessivo e tutti i seguenti vengono scartati
(ripetizione dell’intera comunicazione dalla eccezione in poi)
2003-2004
Reti di Calcolatori
42
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Protocollo per stabilire la CONNESSIONE TCP:
Connessione tra due nodi: three-way handshake
•
PRIMA FASE: A invia il segmento SYN a B e richiede la connessione (SYN nell'header
del segmento e X valore scelto da A)
•
SECONDA FASE: B riceve il segmento SYN e ne invia uno identico ad A insieme
all'ACK (e Y valore scelto da B)
•
TERZA FASE: A riceve il segmento SYN ed ACK e conferma la ricezione a B attraverso
un ack a sua volta
POSTAZIONE A
Il sistema di comunicazione a tre fasi 
compromesso ogni nodo invia un
messaggio ed ha conferma
Semantica at-most once
Invio segmento SYN
numero seq=x
Ricezione SYN + ACK
RETE
POSTAZIONE B
Ricezione segmento SYN
Invio segmento SYN seq=y,
ACK x+1
Invio ACK y+1
Ricezione segmento ACK
2003-2004
Reti di Calcolatori
43
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Protocollo per stabilire la CONNESSIONE TCP:
Protocollo di BIDDING (senza rifiuto)
NEGOZIAZIONE a tre fasi per stabilire proprietà; si verifica che:
•
•
•
•
•
Entrambi i nodi disponibili alla connessione per una sessione di comunicazione
Accordo sulla sequenza iniziale di valori: ogni pari propone per il proprio verso:
• numeri di porta
• numeri per i flussi (messaggi ed ack)
• tempo di trasmissione e risposta (finestra, ...)
La sequenza é confermata proprio durante la inizializzazione
Scelta casuale di un numero da cui iniziare la numerazione e comunicato all'altra per
ogni flusso
In fase iniziale si negoziano anche altre opzioni:
• accordo sul MSS (maximum segment size)
• dimensione del blocco di dati massimo da inviare (default 536)
• Maggiore il valore, migliori le performance
• fattore di scala della finestra
• richiesta di tempo e risposta per il coordinamento degli orologi
2003-2004
Reti di Calcolatori
44
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Protocollo di chiusura della CONNESSIONE TCP:
NEGOZIAZIONE chiusura a fasi  semplice operazione di close graceful
• Chiusura monodirezionale
•
Chiusura definitiva in un verso senza perdere i messaggi in trasferimento
•
Il nodo A comunica a TCP di non avere ulteriori dati e chiude
•
TCP chiude la comunicazione solo nel verso da A a B
• se B non ha terminato, i dati continuano a fluire da B ad A
• I dati che precedono la fine sono ricevuti prima della fine della connessione
da A a B.
• controllo ancora aperto da A a B (flusso di ack)
• TCP permette solo il passaggio di ack su canale intenzionalmente chiuso
2003-2004
Reti di Calcolatori
45
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
Protocollo di chiusura della CONNESSIONE TCP:
Chiusura a quattro fasi:
•
•
•
POSTAZIONE A
Invio segmento FIN
A invia segmento FIN (che arriva
numero seq=x
dopo i relativi dati)
TCP aspetta a dare corso alla
Ricezione ACK
chiusura definitiva, ma invia ad A
solo un ack
Dopo il tempo necessario per i
programmi applicativi B invia ad A il
suo segmento FIN che informa della
Ricezione di
disponibilità a chiudere la
FIN + ACK
connessione
RETE
POSTAZIONE B
Ricezione segmento FIN
Invio ACK di x+1
Ancora dati da B ad A
e ack da A a B
Invio segmento FIN, ACK x+1
Invio ACK y+1
•
L'ultimo passo: conferma da A a B
della ricezione del segmento FIN e la
chiusura del collegamento
2003-2004
Ricezione segmento ACK
Reti di Calcolatori
46
Il modello
InternetClient/Server
TCP: Transfer Control Protocol
I sintesi:
•
La gestione della connessione e della reliability porta ad un costo in termini di
overhead non trascurabili per piccole interazioni
•
I possibili guasti del dialogo sono spesso relativi al concetto di congestione (i
gateway scartano i pacchetti IP in caso di congestione:
• TCP implementa diversi algoritmi che manipolano i time out e le dimensioni
della slicing window per recuperare al meglio uno stato di congestione
•
Il protocollo fornisce all’utente una astrazione di stream completa:
•
A Livello di applicazioni si usa quindi TCP quando si hanno esigenze di
gestione della reliability (es: HTTP, FTP)
•
Si usa invece UDP se si ha la necessità di gestire interazioni non per forza
affidabili e senza uno stato necessario (es: protocolli di peering)
2003-2004
Reti di Calcolatori
47
Il modello
InternetClient/Server
DNS: Domain Name System
È un servizio standard costruito per permettere una associazione logica più
semplice all’indirizzo IP.
•
In Unix esiste un file /etc/hosts che contiene una tabella fatta in questo modo:
192.168.0.10
137.204.56.1
localhost
pc001
www-lia
pc001.deis.unibo.it
www-lia.deis.unibo.it
•
È possibile associare ad un indirizzo IP uno o più alias che identificano l’host a
cui è associato l’indirizzo
•
Cosa fa il sistema:
• Riconosce un alias
• Verifica se l’alias è nella tabella /etc/hosts
• Converte l’alias nell’ip corrispondente
• Passa a TCP (o UDP) l’indirizzo IP
•
Il DNS non è altro che un servizio distribuito e standard in internet per la
conversione degli alias in numeri IP
2003-2004
Reti di Calcolatori
48
Il modello
InternetClient/Server
DNS: Domain Name System
Quali sono i requisiti di questo servizio:
•
Deve essere flessibile e distribuito, non è possibile che ci sia una singola entità
che tenga traccia di tutti gli indirizzi di Internet:
• Scalabile
• Completamente Distribuito  località  ogni domonio deve gestire in
proprio il suo naming
•
Deve garantire prestazioni significative e garantire un qualità costante nelle
risposte perché tutti i client in internet hanno bisogno di risolvere il nome prima
di utilizzare uno specifico servizio:
• Reliability (affidabilità)
• Efficienza
•
Deve essere fidato: devo fidarmi di quello che mi dice (cosa succede se un DNS
invece di darmi un indirizzo di una banca mi da un indirizzo di un sito
malicious?)
• Trustness (fiducia)
2003-2004
Reti di Calcolatori
49
Il modello
InternetClient/Server
DNS: Domain Name System
Come possiamo costruire il servizio:
•
I numeri IP sono costruiti in modo gerarchico e “parlante”: posso cercare di
riprendere il concetto di gerarchia:
• Reti (e sotto reti) vs. Domini
• Hosts
vs. Servizi in un dominio
•
Devo costruire una struttura generale che mi garantisca un ordine:
• Delega: ogni Dominio è responsabile del suo naming interno
• Autorità riconosciute: decidono i domini di livello 0 (.com .it .org ..) e
forniscono gli indirizzi riconosciuti dei domini di primo livello (amazon.com ,
unibo.it, mit.edu)
•
Ogni dominio è responsabile della integrità dei suoi sottodomini / hosts (è
difficile che una banca inserisca nel suo dominio spontaneamente un sito acker)
2003-2004
Reti di Calcolatori
50
Il modello
InternetClient/Server
DNS: Domain Name System
È stata definita una struttura gerarchica standard.
Generic
int
com
sun
java
2003-2004
Countries
edu
gov
yale
cs
eng
mil
acm
jack
org
net
ieee
it
cineca
jill
Reti di Calcolatori
uk
unibo
deis
fr
unims
inria
cs
eng
51
Il modello
InternetClient/Server
DNS: Domain Name System
Caratteristiche Standard del Servizio:
•
I singoli nomi sono case insensitive e al max 63 char
•
Il nome completo al max 255 char
•
Non sono validi solo caratteri riconosciuti in TUTTI gli standard di codifica:
ASCII 7
• Non si possono utilizzare inoltre alcuni caratteri riservati (. , / \ | …etc)
•
I domini non sono collegati in nessun modo alle reti fisiche o alle organizzazioni
(logico vs. fisico): non ho mai vincoli fisici relativamente alla costruzione dei
miei domini (motivo per cui possono esistere gli ISP: Internet Service Provider)
•
Quando si ha la responsabilità di gestire un dominio si deve garantire una
qualità del servizio specifica (si delega la gestione del naming ad operatori
specializzati in grado di offire il servizio adeguato)
2003-2004
Reti di Calcolatori
52
Il modello
InternetClient/Server
DNS: Domain Name System
Implementazione:
•
Ogni richiesta viene fatta al servizio di nomi tramite un agente specifico di
gestione dei nomi per una località
•
a livello di API si passa il riferimento da mappare ad un resolver che
• o conosce già la corrispondenza (cache)
• o la trova attraverso una richiesta C/S a un name server
•
Ogni hosts sa quale è il suo server (DNS Server) di riferimento (configurazione
di sistema)
• Il DNS Server di riferimento è normalmente il DNS della organizzazione di
cui si fa parte
•
Ogni dominio corrisponde infatti al Name Server che ha autorità sulla
traslazione degli indirizzi che non ha una visione completa, ma solo locale
• In genere, ogni zona ha un primary master responsabile per i dati della
intera zona
• ma in più ci sono una serie di secondary master che sono copie del
primary, con consistenza garantita dal protocollo DNS (non massima)
2003-2004
Reti di Calcolatori
53
Il modello
InternetClient/Server
DNS: Domain Name System
•
allo start up il secondario chiede i dati al primario e può fare fronte al traffico in
caso di guasto
•
Ad intervalli prefissati, i secondari chiedono le informazioni al primario (modello
pull)
•
I ruoli sono mescolati in modo libero: primario di una zona può diventare il
backup (master secondario) di un'altra zona
•
Efficienza su località: i dati ottenuti possono essere richiesti nuovamente i
server mantengono informazioni
• caching dei diversi server per ottimizzare i tempi di risposta al cliente
•
È definito un protocollo di richiesta e risposta per il name server
• con uso di protocollo UDP (comunicazione porte 53)
• e se messaggi troppo lunghi? Eccezione e uso di TCP
2003-2004
Reti di Calcolatori
54
Il modello
InternetClient/Server
DNS: Domain Name System
Quale è lo stato che il DNS mantiene per gestire i nomi:
•
Un server mantiene un record per ogni risorsa
configurazione ed aggiornato)
•
Le query consultano l'insieme dei record:
•
•
•
•
•
Nome dominio
Time to live
Classe
Tipo
Valore
Tipo
SOA
A
MX
NS
CNAME
PTR
HINFO
TXT
2003-2004
dinamico (caricato da file di
(tempo validità in secondi)
(Internet IN)
(descrizione del tipo)
Significato
Start of Authority
IP host address
Mail exchange
Name server
Canonical name
Pointer
Host description
Text
Valore
parametri della zona
intero a 32 bit (dot not.)
server di domino di mail
server per dominio corrente
alias di nome in un dominio
per corrispondenza inversa
descrizione di host e SO
testo qualunque
Reti di Calcolatori
55
Il modello
InternetClient/Server
DNS: Domain Name System
•
Esempi di record DNS:
-------------------------------------------------------------@ IN SOA promet1.deis.unibo.it. postmaster.deis.unibo.it.
(644 10800 1800 604800 86400) ; serial number, refresh, retry, expiration, TTL in sec
; versione , 3 ore, 1/2 o, 1 sett, 1 d
IN NS promet1.deis.unibo.it.
IN NS promet4.deis.unibo.it.
IN NS almadns.unibo.it.
IN NS admii.arl.army.mil.
------------------------------------------------------------------------------------localhost IN A 127.0.0.1
@ A
137.204.59.1
MX 10 deis.unibo.it.
MX 40 mail.ing.unibo.it.
------------------------------------------------------------------------------------lab2 IN NS lab2fw.deis.unibo.it.
lab2fw IN A 137.204.56.136
amce11 IN
A 137.204.57.244
IN HINFO
HW:PC IBM
SW:WINDOWS 95
IN WKS
137.204.57.244 TCP FTP TELNET SMTP
IN MX 40
amce11.deis.unibo.it.
labvisione IN CNAME csite27
deis18 IN TXT "Qualunque testo non significativo"
deis18 IN RP root.deis.unibo.it luca\.ghedini.mail.ing.unibo.it ; record per responsabile
2003-2004
Reti di Calcolatori
56
Il modello
InternetClient/Server
DNS: Domain Name System
Come procede la risoluzione dei nomi:
•
Se il DNS di zona non è in grado di offrire la risposta  deve partire una
sequenza di ricerca sugli altri DNS; questa sequenza, a seconda delle
implementazioni può seguire due algoritmi:
• Soluzione ricorsiva richiede che al cliente
• o si fornisca risposta (anche chiedendo ad altri)
• o si segnali errore (dominio non esistente, etc.)
• Soluzione iterativa richiede che al cliente si fornisca
• o la risposta
• o il migliore suggerimento (come un riferimento al migliore name
server)
•
A seconda del ruolo dell’servitore nella gerarchia verranno implementati i due
algoritmi:
• Il resolver usa una query tipicamente ricorsiva: ha bisnogno di una
risposta e demanda al DNS server di riferimento l’onere di una eventuale
escalation
• il server di dominio si incarica di rispondere coordinandosi con altri
sequendo un procedimento iterativo
• Tutti i server si comporteranno quindi tra loro in modo iterativo
2003-2004
Reti di Calcolatori
57
Il modello
InternetClient/Server
DNS: Domain Name System
it
RIF a cineca.it
trova
pippo.cineca.it
resolver
cineca.it
Server di
Dominio
client
pippo.cineca.it
RIF a it
unibo.it
Gestore
deis.unibo.it
Server
Server
Secondari
Secondari
Dominio
Dominio
2003-2004
trovato per pippo.cineca.it
137.205.88.00
Reti di Calcolatori
58
Il modello
InternetClient/Server
In Sintesi: L’accesso ad una pagina WEB
Uso dei diversi livelli di protocolli  Da cliente a servitore remoto
I passi che devono essere fatti sono i seguenti:
•
•
•
•
•
•
Richiesta di pagina Web
Richiesta al DNS
Protocollo ARP per trovare percorsi in uscita
Connessione TCP tra client e server
Passaggio dei dati
Chiusura
2003-2004
Reti di Calcolatori
59
Il modello
InternetClient/Server
Estensioni dei Protocolli TCP/IP
Al di sopra della suite TCP/IP è possibile costruire soluzioni adatte alle esigenze più
diverse:
Internet
HTTP
SMTP
POP
NFS
VT
FTP
DNS
SNMP
XDR
TELNET
RTP
TCP
UDP
IP
Accanto ai protocolli tradizionali, compaiono molte linee di sviluppo, incoraggiate da
IETF con la costituzione di gruppi di lavoro:
• Alcuni protocolli rappresentano necessità di ampie utenze: NAT, DHCP, PPP, ...
• estensioni per consentire una migliore sicurezza
• estensioni per la gestione della mobilità
• estensioni per considerare sistemi a flusso di informazioni multimedial
• estensioni per la gestione della qualità di servizio
2003-2004
Reti di Calcolatori
60
Il modello
InternetClient/Server
Alcuni protocolli standard
PPP e SLIP:
•
Protocolli nati per la gestione di ampie batterie di modem:
• È troppo costoso assegnare un IP ad ogni utente
• Viene creato un pool di indirizzi che viene associato dinamicamente
alla sola sessione di accesso di un modem
• Quando un modem chiude la connessioen il numero IP assegnato
torna nel pool
DHCP (rfc 2131)
• Protocollo nato per la gestione di reti molto dinamiche  Quando un host
entra nella rete chiede un IP:
• Si basa su due ruoli: clienti e servitori con protocollo di bidding a fasi
• broadcast del discovery (richiesta di ingresso)
• offerte dei servitori (con parametri di scelta)
• scelta di una offerta (in broadcast)
• conferma della offerta
• messaggi di mantenimento prima della scadenza (lease)
• È molto interessante vista la diffusione dei computer portatili nelle grosse
organizzazioni
2003-2004
Reti di Calcolatori
61
Il modello
InternetClient/Server
DHCP: implementazione
server A
client
DHCPDISCOVER
server B
DHCPDISCOVER
messaggio broadcast
(porta 67 bx limitato)
DHCPOFFER
DHCPREQUEST
DHCPOFFER
i server mandano in
broadcast reply (porta 68)
DHCPREQUEST
conferma ancora bx
con scelta del server B
DHCPACK
DHCPRELEASE
2003-2004
Reti di Calcolatori
62
Il modello
InternetClient/Server
Reti Publiche vs. Private, Aperte vs. Opache
•
Il naming basato su IP ha permesso di creare una rete pubblica completa; ogni
host è in grado di raggiungere ogni altro host attraverso il routing.
•
Questa soluzione però non sempre è interessante, a volte infatti può essere
favorevole creare reti private (non raggiungibili direttamente) con un set di
indirizzi separato dal resto della rete:
• Vantaggio di costo: un indirizzo IP pubblico ha un costo
• Protezione e sicurezza: non espongo direttamente la mia macchina su
internet ma gestisco direttamente il suo accesso
• Flessibilità: posso utilizzare senza complessità aggiunta protocolli di
assegnamento dinamico come il DHCP
•
Si parla di Reti Private o Opache quando gli indirizzi IP della rete non sono
esposti direttamente su internet
•
In Internet, una rete opaca è vista attraverso i suoi gateway, i gateway
nascondono gli indirizzi interni e si occupano della traduzione (ad esempio
FastWeb ha una rete privata, da internet si vedono solo i gateway delle diverse
reti cittadine
2003-2004
Reti di Calcolatori
63
Il modello
InternetClient/Server
NAT
•
NAT: Network Address Transaltion:
è il servizio che gestisce la traduzione
degli indirizzi nel caso di reti opache
•
Traduce, all’interno dei pacchetti IP gli
indirizzi pubblici/privati e si occupa di
ricostruire i pacchetti (checksum) in
modo corretto
•
Le applicazioni che utilizzano
direttamente i numeri IP possono
andare incontro a problemi  nel
pacchetto infatti risulta un destinatario
IP privato… se provo a raggiungerlo al
di fuori della sessione di interazione
specifica (controllata dal NAT) non
riesco a risolvere il nome
2003-2004
Reti di Calcolatori
64
Scarica

Reti III parte