Date: Wed, 26 Nov 1997 18:38:41 -0700 (MST) From: Charles Mott <cmott@srv.net> To: hackers@freebsd.org Subject: Adaptive scheduling Message-ID: <Pine.BSF.3.96.971126182039.27657A-100000@darkstar.home>
next in thread | raw e-mail | index | archive | help
I've been thinking about writing an engine which would adaptively shcedule packets over a crowded link. The idea would be to schedule packets based on bandwidth consumption, with both stream and source IP address taken into account. The idea is to give the light users good response, but slow down large transfers a little. There might be other scheduling algorithms also. I see this as a type of state based routing in which all data streams are monitored. The idea would be to have a drop-in module similar to what is already done for natd and ppp -alias. It is not that difficult to schedule outgoing packets, but incoming traffic is difficult to control. In the case of tcp streams, one suggestion has been to rewrite the window value on the tcp packets so that holding back ACKs will slow down the incoming stream after about two packets or so. Additionally, it is possible to send icmp source quench packets to try to slow down external sources. I don't know that these mechanisms will work very well, though. I would be interested to hear other ideas on the subject. Charles Mott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.971126182039.27657A-100000>