Bianca Petretti - Le reti 1 La realtà nel mondo delle reti: OSI e TCP/IP Iniziamo ad esaminare due realtà importanti nel mondo delle reti: OSI Reference Model (E’ solo un modello di riferimento e non un’architettura. Alcuni protocolli sono stati definiti successivamente, in standard separati); Internet Protocol Suite (detta anche architettura TCP/IP o, piuttosto impropriamente, TCP/IP reference model). Un modello di riferimento è cosa diversa da un'architettura di rete:
49
Embed
La realtà nel mondo delle reti: OSI e TCP/IPpetrettibianca.altervista.org/files/OSI e TCP-IP.pdf · 2013-02-17 · IL TCP/IP Il TCP/IP è un’architettura di rete ideata con l’obiettivo
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Bianca Petretti - Le reti 1
La realtà nel mondo delle reti:
OSI e TCP/IP Iniziamo ad esaminare due realtà importanti nel mondo delle reti:
OSI Reference Model (E’ solo un modello di riferimento e non un’architettura. Alcuni protocolli sono stati definiti successivamente, in standard separati);
Internet Protocol Suite (detta anche architettura TCP/IP o, piuttosto impropriamente, TCP/IP reference model).
Un modello di riferimento è cosa diversa da un'architettura di rete:
Bianca Petretti - Le reti 2
Il modello di riferimento OSI
L'OSI (Open Systems Interconnection) Reference Model è un
modelo di riferimento di software di rete a livelli definito dalla ISO
(International Standard Organization), ed ha lo scopo di:
fornire uno standard per la connessione di sistemi aperti
fornire una base comune per lo sviluppo di standard per
l'interconnessione di sistemi
fornire un modello rispetto a cui confrontare le varie
architetture di rete
RETE APERTA rete a cui ci si può collegare da qualsiasi punto
geografico e con qualsiasi sistema tramite un mezzo di
comunicazione e opportuni protocolli.
Bianca Petretti - Le reti 3
Principi di progetto seguiti durante
lo sviluppo del modello OSI
Il modello OSI definisce sette livelli:
ogni livello deve avere un diverso grado di astrazione;
ogni livello deve avere una funzione ben definita;
la scelta dei livelli deve minimizzare il passaggio delle informazioni fra livelli;
occorre evitare troppe funzioni all’interno di un unico livello ed un numero troppo elevato di livelli.
Bianca Petretti - Le reti 4
I 7 livelli del modello OSI
Possiamo considerare i primi tre livelli come standard
per la comunicazione, in quanto si occupano della
gestione della sottorete di comunicazione,
dipendono dal gestore della rete e le applicazioni non
possono avere alcuna influenza su di essi.
I quattro livelli superiori invece si occupano
dell’elaborazione, in quanto permettono di creare
applicazioni indipendenti dalla rete di comunicazione.
Bianca Petretti - Le reti 5
Schematizzazione dei 7 livelli del modello OSI
Bianca Petretti - Le reti 6
Rappresentazione schematica dei
livelli gestiti lungo un cammino
Spesso, per visualizzare le competenze (in termini di livelli
gestiti) dei vari elaboratori sul cammino, si usano diagrammi
del tipo:
Bianca Petretti - Le reti 7
Il livello fisico del modello OSI
Si occupa della trasmissione dei bit dei dati lungo il mezzo fisico di
trasmissione. Gli aspetti di progetto sono:
volti a garantire che se parte un 1, arrivi effettivamente un 1 e non uno 0;
riguardanti le caratteristiche meccaniche, elettriche e procedurali delle interfacce di rete (componenti che connettono l'elaboratore al mezzo fisico) e le caratteristiche del mezzo fisico.
E’ a questo livello che si caratterizzano:
Valori della tensione per rappresentare 0 ed 1;
durata (in microsecondi) di un bit;
scelta della trasmissione simultanea in due direzioni oppure no;
forma dei connettori.
Bianca Petretti - Le reti 8
Il livello Data link del modello OSI
Lo scopo di questo livello è far si che un mezzo fisico
trasmissivo appaia, ai livelli superiori, come una linea
di trasmissione esente da errori di trasmissione
Funzionamento: i dati provenienti dal livello superiore vengono
spezzettati in frame (da qualche centinaia a qualche migliaia di byte);
i frame vengono inviati in sequenza;
si aspetta un acknowledgement frame (ack) per ogni frame inviato.
Bianca Petretti - Le reti 9
Il livello Network del modello OSI
Lo scopo del livello di rete è controllare il funzionamento della subnet di comunicazione
(linne e router). Inizialmente esso offriva solamente servizi orientati alla connessione,
successivamente fu aggiunta la modalità connectionless.
Sono di competenza di tale livello:
Il routing (scelta del percorso nella sottorete), che può essere statico (fissato ogni tanto e raramente variabile) o dinamico (continuamente aggiornato, anche da un pacchetto all'altro);
La gestione della congestione: che si verifica quando troppi pacchetti arrivano ad un router (es.: da molte linee in ingresso ad un unica linea di uscita);
L’accounting: gli operatori della rete possono far pagare l'uso agli utenti sulla base del traffico generato;
La conversione di dati nel passaggio fra una rete ed un'altra (diversa). Ciò implica di dover:
• rimappare gli indirizzi;
• frammentare i pacchetti;
• gestire protocolli diversi.
Bianca Petretti - Le reti 10
Il livello Transport del modello OSI
(1) Il livello di trasporto si occupa della comunicazione fra due
stazioni attraverso la sottorete di comunicazione, facendo in
modo che i dati inviati dal mittente arrivino a destinazione come
se attraversassero una linea diretta tra le due stazioni, senza
errori. Tale livello offre solo servizi orientati alla connessione.
Una volta che i dati vengono accettati dal livello superiore, essi
vengono spezzettati in pacchetti, passati al livello network
assicurandosi che arrivino alla peer entity che si trova all'altra
estremità della connessione.
Tutto ciò è compiuto in maniera efficiente, isolando i livelli
superiori dai cambiamenti della tecnologia di rete sottostante.
Bianca Petretti - Le reti 11
Il livello Transport del modello OSI
(2) Il livello transport è il primo livello realmente end-to
end, cioè da host sorgente a host destinatario: le peer
entity di questo livello portano avanti una conversazione
senza intermediari.
Si noterà che certe problematiche sono, in ambito end
to-end, le stesse che il livello data link ha nell'ambito di
una singola linea di comunicazione; le soluzioni però
sono alquanto diverse per la presenza della subnet di
comunicazione.
Bianca Petretti - Le reti 12
Incombenze del livello di trasporto
Creazione di connessioni di livello network (attraverso i servizi del
livello network) per ogni connessione di livello transport richiesta. Sono
possibili:
una connessione network per ciascuna connessione transport;
molte connessioni network per una singola connessione transport (per
ottenere un alto throughput)
una singola connessione network viene usata per molte connessioni transport,
con meccanismi di multiplexing(se è alto il costo di una connessione network)
Offerta di vari servizi al livello superiore:
canale punto a punto affidabile, che consegna i dati in ordine e senza errori (il
servizio più diffuso, connection oriented);
invio di messaggi isolati, con o senza garanzia di consegna (connectionless);
broadcasting di messaggi a molti destinatari (connectionless).
Bianca Petretti - Le reti 13
Il livello Session del modello OSI
Tale livello dovrebbe aggiungere dei servizi
avanzati a quelli del transport layer.
Ad es: token management: autorizza le due parti, a turno, alla trasmissione. Come vedremo nel seguito, in realtà questo livello non ha avuto
un grande successo
Bianca Petretti - Le reti 14
Il livello Presentation del modello
OSI
Tale livello fa riferimento alla sintassi e alla semantica delle
informazioni trasmesse, diversamente dai livelli sottostanti
che gestiscono solo una sequenza di bit.
Ad esempio, si occupa di convertire tipi di dati standard (caratteri,
interi) da rappresentazioni specifiche della piattaforma HW di partenza
in una rappresentazione "on the wire" e poi in quella specifica dell' HW
di arrivo.
Bianca Petretti - Le reti 15
Il livello Application del modello
OSI
Tale livello prevede che qui risieda tutta la varietà di
protocolli necessari per offrire i vari servizi agli utenti,
quali ad esempio:
terminale virtuale
transferimento dei file
posta elettronica
Attraverso l'uso di questi protocolli si possono scrivere
applicazioni che offrono i suddetti servizi agli utenti
finali.
Bianca Petretti - Le reti 16
IL TCP/IP
Il TCP/IP è un’architettura di rete ideata con
l’obiettivo di collegare reti di diversa natura
(internetworking) e di essere affidabile anche in
caso di guasti a parti della rete.
Il suo nome trae origine dai suoi due protocolli
principali. Essa non è un modello nel senso
stretto del termine, in quanto include i protocolli
effettivi, che sono specificati per mezzo di
documenti detti RFC (Request For Comments).
Bianca Petretti - Le reti 17
Un po’ di storia del TCP/IP…
1957 - Presso il Dipartimento della Difesa degli USA, nasce l’A.R.P.A.
(Advanced Research Project Agency) per studiare applicazioni di scienza
e tecnologia all’uso militare.
1962 - Parte il progetto di una rete a commutazione di pacchetto in grado di
resistere agli attacchi bellici.
1968 - Nasce la rete ARPAnet che collega quattro università statunitensi.
1972 - ARPAnet collega 32 nodiusando linne telefoniche, reti satellitari e onde
radio; nasce la prima posta elettronica per uso universitario
1973 - Comincia lo sviluppo del TCP/IP.
1982 - Si inizia a parlare di internet come insieme di reti TCP/IP collegate fra loro
1983 - ARPANET viene divisa in parte pubblica e parte militare.
1989 - Nasce il servizio WEB presso il CERN ( Centro Europeo Ricerca fisica
Nucleare).
Bianca Petretti - Le reti 18
Relazione fra i livelli OSI e TCP/IP
I livelli TCP/IP hanno questa relazione con quelli OSI:
Bianca Petretti - Le reti 19
I livelli del TCP/IP
I livelli fondamentali del TCP/IP sono quello di rete e
quello di trasporto, mentre il livello di applicazione
contiene tutti i protocolli ad alto livello (come HTTP,
SMTP, FTP ecc…)
Non vengono definiti livelli inferiori a quello di rete.
Viene indicato un livello generico host-to-network
che prevede di utilizzare qualsiasi protocollo
sottostante per trasportare pacchetti IP lungo il mezzo
di trasmissione.
Bianca Petretti - Le reti 20
Livello host-to-network del TCP/IP
Il livello più basso non è specificato
nell'architettura, che prevede di utilizzare quelli
disponibili per le varie piattaforme HW e
conformi agli standard.
Tutto ciò che si assume è la capacità dell'host
di inviare pacchetti IP sulla rete, appoggiandosi
a qualsiasi tecnologia esistente.
Bianca Petretti - Le reti 21
Livello Internet del TCP/IP
E’ il corrispondente del livello di rete del modello OSI. E' il livello
che tiene insieme l'intera architettura, e il suo ruolo è
permettere ad un host di iniettare pacchetti in una qualunque rete
e fare il possibile per farli viaggiare tramite commutazione di
pacchetto fino alla destinazione, che può essere situata anche su
un’altra rete.
Offre un servizio connectionless e non confermato.
E' un servizio best-effort datagram. E' definito un formato
ufficiale dei pacchetti ed un protocollo chiamato IP (Internet
Protocol).
Come il livello di rete del modello OSI, si occupa del routing e del
controllo della congestione.
Bianca Petretti - Le reti 22
Livello Transport del TCP/IP
E' progettato per consentire la conversazione delle peer
entity sugli host sorgente e destinazione (end-to-end).
Sono definiti due protocolli in questo livello:
TCP (Transmission Control Protocol): protocollo connesso ed
affidabile (ossia tutti i pacchetti arrivano, e nell'ordine giusto).
Frammenta il flusso in arrivo dal livello superiore in messaggi
separati che vengono passati al livello Internet. In arrivo, i pacchetti
vengono riassemblati in un flusso di output per il livello superiore.
UDP (User Datagram Protocol): protocollo non connesso e non
affidabile, i pacchetti possono arrivare in ordine diverso o non
arrivare affatto.
Bianca Petretti - Le reti 23
Livello Application del TCP/IP
(1) Nell'architettura TCP/IP non ci sono i livelli Session e Presentation
(non furono ritenuti necessari; l'esperienza col modello OSI ha
mostrato che questa visione è condivisibile).
Sopra il livello Transport c'è direttamente il livello Application, che
contiene tutti i protocolli di alto livello vengono usati dalle
applicazioni reali. I primi protocolli furono:
Telnet: terminale virtuale;
FTP (File Transfer Protocol): file transfer;
SMTP (Simple Mail Transfer Protocol) e POP (Post Office
Protocol): posta elettronica
Bianca Petretti - Le reti 24
Livello Application del TCP/IP
(2)
Successivamente se ne sono aggiunti altri, fra cui:
DNS (Domain Name Service): mapping fra nomi di host e
indirizzi IP numerici.
NNTP (Network News Transfer Protocol): trasferimento di
articoli per i newsgroup.
HTTP (HyperText Transfer Protocol): alla base del Word
Wide Web.
Bianca Petretti - Le reti 25
I diversi protocolli del TCP/IP
Relazione fra i livelli e i protocolli dell'architettura TCP/IP:
HTTP, SMTP, POP3, FTP, NNTP, SNTP, DNS, VoIP
TCP, UDP
IP, ARP, RARP, BOOTP, ICMP, IGMP, OSPF, BGP
Vari standard per LAN, MAN, WAN
Application
Transport
Network
Bianca Petretti - Le reti 26
TCP/IP e modello OSI a confronto
Somiglianze:
sono basati entrambi sul concetto
di pila di protocolli indipendenti;
hanno funzionalità simili per i vari
livelli;
Bianca Petretti - Le reti 27
TCP/IP e modello OSI a confronto
(2)
Il TCP/IP è uno standard de facto, è diventato
uno standard grazie al suo utilizzo. Ciò
significa che il TCP/IP nasce coi protocolli,
mentre il modello di riferimento viene a
posteriori
Il modello OSI è uno standard de jure, cioè
uno standard formale legale adottato dalla ISO,
i protocolli verranno definiti solo in un secondo
momento.
Bianca Petretti - Le reti 28
TCP/IP e modello OSI a confronto
(3)
Poiché il modello OSI nacque prima dei relativi protocolli,
successe che:
il modello era, ed è tuttora, molto generale (punto a
favore);
vi era insufficiente esperienza nella
progettazione dei livelli (punto a sfavore). Ad
esempio:
• il livello data-link (pensato all'origine per linee punto-punto) ha
dovuto sdoppiarsi per gestire reti broadcast;
• mancava del tutto l'idea di internetworking: si pensava ad una
rete separata, gestita dallo stato, per ogni nazione
Bianca Petretti - Le reti 29
TCP/IP e modello OSI a confronto
(4)
I protocolli dell'architettura TCP/IP sono invece il
punto di partenza del progetto, per cui:
l'architettura è molto efficiente (punto a
favore);
il reference model non è generale, in quanto
descrive solo questa particolare architettura
(punto a sfavore);
è difficile rimpiazzare i protocolli se
necessario (punto a sfavore).
Bianca Petretti - Le reti 30
Limiti dei protocolli associati al
modello OSI la definizione dei protocolli è arrivata tardi, quando quelli TCP/IP si erano
già diffusi.
infelici scelte tecnologiche: i sette livelli (e i relativi protocolli) sono stati
dettati in realtà dalla architettura SNA dell' IBM, più che da considerazioni di
progetto. Per cui il progetto soffre di vari difetti:
grande complessità e conseguente difficoltà di implementazione;
inutili i livelli session e presentation;
non ottimali attribuzioni di funzioni ai vari livelli:
• alcune funzioni appaiono in molti livelli (es. controllo errore e flusso in tutti i livelli);
• altre funzioni mancano del tutto (ad es. sicurezza e gestione rete);
le prime implementazioni erano lente ed inefficienti, mentre i protocolli
dell'architettura TCP/IP invece sono stati implementati efficientemente fin
dall'inizio, per cui si sono affermati sempre più, e quindi hanno goduto di un
crescente supporto che li ha resi ancora migliori.
Bianca Petretti - Le reti 31
Limiti dell’architettura TCP/IP
l'architettura TCP/IP non ha utilità come modello (non serve ad altro che a descrivere se stessa);
manca una distinzione fra protocolli, servizi e interfacce, il che rende più difficile l'evoluzione dell'architettura;
alcune scelte di progetto cominciano a pesare (ad es., indirizzi IP a soli 16 bit).
In conclusione:
L’OSI è ottimo come modello, mentre i suoi protocolli hanno avuto poco successo;
Il TCP/IP è ottimo (per ora) come architettura di rete, ma inutile come modello di riferimento.