Application/Traffic/CBR_PP set PBM_ 2 #Default value;
The OTcl instvar bounded variable PBM_ (same name in C++ and in OTcl) specifies the number of back-to-back packets to be sent. For PBM_=1 we have a CBR source, for PBM_=2 we have a Packet Pair source (a source which sends two packets back-to-back), etc. The mean rate of the PP source is rate_, but the packets are sent in burst of PBM_ packets. Note that we also use the terminology Packet Pair source and Packet Pair burst for PBM_2. We compute the next_interval as:
double CBR_PP_Traffic::next_interval(int& size) { /*(PP_ - 1) is the number of packets in the current burst.*/ if (PP_ \>= (PBM_ - 1)){ interval_ = PBM_*(double)(size_ \<\< 3)/(double)rate_; PP_ = 0; } else { interval_ = 1e-100; //zero PP_ += 1 ; } ... }
The timeout method puts the NEW_BURST flag in the first packet of a burst. This is useful for the PLM protocol to identify the beginning of a PP burst.
void CBR_PP_Traffic::timeout() { ... if (PP_ == 0) agent_-\>sendmsg(size_, "NEW_BURST"); else agent_-\>sendmsg(size_); ... }
Tom Henderson 2011-11-05