Main Page   Namespace List   Alphabetical List   Compound List   File List   Compound Members   File Members  

Collector Class Reference

The Collector class for parsing Cisco Netflow(tm) UDP packet streams. More...

#include <collector.h>

List of all members.

Public Methods

 Collector ()
 A constuctor.

virtual ~Collector ()
 A virtual descructor.

void BindAndLoop ()
 Does all the work (binds local socket, creates new threads, accepts data, etc).

void setConfiguration (MConfig &)
 Set configuration parameters.

virtual void setIfInfoFile (const char *_newVal)
 Set the filename of the interface information file.

virtual const char * getIfInfoFile ()
 Get the filename of the interface information file.

void setRemotePeer (const InetHostAddress &, const InetHostAddress &, const uint16_t &, const string &)
 Description missing.

RemoteDetector getRemotePeer (const InetHostAddress &)
 Description missing.

void makeSlots (uint32_t &, uint32_t &)
 Description missing.

TimeSlotgetProcTS ()
 Description missing.

string getUID () const
 Description missing.


Private Attributes

const char * ifinfofile
 Keeps the filename for the interface info file (created by the python script).

InetHostAddress router
 The IPv4 address of the router that sends Netflow(tm) data.

InetHostAddress websrv
 The IPv4 address of the web server that presents Panoptis output.

Mutex * mtx
 For synchronizing between Collector, Detector/Analyzer and Dispatcher.

uint32_t SlotPeriod
 The TIMESLOT period.

uint32_t slotcount
 Total number of TIMESLOT periods.

float increase
 Description missing.

float percentage
 Description missing.

char * incharge
 Description missing.

char * execcmd
 Description missing.

uint16_t port
 Description missing.

uint16 peer_port
 Description missing.

uint16 web_port
 Description missing.

vector< RemoteDetectorRemotePeers
 Description missing.

UDPSocket sock
 Description missing.

TimeSlottsAdd
 Description missing.

TimeSlottsProc
 Description missing.

TimeSlottsPrev
 Description missing.

TimeSlottsLast
 Description missing.

PDUdatapacket
 Description missing.

uint8_t buff [MAX_DATAGRAM_LEN]
 Description missing.

uint32_t lostpackets
 How many packets where lost.

string myuid
 Description missing.

uint16_t netflow
 Description missing.


Detailed Description

The Collector class for parsing Cisco Netflow(tm) UDP packet streams.

Receives, pases and stores in shared memory the Netflow data. Current version supports Netflow v1, v5 (tested) v8 (untested) and v9 (experimental)

Author:
Constantinos A. Kotsokalis


Constructor & Destructor Documentation

Collector::Collector  
 

A constuctor.

Detailed info

virtual Collector::~Collector   [virtual]
 

A virtual descructor.

Detailed info


Member Function Documentation

void Collector::BindAndLoop  
 

Does all the work (binds local socket, creates new threads, accepts data, etc).

virtual const char* Collector::getIfInfoFile   [virtual]
 

Get the filename of the interface information file.

TimeSlot* Collector::getProcTS   [inline]
 

Description missing.

RemoteDetector Collector::getRemotePeer const InetHostAddress &   
 

Description missing.

string Collector::getUID   const [inline]
 

Description missing.

void Collector::makeSlots uint32_t  ,
uint32_t  
 

Description missing.

void Collector::setConfiguration MConfig  
 

Set configuration parameters.

The configuration file MUST contain all these (param,value) pairs: ROUTER, WEB_SERVER, UID, TIMESLOT, NETFLOW, INCREASE, PERCENTAGE, OWNER, EXECCMD, COLLECTOR_PORT, PEER_PORT, WEB_PORT, DB_SCRIPT, PEER_CONN

virtual void Collector::setIfInfoFile const char *    _newVal [virtual]
 

Set the filename of the interface information file.

void Collector::setRemotePeer const InetHostAddress &   ,
const InetHostAddress &   ,
const uint16_t  ,
const string &   
 

Description missing.


Member Data Documentation

uint8_t Collector::buff[MAX_DATAGRAM_LEN] [private]
 

Description missing.

PDU* Collector::datapacket [private]
 

Description missing.

char* Collector::execcmd [private]
 

Description missing.

const char* Collector::ifinfofile [private]
 

Keeps the filename for the interface info file (created by the python script).

char* Collector::incharge [private]
 

Description missing.

float Collector::increase [private]
 

Description missing.

uint32_t Collector::lostpackets [private]
 

How many packets where lost.

Mutex* Collector::mtx [private]
 

For synchronizing between Collector, Detector/Analyzer and Dispatcher.

string Collector::myuid [private]
 

Description missing.

uint16_t Collector::netflow [private]
 

Description missing.

uint16 Collector::peer_port [private]
 

Description missing.

float Collector::percentage [private]
 

Description missing.

uint16_t Collector::port [private]
 

Description missing.

vector<RemoteDetector> Collector::RemotePeers [private]
 

Description missing.

InetHostAddress Collector::router [private]
 

The IPv4 address of the router that sends Netflow(tm) data.

uint32_t Collector::slotcount [private]
 

Total number of TIMESLOT periods.

uint32_t Collector::SlotPeriod [private]
 

The TIMESLOT period.

UDPSocket Collector::sock [private]
 

Description missing.

TimeSlot* Collector::tsAdd [private]
 

Description missing.

TimeSlot * Collector::tsLast [private]
 

Description missing.

TimeSlot * Collector::tsPrev [private]
 

Description missing.

TimeSlot * Collector::tsProc [private]
 

Description missing.

uint16 Collector::web_port [private]
 

Description missing.

InetHostAddress Collector::websrv [private]
 

The IPv4 address of the web server that presents Panoptis output.


The documentation for this class was generated from the following file:
Generated on Thu Jun 26 00:23:14 2003 for Panoptis by doxygen1.2.18