Alex Atkin UK wrote:Understandable, except if IFB reduces the flexibility of the QoS implementation in OpenWRT its a HUGE step backwards IMO.
Or am I wrong and IFB can support 99% of use cases that IMQ can?
There are also major concerns with time and management. If the dev's were spending too much time with getting IMQ working on a given kernel then it makes more sense to drop IMQ in favor of IFB. Release management is a tricky business and sometimes you have to fallback if the time investment grows too great. From what jow posted this sounds like one of those cases.
Alex Atkin UK wrote:I have been trying to get my head around this for weeks as you can see on this thread, to use IFB or IMQ, that is the question.
It looks like IFB is a bit newer and not quite as robust as the IMQ solution. If you read through the IMQ site and other write-ups it looks like this is similar to the zfs vs btrfs arguments. Both systems have their place and sometimes you'll need the one that's been around longer.
If my analogy is off base / wrong, please correct me and I'll update my post.
Alex Atkin UK wrote:I would rather stick with whatever OpenWRT has as standard for ease of building for the op, but if its a choice between an implementation that works and one that doesn't - its pretty obvious which to choose then.
Ease of building isn't a concern of mine at the moment. I've done enough work building distro's from sources where I'm not worried. My worry is that the Atom boards and other equipment I am targeting is properly utilized first and foremost. After that I want to make sure my needs and the needs of users are met. I started with OpenWRT because it is the best Linux Router distribution out there. It is also being actively maintained and has a good community.
The great part about a community is we can do things that fall outside of the core scope of the project. Like building OpenWRT for equipment that is well outside of their base target (Atom / C7 / XEON / Whatever). We can also take a closer look at setting up IMQ as a secondary package that is installable, but not on by default. This way the default matches documentation but if you need to deviate, you can. I already setup IMQ as a set of packages and the core can sit side by side with IFB. The trick would be the QoS scripts package. In order to finish off IMQ support, we will need to update the backfire QoS scripts package and set it up so you can have the IFB *or* IMQ version installed. Once we have an updated QoS scripts package we will likely be good to go, if not we play around with it and make it work in the end.
Keep in mind there is also a very large package change coming down the line. We may end up filling in gaps by default even if there was no IFB / IMQ discussion. I plan on keeping an eye on the package shuffle and hopefully I can step up and volunteer as maintainer of some. Either way I expect to get stuck working on updating some packages as needs arise.