← Back to context

Comment by rdtsc

10 years ago

Nobody knows about PAUSE frames until they bite you.

I found out about them when someone at a place I worked wanted to design a custom Ethernet driver for an embedded device. There was no good reason for it, could have run the regular one shipped for that device (it was an RPi equivalent kinda unit).

So there they went and months later, it emerged. Everyone was amazed: oh wow handcrafted Ethernet driver, impressive.

Except what ensued was months of debugging and wireshark captures. Not handling PAUSE frame and flooding the network with packets took a good chunk of that time. Of course it was blamed on stupid switches and broken protocol and not on the bad decision to re-write a known, well defined and stable protocol without a good reason to do so.

> Nobody knows about PAUSE frames until they bite you.

I'll be an exception to that rule. I first heard about them when trying to optimize point-to-point 10GbE NIC throughput. I worked with the support team from the NIC manufacturer because I was trying to saturate four ports simultaneously (at the time that was a big deal, it's probably much easier now).

I knew a good deal about them before I was ever "bit" by them.

I'm sure it wasn't a very good one, but do you recall what the actual stated reason for this undertaking was? It surely couldn't have been "just because".

  • Low latency processing and speed. But it was done without anyone measuring the latency and performance parameters of the existing one that's the crazy part.