How do you intend on avoiding huge stretch ACKs?
The implication is that stretch ACKs are bad, which is wrong.
Oh yes, that's right, you're the same person who earlier in this
thread tried to teach us that bursty TCPs are non-standard :-)
Are you saying that burstiness is not an issue?
There is a disconnect here and that's because you're focusing on the end
host and ignoring the network.
Stretch ACKs are actually a positive thing on a healthy connection and
do indeed help the sender. And when loss events occur, LRO stops
immediately and delivers the packets as-is so that loss information
via ACKs with SACK blocks can immediately make their way to the
sender.
Burstiness is intrinsic to LSO/LRO and they thrive on it, there is no doubt
about that. However, breaking congestion control principles should not be
taken lightly and concerns need to be addressed in a convincing matter, no
handwaving.
Linux does actually currently generate stretch ACKs, when beneficial.
What happens today, due mostly to interrupt mitigation, is that the
stack processes many consequetive packets, and spits out a ton of ACKs
one after another. That's actually bad. LRO will cause us to instead
do the right thing, which for a healthy connection is to scale the ACK
response rate to match the interarrival rate of data.
The interarrival rate that matters is at the input to the NIC, not to the
stack.
This is again assuming TOE cannot implement these features. Users should
decide which features they care about, and if TOE doesn't have them then
it
won't be a viable alternative for them.
You're not going to replicate the entire Linux TCP stack onto your
card. TOE is not a viable alternative for anyone who wants to do
anything out of the limited scope of features you'll have in your TOE
stack.
Correct. Some users won't need/want/buy our TOE. That's true of every
device.
This means if we find an incredible new congestion control algorithm,
the TOE setups won't get it. This means if the only way to work
around a security hole is to enable some netfilter rule until a better
fix exists, user's either stay vulnerable or lose TOE.
Again a TOE does not replace the software stack, if it has a security hole
it can be disabled and the software stack takes over. A TOE is a NIC after
all.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html