[$] Checksum offloads and protocol ossification
Given the processing requirements for high-speed networking, it is notsurprising that there is interest in offloading some of that work todedicated hardware. Linux has always carefully limited the supportprovided for such offloading, though; it has been just over ten years sincesupport for TCP offload engines wasdefinitively blocked from entering theLinux network stack. That rejection was driven by a number of concerns,with a reluctance to entrust network-protocol processing to closed-source,unextendable, unfixable software being near the top of the list. Nearly ten years later,offload engines are again the topic of fierce discussion. The hardware haschanged, but the concerns have not; indeed, some of the problems beingworked around now show why those concerns were valid in the first place.