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