Babel: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
Keine Bearbeitungszusammenfassung
(30 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 5: Zeile 5:


Die Routingdistanzmetrik wird über einen verteilten Bellman-Ford-Algorithmus berechnet.
Die Routingdistanzmetrik wird über einen verteilten Bellman-Ford-Algorithmus berechnet.
 
== Freifunk Franken ==
Babel strebt an, ein offizieller Standard der Internet Engineering Task Force (IETF) zu werden.


Babel wird als Layer-3-Routingprotokoll im Freifunk-Franken-Backbone verwendet. So werden alle Gateways über das Protokoll direkt oder indirekt miteinander verbunden. Babel tauscht gegenseitig die Routen der Gateways aus, sodass jedes Gateway weiß, über welchen Weg es eine andere Hood erreichen kann. Das eigentliche Routing übernimmt der Linuxkernel. Babel ist nur für den Austausch der Informationen zuständig.
Babel wird als Layer-3-Routingprotokoll im Freifunk-Franken-Backbone verwendet. So werden alle Gateways über das Protokoll direkt oder indirekt miteinander verbunden. Babel tauscht gegenseitig die Routen der Gateways aus, sodass jedes Gateway weiß, über welchen Weg es eine andere Hood erreichen kann. Das eigentliche Routing übernimmt der Linuxkernel. Babel ist nur für den Austausch der Informationen zuständig.
Zeile 12: Zeile 11:
== Versionshistorie ==
== Versionshistorie ==


Übersicht der Babel-Versionshistorie und welche Freifunk-Franken-Gateway-Firmwares welche Version implementiert haben. Die Angaben sind nicht vollständig.  
Übersicht der Babel-Versionshistorie und welche Freifunk-Franken-Layer-3-Firmwares welche Version implementiert haben. Die Angaben sind nicht vollständig.  


{| class="wikitable"
{| class="wikitable"
|-
|-
! Version !! Veröffentlichung !! Firmware !! Bemerkung
! style="width:110px;" | Version !! style="width:160px;" | Datum !! Firmware !! Bemerkung
|-
| babeld-1.13 || ''offen''[https://github.com/jech/babeld/blob/master/CHANGES] || || – ''Remove diversity support and related configuration file directives. This is an incompatible change.''
|-
| babeld-1.12.1 || 18. Mai 2022 || || – ''Implement separate PC values for unicast and multicast, which avoids dropping packets protected by MAC when WiFi powersave is active''<br />– ''Schedule an interface check just after adding an interface''
|-
| babeld-1.12 || 5. Mai 2022 || || – ''Implement v4-via-v6 routing (RFC 9229), which allows a router with IPv4 addresses only to route IPv4''<br />– ''Enable extended Netlink acks when available''<br />– ''Fix restoring of interface configuration to avoid unbounded memory consumption''<br />– ''Fix handling of deny filters in the install chain''
|-
|-
| babeld-1.9.1 || 20. August 2019 || ||
| babeld-1.11 || 30. März 2022 || layer3-20220814 || – Implementierung der MAC Authentication (RFC 8967)<br />– Schnittstelle der ''add_filter''-Funktion wurde geändert, um sie einfacher in [[OpenWrt]] zu integrieren
|-
|-
| babeld-1.9.0 || 4. August 2019 || ||
| babeld-1.10 || 25. April 2021 || layer3-20211201-beta, layer3-20211220, layer3-20211224, layer3-20220405-beta, layer3-20220413 || – ''Removed the disambiguation code: source-specific routing is no longer supported for IPv4, and for IPv6 only on Linux 3.11 or later''<br />– ''Fixed an issue handling of retractions with no next hop, which caused interoperability problems with BIRD''<br />– ''If skip-kernel-setup is set, we no longer disable the rp_filter, which makes babeld work in containers''
|-
| babeld-1.9.2 || 21. April 2020 || gw_20200619, gw_20201028, layer3-20200423-beta, layer3-20200501, layer3-20210211-beta, layer3-20210218, layer3-20210226 || – ''Fixed two issues that could cause IPv4 routes to be represented incorrectly, with a range of confusing symptoms''<br />– ''Fixed incorrect parsing of TLVs with an unknown Address Encoding''<br />– ''Fixed access to mis-aligned data structure''
|-
| babeld-1.9.1 || 20. August 2019 || gw-dev_20190822, gw-dev_20191002, gw-dev_20191008, gw-dev_20200109, gw-dev_20200330, layer3-20191123-alpha, layer3-20191130-alpha, layer3-20191214-beta, layer3-20191224, layer3-20200118 || – ''Fixed a crash that could happen when unicast and RTT estimation are both enabled on an interface''<br />– ''Fixed compilation under BSD''
|-
| babeld-1.9.0 || 4. August 2019 || || Änderung von Source Specific, Kompatibilitätsbruch! Version ist verbuggt und stürzt <abbr title="unter Umständen">u.&nbsp;U.</abbr> ab.
|-
|-
| babeld-1.8.5 || 22. Juli 2019 || ||
| babeld-1.8.5 || 22. Juli 2019 || ||
Zeile 33: Zeile 44:
|-
|-
| babeld-1.8.0 || 6. Dezember 2016 || ||
| babeld-1.8.0 || 6. Dezember 2016 || ||
|-
| … || … || ||
|-
| babeld 0.96 || 11. August 2009 || || Umbenennung von „babel“ in „babeld“
|-
|-
| … || … || ||
| … || … || ||
Zeile 42: Zeile 49:
| babel 0.1 || 22. August 2007 || || Erstveröffentlichung
| babel 0.1 || 22. August 2007 || || Erstveröffentlichung
|}
|}
babeld-1.10 wurde ursprünglich als ''babeld-2.0'' angekündigt.


== Siehe auch ==
== Siehe auch ==
Zeile 50: Zeile 59:


== Weblinks ==
== Weblinks ==
* [https://www.irif.fr/~jch//software/babel/ Offizielle Website von Babel]
* [https://www.irif.fr/~jch//software/babel/ Offizielle Website]
* [https://github.com/jech/babeld Quellcode auf GitHub]
* [https://github.com/jech/babeld Quellcode auf GitHub]


[[Kategorie:Routingprotokoll]]
[[Kategorie:Routingprotokoll]]
[[Kategorie:Technik]]
[[Kategorie:Technik]]

Version vom 18. September 2022, 14:31 Uhr

Offizielles Logo von Babel

Babel ist ein Distanzvektorprotokoll für IPv6 und IPv4, ist frei von Routingschleifen und weist schnelle Konvergenzeigenschaften auf. Es basiert auf den Prinzipien von Destination-Sequenced Distance-Vector Routing (DSDV), Ad hoc On-Demand Distance Vector (AODV) Routing und Enhanced Interior Gateway Routing Protocol (EIGRP) und arbeitet mit kabelgebundenen Netzwerken sowie drahtlosen Meshnetzwerken.

Die Routingdistanzmetrik wird über einen verteilten Bellman-Ford-Algorithmus berechnet.

Freifunk Franken

Babel wird als Layer-3-Routingprotokoll im Freifunk-Franken-Backbone verwendet. So werden alle Gateways über das Protokoll direkt oder indirekt miteinander verbunden. Babel tauscht gegenseitig die Routen der Gateways aus, sodass jedes Gateway weiß, über welchen Weg es eine andere Hood erreichen kann. Das eigentliche Routing übernimmt der Linuxkernel. Babel ist nur für den Austausch der Informationen zuständig.

Versionshistorie

Übersicht der Babel-Versionshistorie und welche Freifunk-Franken-Layer-3-Firmwares welche Version implementiert haben. Die Angaben sind nicht vollständig.

Version Datum Firmware Bemerkung
babeld-1.13 offen[1] Remove diversity support and related configuration file directives. This is an incompatible change.
babeld-1.12.1 18. Mai 2022 Implement separate PC values for unicast and multicast, which avoids dropping packets protected by MAC when WiFi powersave is active
Schedule an interface check just after adding an interface
babeld-1.12 5. Mai 2022 Implement v4-via-v6 routing (RFC 9229), which allows a router with IPv4 addresses only to route IPv4
Enable extended Netlink acks when available
Fix restoring of interface configuration to avoid unbounded memory consumption
Fix handling of deny filters in the install chain
babeld-1.11 30. März 2022 layer3-20220814 – Implementierung der MAC Authentication (RFC 8967)
– Schnittstelle der add_filter-Funktion wurde geändert, um sie einfacher in OpenWrt zu integrieren
babeld-1.10 25. April 2021 layer3-20211201-beta, layer3-20211220, layer3-20211224, layer3-20220405-beta, layer3-20220413 Removed the disambiguation code: source-specific routing is no longer supported for IPv4, and for IPv6 only on Linux 3.11 or later
Fixed an issue handling of retractions with no next hop, which caused interoperability problems with BIRD
If skip-kernel-setup is set, we no longer disable the rp_filter, which makes babeld work in containers
babeld-1.9.2 21. April 2020 gw_20200619, gw_20201028, layer3-20200423-beta, layer3-20200501, layer3-20210211-beta, layer3-20210218, layer3-20210226 Fixed two issues that could cause IPv4 routes to be represented incorrectly, with a range of confusing symptoms
Fixed incorrect parsing of TLVs with an unknown Address Encoding
Fixed access to mis-aligned data structure
babeld-1.9.1 20. August 2019 gw-dev_20190822, gw-dev_20191002, gw-dev_20191008, gw-dev_20200109, gw-dev_20200330, layer3-20191123-alpha, layer3-20191130-alpha, layer3-20191214-beta, layer3-20191224, layer3-20200118 Fixed a crash that could happen when unicast and RTT estimation are both enabled on an interface
Fixed compilation under BSD
babeld-1.9.0 4. August 2019 Änderung von Source Specific, Kompatibilitätsbruch! Version ist verbuggt und stürzt u. U. ab.
babeld-1.8.5 22. Juli 2019
babeld-1.8.4 9. November 2018 gw_20190602
babeld-1.8.3 24. September 2018 gw_20181015
babeld-1.8.2 12. Mai 2018 layer3-20181202-102-g3bc4f01
babeld-1.8.1 7. April 2018
babeld-1.8.0 6. Dezember 2016
babel 0.1 22. August 2007 Erstveröffentlichung

babeld-1.10 wurde ursprünglich als babeld-2.0 angekündigt.

Siehe auch

Weblinks