Get the latest tech news
Magic Numbers
April 24, 2024 The Maximum Transmission Unit – MTU – of an Ethernet frame is 1500 bytes. 1500 bytes is a bit out there as numbers go, or at least it seems that way if you touch computers for a living.
It’s not a power of two or anywhere close, it’s suspiciously base-ten-round, and computers don’t care all that much about base ten, so how did we get here? Well, today I learned that the size of an Ethernet header – 36 bytes – comes from the fact that MTU plus Ethernet header is 1536 bytes, which is 12288 bits, which takes 2^12 microseconds to transmit at 3Mb/second, because the Xerox Alto computer for which Ethernet was invented had a internal data path that ran at 3Mhz, so the interface could just write the bits into the Alto’s memory at the precise speed at which they arrived, saving the very-expensive-then cost of extra silicon for an interface or any buffering hardware. Now, “we need to pick just the right magic number here so we can take data straight off the wire and blow it directly into the memory of this specific machine over there ” is to any modern sensibilities insane.
Or read this on Hacker News