基于快连协议的网络数据嗅探实现方法与流程

文档序号:17107396发布日期:2019-03-15 19:18阅读:328来源:国知局
基于快连协议的网络数据嗅探实现方法与流程

本发明涉及网络数据捕捉技术,具体涉及一种基于快连协议的网络数据嗅探实现方法。



背景技术:

随着用户生活水平的不断提高,用户对舒适度和体验度追求也越来越多样化,智能产品对简便性和可玩性的需求也越来越苛刻。因而,对轻型数据的传输的要求也越来越高。而如何保证数据传输过程中的准确,安全和便捷是业界必须面对的重要问题。

网络嗅探器,主要是通过嗅探流过网卡的数据,并对该数据进行智能分析和过滤,从而快速找到需要的网络信息内容。正常情况下,网卡只接收和自己地址有关的数据包,因而为了绕过这一层,也就是绕过TCP/IP堆栈,从而接收到网络中的所有数据,嗅探器一般都使网卡工作于混杂模式。



技术实现要素:

本发明所要解决的技术问题是:提出一种基于快连协议的网络数据嗅探实现方法,在复杂的开放网络环境下,能够快速,准确的嗅探出敏感包,并准确的解析为相应的数据。

本发明解决其技术问题所采用的技术方案是:

基于快连协议的网络数据嗅探实现方法,应用于包括硬件嗅探器和网络数据发送设备的系统中;该方法包括以下步骤:

A、硬件嗅探器初次上电即开始嗅探,网络数据发送设备则不限制时间随机发送数据;

B、当硬件嗅探器嗅探到敏感数据以后,根据该数据的分包序号进行多组接收,并针对每一分包序号的多组数据分别予以标记,记为data[x,y],其中,x表示分包序号同时也是分组序号,y表示当前该数据在分组中的位置;

C、判断敏感数据接收是否完成,如果未接收完成,则进入步骤D中的数据处理子流程,如果接收完成,则对接收的数据进行校验;

D、数据处理子流程:

D1、首先判断接收的帧数据是否为重复帧,如果为重复帧,进入步骤D2,如果不为重复帧,则进入步骤D3;

D2、判断当前y值是否大于5,如果大于5,则帧数异常,丢弃该帧;如果y值小于或等于5,则赋值给data[x,y],并将y值加1;

D3、判断该帧数据是否为第一帧,如果为第一帧,则将数据赋值给data[x,y],然后将x+1;如果不是第一帧,先将x加一,再将数据赋值给data[x,y]。

进一步的,所述硬件嗅探器为带嗅探功能的设备,所述网络发送设备为支持UDP通信协议的各种设备。

进一步的,步骤C中,所述对接收的数据进行校验,具体包括:

首先取出分包序号相同的数据,两两进行比较,如果数值不一致,则丢弃该分包序号下的所有数据,如果一致,则继续校验,直到所有分包序号的数据全部检验完成。

本发明的有益效果是:

一方面,本发明不限定开放环境下网络通信的网络信道,并支持跨信道捕捉数据,保证抓取数据的多样性和高效性;另一方面,本发明能够在网络数据不重传的情况下,保证数据通讯传输准确性。

附图说明

图1是实施例中网络数据嗅探实现方法主流程;

图2是实施例中数据处理子流程。

具体实施方式

在本发明中,硬件嗅探器初次上电即开始嗅探,网络数据发送设备则不限制时间随机发送数据,当嗅探设备嗅探到敏感数据以后,会根据该数据的分包序号进行多组接收,也就是同样的数据接收多组,直到所有的分包全部接收完成,并且每一个分包都接收了很多组。

在接收数据同时,对于每一分包序号的多组数据分别予以标记,标记为data[x,y],其中,x表示分包序号同时也是分组序号,y表示当前该数据在分组中的位置。

当数据接收完成以后,进入匹配算法,处理流程为:首先把数据按照x的值分组,x值相同的分为一组,直到所有的数据分组完成,在分组完成以后,给每一个组中的每一数据由小到大进行标号。然后按照网络数据发送设备发送数据所采用的校验规则进行校验:取出分包序号相同的数据,两两进行比较,如果数值不一致,则丢弃该分包序号下的所有数据,如果一致,则继续校验,直到所有分包序号的数据全部检验完成,输出即为本次接收到的发送端的目标数据。

实施例:

如图1所示,本例中的基于快连协议的网络数据嗅探实现方法包括:

程序开始运行以后,进入嗅探算法流程,把初始接收数组data[x,y]置0,x,y也置零。此时嗅探器检测是否有敏感数据,如果有敏感数据,先判断接收到是否完成,如果没有完成,则进入帧数据处理子流程。如果接收已经完成,就判断每一个分包序号的数据分组是否相同。如果每一个分包序号的所有分组数据均相同,则本次接收数据正确无误,结束算法,输出数据data[x,y];否则就放弃本次接收,并恢复现场,重新开始接收算法。

帧数据处理子流程如图2所示,首先判断该帧数据是否为重复帧,如果不是重复帧,则判断是否为第一帧,如果为第一帧,那么就把数据赋值给data[x,y],然后把x+1,如果不是第一帧,先把x加一,再把数据赋值给data[x,y]。如果为重复帧,判断y值是否大于5,如果大于5,则帧数异常,丢弃该帧。如果y值小于等于5,则赋值给data[x,y],并把y值加1。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1