CN104468190B - 一种wifi数据抓包方法、装置及智能终端 - Google Patents

一种wifi数据抓包方法、装置及智能终端 Download PDF

Info

Publication number
CN104468190B
CN104468190B CN201410609863.9A CN201410609863A CN104468190B CN 104468190 B CN104468190 B CN 104468190B CN 201410609863 A CN201410609863 A CN 201410609863A CN 104468190 B CN104468190 B CN 104468190B
Authority
CN
China
Prior art keywords
data
file
wifi
wifi data
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410609863.9A
Other languages
English (en)
Other versions
CN104468190A (zh
Inventor
孙子智
郑斌
刘强
杨川庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Mobile Communications Technology Co Ltd
Original Assignee
Hisense Mobile Communications Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hisense Mobile Communications Technology Co Ltd filed Critical Hisense Mobile Communications Technology Co Ltd
Priority to CN201410609863.9A priority Critical patent/CN104468190B/zh
Publication of CN104468190A publication Critical patent/CN104468190A/zh
Application granted granted Critical
Publication of CN104468190B publication Critical patent/CN104468190B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种wifi数据抓包方法、装置及智能终端,主要内容包括:采集驱动层中传输的wifi数据,所述wifi数据包括接收的wifi数据和/或发送的wifi数据;将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;按照传输时序将缓存的MAC帧组成至少一个设定格式的文件。从而,将智能终端在特定网络环境中传输的wifi数据以设定格式的文件保存下来,以便于无论该智能终端是否处于之前的网络环境,都可以利用本发明所涉及的抓包方案进行准确完整的抓包操作,而不需要工作人员亲临现场借助路由器等设备重现之前的网络环境。同时,通过在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。

Description

一种wifi数据抓包方法、装置及智能终端
技术领域
本发明涉及通信技术领域,尤其涉及一种wifi数据抓包方法、装置及智能终端。
背景技术
现有的对智能终端网络传输数据进行分析的一种方法是利用抓包工具抓取截获数据包,并通过对该数据包的解析来确定网络传输中出现的问题。
但是,对于网络环境经常发生变化的智能终端而言,要获取其网络传输数据是有一定难度的。这是因为,智能终端的内核及应用日志并不能保存网络传输过程中的所有数据,若单纯依靠抓取智能终端的内核及应用日志的方式抓取数据包,是不能很准确的分析网络传输情况的。因此,只能通过工作人员前往该智能终端所使用过的网络环境中,利用现有的抓包工具进行网络传输数据的抓取。
但是,对于较为复杂的网络环境,或是较为偏远无法到达的网络环境,工作人员亲临现场进行数据包的采集是有一定难度的,因此,这种抓包检测方式是不可行的。
因此,鉴于网络环境的限制,亟需找到一种能够规避上述缺陷的方案。
发明内容
本发明实施例提供一种wifi数据抓包方法、装置及智能终端,用以解决现有技术中存在的为了实现抓包检测只能进行网络环境重现进而执行抓包操作的问题。
本发明实施例采用以下技术方案:
一种wifi数据抓包方法,所述方法包括:
采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和/或发送的wifi数据;
将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;
按照传输时序将缓存的所有MAC帧组成至少一个设定格式的文件。
本发明实施例提供了一种抓包方法,采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和发送的wifi数据;按照传输时序将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;将缓存的所有MAC帧组成至少一个设定格式的文件。从而,将智能终端在特定网络环境中传输的wifi数据都以抓包工具可以识别、解析的文件格式保存下来,以便于无论该智能终端是否处于之前的网络环境中,都可以利用本发明所涉及的技术方案提供的抓包方法进行准确完整的抓包操作,而不需要工作人员亲临现场(网络环境中)借助路由器等设备重现之前的网络环境。同时,本发明技术方案通过在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。
一种wifi数据抓包装置,所述装置包括:
采集单元,用于采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和/或发送的wifi数据;
缓存单元,用于将采集单元采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;
组包单元,用于按照传输时序将缓存单元缓存的所有MAC帧组成至少一个设定格式的文件。
本发明实施例提供了一种抓包装置,采集单元采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和发送的wifi数据;然后,缓存单元按照传输时序将采集单元采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;最后,组包单元将缓存单元缓存的所有MAC帧组成至少一个设定格式的文件。从而,该抓包装置将智能终端在特定网络环境中传输的wifi数据都以抓包工具可以识别的设定格式的文件格式保存下来,以便于无论该智能终端是否处于之前的网络环境中,都可以利用本发明所涉及的抓包装置进行准确完整的抓包操作,而不需要工作人员亲临现场(网络环境中)借助路由器等设备重现之前的网络环境。同时,通过本发明的抓包装置在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。
一种智能终端,包括所述的抓包装置。
本发明实施例提供了一种智能终端,包括一种抓包装置,该抓包装置采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和发送的wifi数据;然后,按照传输时序将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;最后,将缓存的所有MAC帧组成至少一个设定格式的文件。从而,将智能终端在特定网络环境中传输的wifi数据都以抓包工具可以识别的设定格式的文件保存下来,以便于无论该智能终端是否处于之前的网络环境中,都可以利用本发明智能终端所包含的抓包装置进行准确完整的抓包操作,而不需要工作人员亲临现场(网络环境中)借助路由器等设备重现之前的网络环境。同时,通过本发明智能终端包含的抓包装置在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种wifi数据抓包方法的流程示意图;
图2为wifi数据在智能终端内部的两个传输方向的传输路径;
图3为本发明实施例二提供的一种wifi数据抓包装置的结构示意图;
图4为本发明实施例二提供的另一种wifi数据抓包装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中,为了能够实现抓包过程中准确抓包,以及避免到网络环境中进行抓包操作,本发明实施例提供了一种wifi数据抓包方法,采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和发送的wifi数据;按照传输时序将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;将缓存的所有MAC帧组成至少一个设定格式的文件。从而,将智能终端在特定网络环境中传输的wifi数据都以抓包工具可以识别的设定格式的文件保存下来,以便于无论该智能终端是否处于之前的网络环境中,都可以利用本发明所涉及的抓包方案进行准确完整的抓包操作,而不需要工作人员亲临现场(网络环境中)借助路由器等设备重现之前的网络环境。同时,通过本发明的抓包方案在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。
下面以具体的实施例对本发明的技术方案进行详细的描述,本发明包括但并不限于以下实施例。
实施例一:
如图1所示,为本发明实施例一提供的一种wifi数据抓包方法的流程示意图,该方法应用于android***的智能终端中,主要包括以下步骤单元:
步骤11:采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和/或发送的wifi数据。
其中,采集时可按照传输时序顺序从采集接口进行采集,当同时有接收的wifi数据和发送的wifi数据时,由于时间上是一样的,因此,可以不分先后顺序依次采集。
在终端内部,具体到wifi数据传输的路径,主要由位于驱动层的wifi驱动进行数据的转发处理,如图2所示,包括两个传输方向的传输路径:
发送路径:在发送wifi数据时,传输路径为:应用层→协议层→驱动层→固件层,最后由固件层进行处理后通过射频天线将wifi数据发送出去。
接收路径:在接收wifi数据时,首先,固件层通过射频天线接收发送来的wifi数据,传输路径为:固件层→驱动层→协议层→应用层。
一般情况下,从驱动层采集到的wifi数据的数据帧类型包括但并不限于:控制帧、管理帧、数据帧等类型。具体地,在本步骤11中,由于驱动层的数据包是最接近空中数据包的,最能体现空中数据包的实际情况,而且,最容易将检测问题所需要的管理帧区分出来。因此,是从内核的驱动层采集wifi数据的,而本发明获取wifi数据的目的在于通过获取wifi数据,利用第三方软件精确定位wifi连接所出现的问题。因此,在本步骤11中,可以仅从驱动层采集本发明所需的管理帧进行处理。
优选地,可以分别从驱动层中的发送采集接口和接收采集接口采集wifi数据;
其中,所述发送采集接口可以为发送路径中驱动层的接口,用于从该接口获取发送的wifi数据;接收采集接口可以为接收路径中驱动层的接口,用于从该接口获取接收的wifi数据。
然而,对于传输路径中驱动层而言,可能不止一个接口可以采集wifi数据,不同***平台对应不同的接口结构和类型,因此,以高通平台为例,在采集wifi数据时,仅在发送路径以及接收路径分别选择一个用于获取wifi数据的接口即可,发送采集接口可以选择limHandle80211Frames接口,接收采集接口可以选择WDA_TxPacket接口。
在wifi数据的传输过程中,若途经发送路径,则位于驱动层的MAC协议会为该wifi数据添加相应的控制信息,例如:帧头、帧尾等用于控制传输目的地址的信息,并最终组成802.11MAC协议对应的MAC帧的格式发送至固件层进行处理(这一过程一般视为原始数据帧转变为802.11MAC协议对应的MAC帧的过程)。同理,在途经接收路径,则在传输正确无误的情况下,位于驱动层的MAC协议会为该wifi数据去掉相应的控制信息,形成内核中的协议层所识别的数据帧格式,并发送至协议层(这一过程一般视为802.11MAC协议对应的MAC帧转换为原始数据帧的过程)。鉴于上述情况,在发送采集接口或接收采集接口所采集的wifi数据的数据帧格式有可能为原始数据帧,也有可能为转换后的802.11MAC协议对应的MAC帧。
因此,为了能够便于对采集到的不同数据帧格式的wifi数据进行有针对的处理,在采集驱动层中传输的多个wifi数据之前,所述方法还包括:
分别检测所述发送采集接口和接收采集接口的类型。
优选地,本发明所涉及的检测方案可以具体包括:
第一步:分别获取发送采集接口和接收采集接口的wifi数据;
第二步:将获取到的wifi数据的数据帧格式分别与802.11MAC协议对应的数据帧格式进行比较,若匹配,则确定所述发送采集接口或接收采集接口的类型为802.11MAC协议对应的接口类型;否则,确定所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型,并根据确定的非802.11MAC协议对应的接口类型确定从该接口采集的wifi数据组成MAC帧所需的帧头。
步骤12:将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧。
具体地,假设t1时刻发现发送采集接口有发送的wifi数据1,则采集发送采集接口的wifi数据1,t2时刻发现接收采集接口有发接收的wifi数据2,则采集接收采集接口的wifi数据2,t3时刻发现仍为接收采集接口有接收的wifi数据3,则采集接收采集接口的wifi数据3,依次按照时间顺序,并将采集到的各个wifi数据按照传输时序缓存为802.11MAC协议对应的MAC帧。
优选地,在进行缓存的过程中,若采集到的wifi数据为非802.11MAC协议对应的数据帧,则根据802.11MAC协议对应的数据帧格式为该wifi数据添加帧头,组合成802.11MAC协议对应的MAC帧;按照传输时序将组合而成的MAC帧与采集到的MAC帧进行顺序缓存。
具体地,由于事先对发送采集接口和接收采集接口进行了类型检测,因此,在采集wifi数据之前,就已经了解将要从发送采集接口和接收采集接口采集到的wifi数据的数据帧格式,是否为该数据进行帧格式转换处理,以及为需要进行帧格式转换处理的wifi数据所要添加的帧头。若采集wifi数据的接口在检测时已经确定为802.11MAC协议对应的数据帧格式下的接口,那么,就不必对该采集接口处采集的wifi数据进行处理;否则,需要为该采集接口处采集的所有wifi数据调整数据帧格式,具体以下述实例进行描述:
现有的802.11MAC协议对应的数据帧格式为表1所示,包括Preamble、PLCP、MAC、User Data和CRC五个部分;
Preamble PLCP MAC User Data CRC
表1
其中,Preamble层为前导标识,用于接收设备(各种终端、服务器等发送、接收wifi数据的设备)识别802.11协议;PLCP层(即:物理层会聚协议)是映射ATM信元到物理媒体的规范,包含一些物理层的协议参数。MAC层处理的是帧数据,具体地MAC层的格式为表2所示,包括MAC头(MAC header)、帧体(Frame Body)和校验域(FCS)三个部分;
表2
其中,MAC头又可以具体包括:帧控制域(Frame Control)(又具体包含类型域和子类型域,代表数据帧的类型)、持续时间/标识(Duration/ID)、地址域(Address)(又具体包括:目的地址、源地址、接收端地址和发送端地址等)、序列控制域(Sequence Control)、服务质量控制(QoS Control);帧体包含的信息根据数据帧的内容、类型有所有不同,主要用于封装原始数据帧,长度为0-2312个字节;校验域包含32位循环冗余码。
而从发送采集接口或接收采集接口采集到的wifi数据若为原始数据帧,则一般该原始数据帧并不包含完整的地址域,并不能形成真正的MAC帧的格式。因此,需要通过为原始数据帧添加地址域(通过原始数据帧与MAC帧进行比对的方式确定)等字段的方式构成MAC帧,该添加过程可以在缓存之前进行,也可以在采集的时候直接添加,本发明并不对该添加操作的具体执行时序进行限定,两种方式均可。
需要说明的是,按照传输时序将组合而成的MAC帧与采集到的MAC帧进行顺序缓存,其中,这些MAC帧可以缓存在预设的结构体中,即数据存储空间的任一空闲资源中,避免直接进行Pcap文件组合而可能造成的误操作导致的数据丢失。
步骤13:按照传输时序将缓存的所有MAC帧组成至少一个Pcap文件。
具体地,计算缓存的每个MAC帧的帧长,并根据计算得到的帧长为每个MAC帧添加数据包头,组成数据包,进一步,将组成的数据包添加至包含文件头的至少一个设定格式的文件中,并保存。
其中,每个设定格式的文件包含的数据包按照传输时序排列,且所述至少一个设定格式的文件按照传输时序排列。
优选地,所述设定格式的文件为Pcap文件。
首先,简单介绍Pcap文件的文件格式。
Pcap文件的文件格式为表3所示,主要包括:文件头(Pcap Header)、数据包1的包头+数据包1的数据、数据包2的包头+数据包2的数据……数据包n的包头+数据包n的数据。
其中,对于Pcap文件而言,文件头都是配置固定值,一般由24个字节构成,具体包括:由4个字节构成的Magic,用来标识文件的开始;由2个字节构成的Major,为当前文件主要的版本号;由2个字节构成的Minor,为当前文件次要的版本号;由4个字节构成的ThisZone,为当地的标准时间,可以全取零;由4个字节构成的SigFigs,为时间戳的精度,可以全取零;由4个字节构成的SnapLen,表示最大的存储长度;由4个字节构成的LinkType,为链路类型,且这4个字节是最重要的。
而对于文件头后面的各个数据包,每个数据包的包头都是由16个字节构成的,具体包括:由4个字节构成的Timestamp,为时间戳高位,精确到秒;由4个字节构成的Timestamp,为时间戳低位,精确到微秒;由4个字节构成的Caplen,为当前数据区的长度,即采集到的wifi数据的数据帧长度;由4个字节构成的Len,为离线数据长度:网络中实际数据帧的长度,一般不大于Caplen,多数情况下和Caplen数值相等。
表3
由于在步骤12中已经将采集到的各个wifi数据保存为802.11MAC协议对应的MAC帧,在本步骤中,由于Pcap文件具有上述格式要求,而保存的各个MAC帧相当于Pcap文件中的数据包中的数据,因此,需要为每个MAC帧添加数据包的包头,构成一个个完整的数据包(数据包的包头+数据包的数据)。然而,对于每个数据包的包头而言,其是与待添加的该数据包的数据的长度(即保存的MAC帧的大小)有关系的,具体地,每个数据包的数据所占字节大小,决定了该数据包的包头的内容。因为,对于一个Pcap文件而言,其包含的各个数据包的包头中的配置基本上都是相同的,唯一不同的是表示wifi数据的数据帧长度的Caplen,该参数的值能够直观地反映该数据包的数据的长度。
当对保存的n个MAC帧进行组包时,可以先对各个MAC帧添加数据包的包头,再为以采集顺序排列的n个数据包添加一个文件头,组成一个Pcap文件;或是先为以采集顺序排列的n个MAC帧添加一个文件头,再分别为每个MAC帧添加数据包的包头,组成一个Pcap文件。上述两种方式均可,下面以先添加数据包的包头为例进行简要说明。
优选地,至少一个Pcap文件中,每个Pcap文件包含的数据包的数量相等或不等。
假设,本发明实施例中Pcap文件的文件头和数据包的部分包头配置如下:
文件头:
Magic:0xD4 0xC3 0xB2 0xA1
Major:0x02 0x00
Minor:0x04 0x00
ThisZone:0x00 0x00 0x00 0x00
SigFigs:0x00 0x00 0x00 0x00
SnapLen:0xFF 0xFF 0x00 0x00 //该处最大存储长度可更改
LinkType:0x69 0x00 0x00 0x00 //802.11 MAC帧(固定)
数据包的包头:
Timestamp:0x00 0x00 0x00 0x00 //此处设置为全0
Timestamp:0x00 0x00 0x00 0x00 //此处设置为全0
Caplen:未知 //MAC帧的长度,需要根据每个帧进行计算设置不同值
Len: 未知 //MAC帧的长度,需要根据每个帧进行计算设置不同值
其中,时间戳高位和时间戳低位均可以按照1、2、3……n的顺序进行编号,或者按照实际的时间进行配置。本发明并不对此进行具体限定,只要能体现数据包之间是按照传输时序进行排序的即可。
由此可知,对于一个完整的Pcap文件而言,其文件头已经确定,各个数据包的包头的部分参数也已经确定,数据包的数据即为保存的MAC帧的内容,因此,对于每个数据包而言,只需计算每个MAC帧的长度即可确定Caplen和Len的取值。进而完善Pcap文件的内容,组成一个完整的Pcap文件。
以两个MAC帧为例:
第一个MAC帧:0xD4 0x00 0x00 0x00 0x24 0xE2 0x71 0x46 0xD30x40 0x000x00 0x00 0x00(数据帧的长度为14个字节)
第二个MAC帧:0xD4 0x00 0x02 0x00 0x38 0x83 0x45 0x9B 0xA70x56 0x000x00 0x00 0x00(数据帧的长度为14个字节)
Pcap文件的文件头:0xD4 0xC3 0xB2 0xA1 0x02 0x00 0x04 0x00 0x000x000x00 0x00 0x00 0x00 0x00 0x00 0xFF 0xFF 0x00 0x00 0x69 0x00 0x00 0x00
针对第一个MAC帧的数据包1的包头:0x48 0x20 0x67 0x53 0x9C 0x1C0x00 0x000x0E 0x00 0x00 0x00 0x0E 0x00 0x00 0x00
针对第二个MAC帧的数据包2的包头:0x48 0x20 0x67 0x53 0x9C 0x1C0x00 0x000x0E 0x00 0x00 0x00 0x0E 0x00 0x00 0x00
由于两个MAC帧的数据帧的长度均为14字节,则在数据包的包头的第9~12字节位置处的值为0x0E 0x00 0x00 0x00,表示该数据包的数据的长度为14个字节,添加文件头和数据包的包头后,组成下述Pcap文件,如下表4所示,其中,每一行为16个字节,斜条纹区域代表该Pcap文件的文件头,方格区域代表数据包1的包头,后边无填充区域为数据包1的数据;网格区域为数据包2的包头,后边无填充区域为数据包2的数据。
表4
通过上述组包方案,首先将采集到的wifi数据保存为802.11协议对应的MAC帧,然后计算各个MAC帧的长度,为每个MAC帧添加数据包的包头,组成按采集顺序排列的多个数据包,最后,通过为该数据包组添加预设的Pcap文件的文件头,组成Pcap文件。而且,可根据采集到的数据包的数量按照传输时序依次形成多个Pcap文件,形成的多个Pcap文件中,每个Pcap文件包含的数据包的数量相等或者不等。从而,将智能终端在特定网络环境中传输的wifi数据都以抓包工具可以识别的设定格式的文件保存下来,以便于无论该智能终端是否处于之前的网络环境中,都可以利用本发明所涉及的抓包方案进行准确完整的抓包操作,而不需要工作人员亲临现场(网络环境中)借助路由器等设备重现之前的网络环境。同时,通过本发明的抓包方案在wifi驱动层中进行数据的采集,能够实现wifi数据的完整采集。
基于与上述wifi数据抓包方法属于同一发明构思,本发明实施例二还提供了一种wifi数据抓包装置。
实施例二:
如图3所示,为本发明实施例二提供的一种wifi数据抓包装置的结构示意图,该抓包装置可以集成在智能终端的内核中,也可以作为一种独立装置结构外挂在智能终端上,该抓包装置的主要功能单元包括:
采集单元21,用于采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和/或发送的wifi数据。
缓存单元22,用于将采集单元采集到的wifi数据分别缓存为802.11MAC协议对应的MAC帧。
组包单元23,用于按照传输时序将缓存单元缓存的所有MAC帧组成至少一个设定格式的文件。
优选地,该设定格式的文件为可以被任一的抓包工具识别、解析的文件,例如:Pcap文件。
如图4所示,所述装置还包括:
检测单元24,用于在采集驱动层中传输的wifi数据之前,分别检测所述发送采集接口和接收采集接口的类型。
优选地,所述检测单元24,具体用于:分别获取发送采集接口和接收采集接口的wifi数据;将获取到的wifi数据的数据帧格式分别与802.11MAC协议对应的数据帧格式进行比较,若匹配,则确定所述发送采集接口或接收采集接口的类型为802.11MAC协议对应的接口类型;否则,确定所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型,并确定该发送采集接口或接收采集接口的wifi数据组成MAC帧所需的帧头。
优选地,缓存单元22,具体用于:在检测单元检测所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型时,根据802.11MAC协议对应的数据帧格式为该wifi数据添加确定的所述帧头,组合成802.11MAC协议对应的MAC帧;将组成的MAC帧与采集到的MAC帧按照传输时序缓存。
优选地,所述组包单元23,具体用于:
计算缓存的每个MAC帧的帧长,并根据计算得到的帧长为每个MAC帧添加数据包头,组成数据包;
将组成的数据包添加至包含文件头的至少一个设定格式的文件中,并保存;
其中,每个设定格式的文件包含的数据包按照传输时序排列,且所述至少一个设定格式的文件按照传输时序排列。
优选地,所述至少一个设定格式的文件中,每个设定格式的文件包含的数据包的数量相等或不等。
优选地,所述采集单元分别从驱动层中的发送采集接口和接收采集接口采集wifi数据;所述发送采集接口为limHandle80211Frames接口,所述接收采集接口为WDA_TxPacket接口。
实施例三:
本发明实施例还提供了一种智能终端,包括上述实施例所涉及的wifi数据的抓包装置,此外,该智能终端还包括:内核、驱动模块、射频模块以及显示屏等结构单元。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种wifi数据抓包方法,其特征在于,所述方法包括:
采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和/或发送的wifi数据;
将采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;
按照传输时序将缓存的所有MAC帧组成至少一个设定格式的文件;
其中,所述wifi数据分别从驱动层中的发送采集接口和接收采集接口采集;
在所述 采集驱动层中传输的wifi数据之前,还包括:
分别获取发送采集接口和接收采集接口的wifi数据;
将获取到的wifi数据的数据帧格式分别与802.11MAC协议对应的数据帧格式进行比较,若匹配,则确定所述发送采集接口或接收采集接口的类型为802.11MAC协议对应的接口类型;否则,确定所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型,并确定该发送采集接口或接收采集接口的wifi数据组成MAC帧所需的帧头。
2.如权利要求1所述的方法,其特征在于,所述设定格式的文件为Pcap文件。
3.如权利要求1所述的方法,其特征在于,所述将采集到的wifi数据保存为802.11MAC协议对应的MAC帧,具体包括:
在确定所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型时,根据802.11MAC协议对应的数据帧格式为该发送采集接口或接收采集接口采集到的wifi数据添加确定的所述帧头,组成802.11MAC协议对应的MAC帧;
将组成的MAC帧与采集到的MAC帧缓存。
4.如权利要求1所述的方法,其特征在于,所述按照传输时序将缓存的所有MAC帧组成至少一个设定格式的文件,具体包括:
计算缓存的每个MAC帧的帧长,并根据计算得到的帧长为每个MAC帧添加数据包头,组成数据包;
将组成的数据包添加至包含文件头的至少一个设定格式的文件,并保存;
其中,所述设定格式的文件包含的数据包按照传输时序排列,且所述至少一个设定格式的文件按照传输时序排列。
5.如权利要求4所述的方法,其特征在于,所述至少一个设定格式的文件中,每个设定格式的文件包含的数据包的数量相等或不等。
6.一种wifi数据抓包装置,其特征在于,所述装置包括:
采集单元,用于采集驱动层中传输的wifi数据,其中,所述wifi数据包括接收的wifi数据和发送的wifi数据;
缓存单元,用于将采集单元采集到的wifi数据缓存为802.11MAC协议对应的MAC帧;
组包单元,用于按照传输时序将缓存单元缓存的所有MAC帧组成至少一个设定格式的文件;
其中,所述采集单元分别从驱动层中的发送采集接口和接收采集接口采集wifi数据;
所述装置还包括:
检测单元,用于分别获取发送采集接口和接收采集接口的wifi数据,将获取到的wifi数据的数据帧格式分别与802.11MAC协议对应的数据帧格式进行比较,若匹配,则确定所述发送采集接口或接收采集接口的类型为802.11MAC协议对应的接口类型;否则,确定所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型,并确定该发送采集接口或接收采集接口的wifi数据组成MAC帧所需的帧头。
7.如权利要求6所述的装置,其特征在于,所述设定格式的文件为Pcap文件。
8.如权利要求6所述的装置,其特征在于,缓存单元,具体用于:
在检测单元检测所述发送采集接口或接收采集接口的类型为非802.11MAC协议对应的接口类型时,根据802.11MAC协议对应的数据帧格式为该wifi数据添加确定的所述帧头,组合成802.11MAC协议对应的MAC帧;
将组成的MAC帧与采集到的MAC帧缓存。
9.如权利要求6所述的装置,其特征在于,所述组包单元,具体用于:
计算缓存的每个MAC帧的帧长,并根据计算得到的帧长为每个MAC帧添加数据包头,组成数据包;
将组成的数据包添加至包含文件头的至少一个设定格式的文件中,并保存;
其中,每个设定格式的文件包含的数据包按照传输时序排列,且所述至少一个设定格式的文件按照传输时序排列。
10.如权利要求9所述的装置,其特征在于,所述至少一个设定格式的文件中,每个设定格式的文件包含的数据包的数量相等或不等。
11.一种智能终端,其特征在于,包括权利要求6~10任一所述的抓包装置。
CN201410609863.9A 2014-11-03 2014-11-03 一种wifi数据抓包方法、装置及智能终端 Expired - Fee Related CN104468190B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410609863.9A CN104468190B (zh) 2014-11-03 2014-11-03 一种wifi数据抓包方法、装置及智能终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410609863.9A CN104468190B (zh) 2014-11-03 2014-11-03 一种wifi数据抓包方法、装置及智能终端

Publications (2)

Publication Number Publication Date
CN104468190A CN104468190A (zh) 2015-03-25
CN104468190B true CN104468190B (zh) 2018-12-25

Family

ID=52913601

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410609863.9A Expired - Fee Related CN104468190B (zh) 2014-11-03 2014-11-03 一种wifi数据抓包方法、装置及智能终端

Country Status (1)

Country Link
CN (1) CN104468190B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105472640A (zh) * 2015-11-13 2016-04-06 上海熙菱信息技术有限公司 WiFi信息采集方法及***
CN107306291B (zh) * 2016-04-22 2021-04-06 中兴通讯股份有限公司 一种终端操作方法及装置
CN110113771B (zh) * 2019-03-22 2022-06-17 深圳市飞比电子科技有限公司 数据处理方法、装置、网关设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101426000A (zh) * 2007-10-30 2009-05-06 北京启明星辰信息技术有限公司 一种通用协议解析方法及***
CN103716777A (zh) * 2013-12-18 2014-04-09 厦门市美亚柏科信息股份有限公司 一种无线终端mac地址采集方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ506411A (en) * 2000-08-17 2003-05-30 Compudigm Int Ltd Translation of data streams between protocols for transmission through firewalls
CN102202062B (zh) * 2011-06-03 2013-12-25 苏州九州安华信息安全技术有限公司 一种实现访问控制的方法和装置
CN103259699B (zh) * 2013-05-28 2015-11-25 华为技术有限公司 测试方法、***及客户端和服务端

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101426000A (zh) * 2007-10-30 2009-05-06 北京启明星辰信息技术有限公司 一种通用协议解析方法及***
CN103716777A (zh) * 2013-12-18 2014-04-09 厦门市美亚柏科信息股份有限公司 一种无线终端mac地址采集方法及装置

Also Published As

Publication number Publication date
CN104468190A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
CN105122748B (zh) 实现链路聚合组的对话敏感收集的方法和***
CN107612909A (zh) 关于物联网设备的信息交互方法、装置及设备
RU2014104375A (ru) Системы и способы для беспроводных сигналов-маяков с небольшим количеством служебной информации, которые имеют сжатые сетевые идентификаторы
US20140359035A1 (en) Data aggregation
CN102244593A (zh) 在未编址网络设备处的网络通信
CN109155744A (zh) 通信中的动态体验管理
CN110401624A (zh) 源网荷***交互报文异常的检测方法及***
CN106101011B (zh) 一种报文处理方法及装置
CN103763695B (zh) 一种物联网安全测评方法
EP2062399A1 (en) Method and apparatus for transmitting transport stream packets
EP3281361B1 (en) Latency measurer
CN107438254B (zh) 基于用户行为的业务识别方法、装置和***
CN104468190B (zh) 一种wifi数据抓包方法、装置及智能终端
CN110536324B (zh) 一种WiFi信号数据的采集和处理方法及其***
CN106658756A (zh) 一种终端设备与热点连接的识别方法及装置
CN104378315B (zh) 一种capwap隧道数据包传输的方法及装置
CN106797335A (zh) 数据传输方法、数据传输装置、电子设备和计算机程序产品
CN111343153A (zh) 数据包检测方法、装置、服务器及存储介质
CN106664444B (zh) 用于在多媒体***中接收媒体分组的方法和设备
KR20120093548A (ko) 무선통신시스템에서 네트워크 품질을 측정하기 위한 장치 및 방법
CN111490907B (zh) 一种确定vxlan网络性能参数的方法及装置
CN106549784B (zh) 一种数据处理方法和设备
CN102595467B (zh) 一种数据采集方法和设备
Wang et al. A classifier method for detection of covert channels over lte
Cao et al. An interface designed for networked monitoring and control in wireless sensor networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181225