通信设备中定时处理表项的方法及其装置.pdf

上传人:xia****o6 文档编号:686567 上传时间:2018-03-05 格式:PDF 页数:25 大小:1.18MB
返回 下载 相关 举报
摘要
申请专利号:

CN03147385.7

申请日:

2003.07.12

公开号:

CN1571381A

公开日:

2005.01.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

H04L12/28; H04L12/24; H04L12/26

主分类号:

H04L12/28; H04L12/24; H04L12/26

申请人:

华为技术有限公司;

发明人:

夏世长; 王万万

地址:

518129广东省深圳市龙岗区坂田华为总部办公楼

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明涉及一种通信设备中定时处理表项的方法及其装置。本发明主要为:对表中的表项进行定时处理时利用了表项中的时间标签计数值参量,从而进一步提高了定时处理的精度;而且,可以通过调整时间标签的计数值大小(即时间标签宽度)来调整定时处理的精度。因此,本发明可以更好地满足各种用户对定时处理表项的精度需求。本发明尤其适用于对通信设备中的表进行老化处理,例如,利用本发明对MAC地址表进行老化处理时,即使处理过程对MAC地址表的老化刷新粒度要求不高,选择时间标签宽度为1,可能产生的最大误差也仅为老化时间阈值的一半。

权利要求书

1: 一种通信设备中定时处理表项的方法,其特征在于包括: a、设定针对表项的定时处理周期及表项的时间标签计数值; b、根据设定的定时处理周期、待处理的表项数量及相应表项的时间标签 计数值确定对各个表项的刷新间隔时间; c、根据确定的刷新间隔时间对该表中的各个表项进行刷新,并根据刷新 结果进行处理。
2: 根据权利要求1所述的通信设备中定时处理表项的方法,其特征在于 所述的对各个表项的刷新间隔时间为:定时处理周期除以待处理的表项数 量,再除以表项的时间标签计数值。
3: 根据权利要求1所述的通信设备中定时处理表项的方法,其特征在 于,当步骤a所述的表项的定时处理周期为表项的老化时间阈值时,所述的步 骤b包括: 确定需要进行老化处理的表中包含的表项数量; 根据老化处理精度的需求确定表中的时间标签的宽度,即表中时间标签 字段所占的位数为W位(bit),且W为正整数; 确定表项刷新间隔时间为老化时间阈值除以需要进行老化处理的表项数 量,再除以时间标签计数值为2W。
4: 根据权利要求3所述的通信设备中定时处理表项的方法,其特征在于 所述的步骤c为: 以确定的表项刷新间隔时间定时依次刷新表中的各表项,并根据刷新结 果对各表项进行老化处理。
5: 根据权利要求4所述的通信设备中定时处理表项的方法,其特征在于 所述的步骤c进一步包括:   c1、当基于表项刷新间隔时间建立的老化时间计数器超时时,将上次刷 新的表项序号加1; c2、确定新的序号对应的表项包含的内容,并根据表项的内容确定是否 满足老化该表项的条件,如果满足,则执行步骤c3,否则,执行步骤c4; c3、对该表项进行老化; c4、将该表项中的时间标签的计数值加1,并执行步骤c1。
6: 根据权利要求5所述的通信设备中定时处理表项的方法,其特征在于 所述的步骤c1包括: 判断基于表项刷新间隔时间建立的老化时间计数器是否超时,如果超 时,则将上次刷新的表项序号加1,否则,保持当前刷新的表项序号。
7: 根据权利要求5所述的通信设备中定时处理表项的方法,其特征在于 所述的步骤c2包括: 确定新的序号对应的表项包含的内容,包括表项的有效标志、时间标 签、静态表项标志; 根据表项包含的内容判断是否满足老化该表项的条件,即: 如果有效标志为有效、时间标签值为最大值,同时静态表项标志为无效 且端口的老化使能打开,则满足老化该表项的条件,执行步骤c3; 否则,不满足老化该表项的条件,执行步骤c4。
8: 根据权利要求3或5所述的通信设备中定时处理表项的方法,其特征在 于所述的表项为MAC(媒体接入控制)地址表中的MAC地址表项。
9: 一种通信设备中定时处理表项的装置,其特征在于包括: 表项刷新控制模块:根据由定时处理周期、待处理表项数量和相应表项 的时间标签宽度确定的表项刷新间隔时间产生刷新信号,并将该信号发送给 表项定时处理模块; 表项定时处理模块:接收表项定时处理控制模块发来的处理信号,并根 据该信号确定需要进行处理的表项; 老化刷新处理模块:根据表项定时处理模块确定的待处理的表项读出对 应的表项的内容,并根据读出的内容对该表项进行处理。
10: 根据权利要求9所述的通信设备中定时处理表项的装置,其特征在 于: 所述的表项刷新控制模块包括: 老化时间计数器:进行计数并输出老化时间计数值给第一比较器; 表项刷新间隔时间输出模块:输出表项刷新间隔时间给第一比较器; 第一比较器:比较老化时间计数器输出的计数值与表项刷新间隔时间输 出模块输出的表项刷新间隔时间进行比较,如果老化时间计数器输出的计数 值小于表项刷新间隔时间时,输出选择原表项序号的信号给表项定时处理模 块,如果老化时间计数器输出的计数值不小于表项刷新间隔时间时,则输出 刷新表项序号信号给表项定时处理模块的选择器; 所述的表项定时处理模块包括: 选择器:根据第一比较器输出的信号,并选择对相应表项的处理方式, 如果接收的是选择原表项序号的信号,则将保持当前表项的序号,即仍指向 原表项,输出给表项刷新处理模块,如果接收到的是刷新表项序号信号,则 将当前表项序号加1,即指向新的表项,输出给表项刷新处理模块; 表项刷新处理模块:接收选择器的输出信号,并选择确定相应的表项。
11: 根据权利要求10所述的通信设备中定时处理表项的装置,其特征在 于所述的表项刷新控制模块还包括: 老化单位时间计数器:以时钟周期,即硬件的工作时钟周期为单位进行 计数,并输出计数结果给第二比较器; 单位刷新间隔时间阈值输出模块:保存着单位刷新间隔时间阈值,并将 所述的单位刷新间隔时间阈值输出给第二比较器; 第二比较器:将老化单位时间计数器的输出结果与单位刷新间隔时间阈 值输出模块输出的单位刷新间隔时间阈值进行比较,并当单位刷新间隔时间 阈值不大于老化单位时间计数器输出的计数值时,输出计数使能信号给表项 刷新控制模块的老化时间计数器;
12: 根据权利要求10所述的通信设备中定时处理表项的装置,其特征在 于所述的表项刷新处理模块包括: 寄存器:接收表项定时处理模块中选择器的输出信号,并寄存该信号, 之后输出给老化刷新处理模块。
13: 根据权利要求9所述的通信设备中定时处理表项的装置,其特征在于 该装置还包括: 仲裁模块:用于确定老化刷新处理模块和自学习或软件维护模块对MAC地 址表进行读写操作,即老化刷新处理模块和自学习或软件维护模块分别通过 仲裁模块与MAC地址表模块相连,所述的MAC地址表模块用于保存MAC地址表。

说明书


通信设备中定时处理表项的方法及其装置

    【技术领域】

    本发明涉及网络通信技术领域,尤其涉及一种通信设备中定时处理表项的方法及其装置。

    背景技术

    在网络通信技术领域中,经常会涉及到需要对某一表中的表项定时进行处理的情况,例如,对于交换机中的MAC(媒体接入控制)地址表中的各个被动态维护的MAC地址表项便需要定时对其进行老化处理,同样,网络通信设备中也还存在一些与MAC地址表有类似处理需求的其他表项,如帧缓存地址管理,对于分配出去的帧缓存地址,如果某种异常情况分配出去的帧缓存地址无法返还,那么只有采取保护措施,即在规定的时间(即老化时间阈值)还没有返还,那么该分配出去的缓存地址就要被老化掉。现以交换机中的MAC地址表为例,对现有技术的状况进行描述。

    通信网络中的交换机需要对接入的报文进行转发决策处理以确定转发目的路由,而实现该功能则需要在交换机中存在一个MAC地址表,且需要MAC地址表可维护,所述地可维护包括自老化、自学习和软件的维护。所述的自老化为:对于MAC地址表中自动学习到的MAC地址需要设置空闲存在时间的限制,即如果MAC地址表中的某一MAC地址在设定的时间内一直未发送报文,则需要通过老化控制模块将该MAC地址老化掉,以保证网络中报文的可靠收发,同时还可节省有限的MAC地址表空间。

    目前,通信设备中所采用的MAC地址表老化处理方法通常包括以下两种:

    第一种MAC地址表的老化处理方法参见图1和图2,具体为:采用一个时间计数器进行计数,并根据时间计数器定时对MAC地址表进行访问,每次访问对应MAC地址表时,首先将对应MAC地址表中时间标签读出来,然后与当前时间比较,看时间偏差是否超过老化时间阈值(即设定的老化时间),如果没有超过或超过但不允许老化时,则将该时刻的时间写到对应MAC地址表中时间标签处;如果时间偏差超过老化时间阈值,则对应该MAC地址表项全部写0,即表示该MAC地址表项已经老化。

    由上述MAC地址表老化处理方式的描述可以看出,第一种MAC地址表的老化处理方法存在以下缺点:

    1、如果交换机的使用寿命越长,那么要求时间计数器就越大,且要求MAC地址表中的时间标签就越宽,在判断老化时使用的减法器和比较器的位宽也就越大,造成资源浪费;例如,交换机使用寿命为5年,那么要求计数器至少为5年,交换机时钟周期为10ns,那么计数器的位宽应该为54bit,MAC地址表中的时间标签也为54bit宽,减法器为54bit宽,比较器也要54bit宽。

    2、MAC地址表中的时间标签是访问该MAC地址表时才有可能刷新,这样可能就造成某个MAC地址在MAC地址表中存活时间超过老化时间阈值,但由于一直未被访问而导致该MAC地址继续存在于MAC地址表中;且由于老化不实时,所以对于不同的MAC地址在MAC地址表中存活的时间不一样,从而导致误差增大,影响了通信设备对报文进行正常的转发处理。

    第二种MAC地址表的老化处理方法参见图3和图4,具体为:首先在老化时间阈值寄存器可设老化时间阈值agetime_threshold,如果MAC地址表项深度(即MAC地址表的表项个数)为H,老化控制模块刷新MAC地址表中各表项的周期为agetime_threshold/H,即MAC地址表中二个相邻表项的刷新时间间隔为agetime_threshold/H。然后,当老化计数器的计数值为agetime_threshold/H时,老化控制模块对MAC地址表中的表项进行刷新。因此,对于MAC地址表中某一个表项来说,老化控制模块的老化刷新指针循环一圈回到该表项时共计时间刚好为老化时间阈值agetime_threshold。

    老化控制模块对MAC地址表进行刷新处理时,主要是对MAC地址表中的有效标志、老化标志进行处理。MAC地址中的有效标志表示MAC地址表项是否为空闲状态,1表示该表项有效,否则该表项无效。MAC地址表中的老化标志为两次刷新时间内,该表项是否被激活过(即被访问过),1表示该表项被激活过;否则为没有被激活过。

    针对MAC地址表中各表项的具体老化处理过程为:当成功地进行自学习或软件维护MAC地址表中的某个表项时,对应该MAC地址表项的有效标志和老化标志刷新为11。当老化控制模块中的老化计数器到了刷新周期时,对应MAC地址表的老化地址序号就加一,即令老化控制模块指向MAC地址表的原表项的下一个表项;同时读出刷新后的老化地址序号对应的MAC地址表项内容,并察看该MAC地址表项中对应的有效标志和老化标志,如果为11,表明该MAC地址表项在老化时间阈值内被访问过,则刷新该MAC地址表项的有效标志和老化标志的值为10;如果为10,表明该MAC地址表项在老化时间阈值内未被访问过,则认为该MAC地址表项需要老化,并刷新该MAC地址表项的有效标志和老化标志的值为00;如果有效标志为0,不管老化标志为何值,表明该MAC地址表项已经老化,并刷新该MAC地址表项的有效标志和老化标志的值为00。

    当然,如果老化控制模块需要处理的MAC地址表项中静态表项标志为1或对应端口的老化使能未打开时,则无论表项的有效标志位和老化标志位为何值均不老化该表项,并保持该表项的有效标志和老化标志不变。

    在第二种MAC地址表的老化处理方法中,如果某个MAC地址表项被自学习过程刷新过,有效标志和老化标志为11,之后老化控制模块又刷新了该表项,有效标志和老化标志为10;这样,如果以后再没有自学习或软件维护刷新该表项,则当老化控制模块下一次刷新该表项时老化该表项,同时有效标志和老化标志为00。此时该表项在MAC地址表项中存活时间等于老化时间阈值,符合老化处理的要求。

    可是,如果某个MAC地址表项被自学习刷新过,有效标志和老化标志为11,之后老化控制模块又刷新了该表项,有效标志和老化标志为10,接着该表项又被自学习刷新了,有效标志和老化标志为11;这样,如果以后再没有自学习或软件维护刷新该表项,老化控制模块将再次刷新该表项,将有效标志和老化标志变为10,当老化控制模块下一次读到该表项时就老化该表项,有效标志和老化标志为00。经计算得知,该MAC地址表项在MAC地址表中存活的时间接近2倍老化时间阈值,即最大老化误差为agetime_threshold。对于不同的MAC地址,实际的老化时间不一样,也就是说对不同的MAC地址在MAC地址表中存活的时间不一样,这样对不同MAC地址的用户来说是不公平的。例如,若老化时间阈值为1天,那么最大老化处理的误差就为1天。即有的用户1天后MAC地址在MAC地址表中已被老化,有的用户的MAC地址2天后在MAC地址表中才被老化。也就是说有的用户1天后就不可上网,有的用户就能。

    另外,现有技术中的两种实现方法均无法根据不同的老化误差和老化精度要求,确定具体的老化处理方案,即无法根据需要对老化误差和老化精度进行调整,无法适应不同的需求。

    【发明内容】

    鉴于上述现有技术所存在的问题,本发明的目的是提供一种通信设备中定时处理表项的方法及其装置,从而提高对通信设备中各表项定时处理的精度,尤其是提供对表中相应表项进行老化处理的精度。

    本发明的目的是通过以下技术方案实现的:

    本发明所述的通信设备中定时处理表项的方法,包括:

    a、设定针对表项的定时处理周期及表项的时间标签计数值;

    b、根据设定的定时处理周期、待处理的表项数量及相应表项的时间标签计数值确定对各个表项的刷新间隔时间;

    c、根据确定的刷新间隔时间对该表中的各个表项进行刷新,并根据刷新结果进行处理。

    所述的对各个表项的刷新间隔时间为:定时处理周期除以待处理的表项数量,再除以表项的时间标签计数值。

    本发明所述的方法中,当步骤a所述的表项的定时处理周期为表项的老化时间阈值时,所述的步骤b包括:

    确定需要进行老化处理的表中包含的表项数量;

    根据老化处理精度的需求确定表中的时间标签的宽度,即表中时间标签字段所占的位数为W位(bit),且W为正整数;

    确定表项刷新间隔时间为老化时间阈值除以需要进行老化处理的表项数量,再除以时间标签计数值为2W。

    所述的步骤c为:

    以确定的表项刷新间隔时间定时依次刷新表中的各表项,并根据刷新结果对各表项进行老化处理。

    所述的步骤c进一步包括:

    c1、当基于表项刷新间隔时间建立的老化时间计数器超时时,将上次刷新的表项序号加1;

    c2、确定新的序号对应的表项包含的内容,并根据表项的内容确定是否满足老化该表项的条件,如果满足,则执行步骤c3,否则,执行步骤c4;

    c3、对该表项进行老化;

    c4、将该表项中的时间标签的计数值加1,并执行步骤c1。

    所述的步骤c1包括:

    判断基于表项刷新间隔时间建立的老化时间计数器是否超时,如果超时,则将上次刷新的表项序号加1,否则,保持当前刷新的表项序号。

    所述的步骤c2包括:

    确定新的序号对应的表项包含的内容,包括表项的有效标志、时间标签、静态表项标志;

    根据表项包含的内容判断是否满足老化该表项的条件,即:

    如果有效标志为有效、时间标签值为最大值,同时静态表项标志为无效且端口的老化使能打开,则满足老化该表项的条件,执行步骤c3;

    否则,不满足老化该表项的条件,执行步骤c4。

    所述的表项为MAC(媒体接入控制)地址表中的MAC地址表项。

    本发明所述的通信设备中定时处理表项的装置,包括:

    表项刷新控制模块:根据由定时处理周期、待处理表项数量和相应表项的时间标签宽度确定的表项刷新间隔时间产生刷新信号,并将该信号发送给表项定时处理模块;

    表项定时处理模块:接收表项定时处理控制模块发来的处理信号,并根据该信号确定需要进行处理的表项;

    老化刷新处理模块:根据表项定时处理模块确定的待处理的表项读出对应的表项的内容,并根据读出的内容对该表项进行处理。

    所述的表项刷新控制模块包括:

    老化时间计数器:进行计数并输出老化时间计数值给第一比较器;

    表项刷新间隔时间输出模块:输出表项刷新间隔时间给第一比较器;

    第一比较器:比较老化时间计数器输出的计数值与表项刷新间隔时间输出模块输出的表项刷新间隔时间进行比较,如果老化时间计数器输出的计数值小于表项刷新间隔时间时,输出选择原表项序号的信号给表项定时处理模块,如果老化时间计数器输出的计数值不小于表项刷新间隔时间时,则输出刷新表项序号信号给表项定时处理模块的选择器;

    所述的表项定时处理模块包括:

    选择器:根据第一比较器输出的信号,并选择对相应表项的处理方式,如果接收的是选择原表项序号的信号,则将保持当前表项的序号,即仍指向原表项,输出给表项刷新处理模块,如果接收到的是刷新表项序号信号,则将当前表项序号加1,即指向新的表项,输出给表项刷新处理模块;

    表项刷新处理模块:接收选择器的输出信号,并选择确定相应的表项。

    所述的表项刷新控制模块还包括:

    老化单位时间计数器:以时钟周期,即硬件的工作时钟周期为单位进行计数,并输出计数结果给第二比较器;

    单位刷新间隔时间阈值输出模块:保存着单位刷新间隔时间阈值,并将所述的单位刷新间隔时间阈值输出给第二比较器;

    第二比较器:将老化单位时间计数器的输出结果与单位刷新间隔时间阈值输出模块输出的单位刷新间隔时间阈值进行比较,并当单位刷新间隔时间阈值不大于老化单位时间计数器输出的计数值时,输出计数使能信号给表项刷新控制模块的老化时间计数器;

    所述的表项刷新处理模块包括:

    寄存器:接收表项定时处理模块中选择器的输出信号,并寄存该信号,之后输出给老化刷新处理模块。

    所述的通信设备中定时处理表项的装置还包括:

    仲裁模块:用于确定老化刷新处理模块和自学习或软件维护模块对MAC地址表进行读写操作,即老化刷新处理模块和自学习或软件维护模块分别通过仲裁模块与MAC地址表模块相连,所述的MAC地址表模块用于保存MAC地址表。

    由上述本发明提供的技术方案可以看出,本发明可以对各种的通信设备中应用的表进行相应的处理,且处理精度可以根据需要进行设置,从而可以满足各种用户的需求。本发明尤其适用于对通信设备中的表进行老化处理的情况,例如对MAC地址表的老化处理,利用本发明对MAC地址表进行老化处理时,由于处理过程利用了MAC地址表中的时间标签宽度这一参量,使得对MAC地址表的老化刷新粒度较小,因此大提高了处理精度,即使当时间标签宽度为1时,其最大误差仅为老化时间阈值的一半。而且,本发明可以通过选择表项中的时间标签宽度,灵活地调整老化处理精度,以满足允许的误差要求。

    【附图说明】

    图1为现有技术中第一种MAC地址老化处理方法的流程图;

    图2为图1中方法所应用的MAC地址表的结构图;

    图3为现有技术中第二种MAC地址老化处理方法的描述表;

    图4为图3中应用的MAC地址表的结构图;

    图5为本发明中应用的MAC地址表的结构图;

    图6为基于图5的MAC地址老化处理方法的描述表;

    图7为本发明所述的方法的流程图;

    图8为本发明所述的装置的结构示意图。

    【具体实施方式】

    本发明所述的通信设备中定时处理表项的方法及其装置的核心为:对表中的表项进行定时处理时,利用了表中的时间标签计数值参量,从而进一步提高了定时处理的精度。而且,可以通过调整时间标签的计数值大小来调整定时处理的精度,即通过调整时间标签的宽度调整定时处理的精度,如对表中表项老化处理的精度。本发明可以应用于对通信设备中各种需要定时对表中表项进行处理的情况,尤其适用于对通信设备中的表进行定时老化处理的情况,如对MAC地址表中的MAC地址表项进行老化处理等。

    现结合附图,以对通信设备中的MAC地址表中的MAC地址表项进行老化处理为例,对本发明所述的方法进行说明,如图5、图6和图7所示,本发明中所涉及的MAC地址表中各表项包含的字段如图5所示,MAC地址字段、有效标志字段、时间标签字段等,其中所述的MAC地址中n表示MAC地址表中包含的MAC地址表项个数,所述的MAC地址表一方面由自学习或软件维护过程实时对其中各表项的内容进行刷新处理,另一方面则是由老化控制部分定时对其中各表项的内容进行刷新处理;图6中给出了包括老化控制、自学习或软件维护等情况下,对MAC地址表中有效标志字段和时间标签字段的刷新处理情况,同时,还记载了相应的情况是否进行老化的状态,本发明的具体实施过程包括以下步骤:

    步骤700:设置老化时间阈值agetime_threshold,老化时间阈值即为表中表项的定时处理周期,如果需要对表中的表项进行老化处理,则该老化时间阈值为表中的表项在未被访问的情况下的存活时间,老化时间阈值的单位可以为秒、分、小时等;

    设置MAC地址表深度H,MAC地址表的深度H为MAC地址表中包含的MAC地址表项的数量,且所述的H为自然数;

    设置MAC地址表中的时间标签宽度W,时间标签宽度W是指MAC地址表的MAC地址表项中的时间标签字段所占的位数,所述的W为自然数。

    步骤710:基于步骤700设置的各参数建立相应的老化时间计数器,老化时间计数器的计数周期为:agetime_threshold/(H×2W),所述老化时间计数器的计数周期即为刷新MAC地址表中各相邻表项间的刷新间隔时间,所述的刷新间隔时间即表项刷新间隔时间;

    本发明中所采用的表项刷新间隔时间是在现有技术中所采用的刷新间隔时间的1/2W倍,较现有技术中的刷新间隔时间小很多,从而提高了老化刷新处理MAC地址表的精度,且精度可调;

    同时,为了减小老化时间计数器的宽度,节省硬件资源,还可以建立相应的老化单位时间计数器,当然如果不考虑硬件资源时,可以不建立老化单位时间计数器,所述的老化单位时间计数器的计数周期为:1/(H×2W),计数单位与老化计数器的计数周期的计数单位相同。

    步骤720:当老化时间计数器超时,即到了老化刷新处理时间时,将当前老化刷新处理的MAC地址表项序号加1,令老化刷新处理过程指向新的MAC地址表项,以便于对新的MAC地址表项进行老化刷新处理;

    步骤730:对老化刷新处理过程指向的MAC地址表项进行刷新处理,即读出新的MAC地址序号对应的MAC地址表项包含的内容,根据其中的内容对该MAC地址表项进行相应的刷新处理;

    如图6所示,具体的刷新处理过程包括以下几种情况:

    当MAC地址表项中的有效标志为1,且时间标签各位全为1时,该表项在MAC地址表中的时间为老化时间阈值,且在该时间段内该表项对应的MAC地址未被访问过,即未通过该MAC地址发送过报文,此时需要将该表项老化掉,将该MAC地址表项中的有效标志和时间标签均刷新为0,以保证报文的正常收发;

    当MAC地址表项中的有效标志为1,时间标签各位不为全1时,表示该MAC地址表项对应的MAC地址在MAC地址表中的持续未被访问时间未超过设定的老化时间阈值,则刷新时间标签,即将时间标签刷新为原来计数值加1;

    当新的MAC地址表项中的有效标志为0,则不对该表项进行刷新处理,即不该变该表项的内容;

    当老化刷新处理对应的MAC地址表项被设置为静态表项或寄存器配置不允许老化该表项,例如该MAC地址表项对应的端口配置成不允许老化等,此时即使有效标志为1,时间标签各位全为1,也不老化该表项,仅将时间标签刷新为0。

    由上述步骤700至步骤730的描述可以看出,本发明可以实现以较高的精度对MAC地址表进行老化刷新处理,且老化刷新处理精度可以通过调整时间标签宽度W进行适当地调整,以满足不同的老化刷新处理需求。本发明中,除了老化刷新处理过程对MAC地址表项中的有效标志和时间标签进行刷新处理外,当自学习或软件维护情况发生时同样将导致有效标志和时间标签刷新,具体刷新处理为:当自学习或软件维护成功时,有效标志刷新为1,对应的时间标签刷新为0,这一点与现有技术相同;与现有技术不同的是:本发明中,无论自学习或软件维护情况发生在什么时间,均不会导致同一MAC地址表中的MAC地址存活时间有较大的差异。

    本发明中,MAC地址表每两个相邻表项之间老化刷新处理的时间差为老化时间计数器的计数周期值agetime_threshold/(H×2W),从某个MAC地址表项出发,循环一圈回到该表项时经过的时间为agetime_threshold/(2W),也就是说,任一个MAC地址表项每隔时间agetime_threshold/(2W),对应表项中的时间标签计数值便需要作加1处理,直到该表项中的时间标签各位全为1时,该表项在MAC地址表中的时间为老化时间阈值agetime_thresholdt,对其进行老化处理。

    下面结合具体应用实例对利用本发明进行表项刷新处理可能产生的误差进行说明。假设自学习或软件维护刷新了某个MAC地址表项,对应有效标志为1,时间标签为0,接着本发明所述的老化刷新处理刚好也刷新该表项,刷新后对应有效标志为1,时间标签为1,同时还假设以后该MAC地址表项再也没有自学习和软件维护对其进行处理,则直到该表项时间标签各位全为1时,将该MAC地址表项自动老化掉,此时,该表项在MAC地址表中的存活时间为:agetime_threshold减去agetime_threshold/(2W),即老化误差为agetime_threshold/2W,也就是说最大误差为从一个表项出发循环一圈回到原表项的时间。因此,与现有技术相比(现有技术的最大老化误差为agetime_threshold),利用本发明进行表项的老化刷新处理所产生的误差较小,而且,误差的大小还可以通过调整时间标签宽度W进行调整,即采用的时间标签宽度W越大,则产生的误差便越小。

    基于上述方法,本发明还提供了一种通信设备中定时处理表项的装置,具体结构如图8虚线框中所示,具体包括表项刷新控制模块、表项定时处理模块和老化刷新处理模块,各个模块的具体结构描述如下:

    表项刷新控制模块:根据由定时处理周期、待处理表项数量和相应表项的时间标签宽度确定的表项刷新间隔时间产生刷新信号,并将该信号发送给表项定处理模块;

    如图8虚线框中所示,所述的表项刷新控制模块进一步包括:

    老化时间计数器:进行计数并输出老化时间计数值给第一比较器;

    表项刷新间隔时间输出模块:输出表项刷新间隔时间值(即老化阈值时间agetime_threshold)给第一比较器;

    第一比较器:比较老化时间计数器输出的计数值与表项刷新间隔时间输出模块输出的表项刷新间隔时间进行比较,并输出老化刷新指示信号(即选择信号)给选择器和老化刷新处理模块,如果老化时间计数器输出的计数值小于表项刷新间隔时间时,输出选择原表项序号的信号给表项定时处理模块的选择器,如果老化时间计数器输出的计数值不小于表项刷新间隔时间时,则输出刷新表项序号信号给表项定时处理模块的选择器;

    为了减小老化时间计数器的宽度,节省硬件资源,所述的表项刷新处理模块还包括:

    老化单位时间计数器:以时钟周期(即硬件的工作时钟周期)为单位进行计数,并输出计数结果给第二比较器;

    单位刷新间隔时间阈值输出模块:保存着一个单位刷新间隔时间阈值(即1/(H×2W),单位为老化阈值时间的单位),并将所述的单位刷新间隔时间阈值输出给第二比较器;

    第二比较器:将老化单位时间计数器的输出结果与单位刷新间隔时间阈值输出模块输出的单位刷新间隔时间阈值进行比较,并当单位刷新间隔时间阈值不大于老化单位时间计数器输出的计数值时,输出计数使能信号给老化时间计数器,触发老化时间计数器开始计数。

    表项定时处理模块:则用于接收表项定时处理控制模块发来的处理信号,并根据该信号确定需要进行处理的表项。

    如图8虚线框中所示,所述的表项定时处理模块包括:

    选择器:根据第一比较器输出的信号,并选择对相应表项的处理方式,如果接收的是选择原表项序号的信号,则将保持当前表项的序号,即仍指向原表项,输出给表项刷新处理模块,如果接收到的是刷新表项序号信号,则将当前表项序号加1,即指向新的表项,输出给表项刷新处理模块;

    表项刷新处理模块:接收选择器的输出信号,并选择确定相应的表项,以便于对新的MAC地址表项进行老化刷新处理。

    如图8虚线框中所示,所述的表项刷新处理模块又进一步包括:

    寄存器:接收表项定时处理模块中选择器的输出信号,并寄存该信号,之后输出给老化刷新处理模块,通知MAC地址表项老化刷新处理过程指向的MAC地址表中的MAC地址表项序号;

    老化刷新处理模块:根据老化刷新指示信号(即选择信号)和表项刷新处理模块确定的待老化刷新处理的表项,并从MAC地址表模块中读出对应老化表项的内容,即有效标志和时间标签,并根据读出的内容对该表项进行老化刷新;

    所述的的MAC地址表模块用于保存MAC地址表;

    老化刷新处理模块针对MAC地址表项的具体处理过程为:有效标志为1,时间标签各位不为全1,则刷新时间标签,即时间标签为原来值加1写回到表项中;时间标签各位全1,则该表项需要老化,则刷新有效标志和时间标签,即写回表项的内容都为0;如果读出新地址对应的MAC地址表项内容中对应的有效标志为0,则不刷新,即不改变该表项的内容;

    当老化刷新对应的表项中设置为静态表项或寄存器配置不允许老化(如对应的端口配置成不允许老化等),如果此时有效标志为1,时间标签各位全为1,则不老化该表项,仅令时间标签为0。

    本发明中除老化刷新处理模块需要对MAC地址表进行老化刷新处理外,自学习或软件维护模块也需要对MAC地址表进行操作,当自学习或软件维护模块操作成功时,对应MAC地址表基的有效标志刷新为1,对应的时间标签刷新为0。由于MAC地址表只有一个,所以必定存在两个模块抢占MAC地址表的情况,即同时读取MAC地址表中表项的情况,所以必须有一个仲裁模块来决定那个模块对MAC地址表进行操作,因此,如图8所示,本发明还包括仲裁模块:用于确定老化刷新处理模块和自学习或软件维护模块对MAC地址表进行读写操作;即老化刷新处理模块和自学习或软件维护模块分别通过仲裁模块与MAC地址表模块相连,以对MAC地址表模块所保存的MAC地址表进行相应的操作。

通信设备中定时处理表项的方法及其装置.pdf_第1页
第1页 / 共25页
通信设备中定时处理表项的方法及其装置.pdf_第2页
第2页 / 共25页
通信设备中定时处理表项的方法及其装置.pdf_第3页
第3页 / 共25页
点击查看更多>>
资源描述

《通信设备中定时处理表项的方法及其装置.pdf》由会员分享,可在线阅读,更多相关《通信设备中定时处理表项的方法及其装置.pdf(25页珍藏版)》请在专利查询网上搜索。

本发明涉及一种通信设备中定时处理表项的方法及其装置。本发明主要为:对表中的表项进行定时处理时利用了表项中的时间标签计数值参量,从而进一步提高了定时处理的精度;而且,可以通过调整时间标签的计数值大小(即时间标签宽度)来调整定时处理的精度。因此,本发明可以更好地满足各种用户对定时处理表项的精度需求。本发明尤其适用于对通信设备中的表进行老化处理,例如,利用本发明对MAC地址表进行老化处理时,即使处理过程。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1