mirror of
https://git.proxmox.com/git/mirror_frr
synced 2026-01-04 22:08:37 +00:00
Merge pull request #2910 from opensourcerouting/doc-summerclean-20180825
protocol vs. OS docs + SMUX leftovers
This commit is contained in:
commit
18d93bbb5a
@ -154,12 +154,8 @@ override_dh_auto_install:
|
||||
mkdir -p debian/tmp/etc/frr/
|
||||
perl -pi -e 's#^!log file #!log file /var/log/frr/#' debian/tmp/usr/share/doc/frr/examples/*sample*
|
||||
|
||||
# installing the Frr specific SNMP MIB
|
||||
ifeq ($(WANT_SNMP), 1)
|
||||
install -D -m 644 ./zebra/GNOME-PRODUCT-ZEBRA-MIB debian/tmp/usr/share/snmp/mibs/GNOME-PRODUCT-ZEBRA-MIB
|
||||
else
|
||||
# leftover from previously shipping SMUX client OID MIB
|
||||
mkdir -p debian/tmp/usr/share/snmp/mibs
|
||||
endif
|
||||
|
||||
# cleaning .la files
|
||||
sed -i "/dependency_libs/ s/'.*'/''/" debian/tmp/usr/lib/*.la
|
||||
|
||||
@ -188,12 +188,8 @@ override_dh_auto_install:
|
||||
mkdir -p debian/tmp/etc/frr/
|
||||
perl -pi -e 's#^!log file #!log file /var/log/frr/#' debian/tmp/usr/share/doc/frr/examples/*sample*
|
||||
|
||||
# installing the Frr specific SNMP MIB
|
||||
ifeq ($(WANT_SNMP), 1)
|
||||
install -D -m 644 ./zebra/GNOME-PRODUCT-ZEBRA-MIB debian/tmp/usr/share/snmp/mibs/GNOME-PRODUCT-ZEBRA-MIB
|
||||
else
|
||||
# leftover from previously shipping SMUX client OID MIB
|
||||
mkdir -p debian/tmp/usr/share/snmp/mibs/
|
||||
endif
|
||||
|
||||
# cleaning .la files
|
||||
sed -i "/dependency_libs/ s/'.*'/''/" debian/tmp/usr/lib/*.la
|
||||
|
||||
@ -186,12 +186,8 @@ override_dh_auto_install:
|
||||
mkdir -p debian/tmp/etc/frr/
|
||||
perl -pi -e 's#^!log file #!log file /var/log/frr/#' debian/tmp/usr/share/doc/frr/examples/*sample*
|
||||
|
||||
# installing the Frr specific SNMP MIB
|
||||
ifeq ($(WANT_SNMP), 1)
|
||||
install -D -m 644 ./zebra/GNOME-PRODUCT-ZEBRA-MIB debian/tmp/usr/share/snmp/mibs/GNOME-PRODUCT-ZEBRA-MIB
|
||||
else
|
||||
# leftover from previously shipping SMUX client OID MIB
|
||||
mkdir -p debian/tmp/usr/share/snmp/mibs/
|
||||
endif
|
||||
|
||||
# cleaning .la files
|
||||
sed -i "/dependency_libs/ s/'.*'/''/" debian/tmp/usr/lib/*.la
|
||||
|
||||
@ -6,3 +6,50 @@ div.body {
|
||||
pre {
|
||||
background-color: #e2e2e2;
|
||||
}
|
||||
|
||||
/* styling for the protocols vs. OS table in overview.rst */
|
||||
/* first, general bits */
|
||||
div.body td.mark {
|
||||
text-align: center;
|
||||
border-left: 1px solid #ccc;
|
||||
}
|
||||
table.mark th {
|
||||
text-align: center;
|
||||
}
|
||||
table.mark td {
|
||||
vertical-align: middle;
|
||||
}
|
||||
table.mark td[colspan="7"] {
|
||||
text-align: center;
|
||||
padding-top: 8pt;
|
||||
padding-bottom: 2pt;
|
||||
}
|
||||
table.mark cite {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* individual Y/N/... cells */
|
||||
td.mark {
|
||||
width: 4.5em;
|
||||
}
|
||||
td.mark span {
|
||||
display: block;
|
||||
padding: 3px 1px;
|
||||
border: 1px dotted #666;
|
||||
width: 36pt;
|
||||
margin:auto;
|
||||
}
|
||||
span.mark-y { background-color: #77ffaa; }
|
||||
span.mark-geq { background-color: #aaff77; }
|
||||
span.mark-cp { background-color: #ffbb55; }
|
||||
span.mark-n { background-color: #ff8877; }
|
||||
span.mark-dag { background-color: #ffee99; font-size: 8pt; padding:0px 1px; border-top:0px; }
|
||||
|
||||
/* for the legend below */
|
||||
li span.mark {
|
||||
display: inline-block;
|
||||
padding: 3px 1px;
|
||||
border: 1px dotted #666;
|
||||
width: 36pt;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
13
doc/user/_static/overrides.js
Normal file
13
doc/user/_static/overrides.js
Normal file
@ -0,0 +1,13 @@
|
||||
/* special styling for the protocols vs. OS table in overview.rst
|
||||
*
|
||||
* unfortunately this can't be done in straight CSS because we're changing
|
||||
* the styling on the parent.
|
||||
*/
|
||||
$(document).ready(function() {
|
||||
$("span.mark:contains('Y')" ).addClass("mark-y" ).parent("td").addClass("mark");
|
||||
$("span.mark:contains('≥')" ).addClass("mark-geq").parent("td").addClass("mark");
|
||||
$("span.mark:contains('N')" ).addClass("mark-n" ).parent("td").addClass("mark");
|
||||
$("span.mark:contains('CP')").addClass("mark-cp" ).parent("td").addClass("mark");
|
||||
$("span.mark:contains('†')" ).addClass("mark-dag").parent("td").addClass("mark");
|
||||
$('td.mark').parents('table').addClass("mark").children('colgroup').remove();
|
||||
});
|
||||
@ -358,6 +358,7 @@ def setup(app):
|
||||
app.add_object_type('clicmd', 'clicmd')
|
||||
# css overrides for HTML theme
|
||||
app.add_stylesheet('overrides.css')
|
||||
app.add_javascript('overrides.js')
|
||||
# load Pygments lexer for FRR config syntax
|
||||
#
|
||||
# NB: in Pygments 2.2+ this can be done with `load_lexer_from_file`, but we
|
||||
|
||||
@ -5,12 +5,12 @@ Overview
|
||||
********
|
||||
|
||||
`FRR`_ is a routing software package that provides TCP/IP based routing
|
||||
services with routing protocols support such as RIPv1, RIPv2, RIPng, OSPFv2,
|
||||
OSPFv3, IS-IS, BGP-4, and BGP-4+ (:ref:`supported-rfcs`). FRR also supports
|
||||
services with routing protocols support such as BGP, RIP, OSPF, IS-IS and more
|
||||
(see :ref:`supported-protocols`). FRR also supports
|
||||
special BGP Route Reflector and Route Server behavior. In addition to
|
||||
traditional IPv4 routing protocols, FRR also supports IPv6 routing protocols.
|
||||
With SNMP daemon which supports SMUX and AgentX protocol, FRR provides routing
|
||||
protocol MIBs (:ref:`snmp-support`).
|
||||
With an SNMP daemon that supports the AgentX protocol, FRR provides routing
|
||||
protocol MIB read-only access (:ref:`snmp-support`).
|
||||
|
||||
FRR uses an advanced software architecture to provide you with a high quality,
|
||||
multi server routing engine. FRR has an interactive user interface for each
|
||||
@ -150,27 +150,93 @@ Recent versions of the following compilers are well tested:
|
||||
|
||||
.. _supported-protocols:
|
||||
|
||||
Supported Protocols & RFCs
|
||||
==========================
|
||||
Supported Protocols vs. Platform
|
||||
================================
|
||||
|
||||
The following well-known protocols are supported:
|
||||
The following table lists all protocols cross-refrenced to all operating
|
||||
systems that have at least CI build tests. Note that for features, only
|
||||
features with system dependencies are included here.
|
||||
|
||||
- BGP
|
||||
- Babel
|
||||
- EIGRP
|
||||
- IS-IS
|
||||
- LDP
|
||||
- NHRP
|
||||
- OSPFv2
|
||||
- OSPFv3
|
||||
- PIM
|
||||
- RIP
|
||||
- RIPNG
|
||||
.. role:: mark
|
||||
|
||||
The following technologies are supported as well:
|
||||
.. 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.)
|
||||
|
||||
- PBR (Policy Based Routing)
|
||||
- VNC (Virtual Network Control)
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| Daemon / Feature | Linux | OpenBSD | FreeBSD | NetBSD | Solaris |
|
||||
+==+================================+================+==============+============+============+============+
|
||||
| FRR Core |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `zebra` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | VRF | :mark:`≥4.8` | :mark:`N` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | MPLS | :mark:`≥4.5` | :mark:`Y` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `pbrd` (Policy Routing) | :mark:`Y` | :mark:`N` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| WAN / Carrier protocols |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `bgpd` (BGP) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | VRF / L3VPN | :mark:`≥4.8` | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` |
|
||||
| | | :mark:`†4.3` | | | | |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | EVPN | :mark:`≥4.18` | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` |
|
||||
| | | :mark:`†4.9` | | | | |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | VNC (Virtual Network Control) | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | Flowspec | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` | :mark:`CP` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `ldpd` (LDP) | :mark:`≥4.5` | :mark:`Y` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | VPWS / PW | :mark:`N` | :mark:`≥5.8` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | VPLS | :mark:`N` | :mark:`≥5.8` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `nhrpd` (NHRP) | :mark:`Y` | :mark:`N` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| Link-State Routing |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `ospfd` (OSPFv2) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | Segment Routing | :mark:`≥4.12` | :mark:`N` | :mark:`N` | :mark:`N` | :mark:`N` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `ospf6d` (OSPFv3) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `isisd` (IS-IS) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| Distance-Vector Routing |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `ripd` (RIPv2) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `ripngd` (RIPng) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `babeld` (BABEL) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `eigrpd` (EIGRP) | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| Multicast Routing |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| `pimd` (PIM) | :mark:`≥4.18` | :mark:`N` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | SSM (Source Specific) | :mark:`Y` | :mark:`N` | :mark:`Y` | :mark:`Y` | :mark:`Y` |
|
||||
+--+--------------------------------+----------------+--------------+------------+------------+------------+
|
||||
| | ASM (Any Source) | :mark:`Y` | :mark:`N` | :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
|
||||
|
||||
.. _supported-rfcs:
|
||||
|
||||
|
||||
@ -1,78 +0,0 @@
|
||||
GNOME-PRODUCT-ZEBRA-MIB DEFINITIONS ::= BEGIN
|
||||
|
||||
IMPORTS
|
||||
MODULE-IDENTITY,
|
||||
OBJECT-IDENTITY
|
||||
FROM SNMPv2-SMI
|
||||
gnomeProducts
|
||||
FROM GNOME-SMI;
|
||||
|
||||
zebra MODULE-IDENTITY
|
||||
LAST-UPDATED "200004250000Z"
|
||||
ORGANIZATION "GNOME project"
|
||||
CONTACT-INFO
|
||||
"GNU Network Object Model Environment project
|
||||
|
||||
see http://www.gnome.org for contact persons of a particular
|
||||
area or subproject of GNOME.
|
||||
|
||||
Administrative contact for MIB module:
|
||||
|
||||
Jochen Friedrich
|
||||
Wingertstr. 70/1
|
||||
68809 Neulussheim
|
||||
Germany
|
||||
|
||||
email: snmp@gnome.org"
|
||||
DESCRIPTION
|
||||
"The product registrations for the various zebra subdeamons.
|
||||
These registrations are guaranteed to be unique and are used
|
||||
for SMUX registration by default (if not overridden manually)."
|
||||
::= { gnomeProducts 2 }
|
||||
|
||||
zserv OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"zserv is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program.
|
||||
zserv is the main zebra process which implements routing
|
||||
entries with the kernel and handles routing updates between
|
||||
other routing protocols."
|
||||
::= { zebra 1 }
|
||||
|
||||
bgpd OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"bgpd is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program."
|
||||
::= { zebra 2 }
|
||||
|
||||
ripd OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"ripd is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program."
|
||||
::= { zebra 3 }
|
||||
|
||||
ripngd OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"ripngd is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program."
|
||||
::= { zebra 4 }
|
||||
|
||||
ospfd OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"ospfd is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program."
|
||||
::= { zebra 5 }
|
||||
|
||||
ospf6d OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"ospf6d is part of the zebra project which again is a GNU
|
||||
endorsed internet routing program."
|
||||
::= { zebra 6 }
|
||||
|
||||
END
|
||||
@ -1,53 +0,0 @@
|
||||
GNOME-SMI DEFINITIONS ::= BEGIN
|
||||
|
||||
IMPORTS
|
||||
MODULE-IDENTITY,
|
||||
OBJECT-IDENTITY,
|
||||
enterprises
|
||||
FROM SNMPv2-SMI;
|
||||
|
||||
gnome MODULE-IDENTITY
|
||||
LAST-UPDATED "9809010000Z"
|
||||
ORGANIZATION "GNOME project"
|
||||
CONTACT-INFO
|
||||
"GNU Network Object Model Environment project
|
||||
|
||||
see http://www.gnome.org for contact persons of a particular
|
||||
area or subproject of GNOME.
|
||||
|
||||
Administrative contact for MIB module:
|
||||
|
||||
Jochen Friedrich
|
||||
Wingertstr. 70/1
|
||||
68809 Neulussheim
|
||||
Germany
|
||||
|
||||
email: snmp@gnome.org"
|
||||
DESCRIPTION
|
||||
"The Structure of GNOME."
|
||||
::= { enterprises 3317 } -- assigned by IANA
|
||||
|
||||
gnomeProducts OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"gnomeProducts is the root OBJECT IDENTIFIER from
|
||||
which sysObjectID values are assigned."
|
||||
::= { gnome 1 }
|
||||
|
||||
gnomeMgmt OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"gnomeMgmt defines the subtree for production GNOME related
|
||||
MIB registrations."
|
||||
::= { gnome 2 }
|
||||
|
||||
gnomeTest OBJECT-IDENTITY
|
||||
STATUS current
|
||||
DESCRIPTION
|
||||
"gnomeTest defines the subtree for testing GNOME related
|
||||
MIB registrations."
|
||||
::= { gnome 3 }
|
||||
|
||||
-- more to come if necessary.
|
||||
|
||||
END
|
||||
@ -141,8 +141,3 @@ if DEV_BUILD
|
||||
zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_dt.c
|
||||
endif
|
||||
endif
|
||||
|
||||
EXTRA_DIST += \
|
||||
zebra/GNOME-SMI \
|
||||
zebra/GNOME-PRODUCT-ZEBRA-MIB \
|
||||
# end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user