|
| InetUnicastAgentRouteTable (DB *db, const std::string &name) |
|
virtual | ~InetUnicastAgentRouteTable () |
|
InetUnicastRouteEntry * | FindLPM (const IpAddress &ip) |
|
InetUnicastRouteEntry * | FindLPM (const InetUnicastRouteEntry &rt_key) |
|
virtual string | GetTableName () const |
|
virtual Agent::RouteTableType | GetTableType () const |
|
virtual void | ProcessAdd (AgentRoute *rt) |
|
virtual void | ProcessDelete (AgentRoute *rt) |
|
virtual AgentSandeshPtr | GetAgentSandesh (const AgentSandeshArguments *args, const std::string &context) |
|
InetUnicastRouteEntry * | FindRouteUsingKey (InetUnicastRouteEntry &key) |
|
InetUnicastRouteEntry * | FindRoute (const IpAddress &ip) |
|
const InetUnicastRouteEntry * | GetNext (const InetUnicastRouteEntry *rt) |
|
InetUnicastRouteEntry * | GetNextNonConst (const InetUnicastRouteEntry *rt) |
|
void | Delete (const Peer *peer, const string &vrf_name, const IpAddress &addr, uint8_t plen, AgentRouteData *data) |
|
void | AddLocalVmRouteReq (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, LocalVmRoute *data) |
|
void | AddLocalVmRouteReq (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, const boost::uuids::uuid &intf_uuid, const VnListType &vn_list, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool force_policy, const PathPreference &path_preference, const IpAddress &subnet_service_ip, const EcmpLoadBalance &ecmp_load_balance, bool is_local, bool is_health_check_service, bool native_encap, const std::string &intf_name="", bool is_learnt_route=false) |
|
void | ResyncRoute (const Peer *peer, const string &vrf, const IpAddress &addr, uint8_t plen) |
|
void | AddVlanNHRouteReq (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, VlanNhRoute *data) |
|
void | AddVlanNHRouteReq (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, const boost::uuids::uuid &intf_uuid, uint16_t tag, uint32_t label, const VnListType &dest_vn_list, const SecurityGroupList &sg_list_, const TagList &tag_list, const PathPreference &path_preference) |
|
InetUnicastRouteEntry * | FindResolveRoute (const Ip4Address &ip) |
|
void | AddInetInterfaceRouteReq (const Peer *peer, const string &vm_vrf, const Ip4Address &addr, uint8_t plen, InetInterfaceRoute *data) |
|
void | AddInetInterfaceRouteReq (const Peer *peer, const string &vm_vrf, const Ip4Address &addr, uint8_t plen, const string &interface, uint32_t label, const VnListType &vn_list) |
|
void | AddIpamSubnetRoute (const string &vm_vrf, const IpAddress &addr, uint8_t plen, const std::string &vn_name) |
|
void | AddVrouterSubnetRoute (const IpAddress &dst_addr, uint8_t plen) |
|
void | AddVhostMplsRoute (const IpAddress &vhost_addr, const Peer *peer) |
|
void | AddInterfaceRouteReq (Agent *agent, const Peer *peer, const string &vrf_name, const Ip4Address &ip, uint8_t plen, const Interface *intrface, const std::string &vn_name) |
|
void | AddClonedLocalPathReq (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, ClonedLocalPath *data) |
|
bool | ResyncSubnetRoutes (const InetUnicastRouteEntry *rt, bool val) |
|
uint8_t | GetHostPlen (const IpAddress &ip_addr) const |
|
void | AddEvpnRoute (const AgentRoute *evpn_entry) |
|
void | DeleteEvpnRoute (const AgentRoute *rt) |
|
void | TraverseHostRoutesInSubnet (InetUnicastRouteEntry *rt, const Peer *peer) |
|
IpAddress | GetSubnetAddress (const IpAddress &addr, uint16_t plen) const |
|
InetUnicastRouteEntry * | GetSuperNetRoute (const IpAddress &addr) |
|
void | AddEvpnRoutingRoute (const IpAddress &ip_addr, uint8_t plen, const VrfEntry *vrf, const Peer *peer, const SecurityGroupList &sg_list, const CommunityList &communities, const PathPreference &path_preference, const EcmpLoadBalance &ecmp_load_balance, const TagList &tag_list, DBRequest &nh_req, uint32_t vxlan_id, const VnListType &vn_list, const std::string &origin_vn="") |
|
| AgentRouteTable (DB *db, const std::string &name) |
|
virtual | ~AgentRouteTable () |
|
virtual int | PartitionCount () const |
|
virtual std::unique_ptr< DBEntry > | AllocEntry (const DBRequestKey *k) const |
|
virtual size_t | Hash (const DBEntry *entry) const |
|
virtual size_t | Hash (const DBRequestKey *key) const |
|
virtual void | NotifyEntry (AgentRoute *entry) |
|
virtual SandeshTraceBufferPtr | GetOperDBTraceBuf () const |
|
UnresolvedRouteTree::const_iterator | unresolved_route_begin () const |
|
UnresolvedRouteTree::const_iterator | unresolved_route_end () const |
|
int | unresolved_route_size () const |
|
void | AddUnresolvedNH (const NextHop *) |
|
void | RemoveUnresolvedNH (const NextHop *) |
|
void | EvaluateUnresolvedNH (void) |
|
UnresolvedNHTree::const_iterator | unresolved_nh_begin () const |
|
UnresolvedNHTree::const_iterator | unresolved_nh_end () const |
|
void | EvaluateUnresolvedRoutes (void) |
|
void | AddUnresolvedRoute (const AgentRoute *rt) |
|
void | RemoveUnresolvedRoute (const AgentRoute *rt) |
|
Agent * | agent () const |
|
const std::string & | vrf_name () const |
|
uint32_t | vrf_id () const |
|
VrfEntry * | vrf_entry () const |
|
AgentRoute * | FindActiveEntry (const AgentRouteKey *key) |
|
AgentRoute * | FindActiveEntryNoLock (const AgentRouteKey *key) |
|
AgentRoute * | FindActiveEntry (const AgentRoute *key) |
|
AgentRoute * | FindActiveEntryNoLock (const AgentRoute *key) |
|
void | SetVrf (VrfEntry *vrf) |
|
bool | DelExplicitRouteWalkerCb (DBTablePartBase *part, DBEntryBase *entry) |
|
LifetimeActor * | deleter () |
|
void | ManagedDelete () |
|
virtual void | RetryDelete () |
|
void | Process (DBRequest &req) |
|
void | AddChangeInput (DBTablePartition *part, VrfEntry *vrf, AgentRoute *rt, AgentRouteKey *key, AgentRouteData *data) |
|
AgentRoute * | LocateRoute (DBTablePartition *part, VrfEntry *vrf, AgentRoute *rt, AgentRouteKey *key, AgentRouteData *data, bool *notify) |
|
| RouteTable (DB *db, const std::string &name) |
|
| DBTable (DB *db, const std::string &name) |
|
virtual | ~DBTable () |
|
void | Init () |
|
virtual DBTablePartition * | AllocPartition (int index) |
|
virtual DBEntry * | Add (const DBRequest *req) |
|
virtual bool | OnChange (DBEntry *entry, const DBRequest *req) |
|
virtual bool | Delete (DBEntry *entry, const DBRequest *req) |
|
void | NotifyAllEntries () |
|
DBEntry * | Find (const DBEntry *entry) |
|
const DBEntry * | Find (const DBEntry *entry) const |
|
DBEntry * | Find (const DBRequestKey *key, int id=-1) |
|
const DBEntry * | Find (const DBRequestKey *key, int id=-1) const |
|
DBEntry * | FindNoLock (const DBEntry *entry) |
|
DBEntry * | FindNoLock (const DBRequestKey *key) |
|
virtual DBTablePartBase * | GetTablePartition (const DBRequestKey *key) |
|
virtual const DBTablePartBase * | GetTablePartition (const DBRequestKey *key) const |
|
virtual DBTablePartBase * | GetTablePartition (const DBEntryBase *entry) |
|
virtual const DBTablePartBase * | GetTablePartition (const DBEntryBase *entry) const |
|
virtual DBTablePartBase * | GetTablePartition (const int index) |
|
virtual const DBTablePartBase * | GetTablePartition (const int index) const |
|
virtual void | Change (DBEntryBase *entry) |
|
virtual size_t | Size () const |
|
DBTableWalkRef | AllocWalker (WalkFn walk_fn, WalkCompleteFn walk_complete) |
|
void | ReleaseWalker (DBTableWalkRef &walk) |
|
void | WalkTable (DBTableWalkRef walk) |
|
void | WalkAgain (DBTableWalkRef walk) |
|
void | SetWalkIterationToYield (int count) |
|
int | GetWalkIterationToYield () |
|
void | SetWalkTaskId (int task_id) |
|
int | GetWalkerTaskId () |
|
| DBTableBase (DB *db, const std::string &name) |
|
virtual | ~DBTableBase () |
|
bool | Enqueue (DBRequest *req) |
|
void | EnqueueRemove (DBEntryBase *db_entry) |
|
virtual void | AddRemoveCallback (const DBEntryBase *entry, bool add) const |
|
ListenerId | Register (ChangeCallback callback, const std::string &name="unspecified") |
|
void | Unregister (ListenerId listener) |
|
void | RunNotify (DBTablePartBase *tpart, DBEntryBase *entry) |
|
void | AddToDBStateCount (ListenerId listener, int count) |
|
uint64_t | GetDBStateCount (ListenerId listener) |
|
bool | empty () const |
|
virtual bool | MayDelete () const |
|
DB * | database () |
|
const DB * | database () const |
|
const std::string & | name () const |
|
bool | HasListeners () const |
|
size_t | GetListenerCount () const |
|
void | FillListeners (std::vector< ShowTableListener > *listeners) const |
|
uint64_t | enqueue_count () const |
|
void | incr_enqueue_count () |
|
void | reset_enqueue_count () |
|
uint64_t | input_count () const |
|
void | incr_input_count () |
|
void | reset_input_count () |
|
uint64_t | notify_count () const |
|
void | incr_notify_count () |
|
void | reset_notify_count () |
|
bool | HasWalkers () const |
|
uint64_t | walker_count () const |
|
void | incr_walker_count () |
|
uint64_t | decr_walker_count () |
|
uint64_t | walk_request_count () const |
|
uint64_t | walk_complete_count () const |
|
uint64_t | walk_cancel_count () const |
|
uint64_t | walk_again_count () const |
|
uint64_t | walk_count () const |
|
void | incr_walk_request_count () |
|
void | incr_walk_complete_count () |
|
void | incr_walk_cancel_count () |
|
void | incr_walk_again_count () |
|
void | incr_walk_count () |
|
|
static DBTableBase * | CreateTable (DB *db, const std::string &name) |
|
static void | DeleteReq (const Peer *peer, const string &vrf_name, const IpAddress &addr, uint8_t plen, AgentRouteData *data) |
|
static void | DeleteMplsRouteReq (const Peer *peer, const string &vrf_name, const IpAddress &addr, uint8_t plen, AgentRouteData *data) |
|
static void | Delete (const Peer *peer, const string &vrf_name, const IpAddress &addr, uint8_t plen) |
|
static void | AddHostRoute (const string &vrf_name, const IpAddress &addr, uint8_t plen, const std::string &dest_vn_name, bool policy) |
|
static void | AddLocalVmRoute (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, const boost::uuids::uuid &intf_uuid, const VnListType &vn_list, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool force_policy, const PathPreference &path_preference, const IpAddress &subnet_service_ip, const EcmpLoadBalance &ecmp_load_balance, bool is_local, bool is_health_check_service, const std::string &intf_name, bool native_encap, const std::string &intf_route_type=VmInterface::kInterface, bool is_learnt_route=false) |
|
static void | AddRemoteVmRouteReq (const Peer *peer, const string &vm_vrf, const IpAddress &vm_addr, uint8_t plen, AgentRouteData *data) |
|
static void | AddVlanNHRoute (const Peer *peer, const string &vm_vrf, const IpAddress &addr, uint8_t plen, const boost::uuids::uuid &intf_uuid, uint16_t tag, uint32_t label, const VnListType &dest_vn_list, const SecurityGroupList &sg_list_, const TagList &tag_list, const PathPreference &path_preference) |
|
static InetUnicastRouteEntry * | FindResolveRoute (const string &vrf_name, const Ip4Address &ip) |
|
static bool | ShouldAddArp (const Ip4Address &ip) |
|
static void | CheckAndAddArpReq (const string &vrf_name, const Ip4Address &ip, const Interface *intf, const VnListType &vn_list, const SecurityGroupList &sg, const TagList &tag) |
|
static void | CheckAndAddArpRoute (const string &route_vrf_name, const Ip4Address &ip, const MacAddress &mac, const Interface *intf, bool resolved, const VnListType &vn_list, const SecurityGroupList &sg, const TagList &tag) |
|
static void | AddArpReq (const string &route_vrf_name, const Ip4Address &ip, const string &nh_vrf_name, const Interface *intf, bool policy, const VnListType &dest_vn_list, const SecurityGroupList &sg_list, const TagList &tag_list) |
|
static void | ArpRoute (DBRequest::DBOperation op, const string &route_vrf_name, const Ip4Address &ip, const MacAddress &mac, const string &nh_vrf_name, const Interface &intf, bool resolved, const uint8_t plen, bool policy, const VnListType &dest_vn_list, const SecurityGroupList &sg_list, const TagList &tag_list) |
|
static void | NdpRoute (DBRequest::DBOperation op, const string &route_vrf_name, const IpAddress &ip, const MacAddress &mac, const string &nh_vrf_name, const Interface &intf, bool resolved, const uint8_t plen, bool policy, const VnListType &dest_vn_list, const SecurityGroupList &sg_list, const TagList &tag_list) |
|
static void | AddResolveRoute (const Peer *peer, const string &vrf_name, const Ip4Address &ip, const uint8_t plen, const InterfaceKey &intf_key, const uint32_t label, bool policy, const std::string &vn_name, const SecurityGroupList &sg_list, const TagList &tag_list) |
|
static void | AddVHostRecvRoute (const Peer *peer, const string &vrf, const InterfaceKey &interface, const IpAddress &addr, uint8_t plen, const string &vn_name, bool policy, bool native_encap, bool ipam_host_route=true) |
|
static void | AddVHostRecvRouteReq (const Peer *peer, const string &vrf, const InterfaceKey &interface, const IpAddress &addr, uint8_t plen, const string &vn_name, bool policy, bool native_encap) |
|
static void | AddVHostMplsRecvRouteReq (const Peer *peer, const string &vrf, const InterfaceKey &interface, const IpAddress &addr, uint8_t plen, const string &vn_name, bool policy, bool native_encap) |
|
static void | AddVHostSubnetRecvRoute (const Peer *peer, const string &vrf, const InterfaceKey &interface, const Ip4Address &addr, uint8_t plen, const std::string &vn_name, bool policy) |
|
static void | DelVHostSubnetRecvRoute (const string &vm_vrf, const Ip4Address &addr, uint8_t plen) |
|
static void | AddDropRoute (const string &vm_vrf, const Ip4Address &addr, uint8_t plen, const string &vn_name) |
|
static void | AddGatewayRoute (const Peer *peer, const string &vrf_name, const Ip4Address &dst_addr, uint8_t plen, const AddressList &gw_list, const VnListType &vn_name, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool native_encap) |
|
static void | AddGatewayRouteReq (const Peer *peer, const string &vrf_name, const Ip4Address &dst_addr, uint8_t plen, const AddressList &gw_list, const VnListType &vn_name, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool native_encap) |
|
static void | AddLocalMplsRouteReq (const Peer *peer, const string &vrf_name, const Ip4Address &dst_addr, uint8_t plen, const Ip4Address &gw_ip, const VnListType &vn_name, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool native_encap) |
|
static void | AddMplsRouteInternal (const Peer *peer, DBRequest *req, const string &vrf_name, const IpAddress &dst_addr, uint8_t plen, const IpAddress &gw_ip, const VnListType &vn_name, uint32_t label, const SecurityGroupList &sg_list, const TagList &tag_list, const CommunityList &communities, bool native_encap) |
|
static void | AddMplsRouteReq (const Peer *peer, const string &vrf_name, const IpAddress &dst_addr, uint8_t plen, AgentRouteData *data) |
|
static bool | PathSelection (const Path &path1, const Path &path2) |
|
static const std::string & | GetSuffix (Agent::RouteTableType type) |
|
static void | DBStateClear (DBTable *table, ListenerId id) |
|