Messages in this thread | | | Date | Mon, 31 May 2010 17:20:29 +0100 | From | Ben McKeegan <> | Subject | Re: [Patch] fix packet loss and massive ping spikes with PPP multi-link |
| |
Paul Mackerras wrote:
>> I needed to do something similar a while back and I took a very >> different approach, which I think is more flexible. Rather than >> implement a new round-robin scheduler I simply introduced a target >> minimum fragment size into the fragment size calculation, as a per >> bundle parameter that can be configured via a new ioctl. This >> modifies the algorithm so that it tries to limit the number of >> fragments such that each fragment is at least the minimum size. If >> the minimum size is greater than the packet size it will not be >> fragmented all but will instead just get sent down the next >> available channel. >> >> A pppd plugin generates the ioctl call allowing this to be tweaked >> per connection. It is more flexible in that you can still have the >> larger packets fragmented if you wish. > > I like this a lot better than the other proposed patch. It adds less > code because it uses the fact that ppp_mp_explode() already has a > round-robin capability using the ppp->nxchan field, plus it provides a > way to control it per bundle via pppd. > > If you fix up the indentation issues (2-space indent in some of the > added code -- if you're using emacs, set c-basic-offset to 8), I'll > ack it and hopefully DaveM will pick it up.
Okay, I'll fix it up when I'm back at work Tuesday and submit (today is a UK public holiday) and also dig out and fix up the userspace code to go with it.
Ben.
| |