Internet
Introduzione alle comunicazioni tra computer
Attenzione!
Quella che segue è un’introduzione estremamente
generica che ha il solo scopo di dare un’idea
sommaria di alcuni concetti alla base di una rete di
computer. Per questo motivo molti argomenti sono
tralasciati e altri sono trattati sommariamente ed
estremamente semplificati.
Comunicazioni tra computer
●
Può accadere che sorga la necessità di trasferire
informazioni tra un computer ed un altro.
Circuito vs. pacchetti
●
Esistono due modelli di comunicazione:
–
Comunicazione tramite circuito: prima della
comunicazione viene stabilito un canale di comunicazione
dedicato tra mittente e destinatario che rimane attivo ed
esclusivo per tutta la durata della comunicazione (Ex: le
telefonate classiche)
– Comunicazione a pacchetti: la comunicazione viene
divisa in più pacchetti che viaggiano autonomamente su una rete
condivisa; ogni pacchetto contiene l'indirizzo di destinazione a
cui deve essere inviato il pacchetto stesso (ex: la posta).
●
Internet funziona tramite comunicazioni a
pacchetti.
Comunicazioni locali
●
●
Il sistema più semplice per interconnettere due o
più computer è attraverso una scheda di rete, cioè
una periferica in grado di trasmettere informazioni
attraverso una rete di comunicazione di vario tipo
ad altri adattatori presenti sulla stessa rete.
Il tipo di rete più diffuso è il modello
Ethernet su doppini intrecciati. Le
schede di rete di questo tipo sono
riconoscibili dal connettore RJ-45
ad otto contatti.
Connessione Ethernet
●
Spesso ai lati del connettore sono presenti due led
che indicano la presenza di un segnale di rete e
la velocità di comunicazione impostata.
Modello ISO/OSI
Il modello ISO/OSI è uno
schema che descrive gli
aspetti di una
comunicazione tra
computer a livelli
crescenti di astrazione. Si
compone di 7 livelli,
ognuno dedicato ad un
aspetto specifico della
comunicazione.
L7: Applicazione
L6: Presentazione
L5: Sessione
L4: Trasporto
L3: Rete (IP)
L2: Collegamento (MAC)
L1: Fisico
Modello TCP/IP
L7: Applicazione
Il modello
TCP/IP è
una
versione
semplificata
del modello
ISO/OSI.
L4: Applicazione
L6: Presentazione
L5: Sessione
L3: Trasporto
L4: Trasporto
L2: Rete
L3: Rete (IP)
L2: Collegamento (MAC)
L1: Collegamento
L1: Fisico
Il livello fisico
Il livello fisico descrive tutti gli aspetti relativi al
collegamento fisico degli adattatori di rete e alla
trasmissione dei segnali sul tipo di collegamento
utilizzato.
● Tipo di media: doppino, onde radio, etc.
● Tipo di segnali utilizzati per la trasmissione
● Tipo e forma degli adattatori
● Protocolli e segnali utilizzati per la gestione del
collegamento, ad esempio la negoziazione della
velocità ed il segnale di presenza rete
Il livello di collegamento (MAC)
Il livello di collegamento, detto a volte livello 2 o più
semplicemente livello MAC (Media Access
Control), descrive tutti gli aspetti relativi alla
comunicazione di informazioni tra due o più
adattatori presenti sulla stessa rete.
In particolare il livello MAC, definisce gli indirizzi
fisici degli adattatori, detti indirizzi MAC , da
utilizzare per identificare in maniera univoca i vari
adattatori presenti sulla rete e permettere
l'instradamento delle informazioni.
Indirizzi MAC
●
Un indirizzo MAC è una sequenza di 12 cifre
esadecimali raggruppate in 6 gruppi
(corrispondenti a 6 bytes) :
00:1A:4F:33:1D:01
●
L'indirizzo MAC e' univoco a livello mondiale e
definito al momento della fabbricazione
dell'adattatore. Questo permette di identificare in
maniera certa i destinatari dei pacchetti.
Comunicazione a livello MAC
●
●
●
●
A livello MAC le comunicazioni si svolgono a
pacchetti di lunghezza prefissata.
Ogni pacchetto viene marcato con l'indirizzo MAC
dell'adattatore a cui deve essere inviato il
pacchetto e quindi immesso sulla rete.
La rete a livello MAC presenta il pacchetto a tutti
gli adattatori connessi.
L'adattatore di destinazione riconosce il proprio
MAC all'interno del pacchetto, lo preleva e lo
invia ai livelli superiori per l'elaborazione.
Comunicazione a livello MAC/2
000000:000001
Mittente:
000000:000001
Destinatario: 000000:000002
E' per me!
Lo guardo!
Non è per me!
Lo ignoro!
000000:000002
000000:000003
Segmenti di rete vs. LAN
●
●
●
Un segmento di rete è un insieme di computer
interconnessi a livello MAC.
Una Local Area Network (LAN) è un insieme di
computer interconnessi ed amministrati da un
unico soggetto.
Una LAN è composta spesso da un solo segmento
di rete. A volte però può essere composta da più
segmenti collegati tra loro tramite routers,
computer dotati di più adattatori connessi a
segmenti diversi in grado di spostare, quando
necessario, i pacchetti da un segmento all'altro.
Il livello di rete (IP)
●
Il livello di rete, detto anche livello 3 o livello
network o più semplicemente livello IP (Internet
Protocol), definisce come i pacchetti devono
essere instradati a livello globale (Internet). In
particolare:
–
aggiunge un livello di indirizzamento dei pacchetti
gestibile localmente, detto indirizzamento IP.
Gli indirizzi IP
●
●
●
Un indirizzo IP è rappresentato tramite 4 numeri
compresi tra 0 e 255, separati da punti, ad es.:
10.0.0.1
L'amministratore locale di una LAN può assegnare
ad ogni adattatore un indirizzo IP diverso,
seguendo convenzioni definite a livello globale, ed
utilizzare questi indirizzi per identificare il
destinatario delle comunicazioni.
Può accadere, a causa di errori di configurazione,
che più computer abbiano lo stesso IP (conflitto di
IP), pregiudicando le comunicazioni tra questi.
Indirizzi IP vs. indirizzi MAC
●
●
●
All'interno di un segmento di rete i pacchetti
vengono sempre consegnati usando gli indirizzi
MAC.
Quando si usano gli indirizzi IP, prima della
trasmissione vera e propria occorre scoprire quale
indirizzo MAC è associato ad un dato indirizzo IP.
Il protocollo ARP (Address Resolution Protocol)
realizza l'associazione IP-MAC in maniera
dinamica e trasparente.
Protocollo ARP
000000:000001
10.0.0.1
Chi e' il
10.0.0.3?
000000:000002
10.0.0.2
Sono io il
10.0.0.3 ed ho
MAC
000000:000003!
000000:000003
10.0.0.3
Instradamento a livello IP
●
●
●
Le comunicazioni dirette tra computer a livello
MAC sono possibili solo tra computer connessi
allo stesso segmento di rete.
Un computer è in grado di sapere se un
destinatario è direttamente connesso oppure no
confrontando l'indirizzo IP del destinatario con il
proprio indirizzo IP e con la maschera di rete,
detta anche subnet mask.
Una subnet mask è composta da 4 numeri separati
dal punto, ad es.:
255.255.255.0
Gateway predefinito
●
●
Quando un computer deve comunicare con un
computer non connesso sul suo stesso segmento,
allora deve delegare la trasmissione al gateway
predefinito per il segmento.
Il gateway predefinito è un router connesso al
segmento per cui svolge la funzione di gateway,
che si preoccupa di consegnare i pacchetti diretti
verso l'esterno del segmento seguendo regole di
instradamento predefinite in vari modi.
IP vs. gateway predefinito
10.0.0.1
255.255.255.0
20.0.0.1 è lontano. Il mio
gateway è 10.0.0.254. Il
pacchetto lo mando a
lui!
10.0.0.254
255.255.255.0
10.0.0.254,
questo è per
il 20.0.0.1!
20.0.0.1,
questo viene
dal 10.0.0.1!
20.0.0.254
255.255.255.0
20.0.0.1
255.255.255.0
Instradamento su Internet
●
●
Per raggiungere un computer fuori dal proprio
segmento può essere necessario transitare
attraverso più routers, seguendo un percorso
all'interno di una maglia di collegamenti tra
routers che connette tutto lo spazio raggiungibile.
Quando un pacchetto raggiunge un router, viene
esaminato l'indirizzo IP di destinazione contenuto
nel pacchetto e quindi inoltrato verso il prossimo
router connesso più vicino alla destinazione finale,
seguendo regole di instradamento definite.
Instradamento su Internet/2
200.0.0.1 lo
conosco! Glielo
mando
10.0.0.1
255.255.255.0
10.0.0.254,
questo è per
il 200.0.0.1!
200.0.0.1 va
mandato a B
C
A
B
200.0.0.1
255.255.255.0
200.0.0.1 va
mandato a A
200.0.0.1 va
mandato a C
Nomi simbolici
●
●
●
Il sistema DNS (Domain Name System) permette
di indicare le destinazioni tramite nomi simbolici
del tipo:
marchi.usr.dsi.unimi.it.
Prima di spedire il pacchetto ad un nome
simbolico, il computer chiede ad un server
prefissato, il server DNS, il corrispondente
indirizzo IP associato al nome simbolico
Una volta risolto il nome simbolico in un indirizzo
IP, la comunicazione prosegue come sopra.
Nomi simbolici/2
10.0.0.1
dog.unimi.it è il
10.0.0.2
DNS,
chi è
dog.unimi.it?
foo.unimi.it → 10.0.0.1
dog.unimi.it → 10.0.0.2
cat.unimi.it → 10.0.0.3
pop.unimi.it → 10.0.0.4
Server DNS
Configurazione di rete
●
●
●
La configurazione di rete consiste nell'insieme
dei settaggi che occorrono al computer per usare la
rete: indirizzo IP, subnet mask, gateway
predefinito, server DNS ed altro.
Normalmente la configurazione di rete è impostata
staticamente dall'amministratore del computer.
Altre volte la configurazione viene caricata
dinamicamente attraverso il protocollo DHCP
(Dynamic Host Configuration Protocol): all'avvio
il computer chiede al server DCHP tutti i settaggi
che gli occorrono per connettersi alla rete.
Alcuni comandi su Windows
●
●
Dal prompt dei comandi di Windows è possibile
usare il comando ipconfig per verificare la
configurazione di rete correntemente impostata:
ipconfig /all
Dal prompt dei comandi è possibile verificare la
raggiungibilità di un IP o nome simbolico
attraverso il comando ping, es.:
ping marchi.usr.dsi.unimi.it
ping 159.149.145.177