martedì 24 settembre 2013

File Transfer

Il file transfer è quell'atto di trasferire file tra sistemi diversi.
I primi passi erano quelli che si facevano con i Floppy Disk (anche se quel nome nell'attuale accezione non possiamo ancora utilizzarlo). Si comincia ad utilizzare con l’avvento delle BBS  computer collegati alla rete telefonica con un  modem con il quale si potevano anche trasferire file utilizzando un software di emulazione terminale (hyperterminal).


Con l’avvento di Internet e delle Intranet sono nati nuovi protocolli che utilizzano tale rete per trasmettere file.
Nel mondo dei file transfer esistono due entità:
  • un Server, esposto sulla rete in attesa che qualcuno o qualcosa trasferisca un file con lui;
  •  un Client, dormiente, che si attiva al bisogno, si collega al server e con esso scambia file.

I trasferimenti possono essere suddivisi in:
  • ·         Push, dove chi ha il file inizia la trasmissione;
  • ·         Pull, dove chi deve ricevere il file inizia la trasmissione.

Attualmente i file transfer vengono etichettati in base a come li vede il Client:
  • ·         Download, il client riceve i dati dal server
  • ·         Upload, il client invia dati al server

Per effettuare un File Transfer tra le due entità bisogna accordarsi preventivamente sul protocollo da usare. Il protocollo di file transfer è una convenzione, talvolta pubblica, che descrive come trasferire i file tra le due entità. Essi sono destinati unicamente per inviare il flusso di bit memorizzate come singola unità tra diversi File System più alcuni metadati rilevanti come il filename, la dimensione, il timestamp del file …
I moderni protocolli di file transfer operano in genere ai livelli più alti della pila ISO-OSI, a differenza dei protocolli utilizzati ai tempi delle BBS.
I principali protocolli di file transfer attualmente in uso sono:
  • HTTP (Hyper Text Transfer Protocoll), viene utilizzato per scambiare file o , se si utilizza il linguaggio HTML (per esempio) per inviare pagine di testo formattate che poi verranno interpretate dai Web Browser (Internet Explirer, Safari, Chrome, Firefox ...);
  • FTP (File Transfer Protocoll) generalmente utilizzato per scambiare file;
  • HTTPS (HyperText Transfer Protocol over Secure socket layer) variante "sicura" di HTTP.
  • SMTP (Simple Mail Transfer Protocoll) utilizzato per inviare email. I campi dell'email sono da considerarsi dei MetaDati mentre il file allegato è l'oggetto da trasferire.
  • POP3 (Post Office Protocol 3) Gestione delle caselle di posta elettronica, utilizzato generalmente per ricevere email. I campi dell'email sono da considerarsi dei MetaDati mentre il file allegato è l'oggetto da trasferire.
Un oggetto posto in una rete è caratterizzato non solo da quello che è, ma anche dal modo (ossia dal protocollo) con cui si può accedere ad esso. Per fare un paragone, è perfettamente inutile che, dovendo recuperare qualcosa che mi interessa, io sappia che esso è posto in una determinata stanza, se poi non so come posso accedere a quella stanza.

Ai tempi in cui nelle aziende esisteva un solo calcolatore che svolgeva tutte le funzioni il file transfer non era un oggetto di interesse. 
Allo stato attuale dove in un'azienda esistono diversi calcolatori, spesso specializzati (File Server, DB Server, Front End, Back End, Application Server ...), talvolta distribuiti sul territorio o in aziende differenti (housing, hosting, outsourcing)  è sempre più necessario gestire trasferimenti e sincronizzazioni di file tra essi rispettando severe politiche di sicurezza ed integrità dei dati. Tutto ciò si riesce a fare consoluzioni di File Transfer.