首页 > 范文大全 > 正文

中小型企业网络行为管理系统的设计与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇中小型企业网络行为管理系统的设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:随着计算机技术和互联网的快速发展,网络信息化已经成为我们生活工作中必不可少的元素。网络不仅拉近了人与人的距离,还为各企业提供更广阔信息平台,提高了企业的竞争力,在生产和办公效率方面作出了卓越的贡献。但是,随之而来的网络游戏、网络下载等网络行为造成了影响网络速度、办公效率降低,增大了管理成本。网络行为管理系统的目的是让网络管理员更加清楚地掌握网络内的流量情况、网络使用状况并根据网络状况作出相应的调控,提高网络使用效率,更大的发挥网络带给企业的优势。

关键词:网络行为;协议分析;数据捕获;行为管理

中图分类号:TP311.52

网络行为管理系统旨在帮助网络管理员了解网络运行状况和带宽使用状况。作为网络管理较重要的工具之一,网络行为管理系统协助网络管理员更好的掌握网络状态,进而做出相应的管理调整,确保网络的连续正常运行。网络行为管理系统以旁路监听的方式接入网络,不改变网络系统的拓扑结构,对网络性能毫无影响。网络行为管理系统管理平台增加了网络用户管理功能,便于网络管理员管理用户信息,时时掌握网络用户的使用情况。网络行为管理系统基于Windows xp系统开发,对服务器的配置要求很低。即使一台简单得PC机完全可以应付工作。对于网络管理员,可以在任何一台内网机器上通过浏览器打开管理平台。大大降低了在网络方面的管理成本。网络行为管理系统能够监控网络中的数据并进行分析并提供管理平台。可以作为网络管理员有效的网络管理工具,提高网络使用效率。

1 系统需求分析

本企业的网络现状是大部分内网用户因为业务需要具有访问互联网的权限,而连接互联网的链路带宽有限,经常会在工作时间出现带宽占满的情况。行政管理者无法找到带宽使用最多的用户和在工作时间做与工作无关网络行为的用户。

根据现状需要解决如下问题:

(1)能够记录用户访问信息。

(2)能够将办公网内用户的配置信息统一管理。

(3)能够记录内网用户间的访问信息。

网络行为管理系统通常分为两种模式,分别是路由模式和透明模式。路由模式是将网络行为管理系统放置于互联网总出口处,凡是访问互联网的的数据都通过它,可以进行更加严格的权限策略管理。但是,缺点是内网用户间的访问状况就没有监听到。为了达到能够监听到内网用户间的数据和内网用户访问互联网的数据,可以采用透明模式。采用透明模式,捕获内网用户间的网络数据和内网用户访问互联网的网络数据,并进行协议分析,存入数据库,通过管理平台读取数据库的数据进行分析。

设计需求:

(1)实用、稳定、先进、可靠,以实际应用需要为设计依据确保系统总体优化、安全可靠和稳步推进。

(2)充分考虑功能扩容性和技术升级性,以求得最佳的性能价格比。

(3)采用透明模式接入,不破坏现有网络格局。

(4)不需要安装客户端软件,不影响内网用户使用网络。

功能需求:

(1)监听网络内数据,并分析协议。

(2)将分析处理后的数据传入数据库。

管理平台需求:

(1)能够增加删除系统管理员。

(2)能够管理所有用户的信息,增加、删除或修改。

(3)能够查看用户访问记录,内容包含源、目的IP、MAC、协议信息。

性能需求:

在数据量较大的网络中,高效的网络管理可以保障网络的高效使用。本系统最大的目的是快速捕获数据包并进行协议分析,系统的缓慢降低系统的运行效率,不科学的部署还会影响系统在网络的监控能力。因此,在设计与实施中要采用先进的网络技术和系统,最大限度地提高系统的响应速度。本系统采用Mysql数据库并结合PHP开发管理控制平台,能够安全高效的完成对数据的查询、更改。

2 系统设计

2.1 网络数据处理中心设计

Winpcap提供了数据包的捕获功能,在不同的应用中需要设计不同的协议分析模块。针对不同的协议,设计相应的协议分析功能,是基于Winpcap应用的关键所在[1]。

(1)获得本地网络驱动器列表

首先使用WinPcap应用程序函数获取服务器端网卡列表,然后再对捕获网络数据端口进行设定。WinPcap提供pcap_findalldevs_ex()函数来实现此功能。函数返回一个pcap_if结构体链表,结构体都包含了一个适配器的详细信息。取得网卡列表后显示出来并供用户选择,如果网卡没有被发现就显示有关错误。

(2)打开设备并将其设为混杂模式

网卡在一般工作模式下只接受去往它的包,忽略去往其他主机的数据,混杂模式下的网卡它将接收所有的流经它的数据,这说明在同一个网络里设备可以捕获到本网络其他设备的数据[2]。因此常见的抓包工具通常使用混杂模式。使用pcap_findalldevs_ex()捕获到网卡后,通过pcap_open()函数调用此设备。

(3)编译并设置过滤器

数据包过滤处理是数据包捕获技术中的难点和重点,WinPcap或libpcap最强大的特点之一就是数据流的过滤引擎。设置数据流过滤规则实现信息包过滤,用来过滤数据包的函数是pcap_compile()和pcap_setfilter()。pcap_compile()将一个高层的布尔过滤表达式编译成一个能够被过滤引擎所解释的低层的字节码。

pcap_setfilter()将一个过滤器与内核捕获会话向关联。调用pcap_setfilter()时,过滤器将被应用到来自网络的所有数据包。所有的符合要求的数据包,将会复制给应用程序。

(4)捕捉保存数据包

使用循环调用pcap_next来接受数据包。这个函数的参数和回调函数pcap_loop()一样是由一个网卡描述符作为入口参数和两个指针作为出口参数,这两个指针将在函数中被初始化,然后再返回给用户。我们使用pcap_next_ex()进行数据包的捕获。

(5)数据包协议解析

捕获后的数据经过解析才能得到想要的信息,如源地址,目的地址,协议类型等信息。因此需要关注的帧的格式,解析的过程是将数据帧中的数据按不同协议进行分析提取。

2.2 数据库设计

数据中心是对来自网络数据处理中心的网络数据作进一步的分析、还原、存储,并根据管理控制台下发的查询指令进行响应。数据中心的主要功能是存储经过处理后的网络数据,和网络管理员通过管理平台删除、增加、修改网络用户的管理信息。网络数据处理中心分析完TCP/IP数据包,还原应用层协议后,将结果存放在数据库中,为了方便以后网络管理员的查询,设计表的时候就要求简洁、易懂。

(1)基础信息维护模块模型如图1所示。

图1 基础信息维护模块物理模型

(2)抓包信息模块如图2所示。

图2 抓包信息模块物理模型

3 功能实现

运行环境配置:

(1)下载WinPcap的安装文件WinPcap_4_1_2.exe,程序员开发包WpdPack_4_1_2.zip,SDK开发环境。

(2)执行安装文件,本机就能运行winPcap程序了。

(3)解压开发包,在VC的option的include和lib中加入winPcap的include和lib。

(4)在程序中加入#include , #include 。然后在工程的setting中加入预定义宏:WPCAP } HAVE_ REMOTE,导入wpcap.lib库。

在登陆页面输入用户名和密码,点击登陆按钮,将输入的内容提交给登陆验证页面,将输入的的内容连接到数据库查询,验证通过,进入http://127.0.0.1:8080/function.php,验证失败,进入http://127.0.0.1:8080/loaderro.php,提示“无权限”。

系统设置页面连接数据库aduser表,读取系统管理员账号信息。并通过增加管理员和删除管理员按钮,来增加或删除系统管理员账号。

用户管理功能是让系统管理员更清楚地掌握本网络内用户的网络配置信息,并通过增加用户和修改用户按钮来增加用户或是修改用户信息,点击删除用户按钮来删除用户,点击查询可以通过IP、MAC两项来查找用户。

日志查看功能帮助网络管理员直观的看到本网络内用户访问的网址和使用的协议以及时间。通过查询网段设置和协议类型设置可以过滤掉不需要的信息,提高管理效率。

网络数据处理中心应用在服务器上,由网络数据处理中心的sniffer工具在网络层捕获数据包,并进行协议分析,并将数据传送给数据库,以供管理控制台进行查询或修改操作。

参考文献:

[1]刘文涛.网络安全编程技术与实例[M].北京:机械工业出版社,2008.

[2]赵心宇,朱齐丹,朱达书.应用winPcap捕获网络数据包[J].应用科技,2004,31(11):29-31.

[3]雷震甲.网络工程师教程[M].北京:清华大学出版社,2006.

[4]萨师煊,王珊.数据库系统概论[M].北京:高等教育出版社,2000.

作者简介:刘博(1981-),女,辽宁人,软件工程硕士,研究方向:网络规划与设计及网络安全。

作者单位:大连国际机场集团有限公司,辽宁大连 116033