it
RETI
RETI
Rev. Digitale 1.0 del 01/09/2016
Introduzione ………………………………………………..………... 3
Cenni sulla trasmissione del segnale Digitale …………..………………… 3
Classificazione delle reti ……..………………………….…………………. 4
Topologie di Rete ………………………………………..…………………. 6
Metodi di accesso al mezzo trasmissivo ……….………..………………… 8
Metodi di Commutazione …………………………………….……………. 9
Protocolli e Standard …………………………………………..…………... 10
pag 1
Sistemi - Classe Quinta robertomana.it
RETI
pag 2
Sistemi - Classe Quinta robertomana.it
RETI
Introduzione
Dalla macchina stand-alone alla rete. Definizione di LAN da parte di IEEE:
Sistema di Comunicazioni Dati che consente ad un certo numero di dispositivi indipendenti di comunicare
direttamente l'uno con l'altro entro un'area geografica di dimensioni moderate (centinaia di metri ma
anche qualche Km) lungo un canale fisico di comunicazione a velocità moderate (Mbps obsoleto)
Disturbi
I disturbi possono modificare il valore di un segnale. Il segnale digitale è molto più robusto ai disturbi rispetto a
quello analogico. Può però succedere che un disturbo intenso ed impulsivo porti a modificare lo stato di un bit.
pag 3
Sistemi - Classe Quinta robertomana.it
RETI
LAN
Local Area Network. Si estendono normalmente su un singolo edificio o su più edifici vicini, e comunque
normalmente all‟interno di ambienti controllati, per cui presentano di norma:
Elevata velocità di trasmissione
Elevata affidabilità (Bassa percentuale di errori )
Inoltre:
Utilizzano sempre una connessione multipunto, dove ogni host può comunicare con tutti gli altri.
Il canale di comunicazione è unico e condiviso fra tutti gli host (bassi costi)
Consentono di condividere risorse e funzionalità, come ad esempio l'accesso condiviso a Internet
MAN
Metropolitan Area Network. Collegano tra loro un insieme di reti locali all‟interno di un‟area metropolitana.
Solitamente collegano tra loro sezioni differenti di:
Pubbliche amministrazioni,
Università,
Reti civiche,
Agenzie di servizi.
Una rete MAN consente agli utenti dislocati in punti geografici diversi di utilizzare le risorse condividendole come se
facessero tutti parte della stessa rete locale. Fino a qualche anno fa erano basate essenzialmente sulla tecnologia
delle reti geografiche, utilizzate su scala urbana (linee in genere affittate da Telecom). Tecnologie più recenti le
hanno rese più simili alle LAN che alle WAN. Ovviamente le MAN hanno una complessità maggiore rispetto alle
LAN; per l‟impiego di linee telefoniche ad alta velocità o di hardware specializzato, e quindi un maggior costo.
Il costo elevato, abbinato alla diffusione capillare di Internet, ha reso le MAN alquanto obsolete.
WAN
Le WAN (Wide Area Network) sono costituite nella maggior parte dalla combinazione di una serie di reti locali
dislocate su aree geografiche molto ampie ed opportunamente connesse in modo da poter comunicare tra loro.
Sono nate per collegare tra loro vari centri di ricerca dislocati a grandi distanze. Sono caratterizzate da:
Utilizzo, come mezzo di comunicazione, di linee telefoniche affittate.
Basse Velocità di trasmissione
.
pag 4
Sistemi - Classe Quinta robertomana.it
RETI
Reti paritetiche
In una rete peer to peer o p2p (letteralmente “pari- pari”, cioè tutti con gli stessi diritti) non vengono utilizzati server
dedicati, ma ciascuna macchina funge contemporaneamente sia da client che da server. Questo tipo di rete si
adatta bene a piccole organizzazioni in cui non vi sono particolari problemi di sicurezza, ed in cui generalmente non è
possibile accedere dall‟esterno. In questi casi spesso ogni utente è anche amministratore del proprio computer.
Ogni utente determina quali dati presenti sul proprio computer possono essere visibili dagli altri computer. Allo
stesso modo ciascun utente può rendere condivisibili stampanti, schede fax o altri dispositivi collegati al proprio
computer. Ogni PC vede e può utilizzare le risorse condivise di tutti gli altri PC.
Le reti peer to peer sono utilizzate fino ad un massimo di 10 PC ed hanno dei limiti soprattutto dal punto di vista
delle protezioni. Non esiste cioè un controllo centralizzato delle protezioni. Inoltre si può accedere alle risorse di un
PC soltanto se questo è acceso.
Le funzionalità di rete peer to peer sono generalmente incorporate nei Sistemi Operativi usuali (da Windows 95 in
avanti). Per dichiarare una risorsa condivisa in rete è sufficiente selezionarla sul gestore risorse, fare click col
pulsante destro del mouse e, sul menù che compare, scegliere “Condivisione”. Compare la seguente finestra
Nelle reti basate su server, almeno una macchina, sempre accesa, è dedicata alla funzione di server. La macchina
server ha lo scopo di mettere a disposizione degli altri host un insieme di servizi, fra cui, ad esempio:
Servizio di file e di stampa, dedicati a fornire un‟area sicura per il deposito dei propri dati; forniscono
inoltre l‟accesso ad una stampante gestendone la coda di stampa
Servizio di registrazione e autenticazione degli utenti (PDC Primary Domain Controller)
Servizi dedicati alla Gestione della sicurezza, come ad esempio i firewall ed i server proxy
Componente server di Applicazioni client-server, come ad esempio i server http, i server di posta ed i server
di database.
Reti Miste
Talvolta le reti possono anche essere realizzate in una configurazione mista con un server centrale e più host ciascuno
con una propria cartella di condivisione, in modo che ognuno, oltre ai dati del server, possa accedere anche ad
eventuali dati o risorse degli altri host.
pag 5
Sistemi - Classe Quinta robertomana.it
RETI
Topologia a bus
La rete a bus è il metodo più semplice ed economico per permettere la connessione tra più computer.
Consiste in un singolo cavo (detto dorsale) al quale sono connessi tutti gli host della rete. I connettori utilizzati per il
collegamento degli host al cavo sono scatole di derivazione oppure semplici connettori BNC a forma di T.
Arrivati a fine bus, i dati verrebbero riflessi indietro (attenuati) rimbalzando da un capo all'altro del cavo. Per evitare
queste riflessioni ad ogni estremità del cavo viene applicato un componente detto terminatore (volgarmente tappo).
E‟ anche possibile unire più tronconi di cavo mediante un dispositivo chiamato Repeter che potenzia il segnale
prima di ritrasmetterlo sulla rete.
Caratteristiche:
Un solo host alla volta può inviare dati sulla rete.
Se più host trasmettono contemporaneamente avviene una collisione.
I dati trasmessi da un host arrivano sempre a tutti gli host presenti sulla rete (che in base all‟indirizzo di
destinazione del messaggio, lo possono leggere oppure scartare).
Il fatto che tutti gli host utilizzino un unico mezzo trasmissivo condiviso comporta inevitabilmente il problema di
come gestire le collisioni, cioè sostanzialmente come gestire gli accessi al mezzo condiviso e gli eventuali conflitti..
A tal fine sono stati sviluppati nel corso degli anni diversi algoritmi che possono essere suddivisi in due gruppi:
Deterministici, gestiscono a priori i turni di accesso al mezzo, mediante l‟utilizzo di un apposito TOKEN
(gettone, testimone), in modo tale da evitare a priori qualunque rischio di collisione (parla solo chi ha il
token)
Non deterministici: non gestiscono alcuna priorità, consentendo in pratica l'accesso contemporaneo a
chiunque, gestendo soltanto a posteriori la competizione. In caso di collisione tutti gli host vengono interrotti
ed il messaggio ritrasmesso.
pag 6
Sistemi - Classe Quinta robertomana.it
RETI
Algoritmi Non Deterministici: CSMA/CD (Carrier Sense Multiple Access / Collision Detection)
Nel 1979 la Xerox presenta una rete locale strutturata a bus denominata Ethernet basata su un algoritmo non
deterministico di accesso al mezzo trasmissivo, algoritmo denominato CSMA/CD.
Il nome Ethernet deriva da una precedente rete denominata ALOHA, in progetto all'Università delle Haway, per
mettere in comunicazione due Computer attraverso l'etere e basata su un algoritmo simile a CSMA/CD.
L‟algoritmo CSMA/CD fa sì che ogni host, prima di trasmettere, ascolti lo stato del canale (CARRIER SENSE) per
vedere se è libero. Appena sente il canale libero inizia immediatamente la trasmissione, anche a rischio di collisioni
(MULTIPLE ACCESS). Eventuali collisioni sono gestite solo a posteriori con la ritrasmissione del messaggio. La
rete Ethernet, nonostante le controversie iniziali, segna la storia delle LAN e la fortuna di Xerox, trasformandosi
presto (1980) in uno standard internazionale (IEEE 802.3) frutto della collaborazione fra Xerox Digital e Intel (DIX)
Caratteristiche:
Estrema semplicità e funzionalità
Tempi di attesa non definiti, ma dipendenti sia dal numero di host presenti (maggiore è il numero di
computer connessi alla rete, più aumenta il rischio di collisioni, rallentando le prestazioni), sia soprattutto dal
livello di carico della rete (quantità di messaggi da trasmettere)
La contestazione principale mossa alle prime reti Ethernet è che non gestisce uno schema ben definito di
priorità degli accessi al mezzo di trasmissione, per cui potrebbe capitare che un host particolarmente
sfortunato, in una certa circostanza, abbia un tempo di attesa molto lungo prima di poter trasmettere i propri
dati.
Nella topologia ad anello gli host sono collegati secondo un anello circolare. Nelle reti ad anello non esiste un bus
condiviso, ma ogni coppia di host è collegata mediante un cavo dedicato, ed ogni scheda di rete gestisce la
comunicazione con le due schede vicine.
Una rete di questo tipo si presta benissimo ad utilizzare l‟algoritmo deterministico del Token Passing.
La più conosciuta di queste reti è la rete Token Ring proposta da IBM (Standard IEEE 802.5), e inizialmente
principale antagonista di Ethernet. Il segnale inviato da una stazione passa attraverso tutti i vari host che fungono da
ripetitori ritrasmettendo il segnale potenziato al computer successivo, fino all‟eventuale percorrimento dell‟intero
anello.
pag 7
Sistemi - Classe Quinta robertomana.it
RETI
La topologia ad anello consente prestazioni molto regolari anche nel caso di un elevato numero di utenti, permettendo
una maggiore velocità di trasferimento dati rispetto alle reti a Bus, sia Ethernet che Token Bus. Ad esempio una
versione standard iniziale di Token Ring utilizzava una velocità di trasferimento pari a 16 Mbps contro i 10 dello
standard Ethernet a Bus coassiale.
Per contro però le reti ad anello presentano una gestione molto complessa:
Ogni volta che occorre aggiungere o togliere un host occorre modificare anche gli host adiacenti.
Un host non funzionante può provocare la caduta di tutta la rete (nelle versioni più evolute un host non
funzionante viene automaticamente escluso dall'anello, consentendo alla rete di continuare a funzionare).
Da un punto di vista logico la topologia a stella è simile alla topologia a bus, ma invece di utilizzare in bus, viene
utilizzato un concentratore centrale detto HUB (termine inglese che significa PUNTO CENTRALE da un punto di
vista geografico) al quale vengono collegati tutti i vari host. L‟hub duplica i messaggi a tutti i computer ad esso
collegati. In sostanza è come se l‟intero bus venisse compresso in un unico punto.
Come mezzo trasmissivo per collegare gli host all‟hub si utilizza in genere un cavo detto UTP che è una evoluzione
del doppino telefonico, molto più flessibile del coassiale, dal costo inferiore, ma anche con una banda passante
mediamente inferiore rispetto al coassiale. Rispetto ad una rete a bus:
1) + Sono più facili da progettare, realizzare e mantenere
2) + La connessione / disconnessione di un computer non comporta alcun impatto sulla rete, mentre nelle reti a bus il
malfunzionamento di una scheda potrebbe compromettere l‟intero bus, esattamente come per le reti ad anello-
3) - Poiché tutti i messaggi passano attraverso l‟hub in caso di malfunzionamento l‟intera rete va fuori uso
4) - Richiede una maggiore quantità di cavi, più il costo aggiuntivo dei dispositivi intermedi (hub), costi comunque
compensato dalla più facile installazione e dal costo più economico del cablaggio UTP rispetto al coassiale.
Estensione della topologia precedente. Tutti gli host sono connessi ad un nodo centrale (centro stella), con i nodi
centrali a loro volta collegati tra loro per formare diversi livelli.
Queste reti, che rappresentano la topologia delle reti Ethernet attuali, conservano la stessa identica metodologia di
accesso al mezzo (CSMA/CD). Dal momento che nelle reti attuali il bus non esiste più, ad oggi si indica come rete
Ethernet una qualunque rete che utilizza il protocollo CSMA / CD per accedere al mezzo trasmissivo,
indipendentemente sia dal mezzo trasmissivo utilizzato, sia dalla topologia della rete. Si dice che le reti Ethernet
attuali presentano una:
topologia fisica a stella estesa, con tutti gli host collegati ad un punto centrale (hub o switch).
topologia logica a bus (ed anche elettrica) in cui ogni messaggio raggiunge via hardware tutti i nodi (altro
elemento invariante nella natura di Ethernet)
L‟utilizzo degli switch al posto degli hub consente infine una segmentazione della rete, con notevole riduzione delle
collisioni (segmentazione dei domini di collisione) e conseguente miglioramento delle prestazioni.
pag 8
Sistemi - Classe Quinta robertomana.it
RETI
Modalità di Commutazione
Simplex -> Monodirezionale. Uno trasmette e l‟altro riceve (trasmissioni tv, radio)
Half Duplex -> Bidirezionale. Entrambi possono trasmettere, ma non contemporaneamente (tipico delle reti)
Full Duplex -> Bidirezionale. Entrambi possono trasmettere contemporaneamente (telefono)
Nelle vecchie reti a bus la comunicazione fra due end point può solo essere Half Duplex, in quanto il Full Duplex
creerebbe collisione. Le reti UTP con canali Tx e Rx separati sono intrinsecamente Full Duplex. Tutte le schede di
rete sono Full Duplex. L‟hub non è in grado di gestire il full duplex, lo switch si, grazie alla microsegmentazione
Metodi di Commutazione
Commutazione di circuito
La commutazione di circuito stabilisce una connessione fisica dedicata tra due nodi mediante appositi commutatori
di linea. L'uso della connessione è esclusivo e continuo per l'intera durata della comunicazione. Al termine la
connessione viene eliminata ed il canale risulta disponibile per altre trasmissioni. Esempio tipico la rete telefonica
PSTN = Public Switched Telephone Network, dove Switched Network indica Rete commutata, intendendo
implicitamente la commutazione di circuito che ai tempi era l'unica utilizzata. Sicurezza ma costi elevati. Tre fasi:
Apertura della connessione (es chiamata telefonica)
Scambio delle informazioni (es conversazione)
Chiusura della connessione (es riaggancio della cornetta telefonica)
pag 9
Sistemi - Classe Quinta robertomana.it
RETI
Protocolli e Standard
Un protocollo è un insieme di regole che definiscono la comunicazione fra dispositivi collegati ad una rete.
Queste regole riguardano:
formazione e codifica dei messaggi
rilevazione e correzione degli errori
instradamento dei messaggi attraverso la rete
pag 10
Sistemi - Classe Quinta robertomana.it
RETI
In questo modo il modello lascia i costruttori liberi di progettare e realizzare i loro sistemi come meglio credono,
fornendo al contempo uno standard per la loro interconnessione
I 7 livelli sono:
Applicazione Software
Presentazione
Sessione
Transport Comunicazione
Network - Rete
Data Link - Connessione
Physical
Lo scopo di ciascun livello è quello di fornire servizi al livello superiore, nascondendo i dettagli sul come tali
servizi saranno implementati, secondo una logica simile a quello della programmazione strutturata, in cui non tutto il
codice è scritto all‟interno del main ma è strutturato all‟interno di più procedure annidate una dentro l‟altra.
Ogni livello aggiunge “valore” ai servizi sottostanti.
Il livello 1 non aggiunge ulteriori intestazioni ma si limita ad immettere il PDU completo sul mezzo trasmissivo.
Da un punto di vista fisico i dati vengono fatti scendere dai livelli superiori ai livelli inferiori fino al raggiungimento
del livello fisico che è quello esegue la trasmissione vera e propria. Ogni livello incapsula i dati ricevuti all‟interno
delle proprie intestazioni e “passa” il tutto il livello inferiore. In ricezione i dati verranno ricevuti dal livello 1, che li
passerà i dati al livello 2, il quale leggerà le proprie intestazioni e passerà il payload al livello superiore fino al
raggiungimento del livello 7. Fisicamente ogni livello comunica soltanto con i livelli inferiore e superiore
Da un punto di vista logico ogni livello porta vanti una conversazione con il pari livello sull‟altro host. Ad esempio
il livello 4 del trasmettitore comunica solo con il livello 4 del ricevitore (nel senso che legge ed interpreta le
intestazioni di livello 4). Ad ogni livello di fatto non interessa nulla che cosa c'è sotto e come fanno i dati ad arrivare
al pari livello del ricevitore. Le regole e le convenzioni che governano la conversazione fra pari livello sono indicate
come protocollo di livello n.
pag 11
Sistemi - Classe Quinta robertomana.it
RETI
Livello 7 : Applicazione
Il Livello Applicazione è il più vicino all'utente. E‟ di solito conglobato all‟interno di una applicazione di rete, ma
non è l‟applicazione utente, semmai è il livello più basso dell‟applicazione utente.
Fornisce all‟applicazione utente gli strumenti per accedere ai servizi di rete. Esempi di protocolli di livello 7:
HTTP, SMTP, DNS, DHCP, FTP, SMB, POP3 tutti basati su semplici messaggi testuali codificati in ASCII a 7 bit
Livello 6 Presentazione
Il livello 6 si occupa di
Uniformare il formato di rappresentazione dei dati. Garantisce cioè che l'informazione sia leggibile anche
da sistemi differenti. Se necessario provvede a convertire i dati in formato standard che normalmente è il
codice Ascii a 7 bit. Esempio1 se un applicativo Window deve comunicare con un maiframe IBM, il livello
6 del mainframe dovrà eseguire una traduzione EBCDIC – ASCII e viceversa. Esempio2 un computer che
deve comunicare con un PLC Siemens deve eseguire una trasformazione da Little Endian (per primo il byte
meno significativo, usato da tutti i PC ) a Big Endian (utilizzata nei mainframe e in alcuni PLC).
Alcuni formati utilizzati per la rappresentazione dei dati sono:
ASCII. L’American Standard Code for Information Interchange set di caratteri codificati ad 8 bit
EBCDIC. Extended Binary Coded Decimal Interchange Code Metodo usato dall’IBM su MainFrame e Mini
XDR eXtended Data Representation usata da applicazioni come NFS e NIS per fornire un formato universale
per la trasmissione di testi tra computer che usano rappresentazioni diverse (es. ASCII e EBCDIC).
Eseguire Crittografia e Compressione dei dati (SICUREZZA). Crittografare un segnale significa
applicare un algoritmo noto soltanto a chi trasmette e a chi riceve in modo che applicando una apposita
chiave posso criptare / decriptare la trasmissione. Ad esempio, sostituendo ogni lettera con la successiva
(codifica di Cesare), ciao viene scritto come dlbp.
Protocolli di livello 6: SSL (Secure Socket Layer)
pag 12
Sistemi - Classe Quinta robertomana.it
RETI
Livello 5 Sessione
Gli obiettivi del Livello 5 sono i seguenti :
Gestire Sessioni di comunicazione multiple per uno stesso applicativo, definendo regole e tempistiche di
accesso al canale TCP. Ad esempio, nel caso di più finestre del browser contemporaneamente aperte,
ciascuna finestra rappresenta una sessione di lavoro (a cui saranno associate le variabili session).
Creare dei punti di sincronizzazione su una Connessione End To End creata dal livello 4. Se per caso la
connessione si interrompe, il livello Session riporterà al livello sottostante una nuova richiesta non dell'intero
blocco, ma a partire soltanto dall'ultimo punto di sincronizzazione.
Protocolli di livello 5:
NetBIOS. Protocollo per lo scambio di informazioni all‟interno di una rete locale:
Nasce al Liv4 ma poi diventa di Liv 5
RTP (Real Time Protocol) utilizzato da VoIP per riordinare i pacchetti voce (over UDP)
Protocollo di Login iniziale di un client ad un server
X-Window. Permette a terminali intelligenti di comunicare con computer UNIX come se fossero
direttamente attaccati. RPC Remote Procedure Call. Consente ad un host client di costruire una richiesta che
verrà poi eseguita su un host server al livello di sicurezza del client.
Livello 4 Trasporto
Tre sono gli scopi del livello Trasporto:
1) Gestione della Connessione Stabilire, mantenere e chiudere una Connessione End-To-End tra due End System,
cioè tra il Clinet ed Server. E' l'ultimo livello che ha visibilità completa dell'intero blocco dati e di entrambi gli End
System. I livelli inferiori si limiteranno a trasferire sulla rete pacchetti privi di un significato logico.
2) Segmentazione dei dati. Al fine di evitare la monopolizzazione del canale da parte di un singolo host, a livello 4 i
dati (es file di grandi dimensioni) vengono suddivisi in Segmenti di dimensione fissa (poco meno di 1500 bytes nel
caso di reti Ethernet). Se i segmenti creati dal livello 4 sono troppo grandi rispetto alle possibilità del Layer
sottostante, si costringeranno i livelli inferiori ad ulteriori frammentazioni con inutile perdita di tempo. Se sono
troppo piccoli si cade in una segmentazione eccessiva, con notevole overhead (header duplicati).
I segmenti creati dal livello 4 vengono poi passati a livello 3 dove, incapsulati all'interno di un‟ulteriore header e tail,
prendono il nome di pacchetti. Il destinatario, alla ricezione di ogni segmento, può inviare / non inviare un segnale di
avvenuta ricezione (ackowledgment). In caso di errore, può chiedere la ritrasmissione dell‟intero segmento.
3) Garantire il Trasporto Affidabile dei vari segmenti tra i due End System. Un servizio affidabile (reliable) è un
servizio che non perde dati ed assicura che tutti i dati verranno consegnati al destinatario in ordine e senza errori.
Ciò richiede l‟utilizzo di appositi algoritmi di controllo del flusso e che il ricevitore invii ackwledgment (conferma)
per ogni pacchetto ricevuto. Si introduce però un overhead che a volte può diventare troppo oneroso. Se si sta
trasferendo un file o un messaggio di posta, occorrono garanzie. Ma in altri casi l‟affidabilità potrebbe anche non
interessare. Nel caso di uno stream video controllare significa perdere tempo. Nel tempo in cui si controlla un byte,
molti altri bytes verrebbero persi. Filmato a scatti perché si perde tempo a controllare. Velocità vs Affidabilità.
Livello 3 Rete
Il livello 3 incapsula i segmenti ricevuti dal livello 4 con i propri header e tail, e li trasforma in Pacchetti.
Scopo del livello 3 è quello di gestire l'instradamento dei Pacchetti attraverso una rete (locale o geografica).
L‟instradamento dei pacchetti viene eseguito mediante appositi dispositivi di rete di livello 3 che sono i router.
Caratteristiche tipiche dei protocolli di livello 3 sono:
Connectionless:Senza connessione, cioè non viene stabilito un percorso fisso fra sorgente e destinatario ma ogni
pacchetto viaggia in modo indipendente dagli altri
Best Effort Il protocollo fa il “massimo sforzo” per garantire la consegna ma non fa controlli e quindi non da garanzie
pag 13
Sistemi - Classe Quinta robertomana.it
RETI
Livello 1 Fisico
Il livello fisico
definisce le caratteristiche meccaniche, elettriche, funzionali di tutti i dispositivi coinvolti nel trasporto
dei dati (materiali, connettori, diametro dei cavi, impedenze, livelli di tensione, velocità, etc)
gestisce la trasmissione fisica dei singoli bit sul mezzo trasmissivo, cioè si occupa di come rappresentare i
dati sul mezzo trasmissivo e come trasmetterli, definendo livelli di tensione adeguati al mezzo. In altre parole
trasforma gli ZERI e UNO logici provenienti dai livelli superiori in segnali elettrici adatti al mezzo.
Più lunga è la tratta di trasmissione, più elevate devono essere le tensioni in gioco.
Per ogni tratta di trasmissione (link) occorre una apposita scheda di rete.
Troubleshooting di Rete
Per ricercare / risolvere problemi di rete, si parte di solito dal basso, cioè dal livello 1, verificando cavi e connettori, e
passando soltanto in seguito a verificare protocolli e dispositivi di livello 2 e poi di livello 3 , 4, etc.
Il modello TCP IP
A differenza del modello ISO OSI, modello teorico proposto fin dagli albori come linea guida per lo sviluppo di
protocolli di rete (Standard de iure), il modello TCP/IP nasce sulla base dei due protocolli fondamentali della rete
Internet, cioè TCP e IP. Il modello TCP/IP è dunque uno standard de facto creato a posteriori. Nelle implementazioni
pratiche ha di fatto soppiantato il modello ISO OSI che rimane comunque un ottimo riferimento teorico.
Breve Storia I protocolli TCP e IP nascono negli USA negli anni 70, negli anni cioè della guerra fredda, nell'ambito
della ricerca militare di una nuova rete non decifrabile, detta ARPANET, genitrice di Internet. Il modello TCP IP è
talvolta indicato anche come modello DOD ARPA dal nome degli enti americani (DOD = Department of Defens e
ARPA = Advanced Research Projects Agency) che ne curarono lo sviluppo e ne pubblicano le RFC.
Le specifiche dei protocolli TCP IP sono espresse mediante RFC (Request for Comment) pubblicate dalla IAF.
pag 14
Sistemi - Classe Quinta robertomana.it
RETI
Application
Trasporto
Rete
Network Interface
Livello Rete
IPv4 (Internet Protocol Version 4) - RFC 719
Detto comunemente protocollo IP, nato nel 1981 rappresenta la base su cui è costruita Internet. Usa indirizzi a 32 bit
(4 bytes) in notazione puntata e contiene tutte le informazioni di instradamento dei pacchetti sulla rete. Ogni host
internet deve disporre di un indirizzo IP univoco. Max 4 mld di combinazioni (meno di 1 per ogni persona della terra)
IPv6
Progettato nato già a metà degli anni 90 per sostituire IPv4, col quale però non è compatibile.
Ad oggi IPv6 è una rete Internet a se stante ancora sperimentale (a cui anche il Vallauri è collegato).
Utilizza indirizzi a 16 bytes (128 bit) visti come 8 campi da due byte ciascuno.
Gli indirizzi IPv6 sono scritti come 8 gruppi di quattro cifre esadecimali ciascuno, separate dai due punti:
37F5 : 4268 : 74A8 : 75A2 : A150 : 7BFC : A5F8 : 00B3
Un indirizzo IPv4 può essere scritto in formato in IPv6 nel modo seguente:
00 : 00 : 00 : 00 : 0X : 0Y : 0Z : 0K
ICMP (Internet Control Message Protocol) Protocollo di Diagnostica cooperante con IP.
Fa parte di ICMP il comando PING, che verifica la raggiungibilità di una certo host.
ARP (Address Resolution Protocol ) Protocollo cooperante con IP. Risolve gli indirizzi IP nel MAC corrispondente
Livello Trasporto
TCP (Transmission Control Protocol) RFC 739
Ha come obiettivo la massima affidabilità di trasmissione. Per ogni pacchetto verifica se è effettivamente arrivato, se
non ci sono degli errori ed in caso contrario provvede alla ritrasmissione. Tutti i pacchetti vengono numerati così che,
anche se arrivano a destinazione in ordine diverso o non arrivano, l'host remoto è sempre in grado di riordinare i dati.
UDP (User Datagram Protocol) RFC 768
Protocollo molto veloce ma poco affidabile. Non c'è garanzia che i pacchetti raggiungano la loro destinazione, non
vengano duplicati o abbiano un ordine di arrivo differente. Datagram è sinonimo di pacchetto.
pag 15
Sistemi - Classe Quinta robertomana.it
RETI
E‟ costituito da un conduttore interno in genere pieno, da uno strato di materiale isolante, da una calza metallica di
schermatura collegata a massa in grado di proteggere i dati trasmessi da disturbi esterni ed anche dalla diafonia, cioè
il disturbo causato dall‟interferenza tra cavi adiacenti. Tutto il cavo è poi rivestito da una guaina isolante esterna
realizzata in gomma teflon o plastica. Il connettore è tipicamente di tipo BNC (British Naval Connector).
I cavi coassiali sono disponibili in moltissime tipologie. Il catalogo Belden, uno dei principali produttori mondiali di
cavi, presenta ad esempio oltre 200 tipologie di cavo coassiale in cui variano essenzialmente i diametri, la tipologia
del conduttore interno (pieno o a fili intrecciati), il materiale isolante ed il rivestimento. Caratteristiche principali:
Il cavo UTP
Le prime reti LAN erano tutte basate su cavo coassiale, ma la difficoltà di cablare una rete coassiale rispetto al
comodissimo cablaggio a stella dei cavi telefoni, portò presto all'idea di sviluppare reti a stella con un cablaggio
simile a quello telefonico, basate su doppino telefonico, cioè essenzialmente una coppia di fili di rame isolati fra loro
Le caratteristiche elettriche del normale doppino telefonico erano però (e sono tutt‟ora) decisamente inferiori rispetto
a quelle del coassiale in termini di:
Maggiore sensibilità ai disturbi (non è schermato)
Banda passante inferiore (velocità inferiore)
Maggiore attenuazione
pag 16
Sistemi - Classe Quinta robertomana.it
RETI
Il primo passo per passare dal coassiale al doppino è stato quello di cercare di migliorare le tecnologie di costruzione
del doppino in modo da ottenere una banda passante più ampia. Agendo sulla qualità del rame, diametro dei conduttori
e soprattutto sul numero di intrecci per metro (minore sensibilità ai disturbi) venne realizzato un doppino intrecciato
denominato UTP UNSHIELDED TWISTED PAIR di costo inferiore al coassiale ma con prestazioni vicine a quelle
del coassiale Venne anche ideato un nuovo connettore RJ45 molto simile al tipico connettore telefonico RJ11, ma con
8 pin invece di 4.
Nota: Gli intrecci del cavo UTP favoriscono una migliore distribuzione delle cariche sul conduttore e quindi sia una
attenuazione inferiore sia una riduzione dell‟effetto dei disturbi sul segnale dati (EMI ElecroMagnetic Interference),
non solo per i disturbi provenienti dall‟esterno ma anche per quelli provenienti dai doppini adiacenti (diafonia)
Essendo facile da installare e costo ridotto, si è cercato nel corso degli anni di migliorarne ulteriormente le
caratteristiche fino ad arrivare a prestazioni sovrapponibili a quelle dei migliori coassiali. Negli anni 90 il cavo UTP
ha in pratica sostituito il coassiale come mezzo trasmissivo delle reti LAN ed è tutt'ora il cavo più utilizzato.
Attualmente sono disponibili diverse categorie di cavi UTP costituite comunque sempre da quattro coppie di doppini
intrecciati (di cui nelle LAN se ne usano generalmente soltanto 2 coppie, una per la trasmissione ed una per la
ricezione). Quello che varia tra le diverse categorie è essenzialmente il numero di intrecci per metro di cavo;
aumentando il numero degli intrecci si riescono a realizzare velocità di trasmissione sempre più elevate.
La massima distanza raggiungibile dipende dalla velocità utilizzata.
Le categorie dei cavi UTP, definite nello standard americano TIA/EIA 568/A, relativo ai cablaggi di edifici
commerciali di tipo Office Oriented, sono le seguenti:
pag 17
Sistemi - Classe Quinta robertomana.it
RETI
Shield = Scudo
Il connettore RJ45
I cavi UTP sono terminati su ogni lato con un connettore maschio (plug) detto RJ45 (Registered Jack o Regular
Jack). Sulla NIC e sull'apparato di rete (o presa a muro) dovrà essere montato un connettore RJ 45 femmina.
Gli otto fili sono organizzati a coppie di cui soltanto le coppie Verde e Arancione sono normalmente utilizzate.
PAIR1 BLU
PAIR2 ARANCIONE (Rx)
PAIR3 VERDE (Tx)
PAIR4 MARRONE
La posizione dei cavi all'interno del plug è mostrata in figura, in cui si sta guardando frontalmente il connettore dal
lato opposto rispetto alla linguetta di fermo, e con il cavo discendente verso il basso.
Sono possibili due configurazioni, che scambiano tra loro la coppia Verde con quella Arancione.
Arancione
Verde Verde
Verde
Arancione
pag 18
Sistemi - Classe Quinta robertomana.it
RETI
Cavo Crociato
Pin# Pair# Function Wire Color
1 3 Transmit+ White/Green
2 6 Transmit- Green
3 1 Receive+ White/Orange
4 4 Not used Blue
5 5 Not used White/Blue
6 2 Receive- Orange
7 7 Not used White/Brown
8 8 Not used Brown
Il sistema di intestazione dei cavi è molto semplice: si spelano i fili per una lunghezza di 1,5 cm, quindi si inseriscono
i fili all'interno del plug ed il plug all'interno di una apposita pinza. Si preme con forza fino a sentire un lieve scatto
La fibra ottica
Trasmette Luce anziché segnali elettrici, dunque:
Velocità molto maggiori rispetto a qualunque cavo in rame
Assolutamente insensibile al problema dell'interferenza elettrica
Costi ancora superiori rispetto alle tecniche precedenti sia per quanto concerne la fibra ottica in sé (circa
8 € / m) sia soprattutto per i dispositivi opto elettronici di adattamento.
pag 19
Sistemi - Classe Quinta robertomana.it
RETI
Una fibra ottica consiste di un cilindro di vetro estremamente sottile detto nucleo ricoperto da uno strato concentrico
sempre di vetro ma con un indice di rifrazione minore, in modo che la luce si propaghi per riflessione all'interno del
nucleo. Le fibre ottiche in materiale plastico sono più flessibili e più facili da maneggiare rispetto a quelle in vetro, le
quli però presentano caratteristiche di trasmissione migliori.
Wireless
Le LAN di tipo wireless o WLAN (Wireless Local Area Network) usano, per far comunicare i dispositivi tra loro,
segnali radio ad alta frequenza o raggi di luce infrarossa, anziché utilizzare i tradizionali cavi per i collegamenti. Ogni
computer, ovviamente, deve avere un dispositivo che permette di spedire e ricevere i dati. Le reti wireless sono molto
utili negli edifici dove può essere difficoltoso effettuare il cablaggio o crearlo in brevissimo tempo. Caratteristiche:
Non hanno cablaggio
Elevata sensibilità ai disturbi
Onde Radio non proprio salutari (frequenze superiori a 1.8 GHz del GSM)
Le wireless LAN utilizzano un sistema a microcelle, simile al sistema cellulare telefonico. Ogni microcella ha
dimensione limitata e un preciso raggio d'azione, ed è controllata da un Access Point (AP), la cui funzione principale
è quella di coordinare le comunicazioni tra le varie stazioni wireless. Gli AP, a loro volta, sono collegati ad una
dorsale (backbone), di solito un segmento della LAN aziendale. A livello fisico si opera su una banda di frequenza
che va da 2,4 GHz a 2.483 GHz, utilizzando modalità di trasmissione basate sulla tecnologia Spread Spectrum (a
banda larga). A livello di configurazione una WLAN offre tutti i vantaggi di una LAN tradizionale, senza i limiti
tecnologici di una rete wired. Un Access Point wireless costa ormai soli 15 €.
Un modem router ADSL con Access Point costa 50 €.
pag 20
Sistemi - Classe Quinta robertomana.it
RETI
Codifiche di Linea
I segnali digitali utilizzati da un computer sono normalmente segnali TTL 0 – 5 Volt di tipo NRZ, (Not Retutn Zero),
cioè senza ritorno a zero, il cui un eventuale bit di valore uno rimane a 1 per l'intero tempo di bit. Questa codifica
purtroppo non è molto adatta per pilotare in Banda Base (senza modulazione) un qualunque mezzo trasmissivo.
I problemi di base sono due:
1) L'inevitabile presenza di una componente continua legata al valor medio del segnale. La componente continua
viene spesso bloccata da molti dispositivi di rete come condensatori o trasformatori.
2) Estrema difficoltà da parte del ricevitore a mantenere il sincronismo sul clock, soprattutto in presenza di lunghe
sequenze di zeri o lunghe sequenze di uno, col forte rischio di perdere qualche bit.
Questi motivi hanno portato ad utilizzare, nelle trasmissioni in banda base, delle codifiche diverse rispetto alla NRZ,
cioè le cosiddette codifiche di linea o codifiche RZ che sono codifiche in cui:
la componente continua è nulla, grazie all‟utilizzo di valori di tensione bipolai (es +5 V e -5V).
il valore del bit ritorna a zero a metà del tempo di bit rimanendo a zero in tutta la seconda metà
1 0 0 0 1 1 0
NRZ
RZ tradizionale
1 0 0 0 1 1 0
Manchester
AMI
pag 21
Sistemi - Classe Quinta robertomana.it
RETI
Lo scopo di questa suddivisione è stato, fin da subito, quello di garantire una compatibilità verso l‟alto, cioè fare in
modo che le varie topologie di rete, seppur completamente diverse tra loro, presentassero tutte la stessa interfaccia
verso il livello 3. Ciascuna delle sezioni precedenti è poi a sua volta suddivisa in una lunga serie di revisioni
successive riferite sempre allo stesso tipo di rete, , ma con mezzi trasmissivi diversi e velocità via via crescenti..
Sono stati negli emessi diverse versioni successive dello standard 802.3, che mantengono sempre inalterate le
specifiche di livello 2 (intestazioni MAC e protocollo CSMA / CD), ma utilizzano supporti fisici diversi e anche
topologie di rete diverse. I vari standard sono stati denominati rispettivamente:
Ethernet
10Base5 802.3 10 Mbps su cavo coassiale thicknet (spesso) per una lunghezza max di 500 metri
10Base2 802.3.A 10 Mbps su cavo coassiale thinnet (sottile) per una lunghezza max di 200 metri
10BaseT 802.3.I 10 Mbps su cavo UTP cat 3 per una lunghezza max di 100 metri - 1990
10BaseF 802.3.J 10 Mbps su fibra ottica multimodale con segmento max di 500 metri
Fast Ethernet
100BaseTX 100 Mbps su cavo UTP cat 5 - max 100 metri Fast Ethernet 1995
100BaseT4 100 Mbps su cavo UTP cat 3 utilizzando tutte 4 le coppie di fili
100BaseFX 100 Mbps su fibra ottica multimodale con segmento max di 500 metri
GigaBit Ethernet
1000BaseSX 1 Gbps su fibra ottica multimodale max 500 m 1998
1000BaseLX 1 Gbps su fibra ottica monomodale max 2 Km
1000BaseCX 1 Gbps cavo STP 150 Ohm max 25 metri
1000BaseT 1 Gbps su cavo UTP di categoria 5e o 6 utilizzando le 4 coppie
Prima rete Ethernet 10 Mbps strutturata a bus con cavo thicknet, cioè un cavo coassiale “spesso”
avente uno spessore complessivo di circa 1/2 di pollice (12,70 mm) e impedenza 50 ohm, indicato con la sigla
RG213. Questo cavo veniva utilizzato in uno spezzone unico di lunghezza max 500 metri terminato su entrambi i
lati con una resistenza da 50 Ohm in modo da evitare che il segnale subisse riflessioni. Il cavo thicknet è
estremamente rigido ed ingombrante presentava comunque una notevole schermatura ai disturbi che lo rendevano
particolarmente idoneo anche a cablaggi in ambito industriale. Per contro, essendo rigido, risultava difficilmente
sagomabile.
Il collegamento di un nodo alla dorsale principale non viene eseguito in maniera diretta (come per il thinnet), ma
mediante una cassetta di derivazione detta transceiver che funge da trasmettitore / ricevitore. Da questa cassetta viene
derivato un “drop cable” tramite un connettore detto “vampire tap” per la sua capacità di penetrare lo strato isolante
del cavo thicknet e collegarsi direttamente al cavo interno. Il drop cable, di lunghezza massima 50 metri, viene poi
collegato alla schede di rete mediante un connettore denominato DB-15 che assomiglia vagamente al connettore della
porta parallela. La scheda di rete implementava fin da subito i protocolli di livello 2 MAC e LLC.
Il massimo numero di transceiver collegabili sulla dorsale principale è 100 (ben al di sotto del limite di 1024 imposto
dal CSMA / CD), posti ad una distanza minima di 2,5 metri uno dall'altro, in modo da non alterare l'impedenza del
cavo. Due dorsali, di lunghezza max 500 metri ciascuna, possono essere collegate insieme tramite apposito ripetitore.
Una rete può contenere al max 5 spezzoni di cavo e 4 repeater.
pag 23
Sistemi - Classe Quinta robertomana.it
RETI
Utilizza come mezzo trasmissivo il cosiddetto cavo thinnet che è un cavo coassiale “sottile”
denominato RG58 con uno spessore complessivo di circa 1/4 di pollice (6,35 mm), dunque molto più flessibile del
precedente e di più facile installazione. Velocità sempre 10 Mbps lunghezza della dorsale max 200 metri. La
tipologia della rete è sempre a bus ma a differenza del caso precedente non si ha un unico tratto di coassiale ma la
rete è costituita dalla concatenazione di più spezzoni successivi. Il punto di giunzione tra due spezzoni coincide con il
punto in cui la scheda di rete di un computer viene connessa al bus mediante un connettore BNC (British Naval
Connector) fatto a T che consente appunto il proseguimento della rete su uno spezzone successivo. Esistono anche
connettori cilindrici che consentono di collegare direttamente tra loro due connettori BNC senza alcuna derivazione.
Non è più necessaria alcuna scatola di derivazione, ma le funzioni di transceiver sono integrate direttamente
all'interno della scheda di rete dei vari nodi. Alle estremità del bus devono sempre essere presenti le due impedenze
di terminazione di 50 ohm ciascuna (realizzate in questo caso mediante particolari connettori BNC).
Il cablaggio di una rete thinnet è dunque estremamente più semplice ed economico rispetto al precedente. Una
sottorete thinnet può facilmente essere integrata ad una dorsale thicknet mediante cavi terminati su un lato mediante
connettore BNC e sull‟altro lato mediante connettore della serie N compatibile con la scatola di derivazione thicknet.
Il numero max di nodi è di 30 per ogni segmento, intervallati da una distanza minima di 0,5 metri. La rete può essere
ulteriormente allungata mediante appositi ripetitori. Come nel caso precedente, una rete può contenere al max 5
spezzoni di cavo e dunque 4 repeater.
L‟inconveniente maggiore del cablaggio su coassiale thinnet è quello di una certa vulnerabilità unita alla difficoltà di
localizzazione di un guasto, che molto spesso non è immediata. Un cattivo contatto in prossimità dei connettori,
dovuto ad es ad uno strappo provocato involontariamente oppure ad un connettore BNC non intestato correttamente
poteva portare a malfunzionamenti intermittenti difficili da localizzare ma in grado di bloccare l'intero sistema.
pag 24
Sistemi - Classe Quinta robertomana.it
RETI
pag 25
Sistemi - Classe Quinta robertomana.it
RETI
Hub
Hub (concentratore) in inglese rappresenta il centro da un punto di vista geografico e fisico; il fulcro di un oggetto.
Scopo dell‟hub è quello di consentire un cablaggio FISCO a stella su una rete con STRUTTURA LGICA
a bus. In pratica l‟hub funge da BUS concentrando su di esso tutte le funzionalità del bus fisico.
Da un punto di vista OPERATIVO, l‟hub è semplicemente un repeater multiporta che non analizza il
significato dei bit che lo attraversano, ma semplicemente li ritrasmette rigenerandoli e duplicandoli su
tutte le altre porte, esclusa quella da cui proviene il segnale stesso.
La duplicazione avviene in maniera CROSSED (incrociata) nel senso che il segnale inviato sulla linea Tx di un canale
viene riportato sulla linea Rx degli altri. Il collegamento PC - Hub deve essere eseguito mediante un cavo dritto
pag 26
Sistemi - Classe Quinta robertomana.it
RETI
Gli hub PASSIVI non sono alimentati e si limitano a rimandare il segnale senza rigenerarlo. Ormai in disuso.
Tipicamente un hub è di tipo ATTIVO, alimentato 24 Vdc, in modo tale da poter rigenerare il segnale prima di
inviarlo sulle porte di uscita.
I cosiddetti hub INTELLIGENTI (smart hub) invece, oltre a rigenerare il segnale, includono anche un
microprocessore che consente di realizzare funzionalità di diagnostica. Essi monitorizzano le collisioni su ogni
segmento connesso e se queste superano una certa soglia provvedono a disabilitare la porta (funzione di
partitioning). Inoltre se vedono una collisione su un segmento di cavo, la rilevano inviando una sequenza di Jam su
tutte le porte di output connesse.
Hub Attive e Intelligenti consentono in genere un controllo centralizzato del traffico sulla rete, mediante appositi led
luminosi che permettono di diagnosticare se ogni singolo ramo della rete è funzionante.
Dual Speed Hub, in cui tutte le porte sono in grado di operare indifferentemente a 10 Mbps / 100 Mbps e di
adattarsi automaticamente in base ai segnali d'ingresso.
Tutte le porte sono Half Duplex
I led di stato relativi alle porte scollegate (o collegate a dispositivi spenti) sono spenti. I led di stato relativi
alle porte collegate sono accesi di colore giallo (10 Mbps) o verde (100 Mbps).
Il led lampeggiante segnala il partizionamento della porta, cioè la sua disabilitazione a seguito
probabilmente ad un network loop.
Il Collision Led (giallo) lampeggia ogni volta che l'hub intercetta una collisione.
I Network Utilization Leds indicano la percentuale di utilizzo della rete (da un 1% ad un 80 %)
Il led di Alert (arancione) si accende per un breve periodo in corrispondenza dell'accensione, dopo di che
dovrebbe essere normalmente spenta. La sua accensione indica la presenza di problemi (tipicamente un
sovrautilizzo della rete oltre l'80% oppure semplicemente il partizionamento (disabilitazione) di una porta in
seguito ad un loop di rete (in tal caso il led di stato della porta dovrà essere lampeggiante)
pag 27
Sistemi - Classe Quinta robertomana.it
RETI
La scheda di rete copre sia il livello 1 che il livello 2 della pila ISO OSI. Quando un dispositivo / componente di rete
copre più livelli, viene automaticamente classificato al livello più alto fra quelli ricoperti. La scheda di rete:
Viene però classificata al livello 2 del modello ISO OSI in quanto:
E‟ depositaria dell'indirizzo MAC
Esegue l'algoritmo CSMA / CD di accesso al mezzo fisico
Esegue il protocollo MAC creando il frame da trasmettere sul mezzo
Esegue il protocollo LLC di interfacciamento con il livello 3.
La NIC è normalmente dotata di un microprocessore di controllo, una Eprom (che tra le altre cose consente il boot
da remoto) e un connettore RJ45. Essa comunica con il PC mediante una connessione parallela sul bus, mentre
comunica con la rete attraverso una comunicazione seriale Half Duplex, con segnali codificati in Manchester.
Ogni scheda necessita di un numero di IRQ e di un indirizzo di IO a cui rispondere, cioè locazione di memoria sulla
quale vengono letti / inviati i dati che entrano ed escono dal PC attraverso la scheda stessa.
Nell'acquisto di una scheda di rete occorre considerare alcuni elementi quali ad esempio:
Tipo di Rete : Esistono schede Ethernet, Token Ring, FDDI
Tipo di mezzo trasmissivo: Cavo coassiale, UTP, Fibra Ottica, Wireless
Tipo di slot del PC , cioè se il sistema utilizza bus interno ISA, PCI o PCI Express
Quando alla scheda di rete arriva un frame, la scheda va a leggere l‟indirizzo MAC di destinazione del frame. Se
l‟indirizzo MAC di destinazione del frame coincide con il suo indirizzo MAC, allora la scheda provvede a leggere
l‟intero frame bufferizzandolo nella propria cache e poi generando un interrupt alla CPU per avvisare il livello 3
sull‟arrivo del frame. In caso contrario il frame non viene letto.
Note:
Dalla finestra “Connessione alla rete locale LAN” è possibile con un tasto destro sulla scheda di rete
abilitare / disabilitare la scheda stessa. Status mostra gli indirizzi IP con cui la scheda è entrata in
comunicazione.
Anche le stampanti dispongono oggi di una propria scheda di rete (stampante connesse direttamente alla rete
invece che al server). In tal caso anche la stampante dovrà avere un suo indirizzo IP.
Col nome PCMCIA si intende una speciale scheda di rete inizialmente utilizzata nei notebook per contenere lo
spazio. Oggi anche i notebook montano normali schede di rete.
pag 28
Sistemi - Classe Quinta robertomana.it
RETI
CSMA / CD
Compito primo della scheda di rete è quello di occuparsi della trasmissione dei frame sul mezzo trasmissivo.
La rete Ethernet utilizza come algoritmo di trasmissione il noto algoritmo CSMA / CD Carrier Sense Multiple
Access / Collision Detection strutturato nel modo seguente:
Quando un host ha dei dati da trasmettere, ascolta se il canale è libero (CARRIER SENSE). Se è libero,
inizia immediatamente la trasmissione, altrimenti rimane in ascolto attendendo che il canale si liberi.
Appena sente il canale libero immediatamente inizia la trasmissione. Può però accadere che un altro host,
vedendo anch‟esso il canale libero, inizi contemporaneamente a trasmettere (MULTIPLE ACCESS).
Per un certo tempo di latenza 2T, ovvero 2 volte il tempo di propagazione del segnale sull'intera lunghezza
del bus, l'host rimane in ascolto del canale per individuare eventuali collisioni. (COLLISION
DETECTION gestione delle collisioni). 2T è detto anche Contention Time o Round Trip Time e rappresenta
il tempo che un trasmettitore deve attendere per essere sicuro di aver acquisito il pieno controllo del canale. Il
caso peggiore si verifica infatti quando i due PC sono agli estremi opposti della linea ed il secondo PC inizia
a trasmettere un istante prima che gli giunga il segnale proveniente dal primo PC. Facendo in modo che il
primo PC attenda per un tempo pari almeno a 2T, si ha la certezza che la collisione verrà rilevata.
Questo tempo di latenza dipende dalla lunghezza del canale e dai parametri del mezzo trasmissivo. Ad
esempio nel caso di cavo coassiale lungo 500 metri in cui si utilizza una portante a 200 Mhz, si ha un
tempo di latenza pari a 2 x 500 / 200 106 = 5 usec. Modulando il segnale a 10 Mbit / sec, nel tempo
di 5 usec si trasmetteranno 50 bit. Il valore normalmente utilizzato è 512 bit, a cui corrisponde il tipico
tempo di latenza delle reti Ethernet 10BaseT pari a 51,2 usec.
Se al termine del tempo di latenza l'host non ha rilevato nessuna collisione, allora significa che si è
impossessato del canale, quindi cessa di ascoltare il bus e completa la trasmissione di tutti i dati.
Se invece durante il tempo di latenza l'host sente sul canale qualcosa di diverso da ciò che sta trasmettendo
(con valutazioni di tipo energetico sulla corrente di linea), significa che si è verificata una collisione e dunque
interrompe immediatamente l‟invio dei propri dati, trasmettendo una breve sequenza di jamming (dove
jamming significa ingorgo) per segnalare la collisione a tutti gli host della rete (lunga inizialmente 32 bit e
poi portata a 48 bit nello standard IEEE 802.3)
Terminata la sequenza di jamming, l'host attende un tempo casuale dopo di che ripete da capo tutto il
processo rimettendosi in ascolto del bus. Il tempo casuale di attesa viene generato mediante un algoritmo
detto backoff binario esponenziale dove il termine backoff rappresenta appunto il tempo di attesa prima della
ritrasmissione, mentre binario esponenziale significa che il range di generazione del tempo casuale di attesa
cresce dopo ogni tentativo. In questo modo, in caso di collisione la stazione provvede rapidamente a tentare
una ritrasmissione, mentre in caso di collisioni ripetute l'intervallo di attesa continuerà ad espandersi.
Dopo ogni attesa viene incrementato un contatore dei tentativi. Dopo 16 tentativi falliti, il protocollo rinuncia
e segnala il problema ai livelli superiori.
Un possibile miglioramento consiste nel CSMA / CD non persistente in cui ogni host, se trova il canale
occupato, non continua a monitorarlo per trasmettere immediatamente quando si libera, ma aspetta un tempo
casuale. Infatti è presumibile che altri nodi si trovino nelle stesse condizioni e, non appena il canale risulta
libero, inizino tutti a trasmettere contemporaneamente. La versione non persistente minimizza le collisioni
ma aumenta il tempo di accesso.
Un'altra variante simile consiste nel cosiddetto CSMA / CA (Collision Avoidance, prevenzione della
collisione in contrapposizione all‟algoritmo base che invece gestisce le collisioni a posteriori) in cui la
stazione che vuole trasmettere rimane in ascolto del canale occupato, ma quando questo ritorna libero, prima
di iniziare la trasmissione, aspetta un breve tempo casuale verificando che nel frattempo nessuna altra
stazione abbia iniziato la trasmissione.
Il termine Inter Packet Gap (9.6 msec nella rete 10BaseT) indica il tempo di attesa tra la trasmissione di un
pacchetto ed il successivo. In questo modo chi trasmette concede anche agli altri la possibilità di utilizzare il
canale evitando il monopolio del canale e consentendo così anche al ricevitore di elaborare i dati ricevuti.
pag 29
Sistemi - Classe Quinta robertomana.it
RETI
Il protocollo CSMA / CD, inizialmente criticato perché non gestisce una priorità degli accessi, presenta però tempi di
accesso al canale il più rapidi possibile, ed è stato uno dei motivi principali del successo di Ethernet, insieme a:
economicità dei dispositivi
facilità di installazione.
L‟esperienza ha poi dimostrato che le collisioni non sono così frequenti, almeno per un numero limitato di nodi.
E' statisticamente verificato che in una rete carico medio, il 50 % dei pacchetti trova inizialmente il canale occupato,
attende che si liberi, e quindi viene trasmesso con successo. Il 3 % dei pacchetti ha una unica collisione iniziale,
dopo di che viene trasmesso con successo, mentre un solo pacchetto su 10000 richiede due tentativi di trasmissione.
Dominio di Collisione
Porzione di rete in cui tutti i nodi possono sperimentare la reciproca collisione, cioè insieme degli host in grado
di “sentire” una collisione (che viene propagata dall‟hub ma non dallo switch).
Un‟altra definizione talvolta utilizzata è la seguente:: Insieme degli host che ricevono in modo DIRETTO (cioè
solo per propagazione fisica) un messaggio unicast.
PAYLOAD
FCS “Frame Check Sequence” [4 bytes]
4 bytes di controllo dell‟errore basati su tecnica CRC (Cyclic Redundancy Code), che consentono al ricevitore di
rilevare eventuali errori causati da disturbi elettrici. Prima di trasmettere i dati, il sorgente divide matematicamente
(con divisione eseguita via software oppure via hardware mediante porte XOR e Shift Register) la sequenza binaria
da trasmettere per un ben preciso polinomio generatore a 32 bit. Il resto di questa divisione sarà un numero ancora a
32 bit che viene accodato al PDU. Il ricevitore esegue la stessa divisione per lo stesso polinomio generatore.
Se il resto coincide con il CRC accodato al msg => Trasmissione OK, altrimenti significa che c'è stato un errore.
Il protocollo MAC si limita a scartare i frame con CRC errato, senza eseguire altre procedure (Best Effort).
pag 30
Sistemi - Classe Quinta robertomana.it
RETI
Nota Utilizzando CRC, la probabilità che si verifichi un errore non rilevato in ricezione (errore che dovrebbe
aggiungere / sottrarre un multiplo esatto del polinomio generatore) è molto bassa. I polinomi generatori sono
calcolati ad hoc per ridurre al minimo questo rischio. Può invece accadere che si verifichi un errore sul 4 byte di
CRC. In questo caso viene scartato (cioè non consegnato ai livelli superiori) un frame valido. I livelli superiori, allo
scadere di un certo timeout verificheranno la mancanza del pacchetto e ne chiederanno la ritrasmissione.
Il sottolivello LLC
Il livello 2, una volta ricevuti i dati, deve decidere a quale protocollo di livello superiore consegnarli. Anziché far
eseguire questa operazione al protocollo MAC, si è preferito suddividere il livello 2 di Ethernet in due sottolivelli
Il protocollo LLC Logical Link Control a livello superiore (derivato da HDLC)
Il protocollo MAC Medium Access Control a livello inferiore
mantenendo cioè gli algoritmi di comunicazione con il livello 3 separati rispetto a quelli più strettamente dipendenti
dalla trasmissione fisica vera e propria (indirizzi MAC, strategia di accesso al mezzo, etc.).
In pratica i dati provenienti dal livello 3 vengono prima intercettati dal protocollo LLC che aggiunge le
proprie intestazioni costruendo un primo PDU che verrà quindi “passato” al sottostante livello MAC che a sua
volta aggiungerà, all'esterno, le proprie intestazioni, ed infine verrà “passato” a CSMA/CD per la trasmissione
Attenzione che non è solo questione di aggiungere una piccola intestazione al frame. LLC in base
all‟informazione sul protocollo di livello 3 da contattare, provvede ad eseguire tutti gli algoritmi necessari a
gestire questo interfacciamento.
SSAP (Source Service Access Point) codice del protocollo di livello 3 da cui i dati provengono
DSAP (Destination Service Access Point) codice del protocollo di livello 3 a cui i dati sono destinati
DSAP e SSAP normalmente sono uguali, ma possono anche essere diversi.
All'interno dei campi DSAP e SSAP due bit sono usati a scopi speciali (Individual / Group e Unversal / Non
Universal), per cui rimangono disponibili soltanto 6 bit per un max di 64 protocolli standard, riconosciuti da ISO
Control E' identico all'omonimo campo di HDLC e può assumere tre formati relativi a tre tipi diversi di LLC PDU:
Classe 1 = Unacknowledged Connectionless Service (default), cioè senza ACK (Best Effort)
Classe 2 = Acknowledged Connection Oriented Service (con ACK)
Classe 3 = Semireliable Service cioè Connectionless con ACK
Il campo Control in pratica permette ad LLC di funzionare sia come protocollo non connesso, sia come
protocollo connesso. Nei casi 2 e 3 il campo Control è grande 2 bytes. Ethernet utilizza il tipo 1 in cui:
La sorgente invia direttamente i dati al destinatario senza stabilire a priori nessuna forma di connessione
Il destinatario non invia nessun tipo di acknowledge
Se il messaggio arriva corrotto viene scartato e non viene fatto nessun tentativo di Error Recovery
Nota: Siccome si è voluto dare ad LLC la possibilità di supportare anche protocolli proprietari non riconosciuti
dall'ISO, è stato aggiunto un campo SNAP (Sub Network Access Protocol) secondo il quale, se i due campi DSAP e
SSAP hanno entrambi il valore 0xAA, allora vengono aggiunti davanti al campo Control altri 5 + 5 bytes di cui i
primi 3 identificano l'organizzazione che ha proposto il protocollo, gli ultimi 2 identificano il protocollo all'interno
dell'organizzazione. Questa seconda soluzione contempla anche i 64 protocolli fondamentali del caso precedente. In
realtà LLC è quasi sempre utilizzato in questa seconda versione, dove come codici di protocollo si continuano ad
utilizzare i vecchi codici a 2 bytes proposti da Xerox prima della standardizzazione IEEE 802.2.
Esempi: 0800 = Ipv4 0806 = ARP 880B = PPP 86DD = IPv6
pag 31
Sistemi - Classe Quinta robertomana.it
RETI
Bridge
Dispositivo intelligente nel senso che non si limita a inoltrare i frames su tutte le porte, ma li fa risalire fino al livello
2, provvedendo ad “aprirli” e a leggere le relative intestazioni MAC (MAC source e MAC dest).
Il Bridge è dotato di un microprocessore interno e di una memoria RAM in cui provvede a bufferizzare tutti i frames
in transito, frames che vengono poi analizzati e, sulla base dell'indirizzo MAC del destinatario, vengono inoltrati
soltanto sul segmento su cui si trova il destinatario, realizzando di fatto una segmentazione della rete locale.
Fig 1
Il Bridge dispone di un numero limitato di porte (due o quattro) su ciascuna delle quali si collega normalmente un
hub che funge da concentratore per quel segmento di rete.
Fig 2
Gli host di un Segmento possono comunicare tra loro mentre, in parallelo, gli host di un altro segmento possono
anch‟essi comunicare fra loro.
Switch (commutatore)
Lo Switch è un Bridge multiporta che però esegue le commutazioni direttamente via hardware per cui può
operare a velocità decisamente maggiori e di conseguenza può gestire un numero molto più elevato di porte,
che possono essere anche 32 o 64 o anche 128
pag 32
Sistemi - Classe Quinta robertomana.it
RETI
La CAM Table viene costruita dinamicamente sulla base degli indirizzi MAC Sorgente. Per ogni frame in
transito, il Bridge analizza il MAC Source e, se questo non è ancora contenuto all‟interno della CAM Table,
provvede ad aggiungere un nuovo record relativo a quell‟indirizzo MAC con a fianco la relativa porta di provenienza.
(fase di learning).
Prima ancora del MAC Source, il Bridge provvede ad analizzare l'indirizzo MAC del destinatario.
Possono verificarsi tre casi:
a) se l'indirizzo di destinazione è presente nella CAM Table di un segmento diverso da quello di provenienza, il
frame viene inoltrato sul segmento corrisponde. (fase di forwarding)
b) se l'indirizzo di destinazione è presente nella CAM Table del segmento di provenienza del frame,
semplicemente il frame viene scartato (significa che il destinatario si trova sullo stesso segmento del sorgente e
dunque nel frattempo sarà già stato raggiunto dal frame).
c) se l'indirizzo non è presente nella CAM Table (perchè l'host non esiste o non ha mai trasmesso, oppure perché
il Bridge è stato appena riavviato), oppure se si tratta di un indirizzo di broadcast, allora il Bridge inoltra il
frame su tutte le porte su cui c‟è qualcosa elettricamente collegato, con eccezione della porta su cui è stato
ricevuto il frame (fase di flooding, cioè allagamento). Notare che se il MAC DEST non è presente nella CAM
Table, il frame viene inviato a tutti (broadcast) ma l‟indirizzo MAC DEST continua rimanere un indirizzo
unicast.
Dopo un certo timeout di inattività, un nodo viene automaticamente rimosso dalle CAM Table (fase di aging).
A B C D
Fig 3
Le reti segmentate mediante uno switch si indicano in gergo come reti “switchate”.
Metodi di switch
Gli Switch possono operare in due diverse modalità :
Cut-through (supportato solo dagli Switch e non dai Bridge). Lo Switch provvede ad inoltrare il frame prima
ancora che sia stato completamente ricevuto, subito dopo aver letto il MAC DEST e senza eseguire alcuna
bufferizzazione. Tempo di latenza molto breve ma può essere applicato solo se Tx e Rx operano alla stessa veloc
Store and Forward (modalità Bridge-Like). Lo Switch salva l'intero frame in un buffer fino al ricevimento del
CRC che viene ricalcolato in modo da scartare eventuali frame non validi.
pag 33
Sistemi - Classe Quinta robertomana.it
RETI
pag 34
Sistemi - Classe Quinta robertomana.it
RETI
A S1
S2
S3
B
Supponendo che A debba trasmettere un pacchetto a B e che gli switch intermedi non conoscano la posizione di B,
il messaggio viene inviato da A ad S1 che lo inoltra a S2 e S3 i quali si scambiano il messaggio e poi, entrambi,
provvedono di nuovo a inoltrarlo verso S1.
In questo modo il messaggio cicla all‟infinito all‟interno dell‟anello e B riceverebbe infinite volte lo stesso
messaggio. Questa situazione non si verificherebbe se S2 avesse già B mappato all'interno della propria CAM
Table, ma in ogni caso B riceverebbe due volte il messaggio.
Per ovviare a questi problemi occorre assolutamente evitare che esistano percorsi alternativi fra i nodi. Questo però
non sempre è possibile e nelle reti più complesse il secondo percorso potrebbe crearsi anche incidentalmente.
Inoltre, talvolta, il percorso alternativo viene costruito di proposito in modo da garantire la massima sicurezza di
connessione. Quando si rompe uno switch subentra l'altro.
La vera soluzione a questo problema è l‟implementazione da parte degli switch di un algoritmo Spanning Tree.
(realizzato per la prima volta da Digital Equipment). Si definisce Spanning Tree (albero ricoprente) un albero in
grado di ricoprire tutti i nodi di un grafo. Nel caso in cui i link del grafo abbiano ciascuno un loro peso, si definisce
Minimum Spanning Tree quello che minimizza il peso complessivo dei link utilizzati per ricoprire il grafo.
Nella teoria dei grafi esistono diversi algoritmi per il calcolo del Minimum Spanning Tree, fra cui uno dei più noti è
l‟Algoritmo di Prim che consente di calcolare il Minimum Spanning Tree di un grafo a partire da un nodo generico.
Lo Spanning Tree Protocol (STP livello 2 ISO OSI) è stato standardizzato da IEEE (802.1d) ed è oggi utilizzato da
tutti gli switch di fascia più alta in grado di realizzare le disabilitazione automatica di eventuali percorsi multipli.
Funzionamento: Su ogni switch della rete occorre 1) abilitare il protocollo Spanning Tree 2) assegnare un valore di
Bridge Priority 3) Assegnare un peso ad ogni porta, tanto minore quanto più si reputa importante (e veloce) quel
collegamento. All‟accensione ogni switch assume se stesso come master e inizia ad inviare in rete dei frames detti
BPDU (Bridge PDU) contenenti il proprio valore di Bridge Priority. Lo switch con Bridge Priority inferiore
(generalmente lo switch root dell‟intera rete) diventa il vero Root Bridge (master) della rete e gli altri cessano di
inviare le BPDU. Il master continua perennemente ad inviare le BPDU ogni 2 sec. Ogni switch non master blocca
tutte le trunking port in uscita (quelle collegate ad altri switch) e, a intervalli casuali, prova a riabilitare quella a costo
minore da cui ritrasmette le BPDU. Prima di ritrasmettere la BPDU, aggiunge al campo “Root Path Cost” il costo
della porta da cui ritrasmette. Se lo switch riceve le BPDU su più di una porta significa che esiste un loop per cui
provvede automaticamente a bloccare la porta con costo superiore (l‟ultima attivata). Una volta a regime (forwarding
state), nel caso in cui le BPDU non dovessero più arrivare significa che si è interrotto un collegamento per cui tutti
gli switch passano in un blocked state bloccando in uscita tutte le trunked port e ripetendo l‟algoritmo dall‟inizio.
Switch Transazionali Esistono anche switch di fascia più alta in grado di interconnettere anche segmenti di reti di
topologia differente (Ethernet, Token Ring, FDDI), funzione tipicamente svolta dai router.
Stackability Molti Switch sono stackable, nel senso che, oltre ai normali collegamenti di uplink, mediante un
apposito cavo possono essere collegati insieme come se fossero un unico switch.
pag 35
Sistemi - Classe Quinta robertomana.it
RETI
Accesso Point
L‟Access Point svolge principalmente due funzioni:
1) funge da bridge tra rete wireless e rete cablate
2) funge da Centralizzatore e ARBITRO delle comunicazioni wireless.
cioè, tutte le comunicazioni, anche quelle tra nodi vicini, passano sempre attraverso l‟AP
Inoltre, poiché tutte le comunicazioni passano sempre attraverso l‟AP, esso rappresenta il punto ideale per eseguir un
controllo degli accessi alla rete, accettando soltanto richieste provenienti da client autorizzati.
pag 36
Sistemi - Classe Quinta robertomana.it
RETI
Identificativo di rete SSID (Service Set Identifier). Ogni rete WiFi è caratterizzata da un nome di rete detto SSID di
lungh max pari a 32 chr (impostato col nome del costruttore). E‟ il nome con cui i client “vedranno” la rete wireless.
Quando un client WiFi intende connettersi ad una WLAN, avvia una fase di ascolto (scanning) per vedere se esiste
un AP a cui associarsi. In tal caso, se il SSID è trasmesso in broadcast e non sono richieste autenticazioni, l‟host
può connettersi automaticamente. Se il SSID non è trasmesso in broadcast, la scheda WiFi può connettersi all‟AP
solo se conosce il SSID. Se è richiesta una autenticazione deve conoscere anche la password di autenticazione.
Potenza : 20 dbm (100 mW). Infatti dbm = 10 log10 (P / 1mW)
Canali Lo spettro WiFi è compreso nel range 2,4 – 2,488 GHz con 13 canali da 22 MHz parzialmente sovrapposti.
Lo scopo dei canali è quello di consentire la presenza contemporanea su una stessa area di più AP appartenenti a reti
differenti (SSID differenti) o alla stessa rete (stesso SSID). AP limitrofi devono preferibilmente utilizzare canali
differenti in modo che un client intermedio possa ricevere distintamente due o più segnali differenti. L‟impostazione
del canale può essere effettuata manualmente o automaticamente dall‟AP che si posiziona sul primo canale libero (il
default è il 6). Può però capitare che il secondo AP non sentendo il segnale dell‟altro scelga lo stesso canale.
Roaming Un AP può gestire al limite 30 client per cella. In caso di più client occorrono più AP tutti con lo stesso
SSID e collegati tra loro attraverso la normale rete cablata. Al fine di consentire lo spostamento fra una cella e
l‟altra senza perdita di segnale, le celle di copertura degli AP devono presentare una area comune di intersezione, in
modo da garantire una copertura uniforme. Questo consente al client di connettersi al secondo AP prima di essersi
disconnesso dal primo (mantenendo sempre il proprio indirizzo IP). Tecnica simile al roaming dei cellulari. Un nodo
intermedio che “sente” due AP appartenenti alla stessa rete, in ogni momento è registrato sotto un unico AP (quello
con campo maggiore). Può invece gestire connessioni parallele con più AP appartenenti a reti differenti.
ISR
Quando lo scopo di un Access Point è soltanto quello di condividere l‟accesso ad Internet, si utilizza il cosiddetto
router integrato nei servizi (ISR) cioè un vero e proprio router che contiene al suo interno anche 1) un modem di
accesso alla rete WAN, 2) un hub/switch a 4 porte, 3) un AP tale da consentire anche l‟accesso via wireless.
Di solito fornisce inoltre anche servizi Firewall, NAT e DHCP per l‟assegnazione dinamica degli indirizzi IP,
Con il termine Hotspot si intende invece un ISR pubblico (presente in aeroporti, stazioni, grandi hotel, etc. ).
Protocolli
Il problema di base, come detto in precedenza, è l‟impossibilità di rilevare collisioni attraverso l‟etere.
Rispetto al Data Link di Ethernet via cavo cambiano tutti e 3 i protocolli (CSMA/CA, MAC 4, LLC ACK Send And Wait)
Il livello MAC
L‟intestazione MAC di un frame WiFi (802.11) è notevolmente diversa dall‟intestazione MAC utilizzata nelle reti
Ethernet cablate (802.3). Contiene ad esempio il SSID della rete a cui il frame fa riferimento e ben 4 indirizzi MAC
(host sorgente, host destinazione, source wireless station, dest wireless station). Nel caso di invio dati dall‟host
all‟AP, il source wireless station è l‟host stesso, mentre il dest wireless station è l‟AP. Il doppio campo torna
comunque utile nel caso delle reti wireless - bridged, in cui l‟AP si collega via in wireless ad altri AP. L‟ AP
provvede automaticamente a convertire le intestazioni MAC dal formato 802.11 al formato 802.3 e viceversa..
pag 37
Sistemi - Classe Quinta robertomana.it
RETI
2) In caso di collisione sul segnale RTS (e conseguente assenza di ricezione di CTS), entrambi i contendenti
riproveranno l‟accesso secondo le regole di CSMA/CA, ed il tempo perso riguarda soltanto l‟invio di un segnale
RTS invece che l‟invio di un intero frame.
Autenticazione e Crittografia
I dati trasmessi via etere raggiungono qualsiasi client wireless che si trovi nella cella gestita dal trasmettitore.
Per evitare che persone non autorizzate possano collegarsi alla rete WiFi, o semplicemente intercettarne il traffico,
sono stati previsti meccanismi di autenticazione degli accessi e di cifratura delle trasmissioni.
Autenticazione tramite indirizzi MAC.
L‟autenticazione dei nodi può essere gestita impostando sull‟AP un elenco di indirizzi MAC abilitati in modo che
soltanto i computer aventi quegli indirizzi MAC possano avere accesso alla rete.
Autenticazione tramite Parola Chiave e Crittografia
WEP (Wired Equivalent Privacy) Algoritmo basato su una chiave simmetrica a 64 bit (ma esistono anche
versioni più avanzate a 128 e 256 bit) che deve essere impostata staticamente sia sui client che sull‟AP. Può esegue
sia autenticazione che crittografia sempre con la stessa chiave. Per quanto concerne l‟autenticazione WEP prevede
che l‟AP, in corrispondenza di una richiesta di connessione, invii al client una stringa testuale di challange. Il client
dovrà cifrarla con chiave WEP e restituirla all‟AP. Se l‟autenticazione fallisce il client non avrà accesso alla rete. Per
quanto riguarda la cifratura, se si delega l‟autenticazione agli indirizzi MAC, è possibile configurare WEP in modo
che l‟AP trasmetta la chiave WEP ai client collegati senza doverla configurare su tutti i client. Ormai superato da :
WPA PSK (WiFi Protected Access – Pre Shared Keys) Utilizza una chiave simmetrica di autenticazione
(configurata sull‟AP e sui client) costituita da un stringa compresa fra 8 e 63 chr. Per la crittografia dei dati usa un
algoritmo TKIP più avanzato rispetto a WEP con chiave a 256 bit, generata dinamicamente in corrispondenza di
ogni connessione sia sull‟AP che sul client sulla base della chiave PSK (pre master). Esiste già una nuova versione
WPA2-PSK basata non su TKIP ma su AES. EAP è invece un protocollo di autenticazione basato su server Radius.
pag 38
Sistemi - Classe Quinta robertomana.it
RETI
Livello 3
Il livello Rete è il responsabile dell‟instradamento dei singoli pacchetti attraverso una qualsiasi rete
(LAN; MAN o WAN), da un generico sorgente A ad un generico destinatario B.
Il problema che nasce è come associare i due indirizzi. La trasmissione a livello 1 e 2 è interamente incentrata sugli
indirizzi MAC e gli indirizzi IP non si sa neppure che esistono.
Al fine di risolvere questo abbinamento, è stato sviluppato un apposito protocollo di livello 3, detto ARP che,
all‟interno di una rete locale, provvede a convertire un indirizzo IP noto nel corrispondente indirizzo MAC.
pag 39
Sistemi - Classe Quinta robertomana.it
RETI
Struttura di un indirizzo IP
Un IP Address v4 è un numero 32 bit / 4 Bytes espresso in formato decimale con notazione puntata.
Ogni byte può contenere un numero compreso tra 0 e 255. 4 miliardi di combinazioni.
x.y.z.w
10.14.137.220 indirizzo IP valido
10.256.13.34 indirizzo IP non valido
L'indirizzo IP di ogni macchina deve essere univoco all‟interno della rete in cui la macchina si trova.
Un Server pubblico avrà un indirizzo pubblico e statico (ovviamente sempre uguale a se stesso)
Un PC che si collega ad Internet avrà un indirizzo pubblico e dinamico, che viene riassegnato ogni volta
Gli indirizzo IP possono essere suddivisi in 5 classi, ognuna strutturata in 2 livelli di gerarchia:
A) R H H H 28 -2 reti con 224 -2 host ciascuna
B) R R H H 216 -2 reti con 216 -2 host ciascuna
C) R R R H 224 -2 reti con 28 -2 host ciascuna
D) Riservata per le trasmissioni multicast
E) Riservati a scopi di ricerca e per eventuali applicazioni future
Al Vallauri sarebbe impossibile fare una rete di classe C perchè ci sono più di 255 host.
Nelle reti pubbliche non c'è molto da scegliere visto che l'indirizzo è assegnato dall'Authority.
All'interno di ogni “gruppo rete” e all'interno di ogni “gruppo host”, la prima e l'ultima combinazione non
possono essere utilizzate, cioè non sono accettate reti o host costituiti da tutti zero o da tutti uno.
Indirizzi di classe A
Caratteristica degli indirizzi di classe A è che il byte più alto è compreso tra 1 e 126 (Primo Byte = “0 x x x x x x x”).
La classe A consente di indirizzare 254 reti (126 effettive) con 16 milioni di host ciascuna.
Un indirizzo di classe A può essere scritto nella forma X.0.0.1, dove la X iniziale sta ad indicare che il primo numero
è assegnato, mentre gli altri tre numeri sono a disposizione per la configurazione degli host.
Indirizzi di classe B
Caratteristica degli indirizzi di classe B è che il byte più alto è compreso tra 128 e 191
Primo Byte = “1 0 x x x x x x”. Al secondo numero può essere assegnato un qualsiasi valore.
La classe B consente di indirizzare 65000 reti con 65000 host ciascuna.
Un indirizzo di classe B può essere scritto nella forma X.Y.0.1
Indirizzi di classe C
Caratteristica degli indirizzi di classe C è che il il byte più alto è compreso tra 192 e 223
Primo Byte = “1 1 0 x x x x x”. Agli altri due numeri può essere assegnato un qualsiasi valore.
La classe C consente di indirizzare 16 milioni di reti con 254 host ciascuna.
Un indirizzo di classe C può essere scritto nella forma X.Y.Z.1
pag 40
Sistemi - Classe Quinta robertomana.it
RETI
Indirizzi di classe D
Classe riservata per le trasmissioni multicast, cioè l'invio di messaggi ad un gruppo di destinatari, i quali a loro volta
già hanno un loro indirizzo IP. Una trasmissione multicast è una trasmissione da uno a molti, contrapposta alla
unicast (trasmissione uno uno) e alla broadcast (da uno a tutti). Il multicast è utilizzato da alcune applicazioni ad
esempio per scoprire quali sono i server presenti sulla rete.
Il byte più alto è compreso tra 224 e 239. Primo Byte = “1 1 1 0 x x x x”. Gli indirizzi di classe D non possono
essere assegnati ai singoli host. Indica gruppi di computer appartenenti ad una stessa subnet.
La classe E è riservata per usi futuri e/o sperimentali. Il primo numero è compreso tra 240 e 255. “1 1 1 1 x x x x”
Indirizzi speciali
a) Quando i bit di host sono tutti zero, l'indirizzo viene utilizzato per identificare l'intera rete.
10.0.0.0 indica la rete di classe A con indirizzo 10
172.16.0.0 indica la rete di classe B con indirizzo 172.16
192.168.50.0 indica la rete di classe C con indirizzo 192.168.50
b) Quando i bit di host sono tutti uno, l'indirizzo viene detto indirizzo di broadcast e serve ad identificare tutti gli
host appartenenti alla rete. Inviare un pacchetto all'indirizzo 128 . 4 . 255 . 255 significa inviare il pacchetto a tutti
gli host delle rete di classe B identificata dall‟indirizzo 128.4.0.0
c) L'indirizzo 0.0.0.0 è un indirizzo speciale detto default network utilizzato sia in fase di bootstrap della macchina
sia in particolari casi di routing. Quando si avvia una macchina, se è impostata l'opzione di richiesta di IP
dinamico ad un DHCP Server, questa invia una richiesta al server identificandosi come 0.0.0.0.
d) Non sono ammessi indirizzi che iniziano per 127. L'indirizzo 127.0.0.1 è detto indirizzo di loopback, nel senso
che i dati non vengono immessi in rete ma vengono rimandati indietro al PC stesso. Utile per eseguire funzioni di
test su protocolli di livello più alto. Quando un qualunque host accede a se stesso mediante l'indirizzo di loopback,
vede se stesso col nome di localhost, nome che può essere utilizzato da IE per accedere tramite protocollo HTTP
ad un sito web pubblicato sul PC locale. Es http://localhost/miaCartella/index.html
pag 41
Sistemi - Classe Quinta robertomana.it
RETI
Scopo del protocollo ARP è quello di individuare l‟indirizzo MAC corrispondente ad un indirizzo IP noto,
nell‟ambito di una stessa rete locale.
Consideriamo due host appartenenti ad una stessa rete locale ed aventi i seguenti indirizzi:
Primo Host: IP Address = IP1 MAC Address = MAC1
Secondo Host: IP Address = IP2 MAC Address = MAC2
Host1 ha un messaggio da trasmettere a Host2 di cui conosce l‟indirizzo IP ma non il MAC. Il livello IP aggiunge al
pacchetto la propria intestazione comprensiva di indirizzo IP del sorgente e indirizzo IP del destinatario, quindi
“passa” il pacchetto ad un protocollo intermedio, detto ARP (Addrress Resolution Protocol) che è un componente
integrante del protocollo IP (dunque considerato di livello 3, ma che in realtà nel modello dei protocolli sta sotto
rispetto al protocollo IP, cioè a cavallo tra i livelli 2 e 3).
Il protocollo ARP gestisce una tabella dinamica detta ARP TABLE che contiene gli abbinamenti tra gli indirizzi IP
conosciuti (cioè gli host con cui la macchina è già entrata in contatto) ed i corrispondenti indirizzi MAC.
IP1 MAC1
IP2 MAC2
IP3 MAC3
Ricevuto l‟indirizzo IP, ARP va a cercare nella ARP Table per vedere se esiste già il corrispondente indirizzo MAC.
Se questa è la prima volta dopo l'accensione che host1 vuole comunicare con host2, allora il record IP / MAC non
sarà presente nella ARP Table.
Allora il protocollo ARP provvede a costruire un messaggio detto ARP REQUEST privo dei dati ed avente come
payload soltanto l‟intestazione IP ricevuta dal protocollo IP. A questo payload ARP provvede ad aggiungere
l‟intestazione MAC. Come MAC sorgente inserisce il proprio (MAC1), mentre come MAC di destinazione inserisce
un indirizzo di MAC Broadcast costituito da tutti 1:
FF - FF - FF - FF - FF - FF
che significa che il messaggio dovrà essere inviato a tutti gli host della rete. In pratica HOST1 sta richiedendo a tutti
gli host della rete se fra loro c'è qualcuno che ha un IP Address di valore pari a IP2.
Host1 invia quindi la ARP Request. Tutte le schede di rete ricevono il messaggio e, vedendo come indirizzo MAC un
Broadcast, provvedono a leggerlo e a passarlo al protocollo ARP di livello 3. Il protocollo ARP provvede ad
analizzare l‟indirizzo IP del destinatario. Se questo IP non è il suo, allora il pacchetto viene scartato. L'host
interessato riconosce invece l'ARP Request come richiesta del proprio indirizzo MAC e :
Aggiorna la propria ARP Table inserendo gli indirizzi IP e MAC del mittente (se il mittente sta chiedendo il
mio MAC è presumibile che in seguito vorrà comunicare con me)
Invia una ARP Response o ARP Reply a HOST1, contenente MAC source e MAC dest sntrambi corretti.
ARP Response, non essendo un messaggio di broadcast, viene intercettato soltanto da HOST1 che va a leggere
l'atteso MAC2, aggiorna la propria ARP Table ed invia quindi il pacchetto dati vero e proprio a HOST2.
Ogni host aggiorna quindi dinamicamente la propria ARP Table, che in ogni istante conterrà l'elenco degli host con
cui la macchina è entrata in comunicazione fino a qual momento. Spegnendo la macchina la ARP Table ovviamente
va persa, mentre alla riaccensione verrà man mano ricostruita. Questa cache consente chiaramente di ridurre il
traffico in rete, evitando di inviare continuamente delle ARP Request sempre verso le stesse macchine.
pag 42
Sistemi - Classe Quinta robertomana.it
RETI
Si consideri l‟esempio in figura in cui alcuni host sono tutti collegati ad una certo Hub e dunque rappresentano una
unica Rete Fisica, ma ad alcuni host vengono assegnati degli indirizzi di una certa rete di classe A, mentre ad altri
host vengono assegnati degli indirizzi appartenenti ad una rete diversa (che supponiamo di classe B ma che potrebbe
anch‟essa essere di classe A).
HUB
A1 A2 B1 A3 B2
I due gruppi rappresentano due Reti Logiche differenti, anche se fisicamente interconnesse fra loro.
Si consideri ora un host del primo gruppo ed un host del secondo gruppo. Fisicamente questi due host potrebbero
comunicare tra loro, visto che di fatto appartengono alla stessa rete fisica, ma la comunicazione non è possibile
perchè le due macchine appartengono a reti IP (logiche) differenti.
Quando un host deve spedire un messaggio ad un altro host destinatario, prima di spedirlo provvede a
verificare se l'indirizzo IP del destinatario è un indirizzo appartenente alla sua stessa rete. In caso affermativo
provvede alla trasmissione, altrimenti non trasmette il pacchetto al destinatario, ma provvede a trasmetterlo
ad un particolare indirizzo detto Default Gateway. Viceversa il destinatario non esegue a livello IP nessun
controllo sui pacchetti in ingresso, accettandoli tutti indipendentemente dalla loro provenienza.
In una situazione come quella indicata in figura A1, A2, A3 possono comunicare tra loro; anche B1 e B2 possono
comunicare fra loro, ma non con gli altri tre.
Per poter stabilire una comunicazione tra due reti logiche differenti, occorre necessariamente interporre un
dispositivo intermedio di livello 3 detto ROUTER.
NOTE
Nella realtà, Rete Logica e Rete Fisica sono sempre coincidenti.
Per identificare gli host all'interno di una rete talvolta si utilizza la notazione decimale RETE:HOST (es
10:189 host 189 della rete 10). Un'altra possibile notazione è quella di anteporre solo il nome della classe
specificando poi il numero assoluto dell'host. Es A.428 che indica l'host 428 di una certa rete di classe A.
Nel caso di più reti logiche IP connesse su una unica rete fisica, gli host appartenente alle varie sottoreti
non possono comunicare a livello unicast, ma possono comunque comunicare a livello di broadcast.
Non c’è dunque separazione netta (sicurezza) fra le 2 reti, come invece avviene nel caso delle VLAN.
Subnet Mask
Ben presto gli Enti di standardizzazione si resero conto che tre sole classi di reti erano insufficienti per coprire tutte
le situazioni e che lo spazio degli indirizzi IP si sarebbe presto esaurito senza essere stato sfruttato appieno (cioè con
molti indirizzi inutilizzati). Nel 1985 venne introdotto il concetto di Subnet Mask (RFC 950) il cui scopo principale
è quello di poter suddividere una rete di grandi dimensioni in più sottoreti di dimensioni più piccole.
Pur utilizzando la stessa notazione degli indirizzi IP (4 numeri decimali in notazione puntata), la Subnet Mask non è
un indirizzo IP, ma è una Maschera di Sottorete che consente di distinguere, all'interno di un certo indirizzo IP
associato, la parte di RETE dalla parte di HOST in modo indipendente rispetto alla classe dell‟indirizzo.
La Subnet Mask (o Netmask) introduce un ulteriore livello di gerarchia all'interno dell'indirizzo IP,
all'interno del quale si possono ora distinguere 3 gruppi :
RETE SOTTORETE HOST
Le varie sottoreti create mediante Subnet Mask personalizzate, diventano di fatto reti completamente
indipendenti che possono comunicare fra loro soltanto mediante un Router.
pag 43
Sistemi - Classe Quinta robertomana.it
RETI
Una Subnet Mask è suddivisa in due parti, una prima costituita da tutti 1 che indica i bit del corrispondente
indirizzo IP riferiti alla rete, seguita da una seconda parte costituita da tutti 0 che indica i bit riferiti all'host.
La subnet mask da sola non ha però alcun significato. Deve sempre essere abbinata ad un indirizzo di rete.
La Subnet Mask di default per tutte le reti di classe A è 255.0.0.0
La Subnet Mask di default per tutte le reti di classe B è 255.255.0.0
La Subnet Mask di default per tutte le reti di classe C è 255.255.255.0
Esempio
Si consideri la solita rete di classe 192.168.22.0 (in grado di indirizzare 256 host teorici) e si supponga di volerla
dividere in 16 sottoreti da 16 host ciascuna, sottoreti vendibili a 16 clienti differenti.
A tal fine occorre assegnare a questa rete una subnet mask con l‟ultimo byte costituito da 4 UNI e 4 ZERi:
in binario: 11111111 . 11111111 . 11111111 . 11000000
in decimale: 255 . 255 . 255. . 240
Ogni rete in realtà è in grado di indirizzare soltanto 14 host in quanto non sono ammessi gli host costituiti da tutti 0
(indirizzo della sottorete) e da tutti 1 (indirizzo di broadcast all‟interno della sottorete).
Le 16 sottoreti realizzabili avranno pertanto i seguenti indirizzi:
pag 44
Sistemi - Classe Quinta robertomana.it
RETI
Rete. Quarto Byte dell indirizzo IndirizzoIP Indirizzi IP utilizzabili per gli host
IP della rete della rete
DA A
Subnet #0 0000 xxxx 192.168.22.0 / 28 192.168.22.1 192.168.22.14
Subnet #1 0001 xxxx 192.168.22.16/ 28 192.168.22.17 192.168.22.30
Subnet #2 0010 xxxx 192.168.22.32 / 28 192.168.22.33 192.168.22.46
Subnet #3 0011 xxxx 192.168.22.48 / 28 192.168.22.49 192.168.22.62
Subnet #4 0100 xxxx 192.168.22.64 / 28 192.168.22.65 192.168.22.78
Subnet #5 0101 xxxx 192.168.22.80 / 28 192.168.22.81 192.168.22.94
Subnet #6 0110 xxxx 192.168.22.96 / 28 192.168.22.97 192.168.22.110
Subnet #7 0111 xxxx 192.168.22.112 / 28 192.168.22.113 192.168.22.126
Subnet #8 1000 xxxx 192.168.22.128 / 28 192.168.22.129 192.168.22.142
Subnet #9 1001 xxxx 192.168.22.144 / 28 192.168.22.145 192.168.22.158
Subnet #10 1010 xxxx 192.168.22.160 / 28 192.168.22.161 192.168.22.174
Subnet #11 1011 xxxx 192.168.22.176 / 28 192.168.22.177 192.168.22.190
Subnet #12 1100 xxxx 192.168.22.192 / 28 192.168.22.193 192.168.22.206
Subnet #13 1101 xxxx 192.168.22.208 / 28 192.168.22.209 192.168.22.222
Subnet #14 1110 xxxx 192.168.22.224 / 28 192.168.22.225 192.168.22.238
Subnet #15 1111 xxxx 192.168.22.240 / 28 192.168.22.241 192.168.22.254
pag 45
Sistemi - Classe Quinta robertomana.it
RETI
AND-ing Process
Si consideri un host 10.1.x.x. che deve spedire un messaggio ad un host 10.2.x.x. Si supponga che entrambi gli host
abbiano una Subnet Mask pari a 255.255.0.0. Il protocollo IP, nel momento in cui si trova a dover spedire un certo
messaggio ad un certo indirizzo IP di destinazione, provvede per prima cosa a verificare se l'indirizzo IP del
destinatario appartiene alla sua stessa sottorete oppure no. A tal fine esegue il cosiddetto AND-ing Process che
consiste in due operazioni di AND bit a bit tra:
1) IP Sorgente e Subnet Musk. In tal modo ottiene l'indirizzo della sottorete sorgente 10.1.0.0.
2) IP Destinatario e Subnet Musk. In tal modo ottiene l'indirizzo della sottorete dest 10.2.0.0.
Se i due risultati coincidono, significa che Sorgente e Destinazione appartengono alla stessa sottorete, dunque
il messaggio viene inviato all'indirizzo IP del destinatario.
Se invece i due risultati non coincidono, significa che i due host non appartengono alla stessa rete, per cui il
messaggio non viene inviato all'indirizzo IP del destinatario, ma viene inviato ad un Router di instradamento
Se invece i due host avessero una Subnet Mask pari a 255.0.0.0, il processo di anding porterebbero allo stesso
risultato, in quanto i due host appartengono alla stesse sottorete e dunque possono comunicare tra loro in modo diretto
senza dover passare attraverso il router.
L'AND-ing process non viene eseguito dal destinatario che accetta i pacchetti IP indipendentemente dalla provenienza
Invece di spedire il messaggio direttamente verso IP Dest, provvede a spedirlo verso l'indirizzo IP di Default
Gateway impostato sulla macchina, che rappresenta l‟indirizzo del router che collega la rete attuale alle altre reti.
Gateway significa “Porta di uscita” (della rete locale verso l‟esterno). Default Gateway rappresenta la porta di
uscita di default, da utilizzare per far uscire tutti i pacchetti destinati a reti differenti. Se il Default Gateway della
macchina non è stato impostato, il pacchetto non viene inviato e la comunicazione con B1 risulta impossibile.
L‟indirizzo IP di Default Gateway deve ovviamente appartenere alla stessa rete a cui appartiene l‟host A1.
Secondo le convenzioni CISCO si assegna al router di Default Gateway il primo indirizzo disponibile.
Impostando come Default Gateway un indirizzo esterno alla rete dell‟host la trasmissione non potrebbe mai avvenire.
E‟ compito dell'amministratore di rete a garantire un corretto indirizzamento. Operando invece con IP dinamici
generati tramite DHCP, insieme all'IP Address anche Subnet Mask e Default Gateway vengono assegnati
automaticamente tramite DHCP, che dovrà essere configurato dall'amministratore di rete soltanto sul server centrale.
Un router dispone normalmente di più porte di ingresso che operano da Default Gateway verso LAN differenti
Il router, ricevuto il messaggio, apre il pacchetto fino al livello 3, cioè legge ed elimina le intestazioni MAC di liv 2,
legge a livello 3 IP DEST e, sulla base delle proprie tabelle di routing, provvede ad instradare opportunamente il
messaggio creando una nuova intestazione di livello 2. Se anche la rete su cui spedire è una rete Ethernet, verrà creata
un nuova intestazione MAC indicando come MAC DEST quello del prossimo router. Se invece la rete su cui spedire
non è una rete Ethernet verrà creata una intestazione diversa relativa al protocollo in uso.
Se la porta di uscita è una porta Token Ring verrà utilizzato il protocollo Token Passing con relativa intestazione
Se la porta di uscita è un collegamento seriale, verrà utilizzato il protocollo HDLC con relativa intestazione
Se la porta di uscita è un collegamento ADSL verrà utilizzato il protocollo di liv 2 PPP con relativa intestazione
Nel corso dell'intera comunicazione gli indirizzi IP rimangono sempre gli stessi cioè A.1 e B.1.
Quelli che cambiano da un router all'altro sono sempre solo gli indirizzi di livello 2.
I vari router intermedi, sulla base delle loro tabelle di routing, decideranno dove instradare il pacchetto, fino al
raggiungimento di un router finale a cui è fisicamente collegata la rete di destinazione.
Quando il messaggio arriva al router finale al quale è collegato l'host destinatario, provvederà ad inviare una ARP
Request sulla rete LAN locale in modo da richiedere il MAC dell'host destinatario (ammesso che non già sia presente
nella sua ARP Table), ed infine provvederà ad inoltrare il messaggio alla destinazione.
pag 47
Sistemi - Classe Quinta robertomana.it
RETI
Conclusioni:
Direct Delivery : Quando sorgente e destinatario si trovano su una stessa rete, la consegna viene effettuata in modo
diretto sulla base dell'indirizzo MAC del destinatario (protocollo ARP, utilizzato soltanto in reti locali).
Undirect Delivery : Quando invece sorgente e destinatario appartengono a reti diverse, allora il messaggio viene
prima inviato ad un nodo intermedio (Default Gateway) che, mediante una serie di consegne successive, provvederà a
inoltrare il messaggio fino al raggiungimento di un nodo finale che a sua volta eseguirà la consegna diretta dei dati al
destinatario. Si parla in questo caso di consegna indiretta.
Dominio di Broadcast
Si definisce Dominio di Broadcast l‟insieme degli host raggiungibili da un messaggio di broadcast. I messaggi di
broadcast vengono tagliati dai router, per cui un dominio di broadcast è sostanzialmente rappresentato da una
sottorete IP delimitata da un router. Se i router non tagliassero i messaggi di broadcast questi, una volta entrati in
Internet, verrebbero propagati a tutti i PC del mondo con conseguente saturazione di tutta la rete.
Se all'interno di una sottorete (dominio di broadcast) ci sono degli switch, il dominio di broadcast della sottorete
viene ulteriormente suddiviso in più Domini di Collisione. Se la rete utilizza solo switch e non hub, ogni singolo host
rappresenta un singolo dominio di collisione.
pag 48
Sistemi - Classe Quinta robertomana.it
RETI
Il Router
Il router è un dispositivo di livello 3 utilizzato per interconnettere reti differenti
Rappresenta il più importante dispositivo per la regolazione del traffico dell'intera rete Internet
Dispone normalmente di un processore e di una RAM per la bufferizzazione dei pacchetti.
Inoltre:
I router possono essere normali computer con più schede di rete che eseguono un software apposito (es
iptables) oppure apparati hardware dedicati a questo solo scopo (che costano molto meno di un PC).
Il router, nel caso di piccole reti locali, svolge principalmente la funzione di Gateway (“Portone di ingresso /
uscita”) verso il mondo esterno (Internet).
Per quanto concerne le interfacce Ethernet, i router gestiscono una ARP Table dinamica contenente
l'associazione IP / MAC relativa a tutti gli host direttamente collegati al Router su un‟interfaccia Ethernet.
Alcuni router forniscono dei servizi aggiuntivi quali ad esempio il servizio DHCP in grado di assegnare
dinamicamente gli indirizzi IP a tutte le macchine della LAN e il servizio NAT che, in corrispondenza di una
richiesta da parte di un host della LAN, provvederà a sostituire l'IP privato del client richiedente con l'IP
pubblico ottenuto dinamicamente dall'ISP al momento della connessione. Nel contempo tiene traccia della
richiesta in modo da poter poi reindirizzare la risposta proveniente dal server
Spesso svolgono anche il ruolo di firewall. Il punto di ingresso / uscita di una rete rappresenta infatti il luogo
migliore dove effettuare controlli sui pacchetti in transito.
Il costo, superiore rispetto a quello dello switch, varia moltissimo a seconda dei dispositivi. Si parte da 200 €
(o anche meno per switch router non programmabili) per arrivare oltre i 50.000 €.
Rispetto allo switch ovviamente presenta tempi di risposta maggiori.
La segmentazione di una rete locale in più sottoreti IP differenti interconnesse mediante un router nasce
spesso da una precisa strategia di progettazione mirata sia ad aumentare la sicurezza (il router può eseguire
un controllo centralizzato di tutti i pacchetti scambiati fra le due reti, decidendo quali far passare e quali no),
sia a ridurre il traffico di rete migliorando le prestazioni (i broadcast saranno limitati a ciascuna sottorete).
In corrispondenza del router i pacchetti 'risalgono' fino al livello 3. Sulla base dell‟indirizzo IP di destinazione del
pacchetto, il router decide dove instradare il pacchetto sulla rete , consentendo ad ogni host di comunicare con
qualsiasi altro host ovunque nel mondo. A livello di pacchetto IP, il router non registra le informazioni relative al
pacchetto in transito mi si limita a decrementare un campo TTL(decrementato da ogni router per evitare loop infiniti)
ed eventualmente a frammentare il pacchetto in caso di pacchetti troppo grandi rispetto all'MTU del link successivo.
pag 49
Sistemi - Classe Quinta robertomana.it
RETI
Il router normalmente non ha molte porte. Questo perchè lo scopo del router non è quello di collegare fra loro più
host, ma è quello di collegare fra loro reti differenti. Dopo di che se la rete ha moltissimi host, per il router non ha
nessuna importanza. Le porte normalmente presenti sono:
Due / Quattro porte LAN anche di tipo differente (es. Token Ring) ma tipicamente di tipo Ethernet con
connettore di tipo RJ45. Ogni LAN INTERFACE avrà un suo indirizzo IP appartenente alla sottorete a cui la
LAN INTERFACE stessa risulta collegata.
Una o più porte WAN per il collegamento verso reti geografiche anche di tipo differente, come ad esempio
PSTN; ISDN; ADSL; Frame Relay
Una / Due porte Seriali che servono per realizzare collegamenti punto punto con altri router
Una porta Console per la programmazione del router, con connettore tipicamente RJ45
Ogni porta del router presenta un suo indirizzo IP (ad eccezione della porta Console)
Più in generale, un router può montare più Moduli (detti NPM Network Processor Module) di interfaccia verso le più
disparate tecnologie di data Link, LAN o WAN (Ethernet, ma anche HDLC, Frame Relay, ATM fino alla classiche
PSTN, ISDN; ADSL).
Configurazione di un router
A differenza dello switch, che deve soltanto essere installato e poi apprende tutte le informazioni automaticamente, il
router non è un dispositivo Plug And Play per cui, almeno la prima volta, deve necessariamente essere programmato.
Programmare staticamente un router significa essenzialmente indicare l'indirizzo IP di tutte le reti collegate.
La configurazione può essere eseguita :
Mediante una connessione punto – punto (detta out of band) tra la seriale di un PC e la porta console del Router.
Per la comunicazione si possono utilizzare appositi programmi a riga di comando quale Hyper Terminal di
Windows.
Mediante una connessione Ethernet (detta in band). In questo caso il router deve disporre di un server Telnet
oppure di un server HTTP integrati. Alla prima porta LAN è assegnato un indirizzo di default assegnato dal
costruttore in modo che l'utente possa accedere fin da subito al router senza necessità di un collegamento seriale
(e poi eventualmente modificare l'indirizzo di questa porta).
Nel caso di HTTP il client può connettersi al router tramite un normale web browser in cui dovrà inserire
semplicemente l'indirizzo IP del router
Nel caso di Telnet (prompt dos / Telnet) si possono inviare comandi testuali direttamente via Ethernet.
Telnet è l‟equivalente di Hyper Terminal ma, anziché un collegamento punto – punto su porta Console, è
appoggiato su TCP/IP e dunque utilizzabile attraverso la rete.
pag 50
Sistemi - Classe Quinta robertomana.it
RETI
Progettazione di Reti
Esempio 1
Connessione di due sottoreti locali e configurazione dei router
B
A
Y
X
X Y
Rete B 10.0.3.0/24
Rete A 10.0.1.0/24 Anche questa è una
rete: 10.0.2.0/24
Lo /24 indica il numero di uni consecutivi presenti all‟interno della Subnet Mask (notazione CiDR).
La porta X del primo router avrà ad esempio un IP Address = 10.0.1.1
La porta Y del primo router avrà ad esempio un IP Address = 10.0.2.1
La porta X del secondo router avrà ad esempio un IP Address = 10.0.2.2
La porta Y del secondo router avrà ad esempio un IP Address = 10.0.3.1
All'interno di ciascuna delle due reti A e B si possono lasciare alcuni indirizzi liberi in modo da poterli utilizzare per
eventuali ulteriori router. Ad esempio al primo host della rete A si può assegnare la configurazione IP: 10.0.1.11.
Esempio 2
La rete del Vallauri
Rete Amministrativa e Rete Didattica devono essere separate per legge.
CSI Torino
pag 51
Sistemi - Classe Quinta robertomana.it
RETI
Tabelle di Routing
Il Routing è il meccanismo che consente di instradare i pacchetti attraverso una rete. Scopo primario della tabella di
routing è definire l‟interfaccia da cui spedire un pacchetto destinato ad una certa rete. Il router, per ogni
pacchetto in ingresso, analizza l‟indirizzo IP di destinazione e, sulla base della tabella di Routing, individua il
canale migliore su cui instradare il pacchetto, indipendentemente dal canale di ingresso. Ogni record della tabella di
routing (entry) è normalmente costituita dai seguenti cinque campi:
Network Address = Indirizzo IP della rete di destinazione (Rete)
Subnet Mask = Subnet Mask della rete di destinazione. Da utilizzare per verificare la corrispondenza tra il
Destination IP ed il Network Address riferito alla entry corrente. In caso di corrispondenza significa che il pacchetto
è destinato alla rete corrente e deve essere instradato sulla base della entry corrente.
Interface = Indica l'indirizzo IP della porta del router da utilizzare per instradare il pacchetto. Il pacchetto verrà
instradato su questa porta, alla quale possono però essere collegati più router differenti con indirizzi IP differenti.
Next Hop (Gateway) = indirizzo IP del prossimo router a cui inoltrare il pacchetto instradato sull‟interface corrente
Metric = Numero che indica il costo della Route in modo che, in caso di percorsi alternativi, si possa scegliere il Best
Route. Il modo più semplice di gestire questo campo è impostarlo al numero dei router da attraversare per
raggiungere la destinazione. I valori utilizzati sono dunque soltanto relativi.
Per ogni pacchetto in arrivo, il Router esegue una AND bit a bit tra l‟indirizzo IP di destinazione e la Subnet Mask
contenuta in ciascuna entry della Routing Table. Se il risultato coincide col Network Address di quella entry significa
che quella è l‟interfaccia da cui spedire il pacchetto. Se le corrispondenze sono più di una, viene scelta quella con
metrica inferiore oppure la prima incontrata all‟interno della tabella. Talvolta nella tabella di routing „effetttiva‟, per
ogni destinazione viene riportata soltanto la entry con metrica inferiore.
pag 52
Sistemi - Classe Quinta robertomana.it
RETI
Individuata l‟interfaccia da cui spedire, il router ricostruisce il frame di livello 2 relativo al Data Link in
uso sull‟interfaccia scelta e inoltra il pacchetto.
Se l‟interfaccia da cui spedire il pacchetto coincide con l‟interfaccia di provenienza del pacchetto stesso, allora
il pacchetto non viene inoltrato.
Entry Particolari:
1) Directly Attached Network Reti direttamente collegate al router corrente.
In questi casi si imposta lo stesso valore nei campi Gateway e Interface.
Network Address = Indirizzo della sottorete in questione
Subnet Mask = maschera relativa alla sottorete in questione
Interface = indirizzo IP della porta di uscita verso la sottorete in questione
Gateway = stesso valore di Interface
2) Deafult Route Una entry della tabella (con metrica superiore a tutte le altre, in quanto da essere utilizzata come
ultima scelta), indica il Default Route, cioè il route da usare se non viene individuata nessuna altra corrispondenza
all‟interno della tabella di Routing. Questa entry ha la seguente impostazione:
Network Address = 0.0.0.0
Subnet mask = 0.0.0.0
Interface = indirizzo IP della porta di uscita da utilizzare per il collegamento di default
Gateway = indirizzo IP del prossimo router.
La Subnet Mask 0.0.0.0 fa in modo che, qualunque sia IP DEST, il processo di AND-ing tra IP Dest e Subnet Mask
vada sempre a buon fine trovando sempre corrispondenza con la rete 0.0.0.0.
Durante l'intero processo di Routing, il campo IP_DEST contenuto nell'intestazione IP non viene mai modificato
ed è utilizzato da tutti i router per instradare il pacchetto. Nel momento in cui il protocollo IP incontra su un
certo Router il campo Gateway uguale al campo Interface, significa che la rete destinataria è direttamente collegata al
router corrente, per cui il pacchetto verrà finalmente inoltrato al Destinatario con una Direct Delivery.
Esercizio
Dato il seguente schema di rete, scrivere le tabelle di routing per ciascuno dei quattro router.
192.168.0.0/24
192.168.0.2
192.168.1.1
192.168.1.0/24
192.168.0.1
192.168.1.3
10.0.0.1
192.168.1.2
192.168.2.1
1.2.3.4
10.0.0.0/16
192.168.2.0/24
pag 53
Sistemi - Classe Quinta robertomana.it
RETI
Router R1
Le due entry relative a LAN3 e LAN4 sono assolutamente inutili, in quanto sono sostanzialmente già comprese
all‟interno della default route finale.
Router R2
Rispetto ad R2, LAN2 e LAN3 sono directly attached, LAN1 e LAN4 sono stub networks
Router R3
Rispetto ad R3, LAN1 e LAN2 sono, nel loro insieme, stub networks.
Se queste reti avessero indirizzi contigui, potrebbero essere aggregate in una unica entry.
pag 54
Sistemi - Classe Quinta robertomana.it
RETI
Router R4
hostname
E‟ in realtà un comando NETBIOS. Mostra il nome del computer
(nome impostatabile in PANNELLO DI CONTRLLO / SISTEMA / NOME COMPUTER).
GetMac
Utilizzato senza parametri mostra gli indirizzi MAC delle schede Ethernet presenti, es LAN 10/100 e Wireless
getmac /? mostra tutte le possibili opzioni di GETMAC
pag 55
Sistemi - Classe Quinta robertomana.it
RETI
L‟opzione –p consente di creare routes permanenti, archiviate nel Registro di Sistema alla posizione
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes.
La tabella di routing, tralasciando le entry di loopback, assumerà ora il seguente aspetto.
Indirizzo Rete Mask Gateway Interface Metric
10.0.0.0 255.0.0.0 10.0.0.244 10.0.0.244 1
172.16.0.0 255.255.0.0 10.0.0.2 10.0.0.244 2
192.168.0.0 255.255.255.0 10.0.0.3 10.0.0.244 2
0.0.0.0 0.0.0.0 10.0.0.1 10.0.0.244 30
L'opzione route change #net_ip mask #net_mask if #interface gateway #gateway_ip metric #metric
consente di modificare una entry esistente relativa ad una certa sub_net specificata dal primo parametro.
L'opzione route delete #net_ip consente di eliminare una entry relativa alla sub_net specificata nel parametro.
pag 56
Sistemi - Classe Quinta robertomana.it
RETI
A livello di routing
dinamico, VLSM è
Le sottoreti precedenti
supportata da
possono essere utilizzate per
RIP v2, OSPF, EIGRP
indirizzare il link tra 2 router.
pag 57
Sistemi - Classe Quinta robertomana.it
RETI
Esercizio 2
Una certa azienda intende realizzare una infrastruttura di rete comprendente circa 200 host, che devono essere
suddivisi in tre LAN (LAN1 = 28 host, LAN2 = 110 host, LAN3 = 60 host) come indicato nello schema seguente
Gli indirizzi utilizzabili sono indirizzi privati di classe C 192.168.20.0 ed eventuali indirizzi successivi .21, .22 etc.
Si suppone che all‟interfacc Internet di R4 sia assegnato l‟indirizzo 1.2.3.4 appartenente alla rete di un provider
Si richiede di
1) eseguire una pianificazione ottimale di tipo CLASSLESS degli indirizzi IP a disposizione, riportando per ogni
rete: indirizzo di rete, subnet mask, default gateway, indirizzo di broadcast
2) pianificare le tabelle di routing dei 4 Router impostando tutte le possibili entry
Soluzione:
Dato un indirizzo di classe C, agendo sulla subnet mask si potrebbero realizzare:
1 unica rete con 254 host (subnet mask standard /24)
2 sottoreti da 126 host caduna (subnet mask /25)
4 sottoreti da 62 host caduna (subnet mask /26)
8 sottoreti da 30 host ciascuna, (subnet mask /27)
16 sottoreti da 14 host ciascuna, (subnet mask /28)
32 sottoreti da 6 host ciascuna, (subnet mask /29) e così via
La rete più grande ha 110 host. Si inizia quindi nel suddividere la rete 192.168.20.0 in due sottoreti da 128 host:
192.168.20.0 xxxxxxx / 25 LAN 2 -> 192.168.20.0 / 25
192.168.20.1 xxxxxxx / 25 libera -> 192.168.20.128 / 25
La sottorete libera (192.168.20.1 xxxxxxx / 25) viene ora ulteriormente suddivisa in due sottoreti da 64 host:
192.168.20.10 xxxxxx / 26 LAN3 -> 192.168.20.128 / 26
192.168.20.11 xxxxxx / 26 libera -> 192.168.20.192 / 26
La sottorete libera (192.168.20.11 xxxxxxxx / 26) viene ora ulteriormente suddivisa in due sottoreti da 32 host:
192.168.20.110 xxxxx / 27 LAN1 -> 192.168.20.192 / 27
192.168.20.111 xxxxx / 27 libera -> 192.168.20.224 / 27
pag 58
Sistemi - Classe Quinta robertomana.it
RETI
Poiché restano da indirizzare 4 piccole sottoreti da 2 host ciascuna (i 4 collegamenti punto punto fra i router), la rete
libera (192.168.20.111 xxxxx / 27) in grado di indirizzare 32 host viene suddivisa in 8 sottoreti da 4 indirizzi
ciascuna, le prime 4 utilizzate per indirizzare i 4 collegamenti punto punto e le rimanenti quattro libere.
192.168.20.111 000 xx / 30 LAN R1 – R4 -> 192.168.20.224 / 30
192.168.20.111 001 xx / 30 LAN R1 – R2 -> 192.168.20.228 / 30
192.168.20.111 010 xx / 30 LAN R2 – R3 -> 192.168.20.232 / 30
192.168.20.111 011 xx / 30 LAN R3 – R4 -> 192.168.20.236 / 30
192.168.20.111 100 xx / 30 libera -> 192.168.20.240 / 30
192.168.20.111 101 xx / 30 libera -> 192.168.20.244 / 30
192.168.20.111 110 xx / 30 libera -> 192.168.20.248 / 30
192.168.20.111 111 xx / 30 libera -> 192.168.20.252 / 30
Le 4 reti libere possono essere riaggregte in una unica rete 192.168.20.240 / 28
Tabelle di Routing
pag 59
Sistemi - Classe Quinta robertomana.it
RETI
Esercizio 3
Una certa azienda intende realizzare una infrastruttura di rete comprendente tre LAN con circa 50 host caduna, come
indicato nello schema seguente
ppp0
eth0
eth1 eth1 eth0
eth0
Per l‟indirizzamento, l‟azienda richiede l‟assegnazione di alcune reti IP di classe C, che devono essere comprese tra
192.168.208.0 e 192.168.213.0. Si suppone che all‟interfaccia del router R2 verso Internet sia stato assegnato
l‟indirizzo 69.12.154.7 appartenente alla rete di un provider. Si richiede di
1) Eseguire una pianificazione classlesss degli indirizzi IP da assegnare a host e router della retel
2) Pianificare le tabelle di routing dei 3 Router
3) Programmare gli host di LAN2 in modo che possano comunicare con LAN1 e LAN3 senza passare attraverso R2
Soluzione
Non essendoci collegamenti seriali Router – Router ma solo collegamenti Ethernet che non costituiscono rete di
indirizzamento, si utilizza una unica rete di classe C 192.168.208.0 suddividendola tramite una subnet /26 in quattro
sottoreti da 62 ciascuna. La quarta di queste sottoreti rimane libera.
LAN1
Network 192.168.208.0 / 26 // 00xxxxxx
Subnet Mask 255.255.255.192
Default Gateway 192.168.208.1
Broadcast 192.168.208.63
Host da 192.168.208.2 a 192.168.208.62
LAN2
Network 192.168.208.64 / 26 // 01xxxxxx
Subnet Mask 255.255.255.192
Default Gateway (R2) 192.168.208.65
Broadcast 192.168.208.127
R1 eth1 = 192.168.208.66, R3 eth1 = 192.168.208.67
LAN3
Network 192.168.208.128 / 26 // 10xxxxxx
Subnet Mask 255.255.255.192
Default Gateway 192.168.208.129
Broadcast 192.168.208.191
pag 60
Sistemi - Classe Quinta robertomana.it
RETI
2) Tabella di Routing di R2
3) Per fare in modo che gli host di LAN2 possano comunicare con LAN1 e LAN3 senza passare attraverso R2,
è possibile impostare manualmente, mediante il comando route, una route table su tutti gli host di LAN2, facendo in
modo che spediscano a gateway differenti (ma appartenenti alla stessa LAN) pacchetti destinati a LAN differenti. La
Route Table è prioritaria rispetto al Default Gateway.. Per ogni host di LAN2 si può impostare la seguente route table
Queste route table costituiscono una aggiunta e non consentono di eliminare alcuna entry nella Routing Table di R2,
che deve essere mantenuta per consentire agli host di LAN1 e LAN3 di comunicare con Internet e ricevere le risposte
Esercizio 4
Una certa rete di classe B con indirizzo base 172.16.0.0 viene .suddivisa in 4 sottoreti rispettivamente da 600 host,
600 host, 100 host, 100 host, più 4 collegamenti punto punto da 2 host. Eseguire un indirizzamento classless.
Dalla rete 172.16.0.0 vengono inizialmente estratte 64 sottoreti da 1024 host:
172.16.000000 xx / 22 LAN 1 -> 172.16.0.0 / 22
172.16.000001 xx / 22 LAN 2 -> 172.16.4.0 / 22
172.16.000010 xx / 22 libera -> 172.16.8.0 / 22
La prima sottorete libera (172.16.8.0 / 22) viene suddivisa in otto sottoreti da 128 host ciascuna
172.16.000010 00 . 0 xxxxxxx / 25 LAN 3 -> 172.16.8.0 / 25
172.16.000010 00 . 1 xxxxxxx / 25 LAN 4 -> 172.16.8.128 / 25
172.16.000010 01 . 0 xxxxxxx / 25 lbera -> 172.16.9.0 / 25
172.16.000010 01 . 1 xxxxxxx / 25 lbera -> 172.16.9.128 / 25
172.16.000010 10 . 0 xxxxxxx / 25 lbera -> 172.16.10.0 / 25
172.16.000010 10 . 1 xxxxxxx / 25 lbera -> 172.16.10.128 / 25
172.16.000010 11 . 0 xxxxxxx / 25 lbera -> 172.16.11.0 / 25
172.16.000010 11 . 1 xxxxxxx / 25 lbera -> 172.16.11.128 / 25
La prima sottorete libera (172.16.000010 01 . 0 xxxxxxx / 25), in grado di indirizzare fino a 128 host, viene
suddivisa in tantissime (32) sottoreti da 4 host :
172.16.9 . 000000 xx / 30 PPP 1 -> 172.16.9.0 / 30
172.16.9 . 000001 xx / 30 PPP 2 -> 172.16.9.4 / 30
172.16.9 . 000010 xx / 30 PPP 3 -> 172.16.9.8 / 30
172.16.9 . 000011 xx / 30 PPP 4 -> 172.16.9.12 / 30
Le quattro sottoreti successive possono essere riaggregate in un unica sottorete da 16 host, le 8 successive in una
sottorete da 32 host e le ultime 16 in una sottore te da 64
pag 61
Sistemi - Classe Quinta robertomana.it
RETI
Protocollo IP
Internet Protocol, standardizzato nel 1981 ed utilizzato come standard all'interno di Internet,, nasce per disaccoppiare
le applicazioni software che devono comunicare tra loro (es browser e web server) dalla struttura hardware delle reti
di trasmissione, creando di fatto una interfaccia di trasmissione del tutto indipendente dal sottostante substrato di rete,
che può essere realizzato con le tecnologie più disparate (Ethernet, FDDI, Frame Relay, ISDN).
Scopo primo del protocollo IP è quello di instradare i pacchetti attraverso una rete geografica (a commutazione
di pacchetto).
Caratteristiche fondamentali:
Universal Addressing : ogni host della rete è identificato univocamente da un indirizzo IP.
Best Effort : La comunicazione è di tipo connectionless. Viene assicurato il massimo impegno nella
trasmissione, ma non c'è garanzia né sul successo della trasmissione, né sul tempo di consegna.
Routed Protocol cioè in grado di gestire l'instradamento fra reti diverse mediante l‟utilizzo di indirizzi
gerarchici (protocollo instradabile). I dispositivi intermedi che consentono l'instradamento dei pacchetti sono i
Router. L‟instradamento è gestito in modo decentrato (non centralizzato), facilitando così l'interconnessione fra
reti diverse.. Altri Routed Protocol abbastanza conosciuti sono IPX/SPX utilizzato dalle reti Novell e Apple
Talk utilizzato nelle reti proprietarie Apple. NetBEUI è invece un piccolo protocollo presente nelle versioni più
datate di Windows che copre i livelli 3 e 4 ISO OSI ma che non gestisce l‟instradamento in quanto utilizza
indirizzi non gerarchici e dunque invia sempre a tutti. L‟instradamento è legato alla gerarchia degli indirizzi.
I pacchetti di livello 3 (PDU completo) sono di solito indicati come datagrams. IP aggiunge ad ogni pacchetto
la propria intestazione senza occuparsi dei dati contenuti all'interno del pacchetto
Intestazione di un pacchetto IP
IP Datagram è il nome di una PDU IP completa, costituita da: Intestazione + Pacchetto Dati
La dimensione massima complessiva consentita all'IP Datagram è di 65.535 bytes.
L'Header ha una dimensione variabile con un minimo di 20 bytes [5 Double Words] e presenta i seguenti campi :
Identification [16 bit] Codice di identificazione del pacchetto corrente. Se il pacchetto viene suddiviso in
frammenti, ogni frammento presenta lo stesso valore di Identification
Fragment Flags [3 bit] 1° bit unused. Il bit 2 è invece utilizzato nel processo di MTU Discovery.
2° bit DF (Don't Fragment) Il pacchetto non può essere frammentato dai router
3° bit MF (More Fragments) Non si tratta dell'ultimo frammento.
Fragment Offset [13 bit] Spiazzamento del frammento all'interno del datagram originale.
Settato dai Router che eseguono la frammentazione.
pag 62
Sistemi - Classe Quinta robertomana.it
RETI
Time To Live [8 bit] TTL Contatore decrementato ogni volta che il Datagram attraversa un Router
Quando arriva a zero il Datagram viene scartato per evitare che continui a vagare per
la rete senza fine. Utilizzato da esempio dall‟utility traceroute.
Ogni pacchetto non può attraversare più di 255 Router (Windows usa un default di 64)
Protocol [8 bit] Protocollo di livello superiore che ha richiesto la trasmissione
1=ICMP, 2=IGMP (gestione del multicast), 6=TCP, 17=UDP
Detto anche SAP Service Access Point
Header Checksum [16 bit] Check Sum per l'integrità della sola Header (non dei dati, controllati da TCP).
IP Options
Oltre a queste 5 Double Words obbligatorie, può esserci un ulteriore parametro, detto IP Options, di dimensioni
variabili, riservato per eventuali altri parametri opzionali, come ad esempio informazioni relative alla sicurezza.
Un ultimo campo PADDING contiene bit inutilizzati in modo da allineare le IP-Options a multipli di Double Word.
Nota: A meno di indicazioni diverse da parte dei livelli superiori, Il campo TTL (Time To Live) viene impostato ad
un valore di default (128) dal protocollo IP. Ogni volta che un router decrementa il valore di TTL, questo implica il
ricalcolo del checksum da inserire all'interno dell'header IP.
Frammentazione
Con la sigla MTU (Maximum Transmission Unit), si indica la dimensione massima del payload (campo dati) che un
link di livello 2 è in grado di trasmettere, corrispondente quindi alla dimensione massima dei PDU IP
Ad esempio nelle reti Ethernet, indipendentemente da topologia e mezzo trasmissivo in uso, il protocollo MAC
definisce una MTU di 1500 Bytes. Quindi gli Switch Ethernet sono progettati per bufferizzare al max 1500 Bytes.
Altri protocolli di livello Data Link possono definire MTU diverse, da un min di 128 Bytes ad un max di 10 kB
La segmentazione dei dati viene eseguita dal livello 4 che però, non ha visibilità di tutti i link da attraversare per il
raggiungimento della destinazione finale. Se genera segmenti troppo piccoli, aggiungendo le intestazioni IP e MAC,
si ottiene una elevata inefficienza di trasmissione (vengono trasmesse solo intestazioni). Se invece genera pacchetti
troppo grandi, il pacchetto IP potrebbe superare su qualche link il relativo MTU e non essere trasmesso oltre.
Sulla base di queste considerazioni, nell‟intestazione IP sono stati aggiunti alcuni campi (tutta la 2° double word)
relativi ad una eventuale frammentazione del pacchetto, in modo da consentire ai router di poter frammentare
eventuali pacchetti troppo grandi rispetto al link successivo. In ogni caso migliore è la segmentazione eseguita dal
livello 4, e minore sarà l'appesantimento dei router con conseguente maggiore velocità di trasmissione.
A tal fine IP assegna ad ogni pacchetto un codice identificativo a 16 bit, che potrebbe essere semplicemente il
numero di segmento assegnato dal livello 4, oppure un codice diverso gestito completamente dal livello 3. Scopo di
questo codice identificativo è quello di consentire al destinatario di rimettere insieme i frammenti eventualmente
creati dai router (su tutti i frammenti viene duplicato lo stesso codice identificativo). In caso di frammentazione il
router provvederà a copiare su tutti i frammenti l'intestazione originale IP, settando su ogni frammento il Fragment
Offset, cioè spiazzamento del frammento rispetto al pacchetto originale. Sul primo frammento questo campo
assume il valore zero. Per ogni frammento vengono quindi settati i relativi Fragment Flags.
La frammentazione viene eseguita sempre a multipli di 8 bytes, e con il flag More Fragments sempre settato a 1.
Soltanto l'ultimo frammento avrà More Fragments = 0. Il livello IP di destinazione riassembla in un apposito buffer
tutti i frammenti con lo stesso Identification Number, per poi passare il pacchetto completo al livello 4. La lunghezza
dell'ultimo frammento sarà calcolata automaticamente sulla base della lunghezza dell'intero pacchetto.
pag 63
Sistemi - Classe Quinta robertomana.it
RETI
Protocollo ICMP
Internet Control Message Protocol
Protocollo per la diagnostica di rete. Il protocollo ICMP è parte integrante del protocollo IP e viene pertanto
automaticamente installato insieme al protocollo IP in tutti i Sistemi Operativi. Disponibili anche sui dispositivi di
rete di livello 3 che utilizzano IP (ad esempio i router). Pur essendo sempre di livello 3, si colloca però al di sopra di
IP rispetto al quale rappresenta una Entry Point, al pari di TCP e UDP. I pacchetti ICMP vengono normalmente
incapsulati all'interno del datagram IP allo stesso modo dei segmenti di livello 4.
I messaggi ICMP sono costituiti da :
un codice a 8 bit di identificazione del messaggio
un codice a 8 bit di dettaglio del messaggio
un CheckSum a 16 bit
per un totale di 32 bit, più eventuali dati aggiuntivi interni al payload.
E
E
E
E
Sintassi:
ping destinazione dove destinazione può essere una URL oppure un indirizzo IP. Es:
ping mmserver
ping 10.0.0.182
ping www.virgilio.it
pag 64
Sistemi - Classe Quinta robertomana.it
RETI
Messaaggi di Errore
Alcuni messaggi ICMP (quelli indicati in figura con la lettera E) sono messaggi di errore che un router può
utilizzare per avvisare il mittente riguardo ad un eventuale errore verificatosi durante l‟instradamento di un pacchetto
IP. Questi messaggi contengono, oltre al codice dell‟errore, anche le generalità (intestazione IP) del router su cui
l‟errore si è verificato più eventuali informazioni aggiuntive. Il significato di questi messaggi è il seguente :
Note:
Lanciato senza parametri il comando ping fornisce l'insieme di tutte le possibili funzionalità
Il comando PING è il modo più veloce per verificare il funzionamento della scheda di rete. Se il comando
PING 127.0.0.1 non fornisce risposta significa che la scheda non funziona.
Ovviamente il PING, essendo un comando di livello 3, rispetta tutte le regole dell‟indirizzamento IP.
Ad es il PING verso una macchina collegata allo stesso hub ma su una rete logica differente ma non va a buon
fine.
In Windows XP per
disabilitare una macchina
a rispondere ai ping
occorre aprire Pannello
di Controllo / Windows
Firewall e selezionare la
sottofinestra Avanzate /
Impostazioni ICMP.
In Windows 7 sempre da
Windows Firewall
selezionare Impostazioni
Avanzate / Regole di
Connessione in Entrata.
Anche antivirus / firewall
consentono di disabilitare i
ping
pag 65
Sistemi - Classe Quinta robertomana.it
RETI
Anch'esso rappresenta una interfaccia utente a ICMP. Suo scopo è sempre quello di verificare il collegamento fra due
nodi, fornendo informazioni su ogni macchina intermedia (router) attraversata lungo il percorso.
Il comando TRACERT inizia inviando un messaggio Echo Request all'IP Destinazione impostando TTL = 1.
Il primo router che riceve il pacchetto decrementa TTL e scarta il pacchetto inviando al sorgente un messaggio di tipo
Time Exceeded, contenente nell'intestazione IP le generalità del router stesso che viene pertanto identificato
Se il sistema che ha risposto non è il destinatario, il sorgente invia un nuovo messaggio Echo Request ma con TTL
incrementato di uno rispetto al passo precedente, in modo da individuare il dispositivo successivo lungo il percorso.
Il processo si ripete fino al raggiungimento del destinatario (o fino al superamento del TTL massimo).
Se sul percorso si incontra un router disabilitato a rispondere alle richieste ICMP, tale router verrà identificato con
un * senza però interrompere il processo. Se però il router blocca i messaggi ICMP senza inoltrarli, allora il
processo viene naturalmente interrotto
RIP v2 (1998)
I due principali miglioramenti introdotti sono:
Indirizzamento classless, nel senso che con le entry di routing dinamico viene inviata anche l'informazione
relativa alla subnet mask. In questo modo le diverse sottoreti di una stessa rete possono utilizzare subnet
mask diverse (VLSM) e possono essere fisicamente dislocate in modo non contiguo
I messaggi vengono gestiti mediante un meccanismo di autenticazione in cui ogni router, mediante una
password, “firma” i pacchetti con le proprie generalità (in chiaro o in modo criptato md5).
pag 67
Sistemi - Classe Quinta robertomana.it
RETI
I principali limiti sono sostanzialmente gli stessi tre di RIP v1, cioè:
Notevole overhead. I continui messaggi di update (ogni 30 sec) consumano banda anche con rete stabile.
Tempi di convergenza molto lenti (stimato intorno ai 180 sec, tempo degli Holddown Timer)
Metrica poco accurata, Non raggiunge reti posizionate oltre i 15 router
EIGRP = Enhanced IGRP è una versione avanzata di IGRP, di tipo ClassLess. Utilizza un apposito protocollo di
livello 4 (proprietario) detto RTP Reliable Transport Protocol in grado di operare su qualsiasi protocollo di livello 3.
RTP può essere utilizzato sia in modalità Reliable (affidabile, TCP-like) sia in modalità Best-Effort (UDP-Like).
OSPF Open Shortest Path First (Ricerca del Best Path) RFC 2328
Protocollo di tipo Link State (cioè che memorizza lo stato di tutti i link). Usa una metodologia abbastanza diversa
rispetto ai Distance Vector. Ogni router mantiene un complesso database relativo all'intera topologia di rete e, sulla
base di questo database, crea un albero con se stesso come radice mentre le varie reti destinatarie rappresentano le
foglie dell'albero. Il costo di un link tiene conto unicamente del Bandwidh (velocità del link) e viene calcolato come
valore intero 108/Bandwidh. I link con velocità > 108 hanno tutti lo stesso costo. Un apposito algoritmo (SPF
shortest path first o algoritmo di Dijkstra), per ogni possibile destinazione, valuta la Shortest Path all'interno
dell'albero e la copia all‟interno della Routing Table. Ogni router, tramite un HELLO Protocol, scambia
continuamente messaggi con i router direttamente connessi, stabilendo con loro una tabella di ADIACENZE.
Svantaggi: Richiede una procedura di configurazione più complessa ed un pesante scambio di informazioni iniziali.
Vantaggi Routing Table minima ed ottimizzata, Tempi di convergenza estremamente rapidi; Inoltre consente di
suddividere la rete in AREE indipendenti (gerarchiche) con i messaggi di update inviati soltanto all‟interno dell‟area
interessata. Dunque si presta particolarmente bene per reti di grandi dimensioni strutturate in modo gerarchico.
pag 68
Sistemi - Classe Quinta robertomana.it
RETI
R1 R2
Le quattro reti di classe B 170.16.X.0 indicate in figura possono essere viste come appartenenti ad un gruppo di 8 reti
di classe B aventi i seguenti indirizzi:
170.16.00000 000.0 /24 libera
170.16.00000 001.0 /24 LAN 1 170.16.1.0 /24
170.16.00000 010.0 /24 LAN 2 170.16.2.0 /24
170.16.00000 011.0 /24 LAN 3 170.16.3.0 /24
170.16.00000 100.0 /24 LAN 4 170.16.4.0 /24
170.16.00000 101.0 /24 libera
170.16.00000 110.0 /24 libera
170.16.00000 111.0 /24 libera
I protocolli di routing di tipo classless, prima di inviare la loro tabella di routing ai router vicini, eseguono
automaticamente una aggregazione delle entry simili, raggruppando le varie sottoreti simili in una unica sottorete più
grande in grado di comprenderle tutte.
Nel caso in figura il router R2 potrebbe inviare ai successivi router di destra la seguente entry riassuntiva:
170.16.00000 000.0 /21
In cui le 8 reti precedenti sono state aggregate in una unica con subnet meno profonda (supernetting).
Questa aggregazione limita però il riutilizzo delle 4 sottoreti libere che potranno essere utilizzate soltanto a valle del
router R2 perché altrimenti, in caso di pacchetti sul router R2 destinati ad una di queste sottoreti, andrebbero a buon
fine sia la entry relativa al percorso aggregato di sinistra, sia la entry specifica relativa alla reale sottorete di dstra.
In alcuni router classless, in caso di successo di più entry, il primo parametro di discriminazione è la
profondità della subnet: viene scelta per prima la entry con subnet più profonda.
In alcuni router (es tutti i router CISCO) l‟aggregazione automatica può essere disabilitata
pag 69
Sistemi - Classe Quinta robertomana.it
RETI
LIVELLO 4 : Trasporto
Mentre il Livello 3 è responsabile del trasferimento dei pacchetti mediante un servizio Best Effort,
il Livello 4 si pone tre obiettivi principali:
Stabilire e mantenere una Connessione fra i due End Point
Eseguire la Segmentazione dei dati nel numero di segmenti necessari, in modo da non monopolizzare il
canale di trasmissione e ritrasmettere soltanto i segmenti eventualmente corrotti.
Garantire una Trasmissione Affidabile fra due End Point verificando che ogni segmento sia effettivamente
arrivato a destinazione senza errori
Lo stack di protocolli TCTP/IP prevede a livello 4 due soli protocolli:
TCP = Transport Control Protocol => Affidabilità
UDP = User Datagram Protocol => Semplicità e Velocità
E‟ riportato di seguito un elenco delle Principali Well Known Port (RFC 1700)
0 Reserved
20 FTP (Trasferimento Dati)
21 FTP (Controllo)
22 SSH (Secure Shell = Versione cifrata di Telnet)
23 Telnet
25 SMTP
53 DNS (Domain Name Server)
67 BOOTP_S (Server) e DHCP_S
68 BOOTP_C (Client) e DHCP_C
69 TFTP (Trivial File Transfer su UDP)
70 Gopher (vecchia versione di WWW)
80 HTTP
110 POP3 (versione 3) 109 POP2 (versione 2)
Non tutte le well known port sono assegnate, ma anche quelle libere non devono essere utilizzate all‟interno di
applicazioni utente in quanto probabilmente verranno assegnate in futuro a seguito di una procedura formale.
Nonostante le porte TCP e UDP siano indipendenti fra loro, si è scelto di non avere Well Known Port sovrapposte, in
modo da semplificare la gestione di servizi che possono essere chiamati sia via UDP sia via TCP.
In pratica il numero di porta è assoluto, cioè indipendente da TCP o UDP.
Porte effimere
Viceversa quando un client si connette ad un server, deve sì conoscere la porta di ascolto del server, ma non è affatto
necessario che il server (né nessun altro) conosca la porta utilizzata dal client. Il client, in corrispondenza della
richiesta di connessione, richiede la prima porta libera al Sistema Operativo e, insieme alla richiesta, invia al server il
proprio numero di porta in modo che il server possa rispondergli.
Le porte dalla 1024 in avanti sono dette porte effimere (ephemeral ports dette anche porte dinamiche in
contrapposizione alle porte statiche precedenti), cioè porte che vengono assegnate automaticamente dal Sistema
Operativo al momento della creazione della connessione e che valgono soltanto per la durata della connessione
(da cui il nome di porte effimere). L'unico requisito che deve essere soddisfatto è che l‟assegnazione sia univoca.
pag 71
Sistemi - Classe Quinta robertomana.it
RETI
Server UDP
UDP è un protocollo di tipo Connection Less, cioè senza connessione, in cui qualunque client, in ogni momento, può
richiedere dati al server (secondo un formato stabilito dai protocolli di liv superiore), indicando indirizzo IP e porta di
ascolto del server a cui intende collegarsi, e anche le proprie coordinate in modo che il server possa poi rispondere. Il
server risponde inviando i dati richiesti e ritornando in una stato di attesa di nuove richieste dati. I Server di questo
tipo si dicono Server Iterativi, in cui esiste un unico Thread di ascolto che gestisce una singola richiesta alla volta.
Server TCP
TCP è invece un protocollo Connection Oriented, cioè in cui client e server, prima di iniziare la comunicazione vera
e propria, devono stabilire una connessione fra loro. Dunque un server TCP non si trova in attesa di richieste dati, ma
esiste un cosiddetto main thread perennemente in attesa di richieste di connessione. In corrispondenza di una
richiesta di connessione da parte di un client, il main Thread Server si clona, in modo che il clone possa asservire alla
richiesta di connessione, mentre il main thread rimane in ascolto per eventuali ulteriori richieste di connessione.
I Server di questo tipo si dicono Server Concorrenti, in cui i vari thread clonati possono servire più connessioni
contemporaneamente. Una volta stabilita la connessione, client e server possono scambiarsi le informazioni senza
dover ogni volta specificare le proprie coordinate e quelle del destinatario.
Il protocollo UDP
UDP è sostanzialmente una semplice interfaccia applicativa al protocollo IP, rispetto al quale, mediante una piccola
intestazione, aggiunge l‟informazione relativa alle porte di comunicazione, cioè la porta utilizzata dal protocollo
di livello 7 del sorgente e la porta utilizzata dal protocollo di livello 7 del destinatario. Caratteristiche:
Protocollo molto semplice e veloce, con limitato overhead.
Protocollo Connectionless: non stabilisce nessuna connessione tra origine e destinazione.
Fornisce un servizio Best Effort, cioè non garantisce la consegna / non duplicazione dei pacchetti. In pratica
UDP non mantiene lo stato (nessuna notifica di ricevimento, timeout, ritrasmissioni, etc). Tutti i controlli
dovranno eventualmente essere eseguiti dai livelli superiori.
Non esegue segmentazione. I datagram vengono passati ad IP esattamente come sono. Se sono troppo grandi
sarà IP a provvedere alla loro frammentazione, oppure dovranno essere i livelli superiori ad occuparsene.
E‟ di tipo byte oriented Trasmette cioè vettori di bytes, detti stream, (esattamente come TCP)
Velocità e semplicità di UDP vengono sfruttate in tutti i casi in cui la velocità è più importante dell'affidabilità,
vale a dire in tutte le trasmissioni Real Time come stream audio / video.
Intestazione UDP
L'header UDP consiste di 4 campi di 2 bytes ciascuno:
UDP Source Port
UDP Destination Port
UDP Length = Dimensione complessiva del Datagram UDP (header + payload).
UDP CheckSum = Somma in complemento a 1di tutte le word relative all'intero segmento UDP (Header + Payload).
Somma in complemento a 1 significa che l'intera somma viene completamente invertita. In questo modo, quando
il ricevitore eseguirà lo stesso checksum sui dati ricevuti, facendo la somma del suo checksum col cheksum
complementare ricevuto, otterrà come risultato, in assenza di errori, tutti uno.
UDP Source Port può essere zero. Indica una comunicazione monodirezionale.
UDP CheckSum può essere zero. Significa che il controllo errori è disattivato.
Nota: Ci si potrebbe chiedere perché di nuovo un campo checksum, già presente nelle intestazioni di livello 2. Questo nuovo
checksum rappresenta una ulteriore garanzia sulla trasmissione nel caso in cui il pacchetto si trovi ad attraversare un link di
livello 2 che non esegua il checksum. La destinazione UDP consulta il checksum e, a seconda delle implementazioni, scarta le
PDU non valide o le passa al livello superiore con un warning.
pag 72
Sistemi - Classe Quinta robertomana.it
RETI
SOCKET
Da un punto di vista della gerarchia ISO OSI, i socket rappresentano un insieme di primitive che i SO mettono a
disposizione del programmatore per poter accedere ai protocolli di rete di livello 4 gestiti dal SO stesso. I socket
consentono al programmatore di “passare” dei messaggi di rete al SO che provvederà ad immetterli sul canale fisico.
Da un punto di vista logico un SOCKET rappresenta un canale di comunicazione che consente ad un End Point
di livello 4 di comunicare con un altro End Point remoto sempre di livello 4.
Un End Point è rappresentato da una applicazione di rete (o istanza di applicazione) in esecuzione su un certo
host. Un End Point è caratterizzata da :
Un Indirizzo IP
Un Numero di Porta espressi mediante la caratteristica notazione: IndirizzoIP : PortNumber
L'origine dei socket risale al 1983, introdotti insieme al primo standard TCP BSD 4.2. La flessibilità e la
genericità dei socket consentono di utilizzarli non solo con il protocollo TCP/IP (con cui sono nati), ma con le
più disparate famiglie di protocolli di livello 3 / 4, come ad es IPX/SPX e/o Appletalk.
Un socket rappresenta pertanto un Entry Point Standard a qualsiasi protocollo di Livello 4
Comunicazione TCP
Questa volta il client, prima di inziare ad inviare i dati, deve connettersi al server u mediante il metodo Connect.
Il server, in attesa di richieste di connessione, accetta le richieste di connessione mediate il metodo Accept:
clientSock.Connect(remoteEndPoint)
Dim conn As Socket = serverSock.Accept()
clientSock.Send(buffer, length, flags,)
conn.Receive(buffer, MAX_BUFFER_LENGHT, flags)
pag 73
Sistemi - Classe Quinta robertomana.it
RETI
Protocollo TCP
1. Segmentazione dei dati Segmenta i messaggi provenienti dal livello Applicativo in segmenti di dimensioni
opportune, aggiungendo ad ognuno l'intestazione TCP contenente il numero di sequenza di ciascun
segmento. In questo modo il destinatario potrà riordinare i dati e scartare i duplicati.
2. Gestione della Connessione TCP prima di iniziare la comunicazione stabilisce una connessione End To End
con l‟host remoto e i segmenti vengono poi spediti sulla connessione. Si parla di circuito virtuale tra i due EP
3. Trasmissione affidabile. TCP controlla la corretta ricezione dei dati senza perdite o duplicazioni e provvede
al riordinamento. Algoritmi di controllo molto pesanti.
Byte Oriented: Gestisce il flusso come sequenza continua di byte, e non come sequenza di pacchetti.
Gestisce una comunicazione full duplex fra due End System. Non riguarda i router che operano a livello IP.
SYN Sequence Number [4 Bytes] Posizione (in bytes) del segmento all'interno del flusso. TCP è orientato al Byte,
per cui i segmenti non sono numerati sequenzialmente, ma, nell'intestazione di ogni segmento si riporta l‟offset del
primo byte del segmento. In corrispondenza della connessione viene generato dal trasmettitore un Sequence Number
iniziale casuale (in modo da garantire la migliore sincronizzazione fra Tx e Rx) inviato con il flag SYN settato a uno.
ACK Ackowledgment Number [4 Bytes] Questo campo viene impostato dal Rx quando risponde al msg ricevuto da
Tx. Indica lo spiazzamento (in bytes) del prossimo segmento che Rx si aspetta di ricevere (che in pratica diventerà il
Sequence Number del prossimo segmento). Rx utilizza questo campo come risposta ai segmenti ricevuti da TX,
mentre Tx lo utilizza come risposta ai segmenti ricevuti da Rx.
HLEN [4 bit] Lunghezza espressa in double word (32 bit) dell'intestazione TCP. Questo campo viene talvolta
indicato come Data Offset, in quanto indica anche il punto di inizio del payload all'interno del pacchetto.
Control [6 bit] Sono sei bit di controllo che possono avere i valori TRUE / FALSE
SYN Synchronize Sequence Number. Utilizzato in fase di creazione della connessione.
FIN Ultimo segmento. Utilizzato in fase di chiusura della connessione
ACK Se TRUE indica la validità dell' Ackowledgment Number. Utilizzato in fase di scambio dati
RST Se TRUE indica una richiesta di reset della connessione
URG Se TRUE indica che nel segmento ci sono uno o più bytes urgenti (Urgent Mode) (CTRL C)
Il campo Urgent Pointer diventa significativo
PSH Se TRUE indica che il segmento attuale necessita di una azione di push (???)
Reserved [6 bit] Riservato per usi futuri. Attualmente bit tutti a zero.
pag 74
Sistemi - Classe Quinta robertomana.it
RETI
Window Size [2 Bytes] Legato al meccanismo delle Sliding Windows. Rx utilizza questo campo per avvisare Tx su
quanti bytes è in grado di accettare consecutivamente all‟interno del proprio buffer di ricezione. Tx, spediti
questi bytes, si fermerà in attesa di un ack. Questo valore cambia dinamicamente diminuendo con la ricezione
dei dati ed aumentando con la lettura dei dati da parte dell'applicazione. Se diventa 0 significa che il buffer di
Rx è pieno e non verranno accettati altri dati. Tx utilizza questo campo per indicare a Rx quanti dati spedirà
ancora prima di fermarsi in attesa di un ACK.
Urgent Pointer [2 Bytes] Punta al primo Byte del payload che segue i bytes della sezione Urgent (che dunque sarà
posizionata il testa al payload). I bytes Urgent, generati ad esempio in corrispondenza del CTRL+C, vengono
consegnati ad Rx anche se questo ha il buffer di ricezione già pieno, scavalcando in pratica gli altri dati.
CheckSum [2 Bytes] Somma in complemento a 1di tutte le word relative all'intero segmento TCP
(Header + Payload) esattamente come per UDP.
TCP Options
Oltre a queste 5 Double Words obbligatorie, l‟intestazione TCP può anche contenere le cosiddette TCP Options, di
dimensioni variabili, ed utilizzate soltanto in fase di connessione. Un ultimo campo PADDING contiene bit
inutilizzati in modo da allineare le IP-Options a multipli di Double Word.
Le TCP Options sono espresse come stringa di lunghezza variabile, nel formato:
Codice Opzione [1 Byte]
Lunghezza della stringa [1 Byte]
Dati relativi all'opzione (di lunghezza pari a quella dichiarata nel campo precedente).
Normalmente vengono utilizzate le seguenti opzioni:
MSS Maximum Segment Size Con questa opzione, in fase di connessione, ciascun host annuncia all'altro le
dimensioni massime del segmento (TCP payload) che vorrebbe accettare in ricezione. Il default utilizzato da
Windows è 1024 Bytes. Il default utilizzato da Linux è definito in una costante facilmente modificabile con
default pari a 512 Bytes. Il valore massimo possibile (spesso impostato in Linux) è 1460 Bytes.
Windows Scale = Espansione del Window Size. Alcuni tipi di connessione, come quelle ad alta velocità (sopra i 45
Mbit / sec) e quelle che hanno tempi di trasporto piuttosto lunghi (come i satelliti), richiedono una finestra più
grande per poter ottimizzare la trasmissione. L'opzione imposta un fattore di scala da applicare al Window Size
espresso come numeri di bit secondo cui spostare a sinistra il valore della Window Size attaule. Un valore 3
significa moltiplicare per 23 = 8 il valore del max Window Size (65000 x 8).
Timestamp = Opzione necessaria per le connessioni ad alta velocità per evitare possibili corruzioni dei dati dovute a
pacchetti perduti che poi riappaiono. Insieme alla precedente rappresenta le cosiddette “Long Fast Pipe Options”.
SACK = Selective Ackowledgment, utilizzato nelle versioni più recenti di TCP per il controllo della congestione.
Il protocollo IP a livello 3 è in grado di gestire pacchetti grandi fino a 65535 bytes (16 bit). Idem per IPv6
Il limite fisico sulla dimensione dei “pacchetti” è normalmente stabilito dal livello 2. Ad esempio nel caso di
Ethernet il payload di livello 2 deve avere una dimensione massima pari a 1500 bytes. Questa dimensione
massima è detta MTU (Maximum Transfer Unit) e dipende esclusivamente dal livello 2.
Il livello 4 dunque dovrà eseguire una segmentazione di dimensioni adeguate. Nel caso di Ethernet i segmenti
TCP hanno una dimensione massima pari a 1460 bytes, (+ 20 bytes TCP header + 20 bytes IP header = 1500)
Il livello 4 però, nel momento in cui deve iniziare la trasmissione di uno stream, non ha la visibilità di tutti i
link da attraversare e, in tal senso, può assumere due diverse strategie:
1) MTU del Link direttamente collegato. I segmenti vengono creati di dimensione pari a quella dell'MTU del Link
direttamente collegato (di solito Ethernet), lasciando ai router il compito di eventuali frammentazioni dei pacchetti nel caso in
cui risulti necessario l‟attraversamento di link con valori inferiori di MTU. L'MTU più critica fra due host è detta PATH
MTU o MSS Maximum Segment Size ed quella che determina l‟effettiva dimensione massima del segmento
In realtà Windows uitilizza una dimensione di segmento fissa pari a 1024 bytes
pag 75
Sistemi - Classe Quinta robertomana.it
RETI
2) MTU Discovery Le specifiche di TCP prevedono anche un meccanismo di determinazione automatica della
massima dimensione del segmento trasmissibile su una certa tratta. Il sorgente crea inizialmente un segmento di
dimensione pari alla dimensione dell‟MTU del proprio link (esattamente come nel caso precedente), impostando
però il bit Don't Fragment al valore 1, in modo da inibire una eventuale frammentazione da parte dei router.
Se un router intermedio ad un certo punto deve inoltrare il datagram su un link con MTU inferiore, non potendo
procedere alla frammentazione a causa del flag DF, scarterà il pacchetto ritornando al sorgente un messaggio
ICMP con il seguente codice :
“destination unreachable, fragmentation needed but DF bit set”
dichiarando però l'MTU del link critico. A questo punto l‟end point sorgente, ricevuto il messaggio ICMP con il
valore di MTU, registra in una tabella interna l'MTU critico relativo a quella destinazione e prova a rimandare un
nuovo messaggio di dimensioni adatte al nuovo MTU. Ovviamente il processo potrebbe ripetersi più volte, fino
all'identificazione dell'MTU critico (o MSS) per un certo destinatario. In tal modo ogni end system si mantiene
dinamicamente una tabella con le associazioni
Destinazione IP / MTU Critico
sulla base della quale potrà, per destinazioni note, eseguire da subito una corretta segmentazione. Il limite di
questo approccio sta nel fatto che talvolta i router o firewall non gestiscono o bloccano i messaggi ICMP.
Host A Host B
LISTEN
SYN1
SIN_SENT
ACK1 + SIN2
SIN_RECEIVED
ACK2
ESTABLISHED
ESTABLISHED
2) Il Server ricevuto il segmento SYN risponde con un segmento SYN ACK contenente sia la conferma (ACK) alla
richiesta del Client, sia (meccanismo del piggybacking) i dati relativi alla propria configurazione, cioè:
pag 76
Sistemi - Classe Quinta robertomana.it
RETI
FIN1
ACK1
FIN_WAIT
CLOSE_WAIT
TIME_WAIT FIN2
ACK2
CLOSED CLOSED
pag 77
Sistemi - Classe Quinta robertomana.it
RETI
pag 78
Sistemi - Classe Quinta robertomana.it
RETI
Il ricevitore invia un ACK per ogni segmento ricevuto, indicando ogni volta il numero di sequenza
dell'ultimo segmento ricevuto correttamente.
In corrispondenza di ogni ACK ricevuto, il trasmettitore fa scorrere la finestra di una posizione in avanti,
ovvero considera trasmissibile il segmento successivo. Ad es, con riferimento alla figura, in cui sono già
arrivati gli ACK 1 – 4, in corrispondenza dell'ACK 5 diventerà trasmissibile il segmento 15.
pag 79
Sistemi - Classe Quinta robertomana.it
RETI
Con riferimento alla figura precedente si supponga che il segmento 5 non sia arrivato ad Rx (o sia arrivato corrotto).
Tx non riceverà mai ACK5, ma nel frattempo avrà già inviato tutti i segmenti successivi fino a SEG14.
Rx, in corrispondenza della ricezione dei vari segmenti successivi a SEG5, provvederà a memorizzarli all'interno del
proprio buffer di ricezione ed ogni volta risponderà con ACK4 (l'ultimo segmento ricevuto correttamente).
Allo scadere del timeout di SEG5, Tx provvederà a ritrasmettere SEG5, fermandosi in attesa di ACK5.
Ricevuto SEG5, Rx restituisce direttamente ACK14 (numero dell'ultimo segmento ricevuto correttamente ed in
sequenza), in corrispondenza del quale Tx avanza la Sliding Window e ricomincia a trasmettere da SEG15.
Supponendo invece che il segmento 5 sia arrivato correttamente, ma che sia invece andato perso ACK5, questa
situazione non crea nessun problema in quanto Rx invierà successivamente ACK6, ACK7, etc in corrispondenza dei
quali Tx capisce che anche SEG5 è stato ricevuto correttamente e fa scorrere opportunamente le finestre.
Protocollo Go Back N
Questa implementazione prevede che il Ricevitore non gestisca una Finestra di ricezione, ma scarti ogni segmento
ricevuto fuori sequenza o errato. Con riferimento al caso precedente, se SEG5 va perso, Rx scarterà pure i segmenti
successivi. Allo scadere del timeout di SEG5, Tx provvede a ritrasmettere l'intera finestra a partire dal limite inferiore
della finestra stessa (in pratica Va Indietro di N). Rispetto al precedente algoritmo di Selective Repeat, il Go Back N:
E‟ più semplice da implementare
E‟ meno efficiente.
Nelle prime versioni TCP adottava come algoritmo di controllo del flusso GoBackN, cioè nel momento in cui un
Retransmission Timer andava in Timeout, anziché ritrasmettere il solo segmento e poi rimanere in attesa dell‟ACK,
veniva ritrasmessa l'intera finestra corrente (standard 4.2 BSD).
La motivazione che stava dietro a questa scelta era che, se un segmento era andato perso, era abbastanza probabile
che anche qualcuno dei segmenti successivi poteva essere andato perso, per cui la ritrasmissione di tutti i segmenti in
un tempo morto, avrebbe evitato ulteriori eventuali arresti successivi. Se invece tutti i segmenti successivi erano già
stati ricevuti correttamente, la loro ritrasmissione non creava comunque problemi in quanto venivano semplicemente
scartati da Rx che li riconosceva come duplicati.
pag 80
Sistemi - Classe Quinta robertomana.it
RETI
In realtà però, se la perdita di un segmento è dovuta alla presenza di un router intermedio poco prestante che
non riesce a sostenere il carico e sta iniziando a scartare pacchetti, se l'host continua a ritrasmettere tutti i
pacchetti, le prestazioni crollano e si ha in pratica una congestione dell'intera rete (Congestion Collapse).
Nelle versioni successive (standard 4.3 BSD) TCP non solo ha abbandonato GoBackN a favore di Selective Repeat,
ma sono stati introdotti 3 algoritmi di controllo della congestione che operano congiuntamente, mirati ad evitare
la congestione dei router e quindi della rete. La tabella riporta le varie evoluzioni del protocollo TCP :
QoS
TCP e UDP convivono male su uno stesso canale, in quanto TCP adatta il suo rate trasmissivo in base allo stato della
linea, mentre UDP tende ad utilizzare tutta la banda disponibile, per cui può portare alla congestione di TCP. Questo
è però indispensabile per la natura stessa di UDP che deve garantire ritardi minimi. Ad esempio nel caso dei pacchetti
IP Phone per garantire una buona qualità è richiesto da specifica un ritardo massimo complessivo pari a 150 msec.
Potrebbe però capitare che uno streaming UDP (costituito in genere da pacchetti di piccole dimensioni) entri in
competizione con un file transfer di grandi dimensioni, con i pacchetti UDP costretti a pesanti attese sui router
intermedi. Per evitare queste situazioni spesso i router utilizzano una utility denominata QoS (Qualità of Service) che
tende a favorire l‟instradamento dei pacchetti UDP rispetto ai pacchetti TCP, accodandoli su code differenti a
maggiore priorità. QoS opera normalmente sulla base dei QoS bit dell‟intestazione IP (i primi 3 bit del campo ToS
Type os Service). Per avere garanzie ancora maggiori, talvolta Dati e Streaming vengono trasmessi su reti separate.
pag 81
Sistemi - Classe Quinta robertomana.it
RETI
FIREWALL
Muro tagliafuoco come le porte tagliafuoco che negli edifici isolano le aree dalla propagazione degli incendi.
Dispositivo di rete (hardware o software) di liv 4 mirato a isolare una rete dall'altra. Due scopi principali:
Proteggere una rete da accessi indesiderati e da eventuali attacchi
Smistare il traffico tramite l‟applicazione del protocollo NAT
Nella maggior parte dei casi il firewall rappresenta una barriera bidirezionale tra LAN e INTERNET, ma può
anche fare da barriera tra sottoreti differenti di una stessa LAN Es rete didattica e amministrativa di una scuola
condividono l‟accesso ad Internet ma sono separate mediante un firewall. Una non può accedere ai dati dell‟altra.
IP fasullo. Il server risponde con ACK all‟indirizzo ricevuto e rimane pendente Il firewall STATEFULL “conta”
il numero di chiamate nell‟unità di tempo e se queste superano una certa soglia le taglia (DoS Prevetion).
Personal Firewall
Il "Personal Firewall" è presente in tutti i SO. Il suo scopo è di proteggere la macchina su cui è installato.
filtrando tutti i pacchetti che entrano ed escono dalla macchina. Cioè proteggere il perimetro della macchina.
Non sostituisce l’antivirus che controlla a basso livello gli interrupt che servono a caricare ed eseguire i programmi,
sorvegliando poi per intero la loro esecuzione (anche a s scapito di un possibile rallentamento) Poiché le operazioni
che il firewall deve compiere sono sempre le stesse, il suo aggiornamento non è così vitale come per l’ antivirus.
Richieste Esterne di connessione al PC Quando qualcuno tenta di connettersi al computer, la richiesta viene
intercettata dal firewall che la vede come una "richiesta indesiderata" e chiede all‟utente se desidera consentire la
connessione, nel qual caso crea una eccezione per quella applicazione, temporanea o permanente.
Richieste Interne di accesso alla rete Il Personal Firewall consente di configurare un elenco di programmi presenti
sul computer che possono accedere alle reti a cui il PC è collegato (es Desktop Remoto, Client di Reti), concedendo o
negando ai programmi stessi l'accesso alla rete (servizio non presente nel Firewall di Windows XP).
Nota: Le distribuzioni Linux utilizzano un firewall integrato molto potente, denominato iptables.
Windows Vista utilizza un nuovo firewall che, rispetto ad XP, consente di controllare anche il traffico verso l'esterno
Il protocollo NAT
Il NAT (Network Address Translation) è un protocollo di livello 3, eseguito normalmente su un Router o Firewall,
avente come scopo la traslazione di indirizzi IP tra una rete pubblica (Internet) ed una rete privata.
Diversamente i PC con indirizzo privato NON potrebbero accedere ad Internet. Due Obiettivi:
consentire agli utenti della LAN (aventi indirizzo IP privato) di accedere ai servizi della rete Internet
esporre su Internet eventuali server presenti nella rete privata (web server, mail server, ftp server, etc)
A differenza del normale routing che instrada i pacchetti senza modificare il contenuto delle intestazioni IP, il
protocollo NAT “apre” l‟intestazione IP dei pacchetti in transito, sostituendo gli indirizzi mittente o destinatario.
Gli abbinamenti tra indirizzi pubblici e privati sono memorizzati all‟interno di una tabella detta ATT (Address
Translation Table) che può essere impostata staticamente dall‟amministratore o gestita dinamicamente dal router.
Per poter attivare il NAT occorre definire come NAT OUTSIDE la porta fisica del router interfacciata alla rete
pubblica, mente le porte fisiche interfacciate alle reti private sono dette NAT INSIDE
Il NAT una volta attivato provvede a traslare gli indirizzi IP di tutti i pacchetti in transito sulla porta NAT OUTSIDE:
Per tutti i pacchetti uscenti dalla porta NAT Outiside (cioè provenienti dalla Rete Interna e diretti verso la Rete
Esterna), NAT provvede a sostituire l‟indirizzo IP privato del mittente con il corrispondente indirizzo
pubblico contenuto nella ATT
Per tutti i pacchetti entranti nella porta NAT Outiside (cioè provenienti dalla Rete Esterna e diretti verso la
Rete Interna), NAT provvede a sostituire l‟indirizzo IP pubblico di destinazione con il corrispondente
indirizzo privato contenuto nella ATT, reindirizzando quindi il pacchetto verso il corrispondente host interno.
pag 83
Sistemi - Classe Quinta robertomana.it
RETI
Per definire una porta come NAT OUTSIDE o INSIDE (ed attivare di conseguenza il servizio NAT fra quelle porte)
si possono utilizzare i seguenti comandi (CISCO Systems):
Gateway(config)# interface fastethernet 0/0
Gateway(config-if)# ip address 172.16.0.1 255.255.255.0
Gateway(config-if)# ip nat inside
Gateway(config-if)# interface serial 0/0/0
Gateway(config-if)# ip address 1.2.3.4 255.255.255.224
Gateway(config-if)# ip nat outside
NAT e FIREWALL
Il servizio NAT di per sé è un protocollo di livello 3, per cui non distingue tra richieste di connessione e scambio di
dati. Di solito però NAT è utilizzato su un firewall che, analizzando le intestazioni di livello 4, riesce a riconoscere le
richieste di connessione per cui consente di abilitare separatamente il servizio NAT soltanto in uscita (richieste di
connessione verso la rete esterna e relative risposte) oppure soltanto in ingresso (richieste di connessione verso la
rete intera e relative risposte). NAT di per sé lascerebbe passare tutto sia le richieste di connessione che i dati.
Abilitare soltanto il servizio NAT in uscita significa ridirigere soltanto le richieste di connessione
provenienti dalla rete interna e dirette verso la rete esterna (internet)
Abilitare soltanto il servizio NAT in ingresso significa ridirigere soltanto le richieste di connessione
provenienti dalla rete esterna (internet) e dirette verso la rete locale interna
STATIC NAT
Lo STATIC NAT è il caso più semplice e consiste in una mappatura statica univoca tra indirizzi privati e pubblici.
DYNAMIC NAT
Il Dynamic NAT può essere utilizzato in uscita per condividere l‟accesso ad Internet. Consiste nell‟acquistare un certo
numero di indirizzi pubblici che saranno assegnati dinamicamente ai vari host. In corrispondenza di una richiesta di
uscita proveniente da un host interno, Dynamic NAT provvede ad eseguire le seguenti operazioni:
- assegna al pacchetto il primo indirizzo IP pubblico disponibile
- memorizza nella ATT l‟abbinamento tra indirizzo pubblico assegnato e indirizzo privato originario
- La entry rimane valida all‟interno della ATT per una singola sessione TCP, al termine della quale viene rimossa.
Tramite ACL è possibile definire delle liste di indirizzi interni abilitati al NAT. Gli altri non potranno uscire.
Il Dynamic NAT non può essere applicato in ingresso.
pag 84
Sistemi - Classe Quinta robertomana.it
RETI
Livello 5 : SESSION
Secondo le indicazioni del modello ISO OSI lo scopo del Livello 5 è quello di :
gestire una Sessione di Comunicazione tra due End System, organizzandone il dialogo,
dall‟apertura della connessione fino alla sua chiusura (cioè per l‟intera sessione)
Il livello 5 non ha una interazione diretta con programmi applicativi, e si occupa principalmente di due aspetti:
Dialog Control cioè chi può parlare in ogni momento (full duplex, half dupelx, simplex), senza entrare nel
significato dei dati (demandato al livello 7). In quest‟ambito il livello 5 è responsabile della gestione della
mutua esclusione nell'utilizzo di risorse condivise (come può essere il canale di comunicazione). (TCP)
Gestione dei punti di sincronizzazione della comunicazione, nel senso che entrambi gli host hanno la facoltà di
sincronizzare la comunicazione, salvando i propri dati su un file e ad inviando un Comando di Sincronizzazione
all'altro host, il quale provvederà pure lui a salvare i propri dati su un file, secondo un meccanismo simile
all'Autosave tipico dei Word Processor. In qualunque momento la comunicazione potrà riprendere esattamente
dal punto di sincronizzazione impostato. L'apertura e la chiusura della connessione possono essere visti come
primo ed ultimo punto di sincronizzazione della comunicazione. (spesso demandato al livello 7)
Sono protocolli di livello 5 :
NetBios utilizzato in ambiente Windows per risolvere i nomi degli host di una LAN in indirizzi IP.
RTP (Real Time Protocol) utilizzato da VOIP per l‟ordinamento dei pacchetti voce.
X-Window server grafico Unix che sta alla base di tutte le interfacce grafiche e anche per collegare terminali
grafici all'elaboratore centrale ed eseguire i programmi remoti come se fossero presenti sulla macchina locale
Simile a NetMeeting che però interagisce con uno specifico applicativo, mentre x-Window è una utility del SO
X-Windows è poco più di un socket con l‟aggiunta di alcune funzionalità di sincronismo col server remoto.
pag 85
Sistemi - Classe Quinta robertomana.it
RETI
LIVELLO 7 - DHCP
Dynamic Host Configuration Protocol
Protocollo utilizzabile dagli host in fase di avvio per richiedere un indirizzo IP dinamico ad un DHCP Server
Il DHCP Server utilizza in ascolto la porta 67 UDP (stessa di Bootp di cui DHCP ne è l‟evoluzione).
Molteplici DHCP Server possono essere contemporaneamente presenti sulla stessa rete (tutti con lo stesso
range di indirizzi IP o, indifferentemente, su range differenti).
Il protocollo DHCP opera On Demand ed è estremamente flessibile. Oltre all‟indirizzo IP, è stata definita
una lunghissima lista di parametri numerati (definiti nella RFC 2132) che un DHCP Server può restituire al
Client richiedente. On Demand, significa che deve essere il client a indicare quali parametri desidera, ed il
server restituisce soltanto i parametri richiesti. Tipicamente: indirizzo IP, Subnet Mask, Default Gateway,
Tempo di Lease e DNS Primario. Ma può inviare anche l‟indirizzo di un Time Server, la propria ora (Time
Offset), l‟indirizzo di un SMTP Server, l‟indirizzo di un POP Server, etc.
Su un client Linux la configurazione DHCP (cioè la lista dei parametri da richiedere al server) è memorizata
all‟interno del file testuale /etc/dhcp3/dhclient.conf facilmente editabile e modificabile. Per modificare la
configurazione DHCP di un client Windows occorre invece agire a livello di Registro di Sistema.
IP Statici In fase di configurazione del server DHCP, oltre al range di indirizzi, è possibile impostare anche
abbinamenti univoci MAC – IP, spesso utilizzato per le stampanti di rete. Cioè in corrispondenza del MAC
di una certa stampante, il DHCP Server invierà sempre lo stesso indirizzo IP.
Porta 68 A differenza del vecchio RARP che operava a livello 3, DHCP opera a livello 7. Questo comporta
un problema. All‟accensione, quando si appresta a chiedere un indirizzo IP al DHCP server, la macchina non
ha ancora un indirizzo IP, per cui TCP non è in grado di stabilire una connessione con il DHCP server
assegnando al client una porta effimera. Per questo motivo il client DHCP usa una porta fissa (68 UDP)
Ogni rete IP deve avere un suo DHCP Server, che non può assegnare indirizzi a reti diverse rispetto alla sua.
2) dhcpOffer [Offerta] Tutti i DHCP Server che ricevono il messaggio di richiesta (e che non hanno esaurito gli
indirizzi IP) inviano una risposta UNICAST a livello MAC detta dhcpOffer contenente le seguenti informazioni:
Header:
MAC Source = server MAC
MAC Dest = client MAC UNICAST
IP Source = server IP
IP Dest = 255.255.255.255 broadcast IP in quanto il client non ha ancora un indirizzo IP unicast
Payload:
- Indirizzo IP Offerto (che coincide col vecchio indirizzo IP se il suo tempo di lease non è ancora scaduto).
- Tutte le informazioni aggiuntive richieste dal client: Subnet Mask, Default Gateway, DNS, Tempo di Lease
Il server DHCP blocca quindi la configurazione offerta per evitare che nel frattempo venga offerta ad altri client.
Il pacchetto viene intercettato a livello MAC soltanto dal client interessato.
3) dhcpRequest [Ordine] Il Client accetta la prima offerta che riceve. In tal caso invia un messaggio MAC
broadcast detto dhcpRequest in cui segnala di aver accettato una dhcpOffer da un certo DHCP Server e richiede
ufficialmente l‟indirizzo IP che gli è stato offerto.
Questo messaggio deve essere MAC Broadcast in quanto deve essere intercettato da tutti i server DHCP
presenti in rete. I DHCP Server la cui offerta non è stata accettata, possono così ritirare l'offerta liberando la
configurazione IP offerta e contrassegnando l'indirizzo IP come non più disponibile.
Il messaggio dhcpRequest presenta il seguente formato:
Header:
MAC Source = client MAC // ogni client conosce il proprio MAC
MAC Dest = FF FF FF FF FF FF // Broadcast Mac
IP Source = 0.0.0.0 // ufficialmente il client non dispone ancora dell‟indirizzo IP proposto
IP Dest = 255.255.255.255 // Broadcast IP
Payload:
Indirizzo IP del Server DHCP di cui è stata accettata l'offerta
Indirizzo IP in corso di accettazione
Al ricevimento della Request il server provvede anche a salvare il name del pc all'interno del DNS File
4) dhcpAcknowledge Conferma d‟Ordine Il DHCP Server la cui offerta è stata accettata invia un ultimo
messaggio UNICAST a livello MAC e broadcast a livello IP (perchè il Client non ha ancora un vero indirizzo IP)
che funge da ACK per il Client. Questo messaggio contiene tutte le informazioni IP relative al Lease assegnato:
Header:
MAC Source = server MAC
MAC Dest = client MAC UNICAST
IP Source = server IP
IP Dest = 255.255.255.255 broadcast IP in quanto il client continua a non avere un indirizzo IP unicast
Payload:
- Indirizzo IP in affitto
- Tutte le informazioni aggiuntive richieste dal client: Subnet Mask, Default Gateway, DNS, Tempo di Lease
Se invece il client viene spento, ad ogni riaccensione richiede in lease l'indirizzo IP precedente.
Se il tempo di lease non è scaduto, il Server provvede sicuramente a riassegnare al client lo stesso indirizzo IP.
Se invece il tempo di lease è scaduto, il DHCP Server riassegna comunque sempre lo stesso indirizzo, a meno
che nel frattempo non siano finiti gli indirizzi IP e quell'indirizzo sia già stato assegnato ad un altro client.
Se il client nel DHCP Discovery non invia il proprio IP (ma 0.0.0.0.) ogni volta verrà assegnato un nuovo IP
Il comando ipconfig
Il comando ipconfig è in realtà un comando di comunicazione con il DHCP Server.
ipconfig /release segnala al DHCP Server di rilasciare l‟indirizzo IP avuto in Lease (perché ad esempio si vuole
impostare un IP statico). In Windows XP sembra che questo comando venga lanciato automaticamente nel momento
in cui si modifica l'opzione di IP Dinamico -> Statico nella finestra di configurazione del protocollo TCP/IP.
ipconfig /renew richiede il rinnovo del lease.
Nota: Se il client ha più di una interfaccia di rete, il processo DHCP avviene separatamente per ogni interfaccia,
dunque occorre prevedere per tutti questi client la possibilità di utilizzare due indirizzi IP
pag 88
Sistemi - Classe Quinta robertomana.it
RETI
DNS
L‟identificazione di tutte le risorse di rete mediante il solo indirizzo IP sarebbe ovviamente scomoda da utilizzare.
Il protocollo DNS (Domain Namespace System) è un protocollo di Naming introdotto nel 1988 che consente di
identificare ciascuna risorsa di rete mediante un nome logico (DNS Name) e di associare ad ogni DNS Name il
corrispondente IP Address (processo di mapping). Il protocollo DNS utilizza come trasporto UDP porta 53.
Il mapping DNS – IP è gestito mediante una gerarchia di DNS Server nella forma di un database distribuito.
Un client, quando deve contattare un generico sito www.sito.edu, prima invia una richiesta ad un DNS Server
richiedendo l‟indirizzo IP del sito, il quale DNS Server restituisce l'indirizzo IP richiesto. Il client quindi utilizza
l‟indirizzo IP per l‟effettiva connessione al sito. Protocollo utilizzato da quasi tutti i protocolli di livello 7.
I DNS Name invece hanno una struttura gerarchica ma non geografica, costituita da una sequenza di nomi
separati da un puntino, dove la parte più importante è la prima partendo da destra, detta dominio di 1° livello.
Dal DNS Name non è possibile risalire con certezza alla dislocazione territoriale dell‟host
Ad esempio in www.vallauri.edu edu rappresenta il dominio di primo livello, vallauri il dominio di secondo
livello, mentre il primo nome di sinistra (www) rappresenta sempre il nome dell‟host finale.
Ad ogni Dominio di primo livello sono collegati più Domini di secondo Livello. Ogni organizzazione può
acquistare dall‟authority un Dominio di secondo livello (es vallauri), indicando a quale Dominio di Primo
Livello intende collegarsi.
Acquistato un Dominio di Secondo Livello, l‟Ente acquirente ha Piena Autorità di creare nuovi sottodomini
senza dover più contattare nessuna authority. In pratica la gestione interna ad un Dominio di Secondo Livello
è completamente demandata all‟Ente acquirente, che può creare al suo interno ulteriori Domini di Terzo
livello, Quarto Livello, etc. (es www.tg1.rai.it)
A ciascun dominio / sottodominio finale apparterranno degli host (Foglie dell‟albero) il cui nome andrà a
costituire la prima stringa di sinistra del DNS Name, solitamente www.
L‟insieme puntato dei domini, senza il nome dell‟host finale, è detto genericamente Dominio. (vallari.edu).
Ogni Dominio di 2° Livello deve necessariamente esporre un DNS Server pubblico autorevole per quel
dominio, che risolva i nomi di tutti gli host pubblici appartenenti al dominio, oltre ai nomi di eventuali
sottodomini di terzo livello, in modo che dall‟esterno (rete Internet) sia possibile risolvere i nomi locali
relativi al dominio. Spesso la gestione del dominio (operazione piuttosto complessa), pur mantenendo il sito
in loco, viene demandata ad un ente esterno detto Maintainer del Dominio.
pag 89
Sistemi - Classe Quinta robertomana.it
RETI
Note:
I nodi dipendenti da uno stesso genitore (fratelli) devono avere una etichetta differente
Ogni nodo è identificato da una etichetta che può avere al massimo 63 caratteri
Il nome completo ottenuto concatenando tutte le etichette non deve eccedere i 255 chr (compresi i puntini)
Il massimo di livelli utilizzabili arriva fino a 127 (127 lettere e 127 puntini)
Quando si registra un nuovo dominio, occorre anche richiedere all‟Ente preposto l‟aggiornamento dei TLD
Server, specificando l‟indirizzo IP del DNS Server autorevole per il nuovo dominio..
DNS CACHING
Per ridurre il numero di richieste DNS ed il continuo passaggio attraverso i root server, rischiando di saturarli, è stato
introdotto il cosiddetto caching DNS, cioè:
Quando un DNS server apprende una traduzione, la memorizza localmente in una cache
Ogni server DNS può fornire l‟indirizzo IP desiderato anche se non è competente per tale indirizzo
Tutti i Server DNS (ad eccezione dei Root e dei TLD) svolgono funzioni di cache mantenendo in cache tutte le
associazioni già risolte. Esistono anche DNS Servers Caching Only (ad es i DNS Server gestiti dagli ISP), privi di
database proprio e che si limitano a mantenere in cache le associazioni già risolte, evitando il continuo passaggio ai
Root o TLD server, interpellati soltanto per i DNS name non disponibili. Intermediari tra le richieste dei client ed i
server Autorevoli. Le traduzioni memorizzate nella cache scadono dopo un certo timeout (24 ore / 48 ore).
Ogni ISP dispone di almeno 2 server di questo tipo, detti Server DNS Primario che è un server in cui creazione,
gestione ed aggiornamento dei nomi sono di competenza del server stesso, e Server DNS Secondario che riceve le
informazioni da un altro server primario o secondario. I due server hanno comunque la stessa competenza ed autorità
Server locali
Sono Autorevoli soltanto per la rete locale dove si trovano, , mentre per gli indirizzi esterni contattato direttamente i
root server oppure svolgere funzione di forwarding verso il server cache di un ISP in modo da sfruttare la sua cache
e velocizzare la ricerca dell‟indirizzo.
pag 90
Sistemi - Classe Quinta robertomana.it
RETI
DNS forwarding
Un qualunque DNS Server, se non è in grado di risolvere il nome richiesto, a seconda delle proprie impostazioni, può
Contattare il proprio DNS Server Primario, mediante il cosiddetto DNS forwarding
Contattare un Root Server, i cui indirizzi sono preimpostati all‟interno di un qualsiasi pacchetto DNS Server
I piccoli router domestici (ISR) svolgono anche la funzione di DNS Server sulla porta 53 eseguendo il forwarding
verso l‟indirizzo di DNS Primario ricevuto dal Provider. L‟indirizzo di DNS Server primario ricevuto dai client è
infatti coincidente con l‟indirizzo del router stesso.
Hosting e Housing
Il servizio di Hosting fornito da tutti gli ISP consiste nell‟ospitare una applicazione web su un web server dell‟ISP
(gratuitamente se il sito non richiede motori particolari). In assenza di dominio l‟Hosting può essere eseguito su un
qualunque ISP. In caso di acquisto del dominio l‟Hosting viene di solito eseguito dal gestore del dominio
pag 91
Sistemi - Classe Quinta robertomana.it
RETI
Nel caso di Housing, invece, il cliente fornisce una macchina o la acquista dal provider, e questa viene ospitata dal
provider che fornisce collegamento a internet e gestione. L‟ente ha un controllo completo tramite SSH.
Il servizio di Smart Hosting (o virtual hosting) consiste nell‟esporre più domini (su una stessa macchina) tutti con
lo stesso indirizzo IP. Il sito specifico viene identificato mediante la trasmissione del DNS Name all‟interno
dell‟intestazione HTTP 1.1.
E‟ possibile delegare la Gestione del Dominio (in termini di DNS) ad un Maintainer differente rispetto all‟ hosting
Provider su cui si pubblica il sito. A tal fine occorre semplicemente indicare al Maintainer dove è posizionato il sito.
Dynamic DNS
Dynamic DNS è un sistema per permettere ad un dominio Internet di essere associato ad un indirizzo IP
dinamico. Questo consente di stabilire connessioni a macchine con IP dinamico che, in genere, risulta diverso ad
ogni nuova connessione e può comunque essere cambiato dall‟ISP senza preavviso.
Il meccanismo si basa su un terzo sito, detto Redirect che (di solito gratuitamente) provvede a mantenere un database
che associa i vari DNS Name (tipo www.casa.org) con i reali indirizzi IP validi in quel momento. In realtà
all‟interno del DNS Server Autorevole gestito dal Maintainer viene impostato l‟indirizzo IP del sito di
Redirect. Quando un utente cerca di contattare il sito www.casa.org, la richiesta arriva al sito Redirect che,
consultando il proprio database, esegue un Redirect all'indirizzo IP corretto.
Per mantenere aggiornato il database di Redirect ci sono 3 possibilità:
Nei sistemi più vecchi il proprietario del sito doveva collegarsi dopo ogni accensione del proprio PC al sito
Redirect per aggiornare l‟IP pubblico ricevuto dall‟ISP.
Se a gestire il sito di Redirect è l‟ISP stesso, si può fare in modo che, in fase di connessione o di modifica
dell‟indirizzo IP, l‟aggiornamento del database di Redirect avvenga automaticamente.
I router più recenti possono eseguire automaticamente, in corrispondenza del ricevimento di un IP dinamico,
l‟aggiornamento del sito di Redirect, (il cui indirizzo deve essere preimpostato nel router stesso)
In tutti i casi il tempo di DNS caching del dominio deve essere impostato pari ad un periodo molto breve
(tipicamente pochi minuti), per evitare che i DNS Server mantengano nella loro cache il vecchio indirizzo,
imponendo di fatto la ricerca dell'indirizzo IP corretto in corrispondenza di ogni nuova connessione.
pag 92
Sistemi - Classe Quinta robertomana.it
RETI
Il file hosts
Il file hosts è il file utilizzato dai DNS Server per memorizzare le informazioni di zona (insieme dei Domini su cui il
DNS Server è autorevole). Si tratta di un semplice file testuale senza estensione che contiene le associazioni statiche
tra DNS Name / indirizzo IP di tutti i DNS Name per i quali il DNS Server è responsabile.
Il file hosts è anche presente su tutti i normali hosts (in Windows XP c:\windows\system32\driver\etc\hosts) dove
contiene sempre almeno il nome localhost, che rappresenta il DNS Name corrispondente all‟indirizzo IP 127.0.0.1
# Questo è un esempio di file HOSTS usato da Microsoft TCP/IP per Windows.
127.0.0.1 localhost
Il file hosts rappresenta il primo tentativo di risoluzione dei DNS Names eseguito dai Browser e può essere
utilizzato per risolvere rapidamente ed in modo statico i DNS Names dei web server più utilizzati.
NetBIOS e SMB
NetBIOS significa "Network Basic Input Output System", ossia BIOS di rete.
SMB significa "Server Message Block Protocol", blocco messaggio server
NetBIOS e SMB nascono in IBM nel 1982 nell‟ambito dello sviluppo di una rete locale denominata PC-Network.
L‟intento di NetBIOS era quello di fornire un supporto alla condivisione di files su piccole LAN quali PC-
Network. Più che un protocollo NetBIOS è un insieme di API, cioè un'interfaccia di programmazione (simile alle
API di comunicazione con la porta seriale o con la porta parallela) che consentono a SMB di immettere dati / leggere
dati da una scheda di rete. Le funzioni base di NetBIOS erano accessibili attraverso l'interrupt 5Ch. Nonostante
nessuna pubblicazione ufficiale, NetBIOS, in virtù del grandissimo numero di applicazioni, divenne di fatto uno
standard.
NetBIOS copre tutti i livelli OSI 2-5 appoggiandosi direttamente sullo strato MAC di una rete locale.
Caratteristiche esseniali:
Identifica le risorse della rete mediante “nomi descrittivi" detti nomi NetBIOS aventi lunghezza max di
15 caratteri e tutt‟ora utilizzati per identificare una risorsa all‟interno di una rete locale.(Sono i nomi mostrati
nella finestra Risorse di Rete come identificativi delle risorse). Il 16° byte indica il tipo di risorsa:
Es. 00 - Normale workstation 03 - Servizio di messaggistica (WinPopup) 20 – File Server
Non prevede l‟utilizzo di un'entità centralizzata. Un computer che all'accensione voglia registrarsi sulla
rete con il proprio nome NetBIOS deve inviare appositi messaggi broadcast a tutti gli altri. Se il nome è già
in uso, il possessore invia un messaggio di risposta per respingere la scelta.
pag 93
Sistemi - Classe Quinta robertomana.it
RETI
SMB
E‟ un protocollo Client Server di livello 7 sviluppato da IBM parallelamente a NetBIOS ed appoggiato su di esso,
avente come scopo la condivisione di files, cartelle e stampanti fra i computer di una rete locale, incluse le
operazioni di apertura, creazione, cancellazione file. Utilizzato in Dos e in tutti i sistemi Windows fino a quelli attuali
Dalla sua introduzione originaria nel 1982 ad oggi il protocollo SMB, pur con varie modifiche e aggiunte, è rimasto
simile negli anni ed è tutt’ora utilizzato in tutti i sistemi Windows per l’accesso alle Risorse Condivise all’interno di
una rete locale. Ad ogni operazione su un file di rete (apertura, chiusura, lettura, scrittura) corrisponde un preciso
comando SMB (open, close, read, write ). Fa parte di SMB anche il cosiddetto "redirector" che permette di disporre
delle risorse remote come se fossero locali (ad es vedere un disco di un altro computer come se fosse un disco locale)
Il Server SMB può essere un qualunque host che condivide le proprie risorse.
I client SMB possono eseguire un "browsing" degli SMB server presenti in rete e accedere alle loro risorse condivise
Dato il suo vasto utilizzo, è nata anche una implementazione free detta SAMBA che è una riscrittura del protocollo
proprietario SMB, creata per consentire a Client SMB l‟accesso ad un file server Linux.
Evoluzioni di NetBIOS
applicazione
SMB SMB SMB
presentazione SMB
sessione NetBIOS NetBIOS
trasporto
NetBIOS NetBEUI TCP / IP TCP / IP
network
data link
IEEE 802
fisico
pag 94
Sistemi - Classe Quinta robertomana.it
RETI
A differenza di NetBEUI, l‟interfaccia NetBIOS è stata mantenuta in vita fino ad oggi grazie a due caratteristiche
fondamentali:
il notevole numero di applicazioni esistenti
il fatto di offrire un interessante servizio di Naming in grado di risolvere i nomi delle macchine locali
tramite broadcast, quindi anche in assenza di un DNS server centralizzato
Verso la fine degli anni 90 Microsoft decise di abbinare l'interfaccia NetBIOS a protocolli più flessibili come
TCP/IP. NetBIOS diventa così un protocollo di livello 5 indicato come NetBios over TCP/IP, che utilizza le porte
TCP/UDP per comunicare con il livello 4 mentre verso l‟alto (cioè verso SMB o verso applicazioni utente
specifiche) si presenta con la vecchia interfaccia procedurale originaria del NetBIOS, continuando a garantire il
funzionamento di tutte le vecchie applicazioni interfacciate a NetBIOS.
pag 95
Sistemi - Classe Quinta robertomana.it
RETI
Nota: A differenza di DHCP che non viene avvisato quando un client si sconnette dalla rete (e mantiene il suo lease fino alla
scadenza del timeout), un client WINS, così come si registra all’accensione, chiede il rilascio del suo nome nel momento in cui
si scollega dalla rete. Questo fa sì che le risorse di rete siano visualizzate sempre in modo perfettamente aggiornato. Inoltre, per
ogni client, WINS gestisce un Renewal Interval (aggiornato dal client a metà del tempo, come x DHCP) in modo da poter
eseguire un rilascio implicito della risorsa nel caso in cui venga a mancare il messaggio di disconnessione ( es x power fail)
pag 96
Sistemi - Classe Quinta robertomana.it
RETI
HTTP
Il World Wide WEB (Ragnatela ad estensione mondiale) è il più noto fra i servizi Internet.
HTTP è il protocollo che consente di accedere alle pagine WEB e scambiare dati attraverso il web stesso.
HTTP è un protocollo “leggero”, nel senso che il client si connette al server solo per il tempo strettamente
necessario per trasmettere la richiesta e ricevere la risorsa richiesta e quindi chiude la connessione, a differenza
ad esempio di FTP, in cui la connessione rimane sempre aperta anche se non c’è nulla da trasferire
HTTP è un protocollo “senza stato” (stateless), cioè che non "conserva memoria" delle connessioni.
Tutte le connessioni sono trattate come se si trattasse ogni volta di un nuovo client. In questo modo il navigatore
può spostarsi velocemente da un server ad un altro attraverso i "links" ipertestuali.
versione 1.0
crea una connessione per ogni scambio di messaggi (ad esempio nel caso di una pagina html contenente più immagini
occorre una connessione per scaricare la pagina, e poi una connessione per richiedere ogni singola immagine
contenuta nel documento). Le prime pagine web erano soprattutto testuali e sembrava essere più oneroso mantenere
la connessione aperta che non aprirla / chiuderla tutte le volte.
pag 97
Sistemi - Classe Quinta robertomana.it
RETI
versione 1.1
(HTTP persistente default da IE 7 in avanti). Due innovazioni principali:
Non abbatte la connessione ma utilizza la stessa connessione per inviare tutti gli oggetti multimediali
contenuti nella pagina. Il client, ricevuta la pagina principale, richiede tutti gli elementi multimediali presenti
sulla pagina utilizzando sempre la stessa connessione. Il server, dopo aver inviato la pagina al client,
mantiene la connessione aperta per un certo timeout in modo da poter processare ulteriori richieste
successive. Il client, ricevuti tutti gli elementi della pagina, chiude la connessione entrando in uno stato di
Time Wait in attesa della chiusura definitiva da parte del server, che chiude allo scadere del timeout.
Consente lo smart hosting, cioè l‟abbinamento di più domini di secondo livello ad un medesimo indirizzo
IP (la URL richiesta viene trasportata all‟interno dell‟intestazione HTTP e letta dal server).
HTTPs è la versione sicura (crittografata) di HTTP, basata sul protocollo di livello 6 SSL.
MHT Da IE 7 in avanti, oltre alla solita modalità denominata HTML di salvare una pagina web come file HTML
con i vari oggetti multimediali salvati a parte all’interno di una apposita cartella aggiuntiva è possibile salvare
l‟intera pagina HTML in un unico file .mht (MIME HYPER TEXT) denominato Archivio Web. Nelle pagine mht
tutti gli oggetti multimediali vengono integrati in un unico file testuale in formato MIME (nato per la posta
elettronica).
Il client HTTP (browser) apre una CONNESSIONE TCP con il server HTTP remoto
Il client invia un messaggio REQUEST che comprende diverse informazioni relative al client come il tipo di
dati che può trattare ed il linguaggio naturale impostato sulla macchina.
Il server processa la risposta, che nella maggior parte dei casi il processo consiste nel localizzare il file html
e restituirlo al client, e invia la RESPONSE al client (la pagina richiesta oppure un messaggio di errore).
Se la pagina richiesta contiene codice lato server, questo viene eseguito dal server che alla fine restituisce
comunque sempre una pagina HTML.
In HTTP 1.0 il server chiude la CONNESSIONE, mentre in 1.1 a chiudere la connessione per primo è il
client. I primi protocolli TCP/IP, come telnet, ftp e gopher, erano stati progettati con l‟idea che l‟utente
rimanesse collegato per un periodo di tempo esteso, trasmettendo più comandi con connessione sempre
aperta. Nel caso del web invece è probabile che la prossima richiesta sia diretta ad un altro server e che la
prossima connessione avvenga in un tempo molto successivo alla precedente. In tal caso è inutile tenere
aperta la connessione, per cui HTTP la chiude non appena ha finito di processare la richiesta.
Body Corpo del messaggio (nel caso delle Response la pagina HTML)
Ogni messaggio può contenere un numero arbitrario di headers, ed il loro ordine è irrilevante.
Una riga vuota separa l‟header dall‟eventuale corpo del messaggio.
Il body, o corpo del messaggio, contiene i dati veri e propri oggetto dello scambio (intera pagina HTML)
pag 98
Sistemi - Classe Quinta robertomana.it
RETI
Messaggio REQUEST
Alla Request Line fanno seguito un certo numero di righe relative alle
intestazioni terminate con una riga vuota.
Il metodo GET è il metodo di default che tutti i browser utilizzano per richiedere ad un web server la risorsa
indicata dall‟utente all‟interno della URL. Nel caso delle richieste GET eventuali parametri vengono
concatenando alla URL, introdotti mediante un punto interrogativo ? e suddivisi tramite & Possibilità di
passaggio diretto-
http://www.vallauri.edu/index.php?id=29&nome=pippo
Il metodo POST è un altro metodo di richiesta di una risorsa. Nel caso del POST eventuali parametri vengono
spediti all‟interno del body della HTTP REQUEST (che normalmente è vuoto), dunque in modo non visibile
Il metodo POST, in una tradizionale applicazione web form, può essere utilizzato soltanto all’interno di un pulsante
di submit. In corrispondenza del click il browser provvede a richiedere una nuova pagina al server (quella indicata
all’interno dell’attributo ACTION del tag FORM), trasmettendo automaticamente come parametri il contenuto di
tutti i controlli presenti all’interno della web form in cui si trova il pulsante,
La modalità con cui vengono accodati i parametri dipende dal contenuto dell’attributo Method del tag Form.
In caso di Method = Get parte una richiesta GET ed i parametri vengono accodati alla URL.
In caso di Method = POST parte una richiesta POST ed i parametri
Il metodo HEAD è simile al GET e serve per richiedere al server soltanto l‟intestazione della risposta, e non il body.
L‟intestazione ricevuta è identica a quella che si avrebbe col GET. Si possono quindi avere informazioni sul file
specificato (tipo di file, lunghezza, ultima modifica ecc). E‟ utilizzato da alcuni software per controllare la validità
degli hyperlink contenuti nei documenti HTML. I browser in genere non utilizzano il metodo HEAD.
pag 99
Sistemi - Classe Quinta robertomana.it
RETI
Messaggio RESPONSE
La Response Start Line (detta anche Status Line) indica lo stato della risposta ed ha il seguente formato :
VersioneHTTP StatusCode StatusMessage CRLF
HTTP/1.1 200 OK
Alla Status Line fanno seguito eventuali intestazioni terminate con una riga
vuota a cui fa seguito il Body contenente le informazioni richieste
(tipicamente una pagina html).
Cookies
HTTP, essendo stateless, non mantiene una connessione stabile durante la transazione. Se facendo acquisti su un sito
di E-commerce la linea cade, l'ordine va perso. Né HTTP né TCP risolvono il problema.
A tale scopo sono stati introdotti i cosiddetti cookies. Un cookie è una specie di variabile con un nome ed un valore
che viene inviata dal server al client, memorizzata sul disco da parte del client, e richiesta dal server al client quando
necessario. In questo modo il server riesce in ogni caso a riconoscere il client e a leggere eventuali informazioni di
stato, anche nel caso in cui l‟utente si colleghi da reti totalmente diverse ma sempre con lo stesso portatile.
Set-Cookie : viene utilizzato dal server nelle Response per chiedere al browser di memorizzare un nuovo cookie
Cookie : viene utilizzato dal browser nelle Request per segnalare un cookie al Server.
ES: Set-Cookie : "Nome=ValoreMD5; expires=Friday, 31-Dec-99 23:59:59 GMT; path=/"
Proxy Server
Si indica come PROXY (Proximity = Macchina di Prossimità. Termine inglese che letteralmente significa
procuratore) un generico dispositivo che ha come scopo quello di mostrare “come se fosse locale” un qualcosa che
in realtà si trova da qualche altra parte sulla rete.
I protocolli Proxy operano a livello 7 e dunque dipendono dal protocollo. Esistono cioè diversi tipi di Proxy Server
(HTTP, FTP, SMTP, POP3), in genere conglobati all‟interno di un medesimo pacchetto.
Interponendo un proxy tra un client ed un server remoto, il client invia le richieste al proxy invece che al server
remoto. Il proxy legge (ed eventualmente modifica) la richiesta e crea una nuova richiesta da indirizzare al server
remoto in cui imposta se stesso come richiedente. Il Proxy Server tiene traccia delle richieste in modo da poter poi
inoltrare correttamente al client le pagine html ricevute come risposta dai server remoti.
Router: instrada i pacchetti senza modificare gli indirizzi IP. Va bene per host con indirizzo pubblico.
NAT: modifica gli indirizzi IP a livello 3 senza “entrare” nel dettaglio dei protocolli di livello superiore. L‟azione del
NAT è completamente trasparente sia al client che al server ed è completamente indipendente dal protocollo in uso.
Proxy analizza il messaggio fino a livello 7, dunque è strettamente legato al protocollo in uso, del quale deve
conoscere perfettamente la struttura (intestazioni) e spesso ne modifica alcuni parametri. Inoltre il proxy non è
trasparente, nel senso che un client deve essere configurato in modo opportuno affinché invii le richieste al proxy.
Proxy HTTP
Un tipico esempio di proxy è il Proxy Server HTTP integrato nel CD di Windows XP Server che consente l‟accesso
centralizzato ad Internet da parte di tutti gli host di una LAN. Un altro Proxy Server HTTP molto diffuso è Squid,
(porta standard 3128) nato in ambiente Linux ma disponibile anche per Windows. Il fatto di “uscire” attraverso un
Proxy Server invece che attraverso un semplice Router di Gateway presenta sostanzialmente 3 vantaggi:
caching: Il Proxy Server può memorizzare le pagine web per tutti gli host della rete, minimizzando il traffico
verso l'esterno. Può cioè immagazzinare per un certo tempo le pagine richieste da un utente e se un altro
effettua le stesse richieste, entro un certo timeout, può rispondere senza dover consultare il server originale. Il
pulsante “Aggiorna” del browser va comunque ad impostare un apposito parametro dell‟intestazione HTTP
in modo da forzare il Proxy ad eseguire una richiesta verso l‟esterno senza utilizzare la cache.
Controllo centralizzato: su un proxy server si possono applicare filtri abbastanza approfonditi per
determinare sia in uscita verso Internet sia sulla pagine ricevute in ingresso come risposta. Ad esempio
in USCITA si possono bloccare tutte le richieste verso uno specifico indirizzo
in INGRESSO si possono bloccare tutte le pagine che contengono ad esempio più di 10 volte certe parole.
Ci sono oggi anche dei filtri basati sui colori. Se la pagina contiene oltre il 70% di colore rosa la blocco.
Anche IE ha dei filtri di protezione, che però non sono molto efficienti.
Monitoraggio interno: un proxy può tenere traccia di tutte le operazioni effettuate (es, tutte le pagine web
visitate), consentendo statistiche sull'utilizzo della rete che però possono anche violare la privacy degli utenti
Inoltre
Nel caso di un reindirizzamento verso un Proxy HTTP, il browser invia al proxy anche le DNS Request e il
Proxy provvederà lui a risolvere i DNS Name, fornendo anche un servizio di Cache DNS.
Per i nomi non contenuti nella cache il Proxy provvederà a contattare il proprio DNS Primario.
Un proxy (come del resto anche il NAT) può garantire un maggiore livello di privacy verso
l‟esterno, mascherando il vero indirizzo IP del client che ha effettuato la richiesta. Il Proxy Server infatti
presenta all‟esterno il proprio IP, e non quelli interni alla rete locale, che risulta così maggiormente protetta.
pag 102
Sistemi - Classe Quinta robertomana.it
RETI
Nella prima finestra che compare occorre selezionare una delle seguenti voci:
“Non utilizzare mai connessioni remote” oppure
“Usa connessione remota se non è disponibile una connessione di rete
Clickare quindi sul pulsante “Impostazioni LAN” ed eseguire le impostazioni riportate nelle figure sottostanti :
Deselezionare la casella denominata Rileva automaticamente impostazioni (che serve per ICS)
Selezionare la casella denominata Utilizza un server proxy server per le connessioni LAN
Selezionare la casella denominata Ignora server proxy per indirizzi locali (*)
Proxy.vallauri.net 3128
8080
pag 103
Sistemi - Classe Quinta robertomana.it
RETI
In ambiente Windows, per facilitare l‟accesso a Internet in piccole reti locali private, è disponibile il servizio ICS che
può essere attivato sul computer che ha la connessione a Internet (che deve rimanere sempre acceso), consentendo
agli altri client della rete di collegarsi ad Internet attraverso questo servizio.
Configurazione di un server ICS sul computer gateway (cioè quello che dispone della connessione Internet) :
aprire Pannello di Controllo / Connessioni di Rete
Selezionare la connessione WAN da condividere e fare tasto destro / Proprietà
Sulla scheda Avanzate selezionare la “Condivisione Connessione Internet”
In pratica viene attivo sul PC un servizio di IP forwarding, trasformando il PC in un router d uscita verso Internet
pag 104
Sistemi - Classe Quinta robertomana.it
RETI
Il protocollo FTP
Protocollo client-server per lo scambio di file attraverso una rete TCP/IP.
Consente di eseguire download, upload, semplice spostamento di files da una cartella all‟altra del server.
A differenza di HTTP, che è senza stato (cioè stabilisce ogni volta nuove connessioni), quando un client FTP
stabilisce una connessione con un server FTP, la connessione rimane aperta e attiva anche in assenza di comandi, fino
ad un esplicito comando di chiusura. In realtà i Server FTP abbattono la connessione dopo un timeout di inattività
per cui il client, se vuole mantenere la connessione attiva, ogni n minuti deve inviare un messaggio al server.
In tal modo il server FTP può gestire informazioni di stato relative ad ogni client connesso. In particolare
l‟informaz di stato più importante gestita da FTP è la Working Directory (cartella corrente) che, all‟apertura della
connessione, corrisponde alla root directory della cartella a cui il client ha fatto accesso, e poi, finché la connessione
rimane aperta, consente al client di spostarsi da una cartella all‟altra, cioè di navigare le cartelle del server.
Il comando CWD (Change Working Directory) consente al Client di modificare la cartella di lavoro sul server.
pag 105
Sistemi - Classe Quinta robertomana.it
RETI
Il fatto di non usare una porta di ascolto fissa (es la porta 20) ma generare ogni volta porte effimere differenti,
consente al client di creare più connessioni di download (o upload) parallele. Ad esempio il client può richiedere una
prima connessione per il download di un certo numero di files, poi una seconda connessione parallela (su una
seconda porta effimera) per il download di un secondo gruppo di files e così via. Il server, per ogni client, tiene un
elenco di abbinamenti fra porte effimera ed elenco di files richiesti su quella porta effimera.
In realtà il problema potrebbe essere risolto anche utilizzando una unica porta (con dei cloni del server stesso), però
diventerebbe tutto più complicato perché, dopo aver aperto una connessione, il client dovrebbe inviare al server un
identificativo (definito dal server) relativo ai dati da scaricare.
Il grande problema della modalità passiva, indicata talvolta come “incubo dei sistemisti”, è che se a monte del server
è presente un firewall di protezione, questo non può assolutamente sapere su quale porta verrà aperto il demone dati,
per cui occorre necessariamente conoscere quali sono le porte effimere utilizzate dal SO ed aprire sul firewall
l‟intero range di porte effimere utilizzabili dal server. Negli ultimi anni sono invece nati i firewall di livello 7 che,
analizzando le intestazioni di livello 7, sono in grado di monitorare le connessioni FTP e, in corrispondenza di una
richiesta PASV, sono in grado di intercettare la risposta del server ed aprire automaticamente la porta dati scelta,
accettando soltanto connessioni dall‟indirizzo IP del client che ha inviato il comando PASV.
pag 106
Sistemi - Classe Quinta robertomana.it
RETI
TFTP e SFTP
Trivial FTP si basa sul protocollo UDP, utilizza la porta predefinita 69 ed utilizza datagram di lunghezza fissa pari a
512 bytes. Rispetto ad UDP, TFTP segmenta i dati ed applica un protocollo di tipo STOP and WAIT, cioè il
server, dopo ogni pacchetto corretto, risponde con un ACK. In assenza di ACK un apposito timer forza il rinvio del
pacchetto. TFTP è spesso utilizzato per salvare su un PC remoto la configurazione dei router.
I limiti principali rispetto ad FTP sono:
Non gestisce l‟autenticazione
Non consente di scorrere l‟albero delle directory.
I seguenti comandi, digitabili direttamente dal prompt dei comandi sia in ambiente Windows sia in ambiente Linux,
oppure mediante una sessione TELNET, consentono download e upload di un certo fileName su un TFTP Server:
tftp serverName get filename.txt c:\miaCartella\mioFile.txt
tftp serverName put filename.txt c:\miaCartella\mioFile.txt
SFTP è una versione sicura di FTP appoggiata su SSL [Porta 22]
pag 107
Sistemi - Classe Quinta robertomana.it
RETI
Il protocollo TELNET
TELETYPE NETWORK Protocollo “storico” di Internet disponibile in tutte le implementazioni TCP/IP. Definisce
un network virtual terminal (NVT terminale virtuale di rete) cioè una interfaccia testuale di comunicazione con un
server remoto. L‟utente, attraverso una interfaccia a linea di comando, può inviare comandi ad un server remoto
come se li digitasse direttamente sul server. Dal verbo "to telnet" che significa “stabilire una connessione di rete.
In pratica Telnet permette ad client di stabilire una connessione TCP con un server remoto in ascolto di default sulla
porta 23. Stabilita la connessione, Telnet rilancia al server remoto i caratteri digitati sulla tastiera dell'utente come se
essi fossero stati digitati sul server. Infine il server rimanda l'output indietro al client. Il servizio è definito trasparente
perché dà l'impresssione che la tastiera e lo schermo dell'utente siano attaccati direttamente alla macchina remota.
In ambiente Windows è disponibile un semplice Client Telnet (“telnet.exe" nella cartella "windows”).
Per lanciare il client TELNET occorre scrivere :
"telnet" nella finestra del prompt dei comandi
Pulsante START, esegui "telnet".
E‟ anche possibile specificare un numero di porta diversa dalla porta standard del servizio telnet, in modo da
connettersi a servizi differenti quali ad esempio un Mail Server o un Web Server e “dialogare" con essi utilizzando
l'opportuno protocollo. Anzi, dal momento che i Server Telnet sono ormai praticamente in disuso, l‟unico utilizzo
ancora esistente del protocollo Telnet è quello di amministrazione di server remoti attraverso una rete, nel qual caso il
client telnet si limita a stabilire la connessione con il server. L‟utente dovrà poi inserire i comandi testuali da inviare
al server ed il client telnet provvederà ad inviare i comandi al server esattamente come farebbero un browser oppure
un client di posta. Un utilizzo classico di telnet è il collegamento ad un server di posta per eseguirne il debug. Es:
telnet mail.valluri.edu 25
telnet www.google.it 80
L‟ultima riga rappresenta un modo estremamente rapido per vedere se un host è in grado di uscire verso internet.
Se non si generano errori, significa che l‟uscita è ok ed il server HTTP è in attesa di comandi.
Una volta stabilita la connessione, l‟utente può digitare gli specifici comandi testuali da inviare al server.
In corrispondenza di ogni invio il client Telnet provvede ad inviare la richiesta al server
L’utilizzo del protocollo Telnet attraverso Internet è sconsigliato per ragioni di sicurezza. I daemon telnet, scritti agli
inizi degli anni 80, sono abbastanza leggeri e quindi facilmente vulnerabili. Inoltre Telnet non esegue crittografia.
pag 108
Sistemi - Classe Quinta robertomana.it
RETI
Posta Elettronica
Servizio client – server leggermente diverso rispetto al solito modello di un client che si connette al server per
ricevere delle informazioni. E‟ costituito dai seguenti componenti fondamentali
un Mail Server (es Microsoft Exchange Server) che gestisce un insieme di Mail Box (Caselle di Posta)
un protocollo SMTP che inoltra le mail ai Mail Server e le accoda nelle Mail Box
un Client di Posta (detto User Agent, ad es Outlook Express e Eudora Light ora sostituito da Netscape
Messenger) che opera off-line e si connettono al Mail Server solo per inviare nuovi messaggi (mediante il
protocollo SMTP) o per scaricare i messaggi ricevuti (mediante i protocolli POP3 o IMAP).
pag 109
Sistemi - Classe Quinta robertomana.it
RETI
Il messaggio viene salvato mediante una struttura simile a quello delle pagine html, (con una head ed un body
contenente il messaggio vero e proprio). La sequenza testuale <CR><LF>.<CR><LF> indica la fine del messaggio.
Se si desidera scrivere realmente un singolo puntino su una riga vuota occorre scrivere .. (esattamente come l‟apice
in VB). Quando si scrive un messaggio tramite un client di posta, il raddoppio del puntino viene eseguito
automaticamente dal Client stesso.
La head complessiva sarà composta dai seguenti campi. espressi nel formato nome : valore
From : mittente
To : Destinatari/o principale. Le voci possono essere suddivise indifferentemente da virgola o punto e virgola
Cc : (Carbon Copy) Per conoscenza
Bcc : (Blind Carbon Copy) Per conoscenza nascosta (CCn in italiano)
Subject : Oggetto della mail
Reply-to : indirizzo al quale inviare la risposta (se il ricevente selezionerà RISPONDI). Per default uguale al mittente
Raramente i client di posta ne consentono la modifica
Received : server attraversato lungo il percorso. Possono esserci più righe di questo tipo, una per ogni Server attravers
Nota: Il comando Help:
C: HELP
S: Visualizza l’elenco dei comandi disponibili sul Server
C: HELP NOOP // Help del comando NOOP
La codifica base64
Inizialmente gli allegati non testuali non venivano trasmessi in forma binaria, ma venivano trasformati in file testuali
mediante la codifica base64. Questo perché alcuni fra i primi 32 caratteri della tabella ASCII erano utilizzati come
caratteri di controllo dei modem, per cui la loro trasmissione poteva provocare comportamenti indesiderati da parte
del modem (es End Of Trasmission). Per cui tutti gli allegati venivano trasformati in testo ed accodati alla mail in
modo da creare un unico file testuale detto multipart, contenente cioè una sezione principale per il testo ed un
sezione per ogni allegato. Oggi che i modem servono soltanto a stabilire la connessione e modulare il segnale, è
possibile inviare sia mail testuali multipart, sia allegati in formato binario (dipende dall‟impostazione del Client).
pag 111
Sistemi - Classe Quinta robertomana.it
RETI
Protocollo sempre di tipo Client – Server, con porta 110, basato su messaggi testuali gestibili anche tramite Telnet.
Consente, attraverso uno User Agent, di scaricare i messaggi dal Mail Server allo User Agent.. Caratteristiche :
1. POP3 non gestisce attributi di stato, tutto quello che “trova” sulla Mail Box lo scarica sul client e poi lo
cancella
2. Una interessante opzione (presente sullo User Agent) consente di “Conservare una copia dei messaggi sul
server”, in modo che possano essere scaricati su più Client in momenti differenti (in pratica si richiede a POP3
di evitare il DEL finale). In questo modo però ogni utente scarica sempre tutte le mail presenti sul server e
assenti sul client. Se scarica una mail e poi la cancella, la volta dopo la mail viene di nuovo scaricata.
3. Non prevede comandi per la gestione delle cartelle, cioè non è possibile creare nuove cartelle sul Server e
spostare messaggi da una cartella all‟altra. Per ogni utente utilizza soltanto la cartella “Posta in Arrivo”
Il protocollo POP3 va bene quando un unico utente accede alla mailbox da una unica postazione.
Spesso i provider di Web Mail gratuite impediscono l‟accesso alla posta elettronica via POP3 in quanto molti
aspetti pubblicitari andrebbero persi, ma si cerca di costringere l‟utente a consultare la posta via web, o acquistare un
account a pagamento. Al contempo sono sorti diversi programmi per aggirare l‟ostacolo (es FreePops).
SPOP3 (Secure POP) utilizza una connessione sicura tramite SSL, con porta di ascolto 995.
Il protocollo IMAP
Proposto nel 1986 rappresenta una alternativa più moderna a POP3 e rappresenta la base delle Web Mail.
Interactive Mail Access Protocol fino alla versione 3 (porta 220)
Internet Message Access Protocol dalla versione 4 in avanti (attualmente 4.1) (porta 143)
Mentre POP3 si basa sul presupposto che un solo client acceda alla mailbox tramite client di posta,
IMAP parte dal presupposto che l‟utente possa collegarsi al Server di Posta da più postazioni differenti.
La differenza principale tra POP3 e IMAP è che IMAP lascia le mail sul server mentre POP3 le scarica sul
client. IMAP richiede quindi un server estremamente capiente. Le web mail sono tutte IMAP e di solito assegnano
uno spazio disco abbastanza ridotto (max 1 GB) che per un‟azienda è troppo poco.
Nel caso degli account a pagamento con spazio disco maggiore, spesso e volentieri i provider non concedono
l‟accesso IMAP al Server (se non a prezzi ancora più elevati), proprio per invogliare gli utenti a scaricare la posta sui
client e non saturare troppo i server Oltretutto spesso le aziendepreferiscono usare i client di posta che presentano
molte più funzionalità e che, tramite POP3, possono scaricare le email dal server senza più alcun limite di capienza.
pag 112
Sistemi - Classe Quinta robertomana.it
RETI
Caratteristiche di IMAP:
1) Mentre POP3 scarica sempre l‟intera e-mail, con IMAP4 per default i messaggi rimangono residenti sul server
e, in corrispondenza del download, viene scaricata soltanto l‟intestazione del messaggio senza il body e senza
gli allegati. Permette di scaricare in un secondo momento singole parti MIME o addirittura sezioni di parti MIME.
Il corpo del messaggio viene scaricato soltanto nel momento in cui l‟utente, sul client di posta, seleziona il
messaggio per il download. Ogni volta viene creata una nuova connessione TCP. Idem per gli allegati. In questo
modo l‟utente può scegliere quali messaggi leggere e quali cancellare senza nemmeno scaricarne il contenuto.
2) IMAP gestisce per ogni messaggio particolari attributi di stato mediante i quali il client può tenere traccia dello
stato di ogni messaggio, (es msg già scaricato o già letto). Se lo stesso utente si collega al server da postazioni
diverse, una mail letta da una postazione verrà contrassegnata come “LETTA”, e risulterà “LETTA = True” anche
quando l‟utente si collega da altre postazioni. Per quanto riguarda il download sui client di pota, ogni client può
sincronizzare la propria vista con quella del server.
3) IMAP prevede una serie di comandi per la creazione di nuove cartelle all‟interno della medesima Mail Box, con
la possibilità di spostare messaggi da una cartella all‟altra (Mail Box utente articolata su due livelli).
IMAP può anche utilizzare una connessione sicura tramite SSL, con porta di ascolto 993.
Web Mail
Una Web Mail è un'interfaccia web che un Mail Server mette a disposizione dell‟utente per accedere alla
propria casella di posta via HTTP, cioè senza dover utilizzare User Agent locali. Sul Server di Posta, oltre al Mail
Server, viene in pratica attivata anche una applicazione web in ascolto sulla porta 80
Il visitatore, attraverso HTTP, scrive all‟interno di una pagina dinamica ASP il contenuto del messaggio da spedire.
In corrispondenza di un apposito Submit, l‟applicazione Web, come un normale Client di Posta, invia una richiesta
SMTP sulla porta 25 del Mail Server, “chiedendogli” di spedire il messaggio. Copia del messaggio viene
memorizzato dal Mail Server nella Casella di “Posta Inviata”.
In ricezione il web server, sempre come un normale Client di Posta, accede lui alla Mail Box mediante IMAP,
richiedendo la lista delle intestazioni di tutti i messaggi presenti, che verranno poi mostrati all‟interno di una griglia.
In sostanza il visitatore utilizza sempre comandi HTTP che il web server provvede a “tradurre” in comandi IMAP.
L‟accesso alla pagina di Web Mail, come per tutte le pagine web, può essere in chiaro oppure cifrato mediante
HTTPs. (tiscali presenta un check di attivazione selezionabile al momento del login). Velocità contro sicurezza.
Anche altri servizi come IM e VoIP sono oggi principalmente utilizzati con interfaccia web con funzionamento
simile alla posta. Idem per Drop Box riguardo a FTP.
pag 113
Sistemi - Classe Quinta robertomana.it
RETI
3) Algoritmi di Hash
Gli algoritmi di hash (detti anche one way hash in quanto unidirezionali), consentono di trasformare una
qualunque sequenza binaria (in genere testo) di lunghezza arbitraria in una stringa di lunghezza fissa
relativamente limitata (128 bit oppure 256 bit).
Questa stringa rappresenta una sintesi del messaggio (message digest), cioè una vera e propria impronta
digitale univoca e irreversibile (si pensi di nuovo alla formula irreversibile di Diffie Helmann)
La principali caratteristiche delle funzioni di hash sono le seguenti.
1) dato un messaggio si può facilmente calcolare il suo valore di hash
2) dato il valore di hash è impossibile risalire al messaggio (per questo one way hash)
3) E‟ altamente improbabile generare due messaggi con lo stesso digest (probabilità tendente a zero).
I più conosciuti algoritmi di Hash sono MD5 (Message Digest v5) e SHA
Gli algoritmi di hash sono spesso utilizzati :
Per l‟autenticazione (es protocollo CHAP utilizzato da PPP per l‟autenticazione presso un ISP. Il server invia
al client una stringa casuale che il client concatena con la propria password e crea un digest MD5 da inviare
al server che genera lo stesso digest e lo confronta). In questo modo il digest cambia ogni volta.
Un‟altra tecnica può essere quella di memorizzare nel database direttamente il digest della password.
Nello scambio di informazioni fra dispositivi di rete. Ogni dispositivo deve conoscere una password
condivisa. Chi trasmette aggiunge in coda una impronta relativa a “messaggio da trasmettere + chiave”.
Chi riceve per verificare l‟integrità del pacchetto ricalcola il digest confrontandolo con quello ricevuto.
SSL : Utilizzo di chiavi miste SSL utilizza le due chiavi RSA soltanto per comunicare una chiave simmetrica
segreta (chiave di sessione) che poi verrà usata dai due end point per la comunicazione cifrata dei dati.
pag 115
Sistemi - Classe Quinta robertomana.it
RETI
Certificati Digitali
Un certificato digitale è un certificato di identità elettronico, cioè un documento elettronico che associa
l'identità di una persona ad una chiave pubblica.
Il Certificato Digitale viene emesso da una autorità di certificazione riconosciuta detta CA Certification Authority
(es Thawte-VeriSign) dopo una accurata analisi del soggetto richiedente e viene firmato con la chiave privata
dell'autorità stessa che appone al certificato la propria firma digitale (CERTIFICATE SIGNATURE)
Il Certificato Digitale è regolato da un preciso standard internazionale X.509, basato sull‟algoritmo RSA a 2048 bit
(cioè 256 bytes standard attuale X.509 v3, mentre lo standard precedente v2 prevedeva 1024 bit cioè 128 bytes)..
La procedura di creazione di un Certificato Digitale è la seguente:
1. Il soggetto interessato genera la propria coppia di chiavi RSA (pubblica e privata) oppure chiede all’Ente
Certificatore di genere per lui una coppia di chiavi
2. Il soggetto si identifica presso uno sportello del CA e fornisce le proprie generalità ed, eventualmente, la sua
chiave pubblica da inserire nel Certificato Digitale
3. Dopo una serie di procedure, il CA approva la richiesta di certificazione e genera il Certificato Digitale
4. l'utente riceve il Certificato Digitale firmato dalla Certification Authority mediante apposita chiave privata.
Ogni CA deve obbligatoriamente mantenere una Lista pubblica dei Certificati emessi e dei Certificati Revocati
(Certification Revocation List). Nei Certificati è contenuto anche un link a queste informazioni.
Il Certificato Digitale viene tipicamente distribuito mediante file .DER e contiene le seguenti informazioni:
nome del proprietario a cui è stato rilasciato il Certificato
il nome del dominio associato al Certificato
chiave pubblica a 2048 del certificato (visualizzabile in forma esadecimale)
nome della CA che ha firmato il Certificato Digitale
numero di serie del Certificato
validità del Certificato (data di inizio e data di scadenza)
La firma digitale del CA (CERTIFICATE SIGNATURE) e l’algoritmo utilizzato per la firma (MD5 o SHA)
La distribuzione di Certificato Digitale + Chiave Privata avviene mediante files di tipo pkcs (con estensione pfx, spc
o p7b) che, in fase di installazione provvederanno a scindere la chiave privata dal Certificato Pubblico.
pag 116
Sistemi - Classe Quinta robertomana.it
RETI
Esempio di Certificato Digitale (file ca.der visualizzabile con un semplice doppio click)
Catena di Certificazione
Un ente certificato da un CA può utilizzare il proprio Certificato Digitale per creare nuovi Certificati Digitali a
catena in cui il Certificato Digitale dell‟ente viene passato come parametro al programma di creazione del nuovo
certificato. Ad es VeriSign vende un Certificato Digitale ad un Ente intermedio (es Energit), il quale lo usa per creare
Certificati Digitali propri da vendere a sua volta sul mercato ad esempio a Vallauri.
Al momento della creazione del Certificato Digitale di Vallauri, Energit usa la propria chiave privata per firmare
il Certificato di Vallauri. All‟interno del “Percorso di Certificazione” del Certificato così creato verranno indicati
prima Energit e quindi VeriSign. Con un doppio click sul Certificato Digitale di Vallauri, all‟interno dell‟ultima
finestra “Percorso di Certificazione”, è possibile verificare l‟intera catena di Certificazione del Certificato
Nel momento in cui un utente tenta di utilizzare il Certificato di Vallauri, il browser provvede automaticamente a
scaricare il Certificato dell‟Ente firmatario (Energit) che verrà installato nella apposita sotto cartella delle Autorità
Intermedie. Aprendo le firme digitali a catena, il browser arriva così a stabilire l‟attendibilità del Certificato.
pag 117
Sistemi - Classe Quinta robertomana.it
RETI
Autenticazione Bilaterale
Il protocollo TLS permette anche un'autenticazione bilaterale (detta Mutual authentication), utilizzata in applicazioni
aziendali e nella posta, in cui entrambe le parti devono disporre di un Certificato Digitale (improbabile in un normale
scenario web) ed entrambi si autenticano in modo sicuro scambiandosi i relativi certificati.
pag 118
Sistemi - Classe Quinta robertomana.it
RETI
Sessione Applicativa
Client e Server trasmettono i dati codificandoli con la chiave simmetrica concordata. In coda ad ogni messaggio l‟EP
autenticato ( il server, oppure entrambi in caso di autenticazione bilaterale), aggiunge la propria Firma Digitale che
consiste in una impronta MD5 univoca cifrata con la chiave privata. Il ricevente, utilizzando il Certificato Digitale
del mittente, verifica la firma digitale che garantisce sia l‟integrità del messaggio sia l‟autenticità del mittente.
PGP
In quest‟ottica è nato il protocollo PGP (PRETTY GOOD PRI VACY) proposto nel 1991 da Zimmermann e
distribuito gratuitamente nella sua versione base sul sito PGP (a pagamento per le versioni complete). PGP nasce
nell‟ambito della posta ma può essere utilizzato, ad esempio, anche per memorizzare un file su un FTP server.
PGP si basa infatti sullo stesso meccanismo a chiave pubblica/privata di SSL, ma non prevede il concetto di CA.
Chiunque può emettere una coppia di chiavi pubblica / privata distribuendo la propria chiave pubblica.
Nel caso della Posta, PGP utilizza un sistema di crittografia misto: il sistema a chiavi pubbliche RSA, quello a chiave
simmetrica IDEA (con chiave a 128 bit generata casualmente ad ogni connessione) più l‟algoritmo di hashing MD5.
La chiave simmetrica anziché essere concordata durante l„handshake viene generata da chi spedisce il messaggio e
conglobata nel messaggio stesso nel modo seguente:
Solo il destinatario, con la propria chiave Privata, può recuperare la chiave simmetrica IDEA utilizzata per la cifratura
decodificarlo, ricalcolare il Digest e confrontarlo con quello ricevuto in modo da avere garanzia del mittente.
Quando ciascun corrispondente dispone della chiave pubblica dell‟altro, entrambi possono iniziare ad inviare email
cifrate (in outlook ultimo pulsante della toolbar, quello con il lucchetto blu) allegando la chiave simmetrica di
cifratura secondo il meccanismo di PGP.
pag 119
Sistemi - Classe Quinta robertomana.it
RETI
Virus e Antivirus
I virus sono piccoli segmenti di codice che di solito vengono accodati ad un normale file, documento o eseguibile.
Quando l‟eseguibile viene lanciato o il documento caricato in memoria, il virus entra in azione, duplicandosi su altri
file ed eseguendo azioni più o meno dannose. Tra i virus più frequenti:
E-mail virus vengono accodati ad un allegato di posta elettronica. Nel momento in cui l‟allegato viene aperto, il
virus provvede automaticamente a rispedire il messaggio a tutti gli indirizzi presenti in rubrica e ad attaccare la
macchina. Famoso virus di questo tipo “I Love You” del marzo 2000 che utilizzava una macro inserita in un
documento word ed avviata all‟apertura del documento che andava a cancellare tutti i file di sistema della macchina.
Questo è il motivo per cui ora le impostazioni Office Microsoft per default disabilitano le macro.
HTML virus simili ai precedenti sono memorizzati all‟interno di appositi script delle pagine html. Vengono attivati
in corrispondenza dell‟onLoad della pagina o sul click di un certo pulsante “Click qui per vincere 500 $”. Per
questo i browser per default hanno disabilitato l‟esecuzione degli script. Con il fatto che i messaggi di posta
elettronica possono essere scritti anche in formato HTML, questi virus possono essere inseriti anche direttamente nel
messaggio di posta ed eseguiti non appena il messaggio viene aperto.
Trojan Horses Programmi da installare che dichiarano di fare una cosa (es un gioco) e poi in realtà vanno a fare
danni o peggio ancora operano in background aprendo delle porte di comunicazione verso l‟esterno che consente ad
eventuali hacker sia di leggere le informazioni memorizzate sia di utilizzare la macchina per attacchi ad altre
macchine della rete.
Worm Letteralmente verme. Piccoli segmenti di codice che eseguono uno scan della rete per replicarsi su tutte le
macchine possibili, sfruttando eventuali porte aperte o bug di rete. Per un certo numero di giorni si replicano, dopo di
che entrano in azione. Famoso virus di questo tipo Code Red che nel 2001, sfruttando un bag di IIS e partendo da un
sito infetto, eseguì una scansione di Internet alla ricerca di altri server IIS su cui per duplicarsi. Dopo 20 giorni di
repliche, alle 00:00 GMT del 20 luglio 2001 lanciò un attacco ai web server della Casa Bianca saturandoli di richieste
web (lanciate contemporaneamente, grazie alle repliche, da tantissime postazioni differenti). La Casa Bianca fu
costretta a cambiare indirizzo IP. Microsoft eliminò l‟installazione di IIS dal default di Windows XP.
Antivirus
Gli antivirus sono programmi mirati ad individuare file infetti e ripulirli. Contengono al loro interno un database di
“stringhe virali” identificative di tutti i virus conosciuti. Essi operano secondo due modalità:
1) Possibilità di eseguire una scansione dell‟intero disco (o di singole porzioni) analizzando tutti file presenti e
ricercando al loro interno l‟eventuale presenza di una stringa “virale” che viene in tal caso rimossa. Questo approccio
diventa sempre più difficoltoso in quanto i virus sono spesso “criptati” in modo che uno scanner non riesca più ad
individuare stringhe univoche.
2) Analisi on-the-fly, cioè controllo in tempo reale dell‟esecuzione di un programma. Vengono controllate tutte le
chiamate alle API Windows o alle interrupt DOS, analizzando i comportamenti sospetti ed eventualmente
segnalandoli all‟utente. Appesantisce però notevolmente l‟esecuzione.
McAfee
Norton
Symantec
Antivirus centralizzati
Attualmente gli antivirus sono installati direttamente sui Server di Rete (antivirus - enterprise), su cui viene
installata la parte Server dell‟antivirus che provvede poi alla distribuzione automatica degli Agent Client su tutti nodi
di rete. Eseguita la distribuzione, il server provvederà anche al push automatico e costante degli aggiornamenti .
L‟antivirus centralizzato si occupa della scansione del traffico internet (sia pagine html sia e-mail con i rispettivi
allegati), ma anche della scansione del traffico interno, con particolare attenzione al file system del server (vengo
scansionati tutti i files inviati server per evitare pericolose epidemie).
pag 120
Sistemi - Classe Quinta robertomana.it
RETI
Esporre su Internet una porzione di rete locale significa avere un Server Web o un Server di Posta in Azienda e, al
contempo, accessibili da Internet. Il fatto di avere i dati “fisicamente” posizionati all‟interno della propria rete, ne
semplifica notevolmente gestione e manutenzione. Per contro si può delegare ad un Maintainer esterno la gestione
del servizio DNS che è l‟operazione più complessa (nonostante i pochi aggiornamenti necessari).
I passi da seguire per esporre su Internet una porzione di rete locale sono i seguenti:
L‟acquisto di indirizzi IP può essere effettuato soltanto a potenze di due a partire a 4, cioè 4, 8, 16, etc.
Nel caso di acquisto di una intera rete di indirizzi IP l‟indirizzo “esterno” del router di uscita verso internet
sarà comunque deciso dall‟ISP, che dovrà anche provvedere a programmare la tabella di routing del router
stesso. Gli indirizzi acquistati potranno essere utilizzati a valle del router per l‟indirizzamento della “parte
pubblica” della rete interna.
In caso di acquisto di soli 4 indirizzi IP,
un indirizzo dovrà essere utilizzato come indirizzo di rete,
un indirizzo dovrà essere utilizzato come broadcast,
un indirizzo dovrà essere utilizzato per la porta interna del router
un solo indirizzo potrà essere utilizzato per il reale indirizzamento.
In questo caso l‟unico indirizzo disponibile potrà essere utilizzato per indirizzare un singolo PC oppure per
indirizzare un secondo router a valle del router dell‟ISP (esattamente come se si disponesse di un unico
indirizzo IP). Peraltro la necessità di utilizzare un secondo router a valle del router dell‟ISP spesso deriva dal
fatto di non poter pienamente configurare a proprio piacimento il router dell‟ISP, per cui si collega in
modalità punto punto un secondo router in grado di risolvere tutte le specifiche esigenze. Per il collegamento
punto punto fra i due router si possono però tranquillamente utilizzare indirizzi priati.
pag 121
Sistemi - Classe Quinta robertomana.it
RETI
pag 122
Sistemi - Classe Quinta robertomana.it
RETI
Graficamente l‟apertura delle porte in ingresso può essere rappresentata nel seguente modo:
La colonna “Public IP DEST” normalmente è sottintesa, riferendosi ovviamente alla porta WAN del router.
Avendo a disposizione un unico indirizzo pubblico, ogni “Servizio” accettato in ingresso deve essere riferito ad
una porta differente. Sulla base della porta e della ATT, il Firewall deciderà su quale server instradare i messaggi.
pag 123
Sistemi - Classe Quinta robertomana.it
RETI
Sul secondo firewall sono impostate delle regole molto stringenti che consistono nel bloccare tutte le richieste di
accesso, tranne singole e specifiche eccezioni. In genere sono ammessi soltanto comunicazioni specifiche tra un
server di front-end con il suo rispettivo server di back-end, e solo sulla singola porta necessaria. Ad esempio il web
server del DMZ, (con indirizzo 192.168.0.3), può inviare richieste soltanto verso la macchina della LAN contenente
il Database Server (es SQL Server in ascolto sulla porta 1433 o 1521 nel caso di sql net).
In questo modo, anche supponendo che un hacker possa riuscire ad attaccare un server pubblico, da esso
non riuscira' a fare partire un ulteriore attacco verso le macchine locali prima che i sistemi antiintrusione
(funzione IDS degli antivirus) lo abbiano identificato ed abbiano intrapreso le adeguate contromisure
difensive.
Schema Logico
Da un punto di vista logico, la situazione precedente può essere illustrata nel modo seguente:
1.2.3.4 10.0.0.1
192.168.0.0
Le richieste che arrivano da Internet vengono filtrate dal primo Firewall che le “gira” al DMZ senza possibilità di
accesso alla rete interna. Le richieste provenienti dalla LAN arrivano al Proxy Server della LAN che sostituisce
l‟indirizzo IP del richiedente con il proprio indirizzo IP (10.0.0.2) ed invia la richiesta al proprio Default Gateway (1°
Firewall 10.0.0.1). Il Firewall la gira al secondo Firewall che, tramite NAT, sostituisce ancora una volta l‟indirizzo
del mittente (10.0.0.2) con il proprio indirizzo pubblico (1.2.3.4) e la invia all‟esterno.
Schema Fisico
In genere, anziché utilizzare due macchine Firewall indipendenti, si utilizza una un unico Router dotato di una
interfaccia WAN (collegata al Router Pubblico) e due interfacce LAN collegate rispettivamente a LAN e DMZ.
192.168.0.1 10.0.0.1
1.2.3.4
pag 124
Sistemi - Classe Quinta robertomana.it
RETI
Per quanto riguarda il DNS Server, impostati e salvati i file di configurazione, ripristinare il Server è una operazione
abbastanza veloce. Inoltre se il DNS server rimane giù per qualche ora non è un problema gravissimo, in quanto gli
altri DNS Server hanno l‟indirizzo in cache e riescono comunque a raggiungere il sito web locale.
Viceversa, esporre direttamente su Internet un Mail Server(che contiene tutte le caselle di posta con i rispettivi dati),
è abbastanza pericoloso in quanto anche il solo backup periodico delle caselle di posta è operazione estremamente
onerosa. Un‟ulteriore accorgimento per la sicurezza è quella di spostare Mail Server e Web Server nella MZ
(facendoli diventare Server di Back End) ed esporre nel DMZ dei semplici Server Reverse Proxy,
Il Reverse Proxy è un server proxy gestito al contrario, che ridirige cioè le richieste provenienti da Internet verso i
server locali e le reindirizza verso un preciso indirizzo locale. I Server Proxy come SQUID, oltre che come Proxy,
possono in genere operare anche come Reverse Proxy.
Trattandosi di un protocollo di livello 7 provvede ad “aprire” i pacchetti fino alle intestazioni più interne (livello 7)
ricostruendo poi l‟intero stack di intestazioni facilitando ulteriori verifiche sull‟affidabilità dei pacchetti.
Il Reverse Proxy memorizza le richieste all‟interno di una apposita cache (informazioni relative al socket richiedente)
e poi ricostruisce la richiesta inviandola al server locale corrispondente. Anche se un Reverse Proxy è in grado di
gestire più porte contemporaneamente, si preferisce di solito utilizzare più macchine differenti una per ogni servizio.
In questo modo se una macchina si ferma, l‟altro servizio rimane attivo e viceversa.
In questo modo:
Tutti i messaggi di posta sono “protetti” sul server locale.
Il Server di Posta, essendo locale alla LAN, può fungere anche da MAIL Server interno per la posta locale.
Se per qualche motivo il Server principale di Posta viene arrestato, il Proxy esterno può continuare a
ricevere messaggi ed eseguire cache dei messaggi ricevuti. (evitando il cosiddetto single point of failure)
Il web server, posizionato all‟interno della LAN, può accedere in sicurezza ai Server di database
appartenenti alla stessa rete locale ed aggiornati sempre per via locale.
Sul Reverse Proxy relativo alla posta occorre aprire anche la porta 80 con ridirezione delle richieste verso il Mail
Server interno.
pag 125
Sistemi - Classe Quinta robertomana.it
RETI
ACL
Le Access Control List, sono Liste di REGOLE mirate a controllare il traffico in transito su un router statefull
inspection. Ogni entry dell‟Access Control List abilita o nega il passaggio dei pacchetti. Le ACL semplici (oggi
poco significative) tengono conto soltanto dell‟indirizzo IP Source, mentre le ACL Extended sono costituite dalle
seguenti 4 colonne :
Porta Destinazione Indirizzo Destinazione Indirizzo Sorgente Azione
Sono possibili due tipi di Access List, a seconda di come viene impostato l‟ultimo record in fondo alla lista :
Nega tutto tranne i pacchetti che trovano corrispondenza nelle entry precedenti (entry di consenso)
Lascia passare tutto tranne i pacchetti che trovano corrispondenza nelle entry precedenti (entry di negazione
Naturalmente la prima soluzione fornisce maggiore sicurezza e dunque risulta preferibile.
Le Access Control List possono essere definite su ogni singola interfaccia del router e, su ogni interfaccia, possono
essere definite come
INBOUND (cioè riferite al traffico entrante nel router)
OUTBOUND (cioè riferite al traffico uscente dal router).
Quando un pacchetto si presenta all‟interfaccia del router (indipendentemente che provenga dall‟esterno o dal router),
il router verifica (1) se su quella interfaccia è stata definita una ACL (2) se la ACL è definita nella stessa direzione
del pacchetto (cioè se la ACL è INBOUND ed il pacchetto è entrante nel router oppure se la ACL è OUTBOUND ed
il pacchetto è uscente dal router) (3) In caso affermativo verifica se il pacchetto soddisfa ai requisiti dell‟ACL. Una
ACL OUTBOUND non ha influenza sul traffico INBOUND e viceversa.
E‟ buona norma impostare le ACL Extended sull‟interfaccia del router più vicina alla sorgente,
tenendo in conto tutte le possibili sorgenti. Cioè in pratica, quando le sorgenti da filtrare sono multiple, la ACL va
inserita sulla porta comune più vicina rispetto a tutte le varie sorgenti. In questo modo si evita di inviare in rete
pacchetti che verranno poi tagliati da ACL successive.
Esempio
Si consideri la 2° soluzione precedente con un router a 3 porte collegate rispettivamente a :
Rete Interna 10.0.0.0 DMZ 192.168.0.0 (.2 DNS server, .3 Web server, 4 Mail Server) WAN 1.2.3.4
pag 126
Sistemi - Classe Quinta robertomana.it
RETI
Dopo aver impostato sul Router una apposita tabella di routing, si possono impostare:
una ACL INBOUND sulla porta WAN,
una ACL OUTBOUND molto selettiva sull‟interfaccia LAN relativa alla rete interna.
Sull‟interfaccia DMZ in genere non si impostano ACL Sull‟interfaccia WAN occorre abilitare il servizio NAT sia in
uscita per consentire l‟accesso ad Internet sia in ingresso in modo da consentire l‟accesso ai server del DMZ.
In uscita verso la WAN non vengono impostate ACL OUTBOUND, lasciando tutte le porte aperte ed inserendo
eventuali filtri di navigazione come ACL INBOUND sulla interfaccia relativa alla LAN.
pag 127
Sistemi - Classe Quinta robertomana.it
RETI
Esercizio
Data la rete in figura definire e posizionare correttamente una o più ACL in modo tale che:
A. dalla rete Internet sia possibile solo accedere al Web server
B. agli host della rete 192.168.1.0 sia consentito accedere agli host della rete 192.168.2.0 ma non viceversa
C. agli host delle due reti 192 non sia possibile accedere al Web server
D. solo agli host della rete 192.168.2.0 sia consentito navigare in Internet
Web server
90.90.90.90
R1
3 R2
4 2 1
2
1
Rete 192.168.1.0/24 Rete 192.168.2.0/24
Internet
pag 128
Sistemi - Classe Quinta robertomana.it
RETI
pag 129
Sistemi - Classe Quinta robertomana.it
RETI
pag 130
Sistemi - Classe Quinta robertomana.it
RETI
Accesso Primario E‟ possibile richiedere al gestore l‟utilizzo di una configurazione 5B+D (cioè 6 canali
complessivi, indicati come canale H), oppure l‟utilizzo di un intero gruppo primario costituito da 30 canali dati a 64
kbps ciascuno, più un canale di servizio (CH16) ed uno di sincronismo (CH0) sempre a 64 kbps. Questo accesso
(detto Accesso Primario) utilizza un intero Multiplo Primario PCM con velocità complessiva di 64 kbps x 32 canali
= 2,048 Mbps ed è distribuito mediante borchia NT. E‟ possibile richiedere al gestore anche un n di canali inferiore a
30 (es 10 o 15). In questi casi per ogni terminale possono essere riservati numeri telefonici separati ma contigui.
Stato Attuale: La rete ISDN non ha avuto grande fortuna, perché ha avuto tempi di sviluppo e realizzazione tecnica
troppo lunghi e, nel momento in cui è stata disponibile, è stata presto superata dalla comparsa delle linee ATM ADSL
pag 131
Sistemi - Classe Quinta robertomana.it
RETI
Gestione dell‟instradamento
Al fine di poter avere una maggiore flessibilità ed un miglior utilizzo degli indirizzi DLCI, i DLCI hanno soltanto
validità locale, nel senso che sono univoci per un‟utenza ma solo localmente fino al prossimo Frame Relay Switch, e
non sull‟intera rete. Ogni FRS gestisce delle tabelle di stato in cui ogni entry contiene il DLCI di un circuito virtuale
attivo su quel nodo ed il corrispondente DLCI di uscita. Sulla base di queste tabelle, in corrispondenza di ogni frame
in transito, l‟FRS provvede a leggerne il DLCI del frame e a sostituirlo con il DLCI corrispondente contenuto
all‟interno della tabella di stato. Programmando opportunamente tutti i vari FRS risulta abbastanza facile “stabilire”
un Permanent Virtual Circuit tra i due end point.
Stato attuale
Nato come protocollo di base per rete commutata a larga scala, pur avendo in parte fallito l‟obiettivo iniziale visto
che le attuali reti a larga scala sono oggi ATM, Frame Relay è stato leggermente modificato con l‟introduzione del
Global Addressing per essere utilizzato come tecnologia punto punto di l‟interconnessione fra LAN remote.
Allo stato attuale si può definire Frame Relay come una rete multipoint di tipo Permanent Virtual Circuit, in cui
ogni connessione utilizza sempre lo stesso percorso sul quale transitano tutti i frames relativi a quella connessione.
Frame Relay è utilizzato anche all‟interno della rete GSM per le comunicazioni tra il BSS e la rete telefonica fissa
Collegamenti dedicati
Perché reti dedicate? Spesso a livello aziendale nasce l‟esigenza di consentire l‟accesso ad una rete locale anche a
filiali o enti esterni. Non è nemmeno pensabile di esporre su Internet un database server o un SMB server in
quanto, seppur protetti da una password, risulterebbero facilmente attaccabili da chiunque. Di qui nasce l‟esigenza di
un collegamento dedicato e quindi protetto fra la sede centrale di un‟azienda e le sue filiali.
Una linea dedicata è un canale di comunicazione affittato in modo permanente da un gestore di telecomunicazioni.
E‟ possibile affittare tre differenti tipi di linee dedicate:
Linee CDA (Collegamento Diretto Analogico) cioè l‟affitto di un canale fonico analogico con banda lorda di
4 KHz. Tecnica ormai assolutamente in disuso.
Affitto di una linea CDN (canale digitale ISDN a commutazione di circuito)
Affitto di una linea Frame Relay (a commutazione di pacchetto)
Recentemente si sono diffuse le reti VPN molto più economiche, ma meno affidabili per continuità di servizio
pag 132
Sistemi - Classe Quinta robertomana.it
RETI
Nel caso di collegamenti punto – punto CDN opera con due router (con modulo CDN) serialmente interconnessi tra
loro. Nel caso di connessioni multipunto CDN, trattandosi di un collegamento a commutazione di circuito, ogni
connessione è vista come una rete punto-punto a sé stante, per cui risulta il seguente schema di rete :
Frame Relay
L‟affitto di linee virtuali punto – punto di tipo Frame Relay fu proposto per la prima volta negli USA nel 1993 da
AT&T sulla base delle seguenti considerazioni:
All‟interno di una linea punto-punto ogni Virtual Circuit è identificato univocamente da un preciso valore
iniziale di DLCI assegnato dal Provider e che deve essere configurato all‟interno del Frame Relay Swtich di
collegamento alla rete. Il FRS provvede ad inserire questo DLCI nell‟intestazione di ogni frame.
In caso di collegamento multi-punto, ogni terminazione remota viene identificata dal gestore mediante un
differente numero di DLCI Se ad esempio il nostro router frame relay deve poter comunicare con tre reti
remote differenti, il gestore ci assegnerà 3 valori differenti di DLCI uno per ogni terminazione remota.
In questo modo, a differenza di CDN, tramite il valore di DLCI, i Frame Relay Switch riescono a gestire a liv 2
sia l‟instradamento dei frames attraverso la rete, sia la multiplazione di connessioni differenti che si
intersecano su nodi comuni per cui, a livello IP, un modem Frame Relay può immettere sullo stesso canale più
frames aventi DLCI differenti e dunque indirizzati a terminazioni differenti (*).
Il risultato di tutto ciò è che tutti i router terminali Frame Realy potranno avere un indirizzo IP appartenente
ad una stessa rete IP. Questo meccanismo è detto Global Addressing e l‟abbinamento tra IP remoto e DLCI può
essere : () impostato staticamente dal Gestore della rete Frame Replay nel momento in cui esegue la configurazione
del CSU/DSU, () ricavato dinamicamente dal CSU/DSU stesso tramite un processo denominato Inverse ARP, nel
senso che, per ogni DLCI impostato, entrambi i router terminali possono inviare in rete un pacchetto in cui
richiedono all‟host remoto di restituire il proprio indirizzo IP. Lo schema di rete risultante è il seguente :
pag 133
Sistemi - Classe Quinta robertomana.it
RETI
Reti ATM
ATM, Asynchronous Transfer Mode (Trasferimento Asincrono di Dati Digitali) è una tecnologia di livello 2 proposta
da CCITT nel 1991. Nata inizialmente per la trasmissione tra centrali telefoniche ISDN è stata in seguito estesa
all‟intera rete telefonica commutata come tecnologia di collegamento fra le varie Centrali Urbane.
A livello di Centrale Urbana un apposito multiplexer detto DSLAM consente di convogliare i segnali ADSL,
provenienti dai vari utenti, all‟interno di una linea ATM.
Protocollo a commutazione di cella che è una variazione alla commutazione di pacchetto secondo cui i
pacchetti provenienti dal livello 3 vengono incapsulati in celle di lunghezza fissa pari a 48 byte + 5 bytes di
intestazione. I 48 bytes di payload rappresentano esattamente la dimensione dei pacchetti di controllo TCP privi
di opzioni (es i messaggi ACK) che pertanto vengono perfettamente incapsulati in una singola cella ATM.
Il formato fisso delle celle consente di implementare le tecniche di commutazione e di manipolazione
direttamente via hardware, con un incremento di prestazioni senza precedenti. Tutti i protocolli precedenti
utilizzavano invece frames di dimensione variabile (con una dimensione max tipica di 1500 bytes, ma con molti
frames di dimensione inferiore). In ATM tutte le celle sono grandi 53 bytes; anche l‟ultima cella viene riempita
con dei filler in modo da raggiungere i 53 byte
Protocollo con trasmissione asincrona di tipo STDM (Statistical TDM) in cui, a differenza di TDM
tradizionale, se un canale non ha nulla da trasmettere, non vengono sprecati time – slot (esattamente come
Frame Relay). Riesce così ad adattarsi facilmente a velocità estremamente differenti.
La velocità tipica di ATM è di 155 Mbps ma arriva fino fino 622 Mbps o addirittura 4 Gbps.
ATM utilizza una tecnica di commutazione a circuito virtuale in cui i vecchi commutatori telefonici sono sostituiti
con degli switch elettronici in modo abbastanza simile a Frame Relay . Prima di iniziare la comunicazione vocale,
viene stabilita una connessione virtuale tra i due end point, in modo che tutti i pacchetti della connessione seguano
poi lo stesso percorso, in modo da garantire la consegna ordinata dei pacchetti.
Riassumendo si può dire che le reti ATM sono:
Virtual Circuit (Connesso) : è garantito che i dati trasmessi arrivino in ordine
Best Effort (Non Affidabile) La consegna non è garantita ed il controllo è demandato ai livelli superiori.
Non supportano un modo nativo per gestire i messaggi di broadcast. E‟ invece abbastanza agevole realizzare
trasmissione multicast, in cui gli swtich possono duplicare la cella su più porte di uscita.
GFC - Generic Flow Control: campo necessario per il controllo della congestione.
VPI/VCI - Virtual Path Identifier/Virtual Channel Identifier: sono i campi che servono per l'instradamento
PT - Payload Type: Identifica se la cella ATM trasporta dati, streaming real time o management
CLP - Cell Loss Priority: se vale 1 la cella può essere scartata in caso di congestione dello switch
HEC - Header Error Control: e il risultato di un codice ciclico applicato solo sull'header della cella.
pag 134
Sistemi - Classe Quinta robertomana.it
RETI
Ogni percorso VPI dispone di 65536 possibili canali VCI. Una cella proveniente da VPI 1 può proseguire su VPI3
oppure su VPI2
pag 135
Sistemi - Classe Quinta robertomana.it
RETI
ADSL
ADSL (Asymmetrical Digital Subscriber Line) “Digitalizazione Asimmetrica della Subcriber Line” è una
tecnologia che consente una trasmissione digitale ad alta velocità sulle linee PSTN, nella tratta (detta Subscriber
Line o First Mile) tra Postazione Utente e Centrale Urbana, dove il segnale viene convogliato su linee ATM.
Peculiarità della tecnologia ADSL è il riutilizzo dei cavi telefonici esistenti che collegano l‟utente alla Centrale
Urbana. ADSL prevede però, a livello di Centrale Urbana, la rimozione dei filtri vocali [300 – 3400 Hz] presenti
sulle linee PSTN, in modo da poter utilizzare l‟intera banda del doppino sul tratto utente – Centrale Urbana,
da cui i vari nomi di banda larga o broadband o fullband.
In centrale urbana un convogliatore DSLAM (Digital Subscriber Line Access Multiplexer) separa il canale
vocale dai canali dati riaggregando il segnale digitale che viene convogliato su una linea ATM.
Per la trasmissione dati ADSL sfrutta le frequenze sopra i 4 KHz, per cui, sul cavo telefonico, il classico
segnale telefonico (banda 300 - 3400 Hz) può essere trasmesso contemporaneamente ai dati. Negli anni 70 lo
stesso principio era stato utilizzato per la filodiffusione, il cui segnale viene inviato a frequenze fino a 15 KHz.
Il doppino in rame che collega l‟utente alla Centrale Urbana consente frequenze fino ad alcuni MHz
(nominalmente 1.10 MHz). Il modem ADSL codifica il segnale digitale proveniente dal PC tramite una
codifica DMT (Discrete MultiTone Modulation) che utilizza la tecnica FDM per suddividere lo spettro di
frequenza del doppino telefonico in 255 sottobande di 4 KHz ciascuna strutturate come in figura: Il segnale
digitale viene compresso e frazionato in più frequenze portanti e sottoportanti modulate con tecnica QAM.
ADSL prevede, a valle della presa telefonica, l‟utilizzo di un filtro ADSL (detto splitter), che presenta due
uscite, separate, una tagliata a 4 KHz per il segnale telefonico da inviare al telefono, l‟altra inviata
integralmente al modem ADSL che di suo “non considera” le frequenze inferiori ai 28 KHz.
In questo modo telefono e modem possono operare parallelamente senza interferire a vicenda.
Spettro ADSL
Il termine Asymmetrical indica che ADSL utilizza velocità differenti in download (molto più elevate) rispetto
all‟upload, in quanto il flusso di dati in download è statisticamente molto superiore a quello in upload.
In realtà il segnale ADSL ha un decadimento abbastanza rapido, e non può essere portato oltre i 5 km di cavo
dalla Centrali Urbane. Per cui i piccoli paesi posizionati oltre i 4 - 5 km dalla Centrale Urbana (es. Cervere
rispetto alla Centrale Urbana di Bra) non possono disporre di servizio ADSL fino a quando non viene costruita
una “sottoCentrale Urbana” dotata di DSLAM proprio e collegata alla Centrale madre tramite linea ATM.
Questo intervento comporta chiaramente la necessità di „riconvogliare‟ i fasci di cavi provenienti dagli armadi di
linea ubicati nelle strade non più verso la Centrale Urbana ma verso la sottoCentrale.
Tutte le varie sottoCentrali fanno parte della medesima Rete Urbana rispetto alla Centrale Urbana principale.
pag 136
Sistemi - Classe Quinta robertomana.it
RETI
Condizioni degradate delle linee telefoniche in rame (corrosioni, giunzioni di bassa qualità) e della scarsa qualità
delle prese telefoniche, che provocano una elevata attenuazione delle frequenze più elevate.
Il rapporto segnale / rumore del segnale modulato ADSL decade rapidamente lungo la percorrenza, per cui la
velocità max dipende dalla distanza dalla centrale urbana. Ad esempio una ADSL a 4 megabit è reale soltanto in
vicinanza della centrale, mentre a 5 km la velocità max risulta pari a 640 kbit/sec.
La banda ATM viene frazionata fra gli utenti, per cui i gestori in genere non garantiscono un valore di banda
minima (CIR o MCR = Minimum Cell Rate ). Si parla di Centrale Satura quando il flusso di download supera
una certa soglia.
Tecnologie xDSL
ADSL è una delle possibili tecnologie DSL particolarmente adatta ad un collegamento Internet downstream.
HDSL (High bit-rate DSL) è una tecnologia simmetrica sempre per il collegamento Utente – Centrale Urbana (e
non ad es Utente – Utente). Stessa velocità in upload e download su doppino a 4 fili (tirato appositamente dalla
centrale), con relativo DCE installato dal fornitore di servizi. Presenta un MCR garantito pari tipicamente ad ¼
della velocità di picco (PCR) e canone mensile legato alla velocità di picco richiesta (1 Mbit/s 300 €). Utilizzata
per il collegamento all‟ISP soprattutto nel caso in cui si intenda esporre servizi verso Internet.
SDSL (Symmetric DSL) è una versione ridotta di HDSL su un solo doppino con velocità di 768 kbit/s.
Le tecnologie xDSL non possono essere utilizzate su linee ISDN perché ci sarebbe conflitto su frequenze comuni
PC MODEM
PC MODEM ISP
PC MODEM PSTN MODEM
PC o
PC MODEM
ROUTER
PC MODEM
pag 137
Sistemi - Classe Quinta robertomana.it
RETI
Nel caso in cui il modem server sia occupato a rispondere alla chiamata di un altro client, il chiamante “sente”
l‟occupato e, a seconda di come è stato configurato, tenterà di ricollegarsi dopo un certo timeout.
Ovviamente nel caso dell‟ISP più client devono potersi contemporaneamente al server, per cui occorre dotare la
stazione Server di più linee telefoniche (tipica centralina telefonica), che lo rendono in grado di servire più
connessioni contemporaneamente. Ma se tutte le linee risultano occupate il chiamante rimarrà in attesa.
Nel caso dell‟ADSL la situazione è molto simile. I Modem saranno costituiti da Modem ADSL, mentre la rete
attraverso cui viene stabilito il collegamento sarà la rete ATM. I Modem ADSL non devono chiamare un numero di
telefono, ma devono disporre di un valore identificativo di VPI VCI (8, 35) ed occorre che, a livello di Centrale
Urbana, il DSLAM sia configurato in modo da convogliare il segnale dell‟utente verso il gestore scelto.
Si tratta sostanzialmente di un collegamento punto punto, per cui l‟utente non può più cambiare gestore
semplicemente cambiando il numero di telefono, ma occorre riconfigurare il DSLAM.
pag 138
Sistemi - Classe Quinta robertomana.it
RETI
Il protocollo PPP è un protocollo di Livello 2 molto utilizzato per la gestione di collegamenti Punto Punto
temporanei all‟interno di una rete commutata.
Si tratta di un protocollo Client – Server evoluzione del protocollo SLIP Serial Line Internet Protocol e, a differenza
di SLIP, strutturato mediante una architettura a livelli (tipo MAC e LLC di ethernet) in modo da poter trasportare
pacchetti di livello 3 differenti (TCP/IP, IPX/SPX, AppleTalk) su qualsiasi connessione fisica di tipo punto punto
A differenza però delle LAN dove i substrati LLC e MAC erano di tipo gerarchico, ciascuno con una propria
intestazione, in questo caso LCP e NCP sono protocolli cooperanti che aggiungono al frame una unica intestazione
comune. NCP è richiamato da LCP e si occupa di gestire l‟interfacciamento verso il livello 3.
Intestazione PPP
L‟intestazione PPP contiene sia elementi tipici del substrato MAC (sequenza di inizio frame, checksum finale), sia
elementi tipici del substrato LLC (Protocollo di livello 3 a cui consegnare il payload).
pag 139
Sistemi - Classe Quinta robertomana.it
RETI
Quality of Link Protocol: Determina se abilitare o no le funzioni di Error Detection che provocano un
abbattimento della linea in caso di decadimento della qualità (contatore degli errori oltre una certa soglia).
A connessione avvenuta PPP può continuare a monitorare gli errori di trasmissione mediante un campo FCS
Frame Check Sequence di controllo dell‟errore. Eventuali errori incrementano un contatore in modo da far
cadere la connessione nel caso il cui il numero di errori superi una certa soglia.
Callback cioè possibilità di essere richiamati in caso di caduta della linea, utile soprattutto nelle connessioni
Dial Up
Al termine ciascuno dei due host invia all‟altro un frame conclusivo di ACK
Fase 3 - Configurazione del Protocollo di rete (NCP Phase) gestita tramite NCPs
I protocolli NCPs sono protocolli che gestiscono l‟interfacciamento con il livello 3. Sono stati definiti più protocolli
NCP differenti, uno per ogni famiglia di protocolli di livello 3 e 4 a cui PPP ha la possibilità di interfacciarsi.
Ad esempio IPCP è il protocollo di interfacciamento verso TCP/IP, mentre IPXCP è il protocollo di
interfacciamento verso SPX/IPX. A seconda del protocollo di livello 3 a cui si riferiscono, i protocolli NCPs
eseguono operazioni differenti provvedendo anche, nei vari casi, ad eseguire inizializzazioni differenti.
In caso di autenticazione riuscita vengono avviati i protocolli NCPs per configurare uno o più protocolli di livello 3,
per i quali verrà avviato il relativo protocollo. Se il client PPP è stato configurato per ricevere un indirizzo IP
dinamico, il protocollo IPCP per prima cosa provvede a richiedere al server PPP un indirizzo IP con relativa Subnet
Mask, Default Gateway e DNS primario e secondario (generati dal server via DHCP). L‟indirizzo IP ricevuto è
normalmente un indirizzo pubblico univoco, ma che potrebbe anche essere non univoco nel caso in cui il gestore
esca tramite una NAT.
A questo punto il client PPP è come se disponesse di una nuova scheda di rete virtuale, con un suo indirizzo IP
ricevuto via DHCP dal PPP Server (appartenente quindi alla „rete‟ PPP). Al PPP Server infatti saranno collegati molti
altri client PPP ciascuno dei quali però potrà comunicare solo con il PPP Server e non con gli altri client.
A questa nuova “scheda di rete virtuale” viene normalmente assegnato il nome PPP0.
pag 140
Sistemi - Classe Quinta robertomana.it
RETI
Il Default Route di un PC collegato ad una LAN con uscita su Internet e dotato di modem ADSL
Si consideri un PC contemporaneamente collegato a :
- una rete locale tramite una porta ETH0, con parametri IP ricevuti all‟accensione da un DHCP Server locale
(ad esempio IP = 10.0.0.23, Subnet = 255.255.255.0, Default Gateway = 10.0.0.1)
- ad un modem (tradizionale o ADSL) che, tramite PPP remoto, sulla porta PPP0 abbia ricevuto una seconda
configurazione IP (ad esempio IP = 1.2.3.4, Subnet = 255.255.255.255, Default Gateway = x.x.x.x che
rappresenta l‟indirizzo del PPP Server Remoto),
Supponendo che la rete locale disponga anche lei di una uscita verso internet, in corrispondenza della richiesta di una
pagina web, quale Default Gateway viene utilizzato ? Quello della LAN oppure quello del provider ?
Nella finestra Opzioni Internet / Connessioni è possibile effettuare una delle seguenti scelte :
Se invece si sta realizzando una applicazione personale, occorre necessariamente agire sulla tabella di routing del
PC creando apposite Entry di Instradamento. Nell‟esempio si imposta come Default Gateway il modem :
ROUTE ADD 10.0.0.0 MASK 255.255.255.0 IF ETH0
ROUTE ADD 0.0.0.0 MASK 0.0.0.0 IF PPP0
PPP di per sé nasce come protocollo utilizzabile su connessioni fisiche punto punto (ad esempio sulla connessione
seriale che collega due router). Per poter utilizzare PPP su reti differenti non di tipo punto punto (ad esempio Ethernet
oppure ATM), allora occorre utilizzare al di sotto di PPP il protocollo di Data Link utilizzato da quella rete cioè,
usando una terminologia più elegante, incapsulare i frame PPP all‟interno di frame ATM o Ethernet.
I protocolli PPPoA (PPP over ATM) e PPPoEoA consentono connessioni punto punto attraverso una rete ATM.
PPPoA (PPP over ATM) è utilizzato di solito dai modem ADSL. I frames PPP, dovendo passare per una rete ATM,
vengono ulteriormente incapsulati nelle celle ATM,
PPPoEoA (PPP over Ethernet over ATM talvolta indicato solo come PPPoE). Il frame PPP viene prima incapsulato in un
frame Ethernet e poi in un frame ATM, generando il frame PPPoEoA, con maggiore overhead rispetto al precedete.
Il protocollo PPPoEoE (PPP over Ethernet talvolta indicato solo come PPPoE) consente connessioni punto punto
fra due host di una rete Ethernet. E‟ un sistema di tunneling che permette connessioni punto punto criptate
(VPN) all‟interno di una rete Ethernet. Nell‟intestazione PPP spariscono i campi come di preambolo. LLC al suo
interno recherà come codice del protocollo destinatario il codice di PPP.
Prendendo in considerazione anche le 2 diverse Modalità di Incapsulamento utilizzate da ATM (LLC e VC-MUX),
si ottengono quattro possibili combinazioni di utilizzo del protocollo PPP su reti ATM :
connessione incapsulamento
PPPoA - VC-MUX
PPPoA - LLC
PPPoEoA - VC-MUX
PPPoEoA - LLC
I valori da impostare in fase di configurazione del router / modem ADSL devono essere indicati dall‟ISP fornitore
del servizio. Diversi ISP supportano più combinazioni lasciando libertà di scelta all‟utente. Potendo scegliere la
modalità più veloce è sicuramente la prima in quanto riduce l‟overhead di PPP e allo stesso tempo, grazie a VC-
MUX, ottimizza l‟occupazione delle celle ATM.
pag 141
Sistemi - Classe Quinta robertomana.it
RETI
Da Pannello di Controllo selezionare Connessione di Rete / menù File / Nuova Connessione. Si apre un menù in cui:
La prima voce consente di creare un client PPP di collegamento ad un ISP tramite modem collegato al PC
La seconda voce consente di consente di creare un client VPN.
La quarta voce consente di creare un PPP Server
Quando il modem eseguirà la chiamata all‟ISP, stabilita la connessione fisica, verrà attivato il protocollo PPPoA che
provvederà ad assegnare all‟interfaccia PPP0 l‟indirizzo IP pubblico ricevuto dall‟ISP.
pag 142
Sistemi - Classe Quinta robertomana.it
RETI
La Creazione guidata precedente non sembra però consentire di scegliere come sorgente una connessione esistente,
impedendo di fatto di realizzare un server VPN.
Nel secondo caso questo indirizzo va ad aggiungersi all‟indirizzo effettivamente già presente sulla porta, per cui è
come se sulla porta fossero presenti due diverse connessioni, una reale e l‟altra virtuale creata al di sopra di
quella reale.
In corrispondenza della chiamata di un client, il Server gli assegna dinamicamente :
- il primo indirizzo IP libero all‟interno del range DHCP (es 10.0.0.2)
- la Subnet Mask ed il proprio indirizzo IP come Default Gateway (es 10.0.0.1)
In tal modo il Client acquisisce una scheda di rete virtuale (con indirizzo 10.0.0.2, Subnet Mask e Default
Gateway) che, come per il server, viene mappata su una porta fisica esistente e già dotata di un proprio indirizzo IP.
In pratica è come se il PPP Server si trasformasse in uno switch al quale sono direttamente collegati il PPP
Server stesso (10.0.0.1) e tutti i PPP client in quel momento connessi. Se un client invia un pacchetto sulla porta
PPP indirizzato a 10.0.01 (PPP Server) questo viene fatto uscire dalla corrispondente fisica (con IP Source relativo
alla porta fisica) e inoltrato alla porta fisica del PPP Server tramite PPPoE (reti Ethernet) oppure PPPoA (reti ATM).
Sul PPP Server il pacchetto risalirà la pila ISO OSI (FISICO, MAC, LLC, PPP, IP fino all‟applicazione destinataria.
In pratica i due host possono comunicare “privatamente” attraverso un “tunnel” scavato all‟interno della rete locale o
geografica che sia.
pag 143
Sistemi - Classe Quinta robertomana.it
RETI
VPN
Virtual Private Network o VLAN di Livello3 (o superiori)
Lo scopo è quello di creare reti private (tunnel) attraverso una rete pubblica condivisa (Internet).
Interessante alternativa alle linee dedicate ad un costo decisamente inferiore..
Quando una organizzazione possiede più sedi distaccate, la VPN consente di connettere fra loro le LAN delle
varie sedi, come se fossero direttamente connesse tramite una linea dedicata (Extranet).
Fare una VPN significa eseguire una trasmissione cifrata attraverso la rete pubblica, creando di fatto un
"tunnel" virtuale fra le due reti remote, utilizzando Internet come mezzo di collegamento. I dati vengono
cifrati all'entrata dei "tunnel" (marshalling) e decifrati all'uscita (unmarshalling), in modo da garantire la
sicurezza della trasmissione. Si ritiene che una VPN correttamente progettata abbia un grado di sicurezza
quasi comparabile con quello di una rete dedicata.
Esistono tantissime soluzioni proprietarie ma anche libere di VPN che si differenziano principalmente per l‟algoritmo
di cifratura utilizzato. Ogni protocollo VPN ha una sua cifratura e di solito anche una compressione dati, in modo da
consentire un avvicinamento della velocità su linea WAN (molto più lenta) rispetto alla velocità della LAN interna.
Cifratura e compressione VPN possono essere eseguite :
da un router VPN cioè in grado di effettuare la cifratura VPN (attenzione all‟algoritmo appropriato)
direttamente da un PC su cui è installato un apposito software. Questo software VPN (presente in Windows
a partire da XP) opera indipendentemente dall‟uscita fisica del PC (modem fonico o scheda LAN)
Le caratteristiche delle reti VPN possono essere sfruttate in due modi differenti:
1) Consentire l'accesso alla rete aziendale da parte di un utente remoto. In questo modo ovunque ci si trovi,
attraverso il portatile ed una semplice connessione Internet, è possibile effettuare una connessione protetta al
proprio ufficio ed utilizzare la rete come se si fosse in azienda. In questi casi si installa il software VPN
direttamente sul Notebook in modo che l‟utente possa poi collegarsi attraverso normali connessioni Internet.
2) Fare in modo che due o più reti possano comunicare tra loro in modo protetto come se facessero parte della stessa
LAN (concetto di Extranet : ogni host vede la propria LAN come Intranet e le LAN esterne come Extranet).
Queste soluzioni prevedono di solito l‟utilizzo di router appositi del tutto trasparenti al client. Inoltre è
indispensabile che il server VPN disponga di un IP pubblico statico. I client devono invece disporre di un
indirizzo IP pubblico statico o dinamico a seconda che debbano anche essere visibili o no.
pag 144
Sistemi - Classe Quinta robertomana.it
RETI
Configurazione di un VPN Client stand alone (cioè col software VPN installato sul PC)
La configurazione di client VPN consiste essenzialmente nel :
Creare una nuova connessione di rete identificata da un certo nome (es VPN0), connessione a cui viene fin
da subito associata una scheda di rete virtuale avente il nome indicato (VPN0)
Indicare la porta fisica di uscita su cui dovrà essere mappata la precedente scheda VPN (cioè il Modem
Fonico interno oppure la scheda di rete ETH0 in caso di uscita attraverso un router. Questa connessione fisica
verrà utilizzata dal Client per collegarsi al VPN Server.
Specificare l‟indirizzo IP pubblico del VPN Server a cui collegarsi (ad esempio 1.2.3.4)
Supponendo che il PC sià già connesso ad Internet tramite ETH0, con indirizzo IP ad esempio 192.168.0.2,
nel momento in cui l‟utente attiva la connessione VPN0 (VPN0 up), automaticamente il Software VPN Client
contatta il VPN Server all‟indirizzo 1.2.3.4 il quale assegnerà alla connessione VPN0 un indirizzo IP dinamico
appartenente alla rete VPN gestita via DHCP dal VPN Server, ad esempio rete 172.16.0.0 / 24 con 172.16.0.1
utilizzato dal VPN Server ed i successivi assegnati dinamicamente via DHCP. Si suppone di ricevere l‟indirizzo
172.16.0.2 / 24.
Prima della connessione alla VPN il Client vede la sola scheda di rete fisica (ETH0) avente indirizzo IP ricevuto
dal router di uscita.
Dopo la connessione al VPN Server il Client vede una seconda scheda di rete virtuale denominata VPN0 avente
indirizzo IP privato (172.16.0.2 / 24), Subnet e Default Gateway (172.16.0.1) ricevuti dal VPN Server. Il gateway
rappresenta l‟indirizzo della scheda di rete virtuale WAN del VPN Server, m.
In pratica è come se il client avesse ora due schede di rete, una fisica collegata al router di uscita (192.168.0.2) e
l’altra virtuale (172.16.0.2) collegata direttamente con il router del VPN Server. In realtà ETH0 e VPN0 escono
sullo stesso cavo fisico che va al provider, però rappresentano due connessioni logiche differenti.
Rete 10.0.0.0/24
Pertanto, a livello IP, i pacchetti destinati alla rete 10.0.0.0 / 24 vengono inviati alla porta IP VPN0 che esegue una
prima traslazione NAT ed imposta il proprio IP come mittente ed il reale indirizzo di destinazione come IP Dest.
IP SOURCE 172.16.0.2
PORT SOURCE effimera
IP DEST 10.0.0.33
PORT DEST 1433 (SQL Server)
pag 145
Sistemi - Classe Quinta robertomana.it
RETI
Dopo di che la porta IP VPN0, invece di inoltrare il pacchetto alla scheda di rete (che in realtà non esiste) provvede a
crittografare i dati e ad “avvolgerli” con una nuova intestazione contenente come mittente l‟indirizzo della
porta fisica di uscita (192.168.0.2) su cui è mappata la porta VPN, e come destinatario l‟indirizzo pubblico del
VPN Server (es 1.2.3.4), con la sua porta di ascolto 1723 .
IP SOURCE 192.168.0.2
PORT SOURCE effimera2
IP DEST 1.2.3.4
PORT DEST 1723 (VPN Server)
Questo pacchetto passerà ancora attraverso il router di uscita dove, tramite NAT, IP Source e Porta Source verranno
ancora modificati e sostituiti dall‟indirizzo pubblico del router e da una nuova porta effimera.
NOTA l‟indirizzo della rete 192.168.1.0 non arriva al VPN Server per cui, in questo caso, è irrilevante al funzionam
Lo schema di rete è equivalente a quello delle linee dedicate di tipo Frame Relay. Il Router VPN dispone di una
scheda con indirizzo pubblico 1.2.3.4 e di una scheda virtuale VPN0 con indirizzo 172.16.0.0.1.
Su questo canale il server fornirà ai client remoti un servizio DHCP 172.16.0.2 – 254. .
pag 146
Sistemi - Classe Quinta robertomana.it
RETI
ACL sulla porta WAN INBOUND :Oltre alle porte del DMZ si apre anche la porta 1723
Porta IP Source IP Dest Azione
Porte DMZ Any 1.2.3.4 NAT ……. Consenti
1723 (VPN server) Any 1.2.3.4 Consenti
Any Any Any Blocca
ACL sull‟interfaccia LAN OUTBOUND (su cui normalmente tutte le porte sono chiuse salvo rare eccezioni).
Volendo consentire ai VPN Client pieno accesso all‟intera rete locale, occorrerà aggiungere la seguente entry :
Porta IP Source IP Dest Azione
Any 172.16.0.0/24 Any Consenti
Collegamento tramite VPN di una intera rete remota (con il VPN Client installato sul router )
La situazione è simile a quella precedente, con una rete locale 10.0.0.0, indirizzo pubblico statico 1.2.3.4, indirizzo di
VPN 172.16.0.1. Lo schema di rete è lo stesso di prima, ed anche il funzionamento è analogo.
1.2.3.4
Il PC della prima rete che deve inviare un pacchetto destinato a 10.0.0.33:1433 lo invia al proprio router con IP
SOURCE = 192.168.0.x e IP DEST 10.0.0.33. Il pacchetto arriva l router che lo immette sulla porta VPN0 la quale:
Effettua una prima traslazione NAT sostituendo IP Mittente e Porta Mittente con il proprio indirizzo VPN
(172.16.0.2) ed una nuova porta effimera
Provvede a crittografare i dati e ad “avvolgerli” in una nuova intestazione contenente come mittente
l‟indirizzo della porta fisica di uscita (x.y.z.k) su cui è mappata la porta VPN, e come destinatario
l‟indirizzo pubblico del VPN Server (1.2.3.4), con la sua porta di ascolto 1723 .
Tabella di Routing del Router VPN Client
Rete Subnet Interface Next Hop Metric
172.16.0.0 255.255.255.0 172.16.0.x 172.16.0.x 0
10.0.0.0 255.255.255.0 172.16.0.x 172.16.0.1 1
0.0.0.0 0.0.0.0 1.2.3.4 Gateway provider 1
Nel caso in cui le reti remote debbano contenere anch‟esse dei server accessibili dalla rete principale, allora dovranno
avere indirizzi di rete diversi sia rispetto alla LAN principale sia rispetto alla rete VPN.
Tabella di Routing del Router VPN Server
Rete Subnet Interface Gateway Metric
10.0.0.0 255.255.255.0 10.0.0.1 10.0.0.1 0
172.16.0.0 255.255.255.0 172.16.0.1 172.16.0.1 0
192.168.2.0 255.255.255.0 172.16.0.1 172.16.0.2 1
192.168.3.0 255.255.255.0 172.16.0.1 172.16.0.3 1
0.0.0.0 0.0.0.0 1.2.3.4 Gateway provider 2
pag 147