[发明专利]一种用于key-value存储系统的trace序列的生成方法无效
申请号: | 201310429837.3 | 申请日: | 2013-09-18 |
公开(公告)号: | CN103500088A | 公开(公告)日: | 2014-01-08 |
发明(设计)人: | 王雷;赵玉龙;王宇 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 key value 存储系统 trace 序列 生成 方法 | ||
技术领域
本发明涉及计算机网络、存储系统和程序设计领域,
背景技术
现有数据集多用作自然语言处理,特定领域的规律分析(比如气象),几乎没有用于研究存储系统性能的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)元组。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310429837.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:校车安全即时无线发讯器
- 下一篇:储物盒嵌入式冰箱