How many times have you received that call or even made the statement that “The Internet is Down?” Or perhaps the “Internet is Slow?” Obviously these statements are very rarely true. As a whole, the Internet is functional and it is FAST. However these statements seem true from the perspective of the individual making them. My frustration is that we never have visibility into the data necessary to assess the health of the Internet from a relevant, holistic perspective over time. As a result, consumers and providers have a limited view of problems that randomly present in this manner.
When I think about the impact Internet hiccups have on me, I realize that I could do things much differently if it delivered consistent reliability. Even if it wasn’t as reliable as infrastructures like the PSTN, having some semblance of trust in knowing when and how my connections might fail or degrade would help. The resulting improvements would allow me to use more robust tools like video and voice over the Internet and put my cell phone away. I can’t tell you how many times I’ve spent hours chasing ghosts. These transient issues tend to get resolved when they worsens and the root cause is more easily identifiable. Increasing the trust we have in our services would materially change the way in which we use them.
I know I need to stop the rant and solve the problem. Unfortunately, the problem is complex and the solution is quite involved. So what I thought I would do here is to outline a solution that I’d like to see and solicit feedback from others. Maybe something exists that I’m unaware of. Alternatively, maybe there’s some tools that can be ‘glued’ together in a way that allows us to achieve the objective that I think we need to achieve.
Framework for Internet Health Statistics
What I would like to see is a framework established for obtaining analytics about Internet health. The first step in making things better is gathering some useful metrics that are actionable and can be shared with proper anonymization/obfuscation of the data. The Internet is a global thing and we need to look at it globally. So there is a portion of the solution that requires a real commitment of resources.
Some of the thoughts I have had are as follows:
- High Level Architecture should be client (and/or agent), server, and reporting
- Client agent
- Initiating Active Probes toward server(s)
- Cross Platform–portable to any typical endpoint operating systems
- Modular component that could be added to networking gear
- Optional Passive monitoring for periodic upstream reporting to server (latency measurements from 3-way handshakes, reliability assessments by looking at TCP retransmits)
- Server Component
- Distributed Geographically across ASN’s
- Backward Compatibility with other existing probes
- Gathers and Logs information relevant to the measurements being taken
- Telemetry (directionally independent when possible)
- Loss/Jitter (gathered with some connection oriented or predictably random small packets)
- BW Available
- Path MTU/MSS and behavior when exceeded
- Optional – Other In-Path Metrics
- Port/Protocols Blocked
- Proxies Inserted
- L3 Hops
- Establish health over time and at points in time
- Define health by the required use case(s)
- Establish visibility into hotspots (ASNxx <> ASNyy, Geography)
- Natural RBAC
- User of x device can see stats of x device regardless of where he or she roams
- ISP/Home Owner/Hotel can see health stats of downstream clients
- Comparisons beyond normal visibility should remove any information that would prevent individuals and entities from participating in such a solution
I think the Internet is a wonderful tool and is the plumbing for our world today. However, I think it could be so much more. I know I’m not the only person that sees these issues around brownouts and the challenges it creates. So my question to PacketU readers is how could we come together to solve these issues in a way that benefits everyone?
I’d love to hear from you, so share your thoughts by commenting below.
Disclaimer: This article includes the independent thoughts, opinions, commentary or technical detail of Paul Stewart. This
may or may does not reflect the position of past, present or future employers.