How creaky is Ethernet the spec?
Posted Oct 29, 2009 16:50 UTC (Thu) by Shewmaker
In reply to: How creaky is Ethernet the spec?
Parent article: JLS2009: Generic receive offload
Collisions are not an issue ... data is not lost immediately, but contention at a transmit port of a switch is a problem. When that happens, one packet gets transmitted while the other is placed on a queue. That queue may be in memory shared by all ports, a subset of ports (a blade in the switch, for instance), and some switches allow you to set aside dedicated memory for a port's queue.
I've got a simple illustration in this presentation.
Packet loss occurs when the queue overflows, and TCP uses that as a signal to slow down. It has worked remarkably well over the years, but switches have been making it work partly be increasing the amount of memory for the queues. Large queues cause large variations in delay and mean that TCP will have increasingly more packets in flight before it knows that it needs to slow down.
Infiniband has a reliable (connected) mode that allows packets with an MTU of 64k, which is quite nice for high performance storage networks and parallel file systems that are IP based.
There are new Ethernet standards coming out that have equivalents to Infiniband's features, but I don't know how much longer until products are out. Data Center Ethernet and Converged Enhanced Ethernet
Incidentally, my research is focused on providing performance guarantees even on current inexpensive Ethernet hardware (LAN, not WAN). I expect it will also be beneficial on the reliable (i.e. lossless) network technologies as it allows arbitrary guarantees (unfairness) that are more flexible than priority based QoS schemes.
to post comments)