Link to home
Start Free TrialLog in
Avatar of projects
projects

asked on

Speed testing

An interesting question came up which I'd like to also ask here.
Assuming you noticed something with your connection so wanted to go do a speed test, when is the most interesting or most efficient time if you will, to do that speed test?

Would it be when your latency changes a little or a lot? Say you know your average is between 20ms and 50ms for example so you want to pick a point that seems unreasonable like over 100ms or 300ms or 500ms for example. Again, this later decided upon by checking to get a reference point to start with.

Would it be if hops keep changing while you are watching them from the command line for example?

Obviously, both combined might be a good answer but are there some other things you might want to look for before doing that test?
Avatar of CompProbSolv
CompProbSolv
Flag of United States of America image

It all depends on what questions you are trying to answer with your tests.  "Interesting or efficient" are too broad of terms here.

If it's "what is the maximum speed I can get to the internet?" then you would test to as close of a device as you can (on the internet) at a time when you can expect internet usage to be low.

If it's "how reliable is my connection?" then you would test many times over the course of several days (or longer).

I could go on, but the key here is to identify what you are trying to determine.
The general answer is 'it depends' since everything between you and the destination can change.  However, seeing the 'hops' changing in more or less real time is odd and would indicate to me a routing 'condition' or problem in the networks between you and your destination.  That is generally out of your control.  Not even your ISP can fix that.
Avatar of projects
projects

ASKER

Hmm, I see I didn't include enough details in my question :).

@Dave
First, in terms of hops, yes, it's out of my control but the question I'm asking is if hops changing could be a good sign for running a speed test. Indeed, hops can change for lots of reasons but the fact that they are, could that be one good reason to run a test if one is seeing say intermittent connectivity.

@CompProbSolv
>It all depends on what questions you are trying to answer with your tests.  "Interesting
>or efficient" are too broad of terms here.

Well, that is the point actually. It is a broad question because speed tests are usually run simply when there are connectivity issues. I'm asking network experts to chime in and share what would cause them to run such a test.

>If it's "what is the maximum speed I can get to the internet?" then you would test to as
>close of a device as you can (on the internet) at a time when you can expect internet
>usage to be low.

Nah, that would be kind of an optimized test. Testing when things are good and to the closest location? What for?

I'm asking when a test should be run, based on network characteristics such as latency, hops issues and? That is my question. So, don't give me basic networking replies, it's not what I am asking about :).

I am asking other network guys what conditions might warrant a speed test, for what ever such a test is worth of course.

>If it's "how reliable is my connection?" then you would test many times over the course
>of several days (or longer).

I don't agree but that could be the basis of another question. Let's stick to when you might want to run one, it's all I am asking about.
latency and speed are two entirely different variables both relate to your expected experience

Consider the analogy of a car travelling at 100 mph from A to B. This might sound fast but gives no indication of whether the car has driven the most direct route; if direct, fine; if from A to C to D to B the journey is going to take longer. So with network traffic; you might have a fast Internet connection, but if the route between the user’s computer and the server being accessed is indirect, response times will be slower.

use your other tools i.e. tracert,ping in addition to speedtest
I still don't think that you have made your question clear.

You said "Let's stick to when you might want to run one, it's all I'm asking about".  I'll presume that this is your question.

There are a number of cases when I might want to run a speed test.  For example, a client will ask if his internet connection is working properly.  I'll run a speed test (latency, upload, and download speeds) to the closest host I can. Though you discounted that as an "optimized test", that may be exactly what I want.  If the client is paying for 10M speeds and is getting 2M speeds under optimized conditions, I know that there is a basic, consistent problem.

A client may say that sometimes the internet is slow or isn't working at all.  Then I'll want to do tests over a period of time and destinations and log the results.  The key is to try to characterize the problem (this is often the key to troubleshooting most technical things).

A common comment that I'll get is that the internet is "not working" frequently.  I'll set up a simple CMD file to have the client's computer ping his router, his ISP, and google.com.  The first tells me if basic networking is functioning on his computer, the second tells me if he's connecting to the internet, the third tells me if DNS is working.  These really aren't "speed tests" but tests of basic connectivity.  Intermittent connectivity problems can appear as speed issues.

You got a good answer about "hop issues".  I would suggest that you likely only know that there are "hop issues" if you have seen some other problem and then checked on the number of hops to a particular destination.  I'd focus on the original problem and how it should be approached.
I would consider a varying number of hops as a condition to be watched but it is not directly an indicator of speed problems although it might indicate intermittent connectivity.  

And you do need to run multiple tests until you have developed a baseline for what to expect.  I haven't seen them recently but I have run into web servers that were connected thru dialup modems or low speed DSL.  When you have a 10Mbps or a 100Mbps connection, those can seem ridiculously slow.

I have two different ISPs and I know what to expect from them.  The only 'speed' problems I've had were 'cured' by rebooting the machine.  It seemed that the networking software had developed a problem.  I also have one NIC that doesn't like being disconnected.  It has required a reboot most of the time but the last time a 'repair' made it function again.

The second most likely 'cure' is power cycling the modem.  AC power sags / partial brownouts can make my modems act squirrely.
@David Johnson, CD, MVP
>use your other tools i.e. tracert,ping in addition to speedtest

Hmm, let me try to explain this in another way. I'm looking for thoughts from network experts, people who actually work in networking and have to troubleshoot problems. I'm asking what you would want/need in order to determine there is a potential throughput problem.
 
Let's consider a T1 circuit and 'speed' simply meaning of course throughput, how much data can we actually move knowing that a T1 can move up to 1.544Mbps.

My question is what conditions would warrant checking the throughput of a circuit. Obviously, if data is barely moving, humans can notice it or applications aren't running well and we know there is a problem.

Typically, the first thing we'll do is to check the hops to see if one is having a problem. Then we'll ping some known target to see if there is a latency issue. I prefer to use mtr because we can watch pings and hops in real time.

Using those two metrics, we can usually see where there might be a problem but my question is, what else could be done to determine that there is in fact and specifically a throughput issue.
We also know that if the path between A and B don't seem to be having any issues, then the next cause is probably at the target end, the final network or server that we are trying to reach but lets say those don't seem to be having problems either yet things are obviously running slow, sluggish, we can clearly tell there is some kind of slowdown.

Are there any other metrics we can use? I'm not asking for the basic things, I'm asking what else a top network pro would look at or into to determine a throughput issue at this point.
@CompProbSolv

>There are a number of cases when I might want to run a speed test.  For example, a client
>will ask if his internet connection is working properly.  I'll run a speed test (latency, upload,
>and download speeds) to the closest host I can. Though you discounted that as an
>"optimized test", that may be exactly what I want.  If the client is paying for 10M speeds
>and is getting 2M speeds under optimized conditions, I know that there is a basic,
>consistent problem.

What I mean by discounting that is that I'm not talking about using commercial speed test sites but networking tools or testing between networks that you own. Most admins have networks in different regions, some dedicated circuits and most that run over the Internet which you cannot control the hops of.

As I said, I should have added more information in my question :).
I did add much more detail however in my previous reply to @David Johnson so am hoping this will help.
I apologize to everyone in that I too often write my questions as if we are having a face to face conversation. No one here knows my level of skill or how I communicate. I am the type that prefers face to face and not typing every little thing out without inflections.

Anyhow, I'm trying to learn to use this site, to this day and appreciate the help.
@Dave Baldwin

>I would consider a varying number of hops as a condition to be watched but it is not
>directly an indicator of speed problems although it might indicate intermittent
>connectivity.  

Correct and that was the point of my question, asking what others might look for when the basics are being done and you cannot find the problem.

Application/server throughput are issues but if we take those out of the loop, then other than hops and pings/latency, what else could we check for.

>And you do need to run multiple tests until you have developed a baseline for
>what to expect.

Correct so lets assume this was done. I thought I mentioned that we would have some kind of baseline, but maybe I didn't.

>It seemed that the networking software had developed a problem.  I also have one NIC
>that doesn't like being disconnected.  It has required a reboot most of the time but the
>last time a 'repair' made it function again.

BTW, do you mean Linux or Windows? I've found something odd in win8 sometimes, not really sure how to characterize it other than the NIC seems to 'chatter'. Since it's a vm and all of the other vms are working fine, I know it's not a physical NIC issue but maybe a vmware driver one or something.

>The second most likely 'cure' is power cycling the modem.  AC power sags / partial >brownouts can make my modems act squirrely.

Certainly, hardware, cabling and a ton of other things could come into play but I'm asking only about networking, the tools, results we'd want to see in order to consider we need to test throughput next.
I'm referring to Windows.  I don't remember my Linux boxes having network problems (other than me figuring out permissions!).  Don't discount modems or even routers or switches, they are right in the middle of your network and they can exhibit very odd problems.  I had one instance where a router I was using would hang for a few minutes when trying make certain connections.  It never happened to me so someone else had to figure that one out.  

And older routers are typically slower and handle fewer connections.  Routers, wireless routers, and switches actually have to store a lot of info to work properly.  Early routers could only handle as few as 200 connections whereas the newer ones handle up to 45,000 connections.  This chart appears to be consumer routers but it can give you an indication.  http://www.smallnetbuilder.com/tools/charts/router/bar/77-max-simul-conn
@Dave, I'm not discounting hardware but am asking specifically for thoughts only on network protocols. Again, not hardware but networking knowledge.

So, back to the main question.

I am asking network experts to share with me what other methods you might use to determine that there is in fact a throughput issue.
What conditions after running what tests might make you think there is a throughput issue.

Nothing else. I'm not asking about basic networking, I'm asking from your skill level, what would make you feel there is a throughput problem, what tests would you run, what results would you be seeing that would lead you to that conclusion.
throughput is combination of latency and speed.  When one is dealing outside of things you can control is where service level agreements come into play
Again, you're talking basics. I'm not asking about these things, I know and understand how these things work and that there are limitations when you get onto the Internet.

I've made my question very clear and specific at this point :).
What is the perceived problem that you are trying to solve
I've explained it as clearly as I possibly can. There is no other way to explain it anymore.
I don't think the question has been posted clearly enough.  The best I'm finding it:
"So, back to the main question.

I am asking network experts to share with me what other methods you might use to determine that there is in fact a throughput issue.
What conditions after running what tests might make you think there is a throughput issue. "

To determine that there is in fact a throughput issue (if you are talking strictly about the network communication and not what happens when it gets to the end device) then I would suggest two different tests: continuous ping test to test for latency issues and a transfer of a large file (both directions) while measuring the communication speed (and overall average speed).

The condition for which I'd watch on the ping test are a significant number of results that are significantly slower than the baseline.  An occasional slow results (or dropped packet) is not unreasonable when on the public internet.  (You are talking about the public internet, aren't you?)

The condition for which I'd watch on the file transfer test is consistency of speed and speed that is close to the rated speed of your connection to the internet.

You mentioned a T-1 line as an example.  If you are talking about a dedicated T-1, I'd expect very consistent results between you and your ISP.  When you start talking about hops I've got to assume that you are talking about reaching some device on the internet further away from your default gateway.

"There is no other way to explain it anymore".  Of course there is!

For example:
"When accessing xyz.com from my Window 10 workstation I notice that the site often responds very quickly and other times is slow.  How would you recommend that I troubleshoot this?"
or:
"I have an application server installed on the internet that sends a lot of data back and forth with the client.  I notice that sometimes the data takes much longer to arrive than others.  How do I confirm that this is a networking issue (as I suspect) and identify the source of the problem?"

The question you seem to have posted is:
"What tests would you run and what would you look for to confirm that I have a (undefined) throughput problem between two unknown devices over which I may or may not have any control.  The devices may be on the same network over which I may or may not have control or may be on the internet somewhere?"

I find that a lot of troubleshooting is done by properly nailing down the question.  Quite often the answer is easy once you have a clear and accurate question.
I think my question is completely clear but readers keep expanding beyond what I'm asking. I am not asking for basic network troubleshooting which is what you are all posting.

Re-read my later explanations, it's pretty clear really. There is no other way to ask this at this point.
ASKER CERTIFIED SOLUTION
Avatar of David Johnson, CD
David Johnson, CD
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
If you think that your question is "completely clear" then please restate it thoroughly from scratch.  That should be easy.
@CompProbSolv
Did that already, #a41736535. Can't make it much simpler.
throughput is a combination of speed of data to the network card + available bandwidth combined with network latency + receivers available bandwidth/latency + their write speed.

With tcp connections any latency in receiving acknowledgments of packets will cause the throughput to decrease. The same will occur if there is any congestion on the network. i.e. your isp is tiered with Level3 and the destination is tiered with Comcast. Any congestion between Level3 and Comcast will cause delayed packets. ISP's can only guarantee traffic within their own network. From one point to another you would have to do a speedtest from the originating point to the destination point.
There are about 20 lines in that post.  I would certainly hope that you could post a simpler version of your question(s).  You'll be more likely to get answers to what you are asking as opposed to the answers that you think address issues other than your own.
I'm surprised that none of you can understand such a simple question, re-stated over and over no less. Seems some aren't bothering to re-read everything that's been said by ME. Please, stop reading each others confused comments and over-complicating the question. And no, I don't mean that in any rude way, I mean it in that it's a fact.

You keep responding with basics about networking which isn't what I'm asking about. I am asking ONLY about what other metric might be used. Please read the following again before you respond.

>>>Did that already, #a41736535. Can't make it much simpler.

The answer seems to be, since I have to give it to you all... that no, there aren't any other metrics really, the basics are covered.
While this is not the answer I was looking for, it might help someone who is trying to get some basics concerning when to test. I'm not sure how I could have made this question any clearer since I was not asking about basic troubleshooting but asking what other troubleshooting result I might look for as an added metric.
In past realtime market applications that I've supported, the apps will cross out
the realtime market data if the "ping" roundtrip timings exceed 700ms for 3
consecutive pings, end to end.

During off-peak hours, I would take average timings over 5 hrs over a week,
average it out & monitor for 3 consecutive timings that exceed 3 times the
average of this.

Anything above 600ms for 3 consecutive pings are unsuitable for realtime
apps