网络数据包分类与交换技术解析
一、数据包分类算法
1.1 决策树方法
决策树方法是一种用于数据包分类的框架,包含多种潜在算法。如 HiCuts 方法,其过程在所有决策树叶节点的规则数不超过 binth(bin 阈值)时停止,binth 控制树搜索结束时的线性搜索量。还有 HyperCuts 方法,它通过多维数组索引在单一步骤中进行多次切割,在许多实际数据库中比 HiCuts 运行速度显著更快。
决策树方法的性能表现如下:
- 假设 :该方案假设存在足够数量的不同字段,以便在不进行大量存储复制的情况下进行合理切割,但这一较为笼统的观察需要进一步细化。
- 性能 :使用 HiCuts 启发式方法,所需内存大致与规则数量呈线性关系;若树合理平衡,其高度相对较小;搜索易于流水线化,实现 O(1) 的查找时间;若使用复杂的启发式方法构建决策树,更新速度可能较慢。
1.2 其他分类算法
- 网格的字典树 :提供了一种二维分类算法,速度快且可扩展。
- 位向量方案 :适用于规则数量适中(例如最多 10,000 条规则)的硬件实现。
- 等价交叉积方案 :可扩展到与 Lucent 方案大致相同数量的规则,或许可改进以降低内存消耗。
1.3 算法的应用与原理
这些数据包分类算法在 QoS 路由、防火墙、虚拟专用网络和 DiffServ 等
超级会员免费看
订阅专栏 解锁全文
3257

被折叠的 条评论
为什么被折叠?



