|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一种高并发网络环境下快速流表查找方法
# B; W* o- W) X摘要:为了改进高速网络环境下连接表的查找速度,本文首先分析了OC-192骨干链路上的流量特征.研究表明,骨干链路不仅具有高并发和高到达速率的特点,而且在适当的缓存窗口下,具有较好的网络局部性特征.基于这些特征和局部性原理,本文在朴素的哈希表结构基础之上增加常量开销的辅助空间,实现了一种快速流表查找方法.理论分析和真实网络数据集上的实验表明,该方法相比现有方法可以降低流表查找长度20.2% ,减少流表访问时间17.1 % .
* Q* L+ w, V4 `% n* Q关键词:哈希表;高并发网络;连接表管理;网络局部性" R0 R' {+ x* X
( D& ^$ p8 I5 P
1引言
, p& S- e( W4 o' @) F0 x; C在高速网络环境下,高效率的连接管理已经成为现有网络流量处理系统(如入侵检测、流量计费等系统)的一个关键模块[1.2.如图1所示,通常流量处理系统架构主要分为三大模块:流量获取、连接管理、业务处理.连接管理为业务处理提供流追溯功能3',包括查找、更新和删除这三种操作.为了准确地记录每一条连接,连接管理模块必须维护一个连接表(或会话表),其中每一个连接表项追溯网络中的一条连接,负责记录连接的标识ID、状态等相关信息,其中连接标识是全局唯一的,一般由TCP/IP头部的五元组构成:FID { sip,dip , sport , dport , ip protocol } .
1 h3 T; D- E' M( v9 y连接管理模块所采用的数据结构大多为哈希表,哈希冲突通过连接法解决[4~61.因为在网络中流总数和表长度相近时,哈希表能够支持接近常量时间复杂度的查找、插入、删除操作”.现有流量处理系统采用单包调度的策略.数据包首先缓存在网卡缓冲区中,之后按缓冲区内到达顺序依次送往连接管理模块,执行连
2 f$ c. ?0 r! R5 ~
$ s& y0 p' t$ O5 L
. Z+ y6 l. i% ]5 [3 z0 P+ s1 r4 B/ Z2 R; f& w6 @+ k
' x) b8 s# \: O: v( X |
|