By now we’ve all heard of the coming flood of network aware devices collectively referred to as the “Internet of Things”. While the term encompasses a wide variety of use cases that are not all clearly defined, we can come up with some rudimentary expectations on how this influx of connections will affect networks. For the home gateway, the most significant impact is how to handle an order of magnitude more connections than most are traditionally designed for - how well does it scale?
CDRouter’s main feature for testing a gateway’s IoT scaling is in its ability to simulate multiple LAN hosts. Here’s three areas where scaling could make or break your DUT.
Wifi AP scalability
The most common connection in IoT will likely be one or more forms of Wifi. CDRouter’s ability to simulate multiple Wifi stations lets you stress the DUT’s capability to handle an increasing number of Wifi clients as they come online. This feature can be combined with a number of CDRouter’s scaling tests, including DHCP, TCP, IPv6, etc. to see at what point your DUT can no longer handle new Wifi connections, or handle them well.
This is one of the common problems we see in our own lab. Often, a home gateway (even a robust one) will begin to either refuse or drop Wifi clients after as few as 10 clients! Obviously, this isn’t good if a user’s home network is now going to contain tens or hundreds of Wifi connections.
DHCP server and connection scalability
Even in a world moving towards IPv6, especially in the LAN, DHCP still remains the most common way to bring a host online. CDRouter supports the ability to activate many hosts, each of which will go through the process of requesting an address from the DUT’s DHCP server. However, just as a DUT’s Wifi AP can have arbitrary or unusual limitations on the number of allowed clients, so can a DUT’s ability to support devices that connect via DHCP. CDRouter’s scaling test module begins with testing this basic feature to ensure that there are no such limitations or problems. This kind of testing will work for both DHCP and DHCPv6.
When simulating IoT hosts, it is also important to measure the DUT’s ability to handle a very large number of connections to the Internet or to other devices on the LAN. The scaling test module will also stress the number of simultaneous TCP connections a gateway can handle, which can become an exponential problem with a large number of connected devices.
Scaling in IPv6
IPv6 could be by far the biggest enablers of small connected devices on the LAN, but with it’s very, very large address size it can be a demanding environment for a home gateway to handle. As such, it is important to ensure that the same types of scaling problems one would check for on IPv4 can also be checked on IPv6.
CDRouter’s IPv6 add-on includes scaling modules similar to those done in the scaling.tcl module for DHCP and IPv4 connections. This includes scaling for hosts connecting via both IPv6 autoconf and DHCPv6, as well as TCP scaling and UDP scaling over IPv6. Since the number of possible clients is very large, it’s important to make liberal use of the ipv6MaxLanClients testvar to fine tune your particular use of the scaling tests.
Testing IoT beyond scaling
Testing a home gateway for IoT readiness does go beyond scaling, however. Even though bandwidth usage of IoT devices may be low, fundamental protcol interactions passing over or handled by the gateway will mean the difference between services that work and services that don’t. It’s important to run a full feature set of tests on a gateway, excercising thing such as NAT and DNS, which are very often the cause of interruption for all manner of applications. The IoT world is going to tax all aspects of the home network in ways many CPE are not prepared for.