|
FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the documentation of this file.
16 #ifndef __VOM_GBP_SUBNET_H__
17 #define __VOM_GBP_SUBNET_H__
36 typedef std::pair<gbp_route_domain::key_t, route::prefix_t>
key_t;
116 std::shared_ptr<gbp_subnet>
singular()
const;
121 static std::shared_ptr<gbp_subnet>
find(
const key_t& k);
126 static void dump(std::ostream& os);
156 void handle_replay();
161 void show(std::ostream& os);
182 static std::shared_ptr<gbp_subnet> find_or_add(
const gbp_subnet& temp);
207 const std::shared_ptr<gbp_route_domain> m_rd;
222 std::shared_ptr<gbp_recirc> m_recirc;
227 std::shared_ptr<gbp_endpoint_group> m_epg;
const static type_t STITCHED_INTERNAL
Internal subnet is reachable through the source EPG's uplink interface.
gbp_subnet(const gbp_route_domain &rd, const route::prefix_t &prefix, const type_t &type)
Construct an internal GBP subnet.
The VPP Object Model (VOM) library.
dependency_t
There needs to be a strict order in which object types are read from VPP (at boot time) and replayed ...
The interface to writing objects into VPP OM.
const static type_t ANON_L3_OUT
An anonymous L3-out subnet.
inspect command handler Handler
static std::shared_ptr< gbp_subnet > find(const key_t &k)
Find the instnace of the bridge_domain domain in the OM.
bool operator==(const gbp_subnet &bdae) const
comparison operator
Class definition for listeners to OM events.
vnet_hw_if_output_node_runtime_t * r
std::string to_string() const
Convert to string for debugging.
A recirculation interface for GBP use pre/post NAT.
A template base class for all enum types.
void replay(void)
replay the object to create it in hardware
const typedef std::string key_t
In the opflex world each entity is known by a URI which can be converted into a string.
std::ostream & operator<<(std::ostream &os, const std::pair< direction_t, interface::key_t > &key)
const static type_t STITCHED_EXTERNAL
External subnet requires NAT translation before egress.
static void dump(std::ostream &os)
Dump all bridge_domain-doamin into the stream provided.
const static type_t TRANSPORT
A transport subnet, sent via the RD's UU-fwd interface.
std::shared_ptr< gbp_subnet > singular() const
Return the matching 'singular instance'.
A entry in the ARP termination table of a Route Domain.
A Database to store the unique 'singular' instances of a single object type.
const static type_t L3_OUT
A L3-out subnet.
const key_t key() const
Return the object's key.
std::pair< gbp_route_domain::key_t, route::prefix_t > key_t
The key for a GBP subnet; table and prefix.
void event_handler(void *tls_async)
A entry in the ARP termination table of a Bridge Domain.
A base class for all object_base in the VPP object_base-Model.
vl_api_fib_path_type_t type