简体   繁体   中英

Latency / Ping test from Browser

I want to check ping from Browser to a Server.

Ping/Latency should not be from Server but from Client's Machine.

I have seen sites like Pingtest.net so it is possible to do from Browser.

Any language will do.

The server ping can also be tested by an UDP packet other than normal shell command ping.

How should i proceed. ?

Try using XMLHTTPRequest() for javascript. The objective is to make about 10 objects and place them in an array. Then use onreadystatechange in each and every one of them. For the function inside it, use the status 1 to start the timer and status 3 to finish the timer. Use the object Date() to get the times.

That's the whole idea behind solving that. if you need more just comment my answer and I'll try to make it more complete and "spoily".


Assuming you know how to program in javascript, this is one idea for a possible solution: You first create an array where you'll insert in each position an instance of XMLHTTPRequest(). Then, you'll create a function that returns a function where:
The outside function will save some sort of identification towards the "current" request, including a reference to the instance. This function is supposed to be executed right away.
The inner function is supposed to be used to execute the state and know when to "start" the timer and when to "stop" the timer. Take care of opening the connect and sending the headers to all of 'em, wait to get the answer and finally register the times you got. Do some math and you get the ping.

That's the whole idea behind this. Good luck!

<script type="text/javascript">
try {
  netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
} catch (e) {
  alert("Permission UniversalBrowserRead denied.");
}

var req = new XMLHttpRequest();
    req.open('GET', 'http://www.mozilla.org/', false);.
    req.send();
    if(req.status == 200) {
        alert(req.responseText);
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM