class MfeaDfeLookup

A class for storing all dataflow entries per (S,G). More...

Definition#include <mfea_dataflow.hh>
InheritsMre (mrt) [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods


Detailed Description

 MfeaDfeLookup (MfeaDft& mfea_dft, const IPvX& source, const IPvX& group)

MfeaDfeLookup

Constructor for a given dataflow table, source and group address.

Parameters:
mfea_dftthe dataflow table (MfeaDft) this entries belongs to.
sourcethe source address.
groupthe group address.

 ~MfeaDfeLookup ()

~MfeaDfeLookup

Destructor

MfeaDft&  mfea_dft ()

mfea_dft

[const]

Get a reference to the dataflow table this entry belongs to.

Returns: a reference to the dataflow table (MfeaDataflow) this entry belongs to.

int  family ()

family

[const]

Get the address family.

Returns: the address family (e.g., AF_INET or AF_INET6 for IPv4 and IPv6 respectively).

MfeaDfefind (const struct 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)

find

Find a MfeaDfe 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:
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 "<=".

Returns: the corresponding MfeaDfe dataflow entry on success, otherwise NULL.

void  insert (MfeaDfe *mfea_dfe)

insert

Insert a MfeaDfe dataflow entry.

Parameters:
mfea_dfethe MfeaDfe dataflow entry to insert.

void  remove (MfeaDfe *mfea_dfe)

remove

Remove a MfeaDfe dataflow entry.

Parameters:
mfea_dfethe MfeaDfe dataflow entry to remove.

bool  is_empty ()

is_empty

[const]

Test if there are MfeaDfe entries inserted within this entry.

Returns: true if there are MfeaDfe entries inserted within this entry, otherwise false.

list<MfeaDfe *>&  mfea_dfe_list ()

mfea_dfe_list

Get the list of MfeaDfe dataflow entries for the same (S,G).

Returns: the list of MfeaDfe dataflow entries for the same (S,G).


Generated by: pavlin on possum.icir.org on Mon Mar 10 19:34:53 2003, using kdoc 2.0a54+XORP.