Changes between Version 16 and Version 17 of WikiStart


Ignore:
Timestamp:
Oct 18, 2006, 7:35:28 PM (18 years ago)
Author:
soujak
Comment:

Ripulita la home page e aggiornata coerentemente alle ultime modifiche.

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v16 v17  
    11= Benvenuti =
    2 [[PageOutline(1-4,Indice)]]
    32Questo Wiki intende costituire il punto di riferimento per il gruppo di studenti
    43che sta lavorando al progetto del corso "Laboratorio di reti calcolatori".
    5 La ricerca intende analizzare la possibilita' di sfruttare in maniera,
    6 possibilmente conveniente, simultanea due reti wireless distinte avendo a
     4La [wiki:Studio ricerca] intende analizzare la possibilita' di sfruttare in maniera,
     5possibilmente conveniente, simultanea due (o piu`) reti wireless distinte avendo a
    76disposizione un solo client.
    87Si propone insomma di indagare su tale pratica al fine di avere un'idea quanto
     
    1514messaggio di posta elettronica all'indirizzo `reti0506[SU]xt3[DOT]it`.
    1615
    17 Potete trovare le informazioni sugli incontri che ci saranno, o che ci sono
    18 stati, nell'apposito [wiki:Calendario Calendario].
     16Potete trovare l'elenco degli incontri che ci saranno, o che ci sono
     17stati, nell'apposito [wiki:Calendario Calendario]. 
    1918
    20 [wiki:RecentChanges Ultime modifiche]
     19Se desiderate dare un'occhiata agli ultimi sviluppi, controllate pure le
     20[wiki:RecentChanges ultime modifiche].
    2121
    22 == Link utili ==
    23  * Specifiche ufficiali del protocollo:
     22== Indice del Wiki ==
     23 * [wiki:Studio#Studiodifattibilita:associazionemultiplasimultanea Studio di fattibilita']
     24 * [wiki:Studio#AnalisidellostandardIEEE802.11 Analisi dello standard IEEE 802.11]
     25 * Documenti ufficiali dello standard:
    2426   * [http://www.xt3.it/reti0506/802.11-1999.pdf IEEE 802.11 - prima versione considerata legacy (1999)]
    2527   * [http://www.xt3.it/reti0506/802.11b-1999.pdf IEEE 802.11b - miglioramento del 802.11 col supporto di 5.5 e 11 Mbit/s (1999)]
    2628   * [http://www.xt3.it/reti0506/802.11g-2003.pdf IEEE 802.11g - 54 Mbit/s, 2.4 GHz standard (compatibile con il 802.11b) (2003)]
    27  * [http://hardware.slashdot.org/comments.pl?sid=89147&cid=7712841 Interessante articolo su SlashDot di un tizio che si e' interessato all'argomento]
    28 
    29 ----
    30 = Studio di fattibilita': associazione multipla simultanea =
    31 == Introduzione ==
    32 
    33 L'avvio e l'approccio di questo studio dipende in maniera forte dagli aspetti
    34 architetturali del protocollo 802.11. La questione non entra in gioco soltanto
    35 nel definire una bozza di implementazione, ma, ancor prima, nel comprendere
    36 quali siano le strade da intraprendere per una realizzazione a livello mentale.
    37 
    38 Dalle conoscenze iniziali dell'intero gruppo di lavoro e' risultato evidente
    39 che la ricerca non poteva perseguire una soluzione che lavorasse al di sopra di
    40 tutto lo stack IEEE 802.11. In questo tipo di scenario si renderebbe necessaria
    41 la ri-associazione ad ogni cambio di canale, una operazione che richiede tempi
    42 lunghi (o biblici, e' da considerare anche l'autenticazione), se comparati ai
    43 tempi di trasmissione dei dati.
    44 
    45 Se come riferimento si prende lo stack ISO/OSI, da quanto detto risulta
    46 evidente che la ricerca sara' orientata al di sotto del livello "network".
    47 
    48 Prima di poter proseguire in maniera sensata, si ritiene pertanto necessario
    49 approfondire la conoscenza dell'interfaccia offerta dal livello MAC e da quello
    50 PHY e come esse possano essere utilizzate. In aggiunta a questo e' da chiarire
    51 quanto forte sia la dipendenza fra il livello PHY e l'hardware del dispositivo
    52 sottostante.
    53 
    54 == Architettura dello standard IEEE 802.11 ==
    55 I due livelli (data link e fisico) su cui lo standard e' definito possiedono
    56 un insieme di operazioni primitive proprie, ma le loro definizioni sono lungi
    57 dal poter essere considerate vere e proprie interfacce: si tratta delle "MAC
    58 layer management entities" (MLME) e delle "PHY layer management entities"
    59 (PLME).
    60 E' assai importante notare, specialmente ai fini dello studio in oggetto, che lo
    61 strato MAC non oscura il sottostante PHY, ma permette alla "station management
    62 entity" (SME) di interagire direttamente con esso. Le varie entita' hanno la
    63 possibilita' di comunicare fra loro secondo le specifiche dello standard,
    64 attraverso i SAP (service access point). Tale concetto intende aggregare
    65 l'insieme di chiamate che una determinata entita' espone alle altre per
    66 realizzare forme di comunicazione o invocazione.
    67 
    68 {{{
    69   __||________________________
    70  |      |      |              |
    71  | MAC  | MLME =              |
    72  |      |      |              |
    73  |--||--|--||--| Station      |
    74  |      |      | Managemement |
    75  | PLPC | PLME | Entity       |
    76  |      |      |              |
    77  |--||--|      =              |
    78  |      |      |              |
    79  | PMD  |      |              |
    80  |______|______|______________|
    81 }}}
    82 
    83 
    84 In generale il livello MAC, come ovvio, deve essere il piu' possibile
    85 indipendente da quello fisico anche se a volte e' necessario che il livello MAC
    86 gestisca stati opportuni del livello fisico.
    87 
    88 Il livello PHY viene suddiviso nella seguente maniera:
    89  * PLCP (Physical Layer Convergence Procedure): funzioni di convergenza del
    90    livello fisico (adattamento del medium a PHY service), che realizzano una
    91    traduzione al fine di rendere l'interfaccia comune;
    92  * PMD (Physical Medium Dependent): insieme di funzioni fortemente dipendenti
    93    dallo specifico dispositivo wireless (ad esempio richieste di trasmissione o
    94    ricezione di dati).
    95 
    96 Anche in questo caso le relazioni con l'esterno sono gestite da appositi
    97 moduli SAP: uno specifico per la porzione PLCP (PMD-SAP) e un altro relativo al
    98 sottostrato PMD (PMD-SAP).
    99 
    100 === Primitive di gestione generica ===
    101 Le informazioni specifiche per la gestione di ogni strato sono incapsulate
    102 all'interno di cio' che viene definita Management Information Base (MIB) che
    103 puo' essere visto come un componente di ogni livello. In accordo con questo,
    104 ogni Management Entity possiede specifiche primitive di GET e SET in
    105 grado di operare sugli attributi della relativa MIB. Informazioni dettagliate
    106 sugli attributi dei vari MIB sono presenti nel
    107 [http://www.xt3.it/reti0506/MIB-D6.2.txt documento ufficiale]
    108 
    109 === Interfaccia di MAC: MLME SAP ===
    110  * POWERMGT: richieste al modulo che gestisce il risparmio energetico
    111  * SCAN: scansione della rete alla ricerca di BSS disponibili
    112  * JOIN: sincronizzazione con un BSS
    113  * AUTHENTICATE: autenticazione con un BSS
    114  * DEAUTHENTICATE: deautenticazione con un BSS
    115  * ASSOCIATE: associazione fra una STA e un AP
    116  * REASSOCIATE: associazione fra una STA e un altro AP
    117  * DEASSOCIATE: disassociazione fra una STA e un AP
    118  * RESET: azzeramento
    119  * START: creazione di un nuovo BSS (diventa AP) o IBSS (prima STA di una rete
    120    ad-hoc)
    121 
    122 === Interfaccia di PHY: PLME SAP ===
    123 In generale si hanno disposizione tutti i getter e i setter necessari per
    124 manipolare tutti gli attributi del MIB (normati nell'aggiunta `Annex D`).
    125 Inoltre, si hanno a disposizione le seguenti primitive:
    126  * PLME-RESET.request: forza il reset del livello PHY, reinizializzandolo allo stato di
    127    ricezione;
    128  * PLME-CHARACTERISTICS.request: ritorna le caratteristiche operative della PHY
    129    entity;
    130  * PLME-CHARACTERISTICS.confirm: viene sollevata dalla PHY entity successivamente
    131    ad una PLME-CHARACTERISTICS.request. Fornisce le caratteristiche operative
    132    della PHY entity;
    133  * PLME-DSSSTESTMODE.request: utile per entrare in modalita' test in una PHY DSSS
    134    entity;
    135  * PLME-DSSSTESTOUTPUT.REQUEST: opzionale, testa i segnali di output di una PHY
    136    DSSS entity.
    137 
    138 
    139 === Interfaccia di PHY: PLCP e PMD ===
    140 Come gia' accennato in precedenza, le funzioni proprie dello strato PHY sono
    141 separate nei due livelli distinti PMD e PLCP; quest'ultimo intende fornire il
    142 meccanismo per trasferire MPDU fra le STA, stando al di sopra del livello PMD.
    143 Anche in questa sezione, i servizi vengono definiti in maniera puramente
    144 astratta, in modo da non forzare a particolari implementazioni delle interfacce.
    145 
    146 Le primitive tra MAC e PHY si possono dividere in due categorie:
    147  * primitive per il supporto d'interazioni punto-a-punto a livello MAC
    148    (primitiva PHY-DATA.{request,confirm,receive,indication}).
    149  * primitive con significato locale per agevolare l'interazione tra sottolivelli
    150    (e.g. PHY-TXStart.{request,...}).
    151 
    152 === Specifiche della modulazione FHSS ===
    153 Si tratta attualmente della tecnologia piu' diffusa nelle trasmissioni radio.
    154 Vengono in generale definite un sacco di primitive che vanno dal controllo
    155 del consumo energetico del medium, alla trasmissione, al CS/CCA.
    156 Frequency hopping: il salto delle frequenze (channel) e' fatto alfine di
    157 ottenere un maggior throughput della rete (non si impegna mai una stessa
    158 frequenza per "troppo" tempo). Questo hopping deve avvenire entro
    159 un tempo limite di 224us.
    160 
    161 == Appunti vari ==
    162 ||20061014-1305||Roma||
    163 Ho letto qualcosa su come si instaura una connessione tra una client e un AP: vi
    164 è praticamente una serie di richieste tra il client e l'AP affinchè la
    165 connessione venga instaurata; nota importante è che il client prima di
    166 collegarsi all'AP deve autenticarsi sull'AP stesso. Una volta fatto cio' AP
    167 manda un pacchetto che indica l'avvenuta autenticazione e l'inizio di una nuova
    168 connessione. Naturalmente vi sono già delle primitive implementate atte a
    169 svolgere questo tipo di compito (sia per quanto riguarda l'instaurazione che
    170 per le reinstaurazione).
    171 Inoltre i vari client devono essere tutti sincronizzati per paralare tra loro
    172 (es che fece anche il seminarista se non ricordo male) e per fare ciò si
    173 inviano delle simpatiche "pancette" con dentro il proprio timestamp; a monte
    174 comunque c'è l'AP che controlla tutta la sincronizzazione ed egli stesso manda
    175 pancette ai client conessi a lui; quindi vi è una doppia sincronizzazione: una
    176 tra AP e client e una tra client e client (cap 11 del documento ieee 802.11).
    177 
    178 = MadWifi e l'estensione per VAP =
    179 ,,20061011-1744: soujak,,[[BR]]
    180 I driver [http://madwifi.org MadWifi] per schede Atheros su piattaforme Linux
    181 implementano gia' la funzionalita' di associazione multipla simultanea grazie
    182 ad [http://madwifi.org/wiki/HAL HAL]. Per ulteriori informazioni si veda il
    183 relativo [http://madwifi.org/wiki/ngFeatures wiki]. Risulta, come e' chiaro,
    184 capire quanto l'implementazione della virtualizzazione delle interfacce di rete
    185 dipenda dal chip Atheros o dall'implementazione del driver e quanto invece la
    186 funzionalita' possa essere portata anche in scenari differenti. A tal fine si
    187 consiglia come riferimento gli stessi
    188 [http://madwifi.org/wiki/UserDocs/GettingMadwifi sorgenti].
    189 
    190 ,,20061013: soujak,,[[BR]]
    191 Da una rapida occhiata ai driver e alla relativa documentazione (User's Guide e
    192 README) sono emersi una serie di dettagli rilevanti.
    193 Anzitutto parte dell'implementazione del driver e' distribuita in forma binaria
    194 dal produttore della scheda per ottemperare a specifici dettami dell FCC. Una
    195 scheda wireless e', di fatto, un rice-trasmettitore radio con capacita'
    196 tecniche (bande in cui poter operare) che possono infrangere quelle che sono le
    197 limitazioni imposte dalle legislazioni dei vari Paesi per l'utilizzo
    198 dell'etere. Conseguentemente un firmware (o software?) fornito in forma
    199 sorgente potrebbe consentire modifiche che potrebbero portare ad infrazioni
    200 legali, come l'ascolto su canali riservati. La funzionalita' di associazione
    201 multipla fornita come estensione al driver e' basata su porzioni binarie e
    202 quindi emergono dubbi sulla sua portabilita', benche' il driver sia basato su
    203 una implementazione di 802.11 (proveniente da BSD) indipendente dal hardware.
    204 
    205 In aggiunta a questo, l'implementazione espone un limite che poco si confa' alla
    206 genericita' che lo studio intende perseguire. Prima di tutto, l'estensione VAP
    207 permette soltanto la creazione di piu' AP o l'uso contemporaneo di modalita'
    208 STA e AP (associato ad un BSS e contemporaneamente Master). Cosi' facendo, si
    209 aggiungono effettivamente possibilita' interessanti (come eseguire sniffing su
    210 reti su cui si e' autenticati e addirittura associati), ma se ne precludono
    211 parecchie altre (si pensi alle reti ''ad-hoc'').
    212 Inoltre l'implementazione non fa uso di strategie di channel-hopping, pertanto i
    213 Virtual Access Point sono limitati a coesistere sullo stesso canale e ad
    214 utilizzare lo stesso livello fisico - un altra limitazione alla quale si spera
    215 di non dover sottostare.
    216 
    217 Altri aspetti del progetto MadWifi e dell'estensione in oggetto possono invece
    218 rivelarsi interessanti, ad esempio l'interfaccia verso l'alto. Gli sviluppatori
    219 hanno creato un tool (`wlanconfig`) per facilitare la creazione e la gestione
    220 di interfacce virtuali che presentano all'utente la molteplicita' di usi della
    221 medesima scheda fisica.
     29 * [wiki:MadWifi I driver MadWifi e l'estensione VAP]
     30 * [http://hardware.slashdot.org/comments.pl?sid=89147&cid=7712841 Interessante articolo su SlashDot]