Il modello OSI

Nella tecnologia di rete si utilizzano spesso i modelli a strati per poter rappresentare le varie funzioni di messa in rete che bisogna svolgere. I motivi principali per l’utilizzo di un tale modello OSI sono:

  • Suddividere tutte le funzioni di una operazione di rete in elementi meno complessi;
  • Consentire ai fornitori di concentrare la propria attenzione su aree specifiche;
  • Far sì che gli strati non siano influenzati dai cambiamenti che avvengono negli altri strati, essendo ben definita l’interfaccia tra di loro;
  • Fornire una piattaforma per lo sviluppo delle reti.

Progettare in un modello stratificato significa preoccuparsi solo dei due strati immediatamente adiacenti e tralasciare completamente gli altri. Il concetto di sistema aperto deriva dalla necessità di standardizzazione. Nella progettazione di una rete ci si può trovare di fronte ad una serie di prodotti offerti da fornitori diversi che potrebbero vincolare definitivamente al fornitore scelto qualsiasi scelta progettuale futura. Un sistema aperto permette di poter cambiare fornitore senza dover necessariamente riprogettare l’intera rete. Agli inizi degli anni 80 la International Standard Organization (ISO) vide la necessità di sviluppare un modello di rete che aiutasse i fornitori a creare soluzioni di messa in rete che potessero operare insieme. La ISO sviluppò quindi un modello oggi universalmente conosciuto come OSI (Open Systems Interconnection  Interconnessione di sistemi aperti). Questo modello OSI è stato realizzato dall’ISO per attuare uno standard di comunicazioni tra i computer di una rete, cioè le regole che gestiscono le comunicazioni tra i computer. In effetti, alle origini delle reti ogni costruttore aveva un proprio sistema proprietario. Esistevano quindi numerose reti incompatibili. Stabilire una norma era diventato una necessità. Il ruolo del modello OSI consiste nello standardizzare la comunicazione tra i computer affinché i differenti costruttori possano mettere a punto dei prodotti (software o hardware) compatibili. Lo scopo di un sistema a livelli è di separare il problema in differenti parti o strati. Ogni livello del modello comunica con un livello adiacente (quello sopra o quello sotto). Ogni livello usa inoltre i servizi dei livelli inferiori e ne fornisce a quelli superiori. Il modello OSI è costituito da sette strati o livelli (layer) distinti:

1)Il livello fisico definisce il modo in cui i dati sono fisicamente convertiti in segnali digitali (impulsi elettrici, modulazione della luce) coinvolti nel trasporto dei dati dalla scheda di rete (NIC Network Interface Card) di un computer al sistema di comunicazione. Lo strato fisico è il responsabile dei bit da un computer all’altro.

Obiettivo: trasmettere un flusso di dati, non strutturati, attraverso un collegamento fisico.

Dispositivi: scheda di rete, cavi, Repeater, Hub.

2) Il livello collegamento dati (data link) definisce l’interfaccia con la scheda di rete (NIC) e la condivisione del mezzo di trasmissione. Questo strato si occupa dell’invio dei frame dei dati dallo strato della rete a quello fisico. Un frame (pacchetto di dati) comprende le seguenti componenti:

  • ID del destinatario. Questo ID è l’indirizzo MAC (Media Access Control è un numero esadecimale univoco di 12 cifre assegnato dal costruttore dell’hardware ed è a carico del costruttore assicurare l’univocità del MAC) del computer di destinazione.
  • ID del mittente. Questo ID è l’indirizzo MAC del mittente.
  • Informazioni di controllo. Includono informazioni quali l’effettivo tipo di frame e notizie riguardo l’instradamento e la segmentazione.
  • CRC (Cyclic Redundancy Check). Effettua la correzione degli errori e verifica che il frame di dati sia arrivato intatto al computer destinatario.

Obiettivo: permettere il trasferimento affidabile dei dati attraverso il livello fisico. Invia frame di dati con la necessaria sincronizzazione ed effettua un controllo degli errori e delle perdite di segnale.

Dispositivi: Switch, Bridge (serve a collegare due differenti segmenti di rete. Filtra, inoltra o diffonde un frame d’ingresso basandosi sull’indirizzo MAC del frame).

3) Il livello rete permette di gestire l’indirizzamento e il routing dei dati, cioè il loro invio tramite la rete. Lo strato della rete determina il modo migliore per spostare i dati da un computer all’altro. Gestisce l’indirizzamento dei messaggi e la traduzione degli indirizzi IP in indirizzi MAC. Nel livello di rete i messaggi vengono suddivisi in pacchetti che, una volta giunti a destinazione, vengono riassemblati nella loro forma originaria.

Obiettivo: rende i livelli superiori indipendenti dai meccanismi e dalle tecnologie usate per la connessione. Si occupa di stabilire, mantenere e terminare una connessione. È responsabile dei routing (instradamento dei pacchetti).

Unità fondamentale: pacchetto dei dati (datagramma).

Protocollo utilizzato: Protocollo IP (riceve i dati dal livello di trasporto e li incapsula in pacchetti e successivamente li instrada).

Dispositivi: Router.

4) Il livello trasporto è incaricato del trasporto dei dati, della loro divisione in pacchetti e della gestione degli eventuali errori di trasmissione. Lo strato del trasporto segmenta e riassembla i dati in un flusso di dati. Provvede ad una connessione tra computer mittente e computer destinatario. I dati da trasferire sono spezzettati in segmenti e spediti al destinatario numerandoli sequenzialmente. Il destinatario, alla ricezione dei segmenti, invia un segnale di avvenuta ricezione. Nel caso di non avvenuta ricezione di un segmento, il destinatario può richiederne la ritrasmissione. In questo modo sussiste il controllo degli errori nel trasporto dei dati.

Obiettivo: permettere il trasferimento di dati (implementando un controllo degli errori e delle perdite) tra due computer.

Unità fondamentale: segmento di dati

Protocollo utilizzato: TCP e UDP

5) Il livello sessione definisce l’apertura e la distruzione delle sessioni di comunicazione tra i computer di rete. Lo strato della sessione consente a due applicazioni su computer eventualmente separati di stabilire una connessione per la comunicazione, chiamata sessione. La sessione assicura che i messaggi inviati dall’uno all’altro siano ricevuti con un alto grado di attendibilità. La sessione svolge funzioni di sicurezza per assicurare che i due computer siano autorizzati a comunicare attraverso la rete.

6) Il livello presentazione definisce il formato dei dati manipolato dal livello applicativo indipendentemente dal sistema. Lo strato di presentazione determina il modo in cui i dati sono formattati nello scambio tra due computer in rete. I dati ricevuti dallo strato dell’applicazione sono tradotti in un formato intermedio comunemente riconosciuto. Questo strato effettua tutte le opportune conversioni in modo da compensare eventuali differenze di rappresentazione e di formato di dati in arrivo e/o in partenza. Lo strato di presentazione è responsabile anche per le traduzioni e le codifiche dei dati e conversioni dei caratteri e dei protocolli. Alcuni formati di presentazione gestiti dallo strato di presentazione sono:

  • ASCII (American Standard Code for Information Interchange). È un set di caratteri codificati ad 8 bit usato per definire tutti i caratteri alfanumerici.
  • XDR  (eXtended  Data Representation). Viene usata da applicazioni per fornire un formato universale per la trasmissione di testi tra due computer.

Obiettivo: trasformare i dati forniti dalle applicazioni in un formato standardizzato ed offrire servizi di crittografia (sistema che consente di codificare messaggi testuali in modo che non possano essere interpretati da chi non possiede la chiave di lettura), compressione del testo e riformattazione.

7) Il livello applicazione assicura l’interfaccia con le applicazioni. Si tratta quindi del livello più vicino agli utenti, gestito direttamente da alcuni software. Lo strato dell’applicazione consente ai programmi di accedere ai servizi di rete. Questo strato gestisce la visualizzazione dei dati relativi a programmi di login remoto, file transfer (FTP), posta elettronica. Per usare lo strato dell’applicazione, un programma deve avere una componente della comunicazione che richieda risorse di rete. Alcuni esempi di programmi che coinvolgono lo strato dell’applicazione.

  • Posta Elettronica. Lo strato dell’applicazione consente ai programmi di accedere ai sevizi di comunicazione di rete.
  • Applicazioni per teleconferenze. Lo strato dell’applicazione consente agli utenti di utilizzare applicazioni per riunirsi, come per esempio video, dati vocali, ecc.
  • World Wide Web. Attraverso i browser gli utenti possono accedere ad informazioni provenienti da località remote in formati diversi (testo, immagini, video, suoni). Applicazione di questo genere è Apache Web Server.

Obiettivo: interfacciare utente e macchina. Definisce i servizi necessari ai programmi applicativi per la comunicazione in rete, stabilisce le regole per le procedure di riconoscimento degli errori e di controllo per l’integrità dei dati.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *