Version 1 (modified by 18 years ago) (diff) | ,
---|
IEEE 802.11 - Gestione del livello MAC
Uno degli aspetti piu' importanti, per quanto riguarda la connessione di piu' host ad una rete wireless, e' sicuramente il meccanismo di sincronizzazione, il quale deve esistere per permettere la comunicazione all'interno della rete. Per permettere cio' ogni nodo ha al suo interno un TSF (Timing Synchronization Function) che funge da orologio per tutti i nodi. La sincronizzazione e' presente sia nei BSS che nei IBSS e avviene in maniere differenti.
In un BSS la sincronizzazione viene mantenuta dall'AP, che inizializza il suo TSF interno e invia beacons a tutti i nodi della rete con all'interno il proprio timer. Ogni nodo che riceve il beacon deve sincronizzare il proprio timer con il valore del timestamp ricevuto.
In un IBSS invece ogni nodo partecipa allla sincronizzazione mediante l'utilizzo di un algoritmo distribuito; in pratica ogni nodo invia dei beacon ad ogni nodo della rete e riceve beacons da tutti gli altri. Decide poi autonomamente se settare il proprio timer col valore ricevuto o se scartare il beacon perche' il valore del timetamp all'interno e' piu' vecchio del valore del proprio timer.
Il mantenimento della sincronizzazione e' dato da un algoritmo: ogni nodo mantiene un timer TSF in modulo 264 microsecondi e si aspetta di ricevere un beacon ad intervalli regolari (definiti come aBeaconPeriod, che e' un parametro del nodo). Un nodo che vuole inviare un beacon deve settare il valore del timestamp, che e' dato dalla somma tra il valore del TSF al tempo della trasmissione del primo bit del timestamp su PHY e dal tempo di ritardo per la trasmissione (passaggio dall'interfaccia MAC-PHY a PHY).
Acquisizione della sincronizzazione mediante scansione
Ogni stazione (o nodo) puo' operare attraverso due modalita' di scansione: la modalita' passiva o la modalita' attiva. In modalita' di scansione passiva la stazione sta in ascolto su tutti i canali e aspetta di ricevere dei beacon in cui il valore SSID sia uguale al valore SSID dell'ESS di cui la stazione vuole entrare a fare parte. Una volta ritornati questi frame, la stazione (attraverso opportune funzioni) entra a far parte di un BSS, acquisendo tutti i parametri del BSS (timer di sincronizzazione, parametri di PHY, BSSID, parametri di trasmissione dei beacon...).
La modalita' di scansione attiva invece si basa sullo scambio di frame di tipo Probe Request e Probe Response: praticamente una stazione invia una richiesta e si mette in ascolto di una risposta. Quando giunge il frame Probe Response contenente il SSID cercato dalla stazione ha poi inizio la sincronizzazione e da quel momento la stazione entra a far parte di un BSS. L'algoritmo di scansione e' descritto nel dettaglio nella sezione 11.1.3.2.2 (pag 127 di IEEE 802.11-1999).
Associazione e riassociazione di una stazione con un AP
L'associazione tra una stazione e un AP avviene in due fasi:
- autenticazione
- associazione
Una volta effettuata l'autenticazione su un AP, la stazione invia una richiesta di associazione all'AP e attende la risposta; in caso di risposta affermativa la stazione sara' fisicamente associata all'AP e potra' avviare la comunicazione, in caso contrario la stazione non si potra' associare. Analogamente quando una stazione vorra' riassociarsi ad un AP inviera' allo stesso una richiesta di riassociazione e attendera' la risposta dall'AP. Naturalmente, quando un AP riceve una richiesta di associazione controlla che la stazione che ha inviato tale richiesta sia autenticata presso di lui; in caso affermativo l'AP inviera' una risposta (positiva o negativa) alla stazione interessata.
Power Management
20061108-1512 Roma
Le stazione possono cambiare il proprio power management, informando
preventivamente l'AP al quale sono associate, accondando la richiesta di cambio
al campo Frame Control del frame inviato all'AP. L'AP deve tener traccia di
tutte le stazione che operano in modalita' power save in quanto la
trasmissione dei dati a tali stazioni deve avvenire in modo differente rispetto
alle stazioni che non operano in tale modalita'; infatti un AP non puo'
trasmettere i dati in maniera arbitraria alle stazioni in modalita' power
save ma deve bufferizzarli per poi trasmetterli in momenti precisi.
20061109-1424 SoujaK: Il pezzo seguente e' da chiarire
Tutte le stazioni che ricevono dati bufferizzati dall'AP sono riunite nel TIM
(Traffic Indication Map) il quale rappresenta un campo dei vari beacon
generati dall'AP stesso. Ogni stazione per sapere se i dati ricevuti sono stati
bufferizzati per lei deve ricevere e interpretare il TIM associato al beacon (
per fare cio' ogni stazione si mette peridicamente in ascolto di beacon, e
quindi in ascolto per ricevere eventuali TIM, secondo opportune funzioni). In un
BSS ogni stazione (in modalita' power save) per sapere se dei dati sono
stati correttamente bufferizzati invia un frame di tipo PS-Poll all'AP, il quale
rispondera' o inviando direttamente i dati bufferizzati o acknowledgiando la
richiesta e inviando i dati successivamente.
Ogni stazione puo' lavorare in due modalita':
- awake
- doze
Nella modalita' awake la stazione lavora a piena potenza e puo' ricevere frame in qualsiasi momento; e' detta anche modalita' attiva. Nella modalita' doze la stazione lavora in power save e riceve frame attraverso il meccanismo sopra descritto. Naturalmente le stazioni possono passare da una modalita' all'altra, ma possono farlo solo alla fine di uno scambio di dati informando l'AP del cambio.
Power Management in un IBSS
In un IBSS le stazioni devono essere tutte sincronizzate al fine di poter trasmettere i dati; quando i dati sono bufferizzati e pronti per essere spediti ad una stazione in power save ci deve essere un annuncio tra tutte le stazioni affinche' l'operazione si possa effettuare. Tale annuncio e' dato tramite l'invio di un ATIM (Ad hoc TIM) quando tutte le stazioni dell' IBSS sono in modalita' awake. Quando i dati devono essere trasmessi la stazione trasmittente invia prima un frame ATIM nel ATIM Window (che e' un periodo nel quale vengono inviati solo frame ATIM o beacon) e aspetta l'ACK di quel frame; se cio' non avviene la stazione attiva la procedura di ritrasmissione dell'ATIM. Una stazione che acknowledgi l'ATIM durante l'ATIM Window deve rimanere nella modalita' awake e aspettare l'annuncio. Una volta che avviane l'ACK ed e' passato l'ATIM Window, la stazione ricevente passa in modalita' power save e puo' ricevere i dati.