ALTQ

ALTQ (англ. ALTernate Queueing) — это модуль сетевого планировщика для операционных систем семейства Berkeley Software Distribution[en]*. ALTQ предоставляет различные дисциплины обслуживания очередей и компоненты для реализации механизмов распределения ресурсов, необходимых для поддержки качества обслуживания (QoS). Наиболее часто ALTQ используется на маршрутизаторах, основанных на BSD-подобных системах. ALTQ включён в базовые поставки FreeBSD, NetBSD и DragonFly BSD, был интегрирован в пакетный фильтр PF в OpenBSD, но позднее заменён новой системой диспетчеризации очередей (отмечен как устаревший в OpenBSD 5.5 и полностью удалён начиная с версии 5.6 в 2014 году)[1].

С помощью ALTQ сетевые пакеты могут быть распределены по очередям для управления пропускной способностью (шейпинг трафика). Планировщик (scheduler) определяет алгоритм, согласно которому пакеты задерживаются, отбрасываются или немедленно передаются. В реализации ALTQ для FreeBSD поддерживаются пять видов планировщиков:

  • cbq (Class-based Queueing, классовая организация очередей) — построение дерева очередей для каждого сетевого интерфейса; каждой подочереди можно назначить приоритет или ширину полосы. Приоритет влияет в первую очередь на задержку передачи пакетов, а ширина полосы — преимущественно на итоговую пропускную способность.
  • CoDel (Controlled Delay, контролируемая задержка) — алгоритм, предназначенный для борьбы с эффектом bufferbloat.
  • fairq (Fair Queuing, справедливое обслуживание очередей) — осуществляет равномерное распределение пропускной способности между всеми соединениями.
  • hfsc (Hierarchical Fair Service Curve, иерархическая кривая справедливого обслуживания) — организация дерева очередей, аналогично cbq; каждой подочереди может быть назначен приоритет и ширина полосы.
  • PRIQ (Priority Queueing, приоритетное обслуживание) — очередь прикрепляется непосредственно к сетевому интерфейсу (без древовидной структуры), каждой очереди назначается уникальный приоритет (от 0 до 15); трафик с наивысшим приоритетом обрабатывается первым.

Примечания

  1. ALTQ removed from -current (англ.). OpenBSD Journal (19 апреля 2014). Дата обращения: 15 июня 2024. Архивировано 14 сентября 2025 года.

Литература