CN107257322A - 一种混合tcam架构系统及流表处理方法 - Google Patents

一种混合tcam架构系统及流表处理方法 Download PDF

Info

Publication number
CN107257322A
CN107257322A CN201710607449.8A CN201710607449A CN107257322A CN 107257322 A CN107257322 A CN 107257322A CN 201710607449 A CN201710607449 A CN 201710607449A CN 107257322 A CN107257322 A CN 107257322A
Authority
CN
China
Prior art keywords
flow table
layers
nvtcam
stcam
tcam
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710607449.8A
Other languages
English (en)
Inventor
贾智平
丁宪忠
鞠雷
赵梦莹
蔡晓军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong University
Original Assignee
Shandong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong University filed Critical Shandong University
Priority to CN201710607449.8A priority Critical patent/CN107257322A/zh
Publication of CN107257322A publication Critical patent/CN107257322A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种混合TCAM架构系统及流表处理方法,系统包括:nvTCAM层,为若干个基于NVM(non volatile memory非易失存储器)组成的TCAM(ternary content addressable memory三态内容寻址存储器),用于存储贡献值高于设定值的流表;sTCAM层,为若干个基于SRAM(static RAM静态随机存取存储器)组成的TCAM,用于处理未命中或者命中次数少于设定值的流表,降低混合TCAM架构系统的更新延迟;主动流表产生器,用于在初始阶段从存储原始流表的存储器中捕捉:贡献值高于设定值的流表到所述nvTCAM层;流表迁移替换调度器,用于安装缺失的流表到sTCAM层,或判断再次被命中的流表是否需要由sTCAM层迁移到nvTCAM层。

Description

一种混合TCAM架构系统及流表处理方法
技术领域
本发明属于嵌入式系统的技术领域,特别是涉及一种混合TCAM架构系统及流表处理方法。
背景技术
在现有技术中,软件定义网路(Software-Defined Network,简称SDN)是通过解耦控制平面与数据平面来简化网络管理的新型的网络模式,其中交换机作为数据转发设备,其网络管理通过逻辑为中心的服务器控制。通过将控制平面转移到逻辑为中心的控制器,SDN在交换机上的数据包的转发和处理的动态控制和管理提供了可配置功能。SDN的灵活性使得部署像流量工程、服务质量(QoS)、安全/访问控制管理、故障诊断和故障转移机制等一系列的网络管理策略和新型的网络技术变的更加容易。
在SDN中,网络流是由一组存储在SDN交换机中的三态内容存储器(TernaryContent Addressable Memory,简称TCAM)的相关流表所管理。TCAM可以以线性的速度将一个包与其所安装的所有流表同时进行比较。然而,现在的商业交换机只能支持相对数量较少的流表,仅仅只有几千条流表的容量。比如,当前盛科的SDN交换机V330中TCAM的容量为2.5K,而当前的核心网络中的流表达到了600000条。另一方面,更细粒度的丰富的SDN策略导致了极大数量的流表,这些流表和都需要保存和维持在这些SDN交换机中。尽管由于TCAM的快速的匹配性能的优势,其变的不可或缺,但是同时TCAM也是有不可忽视的问题。TCAM耗能大、价格昂贵并且占芯片面积极大。这是由于当前的商业交换机中的TCAM是由传统的存储器SRAM组成的。SRAM的高耗能以及低密度极大的限制了SDN交换机中TCAM容量的大小。
随着由网络产生的数据量的持续增长,提高TCAM容量并且同时最小化TCAM的使用代价已经成为了挑战。最近,非易失性存储器(the nonvolatile memory,简称NVM)像电阻式RAM(resistive RAM,简称ReRAM),由于它的低漏电和高密度等优点,已经被用来实现TCAM。与传统的由SRAM组成的TCAM(简称sTCAM)相比,由NVM组成的TCAM(简称nvTCAM)可以实现 更大的存储容量和更低的能量消耗。然而,nvTCAM由于固有的高的写操作延迟也不是完美的解决方案。而且,安装在TCAM中的流表的更新操作也是一个缓慢的操作过程。现在的基于传统SRAM的交换机仅能支持每秒大约40~50条流表的更新。对于基于NVM的交换机,流表的更新性能将会更加严重,极大地限制了大型网络中的网络性能。
最近,最少使用(The Least-Recently Used,简称LRU)替换算法和Low Inter-Reference Recency Set替换策略(简称LIRS)被广泛用于管理高速缓存。但是,LRU替换算法并不能很好的处理具有弱局部性的访问模式,像网络中的动态流量。因此,在LRU的机制下,动态的到来的包将会频繁的请求控制器安装新的流表,这将会引起非常多的流表未命中事件,由于nvTCAM的高的写延迟,这将是不可接受的。LIRS替换策略通过评估Inter-Reference Recency(IRR)来做出替换决策从而有效的解决LRU仅仅依靠新近程度来做出替换决策的缺点。然而,LIRS替换策略仅适用于没有依赖的存储块,不适用于具有依赖特性的流表。
综上所述,现有技术中对于基于SRAM的三态内容存储器因SRAM的高耗能和低密度极大的限制了SDN交换机中TCAM容量的大小问题,和基于NVM的三态内容存储器存在固有的高的写操作延迟的问题,以及现有的替换算法存在不能很好的处理具有弱局部性的访问模式或不适用于具有依赖性的流表的问题,尚缺乏有效的解决方案。
发明内容
本发明为了克服现有技术中为了减轻sTCAM的有限的容量和nvTCAM的高的写延迟,提出一种提高数据包匹配性能的TCAM混合架构及方法,利用nvTCAM的高容量来存储更多贡献值大的流表以及一小块容量的sTCAM的高效访问性能来处理新到来的流表以降低更新延迟。
为了实现上述目的,本发明采用如下一种技术方案:
一种混合TCAM架构系统,包括:
nvTCAM层,为若干个基于NVM(non volatile memory非易失存储器)组成的TCAM(ternary content addressable memory三态内容寻址存储器),用于存储贡献值高于设定值的流表;
sTCAM层,为若干个基于SRAM(static RAM静态随机存取存储器)组成的TCAM,用于处理未命中或者命中次数少于设定值的流表,降低混合TCAM架构系统的更新延迟;
主动流表产生器,用于在初始阶段从存储原始流表的存储器中捕捉:贡献值高于设定值的流表到所述nvTCAM层;
流表迁移替换调度器,用于安装缺失的流表到sTCAM层,或判断再次被命中的流表是否需要由sTCAM层迁移到nvTCAM层。
本系统还包括用于存储原始流表的DRAM存储器。
本系统中,所述流表迁移替换调度器具有流表替换值计算器,用于计算每条流表的替换值,根据该替换值决策流表的迁移。
本发明还提出了一种基于上述系统的,流表处理方法,具体为:
(1)捕捉贡献值高于设定值的流表到所述nvTCAM层;
(2)执行数据包的匹配,匹配的对象是步骤(1)nvTCAM层中的流表;
(3)若步骤(2)中数据包匹配的流表在步骤(1)nvTCAM层中不存在时,认定该流表为缺失流表,同时安装该缺失流表及其覆盖集至sTCAM层,所述流表的覆盖集包括与流表有依赖关系的流表;
(4)若所述缺失流表或其覆盖集再次被数据包命中,则将该缺失流表及其覆盖集安装至nvTCAM层,替换步骤(1)中nvTCAM层的占据相同空间的流表。
其中存储在nvTCAM层和sTCAM层中的流表包括LIR(Low Inter-referenceRecency)流表集和HIR(High Inter-reference Recency)流表集;
每条流表具有以下属性:IRR(Inter-Reference Recency),用来记录每条流表的历史信息;Recency新近程度,用来记录任一流表最后一次访问到当前时间的其他流表的数量。
进一步的,所述步骤(1)包括:
根据流表的权重和代价的比值,定义流表的贡献值,所述流表的权重指这条流表能够命中的数据包,代价指缓存这条流表要安装的总流表数;
根据所述流表的贡献值,使nvTCAM层满容量存储所述贡献值高于设定值的流表。
进一步的,所述步骤(3)包括:
在安装该缺失流表及其覆盖集至sTCAM层之前,首先判断sTCAM层是否有足够的存储空间,若有足够的存储空间,则直接安装;若没有足够的存储空间,则用所述缺失流表及其覆盖集替换sTCAM层中已有的流表。
进一步的,所述步骤(4)中替换的决策包括:
检查缺失流表或其覆盖集的IRR是否小于存储在nvTCAM层中流表的新近程度recency,然后计算nvTCAM层中每条流表的替换值;若缺失流表或其覆盖集的替换值RV小于nvTCAM层中流表的RV;如果上述条件均满足,则缺失流表及其覆盖集就会被安装进nvTCAM层;nvTCAM层中为缺失流表或其覆盖集腾出空间的流表则会降级到sTCAM层中。
进一步的,所述步骤(3)中替换的决策包括:
若缺失流表或其覆盖集的替换值RV小于sTCAM层中流表的RV,则缺失流表及其覆盖集就会被安装进sTCAM层;sTCAM层中为缺失流表或其覆盖集腾出空间的流表则被删除。
进一步的,所述替换值的计算采用:
RV=(α*γ+(1-α)*S)/PN
其中,RV代表每条流标的替换值,γ是流表R的新近程度,;S是当一个流表删除时它所能释放的空间;α是决定强调因素(R或者S)权重的调节因子,PN是流表的父节点的数目。
与现有技术相比,本发明的有益效果:
(1)本发明提出了一种混合的TCAM架构,利用nvTCAM的高密度以及sTCAM的高效的访问性能,使得TCAM流表的匹配性能更佳,匹配过程更快,减少安装率。
(2)本发明对于提出的混合TCAM设计了新颖的流表迁移替换策略,该迁移策略充分考虑了nvTCAM的高写延迟和传统TCAM的固有的更新问题,避免了混合TCAM中流表的匹配性能降低的问题。
(3)本发明考虑流表的独特的依赖特性提出了替换值算法,该替换值算法合理有效,可以进行大范围的移植使用。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1为本发明的系统框图;
图2为本发明一实施例的示意图。
具体实施方式:
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面结合附图与实施例对本发明作进一步说明。
本申请的一种典型的实施方式中,采用如下技术方案:
如图1所示,一种混合TCAM架构系统,包括:
nvTCAM层,为若干个基于NVM(non volatile memory非易失存储器)组成的TCAM(ternary content addressable memory三态内容寻址存储器),用于存储贡献值高于设定值的流表;
sTCAM层,为若干个基于SRAM(static RAM静态随机存取存储器)组成的TCAM,用于处理未命中或者命中次数少于设定值的流表,降低混合TCAM架构系统的更新延迟;
该架构系统使用了2层TCAM作为数据包转发表,引入了两个新的功能模块到目前的OpenFlow架构:(i)主动流表产生器,在初始阶段用来选择能够捕捉到大量流量的流表到nvTCAM中;(ii)流表迁移替换(Rule Migration&Replacement,简称RMR)调度器,有两种情形触发RMR调度器,一种情形是当一个包既没有匹配到nvTCAM中的流表,也没匹配到sTCAM中的流表时,RMR调度器首先安装缺失的流表到sTCAM。另一种情形就是的sTCAM中的流 表再次被到来的包命中时,RMR调度器将会采用RMR策略来检测这个流表是否需要迁移到nvTCAM。
本发明的再一实施例是基于上述实施例的流表处理方法:
(1)捕捉贡献值高于设定值的流表到所述nvTCAM层;
(2)执行数据包的匹配,匹配的对象是步骤(1)nvTCAM层中的流表;
(3)若步骤(2)中数据包匹配的流表在步骤(1)nvTCAM层中不存在时,认定该流表为缺失流表,同时安装该缺失流表及其覆盖集至sTCAM层,所述流表的覆盖集包括与流表有依赖关系的流表;
(4)若所述缺失流表或其覆盖集再次被数据包命中,则将该缺失流表及其覆盖集安装至nvTCAM层,替换步骤(1)中nvTCAM层的占据相同空间的流表。
本发明之所以提出这种架构是利用了sTCAM和NvTCAM的特性,如表1所示:
nvTCAM的搜索延迟和写延迟分别是sTCAM的0.89倍和1.92倍。因此在这个2层的TCAM架构中,我们将整个基于TCAM的转发表根据他们的特性划分为2层。第一层是基于ReRAM的TCAM,主要用于存储更多捕捉到大量流量的流表,第二层是一小块容量的sTCAM来处理未命中或者命中次数很少的流表以降低整个混合TCAM的更新延迟。
其中步骤(1)采用主动流表产生器选择需要的流表,根据流表的权重和代价的比值,定义流表的贡献值,流表的权重指这条流表能够命中的数据包,代价指缓存这条流表要安装的总流表数;根据所述流表的贡献值,使nvTCAM层满容量存储所述贡献值高于设定值的流表。
我们可以看到缓存越多高贡献值的流表就会极大地降低流表的未命中次数和提高数据包的转发速率。由于高贡献值的流表可能依赖更多的其他流表,我们应用覆盖集方式来解决流表的依赖问题。
主动流表产生器使用覆盖集的方法从DRAM(所有的流表存储在这些存储器中)中选择高贡献值的流表然后在nvTCAM容量内的达到最大的总的贡献值。可以看出nvTCAM在同样的面积下容量更大。
但是一个小容量的sTCAM也是必不可少的,只要这个容量的大小能够满足这条流表和与这条流表有依赖的流表能够进行更新操作即可。由于流表更新的代价不同,一旦流表未命中事件发生,如果没有足够的空间容纳这条流表的更新时间是有可用空间的更新时间2倍,为了进一步降低更新延迟,在初始阶段,主动流表产生器不产生流表到sTCAM中。一旦流表未命中事件发生,SDN控制器将会为这个新到来的数据包安装新的流表和它的覆盖集。然后所有的流表超时(包括硬超时和空闲超时)后将会被自动删除,这样就避免一些流表占用着sTCAM的空间而不匹配任何数据包。一旦一个数据包到达交换机后,首先匹配的是安装在nvTCAM中的流表,如果成功匹配就会按照这条流表所指定的行为进行处理。否则,这个包将会继续匹配sTCAM中的流表。然而,如果这个包仍然未能命中就会触发一个流表安装请求发送至控制器,然后这个控制器将会安装这个未命中的流表和它的覆盖集到sTCAM中。
上述步骤(3)中,采用流表迁移替换(Rule Migration&Replacement)调度器执行。
进一步的,我们提出了一种流表迁移替换调度器的策略,为了描述这个方法,下面给出一些基本的概念:
存储在nvTCAM和sTCAM中的流表被称为Low Inter-reference Recency(LIR)流表集和High Inter-reference Recency(HIR)流表集。Inter-Reference Recency(IRR)被用来记录每条流表的历史信息。IRR是指连续访问两次同一流表之间的其他流表的数量。Recency指的是从这个流表最后一次访问到当前时间的其他流表的数量。假设,一条流表的IRR很大,那么这条流表的下一个IRR也会很大,在nvTCAM中,优先选择具有大IRR的流表替换。通过与LRU机制进行比较,通过充分考虑IRR历史信息,极大地降低了仅仅考虑Recency所带来的负面影响。总之,RMR策略将IRR信息考虑进来后,具有LIR的流表更应该缓存在nvTCAM中。
同时我们需要量化每条流表的替换值(Replacement Value,简称RV),每 条流表的替换值对于我们这个架构是十分重要的,因为nvTCAM的高写延迟和传统TCAM的固有的更新问题将会降低混合TCAM中流表的匹配性能。因此,我们根据流表的依赖特性选择nvTCAM中最好的流表进行替换以降低nvTCAM中流表的安装次数。每条流表的替换值的计算公式如下:
RV=(αxγ+(1-α)x S)/PN
其中,γ是流表R的新近程度,删除一个流表时这是主要的因素;S是当一个流表删除时它所能释放的空间;α是决定强调因素(R或者S)权重的调节因子。PN是流表的父节点的数目。考虑父节点主要是因为删除不同的流表将会引发不同的插入次数。具有较少父亲流表数量的流表优选选择被替换。
基于上述设计,步骤(3)具体就包括:
在安装该缺失流表及其覆盖集至sTCAM层之前,首先判断sTCAM层是否有足够的存储空间,若有足够的存储空间,则直接安装;若没有足够的存储空间,则用所述缺失流表及其覆盖集替换sTCAM层中已有的流表;
若缺失流表或其覆盖集的替换值RV小于sTCAM层中流表的RV,则缺失流表及其覆盖集就会被安装进sTCAM层;sTCAM层中为缺失流表或其覆盖集腾出空间的流表则被删除。
步骤(4)中替换的决策包括:
检查缺失流表或其覆盖集的IRR是否小于存储在nvTCAM层中流表的新近程度recency,然后计算nvTCAM层中每条流表的替换值;若缺失流表或其覆盖集的替换值RV小于nvTCAM层中流表的RV;如果上述条件均满足,则缺失流表及其覆盖集就会被安装进nvTCAM层;nvTCAM层中为缺失流表或其覆盖集腾出空间的流表则会降级到sTCAM层中。
下面给出一个具体应用上述实施例的应用:
如图2所示:
整个流程分为三部分:
(1)初始化阶段:假设现在nvTCAM与sTCAM的容量分别是6和2,现在总共有9条流表在DRAM中,主动流表产生器首先选择6条贡献值最大的流表。假设R1、R2、R3、R4、R6*和R7是选择的流表,按照图2中的1所示,主动流表选择器首先将这些流表安装在nvTCAM中。在这个阶段没有流表被选 择到sTCAM。选择完成之后,进入第二步;
(2)数据包的匹配:假设当前数据包访问流表的顺序是R1、R2、R9、R9。首先访问R1的数据包到来,它首先匹配nvTCAM中的流表,成功命中,然后执行R1这条流表所对应的行为。然后访问R2的数据包到来,再次在nvTCAM中命中。但是当匹配R9的数据包到来后,它首先匹配nvTCAM中的流表,未命中,然后再匹配sTCAM中的流表,仍然未命中。然后一个安装请求就会发送到SDN控制器。RMR调度器首先安装R9和它的覆盖集R8到sTCAM。然后这个包被命中。如图2中的2所示,nvTCAM中和sTCAM中的依赖图分别是图2中第二图中灰色和白色部分。最后一个包仍然是匹配R9的数据包,它首先匹配nvTCAM中的流表,未命中,然后匹配sTCAM中的流表并且被命中。此时触发第三个过程;
(3)流表的替换和迁移:RMR调度器然后觉得sTCAM中的R9是否达到条件需要迁移进nvTCAM。如果条件不满足则R9以及它的覆盖集仍然在sTCAM中等待下一次命中。但是如果R9满足迁移条件,RMR调度器计算R9以及它的覆盖集R8迁移进nvTCAM需要的空间是2,然后使用替换值算法计算出最好的替换流表是R4与R3。删除R4和R3后腾出的空间正好满足。如图2中第三个图所示,R8与R9从sTCAM中迁移进nvTCAM,而所替换掉的流表R3与R4将会降级到sTCAM。
上述虽然结合附图对本发明的具体实施方式进行了描述,但以上所述仅为本申请的优选实施例而已,并非对本发明保护范围的限制,对于本领域的技术人员来说,本申请可以有各种更改和变化。所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改、等同替换或变形仍在本发明的保护范围以内。

Claims (10)

1.一种混合TCAM架构系统,其特征在于,包括:
nvTCAM层,为若干个基于NVM组成的TCAM,用于存储贡献值高于设定值的流表;
sTCAM层,为若干个基于SRAM组成的TCAM,用于处理未命中或者命中次数少于设定值的流表,降低混合TCAM架构系统的更新延迟;
主动流表产生器,用于在初始阶段从存储原始流表的存储器中捕捉:贡献值高于设定值的流表到所述nvTCAM层;
流表迁移替换调度器,用于安装缺失的流表到sTCAM层,或判断再次被命中的流表是否需要由sTCAM层迁移到nvTCAM层。
2.根据权利要求1所述的系统,其特征在于,还包括用于存储原始流表的DRAM存储器。
3.根据权利要求1所述的系统,其特征在于,所述流表迁移替换调度器具有流表替换值计算器,用于计算每条流表的替换值,根据该替换值决策流表的迁移。
4.基于权利要求1的一种混合TCAM架构流表处理方法,其特征在于:
(1)捕捉贡献值高于设定值的流表到所述nvTCAM层;
(2)执行数据包的匹配,匹配的对象是步骤(1)nvTCAM层中的流表;
(3)若步骤(2)中数据包匹配的流表在步骤(1)nvTCAM层中不存在时,认定该流表为缺失流表,同时安装该缺失流表及其覆盖集至sTCAM层,所述流表的覆盖集包括与流表有依赖关系的流表;
(4)若所述缺失流表或其覆盖集再次被数据包命中,则将该缺失流表及其覆盖集安装至nvTCAM层,替换步骤(1)中nvTCAM层的占据相同空间的流表。
5.根据权利要求4所述的方法,其特征在于:存储在nvTCAM层和sTCAM层中的流表包括LIR(Low Inter-reference Recency)流表集和HIR(High Inter-reference Recency)流表集;
每条流表具有以下属性:IRR(Inter-Reference Recency),用来记录每条流表的历史信息;Recency新近程度,用来记录任一流表最后一次访问到当前时间的其他流表的数量。
6.根据权利要求4所述的方法,其特征在于:所述步骤(1)包括:
根据流表的权重和代价的比值,定义流表的贡献值,所述流表的权重指这条流表能够命中的数据包,代价指缓存这条流表要安装的总流表数;
根据所述流表的贡献值,使nvTCAM层满容量存储所述贡献值高于设定值的流表。
7.根据权利要求4所述的方法,其特征在于:所述步骤(3)包括:
在安装该缺失流表及其覆盖集至sTCAM层之前,首先判断sTCAM层是否有足够的存储空间,若有足够的存储空间,则直接安装;若没有足够的存储空间,则用所述缺失流表及其覆盖集替换sTCAM层中已有的流表。
8.根据权利要求5所述的方法,其特征在于,所述步骤(4)中替换的决策包括:
检查缺失流表或其覆盖集的IRR是否小于存储在nvTCAM层中流表的新近程度recency,然后计算nvTCAM层中每条流表的替换值;若缺失流表或其覆盖集的替换值RV小于nvTCAM层中流表的RV;如果上述条件均满足,则缺失流表及其覆盖集就会被安装进nvTCAM层;nvTCAM层中为缺失流表或其覆盖集腾出空间的流表则会降级到sTCAM层中。
9.根据权利要求7所述的方法,其特征在于,所述步骤(3)中替换的决策包括:
若缺失流表或其覆盖集的替换值RV小于sTCAM层中流表的RV,则缺失流表及其覆盖集就会被安装进sTCAM层;sTCAM层中为缺失流表或其覆盖集腾出空间的流表则被删除。
10.根据权利要求8或9的方法,其特征在于,所述替换值的计算采用:
RV=(α*γ+(1-α)*S)/PN
其中,RV代表每条流标的替换值,γ是流表R的新近程度,S是当一个流表删除时它所能释放的空间;α是决定R或者S权重的调节因子,PN是流表的父节点的数目。
CN201710607449.8A 2017-07-24 2017-07-24 一种混合tcam架构系统及流表处理方法 Pending CN107257322A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710607449.8A CN107257322A (zh) 2017-07-24 2017-07-24 一种混合tcam架构系统及流表处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710607449.8A CN107257322A (zh) 2017-07-24 2017-07-24 一种混合tcam架构系统及流表处理方法

Publications (1)

Publication Number Publication Date
CN107257322A true CN107257322A (zh) 2017-10-17

Family

ID=60025742

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710607449.8A Pending CN107257322A (zh) 2017-07-24 2017-07-24 一种混合tcam架构系统及流表处理方法

Country Status (1)

Country Link
CN (1) CN107257322A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111131084A (zh) * 2019-12-06 2020-05-08 湖南工程学院 一种QoS感知的OpenFlow流表分级存储架构及应用
CN112769703A (zh) * 2021-02-09 2021-05-07 芯河半导体科技(无锡)有限公司 一种高效的基于sram的tcam实现方法
CN114257461A (zh) * 2022-03-01 2022-03-29 四川省商投信息技术有限责任公司 一种sdn交换机流表控制方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095583A (zh) * 2012-11-09 2013-05-08 盛科网络(苏州)有限公司 通过芯片环回实现Openflow两级流表的方法及系统
US20150131383A1 (en) * 2009-07-16 2015-05-14 Mikamonu Group Ltd. Non-volatile in-memory computing device
CN104823243A (zh) * 2012-12-28 2015-08-05 高通股份有限公司 混合三元内容可寻址存储器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150131383A1 (en) * 2009-07-16 2015-05-14 Mikamonu Group Ltd. Non-volatile in-memory computing device
CN103095583A (zh) * 2012-11-09 2013-05-08 盛科网络(苏州)有限公司 通过芯片环回实现Openflow两级流表的方法及系统
CN104823243A (zh) * 2012-12-28 2015-08-05 高通股份有限公司 混合三元内容可寻址存储器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XIANZHONG DING 等: ""Unified nvTCAM and sTCAM architecture for improving packet matching performance"", 《LCTES 2017 PROCEEDINGS OF THE 18TH ACM SIGPLAN/SIGBED CONFERENCE ON LANGUAGES, COMPILERS, AND TOOLS FOR EMBEDDED SYSTEMS》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111131084A (zh) * 2019-12-06 2020-05-08 湖南工程学院 一种QoS感知的OpenFlow流表分级存储架构及应用
CN111131084B (zh) * 2019-12-06 2022-06-07 长沙师范学院 一种QoS感知的OpenFlow流表查找方法
CN112769703A (zh) * 2021-02-09 2021-05-07 芯河半导体科技(无锡)有限公司 一种高效的基于sram的tcam实现方法
CN114257461A (zh) * 2022-03-01 2022-03-29 四川省商投信息技术有限责任公司 一种sdn交换机流表控制方法及装置

Similar Documents

Publication Publication Date Title
US7724735B2 (en) On-chip bandwidth allocator
US20200004674A1 (en) Non-deterministic window scheduling for data storage systems
CN107193646B (zh) 一种基于混合主存架构的高效动态页面调度方法
CN103902474B (zh) 一种支持固态盘缓存动态分配的混合存储系统和方法
US9225668B2 (en) Priority driven channel allocation for packet transferring
CN107257322A (zh) 一种混合tcam架构系统及流表处理方法
CN105095094B (zh) 内存管理方法和设备
CN104935628B (zh) 一种在多个数据中心之间迁移多个关联虚拟机的方法
CN110058932A (zh) 一种用于数据流驱动计算的存储方法和存储系统
CN107766159A (zh) 一种元数据管理方法、装置和计算机可读存储介质
CN107911711A (zh) 一种考虑分区的边缘缓存替换改进方法
CN104679594B (zh) 一种中间件分布式计算方法
CN109542331A (zh) 存储器系统及控制非易失性存储器的控制方法
CN111427969A (zh) 一种分级存储系统的数据替换方法
CN106201348A (zh) 非易失性存储设备的缓存管理方法及装置
CN103929454A (zh) 一种云计算平台中负载均衡存储的方法和系统
CN105094751A (zh) 一种用于流式数据并行处理的内存管理方法
CN104539744B (zh) 一种两阶段协作的媒体边缘云调度方法及装置
US20170171114A1 (en) Method and apparatus for data caching in a communications network
CN108769045A (zh) Acl规则配置方法、装置及网络设备
WO2021259246A1 (zh) 资源调度方法和装置、电子设备、计算机可读存储介质
CN107133228A (zh) 一种数据重分布的方法及装置
CN101499956A (zh) 分级缓冲区管理系统及方法
US20130094358A1 (en) Adaptive queue-management
CN107368437A (zh) 一种末级缓存管理方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171017