ISTITUTO TECNICO INDUSTRIALE STATALE...

147
Sistemi - Classe Quinta robertomana.it RETI pag 1 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 Il Modello ISO OSI …………………………………………..…………... 11 Il Modello TCP / IP …………………………………………..…………... 14 Livello 1 Fisico …….………………….…………….………………... 16 Mezzi Trasmissivi e Connettori ………….……………………………… 16 Codifiche di Linea ………………………………………………………… 21 IEEE 802 Project ………………………………………………………… 22 Standard Ethernet 802.3 …………………………………………………… 23 Dispositivi di Rete di Livello 1 : Repeater e Hub ………………………... 26 Livello 2 Data Link …….…………..……………….………………... 28 Scheda di Rete …………………………………………………………….. 28 CSMA / CD ……………………………………………………………….. 29 Il sottolivello MAC ………………………………….………………..……. 30 Il sottolivello LLC ………………………………………………………….. 31 Dispositivi di Rete di Livello 2 : Bridge e Switch ………………………... 32 Standard WiFi 802.11 ……………………………………………………... 36 Livello 3 Rete …….………...……..……………….………………... 39 Indirizzamento IP ………………..……………………………………….. 39 Il protocollo ARP ………………………………….…….…………..……. 42 Subnet Mask ……………………………………………………………….. 43 Reti geografiche : Default Gateway …………..………..………………….. 47 Il Router ………………………………………………………………...… 49 Progettazione di Reti …………………………………………..………….. 51 Tabelle di Routing …….…………………….…………………………….. 52 Comandi Base TCP / IP in ambiente Windows ……………………………. 55 VLSM …………………………………………..……………………….….. 57 Esercizi …………………………………………..…………………….….. 58 Protocollo IP ………………………………………………….…………… 62 Protocollo ICMP ……………………………………………….…………… 64 Protocolli di Routing Dinamico …………………………………………… 66 Aggregazioni ……………………………..………..………….…………… 69

Transcript of ISTITUTO TECNICO INDUSTRIALE STATALE...

Page 1: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 1

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

Il Modello ISO OSI …………………………………………..…………... 11

Il Modello TCP / IP …………………………………………..…………... 14

Livello 1 Fisico …….………………….…………….………………... 16 Mezzi Trasmissivi e Connettori ………….……………………………… 16

Codifiche di Linea ………………………………………………………… 21

IEEE 802 Project ………………………………………………………… 22

Standard Ethernet 802.3 …………………………………………………… 23

Dispositivi di Rete di Livello 1 : Repeater e Hub ………………………... 26

Livello 2 Data Link …….…………..……………….………………... 28 Scheda di Rete …………………………………………………………….. 28

CSMA / CD ……………………………………………………………….. 29

Il sottolivello MAC ………………………………….………………..……. 30

Il sottolivello LLC ………………………………………………………….. 31

Dispositivi di Rete di Livello 2 : Bridge e Switch ………………………... 32

Standard WiFi 802.11 ……………………………………………………... 36

Livello 3 Rete …….………...……..……………….………………... 39 Indirizzamento IP ………………..……………………………………….. 39

Il protocollo ARP ………………………………….…….…………..……. 42

Subnet Mask ……………………………………………………………….. 43

Reti geografiche : Default Gateway …………..………..………………….. 47

Il Router ………………………………………………………………...… 49

Progettazione di Reti …………………………………………..………….. 51

Tabelle di Routing …….…………………….…………………………….. 52

Comandi Base TCP / IP in ambiente Windows ……………………………. 55

VLSM …………………………………………..……………………….….. 57

Esercizi …………………………………………..…………………….….. 58

Protocollo IP ………………………………………………….…………… 62

Protocollo ICMP ……………………………………………….…………… 64

Protocolli di Routing Dinamico …………………………………………… 66

Aggregazioni ……………………………..………..………….…………… 69

Page 2: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 2

Livello 4 Trasporto …….….……..….…..…………..……………... 70 Introduzione al concetto di porta ……..………………………………….. 70

Il protocollo UDP ………………………………….…….…………..……. 72

Socket …….….…………..…………..…………..………………………... 73

Il protocollo TCP ………………………………….…….…………..……. 74

Tecniche di segmentazione di uno stream ………….…….…………..……. 75

Apertura e Chiusura di una connessione TCP ….….…….…………..……. 76

Algoritmi di controllo del flusso dati ………..…………………………….. 78

Algoritmi di controllo della congestione ………………………………….. 80

Firewall ……..………………………………..…………………………….. 82

NAT …………………….……………………..……………….…………… 83

Il livello Sessione ……..…………………..…..…………………………….. 85

Livello 7 Application ….……….………..…………..……………... 86 DHCP (rarp, bootp, apipa) ……………………………..………………….. 86

DNS ……..……………………………………………..………………….. 90

NetBIOS NetBEUI, SMB ……………………………..………………….. 94

Protocollo HTTP ………………………………………..………………….. 97

Proxy Server ……………………………..……………..………………….. 102

Servizio Windows ICS ……………………..…………..………………….. 104

Protocolli FTP e TFTP ..………………………………..………………….. 105

Protocolli TelNet e SSH………………….……………..………………….. 107

Protocolli di Posta Elettronica ……..………..…………..………………….. 108

Web Mail ……..………..………………………………..………………….. 113

Livello 6 Crittografia …….…….………..…………..……………... 114 Algoritmi a chiave simmetrica, asimmetrica e hash ……………………….. 114

SSL e Certificati Digitali ………………………………..………………….. 117

Crittografia nella Posta Elettronica ……….……………………….……….. 119

Network Security …….……..…..…………..………….…..……………... 120

Virus e Antivirus ……..………………………………..………………….. 120

Esposizione su Internet di una rete locale ………..………………………… 121

DMZ ………………………………………………………………………... 123

ACL ..…..………………………………………………………….……….. 126

Il livello Data Link nelle reti Geografiche ……..………..…………... 129

PSTN ……..…………….…………………..…………………….……….. 129

Cenni sullo standard X 25 ……..…………..……………………………….. 130

ISDN ……..……..……….…………………..…………………………….. 130

CDN ……..…………….…………………..……………………………….. 131

Frame Relay ……..………………….………..…………………………….. 132

ATM ……..………………….………………..…………………………….. 134

ADSL ……..…………….………………..…..…………………………….. 136

Modem e Router ADSL …………………………...………….…………….. 137

Il protocollo PPP ………………………………...………….………..…….. 139

Reti VPN …….…….………………..…………………..………………….. 144

Page 3: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 3

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)

Cenni sulla trasmissione del segnale Digitale

I segnali analogici variano con continuità nel tempo (Mondo Fisico)

I segnali digitali possono assumere soltanto alcuni valori. Se questi valori sono solo 2 si parla di segnale digitale

binario (Telematica)

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.

Tempo di propagazione e Attenuazione

I segnali sono onde elettromagnetiche che si propagano alla velocità della luce. Per elevata che sia questa velocità

non è infinita. Per cui ogni segnale per percorrere un certo tratto di cavo impiega un certo tempo > 0.

Inoltre, man mano che percorre il cavo, il segnale subisce inevitabilmente una attenuazione più o meno consistente in

funzione delle caratteristiche del cavo stesso (il coassiale attenua meno del doppino).

Velocità di Trasmissione: Criterio di Nyquist

Ogni mezzo trasmissivo si comporta come un filtro Passa Basso, che taglia le componenti più alte di un segnale.

Maggiore è la velocità di trasmissione di un segnale, maggiore risulta la frequenza dell'onda quadra corrispondente

(f0 = v/2), e dunque maggiore risulta lo spettro del segnale. Affinché la trasmissione sia possibile è necessario che la

larghezza dello spettro del segnale non superi la larghezza di banda del mezzo trasmissivo. Il Criterio di

Nyquist formalizza questo ragionamento: dato un mezzo trasmissivo di banda B, la massima frequenza raggiungibile

è f0 < B. Passando dalla frequenza alla velocità di trasmissione, si ottiene che la massima velocità di trasmissione è:

v [Bit/sec] < 2B

Dunque su un cavo con Banda 10 Mhz la massima velocità teorica consentita è 20 Mbps.

Nota In realtà la formula precedente è riferita non al bit rate ma al boud-rate ( numero di forme d’onda al secondo).

La formula completa per calcolare il massimo bit rate su un canale è v < 2B log2 K, dove K rappresenta il numero

di livelli utilizzati. Si può notare che aumentando il numero dei livelli (cioè K) si può aumentare il bit rate finchè si

vuole. Fino a dove ? La Formula di Shannon esprime il limite fisico del bit rate pari a B log2 (1+S/N), dove S/N è il

rapporto segnale rumore espresso in scala lineare : S/N = 10 ^ (db/10). Es S/N = 30 db = 1000 C = B * log2 (1000)

Trasmissione in Banda Base e Modulazione

Si parla di trasmissione in Banda Base (talvolta detta anche Modulazione in Banda Base) quando si ha

completamente a disposizione l'intero cavo di trasmissione, sul quale “viaggia” un solo segnale alla volta.

Non sempre questo è possibile. La tecnica che consente di trasmettere più segnali sullo stesso mezzo trasmissivo è la

modulazione (detta anche modulazione in banda traslata). Esistono tantissimi tipi di modulazione. Esempi :

FM utilizzata nelle trasmissioni radiofoniche

FDM utilizzata per trasmettere più segnali telefonici su uno stesso cavo

TDM utilizzata per trasmettere contemporaneamente più segnali digitali in un sistema ISDN

Page 4: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 4

Classificazioni delle Reti

Le reti vengono divise a seconda della loro estensione geografica in:

LAN: Local Area Network Max 1 km

MAN: Metropolitan Area Network Max 20 km (anche 50)

WAN: Wide Area Network Oltre 20 km

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.

Sono caratterizzate da:

Alte velocità di trasmissione

Costi elevati

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

.

Page 5: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 5

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

Reti basate su server

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.

Il nome di condivisione ("Documenti") è il

nome con cui gli altri utenti vedranno la

cartella. Può essere uguale oppure diverso

rispetto al nome vero e proprio della cartella.

La cartella può essere protetta da una

password che dovrà essere utilizzata da

chiunque voglia accedere a quella cartella da

un altro PC.

Page 6: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 6

Topologie di Rete e Metodi di accesso al mezzo

Il termine “topologia” indica il modo secondo cui i vari host sono collegati all'interno della rete.

In genere gli host non sono tutti direttamente connessi l'uno all'altro (“topologia a maglia”), ma utilizzano

normalmente dei mezzi trasmissivi condivisi e dei nodi di connessione (hub) che creano collegamenti logici

eliminando la necessità di connessioni fisiche dirette.

Le topologie di rete più comunemente utilizzate, in ordine cronologico di nascita, sono:

topologia a bus

topologia ad anello

topologia a stella

topologia a stella estesa

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).

Metodi di Accesso al mezzo trasmissivo

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.

Page 7: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 7

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.

Algoritmi Deterministici: Token Passing

In contrapposizione al CSMA/CD di Ethernet, è possibile realizzare una rete strutturata sempre a bus, denominata

Token Bus, (standard IEEE 802.4), che utilizza come algoritmo di accesso al mezzo trasmissivo un algoritmo

deterministico denominato Token Passing

Un token definisce i turni di trasmissione. Solo chi possiede il token può trasmettere. Il token viene continuamente

trasferimento da un computer al successivo (secondo una delle due direzioni), finché non si raggiunge un host che ha

qualcosa da trasmettere. L‟host che ha qualcosa da trasmettere attende l'arrivo del token libero, imposta il bit di stato

del token a OCCUPATO, aggiunge i dati da trasmettere, l'indirizzo del destinatario e quello del mittente, e reimmette

il token nella rete. Il token viene passato a tutti gli host successivi fino al raggiungimento del destinatario che leggerà

il messaggio firmando il token. Quando il token ritorna al computer trasmittente, questo vede che il messaggio è

arrivato a buon fine per cui libera il token passandolo all'host successivo che potrà eventualmente prenderne

possesso. Arrivato all‟ultiimo host della rete, il TOKEN viene rassegnato al primo host

Caratteristiche:

Gestione del token decisamente più complessa.

Tempo massimo di attesa ben definito (in funzione soltanto del numero di host)

Topologia ad anello [Evoluzione del Token Bus]

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.

Page 8: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 8

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).

Reti a Doppio anello

Le reti a doppio anello sono simili a quelle ad anello, avendo la sostanziale differenza di utilizzare due anelli anziché

uno, un anello primario ed un anello secondario. Nelle normali condizioni i dati fluiscono solo sull‟anello primario,

utilizzando il secondario solo in caso di guasto su un nodo del primario. Ogni host è generalmente connesso ad

entrambi gli anelli, per poter commutare dal primario al secondario in caso di guasto. La più nota fra le reti di questo

tipo è la FDDI – Fiber Distributed Data Interface basata su fibra ottica.

Topologia a stella [Evoluzione delle Reti Ethernet a Bus]

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.

Topologia a stella estesa (o rete mista, meshed)

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.

Page 9: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 9

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)

Commutazione di pacchetto (Packet Switching)

La commutazione di pacchetto è un sevizio connectionless modellato secondo il sistema postale: ogni lettera ha

appiccicato in testa l‟indirizzo del destinatario e viaggia indipendentemente dalle altre; arriva quando arriva e può

anche essere che non arrivi mai. Inoltre lettere con lo stesso mittente e lo stesso destinatario possono prendere strade

diverse ed arrivare in ordine diverso da quello di partenza.

Per la trasmissione dati, dove non è così importante la sequenza di arrivo dei dati (che possono tranquillamente essere

riassemblati dal ricevitore) si è visto che, anziché stabilire una connessione fisica permanente fra i due terminali, è

molto più conveniente suddividere l'insieme dai dati da trasmettere in piccoli pacchetti che, uuna volt immessi nel

canale, viaggiano separatamente fino al raggiungimento della destinazione, dove vengono riassemblati e riordinati.

Le reti a pacchetto sono basate su nodi intermedi (router) devono attuare delle strategie di instradamento dei dati.

Caratteristiche:

Massimo sfruttamento della capacità del canale. Poiché ogni pacchetto porta con sé la sua identificazione,

una rete può trasportare contemporaneamente pacchetti provenienti da host differenti, ma soprattutto la linea è

impegnata soltanto in presenza di pacchetti, mentre nella comunicazione telefonica la linea rimane impegnata

anche quando entrambi i terminali sono silenziosi.

Indipendenza della tariffa dalla distanza. In una rete a commutazione di pacchetto, la banda viene occupata

solo nel momento in cui si inviano / ricevono dati, per cui la tariffa viene calcolata sulla base dei kilobyte

ricetrasmessi (oppure a forfait sulla base del tempo di connessione) ma è indipendente dalla distanza dei server

La trasmissione a commutazione di pacchetto può essere di due tipi:

Datagram Vera commutazione di pacchetto in cui ogni pacchetto può prendere strade differenti. I nodi intermedi

della rete non effettuano controlli sul flusso dei pacchetti e possono cambiare dinamicamente i percorsi di inoltro.

Il destinatario potrebbe ricevere pacchetti fuori sequenza, pacchetti duplicati, pacchetti mancanti. Es X25, dorsali

Internet. Anche VoIP è un servizio di tipo Datagram in cui sul ricevitore c‟è un protocollo che riordina i pacchetti.

Virtual Circuit in cui, per ogni sessione di lavoro, si stabilisce un circuito virtuale tra trasmettitore e ricevitore e tutti

i pacchetti relativi alla stessa sessione seguono il medesimo percorso, deciso in corrispondenza dell‟avvio della

sessione e che, comunque, non è mai esclusivo: se non trasmetto non occupo banda. Es ATM e Frame Relay.

Page 10: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 10

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

Standard e Enti di standardizzazione

Un‟architettura proprietaria è basata su scelte indipendenti ed arbitrarie del costruttore ed è in genere

incompatibile con architetture diverse. E‟ una architettura per la quale il costruttore non rende pubbliche le

specifiche per cui nessun altro potrà produrre apparati compatibili. Es IPX/SPX, Appletalk, Decnet

Una architettura standard de facto è una architettura proprietaria ma basata su specifiche di pubblico dominio,

per cui costruttori diversi possono proporre la propria implementazione. E‟ il caso del primo PC IBM 8086 ed

è il caso di TCP/IP

Una architettura standard de iure (di diritto), è una architettura basate su specifiche emesse da enti

internazionali che si occupano di standardizzazione, all‟interno dei quali partecipano aziende, enti governativi,

università, centri di ricerca. Lo standard de iure garantisce sistemi aperti e di pubblico dominio. Ogni

costruttore può proporre dispositivi differenti costruiti in osservanza dello standard. Es IEEE 802

ISO International Organization for Standardization. Nasce nel 1947 a Londra. Organizzazione a partecipazione

volontaria presiede alla regolamentazione degli standard internazionali riguardanti molteplici settori.

Nel 1984 l'ISO propose OSI, un modello di riferimento a 7 livelli per sistemi di rete diversi.

ANSI American National Standards Institution rappresentante USA all'interno dell'ISO

IEEE Institute of Electrical and Electronics Engineers. Organismo americano che definisce le specifiche dei vari

protocolli di comunicazione e di rete.

ITU-T International Telecommunications Union, Standardization Sector. È il settore per le Telecomunicazioni

dell'ITU che si occupa di standard e raccomandazioni tecniche per le comunicazio dati e telefoniche (vecchio

CCITT)

IANA Internet Assigned Number Authority gestisce le enumerazioni Internet (indirizzi IP pubblici, n porte standard).

IETF Internet Engineering Task Force Si occupa degli aspetti di ingegnerizzazione a breve termine della rete Internet

IRTF Internet Research Task Force Si occupa degli aspetti di ricerca a lungo termine in merito alla rete Internet

IAF Internet Architecture Board comitato che prende le decisioni finali su nuovi standard proposti IETF o IRTF

Il modello ISO OSI

Nel 1984 l'ISO standardizzò un modello di riferimento (OSI = Open System Interconnection) che aiutasse i

costruttori a produrre sistemi in grado di comunicare con altri sistemi conformi al modello.

Poiché la comunicazione fra 2 dispositivi coinvolge molteplici problematiche differenti (dalla presentazione dei dati

all‟utente fino alla trasmissione dei bit sul cavo), il modello ISO OSI definisce delle linee guida alla scrittura dei

protocolli di rete. In particolare stabilisce che le varie problematiche della comunicazione devono essere suddivise

per livelli, dalla gestione fisica del mezzo trasmissivo (livello più basso), fino ai protocolli di interfaccia con l‟utente

(livello più alto). Il modello ISO OSI non definisce però le caratteristiche tecniche dei livelli,

ma definisce delle linee guida sui vari di cui deve occuparsi ciascun livello.

Page 11: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 11

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

Presentazione

Sessione

Transport

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.

Struttura di un pacchetto dati

Il pacchetto di dati da trasmettere viene generato dall‟applicazione utente e “passato” ai protocolli di livello più alto, i

quali provvedono a “passarlo” ai livelli inferiori fino al raggiungimento del mezzo fisico. Il pacchetto dati da

trasmettere è indicato con il temine payload o SDU (Service Data Unit). Ogni protocollo aggiunge in testa ai dati

ricevuti una sua intestazione (header) detta PCI (Protocol Control Information) che contiene delle informazioni di

servizio sui dati da trasmettere (lunghezza del segmento, indirizzo del destinatario, etc.). In coda ai dati può essere

aggiunta una coda (trailer o tail) contenente tipicamente dei bit di controllo dell‟errore.

Il pacchetto completo (header + payload + tail) viene indicato con la sigla PDU Packet Data Unit.

Ogni protocollo definisce il formato dell‟intestazione del PDU, definendo formato e significato dei vari campi.

Il PDU generato da un livello diventa payload del livello successivo, e così via al mezzo fisico. Il PDU finale

ricevuto dal livello 1 avrà il seguente formato:

int 2 int 3 int 4 int 5 int 6 int 7 DATI

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.

Servizio = insieme di operazioni primitive che un livello offre al livello superiore

Protocollo = insieme di regole che governano il formato delle informazioni scambiate fra entità di pari livello

L'insieme dei protocolli di diverso livello che regolano una comunicazione è detto stack dei protocolli.

Software

Comunicazione

Page 12: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 12

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)

Page 13: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 13

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

Page 14: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 14

Famiglie di protocolli di livello 4 / 3

TCP/IP Famiglia di protocolli utilizzati nella rete Internet e divenuti lo standard de facto in tutte le reti di computer.

Hanno di fatto sostituito tutte le altre famiglie di protocolli. Altre Famiglie di protocolli di livello 3/4 sono (erano) :

IPX/SPX di Novell primo vero standard di comunicazione molto utilizzato negli anni 80

NetBEUI/NetBIOS Protocolli Microsoft utilizzati in msDOS e nelle prime versioni di Windows

Appletalk utilizzato nelle reti Macintosh, DECNET utilizzata nelle reti Digital

Livello 2 Data Link (collegamento dati)

Il livello 2 riceve i pacchetti dal livello 3 e, incapsulandoli con header e tail, li trasforma in Frames. (Trame).

Il livello 2 si occupa di :

Trasmissione affidabile dei singoli frames su singole tratte (LLC) Lo scopo è quello di far apparire il

mezzo trasmissivo, ai livelli superiori, come una linea di trasmissione esente da errori. In questo il livello 2 è

simile al livello 4 che è responsabile della trasmissione affidabile dell'intero blocco dati sull‟intera tratta. Il

livello 2 aggiunge in genere in coda al frame dei byte CRC di controllo dell‟errore in modo che il destinatario

possa verificare la correttezza dei dati, evitando di inoltrare pacchetti con CRC errato. Gestire la trasmissione

su singola tratta significa anche adattare la trasmissione fra dispositivi con velocità differenti. E‟ inutile

trasmettere velocemente se il destinatario è più lento. Due schede una 10 Mbps e l‟altra 100 Mbps possono

comunicare tra loro, ma occorre un dispositivo intermedio di liv 2 che esegua una bufferizzazione.

Gestire le strategie di accesso al mezzo trasmissivo (MAC) implementando algoritmi deterministici quale

Token Passing o non deterministici quale CSMA/CD). Il livello 2 è l‟ultimo livello che si occupa del

significato logico dei bit. Il livello fisico si occupa soltanto di trasmettere i bit sul canale. In ricezione la

scheda di rete (livello 2) riceve i bit dal livello fisico e li raggruppa in byte ricostruendo l‟intero frame.

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.

Page 15: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 15

Struttura del modello TCP IP

E‟ articolato in quattro soli livelli, in cui il livello IP (livello 3 ISO OSI) ed il livello TCP (livello 4 ISO OSI)

costituiscono i due livelli centrali, cioè il cuore del modello. Per questi due livelli sono definite in dettaglio tutte le

caratteristiche tecniche di tutti i protocolli che ne fanno parte (detti nel loro insieme Protocolli Internet).

Tutto il resto è considerato contorno :

I protocolli di livello superiore (5 6 7) sono condensati in un unico livello Application per il quale non si

forniscono specifiche (possono essere protocolli di trasferimento file, pagine web, messaggi di posta etc).

I protocolli di livello inferiore (1 2) sono condensati in un unico livello detto Network Interfce, sempre privo

di specifiche (che può essere Ethernet, Token Ring, wireless, doppino, coassiale, fibra ottica, , etc),

Application

Trasporto

Rete

Network Interface

internet = sinonimo di internetwork, interconnessioni di più reti generiche

Internet = internetwork pubblica mondiale basata su TCP/IP

Intranet = rete locale (LAN) che utilizza le stesse tecnologie di Internet (cioè basata su TCP/IP)

Protocolli della famiglia TCP/IP

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.

Page 16: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 16

LIVELLO 1 : Mezzi Trasmissivi e Connettori

Il cavo coassiale

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:

Elevata Immunità ai disturbi

Elevata Velocità (Banda passante di 100 MHz)

Rigido e di difficile manutenzione (soprattutto l'intestazione col BNC)

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

Per contro il doppino, rispetto al coassiale, presenta i seguenti vantaggi :

Flessibile e di facile manutenzione (compresa l'intestazione RJ11)

Costo inferiore

Nota: La maggiore attenuazione del doppino è dovuta in gran parte al cosiddetto “effetto pelle”, per i quale le

cariche elettriche trasportate hanno la tendenza a distribuirsi prevalentemente lungo la superficie del cavo,

provocando fenomeni di attenuazione del segnale più accentuati. Nel coassiale la conformazione del cavo consente

invece una distribuzione uniforme delle cariche sull'intera sezione.

Page 17: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 17

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:

Categoria Banda Pass Applicazioni

tel Semplice Doppino a 2 coppie di fili solo per uso telefonico e non adatto per la trasmissione dati.

2 1 MHz 4 Mbps 4 coppie di doppini

3 16 MHz MAX 10 Mbps - 4 coppie ciascuna con circa 10 intrecci/metro (da 3 a 4 intrecci per piede)

4 20 MHz 16 Mbps 4 coppie di doppini

5 100 MHz MAX 100 Mbps - 4 coppie ciascuna avente da 3 a 4 intrecci per pollice

5e 250 MHz MAX 250Mbps per canale -> Totale 1 Gbps - ulteriore miglioramento tecnologico

6 2.5 GHz MAX 10Gbps complessivi - Utilizza un elemento separatore fra ogni coppia di cavi

7 2.5 GHz MAX 10Gbps complessivi - Cavo STP con schermo sia sulle singole coppie sia sul cavo. Costoso

Page 18: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 18

Il cavo STP [cat 7]

Più tardi sono comparsi anche doppini schermati indicati con la sigla STP SHIELDED TWISTED PAIR (coppia

intrecciata schermata), che risultano evidentemente meno sensibili ai disturbi rispetto agli UTP. Per ogni categoria

UTP corrisponde una analoga categoria STP. Utilizzato in ambienti industriali con interferenze elettriche.

Esistono diverse tipologie di cavi STP a seconda del livello di schermatura implementato. La schermatura può essere

applicata singolarmente ad ogni coppia di fili, oppure in forma unica che avvolge tutte 8 le coppie. Le due schermature

possono essere applicate una o l'altra separatamente oppure essere entrambe presenti contemporaneamente.

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.

Verde

Verde Arancione

Arancione

Verde

Shield = Scudo

Page 19: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 19

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

I connettori RJ 45 esistono anche in versione schermata per cavi STP.

In tal caso l'apparato di rete deve collegare lo schermo del cavo a massa..

I cavi possono essere:

Diritti (Straight Through) Normale collegamento pin to pin. Le due terminazioni sono identiche. Su entrambi i

connettori visti frontalmente si vede la stessa sequenza colori. Normalmente utilizzato per collegare tra loro

dispositivi differenti (PC e apparato di comunicazione come hub, switch,)

Crociati (Crossed o Crossover) Collegamento diretto fra dispositivi attivi, cioè entrambi dotati di scheda di rete

(tipicamente PC PC, ma anche PC-Router, Router-Router). La coppia Tx è scambiata con la coppia Rx, mentre le

altre due coppie (Blu e Grigi) rimangono invariate (in pratica su un lato si avrà la connessione T568A, sull'altro la

connessione T568B). Questi cavi sono anche utilizzati per connessioni hub hub o switch switch

Console (RollOver) Serve per collegare la porta seriale di un PC di programmazione (dotata di convertitore DB9

RS232 / RJ 45) con la porta console dei router (normalmente anch'essa RJ45). Nel cavo Console gli otto fili sono

esattamente speculari (Guardando i due plug frontalmente si vedono gli otto colori perfettamente invertiti).

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.

Page 20: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 20

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.

Le fibre ottiche possono essere multimodali oppure monomodali .

Nelle multimodali la luce è generata da un semplice LED che emette più raggi luminosi ciascuno dei quali

trasporta contemporaneamente una sua informazione. In questo modo possono però presentare rischio di ambiguità

in fase di riconoscimento del segnale, dunque maggiore probabilità di errore.

Nelle monomodali una luce monocromatica è generata da un led laser molto più costoso ma anche molto più intenso

del precedente, così da consentire velocità maggiori, minore dispersione e distanze molto più elevate (oltre i 3 km).

I connettori sono denominati ST e sono simili alle prese jack delle antenne

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 €.

Page 21: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 21

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à

Codifica Manchester E‟ una particolare codifica RZ in cui:

I valori d tensione utilizzati sono bipolari: +0,85V per l'uno logico, -0,85V per lo zero logico.

E‟ una codifica auto sincronizzante che rappresenta tutti i bit con delle transizioni a centro bit. Gli zeri sono

rappresentati mediante transizioni verso il basso, mentre gli uno mediante transizioni verso l'alto.

In questo modo in ricezione un dispositivo detto DPLL (PLL digitale) riesce ad estrarre il clock dal segnale e a

sincronizzarsi su di esso consentendo una puntuale decodifica dei dati. In questo modo si ottiene anche una

maggiore immunità ai disturbi,in quanto l‟informazione non è più associata all‟ampiezza del segnale.

NOTA: La presenza delle transizioni richiede però una banda doppia rispetto a quella minima di Nyquist

1 0 0 0 1 1 0

NRZ

RZ tradizionale

1 0 0 0 1 1 0

Manchester

AMI

Codifica AMI /HDB3

La codifica AMI (Alternative Mark Inversion), abbastanza diversa rispetto al segnale RZ generico, codifica lo 0

logico con 0 Volt costanti, mentre codifica alternativamente gli 1 logici con un segnale una volta positivo ed una

volta negativo, sempre però soltanto per metà del tempo di bit. HDB3 rappresenta un miglioramento di AMI mirato

ad eliminare le lunghe sequenze di zeri che creano ovvi problemi di sincronismo. In caso di tre zeri consecutivi,

HDB3 codifica il terzo zero come l'ultimo 1. In caso di zeri multipli si avranno due zeri codificati con 0V, poi uno

zero codificato come l'ultimo 1, poi altri due zeri a 0V e quindi un altro zero codificato come l'ultimo 1. Il prossimo

uno sarà identificato da una inversione di segnale. Utilizzata nelle reti ISDN basate su PCM.

Page 22: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 22

IEEE 802 Project

Il progetto IEEE 802 definisce le caratteristiche di livello 1 e 2 per tutte le possibili topologie di reti locali

(Ethernet, Token Bus e Token Ring) facendo in modo che tutte presentino la stessa interfaccia verso il livello 3,

cioè tutte comunichino con il livello 3 sempre allo stesso modo.

Progetto emesso da IEEE nel 1985 e poi adottati anche dall'ISO con la sigla ISO 8802.

Le varie sezioni del progetto IEEE 802

Fin da subito IEEE si rese conto che sarebbe stato impossibile sviluppare un unico standard che potesse documentare

tutti i tipi di LAN. Il progetto è allora stato suddiviso in diversi capitoli, ognuno riferito ad un tipo differente di rete,

identificata in base a TOPOLOGIA DI RETE e PROTOCOLLO DI ACCESSO AL MEZZO

802.1 Architettura generale del progetto

802.2 Sottolivello comune LLC

802.3 Ethernet : Accesso non deterministico su topologia a bus

802.4 Token Bus Accesso deterministico su topologia a bus

802.5 Token Ring Accesso deterministico su topologia ad anello

802.11 WiFi ISO 9314 FDDI (Fiber Distributed Data Interface) Token Ring a doppio anello

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..

La stessa interfaccia LLC

La caratteristica vincente del progetto 802 è la suddivisione del livello Data Link in due sottolivelli

LLC Logical Link Control a livello superiore (standard 802.2 comune alle varie reti) che si occupa di gestire

l‟interfacciamento verso i livelli superiori (livello 3)

MAC Medium Access Control a livello inferiore. (diverso per ciascuna topologia) che si occupa di controllare

l'accesso al mezzo trasmissivo e ovviamente dipende dalla topologia di rete

Il sottolivello LLC è sempre lo stesso identico per tutte lo topologie di rete.

Nei 3 standard differisce soltanto il sottolivello MAC che, nei tre casi, avrà:

Uno specifico protocollo operativo

Uno specifico algoritmo di accesso al mezzo (CSMA/CD nel primo caso e Token Passing negli altri due casi)

Una specifica intestazione

Questo doppio livello consente di rendere i livelli superiori (qualunque essi siano) indipendenti dalla rete fisica

sottostante (qualunque essa sia: Ethernet, Token Bus, Token Ring, FDDI).

Il router, dotato di apposite schede di rete relative a ciascuna topologia, è il dispositivo di livello 3 che consente di

interconnettere LAN differenti, sia come topologia di rete, sia come tecniche di accesso al mezzo.

HDLC: (High-level Data Link Control)

E’ il progenitore di tutti i protocolli di livello 2, utilizzato tipicamente nelle comunicazioni punto punto (trasmissioni

seriali o verso modem). A differenza di LLC, HDLC non contiene al suo interno informazioni relative al protocollo

di livello 3 a cui consegnare i dati. Un altro protocollo di livello 2 derivato da HDLC è il protocollo PPP utilizzato

come protocollo punto punto nelle reti geografiche. PPP, come LLC, trasporta al suo interno l’informazione relativa

al protocollo di livello 3 a cui consegnare i dati. SDL è a sua volta il genitore di HDLC.

Page 23: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 23

Evoluzione delle Reti Ethernet - Standard 802.3

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

Il Primo Numero (10) indica la velocità massima di trasmissioni (in Mbps),

la parola Base indica che la trasmissione avviene con modulazione in banda base, cioè senza portante analogica

la Sigla Finale indica sostanzialmente il mezzo trasmissivo (T = Twisted = doppino intrecciato di categoria 3,

TX doppino di categoria superiore, SX doppino schermato, FX Fibra Ottica). Al variare del mezzo di

trasmissione cambia anche il tipo di connettore utilizzato Sui dispositivi di rete ( es hub) viene sempre indicata

la sigla dei mezzi trasmissivi supportati (ad esempio 10/100/1000 Base TX significa che le porte sono UTP ).

Standard 10Base5 (IEEE 802.3)

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.

Page 24: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 24

Standard 10Base2 (IEEE 802.3 A)

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.

Standard 10BaseT (IEEE 802.3 I)

Nel 1990 il comitato IEEE ha standardizzato la versione Ethernet a doppini intrecciati di tipo UTP di categoria 3.

Degli otto fili contenuti nel cavo UTP, una coppia viene utilizzata come TX, una coppia viene utilizzata come RX

mentre le altre due coppie sono inutilizzate (il telefono utilizzava soltanto 2 dei quattro cavi disponibili).

La velocità è sempre di 10 Mbps su una distanza massima di 100 metri. Tale distanza può essere aumentata fino a

500 metri semplicemente sostituendo il cavo UTP con un cavo schermato STP.

La topologia logica e funzionale della rete 10BaseT è sempre a bus ma questa volta la realizzazione fisica è a stella

con un dispositivo centrale detto hub, che inoltra il segnale ricevuto su tutte le porte di uscita.

Mentre le versioni precedenti a Bus, utilizzando una unica coppia di conduttori, sono intrinsecamente Half Duplex,

le reti 10BaseT utilizzano 2 coppie di conduttori (cavo UTP a quattro fili, 2 per Tx e 2 per Rx), per cui sono

intrinsecamente Full Duplex. Il problema è che, nel momento in cui 2 PC sono collegati ad un hub, il Full Duplex

non è più possibile perché crea collisione.

Standard 10BaseF (IEEE 802.3 J)

Questo standard utilizza fibre ottiche multimodali con connettori ST simili alle prese jack delle antenne.

Il limite max di 500 metri è dettato principalmente dal rispetto del Round Trip Time

La fibra ottica offre maggiori velocità, assenza di rumore elettrico e isolamento galvanico (eliminando ground loop).

Per contro è costosa, delicata da installare e soprattutto da intestare. Ancora poco usata per il cablaggio orizzontale

(da nodo a stazione), invece più utilizzata per cablaggi dorsali (Backbone) fra ripetitori, dove si possono raggiungere

anche i 5 km.

Page 25: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 25

Ethernet BroadBand (Banda Larga)

Esiste anche una particolare versione di Ethernet detta BroadBand (Banda Larga) che consente la trasmissione

simultanea da parte di più host. I vari host usano canali separati ottenuti mediante modulazione, come avviene ad

esempio nella televisione via cavo. Ogni scheda di rete, dal costo piuttosto elevato, deve montare speciali modem ad

alta frequenza per consentire la trasmissione modulata sul cavo (e relativa ricezione). Utilizzzo universitario.

Fast Ethernet (IEEE 802.3 u) 1995

100Base Tx

Questo standard mantiene pressoché inalterate tutte le caratteristiche dello standard 10BaseT, limitandosi ad

utilizzare un mezzo trasmissivo di categoria 5 anziché 3 ed utilizzando ovviamente dispositivi in grado di supportare

la maggiore velocità. Gli Hub Fast Ethernet possono essere di classe 1 (più lenti) oppure di classe 2 (più veloci).

Lo standard prevede che ogni segmento di rete non contempli più di un hub di classe1 oppure non più di due hub di

classe 2. Sul numero di Fast Ethernet Switch non ci sono imposizioni, fatta salva la solita clausola che ogni

segmento non deve contare complessivamente più di quattro dispositivi di rete.

100BaseFX praticamente identico allo standard 10BaseF (con la stessa identica tipologia di fibra ottica) ma con

velocità 10 volte maggiore

100BaseT4 che utilizza un cavo UTP cat 3 utilizzando però tutte e 4 le coppie dei fili, dove le due linee aggiuntive

vengono entrambe sfruttate in trasmissione, che dunque avviene parallelamente su 3 cavi complessivi, che

trasmettono ciascuna a 33 Mbit/sec. Si utilizza una modulazione detta PAM-3 che raggruppa i bit a gruppi di tre e

poi li trasmette parallelamente. In questo modo, visto che chi trasmette si impossessa di tre cavi, rimane possibile

soltanto la trasmissione Half Duplex.

Gigabit Ethernet (IEEE 802.3 z) 1998

Prevede 4 standard,

1000BaseSX su fibra ottica multimodale

1000BaseLX uno su fibra ottica monomodale

1000BaseCX su un cavo STP di categoria superiore ed impedenza 150 ohm.

1000BaseT ( standard IEEE 802.3 ab) su cavo UTP cat 5e o 6. In realtà sarebbe una 1000BaseTX4 (cavo UTP di

categoria superiore con trasmissione su 4 coppie). Chi trasmette si impossessa di tutti e 4 i canali (8FILI).

Ogni canale trasmette a 125 MBoud/sec con 2 bit per ogni forma d‟onda, per cui in pratica ogni canale trasmette a

250Mbit/sec. La modulazione utilizzata è detta PAM-5. Ovviamente, a differenza degli standard 10BaseT e

100BaseT è possibile soltanto l‟Half Duplex.

Poiché chi trasmette usa 4 coppie, cade il concetto di linea Tx e linea Rx. In ogni caso, per compatibilità con gli

standard precedenti (una scheda 1000 Mbit/sec deve poter funzionare anche a 100 e/o a 10 Mbit/sec), il segnale

trasmesso sul canale 2 viene ricevuto dall‟altro host sul canale 3 e viceversa.

10 Gigabit Ethernet (IEEE 802.3 an) 2006

10GBaseT ( standard IEEE 802.3 an) su cavo UTP cat 6. La modalità di trasmissione è simile alla 1000BaseT, ma

ogni canale trasmette ora a 2.5 Gbit / sec. 1000 volte più veloce rispetto ai primi standard.

Limiti massimi di tutte le reti Ethernet BaseT

Il massimo numero di terminali collegabili è fissato dal limite di 1024 nodi imposto dal CSMA / CD

Iil percorso fra due qualsiasi host può attraversare al massimo 5 segmenti di cavo e 4 Dispositivi di rete

(hub o switch).

Ogni collegamento fra host e dispositivo non può superare i 100 metri.

Page 26: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 26

Dispositivi di Rete di livello 1

Repeater

Dispositivo utilizzato nelle prime reti Ethernet basate su cavo coassiale per connettere tra loro due segmenti e

rigenerare il segnale da un segmento all'altro, senza eseguire nessuna analisi sui bit.

Il Repeater è normalmente alimentato a 24 V dc, mediante apposito alimentatore 220 V

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

Caratteristiche comuni di Repeater e Hub

Presentano un comportamento trasparente rispetto alla rete, cioè è come se non ci fossero

(come se al loro posto ci fossero soltanto dei contatti elettrici).

I segmenti Ethernet interconnessi mediante repeater o hub costituiscono un unico dominio di collisione, nel

senso che il segnale inviato da un qualunque host raggiunge tutti gli altri host, per cui tutti gli host collegati

mediante repeater / hub possono entrare in collisione tra loro.

I segmenti Ethernet interconnessi mediante repeater o hub devono operare tutti alla stessa velocità (non

viene eseguita bufferizzazione)

Sia Repeater che Hub effettuano il cosiddetto ReTiming, cioè decodificano i bit secondo il metodo

Manchester e quindi li ricodificano prima di ritrasmetterli. Entrambi rigenerano l’intero segnale compreso il

preambolo che viene ricostruito di pari lunghezza.

I segmenti Ethernet interconnessi mediante repeater o hub possono eventualmente anche essere appoggiati

su mezzi trasmissivi differenti (Ethernet 10Base2 e Ethernet 10BaseT).

Qui sopra: Simbolo del Repeater

A sinistra: Rete a Stella Basata su Hub

[Cisco Systems]

Page 27: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 27

Hub attivi / passivi / intelligenti.

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.

Nota: La porta di UpLink

L'ultima porta di un hub è in genere contrassegnata da un pulsante di Uplink / Normal. Questa porta cioè può

essere utilizzata come Normal (pulsante rilasciato) per una normale connessione con un PC, oppure come UpLink

(pulsante premuto) per la connessione dell'hub con un altro hub. Impostando la porta come UpLink, il segnale di

uscita dalla porta non viene invertito, e dunque può essere riportato su una qualunque porta del secondo hub

mediante il solito cavo PIN to PIN. Attenzione che però uno solo dei due hub deve avere la porta impostata come

UpLink, mentre sull'altro hub la porta deve essere impostata come Normal.

Due hub possono dunque essere collegati tra loro utilizzando:

una porta Normal ed una porta UpLink ed un cavo dritto PIN to PIN

due porte dello stesso tipo, entrambe Normal (o entrambe UpLink) ed un cavo CROSSED

Gli hub più recenti non hanno più la porta di uplink, ma sono sensibili al segnale nel senso che, se si accorgono che

il cavo non è incrociato, provvedono loro automaticamente a invertire il cablaggio della porta.

Nota: Caratteristiche di un hub della famiglia OfficeConnect di 3Com (Smart Hub)

Sono piccoli hub standard dotati tipicamente di 8 porte 100BaseTX. Caratteristiche:

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)

Page 28: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 28

Livello 2 : Network Interface Card

Scheda di rete montata a bordo del PC che gestisce fisicamente l'immissione dei dati sul mezzo trasmissivo. Insieme

alla scheda è sempre abbinato un driver che consente la configurazione della scheda nel sistema operativo adottato.

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

Struttura dell'indirizzo MAC

Ogni scheda di rete nel mondo è caratterizzata da un indirizzo MAC (Media Access Control) univoco, assegnato dal

costruttore sulla base di precise specifiche ed in nessun modo modificabile.

L'indirizzo MAC è costituito da 6 byte normalmente espressi in formato esadecimali (6 coppie di cifre esadecimal)

Esempio: 00 C0 9F 54 86 CC. Questi 48 bit consentono 2^48

= 280.000 miliardi di combinazioni possibili. I 24 bit

più significativi indicano il codice del costruttore della scheda (OUI = Organizationally Unique Identifier).

Più codici possono riferirsi allo stesso costruttore. I 24 bit inferiori indicano il numero di serie della scheda.

Ad esempio 08 00 20 xx xx xx indica una scheda Sun Microsystem mentre 00 00 0C xx xx xx una scheda CISCO.

Nota L’indirizzo MAC, pur essendo univoco ha un significato logico diverso dal classico Numero di Telefono della

telefonia. Infatti il MAC è un numero assoluto associato alla macchina. Spostando la macchina rimane sempre lo

stesso. Viceversa il Numero di Telefono dipende dalla località. Cambiando località viene assegnato un nuovo

numero di telefono.

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.

Page 29: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 29

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.

Page 30: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 30

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.

Il protocollo MAC : struttura del frame

La scheda di rete, ricevuto un pacchetto da trasmettere dal livello superiore, provvede a costruire il frame da

trasmettere ed eseguire il protocollo MAC (Medium Access Control), avvolgendo i dati con una intestazione ed

una coda, e quindi provvede ad immetterli in rete mediante il protocollo CSMA/CD.

L‟intestazione MAC aggiunta dal protocollo MAC è strutturata nel modo seguente:

Preambolo [8 bytes]

E' una sequenza di 62 bit alternati 1 e 0 seguiti da una coppia finale 11 detta SFD (Start of Frame Delimiter).

Il preambolo serve per la sincronizzazione del ricevitore (cioè per dare tempo al PLL di agganciarsi al segnale

ricevuto). In corrispondenza dell'SFD il ricevitore inizia ad assemblare e memorizzare i bit ricevuti.

Indirizzo MAC del Destinatario [6 bytes]

Non è detto che l'host trasmittente conosca a priori l'indirizzo MAC del destinatario, In questo caso come indirizzo

MAC del destinatario viene impostato un indirizzo prestabilito costituito da tutti 1 detto indirizzo di broadcast,

intendendo come destinatari validi TUTTI gli host della rete locale.

Espresso in esadecimale questo indirizzo di broadcast diventa FF FF FF FF FF FF

Indirizzo MAC del Sorgente [6 bytes]

Indirizzo MAC dell'host che sta trasmettendo

Lunghezza del payload [2 bytes]

Indica le dimensioni in bytes del campo dati (payload), da un minimo di 46 bytes ad un max di 1500 bytes .

46 bytes rappresenta le dimensioni del frame minimo corrispondente ad un ACK TCP :

2 byte ACK TCP + 20 byte intestaz TCP + 20 byte intestaz IP + 4 byte intestaz LLC = 46 bytes

1500 bytes è mirato a non monopolizzare il canale per troppo tempo.

Sommando ai 46 bytes i 18 bytes dell'intestazione MAC (escluso il preambolo), si arriva ad un frame di 64 bytes.

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).

Page 31: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 31

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 protocollo LLC (Standard IEEE 802.2)

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.

Intestazione LLC Tre campi da un byte ciascuno

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

Page 32: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 32

Dispositivi di Rete di livello 2

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.

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.

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

Principio di Funzionamento dello switch (e del bridge)

I funzionamenti di switch e bridge sono basati sull‟utilizzo di una tabella interna, detta CAM TABLE (Content

Address Memory), costruita dinamicamente durante il funzionamento, e costituita da 2 colonne in cui :

per ogni host della rete, vengono memorizzati il suo indirizzo MAC e la porta fisica relativa al segmento a cui

quell‟host appartiene.

Indirizzo MAC Porta fisica

04 55 F9 A2 66 C3 port #2

00 3A FF 70 34 4B port #2

Fig 1

Fig 2

Page 33: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 33

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).

La Segmentazione dei domini di collisione

Switch e Bridge operano una segmentazione dei domini di collisione, nel senso che suddividono la rete in più

segmenti indipendenti che possono operare parallelamente. Due host di un certo segmento possono comunicare

tra loro mentre altri host di altri segmenti possono parallelamente comunicare fra loro. Cioè, con riferimento

alla Fig 2 della pagina precedente, mentre un hot del segmento 1 sta comunicando con un host del segmento 2,

parallelamente un host del segmento3 può comunicare con un host del segmento 4. Inoltre se su un segmento si

verifica una collisione, gli altri segmenti possono continuare ad operare normalmente.

Nel caso dello switch si parla in genere di microsegmentazione in quanto il concetto di segmentazione si applica in

pratica ad ogni singola porta dello switch, che rappresenta un dominio di collisione a se stante.

Cioè un host A può comunicare con un host B mentre, in contemporanea, un host C può comunicare con un

host D. In pratica è come se fosse un Hub in cui in ogni porta è incorporato un micro bridge di filtro.

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.

C A D B

Fig 3

Page 34: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 34

Confronto fra le due tecniche precedenti

Lo Store and Forward è più lento ma è più efficace in quanto consente la comunicazione fra dispositivi che

operano a velocità differenti (10 Mbps o 100 Mbps). Ad esempio si può inserire un server che opera a 100

Mbps che deve servire molti host che operano a 10 Mbps. I frames richiesti al server vengono scaricati

rapidamente e bufferizzati nello Switch, che provvede poi a inviarli lentamente al Client. Idem per le richieste

provenienti dal Client, che verranno bufferizzate lentamente dallo Switch e poi inviate rapidamente al Server

Al termine della bufferizzazione lo switch può eseguire anche il controllo CRC (con ulteriori rallentamenti)

scartando i frames non validi,

Gli Switch attuali utilizzano principalmente lo Store And Forward. Nuove Tecnologie sempre più veloci

consentono allo switch di processare il frame in tempi sempre più rapidi con ritardi minimo rispetto al Cut Through.

Esistono anche switch che sono in grado di modificare automaticamente la loro modalità di switch sulla base delle

condizioni di rete. Questi switch utilizzano in prima battuta il cut through facendo però un check al volo sul CRC.

In corrispondenza di ogni errore incrementano un contatore passando alla modalità Store And Forward nel caso di

superamento di una certa soglia. Se gli errori ritornano al di sotto della soglia ripassa automaticamente al cut through

Configurazione di uno switch

Hub, Bridge e Switch sono normalmente dispositivi autoconfiguranti (che non richiedono particolari configurazioni

iniziali) e dunque non dispongono di indirizzo MAC né di indirizzo IP.

Alcuni Switch di fascia più alta supportano invece nuove funzionalità come VLAN (Virtual LAN) e Spanning Tree

Protocol che devono in qualche modo configurate dall‟utilizzatore. Questi switch sono programmabili, cioè sono

dotati di indirizzo MAC (che risponde in realtà indifferentemente su tutte le porte), di indirizzo IP e di un apposito

programma interno di configurazione (agente di gestione).

La comunicazione con il software di gestione può avvenire in due modi :

out-of-band, cioè mediante una apposita porta console (Seriale su RJ45) a cui si può accedere tramite un

terminale che consenta l‟invio di comandi TTY (es Hyper Terminal) oppure

in-band via HTTP (o via Telnet) cioè con accesso attraverso la rete Ethernet, su una qualsiasi porta fisica

dello switch. In questo caso lo switch è dotato di indirizzi MAC e IP (configurabile via software in base alla

rete di appartenenza dello switch). Tutti i frames aventi come MAC DEST quello dello switch saranno inoltrati

sulla apposita porta “virtuale” dello switch (accessibile attraverso qualsiasi porta fisica)

Le operazioni che di solito si possono fare sono:

Impostazione e Modifica dei parametri di configurazione relativamente ad esempio a Spanning Tree e VLAN

Interrogazione dello stato delle porte (se c'è un nodo collegato e a quale velocità)

Statistiche di traffico e di errori per ciascuna porta (nodi a maggior utilizzo e collegamenti mal funzionanti).

Interrogazione delle tabelle di instradamento (CAM Table)

Modifica dello stato di una porta (esclusione di un nodo mal funzionate o che si desidera escludere)

Creazione manuale di entry persistenti, che non vengono rimossi anche in caso di inattività del nodo

Cenni su Hyper Terminal

Hyper Terminal è una utility presente in Windows (a partire da Windows 98) che consente di inviare comandi

testuali ad un generico dispositivo remoto secondo lo standard VT100 Terminal Emulation.

Hyper Terminal è disponibile nella cartella Windows Accessori / Comunicazioni / Hyper Terminal

Hyper Terminal può operare anche in dial up tramite modem remoto

Protocollo Spanning Tree

In una LAN basata su hub e switch è essenziale che esista sempre solo un unico percorso tra ogni coppia di nodi

terminali (host). In caso contrario l'intera rete potrebbe entrare in loop con i msg di broadcast continuamente

rimbalzati da una parte all‟altra della rete (broadcast storm tempesta di broadcast). Non solo i msg di broadcast, ma

anche i msg unicast possono entrare in loop nel momento in cui gli switch non conoscano la posizione esatta del

destinatario. Si consideri ad esempio la seguente figura :

Page 35: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 35

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.

VLAN (Virtual LAN di livello 2)

Per VLAN si intende il partizionamento di una rete fisica in più reti virtuali differenti (cioè in più domini di

broadcast differenti). Le varie porte di uno switch VLAN possono essere assegnate a VLAN differenti. Gli host

collegati ad una porta appartenente ad una certa VLAN potranno comunicare soltanto con gli host appartenenti alla

stessa VLAN. In pratica uno switch VLAN è esattamente l‟equivalente di più switch fisicamente separati (uno

per ogni „REAL LAN’). In ogni VLAN possono essere raggruppati più PC indipendentemente dalla loro posizione

fisica all'interno della rete. Le diverse VLAN possono comunicare tra loro solo attraverso un router. Il supporto

VLAN ha un certo costo, sostenibile negli anni passati prima che il costo degli switch scendesse ai livelli attuali.

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.

B

A

S2

S3

S1

Page 36: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 36

Standard WiFi 802.11

Le reti Ethernet WiFi (Wireless Fidelity) utilizzano l‟etere come mezzo trasmissivo, risparmiando i costi di cablaggio

ma con maggiore sensibilità ai disturbi e rischi legati ad eventuali effetti nocivi. Si tratta infatti di microonde con

frequenza di 2.4 GHz, (con λ = 12,5 cm), simili a quelle dei cellulari e dei forni a microonde. Per rendere i segnali

WiFi non troppo invasivi, è stata loro assegnata una potenza massima estremamente ridotta (20 dbm).

Standard Anno V max 802.11 1990 2 Mbit/sec

802.11 b 1999 11 Mbit/sec

802.11 g 2003 54 Mbit/sec

802.11 n 2007 300 Mbit/sec con antenne multiple (typ 3) (540)

Reti peer to peer (AD HOC)

Quando un host WiFi, tramite la propria antenna, invia un messaggio in rete, questo arriva ovviamente a tutti gli host

della rete. Dal momento che contiene sia l‟indirizzo MAC del Sorgente sia l‟indirizzo MAC del Destinatario, il msg

potrebbe essere intercettato soltanto dal reale destinatario esattamente come nelle reti Ethernet cablate. Si realizza in

questo modo una rete wireless detta peer to peer in cui tutti gli host interni ad un diametro di 100 m sono in visibilità

tra loro e possono comunicare direttamente. Uno degli host potrebbe disporre di un collegamento con la rete cablata e

fungere da router verso la rete cablata. C‟è però un notevole problema:

Rilevare le collisioni via etere è praticamente impossibile. Infatti, quando l‟antenna è in trasmissione, l‟ampiezza

del segnale in corso di trasmissione è tale da mascherare ogni altro segnale ricevuto, impedendo di fatto il

rilevamento della collisione. Per cui un host, avviata la fase di Carrier Sense, sentendo il canale libero , può in

qualunque momento iniziare una trasmissione (Multiple Access), senza avere però la possibilità di eseguire la fase di

Collision Detection. Se un altro host inizia a trasmettere nello stesso istante, nessuno dei due saprà mai se la sua

trasmissione è andata a buon fine. Dunque in una rete wireless occorre necessariamente un approccio diverso, con

necessità di un arbitro che regoli le comunicazioni fra gli host. Questo dispositivo è l‟Access Point.

Tutte le attuali schede di rete WiFi sono configurate per un accesso centralizzato ad un Access Point. Volendo

forzatamente realizzare una rete wireless peer to peer senza l‟utilizzo di un AP, occorre, mediante appositi software,

riconfigurare le scheda di rete in modo che bypassi la presenza dell‟AP e realizzi tutte le funzionalità di un AP.

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.

Caratteristiche Tecniche di un AP (costo 30 €)

L‟AP presenta normalmente una o più porte di connessione alla rete cablata più un‟antenna che realizza una porta

virtuale wireless alla quale saranno collegati tutti gli host wireless. Dunque l‟AP può essere visto come uno switch

(liv 2) con una porta aggiuntiva di tipo wireless (l‟antenna). Come un normale switch gestisce una CAM Table

all‟interno della quale, relativamente al canale wireless (antenna), sono memorizzati gli indirizzi MAC di tutti gli

host wireless. Per quanto riguarda gli host wireless, è come se fossero collegati direttamente alla rete cablata.

L‟AP è dotato di solito anche di un indirizzo IP (con relativo MAC) associabili a qualsiasi porta in modo da

consentirne la programmazione del dispositivo via rete (di solito http).

Area di copertura di un AP è detta CELLA di copertura o BSS (Basic Service Set). La cella di copertura di un AP è

costituita da un cerchi di raggio pari a circa 100 m (91 – 152 m i indoor, cioè in presenza di muri).

Page 37: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 37

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. ).

Bridge ACESS POINT

Il Bridge Access Point serve per collegare due LAN distinte (ad es due uffici di una azienda separati da una strada

pubblica). I Bridge AP sono dotati di antenne direttive in grado cioè di trasmettere in modo direzionale, con

possibilità di raggiungere distanza molto più elevate rispetto alle normali antenne omni direttive del normale AP.

Un Bridged Access Point comunica solo con un altro AP. Se uno si mette col PC in mezzo alla strada non comunica.

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)

Accesso al mezzo: il protocollo CSMA/CA

WiFi utilizza come protocollo di accesso al mezzo CSMA/CA che cerca di prevenire le collisioni. Un nodo che

vuole trasmettere ascolta se il canale è libero. Se è libero inizia a trasmettere. Altrimenti aspetta che si liberi e quindi

attiva un timer casuale. Se al termine del Contention Timer il canale è ancora libero, allora inizia a trasmettere,

altrimenti ripete il processo dall‟inizio. Il rischio di collisioni viene ridotto, ma non completamente rimosso.

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..

Page 38: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 38

Il livello LLC: Ackowledgment e MAC Retransmission

Poiché CSMA/ non elimina del tutto il rischio di collisioni, e soprattutto per consentire la presenza contemporanea di

più AP su uno stesso canale, il substrato LLC di una rete WiFi implementa un meccanismo di ackwledgement dei

frames trasmessi, con ritrasmissione dei frames entrati in collisione. L‟algoritmo utilizzato è una variante

dell‟algoritmo send and wait che, per ogni pacchetto inviato, attende un segnale di ACK. Il trasmettitore avvia il

prossimo CSMA/CA contention soltanto dopo il ricevimento dell‟ACK (o in corrispondenza di un timeout).

Quando un host intende trasmettere, invia all‟AP un segnale RTS (Request To Send), mediante il quale richiede

all‟AP il permesso ad impossessarsi del canale, indicando anche l‟indirizzo MAC dell‟host con cui intende

comunicare e le dimensioni del pacchetto da trasmettere. L‟AP, se libero, invia in broadcast la richiesta a tutta la rete.

L‟host destinatario risponde all‟AP con un segnale CTS (Clear To Send) che l‟AP provvede a rinviare in broadcast a

tutti gli host della cella. CTS contiene l‟indicazione dell‟host che ha richiesto l‟utilizzo del canale e le dimensioni del

pacchetto. In questo modo tutti gli host della cella sanno che il canale è occupato e rimangono silenti per il tempo

richiesto. In alcune versioni quando TX ha finito la trasmissione, invia un ACK all‟AP che lo invia in broadcast in

modo tutti sappiano che il canale è ritornato libero e possano riattivare una nuova contesa CSMA/CA

Vantaggi nell‟utilizzo dei messaggi RTS/CTS

1) La ragione principale dell‟utilizzo dei messaggi RTS/CTS è il cosiddetto “problema del nodo nascosto”.

Si immagini un nodo B che si trova in un‟area intermedia coperta da due AP che operano sullo stesso canale. Se il

nodo A richiede a AP1 il permesso di trasmettere a B e contemporaneamente C richiede a AP2 il permesso di

trasmettere ad un qualunque nodo di AP2, quando A inizia a trasmettere a B il segnale ricevuto da B andrebbe in

collisione con quello trasmesso da C. Grazie invece al meccanismo precedente di RTS/CTS, quando B riceve il

segnale RTS da A invia il proprio CTS a entrambi gli AP che lo inoltrano in broadcast a tutti. In questo modo a C

non sarà consentito iniziare una nuova comunicazione con AP2 (concetto di virtual carrier sense).

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.

A B C

Se però i canali fossero separati le due comunicazioni

potrebbero avvenire contemporaneamente, dunque le

prestazioni complessive sarebbero migliori.

Page 39: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 39

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.

Gerarchia degli indirizzi IP

L‟indirizzo MAC è un indirizzo flat, cioè fisicamente legato alla macchina e indipendente dalla posizione geografica

della macchina stessa. Per individuare un host all‟interno di una rete di grandi dimensioni, serve un indirizzo logico

di livello più alto che non sia legato alla macchina, ma che sia configurabile in funzione della posizione geografica

della macchina. Occorre passare da un indirizzo fisico flat come il MAC ad un indirizzo logico gerarchico che, in

base al valore, legato alla posizione effettiva della macchina.

Oltre all‟indirizzo MAC, indirizzo fisico impresso nella scheda di rete, agli host di una rete viene assegnato un

secondo indirizzo, l‟indirizzo IP, assegnato via software in funzione della posizione geografica dell‟host.

L‟indirizzo MAC potrebbe essere paragonato a Nome e Cognome di una persona (o al codice fiscale, univoco ed

invariante nel tempo) mentre l‟indirizzo IP potrebbe essere paragonato alla sua residenza che può cambiare nel tempo

Indirizzo MAC Fisico Liv 2 Flat (piatto, indipendente dalla posizione)

Indirizzo IP Logico Liv 3 Gerarchico

Se vado in America avrò sempre il mio MAC, ma mi verrà assegnato un nuovo IP “americano”. I primi numeri di un

indirizzo IP identificano il continente, poi la nazione, la provincia, etc, un po come i CAP postali o i numeri telefonici

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.

Page 40: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 40

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.

Gli indirizzi IP possono essere:

STATICI Assegnati direttamente sulla machina e valido fino a che non viene modificato

DINAMICI Assegnati di volta in volta da un apposito server di assegnazione degli indirizzi e valido fino allo

spegnimento della macchina

PUBBLICI Visibile da tutti, UNICO a livello mondiale, assegnato da Authority mondiale

IANA (Internet Assigned Numbers Autority)

PRIVATI UNICO internamente ad una singola rete, assegnato dal gestore della rete

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 2

24 -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

Page 41: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 41

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

Indirizzi privati RFC 1918

Per ogni tipo di classe è stata previsto un insieme di indirizzi che non possono essere utilizzati pubblicamente su

Internet, ma che sono stati riservati per l'utilizzo nelle reti private interne, le cosiddette Intranet (reti locali basate su

tecnologia Internet, come ad esempio quella del Vallauri). Gli indirizzi privati sono relativamente pochi.

Tutte le reti locali utilizzeranno gli stessi indirizzi IP privati. Questi indirizzi sono così classificati:

10.x.x.x - 10.x.x.x rete unica con 16 milioni di host

172.16.x.x - 172.31.x.x possibilità di indirizzare 16 reti contigue con 65000 host ciascuna

192.168.0.x - 192.168.255.x possibilità di indirizzare 254 reti contigue con 254 host ciascuna

Tutti i dispositivi di instradamento su Internet (router) sono programmati in modo da scartare eventuali pacchetti con

indirizzi IP privati. La rete del Vallauri è una rete privata di classe A con indirizzo = 10.0.0.0 (unico possibile).

Anche RUPAR è rete privata in classe 10 subnettata su tutto il Piemonte (Enti Pubblici: Ospedali, Comuni, Scuole).

Volendo su una rete locale è tecnicamente possibile anche utilizzare indirizzi IP pubblici, ma con il rischio che questi

entrino in conflitto con gli indirizzi pubblici nel momento in cui si intende accedere ad Internet.

Tutti gli utenti collegati da casa ad un certo ISP avranno assegnato un IP dinamico pubblico, assegnato dal server

dell‟ISP al momento dell'accesso. Gli IP assegnati dinamicamente da un Provider avranno tutti lo stesso valore sulla

parte RETE. Alcuni Provider con tecnologie più recenti (FastWeb) assegnano agli host indirizzi IP privati

provvedendo poi a convertire (mediante le NAT) più indirizzi privati in un unico indirizzo IP pubblico di uscita su

Internet. In ogni caso, in corrispondenza della prossima richiesta di accesso, all‟utente verrà assegnato un IP

dinamico differente, ma sempre relativo alla stessa LAN.

Page 42: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 42

Instradamento di un messaggio su una Rete Locale

Il Protocollo ARP (Address Resolution Protocol)

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.

Page 43: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 43

Rete Fisica e Rete Logica a livello IP

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).

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.

HUB

Page 44: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 44

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

Subnet Mask personalizzate

Personalizzare una Subnet Mask significa aumentare il numero di uno rispetto alla Subnet Mask standard.

Il numero di 1 eccedenti rispetto alla Netmask standard rappresentano la sottorete. Ad es, data la rete di classe

C, 192.168.22.0 supponiamo di personalizzare la sua netmask aggiungendo due UNI. Essa diventa pertanto:

in binario: 11111111 . 11111111 . 11111111 . 11000000

in decimale: 255 . 255 . 255. . 192

Questo significa che i primi due bit dell‟ultimo byte delle rete 192.168.22.0 non sono più dedicati alla

rappresentazione degli host, ma sono dedicati alla rappresentazione della sottorete. In sostanza la rete 192.168.22.0

(in grado di indirizzare 256 host teorici) viene suddivisa in 4 sottoreti da 64 host ciascuna.

Possibili valori della Subnet Mask

Poiché la Netmask deve necessariamente contenere una sequenza ininterrotta di 1, per ogni singolo byte i valori

validi sono sempre soltanto i seguenti:

10000000 128 128

11000000 192 128 + 64

11100000 224 128 + 64 + 32

11110000 240 128 + 64 + 32 + 16

11111000 248

11111100 252

11111110 254

11111111 255

Esercizio: Spiegare perché 255.192.255.0 non è un valore valido di Netmask.

Dimensione della Subnet Mask

Come dimensione della Subnet Mask si intende il numero di bit consecutivi uguali a uno, indipendentemente dalla

classe in uso. La notazione 10.0.0.0/16 indica che alla rete 10.0.0.0 viene applicata una Netmask profonda 16 (pari

a 255.255.0.0). Cioè la rete 10 da 16 milioni di host viene suddivisa in 256 sottoreti da 65.000 host ciascuna.

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:

Page 45: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 45

Rete. Quarto Byte dell indirizzo

IP della rete

IndirizzoIP

della rete

Indirizzi IP utilizzabili per gli host

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

NOTA: Indirizzamento CLASSFULL

Pur con l'introduzione della subnet mask, per anni i router hanno continuato a trattare le reti come classfull, nel senso

che i router non trasmettevano la subnet mask, per cui ogni router associava ad ogni sottorete IP la stessa subnet

utilizzata per indirizzare il proprio link e, in assenza di subnet, la default subnet relativa alla classe. Di conseguenza:

Una vola stabilita la netmask associata ad una certa rete primaria di classe A B o C, una qualsiasi sottorete non

può essere ulteriormente partizionata mediante l‟applicazione di una subnet a profondità variabile.

Ad esempio, data la precedente rete di classe C 192.168.22.0 partizionata in 16 sottoreti da 16 host ciascuna,

non è possibile partizionare ulteriormente una delle 16 sottoreti in 2 sotto-sotto reti da 8 host ciascuna.

dato un indirizzo di una certa classe la netmask applicata non può essere meno profonda della netmask di default

Così come non sono accettate reti con tutti zeri o tutti uno, allo stesso modo, almeno nei primi router, non erano

ammesse sottoreti composte da tutti zero o da tutti uno. La prima e l’ultima sottorete non erano utilizzabili.

Indirizzamento CDR [CLASSLESS]

Pur con l'introduzione della subnet mask, il vecchio indirizzamento Classfull continuava a provocare un notevole

spreco di indirizzi, specialmente sulla base della crescita ormai esponenziale di Internet. Nel 1993 venne emessa la

specifica RFC1517 (con successive 1518 1519 1520) che definisce una nuova forma di indirizzamento detta CDR

(CiDiEr = Classless Domain Routing) secondo cui gli algoritmi di routing devono trasmettere ai router vicini anche

le varie Subnet Mask, per cui cade definitivamente il concetto di classe, e cadono anche i 2 limiti dell‟indirizzamento

classfull descritti nella NOTA precedente:

Ogni sottorete può essere ulteriormente partizionata mediante l‟utilizzo di subnet a profondità variabile

(VLSM Variable Lenght Sub Mask),

La Subnet Mask può contenere anche un numero di cifre inferiore rispetto alla Subnet Mask di default della

classe corrispondente. Ad esempio una Subnet Mask di classe C potrebbe essere 255.225.240.0. In questo caso

si parla di Supernetting invece che di Subnetting, in quanto più indirizzi appartenenti a reti differenti di classe

C vengono a far parte di una unico rete logica più vasta. I concetti precedenti rimangono però gli stessi.

Page 46: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 46

Instradamento di un messaggio attraverso una Rete Geografica

Definizione di rete geografica

Una Rete Geografica è semplicemente l‟unione di più Reti Locali in lontananza geografica tra loro, collegate tra

loro mediante dispositivi di livello 3 detti router (instradatori). Le reti collegato possono essere poche e

relativamente vicine o tantissime e lontane fino ad un‟estensione mondiale come Internet. Internet (con la I

maiuscola) è l‟abbreviazione Inter-Network, che significa interconnessione di reti in lontananza geografica fra

loro, tutte basate sul protocollo TCP / IP (livelli 3 e 4 del modello ISO OSI), senza nessuna specifica relativamente

ai livelli ISO OSI inferiori e superiori.

All‟interno di una rete geografica

ogni host deve avere un indirizzo IP univoco e pubblico

I server devono avere un indirizzo statico (in modo da essere accessibili sempre allo stesso indirizzo)

Gli host possono avere indirizzi dinamici.

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

Configurazione del protocollo IP su un host

Quando su un certo host si configura il protocollo IP, occorre impostare le seguenti informazioni:

Indirizzo IP

Subnet Mask

Default Gateway indirizzo del Router di instradamento

DNS Server primario indirizzo del server preposto alla risoluzione dei DNS Names

Se viene selezionata l'opzione di “Richiesta di IP dinamico mediante DHCP”, all'accensione il PC proverà a

contattare un server DHCP che, se esistente, gli invia un pacchetto DHCP contenente tutte le informazioni

precedenti, più altre eventuali informazioni richieste dal Client.

Trasmissione all‟interno di una rete geografica

Ritorniamo al caso di un host A1 che deve comunicare con l‟host B1 appartenente ad una rete differente. Prima della

trasmissione, mediante il processo di AND-ing, il protocollo IP si accorge che il dest appartiene ad una rete diversa

rispetto al sorgente, per cui non invia la ARP REQUEST a B1, ma segue uno schema di indirizzamento diverso.

Page 47: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 47

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

Instradamento del messaggio

Ritornando al problema iniziale di A1 che deve trasmette un messaggio a B1, il primo passo di A1 sarà quello di

inviare una ARP Request al Default Gateway per richiedere il suo MAC Address (anche i router devono disporre di

un MAC Address, anzi uno per ogni porta).

IP SOURCE A.1

IP DEST Default Gataway

MAC SOURCE MAC A1

MAC DEST FF FF FF FF FF FF

Ricevuta la ARP Response dal Router, l'host A.1 aggiorna la propria ARP Table e quindi provvede ad inviare al

Default Gateway il seguente messaggio completo contenente i dati veri e propri:

IP SOURCE A.1

IP DEST B.1

MAC SOURCE MAC A1

MAC DEST MAC DefaultGateway

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.

Page 48: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 48

Il messaggio inviato dall'ultimo router all'host finale sarà il seguente:

IP SOURCE A.1

IP DEST B.1

MAC SOURCE MAC Ultimo Router

MAC DEST MAC HOST Finale

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.

Gerarchia degli indirizzi IP : “Aggregazione” delle Reti Vicine

La rete Internet è costituita da un elevatissimo numeri di sottoreti IP. A livello IP la rete Internet è segmentata in

moltissimi “domain routing” sempre più piccoli secondo un concetto simile a quello dei CAP postali. Le prime cifre

di un indirizzo IP individuano i Domain Routing relativi ad un‟area geografica di ampie dimensioni (es. rete

123.0.0.0/8) verso la quale verranno convogliati tutti i pacchetti recanti 123 come prima cifra. Una volta raggiunta la

rete 123, le cifre successive indicano i vari sottodomini fino al raggiungimento della sottorete finali.

In tal modo i centri di instradamento non entrano nel dettaglio finale dell'indirizzo completo, ma si occupano

soltanto del loro livello di dettaglio (tutti gli indirizzi che iniziano per 123 li mandi su un certo canale, e così via).

Page 49: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 49

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.

Scopo principale del router :

Interconnettere reti differenti, sia a livello logico (sottoreti IP differenti) sia a livello fisico (reti fisiche

differenti sia di tipo LAN come Ethernet, Token Ring, FDDI, sia di tipo WAN come PSTN, ISDN, ADSL,

ATM o Frame Relay).

Consentire l'instradamento dei pacchetti fra le reti (dal verbo inglese “to route” = instradare), scegliendo

ogni volta il percorso migliore per il raggiungimento del destinatario. I percorsi di instradamento sono decisi

sulla base dell'indirizzo IP del destinatario e di una apposita tabella di Routing programmata

dall'amministratore (o gestita dinamicamente). Il router memorizza momentaneamente ogni pacchetto IP in

transito, avvolgendolo poi all'interno di un apposito frame header (intestazione) relativo al tipo di rete su

cui instraderà messaggio. Cioè se il pacchetto verrà instradato su un link Frame Relay, il router provvederà

ad avvolgerlo all‟interno di una intestazione Frame Relay.

Interrompere i domini di broadcast, Ogni rete locale rappresenta di fatto un dominio di broadcast.

Il router blocca tutti i messaggi di broadcast, sia MAC che IP segmentando la rete in più domini di broadcast

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.

Page 50: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 50

Le porte fisiche di un router

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).

Esempio : il Router CISCO 4000

Il router CISCO 4000 può montare fino ad un max di tre moduli di rete a scelta fra:

LAN Ethernet con connettore RJ45 10/100BaseT

LAN Token Ring

LAN FDDI sia monomodale che multimodale

ISDN

ATM

Presenta inoltre

una Porta Console per la per la programmazione (Porta seriale EIA232 con connettore RS232 o spesso RJ45)

due Porte di Interfaccia Seriale per la comunicazione con altri router. In questo caso uno dei due router (quello

che gestirà il clock rate) deve essere configurato come DCE, mentre l'altro deve essere configurato come DTE.

CISCO consiglia di assegnare l'indirizzo IP inferiore al router DCE

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.

Page 51: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 51

Progettazione di Reti

Esempio 1

Connessione di due sottoreti locali e configurazione dei router

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.

Subnet Mask 255.255.0.0

Rete Didattica: 10.0.0.0 / 16

Gateway Rete Didattica 10.0.5.10

Server PDC Vallauri2000 10.0.5.1

Rete Amministrativa 10.1.0.0 / 16

Gateway Rete Amministrat 10.1.5.10

Rete A 10.0.1.0/24

Rete B 10.0.3.0/24

Anche questa è una

rete: 10.0.2.0/24

B

A

X Y X

Y

In realtà la rete didattica è realizzata

mediante un switch principale sotto il

quale sono collegati uno switch per

ogni laboratorio.

CSI Torino

Page 52: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 52

Esempio 3 ISR (Integrated Services Router)

Router di Gateway verso Internet

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.

Le impostazioni essenziali da eseguire sono:

LATO RETE GEOGRAFICA:

- Numero di telefono dell'ISP da chiamare

(8, 35 Entry Point ad ATM)

- UserName e Password registrati presso l'ISP

- Eventuale abilitazione della disconnessione

automatica per timeout di inutilizzo

Stabilito il collegamento il router riceve via

DHCP un indirizzo IP pubblico con relativa

subnet, default gateway e indirizzo DNS

LATO RETE LOCALE:

-Attivazione del servizio DHCP verso gli

host della rete locale, con impostazione del

range di indirizzi IP da assegnare

- Attivazione del servizio NAT in uscita per

consentire la navigazione

-Attivazione del servizio NAT in ingresso per

esporre eventuali servizi su Internet.

Page 53: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 53

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.

10.0.0.0/16

192.168.0.0/24

192.168.1.0/24

192.168.2.0/24

10.0.0.1

192.168.0.1

192.168.0.2

192.168.1.1

192.168.1.2

192.168.1.3

192.168.2.1

1.2.3.4

Page 54: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 54

Router R1

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN1 10.0.0.0 255.255.0.0 10.0.0.1 * (10.0.0.1) 0

LAN2 192.168.0.0 255.255.255.0 192.168.0.1 * (192.168.0.1) 0

LAN3 192.168.1.0 255.255.255.0 192.168.0.1 192.168.0.2 1

LAN4 192.168.2.0 255.255.255.0 192.168.0.1 192.168.0.2 2

0.0.0.0. 0.0.0.0. 192.168.0.1 192.168.0.2 3 (max)

Le due entry relative a LAN3 e LAN4 sono assolutamente inutili, in quanto sono sostanzialmente già comprese

all‟interno della default route finale.

All‟interno di una tabella di routing occorre necessariamente inserire solo :

Directly attached networks

Default Route

Per ogni router occorre poi valutare la raggiungibilità delle cosiddette Stub Networks, cioè le reti terminali collegate

ad un solo router. Se queste NON sono raggiungibili attraverso la Default Route, occorre aggiungerle esplicitamente

all‟interno della tabella di routing. Nell‟esempio la LAN4 è una stub network, ma è raggiungibile da R1 attraverso la

propria default route, per cui la presenza di LAN4 all‟interno della tabella di routing diventa inutile.

Router R2

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN1 10.0.0.0 255.255.0.0 192.168.0.2 192.168.0.1 1

LAN2 192.168.0.0 255.255.255.0 192.168.0.2 * 0

LAN3 192.168.1.0 255.255.255.0 192.168.1.1 * 0

LAN4 192.168.2.0 255.255.255.0 192.168.1.1 192.168.1.3 1

0.0.0.0. 0.0.0.0. 192.168.1.1 192.168.1.2 2 (max)

Rispetto ad R2, LAN2 e LAN3 sono directly attached, LAN1 e LAN4 sono stub networks

Router R3

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN1 10.0.0.0 255.255.0.0 192.168.1.2 192.168.1.1 2

LAN2 192.168.0.0 255.255.255.0 192.168.1.2 192.168.1.1 1

LAN3 192.168.1.0 255.255.255.0 192.168.1.2 * 0

LAN4 192.168.2.0 255.255.255.0 192.168.1.2 192.168.1.3 1

0.0.0.0. 0.0.0.0. 1.2.3.4 Default gateway provider 3 (max)

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.

Page 55: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 55

Cioè se ad esempio gli indirizzi di LAN1 e LAN2 fossero :

LAN1 172.16.0.0/24

LAN2 172.16.1.0/24

Le due reti potrebbero essere aggregate in una unica entry relativa a 172.16.0.0 / 23 così strutturata:

172.16.0.0 255.255.254.0 192.168.1.2 192.168.1.1 1

Router R4

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN1 10.0.0.0 255.255.0.0 192.168.1.3 192.168.1.1 2

LAN2 192.168.0.0 255.255.255.0 192.168.1.3 192.168.1.1 1

LAN3 192.168.1.0 255.255.255.0 192.168.1.3 * 0

LAN4 192.168.2.0 255.255.255.0 192.168.2.1 * 0

0.0.0.0. 0.0.0.0. 192.168.1.3 192.168.1.2 3 (max)

Comandi Base di TCP/IP in ambiente Windows

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

IpConfig (in Linux /sbin/ifconfig)

Corrisponde al vecchio WINIPCFG di Windows 95 / 98. Scopo principale di questo comando è la comunicazione

asincrona con il server DHCP. Lanciato senza parametri fornisce soltanto alcune informazioni base sulla

configurazione del protocollo IP (fra cui l' IP Address ma non il MAC Address)

IPCONFIG /ALL mostra invece gli indirizzi MAC di tutte le schede contenute nella macchina

IPCONFIG /? mostra tutte le possibili opzioni di IPCONFIG

/release Rilascia l'indirizzo IP per la scheda eventualmente specificata (default tutte)

/renew Rinnova l'indirizzo IP per la scheda eventualmente specificata (default tutte)

netsh interface ip show interface

in ambiente windows mostra un semplice elenco delle interface presenti sulla macchina

ARP (in Linux /usr/sbin/arp)

Rappresenta una interfaccia utente al protocollo ARP così come il comando ipconfig rappresenta una interfaccia

utente ai protocolli IP e DHCP. Consente cioè di leggere / modificare il contenuto della ARP Table del PC.

ARP -a mostra le ARP table della macchina corrente

Lanciato senza parametri fornisce il seguente help contenente l'insieme delle possibili funzionalità:

Page 56: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 56

Tabelle di Routing di un PC : Il comando route

Anche i PC possono gestire internamente delle Tabelle di Routing. Il comando route print consente di visualizzare

la tabella di routing del PC. Supponendo ad esempio che il PC abbia indirizzo IP 10.0.0.244 e Default Gateway

10.0.0.1, facendo route print si può vedere una tabella di routing così strutturata;

Rete Mask Interface Gateway Metric

1) 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1

2) 10.0.0.244 255.255.255.255 127.0.0.1 127.0.0.1 1

3) 10.0.0.0 255.255.0.0 10.0.0.244 10.0.0.244 1

4) 0.0.0.0 0.0.0.0 10.0.0.244 10.0.5.10 30

1) Loop Back Tutti i pacchetti destinati alla rete 127.0.0.0 li rimandi indietro sulla macchina stessa.

2) Indirizzo medesimo Tutti pacchetti aventi come destinazione l‟indirizzo IP della macchina stessa li rimandi

indietro all‟indirizzo 127.0.0.1, cioè sulla macchina stessa, esattamente come nel caso precedente. Notare la

subnet costituita da tutti 1 che consente di selezionare il solo IP relativo alla macchina corrente.

3) Directly attached Network Come per i router si avrà Gateway = Interface = IP della porta di uscita

4) Default Route. In tutti gli altri casi spedisci all‟indirizzo di Default Gateway. Questa ultima riga deriva dalla

configurazione del Default Gateway all‟interno della finestra delle proprietà del TCP/IP.

Opzioni del comandi route in ambiente Windows

Riprendiamo in considerazione la situazione del PC precedente con indirizzo IP 10.0.0.244, Default Gateway

10.0.5.10, e tabella di routing mostrata dall‟opzione route print precedente.

L‟opzione add consente di aggiungere nuove entry nella tabella di routing del PC, consentendo di inoltrare a

gateway differenti pacchetti destinati a reti differenti. Molto comodo se nella rete locale sono presenti più router di

uscita e si desidera spedire i pacchetti all‟uno o all‟altro router a seconda della rete di destinazione finale.

NB inviare pacchetti a router differenti non significa trasformare il PC in un router. Il PC provvede a spedire su

canali differenti i diversi pacchetti interni, ma non provvede ad inoltrare i pacchetti che gli arrivano dall’esterno.

Sintassi: route add #net_ip mask #net_mask #gateway_ip if #interface metric #metric

Esempi:

route -p add 172.16.0.0 mask 255.255.255.0 10.0.0.2 if 0x10001 route -p add 192.168.0.0 mask 255.255.255.0 10.0.0.3 if 0x10001

consentono di aggiungere due nuove entry alla tabella di routing del PC, facendo in modo che i pacchetti destinati

alla rete 172.16.0.0 vengono inoltrati al router 10.0.0.2 mentre i pacchetti destinati alla rete 192.168.0.0 vengano

inoltrati al router 10.0.0.3. Tutti gli altri pacchetti verranno inoltrati al Default Gateway 10.0.0.1

Nota: Se il parametro if viene omesso, l'interfaccia viene determinata automaticamente in base all'indirizzo di gateway.

Anche se l’interfaccia possiede più indirizzi IP, l’indirizzo mittente viene determinato sempre in base all'indirizzo di gateway.

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.

Page 57: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 57

Host con più indirizzi IP

Se un host dispone di due schede di rete oppure semplicemente si impostano sulla stessa scheda di rete due indirizzi

IP differenti appartenenti a LAN differenti, l‟host entra a far parte di entrambe le LAN e, mediante, il comando

route, si può fare in modo che il PC comunichi direttamente con entrambe le LAN.

Trasformazione di un PC in un router : iptables

Installando su un qualunque PC un apposito software, quale ad esempio iptables, viene attivato sul PC il cosiddetto

IP FORWARDING che consente al PC di emulare il comportamento di un router, consentendogli di inoltrare da una

interfaccia all‟altra i messaggi ricevuti, sulla base della tabella di route del PC. Questo indipendentemente dal fatto

che l‟host possieda due schede di rete differenti o una sola scheda di rete depositaria di due indirizzi IP..

In Windows è possibile abilitare l‟IP forwarding eseguendo le seguenti configurazioni:

aprire il Registro di configurazione (Start >> Esegui >> Regedit )

seguire il percorso KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Modificare il valore di IPEnableRouter a "1" e Riavviare Il comando ipconfig / all mostrerà ora ”Routing IP abilitato SI” (abilitato di default).

NOTA : Configurazione DHCP ricevuta da un Provider

Quando il PC (o il router) riceve un IP pubblico dal provider, solitamente riceve come netmask 255.255.255.255 che

significa che il PC non entra a far parte di una rete e dunque non può mai eseguire una Direct Delivery a nessuno,

ma i pacchetti destinati ad un qualunque IP diverso da quello ricevuto dovranno essere instradati verso l’indirizzo di

Default Gateway ricevuto dal Provider. Essendo il collegamento PC-Provider un collegamento punto punto e non un

collegamento Ethernet, non viene avviato il protocollo ARP che, per come è strutturato, necessita assolutamente che il

Default Gateway appartenga alla stessa rete IP del mittente. Dunque il pacchetto arriva al router il quale utilizzando

ad es una subnet 255.255.0.0 in grado di pilotare 65.000 host, dal suo punto di vista vede tutti questi host come una

sola rete locale /16. L’indirizzo inviato come def gateway a tutti i client sarà sicuramente appartenente a questa rete.

VLSM Variable Length Subnet Masks

Subnet Mask a profondità variabile. Strumento per partizionare ulteriormente una sottorete(subnetting a subnet) in

più sottoreti. Esempio: data la rete di classe C 207.21.24.0 / 27 cioè con i primi 3 bit utilizzati come come bit di rete,

si ottengono le 8 sottoreti indicate nella prima tabella. Data la subnet #6 con indirizzo 207.21.24.192 / 27 e 32 host

possibili, applicando una ulteriore partizione è possibile suddividerla in ulteriori 8 sottoreti da 4 host ciascuna.

A livello di routing

dinamico, VLSM è

supportata da

RIP v2, OSPF, EIGRP

Subnet Mask costitita da 3 bit

La sottorete 6 ha una subnet mask di 6 bit

Le sottoreti precedenti

possono essere utilizzate per

indirizzare il link tra 2 router.

Page 58: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 58

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

Page 59: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 59

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

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

ROUT1 LAN 1 255.255.255.224 R1 - eth0 R1 - eth0 0

LAN 2 255.255.255.128 R1 - ppp0 R2 - ppp0 1

LAN 2 255.255.255.128 R1 - ppp1 R4 - ppp1 3

LAN 3 255.255.255.128 R1 - ppp1 R4 - ppp1 2

LAN 3 255.255.255.128 R1 - ppp0 R2 - ppp0 2

0.0.0.0. 0.0.0.0. R1 - ppp1 R4 - ppp1 4 (max)

0.0.0.0 0.0.0.0. R1 - ppp0 R2 - ppp0 4 + 2 = 6

ROUT2 LAN 1 255.255.255.224 R2 - ppp0 R1 - ppp0 1

LAN 1 255.255.255.224 R2 - ppp1 R3 - ppp1 3

LAN 2 255.255.255.128 R2 - eth0 R2 - eth0 0

LAN 3 255.255.255.128 R2 - ppp1 R3 - ppp1 1

LAN 3 255.255.255.128 R2 - ppp0 R1 - ppp0 3

0.0.0.0. 0.0.0.0. R2 - ppp0 R1 - ppp0 4

0.0.0.0 0.0.0.0. R2 - ppp1 R3 - ppp1 4

ROUT3 LAN 1 255.255.255.224 R3 - ppp0 R4 - ppp0 2

LAN 1 255.255.255.224 R3 - ppp1 R2 - ppp1 2

LAN 2 255.255.255.128 R3 - ppp1 R2 - ppp1 1

LAN 2 255.255.255.128 R3 - ppp0 R4 - ppp0 3

LAN 3 255.255.255.128 R3 - eth0 R3 - eth0 0

0.0.0.0. 0.0.0.0. R3 - ppp0 R4 - ppp0 4

0.0.0.0 0.0.0.0. R3 - ppp1 R2 - ppp1 6

ROUT4 LAN 1 255.255.255.224 R4 - ppp1 R1 - ppp1 1

LAN 1 255.255.255.224 R4 - ppp0 R3 - ppp0 3

LAN 2 255.255.255.128 R4 - ppp1 R1 - ppp1 2

LAN 2 255.255.255.128 R4 - ppp0 R3 - ppp0 2

LAN 3 255.255.255.128 R4 - ppp0 R3 - ppp0 1

LAN 3 255.255.255.128 R4 - ppp1 R1 - ppp1 3

0.0.0.0 0.0.0.0. R4 ppp2 - 1.2.3.4 Gateway Provider 4

Page 60: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 60

Esercizio 3

Una certa azienda intende realizzare una infrastruttura di rete comprendente tre LAN con circa 50 host caduna, come

indicato nello schema seguente

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

eth0 eth1

eth0

eth1 eth0

ppp0

Page 61: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 61

2) Tabella di Routing di R2

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN 1 255.255.255.192 R2 - eth0 R1 – eth1 1

LAN 2 255.255.255.192 R2 - eth0 R2 - eth0 0

LAN 3 255.255.255.192 R2 - eth0 R3 – eth1 1

0.0.0.0. 0.0.0.0. 69.12.154.7 Gateway Provider 2 (max)

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

LAN ADDRESS SUBNET INTERFACE GATEWAY METRIC

LAN 1 255.255.255.192 HOST IP R1 – eth1 1

LAN 3 255.255.255.192 HOST IP R3 – eth1 1

0.0.0.0. 0.0.0.0. HOST IP R2 – eth0 2

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

Page 62: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 62

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 :

Version [4 bit] Numero di versione del protocollo IP, cioè 4 oppure 6

HLEN [4 bit] Lunghezza dell'header espressa in Double Word, cioè in multipli di 4 bytes,

dunque con una lunghezza massima di 15 Double Word, pari a 60 bytes

Service Type [8 bit] Importance Level (Velocità / Affidabilità) assegnato dai livelli superiori ed utilizzato da QoS

Ad ogni bit corrisponde un differente Importace Level:

D bit -> Ritardo Minimo, cioè Velocità Massima

R bit -> Massima Affidabilità

T bit -> Throughput massimo. Throughput = efficienza di rete = numero di

pacchetti validi nell'unità di tempo. Via di mezzo fra le due precedenti

M bit -> Costo minimo, cioè percorso più breve

Total Length [16 bit] Lunghezza totale del datagram (PDU completo, payload + intestazione)

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.

Page 63: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 63

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 Source Address [32 bit] Indirizzo IP dell'host che spedisce il Datagram

IP Dest Address [32 bit] Indirizzo IP dell'host destinatario del Datagram

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.

Page 64: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 64

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.

I principali codici di identificazione di un messaggio ICMP sono i seguenti:

L‟utility PING - Packet INternet Groper

Il comando ping rappresenta una semplice interfaccia utente a ICMP, mirato a verificare la raggiungibilità, a

livello IP, di una certa destinazione. (“pinging the destination”, spesso tradotto come “pingare” la destinazione).

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

E

E

E

E

Page 65: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 65

In corrispondenza del comando ping,

In ambiente Windows l'host sorgente provvede ad inviare all'host destinatario quattro pacchetti ICMP di tipo Echo

Request (contenenti in pratica la sola intestazione ICMP), per ognuno dei quali si aspetta di ricevere un

corrispondente messaggio ICMP di tipo Echo Reply, In ambiente Linux/Unix il sorgente continua ad inviare

pacchetti Echo Request fino a che non viene interrotto manualmente.

In corrispondenza di ogni Echo Reply il sorgente visualizzerà una riga di testo contenente:il numero di sequenza

dell'Echo Reply ed il tempo di Round Trip (in ms) intercorso tra l'invio dell'Echo Rquest ed il ricevimento dell'Echo

Reply). Ovviamente in corrispondenza del ricevimento della echo reply verrà aggiornata la ARP Table.

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 :

3 = Destination unreachable (destinazione irraggiungibili) ad esempio perché il destinatario è spento oppure a

causa dell'impossibilità di trasmettere il pacchetto su un Link di dimensioni inferiori rispetto alle dimensioni del

pacchetto ed in presenza del bit di Don't Fragment

11 = Time Exceeded (Richiesta scaduta) Il destinatario è stato individuato ma non ha risposto probabilmente perché

è disabilitato a rispondere ai messaggi ICMP. Per evitare sovraccarichi, è infatti possibile disabilitare un host (o

un router) a rispondere ai messaggi ICMP. Un attacco a Yahoo era stato quello di inviare continuamente ping al

server che passava così il tempo a rispondere ai ping a scapito delle altre funzionalità

4 = Source Quence (Nodo sovraccarico)

12 = Paramater Problem on a Datagram, cioè Intestazione IP corrotta.

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

Page 66: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 66

L‟utility TRACERT Traceroute

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

Sintassi : E' la stessa di PING, cioè TRACERT destinazione

Facendo TRACERT verso una macchina vicina connessa mediante hub / switch, si vedrà come risultato una unica

riga, in quanto si arriva subito alla macchina destinazione senza attraversare nessun router.

Inviando un comando del tipo tracert www.yahoo.it si vedrà:

10.0.5.10 Proxy del Vallauri

10.191.1.1 Server del CSI

158.102.234.129 Server pubblico del CSI

dopo di che si viene bloccati dal firewall del CSI che non inoltra i messaggi ICMP

Protocolli di Routing Dinamico (LIV 7)

Nel caso del routing statico, l'amministratore deve aggiornare manualmente la tabella di routing in corrispondenza di

ogni modifica sulla topologia di rete. In una rete di grandi dimensioni questo mantenimento è molto oneroso.

Scopo del routing dinamico è quello di costruire e mantenere in modo completamente automatico le tabelle di

routing. Per ogni router occorre impostare soltanto le reti direttamente collegate, dopo di che il router si

costruisce dinamicamente le entry mancante “imparandole” dai router vicini mediante un scambio di messaggi

continuo e regolare (ad esempio ogni 30 secondi nel caso di RIP).

Vantaggi del routing dinamico

Comodità di programmazione

Permette al router di adattarsi automaticamente alle variazioni della rete, garantendo una certa robustezza

globale della rete. Ad esempio, quando un link diventa indisponibile, consente di passare automaticamente ad

un link alternativi. Meccanismo detto di fault tolerant: se un router si guasta, quelli vicini lo vengono a

sapere perchè non risponde più ai messaggi e lo segnalano anche agli altri.

Limiti

Appesantisce notevolmente il traffico di rete con un continuo scambio di messaggi (overhead).

Se si conosce bene la rete, il routing statico consente di ottimizzare e minimizzare le tabelle di routing

Il Routing Dinamico riduce l'affidabilità di trasmissione dei singoli pacchetti, a causa di possibili

duplicazioni (dovute ai loop), perdite o fuori sequenza.

Nel caso in cui si utilizzino protocolli di routing dinamico, è comunque possibile inserire manualmente (per

sicurezza) le principali entry di routing statico, facendo coesistere Routes statiche con Routes Dinamiche. In questo

caso si consiglia di assegnare alle entry statiche un elevato valore di metrica in modo che queste entry vengano

utilizzate soltanto in caso in cui le entry dinamiche non abbiano dato nessun risultato. Le entry statiche sono

preferibili nel caso di stub network, cioè quelle sottoreti con un unico punto di collegamento al resto della rete.

Molti router supportano più protocolli di routing dinamico contemporanei, con tabelle separate per ogni protocollo

Page 67: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 67

Stati di un router abilitato al Routing Dinamico

Stabile nel momento in cui dispone di tabelle di routing correttamente compilate.

Transitorio nel momento in cui sta eseguendo i protocolli di routing per l'aggiornamento delle tabelle

Instabile Un guasto di un link o di un router può determinare uno stato di instabilità in cui qualche entry delle tabelle

di routing può essere non valida. Il tempo necessario per ritornare alla stabilità è detto tempo di convergenza.

RIP Routing Information Protocol Porta 520 UDP [RFC 1058]

Rappresenta il più semplice e il più comune fra i protocolli di routing .Protocollo, di tipo Distance Vector (Distanza

– Direzione, nel senso che non conosce dettagli sulle reti remote, ma conosce solo la direzione su cui spedire il

pacchetto e la distanza della rete destinataria). Le reti direttamente connesse al router devono essere configurate

manualmente ed hanno metrica zero. Dopo di che ogni router ogni 30 secondi invia senza richiesta di risposta

la sua intera Routing Table a tutti i Router vicini. Questi aggiungono le entry ricevute alla loro Route Table,

incrementando ogni volta di 1 il valore della metrica. Il corrispondenza del prossimo transitorio (cioè dopo 30 sec)

il router invierà la propria Route Table a tutti i router vicini e così via. Una entry con metrica 4 significa che prevede

l'attraversamento di 4 router prima del raggiungimento della destinazione. In caso di entry multiple sulla stessa

destinazione, verrà considerata la entry con metrica inferiore.

Vantaggi: semplicità della configurazione (semplice attivazione) e delle informazioni scambiante.

Svantaggi:

Le tabelle di routing assumono notevoli dimensioni con molte righe multiple.

per ogni Rete Di Destinazione vengono memorizzate al max sei routes . Nel momento in cui il router

individua un percorso a metrica inferiore, elimina il percorso a metrica massima limitando a 6 il n di routes

memorizzate. Nei router CISCO questa soglia può essere impostata manualmente nel range 1 – 6 (default 4).

Per non appesantire troppo le tabelle di routing, le entry non vengono inviate oltre il valore 15 di metrica,

per cui il destinatario viene considerato irraggiungibile se situato oltre 15 router. Il valore di metrica 16

indica rete irraggiungibile e viene utilizzato anche per indicare una rete momentaneamente scollegata..

Per evitare che 2 router si scambino le stesse routes, RIP implementa il cosiddetto meccanismo di Split

Horizon secondo cui un router non rimanda indietro sulla stessa interfaccia le entry ricevute su

quell‟interfaccia

Tempi di convergenza molto lenti (tipicamente 180 sec, tempo medio per l‟attraversamento di 7 router).

Nel momento in cui un router si accorge di una variazione di rete (es la rete connessa ad una certa porta viene

staccata), provvede a contrassegnare quella rete come irraggiungibile (metrica 16) e a trasmettere

immediatamente l'informazione ai router vicini, senza attendere lo scadere dei 30 sec, provvedendo all'invio

di un messaggio detto triggered update (che però sul router successivo non è più triggerato e aspetta 30 sec).

Non necessariamente individua il percorso di connessione più rapido. Il fatto di attraversare il minor numero

di router non necessariamente significa aver individuato il percorso più veloce.

E‟ di tipo ClassFull, cioè insieme all‟indirizzo di rete non invia la Subnet Mask per cui il router destinatario

assocerà all‟indirizzi di rete ricevuto la subnet mask di default della classe di appartenenza dell‟indirizzo stesso

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).

Page 68: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 68

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

IGRP Interior Gateway Routing Protocol

Protocollo sempre di tipo Distance Vector proprietario CISCO mirato a superare i principali limiti intrinseci di RIP :

Per confermare la propria attività, ogni router invia ogni 5 sec (per collegamenti più veloci di T1, altrimenti ogni

60 sec) un HELLO message ai router vicini. Gli HELLO messages non vengono propagati.In assenza di

messaggi, dopo un tempo pari a 3 volte l‟HELLO Interval, il router vicino viene considerato disattivo.

- Max numero di hop attraversabili: 224

I messaggi di update sono inviati solo in caso di variazioni sulle reti direttamente collegati ed ogni router

provvede al loro inoltro istantaneo, per cui si hanno tempi di convergenza estremamente rapidi

Metrica molto più accurata, basata su ben 4 fattori indicati di seguito.

BANDWIDTH larghezza di banda [bit/sec] del link. Da configurare manualmente.

DELAY tempo di accesso al mezzo trasmissivo (dipende dal tipo di link).

RELIABILITY error rate (tasso di errore) sul collegamento [gestito dinamicamente dal router]

LOAD attuale carico della linea indicante il n° bytes spediti nell‟unità di tempo. [gestito dinamicamente]

La metrica risultante viene calcolata sulla base della seguente formula:

Metric = [K1 * Bandwidth + (K2 * Bandwidth)/(256-load) + K3*Delay] * [K5/(reliability + K4)]

in cui l'amministratore può assegnare un peso diverso a ciascuna delle costanti che presentano i seguenti

default: K1 = K3 = 1 and K2 = K4 = K5 = 0. Se K5 = 0 l‟ultima parentesi quadra non viene considerata.

Sulla base delle entry acquisite un apposito algoritmo detto DUEL calcola il costo di tutte le entry relative a ciascuna

destinazione, individuando, per ogni possibile destinazione, una Best Route che viene caricata nella routing table,

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à > 10

8 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.

Exterior Gateway Protocol

Internet è costituita da un insieme di reti gestite da enti differenti ed intercomunicanti tra loro. Ognuna di queste reti

viene denominata SISTEMA AUTONOMO e può utilizzare un proprio Interior Gateway Protocol (come RIP,

IGRP, OSPF) differente dagli altri. Nel momento in cui due Sistemi Autonomi vengono collegati insieme occorre

utilizzare un Exterior Gateway Protocol mirato a trasferire le informazioni di routing da un Sistema Autonomo

all‟altro.Un esempio di Exterior Gateway Protocol è il protocollo BGP (Border Gateway Protocol Porta 179 UDP)

con le versioni v3 ClassFull, v4 ClassLess utilizzato in tutte le dorsali Internet..

Page 69: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 69

Aggregazioni nel routing classless

Si consideri la situazione indicata in figura:

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

Aggregazioni nel routing classfull

Nel routing classfull la netmask non viene trasmessa, per cui non ha senso parlare di aggregazioni. Se il router che

riceve le tabelle di routing conosce la subnet di una certa entry (perché una delle sottoreti è direttamente collegata al

router stesso), allora automaticamente associa quella subnet alla entry, altrimenti gli associa la subnet di default della

classe di appartenenza.

Affinché questo meccanismo funzioni è assolutamente indispensabile che TUTTE le sottoreti di una stessa rete siano

dislocate in modo contiguo.

R1 R2

Page 70: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 70

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à

Introduzione al concetto di porta

Siccome i protocolli di livello 5 – 6 – 7 sono tanti e tutti, per trasmettere dati, devono appoggiarsi sul canale TCP/IP

(unico, che funge da imbuto), è stato introdotto il concetto di porta che è un numero intero su 2 byte che identifica

univocamente una istanza di una Applicazione di Rete in esecuzione su un certo host. Ogni applicazione di rete

in esecuzione su un certo host ha associato un numero identificativo di porta. Essendo disponibili 65000 numeri di

porta, ogni host può avere fino a 65000 applicazioni di rete in esecuzione (65000 canali di comunicazione).

Ogni applicazione può avere più istanze in esecuzione parallela, dette “Sessioni”. Ad esempio ogni finestra di un

browser rappresenta una Sessione. Ad ogni sessione è associato un numero di porta differente.

La seguente tabella mostra una situazione in cui, su un certo host, si hanno tre sessioni aperte del protocollo HTTP

(ognuna con un suo numero di porta), una sessione FTP, una sessione SMTP ed una sessione Telnet tutte appoggiate

sul protocollo TCP. Sono inoltre presenti una sessione TFTP, una sessione DNS ed una sessione RPC (ciascuna col

proprio numero di porta) appoggiate su UDP

HTTP1

Port 34567 HTTP2

Port 43569

HTTP3

Port 10445

FTP

Port 23998

SMTP

Port 10340

Telnet

Port 10754

TFTP

Port 44877

DNS

Port 29044

RPC

Port 20333

TCP UDP

IP

Network Interface

Introduzione alla comunicazione Client - Server

Una comunicazione fra due host terminali (end system) è sempre di tipo Client – Server, dove come Server si

intende una applicazione caratterizzata da un ciclo infinito di ascolto, cioè perennemente in esecuzione in attesa

di richieste di connessione da parte di un client (TCP), oppure in attesa di ricevere dati da parte di un client (UDP).

Porte di ascolto utilizzate dai Server

Un Server deve sempre essere identificato da una ben precisa porta di ascolto. Quando un client contatta un server

ad un certo indirizzo IP, deve specificare la porta di ascolto del servizio a cui intende collegarsi. Dunque affinché i

client possano contattare i Server, le porte di ascolto dei server devono essere conosciute dai client.

IANA (Internet Assigned Number Authority) ha definito una serie di porte standard, dalla porta 1 alla 1023, dette

well-known port (o porte statiche) utilizzate dai principali servizi comuni (es 80 per HTTP). In questo modo quando

un client invia una richiesta ad un server standard (ad esempio una richiesta HTTP verso un web server), se il server è

in ascolto sulla porta standard, l‟utente client può evitare di indicare ogni volta esplicitamente il numero di porta, che

viene impostato automaticamente sulla base del nome del protocollo richiesto.

Page 71: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 71

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.

Note sulle well known port

Sia in Windows che in Unix i processi che utilizzano le well known port possono essere avviati soltanto con i

privilegi di amministratore, in modo che soltanto l'amministratore possa assegnare queste porte.

Nel momento in cui si sviluppa un server, (indipendentemente dal fatto che utilizzi o meno le well known

port), occorre specificare il numero di porta da assegnare al servizio, numero da “passare” al socket nel

momento in cui si attiva il server in ascolto.

Note sulle porte effimere

Le porte effimere sono ancora suddivise dalla IANA in due gruppi:

1024 – 49151 Registered Port Porte non controllate dalla IANA, che però registra ed elenca chi le usa come

servizio agli utenti.

49152 – 65535 Dynamic / Private Port La IANA non dice nulla riguardo a queste porte che pertanto sono i

candidati naturali ad essere usate dall'utente per i propri Personal Server ed anche ad essere utilizzate come

porte effimere per i client, come espressamente indicato nell'RFC 1700.

In realtà i vari sistemi hanno fatto scelte diverse per le porte effimere. Sia Windows che Linux utilizzano per la

generazione delle porte effimere gli indirizzi da 1024 a 5000: In Linux è previsto un secondo range per le porte

effimere ( indirizzi maggiori di 32768). La scelta fra i due intervalli viene fatta dinamicamente a seconda della

memoria a disposizione del kernel per gestire le relative tabelle.

Page 72: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 72

Server Iterativi e Server Concorrenti

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.

Page 73: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 73

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

CONNESSIONE (Socket Pair)

Si definisce Connessione (o socket pair) una coppia di socket connessi tra loro. Una Connessione identifica

univocamente un canale di Comunicazione tra due End Point. Una stessa applicazione (client o server) può avere

più connessioni contemporaneamente aperte verso End Point differenti.

Una connessione è identificata dall‟insieme di quattro parametri:

IPsource : PORTsource

IPdest : PORTdest

Per ogni richiesta di connessione, un server TCP deve memorizzarsi l‟intera socket pair, compresa la porta effimera

utilizzata dall‟host remoto in modo da poter rispondere correttamente. Il concetto di connessione, inteso come socket

pair, viene di solito esteso anche a UDP, benché in questo caso sia abbastanza improprio parlare di connessione.

Sintassi per la Creazione e Utilizzo di un Socket (rif .NET)

a) Istanza di un nuovo Socket

Dim mySock As New Socket ( AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp )

b) Istanza di un nuovo EndPoint (locale nel caso del server, remoto a cui connettersi nel caso del client)

Dim myEndPoint As New IPEndPoint (IP As IPAddress, .Porta As Integer)

c) Link del socket all‟End Point di ascolto (solo nel caso del Server)

mySock.Bind (myEndPoint)

Comunicazione UDP

Il client può inviare un messaggio al server mediante il metodo sendTo . L‟ultimo parametro indica le coordinate

del server destinatario del messaggio. Il server potrà leggere il messaggio mediante il metodo receiveFrom:

clientSock.SendTo(buffer, length, flags, remoteEndPoint)

serverSock.ReceiveFrom(buffer, MAX_BUFFER_LENGHT, flags, byRef remoteEndPoint)

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)

Page 74: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 74

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.

Come viene garantita l‟affidabilità della trasmissione

Per ogni segmento trasmesso viene sempre richiesto un ackowledgment (ricevuta di ritorno), normalmente

trasmesso insieme alla risposta stessa (meccanismo del Piggybacking ). Se il server non è sufficientemente

veloce a costruire la risposta; viene prima trasmesso l‟ACK e soltanto in seguito viene inviata la risposta.

Appositi algoritmi di Controllo del Flusso, sulla base degli ackowledgment ricevuti, consentono di

ritrasmettere eventuali pacchetti andati persi, cioè quei pacchetti per i quali non si è ricevuto un

ackowledgment entro un certo timeout, timeout che dipende anche dalle condizioni della rete. Un segmento

perso viene ritrasmesso per un determinato numero di tentativi, intervallati da un periodo di tempo crescente.

TCP monitorizza continuamente lo stato del canale (calcolando per ogni segmento il Round Trip Time RTT

che intercorre tra la trasmissione del segmento ed il ricevimento dell'ACK), eseguendo un Controllo della

Congestione. Più aumenta RTT (rete sovraccarica), più TCP diminuisce le dimensioni della finestra di

trasmissione (numero di pacchetti da trasmettere consecutivamente), rallentando la trasmissione. In questo

modo TCP esegua un adattamento alle condizioni della rete, evitando di sovraccaricare Router già intasati

con ulteriori quantità di dati che potrebbero portare al collasso del sistema.

Intestazione di un segmento TCP

Come l'intestazione IP, è costituita da un minimo di 5 Double Word e presenta i seguenti campi:

Destination Port [2 Bytes] Numero di porta utilizzato dall'applicazione in esecuzione sul nodo destinatario

Source Port [2 Bytes] Numero di porta utilizzato dall'applicazione in esecuzione sul nodo sorgente

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.

Page 75: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 75

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.

1. Tecniche di Segmentazione di uno stream

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

Page 76: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 76

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.

2. Apertura e Chiusura di una Connessione TCP

Apertura della Connessione

L‟apertura di una connessione TCP è realizzata mediante un Handshake a tre vie strutturato nel modo seguente

(con il flag SYN è sempre settato a 1) :

1) Colui che richiede la connessione (il Client) invia al Server una SYN Request contenente alcune informazioni

sulla propria configurazione. In particolare la SYN Request contiene le seguenti informazioni principali:

- il flag SYN = 1 (indica che si tratta di un pacchetto relativo all‟Handshake di apertura)

- numero di porta ed indirizzo IP del Client

- Sequence Number iniziale casuale del Client (ad esempio pari ad un valore x )

- Window Size del Client. Dimensione della finestra di Ricezione espresse in bytes che il Client utilizzerà per

memorizzare i segmenti ricevuti dal Server. Il Server utilizzerà questa informazione per dimensionare la

propria Sliding Window di trasmissione.

- Valore di MSS (Maximum Segment Size) del Client, che inciderà sulla dimensione dei pacchetti spediti

- la presenza nel campo dati di un singolo byte iniziale detto SYN Byte

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è:

Page 77: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 77

- flag SYN = 1 (indica che si tratta di un pacchetto relativo all‟Handshake di apertura)

- numero di porta ed indirizzo IP del Server (che però il Client deve necessariamente conoscere a priori)

- Sequence Number iniziale casuale del Server (ad esempio pari ad un valore y )

- un ackowledgment del Sequence Number del Client, cioè un Ackowledgment Number = x +1 che indica

l‟offset del prossimo byte che il server si aspetta di ricevere.

- Windows Size del Server indicante le dimensioni del buffer che il Server utilizzerà per memorizzare i dati

ricevuti dal Client. Il Client utilizzerà questa informazione per dimensionare la Sliding Window di trasmission

- Valore di MSS del Server

- la presenza nel campo dati di un singolo byte iniziale detto SYN Byte

3) Il Client risponde con un ulteriore segmento SYN ACK (sempre con il flag SYN = 1) contenente un

ackowledgment del Sequence Number del Server, cioè un Ackowledgment Number = y +1

Una volta instaurata la connessione, la comunicazione fra Tx e Rx può procedere in modalità full duplex.

Se invece si cerca di stabilire una connessione su una porta dove non c‟è nessun server in ascolto, TCP lato Rx

risponde attivando il bit di RESET della comunicazione all‟interno dell‟intestazione TCP.

Chiusura della Connessione

La connessione viene chiusa con un processo di handshake a 4 fasi. Ciascun host quando ha terminato i dati da

trasmettere informa il partner il quale risponde con un ACK. Le quattro fasi sono :

1) Uno dei due host (normalmente il Client, ma talvolta il Server), terminata la trasmissione dei propri dati, richiede

la chiusura della connessione (metodo Close) inviando un segmento FIN con Sequence Number pari alla

lunghezza dei dati trasmessi, espresso come spiazzamento rispetto al Sequence Number iniziale.

2) Host B risponde con un ACK sempre con il flag FIN settato a 1 ed impostando Ackowledgment Number = x +1

(come per il SYN anche FIN occupa un byte nel numero di sequenza). Inoltre segnala ai suoi livelli superiori un

end-of-file sulla lettura. Il fatto che Host A abbia finito la propria trasmissione, non esclude che Host B possa avere

ancora dei dati da trasmettere. Per cui Host B termina la spedizione dei propri dati ed al termine chiamerà

anch‟esso il metodo Close per chiudere la propria connessione.

3) Host B invia un segmento FIN con Sequence Number pari alla lunghezza dei dati inviati al client, espresso come

spiazzamento rispetto al Sequence Number iniziale.

4) Host A risponde con un ACK sempre con il flag FIN settato a 1 ed impostando Ackowledgment Number = y +1.

A questo punto la connessione è definitivamente chiusa.

Host A Host B

FIN1

ACK1

FIN_WAIT

CLOSE_WAIT

TIME_WAIT FIN2

ACK2

CLOSED CLOSED

Page 78: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 78

Esempio completo di una sessione TCP

Il client, per poter inviare una richiesta al server, deve prima inviare una richiesta di connessione costituita da 3 msg

complessivi. Quindi invia la richiesta vera e propria (ad esempio una richiesta HTTP per il download di una pagina

web). Il server, ricevuta la richiesta, restituisce un segmento contenente i dati richiesti (che si suppone stiano in un

singolo segmento). Se il server è sufficientemente veloce a costruire la risposta, l'acknowledge della richiesta è

mandato insieme alla risposta stessa (piggybacking ). Al ricevimento di questo segmento, il client dovrà rispondere a

sua volta con un ACK di “Segmento dati ricevuto correttamente”. Complessivamente 3 messaggi di scambio dati.

Aggiungendo i 4 messaggi relativi alla chiusura della connessione, si conclude che, per effettuare una richiesta e

ricevere la relativa risposta sono necessari dieci segmenti complessivi che potrebbero essere addirittura 11 senza il

piggybacking sui dati. In UDP sarebbero stati sufficienti due soli segmenti. Questo è il costo che occorre pagare per

avere l'affidabilità garantita da TCP. E‟ bene dunque sempre tenere presente quali sono le esigenze che si hanno in

una applicazione di rete, perché non è detto che TCP sia sempre la scelta migliore.

Note sugli stati del protocollo TCP

In assenza di connessione lo stato del TCP è CLOSED. Quando un Client intende aprire una connessionel TCP

emette un segmento SYN e lo stato diventa SYN_SENT. Quando riceve la risposta del SYN+ACK emette un

ACK e passa allo stato ESTABLISHED in cui può avvenire il trasferimento dei dati. Il Server invece, una volta

avviato, passa dallo stato CLOSED allo stato LISTEN. In corrispondenza della richiesta del client passa nello

stato di SYN_RECEIVED e infine nello stato ESTABLISHED.

Dallo stato ESTABLISHED si può uscire con una chiusura attiva (richiesta di chiusura) oppure con una

chiusura passiva (richiesta di chiusura ricevuta del terminale remoto). Nel primo caso se l‟applicazione chiama

la funzione close prima di aver ricevuto un end-of-file dei dati, la transizione è verso lo stato FIN_WAIT.

Quando arriva il FIN ACK da parte dell'host remoto, l'applicazione passa in uno stato di TIME_WAIT, che

diventerà CLOSED nel momento in cui anche l'host remoto annuncerà la propria chiusura. Se invece

l'applicazione riceve un FIN nello stato ESTABLISHED (chiusura passiva) si passa nello stato CLOSE_WAIT.

Gli eventuali dati finali che Host B continua ad inviare dopo che Host A ha ormai chiuso la propria connessione,

potrebbero andar persi, a meno che l'host A, invece di chiudere totalmente la connessione, esegua una chiamata

detta half-close chiudendo solo la trasmissione e mantenendo aperta la ricezione.

In realtà, per avere una corretta terminazione, TCP rimane nello stato di TIME WAIT per un certo tempo successivo

all'invio dell'ultimo ACK dati. Ad esempio quando si usa un browser è molto frequente vedere con NETSTAT diverse

connessioni in stato di TIME WAIT relativamente ai server appena contattati. Questo perché i web server, dopo aver

inviato la pagina richiesta, tengono la connessione aperta per un certo timeout per consentire al client di richiedere

altri contenuti della pagina e/o altre pagine. Questo evita al server, entro il timeout, di dover creare ogni volta nuovi

processi verso lo stesso client.

Se un processo termina senza aver chiuso le proprie connessioni, in fase di normale chiusura del processo viene

automaticamente avviato l'handshake di chiusura di tutte le connessioni aperte.

3. Algoritmi di Controllo del Flusso dei Dati

Spesso indicati come protocolli ARQ (Automatic Repeat reQuest).

Talvolta indicati con la sigla E2E FC (End To End Flow Control).

I protocolli di controllo del flusso possono essere applicati sia a livello 2 (Data Link) sia a livello 4 (Rete). Lo standard

Ethernet a livello 2 prevede però soltanto un servizio Best Effort, per cui i protocolli di controllo del flusso sono

interamente demandati al livello 4 dove diventano parte integrante di TCP. Il livello 2 esegue solo un controllo CRC

sul frame ricevuto, limitandosi a scartare i frames non corretti e demandando a livelo 4 le richieste di ritrasmissione.

I protocolli ARQ devono:

Controllare che i segmenti siano arrivati correttamente e, in caso di errori, procedere alla loro

ritrasmissione (notare che la ritrasmissione non è l'unica tecnica possibile di Error Recovery. Esistono altre

tecniche, come ad esempio i codici di Hamming utilizzati nelle workstation che consentono in ricezione una

correzione automatica dell'errore, codici comunque sofisticati e non utilizzati da TCP).

Page 79: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 79

Cercare di velocizzare al massimo la trasmissione, sincronizzando trasmettitore e ricevitore. Ciò significa

trasmettere al massimo della velocità senza tempi morti tra un segmento e l‟altro, ma al contempo evitare, se

il ricevitore è più lento del trasmettitore, che il Tx trasmetta troppi dati saturando Rx.

Protocolli IDLE RQ : Send And Wait

Il più semplice protocollo ARQ è il protocollo Send And Wait, detto anche Stop And Wait, secondo il quale Tx

trasmette un segmento e poi rimane IDLE (fermo) in attesa dell' ackowledgment (ACK) di Rx. Se entro un certo

timeout non riceve risposta o riceve un ackowledgment negativo (NACK), allora ritrasmette.

Vantaggi: : Molto semplice da implementare

Svantaggi : Poco efficiente perché ad ogni pacchetto si ferma in attesa di ackowledgment.

Protocolli CONTINUOUS RQ: Sliding Window

Protocolli a finestra scorrevole, di cui esistono diverse varianti. I protocolli a finestra scorrevole permettono la

trasmissione consecutiva di N pacchetti prima di arrestarsi in attesa di un ACK. N rappresenta la dimensione della

finestra, dimensione che può essere espressa in N° di segmenti oppure (secondo TCP) in bytes.

Vantaggi: Questo meccanismo aumenta l'efficienza del sistema (Throughput ) limitando i tempi di attesa.

Svantaggi :E‟ più complesso da implementare

Il precedente protocollo Send And Wait può essere visto come un caso particolare di Sliding Window con N = 1.

Principio delle Sliding Window

Si consideri una finestra di dimensione N = 10.

Inizialmente TX può trasmettere consecutivamente tutti i segmenti interni alla window, numerati ad esempio

da 1 a 10, senza fermarsi ad aspettare un ACK. In corrispondenza dell'invio di ciascun segmento attiva un

timer per il conteggio del timeout entro cui si prevede di ricevere il corrispondente ACK.

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.

Protocollo Selective Repeat

Il modello Selective Repeat, utilizzato da TCP, è strutturato nel modo seguente:

Per ogni segmento ricevuto correttamente, Rx invia a Tx un ACK contenente il numero dell‟ultimo segmento

ricevuto correttamente (ackowledge cumulativo).

Il ricevitore gestisce una Finestra di ricezione in cui provvede a bufferizzare eventuali segmenti giunti fuori

sequenza, cioè prima di un segmento eventualmente andato perso o scartato perché contenente errori.

Le dimensioni di questa finestra devono essere >= rispetto alla Finestra di trasmissione utilizzata da Tx. Anzi

Tx dovrà utilizzare un finestra di trasmissione di dimensioni non maggiori rispetto alla finestra di ricezione di Rx.

Non appena il segmento perso o errato arriva nuovamente (senza errori), viene sistemato nel buffer di ricezione

in posizione opportuna e quindi consegnato ai livelli superiori insieme agli altri segmenti

In caso di mancato ACK relativo ad un certo segmento, Tx in corrispondenza dello scadere del timeout,

ritrasmette selettivamente il singolo segmento andato perso e quindi si ferma in attesa dell‟ACK

Page 80: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 80

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.

Utilizzo delle Sliding Window da parte di TCP

TCP utilizza l'algoritmo di Selective Repeat con l'unica differenza che i numeri di sequenza non sono enumerativi dei

segmenti, ma sono espressi come piazzamento (in Bytes) rispetto al primo byte del segmento, che a sua volta è

rappresentato da un numero casuale identificativo di ogni singola sessione. Le dimensioni delle window di trasmissione e ricezione sono concordate in fase di apertura della connessione, ma

possono variare durante la sessione. Infatti ogni messaggio ACK include la dimensione della window che il ricevitore

può tollerare in quel momento

Ovviamente maggiore è la window, migliori risultano le prestazioni (Throughput), anche nel caso di lunghe distanze

tra Tx e Rx. Esiste una dimensione ottimale che porta alla completa occupazione del canale, cioè tale per cui

appena terminata la trasmissione dell'ultimo segmento della finestra arriva l'ACK del primo che fa avanzare la

finestra. Un ulteriore aumento della finestra non comporterebbe nessun vantaggio con un inutile spreco di memoria.

Gestione del Retransmission Timer (timeout)

Per quanto concerne la valutazione dei tempi di timeout da utilizzare per l‟invio di ogni singolo segmento, TCP

utilizza una strategia che monitorizza continuamente il Round Trip Time (RTT) di rete, cioè l'intervallo di tempo

che intercorre tra la trasmissione di un segmento e la ricezione del suo ACK. Sulla base di queste valutazioni TCP

esegue una somma pesata degli ultimi Round Trip Time per adattare dinamicamente il timeout dei segmenti

successivi. (I ritardi in una rete IP sono infatti variabili in base al carico e all'eventuale congestione della linea).

Evoluzioni del protocollo TCP: Algoritmi di controllo della congestione

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.

Page 81: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 81

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 :

Anno Sigla Descrizione

1983 4.2 BSD Prima release ampiamente utilizzata di TCP/IP

1986 4.3 BSD Seconda release molto simile alla precedente con piccoli miglioramenti di prestazioni

1988 4.3 BSD Tahoe Introduzione degli algoritmi Fast Retransmit, Slow Start, Congestion Avoidance,

1990 4.3 BSD Reno 3 algoritmi precedenti + Fast Recovery

1990 4.3 BSD Sack 3 algoritmi precedenti + Selective Ackowledge

1993 4.4 BSD Nuove funzionalità come ad esempio il multicasting

Sintesi sul funzionamento dei 3 algoritmi di Controllo della Congestione

In presenza di un pacchetto perso non è possibile sapere se è stato scartato da un router in congestione oppure se è

stato scartato dal livello 2 perchè arrivato corrotto. Gli algoritmi di controllo della congestione, in estrema sintesi,

operano nel modo seguente:

Se ritornano indietro 3 ACK consecutivi uguali, significa che un singolo pacchetto è andato perso o è arrivato

corrotto, ma i pacchetti successivi sono arrivati a destinazione causando l‟invio degli ACK. Dunque in questo

caso TCP ritrasmette il pacchetto perso con un leggero rallentamento della trasmissione.

Se invece non arrivano più ACK, significa che c‟è stata una congestione sui router intermedi, per cui TCP

provvede a ritrasmettere ma rallentando notevolmente i tempi, fino eventualmente a fermarsi.

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.

Page 82: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 82

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.

Un firewall può essere costituito da:

un router con installato un apposito software firewall (normalmente iptables con interfaccia grafica)

un computer con 2 schede di rete ed un software firewall (es iptables) o meglio ancora un “Sistema

Operativo Firewall” come ad esempio Open BSD (che funge in pratica anche da Router e Proxy)

un dispositivo dedicato assimilabile ad un router.

Nel caso di un PC, il Firewall è normalmente una macchina dedicata a fungere da Firewall, cioè priva di qualunque

altro servizio. Un “Sistema Operativo Firewall” come ad esempio Open BSD, è un SO mirato alla non attaccabilità

dall‟esterno, con interfaccia grafica scarna ed essenziale. A differenza dei normali SO mirati alla gestione delle

applicazioni e caratterizzati dal rilascio continuo di nuove versioni più prestanti ma che possono anche contenere

buchi sfruttabili dagli hacker, i SO Firewall sono estremamente robusti, snelli, e molto ben collaudati.

Al limite sulla macchina firewall si possono installare software Proxy e/o URL filtering, che consentono filtraggi

specifici su ciò che arriva da Internet. Grazie alla sua posizione perimetrale strategica, il firewall risulta infatti il posto

migliore dove imporre qualunque restrizione di traffico (quali utenti possono accedere a che cosa

Stateless Packet Filtering (Liv 4 senza controllo dello stato)

Si tratta dei primi e più semplici firewall che spacchettavano indistintamente tutti i pacchetti in transito leggendo

indirizzo IP e porta e decidendo quali far passare e quali no. Ormai in disuso. Consente di abilitare / disabilitare

- indirizzi IP mittente o destinatario, porta mittente o destinatario

- tutti i pacchetti TCP / UDP in base alla porta. Cioè consente di far passare solo i pacchetti TCP o solo UDP

- i comandi ICMP Cioè consente di disabilitare il router a rispondere ai comandi ICMP

Es: E‟ possibile disabilitare come IP DEST l‟indirizzo IP di un sito indesiderato. Volendo invece proteggere una

macchina interna dagli accessi esterni è possibile disabilitare come IP DEST l‟indirizzo IP di quella macchina.

In questo modo però, nel momento in cui la macchina richiede una pagina web, la risposta verrà tagliata.

Statefull Packet Inspection (Liv 4 con controllo dello stato)

E‟ il tipo di firewall più frequente. Il Filtro NON viene eseguito sui singoli pacchetti ma sulle richieste di

connessione. Cioè analizza tutte le richieste di connessione accettando SOLO quelle consentite dalle ACL.

Le connessioni accettate vengono memorizzare come entry temporanee all‟interno della ACL, in modo che tutti i

pacchetti dati relativi e quella connessione (sia richieste dati che risposte) verranno lasciati passare come validi.

Nella Entry Temporanea verranno memorizzati tutti 4 i parametri relativi alla connessione:

IPSOUERCE PORTSOURCE IPDEST PORTDEST

L‟analisi dei pacchetti da parte del Firewall Statefull Packet Inspection è in genere estesa anche ai pacchetti UDP,

benché questi non facciano riferimento ad una connessione esistente. Nel caso di UDP il Firewall filtra le richieste

del client e accetta soltanto stream UDP in entrata relativi a richieste memorizzate.

Analizzando le richieste di connessione, lo Statefull Packet Inspection firewall:

riconosce i pacchetti malevoli (che non fanno parte di alcuna connessione) e li abbatte.

individua e blocca le richieste di connessioni multiple da parte di uno stesso sorgente (attacchi DoS =Denial

of Service, Negazione del Servizio), che consistono tipicamente nell‟inviare richieste di connessione (SYN) con

Page 83: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 83

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).

Application Layer Firewall :(Liv 7)

Rispetto ai precedenti forniscono maggiori funzionalità a scapito di una minore velocità.

Sono apparati che intercettano i pacchetti fino al livello 7, cioè analizzano le intestazioni fino a livello 7 interpretando

i comandi specifici dei protocolli di livello 7, ma limitatamente ai protocolli di livello 7 supportati. Ad esempio:

Firwall DNS consente di abilitare / disabilitare direttamente i DNS Name mittente o destinatario.

Firewall FTP utilizzato a protezione dei server FTP per consentire l‟apertura temporanea della porte dati.

Proxy Firewall fungono sia da proxy che da firewall, consentendo soltanto connessioni selettive verso Internet

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.

Page 84: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 84

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.

Static NAT in uscita

Attivare lo STATIC NAT in uscita significa acquistare un certo numero di indirizzi pubblici pari al numero di utenti

della rete e mapparli tutti sulla porta fisica NAT OUTSIDE di uscita verso Internet.

All‟interno della ATT verranno impostati tutti i vari abbinamenti tra indirizzi privati e indirizzi pubblici:

IP Privato (rete INSIDE) IP Pubblico (rete OUTSIDE)

10.0.0.1 1.1.1.1

10.0.0.2 1.1.1.2

10.0.0.3 1.1.1.3

L‟abilitazione dello STATIC NAT in uscita non ha molto senso in quanto comporta l‟acquisto di un numero

esagerato di indirizzi pubblici e tanto varrebbe assegnare un indirizzamento pubblico per tutta la rete interna.

Static NAT in ingresso

Attivare lo STATIC NAT in ingresso significa acquistare un certo numero di indirizzi IP, uno per ogni server che si

intende esporre su Internet, assegnare tutti questi indirizzi sulla porta fisica NAT OUTSIDE del router, (sulla quale

porta dunque saranno concentrati tutti gli indirizzi pubblici) e compilare una ATT statica che associa a ciascuno di

questi indirizzi l‟indirizzo privato del corrispondente server interno. Il router provvederà così, tramite NAT, a traslare

le richieste verso i relativi server interni. La ATT può essere la stessa di prima, ma questa volta “letta” al contrario.

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.

Page 85: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 85

PAT (Port Address Translation) o NAT di Livello 4 o Overloading NAT

Il PAT è una evoluzione del NAT che consente di mappare un insieme di indirizzi privati su un unico indirizzo

pubblico associando ad ogni connessione una PORTA differente univoca. Vediamo come viene applicato.

PAT dinamico in uscita

In corrispondenza di ogni richiesta di uscita da parte di un host interno, PAT provvede a sostituire :

- l‟indirizzo IP Privato del mittente con il proprio indirizzo IP pubblico

- il numero di Porta del mittente (effimera, generata dal browser) con una nuova porta effimera generata

dinamicamente da PAT in modo da garantire di assegnare ad ogni richiesta un numero di porta univoco.

- Inoltre aggiunge automaticamente all‟interno della ATT una entry a 4 colonne contenente l‟IP privato del

richiedente, il numero di porta effimera del richiedente, il nuovo IP pubblico (cioè il suo) ed il nuovo n di porta

Local Source IP Local Source Port Public IP Public Port

10.0.0.2 5110 1.1.1.7 1025

10.0.0.3 13662 1.1.1.7 1026

In corrispondenza della risposta, PAT provvede a sostituire indirizzo IP e Porta del destinatario coi valori locali.

PAT statico in ingresso

Le richieste provenienti da Internet dovranno essere tutte indirizzate verso l‟unico indirizzo pubblico assegnato alla

porta WAN del router. PAT provvederà poi a traslare le richieste verso i server interni attraverso il numero di porta.

Cioè le richieste sulla porta 80 verranno inoltrate al web server, quelle sulla porta 25 al mail server, etc.

Nota: Il servizio PAT è abbastanza simile ad un proxy HTTP con i seguenti vantaggi: a) il proxy è tipicamente di livello 7 (contro il livello 4 di PAT), dunque molto più lento.

b) Nel caso del PAT il Client non deve eseguire nessuna configurazione sulla propria macchina (trasparente), mentre nel

caso del proxy occorre configurare il browser in modo che ridiriga le richieste verso il proxy.

c) Per contro il Proxy è sicuramente più facile e veloce da installare e configurare a livello di Server

Per vedere l’indirizzo IP pubblico ricevuto da un Provider si può andare sul sito “MIO IP”

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.

Page 86: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 86

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.

Fasi del protocollo DHCP: Il Lease Process

DHCP utilizza un processo detto Lease Process (Lease = affitto) secondo cui un client richiede un indirizzo IP in

affitto per un certo tempo. Se allo scadere del tempo di Lease il client non ha rinnovato la richiesta, significa che il

client è stato spento e dunque il DHCP Server può rilasciare l‟indirizzo IP. Viceversa se il client rimane accesso, di

tanto in tanto deve richiedere il rinnovo del tempo di lease.

Il tempo di lease è normalmente espresso in ore – minuti - sec. Tipicamente nelle LAN 24/48 ore.

Gli ISP assegnano invece indirizzi IP con tempi di lease molto bassi (typ 15 minuti), tempo per il quale

l‟indirizzo rimane comunque bloccato e riservato per quel client.

Per quanto concerne invece il range di indirizzi IP, occorre utilizzare un range tale da consentire almeno il

funzionamento contemporaneo di tutti gli host presenti in rete.

Il Lease Process è articolato in 4 fasi:

1) dhcpDiscover [Richiesta d‟Offerta] Al momento dell'avvio l'unico indirizzo che il client conosce è il proprio

MAC. Dunque all‟accensione invia un messaggio di broadcast detto dhcpDiscover avente 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 // 0.0.0.0 ha il significato di “Indirizzo indefinito”

IP Dest = 255.255.255.255 // Broadcast IP

Payload:

Ultimo IP ricevuto. (La prima volta in assoluto sarà 0.0.0.0.)

Il messaggio viene intercettato, sia livello MAC che a livello IP, da tutti gli host della rete e passato al server in

ascolto sulla porta 67. Se sulla macchina non è attivo un servizio DHCP, il messaggio viene semplicemente

ignorato. Se invece sulla macchina è attivo il servizio DHCP, questi attiverà la fase 2 di dhcpOffer

Page 87: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 87

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

Renewal : Rinnovo del lease

Trascorso il 50 % del tempo di lease, il client, se acceso, invia un messaggio dhcpRequest al Server DHCP gestore

del lease, messaggio inteso come richiesta di rinnovo del Lease (Renewal). Il Server risponde con un messaggio

dhcpAck, contenente la nuove durata del tempo di lease (che in pratica riparte dall'inizio), ed eventuali

aggiornamenti della configurazione IP. In pratica se il PC è sempre accesso il suo IP non cambia mai.

Nota: Talvolta però in un collegamento FLAT ADSL sempre attivo può succedere che il server DHCP provveda a

cambiare gli IP ai client, non si sa bene per quale motivo.

Page 88: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 88

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

Protocollo RARP (Reverse ARP)

Primo protocollo utilizzato per l‟assegnazione degli indirizzi IP agli host di una rete. A differenza di DHCP è un

protocollo di livello 3 basato su LLC. RARP esegue una assegnazione statica degli indirizzi IP sulla base degli

indirizzi MAC dei client. Ogni terminale doveva avere memorizzato il MAC Address del RARP Server.

All'accensione ogni terminale invia una RARP Request indirizzata al RARP Server indicando all'interno della stessa il

proprio MAC Address ed il MAC Address del RARP Server.

In corrispondenza della RARP Request, il Server va a leggere su un apposito file di configurazione l'indirizzo IP da

assegnare a quel MAC, e risponde con una RARP Reply contenente l'IP Address da assegnare all'host.

Protocollo BootP (Bootstrap Protcol)

Il primo successore di RARP è stato BootP, protocollo di livello 7 (porta 67 UDP) che può essere visto come una via

di mezzo tra RARP e DHCP. Esegue una assegnazione statica come RARP ma opera OnDemand come DHCP

A differenza di RARP che inviava soltanto l‟indirizzo IP, BootP è in grado in inviare al client molte

informazioni come ad esempio Subnet Mask, Default Gateway e DNS Server Address.

Come RARP, utilizza un file di configurazione contenente gli abbinamenti MAC -> IP. Per ogni indirizzo MAC

sono però riportati tutti i vari parametri IP (IP, netmask, gateway) da assegnare alla macchina avente quel MAC

Protocollo APIPA (Automatic Private IP Addressing)

Windows dalla versione 2000 in avanti, implementa un nuovo protocollo detto APIPA capace di assegnare

dinamicamente all‟host un indirizzo IP univoco anche in assenza di un Server DHCP. A tal fine Microsoft ha

acquistato un certo numero di indirizzi IP da destinare a tale scopo. Rete di classe B 169.254.0.0 / 16 destinata

all‟autoassegnazione.

Impostando sulla macchina l'opzione “Ottieni Automaticamente un indirizzo IP”, in fase di avvio il Client cercherà di

contattare un DHCP Server, ma se entro un certo Timeout si accorgerà che non esistono DHCP Server in rete, allora

interviene APIPA che provvede a generare automaticamente un indirizzo IP appartenente alla rete indicata.

Dopo aver generato l'indirizzo, APIPA invia in rete una ARP Request a questo indirizzo. Se nessuno risponde

significa che l'indirizzo è libero e se lo assegna direttamente, altrimenti provvede a generare un nuovo indirizzo.

Attenzione che APIPA assegna soltanto l'indirizzo IP e non l‟indirizzo di Default Gateway, per cui gli host

possono comunicare soltanto all'interno della rete locale.

Page 89: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 89

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.

Struttura dei DNS Name

Gli indirizzi IP hanno una struttura gerarchica di tipo geografico che fornisce precise informazioni sulla loro

dislocazione sul territorio (esattamente come per i numeri di telefono leggendo l‟indirizzo da sinistra verso destra si

ottengono informazioni sempre più dettagliate circa la rete finale di appartenenza dell‟host). Ad esempio gli indirizzi

IP pubblici “italiani” iniziano quasi sempre con uno dei numeri: 151 - 193 - 194 - 195 - 212 - 213 - 217

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.

I nomi DNS hanno una struttura ad albero dove:

Alla radice è assegnata una etichetta vuota indicata come root.

Alla root sono collegati più Domini di Primo Livello (TLD Top level domain ) definiti da una authority

internazionale, con lunghezza compresa tra 2 e 4 caratteri. Ad esempio:

com organizzazione commerciale

edu istituzione educativa

gov organizzazione governativa

net centro di supporto alle reti

org organizzazione diversa dalle precedenti

coutry code identifica una nazione (es .it)

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.

Page 90: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 90

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)

Albero dei DNS Server AUTOREVOLI

Un DNS Server Autorevole mantiene un database di associazioni dominio / indirizzo IP per tutti i domini su cui è

Autorevole. I DNS Server Autorevoli sono organizzati mediante una struttura ad albero articolata in 3 livelli :

1) Root Server – Cioè radice dell‟albero dei DNS. Contengono l‟elenco degli indirizzi IP relativamente ai DNS

Server Autorevoli di Primo Livello, cioè responsabili per i vari domini di primo livello.

Il 1 febbraio 1999 i Root Server erano in tutto 13 dislocati 10 in Nord America, 1 alle isole Haway e 2 in Europa

(rispettivamente a Stoccolma e Londra). Esempio di database di un Root Server

edu 14.145.87.186 // europa

edu 34.30.231.98 // nord america

com 125.65.139.213 // europa

com 97.67.157.71 // sud est asiatico

Quando si richiede l‟indirizzo IP di un certo host appartenente al dominio .edu, la richiesta viene girata al root

server più vicino il quale restituisce l‟indirizzo dei TLD Server che gestiscono il dominio .edu.

2) Server Autorevoli di 1° livello (TLD = Top Level Domain) Questi Server gestiscono ognuno un singolo

Dominio di Primo Livello, e contengono l‟elenco dei DNS Server Autorevoli di Secondo Livello registrati sotto

quel dominio. Ad esempio un DNS Server di Primo Livello relativo al dominio edu contiene gli indirizzi IP di

tutti i DNS Server Autorevoli per i domini di secondo livello registrati come .edu.

Ovviamente esistono più TLD Server con le stesse informazioni.

3) Server Autorevoli di 2° Livello (Server di Zona) esposti da tutti i Domini di Secondo Livello.

Contengono gli indirizzi di tutte le macchine pubbliche appartenenti al dominio in questione e gli indirizzi

di eventuali sottodomini di 3° livello e/o successivi.

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.

Page 91: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 91

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.

Esempio : Accesso di un Browser ad un sito web

Per accedere ad un web server Internet occorre scrivere sulla barra di navigazione del browser la URL completa del

server, URL costituita dal nome del server (www) seguito dal nome del dominio di appartenenza. Ad es una

macchina appartenente al dominio Vallauri.edu richiede www.Virgilio.it. La richiesta si articola nelle seguenti fasi:

1) l‟host appartenente a Vallauri.edu contatta il DNS server Primario ricevuto dal protocollo DHCP in fase di avvio

della macchina, inviando una DNS Request relativa alla URL www.Virgilio.it.

2) Il DNS Server Primario 1) consulta la propria cache e, se l‟indirizzo non è disponibile, 2) invia una DNS Request

al proprio DNS Primario (DNS Forwarding) o 3) ad un Root Server. In caso di Forwarding, il Server contattato può

avere in cache il nome richiesto, oppure eseguire un ulteriore DNS Forwarding, o rivolgersi ad un Root Server

- Il Root Server contattato restituisce un elenco di TLD server in grado di risolvere il dominio .it.

- Il DNS Server Primario invia allora una DNS Request al primo (eventualmente al secondo, poi al terzo, etc.)

dei TLD Server ricevuti richiedendo l‟indirizzo del DNS Server Autorevole per il dominio Virgilio.it.

- Il TLD Server risponde inviando l‟indirizzo IP del server Autorevole per il dominio Virgilio.it

- Il DNS Server Primario invia infine una DNS Request al Server di Zona autorevole per il dominio Virgilio.it

richiedendo l‟indirizzo della macchina www. Il DNS Server interpellato restituisce l‟indirizzo richiesto.

Se il server di zona autorevole per il dominio di secondo livello non riesce a risolvere il nome richiesto,

restituisce un messaggio di errore, senza rimandare la richiesta a nessun altro ed evitando rischi di loop.

3) Ad ogni passaggio il Server Locale aggiorna la propria cache, in modo da non dover ripetere i passi precedenti in

caso di successive richieste dello stesso indirizzo o di indirizzi simili.

4) Il Server Primario invia all‟host di Vallauri.edu un DNS Reply contenente l‟indirizzo richiesto

5) Al ricevimento dell‟indirizzo richiesto, il browser visualizza il tipico messaggio “Sito web rilevato”

Procedura di Acquisto Registrazione e Mantenimento di un dominio

1) Acquisto di un nuovo dominio presso www.nic.it/domini, Ente Italiano preposto a rilasciare i domini, con

Dichiarazione di Responsabilità a carico del richiedente. Il servizio WHOIS consente di verificare se il

dominio richiesto è libero. Oltre al prezzo di acquisto c‟è anche una tassa annuale di mantenimento.

2) Registrazione del Dominio, cioè registrare all‟interno dei TLD Server l‟indirizzo IP del DNS Server

Autorevole per quel dominio (sempre tramite NIC).

3) Apertura di un nuovo file all‟interno del DNS Server Autorevole (che può essere contemporaneamente

Autorevole per più Domini) contenente i record relativi agli indirizzi delle macchine appartenenti al dominio.

I Maintainer di dominio (es Aruba) offrono di solito servizio di Acquisto Registrazione e Mantenimento del

dominio, eventualmente con l‟apertura, nel loro DNS Server, di un nuovo record relativo al nostro web server.

Costo complessivo circa 30 € l‟anno. Bisogna però fare molta attenzione a che cosa comprende o non comprende il

mantenimento: 1) tassa sul dominio, 2) registrazione 3) mantenimento del DNS Server Autorevole del dominio

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

Page 92: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 92

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.

Risoluzione dei Nomi Locali : DNS Server Locali

Da un punto di vista di rete locale, si definisce Dominio un insieme di macchine connesse in una rete e collegate

ad un sistema di autenticazione centrale detto PDC Primary Domain Controller, controllore primario del

dominio. Ogni host rappresenta una foglia del dominio. Un esempio di PDC è ActiveDirectory di Windows che

gestisce un database di oggetti di rete: Utenti, Gruppi, Servizi, Computer, Stampanti.

Il Dominio Locale può avere lo stesso nome del Dominio Pubblico o nome diverso (es Vallauri.edu pubblico e

Vallauri.net privato). La scelta è soggettiva. Un DNS server locale è delegato a risolvere i nomi locali. Quando un

host vuole accedere ad un server locale (es http://mmserver), il browser capisce che si tratta di un host appartenente

alla rete locale, ricostruisce la URL completa (mmserver.vallauri.net) e richiede l‟IP al proprio DNS Server Locale.

Un DNS Server interno ad una LAN può allo stesso tempo sia risolvere sia i nomi locali sia fungere da DNS

Server autorevole verso l‟esterno. Supponendo di avere all‟interno della rete un web server con indirizzo IP locale

ma visibile anche all‟esterno mediante un sevizio NAT, il DNS Server può contenere al suo interno sia la risoluzione

con l‟indirizzo privato sia la risoluzione con l‟indirizzo pubblico.

In corrispondenza di una richiesta dell‟indirizzo IP del web server, il DNS Server

Solitamente risponde con una lista di tutti gli indirizzi IP che fanno match con la URL ricevuta (quindi sia

l‟indirizzo pubblico sia quello privato). Il richiedente esterno automaticamente sceglierà l‟indirizzo pubblico

mentre il richiedente interno automaticamente sceglierà l‟indirizzo privato.

Può anche essere in grado di restituire automaticamente il solo indirizzo giusto sulla base dell‟interfaccia su

cui arriva la richiesta, oppure sulla base dell‟indirizzo IP mittente: se il mittente è privato restituisce

l‟indirizzo privato, mentre se il mittente è pubblico restituisce l‟indirizzo pubblico

Page 93: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 93

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.

I principali tipi di record di un database DNS

I database DNS sono normalmente strutturati in file testuali, uno per ogni Dominio Autorevole rappresentato, che

contengono diverse tipologia di record a seconda del servizio a cui si riferiscono. I principali tipi di record sono :

Il record "A" (Address) è il più comune. Associa il DNS Name di un web server ad un indirizzo IPv4

I record "NS" (Name Server) memorizzano l‟indirizzo IP del DNS server Autorevole di un certo Dominio.

I record "MX" (Mail eXchange) identificano i server di Posta all‟interno di un certo Dominio

I record "AAAA" gestiscono gli indirizzi IPv6 ( quattro volte più lunghi rispetto agli indirizzi IPv4).

Il DNS viene utilizzato anche per realizzare la risoluzione inversa, ovvero per far corrispondere ad un

indirizzo IP il corrispondente nome a dominio. Per questo si usano i record "PTR" utilizzati in

troubleshooting, come ad esempio nslookup, per restituire l‟host name corrispondente ad un indirizzo IP.

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.

Page 94: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 94

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.

Servizi Windows attuali che utilizzano SMB

In Windows Client e Server SMB sono attivabili nella finestra Connessioni di Rete / Proprietà

Condivisione di File e Stampanti è un Server SMB. Se abilitato su un host, consente agli altri computer della rete

di accedere alle sue risorse condivise. In pratica avvia un demone in ascolto su una certa porta (445 nel caso di SMB

Direct Hosting oppure 137 / 139 nel caso di NetBIOS over TCP). Anche se la porta 445 è sicuramente più “sicura”

rispetto alle altre due, la sicurezza massima è ottenuta disabilitando questo servizio.

Client per reti Microsoft è un Client SMB. Se abilitato consente al computer locale di accedere agli SMB Server

presenti sulla rete. Se il computer locale non ha risorse da condividere, è sufficiente abilitare questo servizio senza

abilitare quello precedente. I client possono infatti non condividere dati ma accedere comunque al file system

condiviso di altre macchine e alle stampanti collegate in rete. I comandi al Client SMB possono essere passati :

in modo grafico attraverso Gestione Risorse

in modo testuale attraverso il prompt facendo uso dei comandi net

Evoluzioni di NetBIOS

Livello ISO OSI

NetBIOS originale

NetBIOS over

NetBEUI

NetBIOS over

TCP/IP

SMB Direct Hosting

(port 445)

applicazione SMB SMB SMB

SMB presentazione

sessione

NetBIOS

NetBIOS NetBIOS

trasporto NetBEUI TCP / IP TCP / IP

network

data link IEEE 802

fisico

DOS WIN 3.11 WiN 95 - 98 WIN XP 1987 - 1994 1995-2000 2001->

Page 95: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 95

NetBEUI (NetBios Extended User Interface interfaccia utente estesa di NetBIOS)

Con la standardizzazione dei protocolli di livello 2 (IEEE 802.2), nel 1986 IBM riscrive il codice di NetBIOS,

lasciando immutata l‟interfaccia verso l‟alto e definendo un protocollo intermedio (NetBEUI) che, coprendo i livelli

3 e 4 del modello ISO OSI, facesse da intermediario tra l‟interfaccia NetBIOS e lo standard IEEE 802.2.

I protocolli TCP/IP già esistevano, ma erano usati solo sulle WAN e non si pensava ancora ad un loro utilizzo nelle

LAN. NetBIOS si trasforma in una Entry Point a NetBEUI, continuando a fornire la stessa interfaccia operativa verso

l‟alto e la compatibilità con SMB. Con la diffusione di protocolli routed come IPX/SPX e TCP/IP, NetBEUI ha

iniziato a perdere di significato fino ad essere completamente sostituto da TCP/IP.

NetBIOS over TCP/IP (NBT o NetBT)

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.

Funzionamento di NetBIOS over TCP

All‟accensione ogni host NetBIOS invia un messaggio di broadcast con il proprio nome per “Registrarsi”

sulla rete. Se esiste già un host con quel nome, questo risponde con un messaggio di errore..

Ogni Server NetBIOS “apre” tre porte di ascolto:

La porta UDP 137 (servizio detto NetBIOS Name Service) è la porta di ascolto dei comandi NetBIOS.

Quando un client da “Gestione Risorse” tenta di “Aprire” una risorsa sul Server (ad esempio mmserver),

invia una richiesta NetBIOS di broadcast contenente il nome NetBIOS della macchina a cui intende accedere

(mmserver), chiedendone l‟indirizzo IP e la verifica dei permessi di accesso.

La porta UDP/138 (servizio NetBIOS Datagram Service) viene invocata per popolare la lista delle macchine

visualizzate tramite “Sfoglia la rete”. La macchina su cui l‟utente esegue il comando “Sfoglia la rete” invia

un messaggio di broadcast sulla porta 138 per individuare tutte le risorse condivise sulla rete.

La porta TCP/139 (servizio NetBIOS Session Service) è la porta di trasferimento dati ed è anche la porta

più conosciuta. E‟ la prima porta che deve essere chiusa per mettere in sicurezza un sistema Windows.

WINS - Windows Internet Naming Service

E‟ un servizio Microsoft avente lo scopo di gestire una registrazione centralizzata dei nomi NetBIOS e la loro

risoluzione nei corrispondenti indirizzi IP in modo più semplice rispetto a DNS, cioè senza utilizzare il concetto di

dominio.

Incluso da Windows 2000 Server in avanti, masempre poco utilizzato, opera come server dei nomi NetBIOS consentendo di

registrare e risolvere i nomi dei client NetBIOS. Il servizio WINS è integrabile con il servizio DHCP nel senso che il database

WINS viene aggiornato automaticamente mediante DHCP all’accensione di ogni macchina. Quando si apportano modifiche alla

configurazione dinamica degli indirizzi (ad esempio quando un nuovo Client si collega alla rete oppure quando gli viene

assegnato un nuovo indirizzo DHCP), il server DHCP provvede ad inviare automaticamente le informazioni anche al Server

WINS (che le memorizzerà nel proprio database) e ad inviare all’host l’indirizzo del WINS Server.. Tutto ciò avviene senza alcun

intervento manuale da parte degli utenti o dell'amministratore di rete. Si tratta in sostanza di una versione locale di Internet,

dove il DNS diventa WINS, e HOSTS diventa LMHOSTS. (LMHOSTS è un file di testo contenente coppie di nomi NetBIOS -

indirizzi_IP). In caso di assenza di un server WINS il client, detto h-node, cioè nodo idrido in grado di tentare più soluzioni,

“passa” automaticamente ad utilizzare il vecchio meccanismo dei messaggi di broadcast sulle porte 137 138 139.

Page 96: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 96

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)

SMB Direct Hosting : [CIFS]

Fino a Windows 98 il protocollo SMB poteva essere interfacciato solamente a NetBIOS (nella versione NetBIOS

over TCP). Da windows 2000 in avanti ad SMB è stata aggiunta la possibilità di interfacciare SMB direttamente su

TCP (porta 445), eliminando di fatto la dipendenza da NetBIOS che può essere completamente disabilitato.

A questo nuovo protocollo, indicato spesso come SMB direct hosting, Microsoft ha assegnato un nuovo nome CIFS

(Common Internet File System), riservando il nome FILE per il componente di file sharing. Nonostante le

specifiche aperte, rilasciate con lo scopo di farlo diventare il nuovo standard per l‟accesso alle Risorse Condivise di

una rete locale, CIFS non è mai decollato come si sarebbe voluto ed è utilizzato soltanto in sistemi Windows.

Principali vantaggi:

Interfacciamento diretto su TCP, senza dover passare attraverso NetBIOS

Possibilità di utilizzare direttamente un server DNS per la risoluzione dei nomi, dunque con la possibilità

di risolvere anche nomi composti da più di 15 caratteri e/o che contengono dei puntini.

Maggiore sicurezza della porta 445 rispetto alle porte 137 138 139 utilizzate da NetBIOS, protocollo più

vecchio e dunque con minor controllo sulle porte, perciò più facilmente vulnerabile.

Risoluzione dei nomi in un client Windows

I Client Windows implementano, nell‟ordine, le seguenti metodologie per la risoluzione dei nomi.

1) una cache interna

2) WINS se il protocollo DHCP, in fase di avvio, ha inviato l’indirizzo IP di un server WINS, la richiesta di

risoluzione dei nomi viene inviata al server WINS.

3) DNS In caso di assenza del server WINS, se il DHCP ha inviato l‟indirizzo di un DNS Server abilitato alla

risoluzione dei nomi NetBIOS, la richiesta di risoluzione viene inviata al DNS server

4) NetBIOS broadcast. Se il DNS server non è stato configurato oppure se non è in grado di risolver il nome

ricevuto, allora la richiesta di risoluzione dei nomi NetBIOS viene inviata mediante un messaggio NetBIOS di

broadcast, secondo le vecchie “usanze” di NetBIOS. Attenzione però che i nomi composti da più di 15

caratteri e/o che contengono punti (".") possono essere risolti soltanto tramite DNS

Nota sulla configurazione

La seguente finestra, visualizzabile da

“connessione di rete LAN, protocollo TCP/IP,

Avanzate”, consente di abilitare / disabilitare

manualmente l‟utilizzo di NetBIOS over TCP.

L‟impostazione “Predefinite” esegue quanto

descritto sopra, cioè abilita NetBIOS over TCP solo

se DHCP non ha fornito l‟indirizzo né di un server

WINS né di un Server DNS.

L‟ultima voce “Disabilita NetBIOS su TCP”

disabilita NetBIOSover TCP (maggiore sicurezza)

ma impedisce la risoluzione dei nomi in caso di

assenza di un server WINS / DNS.

La voce “Abilita NetBIOS su TCP” esegue solo e

subito la risoluzione tramite NetBios

Page 97: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 97

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.

Evoluzione dei Browser

1993 Mosaic, il primo browser (dal verbo inglese to browse = curiosare) in grado di visualizzare documenti HTML,

immagini incluse. Scritto in linguaggio C e basato sul protocollo gopher (protocollo per la ricerca di documenti in

rete poi sostituito da http), Mosaic contiene già tutte le principali caratteristiche dei browser attuali: tasti Back e

Forward che consentono di scorrere le pagine visitate, una menuBar, una barra degli indirizzi, una ViewArea

nella parte centrale in cui vengono visualizzati i documenti ed una statusBar inferiore.

1994 compare il primo browser commerciale Netscape Navigator.

1995 Microsoft produce la prima versione di Internet Explorer (IE 1.0 luglio 95) come package separato rispetto a

Windows 95, quando però Netscape ha già una diffusione piuttosto consistente.

1996 Netscape esce nella versione 2.0 introducendo la programmazione lato client mediante Java Script (subito

diventato standard ECMA), frames e PlugIn.

1997 Microsoft distribuisce IE 3.0, in grado di visualizzare direttamente file GIF e JPG (senza passare attraverso file

HTML), streaming Audio, proponendo anche un proprio linguaggio di script lato client vbScript, mai decollato.

1998 esce IE 4.0 basato sullo standard CSS e completamente integrato nel Sistema Operativo Windows 98 e che per

la prima volta supera Netscape come diffusione. Insieme a IE 4.0 viene distribuito Outlook Express come client di

posta che in pratica sostituisce Eudora Light di Nestape. Iniziano per Microsoft le azioni legali antitrust.

2002, con windows XP, esce IE 6.0 contenente moltissime funzionalità aggiuntive relative soprattutto a sicurezza e

privacy (crittografia 128 bit, filtro per i cookies) e pieno supporto a XML. Nasce il concetto di applicazioni web.

Altri browser più recenti sono Opera, FireFox (derivato dal progetto Mozilla openSource) e Google Chrome.

HTTP Hyper Text Transfer Protocol

Nasce al CERN di Ginevra nel 1991 (considerata data di nascita di Internet) per il trasferimento di file HTML su una

rete TCP/IP

HTTP regola la comunicazione tra un server HTTP, fornitore di documenti HTML, ed un browser Client HTTP

in grado di interpretare le informazioni ricevute dal server. La porta di ascolto del server è la porta 80.

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.

Versioni del protocollo HTTP

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.

Page 98: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 98

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).

Struttura dei messaggi HTTP

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.

I messaggi REQUEST e RESPONSE presentano entrambi il seguente formato:

Start Line Tipo di Comando / Risposta

Header Elenco di headers testuali, uno per ogni riga.

CRLF riga vuota

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)

Page 99: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 99

Composizione di una URL

Tutti i protocolli Internet identificano le risorse di rete mediante una stringa detta URL avente lo scopo di

identificare la posizione di una risorsa e la modalità (protocollo) di accesso. Una URL è costituito da diversi

componenti:

NomeProtocollo://hostName.domainName:portNumber/path/filename#ancora?parametersList

Esempio: http://www.vallauri.edu:80/progetti/index.aspx#capitolo3?id=29&nome=pippo

Nome del protocollo da utilizzare per accedere alla risorsa

hostName.domainName Nome della macchina e Dominio del server da contattare

Port Number di ascolto del server. Se omessa si intende la porta standard del protocollo (80 per HTTP)

Risorsa Richiesta (con eventuale posizione all‟interno del server). Se il nome della Risorsa è omesso,

il server restituisce un file di default, in genere index.html (o default.html). # Eventuale àncora.

Parametri posizionati dopo il ?, scritti nel formato nome=valore, separati da &

Messaggio REQUEST

La Request Start Line ha il seguente formato:

MetodoDiRichiesta RisorsaRichiesta VersioneHTTP CRLF

GET / POST /progetti/index.html HTTP/1.0

Alla Request Line fanno seguito un certo numero di righe relative alle

intestazioni terminate con una riga vuota.

Il metodo di richiesta può essere:

GET (default)

POST

HEAD

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.

Page 100: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 100

Altri Comandi di HTTP 1.1

HTTP 1.1 prevede altri quattro possibili comandi : OPTIONS, PUT, DELETE, TRACE.

Interessante soprattutto PUT che consente l‟upload di un file al server.

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).

Elenco dei principali Headers

Gli headers sono suddivisi in quattro tipologie:

General Applicabili a tutti i messaggi sia REQUEST che RESPONSE. Contengono informazioni generali che

non dipendono né dal client, né dal server, né dai dati trasferiti.

Request Headers utilizzabili solo nelle REQUEST e contenenti informazioni relative al client

Response Headers utilizzabili solo nelle RESPONSE e contenenti informazioni relative al server

Entity Headers REQUEST e RESPONSE contenenti informazioni relative all‟entità, cioè ai dati del body.

a) Request Headers: Informazioni inserite dal richiedente

Ad es User Agent (nome e versione del browser richiedente; utile per il riconoscimento automatico del client come

nel caso del down level support di ASP NET), Accept-Language (linguaggio naturale impostato sulla macchina

client, utile nel caso in cui il documento sia disponibile in più lingue), Accept-Charset (set di caratteri linguistici che

il client è in grado di accettare. Il formato occidentale è charset=iso-8859-1), Accept (il formato MIME con cui il

client intende richiedere la risorsa. E‟ possibile indicare, in ordine di preferenza, più formati MIME, al limite tutti

quelli che il client è in grado di riconoscere. Se la richiesta è priva di questo campo significa che il client accetta

almeno i tipi MIME base, cioè text/plain e text/html). Host ( nome del Dominio a cui è indirizzata la richiesta,

seguito eventualmente dal numero di porta. Utile ad esempio nel caso dello Smart Hosting. Es Host :

www.vallauri.edu).

b) Response Headers: Informazioni inserite dal server

Ad es Server (nome e versione del software utilizzato dal server), Age (utilizzato in scrittura dai proxy, è un intero

indicante il tempo in sec trascorso da quando il proxy ha ricevuto l‟ultimo aggiornamento della pagina dal server)

Location (Indica al browser di ridirezionare la richiesta ad una URL diversa da quella specificata nella Request-URL.

Spesso usata per reindirizzare il client verso una nuova locazione non ancora conosciuta).

c) General Headers: Informazioni Generali

Ad es Date (data in cui il messaggio è stato originato), Pragma = “no-cache” Nelle Request, indica che il browser

non vuole una pagina di cache ma vuole assolutamente avere la pagina originale (es dopo il pulsante Aggiorna).

Nelle Response invece avvisa tutti i dispositivi (proxy e browser) che la pagina non deve essere messa in cache (ad es

nel caso di una pagina dinamica). Upgrade Il client usa questo campo per indicare se supporta o meno HTTP 1.1.

Il server lo utilizza per indicare quale protocollo ha scelto.

d) Entity Headers Informazioni riferite al Body del messaggio

Ad es Last-Modified (data dell‟ultima modifica apportate all‟entità richiesta (pagina HTML)), Content-Length

(Dimensione in bytes del body), Content-Type (tipo MIME dei dati inseriti nel body), Content-Laguage (lingua in

cui è scritta l‟entità trasferita. Permette all‟utente di identificare l‟entità in accordo con il proprio linguaggio.

Expires (Data oltre la quale la risposta è considerata obsoleta, in modo che eventuali cache possano restituire una

stessa risposta per richieste multiple successive senza ricontattare il server).

Page 101: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 101

Esempio di Request Message :

GET /progetti/index.html HTTP/1.0

Host: www.vallauri.edu

From: 176.12.145.178

User-Agent: Netscape 1.1N PPC

Accept: text/html, image/jpeg, image/png, text/*, image/*

Accept-Charset: iso-8859-1, utf-8

Accept-Language: en

Accept-Encoding: x-gzip, x-deflate, gzip, deflate, identità

[linea vuota]

eventuale Body

Esempio di Response Message :

HTTP/1.1 200 OK

Date: Wed, 23 Oct 2002 08:18:47 GMT Content-Type: text/html

Pragma: no-cache

Server: Apache/1.3.26 (Unix) PHP/4.2.3

X-Powered-By: PHP/4.2.3

Age: 7673

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Connection: Keep-Alive

Keep-Alive: timeout=25, max=85

Set-Cookie: PHPSESSID=8fd7c6a69c84da8276187e18a3067b85; path=/

[linea vuota]

Body

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=/"

Protocolli supportati da un browser

Una URL contiene non solo le coordinate della risorsa da ricercare nella rete, ma anche il metodo (protocollo) con

cui si intende accedere alla risorsa. Un browser, oltre a HTTP , supporta diversi altri protocolli Internet di accesso a

risorse differenti, come i file di un file system, news, etc. I protocolli supportati da un browser sono in genere:

HTTP Accesso ad un Web server HTML

FILE Accesso ad un SMB Server (normalmente attraverso una rete locale).

FTP Accesso ad un FTP Server (normalmente attraverso una rete geografica).

TELNET Apre una sessione interattiva all‟interno di una finestra di prompt

NEWS Accesso ad un newsgroup (gruppi di discussione) attraverso il protocollo NNTP

GOPHER Obsoleto. Protocollo di accesso a documenti html con connessione sempre aperta

Nota: La notazione utilizzata dal protocollo FILE per accedere ad un server SMB (di cui si conosce il nome

NetBIOS), è la sintassi UNC (Universal Naming Convenction), simile alla URL ma con il backslash \ al posto dello

slash /.

Page 102: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 102

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

Per contro un proxy :

E‟ più lento:rispetto alle NAT (lentezza comunque compensata dal caching)

Richiede una configurazione sul client

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.

Page 103: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 103

Configurazione di un browser per l‟accesso ad un Proxy Server HTTP

Su tutti gli host della rete occorre impostare manualmente l‟indirizzo della macchina che funge da Proxy Server (con

relativo numero di porta). Questa impostazione è prioritaria rispetto all‟indirizzo di Default Gateway, nel senso

che, anche se esiste un Router di Default Gateway, un browser configurato come Proxy Client invia le richieste al

Proxy Server anziché al Default Gateway.

Dal menu Strumenti di IE selezionare Opzioni Internet e selezionare la scheda Connessioni

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 (*)

(*) Sono considerati indirizzi locali

gli indirizzi IP appartenenti alla stessa rete IP cui appartiene l‟host

i DSN Name appartenenti allo stesso dominio a cui appartiene l‟host (xxx.vallauri.net) e di conseguenza

anche i nomi privi di dominio (es mmserver) a cui viene automaticamente concatenato il nome del dominio a

cui la macchina appartiene (vallauri.net).

Pertanto il Nome www.vallauri.edu non è considerata locale e la DNS Request verrà inviata al Proxy.

Trasparenza rispetto i cookies

Il proxy è del tutto trasparente rispetto ai cookies che consentono pertanto ai server web di riconoscere il client

nonostante l‟intromissione del proxy che inoltra i cookies senza modificarli.

Altri servizi forniti da un Proxy Server HTTP

Attivazione e disattivazione automatica del collegamento telefonico a seguito di un certo timeout di inutilizzo

Verifica dello stato della connessione da un qualsiasi PC con relativa possibilità di attivazione manuale

Proxy.vallauri.net

8080

3128

Page 104: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 104

Nota: Transparent Proxy e Non-Transparent Proxy

Un Proxy HTTP può modificare l’intestazione HTTP delle richieste che invia. In base a ciò i Proxy possono essere:

Altamente Anonimi: non trasmettono nessuna informazione aggiuntiva.

Anonimi: non trasmettono l'IP del richiedente ma modificano comunque alcune intestazioni.

Non anonimi: aggiungono alcuni header alla richiesta trasmessa dal browser segnalando la presenza del

proxy e l'indirizzo IP del richiedente.

Distorcenti: trasmettono un IP casuale, diverso da quello del richiedente e modificano o aggiungono alcuni

header. Offrono una notevole protezione in quanto il server web vede le richieste di uno stesso utente come

provenienti da indirizzi IP diversi.

Servizio Windows ICS Internet Connaction Sharing

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

Configurazione dei Client,

Dal menu Strumenti di IE selezionare Opzioni Internet e quindi la scheda Connessioni e Selezionare la voce:

“Non utilizzare mai connessioni remote”

Clickare sul pulsante “Impostazioni LAN” ed eseguire le seguenti impostazioni :

Selezionare la casella denominata Rileva automaticamente impostazioni

Deselezionare la casella denominata Utilizza un server proxy server per le connessioni LAN

Selezionare la casella denominata Ignora server proxy per indirizzi locali

In questo modo gli host della rete riconoscono automaticamente il Server ICS mediante dei broadcast.

In alternativa è possibile impostare l‟indirizzo IP del server ICS come Default Gateway di tutte le macchine.

Page 105: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 105

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.

Download di un file da un sito web via HTTP

Anche HTTP consente download e upload di files da un server, però HTTP, essendo senza stato, non consente la

navigazione del File System remoto, costringendo l‟utente a inserire ogni volta il percorso del file da scaricare,

percorso che normalmente è contenuto all‟interno di un collegamento ipertestuale (attributo HREF del tag <a>).

Il protocollo HTTP, nel proprio body, può trasportare qualsiasi tipo di file, compresi gli eseguibili. Prima di iniziare

il download, il browser richiede all‟utente se eseguire l‟applicazione o se salvarla su disco. In tal caso chiede anche

dove salvare il file. In entrambi i casi il file <a href=”…”> viene trasportato sulla macchina client, dopo di che :

Su l‟utente aveva scelto salva il browser provvede semplicemente a salvare il file sul percorso indicato.

Su l‟utente aveva scelto esegui il browser provvede a “passare” il file al SO che lo manda in esecuzione.

Funzionamento di FTP Utilizza due canali separati :

un canale di controllo sulla porta 21 (protocollo PI = Protocol Interpreter) per la gestione della connessione

e l‟invio dei comandi. Questa connessione, una volta stabilita, rimane aperta fino al comando di chiusura.

I comandi che il client può inviare sulla connessione di controllo sono comandi testuali in formato Ascii a 7

bit seguiti da eventuali parametri e chiusi con un \n, eventualmente inviabili anche tramite Telnet. Il server

risponde ai comandi del client con codici di stato seguiti da una descrizione (esattamente come HTTP)

un canale per la trasmissione dei dati sulla porta 20 (protocollo DTP = Data Transfer Protocol).

Ogni volta che si rende necessario un trasferimento di dati (download o upload), viene aperta una nuova

connessione dati che rimane aperta soltanto per il tempo necessario al trasferimento (come HTTP)

Client FTP : FileZilla

Il client FTP può essere costituito da una semplice interfaccia a riga di comando (Windows ne contiene uno

eseguibile semplicemente digitando FTP in una finestra di prompt), oppure può essere costituito da una interfaccia

GUI (interfaccia grafica a finestre) come ad esempio CuteFTP, SmartFTP o FileZilla (figura) di estrazione Linux.

Per accedere ad un FTP Server occorre innanzitutto disporre di Username e Password (che nel caso degli spazi web

forniti dagli ISP normalmente coincidono con username e password di posta elettronica). Il pulsante di destra

“Connessione Veloce” consente di stabilire la connessione con il Server. Dopo di che:

La finestra di sinistra rappresenta la cartella locale mentre la cartella di destra rappresenta la cartella remota.

I file possono essere trascinati da una parte all‟altra come avviene normalmente in Gestione Risorse.

Il client può inserire, modificare e cancellare file della cartella remota come se fosse una cartella locale

Page 106: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 106

Modalità Passiva e Modalità Attiva

Per quanto riguarda il trasferimento dati, il server TCP in attesa di connessioni può indifferentemente essere creato

sia sul Server FTP (modalità passiva) sia sul Client FTP (modalità attiva).

Modalità Passiva : (con riferimento alla figura precedente)

Nella modalità passiva, nel momento in cui il Client intende inviare al server una richiesta di download / upload di un

file, invia al server sul canale 21 un comando PASV (PASSIVE) in corrispondenza del quale

il Server crea un nuovo demone dati in ascolto su una porta effimera generata casualmente. Dopo di che:

Il server risponde al comando PASV con un msg “227 Entering Passive Mode (213,205,40,153,158,155)”

contenente indirizzo IP e porta effimera di ascolto del demone dati appena creato. Il numero di porta è espressa

dagli ultimi 2 numeri dopo l‟indirizzo IP (In figura 158.155 che significa 158 * 256 + 155 = 40.603).

Il Client, ricevuta la risposta del server, istanzia un nuovo socket dati (newSock) che si va a connettere al

Demone Dati del Server sulla porta 40.603.

Il Client Invia sulla porta 21 del Server un comando RETR nomeFile chiedendo al Server di spedire sul canale

dati una copia del file indicato.

Il Client esegue la lettura dei dati mediante il solito metodo newSock.Receive

La connessione DATI verrà chiusa al temine della trasmissione del file.

In corrispondenza di una nuova richiesta il server aprirà un nuovo demone dati su una nuova porta effimera.

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.

Page 107: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 107

Modalità Attiva : Spostamento del problema sul client Questa modalità, dal punto di vista del server, è più semplice della precedente. Il Client, nel momento in cui vuole

eseguire il download / upload di un file, prima di inviare al server sul canale 21 il comando vero e proprio, deve:

creare un demone dati TCP in ascolto su una porta effimera generata casualmente (normalmente la porta

successiva “n+1” rispetto alla porta effimera utilizzata per la connessione al canale di controllo.

inviare sulla porta 21 del Server un comando PORT 80.125.78.213.158.156 che serve per comunicare al

server Indirizzo IP e Porta del demone appena istanziato. Come nel caso precedente i primi 4 numeri

rappresentano l‟indirizzo IP mentre gli ultimi 2 numeri rappresentano la porta.

Ad esempio i numeri 158.156 rappresentano la porta 158 * 256 + 156 = 40.604

Il server istanzia un socket dati “client” che, tramite la porta 20, esegue una richiesta di connessione al

demone – dati istanziato sul client

In corrispondenza della richiesta di connessione del server, il Client esegue un Accept ( ) sul canale dati

A questo punto il client può inviare sulla porta 21 del Server un comando RETR nomeFile chiedendo al Server di

spedire sul canale dati il file indicato. In corrispondenza del RETR il server spedisce il file sul canale dati.

Il vantaggio della modalità attiva è che sul Firewall lato server è sufficiente aprire la porta 21 in ingresso e la porta 20

come porta mittente di uscita, demandando al client il compito di aprire un demone dati. Molti FTP Server, negli anni

passati, prima dell‟avvento dei firewall di livello 7, gestivano solo la modalità attiva.

Il Browser come Client FTP

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]

I browser possono essere anche essere

utilizzati come client FTP. E‟ sufficiente

indicare il protocollo FTP nella URL e

farlo seguire dall‟indirizzo di un FTP

Server che accetti un login anonimo

oppure specificando username e pwd

in chiaro ! con la seguente sintassi :

ftp://nomeUtente:Password

@NomeFTPServer.Dominio

In pratica il browser invia sulla porta 21

del server un comando LIST richiedendo

i file della cartella ROOT di quell‟utente.

Clickando su una cartella si può vedere il

contenuto. Con tasto destro si può fare il

download di un file. (“Salva con nome”).

Non è consentito l‟upload.

Page 108: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 108

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.

Comandi Base di Telnet

Il protocollo Telnet utilizza una interfaccia a riga di comando costituita da diversi comandi testuali. Essendo i server

telnet ormai in disuso anche questi comandi hanno perso di significato. Digitando comunque ? all‟interno di unl

client Telnet viene mostrato l‟elenco completo dei comandi base Telnet. Tra i comandi Telnet ricordiamo:

open hostname/indirizzoIp [porta] Stabilisce una connessione con il server indicato, che può essere espresso

mediante un indirizzo IP o mediante un DNS name. Il numero di porta è facoltativo, se omesso si intende

la porta di default di telnet, cioè 23. Questi parametri possono anche specificati sulla linea di comando.

close chiude la connessione corrente.

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.

Il protocollo SSH (Secure SHell)

Il problema della sicurezza ha fatto sì che l'uso di telnet sia rapidamente decaduto a favore del suo successore SSH

(Secure SHell cioè Shell Sicura) rilasciato nel 1998. Il client SSH ha una interfaccia a linea di comando simile a

quella di telnet, ma l'intera comunicazione (ovvero sia l'autenticazione sia la sessione di lavoro) avviene in maniera

cifrata tramite crittografia asimmetrica. A tal fine il Client deve generare una coppia di chiavi a 128 bit (ssh –keygen

–t rsa). Le chiavi vengono salvate in una sottocartella .ssh all‟interno del profilo utente (la chiave privata in un file

id_rsa, quella pubblica nel file id_rsa.pub). La chiave pubblica viene inviata al server in corrispondenza della prima

connessione; la chiave privata viene conservata dall'utente. La porta di ascolto del server SSH è la porta 22

Page 109: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 109

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).

Struttura delle Mail Box

Il formato degli indirizzi di posta è il tipico formato NomeUtente@NomeDominio che indica che l‟utente in

questione dispone di una Mail Box presso (at) il Server di Posta del dominio indicato.

Per ogni utente registrato il Mail Server gestisce una Mail Box costituita da una o più cartelle in cui vengono

accodati, un file per ogni messaggio, tutti vari i messaggi destinati alla Mail Box.

Il Client di Posta deve essere configurato con le informazioni del Mail Server relativo alla Mail Box dell‟utente, in

modo che l‟utente possa collegarsi al proprio Mail Server sia per spedire nuove mail sia per leggere le mail ricevute

Il protocollo SMTP (Simple Mail Transfer Protocol) TCP porta 25

Quando un utente invia un messaggio di posta tramite un Client di Posta (o una Applicazione Web oppure

Telnet), il messaggio viene inviato via SMTP al proprio Mail Server il quale poi lo invia al destinatario. Lo

scopo di inviare il messaggio al proprio Mail Server è quello di poter validare i dati del mittente.

Ogni Mail Server svolge la doppia funzione sia di Server (in attesa di ricevere messaggi da un Client di Posta

oppure da un altro server) sia di Client (nel momento in cui spedisce un messaggio ad un altro Server).

La componente Client di un SMTP Server è detta Delivery Agent. Essa:

- sul Server Mittente, si occupa di spedire il messaggio al Mail Server di destinazione

- sul Server Destinatario provvede ad accodare fisicamente il messaggio nella mailbox del destinatario.

Il Mail Server opera in ascolto continuo sulla porta 25. Tutti i messaggi ricevuti sulla porta 25 (sia quelli

ricevuti dai Client di Posta che intendono spedire un messaggio, sia quelli ricevuti da altri server di posta

esterni) vengono inseriti all‟interno di una apposita coda temporanea gestita secondo le tipiche modalità del

Produttore Consumatore. Mentre la componente server aggiunge messaggi in coda, la componente client

(il Delivery Agent) scandisce questa coda estraendo uno alla volta i messaggi presenti.

- Se il messaggio è destinato ad un Mail Server diverso rispetto al server corrente, allora Delivery Agent

tenta di spedire il messaggio al Mail Server di destinazione. In caso di errore (per server insesistente oppure

per errore TCP oppure in seguito ad una risposta del tipo” utente inesistente” o “casella piena”) Delivery

Agenti invia un messaggio di errore al mittente. Se il mittente non riceve messaggiodi ritorno significa

che la mail è stata correttamente inoltrata al destinatario.

- Se invece il messaggio è destinato ad un utente appartenente al Mail Server medesimo, Delivery Agent non

rispedisce il messaggio ma si limita ad accodarlo nella Mail Box del destinatario.

Il controllo del Relay

In genere un Mail Sever invia all‟esterno soltanto le Mail che hanno come sorgente un utente valido, cioè

registrato all‟interno del Server stesso (controllo del Relay). Eventuali Server di Posta che non eseguono questo

controllo e trasmettono il messaggio qualunque sia l‟impostazione del mittente sono detti Open Relay e sono

utilizzati per inviare spam. I Server Open Replay sono però ormai abbastanza rapidamente intercettati in Internet ed

automaticamente inseriti all‟interno di apposite Black List. Molti Mail Server consultano frequentemente le Black

List più autorevoli e segnano come span qualunque mail proveniente dagli indirizzi contenuti nelle Black List.

Ad esempio il Mail Server del Vallauri non esegue controlli sulla posta locale (è possibile utilizzare come mittente un

nominativo inventato), ma spedisce verso l’esterno soltanto mail con mittente valido.

Page 110: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 110

Sintassi dei comandi SMTP

I comandi SMTP sono al solito comandi testuali (espressi nel formato Ascii a 7 bit con ottavo bit a zero) seguiti da

eventuali parametri e chiusi con un \n. Il server risponde ad ogni comando con codici di stato seguiti da una

descrizione, esattamente come HTTP e FTP.

La connessione SMTP è di tipo persistente. L‟intera mail (compresi tutti gli allegati) viene spedita tramite una stessa

connessione esattamente come HTTP 1.1. Non solo ma nel caso in cui il Client di posta debba inviare più messaggi al

Server (tutti quelli preparati off line sul Client di Posta), anche questi vengono spediti tramite una unica connessione.

Esempio di invio di messaggio testuale da [email protected] a [email protected]

C: HELO

S: 250 Hello

C: MAIL FROM: <[email protected]>

S: 250 [email protected] ... Sender ok

C: RCPT TO: <[email protected]> //Recipient suddivisi da virgola o punto virgola

S: 250 [email protected] ... Recipient ok

C: DATA // il campo data è costituito da headers rigaVuota body

S: 354 Enter mail. End data with <CR><LF>.<CR><LF>

C: Subject: mySubject //seguono altri eventuali header (CC, BCC, Reply To, Received)

C: // una riga vuota segna la fine degli headers e inizio body

C: ciao Bob! // corpo del messaggio con \n interni

C: . // La sequenza <CR><LF>.<CR><LF> indica la fine del messaggio

S: 250 Message queued for delivery

C: QUIT

S: 221 closing connection. Good bye

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

Il Formato MIME - Multipurpose Internet Mail Extensions -

Il formato MIME, letteralmente Estensioni multifunzione alla posta di Internet, è uno standard che nasce

nell‟ambito della posta elettronica per identificare le componenti non-ASCII di un messaggio di posta elettronica

(tipicamente gli allegati). I formati MIME sono oggi indicati come Internet Media Type e sono utilizzati in

moltissimi protocolli (HTTP in primis) per indicare il formato dei vari componenti. Ad esempio in HTTP il MIME

type indica il formato di ciascun componente non testuali che concorrono a formare la pagina HTML. Si tratta di uno

standard espandibile. IANA gestisce un registro ufficiale di tutti i Media Types registrati (ormai diverse centinaia).

I MIME Type o Media Type sono costituiti da due parole chiave separate da uno slash ( tipo e sottotipo del

MIME). Alcuni formati MIME sono riportati di seguito :

Page 111: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 111

Tipo MIME Estensioni Descrizione

text/plain txt Testo puro.

text/html html htm Testo in formato HTML.

image/gif - jpeg - tiff gif jpg tif Immagine GIF - JPEG - TIFF

audio/basic - x-wav au wav File mu-law di Unix - wave

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).

Messaggio Multipart suddiviso in sezioni

Ogni sezione ha una propria intestazione in cui viene indicato il Mime Type della Sezione stessa.

Lo User Agent provvede a generare casualmente una sequenza speciale detta boundary per identificare

univocamente l‟inizio / fine di ogni sezione. Questa sequenza speciale viene inserita all‟interno della prima sezione

in modo che il ricevente possa riconoscere il carattere separatore e riconoscere correttamene le varie sezioni del

messaggio. Dopo ogni boundary inizia una nuova sezione con le proprie intestazioni. Esempio di mail multipart :

DATA

Subject: Fotografia del mio compleanno.

MIME-Version: 1.0

Content-Type: multipart/mixed; boundary=98766789

// una riga vuota segna l’inizio della 1° sezione (fittizia)

--98766789 // fine 1° sezione. Indica che la mail è in realtà multipart

Content-Type: text/plain // seconda sezione

Content-Transfer-Encoding: quoted-printable

// una riga vuota segna l’inizio della 2° sezione

Dear Bob, ecco la foto del mio compleanno

--98766789 // fine 2° sezione

Content-Type: image/jpeg // terza sezione

Content-Transfer-Encoding: base64

// una riga vuota segna l’inizio della 3° sezione

base64 encoded data ..... // inizio

........... data .........

base64 encoded data // fine

--98766789-- // fine 3° ed ultima sezione

Content-Type : Segna l‟inizio di ciascuna sezione, indicando tipo e sottotipo MIME.

Content-Transfer-Encoding indica per ciascuna sezione la codifica utilizzata per convertire l‟oggetto in testo.

La codifica Quoted-printable viene applicata ai messaggi testuali convertendoli in ASCII a 7 bit, dove ogni chr con

codice ASCII>127 viene codificato con = seguito dal codice del carattere rappresentato mediante due cifre

esadecimali (es =FF per il chr 255). In questo modo per gli ASCII > 127 si usano 3 bytes anziché uno.

La codifica base64 (detta anche uEncode dal progr Unix Encode) viene applicata agli allegati non testuali per

codificare in testuale un qualsiasi file binario. Il file viene suddiviso in gruppi da 6 bit (64 combinazioni) dove ogni

unità viene poi codificata come carattere ASCII su 8 bit. I valori Ascii utilizzati per la codifica sono 26 Maiuscole +

26 minuscole + 10 numeri più i caratteri „+‟ = 62 e „/‟ = 63. Servono 4 bytes (24 bit) ogni 3 bytes originali.

Page 112: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 112

Documento HTML con immagini inline in formato base64

<img src = ”data:image/png;base64, xxxxxxxxxxxxxxxxxxxx” />

All‟interno dell‟attributo src occorre utilizzare il cosiddetto DATA URI SCHEME che opera nel modo

seguente: data:[<MIME-type>][;charset=”<encoding>”][;base64],<data>

Il protocollo POP3 Post Office Protocol v3 (Protocollo dell‟Ufficio Postale)

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.

Page 113: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 113

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.

Page 114: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 114

NETWORK SECURITY : Livello 6 Crittografia

Per crittografia si intende l‟applicazione di una codifica all‟informazione in modo da renderla leggibile soltanto al

destinatario della stessa. Problema sentito fin dall‟antichità. E‟ famosa la codifica di Cesare utilizzata da Giulio

Cesare per trasmettere ordini ai propri generali che consisteva nel riscriveva gli ordini spostando ogni lettera di un

valore costante noto. Ad esempio, utilizzando una chiave 2, si può applicare la seguente crittografia:

Passare il Rubicone diventa Rcuuctg mn Tzdmeqpg

1) Algoritmi a chiave simmetrica

Utilizzano la stessa chiave sia per codificare che per decodificare il messaggio e sono i più diffusi.

Caratteristiche: velocità di codifica e decodifica ed elevata sicurezza

Problema principale : la trasmissione della chiave. Se la chiave viene intercettata, la codifica diventa inutile.

Il più conosciuto di questi algoritmi era DES (Data Encyption Standard) proposto da IBM nel 1977 con

chiave a 40 o 56 bit. Nel 1998 la Electronic Frontier Foundation presenta un algoritmo (detto DES Cracker)

in grado di aprire, in tempi ragionevolmente brevi, un qualunque documento codificato DES.

I principali algoritmi attuali sono IDEA (International Data Encyption Algorithm nato nel 1991 in una

Università Svizzera), 3DES, AES, CAST, RC4. Profondità tipica della chiave : 128 bit

Brute Force Dato un messaggio cifrato, con il termine Brute Force si intende il tentativo di decifrare il messaggio

generando tutte le possibili chiavi e analizzando il messaggio ottenuto mediante apposito algoritmo per vedere se ha

un senso (ad es nella lingua italiana l‟ultima lettera è quasi sempre una vocale). Nella codifica di Cesare, con 21

lettere sarebbero sufficienti 21 tentativi per decifrare il messaggio tramite un approccio Brute Force. Più è profonda

la chiave più diventano lunghi i tempi. Se i tempi sono lunghi, anche ammesso che l‟attacco vada a buon fine,

l‟individuazione della chiave e la lettura del messaggio sono ormai inutili. Considerando una chiave a 128 bit che

consente 2128

possibili combinazioni, cioè 1038

, per individuare la chiave tramite Brute Force occorrono 1038

tentativi. Ipotizzando un tentativo ogni nsec (freq 1 GHz) occorrono 1029

secondi, cioè 1024

giorni cioè 1021

anni.

2) Protocollo Diffie-Hellman La base della crittografia asimmetrica

Il protocollo Diffie-Hellman consente a due entità di generare separatamente una chiave simmetrica comune

utilizzando un canale di comunicazione insicuro (pubblico) a partire da un valore di pre-master condiviso.

Il problema in apparenza viene soltanto spostato alla trasmissione del preMaster. In realtà c‟è invece una bella

differenza. Una volta condiviso il premaster, ad ogni sessione viene generata separatamente una chiave simmetrica

differente senza che nulla venga trasmesso. Questa tecnica è utilizzata ad esempio nel WiFi dal protocollo WPA-

PSK, dove la Pre Shared Key viene utilizzata sia per l‟autenticazione sia come pre Master per generare la chiave di

sessione.

Il problema è quello dei logaritmi discreti: dati due numeri di A e B di grandi dimensioni, risalire in tempi sensati ai

numeri a e b tali per cui Ab = B

a è al momento impossibile. (in modo più semplice si pensi al prodotto di due numeri

primi : è molto difficile, a partire da un certo numero, determinare quali sono i numeri primi che lo hanno generato).

Siano Alice e Bob i due interlocutori, entrambi a conoscenza di una pre-shared key che consiste in due numeri ;

una Base g (gruppo generatore)

un Numero Primo p utilizzato per il calcolo dei moduli.

Alice genera un numero casuale a ed esegue il calcolo A = g a

mod p inviando in chiaro il valore di A a Bob

Bob genera un numero casuale b ed esegue il calcolo B = g b

mod p inviando in chiaro il valore di B a Alice

Alice utilizza il numero ricevuto B per calcolare K = Ba mod p

Bob utilizza il numero ricevuto A per calcolare K = Ab mod p

I due risultati coincidono e rappresentano la chiave simmetrica che Alice e Bob utilizzeranno per comunicare.

Nota: La Pre Shared Key potrebbe anche essere resa pubblica, senza creare problemi alla crittografia. A questo punto

però l‟algoritmo diventa anonimo (non autenticato). Se uno si mette in mezzo (men in the middle) e mi fa credere di

essere il reale destinatario, io posso comunicare con lui credendo che sia il reale destinatario. Nel caso invece di una

Pre Shared Key riservata e nota a priori, solo chi conosce la preshared key può attivare una sessione protetta.

Page 115: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 115

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.

Algoritmi a chiave asimmetrica

La crittografia a chiave asimmetrica consiste nella generazione di due chiavi correlate, dette chiave

pubblica e chiave privata tali per cui i messaggi codificati con una possono solo essere decodificati con

l‟altra e viceversa.

Anche gli algoritmi a chiave asimmetrica sono basati su funzioni matematiche impossibili da invertire.

Conoscendo la chiave pubblica è impossibile risalire alla chiave privata e viceversa.

Questo meccanismo elimina di fatto il problema della distribuzione delle chiavi. Ciascuno rende disponibile

la sua chiave pubblica, conservando la chiave privata.

Il più conosciuto degli algoritmi a chiave asimmetrica è RSA (1978 - Rivest Shamir Adleman) considerato

praticamente inattaccabile

Perché allora non si usa sempre RSA ? Perché, per come è strutturato, la chiave deve avere una dimensione

superiore rispetto al messaggio da cifrare (oppure si può spezzare il messaggio). Questo comporta dei tempi

di cifratura / decifratura inaccettabili quando si vuole trasferire una grande quantità di dati.

Le chiavi RSA utilizzate nei certificati digitali hanno una dimensione fissa pari a 256 bytes

Supponendo che Alice e Bob conoscano ognuno la chiave pubblica dell‟altro, RSA può essere applicato in TRE

modi:

Caso 1 : Segretezza del messaggio. A codifica il messaggio utilizzando la chiave pubblica di B.

Nessuno al di fuori di B può decodificare il messaggio, in quanto B è il solo depositario della chiave privata.

In questo modo è garantita la segretezza del messaggio, però non è garantita l‟attendibilità di A.

Chiunque a conoscenza della chiave pubblica di B potrebbe aver inviato lui il messaggio (esattamente come

per la Pre Shared Key di Diffie Hellmann)

Caso 2 : Garanzia sulll‟identità del mittente. A codifica il messaggio utilizzando la propria chiave privata

A crea una Firma Digitale del messaggio. B potrà utilizzare la chiave pubblica di A per decodificarlo.

Rimane garantita l‟identità di A (unico depositario della chiave privata), ma chiunque, conoscendo la chiave

pubblica di A, può intercettare e decifrare il messaggio.

Caso 3 : Doppia Cifratura RSA. A può dapprima codifica il messaggio utilizzando la propria chiave privata, e

quindi applica al risultato una seconda cifratura utilizzando la chiave pubblica di B. Soltanto B, mediante la

sua chiave privata potrà “aprire” il messaggio. Un volta aperto il messaggio, potrà decodificarlo utilizzando

la chiave pubblica di A ed avere la garanzia che il messaggio provenga veramente da A.

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.

Page 116: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 116

SSL Secure Socket Layer

Protocollo di crittografia di livello 6, estremamente contenuto ed affidabile, avente 3 obiettivi::

cifratura (nessuno oltre il legittimo destinatario può conoscerne il contenuto),

integrità (non è possibile alterarne il contenuto ponendosi nel mezzo dei due end-point della comunicazione)

autenticazione del mittente tramite firma digitale

Il protocollo SSL è basato sull‟utilizzo di Certificati Digitali creati in base allo standard X.509 (che ne

definisce i vari campi) e convalidati di una CA che mette “il bollino di garanzia” sui certificati stessi.

Il sistema SSL + Certificati Digitali è spesso indicato come PKI Public Key Infrastructure

SSL venne ideato da Netscape nel 1996.

Dalla versione 3.1 è stato standardizzato dalla IETF con il nome di TLS 1.0 (Transport Layer Security)

L‟ultima release è di Agosto 2008 in cui è stato aggiunto AES come protocollo a chiave simmetrica.

In IE all‟interno della finestra AVANZATE è possibile scegliere la versione di SSL da utilizzare.

SSL provvede a criptare l‟intero messaggio ricevuto dal liv 7 (intestazioni comprese) e poi lo passa a TCP

SSL è totalmente indipendente dal protocollo di livello 7 che lo utilizza. Cioè i vari protocolli di livello 7

possono interfacciarsi a SSL in modo assolutamente trasparente. Esempi di protocolli di sessione incapsulati

in tunnel SSL sono: HTTPs (secure http), IMAPs (secure IMAP), TELNETs (secure telnet), SMTPs

(secure SMTP), LDAPs (secure LDAP), POP3s (secure pop3)

Il server HTTPS utilizza per default la porta 443. Poiché HTTP e HTTPS utilizzano porte differenti, lo stesso

sistema server può far girare contemporaneamente sia il server http sia il server https. Ciò significa che un server

può offrire alcune informazioni a tutti gli utenti senza sicurezza, ed altre solo in modo sicuro:

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.

Page 117: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 117

Esempio di Certificato Digitale (file ca.der visualizzabile con un semplice doppio click)

CA Attendibili e Firma dei Certificati Digitali

La firma del Certificato Digitale da parte del CA, consiste nella realizzazione di una impronta del Certificato

stesso (MD5 o SHA) crittografata mediante la chiave privata del CA ed allegata al Certificato. Chi scarica e vuole

utilizzare il Certificato Digitale, disponendo della Chiave Pubblica del CA, provvede ad “aprire” la firma digitale,

leggendo il digest contenuto. Provvede poi a ricalcolare il digest. Se il digest ricalcolato coincide con quello estratto

dalla firma digitale, allora significa che il Certificato è stato crittografato con la chiave privata del CA e attendibile.

Tutti i browser incorporano al loro interno un insieme di Certificati Digitali relativi ai principali Enti di

Certificazione ritenuti affidabili (es. Thawte-VeriSign) (in realtà i criteri di selezione sono puramente commerciali).

Nel caso di IE la lista completa dei Certificati incorporati è visibile nella finestra Opzioni / Contenuto / Certificati.

In pratica quando un client riceve il Certificato Digitale di un certo server provvede a verificare la Firma Digitale

del Certificato utilizzando il Certificato Digitale del CA. Allo stesso modo quando il Client riceverà dei pacchetti dati

„firmati’ con la chiave private del server (firma digitale), utilizzerà il Certificato Digitale del Server per verificare

l‟autenticità della firma digitale dei pacchetti dati. In quest‟ottica il Certificato Digitale può essere visto come un

sistema per verificare la correttezza di una firma digitale.

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.

Page 118: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 118

Certificati non Attendibili

E‟ anche possibile, ad es tramite IIS (Selezionare il sito da proteggere, tasto destro / Proprietà, finestra Protezione

Directory pulsante Certification Service. CA = Ente stesso) creare ex novo una coppia di chiavi RSA con relativo

Certificato Digitale della chiave pubblica. La firma del Certificato sarà realizzata con la chiave privata dell‟Ente

stesso (che effettua una specie di Autocertificazione). In questo caso il browser, al momento dell‟utilizzo del

Certificato, visualizzerà un messaggio del tipo “Certificato non attendibile” chiedendo se utilizzarlo ugualmente o

meno. In caso di risposta affermativa :

il Certificato viene registrato come valido

il firmatario ultimo viene riconosciuto come CA valido ed aggiunto alla lista dei CA attendibili.

Installazione ed Utilizzo del Certificato

Negli anni passati il Certificato Digitale doveva essere scaricato in modo manuale dal sito di riferimento e quindi

installato sulla macchina (comando “Installa Certificato”, che lo installa in un apposito Repository gestito dal SO).

Oggi il Certificato Digitale viene quasi sempre scaricato “al volo” in corrispondenza della prima richiesta HTTPs.

In caso di Certificato NON attendibile viene visualizzato il solito messaggio “Certificato non attendibile”.

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.

Struttura del protocollo SSL

Le sessioni SSL sono costituite da due parti: Handshake di connessione e sessione applicativa. Durante

l‟handshake di connessione client e server si scambiano le credenziali e negoziano una chiave simmetrica che poi

utilizzeranno nella sessione applicativa. Si considera di seguito un handshake di connessione unilaterale (protocollo

TLS-PSK pre shared key) utilizzato ad esempio in HTTPs.

Sessione di Connessione (Handshake)

Il Client invia al server HTTPs un ClientHello message contenente la versione di SSL impostata sul client più

la cosiddetta cipher suite, (insieme di codici), cioè un elenco dei protocolli di Autenticazione (typ RSA),

Crittografia (typ Idea e AES) con relativa profondità di chiave e Firma Digitale (typ MD5 e SHA) supportati

dal browser utilizzato per la richiesta

Il Server risponde inviando in chiaro una lista di Protocolli Scelti (fra quelli supportati dal browser) e il proprio

Certificato Digitale. Questa opzione può essere disabilitata obbligando il Client ad un download manuale.

Nel caso di autenticazione bilaterale il server richiede il Certificato Digitale al Client.

Il Client, verifica l‟autenticità del Certificato ricevuto dal Server valutando

L‟autenticità della firma digitale (aperta con la chiave pubblica del CA)

La corrispondenza tra il Domain Name contenuto nel Certificato ed il domain name a cui è collegato

Una eventuale revoca del Certificato (mediante un collegamento al sito del CA)

Il Client provvede a trasmettere al server, crittografandola tramite chiave pubblica del Server, una cosiddetta

chiave pre – master – key che i due End Point utilizzeranno per generare in modo indipendente la vera e

propria chiave di sessione

Soltanto il Server destinatario potrà provvedere all‟apertura del pacchetto mediante la propria chiave privata.

Viceversa la provenienza della richiesta non è importante; in quanto chiunque può richiedere una connessione

protetta ad un server HTTPS.

client e server provvedono a generare separatamente la chiave di sessione sulla base del pre-master-secret

L‟handshake di connessione è concluso e può avere inizio la sessione di scambio dati. Per prima cosa il Client

provvederà alla propria validazione mediante UserName e Password, inviate però già in modalità protetta.

In caso di autenticazione bilaterale il client invia al server il proprio certificato e codifica con la sua chiave

private alcuni dati generati casualmente che provvede ad inviare al server per dimostrare la propria identità

Page 119: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 119

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.

Crittografia nella Posta Elettronica

SMTP, POP3 e IMAP possono tutti e 3 avvalersi dell‟utilizzo di SSL per inviare / scaricare posta tra un client di

posta ed un mail server. Il funzionamento è esattamente quello visto nel caso di HTTP.

La mail viene crittografata al momento dell‟invio e decifrata dal ricevente prima di archiviarla.

Mail certificate e cifrate

A differenza di http, nella posta è sorta fin da subito l‟esigenza di inviare mail che, al di là della trasmissione,

venissero memorizzate in forma cifrata sul server e potessero essere lette solo dal legittimo possessore della chiave.

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:

Messaggio

cifrato mediante IDEA Chiave simmetrica IDEA cifrata con chiave pubblica del destinatario

Digest cifrato con chiave privata del mittente

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.

Mail con Firma Digitale e Crittografiaa

L‟attuale meccanismo di Mail Certificate opera esattamente sulla base di PGP con l‟unica differenza che le chiavi

devono essere riconosciute da un CA. Una volta acquistato un Certificato Digitale, l‟utente può applicare la propria

Firma Digitale a tutti i messaggi di posta da inviare (in Outlook penultimo pulsante della toolbar con coccarda rossa).

Un messaggio con Firma Digitale viene trasmesso nel modo seguente:

Messaggio in Chiaro Certificato Digitale in Chiaro Digest cifrato con chiave privata del mittente

In questo modo al messaggio non viene applicata nessuna crittografia, ma è garantita l‟identità del mittente. Ogni

volta che l‟utente applica la propria Firma Digitale ad una mail, viene automaticamente allegato alla Mail anche il

proprio Certificato Digitale contenente la chiave pubblica. Il destinatario ricalcala il digest e riapre il digest cifrato

utilizzando la chiave pubblica appena ricevuta. Se i due digest coincidono significa che il sorgente è attendibile e

quindi provvede a memorizzare il Certificato Digitale nella propria Rubrica delle mail-Address.

In Outlook tutti i messaggi inviati con Firma Digitale vengono identificati da una coccarda rossa.

Nella Rubrica dei Contatti, gli indirizzi per i quali si dispone del Certificato Digitale vengono visualizzati con una

coccarda rossa. L’ultima sottofinestra “ID Digitali” consente di vedere le proprietà del Certificato.

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.

Page 120: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 120

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).

Page 121: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 121

Esposizione su Internet dei Servizi di una Rete Locale

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:

1) Acquistare un indirizzo IP pubblico. Si può acquistare :

Un singolo indirizzo IP da un ISP, nel qual caso si continua ad utilizzare un collegamento Punto Punto verso

un Server PPP dell‟ISP

Una intera rete di indirizzi IP più o meno grande a seconda delle esigenze.

2) Acquistare e Registrare un dominio presso www.nic.it/domini. Es vallari.edu

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.

Per cui, per quanto concerne gli indirizzi pubblici,

o si acquista un unico indirizzo IP pubblico

o si acquistano direttamene otto / sedici indirizzi.

1° Soluzione : Rete Interna Unica

Una prima semplice soluzione potrebbe essere quella di acquistare un unico indirizzo IP da assegnare alla porta

pubblica del router ed esporre su Internet alcuni server della rete locale. Ad esempio:

Web Server 10.0.0.11

In ascolto sulla porta 80. Esempio IIS, Apache, Tomcat.

Mail Server 10.0.0.12

In ascolto sulla porta 25 (messaggi in arrivo), 110 e 143 (download tramite Client di Posta), 80 web Mail.

Esempio Microsoft Exchange Sever, Squirrell Mail, SME Server.

Page 122: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 122

DNS Server 10.0.0.13

Il DNS Server Autorevole per il dominio deve contenere un file che associ ciascuna URL pubblica (es.

www.vallauri.edu) con il corrispondente indirizzo IP pubblico. Poiché si dispone di un unico indirizzo pubblico

1.2.3.4, tutte le varie URL dovranno far riferimento a quest‟unico indirizzo che in realtà è l‟indirizzo del firewall.

Il DNS Server dovrà contenere almeno i seguenti record:

record A www.vallauri.edu 1.2.3.4

record A posta.vallauri.edu 1.2.3.4

record MX Mail Server 1.2.3.4

di solito non servono record NS

PROXY Server 10.0.0.14

Per la gestione del traffico in uscita (navigazione Internet), è possibile utilizzare un Proxy Server (es SQUID), che

consente di installare vari filtri di protezione della navigazione. Il proxy tiene traccia sull‟identità del richiedente e,

in corrispondenza della risposta, provvede a convogliarla correttamente verso il client richiedente..

I vari browser della LAN devono essere configurati per inviare le richieste al Proxy, il quale, se i criteri

di filtro sono soddisfatti, provvederà a girare la richiesta al Router impostando se stesso come richiedente.

Il Firewall del router dovrà accettare come richieste HTTP soltanto quelle provenienti dal Proxy.

Doppio passaggio ma maggior controllo sulla navigazione.

Configurazione del servizio NAT sul Router

Occorre definire sul router di uscita la porta WAN come porta NAT OUTSIDE.

Attivare un servizio NAT in uscita, tale da consentire l‟uscita verso Internet degli utenti interni,

Attivare un servizio NAT in ingresso, tale da consentire l‟accesso da Internet verso i server interni

NAT Dinamico in uscita

Per le richieste provenienti dall‟interno verso l‟esterno, il Dynamic PAT sostituisce

l‟indirizzo privato del mittente con l‟ indirizzo pubblico della porta NAT OUTSIDE

la porta del mittente con una porta effimera generata dinamicamente.

NAT Statico in ingresso

Per le richieste provenienti dall‟esterno verso l‟interno, il servizio NAT provvede a sostituire l‟indirizzo pubblico di

destinazione (e relativa porta ) con gli indirizzi privati impostati staticamente all‟interno delle ATT.

Apertura delle porte in uscita

Si possono chiudere tutte le porte, aprendo in uscita soltanto le seguenti:

Porta 80 per consentire agli utenti interni di accedere ai web server esterni.

Porta 443 (HTTPs) per consentire agli utenti interni di accedere alle pagine protette

Porta 25 per consentire agli utenti interni di inviare posta elettronica all‟esterno.

Porta 53 per consentire al DNS interno di risolvere gli Internet DNS Name tramite l‟accesso ad altri DNS esterni.

Porte 110 143 per consentire agli utenti interni di scaricare posta dai Mail Server esterni mediante Client di Posta.

Apertura delle porte in Ingresso

Porta 80 per consentire agli utenti esterni l‟accesso al web server locale

Porta 443 (HTTPs) se il sito gestisce dati sensibili accessibili soltanto attraverso HTTPs.

In tal caso occorre installare sul web server un certificato digitale ufficiale (150 €) o generato localmente.

Porta 25 per consentire agli utenti esterni di inviare posta elettronica al mail server locale.

Porta 53 per consentire ai DNS Server esterni di inviare richieste al DNS Server interno

Porte 110 e 143 per consentire agli utenti interni di scaricare la posta dall‟esterno mediante Client di Posta.

Page 123: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 123

Graficamente l‟apertura delle porte in ingresso può essere rappresentata nel seguente modo:

Public IP DEST Public Port Private IP Private Port WEB 1.2.3.4 80 10.0.0.11 80

MAIL 1.2.3.4 25 10.0.0.12 25 MAIL 1.2.3.4 110, 143 10.0.0.12 110, 143

DNS 1.2.3.4 53 10.0.0.14 53

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.

Gestione del servizio web mail

Rimane il problema di come consentire l‟accesso web mail al Server di Posta. Se gli utenti devono consultare le

proprie mail da casa via web, devono potersi connettere al server di posta locale sulla porta 80.

Poiché tutte le richieste arrivano al Firewall, e la porta 80 del Firewall è già utilizzata per reindirizzare le richieste

verso il web server, non può essere utilizzata anche per reindirizzare le richieste relative al mail server. Tre soluzioni:

Acquistare più indirizzi IP pubblici (eventualmente tutti concentrati sul Firewall), assegnando indirizzi IP

differenti al Web Server (www.vallauri.edu) rispetto al Mail Server (Posta.Vallauri.Edu). Soluzione “pulita”

ma più onerosa (utilizzata dal Vallauri che dispone di 8 indirizzi IP pubblici con rete 88.34.213.176)

Una soluzione più semplice consiste nell‟ “aprire” un‟altra porta sul Firewall (ad esempio 8080 o 2525) e

costringere gli utenti della web mail ad utilizzare tale porta non standard da scrivere ogni volta sulla barra di

navigazione: http://posta.vallauri.edu:8080

Una terza e più brillante soluzione, supponendo di disporre di un Firewall HTTP di livello 7, è quella

individuare il servizio richiesto non soltanto sulla base della porta di richiesta, ma sulla base del DNS Name

richiesto e contenuto all‟interno dell‟intestazione HTTP (in pratica lo stesso principio dello smart hosting).

In questo modo, a parità di indirizzo IP, se la richiesta riguarda www.vallauri.edu :80 viene inoltrata su una

certa macchina, mentre se riguarda posta.vallauri.edu : 80 viene inoltrata su una macchina differente.

Funzionalità disponibile soltanto con HTTP 1.1

2° Soluzione : DMZ (Demilitarized Zone)

Aprire una o più porte di una LAN ad Internet, dal punto di vista della sicurezza, è estremamente pericoloso.

Il Firewall perimetrale esegue sì dei controlli sui pacchetti, ma non garantisce da virus e intrusioni.

Inoltre sulle porte aperte deve necessariamente consentire l‟accesso a chiunque ne faccia richiesta.

Se qualcuno riesce a prendere possesso di un PC della rete locale, questi avrà libero accesso all‟intera rete.

Il passo successivo per avere maggiore protezione, è quello di inserire una doppia barriera tra Rete Esterna e Rete

Locale, separando fisicamente i Server Pubblici dalla Rete Locale con un secondo Firewall a protezione della rete

locale più “fine” del primo. Le due porzioni di in cui viene suddivisa la rete locale sono dette rispettivamente

MZ (Militarized Zone) cioè la rete Locale vera e propria, protetta dal 2° firewall con regole molto stringenti

riguardo agli accessi (in pratica “blindata” rispetto ad Internet”), avente ad es l‟indirizzo privato di classe A

10.0.0.0.

DMZ (Demilitarized Zone) contenente tutti i server visibili su Internet (ad es Mail Server, Web Server, DNS

Server). Anche l‟indirizzo della DMZ è un indirizzo privato, ad esempio 192.168.0.0

I server esposti su Internet rimangono così separati dalla LAN interna mediante un secondo Firewall

Le macchine inserite nel DMZ vengono solitamente indicate come Server di Front End, frontalmente esposti ad

Internet, che non contengono dati, ma che fanno soltanto da ponte tra Internet e la rete interna.

Per contrapposizione i server interni alla rete locale, contenenti i dati, sono denominati Server di Back End.

Page 124: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 124

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:

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.

10.0.0.1 192.168.0.1

192.168.0.0 10.0.0.1 1.2.3.4

1.2.3.4

Page 125: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 125

Macchine da posizionare nel DMZ

Allo switch del DMZ vengono collocate tutte le macchine che devono essere accessibili dall‟esterno; di solito :

1) DNS Server(ad esempio BIND) porta 53

2) Web Server porta 80

3) Mail Server porta 25 + porta 80 per le web mail

4) Eventuali Access Point Hot Spot in modo da consentire la libera navigazione ad utenti temporanei, senza

consentire loro l‟accesso alla rete locale

Macchine posizionate all‟interno del MZ

Primary Domain Controller (PDC), ad esempio ADS, DHCP, Database server, Proxy Server

Programmazione del Firewall

Occorrerà programmare separatamente

l‟interfaccia WAN del Firewall, con attivazione del servizio NAT in ingresso (verso il DMZ) ed

eventualmente in uscita (che potrebbe anche essere del tipo “CONSENTI TUTTO”

l‟interfaccia LAN con possibilità agli utenti locali di uscire verso l‟esterno

ma con regole molto stringenti per quanto riguarda le richieste verso l‟interno .

In genere non vengono impostate regole sull‟interfaccia relativa al DMZ.

3° Soluzione : Utilizzo di un Reverse Proxy

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.

Page 126: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 126

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

La porta del Sorgente, trattandosi di una porta effimera, non ha importanza.

Azione può essere NEGA (Deny) oppure CONSENTI (Allow).

Sulla base delle informazioni contenute nella ACL, il Firewall decide se Consentire la Richiesta, oppure Bloccare la

Richiesta. Le regole devono essere scritte in sequenza dalle più specifiche (in testa) alle più generali (al fondo).

In corrispondenza di ogni pacchetto, tutte le regole vengono scandite dalla cima al fondo dell‟elenco.

Nel momento in cui una regola risulta soddisfatta, questa viene eseguita e la scansione interrotta

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.

Sequenza delle operazioni eseguite da un router

Dato un certo pacchetto in ingresso su una qualsiasi porta del router, il router esegue sempre la seguente sequenza:

PRE ROUTING

1) verifica della INBOUND ACL relativa alla porta di ingesso del pacchetto

2) Applicazione dell‟eventuali traslazioni NAT in ingresso (solo nel caso della porta WAN, con sostituzione

dell‟indirizzo pubblico di destinazione con quello privato effettivo)

3) Consultazione tabella di routing e scelta della porta di uscita

POST ROUTING

4) Applicazione dell‟eventuali traslazioni NAT in uscita (solo nel caso della porta WAN, con sostituzione

dell‟indirizzo privato del sorgente con quello del router)

5) verifica della OUTBOUND ACL relativa alla porta di uscita del pacchetto

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

Page 127: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 127

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.

ACL interfaccia WAN INBOUND

L‟utente esterno per qualunque servizio farà riferimento all‟unico indirizzo pubblico assegnato al router di ingresso

sul quale il servizio NAT, sulla base del numero di porta, ridirigerà la richiesta verso il corrispondente server del

DMZ, sostituendo IP DEST pubblico con l‟IP PRIVATO del server. Si tratta di decidere quali servizi abilitare. La

tabella seguente mostra l‟abilitazione dei principali servizi Internet. Con un firewall di liv 7 in grado di distinguere le

richieste sulla base del DNS Name si può aprire la porta 80 in ingresso sia verso il web server sia verso il mail server

Porta destinazione Indirizzo Mittente Indirizzo Destinazione Azione

ACL porta WAN in INGRESSO

80 (HTTP) Qualsiasi 1.2.3.4 NAT 192.168.0.3 Consenti

80 web mail Qualsiasi 1.2.3.4 NAT 192.168.0.4 Consenti

443 (HTTPs) Qualsiasi 1.2.3.4 NAT 192.168.0.3 Consenti

443 web mail Qualsiasi 1.2.3.4 NAT 192.168.0.4 Consenti

53 (DNS) Qualsiasi 1.2.3.4 NAT 192.168.0.2 Consenti

25 (SMTP) Qualsiasi 1.2.3.4 NAT 192.168.0.4 Consenti

110 (POP3) - 143 (IMAP) Qualsiasi 1.2.3.4 NAT 192.168.0.4 Consenti

Qualsiasi Qualsiasi Qualsiasi Blocca

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.

ACL interfaccia LAN OUTBOUND

Come protezione della LAN, si può impostare sulla porta LAN una ACL OUTBOUND molto selettiva che chiude

tutte le porte con una unica eccezione che consente al web server del DMZ di indirizzare delle richieste verso il

Server di database interno (ad esempio host 10.0.0.99 porta 1433 nel caso di SQL Server))

ACL porta LAN in USCITA (in uscita dal router)

1433 (SQL Server) 192.168.0.3 (web server) 10.0.0.99 (SQL Server) Consenti

Qualsiasi Qualsiasi Qualsiasi Blocca

ADS porta 398; MySQL porta 3306 SQLServer porta 1433

ACL interfaccia LAN INBOUND

Per quanto riguarda le richieste provenienti dalla LAN (dirette verso il DMZ oppure verso la porta WAN) si può

impostare la ACL indicata dalla tabella, in cui si aprono le principali porte sia verso il DMZ sia verso l‟esterno.

POP3 e IMAP sono aperte soltanto verso il DMZ per cui non è possibile scaricare posta da server esterni.

Gli utenti 10.0.0.41 – 10.0.0.80 non hanno accesso alla navigazione HTTP.

(*) Se nella LAN fosse presente un Server Proxy, soltanto lui sarebbe abilitato a far uscire le richieste HTTP.

ACL porta LAN in INGRESSO (verso il router)

80 (HTTP) 10.0.0.41 – 10.0.0.80 Qualsiasi Blocca

80 (HTTP) Qualsiasi (*) Qualsiasi Consenti

443 (HTTPs) Qualsiasi Qualsiasi Consenti

53 (DNS) e 25 (SMTP) Qualsiasi Qualsiasi Consenti

110 (POP3) Qualsiasi 192.168.0.4 Consenti

143 (IMAP) Qualsiasi 192.168.0.4 Consenti

Qualsiasi Qualsiasi Qualsiasi Blocca

Page 128: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 128

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 server90.90.90.90

Rete 192.168.1.0/24

Internet

Rete 192.168.2.0/24

R1 - porta 1 INBOUND (Quesito A)

Port Source Destination Action

80 Any 90.90.90.90 Allow

Any Any Any Deny

R1 - porta 2 INBOUND (Quesiti B, C, D)

Port Source Destination Action

B1 Any 192.168.1.0 192.168.2.0 Allow

C1 e D1 Any Any Any Deny

R2 - porta 1 INBOUND (Quesiti B, C, D)

Port Source Destination Action

B1 Any (80) 192.168.2.0 192.168.1.0 Deny

C1 80 192.168.2.0 90.90.90.90 Deny

D1 80 192.168.2.0 Any Allow

Any Any Any Deny

1

R1

2

R2 3 4 1 2

Page 129: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 129

Il livello Data Link nelle reti Geografiche

Un collegamento geografico è un collegamento fra PC o reti remote basato su una certa infrastruttura di rete

.Inizialmente i collegamenti geografici era basati esclusivamente sull‟infrastruttura della rete telefonica pubblica.

La rete telefonica è però una linea analogica, nel senso che i dispositivi intermedi erano, almeno all‟inizio, tutti

dispositivi analogici. Poiché invece i PC sono dispositivi digitali, per poter trasmettere un segnale digitale su una

linea “analogica” occorreva un dispositivo in grado di convertire il segnale da digitale ad analogico e viceversa, cioè

eseguire una MODULAZIONE (e demodulazione) attraverso il cosiddetto modem fonico o modem tradizionale.

Nel caso invece di linee digitale, il modem vero e proprio non ha più senso di esistere. In ogni caso, anche se la linea

è completamente digitale, per poter trasmettere il segnale occorre comunque eseguire un “adattamento” del segnale

alla linea. Ecco allora che interviene il cosiddetto CSU/DSU (channel service unit / data service unit) o in gergo

modem digitale, che trasforma il frame nel formato richiesto dalla connessione WAN in uso.

Spesso il CSU/DSU è integrato in una scheda del router che pertanto diventa un modem router. In questo caso il

CSU/DSU rappresenta il DCE di trasmissione mentre il router rappresenta il DTE cioè colui che prepara i dati.

La sigla POP (Point Of Presence) rappresenta il punto di demarcazione delle responsabilità fra ISP e Utente, in

genere la presa finale presso la residenza dell‟utente, ma potrebbe essere anche una CSU / DSU affittato dal Provider

(CPE = customer premises equipment).

Il first mile rappresenta il tratto di linea che collega l‟utente alla Centrale Urbana e, in Italia, è tutt‟ora di proprietà di

Telecom. Il CSU/DSU in sostanza controlla la trasmissione sul first mile.

Reti Commutate e Reti Dedicate

Rete Commutata (o Rete Broadcast) - Rete a Larga Scala in cui ogni terminale può stabilire a richiesta una

connessione con ogni altro terminale. Le reti commutate necessitano di “commutazione” che può essere:

- Commutazione di Circuito quando, attraverso una serie di commutatori si viene a creare un collegamento diretto

e temporaneo fra i due End System, consentendo l‟uso esclusivo del canale.

- Commutazione di Pacchetto : l‟informazione viene segmentata in pacchetti ognuno dei quali può seguire un suo

percorso. Ottimo per la trasmissione dati (occupa meno banda) ma inadatto per il segnale vocale.

Rete Dedicata Rete Commutata con connessione permanente tra due o più terminali (punto-punto o multipunto)

(a commutazione di circuito fisico o, nelle reti a commutazione di pacchetto, di tipo virtual circuit).

Nota su Commutazione di Circuito e Virtual Circuit

Commutazione di circuito significa impegnare il circuito fisico per tutto il tempo del collegamento, anche se i

due interlocutori rimangono entrambi silenti. Ad es FDM tradizionale (analogico) e TDM di ISDN (digitale)

Virtual Circuit significa che i dati, già suddivisi in pacchetti, seguono tutti lo stesso percorso ma in modo non

esclusivo. Se uno non trasmette gli altri possono andare più veloci. Ad es STDM di Frame Ralay e ATM

Struttura della rete PSTN (Public Switched Telephone Network)

Rete Telefonica Pubblica. Nasce in Italia nel 1850 come rete telegrafica introducendo il servizio telefonico agli

inizi del 1900. Utilizza il doppino telefonico in rame (UTP categoria 1) su cui viaggiano segnali analogici con banda

limitata a 4 kHz, nel senso che su tutti i punti di accesso alla linea è inserito un filtro passa basso a 4 kHz, ( banda

lorda del canale telefonico). In realtà il segnale telefonico viene tagliato tra 300 e 3400 Hz.

I nodi finali della rete PSTN sono costituiti dalle Centrale Urbane che in Italia sono circa 10.000. Nel fossanese,

sotto l‟unico prefisso 0172, sono presenti 6 Centrali Urbane principali (Savigliano, Fossano, Bra, Racconigi, Moretta

e SommarivaBosco). All'interno della Rete Urbana la comunicazione avviene sempre in banda base passando per

gli armadi di linea posizionati lungo le strade (tranne rari casi di multiplexaggio del doppino in località rurali o poco

popolate). La coppia di cavi, dall‟armadio di distribuzione fino alla Centrale Urbana, viene inserita fisicamente

all'interno di fasci di cavi con potenzialità variabili tra 2400 e 10.000 coppie.

Allo state attuale le Centrali Urbane sono collegate fra loro tramite una tecnologia digitale denominata TDM.

Page 130: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 130

Cenni sul modem fonico

Livello 1 ISO OSI. Così come la scheda di rete provvede a modulare il segnale digitale in codice Manchester per

adattarlo alle esigenze della LAN, il modem fonico provvede a modulare il segnale digitale (proveniente dalla porta

RS232 o USB di un PC) su una portante sinusoidale adattandolo alla larghezza del canale fonico [300 – 3400 Hz].

L‟ultimo standard è il V90 a 56 kbit/sec teorici, basato su una modulazione 64 QAM con un bit di ridondanza per

l‟error check (calcolato sulla base della codifica Trellis). Il segnale modulato, con banda 300 – 3400 Hz, viene poi

immesso sulla rete PSTN come un normale segnale vocale.

Cenni sulle reti X 25

Prima rete a commutazione di pacchetto. E‟ una vera e propria struttura di comunicazione che copre i livelli 1 – 4

del modello ISO OSI (anche se il livello 4 è in pratica inesistente), basata per la prima volta su un protocollo a

commutazione di pacchetto di livello 3 detto PLP (approvato come standard dal CCITT nel 1976).

Con X.25 nasce il concetto di PSN (Packet Switched Network). La commutazione di pacchetto supera i limiti delle

linee PSTN dedicate, molto costose e spesso sottoutilizzate. La connessione tra gli End Point è soltanto virtuale ed i

dati provenienti da clienti differenti possono transitare sulle stesse linee, condividendo parti di tragitto, per cui il

costo non dipende più dalla distanza tra gli utenti, ma soltanto dalla durata del collegamento alla linea.

Cenni sulla rete ITAPAC

In Italia la prima rete PSN pubblica che implementa X.25 è stata la rete ITAPAC (ITA = Italia, PAC = Pacchetto), che offre

anche diversi servizi aggiuntivi, come es lo scambio di posta elettronica. Il nodo principale di Roma funge da gateway verso

altre dorsali Europee e sono anche disponibili collegamenti ITALCABLE con paesi extra europei.

Le reti X.25 hanno di fatto costituto la prima vera ragnatela mondiale di comunicazioni presente in più di 100 nazioni, dapprima

attraverso le reti delle singole compagnie telefoniche (es. ITAPAC) a cui si sono poi aggiunte, con la liberalizzazione delle

telecomunicazioni, molte reti private (tipicamente bancarie) operanti allo stesso modo.

Da un punto di vista strutturale, una rete X.25 può dunque essere assimilata ad una rete Internet, più lenta, basata su

tecnologie e protocolli differenti, priva del servizio WEB, e con estensione ridotta. Visti i notevoli costi di investimento,

numerose reti X.25 sono ancora oggi attive. Uno degli utilizzi ancora estremamente diffuso è la comunicazione tra gli sportelli

bancomat remoti di una banca ed i server centrali. Essendo molto meno conosciuto rispetto a TCP/IP, i protocolli X.25 sono

oggi ritenuti addirittura più sicuri rispetto a TCP/IP.

Cenni sulle reti ISDN

Lo sviluppo parallelo della Rete Telefonica da una parte e delle sempre più frequenti Reti Dati dall‟altra, ha creato i

presupposti per una nuova rete digitale in grado di integrare servizi telefonici e servizi telematici. Nasce così la rete

ISDN Integreted Service Digital Network, prima vera Rete Digitale a larga scala integrata nei Servizi.

Si tratta sostanzialmente di una rete a Commutazione di Circuito ma interamente basata su dispositivi digitali.

La multiplazione dei canali non avviene più nel dominio delle frequenze, ma nel dominio del tempo, mediante una

tecnica sincrona denominata TDM (Time Division Multiplex) . Ogni trasmettitore ha a disposizione un timeslot di

125 usec per la trasmissione di un Byte (1/125 10-6

= 8 kBytes al sec). Per quanto concerne invece la digitalizzare del

segnale telefonico, questo viene campionato a 8 Khz (125 usec) su 8 bit. Poiché fra un campione e l'altro devono

essere trasmessi tutti gli 8 bit, ne consegue una frequenza di trasmissione base fissa pari a 64 kbit/s

ISDN, oltre che nei servizi, è una rete ibrida integrata anche nelle tecniche, in quanto è in grado di implementare

anche collegamenti a commutazione di pacchetto. Utilizza come supporto di collegamento alla Centrale Urbana il

normale doppino telefonico, e l‟allacciamento alla rete avviene mediante una speciale borchia detta borchia ISDN

L‟ Accesso Base alla rete ISDN è realizzato tramite la borchia NT1 (Network Terminator tipo 1) ed è indicato con la

sigla 2B + D. Contiene 2 canali dati (canali di tipo B cioè Bearer), ciascuno con una velocità di 64 kbit/s, più un

canale di servizio di tipo D a 16 kbit/s. Ai due canali dati possono essere collegati due Terminal Equipment differenti

(TE1 e TE2), che possono operare contemporaneamente e che l'utente può sfruttare come meglio crede (2 telefoni, 1

telefono e 1 canale Internet, 2 canali Internet, un singolo canale Internet a 128 kbit/sec). Ciascun canale dati utilizza

un connettore RJ45 femmina. La multiplazione TDM fra i tre canali è integrata all‟interno della borchia ISDN.

Page 131: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 131

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

Cenni sulle reti Frame Relay

Frame Relay (che significa Rete a Commutazione di Frame) è una evoluzione di X.25 ed è stato il primo vero

tentativo di creare una rete integrata (voce e dati) a larga scala. che ha poi notevolmente contribuito allo sviluppo di

ISDN. Caratteristiche principali della rete Frame Relay, rispetto a X.25, sono le seguenti:

Utilizza una Commutazione di Pacchetto a Circuito Virtuale, in cui tutti i pacchetti relativi ad una stessa

connessione seguono lo stesso percorso fisico.

A differenza di X.25 che copre i livelli 1 2 3 4 del modello ISO OSI, Frame Relay definisce solo i livelli 1 e

2, svincolando la rete dai livelli superiori e rendendo possibile l‟interfacciamento con TCP / IP

X.25 esegue, sia a livello 2 sia a livello 3, funzioni molto pesanti di controllo errori e controllo flusso,

eseguiti su tutti i nodi intermedi (si parla di controllo dei dati su singola tratta), controlli introdotti già al

livello 2 per sopperire alla scarsa qualità dei vecchi mezzi trasmessivi disponibili ai tempi di X.25. Frame

Relay invece esegue i controlli del flusso soltanto sui nodi finali (controllo dei dati sulla tratta completa).

L‟eliminazione di tutti i controlli intermedi comporta un minor numero di operazioni da compiere nello

smistamento dei pacchetti, con aumento della velocità pari a un ordine di grandezza rispetto a X.25

Velocità tipica di Frame Relay è 2 Mbps (circa 20 volte superiore rispetto alle velocità di X.25).

Non dovendo eseguire controlli d‟errore, i pacchetti Frame Relay possono avere dimensione maggiore

rispetto a X.25 (lunghezza massima di un frame fissata a 1600 bytes)

In X.25 la multiplazione dei circuiti virtuali ha luogo a livello 3 (come nel caso di IP), per cui i dispositivi

intermedi devono far risalire il pacchetto fino al livello 3. Frame Realy esegue invece una multiplazione dei

circuiti virtuali direttamente a livello 2, svincolando così completamente il protocollo dal liv 3

X.25 usa una segnalazione in-banda per lo scambio dei pacchetti di controllo della chiamata. In Frame

Relay i segnali di controllo della chiamata usano una connessione logica separata da quella di scambio dati

Frame Relay utilizza una trasmissione asincrona di tipo STDM (Statistical TDM) in cui, a differenza di TDM

tradizionale di ISDN, se un canale non ha nulla da trasmettere, non vengono sprecati time slice.

Intestazione del protocollo Frame Relay

A differenza di ISDN, essendo Fram Relay (come ATM) un protocollo a commutazione di pacchetto, necessita di un

identificativo di livello 2 per l‟instradamento dei pacchetti. Il protocollo di Liv 2 utilizzato per la gestione del Data

Link è LAPF (Link Access Procedure to Frame), che è costituito dalla seguente intestazione:

Flag 1 byte Inizio Frame 01111110 (simile al preambolo del protocollo MAC)

DLCI 10 bit Data Link Connection Identifier (0-1023). [Switch a 1024 porte]

Identifica la connessione virtuale (PVC) tra i due end system.

Control 6 bit Servono per la sincronizzazione e un semplice controllo della congestione.

PAYLOAD

FCS 2 bytes Frame Check Sequence. Un CRC a 16 bit

Flag 1 byte Fine Frame (identico a quello di inizio frame)

Si tratta di una rete di livello 2 abbastanza simile al livello MAC di Ethernet, sempre di tipo best effort, cioè senza

garanzie sulla consegna dei frames, con velocità più basse ma in grado di raggiungere distanze molto più elevate.

I pacchetti hanno lunghezza variabile e non sono previsti messaggi di broadcast

Velocità tipica 2 Mbps, con CIR (committed information rate larghezza di banda garantita) da concordare.

Page 132: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 132

Struttura di Frame Relay

Internamente la rete Frame Relay è costituita da un insieme di Frame Realy Switch FRS interconnessi fra loro che

sono un po‟ l‟analogo dei vecchi commutatori elettromeccanici. Il collegamento dell‟utente alla rete Frame Relay

avviene tramite un apposito CSU/DSU tipicamente di proprietà del gestore. Il CSU/DSU funge da gestore della

comunicazione (DCE) fornendo al router (DTE) il clock di rete. Il fatto che DLCI possa indirizzare al max 1024

connessioni non significa che una centrale FR possa gestire solo 1024 comunicazioni, ma che ogni switch può gestire

fino a 1024 comunicazioni. All‟interno della centrale possono coesistere più switch interconnessi fra loro. Uno

switch ad es può ricevere 1022 comunicazioni e inoltrarne 511 su un canale e 511 su un altro canale a un altro FRS.

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

CDN Collegamento Diretto Numerico

Fa parte del servizio universale di Telecom ed è disponibili su tutto il territorio nazionale. Si tratta di linee ISDN

dedicate. Per il collegamento ad una linea CDN occorre un CSU/DSU fornito dal gestore che, tramite apposita

borchia, esce comunque sempre sulla normale linea telefonica. Viene sfruttato il collegamento utente – centrale in

Banda Base, dopo di che dalla centrale vengono sfruttate le dorsali digitali TDM nate per le linee ISDN.

In Europa sono stati definiti gli standard E1 costituito da 32 canali ISDN (Accesso ISDN primario), con velocità

complessiva di 2 mbps e lo standard E3 costituito da 16 canali E1 con velocità complessiva di 32 mbps.

Standard successivi arrivano fino a 2 Gbit/s. Appositi rigeneratori consentono la trasmissione su lunghe distanze.

Lo standard americano T1 è invece costituito da 24 canali ISDN più un canale di controllo a 8 kbps, dunque con una

velocità complessiva di 1544 kbps. Lo standard T3 consiste di 28 canali T1 con velocità complessiva di 44 mbps.

Page 133: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 133

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 :

Confronto CDN - Frame Relay

Essendo CDN una rete a commutazione di circuito, i costi dipendono dalla lunghezza della tratta da collegare, mentre

nel caso di Frame Relay, a commutazione di pacchetto, sono indipendenti dalla distanza, per cui per brevi distanze

(inferiori ai 50 km) conviene CDN, mentre per distanza maggiori conviene Frame Relay.

RUPAR

Un es di rete dedicata Frame Relay è la RUPAR (Rete Unificata Pubblica Amministrazione Regionale) che collega tramite

Frame Relay a 2 Mbit/sec tutti gli enti pubblici del Piemonte ad una sede centrale posizionata presso il CSI di Torino.

Server e Proxy del CSI consentono un accesso a Internet centralizzato, sicuro (protetto da filtri) e finanziato dalla regione.

Page 134: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 134

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.

Intestazione di una cella ATM

Ogni cella ATM, all‟interno dell‟intestazione, è caratterizzata da due numeri identificativi, detti rispettivamente

VPI (Virtual Path Identifier, a 5 bit) e VCI (Virtual Channel Identifier a 16 bit) che servono a identificare il percorso

che deve seguire la cella non per arrivare alla destinazione finale, ma per raggiungere il successivo nodo ATM. Qui

verranno modificati sulla base della tabella di switch per indicare il percorso verso il nodo successivo.

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.

Page 135: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 135

VPI e VCI : instradamento di un pacchetto

Come per il DLCI di Frame Relay, VPI e VCI vengono modificati in corrispondenza di ogni switch e sono gli

elementi base per l‟instradamento dei pacchetti. La connessione inizia con una segnalazione su un apposito canale

dedicato alla segnalazione tra l‟host e lo Switch a cui esso é collegato; tipicamente sul VPI=8, VCI=35.

In pratica l‟host chiede al suo switch un “canale” libero di comunicazione. Lo switch, consultando una tabella interna

indicizzata dalla porta di ingresso della cella (linea fisica del richiedente, ad esempio linea #1) ed intestazione

della stessa (es VPI/VCI = 29), ricava la porta di uscita (linea #2) e la nuova etichetta da assegnare alla cella (es.

VPI/VCI = 45 in cui VCI è il primo libero). Man mano che il pacchetto di configurazione della connessione

attraversa i vari switch, questi calcolano l'instradamento, attribuiscono un identificatore al pacchetto, e riservano

risorse per la connessione (definiscono cioè appositi record per il successivo instradamento dei pacchetti dati).

Al contempo viene creato un nuovo record per “fissare” il percorso di ritorno : se arriverà una cella dalla porta #2 con

VPI/VCI = 45 lo inoltri sulla porta #1 e gli assegni VPI/VCI = 29. Lo switch quindi, a sua volta, richiede allo switch

successivo un canale libero e così via.

Ogni percorso VPI dispone di 65536 possibili canali VCI. Una cella proveniente da VPI 1 può proseguire su VPI3

oppure su VPI2

Varianti del protocollo ATM

ATM prevede 2 diverse Modalità di Incapsulamento del payload da trasportare:

VC-MUX (Virtual Circuit Multiplexing) utilizza l‟intestazione base grande 5 bytes

LLC (Logical Link Control), aggiunge 4 byte di intestazione (dunque 9 complessivi) che consentono la

multiplazione di più protocolli (di livello 3 o 2 ½ come PPP) sulla stessa connessione virtuale ATM. In

sostanza LLC aggiunge delle informazioni relative al protocollo di livello superiore a cui i dati sono destinati.

VC-MUX rispetto a LLC riduce l‟overhead di frammentazione dei pacchetti, ma ogni connessione virtuale ATM

può trasportare PDU appartenenti ad un unico protocollo superiore. Per poter trasportare protocolli diversi occorre

istanziare una connessione virtuale specifica per ciascuno. I sistemi attuali in genere possono eseguire entrambe le

modalità. Oggi si preferisce utilizzare LLC che è più completo.

Page 136: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 136

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

TELEFONO UPSTREAM DOWNSTREAM

sottobanda 1 sottobande 8 - 31 sottobande 32 - 255

4 KHz 28 KHz 128 KHz 1,104 MHz

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.

Velocità di download delle tecnologie ADSL (PCR Peak Cell Rate)

ADSL1 9 Mbit/s a 300 metri dalla centrale

ADSL2 12 Mbit/s a 2,5 km dalla centrale

ADSL2+ 25 Mbit/s a 1,5 km dalla centrale

La velocità di upload può variare tra 0,64 Mbps e 1,54 Mbps. Le precedenti velocità massime sono comunque

difficilmente raggiungibili per diverse ragioni:

Page 137: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 137

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

LIV 1 : Cenni sul funzionamento di un modem ADSL

Modem ADSL (con connessione USB)

Da un punto di vista logico il Modem ADSL è molto simile ai vecchi modem analogici, cioè collega un singolo PC

alla linea telefonica stabilendo una connessione fisica con il destinatario e codificando opportunamente i dati.

Tutti i parametri di comunicazione (n di cella ATM, username e password, indirizzo IP) sono gestiti dal PC.

Il collegamento tra modem e PC viene realizzato tramite cavo USB.

L‟impiego dell‟interfaccia USB presenta una limitazione dovuta ad una velocità sul bus non interamente

disponibile per il traffico ADSL quando sul bus sono impiegati altri dispositivi. Un‟altra limitazione riguarda

la portata: essa infatti consente di coprire con velocità di 12 Mbit/s distanze non superiori a 5 m.

Se il PC è a sua volta collegato ad una rete locale, gli altri host della LAN potranno condividere l‟accesso ad

Internet attraverso il PC attivando sul PC il protocollo Windows ICS,

Il modem ADSL tradizionale è oggi quasi scomparso. I modem USB oggi in vendita sono comuqnue costituiti

dai cosiddetti Router BRIDGED cioè realizzati con la tecnologia dei router ma che operano come un Bridge

Esempio di Connessione punto punto fra Client e ISP

Si consideri la situazione indicata in figura riferita alla vecchia rete PSTN analogica in cui alcuni client si connettono

ad un ISP tramite il vecchio modem fonico. L‟ISP deve essere dotato di un modem analogico in grado di rispondere

alle chiamate. Nel momento in cui un client richiede la connessione al proprio modem, il modem esegue la chiamata

fisica al numero di telefono del modem destinatario che, se libero, risponde stabilendo la connessione fisica.

PC MODEM

PC MODEM ISP

PC MODEM PSTN MODEM

PC MODEM

PC MODEM

PC o

ROUTER

Page 138: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 138

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.

Router ADSL (integrato nei servizi)

Il Router ADSL è un vero e proprio router, il cui scopo è quello di collegare ad Internet una intera LAN.

Il Router ADSL è dotato di modem ADSL interno che gestisce l‟interfacciamento fisico verso la WAN.

Tutti i parametri di comunicazione (n di cella ATM, username e password, indirizzo IP.) sono memorizzati

direttamente sul router che fornisce inoltre:

un servizio DHCP per assegnare indirizzi IP privati ai PC della LAN

un servizio NAT per consentire la navigazione e anche l‟esposizione web di eventuali server interni .

un servizio firewall in grado di aprire / chiudere le varie porte di comunicazione.

un eventuale Access Point WiFi integrato

Gestione della Connessione Fisica di un modem USB alla rete

Modem Analogici: In corrispondenza di un apposito comando dell‟utente (tipica finestra “Connetti” aperta

automaticamente in corrispondenza dell‟apertura del browser oppure mediante il pulsante START / CONNETTI)

il modem provvedeva a chiamare il numero impostato e stabilire la connessione fisica.

All’interno di una Applicazione Personale si possono invece utilizzare i seguenti comandi :

In ambiente Windows per attivare / disattivare una connessione si può utilizzare il seguente comando :

Shell( "rasdial " & nomeConnessione & “ “ & nomeUtente & “ “ & {password|*} )

Se come password si utilizza un asterisco, verrà richiesta l'immissione di una password da parte dell'utente,

senza comunque visualizzare i caratteri digitati. Per abbattere la connessione si utilizza: Shell( "rasdial /d") oppure Shell( "rasdial /disconnect")

In ambiente Linux, per attivare / disattivare una connessione si possono utilizzare i comandi:

execve(“ifup PPP0”) che significa interface PPP0 UP.

execve(“ifdown PPP0”) che significa interface PPP0 DOWN.

Modem ADSL Normalmente eseguono la chiamata in automatico al momento dell‟accensione e, nel caso in

cui la chiamata non vada a buon fine, ritentano continuamente a intervalli regolari di tempo

In entrambi i casi al termine della connessione fisica il modem accende un LED di ON.

Gestione della Connessione Logica

Una volta stabilita la connessione fisica con il Provider occorre un protocollo che provveda ad autenticare il

chiamante, assegnarli un indirizzo IP, e monitorare continuamente la bontà della linea (errori di trasmissione).

ATM è in grado di instradare i frames sul collegamento fra Centrale Urbana dell‟Utente e Centrale Urbana

del Provider, ma non è in grado di gestire ne‟ l‟autenticazione né gli indirizzi IP per cui viene interposto il

protocollo PPP nella cosiddetta versione PPPoA. IP comunica con PPP che aggiunge la propria intestazione ed il

frame così ottenuto verrà poi suddiviso in celle ATM con l‟aggiunta di una ulteriore intestazione.

NOTA: Nelle connessioni Frame Relay, di tipo dedicato permanente, gli indirizzi IP ai terminali sono impostati

staticamente per cui PPP non sarebbe necessario, se non per eseguire eventualmente una autenticazione.

Page 139: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 139

LIV 2 : PPP (Point to Point Protocol)

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

I tre principali protocolli che costituiscono PPP sono :

LCP (Link Control Protocol) si occupa di stabilire, mantenere e terminare la connessione punto - punto

CHAP (Challange Handshake Autentication Protocol) si occupa di gestire l‟autenticazione del client sul server

NCP (Network Control Protocol) si occupa di gestire l‟interfacciamento con i diversi protocolli di liv 3

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).

Nome Bytes Descrizione

Flag 1 Campo fisso che indica l'inizio del frame (7E)

Address 1 Campo fisso (FF)

Control 1 byte di controllo

Protocol 2 indica il protocollo del campo data (0x0021 nel caso del protocollo IP)

Data variabile (0 - MTU) campo dati. Il valore di default di MTU è 1500 bytes.

FCS 2 (o 4) Controllo di Ridondanza ciclica (CRC) per la detenzione degli errori

Flag 1 Campo fisso che indica la fine del frame (7E)

Le tre Fasi di Connessione

Una volta stabilita dal modem la Connessione Fisica, PPP avvia la Connessione Logica articolata in tre fasi:

FASE 1: Handshake di connessione (Link Establishment Phase)

FASE 2: Autenticazione (Authentication Phase)

FASE 3: Configurazione del Protocollo di livello 3 (NCP Phase)

Fase 1 - Handshake di Connessione (Link Establishment Phase) gestita tramite LCP

La prima fase di connessione consiste nella negoziazione di alcune opzioni di controllo del collegamento quali:

Autententicazione: cioè se e come eseguire l‟autenticazione; due sono i protocolli utilizzati: PAP e CHAP

Compressione cioè se e come eseguire la compressione di tutti i successivi frames di dati. PPP può comprimere

i dati da trasmettere in modo da aumentare il throughput. Il ricevente dovrà decomprimere i dati ricevuti.

La compressione riduce il traffico di rete ma appesantisce i router che devono ogni volta comprimere /

decomprimere. La compressione, se abilitata, è eseguita tramite algoritmo di Van Jacobson simile a CSLIP.

Crittografia cioè se e come eseguire una crittografia su tutti i successivi frames di dati.

Multilink cioè se e come abilitare il Multilink. Il Multilink può essere utilizzato quando si hanno collegamenti

multipli paralleli e consiste nell‟aggregare insieme questi collegamenti in unico canale logico, consentendo a

PPP di eseguire un Load-balancing fra i vari link garantendo così una certa ridondanza sul collegamento.

MTU (Maximum Transmission Unit): Definisce la dimensione massima dei pacchetti trasmissibili.

Page 140: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 140

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 2 - Autenticazione (Authentication Phase) gestita tramite PAP / CHAP

Per default l'autenticazione non è obbligatoria ma deve essere concordata nella fase precedente. PPP supporta una

autenticazione reciproca che però di solito è abilitata solo su una delle due macchine (server). La macchina su cui è

abilitata l‟autenticazione (server) richiede all‟altra username e pwd. I protocolli utilizzati per l'autenticazione sono

PAP Password Authentication Protocol con il client che invia username e password in chiaro e CHAP Challange

Handshake Autentication Protocol in cui:

a) il server invia al client un challange message (stringa casuale)

b) il client concatena il challange message con la propria password creando un digest MD5 che invia al

server insieme al proprio username.

c) il server, in base allo username, rigenera il digest e lo confronta con quello ricevuto.

In questo modo si evitano attacchi di tipo REPLY, in quanto il challange viene ogni volta modificato.

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.

Terminata la connessione logica

il router ADSL accende un secondo LED di Connessione Logica ON. Per ragioni di privacy (tracciabilità di

navigazione dei siti visitati), anche in caso di collegamenti flat, l‟IP statico assegnato al Client viene di tanto in tanto

modificato dal Provider.

Link Termination Phase

La connessione PPP, una volta instaurata, può terminare in qualsiasi momento per caduta della portante, decadimento

della qualità della linea, scadenza di un timeout di inattività, richiesta di chiusura da parte di uno dei due end point.

Page 141: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 141

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

Varianti del protocollo PPP

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.

Cioè usa sempre ETH0

Cioè usa sempre PPP0

Page 142: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 142

Creazione e Configurazione di connessioni PPP in ambiente Windows

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

1) Client PPP di connessione a Internet (tramite modem tradizionale o ADSL)

Occorre:

Impostare il nome da assegnare alla connessione (PPP0)

Selezionare il tipo di Modem da utilizzare (tradizionale, ISDN o ADSL)

Selezionare il modem dalla lista dei modem installati (del tipo scelto al punto precedente)

Impostare il numero di telefono da chiamare (o l‟identificatore 8,35 della cella ATM di ingresso)

Impostare NomeUtente e Password di autenticazione presso il Provider

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.

2) Client VPN di connessione ad un VPN Server

Un client PPP, invece di “appoggiarsi” ad un dispositivo fisico come nel caso precedente, può “appoggiarsi” ad una

connessione fisica esistente, diventando di fatto un client VPN. I passi da eseguire sono i seguenti :

Impostare il nome da assegnare alla connessione (VPN0)

Impostare la connessione esistente (LAN o WAN) che dovrà essere utilizzata dal Client per inoltrare i pacchetti

destinati alla VPN. Tutti i pacchetti inoltrati verso la porta VPN0 verranno inoltrati verso la corrispondente porta

fisica.

Impostare l‟indirizzo IP del VPN Server da contattare

Una volta creata la connessione, dalla finestra delle Proprietà è possibile scegliere un eventuale algoritmo di

cifratura da utilizzare tra il default PPTP (Point to Point Tunneling Protocol) e L2TP (Layer Two Tunneling

Protocol)

Page 143: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 143

4) Creazione di un Server PPP

a) Presenza di un dispositivo di Riposta a chiamata

Nel caso in cui il PC sia connesso ad un modem in grado di rispondere alle chiamate, allora può fungere

direttamente da PPP Server verso gli utenti remoti. I passi da eseguire sono i seguenti:

Impostare il nome da assegnare alla connessione (PPP0)

Selezionare la periferica (modem) da utilizzare per accettare chiamate in ingresso

Specificare i nomi degli utenti che potranno connettersi al PPP server

Impostare l‟indirizzo IP da assegnare staticamente alla connessione

Attivare un eventuale servizio DHCP che fornisca gli indirizzi IP ai client che richiederanno l‟accesso. (Il

primo di essi potrebbe automaticamente essere assegnato alla connessione corrente).

b) Selezione di una connessione fisica esistente

Esattamente come nel caso (2), invece di “appoggiarsi” ad una periferica che riceve le chiamate, il PPP Server

può appoggiarsi ad una connessione esistente e accettare “richieste speciali” su quella connessione, creando di

fatto un Server VPN.

I passi da seguire sono gli stessi visti nel caso del dispositivo fisico, cioè:

Assegnare un nome alla connessione (VPN0)

Selezionare la connessione esistente (LAN o WAN) che dovrà essere utilizzata per accettare le richieste

VPN

Impostare l‟indirizzo IP da assegnare staticamente alla connessione (indirizzo che potrebbe essere assegnato

automaticamente come il primo degli indirizzi DHCP da assegnare ai client).

La Creazione guidata precedente non sembra però consentire di scegliere come sorgente una connessione esistente,

impedendo di fatto di realizzare un server VPN.

Il protocollo PPP come base del Tunneling e del VPN

Al momento dell‟avvio del servizio il Server PPP crea per sé una nuova scheda di rete virtuale mappata sulla

porta indicata in fase di configurazione, che può essere :

la porta USB su cui è collegato il modem che ricevere le chiamate (esempio PPP Server degli ISP)

una porta WAN o ETH già avente un proprio indirizzo IP.

In entrambi i casi alla nuova connessione occorre assegnare un indirizzo IP (statico oppure in modo dinamico

scegliendo automaticamente il primo fra gli indirizzi appartenenti al range DHCP da assegnare ai client).

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.

Page 144: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 144

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.

Nell‟esempio ogni sede è

collegata ad Internet

tramite un router ADSL.

Tra quest'ultimo e la rete

aziendale è presente un

altro router che si occupa

di gestire le VPN e

garantire la sicurezza delle

reti interne.

Le funzioni dei due router

(ADSL e VPN) possono

essere svolte anche da

un'unica apparecchiatura.

Le due sedi periferiche

sono viste come

EXTRANET della LAN

centrale.

Page 145: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 145

Il protocollo Microsoft PPTP (Point to Point Tunneling Protocol)

L‟approccio Microsoft è quello di realizzare le VPN come una semplice estensione del protocollo PPP che di per sé è

un protocollo modulare contenente diversi altri protocolli (es LCP di autenticazione e controllo del link, NCP di

configurazione dei protocolli trasportati). Aggiungendo semplicemente a PPP un sottoprotocollo per la cifratura e

compressione dei dati, si passa da PPP a PPTP.

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.

La tabella di Routing del Router Client

In caso di attivazione di una VPN Windows provvede per default ad instradare tutto il traffico verso il canale VPN,

dando per scontato che la LAN VPN disponga a sua volta di una uscita verso internet

Per continuare invece ad instradare sulla connessione fisica ETH0 le richieste indirizzate verso indirizzi pubblici,

inviando sul canale VPN0 soltanto i pacchetti effettivamente destinati alla LAN aziendale (es LAN 10.0.0.0/24),

occorre definire sul PC le seguenti entry di instradamento :

ROUTE ADD 10.0.0.0 MASK 255.255.255.0 IF VPN0 nHop 172.16.0.1

ROUTE ADD 0.0.0.0 MASK 0.0.0.0 IF ETH0 nHop Provider Gateway

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)

Rete 10.0.0.0/24

Page 146: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 146

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

Configurazione del VPN Server

Si ipotizzi il collegamento di più PC stand alone ad un VPN Server posizionato su un router di accesso ad una LAN:

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. .

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

0.0.0.0 0.0.0.0 1.2.3.4 Provider Gateway 1

Le richieste provenienti dai client vengono impacchettate nell‟intestazione pubblica ed inviate al VPN Server.

Il server VPN spacchetta il contenitore esterno e legge gli IP SOURCE e IP DEST interni. IP SOURCE sarà un

indirizzo della rete 172.16.0.x mentre IP DEST sarà un indirizzo della rete 10.0.0.0.

I client VPN dovranno conoscere l‟indirizzo IP dei vari server della rete 10 oppure utilizzare come DNS primario

il DNS Server della rete 10 che risolve i Nomi di tutte le macchine della LAN.

L‟indirizzo di questo DNS Server sarà inviato dal VPN Server tramite DHCP ai client, che lo utilizzeranno per

richiedere la risoluzione dei DNS Name tutte le volte che si troveranno a spedire pacchetti sul canale VPN0.

Il VPN server gestisce una tabella di corrispondenze fra IP pubblico dell‟host remoto richiedente (es 9.9.9.9)

e l‟indirizzo privato VPN corrispondente (es 172.16.0.2) in modo da poter poi reinstradare le risposte.

Le richieste vengono infine inviate sul canale ETH0 relativo alla rete 10.0.0.0, lasciando immutato l‟indirizzo

sorgente. Il destinatario riceve la richiesta, elabora la risposta e, vedendo che il richiedente appartiene ad una rete

diversa dalla sua (cioè appartiene alla rete 172.16.0.0), invia la risposta al suo Default Gateway (router VPN) che,

letto IP DEST a172.16.0.x lo inoltra sul canale VPN0 il quale crea il pacchetto con IP pubblico e lo spedisce

all‟host remoto. In alternativa si potrebbe attivare sul VPN Server un servizio PAT che imposti il VPN Server

(10.0.0.1) come mittente verso la rete 10.0.0.0

1.2.3.4

Page 147: ISTITUTO TECNICO INDUSTRIALE STATALE 'Grobertomana.altervista.org/wp-content/uploads/2016/09/Le-Reti.pdfSistemi - robertomana.itClasse Quinta RETI pag 6 Topologie di Rete e Metodi

Sistemi - Classe Quinta robertomana.it

RETI

pag 147

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.

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

1.2.3.4