无限美范文论文网

基于WinDis 32技术实现网络通信监测

无限美范文论文网 http://www.zhihuibanpai.cn 2019-08-01 05:32 出处:网络 编辑:





基于WinDis 32技术实现网络通信监测

解放军电子工程学院  孙乐昌


【摘要】 本文论。述了网络通信监测的实现原理与实现过。程,遵照国际标准化开放系统互联(OSI)七层体系结构,利用网络驱动接口规范WinDis32 V5.。0技术,实现了在应用层对。数据链路层的控制,完成了对网上流动数据帧的实时截获、解封与分析。

【关键词】网络分层 WinDis32技术 网络信息截获 数据帧 NDIS网络适配器

1.前言

随着计算机网络技术的发。展,各类网络。规模的扩大,远程访问的增加,虚拟专用网(VPN)的出现和Internet的普及,网。络安全性已。成为计算机网络领域一门重要的研究学科。

网络监控是保障网络安全性的基本措施之。一。网络监控,用于监。测网上流。动信。息,并对网络信息给予适当控制。网络监控,可用于。调试网络应用程序,判。断应用程序是否正确地发送。或接收了数据包。网络监控,还。可用于监视网。络信息,杜绝不健康站点的不健康内容,维护网络环境。应。用于。安全防范,可监视我方信息内容、保障网络。安全,截获情报、分析怀有敌意方的网站。在计算机网络上实施有效的攻击与保护,是网络监控技术在军事上的重要发展方向之一。

本文论述的网络通信实时监测的实现,是用于特殊目的的。数据通信程序设计的突。破口,是网络监控技术的基础部分,其实现基于网络体系结构与WinDis32技术。

2.网络体系结构



现代计算机网络设计是按高度的结构化方式。进行的,国际标准化组织(ISO)为更广泛的计算机互联制定了标准化的开放系统互联(OSI)网络体系结构,如图1所示。

OSI参考模型用结构描述方法,即分层描述的方法,将整个网络的通信功能划分为七个部分(也叫七个层次),每层各自完成一定的功能。由低层至高层分别称为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。两台网络主机之间进行通信时,发送方将数据从应用层向下传递到物理层,每一层协议模块为下一层进行数据封装,数据流经网络,到达接收方,接着再由下而。上通过协议栈传递,并与接收方应用程序进行通信。

在通用网络中,数据链路层由网络适配器实现,本文中网络通信监测的立足点在于数据链路层,基于电缆是固有的广播性介质,通过对网络适配器的控制,实时截获与分析经过网络适配器的所有网上流动信息。

3.WinDis32技术


WinDis32全称为Win32 NDIS(Network Driver Interface Specification)网络驱动接口规范,用于开发Windows产品,可在Win。do。ws 9X和Window。s NT上直接访问NDIS媒体访问控制(MAC)驱动接口。图2显示了Windows网络驱动组件与Win32。 NDIS。结构组件:



图2.Windows网络驱。动组件与Win32 NDIS结。构组件


WinDis32网络组件由四部分组成:NDIS适配。器、PCANDIS5 ND。IS协议驱动、W32N50 WinDis32 API DLL、WinDis32应用程序。WinDis3。2应用程序调用W32N50.DLL。动态链接库提供的API应用程序接口,通过N。DIS协议驱动模块,实现对NDIS适配器。进行的存取操作。网络驱动接口规范NDIS的主要特征是所有适配器相关驱动均由NDIS接口打包,例如,最底层NDIS NIC驱动不能。对网。卡直接执行I/O,它通过NDIS打包服务来访。问硬件;高层Windows NDIS网络组件使用NDIS打包界面与适配器相关驱动通信。只有NDIS协议驱动可以调用NDIS。打包,访问NDIS适配器。

WinDis32应用程序接口函数包括:W32N_OpenAdapter(),打开一个已被命名的NDIS适配驱动器,若操作成功,则生成一个面向适配器对象的WinDi。s32适配器句柄,这一句柄被随后多个在该适配器上操作的W32N_XXX函。数所用; W32N_CloseAdapter(),关闭已打开的适配器句柄;W32N_PacketRead(),数。据帧读操作;W32N_PacketReadEx(),数据帧异步读操作;W32N_PacketSend(),发送数据帧操作;W32N_PacketSendEx()、W32N_。MakeNdisRequ。est()等等。

WinDis32技术使得从Win32应用层进行N。DIS请求如同在一个内核模式的驱动器内部进行请求一样简单,并支持多个网络适配器同时打开,完成各自的信息发送与接收。

4.网络信息监测的实现

网络信息监测。程序分为信息截获与信息分析两大部分,其中信。息截获程序流程如图3所示,采用多进程与多线程技术,完成数据的实时截获。



其中网络。适配器列表通过读取系统注册表生成;网络适配器详细信息包括适配器型号、网络适配器物理地址、传输最大帧、传输速率以及机内标识符,通过函数W32N_Mak。eNdisRequest()获得。

协议过滤部分是包括PCAUSA端口的PCANDIS5协议驱动,BPF过滤器是。由UNIX环境到Windows的模拟机制,为Wi。n32应用程序提供了一种普通而又便利的机制,可过滤指定协议,由协。议驱动执行,拒绝不想要的数据帧。支持协议包括:传


[1] [2] [3] 下一页




0

精彩评论

暂无评论...
换一张
取 消