CN101110846A - 一种mac地址表项的管理方法和设备 - Google Patents
一种mac地址表项的管理方法和设备 Download PDFInfo
- Publication number
- CN101110846A CN101110846A CNA200710145901XA CN200710145901A CN101110846A CN 101110846 A CN101110846 A CN 101110846A CN A200710145901X A CNA200710145901X A CN A200710145901XA CN 200710145901 A CN200710145901 A CN 200710145901A CN 101110846 A CN101110846 A CN 101110846A
- Authority
- CN
- China
- Prior art keywords
- mac address
- list item
- address list
- exchange chip
- subelement
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 37
- 238000012423 maintenance Methods 0.000 claims abstract description 27
- 230000003139 buffering effect Effects 0.000 claims description 66
- 238000003860 storage Methods 0.000 claims description 39
- 238000000034 method Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000010076 replication Effects 0.000 claims description 4
- 230000003068 static effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 230000006855 networking Effects 0.000 description 5
- 230000032683 aging Effects 0.000 description 4
- 238000013508 migration Methods 0.000 description 4
- 230000005012 migration Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种MAC地址表项的管理方法,包括以下步骤:获取交换芯片存储的MAC地址表项;获取MAC地址表项与上一次获取的MAC地址表项的差异表项;根据该差异表项更新本地维护的MAC地址表项。本发明还公开了一种MAC地址表项的管理设备。通过使用本发明,可以在路由设备上自动生成并维护基于字典序的MAC地址表项,克服了不同厂商的交换芯片上MAC地址表项的差异,为路由设备的维护和扩展提供了较好的开放框架。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种MAC(Media Access Control,媒体接入控制)地址表项的管理方法和设备。
背景技术
随着数据通信技术的发展,在路由设备上实现路由交换一体化的组网需求越来越明显,此类组网方式可以简化网络层次,减少组网复杂度和维护成本。
目前经常采用的技术方案是在路由设备上固定交换口或者集成交换模块。随着设备组网越来越复杂,维护人员提出需要按照字典序查询显示路由设备某个交换口或者交换模块的以太网地址,该以太网地址的数量一般在2K以上,以便及时了解设备的组网情况,排查和解决相关问题。
交换芯片的MAC地址表项中,除了静态地址和认证地址等是预先添加的之外,对于一般动态MAC地址的学习添加和老化删除是由交换芯片自动完成的,而一般情况下不同厂家生产的交换芯片所定义的MAC地址表格式不尽相同,完全不同于用户所期望的字典序格式。这就要求基于集中式管理的路由交换一体化设备在不降低设备业务性能的前提下,由设备自身生成和维护一张与所有交换芯片同步的地址表,考虑到设备上的交换芯片可能属于不同厂家的不同型号,因此需要一种高效和可靠的方法来解决MAC地址表项的获取与维护问题。
现有技术提供一种维护管理设备MAC地址表项的方案,其原理如图1所示,设备的处理器通过与交换芯片接口总线如PCI(Peripheral ComponentInterconnect,周边元件扩展接口)或SMI(Serial Management Interface,串行管理接口)等发起对MAC地址表的读取操作。如果是PCI高速并行总线,交换芯片内部的DMA(Direct Memory Access,直接内存访问)单元将内部的MAC地址表项传送到处理器的内存缓冲区中,处理器软件通过CLI(CommandLine Interface,命令行界面)或者WEB网管接口直接显示给用户。如果是SMI低速串行总线,处理器通过芯片内部寄存器按照查询应答的方式一条一条的逐个读取整个MAC地址表项。
现有技术虽然能实现MAC地址表项的读取,但也存在如下问题:由于芯片硬件设计的原因,不同厂家提供的交换芯片对于地址表读取处理方式差别很大,并没有统一的规则。无法按照网管一般所期望的VLAN+MAC格式的字典序来显示MAC地址表项。另外,路由设备等设备的槽位众多,槽位上可能有多种芯片厂商的交换芯片存在,这样造成读取表项效率有高有低不一致,例如对于通过SMI低速串行总线获取MAC地址表项的方法,效率很低而且极大占用处理器资源,因此频繁读取大量的地址表项将会极大影响设备的性能。
发明内容
本发明提供一种MAC地址表项的管理方法和设备,用于生成并维护基于预设格式的MAC地址表项,例如常用的(VLAN+MAC)格式,便于用户的管理和维护。
为达到此目的,本发明提供一种MAC地址表项的管理方法,包括以下步骤:
获取交换芯片存储的MAC地址表项;
获取所述MAC地址表项与上一次获取的MAC地址表项的差异表项;
根据所述差异表项更新本地维护的MAC地址表项。
其中,所述获取交换芯片存储的MAC地址表项前还包括步骤:
创建数据结构用于存储在本地维护的MAC地址表项。
其中,所述获取交换芯片存储的MAC地址表项的步骤具体为:
交换芯片内的静态MAC表项、认证MAC表项或黑洞MAC表项中的任意一种发生变化时,立即从所述交换芯片获取变化后的所述MAC地址表项。
其中,所述获取交换芯片存储的MAC地址表项的步骤具体为:
周期获取交换芯片内的动态配置的MAC地址表项,不同芯片的获取周期相同或不同。
其中,所述周期获取具体为:
每一次获取MAC地址表项完成后,采用定时器进行计时,在间隔一定的时间后,进行下一次MAC地址表项的获取。
其中,所述获取MAC地址表项的方法具体为:
采用中断处理方式从交换芯片获取MAC地址表项。
其中,所述获取MAC地址表项与上一次获取的MAC地址表项的差异表项的步骤具体为:
将所述获取的MAC地址表项存储在第一缓冲区中,上一次获取的MAC地址表项存储在第二缓冲区中;
将所述第一缓冲区与所述第二缓冲区的对应位置进行比较,获取最新获取的MAC地址表项与上一次获取的MAC地址表项的差异表项。
其中,所述根据差异表项更新本地维护的MAC地址表项的步骤具体包括:
对于所述差异表项中需要删除的MAC地址表项,从本地的MAC地址表项中进行删除;
对于所述差异表项中需要新添加的MAC地址表项,判断本地的MAC地址表项中是否已经有相同的MAC地址表项存在,若没有则将所述MAC地址表项添加到本地维护的MAC地址表项中;否则不在本地添加所述MAC地址表项。
其中,所述根据差异表项更新本地维护的MAC地址表项后,还包括步骤:
将所述第一缓冲区中的内容复制到所述第二缓冲区中的对应位置。
其中,所述本地维护的MAC地址表项中,MAC地址表项以预先设置的格式存储。
其中,所述本地维护的MAC地址表项中,不同的MAC地址表项以平衡二叉树的数据结构进行存储,并按照字典序排列。
本发明还提供一种MAC地址表项的管理设备,包括:
至少一个交换芯片,用于获取其内部存储的MAC地址表项,并将获取到的MAC地址提供给缓冲区单元;
缓冲区单元,用于为每个所述交换芯片建立对应的缓冲区,对从所述各交换芯片获取到缓冲区中的MAC地址表项与上一次获取到缓冲区中的MAC地址表项进行比较,将比较得到的差异表项发送到管理单元;
管理单元,用于根据所述缓冲区单元发送的差异表项,更新本地维护的MAC地址表项。
其中所述交换芯片进一步包括:
地址获取子单元,用于按照预先设置的格式获取本交换芯片中的MAC地址表项;
定时器子单元,用于设置所述地址获取子单元在完成一次MAC地址表项的获取后、到开始下一次MAC地址表项的获取的时间间隔。
其中,所述缓冲区单元进一步包括:
交换芯片地址获取子单元,用于分别获取所述交换芯片存储的MAC地址表项并发送到第一缓冲区子单元;
第一缓冲区子单元,用于存储所述交换芯片地址获取子单元最新获取的MAC地址表项,并将所述MAC地址表项提供给比较子单元;
第二缓冲区子单元,用于存储所述交换芯片地址获取子单元上一次获取的MAC地址表项,并将所述MAC地址表项提供给比较子单元;
比较子单元,用于对获取到的所述第一缓冲区子单元与第二缓冲区子单元的内容进行比较,获取差异表项并向所述管理单元发送。
其中,所述管理单元进一步包括:
排序子单元,用于根据所述缓冲区单元获取的差异表项,对本地存储的MAC地址表项进行排序;
存储子单元,用于存储所述排序子单元排序后的MAC地址表项。
其中,还包括判断单元,用于判断所述缓冲区单元获取到的差异表项中需要添加的MAC地址表项是否已经存在于所述管理单元中的MAC地址表项中,如果不存在相同内容的表项,将所述MAC地址表项发送到所述管理单元进行正常的排序处理;否则不添加。
与现有技术相比,本发明具有以下优点:
通过使用本发明,可以在路由设备上自动生成并维护基于字典序的MAC地址表项,克服了不同厂商的交换芯片上MAC地址表项的差异,为路由设备的维护和扩展提供了较好的开放框架。
附图说明
图1是现有技术中维护管理设备MAC地址表项的方案示意图;
图2是本发明中MAC地址表项的管理方法流程图;
图3是本发明中对动态配置的MAC地址表项进行管理的方法流程图;
图4是本发明中交换芯片及缓冲区的关系示意图;
图5是本发明中新旧缓冲区的存储格式示意图;
图6是本发明中MAC地址更新时的AVL树结构变化示意图;
图7是本发明中MAC地址在槽位间迁移的处理方法流程图;
图8是本发明中MAC地址表项的管理设备示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述:
本发明中,一种MAC地址表项的管理方法的流程如图2所示,包括如下步骤:
步骤s201、创建数据结构用于存储所管理的MAC地址表项。
该数据结构的种类可以根据需要进行选择,如采用基于AVL(Adelson-Velsky Landis)平衡二叉树的数据结构,该平衡二叉树数据结构用于存储路由设备内所有交换芯片上存在的MAC地址表项,不同的MAC地址表项在此数据结构中按照字典序进行排列。
步骤s202、获取交换芯片内部存储的MAC地址表项。
步骤s203、根据获取到的交换芯片的MAC地址表项,更新本地的MAC地址表项。
通过该步骤,路由设备内存储的MAC地址表不是单纯的从交换芯片读取出来的缓冲区内容,而是根据路由设备上所有交换芯片统一组织的按照字典序排列的地址表,是设备所有的交换芯片MAC地址表项的全集,该地址表的格式可以根据需要进行预先设定。
步骤s204、在需要时,将存储的MAC地址表项进行显示。
上述流程中,对于交换芯片内的静态表项、认证表项和黑洞表项(指若一个MAC地址位于黑洞表项,则所有目的地址为该MAC地址的数据包都会被直接丢弃)均采用立即同步的方式:在添加上述地址到交换芯片后,立刻将上述地址通过交换芯片更新到本地存储所有MAC地址表项的数据结构中。
对于类型为动态配置的MAC地址表项,本发明的实施例二中,一种MAC地址表的管理方法如图3所示,其中包括如下步骤:
步骤s301、对于每个交换芯片,周期性的循环获取其内部存储的MAC地址表项。
该读取操作可以采取一般的等待方式进行,即在读取MAC地址表的过程中,交换芯片上的处理器处于等待状态,直至所需要的MAC地址收集完成才继续其他任务的处理工作。但为了提高读取时的效率,不影响交换芯片处理器的处理性能,避免交换芯片的处理器在读取某些低速总线的芯片表项的接口等待时间太长,在获取交换芯片的MAC地址表时可以采用中断处理方式而非等待方式。中断处理方式是指:处理器在收集MAC地址的过程中,仍可以执行其他进程,在收集MAC地址完成后进行上报。该中断处理方式虽然查询表项速度较慢,但是不会影响交换芯片的处理性能,下发一条查询命令后直到读取所需表项的过程中,处理器可以同时执行其他任务,因此大大降低了获取MAC地址表项时的处理器的占用率。
同时,由于每个交换芯片上的MAC地址表项大小不同、读取方式也有所不同,因此对于不同的交换芯片,获取MAC地址表项所需的时间的差别也可能很大,对此,可以采用自循环定时器任务,在一次MAC地址表项的获取完成后,经过一定间隔时间(例如3秒)自动进行下一次获取,能够迅速和准确地反映每个交换芯片地址表的变化。对于不同的交换芯片,该间隔时间的设置可以根据需要相同或不同。
步骤s302、将获取到的交换芯片的MAC地址表项存储到新缓冲区。
为了比较每一交换芯片上MAC地址表项的变化,为每一交换芯片设置一对应的缓冲区,每一缓冲区又分为第一缓冲区和第二缓冲区,为了描述方便,分别称为新缓冲区和旧缓冲区,其示意图如图4所示。对于每一交换芯片,获取其上存储的MAC地址表项的周期可以设置为相同或不同,每一次获取到新的MAC地址表项后,将新获取到的MAC地址存储到交换芯片对应的新缓冲区中,而上一次获取的MAC地址保留在旧缓冲区中,因此可以方便地对新旧缓冲区中的MAC地址表项进行比较以获得差异。
另外,在第一次获取到交换芯片的MAC地址表项时,旧缓冲区中的内容为空,这并不会对之后的新旧缓冲区比较造成影响。
步骤s303、比较新缓冲区和旧缓冲区中的内容,获取比较后的差异表项。
其中,该比较后得到的差异表项即交换芯片新增和老化删除的MAC地址内容。
步骤s304、根据比较后的差异表项,对本地的MAC地址表项进行排列存储。
为提高效率和节省资源,只使用差异表项进行排列存储。如前面所描述的,该排列具体可以为采用数据结构为AVL平衡二叉树的字典序排列,也可采取其他存储方式。
步骤s305、将新缓冲区中的内容复制到旧缓冲区。
将新缓冲区中的内容复制到旧缓冲区,覆盖旧缓冲区中存储的内容,以便用于下次获取到MAC地址表项时,继续比较操作。
步骤s306、将更新后的本地MAC地址表项进行显示。
在上述步骤s301~s302中,设备从每一交换芯片读取MAC地址表项并存储到新缓冲区,其中MAC地址表项在新缓冲区内存中的排列是一般是基于哈希存储(又称散列存储)方式进行排列的,对于每一MAC地址,其在新缓冲区中的位置是由其值k经过哈希函数H(k)计算后所决定的,即存放方式不是按照字典式进行排列的。
在上述步骤s303中,新旧缓冲区的存储格式示意图如图5所示,不同的MAC地址经过哈希函数H(k)运算后存储在缓冲区中的对应位置,其中有些缓冲区的位置没有MAC地址与之对应并存储,因此为空。图5中,有MAC地址存放的缓冲区单元为有效(valid)位并标记存放的MAC地址,而没有存放MAC地址的缓冲区单元标记为无效(Invalid)位,这里以数字表示不同MAC地址,按照从小到大表示其在字典序中的前后顺序。
本实施例中MAC地址字典序排列采取的数据结构是AVL平衡二叉树,节点的平衡值在[-1,1]之间,也就是每一个节点的左子树深度减去右子树的深度结果是在[-1,1]之间。若待插入的值位于根结点值前,则作为左子树插入,否则作为右子树插入。假设图5中旧缓冲区的内容为第一次获取的MAC地址,其包括地址{1、3、6、2、4},则根据该MAC地址生成的AVL平衡二叉树结构如图6中的(6A)所示,其根结点为4,由左子树到右子树的地址依次为1、2、3、4、6,即为字典序。
在获取到图5所示的新的MAC地址之后,从图5中可知,地址3和2保持不变,对其他发生变化的MAC地址,依次进行更新操作。如图6所示,该MAC地址的更新步骤如下:
步骤s601、从AVL树中删除地址1,添加地址7到AVL树,AVL树的状态由(6A)变化为(6B)。
步骤s602、从AVL树删除地址6,AVL树的状态由(6B)变化为(6C)。
步骤s603、添加地址10到AVL树,AVL树的状态由(6C)变化为(6D)。
步骤s604、从AVL树删除地址4,添加地址5到AVL树,AVL树的状态由(6D)变化为(6E)。
更新的最后状态如(6E)所示,其根结点为5,由左子树到右子树的地址依次为2、3、5、7、10,仍为字典序。采用AVL树的优点在于,经验证明对于AVL树的结构处理器操作效率很高,能够满足快速排序的性能要求。通过上述方法,对于从每个芯片上获取的MAC地址进行了本地字典序存储,而从每个交换芯片获取的MAC地址格式可以根据需要预先进行设定,如采用一般常用的(VLAN+MAC)的形式,从而实现了对每一地址以预设格式存储并以字典序进行了排序。
除了采用上述利用比较后的差异表项对MAC地址表项进行排列存储的方法外,也可以采取每次直接利用新获取的表项进行排序的方法。仍以图5为例,前一次获取的MAC地址为{1、3、6、2、4},则根据AVL平衡二叉树的生成规则,得到的AVL平衡二叉树为图6中的(6A)所示的结构。最新一次获取的MAC地址如图5所示,为{7、3、2、10、5},则根据AVL平衡二叉树的生成规则,得到的AVL平衡二叉树仍为图6中的(6E)所示的结构。因此采取每次直接利用新获取的表项进行排序的方法,可以得到利用比较后的差异表项对MAC地址表项进行排序相同的结果。考虑到MAC地址的数量一般很大,且大部分获取到的MAC不会发生变化,因此采用每次直接利用新获取的表项进行排序的方法会大量消耗系统资源,为了提高效率和节省资源,在实施时还是使用上述利用比较后的差异表项对MAC地址表项进行排列存储的方法。
在实际组网中,还可能遇到以太网终端连接设备所在的槽位发生变化的情况,这会导致MAC地址表项的迁移。本发明对于该MAC地址表项的迁移的实施方式如下:在某个时刻T1,属于VLAN1的地址MAC A在交换芯片1对应的某个定时器周期被读入到缓冲区B1,正常添加到本地的字典序数据中。在某个时刻T2,T2在T1后△T时刻,属于VLAN1的地址MAC A在交换芯片2对应的某个定时器周期又被读入到缓冲区B2,此时,在排序时发现本地有相同的MAC地址表项存在,即该MAC地址表项同时被多个槽位上的不同交换芯片学习到,因此可以判定属于VLAN1的地址MAC A发生了槽位迁移。
对于此情况,本发明还提供一种MAC地址在槽位间迁移的处理方法,如图7所示,具体步骤如下:
步骤s701、将获取到的交换芯片的MAC地址表项存储到新缓冲区。
步骤s702、根据新旧缓冲区的比较结果向存储MAC地址表项的存储实体添加MAC地址表项时,首先查找本地已存储的所有MAC地址表项,判断对于需要新添加的表项,是否本地已经有相同的MAC地址表项存在,如不存在则进行步骤s703,否则进行步骤s704。
步骤s703、按照预定的规则将该MAC地址表项直接添加到本地存储的MAC地址表项数据结构中并结束。
步骤s704、不将该MAC地址添加到本地存储的MAC地址表项数据结构中,将缓冲区中与该MAC相对应的位置标记为Invalid,等待下次获取到新的MAC地址表项后再进行判断处理。
使用该流程的原因在于,一旦原属于VLAN1的地址MAC A在交换芯片1中经过一段时间自动老化掉或被用户删除后,存储MAC地址表项的实体中必然也会同步更新。这样在交换芯片2的某个任务周期中该地址又会被正确地添加到存储MAC地址表项的实体中。该时间长短主要取决于芯片本身配置参数,老化时间等。
通过以上实施例的描述,可以在路由设备上高效维护MAC地址表,解决了基于字典序的MAC地址表自动排序的问题,屏蔽了各种厂商的交换芯片地址表差异,为路由设备的维护和扩展提供了较好的开放框架。
本发明还提供了一种MAC地址表项的管理设备,其结构如图7所示,包括:
至少一个交换芯片10,与缓冲区单元20连接,用于获取其内部存储的MAC地址表项,并将获取到的MAC地址提供给缓冲区单元20。
缓冲区单元20,与管理单元30连接,用于为每个交换芯片建立对应的缓冲区,对从各交换芯片10获取到各自缓冲区中的MAC地址表项分别进行比较处理,将每次比较得到的差异表项发送到管理单元30。
管理单元30,用于根据缓冲区单元20上传的差异表项进行排列,生成排序后的MAC地址表项并进行本地存储。
具体的,交换芯片10,进一步包括:地址获取子单元11和定时器子单元12。其中,地址获取子单元11,用于获取交换芯片中的MAC地址表项,可以采用DMA或者中断查询方式,其中获取的MAC地址表项的格式可以预先进行设置,如采用常用的(VLAN+MAC)形式。定时器子单元12,用于设置地址获取子单元11在完成一次MAC地址表项的获取后、到开始下一次MAC地址表项的获取的时间间隔。对于不同的交换芯片,该时间间隔的设定可能互不相同。
具体的,缓冲区单元20,进一步包括:交换芯片地址获取子单元21、第一缓冲区子单元22、第二缓冲区子单元23和比较子单元24。交换芯片地址获取子单元21,用于分别获取各个交换芯片10上地址获取子单元11获取到的MAC地址表项,并将获取到的MAC地址表项存储到各交换芯片对应的第一缓冲区子单元22。第一缓冲区子单元22,用于存储交换芯片地址获取子单元21最新获取的MAC地址表项,并将该MAC地址表项提供给比较子单元23。第二缓冲区子单元23,用于存储交换芯片地址获取子单元21从交换芯片10上一次获取的MAC地址表项,并将该MAC地址表项提供给比较子单元24。比较子单元24,用于对获取到的第一缓冲区子单元22与第二缓冲区子单元23的内容进行比较,获取差异表项并向管理单元30发送。
具体的,管理单元30,进一步包括:排序子单元31和存储子单元32。其中,排序子单元31,用于对缓冲区单元20获取的差异表项进行排列,如采用基于AVL平衡二叉树的数据结构进行字典序排序。存储子单元32,用于在本地存储排序子单元31排列后的MAC地址表项。
另外,该MAC地址的管理设备还包括判断单元40,用于查询管理单元30中的字典序MAC地址表项,判断缓冲区单元20获取到的差异表项中需要添加的MAC地址表项是否已经存在于管理单元30中的MAC地址表项中,如果不存在相同内容的表项,将该MAC地址表项发送到管理单元30进行正常的排序处理;如果已经存在一条相同内容的表项,则先不添加,并将缓冲区单元20中的相应位置标记为Invalid,等待下次从交换芯片获取到新的MAC地址表项后再进行处理。
显示单元50,用于在需要时将管理单元30中的字典序MAC地址表项的内容进行显示。
通过使用上述MAC地址的管理设备,可以在路由设备上高效维护二层MAC地址表,解决了基于字典序的MAC地址表自动排序的问题,屏蔽了各种厂商的交换芯片地址表差异,为路由设备的维护和扩展提供了较好的开放框架。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该获取机软件产品存储在一个存储介质中,包括若干指令用以使得一台路由设备执行本发明各个实施例所述的方法。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (16)
1.一种MAC地址表项的管理方法,其特征在于,包括以下步骤:
获取交换芯片存储的MAC地址表项;
获取所述MAC地址表项与上一次获取的MAC地址表项的差异表项;
根据所述差异表项更新本地维护的MAC地址表项。
2.如权利要求1所述MAC地址表项的管理方法,其特征在于,所述获取交换芯片存储的MAC地址表项前还包括步骤:
创建数据结构用于存储在本地维护的MAC地址表项。
3.如权利要求1所述MAC地址表项的管理方法,其特征在于,所述获取交换芯片存储的MAC地址表项的步骤具体为:
交换芯片内的静态MAC表项、认证MAC表项或黑洞MAC表项中的任意一种发生变化时,立即从所述交换芯片获取变化后的所述MAC地址表项。
4.如权利要求1所述MAC地址表项的管理方法,其特征在于,所述获取交换芯片存储的MAC地址表项的步骤具体为:
周期获取交换芯片内的动态配置的MAC地址表项,不同芯片的获取周期相同或不同。
5.如权利要求4所述MAC地址表项的管理方法,其特征在于,所述周期获取具体为:
每一次获取MAC地址表项完成后,采用定时器进行计时,在间隔一定的时间后,进行下一次MAC地址表项的获取。
6.如权利要求4或5所述MAC地址表项的管理方法,其特征在于,所述获取MAC地址表项的方法具体为:
采用中断处理方式从交换芯片获取MAC地址表项。
7.如权利要求1所述MAC地址表项的管理方法,其特征在于,所述获取MAC地址表项与上一次获取的MAC地址表项的差异表项的步骤具体为:
将所述获取的MAC地址表项存储在第一缓冲区中,上一次获取的MAC地址表项存储在第二缓冲区中;
将所述第一缓冲区与所述第二缓冲区的对应位置进行比较,获取最新获取的MAC地址表项与上一次获取的MAC地址表项的差异表项。
8.如权利要求7所述MAC地址表项的管理方法,其特征在于,所述根据差异表项更新本地维护的MAC地址表项的步骤具体包括:
对于所述差异表项中需要删除的MAC地址表项,从本地的MAC地址表项中进行删除;
对于所述差异表项中需要新添加的MAC地址表项,判断本地的MAC地址表项中是否已经有相同的MAC地址表项存在,若没有则将所述MAC地址表项添加到本地维护的MAC地址表项中;否则不在本地添加所述MAC地址表项。
9.如权利要求8所述MAC地址表项的管理方法,其特征在于,所述根据差异表项更新本地维护的MAC地址表项后,还包括步骤:
将所述第一缓冲区中的内容复制到所述第二缓冲区中的对应位置。
10.如权利要求1或2所述MAC地址表项的管理方法,其特征在于,
所述本地维护的MAC地址表项中,MAC地址表项以预先设置的格式存储。
11.如权利要求1或2所述MAC地址表项的管理方法,其特征在于,
所述本地维护的MAC地址表项中,不同的MAC地址表项以平衡二叉树的数据结构进行存储,并按照字典序排列。
12.一种MAC地址表项的管理设备,其特征在于,包括:
至少一个交换芯片,用于获取其内部存储的MAC地址表项,并将获取到的MAC地址提供给缓冲区单元;
缓冲区单元,用于为每个所述交换芯片建立对应的缓冲区,对从所述各交换芯片获取到缓冲区中的MAC地址表项与上一次获取到缓冲区中的MAC地址表项进行比较,将比较得到的差异表项发送到管理单元;
管理单元,用于根据所述缓冲区单元发送的差异表项,更新本地维护的MAC地址表项。
13.如权利要求12所述MAC地址表项的管理设备,其特征在于,所述交换芯片进一步包括:
地址获取子单元,用于按照预先设置的格式获取本交换芯片中的MAC地址表项;
定时器子单元,用于设置所述地址获取子单元在完成一次MAC地址表项的获取后、到开始下一次MAC地址表项的获取的时间间隔。
14.如权利要求12所述MAC地址表项的管理设备,其特征在于,所述缓冲区单元进一步包括:
交换芯片地址获取子单元,用于分别获取所述交换芯片存储的MAC地址表项并发送到第一缓冲区子单元;
第一缓冲区子单元,用于存储所述交换芯片地址获取子单元最新获取的MAC地址表项,并将所述MAC地址表项提供给比较子单元;
第二缓冲区子单元,用于存储所述交换芯片地址获取子单元上一次获取的MAC地址表项,并将所述MAC地址表项提供给比较子单元;
比较子单元,用于对获取到的所述第一缓冲区子单元与第二缓冲区子单元的内容进行比较,获取差异表项并向所述管理单元发送。
15.如权利要求12所述MAC地址表项的管理设备,其特征在于,所述管理单元进一步包括:
排序子单元,用于根据所述缓冲区单元获取的差异表项,对本地存储的MAC地址表项进行排序;
存储子单元,用于存储所述排序子单元排序后的MAC地址表项。
16.如权利要求12所述MAC地址表项的管理设备,其特征在于,还包括判断单元,用于判断所述缓冲区单元获取到的差异表项中需要添加的MAC地址表项是否已经存在于所述管理单元中的MAC地址表项中,如果不存在相同内容的表项,将所述MAC地址表项发送到所述管理单元进行正常的排序处理;否则不添加。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710145901XA CN101110846B (zh) | 2007-08-29 | 2007-08-29 | 一种mac地址表项的管理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710145901XA CN101110846B (zh) | 2007-08-29 | 2007-08-29 | 一种mac地址表项的管理方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101110846A true CN101110846A (zh) | 2008-01-23 |
CN101110846B CN101110846B (zh) | 2011-08-31 |
Family
ID=39042733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710145901XA Expired - Fee Related CN101110846B (zh) | 2007-08-29 | 2007-08-29 | 一种mac地址表项的管理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101110846B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101958938A (zh) * | 2010-06-01 | 2011-01-26 | 福建星网锐捷网络有限公司 | 基于网络处理器的mac地址表的学习方法及装置 |
CN101729410B (zh) * | 2009-11-10 | 2012-06-06 | 中兴通讯股份有限公司 | 一种媒体访问控制地址表的同步方法及装置 |
WO2012092835A1 (zh) * | 2011-01-07 | 2012-07-12 | 中兴通讯股份有限公司 | 一种交换表的维护方法及装置 |
CN104394078A (zh) * | 2014-11-05 | 2015-03-04 | 盛科网络(苏州)有限公司 | 一种查询芯片fdb表项的方法及系统 |
CN104394103A (zh) * | 2014-12-16 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种静态mac地址同步方法、系统及交换机 |
CN104426775A (zh) * | 2013-08-19 | 2015-03-18 | 中兴通讯股份有限公司 | 一种路由更新的实现方法及装置 |
CN104518902A (zh) * | 2013-09-30 | 2015-04-15 | 杭州华三通信技术有限公司 | 一种应用软件定义网络优化二层网络流量的方法和设备 |
CN104702508A (zh) * | 2015-03-24 | 2015-06-10 | 深圳中兴网信科技有限公司 | 表项动态更新方法及系统 |
WO2015172538A1 (zh) * | 2014-05-12 | 2015-11-19 | 中兴通讯股份有限公司 | 快速同步介质访问控制地址表的方法、装置及存储介质 |
CN105939402A (zh) * | 2016-03-03 | 2016-09-14 | 杭州迪普科技有限公司 | Mac表项的获取方法及装置 |
CN105991450A (zh) * | 2015-03-02 | 2016-10-05 | 杭州迪普科技有限公司 | Mac地址表更新方法及装置 |
CN107124369A (zh) * | 2017-04-21 | 2017-09-01 | 新华三技术有限公司 | Mac表项数量获取方法和装置 |
CN107623675A (zh) * | 2016-07-15 | 2018-01-23 | 渡边浩志 | 电子装置的网络、电子装置及其检查步骤 |
CN108011958A (zh) * | 2017-12-06 | 2018-05-08 | 新华三技术有限公司 | 网络设备及mac地址表同步方法 |
CN108874987A (zh) * | 2018-06-11 | 2018-11-23 | 深圳市风云实业有限公司 | 表项管理方法、装置及交换芯片 |
CN110830378A (zh) * | 2018-08-07 | 2020-02-21 | 迈普通信技术股份有限公司 | 一种地址表项更新方法及交换设备 |
CN111159206A (zh) * | 2019-12-04 | 2020-05-15 | 北京奇虎科技有限公司 | 设备信息数据库的更新方法、设备及计算机可读存储介质 |
CN113472655A (zh) * | 2021-06-18 | 2021-10-01 | 新华三信息安全技术有限公司 | 一种管理二层转发表项方法及装置 |
-
2007
- 2007-08-29 CN CN200710145901XA patent/CN101110846B/zh not_active Expired - Fee Related
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729410B (zh) * | 2009-11-10 | 2012-06-06 | 中兴通讯股份有限公司 | 一种媒体访问控制地址表的同步方法及装置 |
CN101958938B (zh) * | 2010-06-01 | 2013-07-24 | 福建星网锐捷网络有限公司 | 基于网络处理器的mac地址表的学习方法及装置 |
CN101958938A (zh) * | 2010-06-01 | 2011-01-26 | 福建星网锐捷网络有限公司 | 基于网络处理器的mac地址表的学习方法及装置 |
CN102594931B (zh) * | 2011-01-07 | 2016-03-30 | 中兴通讯股份有限公司 | 一种交换表的维护方法及装置 |
WO2012092835A1 (zh) * | 2011-01-07 | 2012-07-12 | 中兴通讯股份有限公司 | 一种交换表的维护方法及装置 |
CN102594931A (zh) * | 2011-01-07 | 2012-07-18 | 中兴通讯股份有限公司 | 一种交换表的维护方法及装置 |
CN104426775A (zh) * | 2013-08-19 | 2015-03-18 | 中兴通讯股份有限公司 | 一种路由更新的实现方法及装置 |
CN104518902B (zh) * | 2013-09-30 | 2017-11-24 | 新华三技术有限公司 | 一种应用软件定义网络优化二层网络流量的方法和设备 |
CN104518902A (zh) * | 2013-09-30 | 2015-04-15 | 杭州华三通信技术有限公司 | 一种应用软件定义网络优化二层网络流量的方法和设备 |
US10153963B2 (en) | 2014-05-12 | 2018-12-11 | Xi'an Zhongxing New Software Co., Ltd | Method and device for rapidly synchronizing medium access control address table, and storage medium |
WO2015172538A1 (zh) * | 2014-05-12 | 2015-11-19 | 中兴通讯股份有限公司 | 快速同步介质访问控制地址表的方法、装置及存储介质 |
CN104394078A (zh) * | 2014-11-05 | 2015-03-04 | 盛科网络(苏州)有限公司 | 一种查询芯片fdb表项的方法及系统 |
CN104394103A (zh) * | 2014-12-16 | 2015-03-04 | 上海斐讯数据通信技术有限公司 | 一种静态mac地址同步方法、系统及交换机 |
CN104394103B (zh) * | 2014-12-16 | 2018-04-06 | 上海斐讯数据通信技术有限公司 | 一种静态mac地址同步方法、系统及交换机 |
CN105991450A (zh) * | 2015-03-02 | 2016-10-05 | 杭州迪普科技有限公司 | Mac地址表更新方法及装置 |
CN105991450B (zh) * | 2015-03-02 | 2019-05-07 | 杭州迪普科技股份有限公司 | Mac地址表更新方法及装置 |
CN104702508A (zh) * | 2015-03-24 | 2015-06-10 | 深圳中兴网信科技有限公司 | 表项动态更新方法及系统 |
CN104702508B (zh) * | 2015-03-24 | 2018-07-10 | 深圳中兴网信科技有限公司 | 表项动态更新方法及系统 |
CN105939402A (zh) * | 2016-03-03 | 2016-09-14 | 杭州迪普科技有限公司 | Mac表项的获取方法及装置 |
CN107623675A (zh) * | 2016-07-15 | 2018-01-23 | 渡边浩志 | 电子装置的网络、电子装置及其检查步骤 |
CN107623675B (zh) * | 2016-07-15 | 2020-07-14 | 渡边浩志 | 电子装置的网络、电子装置及其检查步骤 |
CN107124369A (zh) * | 2017-04-21 | 2017-09-01 | 新华三技术有限公司 | Mac表项数量获取方法和装置 |
CN107124369B (zh) * | 2017-04-21 | 2020-01-03 | 新华三技术有限公司 | Mac表项数量获取方法和装置 |
CN108011958A (zh) * | 2017-12-06 | 2018-05-08 | 新华三技术有限公司 | 网络设备及mac地址表同步方法 |
CN108874987A (zh) * | 2018-06-11 | 2018-11-23 | 深圳市风云实业有限公司 | 表项管理方法、装置及交换芯片 |
CN108874987B (zh) * | 2018-06-11 | 2020-09-29 | 深圳市风云实业有限公司 | 表项管理方法、装置及交换芯片 |
CN110830378A (zh) * | 2018-08-07 | 2020-02-21 | 迈普通信技术股份有限公司 | 一种地址表项更新方法及交换设备 |
CN111159206A (zh) * | 2019-12-04 | 2020-05-15 | 北京奇虎科技有限公司 | 设备信息数据库的更新方法、设备及计算机可读存储介质 |
CN113472655A (zh) * | 2021-06-18 | 2021-10-01 | 新华三信息安全技术有限公司 | 一种管理二层转发表项方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101110846B (zh) | 2011-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101110846B (zh) | 一种mac地址表项的管理方法和设备 | |
CN103235820B (zh) | 一种集群系统中数据存储方法与装置 | |
CN103064805B (zh) | Spi控制器及通信方法 | |
CN107181679A (zh) | 一种端口绑定实现方法及装置 | |
CN101231619A (zh) | 一种基于非连续页的动态内存管理方法 | |
CN105187512A (zh) | 一种虚拟机集群负载均衡方法及系统 | |
CN102195815B (zh) | 网络管理方法和装置 | |
US7814178B2 (en) | Method and apparatus for data configuration in communication device | |
CN106547709A (zh) | 灵活配置多通道dma控制器的方法及装置 | |
WO2021169123A1 (zh) | 集群环境定时任务处理方法、系统、装置及存储介质 | |
CN101876984A (zh) | 一种数据管理系统及其数据关联查询方法和装置 | |
CN107786355A (zh) | 一种智慧城市信息共享的方法和装置 | |
CN103200199A (zh) | 一种带外数据采集系统 | |
CN103186404A (zh) | 系统固件更新方法与使用该方法的服务器系统 | |
CN101753362A (zh) | 分布式网络设备中堆叠虚拟局域网的配置方法及装置 | |
CN104506462A (zh) | 一种分布式交换机中mac地址管理方法及设备 | |
CN103559032A (zh) | 嵌入式系统对象管理的装置及方法 | |
CN110166277A (zh) | 一种命令行命令树构建方法和命令行动态加载的方法 | |
CN109902056A (zh) | 一种串行传输的方法、装置、设备及计算机可读存储介质 | |
CN102801565A (zh) | 一种在网络管理系统中对业务配置集中管理的方法 | |
CN102143006B (zh) | 通讯设备中的接口拓扑控制方法、系统及装置 | |
CN100451970C (zh) | 一种实现基于机群结构的高性能服务器动态部署方法 | |
CN101621396B (zh) | 单板自动管理装置及方法 | |
CN100546256C (zh) | 一种实现设备单元自适应支持的方法 | |
CN102651696B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110831 |
|
CF01 | Termination of patent right due to non-payment of annual fee |