CN201243314Y - Ip包合片协处理器 - Google Patents

Ip包合片协处理器 Download PDF

Info

Publication number
CN201243314Y
CN201243314Y CNU2008200635620U CN200820063562U CN201243314Y CN 201243314 Y CN201243314 Y CN 201243314Y CN U2008200635620 U CNU2008200635620 U CN U2008200635620U CN 200820063562 U CN200820063562 U CN 200820063562U CN 201243314 Y CN201243314 Y CN 201243314Y
Authority
CN
China
Prior art keywords
interface
spi
coprocessor
bag
assembly
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.)
Expired - Fee Related
Application number
CNU2008200635620U
Other languages
English (en)
Inventor
李晓云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Westone Information Industry Inc
Original Assignee
Chengdu Westone Information Industry Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Westone Information Industry Inc filed Critical Chengdu Westone Information Industry Inc
Priority to CNU2008200635620U priority Critical patent/CN201243314Y/zh
Application granted granted Critical
Publication of CN201243314Y publication Critical patent/CN201243314Y/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种IP包合片协处理器,包括系统计时器、计数器、系统复位器、合片处理引擎、哈希表、IP合片存储区、发送控制器、DDR接口和符合SPI-3标准的一组双向接口控制器,SPI-3接口控制器内置了FIFO缓存,用于SPI-3接口发送和接收数据缓存,以及接口与模块内部的逻辑相连;本实用新型将网络IP包的合片重组处理实现于一片芯片中,性能可以满足在千兆速率情况下无阻塞处理,并将完整的IP数据包回馈到主系统。网络IP包合片重组协处理器的接口设计遵循工业标准,有利于芯片化实现,可应用与诸如IPSec VPN等安全网关类产品,以提高系统处理性能,降低整机成本,市场推广前景良好。

Description

IP包合片协处理器
技术领域
本实用新型涉及一种TCP/IP网络对IP数据包进行加速处理的协处理器。
背景技术
随着高速发展的信息技术和政府大力推行信息网络建设,人们在日常生活中感受到了前所未有的信息资源共享的便利,目前网络技术正在大规模应用到国民经济的每一个角落:校园网、城域网、党政网、企业网等。在当前经济持续发展的大环境下,诸如视频组播、高清晰度电视、实时游戏以及分布式计算等宽带网络业务将加速开展,要求高性能的网络基础设施为用户带来更高的业务效率。
当前的网络及设备都采用TCP/IP协议进行互联,在这种网络环境下,经过多次网络数据设备链路层转发或者网络安全设备封装解封装后必然存在IP数据包的分片,根据标准的网络协议,数据必需正确的合片,而传统的网络设备采用基于CPU的软件方式实现IP数据包的合片(比如中高端基于Linux/Unix操作系统的网络设备、低端嵌入式的网络设备等),这必将使IP数据包的合片成为系统的速度瓶颈,影响系统整机性能。
实用新型内容
本实用新型的目的是:提供一种提高系统整机运行速度的IP包合片协处理器。
本实用新型的目的是通过实施下述技术方案來实现的:
一种IP包合片协处理器,其特征在于:所述IP包合片协处理器为合片处理模块,模块内部包括系统计时器、计数器、系统复位器RESET、合片处理引擎、哈希表HASH、IP合片存储区、发送控制器、DDR接口和符合SPI-3标准的一组双向接口控制器,SPI-3接口控制器内置了FIFO缓存,用于SPI-3接口发送和接收数据缓存,以及接口与模块内部的逻辑相连;
合片处理引擎通过SPI-3输入接口接收系统传输的IP分片包信息,IP分片包无效直接从SPI-3输出接口发送到系统,如果有效,则计算HASH值,在HASH表找到一个空表项保存IP分片包信息,并将分片包信息通过DDR接口导入与HASH表项位置计算出对应的DDR存储器包缓冲区基地址暂存,当所有的分片收齐,将暂存在DDR存储器的IP数据包导入IP合片存储区相应位置,通过发送控制器经SPI-3输出接口发送到系统。
如权利要求1所述的IP包合片协处理器,其中SPI-3输入接口信号包括如下:
(1)系统向协处理器传送数据的同步时钟信号TFCLK;
(2)系统向协处理器发送数据时的写使能信号TENB;
(3)系统向协处理器发送数据时的数据总线TDAT[31:0];
(4)系统向协处理器发送数据时的有效字节指示信号;TMOD[1:0];
(5)系统向协处理器发送数据时的总线奇偶校验信号TPRTY;
(6)系统向协处理器发送数据时的包起始信号TSOP;
(7)系统向协处理器发送数据时的包结束信号TEOP;
(8)系统向协处理器发送数据时的错误指示信号TERR;
(9)系统向协处理器发送数据时的允许写指示信号DTPA;
SPI-3输出接口信号包括如下:
(1)系统从协处理器接收数据的同步时钟信号RFCLK;
(2)系统从协处理器读取数据时的写使能信号RENB;
(3)系统从协处理器读取数据时的数据总线RDAT[31:0];
(4)系统从协处理器读取数据时的有效字节指示信号;RMOD[1:0];
(5)系统从协处理器读取数据时的总线奇偶校验信号RPRTY;
(6)系统从协处理器读取数据时的数据有效信号RVAL;
(7)系统从协处理器读取数据时的包起始信号RSOP;
(8)系统从协处理器读取数据时的包结束信号REOP;
(9)系统从协处理器读取数据时的错误指示信号RERR。
本实用新型借助大规模集成电路技术、计算机辅助设计技术和电子设计自动化(EDA)技术,将网络IP包的合片重组处理实现于一片芯片中,即IP包合片协处理器。该协处理器可以完成IP分片包的重组功能,性能可以满足在千兆速率情况下无阻塞处理,并将完整的IP数据包回馈到主系统。网络IP包合片重组协处理器的接口设计遵循工业标准(SPI-3标准接口),有利于芯片化实现,可应用与诸如IPSec VPN等安全网关类产品,以提高系统处理性能,降低整机成本,市场推广前景良好。
附图说明
图1是IP合片协处理器功能框图。
图2是本实用新型使用状态示意图。
具体实施方式
下面结合附图对本实用新型作进一步的说明:
本实用新型使用FPGA器件作为设计验证原型。在FPGA器件内部利用可编程逻辑器件的门阵列资源实现了一个遵循TCP/IP协议要求的合片处理模块,如图1所示,模块内部包括系统计时器、计数器、合片处理引擎、哈希表(SRAM)、IP合片存储区(SRAM)、DDR接口和符合SPI-3标准的接口控制器,SPI-3接口控制器内置了512字节的FIFO缓存,用于SPI-3接口发送和接收数据缓存,芯片内部通过FIFO接口与内部逻辑相连。
接口信号说明:
Figure Y200820063562D00051
如图2所示,本实用新型的协处理器是一个专用芯片,通过一组双向的SPI-3接口信号和主系统连接进行数据通信,串行嵌入系统的IP协议处理流程,通过一组DDR/DDR II接口外接存储器,用于缓存大量的分片包。
以下本实例采用16M字节的DDR存储器作为IP数据包缓存,128K字节的内部HASH表,8K字节的内部合片存储区。HASH表中每一表项占用32字节,其中记录有表项已分配标志、IP包的到达时间计数、IP包的ID、源IP地址、目的IP地址、协议号和包偏移量、包长度等信息。设计中每一个完整的IP数据包占用一个HASH表项和4K字节的包缓存区,因此在合片操作过程中可以对4096个IP数据包进行缓存。
其具体操作处理过程如下:
1、主系统将IP分片包通过SPI-3输入接口发送给合片协处理器的合片处理引擎,检查数据总线上的TENB信号(低电平有效)和TSOP信号(高电平有效),如果两个信号都有效,则开始以太网帧接收并对接收数据开始计数;
2、对于以太网帧头来说,帧头中的协议类型字段位置是固定的,合片处理引擎通过接收数据计数可以正确的找到协议类型字段并由此计算出IP头的偏移;然后通过接收数据计数和IP头偏移比对,相等时,则开始接收IP头;
3、合片处理引擎对接收到的IP头进行分析,检查IP头中的IP头长度和IP头校验,确定IP包是否有效。如果IP包无效则丢弃,直接从SPI-3输出接口发送到系统;否则继续第4步;
4、合片处理引擎从IP头中提取源IP地址、目的IP地址、协议类型、IP包ID,计算出一个HASH值,根据HASH值在HASH表中快速定位,查找HASH表中是否已经存在和当前分片同属一个IP数据包的分片。如果不存在,继续第5步,否则跳转到第6步;
5、在HASH表中找到一个空表项保存当前分片的源IP地址、目的IP地址、协议类型、包ID,以及此包的偏移、长度信息,同时将IP数据包导入相应包缓冲区进行暂存;返回第1步处理;
6、从HASH表中读取已存在的一个或多个IP分片包偏移、长度信息,与本IP分片包的偏移、长度一起综合判断IP分片包是否收齐,如果没有收齐继续第7步,否则跳转到第8步;
7、在同一HASH表项中记录本IP分片包的偏移、长度信息,并将IP数据包导入包缓冲区,导入地址由该HASH表项位置计算出对应包缓冲区基地址,再加上本IP分片包的偏移量;在导入过程的同时削除IP分片包的重叠数据;返回第1步处理;
8、如果分片收齐,则根据该HASH表项位置计算出对应包缓冲区基地址,将暂存的IP数据包从包缓冲区导入写进8K字节的合片存储区,然后再将本IP分片包根据偏移量写入合片存储区相应地址,完成IP包的重组,重组过程中同时消除了IP分片数据重叠。
9、通过SPI-3输出接口将重组的IP包发送给主系统。
在上述处理过程中可能会出现存储资源耗尽的情况,此时仍然有新的IP分片包到达(如系统在受到IP碎片攻击的情况)。在这种情况下合片协处理器在收到新的IP分片包时,在进行HASH表的查找过程中会对每一HASH表项中记录的包到达时间进行比较,找到到达时间最老的IP分片包的地址,如果没有空闲资源分配给新到达的IP分片包,将会把到达时间最老的分片包丢弃,并释放其占用的资源,分配给新到达的IP分片包。由于所有的IP碎片攻击包都在包合片协处理中暂存,不会占用主系统的资源,避免了主系统资源被碎片包耗尽而导致的系统瘫痪。
通过上述具体实施方式可以看出合片协处理的应用具有以下特点:
1、高性能——以硬件为中心,实现了细粒度、高度并行的多级流水线架构,确保了用户业务数据包的高速处理。
2、抗IP碎片攻击——IP碎片包不占用主系统的资源,全部交给合片协处理器缓存,可以有效地避免由于IP碎片攻击所导致的主系统瘫痪;
3、符合标准的工业标准的接口设计,与主系统相对独立,工作安全可靠,应用范围较广;
上述实例只是在一定的资源情况下对系统进行了说明,还可以对其进行灵活配置和规模扩展,使用更大容量的DDR和SRAM存储器,以适应对更多IP数据包缓存和处理更多IP分片包的需求。

Claims (1)

1、一种IP包合片协处理器,其特征在于:所述IP包合片协处理器为合片处理模块,模块内部包括系统计时器、计数器、系统复位器RESET、合片处理引擎、哈希表HASH、IP合片存储区、发送控制器、DDR接口和符合SPI-3标准的一组双向接口控制器,SPI-3接口控制器内置了FIFO缓存,用于SPI-3接口发送和接收数据缓存,以及接口与模块内部的逻辑相连;
合片处理引擎通过SPI-3输入接口接收系统传输的IP分片包信息,IP分片包无效直接从SPI-3输出接口发送到系统,如果有效,则计算HASH值,在HASH表找到一个空表项保存IP分片包信息,并将分片包信息通过DDR接口导入与HASH表项位置计算出对应的DDR存储器包缓冲区基地址暂存,当所有的分片收齐,将暂存在DDR存储器的IP数据包导入IP合片存储区相应位置,通过发送控制器经SPI-3输出接口发送到系统。
CNU2008200635620U 2008-05-28 2008-05-28 Ip包合片协处理器 Expired - Fee Related CN201243314Y (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNU2008200635620U CN201243314Y (zh) 2008-05-28 2008-05-28 Ip包合片协处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNU2008200635620U CN201243314Y (zh) 2008-05-28 2008-05-28 Ip包合片协处理器

Publications (1)

Publication Number Publication Date
CN201243314Y true CN201243314Y (zh) 2009-05-20

Family

ID=40716608

Family Applications (1)

Application Number Title Priority Date Filing Date
CNU2008200635620U Expired - Fee Related CN201243314Y (zh) 2008-05-28 2008-05-28 Ip包合片协处理器

Country Status (1)

Country Link
CN (1) CN201243314Y (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102256182A (zh) * 2011-07-26 2011-11-23 重庆大唐科技股份有限公司 一种基于rtp协议的视频流分片组帧方法
CN103580805A (zh) * 2013-10-30 2014-02-12 华为技术有限公司 报文的处理方法及装置
CN112100119A (zh) * 2020-08-18 2020-12-18 中国科学院声学研究所 一种基于fpga的高速以太网帧重构系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102256182A (zh) * 2011-07-26 2011-11-23 重庆大唐科技股份有限公司 一种基于rtp协议的视频流分片组帧方法
CN103580805A (zh) * 2013-10-30 2014-02-12 华为技术有限公司 报文的处理方法及装置
CN103580805B (zh) * 2013-10-30 2017-06-27 华为技术有限公司 报文的处理方法及装置
CN112100119A (zh) * 2020-08-18 2020-12-18 中国科学院声学研究所 一种基于fpga的高速以太网帧重构系统

Similar Documents

Publication Publication Date Title
CN1937631B (zh) 用户数据报协议报文的处理方法及装置
CN112422389B (zh) 基于芯片级加密的以太网和现场总线融合网关及传输方法
CN100370788C (zh) 在网络环境仿真中采用虚拟网卡实现数据通信的方法
CN109089029B (zh) 一种基于FPGA的Gige Vision接口图像传输系统与方法
CN100495985C (zh) 快速检测以太网交换机环路故障的方法
CN104883335A (zh) 一种全硬件tcp协议栈实现方法
CN101436978A (zh) 使用udp协议进行可靠数据传输的方法
CN103001827A (zh) 基于万兆网卡的以太网包检验和fpga硬件校验方法
EP2723031B1 (en) Distributed measurement arrangement for an embedded automotive acquisition device with tcp acceleration
CN103346963A (zh) 一种基于预测到达时间的mptcp数据调度方法
CN201243314Y (zh) Ip包合片协处理器
CN105791252A (zh) 基于fpga的udp协议ip核
CN101300790B (zh) 通信设备和方法
CN103746945B (zh) 一种数据传输装置及方法
CN108614792B (zh) 1394事务层数据包存储管理方法及电路
CN102255800B (zh) Can总线上ip数据包和can消息之间数据格式相互转换的方法
CN103617132B (zh) 一种基于共享存储的以太网终端发送实现方法及终端装置
CN101388570A (zh) 变电站自动化系统数据流快速可靠交互方法
CN102263618A (zh) 无线网络拥塞控制方法、装置及系统
CN101197742B (zh) 设备间通过以太网接口传递额外数据的系统及方法
CN107566294A (zh) 一种适用于iec62439标准的网络风暴抑制方法
CN105262970B (zh) 一种基于图像数据的封装方法及系统
CN101631074B (zh) 一种多链路报文发送方法、装置和网络设备
CN102790663A (zh) 一种应用于vlbi硬件相关处理机的全硬件网络接口
CN100544314C (zh) 窄带数据流在宽带网中组播和/或广播传输的方法及装置

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090520

Termination date: 20170528

CF01 Termination of patent right due to non-payment of annual fee