CN104079489B - 网络中继装置 - Google Patents

网络中继装置 Download PDF

Info

Publication number
CN104079489B
CN104079489B CN201410023188.1A CN201410023188A CN104079489B CN 104079489 B CN104079489 B CN 104079489B CN 201410023188 A CN201410023188 A CN 201410023188A CN 104079489 B CN104079489 B CN 104079489B
Authority
CN
China
Prior art keywords
information
entry
cryptographic hash
area
registered
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.)
Expired - Fee Related
Application number
CN201410023188.1A
Other languages
English (en)
Other versions
CN104079489A (zh
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.)
Proterial Ltd
Original Assignee
Hitachi Metals Ltd
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 Hitachi Metals Ltd filed Critical Hitachi Metals Ltd
Publication of CN104079489A publication Critical patent/CN104079489A/zh
Application granted granted Critical
Publication of CN104079489B publication Critical patent/CN104079489B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种网络中继装置,能够容易地掌握哈希值的冲突状况。地址表(FDB1)所具有的多个条目各自具有:第一区域(AR1),其用于登记第一信息,该第一信息表示多个端口、与存在于所述多个端口的目的地的MAC地址的关系;以及第二区域(AR2),其用于登记第二信息。帧处理部当学习通过端口接收到的帧的发送源MAC地址时,首先,使用所述发送源MAC地址算出哈希值。接下来,在与所述哈希值对应的条目的第一区域(AR1)登记了与发送源MAC地址不同的MAC地址的情况下,将第二信息登记到第二区域(AR2)。

Description

网络中继装置
技术领域
本发明涉及网络中继装置,例如,涉及具有通过哈希值管理的地址表的网络中继装置。
背景技术
在专利文献1以及专利文献2中示出了使用两个表处理数据包的方法。一个表通过哈希值管理IP地址等信息,另一个表使用CAM管理IP地址等信息。在登记IP地址等信息时产生了哈希值的冲突的情况下,IP地址等信息被登记到使用了CAM的表中。
另外,在专利文献3中示出了这样的方法:为了降低发生再哈希的概率,将MAC地址表分割成多个库(bank),并将MAC地址的哈希值作为地址,同时访问各库的各条目。在各条目内包含有表示访问历史的地址比特(1比特)、与表示条目有效/无效的有效比特(1比特)。当与某个哈希值对应的各条目的有效比特全部有效时,由于没有空的条目,因此变更哈希函数进行用于重新登记的再哈希。
现有技术文献
专利文献1:国际公开第2009/110445号
专利文献2:日本特开2011-229093号公报
专利文献3:日本特开2002-334114号公报
例如,通信标准方面的进行层2(L2)级别的处理的交换机装置(网络中继装置)具有地址表,该地址表表示端口、与存在于各端口的目的地的终端等的MAC(Media AccessControl)地址的关系等。该地址表也被称为FDB(Forwarding DataBase)等。当交换机装置通过端口接收到帧时,根据该地址表决定与包含在该帧内的接收方地址对应的端口,将接收到的帧中继给该决定的端口。
在这样的交换机装置中,当与交换机装置连接的终端等的数量增大时,与此对应地需要大规模的地址表,通过存储装置构成的地址表的成本增大,并且地址表的检索时间也变长。因此,如专利文献1~专利文献3所示,通过哈希值管理地址表的方式是有益的。但是,当使用了该方式时,存在这样的情况:产生针对不同的MAC地址算出同一哈希值这种所谓哈希值的冲突。
为了使交换机装置的中继动作更加高效率化,掌握该哈希值的冲突状况是有益的。具体来说,掌握如下信息是有益的:相对于地址表内的所有条目以多少比例产生了哈希值的冲突,或者,哈希值的冲突在哪个条目产生。当使用了专利文献1~专利文献3那样的技术时,难以掌握这样的信息。
发明内容
本发明是鉴于上述情况而完成的发明,其目的之一在于提供一种能够容易地掌握哈希值的冲突状况的网络中继装置。本发明的所述以及其他目的和新特征参照本说明书的记述和附图能够更加明确。
在本申请所公开的发明中,对代表性的实施方式的概要进行简单说明,其内容如下。
本实施方式涉及的网络中继装置具有:多个端口;地址表,其具有多个条目;以及帧处理部,其根据地址表在多个端口间对帧进行中继。这里,多个条目各自具有:第一区域,其用于登记第一信息,该第一信息表示多个端口、与存在于该多个端口的目的地的MAC地址的关系;以及第二区域,其用于登记第二信息。而且,帧处理部当学习通过多个端口中的某一个端口接收到的帧的发送源MAC地址时,首先,使用该发送源MAC地址算出哈希值。然后,在与该哈希值对应的条目的第一区域已登记了与发送源MAC地址不同的MAC地址的情况下,帧处理部将第二信息登记到第二区域。
在本申请所公开的发明中,简单说明通过代表性的实施方式而获得的效果,即能够在网络中继装置中容易地掌握哈希值的冲突状况。
附图说明
图1的(a)是表示在本发明的实施方式1涉及的网络中继装置中,应用了该网络中继装置的通信系统的结构例的概要图,(b)是表示(a)中的网络中继装置的概要结构例的方框图。
图2是表示图1的(b)的网络中继装置的地址表的结构例的概要图。
图3是表示图1的(b)的网络中继装置的帧处理部的主要部分的动作例的流程图。
图4是表示图1的(b)的网络中继装置的管理部的动作例的流程图。
图5是表示图1的(b)的网络中继装置的管理部的其他动作例的流程图。
图6是表示本发明的实施方式2涉及的网络中继装置的地址表的结构例的概要图。
图7是表示本发明的实施方式2涉及的网络中继装置的帧处理部的主要部分的动作例的流程图。
图8是表示本发明的实施方式3涉及的网络中继装置的地址表的结构例的概要图。
图9是表示本发明的实施方式4涉及的网络中继装置的地址表的结构例的概要图。
图10的(a)是表示作为本发明的前提而研究的网络中继装置的地址表的结构例的概要图,(b)是表示(a)的地址表的管理方式的一个示例的概念图。
符号说明
AR1 第一区域
AR2 第二区域
FDB、FDB’ 地址表
FLCTL 帧处理部
P 端口
SV 管理部
SW 交换机装置(网络中继装置)
SWU 用户用交换机装置
TBLU 表单元
TM 终端
具体实施方式
在下面的实施方式中,为了方便起见,在必要的时候分成多个部分或者实施方式来进行说明,但是除了特别明示的情况之外,它们并非彼此无关联,而是一方是另一方的一部分或者全部的变形例、详细内容、补充说明等关系。并且,在下面的实施方式中,在涉及到要素的数等(包含个数、数值、量、范围等)的情况下,除了特别明示的情况和原理上明确限定为特定数的情况等之外,并非限定于其特定数,可以是特定数以上也可以是特定数以下。
并且,在下面的实施方式中,关于其构成要素(包含要素步骤等),除了特别明示的情况和原理上明确认为必须是这样的情况等之外,当然未必是必须这样。同样地,在下面的实施方式中,当涉及到构成要素等的形状、位置关系等时,除了特别明示的情况和原理上明确认为不是这样的情况等之外,实质上包含与其形状等近似或者类似的情况等。这对于所述数值和范围也是一样的。
下面,根据附图对本发明的实施方式进行详细说明。另外,在用于说明实施方式的所有附图中,对同一部件标记同一符号,而省略其重复的说明。
(实施方式1)
《通信系统以及网络中继装置的概要》
图1的(a)是表示在本发明的实施方式1涉及的网络中继装置中,应用了该网络中继装置的通信系统的结构例的概要图,图1的(b)是表示图1的(a)中的网络中继装置的概要结构例的方框图。图1的(a)所示的通信系统具有:交换机装置(网络中继装置)SW,其具有多个端口P1、P2、P3、…、Pn;以及多个用户用交换机装置SWU1、SWU2、SWU3,其各自经通信线路与该P1、P2、P3进行连接。SWU1、SWU2、SWU3各自经通信线路与终端TMa、TMb、TMc进行连接。
没有特别限定,但是例如,交换机装置SW是框式的结构,用户用交换机装置SWU1、SWU2、SWU3是盒式的结构。SWU1、SWU2、SWU3各自在与自身进行连接的终端间对帧进行中继,SW在用户用交换机装置间对帧进行中继。例如,当从终端TMa向终端TMc转发帧时,该帧以TMa→SWU1→SW→SWU3→TMc的路径被转发。另外,SW例如能够对多个端口P1、P2、P3、…、Pn设定VLAN(Virtual Local Area Network:虚拟局域网)等。
如图1的(b)所示,交换机装置(网络中继装置)SW具有:多个端口P1、P2、P3、…、Pn、帧处理部FLCTL、表单元TBLU、以及管理部SV。TBLU由存储装置构成,详细内容在后面进行叙述,但是该TBLU具有通过哈希值管理的地址表FDB。FLCTL根据FDB在多个端口间对帧进行中继。管理部SV没有特别限定,但是该管理部SV通过FPGA(Field Programmable Gate Array:现场可编程逻辑门阵列)等硬件、或者基于CPU(Central Processing Unit:中央处理单元)等的程序处理构建而成,详细内容在后面进行叙述,但是例如,该管理部SV具有根据来自用户的请求而解析FDB内的信息的功能。
另外,在图1的(b)中示出了交换机装置SW的整体结构,但是例如,在SW是框式的情况下,SW搭载于一个框体内,分别通过底板连接的多个线卡具有图1的(b)那样的结构。但是,也可以是管理部SV并非设置于各线卡上,而设置于通过底板与该多个线卡连接的管理卡上。另外,用户用交换机装置SWU1、SWU2、SWU3也具有与图1的(b)同样的结构。但是,由于用户用交换机装置通常伴随VLAN等的设定而不需要识别很多终端,因此不需要一定通过哈希值来管理地址表。并且,这里示出了用户用交换机装置与SW的端口进行连接的结构例,但是当然,也可以是终端与端口直接连接的结构。
《地址表(比较例)的结构及其管理方式》
图10的(a)是表示作为本发明的前提而研究的网络中继装置的地址表的结构例的概要图,图10的(b)是表示图10的(a)的地址表的管理方式的一个示例的概念图。图10的(a)所示的地址表FDB’具有与哈希值对应的多个(该示例中是1024个)条目,该地址表FDB’构成为在各条目中登记有MAC地址和端口。例如,在与哈希值456对应的条目中登记有端口P1、和在该P1的目的地存在有MAC地址AA的终端这一信息。
如图10的(b)所示,所谓哈希值是通过将称为“Key”(关键码值)的信息作为输入进行基于哈希函数的运算而得到的值,作为哈希函数使用削减“Key”的信息量那样的函数。没有特别限定,但是哈希函数例如将60比特的“Key”的空间变换为10比特的空间(即10进制,0~1023)。这里,“Key”例如被设定为比特列,该比特列由以下部分构成:图10的(a)中的MAC地址(48比特);以及虽然图示省略,但是该MAC地址所属的VLAN的识别符(12比特)。在图10的(a)的示例中,例如,通过将MAC地址AA(加上该VLAN的识别符)作为“Key”(即输入)来进行基于哈希函数的运算,从而得到哈希值456。
通过使用这样的哈希函数,能够伴随信息量的削减而削减地址表所需的存储容量,但是如图10的(b)所示,作为其副作用,存在如下情况:从不同的“Key”得到同一哈希值。这样的情况被称为哈希值的冲突等。例如,在图10的(a)的示例中,作为前提,在与哈希值123对应的条目中已经登记了MAC地址BB和端口P2。在该状态下,示出了这样的情况:交换机装置通过端口P4接收到将MAC地址DD设为发送源地址的帧,基于该DD(加上该VLAN的识别符)的哈希值同样为123。该情况下,在图10的(a)的示例中,将新的信息覆盖登记到与哈希值123对应的条目中。
哈希函数通常使用难以产生哈希值的冲突的函数,但是例如,在图1所示那样的需要识别多个终端的交换机SW中存在如下的情况:哈希值的冲突以某种程度的概率产生。为了使交换机装置的中继动作更加高效率化,掌握该哈希值的冲突状况是有益的,但是在图10的(a)的地址表FDB’中难以掌握该冲突的状况。
《地址表(本实施方式)的结构》
图2是表示图1的(b)的网络中继装置的地址表的结构例的概要图。图2所示的地址表FDB1具有与哈希值对应的多个(该示例中是1024个)条目。哈希值也可以是构成FDB1的存储装置的存储器地址。各条目具有:第一区域AR1,其用于登记第一信息,该第一信息表示多个端口P1、P2、P3、…、Pn、与存在于该多个端口的目的地的MAC地址的关系;以及第二区域AR2,在自身的条目产生了哈希值的冲突时,第二信息被登记到该第二区域AR2。第二信息表示自身的条目中的哈希值的冲突历史。这样,与图10的(a)所示的地址表FDB’相比,图2的FDB1是追加了AR2而得到的结构。
例如,在图2的地址表FDB1的示例中,第二区域AR2的第二信息为1比特的“1”。即,当没有在对应的条目产生哈希值的冲突时,“0”被登记到AR2中,当在对应的条目产生了哈希值的冲突时,“1”(第二信息)被登记到AR2中。例如,与图10的(a)的情况相同,当伴随MAC地址DD的学习而在与已经登记了MAC地址BB和端口P2的哈希值=123对应的条目产生了哈希值的冲突时,“1”被登记到AR2中。
另外,在该示例中,新MAC地址DD、和与其对应的端口P4被覆盖登记到与哈希值=123对应的条目的第一区域AR1。但是,在该学习时,例如在AR1内的第一信息具有优先级的属性时,也可以不进行覆盖登记。即,当已经登记的第一信息的优先级比新第一信息高时,有时不进行AR1中的覆盖登记,而使“1”被登记到第二区域AR2。
通过使用这样的地址表FDB1,能够容易地掌握哈希值的冲突状况。具体来说,例如通过提取出在第二区域AR2登记了第二信息“1”的条目,能够掌握在哪个条目产生了哈希值的冲突。另外,通过从FDB1内的所有条目(哈希值=0~1023)中算出在AR2登记了第二信息“1”的条目的比例,能够掌握哈希值的冲突相对于所有条目以多少比例产生。
《帧处理部的主要部分的动作》
图3是表示图1的(b)的网络中继装置的帧处理部的主要部分的动作例的流程图。图3中示出了帧处理部FLCTL中的发送源MAC地址的学习时的动作例。首先,FLCTL通过多个端口P1、P2、P3、…、Pn中的某一个端口接收到帧(步骤S101)。接下来,FLCTL学习包含在该帧中的发送源MAC地址,使用发送源MAC地址算出哈希值(步骤S102)。另外,实际上,在算出该哈希值时,除了使用发送源MAC地址之外,例如还使用与该MAC地址对应的VLAN的识别符。
接着,帧处理部FLCTL针对图2的地址表FDB1,阅读与通过步骤S102得到的哈希值对应的条目(步骤S103)。其结果为,在条目是空(即,在第一区域AR1未登记第一信息)的情况下,FLCTL将通过步骤S101和步骤S102得到的第一信息新登记到该条目的AR1中(步骤S104)。即,作为第一信息,登记通过步骤S101接收到帧的端口、与包含在该帧中的发送源MAC地址(换言之,存在于该端口的目的地的MAC地址)的关系。另外,在进行该步骤S104时,FLCTL将“0”登记到该条目的第二区域AR2中。
另一方面,在步骤S103中,在条目不是空(即在第一区域AR1已登记了第一信息)的情况下,帧处理部FLCTL将步骤S102中的发送源MAC地址和在该条目已登记的MAC地址(Key)进行比较(步骤S105)。这里,当该发送源MAC地址和已登记的MAC地址一致时,由于该发送源MAC地址已经学习过,因此FLCTL什么也不做,地址表FDB1的第二区域AR2保持为“0”(步骤S106)。
另一方面,当在步骤S105中发送源MAC地址和已登记的MAC地址不一致时,帧处理部FLCTL进行预定的冲突处理(步骤S107)。具体来说,FLCTL将通过步骤S101和步骤S102得到的第一信息覆盖登记到该条目的第一区域AR1,或者根据情况,有时如图2所述那样留下已经登记的第一信息。当覆盖登记第一信息时,作为第一信息登记有通过步骤S101接收到帧的端口、与包含在该帧中的发送源MAC地址(换言之,存在于该端口的目的地的MAC地址)的关系。并且,在进行该步骤S107时,FLCTL将表示哈希值冲突历史的第2信息“1”登记到该条目的第二区域AR2。
这样,帧处理部FLCTL使用发送源MAC地址算出哈希值,并且在与其对应的条目的第一区域AR1中已登记了与该发送源MAC地址不同的MAC地址的情况下,将第2信息“1”登记到第2区域AR2。另外,图示省略,但是在FLCTL检索接收到的帧的接收方MAC地址时也同样地,从该接收方MAC地址等算出哈希值,读出与该哈希值对应的条目。然后,在该条目已登记的MAC地址与接收方MAC地址一致时,FLCTL将帧中继给在该条目内登记的端口,当不一致时,进行扩散(flooding)。
《管理部的动作》
图4是表示图1的(b)的网络中继装置的管理部的动作例的流程图。图5是表示图1的(b)的网络中继装置的管理部的其他动作例的流程图。例如,根据来自用户的请求来执行图4以及图5所示的管理部SV的处理。没有特别限定,但是具体来说,图1的(b)的交换机装置SW例如另外具有管理用的专用端口,在将管理用的终端与该专用端口进行了连接的状态下,用户使用管理用的终端对SW进行请求,SW对此进行响应。另外,作为其他的方式,SW例如具有所谓带内(in-band)的管理功能,在将管理用的终端与多个端口P1~Pn中的某一个端口的目的地进行了连接的状态下,用户使用管理用的终端对SW进行请求,SW对此进行响应。
根据这样的来自用户的请求,如图4所示,首先,管理部SV将地址表FDB1中的最初的条目(例如0)作为对象(步骤S201)。接下来,SV阅读对象条目的第二区域AR2(步骤S202),判别在AR2中是否登记了表示哈希值的冲突历史的第二信息“1”(步骤S203)。当在AR2登记了第二信息“1”时,SV将该对象条目通知给用户(步骤S204),向步骤S205转移。另一方面,当在AR2没有登记第二信息“1”时,直接向步骤S205转移。
在步骤S205中,管理部SV对是否到达了最终的条目(例如1023)进行判别。当没有到达时,SV将下一条目(例如,推进(+1)对象条目而得到的条目)作为对象并返回到步骤S202(步骤S206)。另一方面,当到达了最终的条目时,SV从所有条目(例如0~1023)中算出在第二区域AR2登记了第二信息“1”的条目的比例,并将该算出的比例通知给用户(步骤S207)。
另外,在图5中,首先,管理部SV将地址表FDB1中的最初的条目(例如0)作为对象(步骤S301)。接下来,SV通过将“0”登记到对象条目的第二区域AR2,由此在登记了表示哈希值的冲突历史的第二信息“1”时将其删除(步骤S302)。然后,管理部SV对是否到达了最终的条目(例如1023)进行判别(步骤S303),当没有到达时,SV将下一条目(例如,推进(递推)(+1)对象条目而得到的条目)作为对象并返回到步骤S302(步骤S304)。例如,通过这样的处理,在所有条目中消除哈希值的冲突历史。
通过进行图4那样的处理,用户能够容易地掌握如下信息:哈希值的冲突相对于地址表内的所有条目以多少比例产生,或者,哈希值的冲突在哪个条目产生。此时,使用图5那样的处理,通过在适当地消除哈希值的冲突历史的同时执行图4的处理,还能够掌握时序性的哈希值的冲突趋势。
当能够像这样容易地掌握哈希值的冲突状况时,用户等能够反映其状况,从而进行有益的网络管理。例如,当哈希值的冲突比例高时,用户能够进行使一部分终端向其他网络移动的维护。或者,用户能够确定与产生了哈希值的冲突的条目对应的终端,从而进行限制该终端的通信频带,或者在网络间适当更换该终端等维护。由此,能够使交换机装置(网络中继装置)的中继动作更加高效率化。
以上,通过使用本实施方式1的网络中继装置,代表性地说,能够容易地掌握哈希值的冲突状况,能够使网络中继装置的中继动作更加高效率化。另外,作为使用了图2的地址表FDB1的方式的比较例,例如考虑时序性地监视向图3的步骤S107的转移,并将其作为日志,另行留在管理用的存储器等方式。当使用了像这样的方式时,留下能够识别哈希值的冲突发生次数(发生频率)的的程度日志是比较容易的。但是,在想要知道条目内的冲突比例、和产生了冲突的条目的情况下,需要将产生了冲突的条目自身留在日志中。该情况下,能够产生这样的麻烦:地址表的登记处理产生延迟,或者在用于存储日志的管理用的存储器等需要比较大的存储区域等。因此,即使与这样的方式相比,使用图2的FDB1的方式还是能够得到有益的效果的。
(实施方式2)
《地址表的结构(变形例[1])》
图6是表示本发明的实施方式2涉及的网络中继装置的地址表的结构例的概要图。实施方式2的网络中继装置具有图1的(b)所示那样的结构,其地址表FDB2的结构与图2不同。与图2的地址表FDB1相比,图6所示的FDB2的各条目的第二区域AR2的结构不同。关于除此之外的结构,由于与图2一样因此省略详细的说明。
在图6中,在各条目的第二区域AR2中作为表示哈希值的冲突历史的第二信息,登记表示自身的条目中的哈希值的冲突次数的多个比特的信息。例如,在图6的示例中,针对与哈希值123对应的条目产生了两次哈希值的冲突,伴随于此,在AR2中以二进制的方式登记了成为“10”的第二信息。另外,这里,为了方便起见,伴随哈希值的冲突,通常,以进行MAC地址和端口的覆盖登记的情况为例。由此,与图2的情况相比,虽然地址表的存储容量增大,但是能够更详细地掌握哈希值的冲突状况。另外,根据情况,也能够成为将图2的AR2与图6的AR2组合起来而得到的结构。
《帧处理部的主要部分的动作(变形例[1])》
图7是表示本发明的实施方式2涉及的网络中继装置的帧处理部的主要部分的动作例的流程图。在图7中,帧处理部FLCTL执行与所述的图3的步骤S101~S106的处理为同一处理内容的步骤S401~S406的处理。但是,在步骤S405中,当发送源MAC地址与在条目中已登记的MAC地址(Key)不同时,FLCTL在步骤S407中执行与图3的步骤S107不同的处理。
帧处理部FLCTL在步骤S407中与图3的步骤S107的情况相同地进行预定的冲突处理,并且与步骤S107的情况不同而将哈希值的冲突次数作为第二信息登记到第二区域AR2。具体来说,FLCTL使通过步骤S403读出的AR2的值增加(+1),并将该结果登记到AR2中。
(实施方式3)
地址表的结构(变形例[2])
图8是表示本发明的实施方式3涉及的网络中继装置的地址表的结构例的概要图。实施方式3的网络中继装置具有图1的(b)所示那样的结构,该地址表FDB3的结构与图2不同。与图2的地址表FDB1相比,图8所示的FDB3的不同点在于:各条目具有多个第一区域AR1[1]~AR1[k]。并且,第二区域AR2设置为相对于该多个第一区域共用。关于除此之外的结构,由于与图2相同因此省略详细的说明。
如图2等所述那样,表示多个端口与存在于该多个端口的目的地的MAC地址的关系的第一信息被分别登记在该多个第一区域AR1[1]~AR1[k]。即,各条目中能够登记各自不同的多个(这里是k(k是2以上的整数)个)第一信息。由此,哈希值的冲突次数只要是在(k-1)次的范围内,实质上来说,可以视为没有产生哈希值的冲突。
《帧处理部的主要部分的动作(变形例[2])》
另外,帧处理部FLCTL根据图8的地址表FDB3进行与图3同样的处理。但是,在图3的步骤S103中,FLCTL阅读与哈希值对应的条目所具有的多个第一区域AR1[1]~AR1[k],并在该多个第一区域中全部登记了第一信息时,向步骤S105转移。在步骤S105中,当在该多个第一区域中全部登记了与发送源MAC地址不同的MAC地址时,FLCTL向步骤S107转移。并且,在步骤S107中,FLCTL进行预定的冲突处理,并且还将表示哈希值的冲突历史的第二信息登记到第二区域AR2。
由此,能够实质性地降低针对各条目产生哈希值的冲突的概率,并且与实施方式1的情况同样地,在产生了哈希值的冲突的情况下,能够容易地掌握其状况,因此,能够使交换机装置的中继动作更加高效率化。另外,这里,使第二区域AR2的第二信息为1比特,但是当然,也可以是如图6所示,使其为多个比特。
(实施方式4)
地址表的结构(变形例[3])
图9是表示本发明的实施方式4涉及的网络中继装置的地址表的结构例的概要图。实施方式4的网络中继装置具有图1的(b)所示那样的结构,该地址表FDB4的结构与图8不同。与图8的地址表FDB3相比,图9所示的FDB4的不同点在于:各条目与多个第一区域AR1[1]~AR1[k]相对应地分别具有第二区域AR2[1]~AR2[k];以及在对应的第一区域进行了第一信息的覆盖登记时,在第二区域登记第二信息。关于除此之外的结构,由于与图8相同因此省略详细的说明。
《帧处理部的主要部分的动作(变形例[3])》
另外,帧处理部FLCTL根据图9的地址表FDB4进行与图3同样的处理。但是,在图3的步骤S103中,FLCTL阅读与哈希值对应的条目所具有的多个第一区域AR1[1]~AR1[k],并在该多个第一区域中全部登记了第一信息时,向步骤S105转移。在步骤S105中,当在该多个第一区域中全部登记了与发送源MAC地址不同的MAC地址时,FLCTL向步骤S107转移。并且,在步骤S107中,FLCTL进行预定的冲突处理,其结果为,当将第一信息覆盖登记到该条目内的预定的第一区域时,将表示覆盖登记的实效历史的第二信息登记到与该第一区域对应的第二区域。
由此,除了实施方式3所述的各种效果之外,还能够对在各条目具有的多个第一区域中在哪个第一区域产生覆盖登记、在哪个第一区域没有产生覆盖登记进行判别。作为一个示例,存在这样的情况:当将第一信息登记到多个第一区域时,存在针对具有最早接收到的第一信息的第一区域进行覆盖登记那样的构造;以及在多个第一区域中在实际上进行了覆盖登记的第一区域产生偏差。在这样的情况下,例如,能够根据该偏差状况判别接收的频率高的第一信息。
以上,根据实施方式对本发明者完成的发明具体进行了说明,但是本发明不限定于所述实施方式,在不脱离其主旨的范围内可以进行各种变更。例如,所述的实施方式是为了使本发明容易理解而详细进行的说明,本发明并不一定限定于具有上文所说明的全部结构。另外,可以将某实施方式的结构的一部分置换成其他实施方式的结构,另外,也可以在某实施方式的结构中增加其他实施方式的结构。此外,对于各实施方式的结构的一部分,可以进行其他结构的追加、删除和置换。
例如,在实施方式1~3中,构成为当产生了哈希值的冲突时,将第二信息登记到第二区域,但是也可以如实施方式4那样,构成为在产生哈希值的冲突,且在第一区域产生了第一信息的覆盖登记时,将第二信息登记到第二区域。

Claims (4)

1.一种网络中继装置,其特征在于,
该网络中继装置具有:
多个端口;
地址表,其具有多个条目;以及
帧处理部,其根据所述地址表在所述多个端口间对帧进行中继,
所述多个条目各自具有:
第一区域,其用于登记第一信息,该第一信息表示所述多个端口与存在于所述多个端口的目的地的MAC地址的关系;以及
第二区域,其用于登记第二信息,
所述帧处理部当学习通过所述多个端口中的某一个端口接收到的帧的发送源MAC地址时,使用所述发送源MAC地址算出哈希值,并且在与所述哈希值对应的条目的所述第一区域已登记了与所述发送源MAC地址不同的MAC地址的情况下,将所述第二信息登记到所述第二区域;
所述网络中继装置还具有:管理部,其根据来自用户的请求,读出所述多个条目的所述第二区域,提取出在所述第二区域登记了所述第二信息的条目,并将该提取出的条目通知给所述用户;
所述管理部还根据来自用户的请求,从所述多个条目中算出在所述第二区域登记了所述第二信息的条目的比例,并将该算出的比例通知给所述用户;
所述第二信息是表示自身的条目中的哈希值的冲突历史的信息。
2.根据权利要求1所述的网络中继装置,其特征在于,
所述第二信息是1比特的信息。
3.根据权利要求2所述的网络中继装置,其特征在于,
所述多个条目各自进一步具有多个所述第一区域,
在与所述哈希值对应的条目所具有的多个所述第一区域全部登记了与所述发送源MAC地址不同的MAC地址的情况下,所述帧处理部将所述第二信息登记到所述第二区域。
4.根据权利要求1所述的网络中继装置,其特征在于,
所述第二信息是表示自身的条目中的所述哈希值的冲突次数的多个比特的信息。
CN201410023188.1A 2013-03-28 2014-01-17 网络中继装置 Expired - Fee Related CN104079489B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013070194A JP5954236B2 (ja) 2013-03-28 2013-03-28 ネットワーク中継装置
JP2013-070194 2013-03-28

Publications (2)

Publication Number Publication Date
CN104079489A CN104079489A (zh) 2014-10-01
CN104079489B true CN104079489B (zh) 2018-08-28

Family

ID=51600541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410023188.1A Expired - Fee Related CN104079489B (zh) 2013-03-28 2014-01-17 网络中继装置

Country Status (3)

Country Link
US (1) US9413661B2 (zh)
JP (1) JP5954236B2 (zh)
CN (1) CN104079489B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015085190A (ja) 2013-09-25 2015-05-07 富士フイルム株式会社 画像処理装置、画像処理システム、画像処理プログラム、及び画像処理方法
JP6375206B2 (ja) * 2014-10-31 2018-08-15 APRESIA Systems株式会社 中継システムおよびスイッチ装置
JP6293353B2 (ja) * 2015-02-19 2018-03-14 三菱電機株式会社 中継装置
JP6520259B2 (ja) * 2015-03-18 2019-05-29 富士通株式会社 通信装置及び通信制御方法
JP6484519B2 (ja) * 2015-07-15 2019-03-13 日立オートモティブシステムズ株式会社 ゲートウェイ装置およびその制御方法
CN109842574B (zh) * 2017-11-28 2020-07-17 中国科学院声学研究所 一种基于可编程网络技术的多宿主网络路由转发方法
JP7330055B2 (ja) * 2019-10-15 2023-08-21 ルネサスエレクトロニクス株式会社 ネットワーク処理装置、および、ネットワーク通信フレームの処理方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232444A (zh) * 2008-01-22 2008-07-30 杭州华三通信技术有限公司 哈希冲突解决方法、装置及具有该装置的交换设备
CN101431472A (zh) * 2008-12-15 2009-05-13 中兴通讯股份有限公司 媒体访问控制条目的处理方法和装置
CN102014112A (zh) * 2010-01-29 2011-04-13 柳州市达迪通信设备有限公司 一种基于mac/ip地址分类统计的硬件实现方法
CN102187642A (zh) * 2011-04-14 2011-09-14 华为技术有限公司 在哈希表中添加、查找或删除键值的方法及装置
JP2011229093A (ja) * 2010-04-23 2011-11-10 Hitachi Ltd ネットワーク装置
WO2012073137A1 (en) * 2010-11-30 2012-06-07 Telefonaktiebolaget L M Ericsson (Publ) Hash collision resolution with key compression in a mac forwarding data structure
CN102710813A (zh) * 2012-06-21 2012-10-03 杭州华三通信技术有限公司 一种mac地址表项存取方法和设备
CN103001878A (zh) * 2012-11-26 2013-03-27 中兴通讯股份有限公司 Mac地址哈希冲突的确定方法及装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04237232A (ja) * 1991-01-21 1992-08-25 Toshiba Corp Lan間接続装置
JPH06224918A (ja) * 1992-08-31 1994-08-12 Toshiba Corp Lan間接続装置
KR960014983B1 (ko) 1992-08-31 1996-10-23 가부시끼가이샤 도시바 LAN(Local Area Network) 접속장치
US6665733B1 (en) * 1996-12-30 2003-12-16 Hewlett-Packard Development Company, L.P. Network communication device including bonded ports for increased bandwidth
JP2002334114A (ja) 2001-05-10 2002-11-22 Allied Tereshisu Kk テーブル管理方法及び装置
US7352753B2 (en) * 2002-12-31 2008-04-01 Nokia Corporation Method, system and mirror driver for LAN mirroring
US7873041B2 (en) * 2006-12-01 2011-01-18 Electronics And Telecommunications Research Institute Method and apparatus for searching forwarding table
WO2009110445A1 (ja) 2008-03-03 2009-09-11 日本電気株式会社 アドレス検索方法およびパケット処理装置
JP4688946B2 (ja) * 2009-06-15 2011-05-25 富士通株式会社 スイッチ及びアドレス学習方法
US8750370B2 (en) * 2009-09-04 2014-06-10 Brocade Communications Systems, Inc. Congestion-adaptive compression
US8780926B2 (en) * 2009-12-01 2014-07-15 Polytechnic Institute Of New York University Updating prefix-compressed tries for IP route lookup
JP5389738B2 (ja) * 2010-06-04 2014-01-15 日本電信電話株式会社 識別子管理システム、情報管理サーバ、相互接続先管理サーバ、識別子管理方法、情報管理プログラム、相互接続先管理プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232444A (zh) * 2008-01-22 2008-07-30 杭州华三通信技术有限公司 哈希冲突解决方法、装置及具有该装置的交换设备
CN101431472A (zh) * 2008-12-15 2009-05-13 中兴通讯股份有限公司 媒体访问控制条目的处理方法和装置
CN102014112A (zh) * 2010-01-29 2011-04-13 柳州市达迪通信设备有限公司 一种基于mac/ip地址分类统计的硬件实现方法
JP2011229093A (ja) * 2010-04-23 2011-11-10 Hitachi Ltd ネットワーク装置
WO2012073137A1 (en) * 2010-11-30 2012-06-07 Telefonaktiebolaget L M Ericsson (Publ) Hash collision resolution with key compression in a mac forwarding data structure
CN102187642A (zh) * 2011-04-14 2011-09-14 华为技术有限公司 在哈希表中添加、查找或删除键值的方法及装置
CN102710813A (zh) * 2012-06-21 2012-10-03 杭州华三通信技术有限公司 一种mac地址表项存取方法和设备
CN103001878A (zh) * 2012-11-26 2013-03-27 中兴通讯股份有限公司 Mac地址哈希冲突的确定方法及装置

Also Published As

Publication number Publication date
JP2014195140A (ja) 2014-10-09
US9413661B2 (en) 2016-08-09
US20140294008A1 (en) 2014-10-02
CN104079489A (zh) 2014-10-01
JP5954236B2 (ja) 2016-07-20

Similar Documents

Publication Publication Date Title
CN104079489B (zh) 网络中继装置
CN104885422B (zh) 在并行处理网络设备中维持分组顺序的方法和设备
Ascigil et al. A keyword-based ICN-IoT platform
CN103312615B (zh) 使用可变数量前缀的最长前缀匹配搜索
JP3735471B2 (ja) パケット中継装置およびlsi
CN1875585B (zh) 利用mac限制来控制动态未知l2泛滥的方法和系统
CN100525240C (zh) 数据分组通信设备
Birand et al. Analyzing the performance of greedy maximal scheduling via local pooling and graph theory
CN104243323B (zh) 交换网多播路由方法及系统
CN106063199B (zh) 通信系统、通信方法、中继装置以及存储有计算机可读程序的存储介质
CN102106125A (zh) 一种多路径网络
Al-Turjman et al. Network experience scheduling and routing approach for big data transmission in the Internet of Things
US9485179B2 (en) Apparatus and method for scalable and flexible table search in a network switch
CN103929377A (zh) 一种有线网络与无线网络联合调度方法、相关设备及系统
CN106503008A (zh) 文件存储方法和装置及文件查询方法和装置
CN107181682B (zh) 计算网络端到端的接入能力的方法和装置
CN103329493A (zh) 芯片上分组穿过
JP5624579B2 (ja) オンチップルータ
WO2016101600A1 (zh) 线卡的确定、确定处理方法及装置、线卡的确定系统
EP2670099A1 (en) Communication apparatus and communication method
JP5847887B2 (ja) オンチップルータ及びそれを用いたマルチコアシステム
CN102868775A (zh) 地址解析协议表容量的扩展方法、报文转发方法和装置
Wei et al. Congestion‐aware message forwarding in delay tolerant networks: a community perspective
JP2010263507A (ja) パケット中継装置
CN106209634A (zh) 地址映射关系的学习方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180828

Termination date: 20200117