]> git.michaelhowe.org Git - packages/o/openafs.git/commit
This patch should protect Rx-based servers from half-reachable clients,
authorNickolai Zeldovich <kolya@mit.edu>
Thu, 22 Aug 2002 02:43:30 +0000 (02:43 +0000)
committerGarry Zacheiss <zacheiss@mit.edu>
Thu, 22 Aug 2002 02:43:30 +0000 (02:43 +0000)
commita2d68a2a9636059d0244279efc5f16c64d7f45ea
treeca06341749d40370b41f273ada7044f343f06623
parentdf6400465966ac56b0785b28ab95d1ce3262ee38
This patch should protect Rx-based servers from half-reachable clients,
which issue requests but don't acknowledge the server's response, thereby
eventually tying up all of the server threads, and denying service to all
other clients.  Such clients can arise in case of uni-directional routing
failures, whereby all packets from the server to client are lost but not
the other way around.

The idea it to ping clients (using Rx ack ping) before attaching them to
a thread, if (a) we're running low on threads, and (b) the client hasn't
responsed to a ping recently.

(cherry picked from commit c8f461dcb0b4e8d63a99b9837f2dcc1d52d66cc4)
src/rx/rx.c
src/rx/rx.h