电子工程专辑
UBM China

用CAM实现OC-48线速字符串匹配的FPGA设计

上网日期: 2007年03月09日 ?? 作者: 陈小平 ?? 我来评论 字号:放大 | 缩小 分享到:sina weibo tencent weibo tencent weibo


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友

关键字:CAM? OC-48? Pattern-Strings? 模式字符串匹配?

互联网络蓬勃发展的今天,在网络入侵检测系统(NIDS)中,大部分的网络入侵检测设备几乎都依赖于一些基于特征码检测的字符串匹配算法,而字符串匹配算法的实现几乎都是由软件来实现的。目前应用比较成功的实例有,Snort软件使用字符串匹配算法对包含特征码的数据包进行检测。但是软件在内容字节流中进行搜索匹配时,需要在不同的处理单元中/内搬移或读取数据,这对于高速实现线速(OC-48)的检测系统来说,带来了很大的处理负荷。因此,如果采用硬件在数据包进入内存之前实现字符串匹配这一功能,将大大减少后端软件操作的处理负载。

基于IXP2400和FPGA的系统结构

IXP2400是英特尔公司推出的第二代网络处理器芯片,大量应用于宽带接入、防火墙、NIDS和负载均衡等系统中,它能满足OC-48网络线速的处理要求。玉衡铱达公司设计开发的骨干网络监控系统采用了IXP2400作为数据包主处理器,FPGA作为协处理器的硬件架构来实现,系统结构框图如图1所示。

如图1所示,系统外接了4个千兆光口,用以接收和发送数据包,它是整个监控系统和骨干网络的交际通道。光口数据包通过光模块进入PMC-Sierra公司的MAC3386芯片。接收数据包时,以太网帧数据包从千兆光口进入MAC3386,MAC3386对数据包进行解码后通过POS PHY3接口进入FPGA的FIFO单元,同时对进入FPGA的数据包进行模式字符串(Pattern-String)的匹配操作,处理后的数据包通过POS PHY3接口传输到IXP2400的MSF单元进行下一步的处理。发送时,FPGA只需要将IXP2400发送来的数据包通过POS PHY3接口传输给MAC3386,MAC3386对数据包进行编码后发送给光模块,光模块通过光口将数据包发送出去。IXP2400提供了一组数据总线来访问外部设备寄存器,IXP2400中称之为慢端口(Slow Port)。在这里,和FPGA相连的慢端口总线的一部分功能是作为写入FPGA的模式字符串通道。


图1:基于IXP2400和FPGA的系统结构示意图。

POS PHY3是一种标准化的网络传输接口,接口数据传输速率为2.5Gbps,最大支持OC-48的传输速率接口。POS PHY3包括接收和发送两组32位总线,工作频率为104MHz,峰值吞吐率为3.2Gbps。支持2.5Gbps数据包的全双工操作。POS PHY3接口接收时序图如图2所示。


图2:POS PHY3接口接收逻辑时序图。

该时序图描述了POS PHY3接口接收数据包时,数据流在POS PHY3总线上的传输方式和相关的控制信号关系。关于更进一步的详细描述可以参考POS PHY3接口标准文档。

系统采用时钟同步设计,在时钟上升沿进行数据采样,与FPGA相连的MAC3386、IXP2400的工作时钟由FPGA的DCM单元提供,可以保证数据采集的同步和稳定性。


1???2???3?下一页?最后一页





我来评论 - 用CAM实现OC-48线速字符串匹配的FPGA设计
评论:
*? 您还能输入[0]字
分享到: 新浪微博 qq空间
验证码:
????????????????
?

关注电子工程专辑微信
扫描以下二维码或添加微信号“eet-china”

访问电子工程专辑手机网站
随时把握电子产业动态,请扫描以下二维码

?

5G网络在提供1Gbps至10Gbps吞吐量方面具有很好的前途, 并且功耗要求比今天的网络和手机都要低,同时还能为关键应用提供严格的延时性能。本期封面故事将会与您分享5G的关键技术发展,以及在4G网络上有怎样的进步。

?
?
有问题请反馈
推荐到论坛,赢取4积分X