xorp

MfeaDft Class Reference

The MFEA (S,G) dataflow table for monitoring forwarded bandwidth. More...

#include <mfea_dataflow.hh>

Inheritance diagram for MfeaDft:
Mrt< MfeaDfeLookup >

List of all members.

Public Member Functions

 MfeaDft (MfeaNode &mfea_node)
 Constructor for a given MFEA node.
virtual ~MfeaDft ()
 Destructor.
MfeaNodemfea_node () const
 Get a reference to to the MFEA node this table belongs to.
int family () const
 Get the address family.
int add_entry (const IPvX &source, const IPvX &group, const TimeVal &threshold_interval, uint32_t threshold_packets, uint32_t threshold_bytes, bool is_threshold_in_packets, bool is_threshold_in_bytes, bool is_geq_upcall, bool is_leq_upcall, string &error_msg)
 Add a dataflow entry.
int delete_entry (const IPvX &source, const IPvX &group, const TimeVal &threshold_interval, uint32_t threshold_packets, uint32_t threshold_bytes, bool is_threshold_in_packets, bool is_threshold_in_bytes, bool is_geq_upcall, bool is_leq_upcall, string &error_msg)
 Delete a dataflow entry.
int delete_entry (const IPvX &source, const IPvX &group)
 Delete all dataflow entries for a given source and group address.

Private Member Functions

int delete_entry (MfeaDfe *mfea_dfe)
 Delete a given MfeaDfe dataflow entry.

Private Attributes

MfeaNode_mfea_node

Detailed Description

The MFEA (S,G) dataflow table for monitoring forwarded bandwidth.


Constructor & Destructor Documentation

MfeaDft::MfeaDft ( MfeaNode mfea_node)

Constructor for a given MFEA node.

Parameters:
mfea_nodethe MfeaNode this table belongs to.

Member Function Documentation

int MfeaDft::add_entry ( const IPvX source,
const IPvX group,
const TimeVal threshold_interval,
uint32_t  threshold_packets,
uint32_t  threshold_bytes,
bool  is_threshold_in_packets,
bool  is_threshold_in_bytes,
bool  is_geq_upcall,
bool  is_leq_upcall,
string &  error_msg 
)

Add a dataflow entry.

Note: either is_threshold_in_packets or is_threshold_in_bytes (or both) must be true. Note: either is_geq_upcall or is_leq_upcall (but not both) must be true.

Parameters:
sourcethe source address.
groupthe group address.
threshold_intervalthe dataflow threshold interval.
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 "<=".
error_msgthe error message (if error).
Returns:
XORP_OK on success, otherwise XORP_ERROR.
int MfeaDft::delete_entry ( const IPvX source,
const IPvX group,
const TimeVal threshold_interval,
uint32_t  threshold_packets,
uint32_t  threshold_bytes,
bool  is_threshold_in_packets,
bool  is_threshold_in_bytes,
bool  is_geq_upcall,
bool  is_leq_upcall,
string &  error_msg 
)

Delete a dataflow entry.

Note: either is_threshold_in_packets or is_threshold_in_bytes (or both) must be true. Note: either is_geq_upcall or is_leq_upcall (but not both) must be true.

Parameters:
sourcethe source address.
groupthe group address.
threshold_intervalthe dataflow threshold interval.
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 "<=".
error_msgthe error message (if error).
Returns:
XORP_OK on success, otherwise XORP_ERROR.
int MfeaDft::delete_entry ( const IPvX source,
const IPvX group 
)

Delete all dataflow entries for a given source and group address.

Parameters:
sourcethe source address.
groupthe group address.
Returns:
XORP_OK on success, otherwise XORP_ERROR.
int MfeaDft::delete_entry ( MfeaDfe mfea_dfe) [private]

Delete a given MfeaDfe dataflow entry.

Parameters:
mfea_dfethe MfeaDfe dataflow entry to delete.
Returns:
XORP_OK on success, otherwise XORP_ERROR.
int MfeaDft::family ( ) const

Get the address family.

Returns:
the address family (e.g., AF_INET or AF_INET6 for IPv4 and IPv6 respectively).
MfeaNode& MfeaDft::mfea_node ( ) const [inline]

Get a reference to to the MFEA node this table belongs to.

Returns:
a reference to the MFEA node (MfeaNode) this table belongs to.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations