quagga

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Quagga
Тип программное обеспечение для маршрутизации[вд]
Написана на Си[1]
Операционная система Unix-подобная операционная система
Последняя версия
Репозиторий github.com/Quagga
Лицензия GNU GPL
Сайт quagga.net

Quagga — пакет свободного программного обеспечения, поддерживающий протоколы динамической маршрутизации IP. Компьютер с установленным и сконфигурированным пакетом Quagga становится способен использовать любые из нижеследующих протоколов динамической маршрутизации:

  • Routing Information Protocol (RIP): v1, v2, v3;
  • Open Shortest Path First (OSPF): v2, v3;
  • Border Gateway Protocol (BGP): v4;
  • Intermediate System to Intermediate System (IS-IS);
  • Protocol Independent Multicast (PIM, только PIM-SSM).

Пакет Quagga может быть установлен на UNIX-подобные операционные системы. Quagga — это усовершенствованная версия GNU Zebra, компьютерной программы, развитие которой остановилось в 2005 году.

Квагга (Quagga) — это подвид зебры, обитавший в южной Африке. В отличие от самого животного, истреблённого в конце XIX‐ого века, проект Quagga пережил ныне умерший проект GNU Zebra. Последняя стабильная версия Zebra (0.95a) датирована 2005-09-08, большинство BGP маршрутизаторов, которые использовали GNU Zebra, перешли на Quagga.

Архитектура

[править | править код]

Quagga состоит из базового ядра (core daemon) zebra, выполняющего роль промежуточного уровня абстракции (abstraction layer) ядра ОС, и предоставляющего Zserv API клиентам по протоколу TCP. Клиентами Zserv выступают службы (демоны):

  • ospfd (протокол OSPFv2);
  • ripd (протокол RIP v1, V2);
  • ospf6d (протокол OSPFv3 IPv6);
  • ripngd (протокол RIPng IPv6);
  • bgpd (протокол BGPv4+, включая поддержку multicast и IPv6));
  • isisd (протокол IS-IS);
  • pimd (протокол PIM, пока только PIM-SSM).

Библиотека Quagga существенно облегчает разработку дополнительных модулей, позволяя всем её службам использовать унифицированный способ конфигурации и управления.

Проекты, использующие Quagga

[править | править код]

Для пакета Quagga есть дополнения, которые не включены в основную ветку разработки по тем или иным причинам.

Проект MPLS-Linux (недоступная ссылка) несколько шире, чем та область, которую охватывает пакет Quagga, и затрагивает ещё подсистему netfilter ядра Linux.

Проект Babel — реализация RFC 6126. Был включен в основную ветку Quagga до версии Quagga 0.99.24.1, но, позже, был исключен из-за лицензионных разногласий[4]: в отличие от Quagga, проект Babel использует BSD-подобную лицензию.

Примечания

[править | править код]
  1. The quagga Open Source Project on Open Hub: Languages Page — 2006.
  2. Jakma P. Quagga 1.2.4 Released (англ.) — 2018.
  3. https://github.com/Quagga/quagga/releases/tag/quagga-1.2.4 — 2018.
  4. Remove babeld from Quagga. Дата обращения: 17 июня 2015. Архивировано 17 июня 2015 года.

B.A.T.M.A.N.