mirror of
				https://git.proxmox.com/git/mirror_frr
				synced 2025-10-31 23:46:26 +00:00 
			
		
		
		
	 c71559de10
			
		
	
	
		c71559de10
		
	
	
	
	
		
			
			Lame attempt at describing the factors involved in choosing resources for running FRR Signed-off-by: Quentin Young <qlyoung@nvidia.com>
		
			
				
	
	
		
			515 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			515 lines
		
	
	
		
			24 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. _overview:
 | |
| 
 | |
| ********
 | |
| Overview
 | |
| ********
 | |
| 
 | |
| `FRR`_ is a fully featured, high performance, free software IP routing suite.
 | |
| 
 | |
| FRR implements all standard routing protocols such as BGP, RIP, OSPF, IS-IS and
 | |
| more (see :ref:`feature-matrix`), as well as many of their extensions.
 | |
| 
 | |
| FRR is a high performance suite written primarily in C. It can easily handle
 | |
| full Internet routing tables and is suitable for use on hardware ranging from
 | |
| cheap SBCs to commercial grade routers. It is actively used in production by
 | |
| hundreds of companies, universities, research labs and governments.
 | |
| 
 | |
| FRR is distributed under GPLv2, with development modeled after the Linux
 | |
| kernel. Anyone may contribute features, bug fixes, tools, documentation
 | |
| updates, or anything else.
 | |
| 
 | |
| FRR is a fork of `Quagga <http://www.quagga.net/>`_.
 | |
| 
 | |
| .. _how-to-get-frr:
 | |
| 
 | |
| How to get FRR
 | |
| ==============
 | |
| 
 | |
| The official FRR website is located at |PACKAGE_URL| and contains further
 | |
| information, as well as links to additional resources.
 | |
| 
 | |
| Several distributions provide packages for FRR. Check your distribution's
 | |
| repositories to find out if a suitable version is available.
 | |
| 
 | |
| Up-to-date Debian & Redhat packages are available at https://deb.frrouting.org/
 | |
| & https://rpm.frrouting.org/ respectively.
 | |
| 
 | |
| For instructions on installing from source, refer to the
 | |
| `developer documentation <http://docs.frrouting.org/projects/dev-guide/en/latest/>`_.
 | |
| 
 | |
| 
 | |
| .. _about-frr:
 | |
| 
 | |
| About FRR
 | |
| =========
 | |
| 
 | |
| FRR provides IP routing services. Its role in a networking stack is to exchange
 | |
| routing information with other routers, make routing and policy decisions, and
 | |
| inform other layers of these decisions. In the most common scenario, FRR
 | |
| installs routing decisions into the OS kernel, allowing the kernel networking
 | |
| stack to make the corresponding forwarding decisions.
 | |
| 
 | |
| In addition to dynamic routing FRR supports the full range of L3 configuration,
 | |
| including static routes, addresses, router advertisements etc. It has some
 | |
| light L2 functionality as well, but this is mostly left to the platform. This
 | |
| makes it suitable for deployments ranging from small home networks with static
 | |
| routes to Internet exchanges running full Internet tables.
 | |
| 
 | |
| FRR runs on all modern \*NIX operating systems, including Linux and the BSDs.
 | |
| Feature support varies by platform; see the :ref:`feature-matrix`.
 | |
| 
 | |
| System Requirements
 | |
| -------------------
 | |
| 
 | |
| System resources needed by FRR are highly dependent on workload. Routing
 | |
| software performance is particularly susceptible to external factors such as:
 | |
| 
 | |
| * Kernel networking stack
 | |
| * Physical NIC
 | |
| * Peer behavior
 | |
| * Routing information scale
 | |
| 
 | |
| Because of these factors - especially the last one - it's difficult to lay out
 | |
| resource requirements.
 | |
| 
 | |
| To put this in perspective, FRR can be run on very low resource systems such as
 | |
| SBCs, provided it is not stressed too much. If you want to set up 4 Raspberry
 | |
| Pis to play with BGP or OSPF, it should work fine. If you ask a FRR to process
 | |
| a complete internet routing table on a Raspberry Pi, you will be disappointed.
 | |
| However, given enough resources, FRR ought to be capable of acting as a core IX
 | |
| router. Such a use case requires at least 4gb of memory and a recent quad-core
 | |
| server processor at a minimum.
 | |
| 
 | |
| If you are new to networking, an important thing to remember is that FRR is
 | |
| control plane software. It does not itself forward packets - it exchanges
 | |
| information with peers about how to forward packets. Forwarding plane
 | |
| performance largely depends on choice of NIC / ASIC.
 | |
| 
 | |
| 
 | |
| System Architecture
 | |
| -------------------
 | |
| 
 | |
| .. index::
 | |
|    pair: architecture; FRR
 | |
| 
 | |
| Traditional routing software is made as a one process program which provides
 | |
| all of the routing protocol functionalities. FRR takes a different approach.
 | |
| FRR is a suite of daemons that work together to build the routing table. Each
 | |
| major protocol is implemented in its own daemon, and these daemons talk to a
 | |
| middleman daemon (*zebra*), which is responsible for coordinating routing
 | |
| decisions and talking to the dataplane.
 | |
| 
 | |
| This architecture allows for high resiliency, since an error, crash or exploit
 | |
| in one protocol daemon will generally not affect the others. It is also
 | |
| flexible and extensible since the modularity makes it easy to implement new
 | |
| protocols and tie them into the suite. Additionally, each daemon implements a
 | |
| plugin system allowing new functionality to be loaded at runtime.
 | |
| 
 | |
| An illustration of the large scale architecture is given below.
 | |
| 
 | |
| ::
 | |
| 
 | |
|    +----+  +----+  +-----+  +----+  +----+  +----+  +-----+
 | |
|    |bgpd|  |ripd|  |ospfd|  |ldpd|  |pbrd|  |pimd|  |.....|
 | |
|    +----+  +----+  +-----+  +----+  +----+  +----+  +-----+
 | |
|         |       |        |       |       |       |        |
 | |
|    +----v-------v--------v-------v-------v-------v--------v
 | |
|    |                                                      |
 | |
|    |                         Zebra                        |
 | |
|    |                                                      |
 | |
|    +------------------------------------------------------+
 | |
|           |                    |                   |
 | |
|           |                    |                   |
 | |
|    +------v------+   +---------v--------+   +------v------+
 | |
|    |             |   |                  |   |             |
 | |
|    | *NIX Kernel |   | Remote dataplane |   | ........... |
 | |
|    |             |   |                  |   |             |
 | |
|    +-------------+   +------------------+   +-------------+
 | |
| 
 | |
| 
 | |
| All of the FRR daemons can be managed through a single integrated user
 | |
| interface shell called *vtysh*. *vtysh* connects to each daemon through a UNIX
 | |
| domain socket and then works as a proxy for user input. In addition to a
 | |
| unified frontend, *vtysh* also provides the ability to configure all the
 | |
| daemons using a single configuration file through the integrated configuration
 | |
| mode. This avoids the overhead of maintaining a separate configuration file for
 | |
| each daemon.
 | |
| 
 | |
| FRR is currently implementing a new internal configuration system based on YANG
 | |
| data models. When this work is completed, FRR will be a fully programmable
 | |
| routing stack.
 | |
| 
 | |
| 
 | |
| .. index::
 | |
|    pair: platforms; FRR
 | |
|    pair: operating systems; FRR
 | |
| 
 | |
| .. _supported-platforms:
 | |
| 
 | |
| Supported Platforms
 | |
| -------------------
 | |
| 
 | |
| 
 | |
| Currently FRR supports GNU/Linux and BSD. Porting FRR to other platforms is not
 | |
| too difficult as platform dependent code should be mostly limited to the
 | |
| *Zebra* daemon. Protocol daemons are largely platform independent. Please let
 | |
| us know if you can get FRR to run on a platform which is not listed below:
 | |
| 
 | |
| - GNU/Linux
 | |
| - FreeBSD
 | |
| - NetBSD
 | |
| - OpenBSD
 | |
| 
 | |
| Versions of these platforms that are older than around 2 years from the point
 | |
| of their original release (in case of GNU/Linux, this is since the kernel's
 | |
| release on https://kernel.org/) may need some work. Similarly, the following
 | |
| platforms may work with some effort:
 | |
| 
 | |
| - MacOS
 | |
| 
 | |
| Recent versions of the following compilers are well tested:
 | |
| 
 | |
| - GNU's GCC
 | |
| - LLVM's Clang
 | |
| - Intel's ICC
 | |
| 
 | |
| .. _unsupported-platforms:
 | |
| 
 | |
| Unsupported Platforms
 | |
| ---------------------
 | |
| 
 | |
| In General if the platform you are attempting to use is not listed above then
 | |
| FRR does not support being run on that platform.  The only caveat here is that
 | |
| version 7.5 and before Solaris was supported in a limited fashion.
 | |
| 
 | |
| .. _feature-matrix:
 | |
| 
 | |
| Feature Matrix
 | |
| ^^^^^^^^^^^^^^
 | |
| 
 | |
| The following table lists all protocols cross-referenced to all operating
 | |
| systems that have at least CI build tests. Note that for features, only
 | |
| features with system dependencies are included here; if you don't see the
 | |
| feature you're interested in, it should be supported on your platform.
 | |
| 
 | |
| .. role:: mark
 | |
| 
 | |
| .. comment - the :mark:`X` pieces mesh with a little bit of JavaScript and
 | |
|    CSS in _static/overrides.{js,css} respectively.  The JS code looks at the
 | |
|    presence of the 'Y' 'N' '≥' '†' or 'CP' strings.  This seemed to be the
 | |
|    best / least intrusive way of getting a nice table in HTML.  The table
 | |
|    will look somewhat shoddy on other sphinx targets like PDF or info (but
 | |
|    should still be readable.)
 | |
| 
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | Daemon / Feature                  | Linux          | OpenBSD      | FreeBSD    | NetBSD     |
 | |
| +===================================+================+==============+============+============+
 | |
| | **FRR Core**                      |                |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `zebra`                           | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    VRF                            | :mark:`≥4.8`   | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    MPLS                           | :mark:`≥4.5`   | :mark:`Y`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `pbrd` (Policy Routing)           | :mark:`Y`      | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | **WAN / Carrier protocols**       |                |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `bgpd` (BGP)                      | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    VRF / L3VPN                    | :mark:`≥4.8`   | :mark:`CP`   | :mark:`CP` | :mark:`CP` |
 | |
| |                                   | :mark:`†4.3`   |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    EVPN                           | :mark:`≥4.18`  | :mark:`CP`   | :mark:`CP` | :mark:`CP` |
 | |
| |                                   | :mark:`†4.9`   |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    VNC (Virtual Network Control)  | :mark:`CP`     | :mark:`CP`   | :mark:`CP` | :mark:`CP` |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    Flowspec                       | :mark:`CP`     | :mark:`CP`   | :mark:`CP` | :mark:`CP` |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `ldpd` (LDP)                      | :mark:`≥4.5`   | :mark:`Y`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    VPWS / PW                      | :mark:`N`      | :mark:`≥5.8` | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    VPLS                           | :mark:`N`      | :mark:`≥5.8` | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `nhrpd` (NHRP)                    | :mark:`Y`      | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | **Link-State Routing**            |                |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `ospfd` (OSPFv2)                  | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    Segment Routing                | :mark:`≥4.12`  | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `ospf6d` (OSPFv3)                 | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `isisd` (IS-IS)                   | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | **Distance-Vector Routing**       |                |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `ripd` (RIPv2)                    | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `ripngd` (RIPng)                  | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `babeld` (BABEL)                  | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `eigrpd` (EIGRP)                  | :mark:`Y`      | :mark:`Y`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | **Multicast Routing**             |                |              |            |            |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `pimd` (PIM)                      | :mark:`≥4.18`  | :mark:`N`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    SSM (Source Specific)          | :mark:`Y`      | :mark:`N`    | :mark:`Y`  | :mark:`Y`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    ASM (Any Source)               | :mark:`Y`      | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| |    EVPN BUM Forwarding            | :mark:`≥5.0`   | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| | `vrrpd` (VRRP)                    | :mark:`≥5.1`   | :mark:`N`    | :mark:`N`  | :mark:`N`  |
 | |
| +-----------------------------------+----------------+--------------+------------+------------+
 | |
| 
 | |
| The indicators have the following semantics:
 | |
| 
 | |
| * :mark:`Y` - daemon/feature fully functional
 | |
| * :mark:`≥X.X` - fully functional with kernel version X.X or newer
 | |
| * :mark:`†X.X` - restricted functionality or impaired performance with kernel version X.X or newer
 | |
| * :mark:`CP` - control plane only (i.e. BGP route server / route reflector)
 | |
| * :mark:`N` - daemon/feature not supported by operating system
 | |
| 
 | |
| 
 | |
| Known Kernel Issues
 | |
| -------------------
 | |
| 
 | |
| - Linux < 4.11
 | |
| 
 | |
|   v6 Route Replacement - Linux kernels before 4.11 can cause issues with v6
 | |
|   route deletion when you have ECMP routes installed into the kernel. This
 | |
|   especially becomes apparent if the route is being transformed from one ECMP
 | |
|   path to another.
 | |
| 
 | |
| 
 | |
| .. index::
 | |
|    pair: rfcs; FRR
 | |
| 
 | |
| .. _supported-rfcs:
 | |
| 
 | |
| Supported RFCs
 | |
| --------------
 | |
| 
 | |
| FRR implements the following RFCs:
 | |
| 
 | |
| .. note:: This list is incomplete.
 | |
| 
 | |
| BGP
 | |
| ----
 | |
| 
 | |
| - :rfc:`1771`
 | |
|   :t:`A Border Gateway Protocol 4 (BGP-4). Y. Rekhter & T. Li. March 1995.`
 | |
| - :rfc:`1965`
 | |
|   :t:`Autonomous System Confederations for BGP. P. Traina. June 1996.`
 | |
| - :rfc:`1997`
 | |
|   :t:`BGP Communities Attribute. R. Chandra, P. Traina & T. Li. August 1996.`
 | |
| - :rfc:`2439`
 | |
|   :t:`BGP Route Flap Damping. C. Villamizar, R. Chandra, R. Govindan. November 1998.`
 | |
| - :rfc:`2545`
 | |
|   :t:`Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing. P.
 | |
|   Marques, F. Dupont. March 1999.`
 | |
| - :rfc:`2796`
 | |
|   :t:`BGP Route Reflection An alternative to full mesh IBGP. T. Bates & R. Chandrasekeran. June 1996.`
 | |
| - :rfc:`2842`
 | |
|   :t:`Capabilities Advertisement with BGP-4. R. Chandra, J. Scudder. May 2000.`
 | |
| - :rfc:`2858`
 | |
|   :t:`Multiprotocol Extensions for BGP-4. T. Bates, Y. Rekhter, R. Chandra, D.`
 | |
| - :rfc:`3107`
 | |
|   :t:`Carrying Label Information in BGP-4. Y. Rekhter & E. Rosen. May 2001.`
 | |
| - :rfc:`3765`
 | |
|   :t:`NOPEER Community for Border Gateway Protocol (BGP) Route Scope Control. G.Huston, April 2001.`
 | |
| - :rfc:`4271`
 | |
|   :t:`A Border Gateway Protocol 4 (BGP-4). Updates RFC1771. Y. Rekhter, T. Li & S. Hares. January 2006.`
 | |
| - :rfc:`4364`
 | |
|   :t:`BGP/MPLS IP Virtual Private Networks (VPNs). Y. Rekhter. Feb 2006.`
 | |
| - :rfc:`4486`
 | |
|   :t:`Subcodes for BGP Cease Notification Message. E. Chen, V. Gillet. April 2006.`
 | |
| - :rfc:`4659`
 | |
|   :t:`BGP-MPLS IP Virtual Private Network (VPN) Extension for IPv6 VPN. J. De Clercq, D. Ooms, M. Carugi, F. Le Faucheur. September 2006.`
 | |
| - :rfc:`4893`
 | |
|   :t:`BGP Support for Four-octet AS Number Space. Q. Vohra, E. Chen May 2007.`
 | |
| - :rfc:`5004`
 | |
|   :t:`Avoid BGP Best Path Transitions from One External to Another. E. Chen & S. Sangli. September 2007 (Partial support).`
 | |
| - :rfc:`5082`
 | |
|   :t:`The Generalized TTL Security Mechanism (GTSM). V. Gill, J. Heasley, D. Meyer, P. Savola, C. Pingnataro. October 2007.`
 | |
| - :rfc:`5575`
 | |
|   :t:`Dissemination of Flow Specification Rules. P. Marques, N. Sheth, R. Raszuk, B. Greene, J. Mauch, D. McPherson. August 2009`
 | |
| - :rfc:`6286`
 | |
|   :t:`Autonomous-System-Wide Unique BGP Identifier for BGP-4. E. Chen, J. Yuan, June 2011.`
 | |
| - :rfc:`6608`
 | |
|   :t:`Subcodes for BGP Finite State Machine Error. J. Dong, M. Chen, Huawei Technologies, A. Suryanarayana, Cisco Systems. May 2012.`
 | |
| - :rfc:`6810`
 | |
|   :t:`The Resource Public Key Infrastructure (RPKI) to Router Protocol. R. Bush, R. Austein. January 2013.`
 | |
| - :rfc:`6811`
 | |
|   :t:`BGP Prefix Origin Validation. P. Mohapatra, J. Scudder, D. Ward, R. Bush, R. Austein. January 2013.`
 | |
| - :rfc:`7313`
 | |
|   :t:`Enhanced Route Refresh Capability for BGP-4. K. Patel, E. Chen, B. Venkatachalapathy. July 2014.`
 | |
| - :rfc:`7606`
 | |
|   :t:`Revised Error Handling for BGP UPDATE Messages. E. Chen, J. Scudder, P. Mohapatra, K. Patel. August 2015.`
 | |
| - :rfc:`7607`
 | |
|   :t:`Codification of AS 0 Processing. W. Kumari, R. Bush, H. Schiller, K. Patel. August 2015.`
 | |
| - :rfc:`7611`
 | |
|   :t:`BGP ACCEPT_OWN Community Attribute. J. Uttaro, P. Mohapatra, D. Smith, R. Raszuk, J. Scudder. August 2015.`
 | |
| - :rfc:`7999`
 | |
|   :t:`BLACKHOLE Community. T. King, C. Dietzel, J. Snijders, G. Doering, G. Hankins. Oct 2016.`
 | |
| - :rfc:`8092`
 | |
|   :t:`BGP Large Communities Attribute. J. Heitz, Ed., J. Snijders, Ed, K. Patel, I. Bagdonas, N. Hilliard. February 2017`
 | |
| - :rfc:`8195`
 | |
|   :t:`Use of BGP Large Communities. J. Snijders, J. Heasley, M. Schmidt, June 2017`
 | |
| - :rfc:`8203`
 | |
|   :t:`BGP Administrative Shutdown Communication. J. Snijders, J. Heitz, J. Scudder. July 2017.`
 | |
| - :rfc:`8212`
 | |
|   :t:`Default External BGP (EBGP) Route Propagation Behavior without Policies. J. Mauch, J. Snijders, G. Hankins. July 2017`
 | |
| - :rfc:`8277`
 | |
|   :t:`Using BGP to Bind MPLS Labels to Address Prefixes. E. Rosen. October 2017`
 | |
| - :rfc:`8654`
 | |
|   :t:`Extended Message Support for BGP. R. Bush, K. Patel, D. Ward.  October 2019`
 | |
| 
 | |
| 
 | |
| OSPF
 | |
| ----
 | |
| 
 | |
| - :rfc:`2328`
 | |
|   :t:`OSPF Version 2. J. Moy. April 1998.`
 | |
| - :rfc:`2370`
 | |
|   :t:`The OSPF Opaque LSA Option R. Coltun. July 1998.`
 | |
| - :rfc:`3101`
 | |
|   :t:`The OSPF Not-So-Stubby Area (NSSA) Option P. Murphy. January 2003.`
 | |
| - :rfc:`2740`
 | |
|   :t:`OSPF for IPv6. R. Coltun, D. Ferguson, J. Moy. December 1999.`
 | |
| - :rfc:`3137`
 | |
|   :t:`OSPF Stub Router Advertisement, A. Retana, L. Nguyen, R. White, A. Zinin, D. McPherson. June 2001`
 | |
| 
 | |
| ISIS
 | |
| ----
 | |
| 
 | |
| RIP
 | |
| ----
 | |
| 
 | |
| - :rfc:`1058`
 | |
|   :t:`Routing Information Protocol. C.L. Hedrick. Jun-01-1988.`
 | |
| - :rfc:`2082`
 | |
|   :t:`RIP-2 MD5 Authentication. F. Baker, R. Atkinson. January 1997.`
 | |
| - :rfc:`2453`
 | |
|   :t:`RIP Version 2. G. Malkin. November 1998.`
 | |
| - :rfc:`2080`
 | |
|   :t:`RIPng for IPv6. G. Malkin, R. Minnear. January 1997.`
 | |
| 
 | |
| PIM
 | |
| ----
 | |
| 
 | |
| BFD
 | |
| ----
 | |
| - :rfc:`5880`
 | |
|   :t:`Bidirectional Forwarding Detection (BFD), D. Katz, D. Ward. June 2010`
 | |
| - :rfc:`5881`
 | |
|   :t:`Bidirectional Forwarding Detection (BFD) for IPv4 and IPv6 (Single Hop), D. Katz, D. Ward. June 2010`
 | |
| - :rfc:`5883`
 | |
|   :t:`Bidirectional Forwarding Detection (BFD) for Multihop Paths, D. Katz, D. Ward. June 2010`
 | |
| 
 | |
| MPLS
 | |
| ----
 | |
| 
 | |
| - :rfc:`2858`
 | |
|   :t:`Multiprotocol Extensions for BGP-4. T. Bates, Y. Rekhter, R. Chandra, D. Katz. June 2000.`
 | |
| - :rfc:`4364`
 | |
|   :t:`BGP/MPLS IP Virtual Private Networks (VPNs). Y. Rekhter. Feb 2006.`
 | |
| - :rfc:`4447`
 | |
|   :t:`Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP), L. Martini, E. Rosen, N. El-Aawar, T. Smith, and G. Heron. April 2006.`
 | |
| - :rfc:`4659`
 | |
|   :t:`BGP-MPLS IP Virtual Private Network (VPN) Extension for IPv6 VPN. J. De Clercq, D. Ooms, M. Carugi, F. Le Faucheur. September 2006`
 | |
| - :rfc:`4762`
 | |
|   :t:`Virtual Private LAN Service (VPLS) Using Label Distribution Protocol (LDP) Signaling, M. Lasserre and V. Kompella. January 2007.`
 | |
| - :rfc:`5036`
 | |
|   :t:`LDP Specification, L. Andersson, I. Minei, and B. Thomas. October 2007.`
 | |
| - :rfc:`5561`
 | |
|   :t:`LDP Capabilities, B. Thomas, K. Raza, S. Aggarwal, R. Aggarwal, and JL. Le Roux. July 2009.`
 | |
| - :rfc:`5918`
 | |
|   :t:`Label Distribution Protocol (LDP) 'Typed Wildcard' Forward Equivalence Class (FEC), R. Asati, I. Minei, and B. Thomas. August 2010.`
 | |
| - :rfc:`5919`
 | |
|   :t:`Signaling LDP Label Advertisement Completion, R. Asati, P. Mohapatra, E. Chen, and B. Thomas. August 2010.`
 | |
| - :rfc:`6667`
 | |
|   :t:`LDP 'Typed Wildcard' Forwarding Equivalence Class (FEC) for PWid and Generalized PWid FEC Elements, K. Raza, S. Boutros, and C. Pignataro. July 2012.`
 | |
| - :rfc:`6720`
 | |
|   :t:`The Generalized TTL Security Mechanism (GTSM) for the Label Distribution Protocol (LDP), C. Pignataro and R. Asati. August 2012.`
 | |
| - :rfc:`7552`
 | |
|   :t:`Updates to LDP for IPv6, R. Asati, C. Pignataro, K. Raza, V. Manral, and R. Papneja. June 2015.`
 | |
| 
 | |
| VRRP
 | |
| ----
 | |
| 
 | |
| - :rfc:`3768`
 | |
|   :t:`Virtual Router Redundancy Protocol (VRRP). R. Hinden. April 2004.`
 | |
| - :rfc:`5798`
 | |
|   :t:`Virtual Router Redundancy Protocol (VRRP) Version 3 for IPv4 and IPv6. S. Nadas. June 2000.`
 | |
| 
 | |
| SNMP
 | |
| ----
 | |
| 
 | |
| **When SNMP support is enabled, the following RFCs are also supported:**
 | |
| 
 | |
| - :rfc:`1227`
 | |
|   :t:`SNMP MUX protocol and MIB. M.T. Rose. May-01-1991.`
 | |
| - :rfc:`1657`
 | |
|   :t:`Definitions of Managed Objects for the Fourth Version of the Border
 | |
|   Gateway Protocol (BGP-4) using SMIv2. S. Willis, J. Burruss, J. Chu, Editor.
 | |
|   July 1994.`
 | |
| - :rfc:`1724`
 | |
|   :t:`RIP Version 2 MIB Extension. G. Malkin & F. Baker. November 1994.`
 | |
| - :rfc:`1850`
 | |
|   :t:`OSPF Version 2 Management Information Base. F. Baker, R. Coltun.
 | |
|   November 1995.`
 | |
| - :rfc:`2741`
 | |
|   :t:`Agent Extensibility (AgentX) Protocol. M. Daniele, B. Wijnen. January 2000.`
 | |
| 
 | |
| 
 | |
| .. index::
 | |
|    pair: mailing lists; contact
 | |
| 
 | |
| .. _mailing-lists:
 | |
| 
 | |
| Mailing Lists
 | |
| =============
 | |
| 
 | |
| Italicized lists are private.
 | |
| 
 | |
| +--------------------------------+------------------------------+
 | |
| | Topic                          | List                         |
 | |
| +================================+==============================+
 | |
| | Development                    | dev@lists.frrouting.org      |
 | |
| +--------------------------------+------------------------------+
 | |
| | Users & Operators              | frog@lists.frrouting.org     |
 | |
| +--------------------------------+------------------------------+
 | |
| | Announcements                  | announce@lists.frrouting.org |
 | |
| +--------------------------------+------------------------------+
 | |
| | *Security*                     | security@lists.frrouting.org |
 | |
| +--------------------------------+------------------------------+
 | |
| | *Technical Steering Committee* | tsc@lists.frrouting.org      |
 | |
| +--------------------------------+------------------------------+
 | |
| 
 | |
| The Development list is used to discuss and document general issues related to
 | |
| project development and governance. The public `Slack`_ instance and weekly
 | |
| technical meetings provide a higher bandwidth channel for discussions. The
 | |
| results of such discussions are reflected in updates, as appropriate, to code
 | |
| (i.e., merges), `GitHub issues`_ tracked issues, and for governance or process
 | |
| changes, updates to the Development list and either this file or information
 | |
| posted at `FRR`_.
 | |
| 
 | |
| 
 | |
| Bug Reports
 | |
| ===========
 | |
| 
 | |
| For information on reporting bugs, please see :ref:`bug-reports`.
 | |
| 
 | |
| .. _frr: |package-url|
 | |
| .. _github: https://github.com/frrouting/frr/
 | |
| .. _github issues: https://github.com/frrouting/frr/issues
 | |
| .. _slack: https://frrouting.org/#participate
 |