Sei sulla pagina 1di 16

Indirizzi IP (reti private)

Subnet Mask

Suite TCP/IP, ISO/OSI

Apparati di Rete

Giuliano Consoli
Logica e Utilizzo di Indirizzi IP per reti Private

I dispositivi (PC, stampanti di rete, switch, ecc.) della rete comunicano tra di loro solo se
appartengono alla stessa rete.
Affinchè due dispositivi di rete diverse possano comunicare tra loro bisogna inserire una macchina
(Router) che metta in comunicazione le reti.

Cos’è un indirizzo IP?


L’indirizzo IP senza subnet mask non significa nulla, non ci da informazioni.
La subnet mask ci indica cosa dell’indirizzo IP è rete e cosa è Host (Unico identificativo del
dispositivo).

Facciamo un esempio:
L’ Indirizzo 192.168.0.1 non mi dice molto se non accompagnato dalla subnet mask.
Se un PC ha indirizzo 192.168.0.1 e subnet mask 255.255.255.0 allora posso ricavare alcune
informazioni utili per capire in quale rete sto lavorando, quanti host posso trovare comunicanti tra di
loro ed altro ancora.

Se rappresento in binario l’indirizzo 192.168.0.1 e Subnet Mask, risulta:

192. 168. 0. 1

11000000. 10101000. 00000000. 00000001

Subnet Mask:

255. 255. 255. 0

11111111. 11111111. 11111111. 00000000

192 168 0 1
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1

255 255 255 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

Se tracciamo una linea verticale dove finiscono i bit accesi della subnet mask, l’indirizzo IP sopra
viene diviso in due parti: tutto ciò che sta a sinistra (192.168.0) indica il nome della rete, tutto ciò
che sta a destra (1) indica il nome della macchina (Host).

Nella subnet mask 255.255.255.0 sono accesi i primi 24 bit a riempimento da sinistra e quindi
l’indirizzo IP 192.168.0.1 con subnet mask 255.255.255.0 può essere rappresentato più brevemente
192.168.0.1 /24.

Quali informazioni possiamo ricavare dalla rappresentazione binaria che abbiamo?


Possiamo ricavare l’indirizzo di rete, il primo indirizzo utile (utilizzabile) sulla rete, l’ultimo
indirizzo utile sulla rete e il broadcast della nostra rete.
Come si ottiene l’indirizzo della rete?
Mettendo tutti zeri nell’indirizzo IP a destra della linea si ottiene l’indirizzo di rete

192 168 0 0
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0

255 255 255 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

L’indirizzo di rete quindi è 192.168.0.0 /24

Come si ottiene il primo indirizzo utile sulla rete?


Accendendo solo l’ultimo bit a destra della linea:

192 168 0 1
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1

255 255 255 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

Il primo indirizzo utile della rete è: 192.168.0.1

Come si ottiene l’ultimo indirizzo utile sulla rete?


Accendendo tutti i bit a destra della linea escluso l’ultimo:

192 168 0 254


1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 1 1 1 1 1 1 1 0

255 255 255 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

L’ultimo indirizzo utile della rete è: 192.168.0.254


Come si ottiene il broadcast della nostra rete?
Accendendo tutti i bit a destra della linea:

192 168 0 255


1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 1 1 1 1 1 1 1 1

255 255 255 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

Il nostro broadcast è: 192.168.0.255

Conclusioni:
L’indirizzo di rete è 192.168.0.0 /24
Il primo indirizzo utile è: 192.168.0.1
L’ultimo è: 192.168.0.254
Quindi la mia rete può avere al massimo 254 hosts (PC, switch, ecc.)
Il broadcast è: 192.168.0.255

Il broadcast significa “tutti gli Hosts appartenenti alla rete”. Il broadcast quindi serve per fare una
comunicazione a tutti gli host della rete indicando un unico destinatario: 192.168.0.255.

Vediamo ora un altro esempio:

L’ Indirizzo 192.168.0.1 non mi dice molto se non accompagnato dalla subnet mask.
Se un PC ha indirizzo 192.168.0.1 e subnet mask 255.255.252.0 allora posso ricavare alcune
informazioni utili per capire in quale rete sto lavorando, quanti host posso trovare comunicanti tra di
loro ed altro ancora.

Se rappresento in binario l’indirizzo 192.168.0.1 e Subnet Mask, risulta:

192. 168. 0. 1

11000000. 10101000. 00000000. 00000001

Subnet Mask:

255. 255. 252. 0

11111111. 11111111. 11111100. 00000000


192 168 0 1
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1

255 255 252 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 0 0 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

Se tracciamo una linea verticale dove finiscono i bit accesi della subnet mask, l’indirizzo IP sopra
viene diviso in due parti: tutto ciò che sta a sinistra (192.168.0) indica il nome della rete, tutto ciò
che sta a destra (1) indica il nome della macchina (Host).

Nella subnet mask 255.255.252.0 sono accessi i primi 22 bit a riempimento da sinistra e quindi
l’indirizzo IP 192.168.0.1 con subnet mask 255.255.252.0 può essere rappresentato più brevemente
192.168.0.1 /22.

Quali informazioni possiamo ricavare dalla rappresentazione binaria che abbiamo?


Possiamo ricavare l’indirizzo di rete, il primo indirizzo utile (utilizzabile) sulla rete, l’ultimo
indirizzo utile sulla rete e il broadcast della nostra rete.
Come si ottiene l’indirizzo della rete?
Mettendo tutti zeri nell’indirizzo IP a destra della linea si ottiene l’indirizzo di rete

192 168 0 0
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0

255 255 252 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 0 0 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

L’indirizzo di rete quindi è 192.168.0.0 /22

Come si ottiene il primo indirizzo utile sulla rete?


Accendendo solo l’ultimo bit a destra della linea:

192 168 0 1
1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1

255 255 252 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 0 0 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina


Il primo indirizzo utile della rete è: 192.168.0.1

Come si ottiene l’ultimo indirizzo utile sulla rete?


Accendendo tutti i bit a destra della linea escluso l’ultimo:

192 168 3 254


1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 1 1 . 1 1 1 1 1 1 1 0

255 255 252 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 0 0 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

L’ultimo indirizzo utile della rete è: 192.168.3.254

Come si ottiene il broadcast della nostra rete?


Accendendo tutti i bit a destra della linea:

192 168 3 255


1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 1 1 . 1 1 1 1 1 1 1 1

255 255 252 0


1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 0 0 . 0 0 0 0 0 0 0 0

Nome Rete Nome Macchina

Il nostro broadcast è: 192.168.3.255

Conclusioni:
L’indirizzo di rete è 192.168.0.0 /22
Il primo indirizzo utile è: 192.168.0.1
L’ultimo è: 192.168.3.254
Quindi la mia rete può avere al massimo 1022 hosts (PC, switch, ecc.)
Il broadcast è: 192.168.3.255

Il broadcast significa “tutti gli appartenenti alla rete”. Il broadcast quindi serve per fare una
comunicazione a tutti gli host della rete indicando un unico destinatario: 192.168.3.255.

Questi calcoli possono essere svolti in modo semplice e veloce scaricando un software di subnet
calculator (per esempio Subnet Calculator, Tech-FAQ.com)
Quali sono gli indirizzi per le reti private?

Possono essere indirizzi IP privati:


10. x. x. x /8
172.16. x. x /12
192.168. x. x /16

Nessuno ci vieta di subnettare le reti che sono messe a disposizione per gli enti privati:

Per esempio posso subnettare:


10.0.70.0 /24
Il quale avrà come primo indirizzo utile 10.0.70.1, come ultimo 10.0.70.254 e come broadcast
10.0.70.255.
Quindi avrò 254 host disponibili, invece di avere, nel caso di 10.0.70.0 /8, ben 16777214.
Altro esempio:

172.16.30.0 /23
Primo indirizzo utile: 172.16.30.1
Ultimo: 172.16.31.254
Broadcast: 172.16.31.255

Quindi avrò a disposizione 510 host.


Se mettiamo in rete, per esempio con uno switch, diversi dispositivi con una subnet mask diversa,
questi dispositivi comunicheranno soltanto con altri dispositivi che avranno lo stesso tipo di
sottorete:

Esempio:
192.168.50.32 /23
A 192.168.51.12 /23
192.168.51.23 /23

192.168.50.5 /24
B
192.168.50.10 /24

192.168.50.11 /24
In questo esempio i dispositivi con subnet /23 riescono a comunicare perfettamente con gli indirizzi
della sottorete /24 solo se sono del tipo 192.168.50.x. Se invece sono del tipo 192.168.51.x
riusciranno ad inviare il pacchetto a tutti gli host 192.168.50.x /24, questi ultimi però non
riusciranno a rispondere perché non riconoscono i 192.168.51.x come appartenenti alla loro rete.

Altro esempio:

192.168.48.60 /22 192.168.51.63 /22

192.168.48.61 /22

192.168.49.31 /22 192.168.50.32 /23 192.168.51.12 /23


192.168.50.20 /22 192.168.51.23 /23
192.168.50.5 /24
192.168.51.51 /23
192.168.50.10 /24

192.168.50.11 /24
A B C

In questo secondo esempio i dispositivi con subnet /22 (gruppo A) riescono a comunicare
perfettamente con gli indirizzi della sottorete /23 (gruppo B) solo se sono del tipo 192.168.50.x o
192.168.51.x. Se invece sono del tipo 192.168.48.x o 192.168.49.x riusciranno ad inviare il
pacchetto a tutti gli host 192.168.50.x /23 o 192.168.51.x /23, i quali però non riusciranno a
rispondere perché non riconoscono i 192.168.48.x e i 192.168.49.x come appartenenti alla loro
stessa rete.
I dispositivi con subnet /22 riescono a comunicare perfettamente anche con gli indirizzi della
sottorete /24 (gruppo C) solo se sono del tipo 192.168.50.x. Se invece sono del tipo 192.168.48.x,
192.168.49.x o 192.168.51.x riusciranno ad inviare il pacchetto a tutti gli host 192.168.50.x /24, i
quali però non riusciranno a rispondere perché non riconoscono i 192.168.48.x, 192.168.49.x e
192.168.51.x come appartenenti alla loro rete.

Stessa cosa per i dispositivi con subnet /23 (gruppo B) che riescono a comunicare perfettamente con
gli indirizzi della sottorete /24 (gruppo C) solo se sono del tipo 192.168.50.x. Se invece sono del
tipo 192.168.51.x riusciranno ad inviare il pacchetto a tutti gli host 192.168.50.x /24, i quali però
non riusciranno a rispondere perché non riconoscono i 192.168.51.x come appartenenti alla loro
stessa rete.
Esempio con 172.16.0.0

172.16.0.1 /12 172.18.0.3 /12

172.31.0.23 /12
172.16.0.30 /14
172.25.0.51 /12
172.19.0.32 /14

172.17.0.35 /14
B
A

In questo esempio i dispositivi con subnet /12 riescono a comunicare perfettamente con gli indirizzi
della sottorete /14 solo se sono del tipo 172.16.0.x fino a 172.19.255.x. Se invece sono del tipo da
172.20.0.x fino a 172.31.255.x riusciranno ad inviare il pacchetto a tutti gli host /14, questi ultimi
però non riusciranno a rispondere perché non riconoscono gli indirizzi da 172.20.0.x fino a
172.31.255.x come appartenenti alla loro rete.

Open Systems Interconnection (livello ISO/OSI)

L'Open Systems Interconnection è uno standard stabilito nel 1978 che stabilisce una pila di
protocolli in 7 livelli.
In particolare ISO/OSI è costituito da strati o livelli (layer), che racchiudono uno o più aspetti fra
loro correlati della comunicazione fra due nodi di una rete. I layers sono in totale 7 e vanno dal
livello fisico (ossia cavo o onde radio) fino al livello delle applicazioni, attraverso cui si realizza la
comunicazione di alto livello.

7) Applicazione ----- Dati


Livello 7: Applicazione Host 6) Presentazione ----- Dati
Livello 6: Presentazione Layers 5) Sessione ----- Dati
Livello 5: Sessione
Livello 4: Trasporto 4) Trasporto ----- Segmenti
Livello 3: Rete Media 3 )Rete ----- Pacchetti
Livello 2: Datalink Layers 2 )Datalink ----- Frames
Livello 1: Fisico
1) Fisico ----- Bits

ISO/OSI è stato progettato per permettere la comunicazione in reti a ' commutazione di pacchetto' ,
del tutto simili al paradigma TCP/IP. La differenza sostanziale fra TCP/IP e ISO/OSI consiste nel
fatto che nel TCP/IP i layer di presentazione e sessione sono esterni alla pila di protocolli, i layer
sono dunque solo 5 (applicazione, trasporto, rete, datalink e fisico) e i layer di sessione e
presentazione sono assenti perché sono implementati (eventualmente) in una applicazione esterna.
Livello 1: fisico
Obiettivo: trasmettere un flusso di dati non strutturati attraverso un collegamento fisico,
occupandosi della forma e del voltaggio del segnale. Ha a che fare con le procedure meccaniche e
elettroniche necessarie a stabilire, mantenere e disattivare un collegamento fisico.
Semplicemente: si occupa di controllare la rete, gli hardware che la compongono e i dispositivi che
permettono la connessione.
In questo livello si decidono:
Le tensioni scelte per rappresentare i valori logici
La durata in microsecondi del segnale elettrico che identifica un bit
L' eventuale trasmissione simultanea in due direzioni
La forma e la meccanica dei connettori usati per collegare l' hardware al mezzo trasmissivo
Livello 2: datalink
Obiettivo: permettere il trasferimento affidabile di dati attraverso il livello fisico. Invia frame di dati
con la necessaria sincronizzazione ed effettua un controllo degli errori e delle perdite di segnale.
Tutto ciò consente di far apparire, al livello superiore, il mezzo fisico come una linea di
trasmissione esente da errori di trasmissione.
Questo livello si occupa di formare i dati da inviare attraverso il livello fisico, incapsulando i dati in
un pacchetto provvisto di header (intestazione) e tail (coda), usati anche per sequenze di controllo.
Questa frammentazione dei dati in specifici pacchetti è detta framing e i singoli pacchetti sono i
frame.
Per ogni pacchetto ricevuto, il destinatario invia al mittente un pacchetto ACK (acknowledgement,
conferma) contenente lo stato della trasmissione: il mittente deve ripetere l' invio dei pacchetti mal
trasmessi e di quelli che non hanno ricevuto risposta. Per ottimizzare l' invio degli ACK, si usa una
tecnica detta Piggybacking, che consiste nell' accodare ai messaggi in uscita gli ACK relativi ad una
connessione in entrata, per ottimizzare l' uso del livello fisico. I pacchetti ACK possono anche essere
raggruppati e mandati in blocchi.
Questo livello si occupa anche di controllare il flusso di dati: in caso di sbilanciamento di velocità
di trasmissione, si occupa di rallentare l' opera della macchina più veloce, accordandola all' altra e
minimizzando le perdite dovute a sovraccarico.
La sua unità dati fondamentale è il frame.
Livello 3: rete
Obiettivo: rende i livelli superiori indipendenti dai meccanismi e dalle tecnologie di trasmissione
usate per la connessione. Si occupa di stabilire, mantenere e terminare una connessione, garantendo
il corretto e ottimale funzionamento della sottorete di comunicazione.
È responsabile di:
routing: scelta ottimale del percorso da utilizzare per garantire la consegna delle informazioni
gestione della congestione: evitare che troppi pacchetti arrivino allo stesso router
contemporaneamente
indirizzamento
conversione dei dati nel passaggio fra una rete ed un' altra con diverse caratteristiche. Deve, quindi:
tradurre gli indirizzi
valutare la necessita'di frammentare i dati se la nuova rete ha una diversa Maximum Transmission
Unit (MTU)
valutare la necessita'di gestire diversi protocolli attraverso l' impiego di gateway
La sua unità dati fondamentale è il pacchetto.
Livello 4: trasporto
Obiettivo: permettere un trasferimento di dati trasparente e affidabile (implementando anche un
controllo degli errori e delle perdite) tra due host. È il primo livello realmente end-to-end, cioè da
host sorgente a destinatario.
A differenza dei livelli precedenti, che si occupano di connessioni tra nodi contigui di una rete, il
Trasporto (a livello logico) si occupa solo del punto di partenza e di quello di arrivo.
Si occupa anche di effettuare la frammentazione dei dati provenienti dal livello superiore in
pacchetti, detti '
segmenti'e trasmetterli in modo efficiente ed affidabile usando il livello rete ed
isolando da questo i livelli superiori. Inoltre, si preoccupa di ottimizzare l'
uso delle risorse di rete e
di prevenire la congestione.
La sua unità dati fondamentale è il messaggio.
Livello 5: sessione
Obiettivo: controllare la comunicazione tra applicazioni. Stabilire, mantenere e terminare
connessioni (sessioni) tra applicazioni cooperanti.
Esso consente di aggiungere, ai servizi forniti dal livello di trasporto, servizi più avanzati, quali la
gestione del dialogo (mono o bidirezionale), la gestione del token (per effettuare mutua esclusione)
o la sincronizzazione (inserendo dei checkpoint in modo da ridurre la quantità di dati da
ritrasmettere in caso di gravi malfunzionamenti).
Si occupa anche di inserire dei punti di controllo nel flusso dati: in caso di errori nell'
invio dei
pacchetti, la comunicazione riprende dall' ultimo punto di controllo andato a buon fine.
Livello 6: presentazione
Obiettivo: trasformare i dati forniti dalle applicazioni in un formato standardizzato e offrire servizi
di comunicazione comuni, come la crittografia, la compressione del testo e la riformattazione.
Esso consente di gestire la sintassi dell'informazione da trasferire. E sono previste tre diverse
sintassi:
astratta (definizione formale dei dati che gli applicativi si scambiano),
concreta locale (come i dati sono rappresentati localmente)
di trasferimento (come i dati sono codificati durante il trasferimento).
Livello 7: applicazione
Obiettivo: interfacciare utente e macchina.
Fornisce un insieme di protocolli che operano a stretto contatto con le applicazioni. È errato
identificare un'applicazione utente come parte del livello applicazione.
I protocolli delle applicazioni tipiche di questo livello realizzano operazioni come:
Trasferimento di file
Terminale virtuale
Posta elettronica

Suite TCP/IP
La suite di protocolli Internet è un insieme di protocolli di rete che implementa la pila di
protocolli su cui funziona Internet.
È chiamata anche suite di protocolli TCP/IP, in funzione dei due più importanti protocolli in essa
definiti: il Transmission Control Protocol (TCP) e l'Internet Protocol (IP).
Tale suite può essere descritta per analogia con il modello OSI, che descrive i livelli della pila di
protocolli.
Rispetto allo standard ISO/OSI nel TCP/IP i layer sono solo 5 (applicazione, trasporto, rete,
datalink e fisico):

Applicazione Applicazioni e Servizi


Trasporto UDP TCP

IP ICMP ARP RARP


Rete (Internet)
RIP OSPF EGP BGP
Datalink (Interfaccia rete)
Driver di Rete e NIC
Fisico (Hardware)
Comunicazione in Internet

Una informazione attraversa tutti i livelli necessari:

Host A Host B

Applicazione
Router Router Applicazione
Trasporto Trasporto
IP IP
Rete Rete
Int. rete/ Int. rete/
Interfaccia rete/ Hardware Hardware Interfaccia rete/
Hardware Hardware

Rete 1 Rete 3

Transmission Control Protocol (TCP)


Transmission Control Protocol (TCP) è un protocollo di livello di trasporto della suite di
protocolli Internet. Su di esso si appoggiano gran parte delle applicazioni Internet.
Il TCP può essere classificato al livello trasporto (OSI livello 4) del modello di riferimento OSI, e di
solito è usato in combinazione con il protocollo di livello rete (OSI livello 3) IP.
Il TCP è stato progettato per utilizzare i servizi del protocollo IP e costruire un canale di
comunicazione affidabile tra due processi applicativi. Alcune funzionalità di TCP sono vitali per
il buon funzionamento complessivo di una rete IP.

Internet Protocol (IP)


Internet Protocol (IP) è il protocollo di rete su cui si basa la rete Internet.
IP è un protocollo di rete a pacchetto; secondo la classificazione ISO/OSI è di livello rete (3).
IP è un protocollo di interconnessione di reti (Inter-Networking Protocol), nato per interconnettere
reti eterogenee per tecnologia, prestazioni, gestione. Pertanto IP è spesso implementato sopra altri
protocolli di livello rete, come Ethernet.
La versione correntemente usata del protocollo IP è detta anche IPv4 per distinguerla dalla più
recente IPv6, nata dall' esigenza di gestire meglio il crescente numero di computer connessi ad
Internet.
I protocolli di trasporto utilizzati su IP sono soprattutto TCP e UDP.

Un esempio di funzionamento della suite TCP/IP


Il protocollo di trasporto TCP utilizza IP, e fornisce un canale di trasferimento dati affidabile al
protocollo di Livello applicazioni HTTP.
TCP nell' invio dei pacchetti usa il meccanismo della Window. Una serie di pacchetti viene inviata
da TCP seguendo delle regole ben precise:
1) Ad ogni pacchetto spedito il trasmettitore fa partire un timeOut.
2) Il Ricevitore invia per ogni pacchetto ricevuto un ACK indicando la sequenza dell' ultimo
pacchetto ricevuto correttamente.
3) Il trasmettitore considera quindi spediti tutti i pacchetti successivi.
4) Se il timeout scade, TCP ritrasmette il pacchetto

Questa è una tecnica molto importante perché fornisce un canale di comunicazione affidabile.
Inoltre TCP contiene meccanismi per gestire la congestione ed il controllo di flusso.
Quando ci vogliamo collegare con il nostro browser a un server web, stabiliamo un collegamento
(virtuale) a livello applicazione. Il livello di trasporto si occupa dei dettagli del livello applicazione.
Al livello di trasporto il protocollo TCP mette in coda i messaggi delle applicazioni (browser e
server) li trasmette sotto forma di pacchetti; il buon fine della spedizione è attestato da una ricevuta
di ritorno. Anche questo è un collegamento virtuale tra le due applicazioni, i cui dettagli sono
demandati al livello di rete.
Al livello di rete il protocollo IP decide quale strada seguire per trasmettere effettivamente i
messaggi da un computer all' altro. Un computer spedisce, l' altro riceve, ma è un collegamento
virtuale tra i due computer remoti, dei cui dettagli si occupa il livello di collegamento.
Al livello di collegamento si decide come fare il trasferimento del messaggio per ogni singolo
tratto del percorso: dal computer del browser al primo router, dal primo router al secondo, dal
secondo al terzo e dal terzo al computer del server. Questo è un collegamento virtuale tra due
computer (o router) adiacenti. I dettagli fisici sono lasciati all' ultimo livello.
Il livello fisico, che è l'
ultimo, trasmette il messaggio sul cavo sotto forma di impulso elettrico.
Questo è l' unico livello in cui avviene una trasmissione effettiva.
Per consentire queste comunicazioni, ad ogni singola macchina sulla rete è assegnato un indirizzo
per ogni livello: Un indirizzo MAC per ogni scheda di rete (livello di collegamento), un indirizzo IP
(livello di rete), un numero di porta (livello di trasporto).

A cosa serve lo switch?


Lo switch è un dispositivo di rete che inoltra i pacchetti (frames) in arrivo da una qualsiasi delle sue
porte soltanto a quella cui è collegato il destinatario del pacchetto (frame).
Per decidere su quale porta inoltrare un pacchetto (frame) ricevuto, lo switch possiede una funzione
di instradamento, cioè contiene una tabella di inoltro i cui elementi sono gli indirizzi mac dei singoli
host presenti sulla rete. Attraverso questa tabella (chiamata forwarding database) lo switch
conosce su quale porta si trova un determinato indirizzo.
Alcuni pacchetti (frames) hanno una destinazione particolare, il broadcast, che indica che sono
destinati a tutti gli host della rete. Uno switch inoltra questi pacchetti (frames) su tutte le porte.
Lo switch opera al livello datalink del modello di riferimento ISO/OSI.

Che cos’è il Mac Address?


Il Mac Address (o indirizzo fisico) è un codice di 48 bit assegnato in modo univoco ad una scheda
di rete ethernet. È, in pratica, il “nome” di un dispositivo di rete.
A cosa serve il router?
Nella tecnologia delle reti informatiche un router, voce inglese, in italiano è letteralmente
l'instradatore, è un dispositivo di rete che si occupa di instradare pacchetti informativi lavorando al
livello 3 (rete) del modello OSI.
La caratteristica fondamentale dei router è che la funzione di instradamento è basata sugli indirizzi
di livello 3 (rete) del modello OSI (corrispondente al livello IP dello stack TCP/IP), a differenza
dello switch che instrada sulla base degli indirizzi di livello 2 (collegamento) "MAC". Gli elementi
della tabella di instradamento (o Routing Table) non sono quindi singoli host ma intere reti. Questo
permette di gestire reti anche molto grandi facendo crescere le tabelle di instradamento in modo
meno che lineare rispetto al numero di host.
Per garantire la massima affidabilità e lo sfruttamento ottimale dei collegamenti in caso di reti
complesse costituite da molte sottoreti diverse e variamente interconnesse, i router possono
costruire le loro tabelle di instradamento autonomamente in modo dinamico, scambiandosi
periodicamente informazioni su come raggiungere le varie reti che collegano l' un l'
altro comprese le
eventuali nuove sottoreti.
Molti router destinati al mercato domestico incorporano la funzionalità di access point per reti
wireless Wi-Fi.
Alcuni router possiedono anche un firewall incorporato, poiché il punto di ingresso/uscita di una
rete verso l'esterno è ovviamente il luogo migliore dove effettuare controlli sui pacchetti in transito.
I router possono essere normali computer che fanno girare un software apposito (gateway), o -
sempre più spesso - apparati specializzati, dedicati a questo solo scopo.

A cosa serve il firewall?


In Informatica, nell' ambito delle reti di computer, un firewall è un componente passivo di difesa
perimetrale che può anche svolgere funzioni di collegamento tra due o più tronconi di rete.
Usualmente la rete viene divisa in due sottoreti: una, detta esterna, comprende l' intera Internet
mentre l' altra interna, detta LAN (Local Area Network), comprende una sezione più o meno grande
di un insieme di computer locali. In alcuni casi è possibile che si crei l'esigenza di creare una terza
sottorete detta DMZ (o zona demilitarizzata) adatta a contenere quei sistemi che devono essere
isolati dalla rete interna ma devono comunque essere protetti dal firewall.
Una prima definizione chiusa di firewall è la seguente:
Apparato di rete hardware o software che filtra tutti i pacchetti entranti ed uscenti, da e verso una
rete o un computer, applicando regole che contribuiscono alla sicurezza della stessa.
In realtà un firewall può essere realizzato con un normale computer (con almeno due schede di rete
e software apposito), può essere una funzione inclusa in un router o può essere un apparato
specializzato. Esistono inoltre i cosiddetti "firewall personali", che sono programmi installati sui
normali calcolatori, che filtrano solamente i pacchetti che entrano ed escono da quel calcolatore; in
tal caso viene utilizzata una sola scheda di rete.
La funzionalità principale in sostanza è quella di creare un filtro sulle connessioni entranti ed
uscenti, in questo modo il dispositivo innalza il livello di sicurezza della rete e permette sia agli
utenti interni che a quelli esterni di operare nel massimo della sicurezza. Il firewall agisce sui
pacchetti in transito da e per la zona interna potendo eseguire su di essi operazioni di:
- controllo
- modifica
- monitoraggio
Questo grazie alla sua capacità di "aprire" il pacchetto IP per leggere le informazioni presenti sul
suo header, e in alcuni casi anche di effettuare verifiche sul contenuto del pacchetto.