Request for network diagnostic API‏

Hi all:



Recently we are digging into some performance issue related to our users' network, then we found we lack some methods to get required information about their network stats.




After some researches, we found a list of most frequently encountered issues:




1. User's IP, when mapped to our IP->ISP library, got a wrong result, so we respond the user with a wrong server, which dramatically slows down the transfer speed.

2. User has his own network broken, but didn't know where the issue is.

3. User couldn't even give us a simple network connectivity information so we were unable to confirm the problem.




As of above 3 issues, we think we should request some network diagnostic methods to help identify theses issues, including:




1. A `nslookup` method which gives the DNS lookup result, so we could help dianose whether our user connects the fastest server.

2. A `traceroute` method which help us discover which section was out of work we we could, for example, contact out ISP to quickly fix it.

3. A `ping` method which simply shows the connectivity between user's device and our server, and speed sometimes.




With these API we are quite sure we could identify most network issues quickly and easily, but without them, we have to send user a client application which collects all these information and then send to our server, however this is not a best choice, since user may suspect that we were giving some malware (e.g. keyboard monitoring app).




And also, with these API, if users could allow us to collect network informations, we could continuously research these data, finding where / when we do not give a best connectivity, and then improve to render a better service to our users.




We know these API are very privacy-sensitive, so it should **display a confirm panel** to user first just like the Geolocation API, telling user which website it willl be testing.



Gray Zhang
-------------
电子邮件:otakustay@live.com
微博:@otakustay
博客:http://otakustay.com

Received on Tuesday, 13 November 2012 14:32:32 UTC