一种基于云的主动探测方法和探测平台技术

技术编号:19486427 阅读:350 留言:0更新日期:2018-11-17 11:27
本发明专利技术涉及一种基于云的主动探测方法和探测平台。该基于云的主动探测方法在探测节点中基于Docker容器构建对网络进行主动探测的探针,将针对特定探测目标的探测程序封装成Docker镜像;然后根据探测任务的配置需求,探测节点利用Docker容器中运行的探测程序对网络层、传输层、应用层进行主动探测。该基于云的主动探测平台包括节点管理模块、镜像管理模块、任务管理模块、容器管理模块、任务调度模块、用户访问界面。本发明专利技术能够支持网络层、传输层、应用层的探测,提供了API接口和Web用户界面两种访问方式,支持探测任务方便快捷地部署和维护,适用于网络数据采集、网络拓扑测量等多种应用场景。

【技术实现步骤摘要】
一种基于云的主动探测方法和探测平台
本专利技术属于网络
,具体涉及一种基于云的主动探测方法和探测平台,支持网络层、传输层、应用层的探测。
技术介绍
对网络进行主动探测有助于人们了解网络拓扑、性能、基础设施、流量特征,描绘网络用户及其行为特征、网络服务特征、网络资源映射及网络演化。网络探测分为被动探测和主动探测,在被动探测方式中,用于探测网络活动的探针部署至网络中,在大多数情况下探针部署于网络节点之间的连接上,用于记录、汇总该条连接上的网络流量信息;在主动探测方式中,通过向网络中发送数据、观察结果来研究网络的行为。主动探测平台是网络测量平台的一种实现方式。近年来,国内外研究人员设计并实现了一系列网络测量平台和集成系统,主要包括PlanetLab、CAIDAArk、DragonLab、Gperf等。PlanetLab是一个全球范围的用于研究和测试新的网络应用的互联网络,也是开发全新互联网技术的开放式全球性测试实验平台,研究内容包括分布式存储、网络映射、P2P系统、查询处理,目前有1353节点和717个站点,主要由加入PlanetLab的研究机构和实验室提供的。每个节点上同时运行大量的虚拟机,每个虚拟机都被分配了相应的节点的资源(包括CPU、内存、带宽、硬盘等),使得虚拟机如同物理主机一样可以安装和运行程序。切片是由许多节点的虚拟机组成的一个环境,用户可将试验部署于各自拥有的切片上,相当于部署在由多个节点上的虚拟机组成的一个大规模网络试验环境上。CAIDAArk是一个全球分布式测量平台,该平台通过分配硬件测量节点构建基础设施,具有地理多样性和拓扑多样性。Ark由位于圣地亚哥超级计算机中心的中央服务器的管理节点和位于40多个国家的专用测量节点组成。Ark的主要测量项目包括欺骗包工程、TCP的行为推断、IPv4和IPv6的稳定性测试、网络拓扑结构发现、拥塞发现等。Ark的网络测量主要是针对网路拓扑、网络拥塞、自治域等网络层的测量,不提供应用层的测量。DragonLab是一个能支持各类网络技术验证、网络产品测试、应用系统开发和工程方案验证的远程网络实验平台,主要提供的服务包括网络性能测量、网络应用流量分析、网络攻击流量分析、网络用户行为分析。GPerf是进行大规模、主动和被动测量相结合网络安全测绘平台,提供扫描、蜜罐、助防等服务。GPerf研究计划的宗旨是建立网络空间概念模型和网络空间测绘体系结构模型,突破网络空间测绘关键技术,建成全球网络空间测绘数据库,建成网络空间沙盘平台,全景和可视化展现全球网络空间。上述国内外网络测量平台在面向网络空间资源探测还存在一些问题,主要表现在以下四个方面:1.探针构建方面:一些平台的探针是基于虚拟机构建的,灵活性不足、启动时间较长、内存访问效率较低;2.测量对象方面:主要对网络层、传输层进行测量,对应用层支持不好;3.系统调度方面:现有调度算法对时间敏感型任务、地域敏感型任务的支持不足;4.使用方式方面:主要基于API方式,系统开发和使用的灵活性不足。
技术实现思路
为解决上述网络测量平台存在的问题,本专利技术提供一种基于云的主动探测方法和探测平台,能够为主动探测提供基础设施服务,达到屏蔽底层硬件资源、统一分配资源、提升资源利用率、提升运维效率的目的。本专利技术采用的技术方案如下:一种基于云的主动探测方法,包括以下步骤:1)在探测节点中基于Docker容器构建对网络进行主动探测的探针,将针对特定探测目标的探测程序封装成Docker镜像;2)根据探测任务的配置需求,探测节点利用Docker容器中运行的探测程序对网络层、传输层、应用层进行主动探测。进一步地,通过定义批量探测任务模板,使用户能够一次部署多个探测任务,并为每个探测任务配置不同的资源需求,以支持探测任务跨网络、跨地域的大规模部署。进一步地,根据探测任务的多样化配置需求对资源进行统一管理和调度,包括:a)在资源充足的情况下,采用面向多维度资源需求的任务调度算法,根据探测任务配置的多维度的需求,筛选系统中剩余资源大于探测任务所申请资源的节点,根据节点的负载和健康值对节点进行打分排序,节点得分越高,该节点的负载越大;b)资源不足的情况下,采用基于优先级分类的抢占式调度算法,优先调度对任务执行时间有特殊需求的任务。进一步地,采用Web用户界面和API两种用户访问方式,使用户能够在Web界面上部署探测任务,实现任务的可视化监控和追踪任务的实时状态,并能够通过URL的形式经API接入点调用相应的接口以实现探测。一种采用上面所述方法的基于云的主动探测平台,其包括:节点管理模块,负责对集群内的节点进行统一的管理;所述节点包括管理节点和工作节点,管理节点负责分配资源、分发任务、管理集群内的节点、监控任务的运行状态,工作节点负责运行探测任务;镜像管理模块,负责构建统一的私有镜像仓库,提供基本的增删改查镜像的管理功能,为镜像提供统一的存储和管理功能;任务管理模块,负责对探测任务进行统一的管理,定义批量任务创建、删除、更新的统一模板,以实现任务创建、更新、删除操作,同时对任务的运行状态实现可视化的监控;容器管理模块,负责对探测任务运行的容器的实时监控,并对容器进行管理和操作;任务调度模块,负责对探测任务进行调度;用户访问界面,负责提供Web用户界面和API两种用户访问方式。进一步地,所述节点管理模块包括以下子模块:节点资源监控子模块:负责维护节点的基本信息,并动态收集节点的资源状态;节点状态监控子模块:负责监控节点的状态,根据节点ID监控节点的角色以及运行状态;节点标签管理子模块:负责管理节点的标签,包括节点的角色标签、地域标签;节点状态管理子模块:负责管理节点的状态,包括修改节点的运行状态、将某些节点加入/移除集群、修改节点的标签、连接私有镜像仓库。进一步地,所述镜像管理模块包括以下子模块:镜像上传子模块:支持从Web界面上传镜像至镜像仓库中;镜像查看子模块:允许用户查看自己和系统管理员上传的镜像的详细信息;镜像下载子模块:允许用户下载自己上传的镜像和管理员上传的镜像,同时也允许各个节点在任务部署时下载镜像至本地;镜像删除子模块:允许用户从界面上删除自己上传的镜像。进一步地,所述任务管理模块包括以下子模块:任务提交子模块:接收用户提交的任务配置信息,判断用户所提交的任务描述的合理性、正确性,将任务描述形式化处理,将任务创建请求提交至后台;任务监控子模块:根据任务名称,监控任务的实时状态,包括该任务的子任务数、任务运行状态、任务部署的节点等信息;任务管理子模块:对任务进行管理,包括更新探测任务配置需求、删除任务。进一步地,所述容器管理模块包括以下子模块:容器监控子模块:负责容器的管理,包括查看容器运行的镜像、IO、CPU、内存、运行环境变量、端口映射信息;容器控制台:提供操作界面供用户使用控制台对容器进行操作,使用命令行的方式对容器进行操作;容器管理子模块:负责管理容器的运行状态,包括对其进行暂停、停止、重启、销毁操作。进一步地,所述任务调度模块根据探测任务的多样化配置需求对资源进行统一管理和调度,包括:在资源充足的情况下,采用面向多维度资源需求的任务调度算法,根据探测任务配置的多维度的需求,筛选系统中剩余资源大于探测任务所申请资源的节点,根本文档来自技高网
...

【技术保护点】
1.一种基于云的主动探测方法,其特征在于,包括以下步骤:1)在探测节点中基于Docker容器构建对网络进行主动探测的探针,将针对特定探测目标的探测程序封装成Docker镜像;2)根据探测任务的配置需求,探测节点利用Docker容器中运行的探测程序对网络层、传输层、应用层进行主动探测。

【技术特征摘要】
1.一种基于云的主动探测方法,其特征在于,包括以下步骤:1)在探测节点中基于Docker容器构建对网络进行主动探测的探针,将针对特定探测目标的探测程序封装成Docker镜像;2)根据探测任务的配置需求,探测节点利用Docker容器中运行的探测程序对网络层、传输层、应用层进行主动探测。2.根据权利要求1所述的方法,其特征在于,通过定义批量探测任务模板,使用户能够一次部署多个探测任务,并为每个探测任务配置不同的资源需求,以支持探测任务跨网络、跨地域的大规模部署。3.根据权利要求1所述的方法,其特征在于,根据探测任务的多样化配置需求对资源进行统一管理和调度,包括:a)在资源充足的情况下,采用面向多维度资源需求的任务调度算法,根据探测任务配置的多维度的需求,筛选系统中剩余资源大于探测任务所申请资源的节点,根据节点的负载和健康值对节点进行打分排序,节点得分越高,则该节点的负载越大;b)资源不足的情况下,采用基于优先级分类的抢占式调度算法,优先调度对任务执行时间有特殊需求的任务。4.根据权利要求1所述的方法,其特征在于,采用Web用户界面和API两种用户访问方式,使用户能够在Web界面上部署探测任务,实现任务的可视化监控和追踪任务的实时状态,并能够通过URL的形式经API接入点调用相应的接口以实现探测。5.一种采用权利要求1所述方法的基于云的主动探测平台,其特征在于,包括:节点管理模块,负责对集群内的节点进行统一的管理;所述节点包括管理节点和工作节点,管理节点负责分配资源、分发任务、管理集群内的节点、监控任务的运行状态,工作节点负责运行探测任务;镜像管理模块,负责构建统一的私有镜像仓库,提供基本的增删改查镜像的管理功能,为镜像提供统一的存储和管理功能;任务管理模块,负责对探测任务进行统一的管理,定义批量任务创建、删除、更新的统一模板,以实现任务创建、更新、删除操作,同时对任务的运行状态实现可视化的监控;容器管理模块,负责对探测任务运行的容器的实时监控,并对容器进行管理和操作;任务调度模块,负责对探测任务进行调度;用户访问界面,负责提供Web用户界面和API两种用户访问方式。6.根据权利要求5所述的主动探测平台,其特征在于,所述节点管理模块包括以下子模块:...

【专利技术属性】
技术研发人员:苏马婧覃海湄彭怀梁戴琼童超东姜磊
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1