我在ns2中使用AODV路由协议进行邻居发现,但跟踪文件没有显示任何hello数据包。跟踪文件如下所示:
s 1.000000000 _0_ AGT --- 0 cbr 210 [0 0 0 0] ------- [0:0 1:0 32 0] [0] 0 0
r 1.000000000 _0_ RTR --- 0 cbr 210 [0 0 0 0] ------- [0:0 1:0 32 0] [0] 0 0
s 1.000000000 _0_ RTR --- 0 AODV 48 [0 0 0 0] ------- [0:255 -1:255 30 0] [0x2 1 1 [1 0] [0 4]] (REQUEST)
s 1.003750000 _0_ AGT --- 1 cbr 210 [0 0 0 0] ------- [0:0 1:0 32 0] [1] 0 0
r 1.003750000 _0_ RTR --- 1 cbr 210 [0 0 0 0] ------- [0:0 1:0 32 0] [1] 0 0
答案 0 :(得分:1)
默认情况下,hello数据包在AODV协议中处于禁用模式。
您可以通过执行以下操作来启用hello数据包,
评论或删除aodv.cc中的以下行(ns-all-in-one / ns2.xx / aodv)
#define AODV_LINK_LAYER_DETECTION
#define AODV_USE_LL_METRIC
在您的终端中执行make clean and make
。
重新执行你的tcl ..现在hello数据包将打印在你的跟踪文件中。
答案 1 :(得分:0)
爵士 我使用的是NS2.35版本,在该版本中,对于文件aodv.cc,默认情况下按行注释。
一次,模拟脚本无法在跟踪文件中看到hello msg