Recently, I've been making an effort to help our server administrators better understand networking concepts. In doing this, I discovered that many of them focus on statistics that they've heard but don't understand, such as "Ethernet is only 80% efficient." This is extrapolated into link utilization numbers where it's thought that Gigabit Ethernet links can only push 800 mbps; this is not true.
The Gigabit Ethernet PHY (PCS) for 1000Base-SX/LX/CX uses 8B/10B encoding. This means that for every 8 data bits, 10 bits are placed on the wire. That resulting 10 bit entity is called a 10 bit symbol. Those two additional bits serve a number of functions, some of which are control character transmission, bit synchronization, and error detection.
The Gigabit speed rating of an interface is a data rate and not a symbol rate. Gigabit Ethernet is actually transmitting at 1.250 gigabaud (the symbol rate). With 8B/10B encoding we have 20% overhead. This 20% overhead is reduced from the symbol rate to reveal the data rate: 1.250 x .8 = 1 gbps. Gigabit Ethernet is indeed only 80% efficient, but operates at 1.250 gigabaud to a yield 1 gbps data rate.
The same principle can be applied to Ten Gigabit Ethernet, but the encoding is 64B/66B, and the symbol rate is 10.3125 gigabaud, resulting in a 10.0 gbps data rate.
As a side note, you may not want them to have sustained utilization rates above 80% because of queue delays, but that's another issue.
"for every 8 data bits, 10 bits are placed on the wire"
ReplyDeletemay be
for every 10 data bits, 8 bits are placed on the wire
Luis - I'm not sure I follow. Can you elaborate your comment?
ReplyDeleteThe 80% rule is not about theoretical bandwidth, it's about goodput - all that encapsulation comes at a cost.
ReplyDeleteThe encapsulation/header size of Ethernet is only 38 bytes, that's if you count the preamble and the IFG. That's only 5% of overhead on a 750 byte frame. That's less overhead than an the IP and TCP headers - which is 40 bytes - minimum.
ReplyDelete