Challenge Overview
Topcoder has a customer who has over 40k retail stores throughout the US. The sales agents in these stores use standard Ipads with both WiFi and cellular as their Point of Sale system. Occasionally the sales agents will experience slowness in their custom POS apps. In order to minimize this occurrence, the network team would like to proactively monitor the latency between the retail stores and the core of their network and they need your help. ICMP echo requests are blocked by their firewalls so you will need to find another active alternative or a passive one.
For this challenge, you will propose and demonstrate a solution where an iOS device can run an agent that either actively monitors network latency like TTCP or some other client-server approach. This approach may be an open-source library/package or a custom approach that cleverly timestamps sample payload. The only restriction are: (1) it can not use ICMP, (2) it should be able to scale to 40k devices. (3) open source is preferable but COTS products like New Relic would be considered as a last resort. (4) The agent needs to run all the time without the user needed to start it.
The second alternative would be to passively measure both WiFi and Cellular signal strength. We are under the impression that this might not be possible from an IOS app but we would like to explore what our options are.
For both active and passive approaches, you may assume that you can deploy a server in the core of the network to collect the statistics.
Final Submission Guidelines
- A well-formatted documentation (in .md/.pdf/.docx, at least 2 pages long) highlighting your research on the above.
- Providing a working sample with your approach would definitely help
- Feel free to provide a video walking through your approach/ working sample