我正在运行一个存在瓶颈队列的脚本(Queue/LTEQueue/DLAirQueue,它有两个指向DropTail队列的对象指针)。使用此队列(通过printf检查,let,drop packet=8000)文件时显示丢弃的数据包,但不包含在跟踪文件 (.tr)中(没有“d”)。
1. $ns simplex-link $eNB $UE($i) 10Mb 2ms DropTail
2. $ns simplex-link $eNB $UE($i) 10Mb 2ms LTEQueue/DLAirQueue
如果使用 1,则 [drop_->recv(p);] 有效;数据包像往常一样被丢弃,也显示在跟踪文件中。但是,如果使用 2,则 [Packet::free(p);] 有效;没有丢弃以及在跟踪文件中。
任何人都可以在这个问题上帮助那些在 NS 2.35 中使用 LTE 模型的人吗?
/common/connector.cc
void Connector::drop(Packet* p)
{
if (drop_ != 0)
drop_->recv(p);
else
Packet::free(p);
}