The following 3236 words could not be found in the dictionary of 1275 words (including 1275 LocalSpellingWords) and are highlighted below:
100m   10d   11a   11b   11d   11g   12km   14d   15d   200m   20d   20log   24d   2d   30m   40d   520ms   56d   5km   70d   73d   78d   82d   89d   9d   aattraversarla   abbastanza   abbattere   abbia   abbiamo   abbiano   abbreviata   abbreviazione   abilitare   abilitata   abilitazione   abitati   abusare   ac   accantonare   acccettano   accedere   accennato   accept   accesi   Accesscube   accettano   accettare   accettate   accettato   accetteranno   accetterà   accodamento   accodato   accogliere   accomodare   accordarsi   accordati   accordo   accorgimenti   accorgimento   acknowledgement   Acknowledgment   acknowledgment   acquista   acquistare   acquistati   adatte   addirittura   addizionale   addizionali   addizionare   addr   address   Address   addresses   adeguarsi   adeguata   adeguate   adeguato   aderenza   adottando   adottare   adottino   adozione   advertised   aere   affacciano   affatto   affermazione   affette   affida   affidabile   affidabili   affinamenti   affinchè   Affinchè   affronta   affrontare   Africa   africano   aggiornamenti   aggiornare   aggiornata   aggiornate   aggiornati   aggiramento   aggirare   aggirarlo   aggiunge   Aggiungendo   Aggiungi   aggiungono   aggiunta   aggiunte   aggiunti   aggiuntivi   aggiuntivo   aggiunto   aggiustamenti   aggregando   aggregati   aggregheranno   aggreghi   agiscono   agli   alberi   albero   alcun   algoritmi   Alice   alimentazione   alla   Alla   allacciamento   allacciato   Allegati   allettante   allo   allocazione   allocazioni   allontani   allora   allowed   allunga   almeno   almento   alta   alterato   altercare   alternativa   alternativamente   alternativo   altezza   alti   alto   altresì   Altri   altri   altrimenti   Altrimenti   altrimento   altro   ambientale   ambito   amico   ammetterà   amministratore   amministratori   ammissibile   ammodo   ampi   ampia   ampie   amplificando   amplificano   amplificatore   amplificatori   analisi   analizzare   analizzati   analogo   Analysis   ancora   Ancora   andar   Andata   andata   andati   Andrea   Angoli   angolo   annullano   annunciare   annunciata   ans97   Antenna   antenna   antenne   anticipo   antiproxy   anzichè   appare   apparire   apparirebbero   appartenente   Appena   appena   Appendice   applicarsi   applicativi   applicativo   applicato   Applicazione   applicazione   Applicazioni   applicazioni   apportano   apportare   appositi   apprende   apprezzato   approccio   approfondirà   approssimativo   approssimi   apt   arbitrari   architettura   aree   argomento   aria   arm   Array   arricchimento   Arricchire   arricchire   arricchirà   arricchisce   arriva   arrivare   arrivata   arrivino   arte   articolo   ascoltano   asincrona   asincrono   aspetta   aspettano   aspettare   aspettato   assegnare   assegnarne   assegnati   assegnato   assemblati   assenza   assicurandosi   assicurano   assicurare   assicurarsi   assicurata   assicurati   assicurerà   assieme   associate   associated   associato   assolutamente   assorbimento   assumono   assunta   assunto   Asus   ata   ath0   athenet   atmosferici   attachment   attendere   attenta   attente   attenuazione   attenuazioni   attestati   attinenza   attingere   attiva   attivamente   attorno   attraversa   attraversamento   attraversano   attraversare   attraversarlo   attraversino   attraverso   Attraverso   attrezzatura   attuali   attualmente   audio   auditorium   aumentando   aumentano   autenticando   auto   Autoconfiguration   automaticamente   automatico   automatizzare   autore   autorevole   autorevoli   autori   autorità   autorizzazione   avanti   avaria   avendo   aver   avere   Avete   avidi   avranno   avuto   avverse   avvertita   avvertito   avviare   avviato   avvicina   avviene   Avvio   avvio   Awstats   azione   azioni   baby   background   balzo   banale   bande   bandwith   Basarsi   basata   basate   basato   Basato   Basic   bassa   basso   basta   Bay   beacon   bel   ben   bene   benissimo   Berlino   Bi   bin   Bind   bind9   bisgono   bisogni   bisogno   Bit   bit   bizzarro   blocca   bloccare   bloccato   blocco   bluetooth   Bm   Bob   bocca   book   bottone   bottoni   bozza   braccio   Brandeggio   Breezy   breve   brevi   bridge   Broadcast   broadcast   Bruno   buco   Budget   budget   buffer   Buon   buona   buoni   buono   byte   Byte   C0   C1918   c2075   cablate   cablato   Cache   cache   Caching   caching   cadere   cadono   caduta   calcola   Calcolare   calcolare   calcolata   calcolato   calcolatore   calcoli   Calcolo   calcolo   calculations   Cambi   cambiamenti   cambiano   cambiare   campi   campo   campus   cancella   cancellare   Cancellare   canto   capace   capacità   Capacità   capienti   capitolo   capo   caratteristica   caratterizzata   caratterizzati   caratterizzato   caratterizzazione   carica   caricamento   caricano   caricare   caricata   carico   carta   carte   cartografici   casi   cattive   causa   causano   causare   causata   causati   causato   causeranno   cavi   cavo   Cavo   Ccordi   Cell   cella   censura   centinaia   centinaio   Centrino   cercato   cerchi   certa   channel   chiamata   chiamate   chiamati   chiamato   chiara   Chiaramente   chiaramente   chiaro   chiavi   chilometri   chimato   ciascuna   ciascuno   cima   cinque   cioè   circa   circostante   Cisco   citarne   citata   citazione   città   Ciò   ciò   classici   classico   Cliccare   clicchi   client   Client   cliente   clima   cloet   Cloete   clouds   coassiali   coda   codice   coerente   coinvolgere   coinvolta   coinvolte   coinvolti   collaborazione   collegamenti   Collegamenti   collegamento   Collegamento   Collegare   collegare   collegati   collegato   collegmamento   collina   colline   collisioni   colloquiare   color   combinarle   combinate   combinazione   cominciare   comitati   commerciali   commesso   commettere   commissioni   Comparison   compatibilità   competenze   competizione   compiere   compilare   compilarlo   compilate   compilino   compito   complementarsi   complessa   complessità   complessiva   complessivo   complesso   completa   completano   completati   completi   completo   complicate   componente   componenti   compongono   Comporre   comportamento   comportano   comportare   comportarsi   comporti   composti   comprato   comprende   comprendendo   comprendere   comprensione   compresa   comprese   compresi   compreso   computer   comunemente   comunica   comunicano   comunicare   comunicazioni   comunicheranno   comunità   concentrerà   concepito   concetti   concetto   concorda   concordare   condi   condividere   condividono   condivisione   condiviso   condotte   condotto   conduca   conducono   condurre   conf   conferenza   confida   confifurazione   configurare   configurarli   configurate   configurati   configurato   configurazioni   configuriamo   configurino   conflitti   confondere   conforme   conformemente   Confronto   confronto   confusione   congestionare   congestionata   congestione   congestionerebbero   conmpetono   connessa   connessi   connessione   connessioni   connesso   connette   connettendo   connettere   connettersi   connettività   connettono   connettori   conosca   conoscere   conosciuta   conosciuto   consegnare   consegnati   Conseguentemente   conseguenza   Conseguenze   consentendo   consentiranno   consentire   conservare   considera   Considerando   considerano   considerare   considerata   considerati   considerato   considerazione   considerevole   consigliabile   consiste   consisterebbe   consulta   consultazione   consulti   consumare   consumatore   consumeranno   consumo   contatore   contattarla   contatto   contemporanea   contemporaneamente   contenere   Contents   contenuti   contenuto   contese   contesto   continuamente   continuazione   continuo   conto   contrario   contrastare   contribuire   contribuisce   contribuiscono   contributo   controllare   controllate   Controllo   controllo   contropartita   conveniente   convenzionalmente   convenzione   conversazione   conversazioni   conversione   converte   convogliata   coon   cooperino   coordinare   coperto   copertura   copia   copie   coprire   cordless   corposo   correlati   corretta   correttamente   corretti   corretto   corrisponda   corrisponde   corrispondenza   corrispondere   corso   corta   corti   cos   cosa   cose   Cosi   cospicui   costa   costantemente   costituire   costituita   costituite   costo   costosa   costoso   costruire   Costruisce   costruiscono   costruita   costruite   costruito   costruttore   costruzione   così   Così   counter   Coverage   cplus   crea   creando   creare   credenziale   credenziali   credono   creeranno   cresce   crescente   crescere   critico   crypt   Cube   curano   Cygwin   cygwin   dagli   Dall   dall   dalle   dallo   danno   dare   daremo   dat   database   datate   date   de   debba   debbano   Debian   debibel   debug   debugging   decibel   Decibel   decide   decidersi   decisamente   decisioni   decrementato   dedicare   dedicati   dedicato   default   definire   definisce   definiscono   definite   definito   degrado   delete   dell   demand   demone   demoni   denominata   densità   Dentifier   derivate   descritta   descritte   descritti   descrive   descriveva   descrivono   descrizioni   desiderate   desiderato   desiderino   Dest   destinatario   Destination   destinato   destinazione   Details   determinare   determinazione   detta   dettagli   Dettagli   dettagliate   dettagliato   dettaglio   detti   dev   deviare   diagnostica   diagramma   diagrammi   dichiara   dichiarata   dieci   dietro   differente   differenti   differenzia   difficile   difficili   difficilmente   diffonde   diffusa   diffuse   diffusione   Digital   digitale   digitali   digitalizzare   digitare   dignitoso   dimensione   dimensioni   dimostrazione   Dimostreremo   dinamicamente   Dinamico   dinamico   dipende   Dipende   dipendendo   dipendente   dipenderà   dirata   dire   diretta   direttamente   direttività   diretto   direzione   direzioni   dirige   diritti   diritto   disabilita   disabilitato   dischi   disco   disconnesso   discreta   discussi   discusso   discuterà   dish   disk   disordinata   dispersione   disponendo   disponga   dispongano   dispongono   disponibili   disponibilità   dispositivi   dispositivo   disposizione   distaccato   Distance   Distanza   distanza   distanze   Distanze   distinguere   distinti   distorsione   distorto   distribuire   distribuisce   distribuiscono   distribuita   distribuzione   distribuzioni   distruggano   distruttivamente   disturba   disturbi   divendanto   divendato   diventa   diventano   diventare   Diventato   diversa   diverse   diversi   Diversi   diversity   diversità   diverso   divertimento   divverenza   dnsmasq   Doc   docs   documentazione   documenti   documento   Domain   domain   domini   Donkey   dopo   Dopo   Doppia   dorsale   dot   dotare   dov   dove   Dove   dover   dovesse   dovessero   Dovete   dovrebbe   dovrebbere   dovrebbero   dovrà   dovuta   dovuto   download   draft   drasticamente   draw   driver   duplex   duplicati   durante   durata   dyn   eccellente   eccessivo   eccezione   echo   economiche   economici   economico   ed   edifici   edificio   Edition   edizione   edu   educational   effetti   effettiva   effettivaemente   effettivamente   effettivo   effetto   Effettui   efficace   efficacemente   efficiente   efficienza   Eksteen   elementi   elemento   elencati   elenchino   eletto   elettrica   elettromagnetica   elettromagnetico   Elettronica   elettronica   Elevation   elevato   elevazione   elimina   eliminando   Eliminare   eliminazione   eludere   embedded   en   encomiabile   Encryption   energia   english1   enhancing   Enhancing   enorme   enti   entra   entrambi   entrami   entro   entusiasmante   equazione   equivalente   errati   errore   errori   Errori   esaminerà   esatta   esattamente   escogitare   Esempi   esempi   esempio   Esempio   esibirne   esibiscano   esigenze   esistano   Esiste   esiste   esistenti   esistono   Esistono   espande   espandersi   espanderà   esplicitamente   esplicitata   esponente   espressa   espressamente   espresso   esprimere   essenziale   essenziali   esser   esseri   essi   essid   esso   estenda   estendere   Estendere   estendono   estensibile   estensione   estensioni   esterna   esterne   esterni   esterno   estesa   estese   estingua   estrarre   estratti   estremamente   estremi   estremo   etc   etere   eth0   eth1   Ethernet   Europa   evadere   evidenziato   evitare   evitata   eviti   excessive   exe   Explorer   Extended   Extension   fa   faccia   facciano   facile   facilmente   facto   fading   fallire   fallisce   Familiar   famose   far   Far   fare   faricamento   farlo   farsi   farà   fascio   fasi   fattibile   fattibilità   fattore   Fattori   fattori   favorevoli   fede   Fi   fibre   fidandosi   fidarsi   figura   Figura   Figure   figure   filare   file   filesharing   filtraggi   filtraggio   finale   finalmente   finestra   finestre   finire   fino   Fintantochè   fintantochè   finto   firewall   Firewall   fisica   fisicamente   fisico   fissate   fisse   fittizia   Flags   flessibile   flessibilità   fluisca   fluiscano   flussi   flusso   fonti   forma   formare   formato   formula   forni   fornire   fornirà   fornisce   forniscono   fornita   fornite   forniti   fornito   forse   forte   fortemente   Fortunatamente   forwarding   Forwarding   forza   fosse   foto   frag   Fragment   frame   frammentazione   frammenti   francese   frattempo   Freifunk   Frequency   frequentemente   freshmeat   Fresnel   fretta   fronte   ftp   ftpserver   full   funge   funziona   Funziona   funzionano   funzionante   funzionare   funzione   funzionerà   funzioni   fuori   garantire   garantisce   garantiscono   garantita   garantiti   garantiva   Gateway   gateway   genera   generarsi   generata   generato   genere   Genmask   geometria   geometrica   gerarchicamente   gerarchico   Gerarchie   gestendo   Gestione   gestire   gestita   get   Giocando   giocare   giorno   gira   girare   giri   giro   giungere   giusto   globale   globally   globalmente   Gnutella   gode   Google   governa   gradi   graduale   grafiche   grafici   grafico   Gran   gran   grande   grandezza   grandi   graphviz   gratuitamente   grave   gravi   grazie   Green   grossi   grosso   group   gruppi   gruppo   guadagni   Guadagno   guadagno   guida   gw   half   handshake   hanno   hard   Hazy   header   Hello   hello   hherold   ho   hoc   Hoc   home   hop   horizon   host   hosting   Hotmail   hotspot   htm   hub   hyst   Hysteresis   Hz   ictp   idea   ideale   ideali   idee   identificatore   identificatori   ietf   Iface   imagemagick   immagini   immediata   immettersi   impazienti   Impedire   impedirlo   impedisce   impegnativo   impegno   Impiega   impiega   impiegabile   impiegando   Impiegando   impiegano   impiegare   Impiegare   impiegarli   impiegarlo   impiegasse   impiegata   impiegate   impiegati   impiegato   impiegheranno   impiegherà   impieghi   impieghiamo   impieghino   Impiego   impiego   Implementation   imporrà   importante   importanti   importanza   impossibile   imposta   Impostare   impostare   impostata   impostate   impostati   impostato   impostatovi   impostazione   impostazioni   Impostazioni   imposti   imposto   impraticabile   improbabile   inaccettabili   incidenza   incirca   includano   include   includendo   includere   incontrano   incontreranno   incredibile   incrementano   incrementare   incremento   indesiderati   index   indica   indicando   indicassero   indicativo   indietro   indipendente   indiretto   Indirizzamento   indirizzamento   indirizzargli   indirizzerebbe   Indirizzi   indirizzi   indiscriminatamente   individuo   indovinare   indovinata   inet97   Infatti   infatti   inferiore   inferiori   Infine   infinita   infiniti   influenza   influenzano   influirà   influiscono   informazione   Infrastructure   infrastructure   infrastruttura   infrastrutture   Inglese   ingressi   ingresso   inimpiegabile   inimpiegabili   iniziare   inizio   innalzerà   inoltra   inoltrare   inoltrati   inquilini   inserimento   inserire   Inserire   inserisca   inseriscano   inseriscono   inserita   inserito   insistere   insorgono   Installando   installando   installarlo   installata   installati   installato   Installato   installazioni   installi   installino   instaurare   instradare   instradati   instradato   insufficienti   inteferiscano   integrerà   Intel   intenda   intendano   intende   intendendo   intendete   intenzione   interagire   interattiva   interattivo   interazione   intercetti   interconnesse   interconnettere   interdice   interessante   interessata   interessati   interessato   interesse   interfacce   Interface   interferendo   interferenza   interferenze   interferire   interferiscono   intermediari   intermediario   intermittente   interna   internamente   International   internazionale   internazionali   internazionalmente   internetworking   interni   interno   intero   interrogazioni   Interval   intervallo   intitolato   intorno   intraprendere   introdotta   introduce   Invalid   invalid   inviata   inviati   inviato   inviino   Ip4   ipertestuali   ipotesi   irradiato   isaserver   isico   isoc   istant   istantaneo   istituto   ita   iwconfig   Ka   Kazaa   Kbps   kernel   key   Kismet   kit   Knowledge   lamentare   lamentarsi   lanciare   lanciato   laptop   larga   large   larghe   larghezza   largo   lascia   lasciar   lasciare   lasciato   latenza   latest   lati   latitudine   lato   lavora   lavorando   lavorano   lavorare   lavorassero   lavorativa   lavorino   ledere   legato   leggendo   leggere   legittimi   lenta   lentamente   lente   lentezza   lento   lettera   Level   level   Lfsl   li   libera   liberamente   libere   liberi   Libero   libero   libreria   libro   licenza   licenze   limit   limita   limitano   limitare   limitata   limitatissima   limitato   limitazione   limite   limiti   line   Line   linea   linguaggio   links   Linksys   liscio   lista   live   Lo   lo   Load   local   locale   localhost   locali   localmente   locare   log   logging   logica   logiche   longitudine   lontana   lontani   lontano   loops   loro   loss   lost   lt   luce   lunga   lunghe   lunghezza   Lunghi   lunghi   luoghi   luogo   là   M60   Mac   macchina   macchine   magggiore   maggior   maggiore   Maggiore   maggiori   maggiormente   Magick   maglia   Maglia   maglie   mai   mail   mailserver   main   makerere   Makerere   malditesta   male   malfunzionamenti   Managed   managed   Management   Manager   manager   manca   mancano   mancanza   manchi   mandare   mano   mantenendo   Mantenere   mantenere   mantenerli   mantengano   mantengono   mantenibili   mantenuto   mantiene   Map   mappe   Mappe   Mapquest   Marche   margine   maschera   massima   massimizzare   massimo   master   Master   materiale   Mb   Mbps   medio   medium   megabit   meglio   memoria   meno   mente   menzionato   menù   Menù   meritevoli   mesh   Mesh   meshcube   messa   messaggi   Messaggi   messaggio   messaging   messo   meteo   meteorologiche   metodi   metodo   metri   Metric   Metrix   mettere   metà   mezzo   mia   miche   microfono   microonde   Microsoft   microsoft   migliaia   miglio   miglior   migliora   miglioramento   migliorando   migliorare   Migliorare   migliore   migliori   migrano   millisecondi   milliwatt   min   minacciarne   minacciate   mini   minimo   minore   minori   mirror   mirroring   Mirroring   misc   miseramente   Missed   misura   misurata   mitigherà   mittente   mnemonico   Mobile   mobile   mode   Mode   modello   moderne   moderni   modi   modificato   modo   moduli   Molte   molte   molti   moltiplichi   momenti   momento   mondo   Monitor   monitor   montagna   montagne   mostrando   mostrano   mostrato   motivi   motivo   movimento   Mozambique   Mpr   ms   multipath   multiple   multipli   multiplo   multiplx   multipoint   multipunto   Multipunto   muovono   mura   muri   my   N60   n9zia   name   Name   named   nascosti   nato   natura   naturalmente   Naturalmente   navigatore   Navigazione   navigazione   nazionali   ncontrerò   ne   neato   necessari   necessariamente   necessarie   necessario   necessità   negativi   negoziare   nei   Nei   nell   nello   nemmeno   nero   nessun   Nessuno   nessuno   net   Net   netmask   Network   networking   networks   Niente   niente   noi   Noise   nomi   nominativo   norma   normale   normali   nostro   nota   Note   notebook   noti   noto   notte   notturne   notturni   notturno   nternet   nulling   numeri   nuove   Nuove   nuovi   nuvola   nwid   nylon   né   Né   Obviously   occasionale   occhiata   occorra   occorrerà   od   odierni   off   offerta   offerto   offrire   oggi   ogni   ognuna   olsr   Olsrd   olsrd   omani   omnidirezionale   omnidirezionali   On   on   onda   onde   one   online   only   operare   operativi   operatività   operazione   opereranno   opporta   opporto   opportuna   opportuni   opportunità   oppure   Optimized   opzione   opzioni   or   ora   Ora   orari   orario   ordine   ore   organizza   organizzazione   organizzazioni   origine   orizzonte   ormai   orse   ossequio   osservare   osservato   osservazione   osservi   ostacoli   ostacolo   ottenere   ottenga   ottenibili   ottenute   otterrebbe   otterrebbero   ottica   ottiche   ottiene   ottimi   Ottimizzando   Ottimizzazione   ottimizzazione   otto   our   out   output   ove   Ove   over   overhead   ovvero   ovviamente   ozione   P6   Packet   Paese   Paesi   pagamenti   page   page09   pagina   pagine   paio   palazzo   Pannello   panorama   Paper   parabola   paraboliche   Param   parametri   parametro   pari   parlare   parola   parole   partecipano   partecipante   partecipanti   Partendo   partendo   partenza   parti   particolari   particolarmente   partire   partito   passaggi   passare   passati   passi   passivamente   passivi   passo   password   path   pavimenti   payload   pazienti   pboòe   Pebble   peer   peggio   peggiorare   percettibile   percezione   perché   perdita   Perdita   perdite   Perdite   perduti   perf   Performance   periferica   periferiche   Periodi   periodicamente   periodo   perl   permane   permesso   permetta   permette   permettendo   permettere   permettersi   permettervi   permettono   persa   persi   persona   persone   persuasi   però   pesante   pesantemente   pesanti   pezzi   php   piani   pianificare   Pianificazione   piano   piccolo   piedi   piena   pila   ping   Ping   Piuttosto   piuttosto   Pl   pl   platea   plug   Plugin   plugin   png   pochi   Pocket   poco   poi   poichè   Poichè   poiché   point   Point   policy   politica   politiche   Politiche   politico   pone   ponendoli   ponendolo   popolare   popolari   port   porta   portandosi   portare   portarsi   portata   portatile   portatili   porte   porti   posizione   possa   possano   posseggono   possibili   possibilità   posta   Posta   postazione   postazioni   poste   posti   posto   potente   potenti   potenza   Potenza   potenziali   poter   potete   potranno   Potrebbe   potrebbe   potrebbero   potrà   Power   pplicativo   pratica   Pratica   praticabile   praticamente   pratico   pre   precaricati   precedentemente   predefinito   predizione   prefissato   prefisso   prende   prendere   prendersi   prendono   preoccuparsi   prescindere   prescrizioni   presenta   Presenta   presentando   presentano   presentare   presentate   presentato   presente   preso   pressochè   prestare   prestazionale   prestazione   Prestazioni   prestazioni   presteranno   presto   presumibilmente   pretesa   pretese   Pretoria   prevalentemente   prevenire   preventivamente   preventivo   previsti   previsto   prezzi   primario   prime   primo   principale   principianti   principio   priorità   privati   proattivo   probabile   probabili   probabilità   probabilmente   Probabilmente   problema   proceda   procedere   Procederemo   procedimento   prodotti   Prodotto   prodotto   produttore   produttori   Professional   profilo   progettano   progettati   progettato   progettazione   progetti   Progetto   progetto   programma   Programmi   projects   pronte   pronto   propagazione   proporzionale   proposito   proposta   proposto   propri   propria   propriamente   proprie   proprietari   proprietario   prosegue   prossima   prossime   prossimità   prossimo   Protocol   protocolli   protocollo   prova   provano   provare   provassero   provi   provider   proviene   provvedendo   provvederanno   Provvederanno   provvederà   provvedimenti   Proxies   Proxy   proxy   proxying   Prx0   psc   pubblicità   public   pulito   punta   puntare   puntate   punteggiata   punti   pure   Pv4   Pv6   python   qsl   qualche   qualcosa   qualcuno   quali   Quality   qualità   qualora   quanta   quante   quanti   quantificarla   quantità   quasi   quattro   quelle   quelli   questi   Questi   quete   qui   raccogliere   raccoglierà   raccolta   raccolte   raccomanda   raccomandati   raccomandato   raccomandazione   raddoppiare   radice   rado   Radop   raffigurazione   raggio   raggiunga   raggiungano   raggiunge   raggiungere   raggiungibile   raggiungibili   raggiungono   raggiunta   raggiunte   raggiunti   raggiunto   raggruppandoli   ragione   ragionevole   ragioni   rame   Randolf   rapidamente   rapidità   rapido   rapporto   rappresenta   rappresentano   rappresentare   rappresentazione   rasporto   rate   Rate   reale   realizza   realizzabile   realizzare   realizzati   realizzato   realizzazione   realizzazioni   realtà   reattivo   recapitato   received   Received   recentemente   reciprocamente   record   recupera   recuperate   recupero   Redundancy   regionali   regione   registra   registrarsi   registrata   registrazione   regola   regolare   regole   reimpostare   reinvia   relativamente   relay   remota   remoti   remoto   rende   rendere   rendono   repeater   reperibile   reperita   reperito   report   repository   Request   resoconto   restituito   resto   reti   Reti   retries   Retry   return   rfc   rfc3135   riassemblati   riavviare   ricadere   ricadrà   ricalcola   ricavare   ricavate   ricercano   ricercare   ricercata   ricetrasmissione   ricevare   ricevendo   ricevente   ricevere   riceverebbero   ricevitore   Ricevuta   ricevuta   ricevute   ricevuti   Ricevuto   ricevuto   richiamate   richieda   richiedano   richiede   richiedendo   richiederanno   richiedere   richiederebbe   richiederà   richiedono   richiesta   richieste   richiesti   ricominci   riconfiguranti   riconosce   riconoscere   riconoscerne   riconoscibile   riconoscibili   Riconoscimento   riconosciuta   riconosciute   ricontrollati   ricopia   ricopiati   ricopiato   ricopre   ricorda   ricordano   ricordati   ricordi   ricorra   ricorre   Ricorrendo   ricorrendo   ricorrere   ricorrono   ricorsivo   ricorso   ricostruire   ricostruito   ridiffondesse   ridondante   ridondanti   ridondanza   ridotta   ridotti   riduce   riducendo   ridurranno   ridurre   ridurrà   riesce   riescono   riferire   riferirsi   riferisce   riflessi   riflesso   riga   rigidi   rigido   riguarda   riguardare   rilanciato   rileva   rilevanti   rilevare   Rilievo   rilievo   rimane   rimanere   rimangono   Rimangono   rimarchevole   rimbalzata   rimbalzato   rimossi   Rimuovi   Ring   rinviata   ripartire   ripetendo   ripetendolo   ripetere   ripeterà   ripetitore   ripetitori   Ripetitori   ripetuti   ripetuto   riportata   riportate   riportato   riporti   riprenda   ripristinati   riservato   risiede   risiedono   risolrvere   risolse   risolte   risolto   risoluzione   Risoluzione   risolva   risolve   risolvere   risolverli   risorsa   risorse   rispettivi   rispetto   risponda   rispondere   risposta   risulta   risultare   risultati   risulterebbero   risulterà   Ritardi   ritardi   ritiene   ritornare   ritorno   Ritorno   ritrasmessi   ritrasmette   ritrasmettere   ritrasmetterà   ritrasmettono   riuscendo   riuscire   riuscito   rivela   rivelarsi   rivolto   rmw   rompe   Ronja   ronja   Roofnet   root   rotta   rotte   round   routed   router   Routing   routing   rowstyle   rsync   rts   Rumore   rumore   rumorose   rumoroso   run   rurali   Rx   sala   salti   salto   salvare   same   sappiano   sarebbe   sarebbero   satellitare   satellitari   satellite   saturare   satureranno   sawmill   Sawmill   sbaglia   scadenza   scalabilità   scalati   scalatura   scambia   scambiano   scambiati   scambio   scandita   scanner   scappatoie   scaricare   scaricarlo   scaricate   scaricato   scariche   scarichi   scarico   scattering   scavalcare   scavalcati   scavalchino   sceglieranno   scegliere   sceglierà   scegliete   scelta   scelti   scelto   scheda   schede   scherzo   scissa   scompattare   scongiura   sconti   scritto   scrivere   Seattle   seattlewireless   sebbene   sec   secondario   secondi   secondo   segmenti   segmento   segnalazione   Segnale   segnale   segnali   segue   seguendo   seguente   seguire   seguono   sei   Selective   Selettiva   Selettivo   Seleziona   selezionale   selezionare   selezionati   selezioni   sembra   sembrare   semplice   semplicemente   semplici   semplicità   sempre   Send   Sense   sensibile   Sensibilità   sensibilità   sensibilmente   Sensitivity   senso   senz   Senz   Senza   senza   separatamente   separate   separati   separato   separazione   serie   serio   serrata   serrate   servire   sessione   Set   settimana   settoriale   settoriali   sezione   sfortunatamente   Sfortunatamente   sforzo   sfruttare   sfumato   shaping   siano   sicurezza   sicuri   sicuro   side   siede   Sight   Sighted   Signal   signal   significa   significatamente   significativa   significativamente   significativi   significativo   significato   signolo   simboli   simbolo   simile   simili   simpatica   simulator   simulatore   simulazione   sincerarsi   sincronizzato   singola   singoli   singolo   sintesi   sintetizza   sistemare   sistemi   siti   sito   Sito   situazione   situazioni   Size   slave   slittamenti   smaliziati   smaliziato   snello   So   so   soddisfare   soddisfatta   soffrirà   soggetta   soggette   soggetto   soglia   sola   solamente   soluzione   Sommando   sommano   sommeranno   sonon   sopra   soprastante   sorgente   sorgenti   sorprendentemente   sorta   sospese   sostenere   sostituire   sostituisca   sottoreti   Sottoreti   sottostante   sottostanti   Sottraendo   sottraendo   source   Source   sourceforge   South   sovra   sovraccarico   sovrappongano   sovriscrizione   space   spazi   spazio   Spazio   speciale   specialmente   specifica   specificando   specificata   specifiche   Specifiche   specifico   spedice   spedire   spedisce   speditiva   spedito   spesa   spesso   Spesso   spetti   spettro   spezzare   spezzati   spezzettato   spiega   spingervi   split   spoofing   sposta   squid   Squid   Src   sta   stabile   stabili   stabilire   stabilita   stack   standard   standardizzazione   stanno   stanza   stata   State   state   Stateless   Stati   stati   staticamente   statici   Statico   statico   Station   statistica   stato   stazione   stesse   stessi   stia   Stima   stimare   stimarli   stime   strada   strade   strategia   strati   strato   streaming   Streaming   streming   Strumenti   strumenti   struttura   strutture   stupidi   style   sua   Submit   subnets   succede   succedendo   succedere   successiva   successive   successivo   successo   suddivise   suggerisce   sui   Sui   suite   sull   Sulle   sulle   Sullo   sullo   suoi   Super   superando   superato   superiore   superiori   supplementare   supplementari   Supplicare   supponga   Supponiamo   support   Supporta   supporta   supportare   supportato   supportino   supporto   survey   sussistano   svantaggi   svantaggio   sviluppata   sviluppati   sviluppato   svolgano   svolgere   swap   System   sì   T4   T5   T54   tabella   tabelle   Table   tagli   tal   tale   Tale   tali   Tali   talvolta   Talvolta   tanto   target   tasso   tavola   Tavole   tavolo   Tc   tecnica   Tecniche   tecniche   tecnologia   tecnologie   Telefoni   telefoni   telefonica   telefonico   telefonini   telefono   telnet   tempi   Tempi   tempo   temporali   temporaneamente   tende   tenderà   tendono   tener   tenere   tenga   tengono   tenta   tentando   tentativi   tentativo   Teoria   teorici   teorico   Terabeam   terabeam   terminale   termine   terminerà   terreno   terrestri   terzo   tesi   testata   Testo   testo   tetto   Thinkpad   thr   throighput   Through   throughput   Throughput   tiene   time   timeout   tipi   tipica   tipico   tipo   tipologia   tipologie   tirare   tldp   to   To   Toennesen   Token   tollerare   tool   topografiche   topologie   topology   Torrent   total   totale   Totale   traccia   tracciare   tracciarne   tradizionale   tradizionali   tradursi   traduzione   traffico   Traffico   tragitto   traliccio   transita   transito   Translation   Transparent   transparent   trascurabile   Trascurando   trascurata   trascurato   trasferimento   trasferisce   trasferito   trasformati   trasmessa   trasmessi   trasmette   Trasmettendo   trasmettendo   trasmettere   trasmettitore   trasmettono   trasmissioni   trasmissiva   trasmittente   trasparent   trasparente   trasporti   tratta   trattare   tratte   tratti   tratto   trenta   trieste   trip   troppo   troughput   trova   trovare   trovarli   trovata   trovati   trovato   troveranno   troverà   trovi   trucco   tubo   tune   tunnel   tutorial   tutta   twibright   Tx   ubuntu   Ubuntu   ue   ufficio   ug   uguale   ulteriore   ulteriori   ulteriormente   ultima   ultimo   umani   uni   unica   uniche   unico   uniformi   Unik   Uniti   Universe   universitaria   universitario   University   Università   università   univoco   Unix   uptime   urbane   usa   Usando   usando   usano   Usare   usare   usata   usate   usati   usato   uscita   Use   usi   usino   uso   utente   Utente   utenti   Utenti   utile   utili   utility   utilità   utilizzati   utilizzatori   utilizzo   utils   v5   valida   valido   valle   valore   valori   valutare   valutata   valutazione   valuti   vantaggi   vantaggio   varco   vari   variabile   variabili   variare   variazione   vasta   vecchi   Vector   veda   vedasi   vedere   vedersi   vediamo   Vedremo   vedremo   vedrà   vedà   veloce   velocemente   veloci   velocità   velocizza   venditori   venga   vengano   venir   venire   venne   verifica   verificherà   verifichino   verosimilmente   verranno   verrebbe   versioni   vi   via   viaggio   vicenda   vicinanze   vicini   vicino   video   view   vincolato   virgilio   virtuale   virus   visibile   visibili   visibilità   visione   visitare   visitatori   visto   Visual   visuale   visualizza   visualizzare   Vo   Voice   vole   voler   volte   vostra   vostri   vostro   vuoto   Webalizer   webserver   Weniger   Wget   wget   White   Wi   Wide   will   Win   window   Windows   wine   Wine   wireless   Wireless   wlan0   workstation   World   x31   xoomer   Yahoo   Za   zero   Zitterbart  

Clear message
Italiano English
Edit History Actions

wndw/Capitolo3


Contents

  1. Progetto della Rete
    1. Progettare la rete fisica
      1. Punto-Punto
      2. Punto-multipunto
      3. Multipunto-multipunto
      4. Impiega la tecnologia che risolve il problema
    2. La rete logica
      1. Il modello TCP/IP
    3. reti wireless 802.11
    4. reti Internet
      1. Indirizzi IP
      2. indirizzamento di rete
      3. Routing
      4. Forwarding
      5. Comporre il tutto in una visione unica
    5. Reti a Maglia con OLSR
      1. Mesh Routing con olsrd
      2. La Teoria
      3. Il Meccanismo
      4. In Pratica
      5. Un semplice file di configurazione olsrd.conf
      6. Impiego di OLSR su Ethernet e su interfacce multiple
      7. Plugin
      8. Installare il plugin dot_draw
      9. Risoluzione dei malfunzionamenti
    6. Stima della Capacità
    7. Pianificazione del Collegamento
      1. Calcolare il link budget
      2. Esempio di Calcolo di link budget
      3. Tavole per il Calcolo del Link Budget
        1. Perdita in Spazio Libero a 2.4GHz
        2. Guadagno d'Antenna Totale:
        3. Perdite:
        4. Link Budget per collegamento Radio 1 -> Radio 2:
        5. Link Budget per collegamento Radio 2 -> Radio 1:
      4. Software per la Pianificazione del Collegamento
        1. CGI per il Progetto interattivo
        2. RadioMobile
        3. RadioMobile e Linux
      5. Eliminare il Rumore
      6. Ripetitori
    8. Ottimizzazione del Traffico
      1. Web caching
        1. Proxy server disponibili
        2. Impedire agli Utenti di aggirare il Proxy Server
        3. Firewall
        4. Doppia scheda di rete
        5. Routing impostato su Politiche di Gestione
        6. Mirroring di un Sito web
        7. Arricchire preventivamente la cache impiegando wget
        8. Gerarchie di Cache
        9. Specifiche per Proxy
      2. DNS caching ed ottimizzazione
        1. Bind (named)
        2. dnsmasq
        3. Windows NT
        4. Windows 2000
        5. DNS separato e server ricopiato
    9. Ottimizzazione del Collegamento Internet
      1. Fattori TCP/IP su una connessione satellitare
      2. Lunghi Tempi di Andata e Ritorno (RTT)
      3. Prodotto tra ritardo e larghezza di banda
      4. Errori di Trasmissione
      5. Conseguenze per le università
      6. Migliorare le Prestazioni del Proxy (PEP)


Progetto della Rete

Prima di acquistare del materiale o di decidersi sulla piattaforma hardware da adottare, occorre farsi una chiara idea sulla natura del problema di comunicazione. Probabilmente, state leggendo questo libro perché intendete collegare tra loro reti di computer, al fine di condividere risorse fino a raggiungere la più estesa Internet. Il progetto di rete che scegliete di realizzare dovrà rispondere alle esigenze di comunicazione che state tentando di soddisfare. Dovete connettere un sito remoto ad una connessione Internet nel centro del vostro campus universitario? La vostra rete potrà presumibilmente crescere, fino ad includere diversi siti remoti? La maggior parte dei vostri componenti di rete sarà installata in postazioni fisse, o la vostra rete si espanderà fino a comprendere centinaia di portatili ed altri dispositivi che migrano da una cella all'altra?

Quando si affronta un problema complesso, si rivela spesso utile tracciare un grafico delle risorse a disposizione e del problema. In questo capitolo, daremo un'occhiata alle modalità che altre persone hanno scelto per costruire reti wireless in grado di soddisfare le proprie esigenze di comunicazione, comprendendo anche i diagrammi essenziali delle strutture di reti. Procederemo quindi con l'affrontare i concetti di networking che definiscono la suite TCP/IP, ovvero il principale linguaggio del networking che si impiega su Internet. Dimostreremo diversi metodi ormai comuni per ottenere che l'informazione fluisca efficacemente attraverso la vostra rete verso il resto del mondo.

Progettare la rete fisica

Potrebbe sembrare bizzarro parlare della rete "fisica" quando si costruiscono reti wireless. Dopo tutto, dov'è la parte fisica della rete? Nelle reti wireless, il mezzo fisico che impieghiamo per la comunicazione è, ovviamente, l'energia elettromagnetica. Ma nel contesto di questo capitolo, il termine "rete fisica" intende riferirsi al banale concetto di dove mettere le cose. Dove sistemare l'attrezzatura, in modo che sia possibile raggiungere i client wireless? Sia che si intenda coprire l'area di un edificio o che si intenda coprire diversi chilometri, le reti wireless sono suddivise in queste tre configurazioni logiche:

  • collegamenti punto-punto (point-to-point links)

  • collegamento punto-multipunto (point-to-multipoint links)

  • reti multipunto-multipunto (multipoint-to-multipoint clouds)

La struttura di rete fisica da adottare dipenderà dalla natura del problema che si intende risolvere. Mentre parti differenti della rete possono sfruttare ognuna delle citate configurazioni, ogni singolo collegamento ricadrà in una delle tre tipologia sopra riportate. L'applicazione di ciascuna di tali tipologie è meglio spiegata con degli esempi.

Punto-Punto

Collegamenti punto-a-punto (Point-to-point links) garantiscono, tipicamente, una connessione Internet dove l'accesso non sia altrimenti disponibile. Ad un capo di tale collegamento verrà offerta la connessione ad Internet, mentre all'altro estremo Internet viene connessa. Per esempio, una università può disporre di una connessione veloce di tipo frame relay o VSAT al centro del campus, ma non può permettersi lo stesso tipo di connessione per un edificio distaccato. Se l'edificio principale gode di una visuale libera verso il sito distaccato, una connessione punto-a-punto può essere impiegata per connettere assieme i due edifici. Con tale accorgimento, si possono estendere come capacità, od addirittura sostituire, i collegamenti di tipo telefonico già esistenti. Con antenne adatte e visuale libera, sono possibili collegamenti affidabili punto-a-punto anche oltre i trenta chilometri.

figure-3.1-ita.png

Figura 3.1: Un collegamento punto-a-punto permette ad un sito distaccato di attingere ad una connessione Internet centrale.

Naturalmente, una volta che una connessione punto-punto è stata messa in piedi, altre connessioni possono essere impiegate per estendere la rete ulteriormente. Se l'edificio distaccato del nostro esempio è in cima ad una collina, può essere in visibilità di altre importanti aree che non sarebbero direttamente visibili dal campus centrale. Installando un secondo collegamento punto-punto sul sito remoto, un altro nodo può raggiungere la rete e far così uso della connessione centrale verso Internet.

I collegamenti punto-punto non devono, necessariamente, riguardare l'accesso ad Internet. Supponiamo per esempio di dover condurre una stazione di monitoraggio ambientale, su di una collina, con lo scopo di raccogliere i dati che questa registra nel tempo. Si potrebbe connettere il sito con un collegamento punto-punto, permettendo la raccolta dati ed il monitoraggio in tempo reale, senza la necessità di portarsi fisicamente sul posto. Le reti wireless assicurano sufficiente banda per portare grandi quantità di dati (compresi audio e video) tra due punti che siano tra loro connessi, anche se mancano di allacciamento diretto ad Internet.

Punto-multipunto

La seconda disposizione di rete maggiormente diffusa è la punto-multipunto (point-to-multipoint). Ove diversi nodi sono in connessione con un punto centrale di accesso, questa è un'applicazione del punto-multipunto. Il classico esempio di una configurazione punto-multipunto è l'impiego di un punto di accesso wireless che garantisce la connessione a diversi laptop. I laptop non comunicano direttamente tra di loro, ma devono rimanere nel raggio di azione dell'access-point per poter usare la rete.

figure-3.2-ita.png

Figura 3.2: Il VSAT centrale è ora condiviso tra diversi siti remoti. I tre siti possono tra loro comunicare anche direttamente, a velocità decisamente superiori a quelle del VSAT.

Il networking punto-multipunto può anche applicarsi al precedente esempio dell'università. Si supponga che l'edificio distaccato sulla cima della collina sia connesso al campus centrale con un collegamento punto-punto. Piuttosto che tirare su diversi collegamenti punto-punto per distribuire l'accesso ad Internet, può venir impiegata un'unica antenna che sia visibile dai diversi edifici lontani. Questo è un classico esempio di una connessione punto (sito distaccato sulla collina) -multipunto (molti edifici nella valle sottostante) su area estesa.

Si osservi come sussistano limiti nelle prestazioni di collegamenti punto-multipunto su distanze molto estese, limiti che verranno discussi più avanti nel capitolo. Questi collegamenti sono possibili ed utili in diverse situazioni, ma si eviti di ricadere nel classico errore di installare un singolo traliccio radio ad alta potenza nel bel mezzo della città, con la pretesa di portare il servizio a migliaia di utenti, così come si potrebbe invece fare per una stazione radio FM. Come si vedà più avanti, le reti di dati si comportano in modo decisamente differente dalle trasmissioni della radio.

Multipunto-multipunto

Il terzo tipo di configurazione di rete è quello multipunto-multipunto, definito anche rete ad-hoc o mesh. In una rete multipunto-multipunto, non c'è un'autorità centrale. Ogni nodo sulla rete si prende carico del traffico di ogni altro nodo, secondo necessità, ed ogni nodo comunica direttamente con ogni altro.

figure-3.3.png

Figura 3.3: una maglia (mesh) multipunto-multipunto. Ogni punto riesce a raggiungere ogni altro a velocità molto alta, così come può raggiungere Internet tramite il VSAT centrale.

I vantaggi di tale configurazione di rete risiedono nel fatto che, anche se nessuno dei nodi fosse in contatto con l'access point centrale, questi potrebbero comunque comunicare tra loro. Le realizzazioni a regola d'arte di reti mesh sono auto-riconfiguranti, nel senso che riescono a riconoscere automaticamente i problemi di routing e riescono a risolverli nel modo opportuno. Estendere una rete mesh è semplice come aggiungere nuovi nodi. Se uno dei nodi nella "nuvola" si trova ad essere un gateway (varco) verso Internet, allora l'accesso può essere condiviso tra tutti i client presenti.

Due gravi svantaggi di tale tipologia sono la complessità crescente e la bassa prestazione. Anche la sicurezza, in una rete simile, rappresenta un serio problema, poiché ogni singolo partecipante può, potenzialmente, prendersi carico del traffico di ogni altro. Reti multipunto-multipunto tendono ad essere complicate nella diagnostica dei problemi, a causa del grande numero di variabili che insorgono quando i nodi cambiano di posizione. Le reti multipunto-multipunto, tipicamente, non dispongono della stessa capacità di reti punto-punto o punto-multipunto, a causa dell'overhead supplementare necessario per il routing della rete e della più serrata competizione per l'impiego dello spettro elettromagnetico.

Tuttavia, le reti a maglia (mesh networks) sono utili in diverse situazioni. Alla fine di questo capitolo, vedremo un esempio di come rendere attiva una rete a maglia multipunto-multipunto impiegando un protocollo di routing chiamato OLSR.

Impiega la tecnologia che risolve il problema

Tutti questi progetti di rete possono essere usati per complementarsi a vicenda in una rete più grande, e possono ovviamente far uso delle tradizionali tecniche di una rete su cavo, ove possibile. Si fa infatti comunemente ricorso ad un collegamento wireless a lunga distanza per assicurare l'accesso Internet ad una postazione remota, impiegando poi un access point su tale postazione per garantire l'accesso a livello locale. Uno dei client di questo access point può poi, a sua volta, comportarsi come nodo di maglia, permettendo alla rete di espandersi tra gli utenti dei laptop che, alla fine, usano tutti il collegamento punto-punto originale per aver accesso ad Internet.

Ora che è stata fornita una chiara idea sul modo con cui vengono tipicamente impostate le reti wireless, si può iniziare a comprendere come sia possibile la comunicazione attraverso tali reti.

La rete logica

La comunicazione diventa realizzabile solo quando i partecipanti impiegano un linguaggio comune. Quando però la comunicazione diventa più complessa che una semplice radio-diffusione, il protocollo acquista un'importanza pari a quella del linguaggio. Tutte le persone in un auditorium possono parlare lo stesso Inglese, ma in assenza di regole per stabilire chi abbia diritto di prendere il microfono, la comunicazione delle idee di un singolo individuo all'intera platea diventa praticamente impossibile. Si immagini ora un auditorium che si estenda al mondo intero, ove siano compresi tutti i computer esistenti. Senza un insieme di protocolli di comunicazione comuni per regolare quando e come un computer possa prendere la parola, Internet sarebbe solo una disordinata confusione, dove tutte le macchina provano a parlare nello stesso momento.

TCP/IP si riferisce alla suite di protocolli che permettono la realizzazione delle conversazioni sull'Internet globale. Se si comprende TCP/IP, si possono costruire reti in grado di crescere praticamente a qualsiasi dimensione, per arrivare a diventare parte, alla fine, dell'Internet globale.

Il modello TCP/IP

Le reti di dati sono spesso descritte come costituite su strati diversi. Ogni strato dipende dalle operazioni condotte da tutti gli strati sottostanti, prima che la comunicazione possa aver luogo, ma ogni strato scambia i dati solo con lo strato superiore o con quello inferiore ad esso. Il modello TCP/IP delle reti descrive cinque strati, come evidenziato dal diagramma sotto riportato:

figure-3.4-ita.png

Figura 3.4: Il modello di rete TCP/IP.

La precedente sezione sulla configurazione della rete descriveva il primo strato: lo strato fisico. Si tratta del mezzo fisico sul quale la comunicazione ha luogo. Può essere un cavo di rame di tipo CAT5, un fascio di fibre ottiche, onde radio, od anche un altro mezzo.

Lo strato soprastante è chiamato strato data link. Quando due o più nodi condividono lo stesso mezzo fisico (per esempio, diversi computer attestati ad un hub, od una sala piena di laptop che usano tutti lo stesso canale radio), essi usano lo strato data link per determinare a chi spetti trasmettere sul mezzo. Esempi comuni di protocolli di data link sono Ethernet, il Token Ring, l'ATM, ed i protocolli di rete wireless (802.11a/b/g). Le comunicazioni su questo strato sono definite link locali, poichè tutti i nodi connessi su questo strato possono comunicare direttamente l'uno con l'altro. Sulle reti che assumono Ethernet come modello di riferimento, i nodi vengono distinti sulla base del proprio indirizzo MAC, che è un numero univoco di 48 bit assegnato ad ogni periferica di rete dal suo costruttore.

Appena sopra dallo strato data link c'è lo strato Internet. Per il TCP/IP, questo è detto Internet Protocol (IP). Sullo strato Internet, i pacchetti possono lasciare la rete del collegamento locale per essere ritrasmessi su altre reti. I router prendono in carico questa funzione su una rete, disponendo di almento due interfacce di rete, una per ogni rete che devono interconnettere. I nodi su Internet sono raggiungibili grazie al loro IP address, che è globalmente unico.

Diventato possibile il routing su Internet, si rende ora necessario raggiungere un particolare servizio disponibile presso un indirizzo IP dato. La funzione è soddisfatta dallo strato successivo, lo strato di trasporto. TCP ed UDP sono classici esempi di strati di trasporto. Alcuni protocolli dello strato di trasporto (come TCP) assicurano che tutti i dati arrivino a destinazione, siano riassemblati e quindi consegnati allo strato superiore, nell'ordine previsto.

Alla fine, sulla cima della pila si trova lo strato applicativo. È lo strato che si interfaccia con la maggior parte degli utenti della rete, ed è a livello di questo strato che avviene la comunicazione per le persone. HTTP, FTP e SMTP sono tutti protocolli dello strato applicativo. La persona si pone al di sopra di tutti questi strati, e non deve conoscere praticamente nulla di tutti gli strati sottostanti, per impiegare in modo efficace la rete.

Un modo per riconoscere il modello TCP/IP può essere quello che prevede una persona che intenda consegnare una lettera ad un ufficio in un palazzo del centro. Occorre prima interagire con la stessa strada (lo strato fisico), prestare attenzione al traffico che altri conducono sulla strada (lo strato data-link), giungere al posto giusto per immettersi su altre strade ed arrivare all'indirizzo giusto (lo strato Internet), portarsi al piano giusto ed al corretto numero di stanza (lo strato di trasporto), e finalmente trovare il destinatario o un commesso che possa prendere in carico la lettera (lo strato applicativo). I cinque strati possono facilmente essere ricordati usando il trucco mnemonico "Forse Domani Incontrerò Tue Amiche", che naturalmente ricorda: " Fisico / Data-link / Internet / Trasporto / Applicativo."

reti wireless 802.11

Prima che i pacchetti possano essere inoltrati ed instradati su Internet, il primo strato (quello fisico) ed il secondo (quello data link) devono essere connessi. Senza connessione sul collegamento locale, i nodi della rete non possono comunicare tra di loro, possono instradare pacchetti.

Per garantire connessione fisica, le periferiche wireless devono operare nella stessa finestra dello spettro radio. Come si è visto nel capitolo 2, ciò significa che le radio 802.11a potranno comunicare con altre radio 802.11a sulla banda dei 5GHz, mentre le radio 802.11b/g comunicheranno con altre radio 802.11b/g sulla banda dei 2.4 GHz. Ma una periferica 802.11a non potrà colloquiare con una periferica 802.11b/g, poichè usano segmenti completamente diversi dello spettro elettromagnetico.

In modo più specifico, le schede wireless devono accordarsi su un canale comune. Se una scheda radio 802.11b è impostata sul canale 2 mentre un'altra è impostata sul canale 11, le due radio non comunicheranno tra di loro.

Quando due schede wireless sono configurate per impiegare lo stesso protocollo sullo stesso canale radio, sono allora pronte per negoziare la connettività sullo strato data link. Ogni periferica 802.11a/b/g può lavorare in uno dei quattro possibili modi:

  1. Master mode (altrimenti chiamato AP or modo infrastruttura) è usato per rendere disponibile un servizio simile ad un access point tradizionale. La scheda wireless crea una rete con un nominativo specifico (chiamato SSID) ed un proprio canale, ed offre servizi di rete su questo. Posta in modo master, la carta wireless governa tutte le comunicazioni relative alla rete (autenticando i client wireless, gestendo le contese sul canale, ripetendo i pacchetti, etc.). Le schede wireless poste in modo master possono comunicare solo con altre schede che le siano associate in modalità managed (gestita).

  2. Managed mode viene talvolta chiamato client mode. Le schede wireless poste in managed mode si aggregheranno a reti create da un master, e provvederanno automaticamente a reimpostare il proprio canale di lavoro per adeguarsi al canale del master. Provvederanno quindi a presentare ogni credenziale necessaria al master, e se queste credenziali saranno accettate, queste schede verranno definite associate (associated) al master. Le schede in Managed mode non comunicano direttamente tra di loro, ma comunicano solo con il master loro associato.

  3. Ad-hoc mode crea reti multipunto-multipunto dove non è presente un signolo nodo master, od Access Point. Nel modo ad-hoc, ogni scheda wireless comunica direttamente con i propri vicini. I nodi devono essere nel raggio d'azione di ogni altro nodo corrispondente per comunicare, e devono accordarsi sul nome della rete e sul canale da impiegare.

  4. Monitor mode è impiegato da alcuni strumenti (come Kismet, vedasi al capitolo sei) che ascoltano passivamente il traffico presente su un dato canale. Quando sono in Monitor Mode, le schede wireless non trasmettono dati. Tale caratteristica è importante per analizzare problemi su un collegamento wireless o per osservare l'impiego dello spettro elettromagnetico in una zona locale. Il Monitor Mode non è usate per le normali comunicazioni.

Nella realizzazione di un collegamento punto-punto o punto-multipunto, una radio dovrà tipicamente operare in Master Mode, mentre le altre verranno poste in Managed Mode. In una rete multipunto-multipunto, le radio opereranno tutte in modalità ad-hoc, che possano comunicare direttamente una con le altre.

figure-3.5-ita.png

Figura 3.5: Access Point, Client, e nodi Ad-Hoc.

È importante mantenere queste modalità in mente quando si progettano le configurazioni di rete. Si ricordi come i client in Managed Mode non possano comunicare direttamente gli uni con gli altri, da rendere probabile l'impiego in un sito ripetitore a maggiore altezza che sia in Master Mode o Ad-Hoc Mode. Come si vedrà più avanti nel capitolo, il modo Ad-Hoc è più flessibile ma presenta maggiori problemi di prestazioni, rispetto al Master Mode ed al Managed Mode.

Ora che le schede wireless garantiscono connettività sia nello strato fisico che in quello data-link, sono in grado di cominciare a trasferire i pacchetti sul terzo strato, lo strato internetworking.

reti Internet

Indirizzi IP, indirizzamento di rete, routing e forwarding sono tutti concetti importanti e correlati nell'ambito delle reti Internet. Un indirizzo IP è un identificatore per un nodo di rete quale un PC, un server, un router od un bridge. Indirizzamento di Rete è il sistema impiegato per assegnare tali identificatori raggruppandoli in gruppi significativi. Il Routing tiene traccia di dove questi gruppi possano essere trovati nella rete. Il risultato del processo di routing è mantenuto in una lista chiamata tabella di routing. Il Forwarding è l'azione di impiegare la tabella di routing per spedire un pacchetto dati o verso la sua destinazione finale, o verso "il prossimo salto" che lo avvicina alla destinazione.

Indirizzi IP

In una rete IP, l'indirizzo è un numero di 32 bit, normalmente scritto sotto forma di quattro numeri ad otto bit, separati da punti. Esempi di indirizzi IP sono 10.0.17.1, 192.168.1.1, o 172.16.5.23.

indirizzamento di rete

Reti interconnesse devono concordare un piano di indirizzamento IP. Nella Internet globale, commissioni di persone distribuiscono gruppi di indirizzi IP in modo coerente per assicurare che indirizzi duplicati non vengano usati da reti differenti, provvedendo altresì che ci si possa riferire in modo rapido a gruppi di indirizzi. Questi gruppi di indirizzi sono chiamati sotto-reti o subnets come abbreviazione. Sottoreti più ampie possono essere ulteriormente suddivise in sottoreti minori. Talvolta, un gruppo di indirizzi collegati è chiamato Spazio di Indirizzi o address space.

Su Internet, nessuna persona e nessuna organizzazione possiede effettivamente questi gruppi di indirizzi perché gli indirizzi hanno significato solo se il resto della comunità di Internet concorda nel loro utilizzo. Per accordo, gli indirizzi sonon distribuiti alle organizzazioni sulla base dei loro bisogni e della loro dimensione. Un'organizzazione che abbia ricevuto un segmento di indirizzi potrebbe quindi assegnarne una porzione ad un'altra organizzazione, sulla base di un accordo di servizio. Indirizzi che vengono assegnati in questa maniera, partendo dalle commissioni internazionalmente riconosciute per poi essere via via spezzati gerarchicamente da comitati nazionali o regionali, sono detti indirizzi IP globalmente instradati (globally routed IP addresses).

A volte non è conveniente, se non impossibile, ottenere per un individuo od un'organizzazione più di un indirizzo IP globalmente instradato. In questo caso può essere impiegata una tecnica conosciuta come Network Address Translation (traduzione dell'indirizzo di rete), o NAT. Un dispositivo NAT è un router con due porte di rete. La porta esterna impiega un indirizzo IP globalmente instradato, mentre la porta interna usa un indirizzo IP appartenente ad un segmento particolare, chiamato indirizzi privati. Il router NAT permette al singolo indirizzo globale di essere condiviso da parte di tutti gli utenti interni, che impiegano indirizzi privati. Il router NAT converte i pacchetti da una forma di indirizzamento all'altra, quando i pacchetti lo attraversano. Gli utenti interni credono di essere direttamente connessi ad Internet e non richiedono software particolare, driver, per condividere il singolo indirizzo IP globale.

Routing

Internet cresce e cambia costantemente. Nuove reti sono aggiunte in continuazione, mentre i collegamenti tra le reti sono aggiunti, sono rimossi, cadono e vengono ripristinati. È compito del routing determinare il percorso migliore verso la destinazione, e creare tabelle di routing che elenchino il percorso migliore per ogni possibile destinazione.

Routing Statico è il termine usato per le tabelle di routing compilate a mano. È talvolta conveniente per piccole reti, ma può facilmente diventare impraticabile e soggetto ad errori per reti di maggiore dimensione. Ancora peggio, se il percorso migliore verso una rete diventa inimpiegabile, per un'avaria hardware o per altre ragioni, il routing statico non farà uso del miglior percorso secondario.

Routing Dinamico è una soluzione dove gli elementi di rete, in particolare i router, si scambiano reciprocamente informazioni sul loro stato e sullo stato dei propri vicini nella rete, e quindi usano queste informazioni per rilevare automaticamente il percorso migliore e per compilare la tabella di routing. Se ci sono cambiamenti, come un router che si blocca od un nuovo router che entra in azione, allora i protocolli di routing dinamico apportano aggiustamenti alle tabelle di routing. Il sistema di scambio dei pacchetti e la definizione delle decisioni è denominato protocollo di routing. Ci sono diversi protocolli di routing che sono usati oggi su Internet, tra cui OSPF, BGP, RIP, and EIGRP.

Le reti wireless sono come le reti su cavo, per quanto riguarda la loro necessità di protocolli di routing, ma sono anche tanto differenti, da richiedere protocolli di routing diversi. In particolare, le connessioni su reti su cavo tipicamente o funzionano bene, o non funzionano affatto (in altre parole, un cavo Ethernet o è allacciato, o non lo è). La situazione non è così chiara quando si tratta di reti wireless. Le comunicazioni radio possono essere affette da oggetti che si muovono sul percorso del segnale, o da disturbi che interferiscono. Conseguentemente, i collegamenti possono funzionare bene, o male, o in modo sfumato tra i due estremi. Poichè i protocolli attuali non tengono in conto la qualità del collegamento nel definire le decisioni, i comitati IEEE 802.11 e l'IETF stanno lavorando sulla standardizzazione dei protocolli per le reti wireless. Al momento, non è ancora chiaro se si imporrà un singolo standard per affrontare la qualità variabile di un collegamento.

Nel frattempo, sono in corso diversi tentativi di affrontare il problema. Alcuni esempi sono Hazy Sighted Link State (HSLS), Ad-hoc On-demand Distance Vector (AODV), e Optimized Link State Routing (OLSR). Un altro è SrcRR, una combinazione del DSR e dell'ETX, realizzato dal progetto Roofnet del M.I.T. Più avanti, in questo capitolo, vedremo un esempio di come realizzare una rete usando OLSR per le decisioni di routing.

Forwarding

Il Forwarding è diretto, in confronto con l'indirizzamento ed il routing. Ogni volta che riceve un pacchetto di dati, il router consulta la tabella di routing che possiede internamente. Partendo dal bit più significativo (o di maggior ordine), la tabella di routing viene scandita per ricercare il valore che corrisponda per il maggior numero di bit all'indirizzo di destinazione. Tale valore (il primo campo di ogni riga) è denominato il prefisso dell'indirizzo. Se viene trovato nella tabella di routing un prefisso che corrisponda, allora il contatore dei salti (hop counter) od il campo time to live (TTL) è decrementato. Se il risultato è zero, allora il pacchetto viene lasciato cadere ed un pacchetto di segnalazione di errore viene rinviata al mittente. Altrimenti, il pacchetto viene inviato al nodo od alla interfaccia specificata nella tabella di routing. Come esempio, se la tabella di routing contiene questi valori...

Destination     Gateway         Genmask         Flags Metric  Iface
10.15.6.0       0.0.0.0         255.255.255.0   U     0       eth1
10.15.6.108     10.15.6.7       255.255.255.255 UG    1       eth1
216.231.38.0    0.0.0.0         255.255.255.0   U     0       eth0
0.0.0.0         216.231.38.1    0.0.0.0         UG    0       eth0

...ed un pacchetto arriva con indirizzo di destinazione 10.15.6.23, questi verrà allora spedito al gateway 10.15.6.7 (poichè il primo campo, di ingresso, trova sulla linea di tale gateway una corrispondenza più completa rispetto dalla rotta della rete 10.15.6.0)

Una destinazione 0.0.0.0 è convenzionalmente considerata il default gateway. Se nessun altro prefisso trova corrispondenza con l'indirizzo di destinazione, allora il pacchetto viene spedito al default gateway. Per esempio, se l'indirizzo di destinazione fosse 72.1.140.203, allora il router indirizzerebbe il pacchetto al gateway 216.231.38.1 (che sarà, verosimilmente, più prossimo alla destinazione finale, e così via).

Se per il pacchetto in ingresso non è trovata nessuna corrispondenza valida (cioè, se non esiste un default gateway e non c'è corrispondenza con il prefisso di una rotta stabilita), allora il pacchetto viene lasciato cadere ed un pacchetto di errore viene restituito al mittente.

Il campo TTL è impiegato per riconoscere i giri a vuoto dei pacchetti (routing loops). Senza tale campo, un pacchetto potrebbe essere continuamente rimbalzato tra un router ed un altro, qualora questi si indicassero a vicenda come prossimo passo verso la destinazione finale. Questo tipo di giro a vuoto può dare origine ad un forte traffico non necessario sulla rete, tale da minacciarne la stabilità. L'impiego del TTL non scongiura i giri a vuoto, ma contribuisce ad evitare che questi distruggano la rete a causa di un semplice errore di configurazione.

Comporre il tutto in una visione unica

Ciascun nodo della rete può inviare pacchetti di dati all'indirizzo IP di un altro nodo, una volta che tutti abbiano ricevuto il proprio indirizzo IP. Attraverso l'uso del routing e del forwarding, questi pacchetti possono raggiungere i nodi sulla rete che non sono fisicamente connessi al nodo di origine. Questo processo sintetizza la gran parte di ciò che avviene su Internet. Tutto ciò è illustrato nelle figure seguenti:

figure-3.6-ita.png

Figura 3.6: Reti su Internet. Ogni segmento di rete dispone di un router con due indirizzi IP, ponendolo in un "collegamento locale" (link local) su due reti differenti. I pacchetti sono passati tra router fintantochè non raggiungano la loro destinazione finale

In questo esempio, potete vedere il percorso che completano i pacchetti quando Alice scambia messaggi con Bob impiegando un servizio di istant messaging. Ogni linea punteggiata rappresenta un cavo Ethernet, un collegamento wireless, od ogni altra possibile rete fisica. Il simbolo a nuvola viene comunemente usato per rappresentare "Internet", e corrisponde ad un numero di reti IP che vi partecipano. Alice, Bob devono preoccuparsi di come le proprie reti cooperino tra loro, fintantochè i router inviino il traffico IP fino alla destinazione finale. Se non fosse per i protocolli di Internet e la collaborazione di ciascuno sulla rete, questo tipo di comunicazione non sarebbe possibile.

Ora che abbiamo visto come i pacchetti fluiscano sulle reti IP, vediamo un tipo particolare di rete IP: una maglia OLSR.

Reti a Maglia con OLSR

Gran parte delle reti wireless lavorano in Infrastructure Mode; sono costituite di un access point posto da qualche parte, con una scheda radio che lavora in Master Mode, ed un collegamento ad una linea DSL od ad un'altra rete di grande dimensione, di tipo su cavo. In questo hotspot, l'access point lavora tipicamente da Master Station che distribuisce l'accesso ad Internet ai propri client, che funzionano invece in Managed Mode. Questa topologia è simile al servizio mobile telefonico GSM. I telefonini si connettono ad una stazione base; senza la presenza di tale stazione base, i telefonini non sarebbero in grado di comunicare tra loro. Se desiderate giocare uno scherzo, chiamate l'amico che siede dall'altro lato del tavolo; il vostro telefono spedice alla stazione base del vostro provider telefonico che può essere lontana un paio di chilometri, ed è la stazione base che reinvia poi il segnale al telefono del vostro amico.

Anche le schede WiFi in Managed Mode non possono comunicare direttamente. I client - ad esempio, due portatili sullo stesso tavolo - devono impiegare un access point come relay. Tutto il traffico tra i client aggregati ad un access point deve quindi essere spedito due volte. Se i client A e C comunicano, il cliente A spedisce i propri dati all'access point B, quindi l'access point ritrasmette i dati al cliente C. La singola trasmissione può raggiungere, nel nostro esempio, i 600 kByte/sec (all'incirca, la velocità massima raggiungibile con il protocollo 802.11b). Così, poichè i dati devono essere ripetuti dall'access point prima che raggiungano il proprio destinatario, la velocità effettiva tra due client sarà solo di 300 kByte/sec.

Nel modo ad-hoc non c'è un rapporto gerarchico master-client. I nodi possono comunicare direttamente, fintantochè siano nel raggio d'azione delle proprie interfacce wireless. Così, nel nostro esempio entrambi i computer potrebbero raggiungere la massima velocità se lavorassero in modalità ad-hoc, in condizioni ideali.

Lo svantaggio della modalità ad-hoc è che i client non ritrasmettono il traffico destinato ad altri client. Nel caso dell'access point (modalità infrastructure), invece, se due client A e C non possono vedersi direttamente con le loro interfacce wireless, sono comunque in grado di comunicare, fintantochè l'Access Point sia nel raggio wireless di entrambi i client.

figure-3.7-ita.png

Figura 3.7: L'Access Point B ritrasmetterà il traffico tra i client A and C. Nella modalità Ad-Hoc, il nodo B non ripeterà il traffico tra A e C per default.

I nodi Ad-hoc non ritrasmettono il traffico per default, ma possono comportarsi in modo simile se viene applicato un opportuno routing. Le reti a maglia (Mesh networks) sono basate sulla strategia che rende ogni nodo - capace di costituire maglie - relay per estendere la copertura della rete wireless. Maggiore il numero dei nodi, migliore diventa la copertura radio e la portata della nuvola di maglie.

Un importante costo dev'essere menzionato a questo proposito. Se il dispositivo usa solo un'interfaccia radio, la banda disponibile è ridotta in modo significativo ogni volta che il traffico viene ripetuto da nodi intermedi posti sul percorso da A a B. Inoltre, ci sarà interferenza nella trasmissione a causa della condivisione dello stesso canale da parte dei nodi. Cosi, economiche reti a maglia su modalità ad-hoc possono garantire una buona copertura radio sull'ultimo miglio di una rete di una comunità wireless al costo della velocità, specialmente se la densità dei nodi e la potenza di trasmissione sono alte.

Se una rete ad-hoc è costituita solamente di pochi nodi che sono accesi ed attivi in modo continuo, che non si muovono e che dispongono sempre di collegamenti radio stabili - una lunga lista di condizioni - diventa possibile compilare a mano le tabelle di routing per tutti i nodi.

Sfortunatamente, le condizioni citate si incontrano difficilmente nel mondo reale. I nodi possono cadere, dispositivi WiFi sono presenti nelle vicinanze, e le interferenze possono rendere inimpiegabili i collegamenti radio in qualsiasi momento. Nessuno ha l'intenzione di aggiornare a mano diverse tabelle di routing ogni volta che un nuovo nodo è aggiunto alla rete. Impiegando invece protocolli di routing che mantengono in modo automatico le specifiche tabelle di routing su tutti i nodi coinvolti, diventa possibile evitare questo problema. I protocolli di routing di maggiore impiego nel mondo cablato (protocolli come OSPF) non funzionano al meglio in un ambiente wireless perché non sono progettati per contrastare i collegamenti con attenuazioni o le topologie che cambiano con rapidità.

Mesh Routing con olsrd

Il demone Optimized Link State Routing - olsrd - fornito da olsr.org è un'applicazione di routing sviluppata per il routing nelle reti wireless. Ci si concentrerà su questo software di routing per diverse ragioni. È un progetto open-source che supporta Mac OS X, Windows 98, 2000, XP, Linux, FreeBSD, OpenBSD e NetBSD. Olsrd è disponibile per access point che funzionano sotto Linux, come il Linksys WRT54GL, l'Asus WL-500G, l'AccessCube od i PocketPC che funzionano su Familiar Linux, e viene fornito come standard sui kit Metrix che funzionano su Metrix Pebble. Olsrd può gestire interfacce multiple ed è estensibile con appositi moduli aggiuntivi (plug-in). Supporta IPv6 ed è attivamente sviluppato ed impiegato da reti di comunità in tutto il mondo.

Si noti come esistano diverse versioni dell'Optimized Link State Routing, che è nato come un draft IETF scritto dall'istituto francese INRIA. La realizzazione distribuita da olsr.org ha visto la luce come tesi di master di Andrea Toennesen all'università di Unik. Basato sull'esperienza pratica della comunità delle reti libere, il demone di routing venne modificato. Olsrd attualmente si differenzia significativamente dalla proposta originale, perché include un dispositivo chiamato Link Quality Extension che rileva il tasso di pacchetti perduti tra i nodi e ricalcola le rotte sulla base di queste informazioni. Questa estensione rompe la compatibilità con i demoni di routing che seguono la proposta INRIA. Il demone olsrd disponibile da olsr.org può essere configurato per comportarsi in ossequio alla proposta IETF che manca di questa caratteristica, ma non v'è ragione per disabilitare la Link Quality Extension, a meno che non sia espressamente richiesta la piena aderenza con le altre realizzazioni.

La Teoria

Dopo che il demone olsrd è stato attivato per un tempo adeguato, un nodo apprende dell'esistenza di ogni altro nodo nella nuvola di maglie, e riconosce anche quale nodo possa essere impiegato per indirizzargli il traffico. Ogni nodo mantiene aggiornata una tabella di routing che descrive l'intera nuvola di maglie. Questo approccio al mesh routing viene chiamato routing proattivo. Al contrario, gli algoritmi di routing reattivo ricercano le rotte solo quando è necessario spedire dei dati verso un nodo specifico.

Ci sono vantaggi e svantaggi nel routing proattivo, e per realizzare il mesh routing ci sono molte altre impostazioni differenti, meritevoli di citazione. Il maggior vantaggio del routing proattivo risiede nel fatto che viene reso noto chi sia presente all'esterno e non si deve quindi aspettare che la rotta venga trovata. Tra gli svantaggi, ci sono il maggior sovraccarico di traffico ed il maggior carico sulla CPU. A Berlino, la comunità Freifunk impiega una nuvola di maglie dove olsrd deve gestire più di 100 interfacce. Il carico medio sulla CPU di un Linksys WRT54G a 200 MHz, causato da olsrd, è circa del 30%, nella rete di Berlino. C'è chiaramente un limite alla scalabilità di un protocollo proattivo, limite che dipende da quante interfacce siano coinvolte e da quanto frequentemente le tabelle di routing vengano aggiornate. Mantenere le rotte in una nuvola di maglie coon nodi statici richiede meno sforzo di quanto sia invece necessario in una maglia dove i nodi siano in costante movimento, poichè le tabelle di routing devono essere aggiornate con frequenza minore.

Il Meccanismo

Un nodo, su cui gira olsrd, diffonde periodicamente messaggi di 'hello' in modo che i propri vicini possano riconoscerne la presenza. Ogni nodo mantiene una statistica di quanti messaggi di 'hello' siano stati ricevuti o persi da parte di ognuno dei suoi vicini, riuscendo così a ricevare informazioni sulla topologia dei nodi vicini e sulla qualità dei collegamenti. Le informazioni ricavate sulla tipologia sono poi diffuse via radio come messaggi di controllo della topologia (messaggi TC) ed inoltrati dai vicini che olsrd ha preventivamente eletto come relay multipunto.

Nel routing proattivo Il concetto di relay multipunto è un'idea nuova che è sorta con la bozza di OLSR. Se ogni nodo ridiffondesse via radio le informazioni di topologia che ha ricevuto, potrebbe generarsi un sovraccarico eccessivo nella rete. Queste trasmissioni sono ridondanti, se un nodo ha diversi vicini. Un nodo olsrd, allora, decide quali vicini siano relay multipunto favorevoli per inoltrare i propri messaggi di controllo della tipologia. Si noti che i relay multipunto sono scelti con l'unico scopo di inoltrare i messaggi TC. Il contenuto utile (payload) viene soggetto a routing che può coinvolgere ogni nodo disponibile.

Altri due tipi di messaggio sono presenti in OLSR per passare informazioni: se un nodo presenta un gateway ad altre reti (messaggi HNA) o se ha più interfacce (messaggi MID). Non c'è molto da dire su quale compito svolgano questi messaggi, a parte il fatto che esistono. I messaggi HNA rendono olsrd molto utile quanto si tratti di connettere Internet con un dispositivo mobile. Quando un nodo di maglia si sposta intorno, potrà riconoscere dei gateway nelle altre reti, e sceglierà sempre il gateway che presenta la rotta migliore. Comunque, olsrd non è assolutamente a prova di errore. Se un nodo dichiara di essere un gateway verso Internet - funzione che non ricopre. in realtà, perché non lo è mai stato o perché si trova disconnesso al momento - gli altri nodi presteranno fede all'affermazione. Il finto-gateway diventa un buco nero. Per superare questo problema, è stato scritto un plugin (modulo aggiuntivo) per il gateway dinamico. Il plugin nel gateway verificherà automaticamente se questi sia connesso e se il collegamento stia ancora in piedi. In caso negativo, l'olsrd terminerà di inviare falsi messaggi HNA. È fortemente raccomandato di inserire ed impiegare questo plugin, piuttosto che dare manualmente l'abilitazione all'invio di messaggi HNA.

In Pratica

Olsrd realizza il routing basato su IP con un'applicazione nello spazio-utente; l'installazione è quindi piuttosto semplice. I pacchetti per l'installazione sono disponibili per OpenWRT, Accesscube, Mac OS X, Debian GNU/Linux e Windows. OLSR è un componente standard di Metrix Pebble. Se si deve compilarlo dai sorgenti, occorre leggere la documentazione che è diffusa all'interno del pacchetto del sorgente. Se ogni cosa è configurata ammodo, tutto ciò che rimane da fare è l'avvio del programma olsr.

Prima di tutto, occorre assicurarsi che ogni nodo abbia un indirizzo IP, assegnato staticamente ed unico, per ogni interfaccia usata per la maglia. Non è raccomandato ( è praticabile) impiegare DHCP in una rete a maglia basata su IP. Una richiesta DHCP non verrà soddisfatta da un server DHCP se il nodo che la inoltra richiede più di un salto per essere raggiunto, ed inserire dei relay DHCP su una maglia è pressochè impraticabile. Questo problema potrebbe essere risolto usando IPv6, poichè in tal modo sarebbe disponibile uno spazio-indirizzi enorme per generare un indirizzo IP a partire dall'indirizzo MAC di ogni scheda coinvolta (come suggerisce in "IPv6 Stateless Address Autoconfiguration in large mobile ad hoc networks" di K. Weniger e M. Zitterbart, 2002).

Potrebbe servire allo scopo anche una pagina wiki, dove ogni persona interessata potrebbe scegliere un indirizzo IPv4 unico per ognuna delle interfacce sulle quali il demone olsr verrebbe fatto girare. In sintesi, non c'è una soluzione facile per rendere automatico tale processo, se si ricorre ad IPv4.

L'indirizzo di broadcast, per convenzione generale, dovrebbe essere 255.255.255.255 su interfacce che si affacciano sulla rete a maglia. Non c'è nessun motivo, per inserire esplicitamente l'indirizzo di broadcast, poichè olsrd può essere configurato per sostituire gli indirizzi di broadcast con tale valore predefinito. Occorre solo essere sicuri che tali impostazioni siano uniformi in ogni parte. Olsrd può raggiungere tale scopo da solo. Quando un file predefinito di configurazione di olsrd è distribuito, questa caratteristica dovrebbe essere abilitata per evitare confusione del tipo "perché gli altri nodi non riescono a vedere la mia macchina?!?"

Ora configuriamo l'interfaccia wireless. Di seguito un comando, come esempio di come configurare una scheda WiFi, con il nome wlan0, usando Linux:

iwconfig wlan0 essid olsr.org mode ad-hoc channel 10 rts 250 frag 256

Occorre verificare che la parte wireless della scheda WiFi sia stata configurata in modo che abbia una connessione ad-hoc verso gli altri nodi della maglia direttamente raggiungibili (nodi entro il singolo salto). Occorre anche assicurarsi che l'interfaccia si aggreghi allo stesso canale wireless, che usi lo stesso nome di rete wireless ESSID (Extended Service Set IDentifier) e che sia caratterizzato dallo stesso Cell-ID come tutte le altre schede WiFi che compongono la maglia. Molte schede WiFi, od i loro rispettivi driver, non si comportano in maniera conforme a quanto previsto dagli standard 802.11 per il networking ad-ho, e così può fallire miseramente il tentativo di connettersi ad una cella. Le stesse schede possono non essere in grado di connettersi ad altri dispositivi sullo stesso tavolo, anche se questi sono impostati con il corretto canale e nome di rete wireless.Queste schede possono, piuttosto, confondere altre schede che si comportano invece conformemente allo standard, creando il proprio indicativo di cella (Cell-ID) sullo stesso canale con lo stesso nome di rete wireless. Le schede WiFi costruite dall'Intel e che sono distribuite con i notebook Centrino sono famose per comportarsi in tale maniera.

È possibile verificare tutto con il comando iwconfig, quando si usa Linux. Di seguito, l'output che si ottiene sulla mia macchina.

wlan0 IEEE 802.11b  ESSID:"olsr.org" 
      Mode:Ad-Hoc  Frequency:2.457 GHz  Cell: 02:00:81:1E:48:10 
      Bit Rate:2 Mb/s   Sensitivity=1/3 
      Retry min limit:8   RTS thr=250 B   Fragment thr=256 B 
      Encryption key:off 
      Power Management:off 
      Link Quality=1/70  Signal level=-92 dBm  Noise level=-100 dBm 
      Rx invalid nwid:0  Rx invalid crypt:28  Rx invalid frag:0 
      Tx excessive retries:98024 Invalid misc:117503 Missed beacon:0 

È importante impostare la soglia del 'Request To Send' (RTS) per una maglia. Ci saranno delle collisioni sul canale radio tra le trasmissioni dei nodi dello stesso canale radio, e l'RTS mitigherà tali effetti. RTS/CTS introduce un handshake prima di ogni pacchetto di trasmissione per sincerarsi che il canale sia chiaro. Si introduce del sovraccarico, ma si incrementano le prestazioni in caso di nodi nascosti - ed i nodi nascosti sono presenti per default sulla maglia! Questo parametro imposta la dimensione in Byte del più piccolo pacchetto per il quale il nodo spedisce l'RTS. La soglia RTS deve avere un valore minori della dimensione del pacchetto IP e il valore di 'soglia di frammentazione' - qui posto a 256 - altrimenti sarà disabilitato. Il TCP è molto sensibile alle collisioni, così è importante attivare l'RTS.

La frammentazione permette di spezzare un pacchetto IP in una serie di frammenti minori che vengono trasmessi sul medium. Tutto questo aggiunge sovraccarico, ma in un ambiente rumoroso ciò riduce il costo dell'errore e permette ai pacchetti di attraversare le scariche di rumore. Le reti a maglia sono molto rumorose perché i nodi impiegano lo stesso canale e, quindi, è probabile che le trasmissioni inteferiscano a vicenda. Questo parametro imposta la massima dimensione in byte che permetta la pacchetto di non essere spezzettato per poi essere recapitato a pezzi - un valore uguale alla massima dimensione IP disabilita il meccanismo, cos' dev'essere minore della dimensione del pacchetto IP. Impostare la soglia di frammentazione è raccomandato.

Una volta che sono stati assegnati un indirizzo IP valido ed una maschera di rete, una volta che l'interfaccia wireless sia attiva, il file di confifurazione di olsrd dev'essere alterato perché olsrd trovi ed impieghi le interfacce con le quali si intende farlo lavorare.

Per Mac OS-X e Windows è disponibile una simpatica GUI per configurare e controllare il demone disponibile. Sfortunatamente, questi tenta l'utente che manchi di competenze a commettere errori stupidi - quali annunciare la presenza di un buco nero. Su BSD e Linux il file di configurazione è:

Un semplice file di configurazione olsrd.conf

Non verrà di seguito presentato un file di configurazione completo. Ci saranno invece alcune impostazioni essenziali che devono essere controllate.

 UseHysteresis           no
 TcRedundancy            2
 MprCoverage             3
 LinkQualityLevel        2 
 LinkQualityWinSize      20

 LoadPlugin "olsrd_dyn_gw.so.0.3"
 {
     PlParam     "Interval"   "60"
     PlParam     "Ping"       "151.1.1.1"
     PlParam     "Ping"       "194.25.2.129"
 }

 Interface "ath0" "wlan0" {
     Ip4Broadcast 255.255.255.255
 }

Ci sono molte altre opzioni disponibili nel olsrd.conf, ma queste opzioni base dovrebbero permettervi di iniziare. Dopo che questi passi sono stati completati, olsrd può essere avviato con un semplice comando all'interno di un terminale:

 olsrd -d 2

Si raccomanda di lanciare il programma con l'opzione di debugging "-d 2", quando lo si usi su una workstation, specialmente se si tratta del primo avvio. Si può così osservare come si comporti olsrd e monitorare quale sia la qualità dei link con i vicini. Sui dispositivi embedded, invece, il livello di debug dovrebbe essere posto a zero (off), perché le operazioni di debugging caricano pesantemente la CPU.

I dati in uscita del debugging dovrebbero essere simili a questo:

--- 19:27:45.51 --------------------------------------------- DIJKSTRA

192.168.120.1:1.00 (one-hop)
192.168.120.3:1.00 (one-hop)

--- 19:27:45.51 ------------------------------------------------ LINKS

IP address       hyst   LQ     lost   total  NLQ    ETX
192.168.120.1    0.000  1.000  0      20     1.000  1.00
192.168.120.3    0.000  1.000  0      20     1.000  1.00

--- 19:27:45.51 -------------------------------------------- NEIGHBORS

IP address       LQ     NLQ    SYM   MPR   MPRS  will
192.168.120.1    1.000  1.000  YES   NO    YES   3
192.168.120.3    1.000  1.000  YES   NO    YES   6

--- 19:27:45.51 --------------------------------------------- TOPOLOGY

Source IP addr   Dest IP addr     LQ     ILQ    ETX
192.168.120.1    192.168.120.17   1.000  1.000  1.00
192.168.120.3    192.168.120.17   1.000  1.000  1.00

Impiego di OLSR su Ethernet e su interfacce multiple

Non è necessario disporre di un'interfaccia wireless per provare od impiegare olsrd - sebbene sia per queste interfacce che olsrd è stato progettato. Olsrd può essere benissimo impiegato su qualsiasi NIC (scheda di rete). Le interfacce WiFi non necessariamente devono operare in modo ad-hoc per formare una maglia quando i nodi dispongano di più di una interfaccia. Per dei collegamenti dedicati potrebbe essere un'interessante opzione mantenerli attivi in Infrastructure Mode. Molte schede WiFi posseggono driver che presentano problemi in Ad-hoc Mode, ma l'Infrastructure Mode funziona bene - perché tutti si aspettano che almeno questa prestazione sia garantita. Il modo ad-hoc non è così popolare, così la realizzazione di un modo ad-hoc è sempre stata trascurata da molti produttori. Con la crescente attenzione alle reti a maglia, la situazione dei driver sta ora migliorando.

Molte persone usano olsrd su interfacce wireless ed altre cablate, non hanno bisgono di tenere conto dell'architettura della rete. Si limitano a collegare antenne alle loro schede WiFi, collegare cavi alle loro schede Ethernet, abilitare olsrd ad essere lanciato su tutti i computer e su tutte le interfacce e quindi danno il via al tutto. Tutto ciò è piuttosto un abusare di un protocollo che era stato concepito per permettere il wireless networking su link con perdite, ma perché impedirlo?

Ci si aspetta che olsrd sia un sovra-protocollo. Chiaramente non è necessario inviare un messaggio di Hello su un'interfaccia ogni due secondi, ma funziona. Questo comportamento non dev'essere assunto come raccomandazione, è solo incredibile cosa facciano le persone di questo protocollo, ed hanno successo. Infatti è entusiasmante l'idea di mettere a disposizione un protocollo che risolva tutto per dei principianti che desiderino reti LAN di dimensioni medio-piccole.

Plugin

Diversi plugin sono disponibili per olsrd. Si veda sul sito olsr.org per una lista completa. Di seguito, una breve HOW-TO per il plugin che visualizza la topologia di una rete.

figure-3.8.png

Figura 3.8: Una topologia di rete OLSR generata automaticamente.

Spesso, per la comprensione di una rete a maglia, è molto utile riuscire ad esibirne la topologia di rete in modo grafico. Olsrd_dot_draw presenta come risultato la tipologia nel formato "dot file" sulla porta 2004 in TCP. Gli strumenti graphviz possono quindi essere impiegati per tracciarne i grafici.

Installare il plugin dot_draw

Si compilino i plugin olsr separatamente e li si installi. Per caricare il plugin, aggiungere la seguente riga al file /etc/olsrd.conf

 LoadPlugin "olsrd_dot_draw.so.0.3"
 {
       PlParam "accept" "192.168.0.5"
       PlParam "port" "2004"
 }

Il parametro "accept" specifica quale macchina sia abilitata a visualizzare le informazioni della topologia (al momento, solo una) e, di default, è impostato "localhost".

Far ripartire olsr e verificare se si ottenga output sulla porta TCP 2004

 telnet localhost 2004

Dopo un certo periodo, si dovrebbe ottenere del testo come risultato.

Si può allora salvare l'output delle descrizioni grafiche e lanciare i tool dot o neato dal pacchetto graphviz, al fine di ottenere le immagini.

Bruno Randolf ha scritto un breve script perl che richiede periodicamente le informazioni di topologia da olsrd e le visualizza impiegando gli strumenti di graphviz e di ImageMagick.

Per prima cosa, si installino sulla workstation i seguenti pacchetti:

Si scarichi lo script da: http://meshcube.org/nylon/utils/olsr-topology-view.pl

Ora è possibile lanciare lo script con il comando: ./olsr-topology-view.pl , e vedere così gli aggiornamenti della topologia in tempo quasi-reale.

Risoluzione dei malfunzionamenti

Fintantochè le schede WiFi riescono a 'vedersi' una con l'altra tramite collegamenti radio, la richiesta di un ping funzionerà, a prescindere dall'esecuzione di olsrd. Ciò succede perché le ampie netmask rendono effettivamente ogni nodo su un link-local, da accantonare qualsiasi problema di routing già con il primo hop. È la prima cosa che si dovrebbe controllare se il comportamento della rete non sia quello aspettato. Gran parte dei malditesta che vengono forniti dalle schede WiFi nella modalità Ad-Hoc sono causati dal fatto che i driver per il modo Ad-Hoc sono realizzati in modo approssimativo. Se non è possibile ottenere il ping diretto con i nodi in visibilità, si tratta probabilmente di un problema di scheda e driver, od, in alternativa, sono errati i parametri di impostazione della rete.

Se le macchine possono ottenere il ping una dall'altra, ma olsrd non riesce a ricavare le rotte, allora dovrebbero essere ricontrollati gli indirizzi IP, la netmask ed il broadcast.

È forse in azione un firewall? Verificare che non intercetti la porta UDP 698.

Buon divertimento!

Stima della Capacità

I collegamenti wireless possono assicurare agli utenti un throughput maggiore, rispetto alle tradizionali connessioni ad Internet, quali la VSAT, la linea telefonica o la DSL. Il Throughput è altrimento denominato capacità del canale, o semplicemente larghezza di banda (sebbene tale termine non abbia attinenza con la larghezza di banda radio). È importante comprendere che la velocità dichiarata di un dispositivo wireless (il data rate) indica la velocità alla quale questi riesce a comunicare simboli via radio, non l'effettivo throughput che potrà essere osservato in pratica. Come accennato in precedenza, un singolo collegamento 802.11g può raggiungere i 54Mbps via radio, ma assicurerà un throighput effettivo fino a 22Mbps; il resto è sovraccarico che le radio impiegano per coordinare il proprio segnale usando il protocollo 802.11g.

Si noti che il throughput è una misura di bit sul tempo. 22Mbps significa che, in un qualsiasi secondo, 22 megabit possono essere inviati da un capo del collegamento all'altro. Se l'utente tenta di spingervi più di 22 megabit, l'operazione richiederà un tempo maggiore di un secondo. Poichè non possono essere inviati immediatamente, i dati vengono inseriti in una coda, per poi essere trasmessi il più presto possibile. Questo accodamento di dati allunga i tempi necessari perché l'ultimo bit inserito in coda possa attraversare il collegamento. Il tempo che si rende necessario per l'attraversamento del collegamento è chiamato latenza, ed una latenza più pesante è chiamata ritardo. Il collegamento potrà anche trasferire tutto il traffico accodato, ma chi lo riceve potrà lamentare un incremento del ritardo.

Quale troughput sarà richiesto per i vostri utenti? Dipende da quanti essi siano, e da come intendano impiegare il collegamento wireless. Applicazioni diverse di Internet richiedono valori diversi di throughput.

Applicazione

BW / Utente

Note

Messaggi di Testo / IM

< 1 Kbps

Poichè il traffico è rado ed asincrono, IM accetterà alta latenza.

Posta Elettronica

da 1 a 100 Kbps

Come per IM, la posta elettronica è asincrona ed intermittente, quindi ammetterà latenza. Allegati pesanti, virus e spam incrementano sensibilmente l'impiego di banda. Si noti come i servizi di posta elettronica via web (come Yahoo ed Hotmail) debbano essere considerati navigazione sul web, piuttosto che posta elettronica.

Navigazione web

50 - 100+ Kbps

I Web browser impiegano la rete solo quando richiedono dati. La comunicazione è asincrona, quindi un sensibile ritardo può essere accettato. Quando i browser richiedono più dati (immagini di grandi dimensioni, download pesanti, etc.), l'impiego di banda s'innalzerà in maniera significativa..

Streaming audio

96 - 160 Kbps

Ogni utente di un servizio di streaming audio service impiegherà una relativamente ampia larghezza di banda in modo costante, fintantochè trasferisce audio. Il servizio può accettare una latenza occasionale, impiegando dei buffer ampi presso i partecipanti. Periodi più lunghi di ritardo causeranno invece degli "slittamenti" dell'audio, se non addirittura la caduta della sessione.

Voice over IP (VoIP)

24 - 100+ Kbps

Come nello streaming audio, il VoIP richiede una quantità costante di banda per ciascuno degli utente per la dirata della chiamata, ma tale quantità di banda è pressochè equivalente nelle due direzioni del collegamento. La latenza su una connessione VoIP è avvertita immediatamente e disturba l'impiego. Ritardi superiori a pochi millisecondi sono inaccettabili per il VoIP..

Streaming video

64 - 200+ Kbps

Come per lo streming audio, l'occasionale latenza è evitata ricorrendo all'uso di buffer sugli utenti. Per funzionare con buona qualità, lo streaming video richiede alto throughput e bassa latenza.

Applicazioni peer-to-peer per il filesharing (BitTorrent, KaZaA, Gnutella, eDonkey, etc.)

0 - infiniti Mbps

Se pure accettano valori arbitrari di latenza, le applicazioni peer-to-peer tendono a saturare tutto il throughput disponibile trasmettendo dati a quanti più utenti possibile, quanto più in fretta possibile. L'impiego di queste applicazioni sarà causa di ritardo e problemi di throughput per tutti gli altri utenti della rete, a meno che non si adottino attente allocazioni di banda.

Per valutare il throughput necessario per la rete, si moltiplichi il numero di utenti previsti per l'applicazione che verrà presumibilmente richiesta. Per esempio, 50 utenti interessati prevalentemente alla navigazione web consumeranno presumibilmente 2.5 Mbps di throughput, o qualcosa di più nei momenti di punta, ed accetteranno una discreta latenza. Al contrario, 50 utenti VoIP che lavorino nello stesso momento richiederanno almeno 5Mbps di throughput in entrambe le direzioni con assolutamente nessuna latenza. Dal momento che gli apparati wireless 802.11g sono half-duplex (possono, cioè, alternativamente trasmettere o ricevere, ma non possono compiere le due azioni nello stesso momento), occorrerà di conseguenza raddoppiare il throughput richiesto, per un totale di 10Mbps. I collegamenti wireless dovranno garantire tale capacità ogni secondo, o la conversazione soffrirà di ritardi.

Poichè sarà improbabile che tutti gli utilizzatori richiedano la connessione precisamente nello stesso momento, si ricorre comunemente alla pratica detta della sovriscrizione (permettendo, cioè, più utenti di quanto la banda massima possa sostenere). Una sovriscrizione di un fattore da 2 a 5 è piuttosto comune. Con tutta probabilità, la sovriscrizione verrà impiegata nella fase di costruzione dell'infrastruttura di rete. Attraverso l'attenta osservazione del throughput sulla rete, sarà poi possibile pianificare quando incrementare vari segmenti della rete, e quante risorse supplementari siano necessarie.

Per quanta capacità verrà fornita, gli utenti troveranno alla fine delle applicazioni che la satureranno. Come si vedrà alla fine di questo capitolo, impiegare tecniche di bandwith shaping (allocazione di banda) può contribuire a ridurre i problemi di latenza. Ricorrendo al bandwith shaping, al web caching ed ad altre tecniche, si possono ridurre significatamente i valori di latenza, migliorando il throughput complessivo della rete.

Per avere un'idea del ritardo avvertito su connessioni molto lente, l'ICTP ha realizzato un simulatore di larghezza di banda. Questo simulatore provvederà a scaricare una pagina web, impiegando la massima velocità e la velocità ridotta secondo le impostazioni che si sceglieranno. Questa dimostrazione offre un'immediata comprensione di come l'utilità di Internet, come strumento di comunicazione, venga ridotta da basso throughput e da alta latenza. Il simulatore è disponibile sotto http://wireless.ictp.trieste.it/simulator/

Pianificazione del Collegamento

Un sistema di comunicazione base consiste di due radio, ciascuna con la propria antenna, che sono separate dal percorso che dev'essere coperto. Per poter instaurare una comunicazione, le due radio richiedono un segnale minimo che raggiunga le antenne e che venga quindi presentato ai loro ingressi. La determinazione della fattibilità del collegamento è un processo chiamato calcolo del link budget. Se i segnali possano o meno essere scambiati tra le radio dipende dalla qualità dell'attrezzatura usata e dal degrado del segnale dovuto dalla distanza, degrado chimato path loss (perdita di percorso).

La potenza disponibile in un sistema 802.11 può essere caratterizzata dai due seguenti fattori:

  • Potenza di Trasmissione. È espressa in milliwatt o in dBm. La potenza di trasmissione varia dai 30mW ai 200mW o più. La potenza di trasmissione è spesso dipendente dalla velocità della trasmissione stessa. La potenza di trasmissione di un particolare dispositivo dovrebbe essere esplicitata dalla documentazione fornita dal produttore, ma può essere difficile da trovare. Può allora essere d'aiuto la consultazione di database disponibili online, quali quello offerto da Seattle Wireless (http://www.seattlewireless.net/HardwareComparison).

  • Guadagno d'Antenna. Le antenne sono dispositivi passivi che amplificano il segnale ricevuto grazie alla loro forma fisica. Le antenne presentano la stessa caratteristica in trasmissione ed in ricezione. Un'antenna da 12 dB è tale senza dover specificare se sia in modalità di ricezione o di trasmissione. Le antenne paraboliche presentano un guadagno di 19-24 dB, le antenne omnidirezionali di 5-12 dB, quelle settoriali di 12-15 dB.

  • Livello minimo di Segnale ricevuto o, semplicemente, la sensibilità del ricevitore. Il minimo RSL (Received Signal Level, livello di segnale ricevuto) è sempre espresso in debibel negativi (- dBm) ed è la minima potenza di segnale che la radio riesce a distinguere. Il minimo RSL dipende dalla velocità, e come regola generale la velocità trasmissiva più bassa (1 Mbps) garantisce la sensibilità massima. Tale minimo è, tipicamente, compreso tra i -75 e -95 dBm. Come per la potenza di trasmissione, il dettaglio del RSL dovrebbe essere specificato dal produttore dell'apparato.

  • Perdite di Cavo. Parte dell'energia del segnale è persa nei cavi, nei connettori ed in altri dispositivi, presenti nel tratto tra l'antenna e la radio. La perdita dipende dal tipo di cavo usato e dalla sua lunghezza. La perdita di segnale per cavi coassiali corti, che includano i connettori, è relativamente bassa, compresa tra i valori di 2-3 dB. È opportuna mantenere i cavi tra antenna e radio i più corti possibili.

Quando si calcola la perdita di percorso, diversi fattori devono essere considerati. Occorre mettere in conto la perdita nello spazio libero, la attenuazione e lo scattering. La potenza del segnale si riduce a causa della diffusione geometrica del fronte d'onda, comunemente conosciuta come perdita nello spazio libero. Trascurando il resto, più lontano sono le due radio, minore sarà il segnale ricevuto, a causa delle perdite in spazio libero. Tutto ciò è indipendente dall'ambiente circostante, ma è legato alla sola distanza. Questa perdita si genera perché l'energia del segnale irradiato si espande secondo una funzione della distanza dal trasmettitore.

Impiegando i decibel per esprimere la perdita, ed adottando i 2.45 GHz come frequenza di ricetrasmissione, l'equazione per la perdita in spazio libero diventa:

 Lfsl = 40 + 20*log(r)

dove Lfsl (attenuazione in spazio libero) è espressa in dB ed r è la distanza tra il trasmettitore ed il ricevitore, espressa in metri.

Il secondo contributo alla perdita sul percorso è dato dall'attenuazione, ovvero dall'assorbimento di parte di potenza del segnale nell'attraversamento di ostacoli quali alberi, mura, finestre e pavimenti di edifici. L'attenuazione può variare in modo pesante, dipendendo dalla struttura degli oggetti che il segnale attraversa, ed è di difficile quantificarla. Il modo più semplice per esprimere questo contributo alla perdita totale è quello di aggiungere una "perdita ammissibile" alla perdita in spazio libero. Per esempio, l'esperienza indica che gli alberi aggiungono un 10-20 dB di perdita per albero presente sul percorso, mentre i muri contribuiscono per 10-15 dB, in funzione della costruzione.

Sul percorso del collegamento, l'energia RF (Radio-Frequenza) lascia l'antenna trasmittente e si espande. Parte di questa energia raggiunge direttamente l'antenna ricevente, mentre altra vi arriva dopo essere rimbalzata sul terreno. Questo segnale riflesso, avendo percorso un tragitto più lungo di quello diretto, arriva all'antenna ricevente in ritardo, interferendo con il segnale principale. Questo effetto è chiamato multipath, fading o dispersione di segnale. In alcuni casi i segnali riflessi si sommano assieme e non causano problemi. Quando si sommano fuori fase, il segnale ricevuto è trascurabile. Ciò viene denominato nulling. Esiste una semplice tecnica per trattare il multipath, chiamata diversità d'antenna (antenna diversity): consiste nel dotare la radio di una seconda antenna. Il multipath è infatti un fenomeno fortemente legato al percorso. Se due segnali si annullano in fase in un punto, non si sommeranno distruttivamente in un secondo punto, vicino al primo. Se sono presenti due antenne, almeno una di quete dovrebbe essere in grado di ricevere un segnale utile, anche se l'altra sta ricevendo un segnale distorto. Nei dispositivi commerciali, viene impiegato la diversità d'antenna che ne attiva l'una o l'altra. Il segnale è così ricevuto solo da un'antenna per volta. Quanto trasmette, la radio usa l'antenna che è stata impiegata per ultima nella ricezione. La distorsione causata dal multipath riduce la capacità del ricevitore di ricostruire il segnale in una modo simile alla perdita di segnale. Un modo semplice per inserire gli effetti dello scattering nel calcolo delle perdite di percorso è di cambiare l'esponente del fattore distanza nella formula della perdita in spazio libero. L'esponente tende ad incrementare con il percorso in un ambiente con pesante scattering. Un 3 come esponente può essere usato in un ambiente esterno con alberi, mentre un 4 come esponente è impiegabile per un ambiente interno.

Quando si considerano assieme le perdite di spazio libero, l'attenuazione e lo scattering, la perdita di percorso è:

 L(dB) = 40 + 10*n*log(r) + L(allowed)

Per una valutazione speditiva della fattibilità del collegamento, ci si può limitare a stimare la sola perdita in spazio libero. L'ambiente può apportare ulteriori perdite di segnale, e dovrebbe essere considerato per una valutazione esatta del collegamento. L'ambiente è in effetti un elemento importante, che che non dovrebbe mai essere trascurato.

Per valutare se un collegamento sia possibile, si dovrebbero conoscere le caratteristiche del materiale che viene usato e si dovrebbe stimare la perdita di percorso. Si noti che, nel condurre tale calcolo, si debba solo aggiungere la potenza di trasmissione da un capo del collegamento. Se si impiegano radio differenti nei due estremi del collegamento, occorre calcolare due vole la perdita sul percorso, una per ogni direzione, impiegando la corretta potenza di trasmissione per ognuno dei due calcoli. Aggiungendo tutti i guadagni e sottraendo tutte le perdite porta a:

   Potenza di Trasmissione della Radio 1
 + Guadagno d'Antenna della Radio 1
 - Perdite di Cavo della Radio 1
 + Guadagno d'Antenna della Radio 2
 - Perdite di Cavo della Radio 2
------------------------
     = Guadagno Totale

Sottraendo le perdite di percorso al guadagno totale:

               Guadagno Totale
             - Perdite di Percorso
            --------------
 = Livello di segnale ad un capo del collegamento (al ricevitore della Radio 2)

Se il livello di segnale che si ottiene è maggiore del minimo livello di segnale ricevuto, allora il collegamento è fattibile! Il segnale ricevuto è sufficientemente potente per le radio da poter essere usato. Si ricordi che il minimo RSL è sempre espresso in decibel negativi, quindi -56dBm è migliore di -70dBm. Su un dato percorso, la variazione nelle perdite di percorso nel tempo può essere rimarchevole, quindi un certo margine di sicurezza (divverenza tra il livello di segnale ed il minimo livello di segnale ricevuto) dovrebbe essere considerato. Questo margine è la quantità di segnale che, superando la sensibilità della radio, dev'essere ricevuta per garantire un collegamento stabile e di buona qualità anche sotto cattive condizioni meteorologiche o durante altri disturbi atmosferici. Un margine d'errore di 10-15 dB può andar bene. Per garantire spazio all'attenuazione ed al multipath nel segnale ricevuto, un margine di 20dB dovrebbe essere sufficiente.

Una volta che si sia calcolato il link budget verso una direzione, occorre ripetere il calcolo nella direzione opporta. Si sostituisca la potenza di trasmissione della seconda radio, e si verifichino i risultati verso il minimo livello di segnale ricevuto della prima radio.

Come esempio, si intenda stimare la fattibilità di un collegamento di 5km, con un access point ed una radio come client. L'access point è connesso ad un'antenna omnidirezionale che ha un guadagno di 10 dBi, mentre il client è connesso ad un'antenna settoriale con guadagno 14dBi. La potenza di trasmissione dell'access point è di 100mW (ovvero, 20dBm), mentre la sua sensibilità è di -89dBm. Per il client, la potenza di trasmissione è di 30mW (o 15dBm) e la sua sensibilità è di -82 dBm. I cavi di connessione tra antenne e radio sono brevi, con una perdita di 2dB a ciascun lato del collegamento radio.

Sommando tra loro tutti i guadagni e sottraendo tutte le perdite nel collegamento tra AP e client, si ottiene:

 + 10 dBi (Guadagno d'Antenna della Radio 1)
 -  2 dB  (Perdita nel Cavo d'Antenna della Radio 1)
 + 14 dBi (Guadagno d'Antenna della Radio 2)
 -  2 dB  (Perdita nel Cavo d'Antenna della Radio 2)
---------------------------------
20 dB = Guadagno Totale

Trasmettendo quindi una potenza di 20dBm sull'AP, sul client radio - a distanza nulla dall'AP - si riceverebbero un segnale di potenza:

 + 20dBm
 + 20dB 
---------------------------------- 
40dBm = Potenza Segnale Ricevuto a Distanza Nulla (Prx0)

Considerando come il client radio non sia a distanza nulla dall'AP, occorrerà inserire la Perdita di Percorso che, su un collegamento di 5km dove si considera il solo spazio libero, sarà:

 Perdita di Percorso(dB) = 40 + 20log(5000) = 113 dB

Sottraendo la Perdita di Percorso dalla Potenza del Segnale Ricevuto a Distanza Nulla si ottiene:

 40 dBm - 113 dB = -73 dBm

Poichè -73dBm è una potenza magggiore della sensibilità della radio client (-82dBm), il livello di segnale è sufficiente alla radio client per raccogliere la trasmissione dell'access point. Rimangono 9dB di margine (-73dBm - -82dBm) che consentiranno un funzionamento dignitoso quando sia bel tempo, ma che potrebbero rivelarsi insufficienti in caso di avverse condi-meteo.

Si calcoli ora il collegamento nella direzione che parte dal client e prosegue verso l'access point:

   15 dBm (Potenza di Trasmissione della Radio 2)
 + 14 dB  (Guadagno d'Antenna della Radio 2)
 -  2 dB  (Perdita nel Cavo d'Antenna della Radio 2)
 + 10 dB  (Guadagno d'Antenna della Radio 1)
 -  2 dB  (Perdita nel Cavo della Radio 1)
---------------------------------
      35 dBm = Potenza del Segnale Ricevuto a Distanza Nulla (Prx0)

Naturalmente, la Perdita di Percorso è la stessa sul viaggio di ritorno. Il segnale ricevuto sull'access point diventa quindi: Obviously, the path loss is the same on the return trip. So our received signal level on the access point side is:

 35 dBm - 113 dB = -78 dBm Potenza del Segnale Ricevuto presso l'AP

Poichè la sensibilità dell'AP è -89dBm, 11dB sono garantiti come margine (-78dBm - -89dBm). Nel complesso, questo collegamento dovrebbe funzionare, ma si potrebbe puntare ad aumentare il margine di sicurezza del guadagno. Usando un'antenna a parabola (dish antenna) a 24dB sul lato client, piuttosto che l'antenna settoriale a 14dB, si otterrebbe un incremento del guadagno di 10dB in entrambe le direzioni del collegamento (si ricordi, infatti, come il guadagno d'antenna sia lo stesso sia in ricezione, che in trasmissione). Un'opzione più costosa potrebbe essere quella di impiegare radio con maggiore potenza ad entrambi i lati del collegamento, ma si osservi come l'aggiunta di un amplificatore, o l'impiego di una scheda radio di maggior potenza, ad un solo lato del collegmamento non ne migliori la qualità complessiva.

Strumenti disponibili online possono essere impiegati per calcolare il link budget. Per esempio, il Green Bay Professional Packet Radio's Wireless Network Link Analysis (http://my.athenet.net/~multiplx/cgi-bin/wireless.main.cgi) è uno strumento eccellente. La Super Edition genera un file PDF che contiene la zona di Fresnel ed i grafici dei percorsi radio. Gli script di calcolo possono essere scaricati dal sito web ed essere installati sul proprio computer. Si approfondirà l'argomento di un eccellente strumento online nella prossima sezione, Software per la Pianificazione del Collegamento).

Anche il sito web Terabeam dispone di un eccellente calcolatore, disponibile online (http://www.terabeam.com/support/calculations/index.php).

Per calcolare il link budget, si approssimi semplicemente la distanza, quindi si ricorra alla tavola seguente:

Perdita in Spazio Libero a 2.4GHz

Distanza (m)

100

500

1,000

3,000

5,000

10,000

Perdita (dB)

80

94

100

110

113

120

Guadagno d'Antenna Totale:

Guadagno d'Antenna Radio 1 (dB)

+ Guadagno d'Antenna Radio 2 (dB)

= Guadagno Totale d'Antenna

_

_

_

Perdite:

Perdita del Cavo d'Antenna sulla Radio 1 (dB)

Perdita del Cavo d'Antenna sulla Radio 2 (dB)

Perdita in Spazio Libero (dB)

= Perdita Totale (dB)

_

_

_

_

Potenza TX Radio 1 (dBm)

+ Guadagno Totale d'Antenna Antenna (dB)

- Perdita Totale (dB)

= Potenza del Segnale Ricevuto (dBm)

> Sensibilità della Radio 2(dBm)

_

_

_

_

_

Potenza TX Radio 2 (dBm)

+ Guadagno Totale d'Antenna Antenna (dB)

- Perdita Totale (dB)

= Potenza del Segnale Ricevuto (dBm)

> Sensibilità della Radio 1(dBm)

_

_

_

_

_

Se il segnale ricevuto è maggiore della sensibilità in entrambe le direzioni del collegamento, il collegamento è fattibile.

Software per la Pianificazione del Collegamento

Se il calcolo a mano del link budget è impegnativo, ci sono diversi strumenti a disposizione che possono contribuire ad automatizzare il processo. Oltre a calcolare la Perdita in Spazio Libero, questi strumenti tengono anche conto di diversi altri rilevanti fattori (come assorbimento per gli alberi, effetti del terreno, clima, ed addirittura stime di perdita di percorso in tratte urbane). In questa sezione, si discuterà di due strumenti liberi che sono utili per pianificare collegamenti wireless: le utility per la progettazione interattiva della rete online Green Bay Professional Packet Radio e Radop,pboòe-

CGI per il Progetto interattivo

Il Green Bay Professional Packet Radio group (GBPRR) ha realizzato diversi strumenti decisamente utili per pianificare i collegamenti, ponendoli poi gratuitamente a disposizione online. Si possono ricercare sotto http://www.qsl.net/n9zia/wireless/page09.html . Poichè sono su Internet, questi strumenti richiederanno per funzionare il semplice impiego di un navigatore che disponga di accesso ad Internet.

Si esaminerà ora il primo strumento di lavoro, il Wireless Network Link Analysis. È reperibile online presso: http://my.athenet.net/~multiplx/cgi-bin/wireless.main.cgi .

Per iniziare, si inserisca il canale che dev'essere impiegato nel collegamento. Il canale può essere descritto in MHz o GHz. Se la frequenza non è nota, si consulti la tabella in Appendice B. Si osservi come la tabella riporti la frequenza centrale di ogni canale, mentre lo strumento richiede la massima frequenza trasmessa. Per ricavare la massima frequenza trasmessa per un canale, basta addizionare 11MHz alla frequenza centrale.

Quindi, si proceda con i dettagli del lato trasmettitore del collegamento, comprendendo il tipo di linea trasmissiva, il guadagno d'antenna, ed altri particolari. Si cerchi di inserire quanti più dati sia possibile, provvedendo eventualmente a stimarli. Si possono inserire anche l'altezza dell'antenna e l'elevazione del sito: questi dati verranno usati per determinare l'angolo di elevazione dell'antenna. Per ricavare la zona libera di Fresnel, sarà necessario usare il calcolatore della zona di Fresnel del GBPRR.

La sezione successiva è molto simile, e si riferisce all'altro capo del collegamento. Si inseriscano tutti i dati nei campi relativi.

Per finire, l'ultima sezione descrive il clima, il terreno e la distanza del collegamento. Si inseriscano più dati possibili, provvedendo eventualmente a stimarli. La distanza di collegamento può essere calcolata specificando la latitudine e la longitudine di entrami i siti, oppure può essere inserita direttamente a mano.

Ora, si clicchi sul bottone Submit per ottenere un resoconto dettagliato sul link proposto. Questo resoconto include tutti i dati inseriti, così come la perdita di percorso previsto, l'incidenza di errori (error rate) ed il periodo di operatività (uptime). Questi numeri sono tutti completamente teorici, ma possono offrire un'idea della fattibilità del link. Giocando con i valori inseriti in ingresso, si può provare un "cosa-succede-se", per vedere come la variazione dei parametri influirà sulla connessione.

Oltre allo strumento base per l'analisi del collegamento, GBPRR fornisce "un'edizione speciale" che fornirà anche un resoconto in PDF, come pure un numero di altri strumenti molto utili (compreso il calcolatore della zona di Fresnel, il calcolatore delle Distanze & Angoli di Brandeggio, il calcolatore per la conversione in Decibel, giusto per citarne qualcuno). Viene anche fornito il codice sorgente di gran parte di questi strumenti.

RadioMobile

Radio Mobile è uno strumento di progetto e simulazione di sistemi wireless. Stima le prestazioni di un collegamento radio impiegando le informazioni disponibili sul materiale e su una mappa digitale dell'area. È un programma sotto licenza "public domain" che gira sotto Windows, o sotto Linux con l'impiego delle API di Wine.

Radio Mobile usa un modello digitale del rilievo del terreno per il calcolo della copertura, indicando la potenza del segnale ricevuto su vari punti lungo il percorso. Costruisce automaticamente un profilo tra due punti sulla mappa digitale, mostrando l'area di copertura e la prima zona di Fresnel. Nella simulazione, controlla la linea di vista e calcola la Perdita di Percorso, includendo le perdite dovute ad ostacoli. È possibile creare reti di tipologie differenti, comprese le reti master/slave, le punto-punto e le punto-multipunto.

figure-3.9.png

Il software calcola l'area di copertura dalla stazione base in un sistema punto-multipunto. Funziona per sistemi che siano caratterizzati da una frequenza di lavoro dai 20 kHz ai 200 GHz. Le Mappe digitali di Rilievo (DEM, Digital Elevation Map) sono liberamente disponibili da differenti fonti, e sono disponibili per gran parte del mondo. Le DEM non mostrano la linea di costa od altri punti cospicui, rapidamente riconoscibili, ma possono facilmente essere combinate con altri tipi di informazione (quali foto aere, o carte topografiche) su strati differenti, per ottenere una rappresentazione più utile ed immediatamente riconoscibile. Si possono digitalizzare le proprie mappe e combinarle con le DEM. Le mappe digitali di rilievo possono essere combinate con le mappe ottenute dallo scanner, dalle foto satellitari e con i servizi cartografici su Internet (come Mapquest) per costruire dei diagrammi di predizione.

Radio Mobile può essere scaricato da qui: http://www.cplus.org/rmw/download.html

La pagina principale del sito Radio Mobile, con esempi e tutorial, è disponibile sotto: http://www.cplus.org/rmw/english1.html

RadioMobile e Linux

Radio Mobile gira anche impiegando Wine con Ubuntu Linux. Mentre l'applicazione funziona, alcuni bottoni possono apparire fuori della propria posizione e possono quindi essere difficili da leggere.

A noi è riuscito far funzionare Radio Mobile con Linux impiegando il seguente ambiente:

  • IBM Thinkpad x31
  • Ubuntu Breezy (v5.10), http://www.ubuntu.com/

  • Wine version 20050725, dallUbuntu Universe repository

Informazioni dettagliate su come installare Radio Mobile su Wine sono disponibili sotto http://www.cplus.org/rmw/download.html. Sono da seguire tutti i passaggi, ad eccezione del passo 1 (poichè risulta difficile estrarre una libreria DLL dal file VBRUN60SP6.EXE sotto Linux). Si potrà ricorrere od alla copia del file MSVBVM60.DLL da una macchina Windows, che già abbia installato l'ambiente run-time di Visual Basic 6, od allo scarico del file da Internet, dopo aver cercato MSVBVM60.DLL con Google.

Si riprenda quindi dal passo 2 dell'URL sopra riportata, assicurandosi di scompattare il file scaricato nella stessa directory nella quale è stato posto il file DLL scaricato. Si osservi come non occorra poi preoccuparsi delle prescrizioni che seguono il passo 4; sono fasi successive che sono necessarie solo per utenti Windows.

Alla fine, si può lanciare Wine da un terminale con il comando:

 # wine RMWDLX.exe

A questo punto, si dovrebbe vedere Radio Mobile che funziona nella sessione X Windows.

Eliminare il Rumore

Le bande U-NII e ISM - non soggette a licenza - rappresentano un segmento molto limitato dello spettro elettromagnetico conosciuto. Dato che tale regione può essere impiegata senza corrispondere pagamenti di licenza, molti dispositivi di consumo la impiegano per una vasta serie di applicazioni. Telefoni cordless, ripetitori video, bluetooth, baby monitor ed anche forni a microonde conmpetono con le reti wireless per l'impiego della limitatissima banda su 2.4 GHz. Questi segnali, così come quelli di altre reti wireless, possono comportare problemi significativi per i collegamenti wireless a lunga distanza. Di seguito sono descritti alcune misure che si possono intraprendere per ridurre la ricezione di segnali indesiderati.

  • Aumentare il guadagno d'antenna su entrambi gli estremi del collegamento punto-a-punto'. Le antenne non solo aumentano il guadagno in un collegamento, ma aumentando la loro direttività si tende ad abbattere il rumore che proviene dalle aree prossime al collegamento. Due antenne a parabola ad alto guadagno, puntate una verso l'altra, ridurranno fortemente il rumore dalle direzioni che sono fuori dal percorso del collegamento. Usando invece antenne omnidirezionali, si raccoglierà il rumore da tutte le direzioni.

  • Non usare un amplificatore Come si vedrà nel capitolo quattro, gli amplificatori possono peggiorare i problemi di interferenza, amplificando indiscriminatamente tutti i segnali ricevuti, compreso le sorgenti di rumore. Gli amplificatori causano inoltre problemi di interferenza per altri utenti della stessa banda che siano nelle vicinanze.

  • Usare antenne settoriali anzichè un'antenna omnidirezionale Con l'impiego di più antenne settoriali, si può ridurre il rumore complessivo ricevuto ad un punto di distribuzione. Impiegando canali scalati su ciascuna antenna settoriale, si può inoltre aumentare la banda disponibile per i vostri utenti.

figure-3.10-ita.png

Figure 3.10: Confronto tra una singola antenna omnidirezionale e più antenne settoriali

  • Usare il miglior canale disponibile Si ricordi che i canali dell'802.11b/g sono ampi 22MHz, ma sono scalati tra loro di appena 5 MHz. Si conduca una site survey (verifica d'ambiente), come spiegato nel capitolo otto, e si selezioni un canale che sia il più lontano possibile dalle sorgenti di rumore presenti. Si ricordi che il panorama wireless può cambiare in ogni momento, quando le persone inseriscono nuovi dispositivi (telefoni cordless, altre reti, etc.). Se il vostro collegamento registra difficoltà nell'inviare i pacchetti, potrebbe esser necessario condurre un'altra site survey e scegliere un canale differente.

  • Impiegare salti più ridotti e dei ripetitori, piuttosto che un unico balzo a lunga distanza. Si mantengano i collegamenti punto-a-punto i più brevi possibile. Se può essere possibile creare un collegamento di 12km che tagli da parte a parte la città, si creeranno comunque ogni genere di interferenze. Se è possibile spezzare il collegamento unico in due o tre salti più ridotti, il collegamento complessivo risulterà probabilmente più stabile. Naturalmente, ciò non sarà possibile sui collegamenti rurali a lunga distanza, dove l'alimentazione e le infrastrutture non sono disponibili, ma d'altro canto anche i problemi di interferenza in tali condizioni diventano meno probabili.

  • Se possibile, si usino le bande di 5.8GHz, 900MHz od altre bande non soggette a licenza. Anche se questa è solo una soluzione a breve termine, ci sono attualmente molti più dispositivi di consumo che impiegano la banda dei 2.4GHz. Impiegando l'802.11a od un dispositivo che porti la banda da 2.4GHz a 5.8GHz si potranno evitare i problemi di congestione. Se si riesce a trovarli, alcuni vecchi apparati wireless (802.11) impiegano la banda libera a 900MHz (sfortunatamente, a bit rate decisamente minori). Altre tecnologie, come Ronja (http://ronja.twibright.com/), impiegano tecnologia ottica per collegamenti a corta distanza, senza interferenze.

  • Se tutto il resto fallisce, adottare lo spettro soggetto a licenza. Ci sono posti dove tutto lo spettro libero è impiegato completamente. In questi casi, può essere ragionevole affrontare la spesa addizionale per apparati proprietari che impieghino una banda meno congestionata. Per collegamenti punto-a-punto a lunga portata, che richiedano larga banda e la massima disponibilità, questa è senz'altro un'ozione da valutare. Naturalmente, queste caratteristiche sono ottenibili a prezzi decisamente superiori rispetto all'impiego di apparati per lo spettro libero.

Per riconoscere le sorgenti di rumore, sono necessari degli strumenti che esibiscano cosa stia succedendo nell'etere a 2.4GHz. Vedremo di seguito alcuni esempi di tali strumenti nel capitolo sei.

Ripetitori

L'elemento più critico nell'impostare collegamenti di rete sulle lunghe distanze è la linea di vista (spesso abbreviata in LOS, Line Of Sight). I sistemi a microonde terrestri non possono tollerare grandi colline, alberi, od altri ostacoli sul percorso di un collegamento a lunga distanza. Occorre disporre di una chiara percezione della disposizione del terreno tra i due punti per poter determinare se il collegamento sia possibile.

Ma anche se ci fosse una montagna tra due punti, si ricordi come gli ostacoli possano a volte essere trasformati in vantaggi. Le montagne possono bloccare il segnale, ma nell'ipotesi che l'alimentazione possa essere fornita, possono anche rappresentare ottimi luoghi per i ripetitori.

I ripetitori sono nodi che vengono configurati per ritrasmettere un traffico che non è destinato a loro stessi. In una rete a maglia, ogni nodo è un ripetitore. In una rete con infrastruttura tradizionale, i nodi devono essere configurati per inoltrare il traffico verso altri nodi.

Un ripetitore può impiegare uno o più dispositivi wireless. Quando si impieghi un solo elemento radio (è il caso detto ripetitore a braccio unico, one-arm repeater), l'efficienza totale è sotto la metà della banda disponibile, poichè la radio inviare o ricevere dati in modo alternativo, ma non in contemporanea. Tali dispositivi sono più economici, semplici, ed hanno minori pretese per l'alimentazione. Un ripetitore con due (o più) elementi radio può impiegarli al massimo delle loro capacità, posto che siano configurati su canali che non si sovrappongano. Naturalmente, i ripetitori possono disporre di una connessione Ethernet per garantire connettività locare su cavo.

I ripetitori possono essere acquistati come soluzione hardware completa, od essere altrimenti facilmente assemblati aggregando due o più nodi wireless con un cavo Ethernet. Quando si valuti di impiegare un ripetitore basato su tecnologia 802.11, si tenga presente che i nodi devono essere configurati in modalità master, managed od ad-hoc. Tipicamente, entrambi gli elementi radio in un ripetitore sono configurati in modalità master, per consentire a più utenti di connettersi ad entrambi i lati del ripetitore. Ma a seconda della configurazione della rete, uno o più dispositivi possono ricorrere alla modalità ad-hoc od anche a quella client.

Tipicamente, i ripetitori sono usati per superare ostacoli sul percorso di un collegamento a lunga distanza. Per esempio, ci possono essere edifici sul percorso, ma questi edifici sono abitati. ACcordi possono spesso essere composti con i proprietari dell'edificio per fornire loro banda come contropartita dei diritti di impiego del tetto e dell'alimentazione elettrica. Se i proprietari dell'edificio non sono interessati, gli inquilini dei piani più alti possono venir persuasi ad installare gli apparati su una finestra.

figure-3.11-ita.png

Figura 3.11: Il ripetitore inoltra i pacchetti in aria tra i nodi che non hanno diretta visibilità.

Se non si riesce a scavalcare un ostacolo, si può però spesso aggirarlo. Piuttosto che usare un link diretto, si provi l'approccio a salto multiplo per evitare l'ostacolo.

figure-3.12-ita.png

Figura 3.12: L'alimentazione non era disponibile in cima alla collina, ma si risolse il problema impiegando ripetitori multipli attorno alla base.

Infine, si può valutare di compiere un passo indietro per procedere in avanti. Se è disponibile un alto sito in una direzione diversa, e se tale sito ha visibilità oltre l'ostacolo, un collegamento stabile può essere realizzato tramite un percorso indiretto.

figure-3.13-ita.png

Figura 3.13: Il sito D non garantiva un collegamento pulito tra i siti A o B, poichè il sito C è sul percorso e non è interessato ad accogliere un nodo. Con l'installazione di un ripetitore più alto, i nodi A, B e D possono connettersi. Si noti come il traffico dal nodo D in effetti si allontani dal resto della rete, prima di essere rilanciato.

I ripetitori in una rete ricordano il principio de "i sei gradi di separazione". Il concetto spiega come, a prescindere dalla persona ricercata, siano necessari al massimo cinque intermediari per arrivare a contattarla. I ripetitori su alti siti possono "vedere" un gran numero di intermediari e, se il nodo è in vista del ripetitore, diventa possibile connettersi ad ogni altro nodo raggiungibile dal ripetitore.

Ottimizzazione del Traffico

La larghezza di banda viene misurata come quantità di bit su un intervallo di tempo. Sfortunatamente, la banda garantita da qualsiasi connessione di rete non è infinita. Si può sempre scaricare (o caricare) tutto il traffico che si richieda, basta attendere per tempi sufficientemente lunghi. Naturalmente, gli esseri umani non sono utenti pazienti come i computer, e non accettano di aspettare tempi infiniti perché le proprie informazioni attraversino la rete. Per tale ragione, la larghezza di banda dev'essere gestita e soggetta a priorità, così come ogni altra risorsa limitata.

È possibile migliorare significativamente il tempo di risposta, e massimizzare la velocità di trasferimento, eliminando dalla rete il traffico ridondante o non desiderato. Questa sezione descrive diverse tecniche di uso comune per sincerarsi che la rete trasporti solo il traffico che deve effettivaemente aattraversarla.

Web caching

Un Proxy Server web è un server sulla rete locale che mantiene copie delle pagine che siano state recentemente richieste o che siano più spesso richiamate. Quando un nuovo utente richiede queste pagine, queste vengono fornite dal proxy server locale, anzichè essere ricevute via Internet. Ciò si traduce in un accesso web decisamente più veloce, in molti casi, riducendo inoltre l'impiego della banda su Internet. Quando viene realizzato un proxy server, l'amministratore deve tener conto che alcune pagine non sono mantenibili in cache; per esempio, pagine che siano il risultato di script lato server, od altro contenuto generato dinamicamente.

Anche il caricamento delle pagine web viene apprezzato in modo diverso. Con un collegamento Internet lento, una pagina web tipica viene caricata lentamente, mostrando prima parte del testo e presentando quindi le figure una dietro l'altra. In una rete con un proxy server, ci possono essere dei ritardi durante i quali sembra non succedere niente, quando finalmente la pagina viene caricata in modo pressochè istantaneo. Ciò succede poichè l'informazione viene inviata dal computer così velocemente che si rende necessario un percettibile intervallo di tempo per costruire la pagina. Il tempo totale che si rende necessario per caricare un'intera pagina può arrivare ai dieci secondi, ove in mancanza di un proxy server, sarebbero stati necessari 30 secondi per caricare la pagina in modo graduale. Ma se tale fenomeno non viene spiegato ad alcuni utenti impazienti, questi potrebbero lamentarsi della lentezza introdotta dal proxy server. È normalmente compito dell'amministratore di rete gestire con gli utenti problemi di percezione di questo tipo.

Proxy server disponibili

Sono diversi i proxy server web disponibili. Di seguito sono elencati i pacchetti software più spesso utilizzati:

  • Squid. Il software open source Squid è lo standard de facto presso le università. È libero, affidabile, facile da impiegare e da estendere (ad esempio, con l'inserimento di filtraggi sui contenuti e con il blocco delle pubblicità). Squid genera file di log che possono essere analizzati con applicativi come Awstats, o Webalizer, entrambi open source ed in grado di generare buoni report grafici. In generale, è più semplice installarlo come parte di una distribuzione specifica, piuttosto che scaricarlo da http://www.squid-cache.org/ (gran parte delle distribuzioni come Debian, così come versioni derivate da Unix come NetBSD e FreeBSD, vengono distribuite già fornite di Squid). Una buona guida per la configurazione di Squid può essere trovata presso http://squid-docs.sourceforge.net/latest/book-full.html.

  • Microsoft Proxy server 2.0. Non è disponibile per nuove installazioni, perché è stato superato da Microsoft ISA server e non è più supportato. È tuttavia impiegato presso alcuni enti, sebbene non debba forse esser preso in considerazione per nuove installazioni.

  • Microsoft ISA server. ISA server è un proxy server decisamente buono, che probabilmente è troppo costoso per ciò che fornisce. Comunque, con gli sconti educational può essere alla portata di alcuni enti. Presenta i propri report grafici, ma i file di log possono essere analizzati anche con i comuni software di analisi come Sawmill (http://www.sawmill.net/). Gli amministratori di un sito che impieghi MS ISA Server dovrebbero dedicare sufficiente impegno per ottenere una configurazione adeguata; in caso contrario, MS ISA Server può tradursi in un consumatore di banda di tutto rispetto. Per esempio, una installazione di default può facilmente consumare più banda di quanta il sito impiegasse precedentemente, perché le pagine più richieste, con date di scadenza serrate (come quelle dei siti di informazione) vengono continuamente aggiornate. Per questo motivo diventa importante impostare correttamente i modi di caricamento, e configurarli perché vengano impiegati prevalentemente in orari notturni. ISA Server può anche essere collegato a prodotti per il filtraggio dei contenuti, come WebSense. Per ulteriori informazioni, si veda: http://www.microsoft.com/isaserver/ e http://www.isaserver.org/ .

Impedire agli Utenti di aggirare il Proxy Server

Se, in generale, evadere la censura su Internet ed eludere le politiche di accesso riservato alle informazioni può essere un impegno politico encomiabile, proxy e firewall rimangono però strumenti necessari nelle aree che dispongano di banda molto limitata. Senza di loro, la stabilità e la disponibilità della rete sarebbero minacciate dagli stessi utenti legittimi. Tecniche per aggirare un proxy server possono essere reperito sotto: http://www.antiproxy.com/ . Questo sito risulta utile agli amministratori per valutare come la propria rete risponda a queste tecniche.

Per rendere efficace l'uso di un cache proxy, si potrebbe considerare la semplice impostazione di una politica d'accesso, fidandosi degli utenti. Nella raffigurazione sottostante, l'amministratore deve fidarsi del fatto che i propri utenti non scavalchino il proxy server.

figure-3.14-ita.png

Figura 3.14: In questa rete si confida che gli utenti configurino propriamente i propri PC per l'impiego del proxy server.

In questo caso l'amministratore usa, tipicamente, una delle seguenti tecniche:

  • Non presentare l'indirizzo del default gateway attraverso il servizio di DHCP. Sulle prime ciò può funzionare, ma qualche utente di rete più smaliziato che intenda scavalcare il proxy server potrebbe trovare - od indovinare - l'indirizzo del default gateway. Una volta che ciò si sia realizzato, la soluzione di come aggirare il proxy tenderà a passare di bocca in bocca.

  • Usare politiche di dominio o di gruppo. Ciò è molto utile per impostare correttamente il proxy server per Internet Explorer su tutti i computer del dominio, ma non è molto utile per prevenire l'aggiramento del proxy, perché dipende dall'utente che si registra nel dominio NT. Un utente, con un computer su Windows 95/98/ME, può cancellare la propria registrazione e quindi scavalcare il proxy, e qualcuno che conosca la password di un utente locale sul suo computer Windows NT/2000/XP può registrarsi localmente e comportarsi in modo analogo.

  • Supplicare ed altercare con gli utenti. Non è mai la situazione ideale per l'amministratore di rete.

L'unico modo per assicurarsi che i proxy non vengano scavalcati, è adottare la corretta configurazione di rete, impiegando una delle tre tecniche sotto descritte.

Firewall

Un modo più affidabile per assicurarsi che dai PC non si possa aggirare il proxy può essere realizzato impiegando un firewall. Il firewall può essere configurato per permettere al solo proxy server di attraversarlo, cioè a presentare richieste HTTP su Internet. Ogni altro PC è bloccato, come mostrato nella figura sottostante.

figure-3.15-ita.png

Figura 3.15: Il firewall interdice ai PC l'accesso diretto ad Internet, ma lo consente tramite il proxy server.

Basarsi su un firewall, come nella rappresentazione sopra citata, può essere sufficiente o meno, in funzione da come sia configurato il firewall. Se questi si limita a bloccare l'accesso dalla LAN di campus verso la porta 80 dei server web, gli utenti smaliziati avranno modo di escogitare delle scappatoie. Inoltre, gli utenti saranno comunque in grado di impiegare protocolli avidi di banda, come Kazaa.

Doppia scheda di rete

Probabilmente il metodo più sicuro si ottiene installando due schede di rete nel proxy server, connettendo la rete di campus ad Internet come mostrato di seguito. In questo modo, la struttura di rete rende fisicamente impossibile raggiungere Internet senza passare attraverso il proxy server.

figure-3.16-ita.png

Figura 3.16: L'unica percorso verso Internet attraversa il proxy.

Il proxy server nella figura non dovrebbe avere impostato l'IP forwarding, a meno che gli amministratore non sappiano esattamente cosa intendano lasciar passare.

Un grande vantaggio di questa impostazione è che la tecnica conosciuta come transparent proxying può venire impiegata. Usare un transparent proxy significa deviare automaticamente le richieste web degli utenti al proxy server, senza alcun bisogno di configurare manualmente i singoli web browser affinchè usino il proxy server stesso. Tutto ciò forza l'intero traffico web ad essere messo in cache, elimina diverse possibilità di errore per gli utenti, e funziona pure con ogni dispositivo che non sia in grado di impiegare un proxy impostatovi manualmente. Per maggiori dettagli sulla configurazione di un transparent proxy con Squid, vedere sotto:

Routing impostato su Politiche di Gestione

Un modo per evitare l'aggiramento del proxy, ove si impieghino apparati Cisco, è l'adozione di politiche di routing (policy routing). Il router Cisco dirige le richieste web in modo trasparente verso il proxy server. Questa tecnica è impiegata presso la Makerere University. Il vantaggio di questo metodo è che, se il proxy è fuori servizio, le rotte fissate dal policy routing possono essere temporaneamente sospese, consentendo agli utenti di connettersi direttamente ad Internet.

Mirroring di un Sito web

Con il permesso del suo proprietario o del suo web master, l'intero contenuto di un sito web può essere posto in mirroring ("ricopiato") in un server locale, nelle ore notturne, se non è troppo corposo. Tale azione potrebbe essere valutata per i siti web di rilievo che possano essere di interesse per l'organizzazione o che possano risultare molto popolari tra gli utenti web. Può essere utile, ma ci possono essere anche potenziali svantaggi. Ad esempio, se il sito che viene ricostruito in locale contiene script CGI od altro contenuto dinamico che richieda un'interazione da parte dell'utente, ciò potrebbe causare problemi. Un esempio è quello di un sito web che richieda ai visitatori di registrarsi on link per una conferenza. Se qualcuno si registra on line su un server ricopiato (e se gli script ricopiati funzionano), chi organizza il sito originale non avrà le informazioni della persona che si è registrata.

Dato che il mirroring di un sito potrebbe ledere i diritti di autore, questa tecnica dovrebbe essere usata solo dietro l'autorizzazione del sito interessato. Se il sito ha in funzione il comando rsync, lo stesso sito può essere ricopiato impiegando lo stesso comando rsync. È questo, probabilmente, il modo più veloce e più efficiente per mantenere sincronizzato il contenuto tra i due siti. Se il web server remoto non impiega rsync, il software che si raccomanda di usare è un programma chiamato wget. È presente in gran parte delle distribuzioni di Unix/Linux. Una versione per Windows può essere reperita sotto http://xoomer.virgilio.it/hherold/, o nel pacchetto di tool liberi di Cygwin Unix (http://www.cygwin.com/).

Uno script può essere impostato perché si attivi ogni notte su un web server locale, e conduca le seguenti azioni:

  • Cambi la directory portandosi nella radice dei documenti del server web: per esempio,
  • Effettui il mirroring del sito web impiegando il comando:

 wget --cache=off -m http://www.python.org 

La copia del sito web si troverà nella directory www.python.org. Il web server dovrebbe quindi essere configurato per fornire i contenuti di questa directory su un host virtuale basato sui nomi. Si imposti un server DNS locale che presenti una registrazione fittizia per questo sito. Affinchè tutto ciò funzioni, i PC client dovrebbero essere configurati per impiegare il server DNS locale come DNS primario (Ciò è comunque consigliabile in ogni caso, perché un DNS locale velocizza i tempi di risposta per le richieste web).

Arricchire preventivamente la cache impiegando wget

Invece di impostare una copia locale di un sito web, come descritto nella precedente sezione, un approccio migliore è arricchire la cache del proxy adottando un processo automatico. Questo metodo è stato descritto da J. J. Eksteen e J. P. L. Cloete del CSIR di Pretoria, South Africa, in un documento intitolato Enhancing International World Wide Web Access in Mozambique Through the Use of Mirroring and Caching Proxies. In questo documento (disponibile presso http://www.isoc.org/inet97/ans97/cloet.htm) i due autori descrivono il funzionamento del procedimento:

  • "Un processo automatico recupera l'home page del sito ed un numero specificato di pagine ulteriori (seguendo in modo ricorsivo i link HTML delle pagine già raccolte) per mezzo di un proxy. Invece di scrivere le pagine recuperate sull'hard disk locale, il processo di copia elimina le pagine scaricate. Tutto ciò viene fatto per conservare le risorse di sistema e per evitare possibili conflitti sul diritto d'autore. Usando il proxy come intermediario, si garantisce che le pagine scaricate siano nella cache del proxy, come se un utente avesse avuto accesso a quelle pagine.

Quando un utente richiede le pagine già richiamate, gli vengono presentate quelle disponibili nella cache, senza congestionare il collegamento internazionale. Questo processo può essere condotto al di fuori delle ore di punta, con il fine di massimizzare l'impiego della banda e di non interferire con altre attività."

Il comando seguente (impostato per essere eseguito di notte, ogni giorno o settimana) è tutto ciò che si rende necessario (ripetendolo per ogni sito per cui si richieda l'arricchimento preventivo della cache).

 wget --proxy-on --cache=off --delete after -m http://www.python.org

Spiegazione:

  • -m: ricopia (mirror) l'intero sito. Wget parte da www.python.org e segue tutti i link ipertestuali, da scaricare tutte le pagine sottostanti.

  • --proxy-on: assicurati che wget faccia uso del proxy server. Può non essere necessario nelle impostazioni dove sia impiegato un trasparent proxy

  • --cache=off: assicurati che i contenuti aggiornati siano scaricati da Internet, e non dal proxy server locale.

  • --delete after: cancella la copia costruita. Il contenuto in copia rimane nella cache del proxy fintantochè ci sia sufficiente spazio nel disco e posto che i parametri di cache del proxy siano impostati correttamente.

Wget dispone di molte altre opzioni in aggiunta a queste; per esempio, per passare la password per un sito web che la richieda. Quando si impiega questo strumento, Squid dovrebbe essere configurato con sufficiente spazio sul disco per contenere tutti i siti precaricati ed altro (intendendo per altro il normale impiego di Squid rivolto a pagine esterne a quelle dei siti precaricati). Fortunatamente, lo spazio sui dischi rigidi diventa sempre più economico e le dimensioni dei dischi sono sempre più ampie. Comunque, questa tecnica può essere usata solo con pochi siti selezionati. Questi siti non dovrebbere essere troppo grossi, affinchè si completi il processo prima che ricominci l'orario di lavoro, ed inoltre occorre sempre monitorare lo spazio libero disponibile sul disco.

Gerarchie di Cache

Se un organizzazione dispone di più proxy server, questi possono condividere informazioni di cache tra di loro. Per esempio, se una pagina web esiste nella cache del server A, ma non nella cache del server B, un utente collegato sul server B potrebbe ottenere l'oggetto dalla cache di A tramite B. Inter-Cache Protocol (ICP) and Cache Array Routing Protocol (CARP) possono permettere la condivisione di informazioni di cache. CARP è considerato migliore. Squid supporta entrambi i protocolli, mentre Microsoft ISA Server supporta il solo CARP. Per maggiori informazioni, vedere sotto: http://squid-docs.sourceforge.net/latest/html/c2075.html . Tale condivisione delle informazioni di cache riduce l'impiego di banda esterna nelle organizzazioni dove siano disponibili più proxy server.

Specifiche per Proxy

Su una rete di campus universitaria dovrebbero insistere più proxy server, sia per migliorare le prestazioni che per ragioni di ridondanza. Con i dischi rigidi odierni, più economici e capienti, si possono costruire potenti proxy server, con spazio disco di 50 GB e più dedicato alla cache. La prestazione del disco è essenziale, quindi i dischi SCSI, più veloci, sono in grado di offrire prestazioni migliori (sebbene una cache basata su dischi IDE sia comunque meglio di niente). RAID e mirroring non sono raccomandati.

È inoltre consigliabile che un disco rigido separato sia dedicato alla cache. Per esempio, un disco rigido può essere impiegato per la cache, mentre un secondo per il sistema operativo e per la registrazione degli eventi (logging) della cache. Squid è progettato per impiegare quanta più RAM possibile, perché quando i dati sono estratti dalla RAM si raggiungono velocità decisamente superiori a quelle ottenibili sugli hard disk. Per una rete di campus, la memoria RAM dovrebbe essere di 1 GB o più:

  • Oltre alla memoria richiesta dal sistema operativo e dalle altre applicazioni, Squid richiede 10 MB di RAM per ogni GB di cache di disco. Quindi, se 50 GB di disco vengono assegnati alla cache, Squid richiederà 500 MB di memoria in più.
  • La macchina richiederebbe inoltre 128 MB per Linux e 128 MB per X-Windows.
  • Altri 256 MB dovrebbero essere aggiunti per altre applicazioni; sotto queste condizioni di lavoro, dovrebbe filare tutto liscio. Niente migliora le prestazioni di una macchina quanto installare un'ampia memoria, perché ciò riduce la necessità di ricorrere agli hard disk. La memoria è migliaia di volte più veloce di un hard disk. I moderni sistemi operativi mantengono in memoria i dati frequentemente richiesti, se si rende impiegabile sufficiente RAM. Ma ricorrono a memoria virtuale (swap) quando non dispongono di abbastanza RAM.

DNS caching ed ottimizzazione

I server DNS caching-only non sono autorevoli per nessun dominio, forniscono piuttosto risultati dalla cache a fronte di interrogazioni presentate dai client loro attestati. Come un proxy server arricchisce di pagine web popolari la propria cache durante un periodo prefissato, gli indirizzi DNS sono posti in cache fintantochè il proprio time to live (TTL) non si estingua. Ciò ridurrà il traffico DNS sulla vostra connessione Internet, poichè la cache DNS sarà in grado di rispondere localmente e molte interrogazioni. Naturalmente, i computer client devono essere configurati per impiegare i server DNS caching-only, come server DNS di riferimento. Quando tutti i client impiegano questo server come proprio server DNS primario, questi si arricchirà presto la cache di indirizzi, da poter rapidamente risolvere gli indirizzi che siano stati già richiesti. I server DNS che sono autorevoli per un dominio agiscono anche come riferimento nomi-indirizzi per i computer di cui curano la diffusione dell'indirizzo IP.

Bind (named)

Bind è il programma standard di fatto per il name service in Internet. Installato e avviato, Bind funziona come caching server (nessuna ulteriore configurazione è necessaria). Bind può essere installato da un pacchetto tipo pacchetto Debian o tipo RPM. L'installazione da un pacchetto è normalmente il metodo più semplice. Su Debian, digitare:

 apt-get install bind9

Oltre a mandare in esecuzione una cache, Bind può anche gestire zone autorevoli, può prestare servizi sotto altre zone autorevoli, può realizzare segmenti di spazi indirizzi, e pressochè ogni altra funzione che è possibile svolgere con il DNS.

dnsmasq

Un caching server DNS alternativo può essere dnsmasq. È disponibile per BSD e per la più parte delle distribuzioni Linux, o dal sito http://freshmeat.net/projects/dnsmasq/ . Il maggior vantaggio di dnsmasq è la flessibilità; può funzionare facilmente sia come caching DNS proxy e come riferimento autorevole per macchine e domini, senza complicate configurazione dei file di zona. Gli aggiornamenti possono essere inseriti nei dati di zona senza nemmeno dover far riavviare il servizio. Può anche funzionare come DHCP server, e integrerà il servizio di DNS con le richieste DHCP delle macchine in rete. È decisamente snello, stabile, ed estremamente flessibile. Bind è probabilmente una scelta indovinata per reti estese (oltre qualche centinaio di nodi), ma la semplicità e la flessibilità di dnsmasq lo rendono interessante per reti di dimensioni medio-piccole.

Windows NT

Per installare il servizio DNS su Windows NT4: selezionale il Pannello di Controllo -> Rete -> Servizi -> Aggiungi -> Microsoft DNS server. Inserire il CD NT4 di Windows quando richiesto. La configurazione di un server caching-only in NT è descritta nell'articolo 167234 della Knowledge Base. Dall'articolo:

  • "Installare semplicemente DNS e lanciare il Domain Name System Manager. Cliccare su DNS nel menù, selezionare Nuovo Server, ed inserire l'indirizzo IP del vostro computer dove è stato installato il DNS. Avete ora un server DNS caching-only."

Windows 2000

Per installare il servizio DNS: Menù d'avvio -> Impostazioni -> Pannello di controllo -> Aggiungi / Rimuovi Software. Tra i componenti di "Aggiungi / Rimuovi Software", selezionare Componenti -> Servizi di Rete -> Dettagli -> Domain Name System (DNS). Quindi avviare l'MMC di DNS (Menù di Avvio -> Programmi -> Strumenti di Gestione -> DNS). Dal Menù delle azioni selezionare "Collegare al computer...". Nella finestra "Seleziona il computer target", attivare "Il seguente computer:" ed inserire il nome di un server DNS che si intenda portare nella propria cache. Se è presente un "." [punto] nel manager DNS (appare di default), significa che il server DNS ritiene di essere il server DNS di root di Internet. Senz'altro si sbaglia. Cancellare il "." [punto] per rendere funzionante il tutto.

DNS separato e server ricopiato

Lo scopo di un DNS separato (split DNS, conosciuto anche come orizzonte separato, split horizon) è presentare una visione del dominio dall'interno differente da quella del mondo esterno. Esistono diversi accorgimenti per realizzare un DNS separato; per motivi di sicurezza, è consigliabile disporre di due differenti server DNS (ciascuno con un proprio database), uno interno ed uno esterno al dominio.

Il DNS separato può rendere possibile per dei client di una rete di campus risolvere gli indirizzi IP del dominio del campus in indirizzi locali IP secondo lo standard RFC1918, mentre il resto di Internet traduce gli stessi nomi in indirizzi IP differenti. Tutto ciò si realizza mantenendo due zone su due differenti server DNS relativi allo stesso dominio.

Una delle zone viene impiegata dai client di rete interni, mentre l'altra viene usata dagli utenti esterni di Internet. Per esempio, nella rete sottostante l'utente nel campus Makerere ottiene la risoluzione di http://www.makerere.ac.ug in 172.16.16.21, mentre un utente in qualsiasi altra parte di Internet ottiene invece la risoluzione in 195.171.16.13.

Il server DNS nel campus del disegno sopra riportato mantiene una file di zona per makerere.ac.ug ed è configurato come autorevole per tale dominio. Inoltre, funge come server DNS di cache per il campus Makerere, e tutti i computer nel campus sono configurati per impiegarlo come proprio server DNS.

I record DNS per il server DNS di campus apparirebbero simili a quanto segue:

makerere.ac.ug 
www     CNAME   webserver.makerere.ac.ug        
ftp     CNAME   ftpserver.makerere.ac.ug        
mail    CNAME   exchange.makerere.ac.ug 
mailserver      A       172.16.16.21    
webserver       A       172.16.16.21    
ftpserver       A       172.16.16.21

Ma c'è un secondo server DNS presente in Internet che è in effetti autorevole per il dominio makerere.ac.ug. I record DNS per questa zona esterna risulterebbero come segue:

makerere.ac.ug  
www     A 195.171.16.13 
ftp     A 195.171.16.13 
mail    A 16.132.33.21  
        MX mail.makerere.ac.ug  

Il DNS separato non è vincolato all'impiego di indirizzi secondo lo standard RFC1918. Un ISP africano potrebbe, per esempio, mantenere siti web per conto di una università, ma anche mantenere copia degli stessi siti web in Europa. Ogni volta che i client di tale ISP provassero ad accedere al sito web, otterrebbero l'indirizzo IP presso l'ISP africano, mantenendo così il traffico all'interno dello stesso Paese. Quanto i visitatori di altri Paesi dovessero accedere al sito web, questi otterrebbero gli indirizzi IP dei siti web ricopiati in Europa. In questo modo, i visitatori internazionali non congestionerebbero i collegamenti satellitari (VSAT) impiegati dall'ISP per visitare il sito web dell'Università. Tale soluzione sta divendanto un'opzione allettante, poichè l'hosting web in prossimità della dorsale Internet è divendato decisamente economico..

Ottimizzazione del Collegamento Internet

Come accennato precedentemente, flussi di rete fino a 22Mbps possono essere raggiunti impiegando apparati wireless nella banda 802.11g, non soggetta a licenze. Tale quantità di banda sarà probabilmente superiore, per almeno un ordine di grandezza, a quella garantita dal collegamento con Internet, e dovrebbe essere sufficiente per mantenere, senza problemi, differenti utenti Internet contemporaneamente.

Se però la connessione principale con Internet è assicurata da un collegamento VSAT, si incontreranno alcuni problemi di prestazioni, se ci si affida sui parametri di default di TCP/IP. Ottimizzando il collegamento VSAT, è possibile migliorare sensibilmente i tempi di risposta nell'accesso a macchine su Internet.

Fattori TCP/IP su una connessione satellitare

Spesso ci si riferisce ad un collegamento VSAT come ad una rete con tubo lungo e grosso. Questa caratterizzazione si riferisce ai fattori che influenzano le prestazioni TCP/IP su ogni rete che disponga di banda relativamente ampia, ma con alti tempi di latenza. Gran parte delle connessioni Internet in Africa ed in altre parti dei Paesi in via di Sviluppo sono via VSAT. Quindi, se un'università si connette ad Internet attraverso un ISP, questa sezione potrebbe essere considerata se la connessione dell'ISP è via VSAT. L'alta latenza nelle reti satellitari è dovuta alla lunga distanza del satellite ed alla velocità costante della luce. Questa distanza carica di circa 520 ms il percorso di andata e ritorno (RTT, round-trip time), rispetto ad un RTT tipico di 140 ms tra l'Europa e gli Stati Uniti.

figure-3.17-ita.png

Figura 3.17: A causa della velocità della luce ed alle lunghe distanze coinvolte, un singolo pacchetto di ping può impiegare oltre 520 ms per ottenere un echo su un collegamento VSAT.

I fattori che hanno maggiore influenza sulle prestazioni TCP/IP sono i lunghi RTT, i grandi prodotti larghezza di banda per ritardo, e gli errori di trasmissione.

In generale, i sistemi operativi che acccettano le moderne realizzazioni TCP/IP dovrebbero essere usati su una rete satellitare. Queste realizzazioni accettano le estensioni RFC 1323:

  • L'opzione scalatura di finestra per supportare larghe finestre TCP (maggiori di 64KB).

  • Riconoscimento di ricezione Selettivo (SACK, Selective acknowledgement) per assicurare un più veloce recupero in caso di errori di trasmissione.

  • Marche temporali per valutare opportuni valori di RTT e di timeout in ricetrasmissione per il collegamento in uso.

Lunghi Tempi di Andata e Ritorno (RTT)

I collegamenti satellitari hanno un RTT medio di circa 520ms su singolo salto (primo host - satellite - secondo host). Il TCP impiega il meccanismo della partenza lenta all'inizio di una connessione per determinare i parametri TCP/IP corretti per la connessione stessa. Il tempo dedicato alla fase di partenza lenta è proporzionale, all'RTT, e per un collegamento satellitare ciò significa che il TCP permane in modalità partenza lenta per un tempo maggiore di quanto non sarebbe altrimenti necessario. Tale comportamento riduce drasticamente il flusso nelle connessioni TCP di breve durata. Ciò può essere osservato dal fatto che un piccolo sito web potrebbe impiegare un tempo sorprendentemente lungo per effettuare il caricamento, ma quando un file di grandi dimensioni viene trasferito, velocità di trasferimento adeguate sono raggiunte dopo pochi secondi.

Inoltre, quando i pacchetti vengono perduti, il TCP entra nella fase di controllo di congestione ed, a causa dell'alto RTT, vi rimane per un tempo più lungo, così riducendo il flusso di connessioni TCP sia di breve, che di lunga durata.

Prodotto tra ritardo e larghezza di banda

La quantità di dati in transito su un collegamento in un momento qualsiasi è il prodotto della larghezza di banda e dell'RTT. A motivo dell'alta latenza su un link satellitare, il prodotto larghezza di banda per ritardo è considerevole. Il TCP/IP permette alla macchina remota di trasmettere una certa quantità di dati in anticipo, prima che ne venga riconosciuta la corretta ricezione. La ricevuta è normalmente richiesta per ogni dato inviato su una connessione TCP/IP. In effetti, alla macchina remota viene sempre permesso di inviare una certa quantità di dati senza che le sia ancora arrivata la ricevuta di corretta ricezione, fatto che è importante per raggiungere una buona velocità di trasferimento su connessioni con elevato prodotto ritardo per larghezza di banda. Questa quantità di dati è denominata larghezza della finestra TCP. Tale larghezza è di norma sui 64KB, nelle moderne realizzazioni di TCP/IP.

Sulle reti satellitari, il valore del prodotto ritardo-larghezza di banda è importante. Per impiegare con efficienza il collegamento, la larghezza della finestra della connessione dovrebbe essere uguale a quella del prodotto ritardo-larghezza di banda. Se la massima larghezza della finestra è 64KB, il massimo flusso teorico raggiungibile via satellite è (larghezza della finestra / RTT, ovvero 64KB / 520ms. Tutto ciò offre un massimo trasferimento dat di 123 KB/s, ovvero 984 Kbps, a prescindere dal fatto che la capacità del collegamento possa essere ben più grande.

Ogni header (testata) di un segmento TCP contiene un campo denominato advertised window (finestra annunciata), che specifica quanti byte di dati addizionali il ricevente sia pronto ad accettare. La advertised window rappresenta la dimensione di buffer al momento disponibile presso il ricevente. Per massimizzare le prestazioni, il mittente dovrebbe impostare la dimensione del proprio buffer in trasmissione ed il ricevente quella del proprio buffer in ricezione su valori non inferiori al prodotto ritardo-larghezza di banda. Tale dimensione del buffer arriva ad un valore massimo di 64 KB nella gran parte delle moderne realizzazioni TCP/IP.

Per risolrvere il problema degli stack TCP/IP in sistemi operativi che non estendono la finestra oltre i 64 KB, può essere usata una tecnica nota come TCP acknowledgment spoofing (si veda Migliorare le Prestazioni del Proxy, poco oltre).

Errori di Trasmissione

Nelle più datate realizzazioni TCP/IP, la perdita di pacchetti viene sempre assunta come dovuta dalla congestione (anzichè ad errori sulla propagazione). Quando questo caso si verifica, il TCP attiva l'eliminazione della congestione, richiedendo tre segnali duplicati di ACK od una partenza lenta, nel caso di un time-out. A causa del forte valore di RTT, una volta che il controllo di congestione sia partito, i collegamenti TCP/IP su satellite impiegheranno un tempo maggiore per ritornare al normale livello di flusso. Errori su un link satellitare avranno quindi effetti molto più pesanti sulle prestazioni del TCP, rispetto a collegamenti a bassa latenza. Per risolvere questa limitazione, sono stati sviluppati accorgimenti come la Ricevuta Selettiva (SACK, Selective Acknowledgment). Il SACK definisce esattamente i pacchetti che sono stati ricevuti, permettendo al mittente di ritrasmettere solo i segmenti TCP andati persi a causa di errori in trasmissione.

Il documento Microsoft Windows 2000 TCP/IP Implementation Details White Paper spiega come:

  • "Windows 2000 introduce il supporto per un'importante caratteristica prestazionale, conosciuta come Selective Acknowledgment (SACK). SACK è particolarmente importante per connessioni che impieghino larghe finestre TCP."

SACK è da molto tempo una caratteristica standard per kernel Linux BSD. Occorre assicurarsi che il proprio router Internet e l'estremo opporto del collegamento presso il proprio ISP supportino entrambi il SACK.

Conseguenze per le università

Se un sito dispone di una connessione di 512 Kbps verso Internet, le impostazioni di default di TCP/IP sono probabilmente adeguate, perché la dimensione della finestra di 64 KB può accomodare fino a 984 Kbps. Ma se all'università sono accordati più di 984 Kbps, sul collegamento si potrebbe in alcuni casi non raggiungere la piena larghezza di banda a causa dei fattori "rete a tubo lungo e largo" sopra discusso. L'effetto pratico di tali fattori è che si impedisce ad una singola macchina di sfruttare l'intera larghezza di banda. Ciò non è grave durante la giornata lavorativa, perché molti utenti impiegano l'intera larghezza di banda. Ma se, per esempio, dei download pesanti sono predisposti per il periodo notturno, l'amministratore potrebbe voler far loro sfruttare l'intera larghezza di banda, ed i fattori della "rete a tubo lungo e largo" potrebbero essere d'ostacolo. Ciò potrebbe risultare critico anche se una parte considerevole del traffico di rete dovesse essere convogliata su un singolo tunnel o su una connessione VPN diretta all'altro capo del collegamento satellitare.

Gli amministratori potrebbero valutare l'opportunità di adottare provvedimenti per assicurare che l'intera larghezza di banda venga raggiunta, per mezzo di affinamenti nell'impostazione TCP/IP. Se una università ha messo in piedi una rete dove tutto il traffico transita attraverso un proxy (imposto dalla geometria di rete), allora le uniche macchine che si connettono ad Internet saranno il proxy ed i server di posta.

Per ulteriori informazioni, si veda sotto: http://www.psc.edu/networking/perf_tune.html .

Migliorare le Prestazioni del Proxy (PEP)

Il concetto del miglioramento delle prestazioni di un proxy (PEP, Performance-enhancing proxy) è descritto nell'RFC 3135 (si veda http://www.ietf.org/rfc/rfc3135), e consisterebbe in un proxy server con una larga cache di disco che disponga delle estensioni dell'RFC 1323, tra le altre caratteristiche. Un portatile è in sessione TCP con un PEP presso l'ISP. Questo PEP, e quello presso il provider satellitare, comunicano usando una sessione TCP differente, od addirittura un proprio protocollo proprietario. Il PEP presso il provider satellitare ottiene i file dal server web. In questo modo, la sessione TCP viene scissa, ed in tal modo le caratteristiche del collegamento che influiscono sulle prestazioni del protocollo (fattori del tubo lungo e largo) sono risolte (con il TCP acknowledgment spoofing, per esempio). Inoltre, il PEP fa uso di proxy e di pre-faricamento per migliorare ulteriormente l'accesso web.

Un tale sistema può essere costruito da zero impiegando Squid, per esempio, o comprato chiavi in mano da diversi venditori.