la realtà nel mondo delle reti: osi e tcp/ippetrettibianca.altervista.org/files/osi e...
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.
Bianca Petretti - Le reti 32
Esempi di architetture di rete:
IPX/SPX IPX/SPX(Internet Packet Exchange/ Sequenced Packet Exchange)
è uno stack di protocolli proprietario diffuso negli anni ’80 perché usato
dalle reti con sistema operativo Novell Netware. E' l'architettura di rete più
diffusa nel mondo PC. E' precedente all’ OSI, e assomiglia molto al TCP/IP.
IPX come Ip è un protocollo di rete che offre un servizio non connesso e non
affidabile.
SPX come TCP è un protocollo di trasporto che offre un servizio connesso e
affidabile.
Lo stack di protocolli IPX/SPX comprende quattro livelli funzionali:
Accesso al mezzo (corrisponde al livello 1 OSI)
Data link (corrisponde al livello 2 OSI)
Internet (livelli 3 e 4 OSI)
Applicazione (livelli 5 , 6 e 7 OSI)
Bianca Petretti - Le reti 33
Esempi di architetture di rete:
(2) IPX/SPX La pratica di avere un livello network best-effort e connectionless, e
sopra esso un livello transport reliable e connected, è molto diffusa.
Sono così anche: Appletalk e il TCP/IP.
Bianca Petretti - Le reti 34
Esempi di architetture di rete:
(3) IPSX/SPX
NCP protocollo principale di applicazione (Netware Core Protocol)
che può usare SPX ma anche IPX; usato per la stampa, la
condivisione di file e la posta elettronica.
Altri protocolli a livello applicazione sono RIP e NLSP (protocolli
di routing) e il protocollo SAP che trasmette in broadcast
informazioni sui server disponibili, subito dopo che siano diventati
attivi.
Gli indirizzi IPX sono lunghi
10 byte e sono formati da un N°
di rete di 32 bit e da un N° di
nodo di 48 bit in dot notation
e in esadecimale
Es: 1a2b.0000.3c4d.5e6d
Bianca Petretti - Le reti 35
Esempi di architetture di rete:
Arpanet E’ l’antenata del TCP/IP. Nacque a metà degli anni '60 (ai
tempi della guerra fredda); il D.o.D. volle una rete
robustissima anche in caso di catastrofi, in grado di non
interrompere le connessioni in atto anche se alcune sue
componenti fossero state distrutte.
Si scelse quindi una rete a commutazione di pacchetto,
formata dagli host e da una subnet di comunicazione
costituita da vari IMP (Interface Message Processor)
collegati da linee di trasmissione.
Il software venne diviso in due parti:
SW per gli host
SW per la subnet (ossia per gli IMP)
Bianca Petretti - Le reti 36
Esempi di architetture di rete:
Arpanet (2)
Protocolli definiti per Arpanet: Host-IMP protocol;
IMP-IMP protocol;
Source IMP-destination IMP protocol.
Bianca Petretti - Le reti 37
Esempi di architetture di rete:
Arpanet (3)
Successivamente Arpanet si sviluppò incorporando altre reti, il che
mostrò l'inadeguatezza dei protocolli originari rispetto alle
problematiche di internetworking.
Nacque di conseguenza, verso la metà degli anni '70, l'architettura TCP/IP,
che il giorno 1/1/1983 divenne lo standard di Arpanet. TCP/IP fu poi
mantenuta anche per l'evoluzione di Arpanet, NSFNET (metà degli anni '80),
basata su linee da 56Kbps all'inizio e poi più veloci (1.5 Mbps nel 1990, 34
Mbps sulle linee principali oggi).
Il continuo aggiungersi di reti, ad Arpanet prima e ad NSFNET poi, ha creato
quella che oggi viene comunemente chiamata Internet, costituita da milioni
di host e utilizzata da decine di milioni di utenti. Internet si raddoppia
all'incirca ogni anno, ed ha suscitato grande interesse sia per i privati cittadini
che per le aziende.
Bianca Petretti - Le reti 38
Esempi di architetture di rete:
DECnet Phase V (DNA - DEC)
DNA(Digital Network Architecture) è l’architettura
di rete proprietaria della DEC.
Le realizzazioni sdelle reti DNA si chiamano DECnet,
mentre le versioni sono le fasi (phases).
DECnet Phase V è una versione totalmente conforme al
Modello OSI. Per tale motivo è detta anche DECnet/OSI.
Bianca Petretti - Le reti 39
Esempi di architetture di rete: DECnet Phase V (2)
Decnet ha costruito una piattaforma
che comprendente i primi 3 livelli
dell’ OSI, sulla quale possono
appoggiarsi due diverse pile di
protocolli:
pila OSI;
pila Decnet Phase IV(proprietaria).
Bianca Petretti - Le reti 40
Esempi di architetture di rete: Reti IBM (1)
SNA (System Network Architecture) è una rete
proprietaria della IBM. Si è diffusa verso
la fine degli anni ’70 per collegare terminali
a mainframe.
VTAM software di rete istallato sugli host
SDLC protocollo usato sulle linee.
Bianca Petretti - Le reti 41
Esempi di architetture di rete: Reti IBM (2)
APPN (Advanced Peer-to-Peer Networking) è l’altra
rete proprietaria della IBM per applicazioni
Client/Server
A livello di rete si usa un servizio connesso in cui
l’instradamento è stabilito al momento della creazione
della connessione ed è fisso per tutta la durata della
connessione (routing statico).
HPR (High Performance Routing) (detta anche APPN+) introdotta nel 1994 implementa invece un routing
dinamico.
Bianca Petretti - Le reti 42
Autorità per gli standard
AUTORITA’ INTERNAZIONALI
DI STANDARDIZZAZIONE
ORGANIZZAZIONI
SPONTANEE
ORGANIZZAZIONI
STABILITE CON CONTRATTI
FRA GOVERNI NAZIONALI
Bianca Petretti - Le reti 43
Autorità per gli standard (2)
Organismi più significativi per gli standard:
• Società telefoniche (si occupano di standard
per la telecomunicazione)
• ITU (International Telecomunication Union) organismo
internazionale con il compito di standardizzare le
telecomunicazioni internazionali.
• ISO organizzazione volontaria delle Nazioni Unite che si
occupa di stabilire standard internazionali in ogni campo,
fuorché elettricità ed elettronica.
Bianca Petretti - Le reti 44
Autorità per gli standard (3)
Altri organismi per gli standard:
• ANSI organizzazione privata che pubblixca standard
volontari (non obbliga ad applicarli, anche se
la non adesione ha conseguenze negative). E’
il rappresentante Usa dell’ISO
• UNINFO rappresentante italiano dell’ISO
• IEE organizzazione professionale mondiale, che si ocupa
anche di standard per le reti
• IEC definisce standard internazionali per il campo
dell’elettronica
• JTC1 è formata da ISO IEC per definire standard per le
tecnologie dell’informazione
Bianca Petretti - Le reti 45
Organismi per gli standard
per Internet (1)
I.S. (Internet Society) organismo che dal 1992
sovrintende alle tecnologie della rete Internet
All’interno della IS troviamo vari gruppi:
• IAB gruppo tecnico consultivo che stabilisce gli standard per
Internet
Gestisce la pubblicazione degli RFC in base alle proposte di
IETF e IRTF
• IETF si occupa di progetti a durata breve o media, come
Applicazioni,
Gestioni di rete, Servizi di Internet, Instradamento e Sicurezza
• IRTF si occupa di attività di ricerca a lungo termine come proposte
di
modifica dell’intera architettura di Internet in generale.
Bianca Petretti - Le reti 46
RFC
Gli RFC(request for comment) sono documenti che
descrivono standard o proposte di standard.
Tutti gli standard vengono pubblicati dalla IAB
sottoforma di RFC.
Chiunque può presentare una proposta di standard,
purché sia pubblicata sottoforma di RFC.
Bianca Petretti - Le reti 47
RFC (2)
Stadi del processo di maturazione degli RFC :
• una proposta di RFC viene esaminata dall’IETF dopodiché
può diventare proposed standard o restare in uno stadio
sperimentale
• dopo almeno 6 msi può diventare draft standard
• dopo altri 4 mesi almeno può diventare uno standard
Internet
Bianca Petretti - Le reti 48
RFC (3)
“Cosa succede ai vecchi protocolli
quando subentra un nuovo standard?”
Diventano Historical protocol
Le RFC sono identificate da un numero.
Gli aggiornamenti di una RFC vengono pubblicati
con un nuovo numero, mentre le RFC vecchie non
vengono segnalate.
Alcuni numeri risultano mancanti perché corrispondono a
delle RFC che rimangono non pubblicate
Bianca Petretti - Le reti 49
RFC (4)
CLASSIFICAZIONE
DELLE RFC
REQUIRED RFC RECOMMENDED RFC
Solitamente implementate anche
se non obbligatorie Devono essere implementate da
host e router su Internet