class XrlMfeaNode


Definition#include <xrl_mfea_node.hh>
InheritsMfeaNode [public ], MfeaNodeCli [public ], XrlCliManagerV0p1Client (unknown) [public ], XrlCommonV0p1Client (unknown) [public ], XrlMfeaClientV0p1Client (unknown) [public ], XrlMfeaTargetBase (unknown) [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Protected Methods


Detailed Description

 XrlMfeaNode (int family, x_module_id module_id, EventLoop& event_loop, XrlRouter* r)

XrlMfeaNode

 ~XrlMfeaNode ()

~XrlMfeaNode

[virtual]

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

int  proto_send (const string& dst_module_instance_name, x_module_id dst_module_id, uint16_t vif_index, const IPvX& src, const IPvX& dst, int ip_ttl, int ip_tos, bool router_alert_bool, const uint8_t * sndbuf, size_t sndlen)

proto_send

[protected]

Reimplemented from ProtoNode.

void  xrl_result_recv_protocol_message (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_recv_protocol_message

[protected]

int  signal_message_send (const string& dst_module_instance_name, x_module_id dst_module_id, int message_type, uint16_t vif_index, const IPvX& src, const IPvX& dst, const uint8_t *rcvbuf, size_t rcvlen)

signal_message_send

[protected]

Reimplemented from ProtoNode.

int  send_add_mrib (const string& dst_module_instance_name, x_module_id dst_module_id, const Mrib& mrib)

send_add_mrib

[protected]

Reimplemented from MfeaNode.

int  send_delete_mrib (const string& dst_module_instance_name, x_module_id dst_module_id, const Mrib& mrib)

send_delete_mrib

[protected]

Reimplemented from MfeaNode.

int  send_set_mrib_done (const string& dst_module_instance_name, x_module_id dst_module_id)

send_set_mrib_done

[protected]

Reimplemented from MfeaNode.

void  xrl_result_recv_kernel_signal_message (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_recv_kernel_signal_message

[protected]

void  xrl_result_new_vif (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_new_vif

[protected]

void  xrl_result_delete_vif (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_delete_vif

[protected]

void  xrl_result_add_vif_addr (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_add_vif_addr

[protected]

void  xrl_result_delete_vif_addr (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_delete_vif_addr

[protected]

void  xrl_result_set_vif_flags (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_set_vif_flags

[protected]

void  xrl_result_set_vif_done (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_set_vif_done

[protected]

void  xrl_result_set_all_vifs_done (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_set_all_vifs_done

[protected]

int  dataflow_signal_send (const string& dst_module_instance_name, x_module_id dst_module_id, const IPvX& source_addr, const IPvX& group_addr, uint32_t threshold_interval_sec, uint32_t threshold_interval_usec, uint32_t measured_interval_sec, uint32_t measured_interval_usec, uint32_t threshold_packets, uint32_t threshold_bytes, uint32_t measured_packets, uint32_t measured_bytes, bool is_threshold_in_packets, bool is_threshold_in_bytes, bool is_geq_upcall, bool is_leq_upcall)

dataflow_signal_send

[protected]

Reimplemented from MfeaNode.

void  xrl_result_recv_dataflow_signal (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_recv_dataflow_signal

[protected]

int  add_cli_command_to_cli_manager (const char *command_name, const char *command_help, bool is_command_cd, const char *command_cd_prompt, bool is_command_processor)

add_cli_command_to_cli_manager

[protected]

Reimplemented from ProtoNodeCli.

void  xrl_result_add_cli_command (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_add_cli_command

[protected]

int  delete_cli_command_from_cli_manager (const char *command_name)

delete_cli_command_from_cli_manager

[protected]

Reimplemented from ProtoNodeCli.

void  xrl_result_delete_cli_command (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_delete_cli_command

[protected]

XrlCmdError  common_0_1_get_target_name ( string& name)

common_0_1_get_target_name

[protected]

Get name of Xrl Target

XrlCmdError  common_0_1_get_version ( string& version)

common_0_1_get_version

[protected]

Get version string from Xrl Target

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]

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

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).
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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

mfea_0_1_add_protocol6

[protected]

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

mfea_0_1_delete_protocol4

[protected]

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

mfea_0_1_delete_protocol6

[protected]

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, bool& fail, string& reason)

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.
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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, bool& fail, string& reason)

mfea_0_1_start_protocol_vif6

[protected]

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, bool& fail, string& reason)

mfea_0_1_stop_protocol_vif4

[protected]

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, bool& fail, string& reason)

mfea_0_1_stop_protocol_vif6

[protected]

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, bool& fail, string& reason)

mfea_0_1_allow_signal_messages

[protected]

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

@protocol_name.

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
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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, bool& fail, string& reason)

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'.
failtrue if failure has occured.
reasoncontains failure reason if it occured.

void  xrl_result_add_mrib (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_add_mrib

[protected]

void  xrl_result_delete_mrib (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_delete_mrib

[protected]

void  xrl_result_set_mrib_done (const XrlError& xrl_error, const bool *fail, const string *reason)

xrl_result_set_mrib_done

[protected]

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, bool& fail, string& reason)

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
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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, bool& fail, string& reason)

mfea_0_1_join_multicast_group6

[protected]

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, bool& fail, string& reason)

mfea_0_1_leave_multicast_group4

[protected]

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, bool& fail, string& reason)

mfea_0_1_leave_multicast_group6

[protected]

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, bool& fail, string& reason)

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.
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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, bool& fail, string& reason)

mfea_0_1_add_mfc6

[protected]

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

mfea_0_1_delete_mfc4

[protected]

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

mfea_0_1_delete_mfc6

[protected]

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, bool& fail, string& reason)

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).
failtrue if failure has occured.
reasoncontains failure reason if it occured.

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, bool& fail, string& reason)

mfea_0_1_send_protocol_message6

[protected]

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, bool& fail, string& reason)

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 "<=".

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, bool& fail, string& reason)

mfea_0_1_add_dataflow_monitor6

[protected]

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, bool& fail, string& reason)

mfea_0_1_delete_dataflow_monitor4

[protected]

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, bool& fail, string& reason)

mfea_0_1_delete_dataflow_monitor6

[protected]

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

mfea_0_1_delete_all_dataflow_monitor4

[protected]

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

mfea_0_1_delete_all_dataflow_monitor6

[protected]

XrlCmdError  mfea_0_1_enable_vif ( const string& vif_name, bool& fail, string& reason)

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.
failtrue if failure has occured.
reasoncontains failure reason if it occured.

XrlCmdError  mfea_0_1_disable_vif ( const string& vif_name, bool& fail, string& reason)

mfea_0_1_disable_vif

[protected]

XrlCmdError  mfea_0_1_start_vif ( const string& vif_name, bool& fail, string& reason)

mfea_0_1_start_vif

[protected]

XrlCmdError  mfea_0_1_stop_vif ( const string& vif_name, bool& fail, string& reason)

mfea_0_1_stop_vif

[protected]

XrlCmdError  mfea_0_1_enable_all_vifs ( bool& fail, string& reason)

mfea_0_1_enable_all_vifs

[protected]

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

Parameters:
failtrue if failure has occured.
reasoncontains failure reason if it occured.

XrlCmdError  mfea_0_1_disable_all_vifs ( bool& fail, string& reason)

mfea_0_1_disable_all_vifs

[protected]

XrlCmdError  mfea_0_1_start_all_vifs ( bool& fail, string& reason)

mfea_0_1_start_all_vifs

[protected]

XrlCmdError  mfea_0_1_stop_all_vifs ( bool& fail, string& reason)

mfea_0_1_stop_all_vifs

[protected]

XrlCmdError  mfea_0_1_enable_mfea ( bool& fail, string& reason)

mfea_0_1_enable_mfea

[protected]

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

Parameters:
failtrue if failure has occured.
reasoncontains failure reason if it occured.

XrlCmdError  mfea_0_1_disable_mfea ( bool& fail, string& reason)

mfea_0_1_disable_mfea

[protected]

XrlCmdError  mfea_0_1_enable_cli ( bool& fail, string& reason)

mfea_0_1_enable_cli

[protected]

XrlCmdError  mfea_0_1_disable_cli ( bool& fail, string& reason)

mfea_0_1_disable_cli

[protected]

XrlCmdError  mfea_0_1_start_mfea ( bool& fail, string& reason)

mfea_0_1_start_mfea

[protected]

XrlCmdError  mfea_0_1_stop_mfea ( bool& fail, string& reason)

mfea_0_1_stop_mfea

[protected]

XrlCmdError  mfea_0_1_start_cli ( bool& fail, string& reason)

mfea_0_1_start_cli

[protected]

XrlCmdError  mfea_0_1_stop_cli ( bool& fail, string& reason)

mfea_0_1_stop_cli

[protected]

XrlCmdError  mfea_0_1_enable_log_trace ( bool& fail, string& reason)

mfea_0_1_enable_log_trace

[protected]

Enable/disable the MFEA trace log.

Parameters:
failtrue if failure has occured.
reasoncontains failure reason if it occured.

XrlCmdError  mfea_0_1_disable_log_trace ( bool& fail, string& reason)

mfea_0_1_disable_log_trace

[protected]


Generated by: pavlin on possum.icir.org on Wed Dec 11 16:50:48 2002, using kdoc 2.0a54+XORP.