In questa serie di articoli approfondisco il tema del roaming per cercare di capire quali siano le sue fasi, che tipologie di roaming esistono, i suoi legami con la sicurezza e come configurare i parametri che ne influiscono l’efficienza con i prodotti di Extreme Networks.
Prima di tutto per poter fare roaming un client ha bisogno di scoprire quali AP siano nelle vicinanze e stilare una lista di essi che tiene sempre aggiornata. I device wifi “scoprono” le reti wireless presenti nelle vicinanze tramite l’active e il passive scanning ovvero ascoltando i pacchetti beacon e attraverso il meccanismo di probe request e probe response.
Per il roaming, è l’active scanning quello che ricopre il ruolo più importante e che andremo ad analizzare.
L’active scanning viene eseguito con i frame di management probe request inviati periodicamente sui i diversi canali del wifi, gli AP che ricevono una probe request, rispondo con una probe response .
Nell’appunto successivo monitoriamo lo scambio di frame tra il pc e il generico AP:
Nel caso che ci interessa analizzare esisteranno divervi AP nell’area su canali diversi quindi la situazione può essere vista come nell’appunto successivo.
Come si vede in figura nell’area ci sono 3 access point sui canali a 5 GHZ 36,40, 48 e tutti rispondono alle probe request quindi il device è in grado di stilare una tabella simile a questa:
La tabella sarà utile al device per prendere le decisioni necessarie durante il roaming. (Stiamo analizzando uno scenario semplificato dove solo la potenza verrà considerata per le scelte di roaming e non vi siano protocolli di “aiuto” al roaming come 802.11k o 802.11v. )
Per capire ancora meglio è interessante vedere la situazione anche nel tempo :
Nel grafico di sopra sull’asse delle x è espresso il tempo e sull’asse delle y il canale . In questo esempio semplificato si ipotizza che il pc sia collegato sul canale 44 , al tempo t1 invia una probe request sul canale 36 e riceve una risposta al tempo t2 , al tempo t3 invia una probe request sul canale 40 e riceve una risposta al tempo t4 infine al tempo t5 invia una probe request sul canale 48 e riceve una risposta al tempo t6.
La questione è ora capire quando il device decide di fare roaming ?
La risposta è che dipende dai driver del dispositivo, prendiamo ad esempio un galaxy dove l’algoritmo è ben spiegato a questo link: https://docs.samsungknox.com/admin/knox-platform-for-enterprise/kbas/kba-115013403768.htm
Come si nota non solo il segnale è preso in considerazione e il “roaming scan” ovvero l’invio di probe request deve dare come risultato un valore di potenza ricevuta della probe response 10 dbm più alto rispetto all’AP a cui si è connessi, solo in quel caso si inizierà il processo di roaming.
Un altro aspetto da prendere in considerazione quando si analizza il roaming è che quando si è in fase di probing ( invio e ricezione di probe request e probe response) non si trasmettono più dati perché la radio è off-channel rispetto all’ap a cui si è collegati.Più canali vengono interrogati per trovare un ap con una potenza migliore ,più si perde tempo, questo aspetto è fondamentale quando il servizio che si vuole garantire sul WIFI è il voip. Questo problema e l’approccio alla soluzione da parte di samsung è ben spiegato in queste righe:
Un altro aspetto èche nel wifi nella banda dei 5 ghz ci sono dei canali denominati DFS dove il wifi può trasmettere seguendo regole diverse rispetto ai normali canali perché condivide quei canali con i radar. Ecco la lista :
L’effetto è che se si utilizzano i canali dfs , senza le dovute precauzione , che vedremo nei prossimi articoli, il roaming è in generale più lento perché un client è autorizzato a trasmettere solo se sente una trasmissione su quel canale , questo delay rende più lento sia la fase di probing sia il roaming nel suo insieme.
Nel prossimo articolo descriverò invece le tipologie di roaming tra due AP .
Prima di lasciarci un breve recap dei punti fondamentali descritti in questo articolo :
- La prima fase del roaming è il probing che serve a trovare nelle vicinanze gli AP a cui connetersi
- La fase di probing genera una tabella di AP, il miglior candidato non è solo quello la cui potenza è la più alta ma vengono esaminati anche altri parametri. Quindi dipende dai driver del device.
- La fase di probing pone il device off-channel rispetto all’AP a cui si è connessi quindi più si è veloci a trovare il nuovo AP a cui connettersi , più si è efficienti nel roaming.
Riferimenti
- CWNA : Certified Wireless Network Administrator Study Guide Sybex
- Divergent Dynamics Course : CWNA by devin akin
- Peter MacKenzie | Analysing Roaming Protocols
- https://mrncciew.com/ blog
- CWSP Official Study Guide