一种面向网络仿真器的大规模批量化数据采集方法、系统、设备及介质

文档序号:37055229发布日期:2024-02-20 20:59阅读:36来源:国知局
一种面向网络仿真器的大规模批量化数据采集方法、系统、设备及介质

本发明涉及数据采集,具体涉及一种面向网络仿真器的大规模批量化数据采集方法、系统、设备及介质。


背景技术:

1、近年来,随着通信技术的飞速发展,网络规模不断扩大,网络流量也呈现出骤增的趋势,这些变化使得网络环境更为复杂,增加了网络间的不确定性。在网络快速发展的趋势下,为真实网络建立准确的网络评估模型具有重要意义。目前使用最为广泛的网络仿真器是基于分组级事件的网络模拟器。军方、企业和大学所开发的各种网络仿真器(例如ns,ns2,ns3等)和网络模拟器(例如mininet,omnet++,opnet等)已不同程度应用于网络仿真性能评估。

2、ns网络仿真器起源于1989年美国军方的real network simulator项目,是最早的网络仿真器之一。现行常用的ns网络仿真器版本已更新至ns-2与ns-3,免费用于研究,开发,教育领域并且有相当广泛的wiki文档。由nist(national institute of standardsand technology),即美国国家标准与技术研究院开发的networkx也包含网络建模图形化前端的工具包,不过networkx并非专门针对计算机网络建模工具而是处理各种图形性设计和测试的软件。

3、在学术界,j-sim由俄亥俄州立大学研究小开发的基于java的网络仿真软件,由于java语言不存在内存泄露、误读等问题,所以稳定性明显优于ns2。opnet modeler作为美国opnet technology公司四大网络仿真系列产品之一,主要针对大型复杂网络仿真需要的网络设计专业人员而开发。j-sim缺少大型仿真的指导文档,用户进行复杂网络开发难以得到良好的支持。jist/swans最大的特点就是非常高效,相比于其他类型的仿真平台无论在速度还是内存消耗上都有优势,但是缺乏可视化支持,分析结果不便,学习成本较大。网络仿真软件qualnet是1986年麻省理工学院开发的,采用并行设计,可仿真上千个节点的大型无线网络,仿真速度真软件快百倍,支持与真实网络中的人、设备、软件进行实时通信。然而价格极其昂贵且不开源,目前主要用于大型商业公司和研究所相关技术人员。

4、基于离散事件的网络仿真器可提供细粒度的性能仿真的结果,具有一定的灵活性,但对于图神经网络领域中所需要的大规模数据样本,传统的网络仿真器无法实现大批量仿真,从而导致无法快速生成面向大规模随机网络场景的数据样本。

5、为了解决表示对象之间复杂关系的非欧氏域数据处理问题,图神经网络(graphneural network,gnn)被提出用于处理图结构数据,已广泛用于社交网络、知识图谱以及交通系统等领域。gnn能够更准确和灵活地对图中节点之间的依赖关系进行数据建模。计算机网络中的各种实体,例如转发节点、链路之间存在依赖关系,将gnn应用于计算机网络建模中,对网络中各种实体之间的依赖关系进行精准建模。但与其他深度学习模型一样,gnn模型的训练也需要大规模的数据集来提高其性能和泛化能力。在实际应用中,数据集的规模往往决定了模型的表现和效果。然而,在目前已经公开的数据采集方法中,大多方法在采集过程中仅保留了多类型流量在网络中的相关特征(时延,抖动)等,却缺乏相应的网络场景及相关配置信息数据,不利于gnn对网络场景进行训练。

6、现有的一些数据采集方法在数据采集过程中仅保留了多类型流量在网络中的相关特征(时延,抖动)等,却缺乏相应的网络场景及相关配置信息数据,然而对于基于ai的网络建模与性能评估模型而言,需要对网络中的各种功能如基础网络功能、流量发送功能等都进行建模与仿真,才能尽可能实现对网络场景的真实仿真。因此基于这种情况,传统的数据采集方法无法满足网络建模需要。

7、现有的网络仿真器中大多需要根据场景类型的不同,对模块进行定制化设计,如路由策略、调度策略等,因此需要在面向多种场景共同仿真的情况下,具有一定的局限性,无法快速根据网络场景的不同实现对应的网络仿真,无法实现大规模批量化的数据采样。

8、论文《routenet:leveraging graph neural networks for network modelingand optimization in sdn》中提供了使用omnet++模拟器进行数据采集的方法。在此数据采集方法中涉及到了不同输入拓扑、路由配置和流量模式的配置与仿真,每个数据样本中包含仿真产生的相关端到端关键性能指标的准确测量值。包含每个源/目标对数据包级延迟、抖动和丢失的统计信息。但该在采集过程中忽略了流量类型之间的差异,无法对真实网络中的差异化流量进行仿真,因此使用起来局限性较大,无法适用于多元化业务流量同时存在的网络场景。

9、公告为[cn114124470a],公开了一种网络流量元数据采集技术算法,包括以下步骤:s1、构建网络流量采集物理架构;s2、划分系统功能并定义类;s3、监测测网络流量信息并采集;s4、数据分片;s5、数据重组,将传输过程中分成的数据片段按原先顺序重新连接,并恢复至原先数据模样;s6、数据包发送,通过设置网络数据包过滤器,将数据包一些数据包过滤掉后再发往应用程序,同时统计网络通信过程中的信息;然而该采集方法仅关注了网络场景中的业务流量信息,忽略了网络场景中的基础网络配置,如路由策略、调度策略等,因此无法用于采集完备的网络数据,不适用于基于ai的网络仿真与性能建模。


技术实现思路

1、为了克服上述现有技术的缺点,本发明的目的在于提供一种面向网络仿真器的大规模批量化数据采集方法、系统、设备及介质,通过对网络场景中各组件的抽象模拟,将对应的网络场景拆解为不同的功能模块,在网络仿真器的基础上,实现根据不同场景自定义网络的功能,根据不同配置信息,快速生成大规模数据样本,为图神经网络领域模型训练提供数据支持,满足网络建模需求,能实现大规模化量化数据采集,可采集完备的网络数据,因此具有使用灵活、生成速度快、能真实反映网络的运行机制的特点。

2、为了实现上述目的,本发明采用的技术方案是:

3、一种面向网络仿真器的大规模批量化数据采集方法,包括以下步骤:

4、步骤1,根据网络场景中相关网络知识,构建网络配置模块,包括基础拓扑组件库与路由算法组件库;

5、步骤2,根据网络场景中的流量特征,从公开流量数据集中选取不同流量数据样本进行处理,构建流量生成模块,即流量组件库;

6、步骤3,根据不同网络场景特性,将步骤1构建的网络配置模块中的组件进行组合,选择符合网络场景特性的基础拓扑组件与路由算法组件,形成抽象网络描述,从步骤2构建的流量生成模块中挑选流量样本作为抽象网络中的流量输入,形成流量配置描述,将抽象网络描述与流量配置描述组合生成对应的场景描述文件;

7、步骤4,重复步骤3,快速生成大规模场景描述文件,构建场景描述模块,即场景描述组件库;

8、步骤5,在真实网络或者网络仿真器中,搭建自定义网络仿真模块与数据统计模块;

9、步骤6,在步骤5中搭建的自定义网络仿真模块上,对步骤4中的场景描述文件进行仿真,通过数据统计模块对指标进行统计,生成数据指标统计文件;

10、步骤7,对步骤4中的场景描述文件与步骤6生成的数据指标统计文件进行对应整合,得到面向不同网络场景的大规模数据样本集。

11、所述步骤1中的网络配置模块,为具体网络场景中所需要的基础拓扑组件库与路由算法组件库,负责对网络场景中基础的网络结构与转发功能进行设置规划,保障基本网络功能的实现;

12、基础拓扑组件库:主要包括节点信息与链路信息,其包含的基本特性描述如下:

13、节点信息:包含节点位置,端口数目,端口处的调度策略节点配置信息;

14、链路信息:包含链路源目的、链路丢包率、链路带宽、链路时延链路特性信息;

15、路由算法组件库:包括对整个网络拓扑中的路由转发逻辑的规划,以静态路由表的方式进行配置,根据不同的路由算法动态生成。

16、所述步骤2中的流量生成模块,根据目前网络公开的各类真实流量样本信息,进行特征清洗与泛化,将具有特定网络背景的流量数据集样本泛化为通用的流量数据集样本,在保留流量分布模式的同时,使其能够应用到多种网络场景中。

17、所述步骤3中的组合过程,是指根据步骤1中提供的网络配置模块与步骤2中提供的流量生成模块进行组合,生成模拟不同网络场景的网络特性描述文件。

18、所述步骤5的具体过程为:在真实网络或者网络仿真器中,实现根据网络结构与配置文件搭建相应的网络场景的功能,并在网络运行过程中进行流量样本的发送调度,使用数据统计模块对相应队列、发送模块信息进行统计;

19、自定义网络仿真模块包含5个子模块:网络配置模块、节点配置模块、流量处理模块、路由转发模块、队列调度模块:

20、网络配置模块:在网络配置模块中,进行基础的网络结构配置,如节点位置,节点调度策略,链路特征及对应连接链路连接,是整个网络仿真环境的基础配置;

21、节点配置模块:在节点配置模块中,实现了对网络场景中设备节点功能的仿真,在每个节点中添加流量处理模块、路由转发模块、队列调度模块,分别负责节点流量发送与处理、路由与调度功能;在仿真过程中,当数据包到达节点时,首先进入路由转发模块,根据预设的路由表选择合适的路径及输出端口,将数据包转发到输出端口对应的端口队列中,随后根据不同的队列调度策略,对数据包进行调度,最终转发到输出端口,将数据包发送出去,实现节点对数据包的转发;

22、流量处理模块:在流量处理模块中,负责两个功能:流量发送与接受消息处理;在仿真环境初始化阶段,各节点的流量处理模块进行流量发送设置,从提供的多类型混合流样本中选择源目的为自身的流量,根据配置的流量大小、业务类别、目的地相关特征,生成相应的离散数据包,按照发送时间为数据包设置仿真发送时间,等待所有节点完成流量发送设置后,仿真环境开始运行,根据仿真时间在对应时刻发送相应的数据包,进行流量重演,在重演过程中,对于接收到的数据包,流量处理模块对接收到的数据包进行处理,同时统计数据包信息,以便后续统计模块进行处理;

23、路由转发模块:在路由转发模块中,通过对配置的路由文件进行解析,生成各节点对应的路由表,存储到各个目的节点的转发端口,在仿真过程中根据生成的路由表进行相应转发;

24、队列调度模块:在队列调度模块中,为每个端口维护一个调度队列,在每个调度队列中分别维护一组队列,按照不同的调度算法对数据包进行调度,同时对队列状态进行统计;

25、数据统计模块:在数据统计模块中,负责对自定义网络仿真模块中统计的数据信息进行处理,获取全网性能指标以及队列状态并输出到数据统计文件中进行保存。

26、一种面向网络仿真器的大规模批量化数据采集系统,包括:

27、网络配置构建模块,用于根据网络场景中相关网络知识,构建网络配置模块;

28、流量生成构建模块,用于根据网络场景中的流量信息特征,从公开流量数据集中选取不同流量数据集样本进行处理,构建流量生成模块即流量组件库;

29、场景描述构建模块,用于根据不同网络场景特性,将构建的基础网络组件模块中的组件进行组合,选择符合网络场景特性的基础拓扑与路由算法,形成抽象网络描述,从流量生成模块中挑选流量样本作为抽象网络中的流量输入,形成流量配置描述。将抽象网络描述与流量配置描述组合生成对应的场景描述文件;重复上述步骤,快速生成大规模场景描述文件,构建场景描述模块即场景描述组件库;

30、自定义网络仿真模块与数据统计搭建模块,用于在真实网络或者网络仿真器中,搭建自定义网络仿真模块与数据统计模块;

31、数据指标统计文件生成模块,用于在搭建自定义网络仿真模块上,对场景描述文件进行仿真,通过数据统计模块对指标进行统计,生成数据指标统计文件;

32、数据样本集整合模块,用于对场景描述文件与生成的数据指标统计文件进行对应整合,得到面向不同网络场景的大规模数据样本集。

33、一种面向网络仿真器的大规模批量化数据采集设备,包括:

34、存储器:用于存储实现所述的一种面向网络仿真器的大规模批量化数据采集方法的计算机程序;

35、处理器:用于执行所述计算机程序时实现所述的一种面向网络仿真器的大规模批量化数据采集方法。

36、一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时能够实现所述的一种面向网络仿真器的大规模批量化数据采集方法。

37、相对于现有技术,本发明的有益效果在于:

38、1.本发明通过引入构建基础拓扑组件库、流量组件库等组件的方式,将网络场景功能拆分为网络配置与流量转发两部分,对不同部分采用模块化的方式实现了对不同组件的灵活拆分,可以通过不同场景需要进行自定义配置,应用范围更广,在网络配置部分引入了路由策略与调度策略,对网络行为模拟更加真实,更符合真实网络场景需要。

39、2.本发明在网络仿真器基础上,自定义网络功能模块,实现了节点配置模块、路由转发模块、队列调度模块等功能性模块,同时进行泛化性设计,通过可执行脚本的方式实现了根据场景描述文件快速对网络场景进行仿真的功能,与现有仿真技术相比,简化了开发流程,实现了网络仿真功能的快速配置与模拟,在此基础上实现了面向网络仿真器的大规模批量化数据采集方法。

40、3.本发明通过对网络功能如基础拓扑、路由策略、调度策略的模块化处理,将传统网络场景细分为网络配置模块与流量生成模块,在不同模块中对网络场景中的功能进行解构,分成不同组件库进行开发,便于根据不同网络场景进行灵活配置,此外,在传统网络仿真器的基础上,引入可配置文件进行描述不同场景的场景描述文件,实现根据场景描述文件快速仿真的功能,便于进行大规模、批量化的网络仿真模拟。

41、综上所述,本发明通过对网络场景中各组件的抽象模拟,将对应的网络场景拆解为不同的功能模块,在网络仿真器的基础上,实现根据不同场景自定义网络的功能,根据不同配置信息,快速生成大规模数据样本,为图神经网络领域模型训练提供数据支持,满足网络建模需求,能实现大规模化量化数据采集,可采集完备的网络数据,因此具有使用灵活、生成速度快、能真实反映网络的运行机制的特点。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1