Tunnel decapsulation group management.
This module manages tunnel decapsulation for traffic arriving at the switch (on any interface). This allows the switch to act as a tunnel endpoint.
By configuring a “decap group”, the switch will decapsulate traffic matching the specified outer (tunnel) header destination IP address and IP protocol. Presently only GRE traffic (protocol 47) is supported by decap groups. Traffic arriving at the switch matching the group’s parameters will be decapsulated and forwarded normally based on the inner protocol headers.
In this example, a decap group named “gre_tunnel1” is configured for GRE traffic arriving at the switch with a tunnel destination address of 172.12.0.1. That address may either be bound to a local switch interface or announced by the switch in routing protocols.
// Configures a decapsulation group to unwrap received GRE traffic eos::decap_group_t tunnel("gre_tunnel1", eos::ip_addr_t("172.12.0.1"), eos::PROTOCOL_TYPE_GRE); mgr->decap_group_set(tunnel);
An iterator that yields a `decap_group_t` for each configured decap group.
Private Functions
Friends
A manager of ‘ip decap-group’ configurations.
Create one of these via sdk object prior to starting the agent main loop. When your eos::agent_handler::on_initialized virtual function is called, the manager is valid for use.
Public Functions
Enter resync mode.
At this point the decap_group_mgr will start tracking which groups you’ve added.
Exit resync mode.
All decap groups in Sysdb that you haven’t re-added during this resync period will now be deleted.
Iterates over all the decap groups currently configured.
Returns the current configuration of a decap group
If no decap group exists, this returns an empty `decap_group_t()`
Adds the specified decap group to the system configuration.
Either creates or updates a decap group (keyed by the group name).
Removes the named decap group from the configuration.
If the specified group name does not exist, no action is taken.
Protected Functions
Private Members
Warning
doxygenfile: Found multiple matches for file “eos/types/decap_group.h