3 ms·
A fair number of ethernet chips will handle all the TCP protocol themselves, the upper layers just pass in the address of a large buffer and the chip will take
by rjsw 9y ago
A fair number of ethernet chips will handle all the TCP protocol themselves, the upper layers just pass in the address of a large buffer and the chip will take care of chopping it up into packets.
The feature is usually called a "TCP Offload Engine".
- noselasd 9y agoThat's hardly all the TCP protocol though, it's just the segmentation and checksumming part.
- msbhvn 9y agoSegmentation and checksumming are very common, with the segmentation often called TSO (Transmission Segmentation Offload) for send and LRO (Large Receive Offload) for receive. However, usually when referred to as a TCP Offload Engine (ToE) it does mean pretty much the whole protocol, as least a functional subset of it anyway. Windows and FreeBSD support ToE with some NICs. Linux has rejected full ToE in mainline for a number of pretty solid reasons: https://wiki.linuxfoundation.org/networking/toe https://wiki.linuxfoundation.org/networking/toe