This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

beacon 的接收机制是如何的!!!???????????

Expert 1850 points

终端设备或者 路由设备 入网时 通过发送beacon request 然后接收beacon来选择网络。。。。

请问 A 设备 入网时 发送beacon request,终端设备D已经在网络中, 协调器C 和路由器 R 均响应了beacon, 

路由R 和终端设备D    能收到 协调器C 响应 A 的beacon 吗?????(即beacon 能否被第三方(无论路由或者终端)收到?)

  • 如果第三方路由设备在信号范围内,肯定可以收到,但是收到也不会处理,直接丢弃了。

    终端设备就不一定了,因为终端设备有可能处于休眠状态。

  • 可以收到,但是收到也不会处理,直接丢弃了 ????

    VV ,我在路由设备上面进行debug ,在ZDApp.c 的ZDO_beaconNotifyIndCB函数里面打断点。

    然后再让另外一个终端设备 不停的发beacon request,此时,抓包软件上可以看到 协调器和该路由 都响应了beacon。

    但是  路由设备 上设置的断点 没有停下来~~~~~ 而ZDO_beaconNotifyIndCB 函数貌似已经到了最底层,zstack哪里调用它也找不到 

    VV 你所谓的直接丢弃 是不是zstack底层未公开的代码已经做了丢弃判断的处理???

  • 而且 单从 beacon 的内容来看~~~~~

    这上面 除了PANID, 几乎没有可以用来 判断 是否滤除  的条件~~~~~~

    请问 是在MAC 层 滤除吗???根据什么滤除呢?