Changeset 5 for doc/AssociazioneMultipla.tex
- Timestamp:
- May 9, 2007, 7:01:59 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/AssociazioneMultipla.tex
r4 r5 4 4 \usepackage[T1]{fontenc} 5 5 \usepackage[utf8]{inputenc} 6 \usepackage[pdftex,bookmarks,colorlinks,linkcolor=red,urlcolor=blue]{hyperref} 6 \usepackage[pdftex,bookmarks,colorlinks,citecolor=green, linkcolor=red, 7 urlcolor=blue]{hyperref} 7 8 8 9 % testo colorato … … 24 25 25 26 \begin{abstract} 26 La diffusione di reti wireless è in forte crescita a causa della sua comodità e27 della diffusa disponibilità di connessioni ad Internet con ampie larghezze di 28 banda. Sfruttare contemporaneamente la connessione alla molteplicità di reti 29 spesso presente permetterebbe un utilizzo migliore di tali risorse, migliorando 30 il \textit{throughput} e incrementandone l'affidabilità.27 La diffusione di reti \textit{wireless} è in forte crescita a causa della sua 28 comodità e della diffusa disponibilità di connessioni ad Internet con ampie 29 larghezze di banda. Sfruttare contemporaneamente la connessione alla 30 molteplicità di reti spesso presente permetterebbe un utilizzo migliore di tali 31 risorse, migliorando il \textit{throughput} e incrementandone l'affidabilità. 31 32 32 33 Lo studio intende quindi analizzare le effettive possibilità di realizzazione di 33 34 un'estensione delle comuni implementazioni dello standard IEEE 802.11 che 34 35 permetta al singolo \textit{client} in ambiente GNU/Linux l'associazione 35 simultanea a 36 differenti reti wireless. 36 simultanea a differenti reti \textit{wireless}. 37 37 \end{abstract} 38 38 39 39 % \newpage 40 40 \section{Introduzione} 41 \label{sec:intro }41 \label{sec:introduzione} 42 42 43 43 \subsection{Oggetto} … … 45 45 Lo studio di fattibilità si interroga sulle possibilità realizzative di 46 46 connessione di un singolo \textit{client} 802.11 a diverse reti, partecipando a 47 piè BSS 48 (cioè l'insieme di nodi costituenti una rete wireless). 47 più BSS (cioè l'insieme di nodi costituenti una rete \textit{wireless}). 49 48 50 49 Nel presente documento si intende dapprima introdurre il lettore allo scenario … … 59 58 \textit{client}, 60 59 permettendogli connessioni simultanee a reti altrimenti isolate ed eventualmente 61 consentendo al \textit{client} di agire in qualità di ponte. Qualora i punti di62 accesso 63 resi contemporaneamente utilizzabili riferiscano (più o meno direttamente) 64 alla medesima rete, allora la molteplicità si traduce in ridondanza e, 65 conseguentemente, in affidabilità. I più coraggiosi potranno sfruttare 66 multi-connettività in oggetto come punto di partenza per la realizzazione di67 politiche di gestione al fine dimassimizzare il \textit{throughput} aggregato.60 consentendo al \textit{client} di agire in qualità di ponte. 61 Qualora i punti di accesso resi contemporaneamente utilizzabili riferiscano (più 62 o meno direttamente) alla medesima rete, allora la molteplicità si traduce in 63 ridondanza e, conseguentemente, in affidabilità. 64 I più coraggiosi potranno sfruttare le multi-connettività in oggetto come punto 65 di partenza per la realizzazione di politiche di gestione al fine di 66 massimizzare il \textit{throughput} aggregato. 68 67 69 68 \subsection{Obiettivi supplementari} … … 96 95 sua natura, disponibile e condiviso da ogni utilizzatore, pertanto lo standard 97 96 IEEE 802.11 ne sancisce il partizionamento in diversi spettri di frequenza 98 denominati canali. In tal modo si permette la coesistenza di reti wireless99 distinte in aree limitrofe o addirittura sovrapposte grazie all'uso di canali 100 differenti.97 denominati canali. In tal modo si permette la coesistenza di reti 98 \textit{wireless} distinte in aree limitrofe o addirittura sovrapposte grazie 99 all'uso di canali differenti. 101 100 102 101 \label{salti} … … 109 108 \subsubsection{Accesso alla rete} 110 109 \label{sec:accessoallarete} 111 Affinché una stazione mobile possa partecipare ad una rete wireless, le è fatto 112 obbligo di annunciare la sua presenza attraverso una procedura detta di 113 \textbf{associazione}. Questo legame unisce una stazione ad uno ed un solo BSS e 114 garantisce che la stazione possa effettuare trasmissioni dirette ad ognuno dei 115 nodi appartenente all'intera rete e viceversa.\\ 110 Affinché una stazione mobile possa partecipare ad una rete \textit{wireless}, le 111 è fatto obbligo di annunciare la sua presenza attraverso una procedura detta di 112 \textbf{associazione}. 113 Questo legame unisce una stazione ad uno ed un solo BSS e garantisce che la 114 stazione possa effettuare trasmissioni dirette ad ognuno dei nodi appartenente 115 all'intera rete e viceversa.\\ 116 116 Lo studio intende proprio scardinare l'univocità del rapporto fra stazione 117 117 e BSS che lo standard impone esplicitamente. … … 282 282 troppo distanti dagli scopi del presente. 283 283 284 \subsubsection{Il chipset Atheros}284 \subsubsection{Il \textit{chipset} \texttt{Atheros}} 285 285 \label{sec:atheros} 286 286 … … 302 302 libertà auspicate. 303 303 304 \subsubsection{Il driver MADWifi}304 \subsubsection{Il \textit{driver} \texttt{MADWiFi}} 305 305 \label{sec:madwifi} 306 306 A partire dallo scorso anno la spinta innovatrice di \texttt{Atheros} ha avuto 307 307 riscontro anche nel progetto \texttt{MADWiFi}, i driver liberi per piattaforme 308 Linux sviluppati inizialmente da Sam Leffler. Le novità dal nuovo HAL sono state309 sfruttate introducendo una serie di funzionalità di grande rilevanza. Il 310 carattere rivoluzionario rende il progetto, come spesso capita, piuttosto311 instabile ma assai vitale.308 Linux sviluppati inizialmente da Sam Leffler. Le novità introdotte dal nuovo 309 \texttt{HAL} sono state sfruttate aggiungendo una serie di funzionalità di 310 grande rilevanza. Il carattere rivoluzionario rende il progetto, come spesso 311 capita, piuttosto instabile ma assai vitale. 312 312 313 313 L'aspetto indubbiamente più interessante è l'introduzione della modalità 314 314 \textbf{VAP} (\textit{Virtual Access Point}), grazie alla quale è possibile 315 315 virtualizzare il dispositivo creando molteplici interfacce di rete operanti 316 concorrentemente in maniera indipendente. Questa funzionalità è implementata 317 facendo uso del medesimo livello fisico, vincolando così l'operatività dei VAP 318 sullo stesso canale trasmissivo. Ciononostante, la rosa delle possibilità rimane 319 ben assortita, permettendo la creazione di molteplici \textit{access point} e/o 320 una (e al più una) stazione in modalità \texttt{managed} o \texttt{ad-hoc}. La 321 nota modalità \texttt{monitor} viene inoltre resa inseribile in una qualsiasi 322 delle configurazioni appena destritte, con la semplice aggiunta di un VAP di 323 questo tipo.\\ 316 concorrentemente in maniera indipendente. 317 Questa funzionalità è implementata facendo uso del medesimo livello fisico, 318 vincolando così l'operatività dei VAP sullo stesso canale trasmissivo. 319 Ciononostante, la rosa delle possibilità rimane ben assortita, permettendo la 320 creazione di molteplici \textit{access point} e/o una (e al più una) stazione in 321 modalità \texttt{managed} o \texttt{ad-hoc}. 322 La nota modalità \texttt{monitor} viene inoltre resa inseribile in una qualsiasi 323 delle configurazioni appena descritte, con la semplice aggiunta di un VAP di 324 questo tipo. 324 325 I vari VAP creati possono poi essere eventualmente interconnessi tramite il WDS, 325 326 un'altra delle caratteristiche salienti del driver, che realizza un sistema di … … 327 328 essi locali (e virtualizzati) o esterni. 328 329 % TODO 329 % Chiarire il concetto di DS ?330 331 Le interfacce virtuali create saranno esposte ed utilizzate in piena330 % Chiarire il concetto di DS e di BSS 331 332 Le interfacce virtuali create saranno esposte ed utilizzate comodamente in piena 332 333 trasparenza, essendo presentate come ordinarie interfacce di rete aderenti alle 333 334 \textit{Wireless Extensions}. 334 % TODO335 % Comodità?336 335 337 336 L'alto grado di controllo permesso dal \textit{firmware} \texttt{Atheros} si 338 propaga fino all'utente attraverso il \textit{driver} ei suoi numerosi339 parametri specifici, che ricordiamo essere gestibili tramite il comando340 \texttt{iwpriv} degli \textit{Wireless Tools}. 341 342 % * interfaccia verso l'alto con wlanconfig 343 337 propaga fino all'utente attraverso il \textit{driver} grazie ai suoi numerosi 338 parametri specifici, che si ricordano essere gestibili tramite il comando 339 \texttt{iwpriv} degli \textit{Wireless Tools}. Un ulteriore strumento a riga di 340 comando, \texttt{wlanconfig}, completa le necessità di amministrazione proprie 341 di questo \textit{driver}, permettendo creazione, distruzione e cambio di 342 modalità dei VAP. 344 343 345 344 \section{Soluzioni} 346 345 \label{sec:soluzioni} 346 Lo studio di fattibilità in oggetto non può che aver prodotto degli schemi di 347 soluzione che coniugano le idee emerse durante la fase di analisi del problema, 348 ma che si precisano essere ancora distanti dall'esaustività. 349 Tali proposte di soluzione si differenziano per il livello implementativo di 350 riferimento, poiché esso comporta un importante \textit{trade-off} fra 351 portabilità ed efficienza. 352 Quanto più basso, infatti, è il livello al quale si opera, tanto più alta è la 353 possibilità di sfruttare appieno le potenzialità del dispositivo, a scapito 354 della compatibilità offerta e della facilità implementativa. 355 Punto fermo di ogni soluzione proponibile è l'effettuazione di salti periodici 356 fra i BSS ai quali il \textit{client} desideri essere ``contemporaneamente'' 357 associato. 358 Le differenze di prestazioni fra le due soluzioni che si proporranno di 359 seguito sono dovute proprio ai diversi tempi che i salti periodici 360 richiedono, che costituiscono quasi interamente l'\textit{overhead} introdotto. 361 362 Si procederà quindi ad illustrare due soluzioni attraverso un'attenta analisi 363 che entrerà nei dettagli, dimostrando quanto appena affermato e calcolando il 364 rapporto fra vantaggi e svantaggi che esse comportano. 365 366 \subsection{Sopra il \textit{firmware}} 367 \label{sec:soprailfirmware} 368 369 \subsubsection{Descrizione} 370 \paragraph{Idea} 371 Questa soluzione nasce dal desiderio di realizzare associazioni multiple 372 effettive, per mezzo delle quali, cioé, in un dato istante ogni BSS di interesse 373 per il \textit{client} lo consideri regolarmente associato. 374 Ciò che si propone consiste sostanzialmente di modifiche al \textit{driver} per 375 implementare i salti fra i BSS in maniera tale da evitare la perdita di 376 associazione presso ognuno di essi. 377 378 \paragraph{Come} 379 Per far ciò si deve interagire direttamente (ed eventualmente in maniera 380 poco corretta) con l'entità di gestione di 802.11, che si è già chiarito 381 risiedere all'interno del \textit{firmware} della scheda \textit{wireless}. 382 Soltanto il \textit{driver} sovrastante ha infatti la possibilità di alterare 383 determinati stati interni al \textit{firmware} per modificare il comportamento 384 di MAC. 385 I parametri a cui si sta facendo riferimento sono quelli che regolano i rapporti 386 di associazione e necessaria autenticazione della stazione: caratteristiche del 387 BSS, caratteristiche della crittografia e dell'autenticazione in uso, eventuali 388 chiavi temporanee \ldots 389 390 \paragraph{Gabola} 391 Uno degli aspetti più convincenti di questa soluzione è la possibilità di 392 utilizzare la modalità di risparmio energetica (introdotta nella 393 sezione \ref{sec:risparmioenergetico}. 394 I ripetuti salti costringono il \textit{client} ad assenze dal canale che 395 possono infatti essere spacciate senza troppa difficoltà per riposi 396 preannunciati, costringendo con l'inganno i BSS a conservare i dati a lui 397 diretti. Per completare questa strategia, la stazione simula al suo ritorno un 398 risveglio per ricevere l'intera mole di informazioni in attesa di consegna. 399 400 % : * il driver sara' in grado di gestire in un unico punto d'entrata le 401 % : interfacce multiple offerte dal SO 402 % TODO 403 % Grafico della faccenda 404 % OS [] [] [] 405 % \ | / 406 % DRI \|/ 407 % FW [ ] 408 Si consiglia inoltre che il \textit{client} si presenti ai differenti BSS con 409 indirizzi MAC diversi fra loro, in modo tale da evitare partecipazione 410 ridondante al medesimo ESS. 411 412 % . * componente scheduler (-> interfacce virtuali wext compliant) che 413 % . pianifica le trasmissioni 414 415 416 417 \subsubsection{Vantaggi} 418 % : * nessuna perdita di dati 419 % . * power-saving e bufferizzazione dei dati da parte degli AP 420 % * buone prestazioni 421 % . * reale associazione multipla -> nessun overhead per 422 % . riautenticazione/riassociazione 423 % . * totale trasparenza grazie alle interfacce wext compliant 424 % . * si puo' non partire da zero (-> madwifi) 425 426 \subsubsection{Svantaggi} 427 % * grosso sforzo per l'implementazione 428 % . * parziale reimplementazione di MAC per occuparsi di beghe causate 429 % dalla molteplicita' dei BSS: 430 % . * tempistiche: sincronizzazione, rilevamento beacon persi ed eventuale 431 % . sfruttamento dei CFP. (beacon interval noti e mantenimento di 432 % . informazioni necessarie per ogni BSS) 433 % . * sottotipi di autenticazione/crittografia: mantenimento chiavi 434 % . (|di sessione), stato della crittografia e dell'autenticazione. 435 % . (getter e setter sugli attributi MIB relativi) 436 % . * complessita' intrinseca dovuta al livello implementativo 437 % . * firmware spesso solo binari, quindi probabile reverse engineering 438 % . * prestazioni non eccellenti, perche` limitate da power-saving e relativi 439 % . obblighi temporali (TIM...) {non posso proprio fare i miei comodi al 440 % . 100% } 441 % * troppo specifico 442 % * dipendenza dalla piattaforma fw -> portabilita' minima 443 % . * necessita' di power saving 444 % . * la soluzione dipende fortemente dal firmware di riferimento, scarsa 445 % . programmabilita' di parecchie implementazioni 446 447 \subsection{Sopra il \textit{driver}} 448 \label{sec:sopraildriver} 449 450 \subsubsection{Descrizione} 451 % : * idea: cheppalle riscriversi un driver, chissenefrega degli overhead, 452 % : lavoriamo pure a livello alto 453 % . * riassociazione ad ogni cambio di BSS 454 % . * GNU/Linux e Wireless Extensions come riferimento 455 % : * forse autenticazione multipla 456 % . * interfacce virtuali wext compliant (->) 457 % . * autenticazioni multiple a livelli superiori 802.1x (con wpa_supplicant) 458 459 \subsubsection{Vantaggi} 460 % . * facilita` implementativa 461 % . * totale trasparenza grazie alle interfacce wext compliant (in questo 462 % . la cosa e` non banale, per il livello implementativo e permette il 463 % . comodo uso di wpa_supplicant) 464 % . * portabilita' dovuta alle interfacce unificate 465 466 \subsubsection{Svantaggi} 467 % * dataloss [ma si puo` risolvere a livelli superiori (TCP, ATM)] 468 % : * latenze (|assai) ingenti (con|senza) autenticazione multipla 469 % * analisi costi vago in termini di ordini di grandezza: 470 % * associazione 471 % * sincronizzazione ~ 100 ms 472 % * autenticazione (PSK) 347 473 348 474 \section{Ottimizzazioni ulteriori per le scelte di swinging}
Note: See TracChangeset
for help on using the changeset viewer.