论文阅读:Research on TCAM-based Open

2019-11-13  本文已影响0人  阿明DunDunDun

摘要:

OpenFlow是一种快速发展的新型交换机模型,该模型支持对网络过程的外部策略的控制。

在Openflow平台中,多表和多项目的组匹配是挑战。

于是提出了Openflow交换机的三层实现模型, 研究了基于TCAM的Openflow多表切换技术,包括Openflow中的多表过程模型和TCAM性能模型,最后在上述模型下分析了基于TCAM的Openflow转发性能。

背景/问题:

Openflow被提出后得到了快速的发展,IBM和HP都生产了Openflow交换机。

但是,这些交换机是基于传统的交换机芯片来实现的。尽管它支持Openflow协议,但很难在数据转发平面中支持15个字段匹配。

在OpenFlow交换机的实现中,如何始终支持基于多项目组的流匹配一直是一个挑战。

解决办法:

提出了一个三层的Openflow交换机实现模型基于TCAM的多表转发,并且提出了Openflow多表描述和TCAM查找功能的性能分析。

以Netlogic的Ayama20000 TCAM为例来分析Openflow交换机的性能。

实现细节:

在1.1版规范发布之后,Openflow与以前相比增加了多表、端口组、可伸缩匹配和其他新功能,但是可以实现新规范的交换机模型数量较少。

结构:

根据新规范的特点,我们设计了基于硬件层,核心层,用户层的三层结构来实现。

过程:

  1. 如果从硬件接收到数据包,则进行查找,然后分析表以实现匹配(查找表以实现通配符,并进行多表查找),如果规则与转发问题的硬件匹配,则发送到转发管理以更新计数器。

  2. 通过核心层线程对OpenFlow规则表的层管理转发表2中的规则进行匹配(没有通配符哈希表来查找表),如果规则匹配,则从硬件转发过程中发出,并将其发送到转发管理以更新计数器。

  3. 如果全部失败,则OpenFlow规则表通过转发管理线程,利用用户层的Openflow控制器实现请求管理。

  4. 控制器通过API将规则拖曳表写入OF内核的规则管理中,然后写入TCAM以实现TCAM拖曳,并直接写入OF映射表(表2)通过规则管理完成对控制器的请求和完成。

  5. 在用户层上,设置Openflow的规则数据库以备份和修改配置。

补充:

下表定义了与TCAM字符描述关联的参数:


表1

下表描述了OpenFlow多表的用法:假设OpenFlow交换机具有<RN1,RN2〜RNn>表,每个表具有属性<RLi,RNi,RMi>的三个子集,RLi表示长度规则,RNi表示长度规则 数字,RMi表示规则是否包含掩码匹配,1表示包括,反之为0


表2
时间关系:
表3

TCAM性能分析:

硬件的查找过程,通过推导TCAM的性能可以获得不同表的转发率和资源占用总数。 具有映射到TCAM的TCAM,每个的长度为RL1,RL2〜RLn, 时钟周期为T,则可以通过公式得出每秒的速率:



我们可以将表格的长度RLi乘以其编号RNn以获得内部TCAM占用资源率的总数:



每个TCAM都有不同类型的总线带宽,如果我们要充分利用TCAM,则其总线不会空闲,因此我们需要计算TCAM的延迟时间,然后根据延迟设计合理的PE。

为了解决这个问题,我们设计了一个通用的TCAM模型。 首先,获得一般的系统延迟。 其次,我们可以通过TCAM获得该消息的整个处理时间:



其次,我们可以在所需的整个TCAM处理时间中获取消息:



设置一个周期:a,然后得到以下公式:
上一篇 下一篇

猜你喜欢

热点阅读