Does a gigabit switch impact internet speed?

My friend once told me, in some debate, that whether or not someone has a fast/gigabit router doesn't impact their internet speed because the internet is much slower than 100 and 1000 mbps. I disagreed without much a very good way to explain why, so let me first ask:

Does a gigabit router vs a fast router impact the data transfer speed from the internet to an endpoint device?

I haven't found much answers online, but I think it does. Specifically I think it does because of this mathematical proof:

``````Fs = Final speed
Rs = Router speed
Is = Internet speed
Ft = Final time
Sd = Size of Data

Ft = (Sd / Is) + (Sd / Rs) // Time to reach router + time to reach device (from router)
Fs = Sd / Ft // final speed is equal to the data size divided by the total time

Fs = Sd / ((Sd / Is) + (Sd / Rs))
Fs = 1 / ((1 / Is) + (1 / Rs))
// or
1 / Fs = (1 / Is) + (1 / Rs) // resembles some circuit equations

// comparatively

Fs (gigabit) = 1 / ((1 / 20) + (1 / 1000)) = 19.6 Mbps
Fs (gigabit) = 1 / ((1 / 50) + (1 / 1000)) = 47.6 Mbps

Fs (fast) = 1 / ((1 / 20) + (1 / 100)) = 16.6 Mbps
Fs (fast) = 1 / ((1 / 50) + (1 / 100)) = 33.3 Mbps
``````

And it would seem that, from this, there is quite a big difference. But the problem is, even if I'm right, I can't explain this to him in this way (not everyone is comfortable with talking in math). So, is there any authoritative reference or benchmarks that answers this question? Because I've had plenty of people say that it doesn't without much elaboration.

Edit: I should clarify that if I say internet speed at any point in time, I am referring to the speed from the internet to the end point device.

Edit: I realize that most of the answers I get are going to say no. So, I think it should be fair that these answers tell me why I'm wrong about the following assumptions in my take on this question:

• Routers have bus speeds all their own (apart from internet speeds), that are constant (either 10, 100, 1000 and no in-between).

This is the way I imagine what is happening:

`internet --(20Mbps)--> router --(1000Mbps)--> device`

• Every byte sent to a router has to be received into the router's RAM before it can be re-transmitted to the device. As opposed to flowing straight into the cable that corresponds to the device receiving data.

Update: I'm not going to accept any answer without a benchmark. Since there might not already be a posted benchmark for this, I'm going to put one together. If I'm right, I'll post the results (I'll probably post the results even if I'm wrong). If I'm wrong, I'll accept the best posted answer and call it a day.

Edit: I don't think anyone has really understood the point I'm making, so I'm very reluctant about accepting an answer. Forget, for a moment, that I'm talking about networking and consider three arbitrary bus speeds:

``````Starting point -b0-> (Node 1) -b1-> (Node 2) -b2-> End point
``````

Every single bit of data has to be stopped at every node and transferred again to the next, sequentially (in this scenario, every node receives and transmits at the same time). Now consider, again, the math that calculates the amount time is takes for data (of any size) to reach the end point.

``````TotalTime  = (DataSize / BusSpeed0) + (DataSize / BusSpeed1) + (DataSize / BusSpeed2)
TotalTime  = DataSize * ((1 / BusSpeed0) + (1 / BusSpeed1) + (1 / BusSpeed2))
TotalSpeed = DataSize / TotalTime

TotalSpeed = DataSize / (DataSize * ((1 / B0) + (1 / B1) + (1 / B2)))
TotalSpeed = 1 / ((1 / B0) + (1 / B1) + (1 / B2))
``````

This is the same way networks transmit data (the same way every wired device transmits data), so how could it be wrong?

• Down vote from me - `I'm not going to accept any answer without a benchmark.` - Why? You don't need a benchmark to prove this. It's simple knowledge to interpret. Users can easily show you this in their answers. – jwbensley Jul 30 '13 at 9:26
• Do you realize that by writing `TotalTime = (DataSize / BusSpeed0) + (DataSize / BusSpeed1) + (DataSize / BusSpeed2)`, you implicitly assume that each node waits to have received the whole data before sending it to the next one ? And I'm talking about math and logic here, not networking. – Levans Jul 30 '13 at 20:25
• @Levans you may be right, I'll have to sit on that for a moment. – tay10r Jul 30 '13 at 20:32
• What you're missing is that, to a first approximation, only the speed-liming step matters. Think of the data like a physical object and the links like an assembly line. If quality control is the slowest step and releases one product a minute, then the line will produce one product a minute no matter how fast or slow every other step is, so long as it's more than one per minute. – David Schwartz May 2 '18 at 16:24

I have no benchmark to offer you, but still I can point out how I disagree with your "mathematical proof" : your basic hypothesis seems quite wrong to me.

Your saying : `Final Time = Time to reach router + time to reach device (from router)`.

This would be right if the data transfer contains only one packet (for example, during a ping).

While receiving the second packet, it will be sending the first one to your computer. And as your personal connection is faster than your Internet connection, your computer will finish receiving the first packet from your router before your router finishes receiving the second packet from the Internet.
(Well, that's not exactly right, but it gives the image.)

So in the end, you can realize that, the "mathematical proof" becomes :

``````(total time) = (total size / Internet speed) + (time of 1 packet local transfer)
``````

And when downloading big files (that's when Internet speed counts, after all), the time of local transfer is quite insignificant before the limitation of your Internet speed.

Edit :

I think there is a profound misunderstanding, and you're not to blame as this not really a clear thing nowadays.

You can measure two things about speed. These things are : `How long does it take for a packet to go from the server to my computer ?` and `How much data can go through my router or my ethernet wire during one second ?` These two things are totally different.

The first thing is what is called `latency` it is this which determines how fast the server will answer you, and that's what is relevant in online video games, for example. The common measure of this value is the `ping time`.

The second is the `bandwidth`, and that is this one which is measured in `Mbps`. The "speed", given in the specs of your router is literally : `How much data can go out of one the ethernet connector of my router during one second ?`.

Thus, there are two cases :

• In the case of a very small data transfer (like a ping), it's the latency which determines the duration of the operation.
• In the case of a big data transfer (like downloading a file), it's the bandwidth which is relevant. And as I explained above, it's the lowest bandwidth in the circuit that determines the global bandwidth.

In fact, the analogy with a water pipe is extremely relevant here. You can measure how fast does every H2O molecule travels through your pipe, and how much water goes out of your pipe during one second. These two things are totally different. It's exactly the same here.

• your router will definitely not wait to have received the 4 gigabytes of data to transfer it to your computer - never said that it would. that equation should hold true as long as every byte of the packet (any number of packets) has to get put into ram before it's sent to the device – tay10r Jul 30 '13 at 5:19
• @TaylorFlores In this case, your equation gives the time needed for 1 packet to go from the Internet to your computer, not the time needed to download a big file. Do we agree on this point ? – Levans Jul 30 '13 at 5:22
• not quite. I'm talking about the time for each byte within a packet to go from the internet to the computer. – tay10r Jul 30 '13 at 5:24
• @TaylorFlores when writing 'packet', I meant 'TCP packet'. That's not the same indeed, but that's quite similar in size compared to a big file. But I your problem here is, you cannot calculate the speed of a network connection based on the time of a 1 byte transfer. A 100Mbps switch means that it will be able to transfer a most 100Mb in a second and not that you'll have for each transfer `Data size / transfer time = 100Mb/s`. Ping time and transfer speed are not so easily linked. – Levans Jul 30 '13 at 5:38
• I agree with @Levans. The flaw on your proof is that you assume a Byte(within a packet) is only received by the router if it has finished sending the previous to the computer, which is false. The router operates reception and transmission at the same time – mveroone Jul 30 '13 at 7:49

`Does a gigabit router vs a fast router impact the data transfer speed from the internet to an endpoint device?`

For someone claiming to be mathematically proficient, and so stubben as to `not accept an answer without a benchmark` - Yet seemingly basing their stubboness on their own fictional unproven math; this simple question has a very simple answer.

Note before; When you say `gigabit router vs fast` I assume you mean 1Gbps vs 100Mbps.

A 100Mbps device transmits at a rate 100,000,000 bits of data down the wire every second. It can not run any slower or faster. Its a fixed clocked speed. A 1Gbps device transmits data down the wire at 100,000,000,000 bits per second, again; no faster nor slower.

Topology;

`````` internet --(20Mbps)--> router --(1Gbps)--> device
``````

vs

`````` internet --(20Mbps)--> router --(100Mbps)--> device
``````

In the top/first toplogy, bits are going to be "in flight" between the router and end device for a shorter time than on the 100Mbps connection, assuming the end device can run at 1Gbps.

Update:

As a follow up, to your conundrum of how to explain this. "Your friend" simply needs to understand the difference between 1Gpbs and 100Mbps. If they don't understand that, then what do they think a 1Gbps connection would be used for, in comparison to a 100Mbps connection? (rhetorical question!). Try and explain that, then hopefully it should obvious.

(As a side note here, if you a further understanding, encoding schemes are used here which affects the number of bits directly coded onto the wire; for 100Mbps see 4B5B encoding, and for 1Gbps see PAM-5)

2nd Update:

I forgot to common on your statement: `Every byte sent to a router has to be received into the router's RAM before it can be re-transmitted to the device. As opposed to flowing straight into the cable that corresponds to the device receiving data.`

Indeed, in fact more than every byte. It depends of the router and what, if any Quality of Service is implemented. Often many bytes, in order to perform FEC. Also, with switches as opposed to routers we have different kinds of "storing", see cut-through switching and store and forward switching (also, see the fragment free paragraph half way down the cut-through wiki page). However, these factors are independent of the connection speed, but I thought I would mention them if you wanted to learn further.

Your friend is mostly right, think of it as a flow problem, as long your connection to the Internet is slower, the router speed does not impact throughput. Latency may be impacted by a lower latency router though.

The issue here is that a faster router does not necessarily mean a lower latency router, and in any case, unless you are interested in lower ping time, throughput is what interests you. Moreover, latency or ping time have more to do with the buffers on the way than the router/switches.

Faster routers are usually only useful when connecting computers within the home/office to each other (e.g. for streaming HD video).

• @Ofrir My standards are relatively high for an answer to this question. As I've mentioned in the question (which I've updated), I'm looking for an authoritative reference or benchmark because I don't trust second-hand information – tay10r Jul 30 '13 at 3:38
• I'll give an example - if your Internet connection is 10Mbps and your router is 100Mbps, and for example you requested a 10MB resource (80Mb), your connection to the Internet will be saturated at 10Mbps, meaning you are getting 12.5% of the resource each second, for 8 seconds, at 100% capacity of the Internet connection, while your router is working in 10% of its maximum capacity (that's still below the real capacity) assume you are working with 50Kb packets, the added delay introduced by the router is only in the transmission of the last one, ~0.5ms vs. ~0.05ms for 1Gbps, much less than 1%. – Ofir Jul 30 '13 at 4:27
• Notice that for a small resource (e.g. in the most extreme case - ping), the numbers are very different, since the last packet is the only packet, that's where latency is the only concern. – Ofir Jul 30 '13 at 4:32
• But then again, faster routers usually have larger buffers causing higher latency because of en.wikipedia.org/wiki/Bufferbloat. – Ofir Jul 30 '13 at 4:37

Anytime anything (data, electrons, air, people, etc.) is being moved from one place to another there is always a bottleneck.

If you have a gigabit router and your Internet connection speed is faster than a gigabit then your router will be a bottleneck.

1. As far as Internet speeds are concerned I would consider a gigabit router a fast router. Unless you have Google Fiber or a comparable Internet service then a gigabit router will not hinder the speed of your Internet connection.
2. I didn't read through your entire proof, but I didn't have to to see that it is broken. I can see from the very first line of calculations that you are not taking into account that most of the data transfer is happening asynchronously, i.e. the data isn't transferred from the Internet to the router in whole then from the router to your device in whole.
3. Worse, your `RS` (router speed) variable cannot exceed your Internet speed. Think of `Rs` like a maximum, not an actual. For instance, my car can go 120 MPH, but that doesn't mean that every time my car is moving it is going 120 MPH.

`Fs (gigabit) = 1 / ((1 / 20) + (1 / 1000)) = 19.6 // WRONG! Rs (1000) cannot exceed Is (20)! Rs == Is until Is > Rs max.`

• I know what bottlenecking is, I'm talking about speeds slower than the router. – tay10r Jul 30 '13 at 3:42
• the usage of fast and gigabit correspond to 100 and 1000 mbps, it doesn't mean fast the same way as quick – tay10r Jul 30 '13 at 3:46
• yes, every byte of information stops at the router and is sent again to the endpoint device (at the speed of the router). why is that erroneous? – tay10r Jul 30 '13 at 3:56
• `1000 mpbs` is the bus speed of the lan connection, I don't think it ever changes. In my answer, I posted that I'm only really going to accept and authoritative reference and/or benchmark anyway – tay10r Jul 30 '13 at 4:08
• @TaylorFlores 1000mbps is the MAX speed of a gigabit router, not the actual. Read the car analogy. Authoritative reference... you wound me. – ubiquibacon Jul 30 '13 at 4:10

Oh, now I think I get what you asking. Sorry for initial misundersanding.

What you asking depends only on one thing: router receive buffer overflow. In that case input data packets are rejected by the router, thus reducing potential maximum of connection speed. This is determined by the hardware and its processing speed. But it's also very dependent on your internet connection type: Direct, PPPoE, PPTP, L2TP, etc. Depending of connection type you can have order of magnitue difference.

Generally you could expect that 1Git router have a larger buffer and faster processor. Thus it will have less chance of buffer overlow.

In case of Direct connection, even cheap routers are able to receive data at 100Mbps rate, so there is no likely that it will somehow make connection slower. In case of of PPTP or L2TP connections which requre significant processor resources even some Gigabit routers can be limited to speeds like 50 Mbps.

So in general there is no answer until we know type of the internet connection, and router models. It is possible that on L2TP connection a 100Mbir router with a fast processor can be faster than 1Gbit router with a slow processor. Thus there is no point in benchmark, as I see it, since '100Mbit' and '1Git' routers are abstract things.

I have seen many answers here, some on topic, others less so.

Many many many mistakes. Data works different than standard Latin abbreviations... Exa , Tera , Giga , Mega , Kilo does not relate to multitudes of 1000 here, and it gets more convoluted.

Data is based on IO / single bit (either 1 or 0)

Multitudes of 2 to the power of 10. 1 bit(b) = 8 bytes(B). hence 1gb = 1024mb = 1048576kb = 1073741824b.

Getting back to point, the ABSALUTE MAXIMUM TCP SINGLE PACKETSIZE is a mere 64KB / 65535B. i.e. 8191.875b. "Bottlenecks are pretty inevitable"

A file is not transferred as a whole, as previously stated by a few people, for obvious reasons such as fragmentation,redundancy, efficiency and loads more (a physical firewall,like juniper etc can hold a request till all data is received before passing to client machine, even then its transported via packets not as a single file). Read up about, modem , protocol stack , and OSI.

Now here comes the sports:

1. Encapsulation and Encryption, oh yeah they dont take up Bytes but they sure like em bits.
2. Disk (hard-drive not disc) IO rate and RAM(MHz) accessibility depending if it is "cold" or "hot" data as well as a myriad of external interferences even temperature, humidity and elevation however minute the effect.
3. Single / Multiple source data?
4. ISP / Telecom connection speed. (Line speed) which is only a theoretical Maximum NOT a Constant. Dependant on line congestion at DSLAM, line quality, distance of copper to fibre connection,magnetic interferences etc etc etc.
5. Server accessibility / network congestion , intra and inter accessibility (ISP "relays" , DataCenters etc etc).

I can really go on forever: transfer speeds are as stable (not inferring the connection) as a hyperactive kid in a Chocolate factory.

You need a connection line from an ISP with an effective downstream exceeding well over 100MBps to see a transfer speed difference between 100MBps and 1GBps NIC(network interface card) and or modem/router... and even then it depends on the source of the data more than anything else... You would need a "Fiber to Home" setup or LTE/4G tether... lol pretty much anything else wouldn't do.

here is some world top 10 averages as of 2013.

• Luxembourg 71.16 Mbps
• Hong Kong 54.18 Mbps
• Taiwan 37.88 Mbps
• Netherlands 36.20 Mbps
• Japan 36.10 Mbps
• South Korea 35.85 Mbps
• Lithuania 35.58 Mbps
• Macau 33.62 Mbps
• Switzerland 32.92 Mbps
• Sweden 32.66 Mbps

...and this boring answer was posted from South Africa a country that's best line-connections barely meet the FCC minimum standard of 3MBps downrate, on what is a good connection in our "standards" 2Mbps linespeed and effectively getting 250KBps down at a cost of +\$100 per month, and a country only having 1MBps / 2MBps / 4MBps / 10MBps lines available and 20MBps / 40MBps planned in the next 5years.