# Network Attached Storage

Il Network Attached Storage (NAS) è un dispositivo di archiviazione collegato a una rete (propria o esterna) che consente l'accesso e la condivisione dei dati fra più utenti. È costituito da uno o più dischi rigidi.

## Caratteristiche

Generalmente i NAS sono dei computer attrezzati per poter comunicare via rete. Pertanto, non sono dei semplici dispositivi di memorizzazione di dati da connettere via RJ-45 a dei computer, ma sono, a tutti gli effetti, degli storage il cui scopo è mettere a disposizione spazio disco in rete in maniera "intelligente" ovvero interfacciabile, gestibile e collegabile ad altre risorse di rete, in primis i server su cui sono installati le applicazioni e il Domain controller.
Si tratta di dispositivi dotati solitamente di un sistema operativo basato su Linux (generalmente trasparente all'utente) e di diversi hard disk destinati all'immagazzinamento dei dati. Tale architettura ha il vantaggio di rendere disponibili i file contemporaneamente su diverse piattaforme, come ad esempio Linux, Windows e Unix (o Mac OS X), dove il sistema operativo implementa i server di rete con gli standard più diffusi tra i quali ad esempio FTP, Network File System (NFS), Samba per le reti Windows e AFP per le reti Mac OS X.
Questi dispositivi non vanno scambiati con gli Storage Area Network (SAN), ovvero soluzioni di immagazzinamento dati (storage) che comprendono una rete ed adottano tecnologie e protocolli spesso proprietari. Talvolta un sistema NAS può essere utilizzato come nodo di una SAN, data la scalabilità di tale architettura.
Quasi tutti i NAS in commercio dispongono di porte USB 2.0, solitamente usate per collegare hard disk USB esterni, al fine di utilizzare questi ultimi come unità di backup per i file contenuti nel drive interno del NAS, oppure essere condivisi su tutta la rete.

## Vantaggi e svantaggi

I vantaggi offerti dai dispositivi NAS sono molteplici. Innanzitutto permettono di centralizzare l'immagazzinamento dei dati in un solo dispositivo accessibile a tutti i nodi della rete, ed essendo altamente specializzato per le prestazioni permette l'implementazione di schemi RAID (Redundant Array of Independent Disks), i quali garantiscono una migliore gestione della sicurezza dei dati. Normalmente un NAS consente l'eventuale rimozione ed aggiunta di dischi "a caldo" (hot swap), senza la necessità di disattivare l'unità.
Nell'ambito dell'adozione di tale architettura un eventuale svantaggio potrebbe essere costituito dall'enorme quantità di dati che viene a transitare sulla rete, come potrebbe essere costituito dai limiti di prestazione e di stabilità di un NFS e degli altri filesystem utilizzabili in rete.

## Implementazione di un server con NAS

È possibile implementare un server NAS:
* mediante l'acquisto di un server già preconfigurato che implementa un hardware già ottimizzato per l'utilizzo;
* utilizzando delle memorie flash che integrano un sistema NAS nativo, preconfigurato e facilmente personalizzabile da parte dell'utente;
* installando su un hardware adatto un sistema operativo correttamente configurato per erogare i servizi di rete richiesti dalla tipologia di utilizzo NAS.
Gli accorgimenti maggiori riguardo alla messa in opera di tali sistemi, riguardano il bilanciamento corretto della infrastruttura di rete sulla quale il sistema NAS andrà ad operare. Alcuni esempi di tali accorgimenti possono essere:
* utilizzo di router e Switch;
* implementazione di politiche di filtraggio dei pacchetti in transito sui nodi di interfaccia delle reti;
* sviluppo di un piano di instradamento del traffico che preveda risorse riservate per il Fault recovery della connettività.

## Progetti di sistemi NAS esistenti

Esistono principalmente due tipi di sistemi NAS completi: le soluzioni commerciali, spesso basate in parte su software open source, e quelle libere/gratuite dove tutto il codice è open source e liberamente e gratuitamente accessibile.
* Le soluzioni commerciali sono solitamente vendute assieme all'hardware spesso dedicato.
* Le soluzioni libere/open source sono installabili su hardware comune o hardware acquistabile separatamente.
Di seguito alcuni esempi delle due categorie:
Alcuni sistemi NAS commerciali:
* QNap: NAS Linux commerciale
* Synology: NAS Linux commerciale
* Buffalo: NAS Linux commerciale
* NASLite: NAS Linux commerciale
* HP: vende anche sistemi NAS
* DELL: vende anche sistemi NAS
* IBM: vende anche sistemi NAS
ecc.
Alcuni sistemi NAS open source:
* Openmediavault: un sistema NAS completo basato sulla distribuzione GNU/Linux Debian e derivati quali Mint ed Ubuntu
* TrueNAS (ex FreeNAS): un sistema NAS basato sul sistema operativo FreeBSD
* Openfiler: NAS Linux (abbandonato)
* XigmaNAS: NAS FreeBSD, progetto originale di FreeNAS fino alla versione 0.7 poi NAS4Free e poi l'ultimo cambio di nome
* Rockstor: NAS Linux (http://rockstor.com/)
* EasyNAS: NAS Linux (http://www.easynas.org/)