[发明专利]一种基于MAC/IP地址分类统计的硬件实现方法有效

专利信息
申请号: 201010102879.2 申请日: 2010-01-29
公开(公告)号: CN102014112A 公开(公告)日: 2011-04-13
发明(设计)人: 韦国英;刘钧锴;胡敏 申请(专利权)人: 柳州市达迪通信设备有限公司
主分类号: H04L29/06 分类号: H04L29/06;H04L12/56
代理公司: 北京市盛峰律师事务所 11337 代理人: 李贺香
地址: 100083 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 mac ip 地址 分类 统计 硬件 实现 方法
【说明书】:

技术领域

发明涉及一种硬件实现方法,特别是涉及一种基于MAC/IP地址分类统计的硬件实现方法。

背景技术

在进行网络分析时,需要根据不同的MAC/IP地址进行不同报文长度的分类统计计算。当网络报文数据非常大时,往往无法通过软件来进行统计处理,所以必须经过硬件完成统计过程。FPGA具有编码灵活、易于升级等特点,已经被广泛应用在网络通信处理过程中,但是,在基于不同的MAC/IP地址进行不同报文长度的统计过程中,如何查询MAC/IP地址表成了需要解决的问题。目前,通常采用附加芯片完成地址表的查询过程,这样,增加了设备实现的复杂度和成本。

发明内容

本发明旨在提供一种通过FPGA实现MAC/IP地址标的查询方式,从而实现基于不同MAC/IP地址的不同报文长度的分类统计要求的硬件实现方法。

本发明一种基于MAC/IP地址分类统计的硬件实现方法:包括以下步骤:

第一步:提取网络报文MAC/IP地址,并计算报文长度;

第二步:将DDR存储空间划分为cell,使每个cell的存储空间为64字节,提供一个用于存储一个cell的数据的32字节×16的RAM;cell的定义见表1;

第三步:将MAC/IP地址进行16位Hash计算得到16位值;

第四步:将上一步的值前面加一位0构成17位DDR地址;

第五步:读取此地址中的有效标志vld和MAC/IP,并比较报文中的MAC/IP地址和此MAC/IP:

第六步:如果vld=1,则继续,否则跳至第十四步,

第七步:比较MAC/IP地址是否相等,如果相等,则跳至第十三步,否则继续;

第八步:将MAC/IP地址再次进行16位Hash计算得到16位值;

第九步:将上一步的值前面加一位1构成17位DDR地址;

第十步:读取此地址中的有效标志vld和MAC/IP,并比较报文中的MAC/IP地址和此MAC/IP:

第十一步:如果vld=1,则继续,否则跳至第十四步,

第十二步:MAC/IP地址是否相等,如果相等,则跳至第十五步,否则,冲突标志conflict置为1,冲突次数Number加1,并将冲突状态写入DDR;

第十三步:从对应地址的DDR中读取统计值;

第十四步:将长度对应范围的值加1,标志vld置1;

第十五步:将统计值,标志,MAC/IP地址写入DDR中。

进一步地,所述硬件实现方法的第二步中,cell的具体定义见表1:

             表1 cell的具体定义

其中:Vld,为1表示该cell已经被一个MAC/IP地址占用;

Conflict,仅在高64K个cell中有效,即第二次hash计算有冲突;

Number,仅在高64K个cell中有效,冲突次数计数;

MAC/IP地址,当产生该cell地址的MAC/IP地址与cell中记录的不一致则说明发生冲突。

本发明一种基于MAC/IP地址分类统计的硬件实现方法的有益效果在于:

本发明一种基于MAC/IP地址分类统计的硬件实现方法能够在不用附加芯片的情况下实现MAC/IP查询,并进行分类统计的问题,同时,本发明一种基于MAC/IP地址分类统计的硬件实现方法可以满足千兆网卡全线速报文的实时统计效率。

附图说明

图1是本发明一种基于MAC/IP地址分类统计的硬件实现方法的算法流程图。

具体实施方式

本发明一种基于MAC/IP地址分类统计的硬件实现方法,参见附图1:首先,提取网络报文MAC/IP地址,并计算报文长度;之后将DDR存储空间划分为cell,使每个cell的存储空间为64字节,提供一个用于存储一个cell的数据的32字节×16的RAM;cell的具体定义见表1:

                 表1 cell的具体定义

其中:Vld,为1表示该cell已经被一个MAC/IP地址占用;

Conflict,仅在高64K个cell中有效,即第二次hash计算有冲突;

Number,仅在高64K个cell中有效,冲突次数计数;

MAC/IP地址,当产生该cell地址的MAC/IP地址与cell中记录的不一致则说明发生冲突;之后,将MAC/IP地址进行16位Hash计算得到16位值;之后,将上一步的值前面加一位0构成17位DDR地址;之后,读取此地址中的有效标志vld和MAC/IP,并比较报文中的MAC/IP地址和此MAC/IP:之后,如果vld=1,则继续,否则跳至第十四步;之后,比较MAC/IP地址是否相等,如果相等,则跳至第十三步,否则继续;之后,将MAC/IP地址再次进行16位Hash计算得到16位值;之后,将上一步的值前面加一位1构成17位DDR地址;之后,读取此地址中的有效标志vld和MAC/IP,并比较报文中的MAC/IP地址和此MAC/IP:之后,如果vld=1,则继续,否则跳至第十四步;之后,MAC/IP地址是否相等,如果相等,则跳至第十五步,否则,冲突标志conflict置为1,冲突次数Number加1,并将冲突状态写入DDR;之后,从对应地址的DDR中读取统计值;之后,将长度对应范围的值加1,标志vld置1;最后,将统计值,标志,MAC/IP地址写入DDR中。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于柳州市达迪通信设备有限公司,未经柳州市达迪通信设备有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010102879.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top