一种网络数据收发装置和方法

文档序号:8447421阅读:138来源:国知局
一种网络数据收发装置和方法
【技术领域】
[0001]本发明涉及一种网络数据收发装置及方法。本发明的一个实施例涉及基于Windows XP系统的底层网络数据收发装置及方法,尤其涉及不依赖系统的TCP/IP协议的网络数据收发装置及方法。
【背景技术】
[0002]目前,在国内的PC (Personal Computer)中,Windows XP(微软公司推出供个人电脑使用的操作系统)仍是应用最广范的操作系统。Windows XP具有对硬件的要求较低、稳定性好、使用方便等优点。在网络通信方面,Windows XP提供了一套TCP (Transmiss1nControl Protocol 传输控制协议)/IP (Internet Protocol)协议及 API (Applicat1nProgramming Interface应用程序编程接口),用来处理链路层和网络层的数据。基于该协议,应用开发者可以专注于应用层的数据交互,而不用关注底层的网络通信。
[0003]但是这种协议处理机制也带来了一些问题,Windows XP系统规定应用开发者不能接收链路层和网络层的数据包。然而,在一些情况下,需要接收链路层和网络层的数据,而不是依赖操作系统的TCP/IP协议,这时操作系统的协议处理机制就给我们带来了不便。

【发明内容】

[0004]本发明的目的在于,提供一种网络数据收发装置,其可以不受Windows XP操作系统的协议限制,接收网络数据。
[0005]本发明通过如下技术方案实现:一种网络数据收发装置,所述网络数据收发装置包括接收单元,所述接收单元包括:
[0006]底层数据抓包模块,其用于从网卡获取数据;和
[0007]防火墙模块,其用于拦截所述数据,使得Windows操作系统不会处理该数据。
[0008]优选地,所述接收单元还包括:
[0009]数据处理模块,其用于处理通过所述底层数据抓包模块从网卡获取的数据。
[0010]优选地,所述网络数据收发装置还包括发送单元,
[0011]所述发送单元包括:
[0012]底层数据发送模块,其用于将待发送的数据以数据链路层的格式直接发送。
[0013]优选地,所述接收单元还包括:
[0014]数据处理模块,其用于处理通过所述底层数据抓包模块从网卡获取的数据,
[0015]所述网络数据收发装置还包括发送单元,
[0016]所述发送单元包括:
[0017]底层数据发送模块,其用于将待发送的数据以数据链路层的格式直接发送。
[0018]根据本发明的另一方面,提供一种网络数据收发方法,所述网络数据收发方法包括接收步骤,所述接收步骤包括:
[0019]S102从网卡接收到数据;
[0020]S103通过底层数据抓包模块获取该数据;和
[0021]S104通过防火墙模块拦截该数据,使得Windows操作系统不会处理该数据。
[0022]优选地,所述网络数据收发方法还包括发送步骤,所述发送步骤包括:
[0023]S202准备待发送的数据;和
[0024]S203通过底层数据发送模块发送该数据。
[0025]优选地,S203中,所述底层数据发送模块将待发送的数据以数据链路层的格式直接发送。
[0026]根据本发明的再一方面,提供一种网络数据收发方法,所述网络数据收发方法包括接收步骤,所述接收步骤包括:
[0027]S112从网卡接收到数据;
[0028]SI 13通过底层数据抓包模块获取该数据;和
[0029]S114通过防火墙模块拦截该数据,使得Windows操作系统不会处理该数据,并将抓到的数据提交给数据处理模块进行处理。
[0030]优选地,所述网络数据收发方法还包括发送步骤,所述发送步骤包括:
[0031]S202准备待发送的数据;和
[0032]S203通过底层数据发送模块发送该数据。
[0033]优选地,S203中,所述底层数据发送模块将待发送的数据以数据链路层的格式直接发送。
[0034]本发明的有益效果是:本发明的网络数据收发装置包括接收单元,接收单元包括底层数据抓包模块和防火墙模块,通过底层数据抓包模块获取数据,然后利用防火墙模块拦截该数据,使得Windows操作系统不会处理该数据,既可绕过系统的网络协议,不触发系统的TCP/IP协议栈,又能接收数据包。
【附图说明】
[0035]图1是根据本发明的第一实施例的网络数据收发装置的示意框图;
[0036]图2是根据本发明的第二实施例的网络数据收发装置的示意框图;
[0037]图3是根据本发明的一个实施例的网络数据收发方法的接收步骤的示意流程图;
[0038]图4是根据本发明的另一实施例的网络数据收发方法的接收步骤的示意流程图;
[0039]图5是根据本发明的一个实施例的网络数据收发方法的发送步骤的示意流程图。
【具体实施方式】
[0040]以下结合附图对本发明的【具体实施方式】进行进一步的说明。
[0041]下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
[0042]在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0043]流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0044]如图1所示,本发明的第一实施例的网络数据收发装置10包括接收单元100。
[0045]其中,所述接收单元100包括:
[0046]底层数据抓包模块120,其用于从网卡(network adapter,也称网络适配器)获取数据-M
[0047]防火墙模块110,其用于拦截所述数据,使得Windows操作系统(尤其是WindowsXP操作系统)不会处理该数据。防火墙模块110的作用为拦截数据包,使Windows操作系统无法接收该数据。
[0048]此外,所述网络数据收发装置10还可以包括发送单元200。所述发送单元200包括底层数据发送模块210。底层数据发送模块210用于将待发送的数据以数据链路层的格式直接发送。
[0049]根据本发明的网络数据收发装置10,在发送数据时,不用操作系统的TCP/IP协议API (Applicat1n Programming Interface,应用程序编程接口),而是使用底层数据发送模块120,将数据组包成数据链路层的数据格式直接发送。这样可以绕过系统的协议机制,完成发送功能。
[0050]由此,通过底层数据抓包模块120获取数据,然后
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1