Я сильно поощрил бы Вас использовать OpenBSD. Задача, о которой Вы справляетесь, сделана ALTQ (Альтернативная платформа Организации очередей), который был первоначально портирован из FreeBSD и интегрировался в PF. Хорошие новости - то, что OpenBSD собирается получить свою собственную платформу Организации очередей (это находится в фазе тестирования). Я отговорил бы Вас использовать pfSense. pfSense основанный на FreeBSD дистрибутив, который использует фильтр пакета OpenBSD (PF, если коротко) для фильтрации. В отличие от OpenSSH, например, PF не является портативным, его функциональность зависит от сетевого стека. Версия PF, поставленного с pfSense и FreeBSD в этом отношении, является устаревшей на 3 года и не полностью функциональной из-за отсутствия функциональности в ядре FreeBSD и сетевом стеке. Забавная вещь состоит в том, что ALTQ даже не был загружен в ядро FreeBSD по умолчанию. Если Вы используете использование FreeBSD IPFW, который является брандмауэром значения по умолчанию FreeBSD. FreeBSD поддерживает также IPfilter. IPFW использовался в качестве основы для IPTables в Linux и пока приблизительно год назад не был брандмауэр по умолчанию на OS X когда переключатель OS X к очень последней версии PF. Если Вам не нравится использование OpenBSD NetBSD, который добрался, его собственный NPF оптимизирует для многоядерных машин. Я не знаю, как организация очередей сделана в NPF.
Я также поощрил бы Вас узнавать об организации очередей, прежде чем Вы начнете делать вещи. Вы могли бы быть удивлены узнать, что организация очередей только полезна для пакетов в исходящем направлении. После того как пакет прибывает в интерфейс во входящем направлении, уже слишком поздно для организации очередей его - это уже использовало сетевую пропускную способность для получения до интерфейса, который просто получил его. Единственное решение состоит в том, чтобы включить организацию очередей на смежном маршрутизаторе или, если хост, который получил пакет, действует как маршрутизатор, для включения организации очередей во внутреннем интерфейсе, где пакеты выходят из маршрутизатора. Таким образом в Вашем OpenBSD случая поле должно действовать как маршрутизатор для Вас, чтобы смочь управлять пользователями.
С GUI, если Вам нужен GUI для конфигурирования брандмауэра Вы, вероятно, имеет не бизнес, настраивающий один. С Вашего запроса на организацию очередей, не используя порты я направил бы Вас назад к документации ALTQ так, чтобы Вы узнали о различных методах организации очередей.
Как правило, вы никогда не должны загружаться в другую операционную систему, пока одна из них находится в спящем режиме. Если вторая попытается смонтировать тот же самый раздел, что и первая, это повредит файловую систему, так как вторая ОС понятия не имеет, какие данные первая все еще может кэшировать, а первая не имеет понятия, что изменилось во время спячки[1126611].