linux user group brescia

immagine del castello

Archivio della mailing list

Coda

Luca Giuzzi l.giuzzi a dmf.bs.unicatt.it
Gio 18 Feb 1999 17:28:50 UTC
Coda \'e un network filesystem come NFS o SMB (quello di samba) usato per
 condividere gerarchie di files fra pi\'u macchine ma presenta alcune
 caratteristiche uniche mutuate da afs3 (filesystem usato nei sistemi kerberos).
 In particolare NFS \'e `connectionless': questo significa che se un server non
 \'e disponibile per svolgere una operazione (di lettura o scrittura) il 
 client non ritorna subito un messaggio di errore, ma riprova a svolgere la
 operazione per un numero determinato di volte (usualmente indicato come 
 opzione di mount), contemporaneamente bloccando il programma E impedendo
 l'unmounting della directory. Questo su una rete locale piccola e/o in
 condizioni in cui si hanno servers di backup non \'e affatto male (in quanto
 i problemi possono essere identificati e risolti rapidamente), ma su rete
 geografica o su una grossa LAN \'e un vero e proprio incubo. In effetti si
 possono verificare i cosiddetti `nfs storms' in cui due o tre macchine si
 bloccano aspettandosi a vicenda... un bel deadlock per la gioia dei sistemisti!
 Un altro problema con NFS \'e il metodo di autenticazione degli shares e il
 fatto che l'autorizzazione viene fatta a livello di macchina+mappa UIDs e non
 a livello utente... (per applicazioni tipo automounting sarebbe bene fare
 una autenticazione a livello utente, per condivisione di gerarchie tipo
 /usr/share \'e meglio autenticare la macchina). Samba -sebbene in alcune aree
 presenti delle caratteristiche interessanti- globalmente non \'e migliore e ha
 problemi per conto suo!
 CODA \'e un approccio diverso al problema di filesystem distribuito; in 
 particolare aprofitta dell'idea di cache locale per i files che vengono usati.
 Se il server non \'e disponibile nel momento in cui una operazione di
 scrittura viene richiesta, allora il file viene salvato localmente per poi
 essere aggiornato sul server non appena questi `ritorna in vita'. Nel caso
 di scritture concorrenti da diversi clients (ahi... questo \'e male) viene
 sfruttato un sistema `stile cvs' per vedere se e quando le patches debbono
 essere scritte oppure se non sia meglio notificare l'utente dei problemi e
 richiedere una sincronizzazione manuale. Riguardo il caching, infine,
 esso funziona pure in lettura e pu\'o consentire, ad esempio per un laptop,
 di continuare a lavorare in modo trasparente su alcuni dati anche dopo che
 \'e stato sconnesso dalla rete. Dal punto di vista autenticazione il 
 filesystem consente una autenticazione per host con per\'o mapping degli
 UIDs ridefinibile e -e questo \'e bene- pieno supporto per le ACLs.

 Questo per rispondere al `ma che \'e?' :-)
 Ciao,
  lg



Maggiori informazioni sulla lista Lug