Post on 16-Apr-2017
Quagga & ZebraOverview as of 2015/10/17
Twitter: @ebiken | ebiken.g@gmail.com
Quagga and Zebra | Overview as of 2015/10/17 1
• This document aims to summarize current status of “Quagga/Zebra” and its history, and not to be “How To” guide using Quagga.
• There are many other documents / sites explaining more technical details. i.e. installation, commands and configuration guide.
• Check links on slide “More Information about Quagga” or search Internet for such information.
Quagga and Zebra | Overview as of 2015/10/17 2
About This Document
About QuaggaA descendant of Zebra
Quagga and Zebra | Overview as of 2015/10/17 3
About Quagga
Quagga and Zebra | Overview as of 2015/10/17 4
Quagga, a descendant of Zebra
From: http://www.nongnu.org/quagga/
About Quagga
• Quagga/Zebra is a “Routing Engine” and not “Router”.
• Other functionalities required to build “Router” should be provided outside of Quagga/Zebra.
Quagga and Zebra | Overview as of 2015/10/17 5
Routing Engine != Router
Boot LoaderBoot Image Manager
HardwareManagement
Kernel
RoutingProtocol
Daemons
UserInterface
Routing Table Management
Stats / Status(SNMP, Syslog)
RoutingProtocol
Daemons
RoutingProtocol
Daemons
Network Interface Cards. FPGA, ASIC, Network Processor for offload.
Other Router Functionalities
(ACL etc.)
vtysh
zebradaemon
Other examples of “Routing Engine”BIRD http://bird.network.cz/XORP http://www.xorp.org/
OpenBGPD http://www.openbgpd.org/
About Quagga
Quagga and Zebra | Overview as of 2015/10/17 6
Protocols supported by Quagga
Reference: http://www.nongnu.org/quagga/
• Support for OSPFv3 and IS-IS is various beta states currently• IS-IS for IPv4 is believed to be usable while OSPFv3 and IS-IS for IPv6 have known issues.
SupportedNatively by Quagga
Not SupportedNatively by Quagga
About Quagga
Quagga and Zebra | Overview as of 2015/10/17 7
History of Quagga / Zebra• 1996 : Zebra Project (Open Source Software)
• Kunihiro Ishiguro realized the need for quality routing software.
• He started “Zebra Project” and created the world's first OSS routing engine software.
• 1999 : ZebOS, Commercial version of Zebra.• “IP Infusion” was founded to provide commercial
version of Zebra, ZebOS.
• Co-Founders: Kunihiro Ishiguro, Yoshinari Yoshikawa.
• ZebOS is being used in various commercial network equipment.
• 2005 : Quagga forked from Zebra Project.• Zebra Project was discontinued from various reasons.
• Quagga was forked from Zebra to continue updates.
• 2011 : OSR was formed to host Quagga (*1)• OpenSourceRouting (OSR) started in 2011 by an
initiative of the Internet Systems Consortium (ISC, www.isc.org) and Google.
• Objective was to help develop a robust and tested alternative network stack and re-ignite the open source community behind Quagga.
• 2014 : NetDEF Takes Ownership of OSR (*2)• In early 2014, ISC transferred the OpenSourceRouting
project to the Network Device Education Foundation (NetDEF, www.netdef.org), a non-profit corporation based in the Silicon Valley.
(*1) https://www.opensourcerouting.org/about-us/(*2) https://www.netdef.org/2014/03/netdef-takes-ownership-of-the-opensourcerouting-project/
About Quagga
• Open Source Routing (OSR)• https://www.opensourcerouting.org/• Started on 2011 by joint initiative of ISC and Google.
• ISC: Internet Systems Consortium (www.isc.org)• Moved under NetDEF on 2014.• Current Sponsors (public)
• https://www.opensourcerouting.org/sponsorship/sponsors/• Cumulus Networks• Google
• Network Device Education Foundation, Inc. (NetDEF)• https://www.netdef.org/about-netdef/ • not for profit 501(c)(3) Corporation formed in February of 2013.• Has a few other networking related project under it.
• Quagga• Network Device Analysis• RouteFlow
Quagga and Zebra | Overview as of 2015/10/17 8
Open Source Routing & NetDEF
About Quagga
• From “Savannah” download.• http://download.savannah.gnu.org/releases/quagga/• Linked from official http://www.nongnu.org/quagga/• Most likely the latest one.
• From Cumulus GitHub• https://github.com/CumulusNetworks/quagga• Some more patches addition to Savannah.
• From OSR• https://github.com/opensourcerouting/quagga• Repository for opensourcerouting.org Testing & Development.• A bit old and should get from “Savannah”.
Quagga and Zebra | Overview as of 2015/10/17 9
Where can I find the code?
About Quagga
Quagga and Zebra | Overview as of 2015/10/17 10
More Information about Quagga• Quagga Documents
• http://www.nongnu.org/quagga/docs.html• Quagga Info pages
• included with Quagga package• HACKING - Conventions for working on Quagga
• netDEF OpenSourceRouting• https://wiki.netdef.org/display/osr/Home• “Conference Presentations” available to
understand overview of Quagga and other routing engines.
• Install Quagga - CheatSheet - (on Slide share)• Installation cheat sheet for different Linux
distributions.• http://www.slideshare.net/naotomatsumoto/qu
agga-install-cheatsheet
• Zebra Hacking How-To• http://www.nongnu.org/quagga/zhh.html• Pretty out dated (*) but the only document
available.• (*) based on Zebra 0.91, not Quagga, on 2001.
• Worth reading before diving into source code.
• Mailing lists• http://www.nongnu.org/quagga/lists.html• Quagga Users• Quagga Dev
.
Appendix• Interesting Usages.
Quagga and Zebra | Overview as of 2015/10/17 11
Interesting Usages
• Interesting use case of using Quagga with OpenFlow Switch was presented at ONS2014. (March 6, 2014)
Quagga and Zebra | Overview as of 2015/10/17 12
Quagga with OpenFlow
https://www.opensourcerouting.org/2014/03/ons-2014-quagga-with-openflow/
• Flyer available on below link for more details.https://www.opensourcerouting.org/wp-content/uploads/2014/08/Flyer-ONS_Network_Config.pdf