首页 文章

如何在NS3中使用PointToPointHelper删除数据包

提问于
浏览
0

我试图在NS3实验中捕获数据包 .

我使用 PointToPointHelper 来使用pcap . 并且,它可以捕获正常的数据包 .

PointToPointHelper pointToPoint;
pointToPoint.EnablePcap ("Host", (hosts.Get(0))->GetDevice(1));

但是,它无法捕获我故意丢弃的数据包 .

我在RouteInput方法中删除了数据包 . 我只是简单地 return false 丢弃数据包 .

RouteInput(Ptr<Packet> p, Ipv4Header &header, Ptr<const NetDevice> idev, UnicastForwardCallback ucb, MulticastForwardCallback mcb, LocalDeliverCallback lcb, ErrorCallback ecb) {
...
return false;
}

我发现pcap没有捕获丢弃的数据包 .

虽然这个数据包是故意被交换机丢弃的,但它确实来到了交换机 . 所以,我想通过pcap捕获数据包 .

有没有办法可以捕获故意丢弃的数据包?

1 回答

  • 0

    如果不能使用pcap文件,NS3也会生成带有d操作的.tr文件,这意味着数据包被丢弃 .

相关问题