包分类算法ppt课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《包分类算法ppt课件.ppt》由会员分享,可在线阅读,更多相关《包分类算法ppt课件.ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、包分类算法资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值主要内容p包分类问题的产生背景p典型的包分类算法pBitmap-RFC算法pTIC算法资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值参考文献pD.E.Taylor.Survey&Taxonomy of Packet Classification Techniques.Technical Report,Department of Computer Science&Engineering,
2、Washington University in Saint Louis,May 2004.pD.Liu,B.Hua,X.Hu,X.Tang.High-performance Packet Classification Algorithm for Many-core and Multithreaded Network Processor.In Proceedings of CASES 2006.pH.Cheng,Z.Chen,B.Hua,X.Tang.Scalable Packet Classification Using Interpreting:A Cross-platform Multi
3、-core Solution.In Proceedings of PPoPP 2008.资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值1.IP分类问题(1)p术语:n包头H是有K个域的实体,每个域表示成Hi,每个域为一个比特串。n过滤规则F具有K个域,表示为Fi。n与每个Fi相关联的有一个匹配方式,可以是:p精确匹配:Fi用一个值来表示,若Hi=Fi,称Hi与Fi精确匹配。p前缀匹配:Fi通过一个前缀来指定,若Hi与Fi表示的前缀匹配,称Hi与Fi前缀匹配。p范围匹配:Fi通过一个范围指定,即Fi=val1,val2
4、,若满足val1 Hi val2,称Hi与Fi范围匹配。n过滤规则F与包头H匹配,当且仅当H的每个域Hi都与F相应的域Fi匹配。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值IP分类问题(2)p定义:n给定一个具有N条过滤规则的规则库Fdat,与每条规则f相联系有一个代价函数,记为cost(f),给定一个包头H,最佳规则匹配问题为在Fdat中查找满足下列条件的过滤规则fbest:pfbest是H的一个匹配过滤规则;p在Fdat中不存在其它的过滤规则f,f与H匹配且满足cost(f)cost(fbest)。pIP分类问
5、题是最佳过滤规则匹配问题的一个实例。pIP分类问题中与每条规则相联系有一个ACTION,用来表示对满足相应过滤规则的包的处理动作。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值IP分类问题(3)p算法的评价指标:n速度,这是评价IP分类算法的最重要标准。算法时间复杂度的3种评价标准:p最坏情况:对一个包进行IP分类查找的最长可能时间。p平均情况:在随机情况下,对一个包进行分类查找的平均时间。p统计情况:在符合某种预先指定的包或过滤规则匹配率的分布下,对一个包进行分类查找的平均时间。n占用内存,包括规则库本身以及为高速
6、查找而建立的各种数据结构占用的内存。n更新代价:p完全更新:重新建立全部的查找数据结构。p增量更新:在查找数据结构中增加或删除一条过滤规则。p重组或平衡:在适当的时间重组数据结构使其恢复原来的效率。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值IP分类问题(4)p从数学上看,IP分类问题与多维空间中的点定位问题相似,但更加复杂。p基本的解决思路:n根据数据流的分布特点以及规则集中规则的分布特点设计分类算法。n将高维问题转化为二维乃至一维的问题,降低问题的复杂度。资金是运动的价值,资金的价值是随时间变化而变化的,是时间
7、的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.典型的IP分类算法p以Grid-of-Tries为代表的基于Trie树的算法p以比特矢量为代表的算法p以HiCuts为代表的决策树算法p以RFC为代表的算法资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.1 Hierarcical Trie优点:算法简单、直接、便于硬件实现。缺点:回溯时间长,对规则维数的扩展性差,不能直接支持范围匹配。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有
8、资金的时间价值2.2 Set-Pruning Trie优点:不需要回溯,查找时间短缺点:空间复杂度高,不易更新。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.3 Grid-of-Trie优点:内存空间小缺点:更新困难,在需要更新时最好重建这棵树。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值多维IP分类p假定所有过滤规则的协议只取三个值:TCP、UDP和通配符(*),对于取值为通配符的过滤规则,将一条规则重复3次,分别对应TCP、UDP
9、和所有其它情况(OTHER)。p根据目的端口和源端口的不同组合建立4个哈希表,分别对应(目的端口,源端口)二元组为(DstPort,*)、(DetPort,SrcPort)、(*,SrcPort)和(*,*)的情况。p每个哈希表项为一棵Grid of Tries树,哈希表的索引为相应的端口地址和协议号的某种组合(或函数)。p查找时,同时查找4个哈希表,分别用协议号和端口号的某种组合(或函数)作为索引,找到相应的Grid of Tries树;然后再根据Grid of Tries树的查找方法找到最小代价的过滤规则;取所有哈希表中的最好结果即为最佳匹配的规则。资金是运动的价值,资金的价值是随时间变化
10、而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.4 比特矢量算法缺点:算法运行时间随N的增大而线性增长,因而可扩展性差。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.5 HiCuts算法优点:占用内存空间小,规则集更新容易,直接支持范围匹配。缺点:预处理时间较长,分类速度比一些快速包分类算法低。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值2.6 Recursive Flow Classifica
11、tion(RFC)pS为包头中d个域形成的比特串的长度,若S位比特串的每一种可能取值对应一个等价类(用eqID表示),则分类问题可看成是根据包头中S位比特串确定其对应的eqID的问题。p当S很大时,从S位比特串直接映射到eqID需要消耗巨大的内存空间。pRFC的基本思想是将一次映射转变为多阶段映射,其结果是将一个较大的集合映射成若干个较小的集合,达到减小内存需求的目的。p每一阶段映射称为一次缩减(reduction),由多阶段映射构建的数据结构称为缩减树。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值一个三维规则集例
12、子资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值012index012.eqIDCBM01000111012001107eqIDChunk0001012.eqIDCBM01000110012011107Chunk1001012.eqIDCBM010011111107Chunk200010index0.8910211eqIDeqIDCBM01000110012010100012.15331617Phase 0Phase 1P1P2P3eqID0eqID1eqID2OIndexcross-producting table
13、30011032阶段RFC缩减树域的可能值比特串:用于指示哪些规则匹配该域CBM位串标识由eqID0-eqID2的值级联而成由 eqID0-eqID2指示的CBM位串逐位相与而成资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值RFC的特点pRFC是目前除硬件方案之外较快的多维包分类算法。p易于并行处理n处于同一阶段的预处理表或交叉乘积表可被并行地索引;n处于不同阶段的表也可被并行地索引。n这些表各自独立,可分布于不同的存储单元中。pRFC构建的交叉乘积表占用内存空间较多,存储空间消耗随规则集规模增大而迅速增大。资金是运
14、动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值3.Bitmap-RFC资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值 Bitmap RFC的数据结构Oneentry资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值查找资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值Compact table的数据结构
15、设计考虑pElement array的单元宽度:16比特pBitmap string长度:32比特的倍数pCompact table的表项:由bitmap string和element array组成,长度不超过16个长字。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值算法优化实现p内存压缩p指令选择:POP_COUNT,分支指令p数据分配:预处理表及各阶段CCPT表的存放p任务划分:multi-processing和context-pipeliningp延迟隐藏资金是运动的价值,资金的价值是随时间变化而变化的,是时
16、间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值实验设置p对IPv4数据包进行四维分类,应用三阶段的RFC和Bitmap-RFC:n四个域:源IP地址,目的IP地址,源端口,目的端口,其中IP地址分为低16位和高16位两部分。n第一个阶段为6个预处理表,第二阶段为2个交叉乘积表,第三阶段为1个交叉乘积表。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值实验设置(续)p三组规则集(根据现有规则集的特征随机生成),每条规则定义4个域,IP地址采用CIDR前缀表示,端口采用数据范围表示:nCL#1:10
17、00条规则nCL#2:2000条规则nCL#3:3000条规则p测试数据包:使用49字节(20字节TCP头+20字节IP头+9字节PPP头)的最小长度数据包作为输入,OC-192线速要求25.5Mpps的分类速度。资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值内存需求比较Num.of RulesMemory Requirement of CPT and CCPT(MB)Total Memory Requirement(MB)XXYYZZRFCBitmap-RFC5,70059.218.525.88.164.116.0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分类 算法 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内