Corso di Reti di Calcolatori
Prof. Orazio Mirabella
HUB Eth. 10Base-T SWITCH EthernetHUB Eth. 10Base-T
HUB Eth. 10Base-T switch uplink
global server
HUB Eth. 10Base-T SWITCH Ethernet
HUB Eth. 10Base-T
HUB Eth. 10Base-T HUB Eth. 10Base-T
SWITCH Ethernet
HUB Eth. 10Base-T
HUB Eth. 10Base-T F D D I backbone
porta Fddi
IP
TCP/IP Cenni Storici
• Internet nasce come esperimento militare nel 1969 con il nome di ARPANET.
• Il protocollo TCP/IP nasce nel 1980, insieme ad UNIX, e viene utilizzato su ARPANET.
• Nel 1987 la rete ARPANET fu affiancata da una nuova struttura che andò a formare la NFSNET ( National Foundation of Science).
• In seguito al posto di ARPANET si sostituisce un’altra NFSNET, ed oggi le due reti formano il nucleo di Internet.
• Nel 1990 Internet contava 1.000 reti locali connesse, oggi siamo quasi al limite teorico di 1.000.000di reti.
Architettura TCP/IP
n TCP - Transmission Control Protocol
n UDP - User Datagram Protocol
n IP - Internet Protocol
n ICMP - Internet Control Message Protocol
n ARP - Address Resolution Protocol
n RARP - Reverse Address Resolution Protocol
Applicazione Presentazione
Sessione Trasporto
Rete Dati Fisico
Applicazione
Trasporto Internet Interfaccia rete
Hardware
Protocolli e servizi applicativi
TCP IP
UDP ICMP ARP RARP Routing
Driver di rete Scheda di rete (NIC)
OSI TCP/IP Componenti di TCP/IP
Demultiplexing dello strato di interfaccia
Trama
Funzione di demultiplexing
Protocollo di Risoluzione
indirizzi
Protocollo di Risoluzione indirizzi
Invertiti
Protocollo Internet
Protocollo per i messaggi di controllo Strato Internet
Strato interfaccia di rete
IP Internet Protocol
L’internet protocol IP si occupa di come i datagram (64kbyte teorici 1,5kbyte reali) del livello di trasporto viaggiano attraverso la rete. Infatti il livello di trasporto divide in datagram il flusso di dati che riceve dai livelli superiori e li passa al livello di rete sottostante in questo caso l’IP.
I pacchetti trasferiti dal livello di rete sono detti datagram IP. Questi datagram IP sono costituiti da 2 parti:
nPreambolo
nParte Testo
Preambolo IP
Preambolo IP
Prima parola (32 bit):
•Il primo nibble contiene il numero di versione del protocollo.
•Il secondo nibble (4 bit, dal bit 5 al 8) è dettoIHLe contiene la lunghezza espressa in parole da 32 bit del preambolo stesso poiché la sua lunghezza complessiva non è nota a priori.
•Il secondo byte (8 bit) è detto campoType of service, indica il tipo di servizio che l’host vuole comunicare alla rete.
Questi 8 bit sono cosi suddivisi da sinistra verso destra : -3 bit di precedenza(dal bit 9 al 11),
-3 bit di flag(Delay,Througput,Reliability) (dal bit 12 al 14) , -2 bit inutilizzati( dal bit 15 al 16).
Gli ultimi 2 byte indicano la lunghezza (65535 bit max)
Preambolo IP
Seconda parola (32 bit):
•Campo di identificazione, permette all’host di destinazione di capire se un frammento giunto appartiene ad un determinato datagram.
•DF(bit 18) è detto (Don’t fragment) e specifica al router di non frammentare ulteriormente il datagram.
•MF (bit 19) (more fragments) indica la presenza di ulteriori frammenti.
•Il fragment offset, indica la posizione relativa del frammento rispetto al datagram. Ogni frammento deve essere un multiplo di 8 byte che è l’unità elementare di frammentazione, tranne l’ultimo che può non esserlo.
Preambolo IP
Terza parola (32 bit):
•Contatore time to live: indica il tempo di vita di ogni singolo datagram.
•Il secondo byte delle terza parola (dal bit 9 al bit 16) indica il tipo di protocollo al livello di trasporto a cui verrà affidato il datagram.
•Gli ulltimi due byte rappresentano header cheksum, che verifica se ci sono stati errori nel solo preambolo.
Quarta e Quinta parola (32 bit):
Le ultime due parole composte da 4 byte indicano rispettivamente il nodo di origine e quello di destinazione (Source Address e Destination Address).
Preambolo IP
Parte opzionale. Sono definite 5 tipi di opzioni:
Security , indica la segretezza delle informazioni, il router dovrebbe evitare di instradare questi datagram verso paesi a rischio.
Strict source routing , è fornito come sequenza di indirizzi IP l’intero percorso che il datagram deve seguire.
Loose source routing, si indicano quali router deve attraversare il datagram ma non si specificano tutti.
Record route, il router in questo campo segna il proprio indirizzo IP , in modo da poter risalire al percorso del pacchetto.
Timestamp, è la stessa opzione precedente con l’aggiunta del tempo in un numero di 32 bit indicante una data.
Frammentazione e riassemblaggio IP
üIl problema della frammentazione nasce quando la dimensione dei pacchetti dell’utente è maggiore della dimensione massima dei pacchetti previsti dalla rete cui accede direttamente.
üL’IP si occupa proprio di frammentare i pacchetti in modo tale che possano attraversare tutti i tipi di rete. In genere l’host conosce solo la propria dimensione massima, mentre i gateway conoscono la dimensione massima di tutte le reti locali a cui sono direttamente connesse.
üUna volta frammentato, l’IP deve provvedere a riunire in modo corretto i frammenti nel pacchetto originario. Esistono due possibili strategie : trasparente(intranet)e non trasparente(internet).
Frammentazione e riassemblaggio IP
INTRANET: L’host frammenta in pacchetti , il router riassembla completamente il pacchetto prima di spedirlo alla rete successiva a seconda della dimensione massima di quest’ultima.
Il metodo intranet utilizza al meglio la dimensione massima della rete cui deve spedire il pacchetto, ma perde il tempo relativo alla ricostruzione dell’intero pacchetto, che può avvenire ad ogni passaggio tra un router ed un altro.
Frammentazione e riassemblaggio IP
INTERNET: l’host frammenta e il router frammenta ulteriormente se deve spedire in reti che abbiano dimensioni massime inferiori al frammento.
La strategia internet ha una gestione più veloce ma non sfrutta al meglio le capacità della rete che viene attraversata dal frammento.
Indirizzi IP
nEsistono almeno due versioni di questi tipi di indirizzo: IPv4 e IPv6. Il primo è quello ancora ufficialmente in uso, ma a causa del rapido esaurimento degli indirizzi disponibili nella comunità Internet, sta per essere introdotto il secondo.
Indirizzi IPv4 :Gli indirizzi IP versione 4, cioè quelli attualmente ancora in uso, sono composti da una sequenza di 32 bit convenzionalmente suddivisi in quattro gruppetti di 8 bit e rappresentati in modo decimale separati da un punto. Questo tipo di rappresentazione è definito come: notazione decimale puntata.
Per esempio, 00000001.00000010.00000011.00000100 corrisponde al codice 1.2.3.4
Classi di indirizzi IP
Gli indirizzi IP sono stati classificati in cinque gruppi, a partire dalla lettera A fino alla lettera E .
n Classe A (IP da 1.x.x.x a 126.x.x.x)
Gli indirizzi di classe A hanno il primo bit a zero, utilizzano i sette bit successivi per identificare l'indirizzo di rete e lasciano i restanti 24 bit per identificare gli host.
n Classe B (IP da 128.1.x.x a 191.254.x.x)
Gli indirizzi di classe B hanno il primo bit a uno e il secondo a zero, utilizzano i 14 bit successivi per identificare l'indirizzo di rete e lasciano i restanti 16 bit per identificare gli host.
n Classe C (IP da 192.0.1.x a 223.255.254.x)
Gli indirizzi di classe C hanno i primi due bit a uno e il terzo a zero, utilizzano i 21 bit successivi per identificare l'indirizzo di rete e lasciano i restanti 8 bit per identificare gli host.
n Classe D
Gli indirizzi di classe D hanno i primi tre bit a uno e il quarto a zero.
Si tratta di una classe destinata a usi speciali.
1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
n Classe E
Gli indirizzi di classe E hanno i primi quattro bit a uno e il quinto a zero. Si tratta di una classe destinata a usi speciali.
11110xxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
Classi di indirizzi IP
Classi di indirizzi IP
Gli dirizzi IP sono assegnati dal NIC (Network Information Center).
La classe scelta dipende dalle caratteristiche del richiedente
(dimensioni della rete e numero di host)
Alcuni indirizzi specificano una
particolare destinazione
Sottoreti
•Tutti gli host di una rete devono avere lostesso identificatore di rete.
•La crescita della rete può essere un problema
•Se il numero di host supera il max consentito occorreun altro indirizzo di rete(occorre contattare il NIC)
•Il nuovo identificatore di rete va annunciato al mondo
•Se un host si sposta da una rete all’altrava riconfigurato(avrà un nuovo indirizzo di rete che deve essere reso pubblico.
ISP=
Internet Service Provider
Sottoreti
I bit che seguono l'indirizzo di rete possono essere utilizzati per suddividere la rete in sottoreti. Si possono per esempio creare due sottoreti utilizzando i primi due bit che seguono l'indirizzo di rete:
xxxxxxxx.xxxxxxxx.xxxxxxxx.00000000(in decimale xxx.xxx.xxx.0) Indirizzo di rete.
xxxxxxxx.xxxxxxxx.xxxxxxxx.01000000(in decimale xxx.xxx.xxx.64) Indirizzo della prima sottorete.
xxxxxxxx.xxxxxxxx.xxxxxxxx.10000000(in decimale xxx.xxx.xxx.128) Indirizzo della seconda sottorete.
In questo esempio, per ogni sottorete, resterebbero 6 bit a disposizione per identificare i computer host: da 000001 a 111110(in decimale da 1 a 62).
Maschera di rete o netmask
Il meccanismo utilizzato per distinguere la parte dell'indirizzo che identifica la rete è quello della maschera di reteo netmask.
La maschera di rete è un indirizzo che viene abbinato all'indirizzo da analizzare con l'operatore booleano AND, per filtrare la parte di bit che interessano. Una maschera di rete che consenta di classificare i primi 24 bit come indirizzo di rete sarà:
11111111.11111111.11111111.00000000 Che coincide col codice 255.255.255.0
Nel caso delle sottoreti, la netmask è definita in modo da azzerare solo l’indirizzo di host e permettere al Router di identificare la rete e sottorete.
ICMP (Internet Control Message Protocol)
permette ai sistemi agli estremi di una connessione ed ai router di riportare condizioni di errore e di fornire informazioni su circostanze inattese, eseguendo i seguenti compiti: testing di affidabilità, controllo di congestione, notifica di route – change, misurazioni di performance, subnet addressing.
ARP
Gli indirizzi IP non possono essere utilizzati per spedire al livello fisico i pacchetti poiché non sono compresi dal hardware del livello sottostante: il data link.
Gran parte degli host è collegata ad una LAN attraverso una scheda di interfaccia che capisce unicamente gli indirizzi LAN.
Un tipico esempio sono le schede Ethernet, tutte hanno un indirizzo univoco di 48 bit hardware e ovviamente non sono in grado di comprendere gli indirizzi IP di 32 bit.
C
A B
E s e m p i o : A R P
L ’ A R P i n o g n i s i s t e m a g e s t i s c e u n a c a c h e A R P c o n t e n e n t e l e c o r r i s p o n d e n z e t r a i n d i r i z z i d i I n t e r n e t e I n d i r i z z i f i s i c i H W . I p a s s i d a s e g u i r e p e r o t t e n e r e l ’ i n d i r i z z o f i s i c o s o n o :
üI l p r o c e s s o A R P i n e s e c u z i o n e n e l s i s t e m a A d i f f o n d e u n p a c c h e t t o A R P s u l l a L A N c o n t e n e n t e l ’ i n d i r i z z o d i i n t e r r e t e d i B .
üI p r o c e s s i A R P i n e s e c u z i o n e s u t u t t i i s i s t e m i d e l l a L A N r i c e v o n o q u e s t o p a c c h e t t o .
üI l s i s t e m a B r i c o n o s c e i l s u o p r o p r i o i n d i r i z z o i n t e r n e t n e l p a c c h e t t o d i f f u s o e r i s p o n d e a l s i s t e m a c h e h a i n v i a t o t a l e p a c c h e t t o c o n u n a l t r o c o n t e n e n t e i l p r o p r i o i n d i r i z z o f i s i c o B .
üI l s i s t e m a A u n a v o l t a r i c e v u t o i l p a c c h e t t o d a B , m e m o r i z z a i l s u o i n d i r i z z o n e l l a c a c h e A R P .
üI l s i s t e m a A p u ò a d e s s o i n v i a r e i p a c c h e t t i a l s i s t e m a B .
C
A B
RARP (Reverse Address Resolution Protocol)
Protocollo correlato con l’ARP, ma utilizzato per lo scopo opposto.
consente ad un sistema che è a conoscenza solo del suo indirizzo fisico HW, di ottenere l’indirizzo IP che dovrebbe usare nella comunicazione con altri sistemi.
Per rendere operativo il RARP, almeno un sistema nella rete locale deve essere designato come server RARP.
Una Workstation ottiene un indirizzo internet diffondendo sulla rete un pacchetto RARP che fornisce l’indirizzo fisico HW della stazione di lavoro richiesta.
Il pacchetto RARP richiede ad un qualsiasi server RARP sulla LAN di rispondere con l’indirizzo di internet associato a quell’indirizzo fisico.
C
A B
BGP (Border Gateway protocol)
E’ usato per la comunicazione tra AS(sistemi autonomi). Lo scopo principale non è quello di minimizzare i tempi bensì di calcolare una distanza minima anche considerando che taluni AS non debbono essere attraversati.
Eventuali vincolivengono configurati manualmente.
Le reti dal punto di vista dei router BGP sono catalogate in tre tipi:
•reti stub: hanno una sola connessione un BGP e quindi non possono essere utilizzate per il traffico in transito.
•reti multiconnesse: utilizzabili per il traffico in transito a meno che queste non rifiutino.
•reti di transito: backbone utilizzabili per il traffico in transito.
Ogni coppia di router BGP comunica tramite TCP, per avere comunicazioni affidabili.
BGP (Border Gateway protocol)
•BGP è un protocollo di tipo Distance Vector, diverso da RIP.
•Invece di registrare e scambiare i costi relativi a ogni destinazione, si fa riferimento all’intero cammino utilizzato.
•Ad ogni percorso è assegnato un punteggioche rappresenta la distanza.
•Un percorso che non soddisfa uno dei vincoli assume un valore infinito.
I nomi di dominio
n La gestione diretta degli indirizzi IP è piuttosto faticosa dal punto di vista umano.
n Per questo motivo si preferisce associare un nome agli indirizzi numerici. Il sistema attualmente utilizzato è il DNS (Domain Name System), ovvero il sistema dei nomi di dominio.
dominio root
|
|-com... (dominio com)
|-edu... (dominio edu)
|-org... (dominio org)
|-net... (dominio net)
|-it (dominio it)
| |-beta (dominio beta.it)
| | |-alfa (dominio alfa.beta.it)
| | | |-www (host www.alfa.beta.it) : : : :
Gli indirizzi della rete Internet sono organizzati ad albero in domini, sottodomini (altri sottodomini...), fino ad arrivare a identificare il computer host desiderato.
dominio root
|
|-com... (dominio com)
|-edu... (dominio edu)
|-org... (dominio org)
|-net... (dominio net)
|-it (dominio it)
| |-beta (dominio beta.it)
| | |-alfa (dominio alfa.beta.it)
| | | |-www (host www.alfa.beta.it)
: : : :
I nomi di dominio
Server DNS
n In un sistema di nomi di dominio (DNS), il problema più grande è quello di organizzare i così detti name servero DNS server.
n Si tratta di computer che si occupano di risolvere, ovvero trasformare, gli indirizzi mnemonici dei nomi di dominio in indirizzi numerici IP e viceversa.
n A livello di dominio root, si trovano alcuni server che si occupano di fornire gli indirizzi per raggiungere i domini successivi, cioè com, edu, org, net, it, ... A livello di questi domini ci saranno altri server (ogni dominio ha i suoi) che forniscono gli indirizzi per raggiungere i domini inferiori,.
n Un name server, per ottenere l'indirizzo di un host che si trova in un dominio al di fuori della sua portata, deve interpellare i name server a livello di root e mano a mano quelli di livello inferiore, fino a ottenere l'indirizzo cercato.