Modello ISO/OSI

Fino a circa 1984 un produttore di soluzioni di rete doveva offrire tutta la catasta software necessaria, dall'accesso fisico alla rete ai programmi per utente.

C'erano offerte disponibili, ma evidentemente con variabilità dei componenti e flessibilità limitate. IBM ha sempre fatto così: Total Solutions, leggi Vendor Lock-In.

Occorre che componenti diverse della catasta di software di rete possano essere offerte da Vendor diversi: occorre interoperabilità.

Modello Software di Rete

  • Visione gerarchica dei livelli di problemi
  • Delegazione dei dettagli ai livelli sottostanti
  • Importanza della definizione delle interfacce
    • L’interfaccia è un contratto
    • Come con le funzioni: parametri passati, risultato ricevuto, si ignora il comportamento interno della funzione

I livelli sono indipendenti

  • Un livello ignora cosa compiano i livelli sottostanti e soprastanti
  • Vendor differenti possono codificare livelli differenti
  • Il software di un livello può essere sostituito

International Standards Organisation / Open System Interconnection

Isoosimod

1. Livello Fisico

  • Dettagli di comunicazione col mezzo fisico
  • Legge e scrive bytes dalle schede di rete
  • Gestisce il collegamento tra due nodi

3. Livello Rete

Meglio detto Livello di Internetworking

  • Incapsula le unità trasmissive del livello soprastante in pacchetti dati
  • Decide lo smistamento (routing) dei pacchetti dati a nodi remoti tramite nodi prossimi
  • Ha un modello operativo della topologia di rete
    • Non conosce l’intera rete, ma abbastanza da compiere operazioni di smistamento pacchetti

4. Livello Trasporto

  • Suddivide i messaggi dei livelli superiori in unità trasmissive in partenza
  • Ricompone i messaggi dalle unità trasmissive in ricezione
  • Si assicura di:
    • sequenzialità delle unità trasmesse e ricevute
    • assenza di errori, con eventuale richiesta di ritrasmissione

5. Livello Sessione

  • Gestisce insiemi di messaggi che insieme delineano una sessione
    • Si assicura della consistenza e appropriatezza dei messaggi
    • Inizia, traccia e termina le sessioni
  • Gestisce fattori di sicurezza trasmissiva
    • Identificazione e autorizzazione (autenticazione)
    • Crittografazione dei messaggi

6. Livello Presentazione

  • Rappresentazione dei tipi di dati trasmessi
    • Interi a 16, 32 o 64 bit
    • Interi Big Endian o Small Endian
    • Stringhe US ASCII, ISO o Unicode

1986: Sun Microsystem regala al mondo le librerie Open Network Computing (ONC)

Onc

XDR diviene il Network Order - formato dei dati trasmessi in rete

Coincide col formato dati usato dalla Sun

Genere dei Byte

Direzione di storaggio degli interi (32 bit) in memoria

Esempio: 4A693E7F

Big Endian: byte più significativo per primo

Biglittle

Little Endian: byte meno significativo per primo

  • Motorola: Big Endian
  • Intel: Little Endian

Il Network Order TCP/IP è Big Endian

7. Livello Applicazione

  • Interagisce con l’utente tramite software (client):
    • di terminale - linea di comando (Command Line Interface - CLI)
    • di grafica (Graphical User Interface - GUI)
  • Fornisce dati o compie operazioni (server)
  • Interopera con altre librerie del Sistema Operativo

Due modelli distribuiti:

  • Peer-to-Peer
    • Assume indifferentemente il ruolo di client o di server a seconda delle circostanze
    • Un singolo programma

Peerpeer

  • Client-Server
    • Un nodo è sempre nel ruolo di server e l’altro nodo è sempre nel ruolo di client
    • Due programmi separati

Cliser

Dispositivi di Rete

Netdev