[发明专利]一种数据包生成器及数据包生成方法在审
申请号: | 202010968007.8 | 申请日: | 2020-09-15 |
公开(公告)号: | CN112104651A | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 徐明伟;周禹;席照炜;张岱;王旸旸;吴建平 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 北京聿宏知识产权代理有限公司 11372 | 代理人: | 吴大建;胡晓男 |
地址: | 100084 北京市海淀区1*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据包 生成器 生成 方法 | ||
1.一种数据包生成器,其特征在于,所述数据包生成器在可编程交换机中实现,所述可编程交换机包括交换机CPU和转发芯片,包括:
模板数据包生成模块,在所述交换机CPU中实现,用于生成模板数据包,并将所述模板数据包转发给测试报文生成模块;
测试数据包生成模块,在所述转发芯片中实现,用于利用所述模板数据包生成对应的测试数据包;
其中,所述模板数据包与测试报文数据包具有相同的头部结构、载荷和长度;所述模板数据包头部的预设域的值与所述测试数据包头部的对应域的值不同。
2.根据权利要求1所述的数据包生成器,其特征在于,所述模板数据包生成模块在生成模板数据包,并将所述模板数据包转发给测试数据包生成模块时,用于:
为模板数据包分配预设长度的缓存,所述缓存的预设长度为模板数据包的长度,所述模板数据包的头部和载荷在缓存中存储;
对所述模板数据包的载荷及头部中的字段进行初始化,得到模板数据包;
将所述模板数据包传输至所述测试数据包生成模块。
3.根据权利要求1所述的数据包生成器,其特征在于,所述测试数据包生成模块,包括:
加速器,用于对所述模板数据包生成模块转发的所述模板数据包进行加速处理;
复制器,用于通过复制所述模板数据包生成新的数据包;
编辑器,用于对所述新的数据包头部的预设域进行修改,以生成测试数据包。
4.根据权利要求3所述的数据包生成器,其特征在于,所述加速器在对所述模板数据包生成模块转发的所述模板数据包进行加速处理时,用于:
对每一个模板数据包进行重传,各模板数据包在回环过程中不断传播。
5.根据权利要求3所述的数据包生成器,其特征在于,所述复制器在通过复制所述模板数据包生成新的数据包,并对生成速率进行控制时,用于:
对所述加速器加速处理后的模板数据包进行复制,以预设生成速率生成新的数据包。
6.根据权利要求5所述的数据包生成器,其特征在于,所述复制器,包括:
速率控制计时器,用于通过调整复制的间隔时间,以控制通过复制所述模板数据包生成新的数据包的速率达到预设生成速率;
多播引擎,用于将传入的模板数据包进行复制生成新的数据包,模板数据包继续通过所述加速器进行加速处理,生成的新的数据包送入编辑器。
7.根据权利要求6所述的数据包生成器,其特征在于,所述速率控制计时器在通过调整复制的间隔时间,以控制通过复制所述模板数据包生成新的数据包的速率达到预设生成速率时,用于:
记录上次复制时间;
每当模板数据包到达时,判断当前时间距离上次复制时间是否超过预设阈值;
如果超过预设阈值,则将模板数据包发送至多播引擎,并更新上次复制时间。
8.根据权利要求3所述的数据包生成器,其特征在于,所述编辑器对所述新的数据包头部的预设域进行修改时,采用如下修改方式之一:
将固定值给所述预设域赋值;或者
将预设列表中的预设值按顺序给所述预设域赋值;或者
按等差数列的顺序给所述预设域赋值;或者
按照预设分布生成值给所述预设域赋值。
9.一种数据包生成方法,其特征在于,所述方法在可编程交换机中实现,所述可编程交换机包括交换机CPU和转发芯片,所述方法包括:
所述交换机CPU生成模板数据包,并将所述模板数据包进行转发;
所述转发芯片利用所述模板数据包生成对应的测试数据包;
其中,所述模板数据包与测试报文数据包具有相同的头部结构、载荷和长度;所述模板数据包头部的预设域的值与所述测试数据包头部的对应域的值不同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010968007.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种分子预测模型的构建方法和计算设备
- 下一篇:触控显示装置及电子设备