基于多线程扫描的网络拓扑边界监测系统设计

时间:2012-09-06来源:网络

 在扫描流程图中的每个线程都能独立完成各自的扫描分析任务,在对每一个设备扫描完成之后,立即读取目标的安全设置,完成结构边界的确认、检验、存储和展现工作。
 对于较大规模的网络,在采用了设备多线程扫描的方法后,完成全网扫描所耗费的时间已经大幅减少,如表1所示,其中,①②③为扫描算法分别在3个不同的时间段内运行的结果。但是详细分析后发现,扫描线程仍然有一部分空闲时间在等待设备准备数据,而这部分空闲时间正是再次提高扫描速度的希望。在分析了设备的扫描过程后发现,为了实现网络结构的自动发现与监测,每个设备都需要扫描接口表、路由表、端口映射表、地址映射表等多张表格,虽然在扫描流程上采用了子网多线程扫描,但是每个扫描线程依然是按照顺序对这几张表格进行扫描的,由此得出了通过多线程方式来获取这些表格的表格多线程扫描方法(以下简称方法三)。

 为了验证这3种扫描方法的性能,特意选择长安大学校园网络进行实际测试,表1是这3种扫描方法分别在3个不同的时间段内测试运行的结果数据。
在对扫描方法的性能进行比较时,扫描完成时间以及扫描对网络带宽的影响是两个重点指标。本来每秒钟获得的记录数量也可以作为一个性能指标来指示扫描算法的性能优劣,但是该指标与网络流量成正比关系(记录条数越多网络流量越大),因此在比较过程中只使用了完成时间和波特率两项指标,3种方法性能比较如图3所示。从测试的结果可以看出,这3种方法在3次测试过程中性能表现均较为稳定,方法一的完成时间是最长的,在使用了多线程以后方法二和方法三的完成时间有了大幅的减少。同时,随着完成时间的缩减,网络流量也逐步升高,由于目前主干网络多是千兆的情况,因此多线程的使用对网络带宽的压力实在小到可以忽略不计。

3.2 异常情况自动上报
 在实际应用时,单靠周期性的扫描来发现网络结构的异常变动显然不够,应该设计一种异常自动上报机制,使得接入设备能够在异常发生的第一时间将自身变动信息自动上报给服务器,而不是等待扫描模块下一次周期性的轮询,而这恰恰就是SNMP陷阱(SNMP Trap)的用武之地。
 SNMP陷阱不同于SNMP的主动采集,SNMP主动采集是按照固定的时间间隔,由管理工作站以询问的方式采集被管理设备的各项MIB信息,因此,发现网络结构的变化与异常的及时性取决于扫描采集的频率。在一个较大规模的网络内,轮询过于频繁会产生大量不必要的通信量,容易引起网络拥塞;轮询周期过长,则不能保证网络故障被及时发现,严重影响了系统的实时性[6]。而SNMP陷阱使用事件驱动机制,在被监控设备上设置陷阱,一旦被监控设备出现异常情况,立即向管理工作站发送陷阱消息,因此能够在最短的时间内发现异常,避免由设备异常而带来的经济损失。
 在SNMP的管理模型中,管理代理会向管理工作站发送一些重要事件的异步通告,其中包括设备的冷启动、热启动、接口上线和接口下线等几种消息,而这些消息将由代理主动通知SNMP管理器,而不是等到管理工作站为获得这些错误情况而轮询的时候才会报告,这将有助于系统以最快的速度接收到来自于被管理设备的异常通知。系统在收到这些消息后可以通过单独查询这个设备或查询其周边的相关设备来获得这个事件更加详细的情况并向管理人员发送告警,以便对异常情况作出正确的判断和处理。
 当然,使用SNMP陷阱也需要消耗一定的系统资源,如果该陷阱需要传输大量的数据,则被管设备就要消耗更多的时间来处理这些数据,从而降低了设备的运行速度。此外,如果接连发生相同类型的陷阱,每次都要报告给管理站,这样又造成了资源的浪费,可能会造成网络拥堵甚至瘫痪。因此,本系统仅仅使用了设备启动、接口上线和接口下线这几种与网络结构和边界安全监测关系最为密切的陷阱事件,以减轻网络压力,提高系统的实时性能。
 网络规模大、涉及范围广、设备种类多以及用户数量大是目前网络的基本特点,因此网络的维护管理和安全防护便成为了一个难题。本系统在保障网络出口安全的同时,重点加强了网络边界的安全监测与防护,使网络管理人员能及时全面地了解实时的网络结构和边界接入变化情况,并通过使用多线程和SNMP陷阱技术来提高网络结构扫描的效率,从而有效解决了目前网络使用过程中比较常见的用户随意更改接入状态和非法接入网络设备的问题,避免了由此产生的网络运行不稳定问题,消除了网络安全监管盲区和网络安全隐患,保障了网络运行的可靠与安全。
参考文献
[1] 孙延涛,吴志美,石志强.基于地址转发表的交换式以太网拓扑发现方法[J].软件学报,2006,17(12):2565-2576.
[2] BREITBART Y, GAROFALAKIS M, JAI B, et al. Topology discovery in heterogeneous IP networks: the net inventory system[J]. IEEE/ACM Transactions on Networking,2004, 12(3):401-414.
[3] 杨安义,朱华清,王继龙.一种改进的基于SNMP的网络拓扑发现算法及实现[J].计算机应用,2007,27(10):2412-2419.
[4] 李琳,李杰.基于SNMP的网络拓扑发现算法[J].计算机工程与设计,2008,29(6):1345-1347.
[5] 贺英杰,王慧强,周仁杰.面向网络态势感知的实时网络拓扑发现[J].计算机工程,2009,35(24):127-129.
[6] 蔡道家,侯秀红,汪国安,等.基于SNMP的自陷的传递轮询算法[J].计算机工程,2007,33(11):273-275.

1 2

关键词: 监测 系统 设计 边界 拓扑 线程 扫描 网络 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版