Craig Ulmer

SFP+ is Bogus

2013-08-27 clusters net

10GigE SFP+ is bogus. Or more to the point, some high-end network companies are doing some bogus things with SFP+. SFP+ (Small Form Pluggable) is a standard for packaging electrical/optical transceivers. Basically, when you buy a switch or line card these days, each network port is an empty socket with electrical connections. If you're going short distances (9m), just plug in a direct-attach cable ($40-100) and you're done. If you need to go farther or don't like heavy cables, buy fiber and a pair of SFP+ modules. The SFP+ pinouts are pretty straightforward: the transceiver has differential Tx/Rx lines, power, ground, clocks, status lights, etc. Oh, and there's also a 2-Wire serial line.

That serial line is the problem, because it connects to a small eeprom that stores info about the SFP+ module. Some of it is good stuff: optical freqs, fiber type, nominal encoding mechanism, etc. However, they also provide fields for a vendor IEEE company ID, as well as vendor-specific data. Sadly, several switch companies are taking advantage of this to make sure you buy both the switch and all SFP+ modules from them. I believe the switches read the ID tag out of the SFP+ and complain if they don't get the magic values. If you look on Amazon, you'll see three pricing tiers for SFP+: $700 "vendor X", $200 "vendor Y", and $90 "no-guarantees". I recently tried the $90 version I was relieved to see they worked just fine with my cheap, no-frills switches.

Interestingly, some other companies are doing a good business selling compatible SFP+s. There's a company called SFPEX that looks interesting. If you pay them an extra $2, they'll even slap a custom label of your own design on the module.

Anyways, I think our future is going to all be about Monster Cable. More standards (eg thunderbolt) will plug eeproms into the cable heads and more vendors will abuse these ids to make sure we all have to buy their double platinum certified cables, just to hook up our printers.

Seagate Datasheet