ISTITUTO SUPERIORE “E.FERMI” Tecnico Settore Tecnologico e Liceo Scientifico delle Scienze Applicate Strada Spolverina, 5 – 46100 MANTOVA Tel. 0376 262675 Fax 0376 262015 www.fermimn.gov.it e-mail: [email protected] Reti di computer Most people my age are dead at the present time, and you could look it up. “The Old Perfessor” Casey Stengel (1890-1975), baseball manager (aged 70) Una delle perle di una leggenda del baseball, un Trapattoni ante litteram. Non aveva in mente Google, ma di questi tempi “look it up” (consultalo) è una delle cose più frequenti che siamo in grado di fare con il computer di casa nostra, senza più la necessità di andare in biblioteca, come facevano i padri. Tutti, o quasi, sanno che sfogliando le pagine dell‟Internet, possiamo scoprire di tutto: come si fabbrica una granata (motori di ricerca) sapere di più su un argomento di storia (enciclopedie) rintracciare un vecchio amico (social networks) imparare a fare il nodo alla cravatta (filmati) Qualunque cosa stiamo cercando, abbiamo buone possibilità di trovarla in pochi secondi1. Abbiamo a disposizione una vastissima sorgente di informazioni, che ha contribuito a far nascere nuove interazioni sociali, commerciali, anche politiche2. Nelle applicazioni gestionali è diventato basilare trasmettere i dati tra computer sparsi in zone anche molto lontane, tanto è vero che è diventato possibile far spesa dall‟altra parte del mondo; inoltre, per il buon funzionamento di un‟azienda, è importante che le informazioni siano disponibili a tutto il personale interessato in pochi secondi. Anche nel tempo libero, quando passiamo una foto o una canzone da un cellulare all‟altro, usiamo una piccola rete di computer. In una parola, connessione è l‟odierno mantra della tecnologia. Tecnologia delle comunicazioni La comunicazione tra persone nasce come interazione diretta (face-to-face), ma le civiltà, e ancora prima la natura, hanno trovato numerose altre forme, differenti sia per la codifica della comunicazione sia per la sua trasmissione. Anziché essere in presenza ravvicinata, la comunicazione può avvenire per quanto lontano possa portare la trasmissione del suono, della luce, di sostanze chimiche. Piante e animali, ad esempio, che hanno sensi più sviluppati dei nostri, hanno elaborato innumerevoli forme di messaggi. Rappresentazione dei messaggi (informazioni) La scrittura è stato uno dei passi fondamentali nella gestione delle comunicazioni, mentre l‟alfabeto ha consentito la codifica dei suoni in pochi e semplici3 segnali. Oltre alla forma della rappresentazione, si è lavorato sul mezzo fisico che potesse, oltre che trasmettere, conservare i messaggi. Tavolette di pietra, di terracotta, di cera; fogli di papiro, pelli di animali, tessuti. Indubbiamente la carta è stata un‟altra delle grandi invenzioni dell‟umanità, assieme alla stampa, che ha consentito l‟avanzamento della scienza e della cultura, conoscenze che spesso sono state tenute nascoste a chi è fuori dal potere. 1 A volte le ricerche non riescono: oltre ai possibili guasti tecnici, potremmo anche avere nessun risultato, o troppi Si pensi all‟uso della rete nelle rivoluzioni degli ultimi anni 3 La semplicità di alcune scritture è molto opinabile, ma in generale la scrittura ha facilitato le comunicazioni 2 Comunicazione a distanza In epoche non tecnologiche le civiltà hanno sviluppato ingegnosi mezzi per la comunicazione a distanza: ad esempio, rumori di oggetti, strumenti musicali (il corno in particolare), o segnali visivi, come falò o segnali di fumo. Interessante, e poco nota, è stata un‟applicazione effettuata in Francia con una rete telegrafica ottica, nata da un‟idea di un ingegnere del XVIII secolo, Claude Chappe. Questi progettò una rete di stazioni sormontate da un‟attrezzatura chiamata semaforo, in pratica un sistema di tre travi che potevano, tramite tiranti, assumere diverse configurazioni, rappresentanti le lettere dell‟alfabeto. Le stazioni potevano essere costruite a distanza di alcuni chilometri (anche 20 o 30, a seconda delle condizioni visive), e il sistema, messo in funzione nel 1794, dava risultati eccellenti, consentendo una velocità di trasmissione dei messaggi stimata in circa 500 km/h. Claude Chappe, una stazione semaforica e alcune codifiche Gli svantaggi di questo sistema sono evidenti: gli operatori dovevano essere sempre all‟erta e le possibilità di errore erano abbastanza alte, senza contare i problemi di visibilità legati alla situazione climatica. Una delle soluzioni trovate alla metà del secolo XIX è stato il telegrafo, con il quale si è arrivati alla comunicazione tramite correnti elettriche, tecnologia ancora ampiamente diffusa sia per la voce sia per i dati. Poi sono stati usati altri mezzi, come le onde elettromagnetiche per radio e TV, i cavi di rame e la fibra ottica, ora comunemente usate nelle reti digitali. Queste ultime, nate negli ultimi decenni, hanno a loro volta attraversato diverse fasi, passando da una comunicazione testuale ad una multimediale. Telecomunicazione nella storia: telegrafo, radio, una perforatrice trainata da un bue (Taiwan 1961) Per comunicare, però, non è possibile collegare un computer direttamente alla rete telefonica: c‟è la necessità di un dispositivo intermedio tra computer e rete. Il primo strumento di questo tipo è stato il MODEM, ora sostituito da uno analogo, il TA, che si collega alle moderne reti digitali. MODEM e TA Il MODEM è il dispositivo che rende possibile la comunicazione tra computer e altri dispositivi analoghi usando la rete telefonica vocale. Il termine deriva dall‟espressione MOdulatore/DEModulatore, perché il dispositivo nasce come intermediario tra sistemi di comunicazione analogici (la rete telefonica) e digitali (computer). Il modem è collegato all‟ISP (Internet Service Provider) attraverso il cosiddetto local loop (a volte chiamato “last mile” o “ultimo chilometro”). Viene detto demarcation point il confine tra la rete esterna (ISP) e quella interna (cliente): in pratica, la presa che solitamente abbiamo tutti sul muro. La modulazione consiste nel modificare un‟onda (che collega i dispositivi trasmittente e ricevente) in corrispondenza di segnali diversi. L‟onda (portante) può essere modulata in ampiezza, frequenza e fase. La modulazione più diffusa è quella di frequenza, a volte accompagnata da una modulazione di fase. La tecnologia del modem non è nata con i computer né con i PC, come si potrebbe pensare. I primi modem risalgono agli anni ‟20, e sono usati per trasmettere i dati alle telescriventi; un‟altra applicazione viene sviluppata, negli anni ‟50, dall‟aviazione USA per trasmettere le immagini radar. Sempre in quel periodo, la AT&T, che in America possiede un monopolio sulle telecomunicazioni, sviluppa attivamente questa tecnologia, per arrivare ai primi modelli commerciali attorno al 1960. I modem AT&T rimangono fino alla rinuncia del monopolio (1968), gli unici che possono essere Telescriventi anni „50 collegati elettricamente alle linee telefoniche Modem anni „60 della stessa società. Per questo motivo i primi modem “da casa”, che compaiono negli anni ‟70, sono in realtà degli accoppiatori acustici, perché non connettono direttamente computer e telefono, ma sono dotati di un alloggiamento (cradle=culla) per la cornetta: la comunicazione avviene quindi inizialmente attraverso segnali audio che vengono ricevuti dal computer attraverso l‟aria. Intorno al 1980 nascono i modem nella abituale scatola fornita di LED, che si possono collegare tra il computer e le prese telefoniche. I pionieri della comunicazione per PC sono Dale Heatherington e Dennis Hayes, due tecnici elettronici, che, come altri, partono da un garage fondando una loro piccola Accoppiatore acustico anni „70 ditta (1977) e arrivano ad una compagnia multimilionaria, la Hayes Communications, che domina la scena dei modem, al punto che i comandi di programmazione dei modem fonici sono chiamati comandi Hayes. Nel giro di qualche anno, le comunicazioni si sviluppano sempre più, richiedendo volumi sempre maggiori di dati: appare chiaro che la soluzione è nelle reti digitali. Un primo esperimento si ha con la tecnologia ISDN (Integrated Services Digital Network), che si guadagna una buona popolarità nel settore trasmissioni radioTV e come rete di supporto per linee dedicate in campo bancario, ma non trova la diffusione generalizzata a causa della nascita di uno standard più conveniente, chiamato ADSL (Asymmetrical Digital Subscriber Line)4, che riesce a sfruttare la normale linea telefonica senza particolari dispositivi aggiunti. I dispositivi di comunicazione sono ancora chiamati “modem”, ma in realtà non lo sono, dato che non modulano i segnali digitali del computer. Il termine corretto è TA (Terminal Adapter). I modem analogici (voce/dati) vengono tuttora usati in posti non raggiunti da connessioni veloci o reti cellulari. Mentre i primi modem consentivano una velocità di trasmissione di 300 bps, negli anni ‟90 si arriva a 56Kbps. Attualmente i TA ADSL consentono una velocità di 800kbps in “upload” e di 8Mkbps in “download”. I TA sono ora comunemente dotati di tecnologia wireless per essere usati anche come gestori di reti domestiche, consentendo collegamenti diretti con portatili e cellulari senza dover usare molteplici cavi. Sui telefoni cellulari sono presenti nuove tecnologie (GPRS, UMTS, HSDPA) che consentono l‟accesso all‟Internet in WAP (Wireless Access Point) wireless. Le vecchie linee telefoniche, a loro volta, stanno (lentamente) venendo sostituite quelle a fibre ottiche, che consentono velocità e capacità di trasmissione molto maggiori. Esse funzionano grazie alla trasmissione di raggi di luce, che, se incidono la superficie della fibra con angoli inferiori a 35° (valore approssimativo), subiscono il fenomeno della riflessione totale (vengono riflessi senza perdita di segnale all‟esterno). I raggi luminosi possono trasportare molta più informazione dei segnali elettrici, ed in più sono molto meno disturbati dai fenomeni elettromagnetici, quali, ad esempio, i fulmini. 4 La Hayes Communications, avendo investito pesantemente sulla tecnologia ISDN va in fallimento nel 1999. Heatherington, forse più lungimirante del suo collega, si era già ritirato, carico di soldi, per dedicarsi alla vita comoda. Hayes, invece, lavora ancora: oltre a fare consulenze tecniche, gestisce il bar “Whiskey Rock”, vicino ad Atlanta. Cosa sono e cosa fanno le RETI Il primo significato di “rete” che si incontra è quello di una struttura di corda o di fili di altro genere, annodati o collegati a intervalli regolari (in latino, infatti, deriva dal verbo che significa “tessere”). Per analogia, il termine indica anche un sistema esteso di elementi, detti nodi5, collegati tra loro, come una rete ferroviaria, un gruppo di persone con interessi comuni, o una catena di punti di distribuzione commerciale. In ambito tecnologico, una rete può essere composta da componenti elettrici collegati da circuiti o da segnali radio (rete telefonica, rete televisiva); più spesso, però, si intende una rete informatica, composta da computer o altri dispositivi affini, collegati tra loro e in grado di funzionare in maniera sinergica6. Una rete è quindi una infrastruttura che mette in comunicazione 2 o più nodi, consentendo la circolazione di idee, materiali, segnali elettrici. In particolare, i segnali (di varia natura, non solo elettrici) che vengono trasmessi in una rete di computer rappresentano i dati che vengono scambiati tra i nodi (detti anche host7). Rete locale (LAN) Una delle reti più famose: la metropolitana di Londra Una rete fornisce un servizio di trasmissione a distanza, da pochi centimetri fino allo spazio. I servizi forniti sono molteplici: telefonate, programmi TV o radio, ricerca di informazioni nell‟Internet, o anche partecipazione a videogiochi con qualcuno in altri Paesi. Tutte queste attività dipendono da robuste reti affidabili che devono essere trasparenti: chi le usa non dovrebbe mai pensare a come funzionano, o, meglio ancora, non dovrebbe nemmeno accorgersi che esistono. L‟effetto è la connessione di persone e attrezzature, non importa dove si trovino nel mondo, o la loro distanza reciproca. In molti casi, nemmeno il momento in cui si usa la rete è determinante perché molti servizi sono asincroni (ovvero non richiedono la presenza contemporanea dei due soggetti della trasmissione o della comunicazione). Una rete di computer raggiunge tutto il mondo Sono costruttori e gestori delle reti informatiche a doversi occupare dei fattori che influenzano il processo di comunicazione: da quelli logistici (connessioni) al traffico dei dati interessati (con particolare attenzione alla loro quantità e qualità). E adesso??? 5 Logistica Traffico Nelle reti da pesca, infatti, le corde sono annodate nei punti in cui si incrociano. Sinergia = azione combinata di più elementi, il cui effetto è solitamente potenziato rispetto alla somma dei singoli contributi. 7 Host = ospite (nel senso di “colui che ospita”) 6 Componenti di una rete telematica Viene detta telematica (in inglese ICT: Information and Communication Technologies) il complesso delle tecnologie che si occupano della comunicazione automatizzata tra dispositivi informatici. Nel passato la tecnologia della comunicazione ha richiesto reti diverse ed apparati distinti per accedervi, dedicati alla voce (telefono), ai suoni (radio), alle immagini video (televisione), ai dati (computer). La tendenza di questi tempi, sia per questioni pratiche sia per le richieste dell‟utenza, è di permettere l‟accesso a tutti questi servizi tramite un‟unica rete, che viene detta convergente perché in grado di riunire tutti i servizi (voce, suoni, video, dati) attraverso lo stesso canale di comunicazione. Anche i dispositivi dell‟utenza sono spesso intercambiabili: è ormai comune poter usare telefoni e computer (palmari, tablet, fissi) per ogni tipo di trasmissione, così come usare il proprio televisore per connettersi alla rete. Tutto questo è stato reso possibile con le reti digitali, che formano la base comune per la molteplicità dei servizi: unificare le modalità di gestione e di trasmissione è stato il passo necessario verso la convergenza. I componenti di una rete ricadono in quattro categorie: terminali (computer di vario genere, detti host); periferiche condivise8; dispositivi di rete9; mezzi trasmissivi. A loro volta, i terminali possono essere: Computer general purpose (PC, laptop, palmari); Server (computer dove sono concentrate particolari risorse); ATM10 POS11 Telefoni VoIP12 (anche smartphone). L‟insieme dei dispositivi di rete e dei mezzi trasmissivi costituisce l‟infrastruttura delle rete, dedicata alla gestione del traffico dei dati. Viene detto cablaggio13 l‟azione di connettere i cavi tra i nodi della rete; il termine è ormai di uso comune anche quando sono presenti dispositivi wireless. 8 Una periferica condivisa fa parte a tutti gli effetti della rete: non va confusa con una periferica locale, collegata solamente ad un host (come avviene, ad esempio, per una webcam). 9 Nodi intermedi, solitamente switch e router. 10 ATM=Automated Teller Machine (bancomat; teller=cassiere). 11 POS=Point Of Sale (nei punti di vendita). 12 VoIP=Voice Over Internet Protocol: telefonia trasportata attraverso l‟Internet anziché la rete normale. 13 Cable=cavo. Reti locali Anche senza dover coprire lunghe distanze, è ormai indispensabile collegare più computer tra di loro, per facilitare lo scambio di informazioni e il lavoro di una qualsiasi organizzazione. La rete “minima” viene detta PAN (Personal Area Network), si sviluppa in pochi metri ed è normalmente costituita da telefoni o computer palmari. Più ampia è la LAN (Local Area Network), che può coprire un intero edificio ed è costituita da computer, ai quali possono essere affiancati altri dispositivi portatili o telefoni VoIP (Voice Over IP). Due computer possono essere collegati direttamente con un cavo Ethernet, simile a quello telefonico: è però formato da 4 doppini anziché 2, quindi prese e spine sono di tipo RJ-45, più grosse delle RJ-11. In questo caso il collegamento è “peer-to-peer” (rete paritaria), ed è limitato dal numero di prese di rete che sono presenti sui computer. Generalmente si tratta di 2-3 computer, o pochi di più. Schema peer-to-peer, connessioni RJ-45, spina RJ-11 Un modo più efficiente di costruire una rete locale è con un dispositivo di collegamento detto switch. Non va confuso con l‟omonimo termine che significa “interruttore”. Uno switch collega più computer in una rete locale. Altri dispositivi di collegamento ormai in disuso sono gli hub e i bridge. Rete a stella (con switch centrale) Simbolo dello switch nei diagrammi Una rete locale può essere domestica (a gestione familiare) o aziendale: in questo caso la rete comprende solitamente computer di una medesima organizzazione, situati nel medesimo edificio, e gestiti in maniera omogenea. Questo tipo di rete può arrivare a qualche centinaio di computer. A seconda dei bisogni, quindi, esistono numerosi tipi di switch, con funzioni e prezzi diversi: ovviamente, quelli usati per una rete domestica non sono paragonabile con quelli di una grande azienda, dove possono essere presenti anche decine di switch di varia potenza e destinazione. Ultimamente, sono sempre più in uso switch di tipo wireless (WAP: Wireless Access Point), che consentono di costruire una rete a stella che non ha bisogno di collegamenti diretti via cavo, perché tutto avviene via radio. Una rete wireless ha qualche inconveniente di copertura dovuto a ostacoli o interferenze radio, per non dire dei problemi di sicurezza, ma offre l‟indubbio vantaggio della mobilità. Collegamento tra reti Come è ormai ben noto a tutti, i confini delle reti locali non sono un vincolo. Lo switch non è in grado di superarli: nel caso ci si debba collegare con altre LAN (come, ad esempio, per attraversare il suolo pubblico o per accedere all‟Internet), occorre un altro dispositivo detto router. Nel caso di questo nome gli equivoci non si limitano al significato, ma coinvolgono anche la pronuncia. Gli inglesi preferiscono “ru:ter”, gli americani “rauter”. Per passare alle definizioni: Router: sega circolare Rooter: strumento di pulizia delle condutture idrauliche Router: dispositivo che collega più reti informatiche tra di loro Questi non c‟entrano Router professionali Un router viene solitamente collegato ad un TA (o un modem) per raggiungere le reti remote attraverso l‟Internet. In questo modo si costituisce una WAN (Wide Area Network), o rete geografica. In ambito locale, un router può essere il centro di una sola rete (come uno switch) oppure concentrare più reti locali in una più estesa. Essendoci differenti connessioni di rete (cavi di rame, fibre ottiche, wireless), i router hanno le corrispondenti interfacce per abilitare la trasmissione, collegando le reti con diversi protocolli in maniera trasparente. La maggior parte dei router è in un ambiente SOHO (Small Office, Home Office), e funge da punto di passaggio che regola il trasferimento dei dati tra la rete interna e quella esterna: normalmente si tratta di pagine Web, email, dati FTP, ma sempre più frequente è la gestione di transazioni, acquisti, dati commerciali on-line. Simbolo del router nei diagrammi All‟interno di dipartimenti di grandi aziende, router di alto livello connettono tra di loro centri remoti, collegati a linee ad altissima velocità, consentendo la condivisione e il controllo dei dati dell‟organizzazione. Molti router possono essere in grado di fornire servizi di gestione e di utilità, come firewall14 o procedure di controllo interno, offrendo un‟ampia serie di modelli e di corrispondenti prezzi. 14 Sistema (hardware o software) di filtraggio del traffico di rete, attraverso regole che tendono a migliorarne la sicurezza Canali di comunicazione Come già osservato, i cavi Ethernet sono caratterizzati da spine RJ-45, che hanno 8 contatti. I cavi sono di due tipi, a seconda delle loro terminazioni. In quello diritto (straight-thru) i cavi interni sono collegati nello stesso ordine alle due estremità, in quello incrociato (crossover) due coppie di conduttori vengono scambiate tra loro (1-2 con 3-6). I cavi incrociati servono per collegare dispositivi dello stesso tipo (switch-switch o computer-computer). Il router è un computer. I colori delle coppie di cavetti sono standard: verde, arancio, blu, marrone. I conduttori sono detti doppini ritorti (twisted pair) perché quelli di ciascuna coppia sono attorcigliati tra loro, per evitare interferenze dovute a correnti variabili. Meno usati sono i cavi coassiali, che sono piuttosto scomodi da maneggiare: il loro spessore rende problematica la loro installazione in spazi ristretti o con angoli nei muri. Al momento, per le connessioni veloci sono preferite le fibre ottiche. Cavi coassiali Fibre ottiche I collegamenti wireless non hanno bisogno di un canale fisico di trasmissione: funzionano anche nel vuoto. L‟aria, come canale di comunicazione, era invece caratteristica degli accoppiatori acustici, dato che il suono necessita di un mezzo per propagarsi. Topologie di rete Topologia (studio dei luoghi) è un termine matematico che definisce, nel suo accesso elementare, lo studio di alcune proprietà spaziali di oggetti geometrici. Nelle telecomunicazioni descrive l‟organizzazione dei computer di una rete ai fini della gestione del traffico di dati. È uno schema di come la rete è collegata (infrastruttura), con alcune somiglianze alla mappa di una città. Sono state sperimentate diverse topologie, ma il modello comunemente in uso, per semplicità e convenienza, è quello a stella (star) o qualche sua variazione. Il modello a stella è così chiamato perché c‟è un “punto centrale” al quale sono collegati tutti i computer della rete. Al centro della rete può esserci un concentratore (switch); spesso sono presenti computer dedicati alla gestione della rete (server). Due versioni di rete a stella: peer-to-peer e client-server Altri schemi usati sono quello a bus, meno costoso per il collegamento (per la presenza di un solo cavo principale detto backbone=colonna vertebrale) e il daisy chain o ring (non particolarmente complesso da gestire). Possono esserci degli ibridi come il tree, che è una combinazione di “bus” e “star” con struttura gerarchica (in pratica, uno switch collegato al “bus” può essere il centro di una “star”). 1) Topologia “bus” – 2) Topologia “daisy chain” o “ring” – 3) Topologia “ring” con switch centrale N.B.: l‟organizzazione logica della rete non deve necessariamente coincidere con quella fisica. Considerando il terzo esempio, anche una rete con collegamenti a stella può essere organizzata ad anello: sarà compito dello switch gestire il traffico di rete come se passasse direttamente da un computer all‟altro. Anche con le migliori tecnologie è possibile che dei collegamenti rimangano inattivi per guasti di vario tipo (fisici o logici). In questo caso si usa l‟espressione one link goes down. Per evitare che il traffico ne risenta, è possibile installare una rete mesh (a maglia), che offre percorsi alternativi aumentando il numero dei collegamenti tra i nodi (computer, switch, router). I costi dei collegamenti ridondanti devono essere considerati assieme a quelli delle possibili interruzioni di traffico: ci sono situazioni nelle quali è meglio assicurarsi la connessione, anche a costo di collegamenti supplementari. La maglia ideale “full mesh” ha n(n-1)/2 connessioni tra tutti i nodi (soluzione impraticabile), ma generalmente si usa una “partial mesh” come quella a destra, per questioni di costi e di semplicità di collegamento. Modelli ibridi permettono maggior flessibilità, soprattutto nel caso ci siano molti router in comunicazione: ad esempio, nell‟Internet spesso è presente una combinazione di ring e mesh, per rendere più fluido e sicuro il funzionamento, offrendo percorsi alternativi tra i nodi nei casi di traffico pesante o bloccato. Organizzazione di una rete locale In una LAN ci sono due tipi di organizzazione delle risorse logiche (programmi e dati): le reti “server-based” sono le più comuni nelle aziende e nelle grandi organizzazioni; le reti “peer-to-Peer” (p2p), oltre ad essere molto usate in reti Internet e nei servizi di condivisione, sono la scelta preferita nelle reti domestiche. Server-Based Networks In questo tipo di gestione, i dati sono memorizzati su un computer principale detto server. Gli altri computer della rete (client) possono avere accesso ai file o alle funzionalità del server; in alcune situazioni l‟accesso è regolato da priorità o da password. Questa organizzazione è efficiente per offrire ai client diversi servizi di rete, come, ad esempio, la protezione tramite firewall. Possono anche essere presenti più server, ciascuno dedicato a qualche servizio, soprattutto in presenza di grosse reti con centinaia di utenti. Inoltre un server di riserva (backup) può essere comodo in caso di guasti. Vantaggi Le procedure di sicurezza sono gestibili direttamente su un unico computer (il server) I dati sono centralizzati, quindi di facile reperimento Le copie dei dati sono rese semplici, essendo possibili da un unico computer Svantaggi I dati non sono accessibili in caso di guasti sul server o nel collegamento allo switch più vicino Gli attacchi informatici vengono effettuati sul server, rendendo possibile il pieno controllo della rete I server di rete possono essere costosi Peer-to-Peer Networks In questo tipo di gestione, i dati sono memorizzati dove si decide al momento. Non c‟è un server dedicato, ma ciascun computer della rete può funzionare sia come server sia come client, anche all‟interno della stessa “conversazione” con un altro. L‟accesso è generalmente libero. Il vantaggio di questa organizzazione è nella semplicità d‟uso: nascono problemi di gestione quando i servizi sono sparsi su molti computer, magari in reti diverse e geograficamente lontane: in questo caso c‟è bisogno di software supplementare per regolare il traffico ed evitare congestioni. In famiglia, dove solitamente i computer non sono più di 4-5, questa è la gestione preferita: il cosiddetto “access point” viene usato solamente per accedere all‟esterno (Internet). Il p2p è diventato molto popolare nelle reti di file sharing (come BitTorrent). Vantaggi Senza bisogno di un server, i costi sono limitati Il traffico di rete è distribuito tra i client I danni degli attacchi informatici possono essere limitati Svantaggi Le procedure di sicurezza possono essere difficili da controllare La copia dei dati è problematica, essendo i dati sparsi su varie macchine Anche il controllo e la manutenzione dei dati sono difficoltosi Glossario MODEM Connette un computer ad una rete vocale TA Connette un computer ad una rete digitale. A volte chiamato impropriamente “modem digitale”, non fa modulazioni o demodulazioni. ISP Internet Service Provider: struttura che fornisce il servizio di connessione alla rete Internet Last mile / Local loop Connessione tra la sede di un ISP alla sede del cliente (dove c‟è il punto di demarcazione, che separa i dispositivi del cliente da quelli dell‟ISP) Accoppiatore acustico Tipo di modem audio anni „70 Modem Hayes Standard dei modem voce/dati ISDN Primo esempio di rete digitale; attualmente usato soprattutto da compagnie di telecomunicazione. ADSL Il tipo di rete telefonica digitale più usato PAN Personal Area Network. Da pochi centimetri a pochi metri. LAN Local Area Network. Rete locale, solitamente composta da computer di un‟unica organizzazione MAN Metropolitan Area Network. Copre un‟area cittadina o una grossa organizzazione. WAN Wide Area Network. Rete geografica. “Wide” può significare anche tutto il mondo. Switch Ripetitore di segnali (fa anche di più). Centro di una LAN. Hub Ripetitore di segnali. Ora sostituito dallo switch. WAP Wireless Access Point. Switch “senza fili”. Router Connette più reti. Tipiche icone di alcuni dispositivi nei programmi e nei corsi CISCO. Questa compagnia di San Jose (California) è lo standard delle reti. Il nome deriva da San Francisco, nei pressi della quale due dei suoi fondatori avevano lavorato (Len Bosack e Sandy Lerner, alla Stanford University; il terzo era Nicholas Pham). http://www.cisco.com Protocolli di comunicazione In ogni forma di comunicazione esistono delle regole che ne consentono la comprensione. Tra le persone è presente anche una componente riguardante i rapporti sociali, che può andare sotto il nome di “educazione” o “cortesia”. Se nella trasmissione dei dati tra computer questa si può tralasciare, è comunque necessario che i dispositivi interessati riescano a trasferire i dati correttamente, senza perdite o distorsione delle informazioni. Un insieme di regole che disciplina una comunicazione viene detto protocollo, parola che deriva dal greco: formata da protos (primo) e kolla (colla), indicava anticamente il “primo foglio incollato” su un rotolo. La parola assunse poi più significati: dal foglio stesso (foglio protocollo), al cerimoniale che il foglio poteva contenere, a un insieme di regole di comportamento (come, più o meno, nel caso tecnologico). In ogni conversazione tra persone (ma non solo), i protocolli aiutano nell‟assicurarsi che il messaggio venga recapitato correttamente e compreso. I protocolli elencano le regole da rispettare per avere una comunicazione efficace, riguardo non solo le forme (cosa), ma anche le modalità (come): entrambi gli aspetti sono fondamentali, non è concepibile farne a meno. Senza un protocollo è impossibile comunicare. Dobbiamo stabilire, ad esempio: chi funge da mittente e destinatario (e regolamentare l‟eventuale alternanza di ruolo); il mezzo o canale usato (faccia a faccia, video/telefono, lettera, …); la modalità di comunicazione (parlata, scritta, illustrata, interattiva, unidirezionale, contemporanea); un linguaggio comune (lingua italiana, dialetto, LIS, …); la grammatica e struttura della frase (che dovrebbero essere dettate dall‟esperienza nel linguaggio); la velocità di comunicazione (senza, per esempio, mangiarsi le parole) e i tempi di consegna. Nella conversazione tra persone esistono anche regole di cortesia, che però sono spesso dettate da fini pratici: ad esempio, non solo “non sta bene” interrompere gli altri o parlare tutti assieme, ma queste azioni rendono anche problematica la comunicazione. La comunicazione tra computer ha gli stessi problemi, che vengono risolti da complessi programmi di gestione: per riprendere l‟ultimo esempio, anche una rete informatica deve risolvere il problema del traffico simultaneo, tenendo a bada i computer “maleducati” per assicurare che non vengano persi dei dati e che tutti i messaggi arrivino a destinazione. Analogamente alle conversazioni umane, si deve anche tenere conto del problema del “rumore” (o “disturbo”), costituito da segnali spuri indesiderati, dovuti a fattori esterni (spesso si tratta di fenomeni elettrici, come fulmini o cadute di tensione), che intervengono negativamente sul canale di trasmissione, danneggiando il contenuto del messaggio. CODIFICA Ogni comunicazione prevede una serie di passaggi. Il messaggio, che si forma nella mente del mittente, va sottoposto ad una traduzione: le parole scritte, le immagini, le lingue parlate usano particolari insiemi di codici (suoni, gesti, simboli,...) per rappresentare il contenuto da trasmettere. La codifica è il processo di conversione dei pensieri nella sequenza dei corrispondenti codici, usati per la trasmissione fisica. La decodifica è l‟operazione inversa, che viene eseguita dal destinatario, al fine di interpretare il pensiero. Nelle comunicazioni umane questi processi sono influenzati da fattori aggiuntivi: ad esempio, il tono di voce o l‟inflessione in quella verbale, oppure i caratteri scelti in quella scritta. Anche nelle comunicazioni tra computer la codifica deve essere adeguata al mezzo trasmissivo disponibile. I messaggi da inviare attraverso la rete, come ogni informazione digitale, sono costituiti da bit: ogni bit viene codificato, secondo un certo modello, attraverso suoni, onde luminose, o impulsi elettrici a seconda del supporto di rete su cui vengono trasmessi i bit. Il computer destinatario riceve e decodifica i segnali per ricostruire il messaggio. CONFEZIONAMENTO Per completare l‟invio di un messaggio scritto, si devono aggiungere delle informazioni aggiuntive, che servono da supporto al processo, chiamate anche meta-dati: si tratta di informazioni che contestualizzano15 e danno significato al messaggio. Ad esempio, in lettera è d‟abitudine inserire i seguenti elementi: un identificatore del destinatario; una formula o un saluto (a volte comprende il destinatario: Caro xxx, Spett. yyy) il vero e proprio messaggio; una frase di chiusura (“Distinti saluti”, “A presto”, …); un identificatore del mittente. Inoltre il confezionamento fornisce anche una sorta di protezione del messaggio dai pericoli (consegna errata, alterazione, smarrimento) che corre durante il percorso. Per questo si usa una busta, che va chiusa, così sarà pronta per la consegna. La busta serve anche a confermare l'indirizzo del destinatario, che va scritto in una determinata posizione: se l'indirizzo di destinazione o il suo formato non sono Lettera da collezione indirizzata a Harry Houdini corretti, la lettera non viene recapitata. A volte, come nelle raccomandate, è necessario aggiungere l‟indirizzo del mittente. In una rete informatica, il processo di inserimento di un formato del messaggio (la lettera) all'interno di un altro formato (la busta) viene chiamato incapsulamento: in realtà si tratta di aggiungere dei dati supplementari all‟inizio e alla fine del messaggio16. Con decapsulamento si intende il processo inverso svolto dal destinatario, analogo alla rimozione della lettera dalla busta17. Ci sono anche situazioni in cui il mittente di un messaggio deve essere sicuro che il messaggio venga ricevuto correttamente a destinazione: in questo caso è solo il destinatario che può assicurare il mittente attraverso un riscontro, analogo alla ricevuta di ritorno postale. Nelle trasmissioni digitali il termine è acknowledgement, o ACK: i protocolli che si occupano di questa situazione vengono detti ACK/NACK. 15 Contestualizzare = inserire qualcosa nel proprio contesto di competenza. In pratica, il contesto può servire da aiuto nel precisare il significato. 16 Per fare un esempio semplificato, sarebbe come trasformare il messaggio “CIAO” in “XXXCIAOYYY”. 17 In realtà il procedimento è più complesso: i dati vengono incapsulati per tre volte, tante quanti sono i differenti protocolli che devono essere rispettati. FRAMMENTAZIONE Quando si comunica bisogna adeguarsi alle capacità ricettive del destinatario.: ad esempio, è inopportuno condensare tutto un libro in una lunga frase, non sarebbe facile da leggere e comprendere. Molto meglio suddividere il discorso in periodi più corti: in questo modo i messaggi sono suddivisi in parti di dimensioni limitate a ciò che la persona ricevente può comprendere nel breve tempo necessario alla ricezione del messaggio. Nelle trasmissioni digitali, le regole sono molto severe perché le macchine non sono flessibili come le persone: il messaggio viene diviso in segmenti (segment), e i segmenti, interi o suddivisi in parti più piccole, vengono incapsulati in pacchetti (packet), la cui dimensione dipende dal canale usato e dalle capacità della macchina ricevente. A loro volta, i pacchetti, interi o suddivisi in parti più piccole, vengono incapsulati in altri, detti frame (=cornice): bisogna rispettare determinate dimensioni, perché frame troppo lunghi, ma anche troppo corti, vengono scartati. Ogni gruppo di dati, incapsulato nel proprio frame, contiene le informazioni di indirizzo, e viene così spedito indipendentemente dagli altri. Il destinatario dovrà decapsulare i singoli frame, che verranno concatenati per ottenere il messaggio completo nella sua forma originale. Come ulteriore complicazione, i pacchetti possono arrivare in ordine diverso da quello di spedizione, rendendo così necessario rimetterli nella corretta sequenza. IL FATTORE TEMPO Le regole riguardanti il metodo di accesso al mezzo trasmissivo determinano quando è il momento giusto in cui qualcuno possa inviare un messaggio. La situazione ideale sembrerebbe quella di avere la possibilità di parlare ogni volta che lo vogliamo, senza dover aspettare una autorizzazione esplicita per iniziare. In realtà questo può andar bene solo in alcune situazioni: al bar, dove spesso è coinvolta anche una quantità di alcool, si può anche conversare in questo modo; in un ambiente di studio o in sala operatoria, invece, parlare contemporaneamente porta a collisione di informazioni, danneggiando i messaggi in modo irreparabile, costringendo gli interlocutori a trasmetterli di nuovo, e le conseguenze possono essere spiacevoli. Analoghe regole, ma molto più ferree, si applicano agli host di una rete: esistono protocolli che regolano le collisioni, e altri che le evitano. Il tempo influenza anche la quantità di informazioni che possono essere trasmesse e quindi la loro velocità di consegna. Parlando troppo in fretta, l‟interlocutore faticherà a sentire e capire il messaggio: probabilmente chiederà di ripetere in modo più comprensibile. Anche qui l‟ambiente ha la sua influenza, soprattutto con il rumore: ad esempio, altre conversazioni contemporanee possono rallentare la comunicazione, che può riprendere più velocemente quando il disturbo cessa. Nelle reti esiste un controllo di flusso che consente a due host di continuare a negoziare tra loro sui parametri di temporizzazione ottimali durante tutta la conversazione: questo può avvenire grazie allo scambio di informazioni aggiuntive, che alla fine consentono un miglioramento della trasmissione. Se una persona fa una domanda e non sente una risposta entro un tempo accettabile, cercherà di capire cosa è successo e dovrà decidere come procedere: potrebbe continuare come niente fosse; più probabilmente ripeterà la domanda; se non è molto paziente se ne va senza tanti complimenti. In rete il tempo di attesa viene chiamato timeout: oltre all‟intervallo di tempo, i protocollo possono specificare dopo quanti tentativi falliti la conversazione va abbandonata. MODELLI di COMUNICAZIONE I messaggi possono essere indirizzati ad un singolo individuo; al contrario, potrebbe essere necessario inviare informazioni a tutti quelli presenti in una certa zona, contemporaneamente. A metà tra questi casi estremi si trova il caso in cui l‟invio è indirizzato ad un determinato gruppo di destinatari, quindi solo un sottoinsieme di tutti quelli raggiungibili. Tali modelli di comunicazione sono indicati rispettivamente come: unicast (uno-a-uno); broadcast (uno-a-tutti lo stesso termine usato per le trasmissioni radio o TV, dirette a tutti); multicast (uno-a-molti). Protocolli di rete – il modello ISO/OSI Molte sigle legate alla trasmissione dei dati contengono una P per “protocol”, ad esempio: HTTP FTP POP SMTP UDP TCP IP HyperText Transfer Protocol File Transfer Protocol Post Office Protocol Simple Mail Transfer Protocol User Datanet Protocol Transmission Control Protocol Internet Protocol Il modello standard dei processi di telecomunicazione è quello ISO/OSI, una sigla che sembra un gioco di parole, e che significa: International Organization for Standardization/Open Systems Interconnection. La ISO, che ha sede in Svizzera, si occupa di standard industriali e commerciali, e nel campo delle reti ha progettato una suddivisione delle funzioni in 7 differenti livelli (layers). I livelli superiori descrivono funzioni più vicine all‟utente finale, e che sono contenute, ad esempio, nei protocolli di navigazione, di posta e di trasferimento. Più si scende nel modello, più ci si avvicina all‟hardware, e si incontrano i livelli nei quali si progettano fisicamente le reti, fino a quello più basso, che descrive cavi, voltaggi, frequenze radio e altre caratteristiche dei mezzi di trasmissione. In ogni comunicazione, quindi, le richieste degli utenti vengono elaborate da programmi di livello 7 e trasferite a quelli di livello 6, e ad ogni livello avviene lo stesso: giunti al livello 1, avviene la trasmissione vera e propria. Quando la comunicazione arriva al destinatario finale, avviene il procedimento opposto, fino alla consegna finale del messaggio completo. Sono queste le operazioni di incapsulamento e decapsulamento, che devono seguire la catena dei diversi protocolli. Nel caso ci debba essere una risposta (ad esempio, in una richiesta di pagina Web), nel momento in cui il destinatario la spedisce il procedimento viene eseguito nuovamente. I 7 livelli dello standard ISO/OSI I livelli sono stati studiati per rendere modulare la progettazione e la gestione delle trasmissioni. Dal momento che le funzioni di ciascun livello non influenzano quelle degli altri, i costruttori sono in grado di fornire hardware e software specifici per ciascun livello18, con l‟unica condizione che vengano rispettati i formati dei dati che vengono trasferiti ai livelli adiacenti. Una breve sintesi dei rispettivi compiti: Livello 7 (application) tratta direttamente con l‟utente, come il protocollo HTTP; Livello 6 (presentation) si occupa della formattazione e della criptazione dei dati; Livello 5 (session) stabilisce e gestisce una sessione di comunicazione; Livello 4 (transport) contiene le regole per il trasferimento dei segmenti di dati; Livello 3 (network) si occupa del traffico di pacchetti tra reti, e riguarda i router; Livello 2 (data link) si occupa del traffico di frame nelle reti locali, e riguarda gli switch; Livello 1 (physical) si occupa dei mezzi di trasmissione e dei segnali (che trasportano i bit). Nei dispositivi intermedi (router e switch) non viene percorsa tutta la sequenza dei protocolli: una volta raggiunto il livello di competenza, il messaggio viene elaborato e rispedito senza chiamare in causa i livelli superiori. Nessuna sequenza invece viene seguita negli hub19, che sono dispositivi di livello 1, e si limitano a ritrasmettere i segnali in arrivo. A livello 4 si controlla il buon esito della trasmissione: se un segmento con dati importanti non arriva a destinazione, viene rispedito. In alcuni casi, però, si sceglie di scartarlo, per non ritardare troppo il resto del traffico (ad esempio, nelle conversazioni vocali la perdita di qualche segmento, che solitamente non danneggia la comprensione dei messaggi, è preferibile alla trasmissione completa, ma ritardata). 18 L‟hardware interessa soprattutto il livello 1 e, in parte, il livello 2 e il livello 3. Gli altri livelli si occupano dei dati e del loro trattamento. 19 Gli hub sono ripetitori di segnali, quindi non hanno software che possa effettuare operazioni di gestione. Evoluzione dei protocolli di rete Ai tempi delle prime reti digitali (inizio anni „70), il mercato era in mano a poche grandi aziende, soprattutto statunitensi: IBM (allora ancora Big Blue, la più grande e la più conosciuta), NCR, Xerox, DEC, HP, alcune delle quali sono poi scomparse. Queste case producevano tecnologia proprietaria sia hardware (dispositivi di rete) sia software (protocolli): si tratta di materiale custodito tramite brevetti segreti industriali, nel tentativo di guadagnare e mantenere clienti e quote di mercato. La conseguenza negativa per la clientela era l‟impossibilità di comunicare con i dispositivi delle altre aziende, rendendo il mercato piuttosto stagnante. Tra gli anni „80 e „90, complice la forte diffusione degli strumenti informatici e la crescente necessità di connetterli tramite le reti, sono stati sviluppati degli standard per consentire la interoperabilità delle apparecchiature di rete di fornitori diversi. I fornitori devono conformarsi allo standard, costruendo dispositivi e software che parlano lo stesso linguaggio, compatibili tra loro. Questo aumenta la concorrenza, ma per la clientela ci sono dei benefici che alzano la qualità di prodotti e servizi: si facilita la progettazione; si semplifica lo sviluppo del prodotto; si facilita la formazione; si amplia la scelta da parte della clientela. Il più standard tra gli standard in rete locale si è rivelata una famiglia di tecnologie e protocolli risalente al 1980 chiamata Ethernet20: essa, tra gli anni ‟90 e 2000 ha di fatto soppiantato gli iniziali concorrenti Token Ring (IBM) e Token Bus (General Motors). Nelle reti geografiche (WAN) si è imposta una suite di protocolli chiamata TCP/IP, che costituisce tuttora la base dell‟Internet: TCP (Transmission Control Protocol) e IP (Internet Protocol) sono nati come le due componenti del Transmission Control Program scritto da Vint Cerf e Bob Kahn nel 1974. Sono questi protocolli che sostengono la struttura dell‟Internet. Bob Kahn e Vint Cerf 20 Come altre innovazioni informatiche, nasce negli anni ‟70 nel leggendario Xerox PARC (Palo Alto Research Center). Protocolli in azione Esempio 1: navigazione su un web browser Tutte le considerazioni su frammentazione, incapsulamento, instradamento non interessano ai protocolli di livello 7: un browser si occupa di presentare il messaggio (i dati trasmessi), lasciando tutto il resto ai protocolli dei livelli inferiori (solo per numero, non per importanza). L‟utente che naviga presenta al browser queste informazioni: http:// it.volkswagen.com /it/volkswagen_service.html protocollo nome dell‟host, le cui pagine web, il percorso sul server per raggiungere la pagina web memorizzate su un server, formano richiesta (si parte dalla radice /); può essere htm, html, il website21 asp, php, … la porta l‟indirizzo IP un nuovo indirizzo, l‟indirizzo applicativo L‟elaborazione, in effetti, è trasparente: Il protocollo HTTP si può anche omettere, nel qual caso lo aggiunge il browser (come visto, corrisponde alla porta 80). L‟indicazione è necessaria, invece, quando si usa il protocollo crittografato HTTPS (S=Secure; corrisponde alla porta 443); L‟indirizzo IP, scritto in parole, viene “risolto” negli effettivi dati IPv4 o IPv6, attraverso il sistema DNS (Domain Name System), che esamineremo più avanti; L‟indirizzo MAC manca del tutto: l‟host non è tenuto a conoscerlo e specificarlo. Viene reperito automaticamente nel dialogo tra host e switch o router. Il software accompagna le operazioni dell‟utente e dietro le quinte compone il pacchetto nella sua interezza, inclusi gli indirizzi. Dal punto di vista della comunicazione, lo schema dei layer TCP/IP prevede uno schema semplificato rispetto allo standard ISO/OSI, ma sostanzialmente analogo (con una lieve differenza: i livelli 3 e 2 TCP/IP corrispondono ai livelli 4 e 3 OSI): Livello 4 (5,6,7 OSI), applicativo: l‟utente, tramite il software dedicato (browser), accede agli indirizzi finali (quelli delle pagine che visita); Livello 3 (4 OSI), TCP : conversazioni simultanee e servizi differenziati (numero di porta); Livello 2 (3OSI), IP : instradamento dei pacchetti fino a destinazione (indirizzo IP); Livello 1 (1,2 OSI), fisico: hardware, cavi, schede di rete (indirizzo MAC). TCP OSI Operazioni 4 3 7 6 5 4 2 1 3 2 1 21 Al browser interessa solo decifrare il contenuto del messaggio, al livello semantico più alto: metti un‟immagine qui, un filmato là, scrivi con lettere bianche su sfondo rosso, … Al TCP interessa il “numero di porta” per smistare le richieste al programma appropriato. Al software IP degli host interessa l‟indirizzo IP (per trovare il server). Alle schede di rete interessa solo l‟indirizzo MAC (per capire se il pacchetto è di loro competenza o no). Ai dispositivi di trasmissione non interessa proprio nulla: arriva un segnale da trasmettere, lo trasmettono; arriva un segnale in ricezione, lo ricevono. Un “sito” o website non è una pagina web: solitamente ce ne sono più di una, a seconda del numero di informazioni e servizi che vengono offerti. Esempio 2: spedizione di posta elettronica Come abbiamo visto, tutti gli indicatori (MAC, IP, port) trovano il loro posto nei pacchetti che viaggiano in rete; l‟utente collabora nella loro compilazione, anche se molte cose le ignora. Questo avviene anche nelle altre applicazioni. Prendiamo ad esempio l‟invio di una mail. Le operazioni sono probabilmente ben note a tutti, magari meno noto è il lavoro “nascosto” dei vari protocolli interessati; l‟utente sceglie l‟applicazione per consultare la posta (Outlook, Thunderbird, Live Mail, …); specifica il nome del server, e implicitamente il suo indirizzo IP, quando compone l‟indirizzo mail del destinatario (gmail.com, yahoo.com, alice.it, …); implicitamente viene scelta il protocollo sul server (SMTP) e la porta (25 o 587, a seconda del provider); l‟indirizzo del destinatario ([email protected]) contiene anche l‟indirizzo della casella di posta. Non serve scrivere l‟indirizzo IP del destinatario, perché sarà il server di posta a trovarlo; per quanto riguarda l‟indirizzo MAC, conta ancora meno, perché verrà individuato al momento di consegnare il messaggio; tutte queste informazioni sono gestite in modo trasparente dalle applicazioni di posta, che si devono anche occupare di presentare il messaggio (i dati trasmessi). Il destinatario, dal canto suo, usa (probabilmente senza saperlo) il protocollo POP o POP3. Si possono trovare affinità tra questo processo tecnologico moderno ed un esempio di comunicazione umana, altrettanto complicato. Torniamo indietro nel passato, ai tempi del telegrafo, e ipotizziamo che due cacciatori, un Inuit ([email protected]) e un tagliatore di teste Dayak del Borneo ([email protected]), vogliano comunicare. L‟unica cosa che sanno fare è cacciare: per il resto, qualcuno deve aiutarli. Ad esempio, l‟inuit (Anyu Nanuq) deve comunicare al dayak (Jang Kang) come cacciare l‟orso polare (cosa indispensabile in Borneo). Anyu Nanuq fa il suo discorso ad un traduttore: meglio usare una lingua che qualcuno può comprendere anche dall‟altra parte. Il traduttore traduce in inglese, anche se non capisce il senso del discorso (la semantica), non conoscendo la caccia. Il traduttore detta il messaggio ad un telegrafista, che potrebbe non capire né l‟inuit, l‟inglese, né sapere di caccia, ma è in grado di ripetere le parole con esattezza. Il messaggio viene trasmesso in Borneo. Se non viene ricevuto correttamente, può essere spedito di nuovo. Un altro telegrafista riceve il messaggio; potrebbe non parlare inuit, né inglese, né dayak, né sapere di caccia, ma riesce comunque a scriverlo per consegnarlo ad un altro traduttore. Il traduttore, anche se non sa di caccia e non capisce il significato del discorso, è in grado di riprodurlo in lingua dayak. A questo punto Jang Kang può imparare a cacciare gli orsi polari che infestano il Borneo. Con lo stesso meccanismo, Jang Kang potrà comunicare a Anyu Nanuq tutti i dettagli della caccia ai coccodrilli che infestano l‟Alaska (sì, in Borneo ci sono dei coccodrilli). Problemi di rete – strumenti di verifica I problemi di connessione sono i più frequenti tra quelli che riguardano la rete, perché il collegamento remoto passa per un numero imprecisato di computer e router, e ognuna delle reti locali interessate può avere decine di problemi diversi, tra i quali: disconnessione; congestione; attacchi di hacker Altre volte ci possono anche essere problemi di configurazione della propria rete o del protocollo IP. In questi casi può essere utile riuscire a capire le possibili cause del malfunzionamento, per studiare possibili soluzioni o rassegnarsi ad attendere che i problemi siano risolti all‟origine. La suite IP contiene, a livello 3, un protocollo particolarmente veloce e “light”, studiato per supportare i messaggi di controllo e di gestione in rete. Si tratta aell‟ICMP (Internet Control Message Protocol), che può essere usato tra host e router per lo scambio di informazioni di comunicazione. N.B.: questo protocollo non ha a che fare con il traffico. Serve a verificare le connessioni. Tra le possibili informazioni che si possono ottenere con i messaggi ICMP ci sono: rete di destinazione irraggiungibile (possibile sintomo di problemi di routing, spesso provocati da un router “down” o “hung”); rete di destinazione sconosciuta (indirizzo IP subnet errato); host di destinazione non raggiungibile (host spento o scollegato nella rete di destinazione); host di destinazione sconosciuto (indirizzo host errato); protocollo richiesto non disponibile (dispositivi o servizi mal configurati); ricerca di cammino alternativo (per risolvere problemi nel raggiungere una rete remota). Gli strumenti di diagnostica ICMP più usati sono: ping, nslookup, route e traceroute. Si tratta di comandi che funzionano con interfaccia testuale, che è ancora la più usata sulla maggior parte dei router in circolazione. Anche su PC si deve attivare il prompt dei comandi per usare questi programmi. Controllo della connessione : ping L‟applicazione ping (Packet INternet Groper) permette di verificare la connessione tra due host. L‟autore di questo programma, Mike Muuss, ha scelto il nome per richiamare il rumore dei sonar durante la locazione sottomarina, oltre che per indicare il verbo “to grope” (=frugare22). Il comando è attivabile dal prompt dei comandi (shell DOS): C:\> ping <indirizzo IP | nome di host-destinatario> l‟applicazione invia una richiesta ICMP detta echo request, e riceve dal destinatario, se raggiunto, una echo reply. Durante questo processo, il programma calcola il tempo medio di andata e ritorno dei pacchetti (Round Trip Time, RTT), oltre al numero di pacchetti persi (la percentuale di “packet loss” può indicare qualche problema di collegamento). In caso di insuccesso viene indicato che il timer è scaduto. c:\> ping www.nhl.com Esecuzione di Ping a1937.na.akamai.net [69.31.33.91] con 32 byte di dati: Risposta Risposta Risposta Risposta da da da da 69.31.33.91: 69.31.33.91: 69.31.33.91: 69.31.33.91: byte=32 byte=32 byte=32 byte=32 durata=143ms durata=145ms durata=143ms durata=141ms TTL=52 TTL=52 TTL=52 TTL=52 Statistiche Ping per 69.31.33.91: Pacchetti: Trasmessi = 4, Ricevuti = 4, Persi = 0 (0% persi), Tempo approssimativo percorsi andata/ritorno in millisecondi: Minimo = 141ms, Massimo = 145ms, Medio = 143ms c:\> ping www.errore.err Esecuzione di Ping www.errore.err [212.48.8.140] con 32 byte di dati: Risposta Risposta Risposta Risposta scaduta. scaduta. scaduta. scaduta. Statistiche Ping per 69.31.33.91: Pacchetti: Trasmessi = 4, Ricevuti = 0, Persi = 4 (100% persi), Le opzioni più usate del programma ping sono: ping –f: esegue il ping flooding, emettendo una sequenza esagerata di echo request, solitamente allo scopo di verificare il traffico, altre volte per provocare un attacco di tipo DDoS (Distributed Denial of Service); ping –s <size> per modificare le dimensioni dei pacchetti. Per capire lo stato del proprio collegamento alla rete si possono usare più comandi ping mirati. Supponendo che il proprio PC abbia come IP 192.168.0.2, si possono controllare: la propria macchina: 127.0.0.1 il proprio IP: 192.168.0.1 un host della propria sottorete: 192.168.0.5 l‟indirizzo di un eventuale server proxy l‟indirizzo del default gateway: 192.168.0.1 l‟indirizzo di un eventuale firewall l‟indirizzo del server DNS 22 “Groping” è, tra le altre cose, un reato di molestia sessuale. Controllo del tragitto dei pacchetti: traceroute Un‟altra applicazione ICMP molto importante per verificare problemi di rete ed in particolare problemi relativi all‟instradamento dei pacchetti IP è il comando traceroute (tracert in Windows), che permette di verificare la lista di tutti i router che vengono attraversati da un pacchetto IP per raggiungere una destinazione. Il comando si attiva da shell DOS: C:\> tracert [-d] [-h max_hops] [-j elenco-host] [-w timeout] <indirizzo IP di destinazione> dove i parametri hanno il seguente significato: -d: Non risolve gli indirizzi IP in nomi di host durante il transito, per evitare rallentamenti; -h max_hops: Numero massimo di punti di passaggio (hop=salto) accettati (default=30); -j elenco-host: Instradamento dinamico dei pacchetti per gli host dell‟elenco; -w timeout: Timeout per la risposta (in millisecondi). c:\> tracert www.nhl.com Rilevazione instradamento verso a1937.na.akamai.net [69.31.38.91] su un massimo di 30 punti di passaggio: 1 2 3 4 5 6 7 8 9 10 11 12 <1 * 40 40 42 43 129 54 80 145 148 151 ms ms ms ms ms ms ms ms ms ms ms <1 * 41 42 42 41 59 55 110 145 151 148 ms ms ms ms ms ms ms ms ms ms ms <1 * 41 40 42 41 43 55 81 146 155 149 ms ms ms ms ms ms ms ms ms ms ms alicegate.homenet.telecomitalia.it [192.168.1.1] Richiesta scaduta. 172.17.121.173 172.17.120.29 172.17.6.133 172.17.10.109 bundle-ether16.milano26.mil.seabone.net [93.186.128.221] xe-2-2-0.parigi52.par.seabone.net [195.22.210.96] xe-0-0-2.cr1.cdg1.fr.nlayer.net [69.22.139.49] xe-11-3-0.cr1.nyc2.us.nlayer.net [69.22.142.129] vlan-77.ar1.nyc3.us.nlayer.net [69.31.34.132] 69.31.38.91 Rilevazione completata. Controllo del DNS: nslookup Uno strumento di controllo del proprio servizio DNS è il seguente comando shell DOS: C:\> nslookup Con quest‟applicazione si possono avere informazioni quali indirizzi di server DNS e di server di posta. Essa può essere attivata specificando l‟indirizzo richiesto di seguito al nome, oppure entrando in una modalità di “console”, nella quale attivare altre opzioni del programma, che può essere terminato con “exit”: Comando diretto Modalità console C:\>nslookup www.nhl.com C:\> nslookup > ... > exit C:\> c:\> nslookup www.nhl.com Risposta da un server non di fiducia: Server: alicegate.homenet.telecomitalia.it Address: 192.168.1.1 Nome: a1937.na.akamai.net Addresses: 69.31.33.130, 69.31.33.91 Aliases: www.nhl.com, www.nhl.com.edgesuite.net Controllo dell’instradamento: route Per capire come vengono inoltrati i pacchetti per raggiungere i computer remoti, si può controllare la tabella di instradamento dei pacchetti (routing table). Essa può essere gestita con il seguente comando shell; C:\> route Il comando ha molte opzioni che vanno oltre lo scopo di questo corso. Quella che segue è la risposta alla clausola route print: c:\> route print =========================================================================== Elenco interfacce 0x1 ........................... MS TCP Loopback interface 0x2 ...00 1d 60 78 d2 97 ...... Atheros L1 Gigabit Ethernet 10/100/1000Base-T Controller Miniport dell'Utilità di pianificazione pacchetti =========================================================================== =========================================================================== Route attive: Indirizzo rete Mask Gateway Interfac. Metric 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.66 20 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 169.254.0.0 255.255.0.0 192.168.1.66 192.168.1.66 20 192.168.1.0 255.255.255.0 192.168.1.66 192.168.1.66 20 192.168.1.66 255.255.255.255 127.0.0.1 127.0.0.1 20 192.168.1.255 255.255.255.255 192.168.1.66 192.168.1.66 20 224.0.0.0 240.0.0.0 192.168.1.66 192.168.1.66 20 255.255.255.255 255.255.255.255 192.168.1.66 192.168.1.66 1 Gateway predefinito: 192.168.1.1 =========================================================================== Route permanenti: Nessuno Indirizzo di rete: possibile rete destinazione di una pacchetto; può essere anche un gruppo di reti; Gateway: indirizzo IP dell‟interfaccia del router che accoglie i pacchetti per destinarli ad un‟altra rete; Mask: indica come sono organizzati gli host della rete; permette di conoscere, dato l‟indirizzo del gateway, l‟indirizzo generale della sua rete e il numero di host che essa può contenere; Interface: indirizzo IP dell‟interfaccia da cui partono i pacchetti; Metric: il numero di hop per raggiungere la destinazione. Nell‟esempio seguente, la gateway per l‟host 172.16.10.10 è l‟interfaccia (interna alla rete locale) che tutto il traffico deve attraversare da e per le altre reti. Come già osservato, deve appartenere alla stessa subnet. Il computer collegato direttamente ad un ISP, come nella maggior parte degli utenti domestici, non avrà normalmente bisogno di intervenire sulla configurazione: tutto viene gestito automaticamente dal provider. Su un router, invece, il comando può essere usato per assegnare route statiche ad indirizzi prestabiliti e per configurare le interfacce di collegamento. COOKIES Cookies are made of butter and love Norwegian Proverb You have zero privacy anyway Scott McNealy (Sun Microsystems) A cookie is a piece of information used by a website to send and receive state information to a user‟s browser. Cookies were introduced by Lou Montulli (the author of the historic Web browser Lynx), then working at Netscape, in 1994. There are a number of operations that use state information: Adding items to e-commerce shopping carts; Facilitating user login to a web site; Customizing web pages according to user preferences; Tracking user action for commercial purposes (see McNealy quotation above); Tracking user action to understand how a web site is accessed (for designing purposes). Lou Montulli through the years A temporary or session cookie is stored in memory only for the duration of a browsing session, and is deleted when the browser is closed. A persistent cookie is stored in a file on the client‟s hard disk. It will stay there, to be picked up by the browser and included in HTTP requests for the original Web server. Each browser uses a different folder to store cookies. Cookies are not software, therefore they cannot carry viruses or malware, as sometimes is believed, perhaps for their sneaky nature. However, they can be used by spyware to track user activity, or stolen by hackers to gain illegal access to financial operations. For security reasons cookies can be disabled, but this can prevent interaction with Web servers which rely on cookies for traffic management. The general advice is to be wary of commercial websites which lack a privacy policy, especially when entering data into forms. Nikki Rae, a Web specialist from Fresh Egg (based in Worthing, UK), explains how cookies work in an interesting and neat video, which can be found at: http://www.youtube.com/watch?v=b9I87YdDdXA&feature=player_embedded#! The video, where people move around simulating network traffic, shows how a user typing a web page address into a browser unchains a sequence of data exchanges between the user‟s hard disk and a remote server. Don‟t be fooled by the relaxed atmosphere. The “actors” helping Nikki are all Web mavens: Peter Handley (the user), Mark Chalcraft (the browser), Annabel Hodges (the hard disk), Anna Lewis (the request for page, who carries the cookie around), and Paddy Moogan (the server, who “modifies” the cookie). In another article, Nikki Rae points out that cookies are about browsers, not people, therefore using them for attribution23 may be tricky. For example, different users of the same browser (as it happens in a family), will be read as only one person, whereas the same person working on different computers will be considered as multiple users. 23 For example, finding out what led a client to a sale.
© Copyright 2024 ExpyDoc