|
xorp
|
Public Member Functions | |
| XrlStaticRoutesNode (EventLoop &eventloop, const string &class_name, const string &finder_hostname, uint16_t finder_port, const string &finder_target, const string &fea_target, const string &rib_target) | |
| int | startup () |
| Startup the node operation. | |
| int | shutdown () |
| Shutdown the node operation. | |
| XrlRouter & | xrl_router () |
| Get a reference to the XrlRouter instance. | |
Protected Member Functions | |
| XrlCmdError | common_0_1_get_target_name (string &name) |
| Get name of Xrl Target. | |
| XrlCmdError | common_0_1_get_version (string &version) |
| Get version string from Xrl Target. | |
| XrlCmdError | common_0_1_get_status (uint32_t &status, string &reason) |
| Get status of Xrl Target. | |
| XrlCmdError | common_0_1_shutdown () |
| Request clean shutdown of Xrl Target. | |
| XrlCmdError | common_0_1_startup () |
| Request clean shutdown of Xrl Target. | |
| XrlCmdError | finder_event_observer_0_1_xrl_target_birth (const string &target_class, const string &target_instance) |
| Announce target birth to observer. | |
| XrlCmdError | finder_event_observer_0_1_xrl_target_death (const string &target_class, const string &target_instance) |
| Announce target death to observer. | |
| XrlCmdError | static_routes_0_1_enable_static_routes (const bool &enable) |
| Enable/disable/start/stop StaticRoutes. | |
| XrlCmdError | static_routes_0_1_start_static_routes () |
| XrlCmdError | static_routes_0_1_stop_static_routes () |
| XrlCmdError | static_routes_0_1_add_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const uint32_t &metric) |
| Add/replace/delete a static route. | |
| XrlCmdError | static_routes_0_1_add_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_delete_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop) |
| XrlCmdError | static_routes_0_1_delete_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop) |
| XrlCmdError | static_routes_0_1_add_backup_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const uint32_t &metric) |
| Add/replace/delete a backup static route. | |
| XrlCmdError | static_routes_0_1_add_backup_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_backup_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_backup_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_delete_backup_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop) |
| XrlCmdError | static_routes_0_1_delete_backup_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop) |
| XrlCmdError | static_routes_0_1_add_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| Add/replace/delete a static route by explicitly specifying the network interface toward the destination. | |
| XrlCmdError | static_routes_0_1_add_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_delete_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname) |
| XrlCmdError | static_routes_0_1_delete_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname) |
| XrlCmdError | static_routes_0_1_add_backup_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| Add/replace/delete a backup static route by explicitly specifying the network interface toward the destination. | |
| XrlCmdError | static_routes_0_1_add_backup_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_backup_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_replace_backup_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname, const uint32_t &metric) |
| XrlCmdError | static_routes_0_1_delete_backup_interface_route4 (const bool &unicast, const bool &multicast, const IPv4Net &network, const IPv4 &nexthop, const string &ifname, const string &vifname) |
| XrlCmdError | static_routes_0_1_delete_backup_interface_route6 (const bool &unicast, const bool &multicast, const IPv6Net &network, const IPv6 &nexthop, const string &ifname, const string &vifname) |
| XrlCmdError | static_routes_0_1_enable_log_trace_all (const bool &enable) |
| Enable/disable the StaticRoutes trace log for all operations. | |
| XrlCmdError | policy_backend_0_1_configure (const uint32_t &filter, const string &conf) |
| Configure a policy filter. | |
| XrlCmdError | policy_backend_0_1_reset (const uint32_t &filter) |
| Reset a policy filter. | |
| XrlCmdError | policy_backend_0_1_push_routes () |
| Push routes through policy filters for re-filtering. | |
Private Member Functions | |
| const ServiceBase * | ifmgr_mirror_service_base () const |
| Get a reference to the service base of the interface manager. | |
| const IfMgrIfTree & | ifmgr_iftree () const |
| Get a reference to the interface manager tree. | |
| virtual void | finder_connect_event () |
| Called when Finder connection is established. | |
| virtual void | finder_disconnect_event () |
| Called when Finder disconnect occurs. | |
| void | fea_register_startup () |
| Initiate registration with the FEA. | |
| void | finder_register_interest_fea_cb (const XrlError &xrl_error) |
| void | fea_register_shutdown () |
| Initiate de-registration with the FEA. | |
| void | finder_deregister_interest_fea_cb (const XrlError &xrl_error) |
| void | rib_register_startup () |
| Initiate registration with the RIB. | |
| void | finder_register_interest_rib_cb (const XrlError &xrl_error) |
| void | rib_register_shutdown () |
| Initiate de-registration with the RIB. | |
| void | finder_deregister_interest_rib_cb (const XrlError &xrl_error) |
| void | send_rib_add_tables () |
| void | rib_client_send_add_igp_table4_cb (const XrlError &xrl_error) |
| void | send_rib_delete_tables () |
| void | rib_client_send_delete_igp_table4_cb (const XrlError &xrl_error) |
| void | inform_rib_route_change (const StaticRoute &static_route) |
| Inform the RIB about a route change. | |
| void | cancel_rib_route_change (const StaticRoute &static_route) |
| Cancel a pending request to inform the RIB about a route change. | |
| void | send_rib_route_change () |
| void | send_rib_route_change_cb (const XrlError &xrl_error) |
Private Attributes | |
| EventLoop & | _eventloop |
| XrlRibV0p1Client | _xrl_rib_client |
| const string | _finder_target |
| const string | _fea_target |
| const string | _rib_target |
| IfMgrXrlMirror | _ifmgr |
| list< StaticRoute > | _inform_rib_queue |
| XorpTimer | _inform_rib_queue_timer |
| XrlFinderEventNotifierV0p1Client | _xrl_finder_client |
| bool | _is_finder_alive |
| bool | _is_fea_alive |
| bool | _is_fea_registered |
| bool | _is_fea_registering |
| bool | _is_fea_deregistering |
| XorpTimer | _fea_register_startup_timer |
| XorpTimer | _fea_register_shutdown_timer |
| bool | _is_rib_alive |
| bool | _is_rib_registered |
| bool | _is_rib_registering |
| bool | _is_rib_deregistering |
| bool | _is_rib_igp_table4_registered |
| XorpTimer | _rib_register_startup_timer |
| XorpTimer | _rib_register_shutdown_timer |
| XorpTimer | _rib_igp_table_registration_timer |
Static Private Attributes | |
| static const TimeVal | RETRY_TIMEVAL = TimeVal(1, 0) |
| void XrlStaticRoutesNode::cancel_rib_route_change | ( | const StaticRoute & | static_route | ) | [private, virtual] |
Cancel a pending request to inform the RIB about a route change.
Implements StaticRoutesNode.
| void XrlStaticRoutesNode::fea_register_shutdown | ( | ) | [private, virtual] |
Initiate de-registration with the FEA.
This is a pure virtual function, and it must be implemented by the communication-wrapper class that inherits this base class.
Implements StaticRoutesNode.
| void XrlStaticRoutesNode::fea_register_startup | ( | ) | [private, virtual] |
Initiate registration with the FEA.
This is a pure virtual function, and it must be implemented by the communication-wrapper class that inherits this base class.
Implements StaticRoutesNode.
| void XrlStaticRoutesNode::finder_connect_event | ( | ) | [private, virtual] |
| void XrlStaticRoutesNode::finder_disconnect_event | ( | ) | [private, virtual] |
| XrlCmdError XrlStaticRoutesNode::finder_event_observer_0_1_xrl_target_birth | ( | const string & | target_class, |
| const string & | target_instance | ||
| ) | [protected, virtual] |
Announce target birth to observer.
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::finder_event_observer_0_1_xrl_target_death | ( | const string & | target_class, |
| const string & | target_instance | ||
| ) | [protected, virtual] |
Announce target death to observer.
Implements XrlStaticRoutesTargetBase.
| const IfMgrIfTree& XrlStaticRoutesNode::ifmgr_iftree | ( | ) | const [inline, private, virtual] |
Get a reference to the interface manager tree.
This is a pure virtual function, and it must be implemented by the communication-wrapper class that inherits this base class.
Implements StaticRoutesNode.
| const ServiceBase* XrlStaticRoutesNode::ifmgr_mirror_service_base | ( | ) | const [inline, private, virtual] |
| void XrlStaticRoutesNode::inform_rib_route_change | ( | const StaticRoute & | static_route | ) | [private, virtual] |
| XrlCmdError XrlStaticRoutesNode::policy_backend_0_1_configure | ( | const uint32_t & | filter, |
| const string & | conf | ||
| ) | [protected, virtual] |
Configure a policy filter.
| filter | Id of filter to configure. |
| conf | Configuration of filter. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::policy_backend_0_1_reset | ( | const uint32_t & | filter | ) | [protected, virtual] |
Reset a policy filter.
| filter | Id of filter to reset. |
Implements XrlStaticRoutesTargetBase.
| void XrlStaticRoutesNode::rib_register_shutdown | ( | ) | [private, virtual] |
Initiate de-registration with the RIB.
This is a pure virtual function, and it must be implemented by the communication-wrapper class that inherits this base class.
Implements StaticRoutesNode.
| void XrlStaticRoutesNode::rib_register_startup | ( | ) | [private, virtual] |
Initiate registration with the RIB.
This is a pure virtual function, and it must be implemented by the communication-wrapper class that inherits this base class.
Implements StaticRoutesNode.
| int XrlStaticRoutesNode::shutdown | ( | ) | [virtual] |
Reimplemented from StaticRoutesNode.
| int XrlStaticRoutesNode::startup | ( | ) | [virtual] |
Reimplemented from StaticRoutesNode.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_add_backup_interface_route4 | ( | const bool & | unicast, |
| const bool & | multicast, | ||
| const IPv4Net & | network, | ||
| const IPv4 & | nexthop, | ||
| const string & | ifname, | ||
| const string & | vifname, | ||
| const uint32_t & | metric | ||
| ) | [protected, virtual] |
Add/replace/delete a backup static route by explicitly specifying the network interface toward the destination.
| unicast | if true, then the route would be used for unicast routing. |
| multicast | if true, then the route would be used in the MRIB (Multicast Routing Information Base) for multicast purpose (e.g., computing the Reverse-Path Forwarding information). |
| network | the network address prefix this route applies to. |
| nexthop | the address of the next-hop router for this route. |
| ifname | of the name of the physical interface toward the destination. |
| vifname | of the name of the virtual interface toward the destination. |
| metric | the metric distance for this route. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_add_backup_route4 | ( | const bool & | unicast, |
| const bool & | multicast, | ||
| const IPv4Net & | network, | ||
| const IPv4 & | nexthop, | ||
| const uint32_t & | metric | ||
| ) | [protected, virtual] |
Add/replace/delete a backup static route.
| unicast | if true, then the route would be used for unicast routing. |
| multicast | if true, then the route would be used in the MRIB (Multicast Routing Information Base) for multicast purpose (e.g., computing the Reverse-Path Forwarding information). |
| network | the network address prefix this route applies to. |
| nexthop | the address of the next-hop router for this route. |
| metric | the metric distance for this route. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_add_interface_route4 | ( | const bool & | unicast, |
| const bool & | multicast, | ||
| const IPv4Net & | network, | ||
| const IPv4 & | nexthop, | ||
| const string & | ifname, | ||
| const string & | vifname, | ||
| const uint32_t & | metric | ||
| ) | [protected, virtual] |
Add/replace/delete a static route by explicitly specifying the network interface toward the destination.
Add/replace a static route by explicitly specifying the network interface toward the destination.
| unicast | if true, then the route would be used for unicast routing. |
| multicast | if true, then the route would be used in the MRIB (Multicast Routing Information Base) for multicast purpose (e.g., computing the Reverse-Path Forwarding information). |
| network | the network address prefix this route applies to. |
| nexthop | the address of the next-hop router for this route. |
| ifname | of the name of the physical interface toward the destination. |
| vifname | of the name of the virtual interface toward the destination. |
| metric | the metric distance for this route. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_add_route4 | ( | const bool & | unicast, |
| const bool & | multicast, | ||
| const IPv4Net & | network, | ||
| const IPv4 & | nexthop, | ||
| const uint32_t & | metric | ||
| ) | [protected, virtual] |
Add/replace/delete a static route.
| unicast | if true, then the route would be used for unicast routing. |
| multicast | if true, then the route would be used in the MRIB (Multicast Routing Information Base) for multicast purpose (e.g., computing the Reverse-Path Forwarding information). |
| network | the network address prefix this route applies to. |
| nexthop | the address of the next-hop router for this route. |
| metric | the metric distance for this route. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_enable_log_trace_all | ( | const bool & | enable | ) | [protected, virtual] |
Enable/disable the StaticRoutes trace log for all operations.
| enable | if true, then enable the trace log, otherwise disable it. |
Implements XrlStaticRoutesTargetBase.
| XrlCmdError XrlStaticRoutesNode::static_routes_0_1_enable_static_routes | ( | const bool & | enable | ) | [protected, virtual] |
Enable/disable/start/stop StaticRoutes.
| enable | if true, then enable StaticRoutes, otherwise disable it. |
Implements XrlStaticRoutesTargetBase.
| XrlRouter& XrlStaticRoutesNode::xrl_router | ( | ) | [inline] |