CN114244725A - 业务驱动的网络流仿真方法和装置 - Google Patents
业务驱动的网络流仿真方法和装置 Download PDFInfo
- Publication number
- CN114244725A CN114244725A CN202111556160.0A CN202111556160A CN114244725A CN 114244725 A CN114244725 A CN 114244725A CN 202111556160 A CN202111556160 A CN 202111556160A CN 114244725 A CN114244725 A CN 114244725A
- Authority
- CN
- China
- Prior art keywords
- service
- address
- flow
- simulation
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 152
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012549 training Methods 0.000 claims abstract description 70
- 238000007781 pre-processing Methods 0.000 claims abstract description 12
- 239000013598 vector Substances 0.000 claims description 29
- 238000013528 artificial neural network Methods 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005315 distribution function Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- SLXKOJJOQWFEFD-UHFFFAOYSA-N 6-aminohexanoic acid Chemical compound NCCCCCC(O)=O SLXKOJJOQWFEFD-UHFFFAOYSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/906—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了业务驱动的网络流仿真方法和装置,该方法包括:对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合;利用第一IP地址集合与业务类型的关系训练地址矢量化模型,使每一符号型IP地址获得一一对应的数值型IP地址,得到第二IP地址集合;以所有第二IP地址集合及相应的分组属性作为数据样本,训练流量属性生成模型;对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,以获得与所述拟仿真业务流的业务类型对应的仿真业务流数据;本发明能够按照业务类型产生仿真流,使仿真流能够符合单一业务的流量特征,并可以用于复杂应用场景下多业务混合流量的定制化仿真、推演与预测。
Description
技术领域
本发明涉及网络流仿真技术领域,尤其涉及业务驱动的网络流仿真方法、装置。
背景技术
通信网络是现代社会的关键基础设施之一,它的主要任务是实现端到端的数据传输。深入研究数据通信网络的运行规律是发展新兴网络通信技术、解决通信瓶颈问题的关键手段。网络研究目前所面临的主要挑战在于两方面:首先,难以获取大规模实际网络的运行数据,因此无法掌握网络的实际运行动态及其潜在规律;其次,难以构建出与实际网络规模相仿的环境进行测试与评估。为此,网络仿真成为网络研究的一种有效手段,它通过计算机模拟实现任意结构的大规模网络拓扑,并根据实际网络流的统计特性模拟网络中传输的数据流。
现有技术的网络流仿真方法主要通过采集真实流量在仿真拓扑中进行重放,并非通过模拟的方式产生网络流,尽管现有网络流仿真方法简单易行,但缺乏灵活性。且现有网络流仿真技术主要的局限性在于:
第一、主要面向汇聚流的仿真,缺乏业务驱动的网络流仿真方案,因此难以模拟出各种不同业务流量在网络中传输的相互影响与作用,也难以研究多业务流场景下的网络设计与通信策略的优化方案;
第二、现有网络流仿真方法一般仅关注分组字节数以及分组速率,忽略仿真流的落点,一般采用的方法是固定落点或随机选择,从而导致仿真流在网络中的传输行为与真实业务场景存在较大差异,不利于研究面向业务的网络与流量优化方案。
发明内容
本发明的目的是提供业务驱动的网络流仿真方法、装置,能够按照业务类型产生仿真流,使仿真流能够符合单一业务的流量特征,并以业务类型的特点限定了仿真流的目标地址,使仿真流在网络中的传输能更准确反映各种类型的业务流特性,便于通过单一业务仿真流量产生各种成分结构的多业务种类的复杂汇聚流,以供模拟各种可能的极端场景、威胁场景以及高通量复杂业务场景等,并可以用于复杂应用场景下多业务混合流量的定制化仿真、推演与预测。
为了实现上有目的,本发明公开了一种业务驱动的网络流仿真方法,其包括如下步骤:
S1、对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址;
S2、利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,得到与第一IP地址集合一一对应的第二IP地址集合;
S3、对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本;
S4、以所有第二IP地址集合及相应的分组属性特征作为样本训练数据,训练流量属性生成模型;
S5、对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;
S6、对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
与现有技术相比,本发明能够按照业务类型产生仿真流,使仿真流能够符合单一业务的流量特征,并以业务类型限定了仿真流的目标地址,使仿真流在网络中的传输能更准确反映各种类型的业务流特性与走向,便于通过单一业务仿真流量产生各种成分结构的多业务种类的复杂汇聚流,以供模拟各种可能的极端场景、威胁场景以及高通量复杂业务场景等,从而可以用于复杂应用场景下多业务混合流量的定制化仿真、推演与预测;另外,本发明能够用于实际的网络运营管理及优化,例如可以用于了解新技术新业务的特性与影响、推演网络流的演化与发展趋势、预测网络性能的变化、用于通信网络的软硬件测试、威胁流量识别与检测等,可应用范围广。
较佳地,所述步骤S1具体包括:
S11、获取业务驱动的网络流的流量样本数据,所述流量样本数据包括多个符号型IP地址;
S12、对所述流量样本数据中的每一符号型IP地址进行业务属性提取;
S13、将具有相同业务属性的符号型IP地址构建为第一IP地址集合,以获得多个第一IP地址集合。
具体地,以主动式流量采集和/或被动式流量采集获取业务驱动的网络流的流量样本数据。
较佳地,所述步骤S2具体包括:
S21、对所有第一IP地址集合进行one-hot编码,以获得与每一符号型IP地址相对应的one-hot编码后IP地址;
S22、对IP对应的业务类型进行相同格式的one-hot编码,任意两one-hot编码后IP地址之间具有最大的码间距离;
S23、构建基于多层神经网络的矢量化模型;
S24、以one-hot编码后的所有第一IP地址集合以及相应的业务类型的one-hot编码作为样本训练数据,训练所述矢量化模型;
S25、对所述矢量化模型进行提取处理,以获得IP地址矢量化模型;
S26、对所述IP地址矢量化模型赋值任一one-hot编码后IP地址,以使当前one-hot编码后IP地址对应的符号型IP地址获得对应的数值型IP地址。
具体地,所述步骤S23具体包括:
a、随机选取任一one-hot编码后的第一IP地址集合作为样本训练数据;
b、从当前one-hot编码后的第一IP地址集合中随机选取K个one-hot编码后IP地址构成IP子集;
c、从所述IP子集中随机选取任一one-hot编码后IP地址作为矢量化模型的输入,将从所述IP子集中剩余的K-1个one-hot编码后IP地址作为矢量化模型的输出,训练所述矢量化模型;
d、重复步骤c,直至所述IP子集中的每一one-hot编码后IP地址均被作为矢量化模型的输入;
e、重复步骤b至步骤d,直至遍历当前one-hot编码后的第一IP地址集合中的所有one-hot编码后IP地址;
f、重复步骤a至步骤e,直至遍历所有one-hot编码后的第一IP地址集合。
较佳地,所述流量属性生成模型包括随机噪声生成器、分组属性生成器和判别器,所述随机噪声生成器用于根据输入的拟仿真业务的业务类型,生成相应业务类型的随机噪声序列;所述分组属性生成器由深度神经网络构成,所述分组属性生成器用于根据输入的随机噪声序列,生成仿真业务分组序列中的每一个分组的属性特征矢量值;所述判别器由深度神经网络构成,所述判别器用于根据每一个分组的属性特征矢量值判断对应分组是真实分组还是仿真分组。
具体地,以所有分组的属性特征矢量值作为样本训练数据训练所述判别器,以实现对所述流量属性生成模型的训练。
较佳地,所述步骤S5具体包括:
S51、提取所述流量属性生成模型中的随机噪声生成器和分组属性生成器,将所述随机噪声生成器和分组属性生成器作为所述业务流属性仿真模型。
较佳地,所述步骤S6具体包括:
S61、对所述业务流属性仿真模型赋值拟仿真业务流的业务类型;
S62、所述随机噪声生成器根据拟仿真业务流的业务类型,按照预设分布方式,生成拟仿真业务流的业务类型匹配的随机噪声序列;
S63、所述分组属性生成器根据所述随机噪声序列,生成拟仿真业务流对应分组序列中的每一个分组的属性特征矢量值。
相应地,本发明还公开了一种业务驱动的网络流仿真装置,其包括:
预处理单元,被配置为对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址;
矢量化单元,被配置为利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,得到与第一IP地址集合一一对应的第二IP地址集合;
拼接单元,被配置为对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本;
训练单元,被配置为以所有第二IP地址集合及相应的分组属性特征作为样本训练数据,训练流量属性生成模型;
提取单元,被配置为对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;
赋值单元,被配置为对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
相应地,本发明还公开了一种存储介质,用于存储计算机程序,所述程序被处理器执行时实现如上所述的业务驱动的网络流仿真方法。
附图说明
图1是本发明的业务驱动的网络流仿真方法的流程框图;
图2是本发明的业务驱动的网络流仿真方法的系统结构图;
图3是本发明的业务驱动的网络流仿真方法的IP分组属性与地址示意图;
图4是本发明的业务驱动的网络流仿真方法的地址与业务类型统一编码;
图5是本发明的IP地址矢量化;
图6是本发明的流量属性生成模型训练方法;
图7是本发明的业务驱动的网络流仿真装置的结构示意图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
请参阅图2所示,本实施例的业务驱动的网络流仿真方法由训练子系统与仿真子系统构成,其中,训练子系统的作用是利用样本训练数据获得网络流仿真模型的参数,其依次涉及数据预处理、IP地址矢量化、训练数据拼接以及流量属性生成模型训练几个环节。而训练子系统的输入是各种指定业务驱动下的网络流量样本,它的输出是流量属性生成模型的参数。
请参阅图1-图6所示,该业务驱动的网络流仿真方法包括如下步骤:
S1、对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址。
较佳地,所述步骤S1具体包括:
S11、获取业务驱动的网络流的流量样本数据,所述流量样本数据包括多个符号型IP地址。
由于业务驱动的流量样本采集,与常规的流量采集或仿真不同,而本实施例要解决的问题是业务驱动的网络流仿真系统。为了使仿真系统能够根据指定的业务类型产生与该类型属性匹配的仿真流量数据,需要获取各种指定业务流量的属性特征,从而可以依据这些属性特征产生仿真流。业务驱动的流量样本采集的作用是根据网络业务的类型建立相应的流量样本档案,便于后续的模型训练。样本采集的工具包括:TCPDUMP、Endace采集卡、分光器等。
具体实施方法包括两种方法:
第一种方法为主动式流量采集。在参与数据采集的用户端安装流量采集工具,使它可以捕获用户端的上下行网络流量。通过用户端主动访问指定类型的业务,从而使流量采集工具可以记录相应的网络流数据并保存。第一种方法的优点是采集到的数据包含噪声比较少,模型训练效果会比较好,但是它需要大量的用户参与和配合才能获取丰富的流量样本;
第二种方法为被动式流量采集。在汇聚链路安装流量采集工具,使它捕获汇聚链路上的多用户混合流量,再根据IP地址分离为各个不同用户的流量数据,最后通过第三方工具,例如:流量识别工具L7filter等,对各个用户的流量进行业务类型的标注。第二种方法的优点是不需要用户配合,因此部署和采集工作非常简单,但是它得到的数据包含大量噪声,而且依赖后期的加工处理,这些第三方工具也会产生数据噪声,因此会影响后续模型的性能。
根据拟仿真的流量业务类型集合S={1,2,…,|S|},利用上述流量样本采集方法,最终得到不同业务类型的网络流量样本,并保存在数据库中。
S12、对所述流量样本数据中的每一符号型IP地址进行业务属性提取。
IP业务属性提取的目的是把训练样本中每一个IP业务的属性按照特征的方式提取出来,例如:分组字节数、相邻分组时间间隔、源IP、源端口、目的IP、目的端口、传输层协议类型等。这个实施例中仅考虑三个最基本的要素:分组字节数、相邻分组时间间隔以及目的IP。其他的IP业务属性可以采用本实施例所阐述方法进行叠加。
令表示第i∈S种业务类型的第l个样本集合的业务特征矢量集合。如图3所示,其中代表中第j个业务的特征矢量,表示的第q∈[1,…,Q]个特征变量。这些IP业务属性特征将用于训练仿真流的属性模型,使它们能够按照每一种业务类型的业务特征生成相应的业务属性。
S13、将具有相同业务属性的符号型IP地址构建为第一IP地址集合,以获得多个第一IP地址集合。
构建第一IP地址集合的目的是对用户访问同一类业务时所涉及的目的IP地址进行归并,从而构成IP地址的矢量化模型的训练数据。基于上述步骤S12,令表示第i∈S种业务类型的第l个样本集合中的目的IP集合,其中表示的第j个目的IP地址。
S2、利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,得到与第一IP地址集合一一对应的第二IP地址集合。
较佳地,所述步骤S2具体包括:
S21、对所有第一IP地址集合进行one-hot编码,以获得与每一符号型IP地址相对应的one-hot编码后IP地址,每一one-hot编码后IP地址和业务类型具有相同格式的二进制表达,且任意两one-hot编码后IP地址之间具有最大的码间距离。
S22、对IP对应的业务类型进行相同格式的one-hot编码,任意两one-hot编码后IP地址之间具有最大的码间距离。
可以理解的是,本步骤是对全部第一IP地址集合进行one-hot编码。one-hot编码的方法是定义一个二进制比特串B,B的长度为样本中所有IP地址的个数加上仿真业务的种类个数。如图4所示,B的左侧为IP编码段,用于分配给IP编码,B的右侧为仿真业务类型编码段,用于业务类型编码。每一个IP地址或业务类型的编码为在B中一个固定位置的比特位置“1”,其余比特位全部置“0”。为每一个IP地址确定它在B中的比特位可以采用随机选择方法,或按IP排序的方法。经过one-hot编码后,IP地址和业务类型采用相同格式的二进制串来表达,并且两两之间具有最大的码间距离。
S23、构建基于多层神经网络的矢量化模型。
如图5所示,本步骤采用的模型为多层神经网络,输入层包含M个神经元用于接收IP地址的one-hot编码,M等于二进制串B的长度。隐藏层用于对IP地址的one-hot编码进行压缩及矢量化,维度为D。输出层包含K个单元,图5中右侧的(K-1)个单元用于表示与输入端的IP并发出现的K-1个地址,这K-1个地址不一定是与输入端IP并发出现的地址全集,当窗口中唯一IP个数大于指定的K时,这K个地址为这些地址中随机选择的一个子集。图5中左侧末端的单元表示输入端IP所提供数据业务的类型标注,也是one-hot编码。在输出端左侧的业务类型标注主要用于把相同业务类型所涉及的并发IP聚集到相似的矢量空间中,在业务类型这个语义上实现IP的数值化聚类。
S24、以one-hot编码后的所有第一IP地址集合作为样本训练数据,训练所述矢量化模型。
具体地,所述步骤S23具体包括:
a、随机选取任一one-hot编码后的第一IP地址集合以及相应的业务类型的one-hot编码作为样本训练数据。
b、从当前one-hot编码后的第一IP地址集合中随机选取K个one-hot编码后IP地址构成IP子集。
c、从所述IP子集中随机选取任一one-hot编码后IP地址作为矢量化模型的输入,将从所述IP子集中剩余的K-1个one-hot编码后IP地址作为矢量化模型的输出,训练所述矢量化模型。
具体地,从这K个IP中随机选择一个作为IP矢量化模型的输入,剩余的K-1个作为输出层最右侧的K-1单元,这组IP地址所对应的业务类型的one-hot编码作为输出层最左侧的单元,用于指导IP矢量化模型的训练学习。
d、重复步骤c,直至所述IP子集中的每一one-hot编码后IP地址均被作为矢量化模型的输入。
本步骤的目的是使这K个IP地址均能够被用于输入层训练模型。
e、重复步骤b至步骤d,直至遍历当前one-hot编码后的第一IP地址集合中的所有one-hot编码后IP地址。
f、重复步骤a至步骤e,直至遍历所有one-hot编码后的第一IP地址集合。
本步骤的目的是更换样本集合l,重复步骤a至步骤e,以使得所有第一IP地址集合均被用于训练模型。
S25、对所述矢量化模型进行提取处理,以获得IP地址矢量化模型。
完成训练后,把图5中顶部的虚线框部分分割出来,也就是图5右上角部分,隐藏层的输出就是IP地址的矢量化数值。
S26、对所述IP地址矢量化模型赋值任一one-hot编码后IP地址,以使当前one-hot编码后IP地址对应的符号型IP地址获得对应的数值型IP地址。
基于上述步骤得到IP地址矢量化模型,把任意一个目的IP地址的one-hot编码输入到模型的输入层,可以得到一个相应的数值矢量,这个数值矢量就是与IP地址相对应的数值矢量映射结果。
S3、对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本。
以三个最基本的分组要素为例:分组字节数、相邻分组时间间隔以及目的IP。在经过数据预处理后,令表示第i∈S种业务类型的第l个样本集合的分组特征矢量集合。其中代表中第j个分组的特征矢量,代表分组字节数,代表相邻分组时间间隔,代表分组的目的IP地址。把经过one-hot编码后输入IP矢量化模型,得到它相应的矢量表达,适用这个矢量表达替换中原有的数据拼接之后的输出,用于模型训练的分组特征属性全部转换为数值型变量,便于后续的流量属性模型训练。
S4、以所有第二IP地址集合及相应的分组属性作为样本训练数据,训练流量属性生成模型。
较佳地,所述流量属性生成模型包括随机噪声生成器、分组属性生成器和判别器,所述随机噪声生成器用于根据输入的拟仿真业务的业务类型,生成相应业务类型的随机噪声序列;所述分组属性生成器由深度神经网络构成,所述分组属性生成器用于根据输入的随机噪声序列,生成仿真业务分组序列中的每一个分组的属性特征矢量值;所述判别器由深度神经网络构成,所述判别器用于根据每一个分组的属性特征矢量值判断对应分组是真实分组还是仿真分组。
具体地,以所有分组的属性特征矢量值作为样本训练数据训练所述判别器,以实现对所述流量属性生成模型的训练。
流量属性生成模型训练采用生成对抗的方法来训练生成器,使它能够根据不同业务对应的随机噪声生成符合相应真实流量特性的仿真分组属性。如图6所示,它包括三个子模块:随机噪声生成器、分组属性生成器和判别器。具体实施方法如下:
a、假设拟仿真的业务流量共有|S|种不同的类型。每一种业务类型对应一种特定分布的随机噪声,例如:N(μi,σi)代表第i种类型业务的随机噪声分布函数,它是均值为μi、方差为的高斯分布函数。随机噪声生成器根据输入的拟仿真业务的ID,生成相应的随机噪声序列ni。
b、随机噪声序列ni输入分组属性生成器,它输出仿真分组序列中每一个分组的属性特征值,例如:分组字节数、相邻分组时间间隔、目的IP的矢量值。分组属性生成器由深度神经网络构成。它包括三部分:输入层、隐藏层与输出层。输入层的神经元节点数与随机噪声序列ni的长度相同,隐藏层由全连接的神经网络构成,隐藏层的层数与节点数由常规的神经网络经验方法得到。输出层包含U×V个单元,其中U代表一个仿真序列中包含IP分组的个数,它由仿真用户根据具体的需要决定;V代表每一个分组的仿真属性数量,例如:这个实施例仅考虑三种基本分组属性(分组字节数、相邻分组时间间隔、目的IP地址),则V=3。
c、分组属性生成器产生的仿真分组属性值首先被用于训练判别器。判别器的实质是一个二分类器。在训练阶段,接收1个输入,真实分组的属性或仿真分组的属性。判别器把真实分组的属性判别为“0”,把仿真分组的属性判别为“1”。为实现分类,本实施例采用深度神经网络构成判别器。通过反复的有监督学习,使判别器能正确区分输入的分组属性是真实(“0”)或者是仿真的(“1”)。
d、把训练好的判别器参数传递给实时判别的模块,用于判断由生成器产生的分组属性序列的类别(也就是“0”或者“1“)。判断误差被反馈回生成器,用于调整分组属性生成器的神经网络参数,参数调整可以采用后向传播方法实现。
e、在有足够多的训练样本的条件下,重复(a)-(d)可以不断提升生成器的性能。当生成器产生的仿真分组属性序列输入判别器后,判别器难以正确区分它们的类别时,也就是正确判断与错误判断的概率接近50%,说明生成器产生的数据已经逼近真实分组的属性值。
S5、对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型。
较佳地,所述步骤S5具体包括:
S51、提取所述流量属性生成模型中的随机噪声生成器和分组属性生成器,将所述随机噪声生成器和分组属性生成器作为所述业务流属性仿真模型。
可以理解的是,业务驱动的数据流属性仿真模型的作用是根据指定的业务类型,生成相应的分组流的属性特征,使这些分组流的属性特征符合指定业务类型真实流的统计规律。它由训练子系统中流量属性模型训练的部分子模块组成,也就是图6中虚线框部分,即其包括随机噪声生成器和分组属性生成器。它的实现方法如下:
a、在完成训练子系统的流量属性生成模型训练之后,把其中图6的虚线部分切割出来作为业务驱动的数据流属性仿真模型,也就是图6中底部部分。
b、根据仿真用户指定的拟仿真流所属的业务类型,随机噪声生成器按照指定的分布,例如采用高斯分布产生与业务类型匹配的随机噪声。
c、在随机噪声的激励下,分组属性生成器根据训练得到的模型参数输出一系列仿真分组的属性。假设分组属性生成器每次生成L个分组的属性特征矢量,且每个分组的属性特征矢量仅包含三个元素:分组字节数、相邻分组的时间间隔、目的IP的矢量。则分组属性生成器将具有L个输出单元,每个单元对应一个仿真分组的属性特征矢量,每个输出单元包含3个输出元素,分别对应分组字节数、相邻分组的时间间隔、目的IP的矢量。
S6、对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
较佳地,所述步骤S6具体包括:
S61、对所述业务流属性仿真模型赋值拟仿真业务流的业务类型;
S62、所述随机噪声生成器根据拟仿真业务流的业务类型,按照预设分布方式,生成拟仿真业务流的业务类型匹配的随机噪声序列;
S63、所述分组属性生成器根据所述随机噪声序列,生成拟仿真业务流对应分组序列中的每一个分组的属性特征矢量值。
分组生成器的作用是利用上述步骤得到的L个仿真分组的属性特征,逐一生成相应的IP分组。也就是利用仿真分组属性特征来“制造”或“配置”出相应的分组,从而使仿真分组的3个基本属性(分组字节数、相邻分组的时间间隔、目的IP的矢量)符合真实业务流数据的统计特征。
综上,本实施例的整个业务流的仿真过程,只需要在业务流属性仿真模型输入拟仿真业务流的业务类型就可以,剩余的由仿真子系统自行完成。由于不同业务的分组属性特征都可以通过统一的模型来实现。因此,本实施例构造的系统非常简洁,而且不需要人工干预。
请参阅图7所示,相应地,本发明还公开了一种业务驱动的网络流仿真装置,其包括:
预处理单元10,被配置为对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址;
矢量化单元20,被配置为利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,得到与第一IP地址集合一一对应的第二IP地址集合;
拼接单元30,被配置为对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本;
训练单元40,被配置为以所有第二IP地址集合及相应的分组属性特征作为样本训练数据,训练流量属性生成模型;
提取单元50,被配置为对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;
赋值单元60,被配置为对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
相应地,本发明还公开了一种存储介质,用于存储计算机程序,所述程序被处理器执行时实现如上所述的业务驱动的网络流仿真方法。
结合图1-图7,本发明能够按照业务类型产生仿真流,使仿真流能够符合单一业务的流量特征,并以业务类型限定了仿真流的目标地址,使仿真流在网络中的传输能更准确反映各种类型的业务流特性,便于通过单一业务仿真流量产生各种成分结构的多业务种类的复杂汇聚流,以供模拟各种可能的极端场景、威胁场景以及高通量复杂业务场景等;另外,本发明能够用于实际的网络运营管理及优化,例如可以用于了解新技术新业务的特性与影响、推演网络流的演化与发展趋势、预测网络性能的变化、用于通信网络的软硬件测试、威胁流量识别与检测等,可应用范围广。
对于上述具体实施例的补充说明如下:
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明技术,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM:Read Only Memory)、随机存取存储器(RAM:Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种业务驱动的网络流仿真方法,其特征在于,包括如下步骤:
对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址;
利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,得到与第一IP地址集合一一对应的第二IP地址集合;
对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本;
以所有第二IP地址集合及相应的分组属性特征作为样本训练数据,训练流量属性生成模型;
对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;
对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
2.如权利要求1所述的业务驱动的网络流仿真方法,其特征在于,所述对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址,具体包括:
获取业务驱动的网络流的流量样本数据,所述流量样本数据包括多个符号型IP地址;
对所述流量样本数据中的每一符号型IP地址进行业务属性提取;
将具有相同业务属性的符号型IP地址构建为第一IP地址集合,以获得多个第一IP地址集合。
3.如权利要求2所述的业务驱动的网络流仿真方法,其特征在于,以主动式流量采集和/或被动式流量采集获取业务驱动的网络流的流量样本数据。
4.如权利要求1所述的业务驱动的网络流仿真方法,其特征在于,所述利用第一IP地址与业务类型的关系训练地址矢量化模型,实现符号型IP地址向数值型IP地址的转换,具体包括:
对所有第一IP地址集合进行one-hot编码,以获得与每一符号型IP地址相对应的one-hot编码后IP地址;
对IP对应的业务类型进行相同格式的one-hot编码,任意两one-hot编码后IP地址之间具有最大的码间距离;
构建基于多层神经网络的矢量化模型;
以one-hot编码后的所有第一IP地址集合以及相应的业务类型的one-hot编码作为样本训练数据,训练所述矢量化模型;
对所述矢量化模型进行提取处理,以获得IP地址矢量化模型;
对所述IP地址矢量化模型赋值任一one-hot编码后IP地址,以使当前one-hot编码后IP地址对应的符号型IP地址获得对应的数值型IP地址。
5.如权利要求4所述的业务驱动的网络流仿真方法,其特征在于,所述以one-hot编码后的所有第一IP地址集合作为样本训练数据,训练所述矢量化模型,具体包括:
a、随机选取任一one-hot编码后的第一IP地址集合作为样本训练数据;
b、从当前one-hot编码后的第一IP地址集合中随机选取K个one-hot编码后IP地址构成IP子集;
c、从所述IP子集中随机选取任一one-hot编码后IP地址作为矢量化模型的输入,将从所述IP子集中剩余的K-1个one-hot编码后IP地址作为矢量化模型的输出,训练所述矢量化模型;
d、重复步骤c,直至所述IP子集中的每一one-hot编码后IP地址均被作为矢量化模型的输入;
e、重复步骤b至步骤d,直至遍历当前one-hot编码后的第一IP地址集合中的所有one-hot编码后IP地址;
f、重复步骤a至步骤e,直至遍历所有one-hot编码后的第一IP地址集合。
6.如权利要求1所述的业务驱动的网络流仿真方法,其特征在于,所述流量属性生成模型包括随机噪声生成器、分组属性生成器和判别器,所述随机噪声生成器用于根据输入的拟仿真业务的业务类型,生成相应业务类型的随机噪声序列;所述分组属性生成器由深度神经网络构成,所述分组属性生成器用于根据输入的随机噪声序列,生成仿真业务分组序列中的每一个分组的属性特征矢量值;所述判别器由深度神经网络构成,所述判别器用于根据每一个分组的属性特征矢量值判断对应分组是真实分组还是仿真分组。
7.如权利要求6所述的业务驱动的网络流仿真方法,其特征在于,以所有分组的属性特征矢量值作为样本训练数据训练所述判别器,以实现对所述流量属性生成模型的训练。
8.如权利要求6所述的业务驱动的网络流仿真方法,其特征在于,所述对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型,具体包括:
提取所述流量属性生成模型中的随机噪声生成器和分组属性生成器,将所述随机噪声生成器和分组属性生成器作为所述业务流属性仿真模型。
9.如权利要求6所述的业务驱动的网络流仿真方法,其特征在于,所述对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据,具体包括:
对所述业务流属性仿真模型赋值拟仿真业务流的业务类型;
所述随机噪声生成器根据拟仿真业务流的业务类型,按照预设分布方式,生成拟仿真业务流的业务类型匹配的随机噪声序列;
所述分组属性生成器根据所述随机噪声序列,生成拟仿真业务流对应分组序列中的每一个分组的属性特征矢量值。
10.一种业务驱动的网络流仿真装置,其特征在于,包括:
预处理单元,被配置为对业务驱动的网络流的流量样本数据进行预处理,以获得多个第一IP地址集合,不同第一IP地址集合具有不同的业务属性,所述第一IP地址集合包括多个符号型IP地址;
矢量化单元,被配置为对每一符号型IP地址进行矢量化处理,所述矢量化方式包括地址矢量化模型训练以及矢量化转换,以使每一符号型IP地址获得对应的数值型IP地址,获得与第一IP地址集合一一对应的第二IP地址集合;
拼接单元,被配置为对第二IP地址集合以及相应的分组属性特征进行拼接,得到后续进行业务仿真流模型训练的数据样本;
训练单元,被配置为以所有第二IP地址集合及相应的分组属性特征作为样本训练数据,训练流量属性生成模型;
提取单元,被配置为对所述流量属性生成模型进行提取处理,以获得业务流属性仿真模型;
赋值单元,被配置为对所述业务流属性仿真模型赋值拟仿真业务流的业务类型,通过所述业务流属性仿真模型仿真获得与所述拟仿真业务流的业务类型对应的仿真业务流数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111556160.0A CN114244725B (zh) | 2021-12-17 | 2021-12-17 | 业务驱动的网络流仿真方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111556160.0A CN114244725B (zh) | 2021-12-17 | 2021-12-17 | 业务驱动的网络流仿真方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114244725A true CN114244725A (zh) | 2022-03-25 |
CN114244725B CN114244725B (zh) | 2023-07-04 |
Family
ID=80758664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111556160.0A Active CN114244725B (zh) | 2021-12-17 | 2021-12-17 | 业务驱动的网络流仿真方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114244725B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108075928A (zh) * | 2017-12-15 | 2018-05-25 | 中盈优创资讯科技有限公司 | 网络流量通用仿真模型及方法 |
-
2021
- 2021-12-17 CN CN202111556160.0A patent/CN114244725B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108075928A (zh) * | 2017-12-15 | 2018-05-25 | 中盈优创资讯科技有限公司 | 网络流量通用仿真模型及方法 |
Non-Patent Citations (1)
Title |
---|
刘倩玉;叶春明;: "基于两层结构的网络流量建模与仿真", 皖西学院学报, no. 02 * |
Also Published As
Publication number | Publication date |
---|---|
CN114244725B (zh) | 2023-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Machine learning for networking: Workflow, advances and opportunities | |
Gómez et al. | Ensemble network traffic classification: Algorithm comparison and novel ensemble scheme proposal | |
Balakrishnan et al. | Diverse client selection for federated learning via submodular maximization | |
Alshammari et al. | Identification of VoIP encrypted traffic using a machine learning approach | |
CN109284606A (zh) | 基于经验特征与卷积神经网络的数据流异常检测系统 | |
CN108768986A (zh) | 一种加密流量分类方法及服务器、计算机可读存储介质 | |
Vinayakumar et al. | Secure shell (ssh) traffic analysis with flow based features using shallow and deep networks | |
CN110362663A (zh) | 自适应多感知相似度检测和解析 | |
CN115277086B (zh) | 基于生成对抗网络的网络背景流量生成方法 | |
CN114826776B (zh) | 一种用于加密恶意流量的弱监督检测方法及系统 | |
Obasi | Encrypted network traffic classification using ensemble learning techniques | |
Su et al. | Cross-domain recommendation via adversarial adaptation | |
Li et al. | Symbolic expression transformer: A computer vision approach for symbolic regression | |
Banihashemi et al. | Encrypted network traffic classification using deep learning method | |
Chen et al. | RIDE: Real-time Intrusion Detection via Explainable Machine Learning Implemented in a Memristor Hardware Architecture | |
CN114244725B (zh) | 业务驱动的网络流仿真方法和装置 | |
Raghavjee et al. | A study of genetic algorithms to solve the school timetabling problem | |
CN112598089A (zh) | 图像样本的筛选方法、装置、设备及介质 | |
JP2022521174A (ja) | センサ入力信号からのコグニティブ・クエリへの応答 | |
Acosta et al. | Predicting city safety perception based on visual image content | |
Murić et al. | Massive cross-platform simulations of online social networks | |
CN116304089A (zh) | 一种融合权重与时态信息的知识图谱补全方法 | |
CN113542271B (zh) | 基于生成对抗网络gan的网络背景流量生成方法 | |
CN115641088A (zh) | 一种融合量子计算的审批策略组合获取方法、设备、介质 | |
CN115168864A (zh) | 一种基于特征交叉的智能交叉合约漏洞检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |