summaryrefslogtreecommitdiffstats
path: root/net/sctp/sm_sideeffect.c
diff options
context:
space:
mode:
authorVlad Yasevich <vladislav.yasevich@hp.com>2009-09-05 00:20:59 +0200
committerVlad Yasevich <vladislav.yasevich@hp.com>2009-09-05 00:20:59 +0200
commit4d3c46e6833208428d366630aa708f6876e61fc1 (patch)
treecb5f57a90a261b7443d202d96cf5725dbba371c8 /net/sctp/sm_sideeffect.c
parentsctp: Clear fast_recovery on the transport when T3 timer expires. (diff)
downloadlinux-4d3c46e6833208428d366630aa708f6876e61fc1.tar.xz
linux-4d3c46e6833208428d366630aa708f6876e61fc1.zip
sctp: drop a_rwnd to 0 when receive buffer overflows.
SCTP has a problem that when small chunks are used, it is possible to exhaust the receiver buffer without fully closing receive window. This happens due to all overhead that we have account for with small messages. To fix this, when receive buffer is exceeded, we'll drop the window to 0 and save the 'drop' portion. When application starts reading data and freeing up recevie buffer space, we'll wait until we've reached the 'drop' window and then add back this 'drop' one mtu at a time. This worked well in testing and under stress produced rather even recovery. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Diffstat (limited to 'net/sctp/sm_sideeffect.c')
0 files changed, 0 insertions, 0 deletions