[Cerowrt-devel] TCP TFO client behaviour

Ketan Kulkarni ketkulka at gmail.com
Tue Dec 11 11:48:00 EST 2012

I am testing tcp tfo behavior with httping client and polipo server.

One observation from my TFO testing  -If for a connection server sends a
cookie to client, client always does TFO for subsequent connections. This
is ok.

If for some reason, server stops supporting TFO (either because server got
restarted without TFO support (in my case) or because path changed and the
nw node is dropping packet with unknown syn option or stripping the
option), client does not clear up its cookie cache. It always sends data in
syn and server never acks the syn-data and client retransmits.

As per kernel code -if syn-data is not acked it is retransmitted
immediately - with the assumption first syn was dropped (but the assumption
server stopped supporting TFO might not have been considered)

My opinion is to flush the cookie for this server and re-attempt the cookie
"negotiation" on subsequent connection.

Your thoughts?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cerowrt-devel/attachments/20121211/7c5c3a1a/attachment-0002.html>

More information about the Cerowrt-devel mailing list