Nexthop Group tunnels are a tunneling abstraction in EOS.
A nexthop group tunnel is comprised of a tunnel endpoint (IP prefix) and a nexthop group name representing the underlying nexthop group that forwards the traffic.
The underlying nexthop group must be manually maintained by the agent. If the underlying nexthop group is not configured, the tunnel endpoint will be unreachable until the given nexthop group is configured.
The following example creates a nexthop group tunnel which has an underlying nexthop group “nhg1” that performs IP-in-IP encapsulation of traffic sent to it. For a usage of a nexthop group, see the nexthop_group.h file.
* // Specify a tunnel endpoint and a nexthop group name * eos::nexthop_group_tunnel_t nhg_tunnel(eos::ip_prefix_t("10.0.0.1/32"), "nhg1"); * nexthop_group_tunnel_mgr()->nexthop_group_tunnel_set(nhg_tunnel); * // Configure the underlying nexthop group * eos::nexthop_group_t nhg("nhg1", eos::NEXTHOP_GROUP_IP_IN_IP); * eos::nexthop_group_entry_t nhe1(eos::ip_addr_t("172.12.1.1")); * nhg.nexthop_set(0, nhe1); * nexthop_group_mgr()->nexthop_set(nhg1); *
The nexthop group tunnel handler.
Public Functions
An iterator over configured nexthop group tunnel.
Private Functions
Friends
The nexthop group tunnel manager.
Public Functions
Begin resync mode.
Complete resync mode, ready for regular updates.
Returns an iterator over configured nexthop group tunnel.
Retrieves an existing nexthop_group_tunnel_t by tunnel endpoint, if it exists. Otherwise this returns an empty nexthop_group_tunnel_t()
Returns true if a nexthop group tunnel with the given tunnel endpoint has been configured.
Creates or updates a nexthop group tunnel.
Removes the nexthop group tunnel with the given tunnel endpoint if exists.
Protected Functions
Private Members
Friends
An IP nexthop group tunnel.
An IP nexthop group tunnel represents a tunnel over a nexthop-group.
Public Functions
Default constructor.
Creates an ip nexthop group tunnel for a given tunnel endpoint prefix and nexthop-group.
Getter for ‘tunnel_endpoint’: IP v4/v6 prefix.
Setter for ‘tunnel_endpoint’.
Getter for ‘nhg_name’: nexthop group name.
Setter for ‘nhg_name’.
The hash function for type nexthop_group_tunnel_t.
Returns a string representation of the current object’s values.
Friends
A utility stream operator that adds a string representation of nexthop_group_tunnel_t to the ostream.