[e2e] Protocols breaking the end-to-end argument

rick jones perfgeek at mac.com
Fri Oct 23 18:47:52 PDT 2009


On Oct 23, 2009, at 8:38 AM, David P. Reed wrote:

> On 10/23/2009 08:39 AM, William Allen Simpson wrote:
>>
>> You could add the Broadcom chip sets to your list.  Not a protocol  
>> per se,
>> but they inexplicably "handle" TCP segmentation.  Usually used in a  
>> host
>> (bad enough in my opinion), but could create utter havoc in a router.
>>
>> So far, I've noticed:
>>
>>   NetXtreme II 1 Gigabit
>>   Tigon 3
> This is an interesting observation, but I don't understand what you  
> mean.
>
> Explain "handling TCP segmentation" please?   Exactly what chips do  
> that?   What exactly do they do in the chip?
>
> The chips might do IP fragmentation, but I find it hard to see how  
> they could do TCP segmentation, unless of course they are acting as  
> a host.  Nothing wrong with a chipset being a host, too (perhaps to  
> present a web, ssh or SNMP interface).

Perhaps he is referring to chips which provide TCP/Transport  
Segmentation Offload - aka TSO - the functionality that allows the  
stack to hand the chip a chunk of data > the MTU, along with the  
initial TCP/IP headers and the connection's on the wire MSS, and then  
have the chip otherwise statelessly segment that larger chunk of data  
into MSS-sized segments for transmission on the wire/fibre/etc.

If that is the functionality of which he speaks, it is in virtually  
every contemporary 1GbE card I can think of (but my thoughts cannot  
span the entirety of the space I suspect).  Also, virtually every 10G  
NIC out there offers the same functionality.

And if that upsets him, we better not tell him about the 10G NICs also  
doing receive offload... :)

rick jones

BTW, I do not believe that any router actually has TSO happen to TCP  
segments contained within the IP datagrams passing through it -  
although there have been issues in Linux with LRO (Large Receive  
Offload, distinct from General Receive Offload) when the system was  
acting as either a router or a bridge - because TSO doesn't happen in  
that path :)

http://homepage.mac.com/perfgeek



More information about the end2end-interest mailing list