If computer clocks max out somewhere around 5GHz, how is it possible for 100Gbit internet to exist? How does the computer possibly transfer that much data per second?

1.13K views

If computer clocks max out somewhere around 5GHz, how is it possible for 100Gbit internet to exist? How does the computer possibly transfer that much data per second?

In: 591

31 Answers

Anonymous 0 Comments

5Ghz is kind of equivalent to the speed limit on a highway.

How many people can you transport on a highway at 100 km/hr. On a single lane road with personal vehicles, not that many. On a 10 lane wide highway with everyone riding the bus a whole ton more. Same speed limit though.

Internet data transfer works similar in that there are methods for transferring more data per clock cycle on a single wire, but also you use many wires so that the speed limit is not really the determining factor.

Anonymous 0 Comments

You are comparing apples and oranges here, 5GHz refers to how many cycles a cpu does every second, in every cycle it executes a number of instructions, as that number increases you get more calculations so more “speed”, in the case of internet or networking in general Gbps (giga bits per second) it refers to the amount of data (bits) that you can transfer every second, how many ones and zeroes can be “sent” though a cable every second,

Anonymous 0 Comments

The CPU’s frequency is not relative to the CPU’s transfer of data. The transferring of data is done by a CPU controller over PCIe. PCIe 3.0 has a max theoretical bandwidth of 8 Gigatransfers per second which equates to about 512 Gbits per second, *however*, PCIe channels are typically split into 20 channels(lanes) depending on the CPU. Intel Core processors usually have 20, Xeons can have anywhere from 24 to 80 lanes. One of the main PCIe channels is your GPU which takes up 16 of it’s own and leaves 4 channels for other devices such as a network adapter. *Theoretically*, 2 PCIe lanes can achieve 128 GBits per second transfer speeds. Of course that’s impossible because of the interface overhead like 128b/130b encoding. Manufacturers can claim 100GBit transfers based on the fact that their adapters are using 2 PCIe lanes.

These days PCie 4.0 and 5.0 are available essentially doubling the bandwidth from generation to generation respectively. 16GT/s to 32GT/s.

Anonymous 0 Comments

What you’re missing is the width of the connections.

A 100Gbit connection is a serial link over fibre usually, so you have a small piece of dedicated hardware that can turn signals into light at that speed.

But to get the data to that piece of hardware you have a bus that is 16bits wide (PCIe) running at 32 billion transfers per second (PCIe 5.0). So now we have a bus capable of feeding 512Gbps to the network card, 100Gbit seems relatively pedestrian. But again, that’s more than the 5GHz of the CPU so what gives?

Well a CPUs clock speed doesn’t measure bits, it measures instructions, which can include 64 bits per register, which is theoretically 320Gbps of data that it’s handling per core.

Wait, per core? Well now we get to the real meat and potatoes of the question: the CPU that is connected to that network card over the PCIe bus likely has upwards of 32 cores, and as much as 128 for Epyc or 192 for Ampere One, all running at multi GHz. And the CPU as a whole could have not just the 16 lanes of PCIe that’s connected to a single card but up to 128 lanes connected to multiple cards all running line rate at the same time. The data may either come from memory or disks that are also connected to those PCIe busses.

Main memory on a machine like this (12 channel ddr5 for Epyc) can supply up to 3.6Tb/s of throughput. That’s 36 times as fast as that poor little network card.

Modern MVME disks can supply about 4 lanes PCIe bandwidth each, so in reality you can get 100Gbit/s of data out of just two modern SSDs.

All that to say that in a modern datacentre, it’s quite possibly the poor little 100Gbit/s network card that is the actual bottleneck, and often they’ll have two ports on a card.

With PCIe5 these days we are looking at the possibility that we can have a 400Gbps card *per slot* in a modern server.

Anonymous 0 Comments

The CPU is not directly involved in a transfer, as it does not do a calculation for every bit.

The CPU is used more for encrypting/decrypting the data you are streaming. That would indeed be a problem if you used a really long, oldschool RSA key, rather than a new, more efficient, short elliptic curves key, that requires fewer calculations. Then your CPU may not be able to handle gigabit transfer with a singlecore decryption/encryption process.

But that is taken care of behind the scenes. Ciphers are always evolving to become more efficient.

Anonymous 0 Comments

First, i have to mention that the only 100Gbit standards currently in use are fiber links. So i’ll explain how 10Gbit over copper works first, as it’s more fitting of an ELI5. But the short version is that you don’t actually need a faster clock to get more bandwidth.

So there’s 2 general tricks to make this work.

First, you have more than one “pair”. Each pair is a seperate communication line that works in paralell. Ethernet typically has 4 pairs (8 wires, 4 in, 4 out). That brings your needed clock speed down from 10GHz to 2.5GHz, because you have 4 lines you can use at the same time.

Second is that the data is encoded in a very specific way. I won’t go into detail on exactly how because that is definately not an ELI5 topic. But the bottom line is that you actually get to transmit 3 bits per clock cycle. And that brings the needed frequency down to 833.33 MHz.

Now for 100Gbit, you’d actually need a clock frequency of 8.33GHz if you were going over the standard 4-pair copper ethernet connection using the same 3 bit encoding. 100Gbit connections use fiber-optics instead, which changes the math. With fiber, you have “lanes” instead of “pairs”. A lane is actually a specific frequency of light that’s used to transfer the data, and you can put multiple lanes over a single cable (10 lanes for the 100Gbit specification). Fiber is usually packaged as single pair though (2 cables, 1 in, 1 out, 10 lanes in both directions). Fiber also has a 64 bit encoding instead of the 3 bit encoding you get with copper. So the math is actually 100Ghz/10 lanes/64 bits and that actually comes out to 165.25 MHz, which is, oddly enough, a lower clock speed than 10Gbit over copper. But, you’re sending 10×64=640 bits over the wire every clock cycle instead of 4×3=12.

Now to wrap this up, ultimately bandwidth is a product of how many channels you have, how many bits you can send over each channel per clock cycle, and how fast the clock is. You can either have fewer channels and a fast clock (serial), or a lot of channels and a slower clock (paralell).

How this relates to the CPU is that the bandwidth between your CPU and the network interface is *way* higher than the bandwidth over the network connection itself. For comparison, a typical modern CPU data bus is 64 bits wide and uses a dirt simple 1 bit encoding. At a 5GHz clock, that gives 320Gbit bandwidth over the bus.

Anonymous 0 Comments

Not to be unpleasant, but this is the kind of question that has so many conceptual errors that it’s hard to even know where to start answering.

Are you asking something like “how can 60 seconds fit into 1 hour if 1 hour is just one unit and 60 are more units”?

You can’t just answer that question without giving a whole lesson on digital signals.

Anonymous 0 Comments

I’m seeing a lot of good and thorough answers! ❤

But I might need an “explain like I’m 3” for this one. For a friend

Anonymous 0 Comments

You confuse 3 separate things. 1. You confuse the CPU frequency with internet bandwidth. They are not related in any way A Personal Computer with a 5ghz CPU will not be able to process a stream of 100gbit of data, however it can monitor, and allow a passthrough of such a large data stream. You can have a VPN server, an Antivirus server, a Adblocker server setup using a PC with 5ghz CPU that allows such a large flow of data to pass through. 2. A computer may have multiple CPUs, tens, hundreds, even thousands of CPUs all working together. 3. You don’t need a computer to allow hundreds of gigabits of data pass through. I have a business in an apartment building with at least 100 PCs + other devices, and most PCs have 2.gGps cards and all are provided with 2.5gbps connection. All the internet is handled by 2 fancy switches, each with 48 lan connections and 2x50Gbps QSFP28 modules and 2 routers. No computer (PC)needed for providing such incredible speeds.

Anonymous 0 Comments

5 GHz is a clock frequency. An electric signal can travel about 2 inches, about 4.5 centimeters, in each tick. That’s not much time for a signal to bounce around a computer chip. We can go just a little bit farther, but more frequent clock ticks are approaching the limit of electricity. We could go a little farther with the speed of light, but not much. It has nothing to do with how much data gets processed, only how often it gets processed.

Again, the clock frequency is not about how much data gets processed, merely how often processing takes a step. A modern, high-end CPU can handle several hundred terabits per second of data on the chip, with each tick representing an opportunity to process a batch of data.

100GbE is the amount of data in a signal. If you could watch the signal come through the wire, you’d see multiple frequencies of wiggles all going through the wire, and each one also has a volume. Each of those individual signals is sent for a very short time, you’d see it as only a couple inches/centimeters down the wire.

As a simple example, when you push a button on a phone you hear a tone, but it’s actually two tones at the same time. The keypad has 8 frequencies and they can encode 16 different key codes, although most phones only have 12 buttons. Networking uses many more frequencies to encode the data. Networking also uses volume (amplitude) to encode data, consider that a single frequency might have 10 different volume levels and so it could have the values 1-10. There is a very quick pulse putting together a symbol, much like an alphabet letter, by listening to all the frequencies and their amplitude. When you see a mark on the page it may be one of many different letters or numbers, or even symbols for other languages.

The symbols are the data going over the wire over many frequencies at once, like channels on the television. There are many million individual symbols going through the wire every second on many channel, each letter going through different frequencies, and each symbol can represent many bits. Even though the signaling rate is only a few billion per second, because each signal represents a more complex set of multiple letters, each letter can be combined into a more complex message, giving about 100 billion bits of information.