INDIETRO SU AVANTI

I protocolli PC-NET/MS-NET dallo MS-DOS al Windows 95/NT

I protocolli IBM LAN sono noti con vari nomi, datano dal 1983 circa e si trovano in forma modificata anche in Windows 95 ed NT. Sono stati identificati da vari nomi nel tempo:

Al di sopra dei vari strati MAC supportati (Token Ring, Ethernet o IEEE 802.3) vi e' uno strato Logical Link Control consistente con lo standard IEEE 802.2, che fornisce un servizio di Tipo 1 senza connessioe e di Tipo 2, a connessione.

Quando due stazioni desiderano comunicare, ognuna deve stabilire un Service Access Point (SAP) a livello LLC. Per una comunicazione di tipo 2, a connessione, per ogni SAP devono essere stabiliti uno o piu' Link Stations (LS), sottoidentificativi a numeri interi. Una connessione e' univocamente identificata dal numero di SAP e di LS su ciascun nodo terminale.

L'interfaccia al livello LLC e' implementata nella forma di Command Control Block (CCB). Un CCB e' una struttura che specifica allo LLC il comando da eseguire e tutte le informazioni necessarie alla sua esecuzione. La specifica LLC fornisce una lista di comandi accettati.

Per operazioni di Tipo 1, LLC usa una trama detta U-format (unnumbered - non numerato), mentre per operazioni di Tipo 2 in aggiunta vengono usate trame dette I-format (information), molto piu' complesse.

Le trame di tipi I vengono interscambiate in entrambe le direzioni e portano sia informazioni (dati) in una direzione che flag di controllo per gli errori del flusso in direzione opposta (piggy-backing). Per trame di soli flag di controllo senza informazioni viene definito un terzo tipo trama detto S-format (supervisory).

LLC di tipo 2 usa un controllo errori di tipo go-back-N con una finestra scorrevole di dimensioni fisse ma negoziabile all'inizio di trasmissione, di massimo 127 trame.

Il protocollo NetBIOS opera a livello OSI di Sessione e fornisce funzionalita' dei livelli di sessione, trasporto e rete.

NetBIOS implementa trasmissione full-duplex, e una forma affidabile di trasferimento dati basata su circuiti virtuali. Offre opzionalmente un servizio senza connessione.

NetBIOS e' un protocollo originariamente concepito per PC che operano su MS-DOS. E' basato sull'uso di un Message Control Block (MCB), che viene invocato tramite l'interrupt 0x5c del DOS. Lo MCB include un codeice del comando da eseguire e campi per parametri associati a tale comando. Dato che l'interfaccia MCB e' la stessa usata dallo strato LLC, il primo byte del MCB indica quale protocollo e' invocato.

Il NetBIOS fornisce le seguenti funzionalita':

Il Servizio Nomi puo' associare piu' nomi di entita' logiche ad un singolo nodo, in modo dinamico durante una sessione. Non vi e' alcuna mappa di associazione permanente tra nomi e nodi. Sono supportati anche nomi di gruppo o multicasting. Lo spazio nomi e' piatto e concepito per esistere all'interno di una LAN singola, non di un internet.

La rete NetBIOS e' una unica entita' logica, ma puo' consistere di piu' segmenti fisici. Il routing intrasegmento usa il metodo source routing: e' la stazione trasmittente che ha la responsabilita' di indicare i router (bridge) intermedi per giungere a destinazione. La stazione acquisisce informazioni di routing dai bridge tramite un comando particolare del NetBIOS che sollecita il responso di routing da qualsiasi macchina visibile. Un responso di routing puo' essere iterativo, cioe' contenere informazioni acquisite da altri nodi di rete. Questo metodo non e' scalabile oltre un certo numero di segmenti e risponde male a variazioni della struttura di rete.

NetBIOS a livello sessione compie la gestione di circuito virtuale affidabile: il circuito viene stabilito tra due 'nomi' di rete ed identificato internamente da un byte. Per il controllo flusso NetBIOS usa una finestra di trasmissione di valore settato all'inizio sessione: in caso di congestione di rete la finestra viene ridotta ad un solo pacchetto e poi aumentata gradualmente.

Il servizio NetBIOS senza connessione non supporta naturalmente circuiti virtuali, e non esegue nemmeno il controllo errori, lasciato ad un protocollo superiore. Al momento non esistono di tali protocolli superiori, quindi questo servizio e' raramente usato.

Il NetBIOS non e' conforme al modello OSI o a modelli IEEE, e pertanto va visto come standard puramente de facto.

Il pacchetto applicativo basato su NetBIOS era originariamente chiamato IBM PC LAN Program e offriva le seguenti funzioni:

Tale programma, e tutti i suoi discendenti come il LAN Manager e i Client e Server per Reti Microsoft sono basati sul protocollo IBM detto Server Message Block. Questo nome identifica in particolare i messaggi di controllo che vengono scambiati tra l'applicativo e il NetBIOS, in DOS tramite interrupt particolari.

Le stazioni che partecipano alla rete possono essere configurate come:

Il servizio messaggistica non viene piu' molto usato nella rete Microsoft per Windows 95 ed NT, ma continua a rimanere presente.

Il servizio nomi permette l'associazione di nomi di rete ad utenti, stazioni e singole risorse da condividere.

Quando un disco o directory vengono condivise, tutti i file presenti al di sotto di quella directory diventano visibili in rete. All'oggetto condiviso possono venire assegnati diritti di lettura, scrittura e creazione, che sono definibili sulla base dei singoli utenti di rete, con la ripetizione piu' volte del comando di condivisione per la stessa risorsa. Il controllo di accesso da parte di utenti e' verificato tramite password, che sono trasmesse in chiaro nei pacchetti di rete.

Il redirector in DOS e sistemi simili funziona inserendo in memoria dei moduli di ridirezione e modificando la tabella dei vettori di interrupt relativa ad alcuni interrupt molto usati dal sistema operativo. Per esempio l'interrupt 0x21 viene usato in DOS in congiunzione col contenuto del registro principale per attivita' di I/O. Queste vengono intercettate e 'ridirette' al modulo di ret che le esamina e decide se la loro implementazione e' locale o su un altro nodo.

All'atto dell'apertura di un file in directory codivisa l'applicativo puo' specificare sia un modo di apertura (read, write) che un modo di condivisione (deny read, deny write, ecc). Il protocollo SMB supporta i modi di condivisione, ed inoltre anche i blocchi (lock) su files e parte di files.

Anche SMB non e' conforme ad alcuno standard internazionale e va visto come standard de facto.