主节点的邻居表的大小为24,意味着主节点最多只可以有24个子节点(enddevice或router)。
在主节点中的JZA_vStackEvent事件中,在网络成功启动时可以设置这样一个参数:
JZS_vEnableEDAddrReuse(1800);
括号里德参数单位是s,表示的是,如果1800s内子节点还没有跟主节点进行数据通讯,则主节点会认为子节点死掉,接着就会触发JZS_EVENT_INACTIVE_ED_DELETED事件,将子节点从自己的邻居表删除,因此,当子节点成功入网后,如果设置了JZS_vEnableEDAddrReuse(1800),底层代码中最好在要最多每隔1800s就要跟主节点进行数据通讯,否则,主节点会将该节点的网络信息从邻居表中删除,这样,主节点发送出的数据,子节点就收不到了。
但是在这种情况下,如果,子节点默认的发送目标地址是其父节点,发送出来的数据,父节点还是能收到了。这样,子节点能找到父节点,但是父节点找不到子节点,唯一的方法是将子节点的网络信息擦除再重新入网。
下面的代码描述的是如何读邻居表:
PUBLIC void vReadNeighbourTable(uint8 notify_flag)
{
    int i;
    vPrintf("\n-- network table --\n");
    //Neighbor table
    for (i = 0; i < gsNIB.nwkNeighborTableSize; i++)
    {
        if(gsNIB.nwkNeighborTable[i].u16Addr==0xffff)
            continue;
        vPrintf("Neighbor %d: addr = %d, mac:%x-%x, Device Type=%d, LQI = %d, Channel = %d\n",
            i,
            gsNIB.nwkNeighborTable[i].u16Addr,
            gsNIB.nwkNeighborTable[i].sExtAddr.u32H,
            gsNIB.nwkNeighborTable[i].sExtAddr.u32L,
            gsNIB.nwkNeighborTable[i].eDevicetype,
            gsNIB.nwkNeighborTable[i].u8LQI,
            gsNIB.nwkNeighborTable[i].u8Channel
            );
        if(notify_flag){}
    }
转自;http://lihf198628.blog.163.com/blog/static/113814520108693939683/

转载于:https://www.cnblogs.com/qmlm8844/archive/2012/03/05/2379935.html

[转载]ZIGBEE:Coordinator中的邻居表(Neighbour Table)问题相关推荐

  1. 多边形扫描转换算法中的边表(Edge Table, ET)

    目录 文章目录 目录 边表(Edge Table, ET) 边表(Edge Table, ET) 在多边形的扫描转换算法中,我们首先需要建立一个全局的边表(ET),它包含多边形的所有边,并且这些边按照 ...

  2. ZigBee Neighbor Table 邻居表

    以下内容摘自ZigBee 2015 Pro文档<docs-05-3474-21-0csg-zigbee-specification> 3.6.1.5 Neighbor Tables The ...

  3. linux内核的邻居表,Linux内核报文收发-L3 - Section 3. IP协议、邻居子系统主要是接收、转发和发送三部分...

    版本说明 Linux版本: 3.10.103 网卡驱动: ixgbe 网络协议注册 inet_init主要是注册各种协议 注册TCP协议proto_register(&tcp_prot, 1) ...

  4. Linux内核分析 - 网络[九]:邻居表

    内核版本:2.6.34 这部分的重点是三个核心的数据结构-邻居表.邻居缓存.代理邻居表,以及NUD状态转移图. 总的来说,要成功添加一条邻居表项,需要满足两个条件:1. 本机使用该表项:2. 对方主机 ...

  5. 邻居表项的app_solicit数量

    app_solicit控制上层应用发送邻居地址探测报文的数量,对于arp协议,内核默认的app_solicit为零,在arp邻居表arp_tbl中没有对NEIGH_VAR_APP_PROBES索引所对 ...

  6. 邻居表项的ucast_solicit数量

    ucast_solicit控制使用单播发送邻居地址探测报文的次数,对于arp协议,内核默认的ucast_solicit为3. 通过PROC文件app_solicit可查看和修改其值,如下,修改为1. ...

  7. 邻居表项的mcast_solicit数量

    mcast_solicit和mcast_resolicit控制使用多播发送邻居地址探测报文的次数,对于arp协议,内核默认的mcast_solicit为3. 通过PROC文件mcast_solicit ...

  8. 邻居表项的delay_probe_time时长

    delay_probe_time控制首次发送邻居请求报文的等待时长,对于arp协议,内核默认的delay_probe_time时长为5秒钟. struct neigh_table arp_tbl = ...

  9. 邻居表项的retrans_time时长

    retrans_time控制在发送过邻居地址探测报文之后,经过多长时间检测邻居表项的变化,如果检测不成功,进行重新探测,对于arp协议,内核默认的retrans_time为1秒钟. 通过PROC文件r ...

最新文章

  1. 控制语句 for while if switch
  2. mysql 分库分表 建表_【分库分表】sharding-jdbc实践—分库分表入门
  3. 你有没有想过: 为什么Java中String是不可变的?
  4. .Net应该学什么怎么学(三)
  5. Eclipse export导出war包报错(Module name is invalid.)
  6. PHP之常用设计模式
  7. 【QT】QT从零入门教程(十七):QT+OpenCV+VS 打包exe
  8. masm5安装教程_masm5 1、下载个masm5.0(简单 联合开发网 - pudn.com
  9. 从五方面探究智慧城市顶层设计失败原因
  10. 移动宽带覆盖小区查询 (广东范围)
  11. 一个简单的静态网页制作(html+css)
  12. 【读书笔记】《正面管教》——我们都不完美,但我们相处的很快乐
  13. 如何让你的手机屏幕固定横屏和竖屏
  14. iOS 高德地图(五)绘制点标记
  15. 计算机excel在三维饼图改字,从图形样式、文字数据到颜色更改,教你如何用Excel制作饼形图...
  16. 做月嫂这个行业好不好,月嫂一年能挣多少钱
  17. 第一章-算法在计算中的作用
  18. python解决洛谷小写字母转化为大写字母
  19. php 可视化编辑建站源码,CmsEasy可视化编辑商城系统 v7.3.1
  20. OSPF的工作过程和ACL匹配规则

热门文章

  1. python3 re模块_Python3 正则表达式 re 模块的使用 - 学习笔记
  2. kafka使用_kafka使用Interceptors实现消息端到端跟踪
  3. Windows下Maven的安装与配置
  4. 使用Subversion进行版本控制 附录A
  5. acrgis api for javaScript需要对Dojo了解多少?
  6. 分类模型与排序模型在推荐系统中的异同分析
  7. [译][Tkinter 教程14] menu 菜单
  8. 南怀瑾《处事箴言》摘录
  9. git传代码到github
  10. Crontab命令--Linux