Post

If you ever see something like "100 Mbps internet" and thought to yourself "100 megabytes per second" congratulations you have been hoodwinked It's actually 12.5 megabytes per second

One might ask, wait, isn't that confusing because both bits and bytes start with a b? Yes. YES IT IS. To distinguish, the world generally does MB/s to indicate MegaBytes per second, and Mbps to indicate MegaBits per second. Isn't that fun.

4 reposts241 likes

Don't forget the difference between MB (megabyte, 10^6 bytes) and MiB (mebibyte, 2^20 bytes), and to make it even more fucked up MB can actually refer to either one of those, and then you also have the bit/byte distinction...

Yes hi hello, greetings from the world of networking! I realize your character stream is nice and all, but in the context of an actual conduit, they are utterly nonsensical. Signals travel in discrete segments, and here, symbol rate and bit rate and character rate are all different things.

When you’re the dude figuring out how to shove shit over the wire, or over the air, shit like 16-QAM signaling (3 bits per symbol), 8-into-14 encoding (a form of forward error correction), TPC, and a shit load of other line-level encoding techniques make the bit the only sensible increment,

because fractional bytes are not a reasonable increment of data. Sure, it does make some things *seem* annoying once you have the ~luxury~ of TCP to rely on. There’s a reason bit rates are only coin of the realm down at the interface level and below. But, uhhh…

Back when I started in the business, the computer industry didn't universally agree that 8 bits was a byte, much less that a word was a multiple of the character size. (And on the first computer I used, the bit rate was "how fast can you carry punch cards to the printer with the 48-letter charset.")

Byte doesn’t mean 8 bits. Having used systems with non 8 bit bytes. Octet does mean 8 bits. A bigger issue is that not all protocols result in an octet per second. Some are even fractional bits per second. It’s more accurate to say bits per second. For one thing it avoids 1000 v 1024.

If you think this is bad look into the difference between MegaBytes and MebiBytes. 1000 Kilobytes != 1024 Kilobytes And it compounds on each, kilo, mega, giga, tera, each is further off and further off.

You've sorta got cause and effect mixed up. Marketing bullshit called 1000 Kilobytes a Megabyte even though it isn't. People then invented "Kibibyte" as a way to make that clear. They knew how to divide by 8 they didn't on purpose to sell more drives.

Yup. Also the confusion of a floppy with twice the capacity of a "720KB" floppy actually being 1.406MiB, so it was easier to sell them as "1.44MB". But yeah, carrying that marketing bs forward into gigabyte and terrabyte drives is ridiculous.

It's historic non-nonsense. Before Intel took over the CPU world a byte could be anything from 5 to 9 bits. Standards docs said "octet" rather than "byte" to mean something that's always 8 bits. Bits-per-second was the only way to get a number that everyone understood

Pre-Intel dominance, 8 bit bytes were the standard for almost all of the early microprocessors. Yes 8008/8080/x86 but also 680x/680xx, 650x, and several others. But yeah, before that with mainframes/minicomputers it was anything goes.

yep, early data transfer rates were measured in bauds (arbitrary “symbols per second”, named after the telegraphic Baudot code) — in a binary system where there are only 2 symbols, it is equivalent to bits per second obviously modern data transmission is far more complex but guess it stuck

Bytes weren't always 8 bits, in the distant past, so bytes per second wasn't very useful. In fact we used to use baud rate for transmission speed, but bps is easier.

Also baud rate technically stopped corresponding to bps with Bell 212A and V.22 (1200 bps / 600 baud) though I remember almost everyone using it inaccurately for another 10-15 years, through at least 9600 or 14400.

Because some things don’t count in bytes. ASCII was originally meant to be a 7 bit representation. The PDP-10 could work on “bytes” ranging in length from 1 to 36 bits.