华南理工大学学报(自然科学版) ›› 2017, Vol. 45 ›› Issue (7): 90-97,106.doi: 10.3969/j.issn.1000-565X.2017.07.013

• 计算机科学与技术 • 上一篇    下一篇

基于布鲁姆过滤器的面向 IP 包识别的 CPBF 算法

李龙飞 贺占庄 史阳春   

  1. 西安微电子技术研究所 集成电路设计部,陕西 西安 710065
  • 收稿日期:2016-05-26 修回日期:2017-02-21 出版日期:2017-07-25 发布日期:2017-06-01
  • 通信作者: 李龙飞( 1988-) ,男,博士生,主要从事计算机网络硬件加速技术研究. E-mail:longfeisos@163.com
  • 作者简介:李龙飞( 1988-) ,男,博士生,主要从事计算机网络硬件加速技术研究.
  • 基金资助:
    总装备部军用电子元器件型谱系列科研项目( 1407XJ0900)

CPBF: an IP Package Identification Algorithm Using Bloom Filter

LI Long-fei HE Zhan-zhuang SHI Yang-chun   

  1. Department of Integrated Circuit Design,Xi'an Microelectronics Technology Institute,Xi'an 710065,Shaanxi,China
  • Received:2016-05-26 Revised:2017-02-21 Online:2017-07-25 Published:2017-06-01
  • Contact: 李龙飞( 1988-) ,男,博士生,主要从事计算机网络硬件加速技术研究. E-mail:longfeisos@163.com
  • About author:李龙飞( 1988-) ,男,博士生,主要从事计算机网络硬件加速技术研究.
  • Supported by:
    Supported by the Scientific Research Project of Military Electronic Components Portfolio of General Armament Department( 1407XJ0900)

摘要: 针对现有布鲁姆过滤器在流识别应用中对每个 IP 包进行相同的处理,未考虑 IP包识别失效代价和硬件开销的问题,提出一种面向 IP 包识别的算法——CPBF( Classified and Pipelined Bloom Filter) . 该算法通过引入 IP 头中服务类型作为识别失效代价的判断依据对 IP 包进行分类,根据分类结果采取不同数目的 Hash 函数进行映射,降低高失效代价 IP 包的识别失效率; 同时在 Hash 计算中采用流水机制加速识别速率; 基于概率论、微分方程等相关知识对 CPBF 算法进行了描述和理论分析,最后在 FPGA 上对算法进行实现和实验. 结果表明,与标准布鲁姆过滤器、多维布鲁姆过滤器相比,CPBF 在具有较低的识别失效率和硬件开销的同时,也能保持较高的识别速率.

关键词: 布鲁姆过滤器, CPBF 算法, IP 包识别, 识别失效代价, Hash 函数

Abstract: As the traditional Bloom filters adopt the same process for different IP packages and ignore not only IP package identification invalidation cost but also hardware resource in the process of flow identification,an algorithm called CPBF ( Classified and Pipelined Bloom Filter) for IP package identification is presented.CPBF differentiates IP packages depending on ToS ( Type of Service),which can reflect their identification invalidation cost in some ways.In order to minimize the identification invalidation rate,different numbers of Hash functions are applied to different types of IP packages.Specifically,pipelined Hash functions are adopted to accelerate the identification speed.Moreover,on the basis of the theories of probability and differential equation,the description and analytical expression of CPBF are deduced.Finally,an implementation of CPBF is conducted on FPGA.The results indicate that CPBF is superior to standard Bloom filter and multi-dimensional Bloom filter because it helps achieve lower i- dentification invalidation rate and hardware resource cost without sacrificing identification speed.

Key words: Bloom filter, CPBF algorithm, IP package identification, identification invalidation cost, Hash function