Lo strato sessione del modello OSI: accesso e certificazione agli applicativi
Lo strato Sessione del modello OSI e' una invenzione ISO. Non vi
erano vorrispondenti livelli in altri modelli software e anche
all'atto della discussione del modello OSI, non tutti erano
d'accordo alla necessita' di un tale livello. Pertanto le
funzionalita' di questo livello, almeno all'inizion, non erano
ben definite come quelle degli altri livelli.
La funzione principale del livello di Sessione e' la delineazione
di sessioni, ovvero di entita' definenti:
- i due corrispettivi di interscambio dati, che possono essere
processi comunicanti
- l'inizio e la fine dell'interscambio dati, di una connessione
o del messaggio spedito senza connessione
- le regole di precedenza, se interscambio in singola
direzione, o alternato, o simultaneo in entrambe le direzioni
Il protocollo RPC viene posto normalmente a livello sessione, ma
e' quasi per convenienza che per design: RPC e' per sua natura un
collegamento senza connessione; il livello Sessione non ha molto
senso per i collegamenti senza connessione.
Vi e' molta rassomiglianza tra lo stabilimento di una sessione e
quello di un Circuito Virtuale a livello trasporto, mai i due non
coincidono esattamente. Sono possibili tre scenari:
- lo stabilimento di una sessione coincide con lo stabilimento
di un circuito virtuale, la terminazione di una sessione equivale
all'abbattimento del circuito virtuale
- alla chiusura di una sessione non viene terminato il circuito
virtuale, per l'elevata probabilita' di una sessione successiva
che usi lo stesso circuito
- un circuito virtuale viene chiuso facilmente in maniera
anomala a causa di problemi di rete; la sessione sopravvive alla
chiusura del circuito e si fa carico del ristabilire nuovi
circuiti ogni volta serva, e continua lo scambio dati dal punto
di interruzione
Col passare del tempo il livello Sessione ha acquisito
responsabilita' funzionali non previste o sottovalutate
originariamente:
- Identificazione ed Autenticazione
I processi corrispettivi si identificano in modo positivo e a
loro fronte vengono determinati i permessi operativi che ciascuno
ha sulla macchina remota.
La certificazione viene fatta spesso con sistemi
a scambio chiavi.
- Controllo Transazioni
Una sessione puo' consistere dello scambio di piu' serie di dati
su piu' circuiti virtuali, e puo' dover essere vista come
un'entita' atomica.
Il livello sessione deve essere responsabile di attivita' di
roll-forward e roll-back in modo da mantenere
l'atomicita' delle operazioni