录制、还原与重播网络流量的方法技术

技术编号:7105463 阅读:293 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种录制、还原与重播网络流量的方法,用以处理多个网络连接的多个网络封包。录制、还原与重播网络流量的方法可包括录制程序、还原程序或是选择性重播程序。其中录制程序包括:接收录制参数(N,M,P);完整录制每一网络封包的文件头以及酬载,并累计每一网络连接的酬载总值;当酬载总值之一超过N时,对与酬载总值对应的网络连接的连续P个网络封包录制每一网络封包的文件头,以及酬载的前M个字节;以及当酬载总值之一超过N并对与酬载总值对应的网络连接连续录制P个网络封包之后,对与酬载总值对应的网络连接录制每一网络封包的文件头。

【技术实现步骤摘要】

本专利技术关于一种录制、还原与重播网络流量的方法,特别是关于可包括录制程序、还原程序或是选择性重播程序的方法。
技术介绍
关于录制流量的技术,现有做法包括以特殊专属的硬件设计搭配各种软件套件来实作,以尽量减少漏录(capture loss)情况的录制系统。这种技术的重点常在于讨论前置处理器的数目、操作系统、缓冲区大小等等议题。除了提升软硬件系统效能的技术之外,也有类似时光机器(Time Machine)的技术,以分析网络流量行为的方式来节省储存空间。这种技术采用10000~20000字节(bytes)的截断(cutoff)机制来录制每条网络连接。由于其发现大流量通常是来自于少数的连接,因此从整体来说,时光机器的技术可以完整录制到多数小流量的网络连接。而其截断值根据对于流量的剖析作动态调整。然而这些技术却都不是从“触发/重制网络事件”的测试用途出发来决定录制流量的策略、设计录制流量的方法,而导致目前这些的录制技术与方法并不十分适合用来作为测试之用。且现有技术需要浪费庞大的储存空间去储存没有价值的网络流量,因而无法完全录制大量且快速的真实网络流量。更甚者,由于无法应付大量且快速的真实网络流量,而造成漏录的情形。而关于重播网络流量的技术,例如TCPreplay根据时间戳记(timestamp)进行重播;Tomahawk则会等待上一个封包抵达之后再重播下一个封包。然而这两种技术在重播网络流量的过程中并没有维持网络协议的状态,而产生无状态重播(stateless replay)的问题。对此发展出了数种能维持网络协议的状态(称为状态重播,statefulreplay)的技术。例如TCPopera在重播网络流量时使用4种试探法(heuristics)来达到依照传输控制/因特网协议(Transmission ControlProtocol/Internet Protocol,TCP/IP)传送数据的规则。Monkey则是会自行建立插座(socket)以仿真TCP/IP协议并仿真网络情况。Avalanche则可接受一份追踪文件(trace file)样本,并自行分析追踪文件后模拟出同时有多位使用者的大量网络流量。此外还有一些技术不仅可以做到网络层及传输层的状态,还可以做到应用层的状态。然而跟录制流量的技术一样,目前这些重播流量的技术并没有完全从触发/重制网络事件的测试用途出发来进行设计与实作,导致目前这些的重播技术与方法并不十分适合用来作为测试之用。现有的重播技术以及工具无法依据不完整的网络封包准确地重播出符合网络协议的网络连接。现有技术亦无法有效率地重制事件(reproduce event),而难以得知网络事件发生的原因。
技术实现思路
由上述分析可以得知,传统的网络封包(packet)的处理方法中,无论是录制或是重播网络流量的方法,均具有浪费庞大的储存空间、浪费庞大的重播时间、无法依据不完整的网络封包播放符合网络协议的网络连接,或是无法精准重现网络事件等问题。为解决这些的问题,本专利技术提供一种录制、还原与重播网络流量的方法,其用以处理网络的多个网络连接的多个网络封包。本专利技术提供的录制、还原与重播网络流量的方法包括一录制程序,以针对每一个网络连接录制网络连接的网络封包。录制程序则包括:接收一录制参数(N,M,P),其中N、M以及P为大于等于零的整数;完整录制这些网络连接的每一个网络封包的一文件头以及一酬载(payload),并累计每一个网络连接的一酬载总值;当酬载总值之一超过N时,对与酬载总值对应的网络连接的连续P个网络封包录制每一个网络封包的该文件头,以及酬载的前M个字节;以及当酬载总值之一超过N并对与酬载总值对应的网络连接连续录制P个网络封包之后,对与酬载总值对应的网络连接的网络封包录制每一个网络封包的文件头。根据本专利技术的一实施范例,录制、还原与重播网络流量的方法另可包括一还原程序,而还原程序可包括以下步骤。逐一检查网络封包的文件头以及酬载是否完整;当得到至少一个不完整的网络封包时,判断其是否具有完整的文件头;以及当不完整的网络封包具有完整的文件头时,执行下述步骤:依据不完整的网络封包的文件头,得到不完整的网络封包的一酬载长度;以及依据酬载长度,写入一虚拟值(dummy)作为不完整的网络封包的酬载。还原程序另可包括以下步骤。当不完整的网络封包具有不完整的文件头时,执行下述步骤:依据与不完整的网络封包对应的网络连接的其它网络封包,修复不完整的网络封包的文件头;依据不完整的网络封包的文件头,得到不完整的网络封包的酬载长度;以及依据酬载长度,写入虚拟值作为不完整的网络封包的酬载。还原程序并可包括以下步骤。依据网络连接的网络封包的文件头的一序号(sequence number)以及一确认号(acknowledgement number),找出被漏录(capture loss)的至少一漏录封包;依据与漏录封包对应的网络连接的其它网络封包,修复漏录封包的文件头;依据漏录封包的文件头,得到漏录封包的酬载长度;以及依据酬载长度,写入虚拟值作为漏录封包的酬载。而其中虚拟值可以为随机数。根据本专利技术的一实施范例,录制、还原与重播网络流量的方法另可包括一选择性重播程序,而其可包括以下步骤。接收一事件时间以及一网络连接信息,其中网络连接信息包括至少一网络连接地址;以及重播与网络连接地址对应的至少一个网络连接的网络封包。选择性重播程序另可包括:依据网络连接信息的网络连接地址、一网络连接协议以及一网络连接端口,得到这些网络连接中的一特定连接;以及重播特定连接的网络封包。选择性重播程序并可包括:重播在事件时间时,正在传输的至少一个网络连接的网络封包。选择性重播程序又可包括:重播在事件时间之前结束传输的至少一个网络连接的网络封包。其中上述的网络连接地址可为因特网协议地址(IP address)。而这些网络连接可为符合传输控制协议(Transmission Control Protocol,TCP)或使用者数据协议(User Datagram Protocol,UDP)。综上所述,本专利技术所提供的录制、还原与重播网络流量的方法能够解决浪费储存空间以及无法精准重现网络事件等问题。录制程序录制较有价值的网络流量,而节省了绝大的储存空间。还原程序亦可将录制程序省略或漏录的网络封包修复,以得到符合网络通信协议的完整的网络封包。且选择性重播程序能找出与本文档来自技高网
...

【技术保护点】
1.一种录制网络流量的方法,用以处理多个网络连接的多个网络封包,其特征在于,该方法包括:一录制程序,包括:接收一录制参数(N,M,P),其中N、M以及P为大于等于零的整数;完整录制该网络连接的每一该网络封包的一文件头以及一酬载,并累计每一该网络连接的一酬载总值;当该酬载总值之一超过N时,对与该酬载总值对应的该网络连接的连续P个该网络封包录制每一该网络封包的该文件头,以及该酬载的前M个字节;以及当该酬载总值之一超过N并对与该酬载总值对应的该网络连接连续录制P个该网络封包之后,对与该酬载总值对应的该网络连接的该网络封包录制每一该网络封包的该文件头。

【技术特征摘要】
1.一种录制网络流量的方法,用以处理多个网络连接的多个网络封包,
其特征在于,该方法包括:
一录制程序,包括:
接收一录制参数(N,M,P),其中N、M以及P为大于等于零的整数;
完整录制该网络连接的每一该网络封包的一文件头以及一酬载,并累计
每一该网络连接的一酬载总值;
当该酬载总值之一超过N时,对与该酬载总值对应的该网络连接的连续
P个该网络封包录制每一该网络封包的该文件头,以及该酬载的前M个字节;
以及
当该酬载总值之一超过N并对与该酬载总值对应的该网络连接连续录
制P个该网络封包之后,对与该酬载总值对应的该网络连接的该网络封包录制
每一该网络封包的该文件头。
2.如权利要求1所述的录制网络流量的方法,其特征在于,针对攻击
事件的该录制参数为(2000,200,1300)。
3.如权利要求1所述的录制网络流量的方法,其特征在于,针对病毒
事件的该录制参数为(6000,0,0)。
4.如权利要求1所述的录制网络流量的方法,其特征在于,该网络连
接符合传输控制协议或使用者数据协议。
5.一种录制与还原网络流量的方法,用以处理多个网络连接的多个网
络封包,其特征在于,该方法包括:
一录制程序,包括:
接收一录制参数(N,M,P),其中N、M以及P为大于等于零的整数;
完整录制该网络连接的每一该网络封包的一文件头以及一酬载,并累计
每一该网络连接的一酬载总值;
当该酬载总值之一超过N时,对与该酬载总值对应的该网络连接的连续
P个该网络封包录制每一该网络封包的该文件头,以及该酬载的前M个字节;
以及
当该酬载总值之一超过N并对与该酬载总值对应的该网络连接连续录


制P个该网络封包之后,对与该酬载总值对应的该网络连接的该网络封包录制
每一该网络封包的该文件头;以及
一还原程序,包括:
逐一检查该网络封包的该文件头以及该酬载是否完整;
当得到至少一个不完整的该网络封包时,判断其是否具有完整的该文件
头;以及
当不完整的该网络封包具有完整的该文件头时,执行下述步骤:
依据不完整的该网络封包的该文件头,得到不完整的该网络封包的一
酬载长度;以及
依据该酬载长度,写入一虚拟值作为不完整的该网络封包的该酬载。
6.如权利要求5所述的录制与还原网络流量的方法,其特征在于,针
对攻击事件的该录制参数为(2000,200,1300)。
7.如权利要求5所述的录制与还原网络流量的方法,其特征在于,针
对病毒事件的该录制参数为(6000,0,0)。
8.如权利要求5所述的录制与还原网络流量的方法,其特征在于,该
网络连接符合传输控制协议或使用者数据协议。
9.如权利要求5所述的录制与还原网络流量的方法,其特征在于,该
还原程序还包括:
当不完整的该网络封包具有不完整的该文件头时,执行下述步骤:
依据与不完整的该网络封包对应的该网络连接的其它该网络封包,修复
不完整的该网络封包的该文件头;
依据不完整的该网络封包的该文件头,得到不完整的该网络封包的该酬
载长度;以及
依据该酬载长度,写入该虚拟值作为不完整的该网络封包的该酬载。
10.如权利要求5所述的录制与还原网络流量的方法,其特征在于,该
还原程序还包括:
依据该网络连接的该文件头的一序号以及一确认号,找出被漏录的至少一
漏录封包;
依据与该漏录封包对应的该网络连接的其它该网络封包,修复该漏录封包
的该文件头;
依据该漏录封包的该文件头,得到该漏录封包的该酬载长度;以及
依据该酬载长度,写入该虚拟值作为该漏录封包的该酬载。
11.如权利要求5所述的录制与还原网络流量的方法,其特征在于,该
虚拟值为随机数...

【专利技术属性】
技术研发人员:林盈达郑宗寰赖源正陈一玮
申请(专利权)人:财团法人交大思源基金会
类型:发明
国别省市:71

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

1