ns2 Network Simulator      C++ Class Hierarchy of version ns-snapshot-20040722
|  Home |  Source Code |  Manual |  FAQ |  Mailing List Archive |  Search |  |  Download | 


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

PushbackAgent Class Reference

#include <pushback.h>

Inheritance diagram for PushbackAgent:

Agent Connector NsObject TclObject Handler List of all members.

Public Member Functions

 PushbackAgent ()
int command (int argc, const char *const *argv)
void reportDrop (int qid, Packet *p)
void timeout (PushbackEvent *event)
void identifyAggregate (int qid, double arrRate, double linkBW)
void resetDropLog (int qid)
void recv (Packet *p, Handler *)
void calculateLowerBound (int qid, double arrRate)
void printMsg (char *msg, int msgLevel)

Static Public Member Functions

int mergerAccept (int count, int bits, int bitsDiff)

Public Attributes

int last_index_
int verbose_
int intResult_
int debugLevel
char prnMsg [500]
Node * node_

Protected Member Functions

void initialUpdate (RateLimitSession *rls)
void pushbackCheck (RateLimitSession *rls)
void pushbackStatus (RateLimitSession *rls)
void pushbackRefresh (int qid)
void pushbackCancel (RateLimitSession *rls)
void processPushbackRequest (PushbackRequestMessage *msg)
void processPushbackStatus (PushbackStatusMessage *msg)
void processPushbackRefresh (PushbackRefreshMessage *msg)
void processPushbackCancel (PushbackCancelMessage *msg)
void refreshUpstreamLimits (RateLimitSession *rls)
int getQID (int sender)
int checkQID (int qid)
void sendMsg (PushbackMessage *msg)

Protected Attributes

int enable_pushback_
queue_rec queue_list_ [MAX_QUEUES]
double requiredLimit_
RouteLogic * rtLogic_
PushbackTimer * timer_

Constructor & Destructor Documentation

PushbackAgent::PushbackAgent (    ) 
 


Member Function Documentation

void PushbackAgent::calculateLowerBound (  int    qid,
double    arrRate
) 
 

int PushbackAgent::checkQID (  int    qid )  [protected]
 

int PushbackAgent::command (  int    argc,
const char *const *    argv
)  [virtual]
 

Reimplemented from Agent.

int PushbackAgent::getQID (  int    sender )  [protected]
 

void PushbackAgent::identifyAggregate (  int    qid,
double    arrRate,
double    linkBW
) 
 

void PushbackAgent::initialUpdate (  RateLimitSession *    rls )  [protected]
 

int PushbackAgent::mergerAccept (  int    count,
int    bits,
int    bitsDiff
)  [static]
 

void PushbackAgent::printMsg (  char *    msg,
int    msgLevel
) 
 

void PushbackAgent::processPushbackCancel (  PushbackCancelMessage *    msg )  [protected]
 

void PushbackAgent::processPushbackRefresh (  PushbackRefreshMessage *    msg )  [protected]
 

void PushbackAgent::processPushbackRequest (  PushbackRequestMessage *    msg )  [protected]
 

void PushbackAgent::processPushbackStatus (  PushbackStatusMessage *    msg )  [protected]
 

void PushbackAgent::pushbackCancel (  RateLimitSession *    rls )  [protected]
 

void PushbackAgent::pushbackCheck (  RateLimitSession *    rls )  [protected]
 

void PushbackAgent::pushbackRefresh (  int    qid )  [protected]
 

void PushbackAgent::pushbackStatus (  RateLimitSession *    rls )  [protected]
 

void PushbackAgent::recv (  Packet *    p,
Handler *   
)  [virtual]
 

Reimplemented from Agent.

void PushbackAgent::refreshUpstreamLimits (  RateLimitSession *    rls )  [protected]
 

void PushbackAgent::reportDrop (  int    qid,
Packet *    p
) 
 

void PushbackAgent::resetDropLog (  int    qid ) 
 

void PushbackAgent::sendMsg (  PushbackMessage *    msg )  [protected]
 

void PushbackAgent::timeout (  PushbackEvent *    event ) 
 


Member Data Documentation

int PushbackAgent::debugLevel
 

int PushbackAgent::enable_pushback_ [protected]
 

int PushbackAgent::intResult_
 

int PushbackAgent::last_index_
 

Node* PushbackAgent::node_
 

char PushbackAgent::prnMsg[500]
 

queue_rec PushbackAgent::queue_list_[MAX_QUEUES] [protected]
 

double PushbackAgent::requiredLimit_ [protected]
 

RouteLogic* PushbackAgent::rtLogic_ [protected]
 

PushbackTimer* PushbackAgent::timer_ [protected]
 

int PushbackAgent::verbose_
 


The documentation for this class was generated from the following files:
This document is generated by doxygen.