CN105634999A - 一种介质访问控制地址的老化方法及装置 - Google Patents
一种介质访问控制地址的老化方法及装置 Download PDFInfo
- Publication number
- CN105634999A CN105634999A CN201410637250.6A CN201410637250A CN105634999A CN 105634999 A CN105634999 A CN 105634999A CN 201410637250 A CN201410637250 A CN 201410637250A CN 105634999 A CN105634999 A CN 105634999A
- Authority
- CN
- China
- Prior art keywords
- mac address
- address information
- address table
- count value
- information
- 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
Abstract
本发明公开了一种介质访问控制地址的老化方法及装置。该方法包括:通过对接收报文进行解析,获取该报文携带的介质访问控制MAC地址信息;根据该MAC地址信息以及多个老化时间不同的MAC地址表与MAC地址信息之间的对应关系,从该多个MAC地址表中确定与该MAC地址信息相对应的MAC地址表,该多个MAC地址表中每个MAC地址表由一个计数器计数;将该MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对该MAC地址信息开始计数,该预设时间间隔不大于所确定MAC地址表对应的老化时间。本发明通过创建多个老化时间不同的MAC地址表,满足了业务的灵活性需求;并以不大于老化时间的时间间隔获取计数值,对MAC地址信息进行计数,提高了老化精度。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种介质访问控制地址的老化方法及装置。
背景技术
随着网络应用的日益普及和网络规模日益庞大,互联网上需要传送的信息量大大增加。对于以太网交换机来说,二层转发所依据的就是MAC(MediaAccessControl,媒体访问控制)地址,MAC地址是存放在MAC地址表中的,通过对MAC地址的学习、更新、老化删除等操作,维护MAC地址表的正确性,从而实现以太网交换机的二层转发功能。其中,在对MAC地址表项老化时,为MAC地址表中的每一条MAC地址表项配置一个计数器,当MAC地址表项很多时,需要大量的计数器,导致成本较大。
现有技术中,为了解决上述问题,采用以下老化机制:为MAC地址表中多个MAC地址表项配置一个计数器,当计数器计数到预设数值时,遍历一次MAC地址表,获取MAC地址表项的当前状态,当计数器再次计数到预设数值时,再次遍历MAC地址表,获取MAC地址表项的当前状态。当某表项两次遍历状态相同时,认为该MAC地址表项在一定时间内没有被访问,上报系统进行删除。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在这样的老化机制下,当某一MAC地址表项在某一时刻新建或更新时,不会立刻获取该MAC地址表项的状态,而是等到计数器计数到预设数值时,才会获取该表项的状态,例如,当预设数值为300s时,每次计数器计数到300s时,获取一次表项状态,当某表项在计数器计数到第1s新建或更新时,也要等到计数器计数到300s时才获取该表项状态,然后等到计数器计数值再次到达300s时,再次获取该表项状态,通过比较两次获取到的表项状态,确定是否老化该表项,这样该表项的实际老化时间是599s;当某表项在计数器计数到第299s新建或更新时,需要等到计数器计数到300s时获取该表项状态,然后等到计数器计数值再次到300s时,再次获取该表项状态,通过比较两次获取到的表项状态,确定是否老化该表项,这样该表项的实际老化时间是301s,在这样的老化机制下,MAC地址的实际老化时间不是300s,而是在301s-599s范围内,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地址信息,将所述接收报文上报至CPU或删除;
如果所述多个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地址表中任一MAC地址表对应的MAC地址信息中均未包含所述MAC地址信息,将所述接收报文上报至CPU或删除;如果所述多个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地址的老化装置结构示意图。
具体实施方式
本发明为了提高老化精度,满足业务的灵活性需求,提供了一种介质访问控制地址的老化方法及装置。
下面结合说明书附图,对本发明进行详细说明。
图1是本发明实施例提供的MAC地址的老化方法流程图。参见图1,该实施例包括:
101、通过对接收报文进行解析,交换机至少获取该报文携带的MAC地址信息。
其中,该MAC地址信息包括源MAC地址和目的MAC地址,用于标识帧的源节点和目的节点的物理地址。
在本发明实施例中,交换机接收来自端口的报文,报文结构如表1所示,通过对报文解析,获取报文的源MAC地址、目的MAC地址信息。
表1
7字节 | 1字节 | 6字节 | 6字节 | 2字节 | 46-1500字节 | 4字节 | 0-448 |
P | SFD | DA | SA | L/T | DATA PAD | FCS | E |
其中,P为前导码,主要功能是接受方在接受重要数据前提取时钟,建立同步;SFD为帧首定界符;DA为目标地址;SA为源地址;L/T标识数据字段所携带的数据协议类型;DATAPAD为高层的数据,通常为3层协议数据单元。对于TCP/IP是IP数据包;FCS为帧检验序列,E为扩展字段。
102、交换机根据该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地址信息时,将该接收报文上报至CPU,由CPU确定将该接收报文携带的MAC地址信息存储至哪个MAC地址表。
103、交换机将该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地址信息,将该接收报文上报至CPU或删除;
如果该多个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地址信息。
图2是本发明实施例提供的MAC地址老化方法流程图。参见图2,该实施例包括:
201、根据统计的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地址表的再次计数值更新时间,以提高老化精度。
202、当接收到报文时,交换机对该接收报文进行解析,获取该报文携带的MAC地址信息。
在本发明实施例中,由于该多个MAC地址表中每个MAC地址表对应不同的MAC地址信息,在从端口接收到报文时,需要获取该报文携带的MAC地址信息和MAC地址信息,以便后续根据该MAC地址信息确定该MAC地址信息待新建或更新的MAC地址表。
203、根据该MAC地址信息,从多个MAC地址表中确定与该MAC地址信息相对应的MAC地址表。
在本发明实施例中,根据该MAC地址信息以及多个MAC地址表与MAC地址信息之间的对应关系,判断该多个MAC地址表对应的MAC地址信息中是否包含该MAC地址信息时,如果该多个MAC地址表中任一MAC地址表对应的MAC地址信息中均不包含该MAC地址信息,交换机可以认为携带该MAC地址信息的报文为非法报文,对该报文进行删除或报警,也可以将携带该MAC地址信息的报文上报至CPU,由CUP确定该报文携带的MAC信息存储至哪个MAC地址表中。如果该多个MAC地址表中某一MAC地址表对应的MAC地址信息中包含该MAC地址信息,交换机确定查找到该MAC地址信息相对应的MAC地址表。
204、将该MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对该MAC地址信息开始计数,该预设时间间隔不大于所确定MAC地址表对应的老化时间。
在本发明实施例中,对于该多个MAC地址表中每一个MAC地址表,该MAC地址表配置有多个MAC地址信息的存储空间,当新建MAC地址信息时,为MAC地址信息配置第一寄存器、第二寄存器和比较器。其中该第一寄存器用于存储初始计数值,该第二寄存器用于存储该新建MAC地址信息的老化时间。以预设时间间隔获取计数值对该MAC地址信息循环计数,并将第一个计数值存储至该第一寄存器;当对该MAC地址信息再次计数时,首先,利用比较器比较第一寄存器中计数值与再次计数值的大小,当第一寄存器中计数值小于再次计数值时,认为计数器未溢出,将再次计数值减去第一寄存器中计数值,得到一个表征流逝时间的计数差值;当第一寄存器中计数值大于再次计数值时,认为计数器溢出,将再次计数值加上寄存器最大计数值后再减去第一寄存器中计数值,得到一个表征流逝时间的计数差值。然后利用比较器计数差值与第二寄存器中存储的老化时间的大小,当计数差值大于该第二寄存器中存储的老化时间时,删除该MAC地址信息,当计数差值小于该第二寄存器中存储的老化时间时,继续计数,不删除该MAC地址信息。
本发明实施例中的计数器不需要复位,当计数到最大值时,该计数器在计数时钟的驱动下,自动溢满重新归零,开始下一次的计数循环。为了保证计数器在对MAC地址表中的MAC地址信息计数一个周期内不会溢满归零,设置计数器的最大计数值M大于该MAC地址表的老化时间。
现有技术中,以老化时间作为时间间隔读取计数器的计数值,对MAC地址表进行计数,导致实际老化时间存在最大值为两倍老化时间的误差,MAC地址信息不能及时删除/更新,在本发明实施例中,以不大于老化时间的预设时间间隔读取计数器的计数值,提供老化精度,当预设时间间隔设置的较小时,老化时间误差也可忽略不计,可以及时删除/更新MAC地址表,优化存储空间。
在本发明实施例中,将该MAC地址信息与该MAC地址表进行匹配,当该MAC地址表中包含该MAC地址信息时,对该MAC地址信息重新计数,其具体实施过程为:
为了叙述方便,假设该MAC地址信息为1,其老化时间为a,该MAC地址表如表2所示。该MAC地址表由一个计数器循环计数,该计数器的最大计数值为111(转化为十进制是7),假设a≤8。以不大于老化时间a的时间间隔获取计数值,对MAC地址信息1-5继续循环计数,假设当前MAC地址信息1-5第一寄存器中分别存储001-101。在确定该MAC地址表中包含MAC地址信息1后,当对该MAC地址信息1再次计数时,将第一寄存器存储的计数值更新为110,形成如表3所示的更新后的MAC地址表。
表2
MAC地址信息 | 第一寄存器 | 第二寄存器 |
MAC地址信息1 | 001 | a |
MAC地址信息2 | 010 | a |
MAC地址信息3 | 011 | a |
MAC地址信息4 | 100 | a |
MAC地址信息5 | 101 | a |
表3
MAC地址信息 | 第一寄存器 | 第二寄存器 |
MAC地址信息1 | 110 | a |
MAC地址信息2 | 010 | a |
MAC地址信息3 | 011 | a |
MAC地址信息4 | 100 | a |
MAC地址信息5 | 101 | a |
在本发明实施例中,将该MAC地址信息与该MAC地址表进行匹配,当该MAC地址表中未包含该MAC地址信息时,将该MAC地址信息新建至该MAC地址表中,同时对该MAC地址信息开始计数,其具体实施过程为:
为了叙述方便,假设该MAC地址信息为6,其老化时间为a,该MAC地址表如表2所示。该MAC地址表由一个计数器循环计数,该计数器的最大计数值为111(转化为十进制是7),假设a≤8。MAC地址信息1-5,在确定该MAC地址表中未包含MAC地址信息6后,新建该MAC地址信息6,以不大于老化时间a的时间间隔获取计数值,对该MAC地址表中的MAC地址信息循环计数,当对该MAC地址信息6开始计数时,将第一个计数值110存储至该第一寄存器,形成如表4所示的新建后的MAC地址表。
表4
MAC地址信息 | 第一寄存器 | 第二寄存器 |
MAC地址信息1 | 001 | a |
MAC地址信息2 | 010 | a |
MAC地址信息3 | 011 | a |
MAC地址信息4 | 100 | a |
MAC地址信息5 | 101 | a |
MAC地址信息6 | 110 | a |
本发明实施例通过创建多个老化时间不同的MAC地址表,当接收到报文时,通过解析该报文,将该报文携带的MAC地址信息新建或更新至老化时间合适的MAC地址表中,满足了业务的灵活性需求,并且在MAC地址信息新建或更新时,以不大于老化时间的时间间隔获取计数值,对MAC地址信息进行计数,提高了老化精度。
图3是本发明实施例提供的MAC地址老化装置结构示意图。参见图3,该装置包括:报文解析模块301、MAC地址表查找模块302和更新模块303。其中:
报文解析模块301用于通过对接收报文进行解析,获取该报文携带的MAC地址信息;报文解析模块301与MAC地址表查找模块302连接,MAC地址表查找模块302,用于根据该MAC地址信息以及多个老化时间不同的MAC地址表与MAC地址信息之间的对应关系,从该多个MAC地址表中确定与该MAC地址信息相对应的MAC地址表,该多个MAC地址表中每个MAC地址表由一个计数器计数;MAC地址表查找模块302与更新模块303连接,更新模块303用于将该MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对该MAC地址信息开始计数,该预设时间间隔不大于所确定MAC地址表对应的老化时间。
可选地,该装置还包括:MAC地址表创建模块,用于根据统计的MAC地址信息的发送频率,创建多个老化时间不同MAC地址表,每个MAC地址表配置多个MAC地址信息存储空间;计数器配置模块,用于对于多个MAC地址表的每个MAC地址表,该MAC地址表配置一个计数器循环计数。
可选地,该MAC地址表查找模块302还用于根据该MAC地址信息以及该多个MAC地址表与MAC地址信息之间的对应关系,判断该多个MAC地址表中任一MAC地址表对应的MAC地址信息中是否包含该MAC地址信息;如果该多个MAC地址表中任一MAC地址表对应的MAC地址信息中均未包含该MAC地址信息,将该接收报文上报至CPU或删除;如果该多个MAC地址表中某一MAC地址表对应的MAC地址信息中包含该MAC地址信息,确定查找到与该MAC地址信息相对应的MAC地址表。
可选地,该更新模块303用于将该MAC地址信息与该MAC地址表进行匹配;当该MAC地址表中包含该MAC地址信息时,并以预设时间间隔获取计数值对该MAC地址信息的计数值进行更新;当该MAC地址表中未包含该MAC地址信息时,将该MAC地址信息新建至该MAC地址表中,并以预设时间间隔获取计数值对该MAC地址信息开始计数。
可选地,该更新模块303还用于为该MAC地址信息配置第一寄存器、第二寄存器和比较器,该第一寄存器用于存储初始计数值,该第二寄存器用于存储该MAC地址信息的老化时间;以预设时间间隔获取计数值对该MAC地址信息循环计数,并将第一个计数值存储至该第一寄存器;当对该MAC地址信息再次计数时,通过比较再次计数值和第一寄存器计数值的大小,依据比较结果判断计数器是否溢出,采用不同的方法获得计数差值,当计数差值大于第二寄存器中存储的老化计数值时,删除该MAC地址信息。
本发明实施例提供的装置通过创建多个老化时间不同的MAC地址表,当接收到报文时,通过解析该报文,将该报文携带的MAC地址信息新建或更新至老化时间合适的MAC地址表中,满足了业务的灵活性需求,并且在MAC地址信息新建或更新时,以不大于老化时间的时间间隔获取计数值,对MAC地址信息进行计数,提高了老化精度。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种介质访问控制地址的老化方法,其特征在于,所述方法包括:
通过对接收报文进行解析,获取所述报文携带的介质访问控制MAC地址信息;
根据所述MAC地址信息以及多个老化时间不同的MAC地址表与MAC地址信息之间的对应关系,从所述多个MAC地址表中确定与所述MAC地址信息相对应的MAC地址表,所述多个MAC地址表中每个MAC地址表由一个计数器计数;
将所述MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对所述MAC地址信息开始计数,所述预设时间间隔不大于所确定MAC地址表对应的老化时间。
2.根据权利要求1所述的方法,其特征在于,通过对接收报文进行解析,获取所述报文携带的介质访问控制MAC地址信息之前,所述方法还包括:
根据统计的MAC地址信息的发送频率,创建多个老化时间不同MAC地址表,每个MAC地址表配置多个MAC地址信息存储空间;
对于多个MAC地址表的每个MAC地址表,所述MAC地址表配置一个计数器循环计数。
3.根据权利要求1所述的方法,其特征在于,根据所述MAC地址信息以及多个老化时间不同的MAC地址表与MAC地址信息之间的对应关系,从所述多个MAC地址表中确定与所述MAC地址信息相对应的MAC地址表包括:
根据所述MAC地址信息以及所述多个MAC地址表与MAC地址信息之间的对应关系,判断所述多个MAC地址表中任一MAC地址表对应的MAC地址信息中是否包含所述MAC地址信息;
如果所述多个MAC地址表中任一MAC地址表对应的MAC地址信息中均未包含所述MAC地址信息,将所述接收报文上报至CPU或删除;
如果所述多个MAC地址表中某一MAC地址表对应的MAC地址信息中包含所述MAC地址信息,确定查找到与所述MAC地址信息相对应的MAC地址表。
4.根据权利要求1所述的方法,其特征在于,将所述MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对所述MAC地址信息开始计数包括:
将所述MAC地址信息与所述MAC地址表进行匹配;
当所述MAC地址表中包含所述MAC地址信息时,并以预设时间间隔获取计数值对所述MAC地址信息的计数值进行更新;
当所述MAC地址表中未包含所述MAC地址信息时,将所述MAC地址信息新建至所述MAC地址表中,并以预设时间间隔获取计数值对所述MAC地址信息开始计数。
5.根据权利要求4所述的方法,其特征在于,当所述MAC地址表中未包含所述MAC地址信息时,将所述MAC地址信息新建至所述MAC地址表中,并以预设时间间隔获取计数值对所述MAC地址信息开始计数包括:
为所述MAC地址信息配置第一寄存器、第二寄存器和比较器,所述第一寄存器用于存储初始计数值,所述第二寄存器用于存储所述MAC地址信息的老化时间;
以预设时间间隔获取计数值对所述MAC地址信息循环计数,并将第一个计数值存储至所述第一寄存器;
当对所述MAC地址信息再次计数时,通过比较再次计数值和第一寄存器计数值的大小,依据比较结果判断计数器是否溢出,采用不同的方法获得计数差值,当计数差值大于第二寄存器中存储的老化计数值时,删除所述MAC地址信息。
6.一种介质访问控制地址的老化装置,其特征在于,所述装置包括:
报文解析模块,用于通过对接收报文进行解析,获取所述报文携带的MAC地址信息;
MAC地址表查找模块,用于根据所述MAC地址信息以及多个老化时间不同的MAC地址表与MAC地址信息之间的对应关系,从所述多个MAC地址表中确定与所述MAC地址信息相对应的MAC地址表,所述多个MAC地址表中每个MAC地址表由一个计数器计数;
更新模块,用于将所述MAC地址信息在所确定的MAC地址表中进行新建或更新,并以预设时间间隔获取计数值对所述MAC地址信息开始计数,所述预设时间间隔不大于所确定MAC地址表对应的老化时间。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
MAC地址表创建模块,用于根据统计的MAC地址信息的发送频率,创建多个老化时间不同MAC地址表,每个MAC地址表配置多个MAC地址信息存储空间;
计数器配置模块,用于对于多个MAC地址表的每个MAC地址表,所述MAC地址表配置一个计数器循环计数。
8.根据权利要求6所述的装置,其特征在于,所述MAC地址表查找模块还用于根据所述MAC地址信息以及所述多个MAC地址表与MAC地址信息之间的对应关系,判断所述多个MAC地址表中任一MAC地址表对应的MAC地址信息中是否包含所述MAC地址信息;如果所述多个MAC地址表中任一MAC地址表对应的MAC地址信息中均未包含所述MAC地址信息,将所述接收报文上报至CPU或删除;如果所述多个MAC地址表中某一MAC地址表对应的MAC地址信息中包含所述MAC地址信息,确定查找到与所述MAC地址信息相对应的MAC地址表。
9.根据权利要求6所述的装置,其特征在于,所述更新模块用于将所述MAC地址信息与所述MAC地址表进行匹配;当所述MAC地址表中包含所述MAC地址信息时,并以预设时间间隔获取计数值对所述MAC地址信息的计数值进行更新;当所述MAC地址表中未包含所述MAC地址信息时,将所述MAC地址信息新建至所述MAC地址表中,并以预设时间间隔获取计数值对所述MAC地址信息开始计数。
10.根据权利要求9所述的装置,其特征在于,所述更新模块还用于为所述MAC地址信息配置第一寄存器、第二寄存器和比较器,所述第一寄存器用于存储初始计数值,所述第二寄存器用于存储所述MAC地址信息的老化时间;以预设时间间隔获取计数值对所述MAC地址信息循环计数,并将第一个计数值存储至所述第一寄存器;当对所述MAC地址信息再次计数时,通过比较再次计数值和第一寄存器计数值的大小,依据比较结果判断计数器是否溢出,采用不同的方法获得计数差值,当计数差值大于第二寄存器中存储的老化计数值时,删除所述MAC地址信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410637250.6A CN105634999B (zh) | 2014-11-05 | 2014-11-05 | 一种介质访问控制地址的老化方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410637250.6A CN105634999B (zh) | 2014-11-05 | 2014-11-05 | 一种介质访问控制地址的老化方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105634999A true CN105634999A (zh) | 2016-06-01 |
CN105634999B CN105634999B (zh) | 2018-09-11 |
Family
ID=56049510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410637250.6A Active CN105634999B (zh) | 2014-11-05 | 2014-11-05 | 一种介质访问控制地址的老化方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105634999B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616614A (zh) * | 2018-04-28 | 2018-10-02 | 深圳市风云实业有限公司 | Mac地址管理方法、装置及电子设备 |
CN113542130A (zh) * | 2021-07-22 | 2021-10-22 | 新华三信息安全技术有限公司 | 地址表项的处理方法及装置 |
CN114024919A (zh) * | 2021-09-28 | 2022-02-08 | 苏州裕太微电子有限公司 | 一种实现以太网二层转发表精确老化的方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060036765A1 (en) * | 2004-05-27 | 2006-02-16 | 3Com Corporation | Distributed bridging with synchronization forwarding databases |
CN101094187A (zh) * | 2007-07-30 | 2007-12-26 | 杭州华三通信技术有限公司 | 一种学习介质访问控制地址的方法和装置、业务板 |
CN101110720A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种媒体接入控制地址表老化时间的测试方法 |
US20100158019A1 (en) * | 2008-12-22 | 2010-06-24 | Fujitsu Limited | Frame transfer apparatus and frame transfer method |
CN102123106A (zh) * | 2011-04-21 | 2011-07-13 | 杭州华三通信技术有限公司 | 一种虚拟专用局域网服务网络中mac地址学习方法和装置 |
CN102404148A (zh) * | 2011-11-22 | 2012-04-04 | 华为技术有限公司 | 一种mac地址表管理方法及装置 |
CN102821168A (zh) * | 2012-08-09 | 2012-12-12 | 中兴通讯股份有限公司 | 基于vpls的mac地址老化的方法及装置 |
-
2014
- 2014-11-05 CN CN201410637250.6A patent/CN105634999B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060036765A1 (en) * | 2004-05-27 | 2006-02-16 | 3Com Corporation | Distributed bridging with synchronization forwarding databases |
CN101094187A (zh) * | 2007-07-30 | 2007-12-26 | 杭州华三通信技术有限公司 | 一种学习介质访问控制地址的方法和装置、业务板 |
CN101110720A (zh) * | 2007-08-24 | 2008-01-23 | 中兴通讯股份有限公司 | 一种媒体接入控制地址表老化时间的测试方法 |
US20100158019A1 (en) * | 2008-12-22 | 2010-06-24 | Fujitsu Limited | Frame transfer apparatus and frame transfer method |
CN102123106A (zh) * | 2011-04-21 | 2011-07-13 | 杭州华三通信技术有限公司 | 一种虚拟专用局域网服务网络中mac地址学习方法和装置 |
CN102404148A (zh) * | 2011-11-22 | 2012-04-04 | 华为技术有限公司 | 一种mac地址表管理方法及装置 |
CN102821168A (zh) * | 2012-08-09 | 2012-12-12 | 中兴通讯股份有限公司 | 基于vpls的mac地址老化的方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616614A (zh) * | 2018-04-28 | 2018-10-02 | 深圳市风云实业有限公司 | Mac地址管理方法、装置及电子设备 |
CN108616614B (zh) * | 2018-04-28 | 2021-04-06 | 深圳市风云实业有限公司 | Mac地址管理方法、装置及电子设备 |
CN113542130A (zh) * | 2021-07-22 | 2021-10-22 | 新华三信息安全技术有限公司 | 地址表项的处理方法及装置 |
CN114024919A (zh) * | 2021-09-28 | 2022-02-08 | 苏州裕太微电子有限公司 | 一种实现以太网二层转发表精确老化的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105634999B (zh) | 2018-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2608464C2 (ru) | Устройство, способ и сетевой сервер для обнаружения структур данных в потоке данных | |
CN107104824B (zh) | 一种网络拓扑确定方法和装置 | |
US10581746B2 (en) | Selecting a connection in a network | |
CN111355816B (zh) | 服务器选取方法、装置、设备及分布式服务系统 | |
CN110413845B (zh) | 基于物联网操作系统的资源存储方法及装置 | |
CN114253979B (zh) | 一种报文处理方法、装置及电子设备 | |
CN105634999A (zh) | 一种介质访问控制地址的老化方法及装置 | |
US11278798B2 (en) | Selecting a connection in a network | |
CN105656643B (zh) | 一种基于网络配置协议进行兼容管理的方法及设备 | |
CN110290228B (zh) | 一种互联网协议ip地址分配方法及装置 | |
CN111813517A (zh) | 任务队列的分配方法、装置、计算机设备及介质 | |
CN105357334B (zh) | 一种基于ipv6地址划分的ipv6地址存储及快速查询方法 | |
CN110659165A (zh) | 一种多节点服务器自动化测试方法和装置 | |
CN111367916B (zh) | 一种数据存储方法及装置 | |
CN112235436A (zh) | 网络地址转换规则匹配方法及设备 | |
CN109039911B (zh) | 一种基于hash查找方式共享ram的方法及系统 | |
CN103532852A (zh) | 一种路由调度方法、装置及网络设备 | |
CN115883681A (zh) | 报文解析方法、装置、电子设备及存储介质 | |
CN113986931B (zh) | 报表分页的方法、装置、存储介质及计算设备 | |
CN108574637B (zh) | 一种地址自学习的方法、装置及交换机 | |
CN107800738B (zh) | 数据更新的方法与装置 | |
CN102196061B (zh) | 地址过滤表生成方法及装置、以太帧接收方法及装置 | |
CN108173689B (zh) | 负载均衡数据的输出系统 | |
CN115210694A (zh) | 数据传输方法及装置 | |
CN106209556B (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 |