CN109921947B - 一种网络流量仿真方法、装置、设备及网络设备测试系统 - Google Patents
一种网络流量仿真方法、装置、设备及网络设备测试系统 Download PDFInfo
- Publication number
- CN109921947B CN109921947B CN201910233253.6A CN201910233253A CN109921947B CN 109921947 B CN109921947 B CN 109921947B CN 201910233253 A CN201910233253 A CN 201910233253A CN 109921947 B CN109921947 B CN 109921947B
- Authority
- CN
- China
- Prior art keywords
- scene
- network
- simulation
- data packet
- association rule
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开一种网络流量仿真方法、装置、设备及网络设备测试系统,该方法包括:接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;通过第一网卡发送所述网络数据包。本申请利用场景关联规则对真实流量场景进行定义,通过对场景关联规则的仿真能够实现对真实流量场景的还原。
Description
技术领域
本申请涉及数据处理领域,具体涉及一种网络流量仿真方法、装置、设备及网络设备测试系统。
背景技术
网络流量仿真技术通过构造可控、可重现网络状态的虚拟网络环境进行网络流量行为仿真,从而获得网络设计和优化所需的网络特性参数。网络流量仿真方法是一种对网络流量行为进行模拟的方法,通过网络流量仿真方法模拟现实中的网络流量行为,能够对网络设备进行测试,及时发现网络设备的问题,为网络设备的研发及运维提供了有效帮助。
随着网络技术的不断发展,各种新的网络协议、网络算法、网络应用等层出不穷,网络互联、无线接入和多种协议等技术也使得网络环境日趋复杂。另外,基于网络本身的不可控、易变和不可预测等特性,使得对于现实中网络流量行为的模拟也非常困难。
目前,网络流量仿真方法主要以模拟出某一条或某几条网络协议,对网络设备的基础数据流量进行测试为主。例如,模拟UDP协议以测试网络设备的UDP协议的数据吞吐量、数据包延迟等参数。也就是说,现有的网络流量仿真方法无法全面仿真网络中的真实流量场景。
发明内容
有鉴于此,本申请提供了一种网络流量仿真方法、装置、设备及网络设备测试系统,能够更全面的仿真网络中的真实流量场景,并得到更准确的网络设备测试结果。
第一方面,为实现上述发明目的,本申请提供了一种网络流量仿真方法,所述方法包括:
接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;
获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;
按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
通过第一网卡发送所述网络数据包。
一种可选的实施方式中,所述方法还包括:
通过第二网卡接收网络数据包,并对所述网络数据包进行逐层解析,得到应用数据。
一种可选的实施方式中,所述场景关联规则还包括相邻顺序的应用层协议之间的时间参数;所述方法还包括:
对所述场景关联规则中相邻顺序的应用层协议之间的时间参数进行仿真。
一种可选的实施方式中,所述按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包,包括:
按照所述预设顺序关系,获取所述场景关联规则中的各个应用层协议中的应用数据,并对所述应用数据进行应用层协议封装,得到封装后的应用层协议数据包;
对所述应用层协议数据包进行传输层协议封装,得到封装后的传输层协议数据包;
对所述传输层协议数据包进行网络层协议封装,得到封装后的网络层协议数据包,作为网络数据包。
一种可选的实施方式中,所述各仿真参数包括并发连接数、每秒新建连接数、每秒包数、流量和/或应用构成,所述场景关联规则还包括各仿真参数的取值;
所述能够满足所述各仿真参数的目标值的场景关联规则,包括:
对应的仿真参数的取值之和不小于所述仿真参数的目标值的场景关联规则。
第二方面,本申请还提供了一种网络流量仿真装置,所述装置包括:
第一接收模块,用于接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;
获取模块,用于获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;
第一仿真模块,用于按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
发送模块,用于通过第一网卡发送所述网络数据包。
一种可选的实施方式中,所述装置还包括:
第二接收模块,用于通过第二网卡接收网络数据包;
解析模块,用于对所述网络数据包进行逐层解析,得到应用数据。
一种可选的实施方式中,所述场景关联规则还包括相邻顺序的应用层协议之间的时间参数;所述装置还包括:
第二仿真模块,用于对所述场景关联规则中相邻顺序的应用层协议之间的时间参数进行仿真。
一种可选的实施方式中,所述应用层协议携带应用数据;所述第一仿真模块,包括:
第一仿真子模块,用于按照所述预设顺序关系,获取所述场景关联规则中的各个应用层协议中的应用数据,并对所述应用数据进行应用层协议封装,得到封装后的应用层协议数据包;
第二仿真子模块,用于对所述应用层协议数据包进行传输层协议封装,得到封装后的传输层协议数据包;
第三仿真子模块,用于对所述传输层协议数据包进行网络层协议封装,得到封装后的网络层协议数据包,作为网络数据包。
一种可选的实施方式中,所述各仿真参数包括并发连接数、每秒新建连接数、每秒包数、流量和\或应用构成;
所述能够满足所述各仿真参数的目标值的场景关联规则,包括:
对应的仿真参数的取值之和不小于所述仿真参数的目标值的场景关联规则。
第三方面,本申请还提供了一种网络设备测试系统,所述系统包括网络流量仿真装置、第一网卡和第二网卡;所述网络流量仿真装置为上述权利要求中任一项所述的装置;
所述第一网卡,用于将来自所述网络流量仿真装置的网络数据包发送至待测网络设备;
所述第二网卡,用于接收来自所述待测网络设备的网络数据包。
第四方面,本申请还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述任一项所述的网络流量仿真方法。
第五方面,本申请还提供了一种网络流量仿真设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述任一项所述的网络流量仿真方法。
本申请提供的网络流量仿真方法中,首先接收场景仿真需求,其次,基于场景仿真需求获取场景关联规则,并根据场景关联规则中的预设顺序关系,依次对各个应用层协议进行仿真,得到网络数据包,并通过第一网卡发出。本申请利用场景关联规则对真实流量场景进行定义,通过对场景关联规则的仿真实现对真实流量场景的还原,与现有技术中仅模拟网络设备的基础网络协议相比,本申请能够对网络设备的各种真实流量场景进行还原,实现更全面的仿真。
进一步的,由于本申请能够对网络设备的真实流量场景进行更全面的仿真,所以,基于更全面的仿真结果对网络设备进行测试,能够得到更准确的测试结果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种网络流量仿真方法流程图;
图2为本申请实施例提供的一种网络设备测试方法流程图;
图3为本申请实施例提供的一种网络流量仿真装置的结构示意图;
图4为本申请实施例提供的一种网络设备测试系统的结构示意图;
图5为本申请实施例提供的一种网络流量仿真设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的研究背景进行简单说明。
为了实现全面仿真网络中的真实流量场景,本申请提供了一种网络流量仿真方法,预先存储具有场景标识的场景关联规则,利用各个场景关联规则对各个真实流量场景进行定义,通过对各个场景关联规则的仿真实现对网络中真实流量场景的仿真。与现有技术中仅模拟网络设备的基础网络协议相比,本申请能够对网络设备的各种真实流量场景进行还原,实现更全面的仿真。
方法实施例
本申请提供了一种网络流量仿真方法,参考图1,为本申请实施例提供的一种网络流量仿真方法流程图,具体的,该方法包括:
S101:接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值。
本申请实施例中,场景仿真需求用于表明用户对网络中的真实流量场景的仿真需求。具体的,场景仿真需求携带场景标识和各仿真参数的目标值。其中,场景标识用于唯一标识真实流量场景,且与场景关联规则具有对应关系。当需要对任一真实流量场景进行仿真时,将该真实流量场景的场景标识添加至场景仿真需求,以便根据场景仿真需求中的场景标识确定对应的场景关联规则。
另外,各仿真参数可以包括并发连接数、每秒新建连接数、每秒包数、流量和/或应用构成等,各个场景关联规则具有各自的仿真参数,用于表明该场景关联规则的仿真能力,如该场景关联规则的每秒新建连接数为10次。实际应用中,在场景仿真需求中表明各个仿真参数的目标值,即在仿真的真实流量场景中需要达到的目标值,例如,如果要求在真实流量场景中每秒新建连接数需要达到10万次,则可以在该真实流量场景的场景仿真需求中设置每秒新建连接数的目标值为10万次。
S102:获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议。
本申请实施例中,预先存储场景标识与场景关联规则的对应关系,以便根据场景标识获取对应的场景关联规则,场景标识对应的场景关联规则用于对该场景标识对应的真实流量场景进行定义。具体的,场景关联规则利用真实流量场景中用到的应用层协议对该真实流量场景进行定义。以下载安装程序的场景为例,在实际的下载安装程序的场景中,客户端用户首先进行搜索引擎访问,然后根据返回的结果确定下载程序的相关网站,进而访问该网站提供的地址实现程序的下载和安装,在整个下载安装程序的过程中,客户端依次利用到了以下应用层协议,即DNS协议、HTTP协议、FTP协议,所以,场景关联规则可以通过DNS协议>HTTP协议>FTP协议定义上述下载安装程序的场景。
另外,场景关联规则中各个应用层协议之间的预设顺序关系,即为各个应用层协议在真实流量场景中的执行顺序。场景关联规则的场景标识用于唯一标识该场景关联规则。
由于真实流量场景中用户操作界面等行为也会占用时间,所以,为了更真实的对流量场景进行仿真,本申请实施例中的场景关联规则在相邻顺序的应用层协议之间还设置有时间参数,通过对时间参数进行仿真,实现对真实流量场景更真实的还原。例如,在对某一条场景关联规则进行仿真时,对时间参数的前一条应用层协议完成仿真后,暂停一段时间(该时间参数对应的时间段)以模仿用户操作界面的行为,然后再对该时间参数的后一条应用层协议进行仿真。
实际应用中,场景关联规则可以预先由专业人员进行设置,也可以通过系统自动获取。例如,在上述下载安装程序的执行过程中,系统可以自动获取系统利用到的相关应用层协议,以及用户操作界面的时间等,并按照相应的执行顺序对其进行存储,得到对应的场景关联规则。
实际应用中,可以通过对多条场景关联规则的并发仿真满足场景仿真需求中的各仿真参数的目标值。也就是说,对多条场景关联规则同时进行仿真,例如,为了实现对大量客户端用户同时下载安装程序的真实流量场景进行仿真,本申请实施例可以通过对该真实流量场景的场景标识对应的场景关联规则进行多条同时仿真,以还原上述真实流量场景。一种实施方式中,各条场景关联规则中还可以包括各个仿真参数的取值,具体的,各个仿真参数的取值可以通过单独对该条场景关联规则进行仿真得到。在对场景关联规则进行仿真之前,本申请实施例可以预先根据场景关联规则中各个仿真参数的取值,预先获取与场景标识具有对应关系且能够满足各仿真参数的目标值的场景关联规则。另一种实施方式中,可以动态获取与场景标识具有对应关系且能够满足各仿真参数的目标值的场景关联规则。也就是说,通过不断地增加场景关联规则的并发仿真个数,获取各个仿真参数的实时取值,从而获得能够满足各个仿真参数的目标值的场景关联规则。具体的,能够满足各仿真参数的目标值的场景关联规则可以为:对应的仿真参数的取值之和不小于该仿真参数的目标值的场景关联规则。例如上述下载安装程序的场景中,可以通过并发仿真多条DNS协议>HTTP协议>FTP协议定义的场景关联规则,实现大量客户端同时下载安装程序的真实流量场景仿真。例如,该真实流量场景需要达到每秒新建连接数10万次,则场景仿真需求携带的各仿真参数的目标值包括每秒新建连接数10万次,而如果一条DNS协议>HTTP协议>FTP协议定义的场景关联规则每秒新建连接数10次,则需要同时对至少1万条DNS协议>HTTP协议>FTP协议定义的场景关联规则进行仿真,以达到每秒新建连接数10万次的真实流量场景仿真需求。
S103:按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包。
本申请实施例中,在接收到场景仿真需求后,获取该场景仿真需求中的场景标识和各仿真参数的目标值,并预先存储的场景关联规则中获取具有该场景标识且能够满足各仿真参数的目标值的场景关联规则,利用获取到的场景关联规则对真实流量场景进行仿真。
实际应用中,对真实流量场景进行仿真,即是对该真实流量场景对应的场景关联规则中的具有预设顺序关系的应用层协议进行仿真,从而依次得到各个应用层协议对应的网络数据包。以场景关联规则DNS协议>HTTP协议>FTP协议为例,先对DNS协议进行仿真,得到DNS协议对应的网络数据包,然后对HTTP协议进行仿真,得到HTTP协议对应的网络数据包,最后对FTP协议进行仿真,得到FTP协议对应的网络数据包,最终完成对场景关联规则DNS协议>HTTP协议>FTP协议对应的真实流量场景的仿真。
值得注意的是,预设顺序关系不仅可以包括预设先后顺序关系,还可以包括预设并发顺序关系,也就是说,可以对多条应用层协议并发进行仿真。
另外,本申请实施例还可以对场景关联规则中相邻顺序的应用层协议之间的时间参数进行仿真。具体的,可以在相邻应用层协议之间暂停时间参数对应的时间值后,再对下一个应用层协议进行仿真。仿真的目的实际是最大化的还原真实流量场景,具体的仿真方式不限于上述方式。
实际应用中,按照预设顺序关系,对场景关联规则中的各个应用层协议进行仿真,得到网络数据包,具体为,首先,按照场景关联规则中各个应用层协议的预设顺序关系,获取该场景关联规则中的各个应用层协议中的应用数据,并对应用数据进行应用层协议封装,得到封装后的应用层协议数据包;其次,对应用层协议数据包进行传输层协议封装,得到封装后的传输层协议数据包;最后,对传输层协议数据包进行网络层协议封装,得到封装后的网络层协议数据包,作为网络数据包。
本申请实施例中,对应用数据进行应用层协议封装,支持应用层协议栈,包括HTTP协议、FTP协议等应用层协议。本申请实施例可以模拟客户端应用和服务端应用,将应用数据进行应用层协议封装后发送至下一层进行传输层协议仿真。
对应用层协议数据包进行传输层协议封装,支持网络层协议栈,包括TCP协议、UDP协议等传输层协议。传输层的功能是维护网络会话,一方面将上一层的数据进行TCP/UDP协议层的数据封装后发送至下一层;另一方面从下一层接收到数据包后对其进行解析得到传输层协议数据,并将解析得到的传输层协议数据发送至上一层。
对传输层协议数据包进行网络层协议封装,支持网络层协议栈,包括ARP协议、路由协议、IP协议等网络层协议。一方面将数据进行网络层协议数据封装,并将封装完毕的数据包发送给第一网卡;另一方面从第二网卡接收数据包后,解析数据包中的网络层协议数据,将解析后的数据发送至上一层。
S104:通过第一网卡发送所述网络数据包。
本申请实施例中,在得到各个网络数据包后,通过第一网卡依次发送各个网络数据包。
另外,对于来自外界的网络数据包,例如,来自通过第二网卡连接的网络设备的网络数据包,本申请实施例还可以通过第二网卡进行接收,并对接收到的网络数据包进行逐层解析,最终得到网络数据包中的应用数据。
值得注意的是,第一网卡和第二网卡并非特指,第一网卡和第二网卡均可以用于发送网络数据包,同时也可以用于接收网络数据包;具体的,当第一网卡用于接收网络数据包时,第二网卡用于发送网络数据包;当第一网卡用于发送网络数据包时,第二网卡用于接收网络数据包。本申请实施例对第一网卡和第二网卡的功能不做具体限定。
本申请实施例提供的网络流量仿真方法中,利用场景关联规则对真实流量场景进行定义,通过对场景关联规则的仿真实现对真实流量场景的还原,与现有技术中仅模拟网络设备的基础网络协议相比,本申请实施例能够对网络设备的各种真实流量场景进行还原,实现更全面的仿真
本申请实施例提供的网络流量仿真方法的应用场景较多,下面以应用于对网络设备测试的场景为例进行说明。
为了减少网络问题的发生,在网络设备投入使用之前需要对其进行有效的验证。本申请实施例提供的网络流量仿真方法能够对网络中的真实流量场景进行全面仿真,利用仿真结果进行网络设备的测试,能够对网络设备真实运行于复杂网络环境中的状态进行全面有效的验证。
为此,本申请实施例提供了一种网络设备测试方法,参考图2,为本申请实施例提供的一种网络设备测试方法流程图,其中,网络设备可以是运行于网络中的网络转发设备,如防火墙设备等,该方法包括:
S201:接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值。
S202:获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议。
S203:按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
S204:通过第一网卡将所述网络数据包发送至待测网络设备。
S205:通过第二网卡接收来自所述待测网络设备的网络数据包,并对所述网络数据包进行逐层解析,得到应用数据。
S206:通过对所述应用数据进行分析得到所述待测网络设备的测试结果。
实际应用中,对网络设备进行测试,是对网络设备处于真实网络环境的各种网络流量场景中的状态、性能等进行测试,为此,对网络设备进行测试首先需要对真实网络环境中的各种网络流量场景进行模拟,进而对处于模拟的网络流量场景中的网络设备进行测试。
在对网络设备处于某种网络流量场景的性能测试之前,首先接收携带该场景标识的场景仿真需求,用于表明是对该场景标识对应的场景的仿真。另外,场景仿真需求中还携带各仿真参数的目标值,用于表明仿真该场景时各参数需要达到的目标值,例如下载安装程序的场景中每秒新建连接数需要达到10万次。
从场景仿真需求中获取场景标识和各仿真参数的目标值后,从预先设置的场景关联规则中获取具有该场景标识的场景关联规则,并根据各仿真参数的目标值配置场景关联规则的并发个数,以达到场景仿真需求中的各仿真参数的目标值,即配置的场景关联规则并发个数,需要满足各个配置的场景关联规则仿真参数之和达到场景仿真需求中仿真参数的目标值。例如,如果一条DNS协议>HTTP协议>FTP协议定义的场景关联规则每秒新建连接数10次,则1万条DNS协议>HTTP协议>FTP协议定义的场景关联规则并发仿真,才能够满足大量客户端同时下载安装程序的真实流量场景的每秒新建连接数需要达到10万次的目标值。
各个场景关联规则是由具有预设顺序关系的应用层协议定义,为了更真实的对网络流量场景进行仿真,场景关联规则中的应用层协议之间还可以包括能够模拟用户操作界面等行为的时间参数,时间参数用于表示两个应用层协议的执行间隔时间。例如,时间参数可以表示从客户端用户接收到搜索引擎返回的用于下载程序的相关网站(DNS协议),到真正的访问该网站提供的地址(HTTP协议)期间的时长。本申请实施例通过对场景关联规则中的各个应用层协议按照预设顺序关系进行仿真,以及对场景关联规则中的时间参数进行仿真,充分模拟真实网络流量场景的高复杂性。
实际应用中,通过上述网络流量仿真方法产生的网络数据包,通过第一网卡发送至待测网络设备,经过待测网络设备后返回,并通过第二网卡接收来自该待测网络设备的网络数据包,通过对接收到的网络数据包的解析,得到应用数据,通过对应用数据的分析能够得到对该待测网络设备的测试结果。
本申请实施例利用场景关联规则对真实流量场景进行定义,通过对场景关联规则的仿真实现对真实流量场景的还原,利用还原后的真实流量场景对网络设备进行测试,能够得到更准确的测试结果。
装置实施例
与图1对应的方法实施例相对应的,本申请还提供了一种网络流量仿真装置,参考图3,为本申请实施例提供的一种网络流量仿真装置的结构示意图,该装置包括:
第一接收模块301,用于接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;
获取模块302,用于获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;
第一仿真模块303,用于按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
发送模块304,用于通过第一网卡发送所述网络数据包。
其中,所述装置还可以包括:
第二接收模块,用于通过第二网卡接收网络数据包;
解析模块,用于对所述网络数据包进行逐层解析,得到应用数据。
一种可选的实施方式中,所述场景关联规则还包括相邻顺序的应用层协议之间的时间参数;所述装置还包括:
第二仿真模块,用于对所述场景关联规则中相邻顺序的应用层协议之间的时间参数进行仿真。
具体的,所述应用层协议携带应用数据;所述第一仿真模块,包括:
第一仿真子模块,用于按照所述预设顺序关系,获取所述场景关联规则中的各个应用层协议中的应用数据,并对所述应用数据进行应用层协议封装,得到封装后的应用层协议数据包;
第二仿真子模块,用于对所述应用层协议数据包进行传输层协议封装,得到封装后的传输层协议数据包;
第三仿真子模块,用于对所述传输层协议数据包进行网络层协议封装,得到封装后的网络层协议数据包,作为网络数据包。
具体的,所述各仿真参数包括并发连接数、每秒新建连接数、每秒包数、流量和\或应用构成,所述场景关联规则还包括各仿真参数的取值;
所述能够满足所述各仿真参数的目标值的场景关联规则,包括:
对应的仿真参数的取值之和不小于所述仿真参数的目标值的场景关联规则。
本申请实施例提供的网络流量仿真装置,利用场景关联规则对真实流量场景进行定义,通过对场景关联规则的仿真实现对真实流量场景的还原,与现有技术中仅模拟网络设备的基础网络协议相比,本申请能够对网络设备的各种真实流量场景进行还原,实现更全面的仿真。
与图2对应的方法实施例相对应的,本申请还提供了一种网络设备测试系统,参考图4,为本申请实施例提供的一种网络设备测试系统的结构示意图,该网络设备测试系统400包括网络流量仿真装置401、第一网卡402和第二网卡403,该网络流量仿真装置401为上述任意一种网络流量仿真装置,可参照上述介绍进行理解;
所述第一网卡402,用于将来自所述网络流量仿真装置的网络数据包发送至待测网络设备;
所述第二网卡403,用于接收来自所述待测网络设备的网络数据包。
实际应用中,网络流量仿真装置可以模拟客户端和服务端分别与待测网络设备进行数据交互,通过对网络流量仿真装置发出和接收到的网络数据包的分析,能够得到待测网络设备的测试结果。
由于本申请实施例提供的网络流量仿真装置能够真实的还原网络流量场景,所以,利用该网络流量仿真装置对网络设备进行测试能够得到更准确全面的测试结果,使得经过测试的网络设备投入使用后的稳定性得到保障。
另外,本申请实施例还提供了一种网络流量仿真设备,参见图5所示,可以包括:
处理器501、存储器502、输入装置503和输出装置504。网络流量仿真设备中的处理器501的数量可以一个或多个,图5中以一个处理器为例。在本发明的一些实施例中,处理器501、存储器502、输入装置503和输出装置504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块,从而执行网络流量仿真设备的各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置503可用于接收输入的数字或字符信息,以及产生与网络流量仿真设备的用户设置以及功能控制有关的信号输入。
具体在本实施例中,处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现上述网络流量仿真方法中的各种功能。
另外,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述的网络流量仿真方法。
可以理解的是,对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请实施例所提供的一种网络流量仿真方法、装置、设备及网络设备测试系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种网络流量仿真方法,其特征在于,所述方法包括:
接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;其中,所述场景标识用于标识真实流量场景;
获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;所述预设顺序关系为各个应用层协议在所述真实流量场景中的执行顺序;
按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
通过第一网卡发送所述网络数据包。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过第二网卡接收网络数据包,并对所述网络数据包进行逐层解析,得到应用数据。
3.根据权利要求1所述的方法,其特征在于,所述场景关联规则还包括相邻顺序的应用层协议之间的时间参数;所述方法还包括:
对所述场景关联规则中相邻顺序的应用层协议之间的时间参数进行仿真。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包,包括:
按照所述预设顺序关系,获取所述场景关联规则中的各个应用层协议中的应用数据,并对所述应用数据进行应用层协议封装,得到封装后的应用层协议数据包;
对所述应用层协议数据包进行传输层协议封装,得到封装后的传输层协议数据包;
对所述传输层协议数据包进行网络层协议封装,得到封装后的网络层协议数据包,作为网络数据包。
5.根据权利要求1所述的方法,其特征在于,所述各仿真参数包括并发连接数、每秒新建连接数、每秒包数、流量和/或应用构成,所述场景关联规则还包括各仿真参数的取值;
所述能够满足所述各仿真参数的目标值的场景关联规则,包括:
对应的仿真参数的取值之和不小于所述仿真参数的目标值的场景关联规则。
6.一种网络流量仿真装置,其特征在于,所述装置包括:
第一接收模块,用于接收场景仿真需求,所述场景仿真需求携带场景标识和各仿真参数的目标值;其中,所述场景标识用于标识真实流量场景;
获取模块,用于获取与所述场景标识具有对应关系且能够满足所述各仿真参数的目标值的场景关联规则;其中,所述场景关联规则包括具有预设顺序关系的应用层协议;所述预设顺序关系为各个应用层协议在所述真实流量场景中的执行顺序;
第一仿真模块,用于按照所述预设顺序关系,对所述场景关联规则中的各个应用层协议进行仿真,得到网络数据包;
发送模块,用于通过第一网卡发送所述网络数据包。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于通过第二网卡接收网络数据包;
解析模块,用于对所述网络数据包进行逐层解析,得到应用数据。
8.一种网络设备测试系统,其特征在于,所述系统包括网络流量仿真装置、第一网卡和第二网卡;所述网络流量仿真装置为上述权利要求6-7中任一项所述的装置;
所述第一网卡,用于将来自所述网络流量仿真装置的网络数据包发送至待测网络设备;
所述第二网卡,用于接收来自所述待测网络设备的网络数据包。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-5任一项所述的网络流量仿真方法。
10.一种网络流量仿真设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5任一项所述的网络流量仿真方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910233253.6A CN109921947B (zh) | 2019-03-26 | 2019-03-26 | 一种网络流量仿真方法、装置、设备及网络设备测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910233253.6A CN109921947B (zh) | 2019-03-26 | 2019-03-26 | 一种网络流量仿真方法、装置、设备及网络设备测试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109921947A CN109921947A (zh) | 2019-06-21 |
CN109921947B true CN109921947B (zh) | 2022-02-11 |
Family
ID=66966810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910233253.6A Active CN109921947B (zh) | 2019-03-26 | 2019-03-26 | 一种网络流量仿真方法、装置、设备及网络设备测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109921947B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110912735B (zh) * | 2019-11-13 | 2023-03-24 | 中国联合网络通信集团有限公司 | 一种数据包传输网络的仿真方法及装置 |
CN111030844B (zh) * | 2019-11-14 | 2023-03-14 | 中盈优创资讯科技有限公司 | 流量处理框架建立方法及装置 |
CN112039722B (zh) * | 2020-08-12 | 2022-07-08 | 中国银联股份有限公司 | 一种mqtt协议仿真方法及仿真设备 |
CN113315647B (zh) * | 2020-09-14 | 2024-10-15 | 阿里巴巴集团控股有限公司 | 一种网络仿真方法和装置 |
CN112866036B (zh) * | 2021-02-24 | 2022-03-01 | 鹏城实验室 | 云计算平台的网络流量仿真方法、系统及计算机存储介质 |
CN114070625A (zh) * | 2021-11-16 | 2022-02-18 | 北京华云安信息技术有限公司 | 模拟流量产生方法、装置、设备和存储介质 |
CN114465941B (zh) * | 2022-04-13 | 2022-07-15 | 之江实验室 | 基于收发包协同的集群计算流量仿真方法、系统与装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1247656A (zh) * | 1996-12-20 | 2000-03-15 | 艾利森公司 | 提供高级互连能力的网络管理器 |
CN1758612A (zh) * | 2004-10-10 | 2006-04-12 | 北京中创信测科技股份有限公司 | 用状态机模拟多协议仿真流程的方法 |
CN101060445A (zh) * | 2007-05-09 | 2007-10-24 | 华为技术有限公司 | 网络流量仿真方法和设备、网络流量测试方法及设备 |
CN101977132A (zh) * | 2010-11-18 | 2011-02-16 | 北京航空航天大学 | 一种交换网络虚拟链路流量管制功能测试装置 |
CN102710463A (zh) * | 2012-05-22 | 2012-10-03 | 中国电力科学研究院 | 一种电力数据网络的动态仿真系统及仿真方法 |
CN103051609A (zh) * | 2012-12-07 | 2013-04-17 | 东软集团股份有限公司 | 网关设备及由其执行的网络访问控制的可视化交互方法 |
CN106506225A (zh) * | 2016-11-29 | 2017-03-15 | 国网山西省电力公司忻州供电公司 | 电力数据网络半实物仿真方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100440819C (zh) * | 2007-05-18 | 2008-12-03 | 清华大学 | 基于通话模型的网络语音通话测试流量生成方法 |
CN102970176B (zh) * | 2012-09-19 | 2015-10-21 | 东莞中山大学研究院 | 一种基于ns2的p2p流媒体仿真系统 |
CN103838922A (zh) * | 2014-02-17 | 2014-06-04 | 国网吉林省电力有限公司培训中心 | 安全行为仿真培训系统 |
CN104734915B (zh) * | 2015-03-05 | 2018-02-27 | 重庆邮电大学 | 一种复合多进程多线程的多网络并发动态仿真方法 |
CN106453434A (zh) * | 2016-12-20 | 2017-02-22 | 北京启明星辰信息安全技术有限公司 | 一种网络流量的监测方法及监测系统 |
CN107743072B (zh) * | 2017-07-04 | 2020-07-17 | 中国电力科学研究院 | 高效可扩展的网络仿真场景生成方法 |
-
2019
- 2019-03-26 CN CN201910233253.6A patent/CN109921947B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1247656A (zh) * | 1996-12-20 | 2000-03-15 | 艾利森公司 | 提供高级互连能力的网络管理器 |
CN1758612A (zh) * | 2004-10-10 | 2006-04-12 | 北京中创信测科技股份有限公司 | 用状态机模拟多协议仿真流程的方法 |
CN101060445A (zh) * | 2007-05-09 | 2007-10-24 | 华为技术有限公司 | 网络流量仿真方法和设备、网络流量测试方法及设备 |
CN101977132A (zh) * | 2010-11-18 | 2011-02-16 | 北京航空航天大学 | 一种交换网络虚拟链路流量管制功能测试装置 |
CN102710463A (zh) * | 2012-05-22 | 2012-10-03 | 中国电力科学研究院 | 一种电力数据网络的动态仿真系统及仿真方法 |
CN103051609A (zh) * | 2012-12-07 | 2013-04-17 | 东软集团股份有限公司 | 网关设备及由其执行的网络访问控制的可视化交互方法 |
CN106506225A (zh) * | 2016-11-29 | 2017-03-15 | 国网山西省电力公司忻州供电公司 | 电力数据网络半实物仿真方法 |
Non-Patent Citations (2)
Title |
---|
基于BBO-ELM 方法的网络视频流量预测仿真研究;刘科,李军;《计算机应用研究》;20180630;全文 * |
基于两层结构的网络流量建模与仿真;刘倩玉,叶春;《皖西学院学报》;20160430;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109921947A (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109921947B (zh) | 一种网络流量仿真方法、装置、设备及网络设备测试系统 | |
AU2015201561B2 (en) | Method and system for comparing different versions of a cloud based application in a production environment using segregated backend systems | |
CN103685583B (zh) | 一种域名解析的方法和系统 | |
US8396962B2 (en) | Game grammar-based packet capture and analysis apparatus and method for conducting game test | |
CN109525461B (zh) | 一种网络设备的测试方法、装置、设备及存储介质 | |
US20130282892A1 (en) | Event extractor | |
US10277475B2 (en) | System and method for dynamically testing networked target systems | |
WO2015143036A1 (en) | Method and system for testing cloud based applications in a production environment using fabricated user data | |
CN112988608B (zh) | 数据测试方法、装置、计算机设备及存储介质 | |
Peuster et al. | The softwarised network data zoo | |
CN112231209B (zh) | 参数获取方法、装置、计算机设备和存储介质 | |
CN114500537A (zh) | 容器服务的访问方法、系统、存储介质及电子设备 | |
Herrnleben et al. | An iot network emulator for analyzing the influence of varying network quality | |
Clausen et al. | Traffic generation using containerization for machine learning | |
Harjanti et al. | Load balancing analysis using round-robin and least-connection algorithms for server service response time | |
Nussbaum et al. | Lightweight emulation to study peer-to-peer systems | |
CN102104503B (zh) | 一种网络的传输流量仿真方法及设备 | |
CN115297024B (zh) | 网络安全设备的性能测试方法、装置及电子设备 | |
CN116165914A (zh) | 一种航电系统的仿真方法及相关产品 | |
Hashimi et al. | Performance Evaluation of a Network Using Simulation Tools or Packet Tracer | |
CN114466000A (zh) | 一种cdn网关回源方法及装置 | |
CN114138307A (zh) | 基于开发平台和框架实现灰度发布的方法和系统 | |
Lübke et al. | Nessee: An in-house test platform for large scale tests of multimedia applications including network behavior | |
CN110391950A (zh) | 一种应用服务测试方法和装置 | |
Zárate Ceballos et al. | Introduction to simulation |
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 |