|
| | 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="") |
| |
| void | AddEvpnRoutingRouteReq (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) |
| |