CN103500088A - 一种用于key-value存储系统的trace序列的生成方法 - Google Patents
一种用于key-value存储系统的trace序列的生成方法 Download PDFInfo
- Publication number
- CN103500088A CN103500088A CN201310429837.3A CN201310429837A CN103500088A CN 103500088 A CN103500088 A CN 103500088A CN 201310429837 A CN201310429837 A CN 201310429837A CN 103500088 A CN103500088 A CN 103500088A
- Authority
- CN
- China
- Prior art keywords
- key
- trace
- value
- length
- sequence
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明为一种用于key-value存储系统的trace序列的生成方法,涉及计算机网络、存储系统和程序设计领域。现有数据集多用作自然语言处理,特定领域的规律分析(比如气象),几乎没有用于研究存储系统性能的trace数据集。网络数据报与key-value存储系统的请求序列有相似的规律。本发明的trace生成方法,基于网络包的pcap格式trace文件,使用网络包中的5元组作为key的基础,根据包出现的顺序构造put、get序列。本发明的trace生成方法适用于key-value系统的性能测试。
Description
技术领域
本发明涉及计算机网络、存储系统和程序设计领域,
背景技术
现有数据集多用作自然语言处理,特定领域的规律分析(比如气象),几乎没有用于研究存储系统性能的trace数据集。网络数据报与key-value存储系统的请求序列有相似的规律。可以将数据报中的5元组(源IP,目的IP,源端口,目的端口,传出层协议)作为key构造请求序列。
发明内容
本发明提出了一种基于网络trace生成key-value存储系统的请求序列的方法。
第一步,解析pcap报文,生成request文件。
1.1解析pcap报文
从pcap文件中读出一条pcap包之后,首先判断此包的长度,如果不满足网络层报文的长度则直接丢弃。如果满足,从IP报头读取源IP和目的IP,然后读取传输层协议类型,根据传输层协议(tcp或者udp)类型读取源端口和目的端口。这样就得到一个完整的5元组。对此5元组进行base64编码,将结果传递给分析函数(第1.2步实现)。之后进行下一个报文的分析。
1.2生成request文件
上一步获得的5元组作为key,首先要判断一个key是否出现过,这就要存储已经出现过的key。由于key的数目可能很多,不能仅仅使用内存来存放,因此本发明使用了一个key-value存储系统来存放已经出现过的key,判断key是否出现过只需要进行一次get操作即可。如果key存在则输出(get,key)元组,否则输出(put,key)。
整个过程如图1所示。
第二步,根据request文件,构造需要的请求序列。
需要构造的主要是value的长度。value长度变化较大,不同应用之间也有差别,可以根据均匀分布的随机序列构造各种分布的随机序列,如正态分布,指数分布。根据这些序列的结果设定value的长度,就能获得value长度满足不同分布的trace。
本发明从自身的需求出发,根据网络数据报构造key-value存储系统的请求队列。
附图说明
图1是一条pcap报文解析流程;
图2是pcap文件格式示意图;
图3是pcap包头结构。
具体实施方式
第一步,解析pcap报文,生成request文件。
1.1解析pcap报文
pcap的文件格式如图2所示,其中包头24字节,每个包头16字节,pcap数据实际上就是网络链路层的数据报(一般只会保留各层包头,丢弃实际的数据),长度随包的内容变化。包头的结构如图3所示。第13-16字节的长度标明了后面pcap数据的长度。最重要的5元组内容要从pcap数据段中获取,根据TCP/IP协议相关内容从IP包头中读取源IP、目的IP和协议类型,根据传输层TCP或UDP协议读取源端口和目的端口。相关内容可以从网上找到,本说明不做解释。得到5元组之后,因为底层的存储需要转化为字符串,为防止转化时出现信息丢失(0截断的情况),进行base64编码,将结果传递给下一步。处理完一条数据后继续处理下一条。
1.2生成request文件
上一步获得的5元组作为key1,将获得的五元组存入底层的存储(比如leveldb)。由5元组获得的key1长度变化不大,因此需要使用随机函数来生成不同长度key。随机函数可以根据均匀分布的随机函数构造各种分布的函数,比如指数分布,正态分布。具体的内容可以在原有的key1值基础上添加或者删除一些字符构造成新的key2,然后将key1作为key,key2作为value存入底层存储。判断key(key1)是否存在只需一次get操作就可以了。如果key(key1)存在则输出(get,key2)元组到request文件,否则输出(put,key2)元组。
第二步,根据request文件,构造需要的请求序列。
第一步已经获得了key以及具体的操作,这一步主要是构造value。value本身的内容是什么并不重要,只要长度满足一定的变化规律就可以了。可以复用1.2步的随机函数构造。逐行读取1.2生成的元组,如果是put,就生成随机的value,输出(put,key,value)到trace文件,如果是get,则输出(get,key)元组。
Claims (3)
1.一种用于key-value存储系统的trace序列的生成方法,其特征在于基于网络trace生成key-value存储系统的请求序列,具体为:
第一步,解析pcap报文,生成request文件,包括:
步骤1.1解析pcap报文,从pcap文件中读出一条pcap包之后,首先判断此包的长度,如果不满足网络层报文的长度则直接丢弃。如果满足,从IP报头读取源IP和目的IP,然后读取传输层协议类型,根据传输层协议(tcp或者udp)类型读取源端口和目的端口。这样就得到一个完整的5元组。对此5元组进行base64编码,将结果传递给分析函数(第1.2步实现)。之后进行下一个报文的分析。
步骤1.2生成request文件,上一步获得的5元组作为key,首先要判断一个key是否出现过,这就要存储已经出现过的key。由于key的数目可能很多,不能仅仅使用内存来存放,因此本发明使用了一个key-value存储系统来存放已经出现过的key,判断key是否出现过只需要进行一次get操作即可。如果key存在则输出(get,key)元组,否则输出(put,key)。
第二步,根据request文件,构造需要的请求序列。
需要构造的主要是value的长度。value长度变化较大,不同应用之间也有差别,可以根据均匀分布的随机序列构造各种分布的随机序列,如正态分布,指数分布。根据这些序列的结果设定value的长度,就能获得value长度满足不同分布的trace。
2.根据权利要求1所述的一种用于key-value存储系统的trace序列的生成方法,其特征在于,步骤1.1中使用网络报文的5元组作为key的基础,进行base64编码,然后根据随机函数构造不同长度的key。
3.根据权利要求1所述的一种用于key-value存储系统的trace序列的生成方法,其特征在于,步骤1.2中根据5元组是否出现过判断一次key-value系统的操作是put或者get,如果没有出现过是put,出现过则是get。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429837.3A CN103500088A (zh) | 2013-09-18 | 2013-09-18 | 一种用于key-value存储系统的trace序列的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310429837.3A CN103500088A (zh) | 2013-09-18 | 2013-09-18 | 一种用于key-value存储系统的trace序列的生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103500088A true CN103500088A (zh) | 2014-01-08 |
Family
ID=49865303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310429837.3A Pending CN103500088A (zh) | 2013-09-18 | 2013-09-18 | 一种用于key-value存储系统的trace序列的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103500088A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080222532A1 (en) * | 2004-11-30 | 2008-09-11 | Mester Michael L | Controlling and Monitoring Propagation Within a Network |
CN102929793A (zh) * | 2011-08-08 | 2013-02-13 | 株式会社东芝 | 包括键-值存储的存储器系统 |
CN103023982A (zh) * | 2012-11-22 | 2013-04-03 | 中国人民解放军国防科学技术大学 | 一种云存储客户端的低延迟元数据访问方法 |
WO2013075306A1 (zh) * | 2011-11-24 | 2013-05-30 | 华为技术有限公司 | 数据访问方法和装置 |
-
2013
- 2013-09-18 CN CN201310429837.3A patent/CN103500088A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080222532A1 (en) * | 2004-11-30 | 2008-09-11 | Mester Michael L | Controlling and Monitoring Propagation Within a Network |
CN102929793A (zh) * | 2011-08-08 | 2013-02-13 | 株式会社东芝 | 包括键-值存储的存储器系统 |
WO2013075306A1 (zh) * | 2011-11-24 | 2013-05-30 | 华为技术有限公司 | 数据访问方法和装置 |
CN103023982A (zh) * | 2012-11-22 | 2013-04-03 | 中国人民解放军国防科学技术大学 | 一种云存储客户端的低延迟元数据访问方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11757739B2 (en) | Aggregation of select network traffic statistics | |
US10652265B2 (en) | Method and apparatus for network forensics compression and storage | |
Lee et al. | Toward scalable internet traffic measurement and analysis with hadoop | |
CN102035698B (zh) | 基于决策树分类算法的http隧道检测方法 | |
CN106980669B (zh) | 一种数据的存储、获取方法及装置 | |
US20120182891A1 (en) | Packet analysis system and method using hadoop based parallel computation | |
WO2019024623A1 (zh) | 一种流量测量方法、设备及系统 | |
CN104394211A (zh) | 一种基于Hadoop用户行为分析系统设计与实现方法 | |
CN102202064A (zh) | 基于网络数据流分析的木马通信行为特征提取方法 | |
CN102611626B (zh) | 网络流量解析系统及方法 | |
CN103188112A (zh) | 网络流量检测方法及装置 | |
CN104579974A (zh) | 面向ndn中名字查找的哈希布鲁姆过滤器及数据转发方法 | |
CN105989061A (zh) | 一种滑动窗口下多维数据重复检测快速索引方法 | |
WO2020228527A1 (zh) | 数据流的分类方法和报文转发设备 | |
Bumgardner et al. | Scalable hybrid stream and hadoop network analysis system | |
CN107454120A (zh) | 网络攻击防御系统和防御网络攻击的方法 | |
CN104486116A (zh) | 多维度查询流量数据的方法及系统 | |
CN104009984A (zh) | 基于倒排列表的网流索引检索与压缩的方法 | |
CN108206788A (zh) | 一种流量的业务识别方法及相关设备 | |
WO2021082936A1 (zh) | 一种网页访客数量统计方法及装置 | |
Zhou et al. | Exploring Netfow data using hadoop | |
CN103500088A (zh) | 一种用于key-value存储系统的trace序列的生成方法 | |
US20110252039A1 (en) | System, apparatus and method for processing content on a computing device | |
Elsen et al. | goProbe: a scalable distributed network monitoring solution | |
CN116910144A (zh) | 算力网络资源中心、算力服务系统以及数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140108 |