[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150520073221.GA19868@unicorn.suse.cz>
Date: Wed, 20 May 2015 09:32:21 +0200
From: Michal Kubecek <mkubecek@...e.cz>
To: Patrick Simmons <linuxrocks123@...scape.net>
Cc: netdev@...r.kernel.org, Jay Vosburgh <j.vosburgh@...il.com>,
Veaceslav Falico <vfalico@...il.com>,
Andy Gospodarek <gospo@...ulusnetworks.com>
Subject: Re: [PATCH] Experimental new bonding driver mode=batman
On Tue, May 19, 2015 at 04:29:45AM -0400, Patrick Simmons wrote:
> On 05/19/2015 03:49 AM, Michal Kubecek wrote:
> >On Tue, May 19, 2015 at 02:09:43AM -0400, Patrick Simmons wrote:
> >>
> >>I've written a new mode for the kernel bonding driver. It's similar to
> >>the round-robin mode, but it keeps statistics on TCP resends so as to
> >>favor slave devices with more bandwidth when choosing where to send
> >>packets. I've tested it on two laptops using WiFi/Ethernet and it seems
> >>to work okay, but it should be considered experimental.
> >
> >A description of how is the mode supposed to work would be definitely
> >helpful.
> >
>
> Rationale: It's helpful for cases where the slave devices have
> significantly different or varying bandwidth. The reason I wrote it
> is to bond powerline networking and wireless networking adapters
> into a single interface for use with connecting to a MythTV server.
> Neither of these systems is particularly reliable with bandwidth,
> but mode=batman can adaptively figure out which network has more
> available bandwidth at any given moment. This is better than
> mode=round-robin which always balances everything 50/50.
Thank you. But I rather meant some basic description of the algorithm
used to achieve this goal. Both should be IMHO part of the commit
message.
> Regarding your analysis, I appreciate your comments, and I know it's
> rough, but I'm sorry to say I'm not really interested in doing much
> to improve its polish past where it is. If it fails some way when I
> try to deploy it, then I'll fix that, and maybe I'll play around
> with the balancing heuristics, but the code quality is what it is
> unless someone else wants to improve it. I would fix the
> indentation if that would make it acceptable for you to merge it,
> but not much more. My argument for merging it is basically "it
> doesn't do anything unless you pass mode=batman, so what's the
> harm?".
>
> So, if you guys decide you don't want to merge it because of the
> global spinlock etc., that's cool and I understand, but I thought I
> should at least post to this list so you and any other potentially
> interested people know it exists. Oh, and, if you're not going to
> merge it, please let me know so I can know post the patch to GitHub
> or somewhere. And, if you could include a note in the comments at
> the top of bond_main.c or somewhere pointing people to the patch,
> I'd very much appreciate that. I don't want anyone else to have to
> endure hours of kernel rebuilds with KASAN enabled if they want this
> functionality :)
Well, it's not my call, I'm not a bonding maintainer. But I believe at
least some of the objections would be shared by them. Of course, it's up
to you if you want to dedicate your time to improving the code to be
acceptable for mainline or rather maintain it out of tree (which may end
up taking even more time in the long term).
Michal Kubecek
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists