Skip to content

Commit c43393e

Browse files
authored
Merge pull request #1446 from vyos/mergify/bp/sagitta/pr-1443
evpn: T6306: add multihoming documentation (backport #1443)
2 parents cab7471 + 5da40d6 commit c43393e

File tree

3 files changed

+67
-2
lines changed

3 files changed

+67
-2
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.. cfgcmd:: set interfaces {{ var0 }} <interface> evpn uplink
2+
3+
When all the underlay links go down the PE no longer has access
4+
to the VxLAN +overlay. To prevent blackholing of traffic the
5+
server/ES links are protodowned on the PE.
6+
7+
A link can be setup for uplink tracking via the following example:
8+
9+
.. code-block:: none
10+
11+
set interfaces {{ var0 }} {{ var1 }} evpn uplink

docs/configuration/interfaces/bonding.rst

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,54 @@ Port Mirror (SPAN)
291291
:var1: bond1
292292
:var2: eth3
293293

294+
EVPN Multihoming
295+
----------------
296+
297+
All-Active Multihoming is used for redundancy and load sharing. Servers are
298+
attached to two or more PEs and the links are bonded (link-aggregation).
299+
This group of server links is referred to as an :abbr:`ES (Ethernet Segment)`.
300+
301+
An Ethernet Segment can be configured by specifying a system-MAC and a local
302+
discriminator or a complete ESINAME against the bond interface on the PE.
303+
304+
.. cfgcmd:: set interfaces bonding <interface> evpn es-id <<1-16777215|10-byte ID>
305+
.. cfgcmd:: set interfaces bonding <interface> evpn es-sys-mac <xx:xx:xx:xx:xx:xx>
306+
307+
The sys-mac and local discriminator are used for generating a 10-byte, Type-3
308+
Ethernet Segment ID. ESINAME is a 10-byte, Type-0 Ethernet Segment ID -
309+
"00:AA:BB:CC:DD:EE:FF:GG:HH:II".
310+
311+
Type-1 (EAD-per-ES and EAD-per-EVI) routes are used to advertise the locally
312+
attached ESs and to learn off remote ESs in the network. Local Type-2/MAC-IP
313+
routes are also advertised with a destination ESI allowing for MAC-IP syncing
314+
between Ethernet Segment peers. Reference: RFC 7432, RFC 8365
315+
316+
EVPN-MH is intended as a replacement for MLAG or Anycast VTEPs. In multihoming
317+
each PE has an unique VTEP address which requires the introduction of a new
318+
dataplane construct, MAC-ECMP. Here a MAC/FDB entry can point to a list of
319+
remote PEs/VTEPs.
320+
321+
.. cfgcmd:: set interfaces bonding <interface> evpn es-df-pref <1-65535>
322+
323+
Type-4 (ESR) routes are used for Designated Forwarder (DF) election.
324+
DFs forward BUM traffic received via the overlay network. This
325+
implementation uses a preference based DF election specified by
326+
draft-ietf-bess-evpn-pref-df.
327+
328+
The DF preference is configurable per-ES.
329+
330+
BUM traffic is rxed via the overlay by all PEs attached to a server but
331+
only the DF can forward the de-capsulated traffic to the access port.
332+
To accommodate that non-DF filters are installed in the dataplane to drop
333+
the traffic.
334+
335+
Similarly traffic received from ES peers via the overlay cannot be forwarded
336+
to the server. This is split-horizon-filtering with local bias.
337+
338+
.. cmdinclude:: /_include/interface-evpn-uplink.txt
339+
:var0: bonding
340+
:var1: bond0
341+
294342
*******
295343
Example
296344
*******
@@ -595,4 +643,3 @@ Operation
595643
Partner Churn State: churned
596644
Actor Churned Count: 1
597645
Partner Churned Count: 1
598-

docs/configuration/interfaces/ethernet.rst

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,14 @@ Authentication (EAPoL)
118118
:var0: ethernet
119119
:var1: eth0
120120

121+
EVPN Multihoming
122+
----------------
123+
124+
Uplink/Core tracking.
125+
126+
.. cmdinclude:: /_include/interface-evpn-uplink.txt
127+
:var0: ethernet
128+
:var1: eth0
121129

122130
VLAN
123131
====
@@ -289,4 +297,3 @@ Operation
289297
Date code : 0506xx
290298
291299
.. stop_vyoslinter
292-

0 commit comments

Comments
 (0)