#include <flowmon.h>
Inheritance diagram for FlowMon:


|
|
Definition at line 256 of file flowmon.cc. References enable_drop_, enable_edrop_, enable_in_, and enable_out_.
00256 : classifier_(NULL), channel_(NULL), 00257 enable_in_(1), enable_out_(1), enable_drop_(1), enable_edrop_(1), enable_mon_edrop_(1) 00258 { 00259 bind_bool("enable_in_", &enable_in_); 00260 bind_bool("enable_out_", &enable_out_); 00261 bind_bool("enable_drop_", &enable_drop_); 00262 bind_bool("enable_edrop_", &enable_edrop_); 00263 } |
|
|
Definition at line 101 of file queue-monitor.h. References QueueMonitor::barrivals_. Referenced by fformat(), Tagger::fformat(), and PushbackQueue::timeout().
00101 { return (barrivals_); }
|
|
|
Definition at line 103 of file queue-monitor.h. References QueueMonitor::bdepartures_. Referenced by PushbackQueue::timeout().
00103 { return (bdepartures_); }
|
|
|
Definition at line 107 of file queue-monitor.h. References QueueMonitor::bdrops_. Referenced by fformat(), Tagger::fformat(), and PushbackQueue::timeout().
00107 { return (bdrops_); }
|
|
||||||||||||
|
Reimplemented from QueueMonitor. Definition at line 420 of file flowmon.cc. References channel_, classifier_, QueueMonitor::command(), dumpflows(), and flow_list().
00421 {
00422 Tcl& tcl = Tcl::instance();
00423 if (argc == 2) {
00424 if (strcmp(argv[1], "classifier") == 0) {
00425 if (classifier_)
00426 tcl.resultf("%s", classifier_->name());
00427 else
00428 tcl.resultf("");
00429 return (TCL_OK);
00430 }
00431 if (strcmp(argv[1], "dump") == 0) {
00432 dumpflows();
00433 return (TCL_OK);
00434 }
00435 if (strcmp(argv[1], "flows") == 0) {
00436 // printf("command says gimme flow list\n");
00437 tcl.result(flow_list());
00438 return (TCL_OK);
00439 }
00440 } else if (argc == 3) {
00441 if (strcmp(argv[1], "classifier") == 0) {
00442 classifier_ = (Classifier*)
00443 TclObject::lookup(argv[2]);
00444 if (classifier_ == NULL)
00445 return (TCL_ERROR);
00446 return (TCL_OK);
00447 }
00448 if (strcmp(argv[1], "attach") == 0) {
00449 int mode;
00450 const char* id = argv[2];
00451 channel_ = Tcl_GetChannel(tcl.interp(),
00452 (char*) id, &mode);
00453 if (channel_ == NULL) {
00454 tcl.resultf("FlowMon (%s): can't attach %s for writing",
00455 name(), id);
00456 return (TCL_ERROR);
00457 }
00458 return (TCL_OK);
00459 }
00460 }
00461 return (EDQueueMonitor::command(argc, argv));
00462 }
|
Here is the call graph for this function:

|
|
Reimplemented from QueueMonitor. Definition at line 293 of file flowmon.cc. References classifier_, QueueMonitor::drop(), enable_drop_, Classifier::find(), and Flow::setfields().
00294 {
00295 Flow* desc;
00296 EDQueueMonitor::drop(p);
00297 if (!enable_drop_)
00298 return;
00299 if ((desc = ((Flow*)classifier_->find(p))) != NULL) {
00300 desc->setfields(p);
00301 desc->drop(p);
00302 }
00303 }
|
Here is the call graph for this function:

|
||||||||||||
|
Definition at line 407 of file flowmon.cc. References fformat(), and wrk_. Referenced by dumpflows().
|
Here is the call graph for this function:

|
|
Definition at line 333 of file flowmon.cc. References channel_, classifier_, dumpflow(), Classifier::maxslot(), and Classifier::slot(). Referenced by command().
00334 {
00335 register int i, j = classifier_->maxslot();
00336 Flow* f;
00337
00338 for (i = 0; i <= j; i++) {
00339 if ((f = (Flow*)classifier_->slot(i)) != NULL)
00340 dumpflow(channel_, f);
00341 }
00342 }
|
Here is the call graph for this function:

|
|
Definition at line 265 of file queue-monitor.h. References EDQueueMonitor::ebdrops_. Referenced by fformat(), and Tagger::fformat().
00265 { return (ebdrops_); }
|
|
|
Reimplemented from EDQueueMonitor. Definition at line 306 of file flowmon.cc. References classifier_, EDQueueMonitor::edrop(), enable_edrop_, Classifier::find(), and Flow::setfields().
00307 {
00308 Flow* desc;
00309 EDQueueMonitor::edrop(p);
00310 if (!enable_edrop_)
00311 return;
00312 if ((desc = ((Flow*)classifier_->find(p))) != NULL) {
00313 desc->setfields(p);
00314 desc->edrop(p);
00315 }
00316 }
|
Here is the call graph for this function:

|
|
Definition at line 264 of file queue-monitor.h. References EDQueueMonitor::epdrops_. Referenced by fformat(), and Tagger::fformat().
00264 { return (epdrops_); }
|
|
|
Definition at line 301 of file queue-monitor.cc. References hdr_cmn::access(), Scheduler::clock(), QueueMonitor::estRate_, Scheduler::instance(), QueueMonitor::k_, QueueMonitor::prevTime_, hdr_cmn::size(), and QueueMonitor::temp_size_. Referenced by QueueMonitor::in().
00301 {
00302
00303 hdr_cmn* hdr = hdr_cmn::access(pkt);
00304 int pktSize = hdr->size() << 3; /* length of the packet in bits */
00305
00306 double now = Scheduler::instance().clock();
00307 double timeGap = ( now - prevTime_);
00308
00309 if (timeGap == 0) {
00310 temp_size_ += pktSize;
00311 return;
00312 }
00313 else {
00314 pktSize+= temp_size_;
00315 temp_size_ = 0;
00316 }
00317
00318 prevTime_ = now;
00319
00320 estRate_ = (1 - exp(-timeGap/k_))*((double)pktSize)/timeGap + exp(-timeGap/k_)*estRate_;
00321 }
|
Here is the call graph for this function:

|
|
Definition at line 376 of file flowmon.cc. References QueueMonitor::barrivals(), QueueMonitor::bdrops(), Scheduler::clock(), Flow::dst(), EDQueueMonitor::ebdrops(), EDQueueMonitor::epdrops(), Flow::flowid(), Scheduler::instance(), QueueMonitor::parrivals(), QueueMonitor::pdrops(), Flow::ptype(), Flow::src(), STRTOI64_FMTSTR, and wrk_. Referenced by dumpflow().
00377 {
00378 double now = Scheduler::instance().clock();
00379 #if defined(HAVE_INT64)
00380 sprintf(wrk_, "%8.3f %d %d %d %d %d %d " STRTOI64_FMTSTR " " STRTOI64_FMTSTR " %d %d " STRTOI64_FMTSTR " " STRTOI64_FMTSTR " %d %d %d %d %d %d",
00381 #else /* no 64-bit int */
00382 sprintf(wrk_, "%8.3f %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d",
00383 #endif
00384 now, // 1: time
00385 f->flowid(), // 2: flowid
00386 0, // 3: category
00387 f->ptype(), // 4: type (from common header)
00388 f->flowid(), // 5: flowid (formerly class)
00389 f->src(), // 6: sender
00390 f->dst(), // 7: receiver
00391 f->parrivals(), // 8: arrivals this flow (pkts)
00392 f->barrivals(), // 9: arrivals this flow (bytes)
00393 f->epdrops(), // 10: early drops this flow (pkts)
00394 f->ebdrops(), // 11: early drops this flow (bytes)
00395 parrivals(), // 12: all arrivals (pkts)
00396 barrivals(), // 13: all arrivals (bytes)
00397 epdrops(), // 14: total early drops (pkts)
00398 ebdrops(), // 15: total early drops (bytes)
00399 pdrops(), // 16: total drops (pkts)
00400 bdrops(), // 17: total drops (bytes)
00401 f->pdrops(), // 18: drops this flow (pkts) [includes edrops]
00402 f->bdrops() // 19: drops this flow (bytes) [includes edrops]
00403 );
00404 };
|
Here is the call graph for this function:

|
|
Definition at line 208 of file flowmon.h. References classifier_, and Classifier::find(). Referenced by RedPDQueue::enque().
00208 {
00209 return (Flow *)classifier_->find(p);
00210 }
|
Here is the call graph for this function:

|
|
Definition at line 345 of file flowmon.cc. References classifier_, Classifier::maxslot(), Classifier::slot(), and wrk_. Referenced by command().
00346 {
00347 register const char* z;
00348 register int i, j = classifier_->maxslot();
00349 Flow* f;
00350 register char* p = wrk_;
00351 register char* q;
00352 q = p + sizeof(wrk_) - 2;
00353 *p = '\0';
00354
00355 for (i = 0; i <= j; i++) {
00356 if ((f = (Flow*)classifier_->slot(i)) != NULL) {
00357
00358 z = f->name();
00359 while (*z && p < q) {
00360 *p++ = *z++;
00361 }
00362 *p++ = ' ';
00363 }
00364 if (p >= q) {
00365 fprintf(stderr, "FlowMon:: flow list exceeded working buffer\n");
00366 fprintf(stderr, "\t recompile ns with larger FlowMon::wrk_[] array\n");
00367 exit (1);
00368 }
00369 }
00370 if (p != wrk_)
00371 *--p = '\0';
00372 return (wrk_);
00373 }
|
Here is the call graph for this function:

|
|
Reimplemented from QueueMonitor. Definition at line 266 of file flowmon.cc. References classifier_, enable_in_, Classifier::find(), QueueMonitor::in(), and Flow::setfields().
00267 {
00268 Flow* desc;
00269
00270 EDQueueMonitor::in(p);
00271 if (!enable_in_)
00272 return;
00273 if ((desc = ((Flow *)classifier_->find(p))) != NULL) {
00274 desc->setfields(p);
00275 desc->in(p);
00276 }
00277 }
|
Here is the call graph for this function:

|
|
Definition at line 324 of file queue-monitor.cc. References hdr_tcp::access(), hdr_cmn::access(), QueueMonitor::binsPerSec_, hdr_tcp::last_rtt(), QueueMonitor::maxRTT_, QueueMonitor::numRTTs_, packet_t, PT_FTP, PT_HTTP, PT_TCP, PT_TELNET, hdr_cmn::ptype(), and QueueMonitor::RTTbins_. Referenced by QueueMonitor::out().
00324 {
00325 int i, j, topBin, rttInMs, MsPerBin;
00326 hdr_cmn* hdr = hdr_cmn::access(pkt);
00327 packet_t t = hdr->ptype();
00328 if (t == PT_TCP || t == PT_HTTP || t == PT_FTP || t == PT_TELNET) {
00329 hdr_tcp *tcph = hdr_tcp::access(pkt);
00330 rttInMs = tcph->last_rtt();
00331 if (rttInMs < 0) rttInMs = 0;
00332 topBin = maxRTT_ * binsPerSec_;
00333 if (numRTTs_ == 0) {
00334 RTTbins_ = (int *)malloc(sizeof(int)*topBin);
00335 for (i = 0; i < topBin; i++) {
00336 RTTbins_[i] = 0;
00337 }
00338 }
00339 MsPerBin = int(1000/binsPerSec_);
00340 j = (int)(rttInMs/MsPerBin);
00341 if (j < 0) j = 0;
00342 if (j >= topBin) j = topBin - 1;
00343 ++ RTTbins_[j];
00344 ++ numRTTs_;
00345 }
00346 }
|
Here is the call graph for this function:

|
|
Definition at line 349 of file queue-monitor.cc. References hdr_tcp::access(), hdr_cmn::access(), QueueMonitor::maxSeqno_, QueueMonitor::numSeqnos_, packet_t, PT_FTP, PT_HTTP, PT_TCP, PT_TELNET, hdr_cmn::ptype(), hdr_tcp::seqno(), QueueMonitor::SeqnoBins_, and QueueMonitor::SeqnoBinSize_. Referenced by QueueMonitor::out().
00349 {
00350 int i, j, topBin, seqno;
00351 hdr_cmn* hdr = hdr_cmn::access(pkt);
00352 packet_t t = hdr->ptype();
00353 if (t == PT_TCP || t == PT_HTTP || t == PT_FTP || t == PT_TELNET) {
00354 hdr_tcp *tcph = hdr_tcp::access(pkt);
00355 seqno = tcph->seqno();
00356 if (seqno < 0) seqno = 0;
00357 topBin = int(maxSeqno_ / SeqnoBinSize_);
00358 if (numSeqnos_ == 0) {
00359 SeqnoBins_ = (int *)malloc(sizeof(int)*topBin);
00360 for (i = 0; i < topBin; i++) {
00361 SeqnoBins_[i] = 0;
00362 }
00363 }
00364 j = (int)(seqno/SeqnoBinSize_);
00365 if (j < 0) j = 0;
00366 if (j >= topBin) j = topBin - 1;
00367 ++ SeqnoBins_[j];
00368 ++ numSeqnos_;
00369 }
00370 }
|
Here is the call graph for this function:

|
|
Definition at line 267 of file queue-monitor.h. References EDQueueMonitor::mon_ebdrops_. Referenced by PushbackQueue::timeout().
00267 { return (mon_ebdrops_); }
|
|
|
Reimplemented from EDQueueMonitor. Definition at line 320 of file flowmon.cc. References classifier_, enable_mon_edrop_, Classifier::find(), EDQueueMonitor::mon_edrop(), and Flow::setfields(). Referenced by RedPDQueue::enque().
00321 {
00322 Flow* desc;
00323 EDQueueMonitor::mon_edrop(p);
00324 if (!enable_mon_edrop_)
00325 return;
00326 if ((desc = ((Flow*)classifier_->find(p))) != NULL) {
00327 desc->setfields(p);
00328 desc->mon_edrop(p);
00329 }
00330 }
|
Here is the call graph for this function:

|
|
Definition at line 266 of file queue-monitor.h. References EDQueueMonitor::mon_epdrops_.
00266 { return (mon_epdrops_); }
|
|
|
Reimplemented from QueueMonitor. Definition at line 280 of file flowmon.cc. References classifier_, enable_out_, Classifier::find(), QueueMonitor::out(), and Flow::setfields().
00281 {
00282 Flow* desc;
00283 EDQueueMonitor::out(p);
00284 if (!enable_out_)
00285 return;
00286 if ((desc = ((Flow*)classifier_->find(p))) != NULL) {
00287 desc->setfields(p);
00288 desc->out(p);
00289 }
00290 }
|
Here is the call graph for this function:

|
|
Definition at line 100 of file queue-monitor.h. References QueueMonitor::parrivals_. Referenced by fformat(), and Tagger::fformat().
00100 { return (parrivals_); }
|
|
|
Definition at line 102 of file queue-monitor.h. References QueueMonitor::pdepartures_.
00102 { return (pdepartures_); }
|
|
|
Definition at line 105 of file queue-monitor.h. References QueueMonitor::pdrops_. Referenced by fformat(), and Tagger::fformat().
00105 { return (pdrops_); }
|
|
|
Definition at line 93 of file queue-monitor.h. References QueueMonitor::pkts_. Referenced by CBQClass::demand(), and CBQueue::toplevel_departure().
00093 { return (pkts_); }
|
|
|
Definition at line 106 of file queue-monitor.h. References QueueMonitor::pmarks_. Referenced by Tagger::fformat().
00106 { return (pmarks_); }
|
|
|
Definition at line 150 of file queue-monitor.cc. References QueueMonitor::binsPerSec_, QueueMonitor::channel1_, Scheduler::clock(), Scheduler::instance(), QueueMonitor::maxRTT_, QueueMonitor::numRTTs_, and QueueMonitor::RTTbins_. Referenced by QueueMonitor::command().
00150 {
00151 int i, n, topBin, MsPerBin;
00152 char wrk[500];
00153
00154 topBin = maxRTT_ * binsPerSec_;
00155 MsPerBin = int(1000/binsPerSec_);
00156 double now = Scheduler::instance().clock();
00157 sprintf(wrk, "Distribution of RTTs, %d ms bins, time %4.2f\n", MsPerBin, now);
00158 n = strlen(wrk); wrk[n] = 0;
00159 (void)Tcl_Write(channel1_, wrk, n);
00160 for (i = 0; i < topBin; i++) {
00161 if (RTTbins_[i] > 0) {
00162 sprintf(wrk, "%d to %d ms: frac %5.3f num %d time %4.2f\n",
00163 i*MsPerBin, (i+1)*MsPerBin,
00164 (double)RTTbins_[i]/numRTTs_,
00165 RTTbins_[i], now);
00166 n = strlen(wrk); wrk[n] = 0;
00167 (void)Tcl_Write(channel1_, wrk, n);
00168 }
00169 }
00170 i = topBin - 1;
00171 if (RTTbins_[i] > 0) {
00172 sprintf(wrk, "The last bin might also contain RTTs >= %d ms.\n",
00173 (i+1)*MsPerBin);
00174 n = strlen(wrk); wrk[n] = 0;
00175 (void)Tcl_Write(channel1_, wrk, n);
00176 }
00177 }
|
Here is the call graph for this function:

|
|
Definition at line 180 of file queue-monitor.cc. References QueueMonitor::channel1_, Scheduler::clock(), Scheduler::instance(), QueueMonitor::maxSeqno_, QueueMonitor::numSeqnos_, QueueMonitor::SeqnoBins_, and QueueMonitor::SeqnoBinSize_. Referenced by QueueMonitor::command().
00180 {
00181 int i, n, topBin;
00182 char wrk[500];
00183
00184 topBin = int(maxSeqno_ / SeqnoBinSize_);
00185 double now = Scheduler::instance().clock();
00186 sprintf(wrk, "Distribution of Seqnos, %d seqnos per bin, time %4.2f\n",
00187 SeqnoBinSize_, now);
00188 n = strlen(wrk); wrk[n] = 0;
00189 (void)Tcl_Write(channel1_, wrk, n);
00190 for (i = 0; i < topBin; i++) {
00191 if (SeqnoBins_[i] > 0) {
00192 sprintf(wrk, "%d to %d seqnos: frac %5.3f num %d time %4.2f\n",
00193 i*SeqnoBinSize_, (i+1)*SeqnoBinSize_ - 1,
00194 (double)SeqnoBins_[i]/numSeqnos_,
00195 SeqnoBins_[i], now);
00196 n = strlen(wrk); wrk[n] = 0;
00197 (void)Tcl_Write(channel1_, wrk, n);
00198 }
00199 }
00200 i = topBin - 1;
00201 if (SeqnoBins_[i] > 0) {
00202 sprintf(wrk, "The last bin might also contain Seqnos >= %d. \n",
00203 (i+1)*SeqnoBinSize_);
00204 n = strlen(wrk); wrk[n] = 0;
00205 (void)Tcl_Write(channel1_, wrk, n);
00206 }
00207 }
|
Here is the call graph for this function:

|
|
Definition at line 210 of file queue-monitor.cc. References QueueMonitor::channel_, Scheduler::clock(), QueueMonitor::dstId_, Scheduler::instance(), QueueMonitor::pkts_, QueueMonitor::size_, QueueMonitor::srcId_, and TIME_FORMAT. Referenced by QueueMonitor::drop(), QueueMonitor::in(), and QueueMonitor::out().
00210 {
00211 char wrk[500];
00212 int n;
00213 double now = Scheduler::instance().clock();
00214 sprintf(wrk, "q -t "TIME_FORMAT" -s %d -d %d -l %d -p %d", now, srcId_, dstId_, size_, pkts_);
00215 n = strlen(wrk);
00216 wrk[n] = '\n';
00217 wrk[n+1] = 0;
00218 (void)Tcl_Write(channel_, wrk, n+1);
00219 wrk[n] = 0;
00220 }
|
Here is the call graph for this function:

|
|
Definition at line 204 of file flowmon.h. References classifier_.
00204 {
00205 classifier_ = classifier;
00206 }
|
|
|
Definition at line 92 of file queue-monitor.h. References QueueMonitor::size_.
00092 { return (size_); }
|
|
|
Definition at line 130 of file queue-monitor.h. Referenced by QueueMonitor::barrivals(), QueueMonitor::in(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 132 of file queue-monitor.h. Referenced by QueueMonitor::bdepartures(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 136 of file queue-monitor.h. Referenced by QueueMonitor::bdrops(), QueueMonitor::drop(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 141 of file queue-monitor.h. Referenced by QueueMonitor::keepRTTstats(), QueueMonitor::printRTTs(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 117 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::drop(), QueueMonitor::in(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 153 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::printRTTs(), QueueMonitor::printSeqnos(), and QueueMonitor::QueueMonitor(). |
|
|
Reimplemented from QueueMonitor. Definition at line 219 of file flowmon.h. Referenced by command(), and dumpflows(). |
|
|
Definition at line 218 of file flowmon.h. Referenced by command(), drop(), dumpflows(), edrop(), find(), flow_list(), in(), mon_edrop(), out(), and setClassifier(). |
|
|
Definition at line 119 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::in(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 151 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::printStats(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 269 of file queue-monitor.h. Referenced by EDQueueMonitor::ebdrops(), EDQueueMonitor::EDQueueMonitor(), and EDQueueMonitor::edrop(). |
|
|
|
|
|
|
|
|
|
|
|
Definition at line 225 of file flowmon.h. Referenced by mon_edrop(). |
|
|
|
|
|
Definition at line 270 of file queue-monitor.h. Referenced by EDQueueMonitor::EDQueueMonitor(), EDQueueMonitor::edrop(), and EDQueueMonitor::epdrops(). |
|
|
Definition at line 160 of file queue-monitor.h. Referenced by RedPDQueue::command(), QueueMonitor::in(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 162 of file queue-monitor.h. Referenced by RedPDQueue::command(), RedPDQueue::enque(), QueueMonitor::estimateRate(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 161 of file queue-monitor.h. Referenced by QueueMonitor::estimateRate(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 138 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 144 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 139 of file queue-monitor.h. Referenced by QueueMonitor::keepRTTstats(), QueueMonitor::printRTTs(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 145 of file queue-monitor.h. Referenced by QueueMonitor::keepSeqnoStats(), QueueMonitor::printSeqnos(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 271 of file queue-monitor.h. Referenced by EDQueueMonitor::EDQueueMonitor(), EDQueueMonitor::mon_ebdrops(), and EDQueueMonitor::mon_edrop(). |
|
|
Definition at line 272 of file queue-monitor.h. Referenced by EDQueueMonitor::EDQueueMonitor(), EDQueueMonitor::mon_edrop(), and EDQueueMonitor::mon_epdrops(). |
|
|
Definition at line 140 of file queue-monitor.h. Referenced by QueueMonitor::keepRTTstats(), QueueMonitor::printRTTs(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 146 of file queue-monitor.h. Referenced by QueueMonitor::keepSeqnoStats(), QueueMonitor::printSeqnos(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 129 of file queue-monitor.h. Referenced by QueueMonitor::in(), QueueMonitor::parrivals(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 131 of file queue-monitor.h. Referenced by QueueMonitor::out(), QueueMonitor::pdepartures(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 134 of file queue-monitor.h. Referenced by QueueMonitor::drop(), QueueMonitor::pdrops(), and QueueMonitor::QueueMonitor(). |
|
|
Reimplemented in QueueMonitorCompat. Definition at line 121 of file queue-monitor.h. Referenced by QueueMonitor::drop(), QueueMonitor::in(), QueueMonitor::out(), QueueMonitor::pkts(), QueueMonitor::printStats(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 118 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::drop(), QueueMonitor::in(), QueueMonitor::out(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 135 of file queue-monitor.h. Referenced by QueueMonitor::out(), QueueMonitor::pmarks(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 163 of file queue-monitor.h. Referenced by QueueMonitor::estimateRate(), QueueMonitor::in(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 142 of file queue-monitor.h. Referenced by QueueMonitor::keepRTTstats(), and QueueMonitor::printRTTs(). |
|
|
Definition at line 148 of file queue-monitor.h. Referenced by QueueMonitor::keepSeqnoStats(), and QueueMonitor::printSeqnos(). |
|
|
Definition at line 147 of file queue-monitor.h. Referenced by QueueMonitor::keepSeqnoStats(), QueueMonitor::printSeqnos(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 120 of file queue-monitor.h. Referenced by QueueMonitor::drop(), QueueMonitor::in(), QueueMonitor::out(), QueueMonitor::printStats(), QueueMonitor::QueueMonitor(), and QueueMonitor::size(). |
|
|
Definition at line 150 of file queue-monitor.h. Referenced by QueueMonitor::command(), QueueMonitor::printStats(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 164 of file queue-monitor.h. Referenced by QueueMonitor::QueueMonitor(). |
|
|
Definition at line 167 of file queue-monitor.h. Referenced by QueueMonitor::estimateRate(), and QueueMonitor::QueueMonitor(). |
|
|
Definition at line 228 of file flowmon.h. Referenced by dumpflow(), fformat(), and flow_list(). |
1.3.3