CN105282037A - 用于网络交换机中的表老化的方法和装置 - Google Patents

用于网络交换机中的表老化的方法和装置 Download PDF

Info

Publication number
CN105282037A
CN105282037A CN201510254680.4A CN201510254680A CN105282037A CN 105282037 A CN105282037 A CN 105282037A CN 201510254680 A CN201510254680 A CN 201510254680A CN 105282037 A CN105282037 A CN 105282037A
Authority
CN
China
Prior art keywords
age
memory
aging
indicator
network switch
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.)
Granted
Application number
CN201510254680.4A
Other languages
English (en)
Other versions
CN105282037B (zh
Inventor
王炜煌
G·施密特
T·丹尼尔
M·巴兰
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.)
Kaiwei International Co
Marvell Asia Pte Ltd
Original Assignee
Cavium LLC
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 Cavium LLC filed Critical Cavium LLC
Publication of CN105282037A publication Critical patent/CN105282037A/zh
Application granted granted Critical
Publication of CN105282037B publication Critical patent/CN105282037B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/657Virtual address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Dram (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明的实施例涉及一种集中式表老化模块,该集中式表老化模块高效地和灵活地利用嵌入式存储器资源,并且该集中式表老化模块实现和促进分离的网络控制器。集中式表老化模块使用嵌入式存储器资源来并行执行表的老化。表老化模块执行年龄标记过程和年龄刷新过程。存储器资源包括年龄标记存储器和年龄屏蔽存储器。向年龄标记存储器应用年龄标记。年龄屏蔽存储器提供关于表条目的老化的每条目控制粒度。

Description

用于网络交换机中的表老化的方法和装置
技术领域
本发明涉及高速网络交换机中的表老化(tableaging)。更具体地,本发明涉及用于网络交换机中的表老化的方法和装置。
背景技术
现有技术的网络交换机实施表老化。具体而言,在分组处理阶段期间,在某个表处完成查找。该表中的匹配的条目被标注为命中。在存储器中存储用于所有表条目的条目命中信息。周期性硬件或者软件过程监控条目命中信息。如果表条目未被命中一段时间则可以执行动作。例如,MAC地址的老化被用来驱逐和更新转发表条目。在一些其它情况下,这一机制可以用于网络调试。
现有技术的网络交换机分配用来老化固定表集合的固定存储器集合。在现代片上系统(SOC)设计中,嵌入式存储器的面积和功率预算通常主导总芯片预算。作为结果,高效地和灵活地利用有限的存储器资源是关键的。
软件定义的联网(SDN)已经作为对行业的颠覆性创新而出现。它提倡网络设备的控制平面和高速数据平面的分离。传统上在专门化的硬件交换机芯片中完成网络的控制,诸如流管理、路由更新、表老化。然而,在新的SDN时代中,这些复杂化的功能被移入分离的控制器中。这样的改变需要一种用于数据平面,最特别地是网络交换机芯片的架构和实现方式的新的和不同的方法。
发明内容
本发明的实施例涉及一种集中式表老化模块,该集中式表老化模块高效地和灵活地利用嵌入式存储器资源,并且该集中式表老化模块实现和促进分离的网络控制器。集中式表老化模块使用嵌入式存储器资源来并行执行表的老化。表老化模块执行年龄标记过程和年龄刷新过程。存储器资源包括年龄标记存储器和年龄屏蔽存储器。向年龄标记存储器应用年龄标记。年龄屏蔽存储器提供关于表条目的老化的每条目控制粒度。
在一个方面中,提供一种网络交换机。该网络交换机包括至少一个核,该至少一个核包括多个处理单元。网络交换机也包括片上存储器,该片上存储器存储多个搜索表。多个处理单元与片上存储器通信以执行表搜索。网络交换机也包括表老化模块,表老化模块包括它自身的嵌入式存储器。表老化模块能够老化多个搜索表中的任何搜索表。在一些实施例中,一旦存在搜索表命中,表老化模块从对应搜索请求接收表ID和命中地址。
在一些实施例中,表老化模块执行年龄标记过程和年龄刷新过程。每当对应的搜索表命中发生时,年龄标记过程将年龄存储器位设置为被标记(例如,为1)。年龄刷新过程检查与搜索表对应的所有年龄存储器位。检查基于配置的周期时间周期性地发生或者由软件具体地触发。当年龄存储器位为未标记(例如,为0)时,向软件通知相应表条目过时,并且当年龄存储器位被标记(例如,1)时,年龄存储器位被重置为未标记(例如,0),以为下一轮的年龄标记和年龄刷新做准备。
在一些实施例中,网络也包括由表老化模块使用的老化配置集合。老化配置集合包括配置、年龄简档和中央老化存储器池。
在一些实施例中,多个搜索表中的每个搜索表在老化配置中的一个老化配置中并且包括老化启用位和指向年龄简档中的一个年龄简档的指针。
在一些实施例中,年龄简档中的每个年龄简档都指定用于搜索表的刷新时间段并且指定中央老化存储器池中的老化存储器分配。中央老化存储器池是嵌入式的。备选地,中央老化存储器池是片上存储器的一部分。
在一些实施例中,中央老化存储器池包括年龄标记存储器和年龄屏蔽存储器。在一些实施例中,年龄标记存储器和年龄屏蔽存储器中的每个存储器包含多个物理存储器块(tile),其中中央老化存储器池的存储器被分组成块。向年龄标记存储器应用年龄做标记。年龄屏蔽存储器提供每条目控制粒度,其中在屏蔽位被设置成0时,对应表条目不参与老化过程。
在另一方面中,提供了一种在网络交换机中的表老化模块。表老化模块包括老化存储器块。老化存储器块通常包括年龄标记存储器和年龄屏蔽存储器。
表老化模块也包括年龄标记过程。年龄标记过程通常包括用于缓存针对表命中的对老化存储器块的年龄标记输入的输入队列。
表老化模块也包括年龄刷新过程。年龄刷新过程通常包括年龄标记存储器中的读出的年龄标记数据与年龄屏蔽存储器中的屏蔽位的逆的逐位或(OR)运算。
在一些实施例中,表老化模块也包括年龄中断队列。当运算的结果不是全1时,结果和存储器块地址以及用于老化存储器行的行地址被推送到年龄中断队列中,该老化存储器行与搜索表条目的集合相对应。
在一些实施例中,表老化模块也包括用于控制年龄刷新过程的刷新状态机。
在又一方面中,提供了一种网络交换机的方法。该方法包括并行处理多个表搜索请求。该方法也包括,在表命中时生成用于由表老化模块处理的信息。该方法也包括表老化模块使用中央老化存储器池来并行执行表的老化。表老化模块使用生成的信息来执行表的老化。
在一些实施例中,表的老化包括两个分离过程,这两个分离过程包括年龄标记过程和年龄刷新过程。在一些实施例中,可以暂停年龄刷新过程。
在一些实施例中,该方法也包括,在并行处理多个表搜索请求之前,可编程地指派块的第一子集作为年龄标记存储器、可编程地指派块的第二子集为年龄标记存储器以及可编程地配置表老化模块。
附图说明
前文将从如附图中所示的本发明的示例实施例的以下更具体描述中变得明显,在附图中,相似标号指代贯穿不同视图的相同部分。附图未必按比例,相反重点在于图示本发明的实施例。
图1图示了根据本发明的实施例的网络交换机的示例性方面。
图2图示了根据本发明的实施例的老化配置集合。
图3图示了根据本发明的实施例的示例性中央老化存储器池。
图4图示了根据本发明的实施例的表老化模块的框图。
图5图示了根据本发明的实施例的老化的方法。
具体实施方式
在以下描述中,出于说明的目的而阐述许多细节。然而,本领域普通技术人员将认识到,可以在不使用这些具体细节的情况下实现本发明。因此,本发明不旨在被限于所示实施例,而是将被赋予与在此描述的原理和特征一致的最广范围。
本发明的实施例涉及一种集中式表老化模块,该集中式表老化模块高效地和灵活地利用嵌入式存储器资源,并且实现和促进分离的网络控制器。集中式表老化模块使用嵌入式存储器资源来并行执行表的老化。表老化模块执行年龄标记过程和年龄刷新过程。存储器资源包括年龄标记存储器和年龄屏蔽存储器。向年龄标记存储器应用年龄标记。年龄屏蔽存储器提供关于表条目的老化的每条目控制粒度。
图1图示了根据本发明的实施例的网络交换机100的示例性方面。网络交换机100包括一个或者多个核105和流量管理器110。每个核105通常包括多个流水线级。多个流水线级包括多个分组处理单元115和至少一个分组修改器120。在一个或者多个核105中的所有处理单元115、120与片上存储器125通信以执行表搜索。片上存储器125可以存储一个或者多个搜索表。搜索表是老化启用的或者老化停用的。多个分组处理单元115中的每个分组处理单元能够访问一个或者多个搜索表。
片上存储器125与表老化模块130耦合。表老化模块130包括它自身的嵌入式存储器。嵌入式存储器通常在用于表搜索的片上存储器125后面工作。嵌入式存储器可以被用来老化表搜索存储器池125中的任何搜索表。通常,一旦存在搜索表命中,图1的老化模块130从对应搜索请求接收表ID和命中地址。
表老化模块130执行至少两个分离的过程,这两个分离的过程包括年龄老化过程和年龄刷新过程。对于配置为老化启用的那些搜索表,在表老化模块130的嵌入式存储器中存在与每个表条目对应的存储器位。每当对应的搜索表命中发生时,年龄标记过程将年龄存储器位设置成1。基于配置的周期时间周期性地(即,自动老化模式)或者由软件具体地触发(即,触发模式),年龄刷新过程检查与搜索表对应的所有年龄存储器位。如果年龄存储器位是0,意味着相应表条目自从先前老化刷新过程以来尚未被命中,则向软件通知相应表条目过时。如果年龄存储器位是1,意味着相应表条目是活跃的,则年龄存储器位被重置成0,为了下一轮年龄标记和年龄刷新做准备。
通常在特征丰富的网络交换机,诸如网络交换机100中存在许多搜索表。例如,可以存在用于网络交换机100的整个SOC芯片的多于160个搜索表。示例性搜索表包括但不限于路由表、访问控制列表(ACL)、流表等。直接老化160个或者更多搜索表可能对于SOC芯片一次处理而言太多并且具有较少实用性。
图2图示了根据本发明的实施例的老化配置集合200。在一些实施例中,老化配置集合200由图1的表老化模块130使用。老化配置集合200包括配置205、年龄简档210和中央老化存储器池215。
在一些实施例中,为多于160个搜索表提供了64个年龄简档210。然而,可以提供或多或少的年龄简档。搜索表中的在老化配置205中的一个老化配置中的每个搜索表包括老化启用位(即,age_en)和指向64个年龄简档210中的一个年龄简档的指针(即,cfg_id)。age_en指示搜索表是否是老化启用的。
每个年龄简档210指定用于搜索表的刷新时间段(即,refr_period)。刷新时间段为了更高等级系统中的灵活性有利地允许不同老化粒度。例如,MAC表条目可以在数分钟不活跃之后被老化掉。如另一示例,流表条目可以在数秒之后被宣告不活跃。年龄简档也指定中央老化存储器池215中的老化存储器分配(即,mem_row_offset、mem_row_inc)。
在一些实施例中,图1的表老化模块130使用集中式公共存储器池。图2的老化存储器池215是集中式公共存储器池的一部分。在一些实施例中,集中式公共存储器池是嵌入式的。备选地,集中式公共存储器池是图1的片上存储器125的一部分。
在一些实施例中,即使对应搜索表是老化启用的,每个表搜索请求仍然指定特定搜索是否应当参与老化过程。这一灵活性的一个示例是MAC表的老化。通常,仅存在用于MAC地址查找的一个表。源MAC地址查找可能想要参与老化过程。然而,目的地MAC地址查找可能不想参与老化过程,因为目的地可能已经从当前目的地端口移开而网络交换机尚不知道这一点。
图3图示了根据本发明的实施例的示例性中央老化存储器池300。在一些实施例中,如中央老化存储器池300那样相似地配置了图2的中央老化存储器池215。中央老化存储器池300包括年龄标记存储器305和年龄屏蔽存储器310,它们中的每一个包含多个物理存储器块。在一些实施例中,存储器池300的存储器被分组成块。块通常包含相同数目的存储器。在一些实施例中,每个块是64位宽和2048条目深。如图3中所示,八个存储器块被用来构造年龄标记存储器305和年龄屏蔽存储器310中的每个存储器。然而,年龄标记存储器305和年龄屏蔽存储器310中的每个存储器可以用更多或者更少的存储器块来构造。用于年龄标记存储器305的存储器块的数目可以与用于年龄屏蔽存储器310的存储器块的数目相同或者不同。
如以上所描述的,向年龄标记存储器305应用年龄标记。年龄屏蔽存储器310提供每条目控制粒度。如果屏蔽位被设置为0,则对应表条目不参与老化过程。每条目控制粒度提供许多益处。例如,系统想要移除路由表中的任何过时条目。然而,可能存在静态配置的永远不应被驱逐的一些路由条目。
图4图示了根据本发明的实施例的表老化模块400的框图。在一些实施例中,如表老化模块400那样相似地配置了图1的表老化模块130。表老化模块400允许并行处理表老化。
在年龄标记过程期间,在老化存储器超额的情况下在可以是FIFO缓冲器的输入队列415中缓存针对表命中的对老化存储器块405、410的年龄标记输入。软件可以配置老化过程以与年龄标记存储器405的带宽完美地匹配,这意味着仅少数表将被老化。备选地,软件可以配置老化过程以将许多表配置为被老化的。然而,有可能的是并非所有表命中将被标记,其中标记将变成概率性的。用于每个表命中的年龄标记输入包括表ID(即,tbl_age)和表命中地址。表命中地址被用来恰好映射到对应年龄标记存储器405的一行中的一位。
在年龄刷新过程期间,年龄标记存储器405中的读出的年龄标记数据与年龄屏蔽存储器410中的屏蔽位的逆逐位或。如果结果是全1,则条目中的每个条目已经在以往刷新期间被命中。然而,如果结果不是全1,则存在在以往刷新事件期间尚未命中的一个或者多个条目。年龄标记存储器块地址和行地址以及取或的数据被推送到可以是FIFO缓冲器的年龄中断队列425中。然后,出于驱逐目的、网络调试目的和/或其它目的,中断被发送到CPU,比如外部系统CPU。
刷新状态机420通常控制年龄刷新过程。表1列举刷新状态机420的配置。
表1
老化单元的模式(即,自动老化模式或者触发模式)由mode字段指定。unit_time字段定义老化事件所基于的时钟周期的数目。
如果老化单元处于自动老化模式,则年龄刷新过程基于配置的周期时间周期性地检查与搜索表对应的所有存储器位。
如果老化单元处于触发模式,则trig_cfg_bmp字段指示64个年龄简档中的哪些年龄简档将在系统CPU写时进行年龄刷新过程。
通常,硬件老化过程与CPU中的软件相比更快多个数量级地运行,年龄中断队列425可能容易溢出。基于en_pause字段,一旦年龄中断队列425占用水平超过如由fifo_thd字段设置的某个配置的阈值,刷新过程可以暂停。年龄老化过程通常暂停直至CPU消耗年龄中断队列425到配置的阈值以下。
由于有限的存储器硬件或者处理速率,在某个老化配置中并非所有表命中可以被标记,这可能造成错误老化报警。然而,由于网络流量的性质,多数活跃流将具有经过交换机的多于一个分组。因此,即使一个分组错过年龄标记过程,不可能所有分组都将错过年龄标记过程,尤其是如果老化刷新周期合理地足够长,这是针对实际用例的情况。另外,这一硬件架构使软件能够在更高等级应用中实施不同表老化机制,诸如使用多于1位宽的年龄计数器来老化。
图5图示了根据本发明的实施例的老化的方法500。方法500通常由图1的网络交换机100执行。如以上所讨论的,网络交换机100包括片上存储器125。多个分组处理单元115与片上存储器125通信以执行表搜索。
在步骤505,并行处理多个表搜索请求。
在步骤510,在表命中时,生成信息用于由表老化模块处理。
在步骤515,表老化模块使用中央存储器池来并行执行表的老化。表老化模块通常使用生成的信息来执行表的老化。如以上所讨论的,表的老化包括两个分离过程,这两个分离过程包括年龄标记过程和年龄刷新过程。中央老化存储器池包括年龄标记存储器和年龄屏蔽存储器。
年龄标记过程包括用于缓存针对表命中的对老化存储器块的年龄标记输入的输入队列,而年龄刷新过程包括年龄标记存储器中的读出的年龄标记数据与年龄屏蔽存储器中的屏蔽位的逆的逐位或运算。如果结果是全1,则条目中的每个条目已经在以往刷新期间被命中或者需要被保存。然而,如果结果不是全1,则存在在以往刷新事件期间尚未命中的一个或者多个条目。用于那些路由条目的存储器块地址和行地址以及取或的数据被推送到年龄中断队列中。然后,出于驱逐目的、网络调试目的和/或其它目的,中断被发送到CPU,诸如外部系统CPU。在一些实施例中,年龄刷新过程可以被暂停以防止年龄中断队列的溢出。
在一些实施例中,方法500也包括,在步骤505处并行处理多个表搜索请求之前可编程地指派块的第一子集作为年龄标记存储器、可编程地指派块的第二子集作为年龄标记存储器以及可编程地配置表老化模块。不同于使用专用存储器用于表老化的现有技术的联网交换机,网络交换机100使用一种集中式表老化模块,该集中式表老化模块高效地和灵活地使用嵌入式存储器资源用于表老化。
本领域普通技术人员将认识到其它使用和优点也存在。尽管已经参照许多具体细节描述了本发明,但是本领域普通技术人员将认识到可以在其它具体形式中体现本发明而不偏离本发明的精神。因此,本领域普通技术人员将会理解本发明不会受前述示例细节限制而更确切地将由所附权利要求限定。

Claims (25)

1.一种网络交换机,包括:
至少一个核,所述至少一个核包括多个处理单元;
片上存储器,所述片上存储器存储多个搜索表,其中所述多个处理单元与所述片上存储器通信以执行表搜索;以及
表老化模块,所述表老化模块包括它自身的嵌入式存储器,其中所述表老化模块老化所述多个搜索表中的任何搜索表。
2.根据权利要求1所述的网络交换机,其中一旦存在搜索表命中,所述表老化模块从对应的搜索请求接收表ID和命中地址。
3.根据权利要求1所述的网络交换机,其中所述表老化模块执行年龄标记过程和年龄刷新过程。
4.根据权利要求3所述的网络交换机,其中每当对应的搜索表命中发生时,所述年龄标记过程将年龄存储器位设置为被标记。
5.根据权利要求3所述的网络交换机,其中所述年龄刷新过程检查与所述搜索表对应的所有年龄存储器位。
6.根据权利要求5所述的网络交换机,其中所述检查基于配置的周期时间周期性地发生或者由软件具体地触发。
7.根据权利要求5所述的网络交换机,其中当年龄存储器位为未标记时,向软件通知相应表条目过时,并且当所述年龄存储器位被标记时,所述年龄存储器位被重置为未标记,以为下一轮年龄标记和年龄刷新做准备。
8.根据权利要求1所述的网络交换机,进一步包括老化配置集合,所述老化配置集合由所述表老化模块使用,其中所述老化配置集合包括配置、年龄简档和中央老化存储器池。
9.根据权利要求8所述的网络交换机,其中所述多个搜索表中的每个搜索表在所述老化配置中的一个老化配置中并且包括老化启用位和指向所述年龄简档中的一个年龄简档的指针。
10.根据权利要求8所述的网络交换机,其中所述年龄简档中的每个年龄简档指定用于搜索表的刷新时间段并且指定所述中央老化存储器池中的老化存储器分配。
11.根据权利要求8所述的网络交换机,其中所述中央老化存储器池是嵌入式的。
12.根据权利要求9所述的网络交换机,其中所述中央老化存储器池是所述片上存储器的一部分。
13.根据权利要求8所述的网络交换机,其中所述中央老化存储器池包括年龄标记存储器和年龄屏蔽存储器。
14.根据权利要求13所述的网络交换机,其中所述年龄标记存储器和所述年龄屏蔽存储器中的每个存储器包含多个物理存储器块,其中所述中央老化存储器池的存储器被分组成瓦片。
15.根据权利要求13所述的网络交换机,其中向所述年龄标记存储器应用年龄标记。
16.根据权利要求13所述的网络交换机,其中所述年龄屏蔽存储器提供每条目控制粒度,其中当屏蔽位被设置成0时,对应的表条目不参与老化过程。
17.一种在网络交换机中的表老化模块,所述表老化模块包括:
老化存储器块,所述老化存储器块包括年龄标记存储器和年龄屏蔽存储器;
年龄标记过程,所述年龄标记过程包括用于缓存针对表命中的对所述老化存储器块的年龄标记输入的输入队列;以及
年龄刷新过程,所述年龄刷新过程包括所述年龄标记存储器中的读出的年龄标记数据与所述年龄屏蔽存储器中的屏蔽位的逆的逐位或运算。
18.根据权利要求17所述的表老化模块,进一步包括年龄中断队列。
19.根据权利要求18所述的表老化模块,其中当所述运算的结果不是全1时,所述结果和存储器块地址以及针对老化存储器行的行地址被推送到所述年龄中断队列中,所述老化存储器行与搜索表条目的集合相对应。
20.根据权利要求17所述的表老化模块,进一步包括用于控制所述年龄刷新过程的刷新状态机。
21.一种网络交换机的方法,所述方法包括:
并行处理多个表搜索请求;
在表命中时,生成信息用于由表老化模块处理;以及
所述表老化模块使用中央存储器池来并行执行表的老化。
22.根据权利要求21所述的方法,其中所述表老化模块使用生成的所述信息来执行表的所述老化。
23.根据权利要求22所述的方法,其中表的所述老化包括两个分离过程,所述两个分离过程包括年龄标记过程和年龄刷新过程。
24.根据权利要求23所述的方法,进一步包括暂停所述年龄刷新过程。
25.根据权利要求23所述的方法,进一步包括:在并行处理多个表搜索请求之前,
可编程地指派所述块的第一子集作为年龄标记存储器;
可编程地指派所述块的第二子集作为年龄屏蔽存储器;以及
可编程地配置所述表老化模块。
CN201510254680.4A 2014-05-28 2015-05-18 用于网络交换机中的表老化的方法和装置 Active CN105282037B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/289,548 US9773036B2 (en) 2014-05-28 2014-05-28 Method and apparatus for table aging in a network switch
US14/289,548 2014-05-28

Publications (2)

Publication Number Publication Date
CN105282037A true CN105282037A (zh) 2016-01-27
CN105282037B CN105282037B (zh) 2020-04-24

Family

ID=54701909

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510254680.4A Active CN105282037B (zh) 2014-05-28 2015-05-18 用于网络交换机中的表老化的方法和装置

Country Status (4)

Country Link
US (2) US9773036B2 (zh)
CN (1) CN105282037B (zh)
HK (1) HK1220829A1 (zh)
TW (1) TW201605195A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112672387A (zh) * 2020-12-21 2021-04-16 广西东信易联科技有限公司 一种根据用户数据自动切换网络模式的方法及系统
CN114128232A (zh) * 2019-05-17 2022-03-01 谷歌有限责任公司 对于dram访问优化的流表老化
CN114710438A (zh) * 2022-05-07 2022-07-05 珠海星云智联科技有限公司 硬件表项老化处理方法及相关设备
US11620237B2 (en) 2019-05-17 2023-04-04 Google Llc Flow table aging optimized for DRAM access

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107800652A (zh) * 2017-10-20 2018-03-13 深圳市楠菲微电子有限公司 在交换机中使用的协议访问方法及装置
US10777297B2 (en) * 2018-12-10 2020-09-15 Micron Technology, Inc. Age-based refresh of firmware

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133623A1 (en) * 2001-03-07 2002-09-19 Broadcom Corporation System and method for slot based ARL table learning with concurrent table search using write snoop
US6813266B1 (en) * 1999-05-21 2004-11-02 Advanced Micro Devices, Inc. Pipelined access to address table in a network switch
US7194573B1 (en) * 2003-10-31 2007-03-20 Integrated Device Technology, Inc. CAM-based search engine devices having advanced search and learn instruction handling
CN101047670A (zh) * 2006-04-14 2007-10-03 华为技术有限公司 一种mac地址表老化、操作方法及其处理系统
CN100393042C (zh) * 2003-11-12 2008-06-04 国际商业机器公司 一般化管理网络处理器用表的系统和方法
CN101370016A (zh) * 2008-10-17 2009-02-18 成都市华为赛门铁克科技有限公司 一种数据流表的老化方法、装置和系统
CN101488862A (zh) * 2009-02-23 2009-07-22 中兴通讯股份有限公司 分布式以太网交换机及其内部的mac地址维护方法
US20130097345A1 (en) * 2009-04-27 2013-04-18 Lsi Corporation Address learning and aging for network bridging in a network processor
US20130246698A1 (en) * 2012-03-14 2013-09-19 Broadcom Corporation Hybrid Memory for Search Operations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6993033B1 (en) * 2001-04-04 2006-01-31 Advanced Micro Devices, Inc. Method and apparatus for synchronizing aging operations associated with an address table
JP5433332B2 (ja) * 2009-07-23 2014-03-05 アラクサラネットワークス株式会社 ネットワーク中継装置、その制御方法およびコンピュータプログラム
US8599858B1 (en) * 2009-08-12 2013-12-03 Marvell Israel (M.I.S.L.) Ltd. System and method for keep alive message aging

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6813266B1 (en) * 1999-05-21 2004-11-02 Advanced Micro Devices, Inc. Pipelined access to address table in a network switch
US20020133623A1 (en) * 2001-03-07 2002-09-19 Broadcom Corporation System and method for slot based ARL table learning with concurrent table search using write snoop
US7194573B1 (en) * 2003-10-31 2007-03-20 Integrated Device Technology, Inc. CAM-based search engine devices having advanced search and learn instruction handling
CN100393042C (zh) * 2003-11-12 2008-06-04 国际商业机器公司 一般化管理网络处理器用表的系统和方法
CN101047670A (zh) * 2006-04-14 2007-10-03 华为技术有限公司 一种mac地址表老化、操作方法及其处理系统
CN101370016A (zh) * 2008-10-17 2009-02-18 成都市华为赛门铁克科技有限公司 一种数据流表的老化方法、装置和系统
CN101488862A (zh) * 2009-02-23 2009-07-22 中兴通讯股份有限公司 分布式以太网交换机及其内部的mac地址维护方法
US20130097345A1 (en) * 2009-04-27 2013-04-18 Lsi Corporation Address learning and aging for network bridging in a network processor
US20130246698A1 (en) * 2012-03-14 2013-09-19 Broadcom Corporation Hybrid Memory for Search Operations

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114128232A (zh) * 2019-05-17 2022-03-01 谷歌有限责任公司 对于dram访问优化的流表老化
US11620237B2 (en) 2019-05-17 2023-04-04 Google Llc Flow table aging optimized for DRAM access
CN114128232B (zh) * 2019-05-17 2023-07-07 谷歌有限责任公司 管理流表的方法和流表管理系统
US11960413B2 (en) 2019-05-17 2024-04-16 Google Llc Flow table aging optimized for DRAM access
CN112672387A (zh) * 2020-12-21 2021-04-16 广西东信易联科技有限公司 一种根据用户数据自动切换网络模式的方法及系统
CN112672387B (zh) * 2020-12-21 2021-08-31 广西东信易联科技有限公司 一种根据用户数据自动切换网络模式的方法及系统
CN114710438A (zh) * 2022-05-07 2022-07-05 珠海星云智联科技有限公司 硬件表项老化处理方法及相关设备

Also Published As

Publication number Publication date
US20170364541A1 (en) 2017-12-21
US9773036B2 (en) 2017-09-26
HK1220829A1 (zh) 2017-05-12
CN105282037B (zh) 2020-04-24
US10216780B2 (en) 2019-02-26
US20150347313A1 (en) 2015-12-03
TW201605195A (zh) 2016-02-01

Similar Documents

Publication Publication Date Title
CN105282037A (zh) 用于网络交换机中的表老化的方法和装置
US9116703B2 (en) Semi-static power and performance optimization of data centers
CN103763378A (zh) 基于分布式流式计算系统的任务处理方法、系统及节点
US10153979B2 (en) Prioritization of network traffic in a distributed processing system
WO2009123586A1 (en) Automated power topology discovery
US9641431B1 (en) System and methods for utilization-based balancing of traffic to an information retrieval system
US10027602B2 (en) Packet queue depth sorting scheme for switch fabric
JP2016522488A (ja) タスク割り当て方法、タスク割り当て装置、およびネットワークオンチップ
US10193811B1 (en) Flow distribution using telemetry and machine learning techniques
CN104980515B (zh) 一种云存储系统中消息分发处理方法和装置
CN111628941A (zh) 一种网络流量的分类处理方法、装置、设备及介质
CN106886450A (zh) 任务调度方法和系统
CN107707690B (zh) 一种动态地址不老化的方法、装置和介质
EP3672172B1 (en) Allocation of processors for processing packets
EP3238386A1 (en) Apparatus and method for routing data in a switch
CN107924330A (zh) 用于集成的线程调度的技术
CN107948157A (zh) 一种报文处理方法及装置
CN110912826A (zh) 利用acl扩充ipfix表项的方法及装置
CN107222999A (zh) 一种快速定位设备的系统、方法及机房管理系统
US11431565B2 (en) Dynamic traffic-aware interface queue switching among processor cores
US20150277954A1 (en) Apparatus and method for mapping of tenant based dynamic processor
CN110677358A (zh) 一种报文处理方法及一种网络设备
US9419909B2 (en) Determining when to relearn a relationship between a network address and a port
US20150286493A1 (en) Virtual-machine placement based on information from multiple data centers
US20180331934A1 (en) State synchronization for global control in a distributed security system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1220829

Country of ref document: HK

CB02 Change of applicant information
CB02 Change of applicant information

Address after: California, USA

Applicant after: Cavium, Inc.

Address before: California, USA

Applicant before: Cavium, Inc.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200424

Address after: Singapore City

Patentee after: Marvell Asia Pte. Ltd.

Address before: Ford street, Grand Cayman, Cayman Islands

Patentee before: Kaiwei international Co.

Effective date of registration: 20200424

Address after: Ford street, Grand Cayman, Cayman Islands

Patentee after: Kaiwei international Co.

Address before: California, USA

Patentee before: Cavium, Inc.

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1220829

Country of ref document: HK