论文部分内容阅读
随着网络技术的飞速发展,如何快速、准确地获取目标网络的状态信息,对于加强网络管理、提高网络服务质量和保障网络安全具有十分重要的意义。因此,网络探测技术作为获取网络状态信息的一种关键技术,受到了广泛的关注。然而,传统的网络探测技术,如单一的网络探测技术和单点网络探测技术,或是存在所获得的信息不精确、不全面的问题,或是存在探测效率不高的问题。为此,本文基于多Agent模型提出了一种主被动结合的网络协同探测系统设计方案。论文主要工作如下:首先,本文采用主动探测与被动探测相结合的方法进行网络拓扑和网络资源探测,以解决单一的网络探测技术所带来的网络信息不全面和不精确的问题。关于网络拓扑探测,本文根据被动探测的结果触发并引导主动探测任务的执行,从而得到目标网络拓扑信息。其中,被动式网络拓扑探测采用基于SNMP协议的方法来实现,利用地址表解决路由器别名问题,利用ARP协议获得子网内网络设备的完整性。主动式网络拓扑探测采用基于Traceroute的算法思想来实现,利用抗防火墙的TCP探测包来获得完整的网络拓扑,并利用二分搜索算法来减少探测包的发送数量。关于资源探测,基于具体探测需求,对Nmap的主机发现、端口扫描和操作系统侦测模块进行重构和整合,以获取主机相关设备信息。其次,本文采用基于多Agent模型的分布式任务决策调度方法,以解决单点网络探测技术带来的低效率问题。本文选取多Agent模型作为系统的研究模型,围绕任务决策调度和协同问题展开讨论。针对多Agent模型的分布式任务决策调度问题,将多属性决策方法与网络选择相结合,建立动态决策算法模型,使得选择的结果可以更好地平衡用户和网络双方的利益。针对多Agent模型协同问题,选择恰当的Agent粒度并为之建立合适的Agent模型,基于Websocket的通信机制协调系统资源,以高效地完成目标任务。最后,本文根据设计方案进行了系统实现,并对该系统进行了相关测试。测试结果表明,本文实现的网络探测协同系统可以快速地收集网络信息,并且能够有效地对目标网络进行拓扑复原。由此,本文所设计的方案的可行性和有效性得到了验证。