>>>>> "jamal" == jamal <hadi@cyberus.ca> writes:
jamal> cc'ed now ;-> ) So how are you sending the feedback all the
jamal> way to the transport protocol? Say, TCP where it might be
The trick is, I don't :-). Well, of course I do, but not directly
to tcp but only to the well-defined interface. The idea is to use the
same measure for local `congestion' as is also used to flow control socket
user-space applciations -- using the socket's wmem account. The outline
is as follows:
ppp->start_xmit() or dev->hard_start_xmit() first checks for the
lower layer if(socket sock_wspace(sk) == 0). If there is no write space,
then the frame is rejected.
Clearing a busy condition is done by hooking into the the sk->write_space()
callback. This needs to perform the same check as the xmit methods above,
and if successful, the busy conditions is cleared by netif_wake_queue() or
ppp_output_wakeup().
jamal> really useful to distinguish between local congestion vs
jamal> "somewhere along the end2end path" congestion; I havent
jamal> looked at your code but i suspect you are using the
I hav'nt uploaded it yet because I have not done any testing yet. Hopefully,
in a few days I can do it.
Henner
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Apr 23 2000 - 21:00:17 EST