Captive Portal Testing

A popular feature of the LANforge WiFIRE feature set is captive portal testing portal-bot. If you’re considering doing captive portal testing, the first thing to know is that you are not going to be automating a bunch of web browsers (that would be madness). You will be writing a perl script. More specifically, a perl .pm extension to our script.

Portal testing can be complex because it normally involves re-creating whatever JSON/AJAX/REST call chain the web pages does with a perl script. This process looks like:

  1. Establish laptop with serial connection to LANforge system and with an Ethernet cable
  2. VNC to LANforge and change default gateway and use browser to document login HTTP process
  3. Write a portal-bot extension that mimics that behavior
  4. Incorporate a logout mechanism

It is very useful (and a requirement for long-running capacity testing) to have an API call to the captive portal controller that will log out a session. Otherwise you cannot repeat the test for each station without manually intervening at the captive portal controller to log out one/some/all logged in stations. This logout mechanism could be web-based or could be ssh based, so long as the mechanism can be unattended.

Please review some of our existing portal-testing documentation:

Adequate Power

Getting the wave-2 chipset working over the air has been surprisingly challenging.  Cabled transmission (SMA cables) to an AP was working mildly well,  and over the air (OTA) transmission was just not working at all.

We decided to investigate the power requirements of the chip. We were told that power draw would be up to 14 watts. We’ve seen PCIe cards draw 12W from the PCIe bus before. This radio has power connector points on the board for an extra 5v lead.

To our surprise, hooking up a 5V lead from a floppy drive power header on the motherboard was inadequate. So we attached multi-meters and saw that it was pulling the 5v line down to 4.22V and drawing 2.5amps. Holy cow!

We decided we needed power off of the 12V line. Soldering up a 15W linear regulator, we got a much steadier 5V supply to the card. It worked!

Multi-meters connected to measure current draw and voltage levels
Heat sink on the DC regulator

This time,  we were able to connect a station to the AP and start a 850Mbps download without any trouble. Whew!