Testing a home router

Ostinato Team bio photo By Ostinato Team

Home Router

A typical home router consists of a bunch of wired and wireless ports towards the LAN and one port towards the WAN connected to the service provider.

Home Router

The LAN ports are typically 100/1000M Ethernet and 802.11 Wireless.

The WAN port depends on the last mile technology used by the service provider e.g. DSL, PON or Fibre and sometimes even Ethernet.

Internally the home router consists largely of two major forwarding blocks - a Bridge to forward traffic between the LAN devices and a NAT to exchange traffic from the LAN devices and the Internet.

The LAN side bridge also has a companion DHCP server to allocate IP addresses to the devices connected to the LAN ports.

The WAN side has a companion DHCP client to request and receive an IP address from the service provider.

Testing the home router

To verify the functionality of the router, you can use the following test topology with Ostinato running on a PC or server acting as the traffic tester.

Test Topology

If the traffic tester supports only Ethernet and WiFi ports, you will need to connect suitable equipment like DSLAM or OLT/ONU between the WAN port and the traffic tester Ethernet port to convert the WAN Traffic to Ethernet.

IP address configuration

By default, the home router will use DHCP to acquire an IP address from the service provider and assign local IP addresses to the LAN ports.

However, Ostinato currently does not support DHCP and you will need to use the Ostinato device emulation feature to manually configure the IP addresses of the devices manually.

A sample configuration is shown below.

Static IP Address Assignment

Testing the bridge

Generate traffic from one (or more) LAN ports towards the other LAN ports and verify that the traffic is correctly forwarded.

Some possible test cases are

  • Verify two hosts on the LAN ports are able to ping each other
  • Verify Unicast traffic between two hosts at various rates and packet sizes
  • Verify broadcast traffic is forwarded to all other LAN ports
  • Verify unknown unicast traffic is flooded to all other LAN ports
  • Verify traffic between wired and wireless ports
  • Verify both IPv4 and IPv6 traffic
  • Verify latency and jitter between LAN ports is insignificant

For all bridge tests, verify that the trafic is NOT forwarded to the WAN port.

Testing the NAT

If you are new to NAT, you can read more about it in NAT Overview and Fundamentals.

Generate traffic from one of the LAN ports towards the WAN port and verify that the traffic is correctly forwarded to the Internet.

Some possible test cases are

  • Use ping to verify a host on the LAN port can reach a public IP address on the Internet
  • Use a traffic analyzer like Wireshark to verify that NAT changes the IP address and L4 port numbers
  • Verify traffic at various rates and packet sizes
  • Verify both IPv4 and IPv6 traffic
  • Verify latency and jitter between WAN and LAN port is within acceptable limits

For all NAT tests, verify that the incoming traffic from the WAN port is correctly forwarded to only one LAN port.

Testing security features

If the router supports security features like firewall, you can use Ostinato to generate traffic that should be blocked by the firewall and verify that the firewall correctly blocks (or allows) the traffic.

Testing the Quality of Service (QOS)

To verify the Quality of Service (QOS) functionality of the router, you can use Ostinato to generate traffic with different DSCP (DiffServ Code Point) values for IPv4 and Traffic Class values for IPv6. This allows you to test how the router prioritizes traffic based on these values. For a detailed guide on how to verify network QOS using Ostinato, refer to How to Verify Network QOS Using Ostinato.

Are there other home router features that you’d like to test and need help with? Reach out to us!