CN111182087A - 一种基于单网卡绑定多ip的流量回放方法 - Google Patents
一种基于单网卡绑定多ip的流量回放方法 Download PDFInfo
- Publication number
- CN111182087A CN111182087A CN201911306882.3A CN201911306882A CN111182087A CN 111182087 A CN111182087 A CN 111182087A CN 201911306882 A CN201911306882 A CN 201911306882A CN 111182087 A CN111182087 A CN 111182087A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- address
- pcap file
- file
- pcap
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5061—Pools of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于数据传输技术领域,涉及网络环境测试中流量回放方法。一种基于单网卡绑定多IP的流量回放方法,包括:(1)、分析原始pcap文件得到回放需要的最少虚拟机数量和每个虚拟机应该绑定的IP地址;(2)、将原始的大pcap文件拆分成与每个虚拟机发包相关的小pcap文件;(3)、在每个虚拟机上根据分配的IP地址进行绑定IP和路由规则配置;(4)、在每个虚拟机上将分配给本机的pcap文件按照原有相对时间间隔进行流量回放。本发明的流量回放方法,可以在网络靶场中利用相对较少的虚拟机完成一定规模的流量回放,高度的还原了真实网络的流量交互,更好的模拟网络环境。
Description
技术领域
本发明属于数据传输技术领域,涉及网络环境测试中流量回放方法。
背景技术
在网络环境测试中,只有真实的复现当时出现问题的场景才能够更好的发现问题。网络环境中的问题,基本上都可以通过分析网络中的流量找到问题的所在。因此,复现真实的网络流量成为了关键的一步。
背景流量还原是从用户流量行为的角度模拟真实的网络场景中的流量行为。目前,实现流量回放的方式主要基于流量特征的回放和基于跟踪的回放。第一种方式主要通过提取网络流量的特征来生产满足当前特征的流量,完成网络场景还原。该方式使用合适的模型拟合真实网络流量中的某些特征,如数据包到达时间、数据包时间间隔、数据包大小以及数据包速率等。该方法虽然能够根据指定模型参数多次构造相同的流量,便于网络实验重复实施,但只适用于在简单网络场景中构造小规模流量。第二种方式主要将捕获的流量文件根据实验网络拓扑环境要求,重新构造数据包并按照原始流量文件时序发送数据包达到流量还原目的。该方法将重新捕获的流进行回放,因此能够保留真实环境中的流量特征及内容。但是由于回放所使用的虚拟机数量有限,因此该方法只能适用于小规模的流量回放。
网络测试中有时为了还原真实的网络环境,需要将真实环境中产生的流量进行回放,由于在虚拟环境中能产生的虚拟机和真实的物理机数量上相差很大,无法满足回放的IP地址数量。针对这一现状,需要找到一种解决方案。
发明内容
为了解决现有技术中,在流量回放测试过程中,虚拟主机数量无法满足真实主机数量的问题,本发明提出了一种基于单网卡绑定多IP的流量回放方法。通过将多个IP地址绑定到单个虚拟网卡中实现流量的回放。
本发明解决其技术问题采用的技术方案是:一种基于单网卡绑定多IP的流量回放方法,包括:
(1)、分析原始pcap文件得到回放需要的最少虚拟机数量和每个虚拟机应该绑定的IP地址;
(2)、将原始的大pcap文件拆分成与每个虚拟机发包相关的小pcap文件;
(3)、在每个虚拟机上根据分配的IP地址进行绑定IP和路由规则配置;
(4)、在每个虚拟机上将分配给本机的pcap文件按照原有相对时间间隔进行流量回放。
进一步的,所述(1)中,通过多路归并算法,得出一个组合:{虚拟机ID:所分IP地址列表};
判断每个虚拟机ID 对应的IP地址列表中的地址数量是否大于254,如果大于则将继续增加虚拟机数量,通过计算每个流包的数量来进行划分;
直到每个IP地址列表中的IP数量都小于254个,此时便可得到所需最少的虚拟机数量以及每个虚拟机上对应的IP地址列表。
进一步地,所述步骤(2)中, 根据{虚拟机ID:所分IP地址列表}组合,将原始大pcap文件进行拆分,拆分的小pcap文件中的数据包与每个虚拟机IP列表一一对应;并将数据包文件名命名为min_pcap_虚拟机序号.pcap。
进一步地,所述步骤(3)中,通过命令的方式绑定IP地址或路由规则配置。
进一步地,所述步骤(4)具体包括:首先读入IP地址文件和回放开始的时间戳,随后进行参数的初始化和读取pcap文件,判断该pcap文件是否读完,如果未读完则读取pcap文件的数据;
如果读完,本虚拟机的回放结束。
进一步地,上述方案中,在读取pcap文件的时候判断是否为第一个数据包,如果是,则计算回放开始时间和该包发送时间的差值;随后读取pcap文件的信息,对文件中的内容进行分析,获取源IP地址、源端口号、目的IP地址、目的端口号、时间戳、数据包内容信息;然后将时间戳加上计算好的时间差值作为发包时间,随后利用libnet进行重构数据包;等待发包时间,若当前时间为发包时间则立即发送数据包给目标主机;发送完成后继续判断pcap文件是否读完;重复以上步骤,直到pcap文件读完。
本发明提出的一种基于单网卡绑定多IP的流量回放方法,可以在网络靶场中利用相对较少的虚拟机完成一定规模的流量回放,高度的还原了真实网络的流量交互,更好的模拟网络环境。其有益效果如下:
(1)利用单网卡绑定多个IP,减少了虚拟机的数量,降低了回放成本;
(2)回放过程中源IP、源端口、目的IP、目的端口,数据包的内容都与原数据保持一致,高度的还原了真实的流量;
(3)根据原始流量的交互关系,合理的分配虚拟机数量以及虚拟机上所绑定的IP地址。
附图说明
图1为本发明实施例的流量回放架构图;
图2是原始pcap文件分析流程图;
图3是IP绑定流程示意图;
图4是路由配置流程示意图图;
图5是pcap文件回放流程示意图图。
具体实施方式
为了便于理解本发明,下面结合附图和具体实施例,对本发明进行更详细的说明。附图中给出了本发明的较佳的实施例。但是,本发明可以以许多不同的形式来实现,并不限于本说明书所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。
本实施例提供的基于单网卡绑定多IP的流量回放方法,如图1所示,具体内容如下:
1、分析原始pcap文件得到回放需要的最少虚拟机数量和每个虚拟机应该绑定的IP地址
该步骤主要完成IP地址划分及pcap文件拆分,如图2所示。该步骤的输入是原始pcap文件和单位时间内虚拟机最多能处理包的数量。其中原始pcap文件为真实网络环境中利用抓包工具抓取的流量。
本方法主要回放其中的流量部分。该步骤的输出是回放该pcap文件所需要的最少的虚拟机数量以及每个虚拟机上所需要绑定的IP地址和在该虚拟机上回放的pcap文件名。
通过多路归并算法,得出一个组合{虚拟机ID:[所分IP地址列表]},多路归并算法保证了该虚拟机上的IP地址不会给自己虚拟机上的IP地址发送数据包。其次判断IP地址列表中的地址数量是否大于254,如果大于则将继续增加虚拟机数量,通过计算每个流包的数量来进行划分,直到每个IP地址列表中的IP数量都小于254个,此时便可得到所需最少的虚拟机数量以及每个虚拟机上对应的IP地址列表。
在计算过程中以流为单位进行计算,确保每个流中的数据包不会被分配到不同的虚拟机上,在IP分配的时候也保证了每个虚拟机最多不会被分配到254个IP地址。该步骤主要通过计算每个流在交互过程中的包的数量以及包的发包时间来确定单位时间内,保证每个流中的数据包不会被分配到不同的虚拟机上。并通过计算每个流中包的数量来划分流,确保每台虚拟机分到IP地址的数据流的总包数不会有较大的差异。
2、根据上述步骤划分的组合,将原始大pcap文件进行拆分,拆分的小pcap文件中的数据包与每个虚拟机IP列表一一对应,输出的文件名命名规则为min_pcap_虚拟机序号.pcap。
3、在每个虚拟机上根据分配的IP地址进行绑定IP和路由规则配置
首先读取下发的需要绑定的IP地址文件,通过字符串拼接将IP地址加入到命令中,随后将该命令执行,流程如图3所示。
于此同时,需要访问本机IP地址的虚拟机需要添加对应的路由规则以便能够将不同的网段连通。路由规则配置方式与IP地址绑定的方式相似,流程如图4所示。
另外,由于是对原始流量进行回放,在回放过程中接受端主机会返回RST包,因此需要对其进行过滤,可以通过iptables来禁止本机发送RST包,主要通过执行shell脚本中的命令(iptables -A OUTPUT -p tcp –tcp-flags RST TST -j DROP)进行配置。
4、在每个虚拟机上将分配给本机的pcap文件按照原有相对时间间隔进行流量回放,流程如图5所示。
该步骤的输入是本虚拟机需要回放的IP地址和回放开始的时间戳。首先读入IP地址文件和回放开始的时间戳,随后进行参数的初始化和读取pcap文件,判断该pcap文件是否读完,如果未读完则读取pcap文件的数据;如果读完,本虚拟机的回放结束。
在读取pcap文件的时候需要判断是否为第一个数据包,如果是,则计算回放开始时间和该包发送时间的差值,这样做的目的是为了保证回放过程中每个包的时间间隔与原时间间隔尽可能一致。随后读取pcap文件的信息,对文件中的内容进行分析,获取源IP地址、源端口号,目的IP地址、目的端口号、时间戳、数据包内容等信息。然后将时间戳加上计算好的时间差值作为发包时间,随后利用libnet进行重构数据包。等待发包时间,若当前时间为发包时间则立即发送数据包给目标主机。发送完成后继续判断pcap文件是否读完,重复以上步骤,直到pcap文件读完。
Claims (6)
1.一种基于单网卡绑定多IP的流量回放方法,其特征在于,包括:
(1)、分析原始pcap文件得到回放需要的最少虚拟机数量和每个虚拟机应该绑定的IP地址;
(2)、将原始的大pcap文件拆分成与每个虚拟机发包相关的小pcap文件;
(3)、在每个虚拟机上根据分配的IP地址进行绑定IP和路由规则配置;
(4)、在每个虚拟机上将分配给本机的pcap文件按照原有相对时间间隔进行流量回放。
2.根据权利要求1所述的基于单网卡绑定多IP的流量回放方法,其特征在于,所述步骤(1)中,通过多路归并算法,得出一个组合:{虚拟机ID:所分IP地址列表};
判断每个虚拟机ID 对应的IP地址列表中的地址数量是否大于254,如果大于则将继续增加虚拟机数量,通过计算每个流包的数量来进行划分;
直到每个IP地址列表中的IP数量都小于254个,此时便可得到所需最少的虚拟机数量以及每个虚拟机上对应的IP地址列表。
3.根据权利要求2所述的基于单网卡绑定多IP的流量回放方法,其特征在于,所述步骤(2)中, 根据{虚拟机ID:所分IP地址列表}组合,将原始大pcap文件进行拆分,拆分的小pcap文件中的数据包与每个虚拟机IP列表一一对应;并将数据包文件名命名为min_pcap_虚拟机序号.pcap。
4.根据权利要求2所述的基于单网卡绑定多IP的流量回放方法,其特征在于,所述步骤(3)中,通过命令的方式绑定IP地址和配置路由规则。
5.根据权利要求3所述的基于单网卡绑定多IP的流量回放方法,其特征在于,所述步骤(4)包括:
首先读入IP地址文件和回放开始的时间戳,随后进行参数的初始化和读取pcap文件,判断该pcap文件是否读完,如果未读完则读取pcap文件的数据;
如果读完,本虚拟机的回放结束。
6.根据权利要求5所述的基于单网卡绑定多IP的流量回放方法,其特征在于,在读取pcap文件的时候判断是否为第一个数据包,如果是,则计算回放开始时间和该包发送时间的差值;随后读取pcap文件的信息,对文件中的内容进行分析,获取源IP地址、源端口号、目的IP地址、目的端口号、时间戳、数据包内容信息;然后将时间戳加上计算好的时间差值作为发包时间,随后利用libnet进行重构数据包;等待发包时间,若当前时间为发包时间则立即发送数据包给目标主机;发送完成后继续判断pcap文件是否读完;重复以上步骤,直到pcap文件读完。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911306882.3A CN111182087B (zh) | 2019-12-18 | 2019-12-18 | 一种基于单网卡绑定多ip的流量回放方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911306882.3A CN111182087B (zh) | 2019-12-18 | 2019-12-18 | 一种基于单网卡绑定多ip的流量回放方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111182087A true CN111182087A (zh) | 2020-05-19 |
CN111182087B CN111182087B (zh) | 2022-01-28 |
Family
ID=70657348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911306882.3A Active CN111182087B (zh) | 2019-12-18 | 2019-12-18 | 一种基于单网卡绑定多ip的流量回放方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111182087B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804375A (zh) * | 2021-01-11 | 2021-05-14 | 上海思询信息科技有限公司 | 一种单网卡多ip的配置方法 |
CN112860378A (zh) * | 2021-02-23 | 2021-05-28 | 哈尔滨工业大学(威海) | 一种计算回放流量所需最少虚拟资源的方法、系统、设备及存储介质 |
CN113890836A (zh) * | 2021-08-18 | 2022-01-04 | 浙江众合科技股份有限公司 | 基于修改和播放pcap文件的MSS性能测试方法、设备及介质 |
CN114185320A (zh) * | 2020-09-15 | 2022-03-15 | 中国科学院软件研究所 | 一种无人系统集群的测评方法、装置、系统及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326900A (zh) * | 2013-06-24 | 2013-09-25 | 中国科学院信息工程研究所 | 一种面向虚拟网络的流量回放方法及系统 |
CN103986624A (zh) * | 2014-05-28 | 2014-08-13 | 西安交通大学 | 一种网络流量还原回放方法 |
US20160105401A1 (en) * | 2014-10-10 | 2016-04-14 | Jyothi Vemulapalli | System and method for internet protocol security processing |
CN106953741A (zh) * | 2017-01-25 | 2017-07-14 | 中国科学院信息工程研究所 | 一种面向网络仿真环境的流量回放方法及系统 |
CN108900360A (zh) * | 2018-08-10 | 2018-11-27 | 哈尔滨工业大学(威海) | 一种基于多节点流量回放的网络背景生成系统及方法 |
CN110149343A (zh) * | 2019-05-31 | 2019-08-20 | 国家计算机网络与信息安全管理中心 | 一种基于流的异常通联行为检测方法和系统 |
-
2019
- 2019-12-18 CN CN201911306882.3A patent/CN111182087B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326900A (zh) * | 2013-06-24 | 2013-09-25 | 中国科学院信息工程研究所 | 一种面向虚拟网络的流量回放方法及系统 |
CN103986624A (zh) * | 2014-05-28 | 2014-08-13 | 西安交通大学 | 一种网络流量还原回放方法 |
US20160105401A1 (en) * | 2014-10-10 | 2016-04-14 | Jyothi Vemulapalli | System and method for internet protocol security processing |
CN106953741A (zh) * | 2017-01-25 | 2017-07-14 | 中国科学院信息工程研究所 | 一种面向网络仿真环境的流量回放方法及系统 |
CN108900360A (zh) * | 2018-08-10 | 2018-11-27 | 哈尔滨工业大学(威海) | 一种基于多节点流量回放的网络背景生成系统及方法 |
CN110149343A (zh) * | 2019-05-31 | 2019-08-20 | 国家计算机网络与信息安全管理中心 | 一种基于流的异常通联行为检测方法和系统 |
Non-Patent Citations (3)
Title |
---|
HAO WU ET: "Accurate traffic replay based on interactive sequence and timestamp", 《2017 IEEE 9TH INTERNATIONAL CONFERENCE ON COMMUNICATION SOFTWARE AND NETWORKS (ICCSN)》 * |
HONGRI LIU ET: "An Interactive Traffic Replay Method in a Scaled-Down Environment", 《IEEE ACCESS》 * |
韩笑等: "大规模网络环境下高可扩展的信息监测系统", 《计算机工程与应用》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114185320A (zh) * | 2020-09-15 | 2022-03-15 | 中国科学院软件研究所 | 一种无人系统集群的测评方法、装置、系统及存储介质 |
CN114185320B (zh) * | 2020-09-15 | 2023-10-24 | 中国科学院软件研究所 | 一种无人系统集群的测评方法、装置、系统及存储介质 |
CN112804375A (zh) * | 2021-01-11 | 2021-05-14 | 上海思询信息科技有限公司 | 一种单网卡多ip的配置方法 |
CN112860378A (zh) * | 2021-02-23 | 2021-05-28 | 哈尔滨工业大学(威海) | 一种计算回放流量所需最少虚拟资源的方法、系统、设备及存储介质 |
CN112860378B (zh) * | 2021-02-23 | 2022-07-29 | 哈尔滨工业大学(威海) | 一种计算回放流量所需最少虚拟资源的方法、系统、设备及存储介质 |
CN113890836A (zh) * | 2021-08-18 | 2022-01-04 | 浙江众合科技股份有限公司 | 基于修改和播放pcap文件的MSS性能测试方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111182087B (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111182087B (zh) | 一种基于单网卡绑定多ip的流量回放方法 | |
US10877852B2 (en) | Instant data center recovery | |
CN108900360B (zh) | 一种基于多节点流量回放的网络背景生成系统及方法 | |
CN102004760B (zh) | 多媒体文件的存储和播放方法、相关装置及系统 | |
CN110519127B (zh) | 网络延时的探测方法、装置和存储介质 | |
CN107484011A (zh) | 一种视频资源解码方法及装置 | |
CN107749807A (zh) | 一种面向nfv的网络功能验证方法及验证系统 | |
CN112150030A (zh) | 基于多单位多身份的账号管理方法、终端设备及存储介质 | |
CN105956009B (zh) | 一种实时应景内容匹配与推送的方法 | |
EP3370166B1 (en) | Method and apparatus for model parameter fusion | |
CN111541905B (zh) | 一种直播方法、装置、计算机设备和存储介质 | |
CN105721469B (zh) | 音频数据处理方法、服务器、客户端以及系统 | |
CN104836686B (zh) | 一种生成服务器的配置文件的方法及装置 | |
CN111198784B (zh) | 一种数据存储的方法及装置 | |
CN109889922A (zh) | 流媒体数据的转发方法、装置、设备和存储介质 | |
CN114598931A (zh) | 一种多开云游戏的串流方法、系统、装置及介质 | |
CN106789446A (zh) | 一种节点对等的集群分布式测试框架和方法 | |
CN112069003B (zh) | 一种硬盘性能测试方法和装置 | |
CN103648021B (zh) | 从usb存储设备播放网络视频文件的方法 | |
CN105553714A (zh) | 一种业务配置的方法及系统 | |
US6597694B1 (en) | System and method for generating bulk calls and emulating applications | |
Kingsley | Cloud Technologies and Services: Theoretical Concepts and Practical Applications | |
CN104935647B (zh) | 一种文件分享方法及装置 | |
CN112423098B (zh) | 视频处理方法、电子装置及存储介质 | |
CN110971923A (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 |