CN1396748A - 分组处理装置 - Google Patents
分组处理装置 Download PDFInfo
- Publication number
- CN1396748A CN1396748A CN02119229A CN02119229A CN1396748A CN 1396748 A CN1396748 A CN 1396748A CN 02119229 A CN02119229 A CN 02119229A CN 02119229 A CN02119229 A CN 02119229A CN 1396748 A CN1396748 A CN 1396748A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- grouping
- related data
- address
- search key
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
Abstract
本发明披露了分组处理装置,其中分组接收电路11把从传输信道1接收的分组分成固定长度的信元和输出该信元;检索关键字提取电路12从上述信元中提取预定的检索关键字;CAM13基于上述检索关键字执行检索和输出对应于上述关键字的存储器地址;匹配入口地址接收和相关数据地址发射电路14基于上述存储器地址计算上述相关数据存储器15的存储器地址和输出作为相关数据的存储在相关数据存储器15中的信息;检索结果(相关数据)接收电路16接收上述相关数据和执行上述信元的首部更新和目的地址,和分组发射电路17输出上述分组形式的信元到传输信道2。
Description
背景技术
本发明涉及一种分组处理装置,用于在路由器等中执行一个分组目的地址处理等。
分组处理装置已经使用在路由器等中,用于执行一个分组目的地址处理等。
按照惯例,当需要和通过软件处理时,分组处理装置提供执行一种分组目的地址处理等、一种QOS信息的解法或一种分组标题的新处理的方法。
但是快速处理不能通过软件处理执行分组目的地址处理等的方法加以执行。
因此,一种通过硬件配置的实现方法被认为解决了上述问题。
然而,在通过软件执行目的地址处理的情况下,例如用于执行一个分类以通过一个多字段识别分组流的多字段(Multi Field)分类表的多个查阅表、一个用于执行前向具有意识的流的流目的地址表等,必须被建立,用于处理多协议或多层。同时,提供仅仅用于执行每一个上述独立地处理的电路或表的配置引起电路刻度扩大的问题。
发明的概述
本发明的一个目的是提供一种具有简单的结构能够快速地执行一个分组目的地址处理的分组处理装置。
按照本发明,一种同于执行从传输信道中接收的分组目的地址和输出上述分组到上述传输信道的分组处理装置包括:
分组接收装置,用于输出经由上述传输信道以定长的拆分信元形式接收的分组,
检索关键字提取装置,用于从上述分组接收装置接收的上述信元中提取预定的检索关键字,
内容寻址存储器(举例来说,下文中作为CAM提到),用于基于上述检索关键字提取装置提取的上述检索关键字执行检索和输出对应于上述关键字的存储器地址,
相关数据存储装置,用于存储最少的地址信息和输出存储在输入存储器地址的信息,
相关数据读取装置,用于基于从上述CAM中接收的上述存储器地址计算上述相关数据存储装置的存储器地址和把存储器地址供给上述相关数据存储装置,
目的地址装置,用于基于通过上述相关数据读取装置读取的上述相关数据存储装置的信息,执行特殊信元的目的地址,和
提供分组发射装置,用于把从上述目的地址装置接收的信元送回到分组和输出分组到上述传输信道。分组处理装置的特征在于上述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置执行一个流水线过程。
分组接收装置输出经由上述传输信道以定长的拆分信元形式接收的分组。检索关键字提取装置从上述分组接收装置接收的上述信元中提取预定的检索关键字。CAM基于通过上述检索关键字提取装置提取的上述检索关键字执行检索和输出对应于上述关键字的存储器地址。相关数据读取装置基于从上述CAM中接收的上述存储器地址计算上述相关数据存储装置的存储器地址和把存储器地址供给上述相关数据存储装置。目的地址装置基于通过上述相关数据读取装置读取的上述相关数据存储装置的信息执行特殊信元的目的地址。和分组发射装置把从上述目的地址装置接收的信元送回到分组和输出分组到上述传输信道。同时,上述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置执行一个流水线过程。
顺便说一句,上述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置每一级的持续时间可以这样构成以便至多把设置的分组到达时间间隔输入到上述分组接收装置。
同时,上述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置的处理时间可以被这样构成,以便设置其短于每一级的持续时间。
此外,分组处理装置可以这样构成,以使其包括维护装置,用于在上述级的空闲时间期间执行至少一个上述CAM或相关数据存储装置的维护。
而且,分组处理装置可以这样构成,以使其包括缓冲器装置,用于在上述传输信道和上述分组接收装置之间和在上述传输信道和上述分组发射装置之间的定时调节。
此外,分组处理装置可以这样构成,以使其包括运算处理装置,用于在至少一个到上述分组接收装置的随后步骤或一个到上述分组发射装置的前述步骤中执行关于上述信元的预定处理。
附图的简述
图1是与本发明第一实施例有关的分组处理装置的框图;
图2是与本发明第一实施例有关的分组处理装置的时序图;
图3是与本发明第二实施例有关的分组处理装置的框图;
图4是与本发明第二实施例有关的分组处理装置的时序图;
图5是与本发明第三实施例有关的分组处理装置的框图;
图6是与本发明第四实施例有关的分组处理装置的框图;
图7是与本发明第五实施例有关的分组处理装置的框图。
优选实施例的详细描述
图1是与本发明第一实施例有关的分组处理装置的框图。例如可应用第一实施例的分组处理装置的设备之一是路由器。
在图1中,11表示一个作为分组接收装置的分组接收电路,12表示一个作为检索关键字提取装置的检索关键字提取电路,13表示能够流水线检索的一个CAM,14表示一个作为相关数据提取装置的匹配入口(Matching Entry)地址接收和相关数据地址发射电路、15表示一个作为相关数据存储装置的相关数据存储器、16表示一个作为目的地址装置的检索结果(相关数据)接收电路,和17表示一个作为分组发射装置的分组发射电路。并且上面提到的每一个元件都是由硬件构成的。
顺便说一句,CAM13不但具有存储功能,而且具有检索功能。当同样的数据作为预先存储在CAM中的数据被输入到CAM13时,CAM13输出数据被存储的CAM13的地址。CAM能够LPM(最长标头匹配)检索和各种比特宽度的检索和能够快速的执行与检索关键字的比特宽度和种类无关的检索。另外,因为CAM具有能够执行检索而不会招致降低的特征,当存储在CAM13中的数据增大时,即使在数据量变得更大的情况下,快速检索也是可能的。
另一方面,在相关数据存储器中存储地址信息、分类信息等分组。
顺便说一句,分组接收电路11、检索关键字提取电路12、匹配入口(MatchingEntry)地址接收和相关数据地址发射电路14、检索结果(相关数据)接收电路16和分组发射电路17构成作为分组处理装置的分组处理部分10。
分组接收电路11接收一个可变长度的分组,例如一个IP(网际协议)分组,同时输出固定长度的拆分信元形式的信号,例如ATM(异步传输模式)信元。下文中,从分组接收电路11输出的信号称作信元。
通过n时钟流水线的每一级,从分组接收电路11输出的信元被处理转接到分组处理装置的每一个元件的每一级(分组接收电路11,检索关键字提取电路12、CAM13、匹配入口(Matching Entry)地址接收和相关数据地址发射电路14、相关数据存储器15、检索结果(相关数据)接收电路16和分组发射电路17)。
因为IP分组的地址信息和QOS的信息在多数情况下存储在首部部分。如果尺寸大于信元的分组被输入到分组接收电路11和分组被分成多个信元以从分组接收电路11输出,仅仅第一到达信元在每一级处理,第二到达的和其后到达的信元没有特殊的处理。因此,后来的处理仅仅执行在第一到达信元,同时流水线的每一级被转接而不需要处理其它随后的信元。
首先,检索关键字提取电路12从分组接收电路11接收的信元中提取一个所需的检索关键字。下一步,通过输入上述检索关键字到能够流水线检索的CAM13,检索在CAM13中被执行。顺便说一句,检索关键字是用于解决传送分组的目的地和分类详细传送的分组种类的关键字。同时如果是IP分组,例如标题的目的地址的字段、发送器的地址、协议类型、服务类型等作为检索关键字被使用。
基于从检索关键字提取电路12输入的检索关键字,CAM13执行检索处理,同时输出一个CAM13的存储器地址(存储检索关键字的CAM13的存储器地址),作为检索的过程它是间歇处理的。
匹配入口(Matching Entry)地址接收和相关数据地址发射电路14接收来自CAM13的上述存储器地址,和计算相关数据存储器15的存储器地址,其中基于去连接CAM13的地址和相关数据存储器15的地址的规则,来自上述存储器地址的实际相关数据被存储。
然后,通过把存储器地址从匹配入口(Matching Entry)地址接收和相关数据地址发射电路14给到相关数据存储器15,实际相关数据就可以从相关数据存储器15获得。换句话说,相关数据存储器15输出从匹配入口(Matching Entry)地址接收和相关数据地址发射电路14输入到检索结果(相关数据)接收电路16的存储在上述存储器地址上的数据(相关数据)。
基于上述相关数据,检索结果(相关数据)接收电路16执行所需首部更新和关于分组(直接是信元)的目的地址,同时输出分组到分组发射电路17。分组发射电路17合并多个通过分组接收电路11分解的信元成一个分组,并输出跟新的分组到网络。
当保持没有拥挤的速度时,通过提供n时钟在不太大于分组最短到达时间间隔(等于定长的信元尺寸)的一个值上配置的流水线级,在来自分组接收电路11经过本发明构成的流水线的分组成功的到达的情况下,分组处理成为可能。
在具有提供的n时钟流水线的每一级,在检索关键字提取电路12和CAM13中不仅每个分组的一个检索处理,而且每个分组的多个检索都成为可能。同时可以获得不但一个,而且多个与分组有关的用于执行处理的信息。
此外,通过在稍高于从分组接收电路11实际到达的分组具有的速度上操作上述流水线配置,流水线过程的每一级可以提供有周期性的空闲时间。同时通过在附图中未示出的维护装置,使用上述空闲时间,存储在CAM13中的数据的维护例如审查、跟新等都可以被执行。
图2是在图1中所示的分组处理装置的时序图。为了简化这种叙述,三个信元成功到达的情况在图2中描述。同时,流水线的时钟周期(每一级的时钟号n)被假定为八个时钟。整个处理包括由标记11到17表示的7个流水线级。标记11到17中的每一个描述了具有与图1中所示分组处理装置的元件标记相同的元件的处理,换句话说,就是从分组接收电路11到分组发射电路17。下文中,参照图1和图2详细地的描述本发明第一实施例的操作。
分组接收电路11经由传输信道1从网络接收分组,同时输出由接收的分组分成的定长信元。在本发明中,上述信元的每一个都具有八个时钟的长度。通过下文中的八个时钟流水线,上述信元被处理以转接到从检索关键字提取电路12到分组发射电路17的每一级。
当接收分组时,首先,分组接收电路确定何种类型的分组被检索和什么是所需的检索关键字,作为按照分组类型的分类方法,在IP分组被包裹的以太网中,通过在以太网的首部确定字段(有效载荷类型),作为一个IP分组的分组类型被分类。同时作为检索关键字,例如在作为上述提及的IP分组的情况下,提供有首部的目的地址字段、发送器的地址、协议类型、服务类型等。
下一步,检索关键字提取电路12从信元中提取所需的一个检索关键字,同时通过输出上述检索关键字到CAM13来给出一个检索指令。顺便说一句,本发明论述的前提是CAM13能够执行检索,换句话说,检索响应每一个时钟。因此,在执行处理的每一级上,检索关键字提取电路12不但提取一种、而且提取一种以上适合一级(在本发明中,对于作为提供八个时钟一级的最大的八个时间,检索是可能的)的检索关键字,同时把一个检索指令给CAM13。因为检索种类的增加,所以检索关键字提取电路12执行处理的级的数量可以增加或流水线时钟循环数n可以设置的更大。
CAM13接收来自检索关键字提取电路12的检索关键字,和在通过m时钟(m:自然数)的持续时间检索的结果下,瞬间发送地址到匹配入口(MatchingEntry)地址接收和相关数据地址发射电路14。匹配入口(Matching Entry)地址接收和相关数据地址发射电路14接收上述地址以计算存储实际相关数据的相关数据存储器15的地址(相关数据地址),并把相关数据地址给到相关数据存储器15。如果在检索关键字提取电路12的处理级12上执行多种检索,则上述操作相对于每一个检索被重复。
顺便说一句,基于上述相关数据地址,当从检索关键字提取电路12到CAM13的检索关键字传送处理、从CAM13到匹配入口(Matching Entry)地址接收和相关数据地址发射电路14的相关数据地址输出处理和到相关数据存储器15的相关数据的读指令同时运行时,执行检索处理而一直没有浪费。
作为检索的结果获得的相关数据从相关数据存储器15输出到检索结果(相关数据)接收电路16,同时基于上述相关数据,检索结果(相关数据)接收电路16执行所需首部更新和相对于分组(直接到信元)的目的地址。顺便说一句,如果多种检索指令在检索关键字提取电路12中给出,因为多种相关数据也是可以得到的,则响应于在每一个检索结果中获得的相关数据的处理是可以完成的,同时所需的处理可以通过合并多种相关数据或把优先权分配给相关数据予以实现。
最后,一个更新的分组从分组发射电路17经由传输信道2输出到网络。在图2中,三个信元成功的到达每一级,同时如果第一和第二信元构成一个分组,信元将被确定,而无论信元是第一信元,或在分组接收电路11或检索关键字提取电路12的级上。同时如果信元不是第一个到达,则上述处理不被执行,同时每一个流水线被转接。
另外,通过在稍高于从分组接收电路11实际到达的分组具有的速度上操作流水线配置,则在流水线处理期间,空闲时间(级)可以周期性的提供,同时通过在附图中未示出的维护装置,CAM13或外部存储器15的维护可以使用上述空闲时间予以时间。
如上所述,涉及第一实施例的分组处理装置是一种特别用于执行从传输信道接收的分组目的地址的分组处理装置,和输出上述分组到上述传输信道,包括:
分组接收电路11,用于输出以定长的拆分信元形式经由传输信道1接收的分组,
检索关键字提取电路12,用于从上述分组接收电路11接收的上述信元中提取预定的检索关键字,
CAM13,用于执行基于通过上述检索关键字提取电路12提取的上述检索关键字的检索和输出对应于上述关键字的存储器地址,
相关数据存储器15,用于存储最小的地址信息和输出存储在输入存储器地址的信息,
匹配入口地址接收和相关数据地址发射电路14,用于基于从上述CAM13中接收的上述存储器地址计算对应于上述CAM13的存储器地址的上述相关数据存储器15的存储器地址和把存储器地址供给上述相关数据存储器15,
检索结果(相关数据)接收电路16,用于基于通过上述匹配入口地址接收和相关数据地址发射电路14读取的上述相关数据存储器15的信息,执行特殊信元的目的地址,和
分组发射电路17,用于通过合并来自检索结果接收电路16的信元来产生分组,和输出分组到上述传输信道2。分组处理装置的特征在于上述分组接收电路11、检索关键字提取电路12、CAM13、相关数据存储器15、匹配入口地址接收和相关数据地址发射电路14、检索结果接收电路16和分组发射电路17执行一个流水线过程。
当保持没有拥挤的速度时,通过提供n时钟在不太大于分组最短到达时间间隔(等于定长的信元尺寸)的一个值上配置的流水线级,在来自分组接收电路11经过本发明构成的流水线的分组成功的到达的情况下,分组处理成为可能。因此,本发明的分组处理装置可以应用的,例如用到高速路由器的转发引擎。
同时在具有提供的n时钟流水线的每一级,在检索关键字提取电路12和CAM13中不仅每个分组的一个检索处理,而且多个检索处理也是可能的,同时不但相对于一个分组的一个而且多个处理可以被执行或相对于一种被分配给通过多个检索获得的优先权的相关数据的处理也可以被执行。
此外,通过在一个CAM13中建立多个表,在一个电路中的控制和检索成为可能,这归因于电路的按比例缩小。
图3是涉及本发明第二实施例的分组处理装置的框图,同时它的附图标记与图1中的附图标记相同。同时图4是显示图3示出的分组处理装置的时序图。
与上述第一实施例不同的第二实施例包括一个作为缓冲器装置的用于调节处理的时序的输入缓冲器18,它输出接收的分组到分组接收电路11;和一个作为缓冲器装置的用于调节处理的时序的输出缓冲器19,它输出从分组发射电路17接收的分组。
在第二实施例中,从分组接收电路11到分组发射电路17的流水线级具有一个短于输入分组到输入缓冲器18的周期和从输出缓冲器19输出分组周期的周期。因此,输入缓冲器18和输出缓冲器19被建立,用于执行在传输信道1和2之间发射的分组周期的调节和在分组处理装置中时序的处理。
因此,免除任何种类的处理空闲时间(图4中的M)可以被提供在分组处理装置中,通过与外部到达分组的周期相比缩短在分组处理装置中的流水线周期。同时,不需要任何复杂的冲突控制,上述的空闲时间可以被利用执行存储在CAM13或相关数据存储器15中的数据的更新。
图4是一个时序图的实例。换句话说,输入到输入缓冲器18的信元周期和从输出缓冲器19输出的信元周期彼此是相同的,同时从分组接收电路11到分组发射电路17的流水线处理被执行在输入到输入缓冲器18的信元周期和从输出缓冲器19输出的信元周期的五分之四个周期内。
因此,即使信元在输入缓冲器18和输出缓冲器19的周期内成功的到达的情况下,免除任何种类的处理的一级确实提供有相对于分组接收电路11到分组发射电路17的一级的五分之一周期。
图5是涉及本发明第四实施例的分组处理装置的框图,同时它的附图标记与图1中的附图标记相同。
在与上述第一实施例不同的第三实施例中在分组接收电路11和检索关键字提取电路12之间提供一个算术处理电路110。
尽管当可变长度的分组被接收时,上述第一和第二实施例被这样安置以使仅仅处理一个第一到达信元,一种可能性出现了,其中所有的分组必须执行预定的算法,例如在路由器等中分组的加密。因此,提供算术处理电路110,其中不仅相对于第一到达信元,而且相对于其它信元的一个预定的算术处理被执行。作为关于分组的一个预定算法处理的实例,在以太网分组的末端的执行帧检验序列的处理被命名。这样,处理在所有可变长度的分组上执行算法处理的结果是可能的。
图7是与本发明第五实施例有关的分组处理装置的框图,同时它的附图标记与图1、3、5、6中的附图标记相同。
第五实施例的配置包括从第二实施例到第四实施例的所有元件,因此不需要任何复杂的冲突控制就可以执行CAM13和相关数据存储器15的维护。
另外,因为上述第三实施例到第五实施例具有提供的算法处理电路110,用于至少在到分组接收电路11的一个随后步骤和到分组发射电路17的先前步骤上,通过执行关于信元的一个预定处理,在所有分组上执行一个预定处理(例如,保密的处理或FCS的包括),在更新标题信息之后当接收或执行一个关于所有分组的一个预定算法处理时执行一个相对于分组的特殊的算法处理成为可能。
按照本发明,分组目的地址等的处理可以使用简单的结构快速的执行。
Claims (6)
1.一种分组处理装置,用于在从所述传输信道接收的所述分组上执行目的地址之前输出分组到传输信道,它包括:
分组接收装置,用于输出经由上述传输信道以定长的拆分信元形式接收的分组,
检索关键字提取装置,用于从上述分组接收装置接收的上述信元中提取预定的检索关键字,
CAM,用于基于通过上述检索关键字提取装置提取的上述检索关键字执行检索和输出对应于上述关键字的存储器地址,
相关数据存储装置,用于至少存储目的地址信息和输出存储在输入存储器地址的信息,
相关数据读取装置,用于基于从上述CAM中接收的上述存储器地址计算上述相关数据存储装置的存储器地址和把存储器地址供给上述相关数据存储装置,
目的地址装置,用于基于通过上述相关数据存储装置读取的上述相关数据存储装置的信息,执行特殊信元的目的地址,和
分组发射装置,用于把从上述目的地址装置接收的信元送回到分组和输出分组到上述传输信道,
其中所述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置执行一个流水线处理。
2.按照权利要求1的分组处理装置,其中所述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置的每一级的持续时间被设置在不超过输入到所述分组接收装置的分组的到达时间间隔内。
3.按照权利要求2的分组处理装置,其中所述分组接收装置、检索关键字提取装置、CAM、相关数据存储装置、相关数据读取装置、目的地址装置和分组发射装置的处理时间被设置为不超过每一级的持续时间。
4.按照权利要求3的分组处理装置,包括维护装置,用于在所述级的空闲时间期间执行至少上述CAM或相关数据存储装置之一的维护。
5.按照权利要求1-4中至少一个的分组处理装置,包括缓冲器装置,用于在上述传输信道和上述分组接收装置之间和在上述传输信道和上述分组发射装置之间的定时调节。
6.按照权利要求1-5中至少一个的分组处理装置,包括运算处理装置,用于在至少一个到上述分组接收装置的随后步骤或一个到上述分组发射装置的前述步骤中执行关于上述信元的预定处理。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP210161/2001 | 2001-07-11 | ||
JP2001210161A JP3489573B2 (ja) | 2001-07-11 | 2001-07-11 | パケット処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1396748A true CN1396748A (zh) | 2003-02-12 |
Family
ID=19045674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN02119229A Pending CN1396748A (zh) | 2001-07-11 | 2002-03-09 | 分组处理装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7095742B2 (zh) |
JP (1) | JP3489573B2 (zh) |
CN (1) | CN1396748A (zh) |
CA (1) | CA2375397C (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005015837A1 (fr) * | 2003-08-07 | 2005-02-17 | Huawei Technologies Co., Ltd. | Procede et systeme de mise en oeuvre d'emission de paquets de donnees |
CN100358319C (zh) * | 2003-08-12 | 2007-12-26 | 华为技术有限公司 | 一种实现数据报文传输的方法和系统 |
CN101221538B (zh) * | 2008-01-24 | 2010-10-13 | 杭州华三通信技术有限公司 | 实现对缓存中数据快速查找的系统和方法 |
CN104160681A (zh) * | 2012-03-09 | 2014-11-19 | 阿尔卡特朗讯 | 用于使用dns数据识别与ip流相关的应用的方法和装置 |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596139B2 (en) | 2000-11-17 | 2009-09-29 | Foundry Networks, Inc. | Backplane interface adapter with error control and redundant fabric |
JP3965283B2 (ja) * | 2001-07-02 | 2007-08-29 | 株式会社日立製作所 | 複数種類のパケット制御機能を備えたパケット転送装置 |
US6868476B2 (en) * | 2001-08-27 | 2005-03-15 | Intel Corporation | Software controlled content addressable memory in a general purpose execution datapath |
US7225281B2 (en) * | 2001-08-27 | 2007-05-29 | Intel Corporation | Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms |
US7216204B2 (en) * | 2001-08-27 | 2007-05-08 | Intel Corporation | Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment |
US7487505B2 (en) * | 2001-08-27 | 2009-02-03 | Intel Corporation | Multithreaded microprocessor with register allocation based on number of active threads |
US7610451B2 (en) * | 2002-01-25 | 2009-10-27 | Intel Corporation | Data transfer mechanism using unidirectional pull bus and push bus |
SE525183C2 (sv) * | 2002-04-04 | 2004-12-21 | Xelerated Ab | Förfarande och medel för behandling med pipelining av datapaket |
JP3936883B2 (ja) * | 2002-04-08 | 2007-06-27 | 株式会社日立製作所 | フロー検出装置およびフロー検出機能を備えたパケット転送装置 |
US7266117B1 (en) * | 2002-05-06 | 2007-09-04 | Foundry Networks, Inc. | System architecture for very fast ethernet blade |
US7468975B1 (en) * | 2002-05-06 | 2008-12-23 | Foundry Networks, Inc. | Flexible method for processing data packets in a network routing system for enhanced efficiency and monitoring capability |
US7187687B1 (en) | 2002-05-06 | 2007-03-06 | Foundry Networks, Inc. | Pipeline method and system for switching packets |
US20120155466A1 (en) * | 2002-05-06 | 2012-06-21 | Ian Edward Davis | Method and apparatus for efficiently processing data packets in a computer network |
US7649885B1 (en) * | 2002-05-06 | 2010-01-19 | Foundry Networks, Inc. | Network routing system for enhanced efficiency and monitoring capability |
JP3789395B2 (ja) * | 2002-06-07 | 2006-06-21 | 富士通株式会社 | パケット処理装置 |
US7136960B2 (en) * | 2002-06-14 | 2006-11-14 | Integrated Device Technology, Inc. | Hardware hashing of an input of a content addressable memory (CAM) to emulate a wider CAM |
US7013367B2 (en) * | 2002-07-18 | 2006-03-14 | Intel Corporation | Caching associative memory using non-overlapping data |
US7337275B2 (en) * | 2002-08-13 | 2008-02-26 | Intel Corporation | Free list and ring data structure management |
US6941438B2 (en) * | 2003-01-10 | 2005-09-06 | Intel Corporation | Memory interleaving |
KR100542361B1 (ko) * | 2003-02-12 | 2006-01-10 | 삼성전자주식회사 | 피피피오이 네트워크 시스템 및 이 시스템의 접속 방법 |
US8477780B2 (en) * | 2003-03-26 | 2013-07-02 | Alcatel Lucent | Processing packet information using an array of processing elements |
US7747731B2 (en) * | 2003-03-27 | 2010-06-29 | Nokia Corporation | Minimizing message processing latency in a communication network |
US6901072B1 (en) | 2003-05-15 | 2005-05-31 | Foundry Networks, Inc. | System and method for high speed packet transmission implementing dual transmit and receive pipelines |
FR2857539B1 (fr) * | 2003-07-11 | 2005-09-30 | Cit Alcatel | Description de contenu de paquets dans un reseau de communication par paquets |
EP1657859B1 (en) * | 2003-08-20 | 2013-05-15 | Nippon Telegraph And Telephone Corporation | Protocol speed increasing device |
US7213099B2 (en) * | 2003-12-30 | 2007-05-01 | Intel Corporation | Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches |
US7058424B2 (en) * | 2004-01-20 | 2006-06-06 | Lucent Technologies Inc. | Method and apparatus for interconnecting wireless and wireline networks |
US7251707B1 (en) * | 2004-02-06 | 2007-07-31 | Netlogic Microsystems, Inc. | Content based content addressable memory block enabling using search key |
US7440460B2 (en) * | 2004-03-05 | 2008-10-21 | Samsung Electronics Co., Ltd. | Apparatus and method for forwarding mixed data packet types in a high-speed router |
US7817659B2 (en) | 2004-03-26 | 2010-10-19 | Foundry Networks, Llc | Method and apparatus for aggregating input data streams |
US8730961B1 (en) | 2004-04-26 | 2014-05-20 | Foundry Networks, Llc | System and method for optimizing router lookup |
GB2431320B (en) * | 2004-08-12 | 2007-12-05 | Samsung Electronics Co Ltd | Reconfigurable key search engine |
GB2417399B (en) * | 2004-08-12 | 2007-04-25 | Samsung Electronics Co Ltd | Reconfigurable key search engine |
KR100735577B1 (ko) | 2004-08-12 | 2007-07-04 | 삼성전자주식회사 | 무선 네트워크의 적응형 키검색장치 및 방법 |
US7657703B1 (en) | 2004-10-29 | 2010-02-02 | Foundry Networks, Inc. | Double density content addressable memory (CAM) lookup scheme |
JP2006135660A (ja) * | 2004-11-05 | 2006-05-25 | Alaxala Networks Corp | 連想メモリ及びパケット転送装置 |
US20060187920A1 (en) * | 2005-02-18 | 2006-08-24 | Broadcom Corporation | Flexible packet modification engine |
US7983291B2 (en) * | 2005-02-18 | 2011-07-19 | Broadcom Corporation | Flexible packet modification engine for a network device |
US8448162B2 (en) * | 2005-12-28 | 2013-05-21 | Foundry Networks, Llc | Hitless software upgrades |
US7903654B2 (en) * | 2006-08-22 | 2011-03-08 | Foundry Networks, Llc | System and method for ECMP load sharing |
US8238255B2 (en) * | 2006-11-22 | 2012-08-07 | Foundry Networks, Llc | Recovering from failures without impact on data traffic in a shared bus architecture |
US8395996B2 (en) * | 2007-01-11 | 2013-03-12 | Foundry Networks, Llc | Techniques for processing incoming failure detection protocol packets |
US7813337B2 (en) * | 2007-01-19 | 2010-10-12 | Broadcom Corporation | Network packet processing using multi-stage classification |
US8037399B2 (en) * | 2007-07-18 | 2011-10-11 | Foundry Networks, Llc | Techniques for segmented CRC design in high speed networks |
US8271859B2 (en) * | 2007-07-18 | 2012-09-18 | Foundry Networks Llc | Segmented CRC design in high speed networks |
US8149839B1 (en) | 2007-09-26 | 2012-04-03 | Foundry Networks, Llc | Selection of trunk ports and paths using rotation |
US8090901B2 (en) | 2009-05-14 | 2012-01-03 | Brocade Communications Systems, Inc. | TCAM management approach that minimize movements |
US8599850B2 (en) | 2009-09-21 | 2013-12-03 | Brocade Communications Systems, Inc. | Provisioning single or multistage networks using ethernet service instances (ESIs) |
CN102447607B (zh) * | 2010-10-08 | 2014-08-13 | 中兴通讯股份有限公司 | 采用地址冗余技术实现包重组的方法、装置及系统 |
KR20130093707A (ko) * | 2011-12-23 | 2013-08-23 | 한국전자통신연구원 | 패킷 분류 장치 및 그것의 패킷 분류 방법 |
JP5889218B2 (ja) * | 2013-01-23 | 2016-03-22 | アラクサラネットワークス株式会社 | データ転送装置及びデータ転送方法 |
JP2016132110A (ja) * | 2015-01-16 | 2016-07-25 | セイコーエプソン株式会社 | 印刷物の製造方法および印刷物 |
US11722248B1 (en) * | 2022-01-26 | 2023-08-08 | Zurn Industries, Llc | Cloud communication for an edge device |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6411620B1 (en) * | 1991-01-31 | 2002-06-25 | Fujitsu Limited | Connectionless communication system |
US5438535A (en) * | 1994-03-29 | 1995-08-01 | Panasonic Technologies, Inc. | Content addressable memory system |
US6181698B1 (en) * | 1997-07-09 | 2001-01-30 | Yoichi Hariguchi | Network routing table using content addressable memory |
US6549519B1 (en) * | 1998-01-23 | 2003-04-15 | Alcatel Internetworking (Pe), Inc. | Network switching device with pipelined search engines |
JP2000151709A (ja) | 1998-11-12 | 2000-05-30 | Nec Corp | ルーティングアドレス検索システム |
JP2000172651A (ja) * | 1998-12-03 | 2000-06-23 | Nec Corp | 非同期転送モード(atm)セルパイプライン処理装置 |
JP3645734B2 (ja) | 1999-02-24 | 2005-05-11 | 株式会社日立製作所 | ネットワーク中継装置及びネットワーク中継方法 |
JP2001045061A (ja) * | 1999-08-02 | 2001-02-16 | Hitachi Ltd | 通信ノード装置 |
US6374326B1 (en) * | 1999-10-25 | 2002-04-16 | Cisco Technology, Inc. | Multiple bank CAM architecture and method for performing concurrent lookup operations |
JP3381687B2 (ja) | 1999-11-25 | 2003-03-04 | 日本電気株式会社 | フロー識別装置、フロー処理装置、フロー識別方法及びフロー処理方法 |
US6606681B1 (en) * | 2001-02-23 | 2003-08-12 | Cisco Systems, Inc. | Optimized content addressable memory (CAM) |
-
2001
- 2001-07-11 JP JP2001210161A patent/JP3489573B2/ja not_active Expired - Lifetime
-
2002
- 2002-03-07 US US10/091,392 patent/US7095742B2/en active Active
- 2002-03-08 CA CA 2375397 patent/CA2375397C/en not_active Expired - Lifetime
- 2002-03-09 CN CN02119229A patent/CN1396748A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005015837A1 (fr) * | 2003-08-07 | 2005-02-17 | Huawei Technologies Co., Ltd. | Procede et systeme de mise en oeuvre d'emission de paquets de donnees |
CN100358319C (zh) * | 2003-08-12 | 2007-12-26 | 华为技术有限公司 | 一种实现数据报文传输的方法和系统 |
CN101221538B (zh) * | 2008-01-24 | 2010-10-13 | 杭州华三通信技术有限公司 | 实现对缓存中数据快速查找的系统和方法 |
CN104160681A (zh) * | 2012-03-09 | 2014-11-19 | 阿尔卡特朗讯 | 用于使用dns数据识别与ip流相关的应用的方法和装置 |
CN104160681B (zh) * | 2012-03-09 | 2017-06-23 | 阿尔卡特朗讯 | 用于使用dns数据识别与ip流相关的应用的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US20030012198A1 (en) | 2003-01-16 |
CA2375397C (en) | 2007-07-24 |
JP3489573B2 (ja) | 2004-01-19 |
CA2375397A1 (en) | 2003-01-11 |
US7095742B2 (en) | 2006-08-22 |
JP2003023437A (ja) | 2003-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1396748A (zh) | 分组处理装置 | |
CN112468370B (zh) | 一种支持自定义规则的高速网络报文监测分析方法及系统 | |
US7170891B2 (en) | High speed data classification system | |
US8631140B2 (en) | Intelligent network interface system and method for accelerated protocol processing | |
US20030123447A1 (en) | System and method for classifying network packets with packet content | |
US10783102B2 (en) | Dynamically configurable high performance database-aware hash engine | |
CN100339832C (zh) | 帧和协议分类的方法和系统 | |
CN1846409A (zh) | 用于基于传输控制协议话务流特征进行超高速缓存查找的设备和方法 | |
JP2001500680A (ja) | 分類キーを利用したフレーム分類 | |
CN1306773C (zh) | 使用缓存来维护分组顺序的方法和系统 | |
US8135029B1 (en) | Method and apparatus for a high-speed frame tagger | |
CN1423873A (zh) | 有线速度ip信息多点传送的方法和装置 | |
CN101242362B (zh) | 查找键值生成装置及方法 | |
CN1802836A (zh) | 网络协议卸载引擎存储器管理 | |
US20060227752A1 (en) | Packet transmission method and apparatus | |
CN103067281A (zh) | 一种路由器快速转发方法及实施该方法的系统 | |
CN112637080B (zh) | 一种基于fpga的负载均衡处理系统 | |
CN1145329C (zh) | 分组交换设备和交换控制方法 | |
US8050262B2 (en) | System and method for parsing frames | |
CN1781293A (zh) | 用于修改从源传输到目的地的数据的系统和方法 | |
CN1271833C (zh) | 无需ip重组分发分组的装置和方法 | |
CN106850559A (zh) | 一种可扩展的网络协议解析系统及方法 | |
CN1499751A (zh) | 数据发射装置、发射和接收数据的方法及数据通信系统 | |
CN111107068B (zh) | 一种fpga高效规则匹配方法及终端 | |
US7551575B1 (en) | Context-switching multi channel programmable stream parser |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20030212 |