class XrlMfeaNode


 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Methods

Protected Methods


Detailed Description

 XrlMfeaNode (int family, xorp_module_id module_id, EventLoop& eventloop, XrlRouter* xrl_router, const string& fea_target, FtiConfig& ftic)

XrlMfeaNode

 ~XrlMfeaNode ()

~XrlMfeaNode

[virtual]

bool  startup ()

startup

Startup the node operation.

Returns: true on success, false on failure.

bool  shutdown ()

shutdown

Shutdown the node operation.

Returns: true on success, false on failure.

int  enable_cli ()

enable_cli

int  disable_cli ()

disable_cli

int  start_cli ()

start_cli

int  stop_cli ()

stop_cli

int  enable_mfea ()

enable_mfea

int  disable_mfea ()

disable_mfea

int  start_mfea ()

start_mfea

int  stop_mfea ()

stop_mfea

XrlCmdError  common_0_1_get_target_name ( string& name)

common_0_1_get_target_name

[protected]

Get name of Xrl Target

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  common_0_1_get_version ( string& version)

common_0_1_get_version

[protected]

Get version string from Xrl Target

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  common_0_1_get_status ( uint32_t& status, string& reason)

common_0_1_get_status

[protected]

Get status from Xrl Target

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  common_0_1_shutdown ()

common_0_1_shutdown

[protected]

shutdown cleanly

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  cli_processor_0_1_process_command ( const string& processor_name, const string& cli_term_name, const uint32_t& cli_session_id, const string& command_name, const string& command_args, string& ret_processor_name, string& ret_cli_term_name, uint32_t& ret_cli_session_id, string& ret_command_output)

cli_processor_0_1_process_command

[protected]

Process a CLI command.

Parameters:

processor_namethe processor name for this command.
cli_term_namethe terminal name the command was entered from.
cli_session_idthe CLI session ID the command was entered from.
command_namethe command name to process.
command_argsthe command arguments to process.
ret_processor_namethe processor name to return back to the CLI.
ret_cli_term_namethe terminal name to return back.
ret_cli_session_idthe CLI session ID to return back.
ret_command_outputthe command output to return back.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_have_multicast_routing4 ( bool& result)

mfea_0_1_have_multicast_routing4

[protected]

Test if the underlying system supports IPv4 multicast routing.

Parameters:

resulttrue if the underlying system supports IPv4 multicast routing, otherwise false.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_have_multicast_routing6 ( bool& result)

mfea_0_1_have_multicast_routing6

[protected]

Test if the underlying system supports IPv6 multicast routing.

Parameters:

resulttrue if the underlying system supports IPv6 multicast routing, otherwise false.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_protocol4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id)

mfea_0_1_add_protocol4

[protected]

Add/delete a protocol in the Multicast FEA.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol to add/delete.
protocol_idthe ID of the protocol to add/delete (both sides must agree on the particular values).

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_protocol6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id)

mfea_0_1_add_protocol6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_protocol4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id)

mfea_0_1_delete_protocol4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_protocol6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id)

mfea_0_1_delete_protocol6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_protocol_vif4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index)

mfea_0_1_start_protocol_vif4

[protected]

Start/stop a protocol on an interface in the Multicast FEA.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol to start/stop on the particular vif.
protocol_idthe ID of the protocol to add/stop on the particular vif (both sides must agree on the particular values).
vif_namethe name of the vif to start/stop for the particular protocol.
vif_indexthe index of the vif to start/stop for the particular protocol.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_protocol_vif6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index)

mfea_0_1_start_protocol_vif6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_protocol_vif4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index)

mfea_0_1_stop_protocol_vif4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_protocol_vif6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index)

mfea_0_1_stop_protocol_vif6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_allow_signal_messages ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const bool& is_allow)

mfea_0_1_allow_signal_messages

[protected]

Enable/disable the receiving of kernel-originated signal messages.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol to add.
protocol_idthe ID of the protocol to add (both sides must agree on the particular values).
is_allowif true, enable the receiving of kernel-originated signal messages by protocol

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_allow_mrib_messages ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const bool& is_allow)

mfea_0_1_allow_mrib_messages

[protected]

Enable/disable the receiving of Multicast Routing Information Base information.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol to add.
protocol_idthe ID of the protocol to add (both sides must agree on the particular values).
is_allowif true, enable the receiving of MRIB information messages by protocol 'protocol_name'.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_join_multicast_group4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv4& group_address)

mfea_0_1_join_multicast_group4

[protected]

Join/leave a multicast group.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol that joins/leave the group.
protocol_idthe ID of the protocol that joins/leave the group (both sides must agree on the particular values).
vif_namethe name of the vif to join/leave the multicast group.
vif_indexthe index of the vif to join/leave the multicast group.
group_addressthe multicast group to join/leave

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_join_multicast_group6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv6& group_address)

mfea_0_1_join_multicast_group6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_leave_multicast_group4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv4& group_address)

mfea_0_1_leave_multicast_group4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_leave_multicast_group6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv6& group_address)

mfea_0_1_leave_multicast_group6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_mfc4 ( const string& xrl_sender_name, const IPv4& source_address, const IPv4& group_address, const uint32_t& iif_vif_index, const vector<uint8_t>& oiflist, const vector<uint8_t>& oiflist_disable_wrongvif, const uint32_t& max_vifs_oiflist, const IPv4& rp_address)

mfea_0_1_add_mfc4

[protected]

Add/delete a Multicast Forwarding Cache with the kernel.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
source_addressthe source address of the MFC to add/delete.
group_addressthe group address of the MFC to add/delete.
iif_vif_indexthe index of the vif that is the incoming interface.
oiflistthe bit-vector with the set of outgoing interfaces.
oiflist_disable_wrongvifthe bit-vector with the set of outgoing interfaces to disable WRONGVIF kernel signal.
max_vifs_oiflistthe number of vifs covered by oiflist or oiflist_disable_wrongvif .
rp_addressthe RP address of the MFC to add.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_mfc6 ( const string& xrl_sender_name, const IPv6& source_address, const IPv6& group_address, const uint32_t& iif_vif_index, const vector<uint8_t>& oiflist, const vector<uint8_t>& oiflist_disable_wrongvif, const uint32_t& max_vifs_oiflist, const IPv6& rp_address)

mfea_0_1_add_mfc6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_mfc4 ( const string& xrl_sender_name, const IPv4& source_address, const IPv4& group_address)

mfea_0_1_delete_mfc4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_mfc6 ( const string& xrl_sender_name, const IPv6& source_address, const IPv6& group_address)

mfea_0_1_delete_mfc6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_send_protocol_message4 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv4& source_address, const IPv4& dest_address, const int32_t& ip_ttl, const int32_t& ip_tos, const bool& is_router_alert, const vector<uint8_t>& protocol_message)

mfea_0_1_send_protocol_message4

[protected]

Send a protocol message to the MFEA.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
protocol_namethe name of the protocol that sends a message.
protocol_idthe ID of the protocol that sends a message (both sides must agree on the particular values).
vif_namethe name of the vif to send the message.
vif_indexthe vif index of the vif to send the message.
source_addressthe address of the sender.
dest_addressthe destination address.
ip_ttlthe TTL of the IP packet to send. If it has a negative value, the TTL will be set by the lower layers.
ip_tosthe TOS of the IP packet to send. If it has a negative value, the TOS will be set by the lower layers.
is_router_alertset/reset the IP Router Alert option in the IP packet to send (when applicable).

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_send_protocol_message6 ( const string& xrl_sender_name, const string& protocol_name, const uint32_t& protocol_id, const string& vif_name, const uint32_t& vif_index, const IPv6& source_address, const IPv6& dest_address, const int32_t& ip_ttl, const int32_t& ip_tos, const bool& is_router_alert, const vector<uint8_t>& protocol_message)

mfea_0_1_send_protocol_message6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_dataflow_monitor4 ( const string& xrl_sender_name, const IPv4& source_address, const IPv4& group_address, const uint32_t& threshold_interval_sec, const uint32_t& threshold_interval_usec, const uint32_t& threshold_packets, const uint32_t& threshold_bytes, const bool& is_threshold_in_packets, const bool& is_threshold_in_bytes, const bool& is_geq_upcall, const bool& is_leq_upcall)

mfea_0_1_add_dataflow_monitor4

[protected]

Add/delete a dataflow monitor with the MFEA.

Parameters:

xrl_sender_namethe XRL name of the originator of this XRL.
source_addressthe source address of the dataflow to start/stop monitoring.
group_addressthe group address of the dataflow to start/stop monitoring.
threshold_interval_secthe number of seconds in the interval to measure.
threshold_interval_usecthe number of microseconds in the interval to measure.
threshold_packetsthe threshold (in number of packets) to compare against.
threshold_bytesthe threshold (in number of bytes) to compare against.
is_threshold_in_packetsif true, threshold_packets is valid.
is_threshold_in_bytesif true, threshold_bytes is valid.
is_geq_upcallif true, the operation for comparison is ">=".
is_leq_upcallif true, the operation for comparison is "<=".

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_add_dataflow_monitor6 ( const string& xrl_sender_name, const IPv6& source_address, const IPv6& group_address, const uint32_t& threshold_interval_sec, const uint32_t& threshold_interval_usec, const uint32_t& threshold_packets, const uint32_t& threshold_bytes, const bool& is_threshold_in_packets, const bool& is_threshold_in_bytes, const bool& is_geq_upcall, const bool& is_leq_upcall)

mfea_0_1_add_dataflow_monitor6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_dataflow_monitor4 ( const string& xrl_sender_name, const IPv4& source_address, const IPv4& group_address, const uint32_t& threshold_interval_sec, const uint32_t& threshold_interval_usec, const uint32_t& threshold_packets, const uint32_t& threshold_bytes, const bool& is_threshold_in_packets, const bool& is_threshold_in_bytes, const bool& is_geq_upcall, const bool& is_leq_upcall)

mfea_0_1_delete_dataflow_monitor4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_dataflow_monitor6 ( const string& xrl_sender_name, const IPv6& source_address, const IPv6& group_address, const uint32_t& threshold_interval_sec, const uint32_t& threshold_interval_usec, const uint32_t& threshold_packets, const uint32_t& threshold_bytes, const bool& is_threshold_in_packets, const bool& is_threshold_in_bytes, const bool& is_geq_upcall, const bool& is_leq_upcall)

mfea_0_1_delete_dataflow_monitor6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_all_dataflow_monitor4 ( const string& xrl_sender_name, const IPv4& source_address, const IPv4& group_address)

mfea_0_1_delete_all_dataflow_monitor4

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_delete_all_dataflow_monitor6 ( const string& xrl_sender_name, const IPv6& source_address, const IPv6& group_address)

mfea_0_1_delete_all_dataflow_monitor6

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_enable_vif ( const string& vif_name, const bool& enable)

mfea_0_1_enable_vif

[protected]

Enable/disable/start/stop a MFEA vif interface.

Parameters:

vif_namethe name of the vif to enable/disable/start/stop.
enableif true, then enable the vif, otherwise disable it.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_vif ( const string& vif_name)

mfea_0_1_start_vif

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_vif ( const string& vif_name)

mfea_0_1_stop_vif

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_enable_all_vifs ( const bool& enable)

mfea_0_1_enable_all_vifs

[protected]

Enable/disable/start/stop all MFEA vif interfaces.

Parameters:

enableif true, then enable the vifs, otherwise disable them.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_all_vifs ()

mfea_0_1_start_all_vifs

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_all_vifs ()

mfea_0_1_stop_all_vifs

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_enable_mfea ( const bool& enable)

mfea_0_1_enable_mfea

[protected]

Enable/disable/start/stop the MFEA.

Parameters:

enableif true, then enable the MFEA, otherwise disable it.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_mfea ()

mfea_0_1_start_mfea

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_mfea ()

mfea_0_1_stop_mfea

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_enable_cli ( const bool& enable)

mfea_0_1_enable_cli

[protected]

Enable/disable/start/stop the MFEA CLI access.

Parameters:

enableif true, then enable the MFEA CLI access, otherwise disable it.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_start_cli ()

mfea_0_1_start_cli

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_stop_cli ()

mfea_0_1_stop_cli

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_log_trace_all ( const bool& enable)

mfea_0_1_log_trace_all

[protected]

Enable/disable the MFEA trace log for all operations.

Parameters:

enableif true, then enable the trace log, otherwise disable it.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_get_mrib_table_default_metric_preference ( uint32_t& metric_preference)

mfea_0_1_get_mrib_table_default_metric_preference

[protected]

Configure MFEA MRIB-related parameters. The 'set_foo' XRLs set the particular values. The 'reset_foo' XRLs reset the metrics to their default values.

Parameters:

metric_preferencethe MRIB metric preference.

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_set_mrib_table_default_metric_preference ( const uint32_t& metric_preference)

mfea_0_1_set_mrib_table_default_metric_preference

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_reset_mrib_table_default_metric_preference ()

mfea_0_1_reset_mrib_table_default_metric_preference

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_get_mrib_table_default_metric ( uint32_t& metric)

mfea_0_1_get_mrib_table_default_metric

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_set_mrib_table_default_metric ( const uint32_t& metric)

mfea_0_1_set_mrib_table_default_metric

[protected]

Reimplemented from XrlMfeaTargetBase.

XrlCmdError  mfea_0_1_reset_mrib_table_default_metric ()

mfea_0_1_reset_mrib_table_default_metric

[protected]

Reimplemented from XrlMfeaTargetBase.


Generated by: pavlin on possum.icir.org on Thu Jul 8 23:48:26 2004, using kdoc $.