Nightly usage reports from an internet provider's routers

DesignEasy25 min

Your task

Your company is an internet provider with 3 million home customers. Each home has a router you supply, running your own software. At 00:00 every night, each router sends a report on the previous day to your collector. The report holds data used per hour, Wi-Fi signal strength and restarts, about 20 KB in all. A router keeps its last 7 reports.

The collector is 4 servers behind a load balancer, and together they handle about 4,000 reports a second. A router retries a failed send every 60 seconds, up to 10 times, and then drops the report. Last night about 700,000 reports were dropped.

Customers see their usage in their account from 06:00, so reports from routers that are online at 00:00 must arrive by then. A router that is off at 00:00 sends its report when it is back on. You can update the software on every router within 2 days.

When does each router send its report, and what does it do when a send fails?

It covers

  • Usage reports
  • Router fleet
  • Nightly peak