2.1. Che cos'è un protocollo
di comunicazione?
P N - V
Apparentemente, una domanda simile sembrerebbe tutto meno che fondamentale, quindi ci si potrebbe chiedere come mai la risposta sia posta all'inizio di questo capitolo. Tuttavia, Internet, proprio perchè è stata creata senza un controllo centralizzato e per un'utenza relativamente pratica di informatica, permette di ritrovare informazioni diverse in modi diversi, che per essere compresi e utilizzati proficuamente richiedono la conoscenza di alcuni (molto pochi) concetti fondamentali di telematica (e non preoccupatevi se non vi ricorderete la folla di sigle che compariranno qui di seguito, l'importante è capire il concetto).
Innanzi tutto, Internet in sè è solo un mezzo che permette a più coppie di computer di dialogare tra loro. Su Internet, difatti, il dialogo avviene a coppie (struttura "client - server"): sebbene un computer possa dialogare contemporaneamente con più suoi simili, ciascun messaggio ha uno e un solo destinatario alla volta. Il dialogo tra due computer è qualcosa di piuttosto complesso e può avvenire a vari livelli (standardizzati nel cosiddetto "protocollo ISO/OSI", che però potete tranquillamente ignorare): semplificando, un livello "basso" è quello dello scambio di informazioni binarie (spedizione di 1 e 0 lungo i cavi che costituiscono la rete), un livello "alto" è quello dello scambio di oggetti informatici (iper o no: un ipertesto, un'immagine, un programma...). Tuttavia, a qualsiasi livello avvenga il dialogo, è necessario che i due computer sappiano esattamente quali convenzioni seguire durante il suo svolgimento, ossia con quale linguaggio parlarsi, altrimenti non si capirebbero: un protocollo di comunicazione è proprio un insieme di procedure standard di comunicazione.
Su Internet viene usato, a scopi diversi, un gran numero di protocolli differenti, che nel loro complesso sono generalmente indicati come protocolli TCP/IP (anche se il nome corretto, che nessuno usa, è Internet Protocol Suite ossia collezione di protocolli Internet). Mentre ai livelli più bassi (gestiti automaticamente dal vostro software di comunicazione) si utilizzano comunemente i due protocolli TCP e IP (non lasciatevi confondere: sono due protocolli che fanno parte, insieme ad altri, dell'insieme di protocolli TCP/IP), ai livelli più alti esistono diversi protocolli che possono essere seguiti, ciascuno mirato al trasferimento di oggetti diversi o anche di oggetti uguali ma in modo diverso. È allora necessario conoscere almeno i più comuni per accedere a tutte le informazioni normalmente reperibili sulla rete (se tutto questo vi sembra complicato, fate finta di niente; lo capirete con l'uso).
I principali protocolli di "alto livello" usati su Internet sono:
HTTP | HyperText Transfer Protocol | Trasferimento di ipertesti e altri file nell'ambito del WWW |
FTP | File Transfer Protocol | Copia di file binari o di testo (ASCII) |
GOPHER | Trasferimento di file e informazioni mediante menu testuali | |
TELNET | Controllo di computer a distanza | |
SMTP | Simple Mail Transfer Protocol | Spedizione di messaggi di posta elettronica (E-mail) |
POP3 | Post Office Protocol 3 | Gestione delle caselle di posta elettronica |
NNTP | Network News Transfer Protocol | Trasferimento di articoli di newsgroup |
Un oggetto posto in 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 m'interessa, io sappia che esso è
posto in una determinata stanza, se poi non so quale chiave devo usare
per aprirne la porta; su Internet scegliere il protocollo da usare è
un po' come scegliere la chiave.
Prima dell'avvento dei navigatori (browser) come Mosaic o Netscape, ciascun protocollo richiedeva un programma apposito per essere utilizzato; questi programmi, invece, permettono di selezionare il protocollo semplicemente scrivendolo come parte dell'indirizzo (URL) dell'oggetto che si vuole recuperare.
2.2. Come viene individuato ogni
computer in rete? Cos'è un dominio?
P N - V
All'interno di Internet ciascuna macchina è identificata da un numero binario lungo 32 bit e comunemente detto IP (sfortunatamente ha lo stesso nome di uno dei protocolli contenuti nel TCP/IP... ma quando sentirete parlare di "IP" a livello non tecnico generalmente ci si starà riferendo al numero binario), che viene di solito presentato "tradotto" sotto forma di quattro cifre decimali separate da punti, per es.: 151.99.200.2
Poichè è un po' difficile ricordarsi gli indirizzi sotto forma di numeri, è stato tuttavia creato un sistema (il cosiddetto DNS o Domain Name System) per cui ad ogni computer viene assegnato anche un nome letterale, in modo univoco; esistono poi dei sistemi di "traduzione" automatica che permettono al software di comunicazione di risalire all'IP dal nome letterale e viceversa. Mentre l'elettronica di gestione della rete, per trasmettere i vari messaggi, si serve degli IP, gli utenti possono così servirsi di più intuitivi nomi letterali.
I nomi letterali delle macchine sono costituiti da una o più parole (formate da lettere, numeri e altri caratteri come il trattino, ma non da spazi) separate da punti. Il nome più a destra individua il dominio (domain) di appartenenza della macchina, ossia un grosso sottoinsieme della rete, che al di fuori degli Stati Uniti tende a coincidere quasi sempre con una nazione. Alcuni domini nazionali sono ad esempio:
it | Italia |
uk | Regno Unito |
fr | Francia |
de | Germania |
se | Svezia |
jp | Giappone |
All'interno degli Stati Uniti, invece, esistono vari domini, distinti per
tipo delle organizzazioni ad essi appartenenti:
edu | Università |
com | Operatori commerciali |
org | Organizzazioni senza scopo di lucro |
gov | Istituzioni governative |
mil | Esercito |
net | Organizzazioni di gestione della rete |
Il nome più a sinistra è invece il "nome proprio"
(hostname) del computer; i nomi che stanno in mezzo rappresentano
sottoinsiemi della rete, o più propriamente sottodomini (subdomains),
sempre più grandi procedendo da sinistra verso destra, e contenuti
nell'ordine gli uni dentro gli altri. Si usa talvolta anche parlare di
domini di primo livello (top level domains) per indicare
i domini veri e propri, e di domini di secondo, terzo... livello
per indicare mano a mano i sottodomini successivi, utilizzando il termine
"dominio" per indicare in generale un qualsiasi sottoinsieme
della rete caratterizzato dalla stessa parte finale (domain suffix)
nei nomi dei computer. Poichè probabilmente tutto ciò non
è molto chiaro, si può ad esempio considerare il nome:
lennon.engr.wisc.edu
che indica il computer denominato lennon situato all'interno del sottodominio engr (Ingegneria) del sottodominio wisc (Università del Wisconsin) del dominio edu (Università americane). Si noti quindi come edu sia un dominio di primo livello, wisc un dominio di secondo livello, engr un dominio di terzo livello e lennon un semplice computer; inoltre, si potrebbe anche dire che lennon appartiene sia al dominio edu, sia al (sotto)dominio wisc.edu, sia al (sotto)dominio engr.wisc.edu.
In alcuni paesi extra-USA (ad esempio nel Regno Unito) è stato adottato un sistema misto, per cui il dominio è unico e uguale per tutti (in quel caso, uk) ma i domini di secondo livello ricalcano la suddivisione americana, sebbene con sigle diverse: pertanto i nomi che terminano con .co.uk si riferiscono a computer di aziende commerciali inglesi, quelli che terminano con .ac.uk a computer di università inglesi, eccetera.
Si noti infine che, essendo i nomi "letterali" soltanto una comodità introdotta per noi poveri esseri umani, non vi è in realtà alcun vincolo geografico che individui i vari domini: sebbene in Italia quasi tutti i computer appartengano al dominio it, esistono anche computer situati fisicamente in Italia ma appartenenti ai domini com, net...
Negli approfondimenti tecnici troverete un elenco completo dei domini di primo livello esistenti. È conveniente conoscere le sigle corrispondenti alle nazioni più importanti, in modo da capire subito, leggendo un URL, dove ci si sta collegando e quindi se il collegamento sarà lento e pesante per la rete oppure no.
2.3. Che cos'è un URL?
P N - V
Come visto, per poter recuperare un qualsiasi oggetto posto in rete è necessario conoscere:
Per racchiudere in un unico "indirizzo" tutte queste informazioni è stato creato uno schema detto URL (Uniform Resource Locator, ossia Individuatore Uniforme di Risorse). Un URL assume normalmente la forma seguente:
metodo://nomemacchina:porta/nomeoggetto
dove il metodo (di accesso alla risorsa) può valere solitamente http, ftp, gopher, telnet, news o mailto a seconda del protocollo che si deve utilizzare; il nomemacchina è il nome (letterale o IP) del computer su cui si trova l'oggetto; la porta (solitamente sottintesa, nel qual caso si assume un valore standard che varia a seconda del protocollo scelto) è il numero della porta con cui si intende comunicare con la macchina (un po' come fossero canali di una TV); il nomeoggetto è il nome completo (percorso e nome del file) dell'oggetto.
Va notato che la maggioranza delle macchine collegate alla rete - almeno, quelle su cui vengono realizzati gli ipertesti, gli archivi di software... - sono grossi calcolatori che funzionano con il sistema operativo Unix; pertanto il nomeoggetto segue per definizione (e anche quando la macchina a cui ci si collega è un PC) le convenzioni dello Unix, e non, ad esempio, dell'MS-DOS. Nella pratica, questo significa alcune cose importanti da tenere a mente:
In realtà, lo schema dell'URL varia leggermente a seconda del protocollo scelto, per cui può essere utile esaminare alcuni esempi:
http://www.cl.ais.net/mkurth/atsfaq.html
Questo indirizzo corrisponde all'ipertesto atsfaq.html (gli
ipertesti sono individuati dall'estensione .html o .htm)
posto nella directory mkurth situata nella directory radice (root)
del computer www.cl.ais.net (ossia, il computer www situato
nel sottoinsieme cl del sottoinsieme ais del dominio
net), da trasferire seguendo il protocollo HTTP.
http://www.ibm.com/news/
Questo indirizzo, simile al precedente, presenta però alcuni
aspetti particolari. Vi è indicato un percorso (/news/)
ma non un nome di file; in questo caso, e solo per il protocollo HTTP,
viene sottinteso il nome di file index.html (notare l'estensione
di quattro caratteri: nello Unix non c'è la limitazione a tre caratteri);
se questo file c'è, esso viene letto come ipertesto (vista la sua
estensione .html, che indica appunto un ipertesto); se questo
file non vi fosse, viene presentato un elenco dei file contenuti nella
directory indicata e l'utente può sceglierne uno.
Si noti anche la barra ( / ) finale: con molti browser non è necessaria,
ma è utile abituarsi a metterla in quanto indica e permette di sapere
immediatamente che l'ultimo nome scritto prima (nel nostro caso, news)
rappresenta una directory e non un file.
A volte, il nome di una directory inizia con il carattere speciale ~ (come
in /~daniele/): ciò indica che il nome che segue è
il nome di un "utente" del computer, e non un normale percorso
sul disco. Di fatto, la scrittura /~daniele/ è un altro
modo per indicare la directory public_html (è un
nome convenzionale, che significa "ipertesti pubblici") posta
all'interno dell'area dell'utente daniele. Per farla breve, indirizzi
contenenti ~ corrispondono solitamente a pagine scritte da singoli utenti
nel proprio tempo libero, mentre gli indirizzi senza ~ si riferiscono solitamente
a pagine ufficiali dell'ente o dell'azienda possessori del computer (a
grandi linee...).
ftp://ftp.coast.net/SimTel/win3/sysutil/3dk24.zip
Questo indirizzo individua il file 3dk24.zip (che, come dice
l'estensione, è un archivio realizzato con PkZip)
situato nella directory /SimTel/win3/sysutil/ (sono tre directory
una dentro l'altra: notare che SimTel è diverso da simtel)
del computer ftp.coast.net e da trasferire mediante il protocollo
FTP e da un sito FTP anonimo.
L'inserimento dell'URL di un file su di un browser provocherà lo
scaricamento del file (ossia la copia dal computer remoto al proprio) ed
anche una azione che varierà a seconda dell'estensione del file,
che può essere configurata dall'utente (generalmente il salvataggio
su disco).
ftp://ftp.sunet.se/pub/pc/
Questo indirizzo individua la directory (come si desume dalla barra
finale: se non ci fosse, individuerebbe un file) denominata pc
e contenuta nella directory pub della root directory del computer
ftp.sunet.se, alla quale si vuole accedere tramite il protocollo
FTP usato in modo anonimo.
L'inserimento in un browser dell'URL di una directory con protocollo FTP
provoca la visualizzazione dell'elenco dei file contenuti in essa, preceduto
in certi casi da messaggi informativi predisposti dall'amministratore del
sito remoto.
telnet://165.113.211.4:4801
Questo indirizzo individua un collegamento mediante il protocollo
TELNET con il computer 165.113.211.4 (individuato questa
volta non mediante il suo nome letterale, ma mediante il suo IP) usando
la porta numero 4801.
gopher://gopher.polito.it/
Questo indirizzo determina un collegamento con il gopher
del Politecnico di Torino. Verranno presentati una serie di menu che permetteranno
di scaricare file di vario tipo.
mailto:mdaniele@it.ibm.com
Sui browser che supportano la spedizione di posta, l'immissione di
questo indirizzo provoca l'apertura di una finestra nella quale è
possibile inserire un messaggio. Il messaggio viene successivamente spedito,
seguendo il protocollo SMTP, all'utente mdaniele del computer
it.ibm.com (si veda la sezione sugli
E-mail per il significato di @).
news:it.notizie
Questo indirizzo individua il newsgroup it.notizie; da notare
che per questo tipo di indirizzo, il "nomemacchina" non va specificato
in quanto viene usato quello di default specificato nella configurazione
del programma che si sta usando per leggere le news. Per altre informazioni
sugli URL delle news, si legga la sezione sui
newsgroup.
In conclusione, va detto che non tutti i programmi usati in rete si servono degli URL per individuare l'oggetto che l'utente desidera. Tipicamente, l'uso degli URL è associato all'uso di un browser (Netscape, Mosaic, WebExplorer, Internet Explorer, ...): in essi è possibile chiedere al programma di recuperare un oggetto fornendo direttamente l'URL. Invece, se si utilizzano altri programmi, ad esempio per la posta, o per il trasferimento di file, o per la lettura delle news, normalmente verrà chiesto di identificare l'oggetto fornendo le stesse informazioni (nome del computer, nome del file...) in un modo diverso e variabile da programma a programma. La grande innovazione degli URL è proprio quella di racchiudere in un unico insieme di caratteri tutte le informazioni necessarie per individuare un oggetto messo in rete.
2.4. Come posso ricordare gli indirizzi
più interessanti? Cos'è un bookmark?
P N - -
Spesso accade, navigando, di incontrare qualche pagina interessante. Poichè gli indirizzi di Internet non sono nè semplici da ricordare nè facili da scrivere senza errori, quasi tutti i browser dispongono di un'opzione per creare un bookmark (segnalibro; in Internet Explorer questa opzione è denominata favorites, tradotto nell'edizione italiana con preferite). Si tratta di un rimando alla pagina, che viene aggiunto nei menu del browser e provoca, se selezionato, il caricamento automatico della pagina.
La maggior parte dei browser permette anche di strutturare l'elenco dei segnalibri, aggiungendo dei "cassetti" (folder) e quindi nuovi livelli di profondità nel menu. Inoltre, è possibile ordinarli e spostarli di posizione. Con Netscape, in particolare, i bookmark sono memorizzati in un file denominato BOOKMARK.HTM posto nella directory del programma: potete quindi facilmente distribuire i vostri segnalibri e copiare quelli degli altri, semplicemente trasportando questo file. Ovviamente, siccome potete averne uno solo, dovrete poi, con operazioni di "taglia e incolla" eseguite con un normale editor di testo o con un word processor, inserire il corpo del file di bookmark altrui all'interno del vostro. Per Internet Explorer le cose non sono molto diverse, salvo che il file si chiama FAVORITE.HTM.
Netscape, inoltre, dispone di una opzione di menu denominata What's New, che effettua un collegamento veloce con tutte le pagine inserite nei bookmark e controlla quali di esse sono state modificate dall'ultima volta in cui le avete visitate.
2.5. Cosa sono HTTP e HTML?
P N - V
Entrambe queste sigle riguardano gli ipertesti. L'HTML (HyperText Markup Language) è il "linguaggio di programmazione", estremamente semplice, per creare gli ipertesti, ed è costantemente in via di sviluppo (attualmente siamo alla versione 3.0 e sta per essere pubblicata la versione 3.2, che peraltro molti browser supportano in modo non ufficiale). In realtà, l'HTML non è un vero e proprio linguaggio di programmazione. Infatti, un ipertesto è semplicemente un normale file di testo (ASCII) contenente, in mezzo al testo del documento e racchiuse tra i caratteri < e >, alcune "istruzioni" particolari, dette tag, che permettono di inserire immagini, creare rimandi, eccetera, e che sono appunto definite nell'HTML.
Non bisogna allora confondere l'HTML (che è una specie di rudimentale linguaggio di programmazione) con l'HTTP (HyperText Transfer Protocol), che è invece il protocollo di comunicazione usato per trasferire sulla rete gli ipertesti, e più in generale gli iperoggetti del World Wide Web, dal computer dove sono memorizzati a quello dell'utente che vuole leggerli. L'HTTP, difatti, permette di trasferire qualsiasi tipo di file; sarà poi il computer dell'utente, in base al tipo MIME del file, a decidere che cosa farsene. Ad esempio Netscape permette di configurare una azione predefinita per ciascun possibile file in arrivo; mentre i file HTML vengono visualizzati come ipertesti, i file di immagini vengono visualizzati come tali, i file audio vengono spediti alla scheda sonora (se disponibile), eccetera. Nel caso che il browser non sappia come trattare il tipo del file, normalmente esso chiederà all'utente che cosa fare.
FTP (File Transfer Protocol) è un protocollo di comunicazione studiato per la copia di file binari o di testo tra due computer collegati alla rete. Esso è stato sviluppato prima dell'HTTP, che svolge funzioni relativamente simili anche se mirate al World Wide Web; tuttavia l'uso di FTP per il trasferimento di file presenta alcuni vantaggi e alcuni svantaggi, che è bene che l'utente conosca. Va inoltre rilevato che esistono sulla rete un numero "infinito" di siti FTP, ossia di archivi di file ai quali ci si può collegare solo tramite questo protocollo: è quindi opportuno saperlo usare.
In particolare, mentre l'HTTP è essenzialmente centrato sul trasferimento di un file alla volta e solo nel caso che il file compaia come rimando selezionabile in un iperoggetto, l'FTP permette di leggere comodamente le directory e il loro contenuto sul computer remoto, e di muoversi al loro interno proprio come se ci si trovasse lì, mediante comandi del tipo cd pippo (per entrare nella directory pippo) o ls (che è per lo Unix l'equivalente del comando dir del DOS); permette inoltre di copiare file dal computer remoto al proprio o viceversa. Sono stati sviluppati programmi di FTP che dal punto di vista dell'utente funzionano come veri e propri copiatori (ad esempio per Windows il programma WsFtp, uno dei più comuni, è simile a File Manager), e permettono quindi di copiare più file con un solo comando, cosa che con i browser attuali non è possibile. Inoltre l'FTP, oltre alla modalità "binaria" che copia i file così come sono, possiede anche una modalità "ASCII", consigliata nel trasferimento di testi ASCII (.txt, non altri formati come PostScript o HTML), che effettua direttamente la conversione dei caratteri particolari (lettere accentate, ritorni di carrello...) tra i formati dei vari computer. Conviene quindi possedere, oltre ad un browser di ipertesti come Netscape o WebExplorer, anche un client FTP, ed usarlo per accedere ai siti FTP (beh, in realtà è questione di gusti; questo è solo un caldo consiglio).
2.7. Che cosa significa "FTP anonimo"
?
P N - -
Per poter accedere tramite FTP ad un computer, proprio come per TELNET, è necessario disporre di un proprio accesso autorizzato, ossia di un login e di una password. Tuttavia, proprio per poter creare archivi di software aperti al pubblico, è stato inventato il cosiddetto FTP anonimo: basta indicare, all'atto del collegamento, come login anonymous e come password il proprio indirizzo di E-mail e, in molti siti, si è autorizzati ad accedere al computer e a copiare un numero "ristretto" (che so, solo cinquecento megabyte...) di file, generalmente posti nella directory pub (pubblica) della root directory del computer. Questa è la modalità con cui si utilizza normalmente l'FTP, tanto che quasi tutti i programmi di FTP rispondono automaticamente alla richiesta fornendo questo login e questa password, a meno che non gli venga detto il contrario (il che può essere necessario con alcuni siti particolari: ad esempio certi (pochi) siti richiedono come password la parola guest, oppure altri permettono l'accesso a certe directory solo inserendo un login speciale, ad esempio pictures per entrare nell'archivio delle immagini).
Nessuno obbliga ad indicare veramente il proprio indirizzo di E-mail e non un indirizzo a caso; tuttavia, si sappia che tale indirizzo verrà utilizzato dagli amministratori del sistema remoto solo per scopi statistici (del resto, è comunque impossibile copiare un file per il quale non si abbia l'autorizzazione, per cui non serve certo a scopi di "polizia elettronica"). Questa è una delle regole di buona educazione della rete che è il caso di rispettare (in fondo, dall'altra parte c'è qualcuno che ha creato e mantenuto per puro altruismo un computer con centinaia di megabyte di programmi disponibili gratuitamente).
Quando ci si collega con un sito FTP (con modalità che variano a seconda del programma che state usando) il server richiede il login e la password; normalmente il vostro programma provvederà a rispondere automaticamente e ad effettuare il login "anonimo". Dopo di ciò (e, in certi siti, anche quando si cambia directory) il server spedisce alcuni brevi messaggi all'utente, contenenti consigli, indicazioni utili, o altro. Se state usando FTP tramite un browser, e avete inserito l'URL di una directory, questi messaggi sono solitamente visualizzati in cima all'elenco dei file; se usate un client apposito, esso generalmente dispone di una apposita finestra per visualizzare questi messaggi.
All'interno di ciascuna directory è solitamente posto uno (o più) file di testo ASCII contenente l'elenco dei file posti in quella directory e una breve descrizione (nomi tipici per questi file sono INDEX o 00-INDEX o più raramente ls-l, che è il nome del comando Unix per generare una lista completa e particolareggiata dei file), oppure messaggi e altre indicazioni per l'utente (quasi sempre file di questo tipo si chiamano README). Nella root directory di alcuni siti FTP è posto un file chiamato ls-lR (altro comando Unix) contenente l'elenco particolareggiato dei file contenuti in tutte le varie sottodirectory del sito (talvolta esso ha anche altri nomi, tipo allfiles.txt, e generalmente la sua esistenza è indicata nei messaggi mostrati all'atto della connessione). Può talvolta essere utile, invece di girare per ore come dei disperati tra le varie sottodirectory, scaricare questo file, pur se di grosse dimensioni, ed esaminarlo con calma una volta scollegati dal sito e/o da Internet.
Per copiare i file la procedura varia a seconda del programma che state usando. Va però detto che generalmente i file contenuti nei siti FTP sono compressi, per farvi risparmiare tempo durante la trasmissione; è bene, prima di scaricare un file, accertarsi di possedere il programma per decomprimerlo (e inoltre, se il file è costituito da dati, ad esempio grafici, memorizzati in un particolare formato, bisognerà poi avere un programma in grado di leggerlo: è inutile copiare una animazione di 3 megabyte in formato MOV se poi non avete niente per vederla, vi sembra?). Un elenco dei più comuni formati di compressione è contenuto nel seguito di questo capitolo.
Esistono anche modi di recuperare file da archivi FTP mediante E-mail (solitamente noti come FTPMAIL). Si tenga però presente che questi servizi sono stati studiati per utenti che non possiedono un accesso diretto alla rete, per cui è buona educazione, per chi può accedere direttamente ai siti FTP, usare FTPMAIL solo in casi di vera necessità. Esiste infine una versione leggermente evoluta dell'FTP, detta FSP.
È conveniente cercare di connettersi in ore che non siano di punta per il computer remoto (ossia, le 16 in Italia sono un'ora di grande traffico per un computer americano), sia per non disturbarlo troppo (spesso i computer FTP svolgono anche attività di vario tipo per gli utenti locali, che vengono rallentate dai collegamenti FTP esterni: per questo motivo molti siti FTP anonimi sono chiusi o ridotti nelle ore locali d'ufficio), sia per trovarlo meno intasato e quindi per operare più velocemente. In generale, non bisogna mai dimenticare che un archivio FTP anonimo è una gentile concessione del possessore del computer su cui giace, che in caso di problemi di qualsiasi tipo può chiuderlo dall'oggi al domani. Inoltre, proprio per evitare problemi di sovraffollamento in molti siti FTP esiste un tetto al numero massimo di utenti anonimi collegati contemporaneamente, superato il quale non vengono più accettate connessioni. Pertanto, collegandosi con uno di questi siti nelle ore di punta si hanno grandi probabilità di non riuscire ad entrare.
Nel caso si abbiano problemi di connessione con un sito FTP, o il vostro programma non sembri funzionare correttamente con quel sito, provate, all'atto dell'inserimento della password a inizio collegamento, a far precedere il vostro indirizzo di E-mail da un segno meno ( - ). In certi casi questo dovrebbe migliorare il collegamento. Altri problemi di connessione possono provocare un messaggio di "Connection timed out".
2.8. Quali sono i principali comandi
FTP ?
P N E -
Un classico collegamento FTP prevede l'utilizzo di un programma cliente che funziona a riga di comando, in cui l'utente inserisce gli opportuni comandi. Negli ultimi anni si sono affermati tuttavia programmi come WsFtp (che offrono una interfaccia alla File Manager) o Netscape (che trasforma le directory in rimandi di ipertesti); usando questo tipo di programmi non sarà necessario imparare i comandi dell'FTP. Poichè tuttavia esistono ancora molti client a riga di comando, che talvolta sono gli unici utilizzabili (ad esempio quando si lavora sotto Unix o si usa FTPMAIL), si riporta qui un elenco dei più comuni comandi FTP, in gran parte derivati dai comandi Unix; quasi tutti dovrebbero essere implementati in qualsiasi programma stiate usando.
open sito login password | Si collega con il sito indicato, fornendo login e password (solitamente omessi, nel qual caso si effettua un accesso anonimo). |
cd pippo | Entra nella directory pippo sul computer remoto (/ per la root, .. per la parent directory). |
pwd | Visualizza il nome completo della directory in cui vi trovate. |
ls | Mostra i file contenuti nella directory corrente (equivale a dir del DOS); dispone di molte opzioni utili. |
lcd pippo | Entra nella directory pippo sul vostro computer (utile per stabilire dove salvare i file che prelevate). |
binary (o bin) | Setta la modalità di trasferimento binaria. |
ascii (o asc) | Setta la modalità di trasferimento ASCII. |
get nomefile | Preleva il file nomefile e lo salva nella directory corrente sul vostro computer. |
mget nomefile | Come get, ma permette l'uso di caratteri jolly (asterischi e punti di domanda) nel nomefile. |
put nomefile | Copia il file nomefile dal vostro computer a quello remoto. |
mput nomefile | Come put, ma permette l'uso di caratteri jolly ( * e ?) nel nomefile. |
more nomefile | (Non standard) Mostra il file nomefile (un file di testo ASCII). |
predir | (Non standard) Vi fa rivedere il risultato dell'ultimo comando ls. |
help | Mostra l'elenco dei comandi supportati. |
quit | Si scollega dal sito a cui si è collegati. |
bye | Si scollega dal sito a cui si è collegati e esce dal programma. |
Scegliere la corretta modalità di trasferimento è vitale per evitare che i dati che vi giungono siano inutilizzabili; in particolare, mentre un testo ASCII trasferito in modo binario presenterà solo qualche inconveniente (tipicamente vi sarà una riga vuota inserita dopo ogni riga di testo), un file binario trasferito in modalità ASCII sarà completamente inutilizzabile. Per questo motivo, è bene fornire sempre un comando bin o ascii (oppure, nel caso di programmi come WsFtp, controllare quale modalità è selezionata) prima di trasferire alcunchè.
2.9. Che cos'è un mirror?
E cos'è un mirror SimTel ?
P N E -
Con il nome di mirror (specchio) si designa una copia di tutti o di una parte dei files di un certo sito FTP anonimo, che viene creata in un altro sito FTP anonimo ed aggiornata periodicamente. In questo modo, per recuperare un file posto nel sito FTP "originario" non è necessario collegarsi con esso (che può funzionare lentamente, essere sovraffollato, lontano, disattivato...), ma è possibile collegarsi con il sito contenente il mirror e copiarlo da lì. All'interno del mirror, difatti, la struttura delle directory e i nomi dei file rimangono immutati, per cui è possibile ritrovare facilmente i file.
Il vantaggio dei mirror è generale: collegandosi ad un mirror più vicino invece che al sito originario, l'utente ha il vantaggio di una connessione più veloce, mentre la rete nel suo complesso viene occupata in maniera minore. Specialmente in Europa si trovano molti mirror di siti americani solitamente intasatissimi che è bene utilizzare: alcuni ad esempio si possono trovare nei siti:
ftp://ftp.sunet.se/pub/pc/mirror/
ftp://nic.switch.ch/mirror/
ftp://ftp.cnr.it/pub/PC-IBM/
Si noti l'utilizzo degli URL per indicare i siti: è utile abituarsi a farlo, in quanto un URL racchiude in sè tutte le informazioni necessarie ad un altro utente per ritrovare l'oggetto di cui si sta parlando. Dopo di che, non è assolutamente necessario usare un programma che funzioni tramite URL, come Netscape o WebExplorer, per accedere a questi siti; si può usare anche un programma di FTP, che solitamente richiede di inserire in fasi separate le varie parti dell'indirizzo: in tal caso gli si dirà di collegarsi con la macchina, ad esempio, ftp.sunet.se e quindi di entrare nella directory /pub/pc/mirror/).
Una catena particolare di mirror è quella cosiddetta dei "mirror SimTel": si tratta di un grande numero di mirror che si mantengono costantemente aggiornati. Quando si trova un file FTP contenuto in una sottodirectory di una directory denominata simtel (o SimTel) è bene allora andare direttamente ad un mirror vicino, che per l'Italia - a meno di nuove attivazioni - è ftp://ftp.cnr.it/pub/PC-IBM/simtel/.
Ad esempio il già citato file: ftp://ftp.coast.net/SimTel/win3/sysutil/3dkb24.zip
lo si può recuperare all'URL: ftp://ftp.cnr.it/pub/PC-IBM/simtel/win3/sysutil/3dk24.zip
(notare che una volta entrati nel vero e proprio mirror simtel il percorso è perfettamente identico nei due siti), con una spesa di tempo e denaro per la connessione sensibilmente minore.
Naturalmente può anche succedere che un mirror non sia perfettamente aggiornato o completo; una volta verificato ciò, ci si può allora rivolgere al sito originario. Solitamente, tuttavia, gli aggiornamenti sono frequenti ed automatici. Nel seguito della guida sono forniti gli indirizzi di alcune note catene di mirror.
2.10. Che cos'è TELNET?
P N - V
TELNET è un protocollo di comunicazione che permette di controllare un computer a distanza. Questa esigenza nasce dal fatto che, fino alla diffusione dei personal computer, i "computer" utilizzati erano (e, molti di quelli connessi alla rete lo sono tuttora) grosse stazioni di lavoro che - tramite il sistema operativo Unix - permettevano a più utenti di lavorare contemporaneamente utilizzando terminali differenti (a differenza dei PC, in cui un solo utente alla volta può usare il computer); per il funzionamento del computer è allora del tutto indifferente se il terminale si trovi a venti centimetri o a diecimila chilometri da esso.
In pratica, tramite TELNET si "entra" in un computer remoto, proprio come se ci si trovasse lì, di fronte ad un suo terminale; nel caso si abbia un'area (ossia, in parole povere, un accesso al computer ed un pezzo del suo disco a propria disposizione) si potranno svolgere a distanza tutte le normali operazioni (eseguire programmi, leggere e spedire posta elettronica, copiare, cancellare, rinominare file...), usando il computer dal quale ci si sta collegando semplicemente come un terminale di quello remoto. TELNET è quindi differente da protocolli come HTTP o FTP, che permettono semplicemente il trasferimento di file sulla rete.
In questo modo, TELNET completa FTP, nel senso che disponendo di un accesso ad un computer remoto è possibile tramite TELNET usare un altro computer connesso alla rete come terminale, e tramite FTP copiare file dal computer che si sta usando come terminale a quello su cui si ha l'accesso e viceversa.
Per poter accedere ad un computer remoto è necessario essere un suo utente riconosciuto e disporre quindi di un proprio login e di una propria password. Tuttavia, sono stati sviluppati sistemi per cui, collegandosi in TELNET ad un dato computer con un nome utente e una password convenzionali e pubblicamente noti, ci si trova in un'area particolare, predisposta dall'amministratore del computer, nella quale si possono eseguire programmi "aperti al pubblico" (ad esempio ARCHIE, o un gioco interattivo...).
Altri protocolli simili, meno comuni, che realizzano sostanzialmente gli stessi obiettivi sono TN3270 e RLOGIN. Anche l'uso di questi protocolli, così come per TELNET, può essere effettuato mediante un URL, usando al suo interno come metodo le parole telnet, tn3270 o rlogin rispettivamente. Si noti però che i browser attualmente esistenti non contengono al proprio interno un emulatore di terminale, necessario per effettuare collegamenti di questo tipo: pertanto all'inserimento di un URL richiedente questi metodi essi provvederanno a caricare un qualsiasi programma esterno che svolga tale funzione, che deve essere posseduto dall'utente e inoltre deve essere stato precedentemente specificato nella configurazione del browser. Un programma di TELNET molto comune è Ewan Terminal.
Ricapitolando, quello che TELNET permette di fare è:
2.11. Che cos'è ARCHIE?
- N - -
ARCHIE è il nome di un sistema di programmi creato per facilitare la ricerca di software nei siti FTP anonimi, e messo a disposizione tipicamente tramite un collegamento TELNET: in ciascuno dei computer che forniscono questo servizio è contenuto un archivio, periodicamente e frequentemente aggiornato, contenente i nomi dei file memorizzati in un certo numero di siti FTP (più di mille in molti ARCHIE), la loro posizione sull'hard disk del sito e per alcuni di essi anche una descrizione testuale. Non si tratta quindi di un indice in cui chiunque può inserire singoli file, ma piuttosto di un catalogo del contenuto di un certo numero di siti, tipicamente universitari, che hanno aderito all'iniziativa.
Collegandosi ad un ARCHIE via TELNET e inserendo come login archie verrà presentato un "prompt", ossia un segnale di attesa di un comando, proprio come quello dell'MS-DOS. Si potranno allora digitare alcuni comandi. I principali sono:
prog stringa | Ricerca file il cui nome sia o contenga stringa (a seconda del tipo di ricerca) |
set search tiporicerca | Stabilisce il tipo di ricerca: se al posto di tiporicerca si scrive exact, il comando prog troverà tutti i programmi il cui nome è esattamente uguale a stringa (maiuscole/minuscole comprese), se si scrive subcase troverà tutti i programmi il cui nome è uguale o contiene al proprio interno la stringa indicata (maiuscole/minuscole comprese), se si scrive sub troverà tutti i programmi il cui nome è uguale o contiene al proprio interno la stringa indicata (senza differenza tra maiuscole e minuscole). (Questo comando, ovviamente, influenza solo le ricerche successive. Normalmente, all'atto del collegamento il modo predefinito è exact.) |
set sortby tipoordine | Stabilisce l'ordine con cui vengono presentati i risultati della ricerca: se al posto di tipoordine si scrive hostname in ordine alfabetico per nome letterale del sito FTP, se si scrive time in ordine dal file più recente al più vecchio, se si scrive size in ordine dal più grosso al più piccolo |
whatis stringa | Ricerca file all'interno della cui descrizione compaia la stringa specificata |
mail indirizzo | Spedisce i risultati della ricerca all'indirizzo di E-mail indicato |
help | Entra in un sistema di aiuto, in cui immettendo un comando si riceve come risposta un aiuto sul suo uso |
bye | Chiude il collegamento e si disconnette |
La stringa di ricerca può contenere caratteri jolly come
l'asterisco (ad esempio il comando prog ghost* ricerca tutti i
file il cui nome inizia per ghost).
Quando si immette un comando prog o whatis, la propria richiesta viene inserita in una "coda" (queue) di ricerca (query): il computer, difatti, esegue in ordine cronologico tutte le ricerche che gli vengono presentate dagli utenti collegati in quel momento. Esso generalmente fornisce allora all'utente la sua posizione nella coda (queue position) e il tempo di attesa previsto. Al termine della ricerca, viene fornita una lista, spesso molto lunga, di una serie di programmi in vari siti FTP sparsi per mezzo mondo, i cui nomi soddisfano alla richiesta effettuata; l'utente potrà poi farsela spedire via E-mail e leggerla con calma, dopo essersi scollegato dall'ARCHIE.
ATTENZIONE: In realtà, non tutti gli ARCHIE si comportano allo stesso modo: i comandi disponibili potrebbero cambiare. In particolare, alcuni ARCHIE non permettono l'uso del comando mail.
Sono stati recentemente sviluppati anche programmi specializzati nell'accedere agli ARCHIE, che semplificano la ricerca per l'utente funzionando tramite interfacce grafiche semplificate (un esempio è WsArchie per Windows).
Alcuni dei principali siti ARCHIE sono:
archie.unipi.it
archie.doc.ic.ac.uk
archie.funet.fi
archie.switch.ch
archie.univie.ac.at
archie.ac.il
Questo servizio è spesso sottovalutato, ma è molto utile nel caso si stia cercando di recuperare un file di cui si conosce il nome da un sito molto lontano o comunque lento. In questo caso, può essere utile interrogare uno o più ARCHIE per conoscere tutti i siti FTP in cui si può trovare quel file, e quindi collegarsi al più vicino.
Per non intasare troppo la rete, è raccomandato l'uso degli ARCHIE più vicini; inoltre è opportuno cercare di restare collegati per il minor tempo possibile, in modo da permettere poi ad altri utenti di accedere al servizio. Per questo motivo è buona norma non esaminare i risultati della ricerca, che generalmente sono abbastanza voluminosi, mentre si è collegati, ma piuttosto farseli spedire al proprio indirizzo postale. Si tenga presente che un E-mail, specialmente se da un sito vicino come archie.unipi.it, impiega pochi secondi ad arrivare, per cui questo procedimento non provoca una apprezzabile perdita di tempo.
In realtà, pur essendo ARCHIE un sistema autonomo rispetto al WWW, esistono attualmente diversi siti web che permettono di collegarsi ad un sistema ARCHIE senza necessità di avere quindi un apposito programma client specializzato. Tutto quello che c'è da fare in questo caso è inserire le informazioni sul file da ricercare in una apposita pagina Web e dare avvio alla ricerca.
Non solo. Alcuni siti specializzati offrono dei potenti motori specializzati nella ricerca di programmi, svolgendo quindi una funzione molto simile a quella di ARCHIE. Inoltre, questi servizi offrono ulteriori opzioni che permettono una ricerca più ampia (per es., per parola chiave, per ambiente operativo, per categoria, ecc.).
Due tra i più noti si trovano agli URL:
http://www.shareware.com
http://www.hotfiles.com
(quest'ultimo contenente, tra l'altro, una ottima recensione critica di ogni programma archiviato).
Michele Daniele, E&T