WiFiLab nesdílí se pásmo, sdílí se čas

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

Roaming: díra, kterou robot přejede

Jedna buňka nepokryje halu. Robot tedy během jízdy přechází mezi přístupovými body — a ten přechod není plynulý. Je to výpadek, jehož délku určuje konfigurace a který se u běžného nastavení počítá na stovky milisekund.

hledáníověřeníDHCPzmeškaných cyklů smyčky: 300 ms50 ms100 ms150 ms200 ms250 ms300 mshledání: 250 msověření: 8 mscelkem: 298 msBez 802.11r se ověřuje a žádá o adresu znovu.Pro robota je to díra, kterou žádná regulace nepřejde.
  1. RSSI ↓

    Robot odjíždí od přístupového bodu. Rychlost klesá po schodech (ModLab), ale spojení pořád je.

  2. sken = kanály × prodleva

    Pod prahem se robot rozhodne přepojit. Musí ale zjistit kam — a to znamená projít kanály a na každém chvíli poslouchat. Tohle je ta drahá část.

  3. ověření + DHCP

    Nový přístupový bod si robota musí ověřit. S běžným WPA2 je to pár rámců; s podnikovým 802.1X to jsou stovky milisekund.

  4. 298 ms = 30 cyklů

    Po celou tu dobu se nepřenese ani jeden rámec. Regulační smyčka o ten čas přijde celý.

Čtyři kroky na časové ose. Ve druhém je vidět, kde se čas ztrácí — a jezdcem se dá zapnout 802.11r a porovnat. Červené čárky dole jsou zmeškané cykly smyčky.

Z čeho se ten výpadek skládá

fázebez 802.11rs 802.11r
rozhodnutí přepojitdesítky ms (podle prahu)totéž
prohledání kanálů100–500 mstotéž, pokud se nescanuje chytře
ověření (WPA2-PSK)5–15 ms2–4 ms
ověření (802.1X/EAP)200–800 ms2–4 ms
DHCP20–100 ms0 (adresa se drží)

Sken je ta drahá část a je to fyzika, ne software. Aby stanice zjistila, co je na kanálu 44, musí na něj přeladit a chvíli poslouchat — a po tu dobu neslyší svůj vlastní. Dvacet pět kanálů po dvaceti milisekundách je půl sekundy, a jediné, co s tím jde dělat, je nescanovat všechno.

Co ten výpadek udělá se smyčkou

Smyčka na 100 Hz přijde při 300ms roamingu o třicet cyklů. To není jitter, to je výpadek řízení. Robot musí mít pro tuhle dobu chování definované předem:

  • dojede na poslední známý cíl a zastaví (nejběžnější),
  • zastaví okamžitě (bezpečné, ale při každém roamingu to trhne),
  • pokračuje po naplánované trajektorii (nejlepší, pokud ji celou zná).

Ať je to cokoli, musí to být rozhodnuto předem — a to je věc RoboLinkLabu.

Jak to zkrátit

  1. 802.11r (rychlý přechod). Klíče se předají dopředu, takže se ověřování i DHCP přeskočí. Jediné opatření, které srazí desítky až stovky milisekund na jednotky.
  2. 802.11k (sousedské zprávy). Přístupový bod řekne stanici, které kanály stojí za prohledání — ze dvaceti pěti se stanou tři.
  3. Práh přepojení výš. Přepojit dřív, dokud je starý spoj ještě dobrý, je lepší než držet se ho do posledního decibelu. Standardně bývá práh moc nízko.
  4. Menší buňky s větším překryvem — robot má vždycky kam přejít.

Past, která se v halách opakuje: „sticky client“. Stanice se drží starého přístupového bodu, dokud signál neklesne k nule, protože její práh je nastavený na −80 dBm. Mezitím dávno spadla na nejnižší rychlost — a podle šesté kapitoly tím sráží celou buňku. Robot, který se drží špatného přístupového bodu, škodí víc než robot, který se přepojuje.