使用Packet Sniffer抓包和分析(z-stack协议)
以下内容仅是自己学习总结,可能会有错误,有发现问题的欢迎指正(图片可以自己放大,还是比较清晰的)。
1、协调器上电,其他设备均不上电,抓包如下:

通过观察可以发现,协调器建立网络成功后,会以15秒为周期告知自己的网络连接状态,
2、关闭协调器,路由器上电,抓包如下:

路由器会不断的发送Beacon request来请求网络信息。
3、为了抓完整的包,先将协调器上电,然后再将路由器上电,抓完整组网包如下:

从头开始看,
1)首先协调器建立好网络,并且以15S的间隔广播自己的网络连接状态NWK Link Status
2)路由器连续发了3个Beacon request,协调器分别回应了3次,
3)然后路由器将自己的MAC地址信息加入,发送了Association request,即请求连接,协调器回复一个ACK信号
4)路由器将自己的MAC地址信息加入(0x00124B000AF859CD),发送了Data request,协调器再回复一个ACK信号
5)协调器根据Data request,给路由分配一个short addr(0x4D13)发送给路由器(0x0000)。路由器收到后给予一个ACK回应
6)接着路由器和协调器分别广播一个APS CLUSTER ID = 0x0013的数据信息
7)组网已经全部完成,这时候路由器和协调器分别会以15秒的间隔不断的广播自己的网路状态,
8) 此时,用户可以发送自己的数据,我这里发送数据是截图的最后一帧(上面截图没有截完全,下面是上面最后一帧截图的补充),可以观看,MAC payload即MAC层接收到的数据,
它左右的信息是物理层PHY头部解析后的表现形式,MAC payload又解析成了NWK头部和NWK payload(MAC payload黄色区域右边),同样NWK payload又分解成了
APS头部和APS payload(NWK payload黄色区域右边),观察这些数据,发现不正是我们在用户程序里面自己定义的端点号,簇ID,和数据内容吗,这些数据我们将在自己的程序中解析并且处理
我这里的端点号是0x0B,簇ID是0x0002,prifile ID 是0x0F05,数据内容是EA EB 4D 13 D9 5B F8 0A 00 4B 12 00(EA EB是头部,4D 13是路由器的短地址,D9 5B F8 0A 00 4B 12 00是路由器的长地址;仅测试使用,所以数据格式叫简单,没有数据长度,数据校验等信息)

9)以上过程就完成了路由器,协调器组网,并且数据传送的整个过程。
使用Packet Sniffer抓包和分析(z-stack协议)的更多相关文章
- 【转】蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法--不错
原文网址:http://blog.csdn.net/mzy202/article/details/32408223 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet ...
- 开源网络抓包与分析框架学习-Packetbeat篇
开源简介packbeat是一个开源的实时网络抓包与分析框架,内置了很多常见的协议捕获及解析,如HTTP.MySQL.Redis等.在实际使用中,通常和Elasticsearch以及kibana联合使用 ...
- 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 【原创,多图】
蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法 [原创,多图] spm=a1z10.1.w4004-5319414070.11.Zd ...
- [golang] 抓包注入分析
视频信息 Packet Capture, Analysis, and Injection with Goby John Leonat GopherCon 2016 https://www.youtub ...
- 【转】详解使用tcpdump、wireshark对Android应用程序进行抓包并分析
原文网址:http://blog.csdn.net/gebitan505/article/details/19044857 本文主要介绍如何使用tcpdump和wireshark对Android应用程 ...
- charles抓包并分析问题
1.抓包并分析 某列表页 传入的参数: -------------------------------------------------------------------------------- ...
- 蓝牙4.0BLE cc2540 usb-dongle的 SmartRF Packet Sniffer 抓取数据方法
蓝牙4.0的开发, 现在真热火的很, 但是很多朋友买了我们出品的cc2540 usb-dongle后, 都反馈说不知道如何抓包, 并且, 即使很多朋友到TI官网论坛去找信息,不少朋友依然是无功而返,实 ...
- golang gopacket网络抓包和分析
gopacket 是golang语言使用的网络数据抓取和分析的工具包. 本文简单介绍如何使用gopacket进行网络抓包. 下载gopacket # go get git@github.com:goo ...
- tcpdump抓包具体分析
Tcpdump抓包分析过程 一.TCP连接建立(三次握手) 过程 客户端A,服务器B,初始序号seq,确认号ack 初始状态:B处于监听状态,A处于打开状态 A -> B : seq = x ...
随机推荐
- [UML]UML系列——时序图(顺序图)sequence diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- vmware workstation安装 Mosrosoft Runtime DLL安装程序未能完成安装
不要点确定.开始菜单运行输入'%temp%',在弹出的窗体中找到一个文件名中含'{132E3257-14F1-411A-BC6C-0CA32D3A9BC6}~setup'(不一定一样,反正就是第一行的 ...
- 第一次做socket的一些心得
理论什么的bilibala的就是自己百度吧 推荐一篇不错的关于socket的文章 http://www.cnblogs.com/sunway/archive/2010/01/29/1659074.ht ...
- AD域的安装(在Windows Server 2003中安装Active Directory)
在Active Directory中提供了一组服务器作为身份验证服务器或登录服务器,这类服务器被称作域控制器(Domain Controller,简称DC).建立一个AD域的过程实际就是在一台运行Wi ...
- 一些js
//fixed块随滚动条滚动 window.onscroll=function(){ var scroll_left = $(window).scrollLeft(); $('#table_fixed ...
- jquery easyui tree动态加载子节点
1.前端tree绑定时,使用onBeforeExpand事件:当节点展开时触发加载子节点,自动会向服务端发送请求:url为绑定url,参数为当前节点id this.tree = { method: ' ...
- 《PHP数组函数》笔记
① in_array() 检查数组中是否存在某个值;有两个参数,第一个参数是要查找的值,第二个参数是数组名,返回值为布尔,找到则ture否则false; ② array_search 在数组中搜索给定 ...
- Mac Vim + ctags 实现多目录跳转
set tags=tags; set autochdir :wq保存. 在源码根目录中输入ctags -R命令.后重启vim,打开src文件,就能使用Ctrl+] 或 g Ctrl+] 来实现跳转了. ...
- tp框架的增删改查
首先,我们来看一下tp框架里面的查询方法: 查询有很多种,代码如下: <?php namespace Admin\Controller; use Think\Controller; class ...
- Tomcat7.0+的JNDI问题
上次搭建spring+springmvc+mybatis框架时用的第三方连接池jar包,但是部署到tomcat中后访问没有问题,但是启动时报了个JNDI的错,我没用JNDI你给我报什么,fuck!把错 ...