终端接入数量控制方法和系统的制作方法
【专利摘要】本发明涉及网络【技术领域】。本发明针对现有分布式设备不能准确限制终端接入数目,造成终端接入数目超过限制的问题,公开了一种终端接入数量控制方法,主要步骤包括,转发平面周期性读取端口的介质访问控制MAC地址数,并将读取的MAC地址数通知给控制平面;控制平面提取出报文的MAC地址后,查看转发表中有没有记录,并判断端口的MAC地址数是否达到限制值;如是,则关闭源MAC查找失败时上送控制平面的控制开关,阻止报文的处理。否则,打开源MAC查找失败时上送控制平面的开关,以便控制平面能处理报文。本发明同时公开了终端接入数量控制系统。本发明能准确地控制端口接入终端的数目,减少了报文对控制平面的冲击,节约了控制平面处理器资源。
【专利说明】终端接入数量控制方法和系统
【技术领域】
[0001]本发明涉及网络【技术领域】,特别涉及分布式交换机设备上准确限制端口接入终端数目的方法和系统。
【背景技术】
[0002]随着网络技术的发展,对设备的利用率的要求也越来越高。对于现在的交换设备来说,要求其能接入足够多的终端,较强的转发能力。当接入的终端数目过多后,会导致网络资源被过度占用,一些需要网络带宽的终端由于得不到足够的带宽,导致网速过慢,影响了用户的使用。
[0003]这种问题在分布式设备上就更为明显。分布式设备一般作为中高端设备,在局域网中应用于汇聚级接入层,其连接的终端数是很多的。在分布式设备上,大量终端设备的接入会存在两个明显问题:一是由于数据报文一直上数据控制平面,会消耗大量的处理器资源,不能适应网络规模、攻击流量增长的情况,对设备控制平面正常运行也构成了极大隐患。二是不能准确限制终端接入的数目,往往会造成终端接入数目超过限制的情况。
【发明内容】
[0004]本发明的目的就是提供一种通过软件方法在分布式设备上限制终端接入数目的方法,限制终端设备接入数量。
[0005]本发明解决所述技术问题,采用的技术方案是,终端接入数量控制方法,包括步骤:
[0006]a、转发平面周期性读取端口的介质访问控制MAC地址数;
[0007]b、将读取的MAC地址数通知给控制平面;
[0008]C、控制平面收到转发平面通知的MAC地址数后,更新端口的MAC地址数,并判断端口的MAC地址数是否超过限制值,如是,则关闭源MAC查找失败时上送控制平面的控制开关,并关闭控制平面处理报文;否则,开启源MAC查找失败时上送控制平面的控制开关;
[0009]d、控制平面收到报文后提取出MAC地址和虚拟局域网号VLAN ID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文,否则,进入步骤e ;
[0010]e、判断端口的MAC地址数是否超过限制值,如果未超过,则将此MAC地址和VLANID写入MAC地址转发表中,并更新端口 MAC地址数目;同时判断更新后的端口 MAC地址数是否超过限制值,如果超过,关闭源MAC查找失败时上送控制平面的控制开关。
[0011]进一步的,步骤a之前还包括步骤:
[0012]aO、转发平面通知控制平面准备读取MAC地址数,在收到控制平面回应后,进入步骤a。
[0013]进一步的,控制平面收到开始读取MAC地址数通知后,停止处理该端口上的上送报文。
[0014]具体的,所述停止处理该端口上的上送报文,包括关掉该端口的MAC地址硬件学习功能。
[0015]具体的,步骤a中,从交换芯片中读取端口的MAC地址数。
[0016]本发明的另一个目的是,提供一种终端接入数量控制系统,其特征在于,包括端口数目检测模块和控制模块:
[0017]所述端口数目检测模块,用于转发平面周期性读取端口的介质访问控制MAC地址数,并将读取的MAC地址数通知给控制平面;
[0018]所述控制模块,用于控制平面收到报文后提取出MAC地址和虚拟局域网号VLANID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文;否则,判断端口的MAC地址数是否达到限制值;如果未达到,将此MAC地址和VLAN ID写入MAC地址转发表中,并更新端口 MAC地址数目;否则,直接丢弃报文;控制平面在更新端口 MAC地址数后,判断端口的MAC地址数是否超过限制值;如是,则关闭源MAC查找失败时上送控制平面的控制开关,否则,打开源MAC查找失败时上送控制平面的开关,以便控制平面能处理报文。
[0019]进一步的,所述端口数目检测模块,还用于通知控制平面准备读取MAC地址数,在收到控制平面回应后,开始读取端口的MAC地址数。
[0020]进一步的,所述控制模块进一步用于收到开始读取MAC地址数通知后,停止处理该端口上的上送报文。
[0021]具体的,所述停止处理该端口上的上送报文,包括关掉该端口的MAC地址硬件学习功能。
[0022]具体的,所述端口数目检测模块,从交换芯片中读取端口的MAC地址数。
[0023]本发明的有益效果是,能准确地控制端口接入终端的数目,减少了报文对控制平面的冲击,节约了控制平面处理器资源。
【专利附图】
【附图说明】
[0024]图1是线卡处理流程不意图;
[0025]图2是控制平面处理流程不意图;
[0026]图3是软件模块结构示意图。
【具体实施方式】
[0027]下面结合附图及【具体实施方式】,详细描述本发明的技术方案。
[0028]本发明从架构上分包含两个层面:控制平面(或主控卡)和线卡。控制平面负责处理报文,查询与添加动态MAC (Media Access Control)地址,打开与关闭端口的MAC地址硬件学习功能,打开与关闭源MAC查找失败时上送控制平面的控制开关。线卡则负责周期性地去查询芯片中端口下动态MAC地址数目,并通知给控制平面。
[0029]在控制平面上,如果启用限制功能,会关掉该端口的MAC地址硬件学习功能。如果端口 MAC地址数目未超过限制值,打开源MAC查找失败时将报文上送给控制平面的开关。这样新的接入终端的报文就会上控制平面,控制平面就能对报文作处理了。如果端口动态MAC地址超过了限制值,控制平面关闭源MAC查找失败时将报文上送给控制平面的开关。这样,新的终端的报文就不会上控制平面了,节省了控制平面处理器资源。
[0030]在线卡上,周期性从交换芯片中读取端口的动态MAC地址数目。在读取前,会通知控制平面其要开始读取MAC地址数目了。控制平面收到线卡的通知后,会停止写入新的动态MAC地址。线卡在读取MAC地址数目完成后,将此MAC地址数目通知给控制平面,控制平面收到该MAC地址数目后,会开启新MAC地址写入的操作,更新端口动态MAC地址数。
[0031]当终端的MAC地址存在于芯片的MAC地址转发表中时,其报文能进行转发,否则,不进行转发。当端口下动态MAC地址数目达到限制值后,终端的MAC存在于MAC地址转发表中的能进行通信,其它的终端则不能,以此达到限制端口下终端接入数目的目的。
[0032]本发明具体处理流程包括线卡处理流程和控制平面处理流程。
[0033]线卡具体处理流程如图1所示,包括:
[0034]第I步,新周期到期后,通知控制平面其要开始读取MAC地址数了。
[0035]第2步,在收到控制平面回应后,到交换芯片中读取端口 MAC地址数,并将此MAC地址数目通知给控制平面。如果未收到控制平面的应答,则不做后续的处理。
[0036]第3步,过一个周期后,再执行第I步,以此循环。
[0037]控制平面处理流程如图2所示,包括:
[0038]第I步,控制平面收到线卡开始读取MAC地址数通知后,停止处理该端口上的上送报文。通过设置交换芯片,关掉该端口的MAC地址硬件学习功能。
[0039]第2 步,收到报文后,提取出 MAC 与 VLAN (Virtual Local Area Network),并到 MAC地址转发表中查找是否存在该表项,如果存在,则转发报文。否则,将此MAC与VLAN写入以动态表项形式写入MAC地址转发表中,并更新端口 MAC地址数目,进入第3步。
[0040]第3步,判断端口的MAC地址数是否超过限制值,如果超过,则关闭源MAC查找失败时上送控制平面的控制开关,并关闭控制平面处理报文;否则,开启源MAC查找失败时上送控制平面的控制开关。
[0041]第4步,控制平面收到报文后提取出MAC地址和VLAN ID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文,否则进入第5步。
[0042]第5步,判断端口的MAC地址数是否超过限制值,如果未超过,则将此MAC地址和VLAN ID写入MAC地址转发表中,并更新端口 MAC地址数目;同时判断更新后的端口 MAC地址数是否超过限制值,如果超过,关闭源MAC查找失败时上送控制平面的控制开关。
[0043]本发明的终端接入数量控制系统结构如图3所示,包括端口数目检测模块和控制模块。
[0044]所述端口数目检测模块,用于通知控制平面准备读取MAC地址数,在收到控制平面回应后,开始从交换芯片中读取端口的MAC地址数,并用于转发平面周期性读取端口的介质访问控制MAC地址数,并将读取的MAC地址数通知给控制平面。
[0045]所述控制模块,用于收到开始读取MAC地址数通知后,停止处理该端口上的上送报文,包括关掉该端口的MAC地址硬件学习功。所述控制模块并用于控制平面收到报文后提取出MAC地址和虚拟局域网号VLAN ID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文;否则,判断端口的MAC地址数是否达到限制值;如果未达到,将此MAC地址和VLAN ID写入MAC地址转发表中,并更新端口 MAC地址数目;否则,直接丢弃报文;控制平面在更新端口 MAC地址数后,会判断端口的MAC地址数是否超过限制值;如是,则关闭源MAC查找失败时上送控制平面的控制开关,否则,打开源MAC查找失败时上送控制平面的开关,以便控制平面能处理报文。
【权利要求】
1.终端接入数量控制方法,包括步骤: a、转发平面周期性读取端口的介质访问控制MAC地址数; b、将读取的MAC地址数通知给控制平面; C、控制平面收到转发平面通知的MAC地址数后,更新端口的MAC地址数,并判断端口的MAC地址数是否超过限制值,如是,则关闭源MAC查找失败时上送控制平面的控制开关,并关闭控制平面处理报文;否则,开启源MAC查找失败时上送控制平面的控制开关; d、控制平面收到报文后提取出MAC地址和虚拟局域网号VLANID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文,否则,进入步骤e ; e、判断端口的MAC地址数是否超过限制值,如果未超过,则将此MAC地址和VLANID写入MAC地址转发表中,并更新端口 MAC地址数目;同时判断更新后的端口 MAC地址数是否超过限制值,如果超过,关闭源MAC查找失败时上送控制平面的控制开关。
2.根据权利要求1所述的终端接入数量控制方法,其特征在于,步骤a之前还包括步骤: aO、转发平面通知控制平面准备读取MAC地址数,在收到控制平面回应后,进入步骤a。
3.根据权利要求2所述的终端接入数量控制方法,其特征在于,控制平面收到开始读取MAC地址数通知后,停止处理该端口上的上送报文。
4.根据权利要求3所述的终端接入数量控制方法,其特征在于,所述停止处理该端口上的上送报文,包括关掉该端口的MAC地址硬件学习功能。
5.根据权利要求1所述的终端接入数量控制方法,其特征在于,步骤a中,从交换芯片中读取端口的MAC地址数。
6.终端接入数量控制系统,其特征在于,包括端口数目检测模块和控制模块: 所述端口数目检测模块,用于转发平面周期性读取端口的介质访问控制MAC地址数,并将读取的MAC地址数通知给控制平面; 所述控制模块,用于控制平面收到报文后提取出MAC地址和虚拟局域网号VLAN ID,并到MAC地址转发表中查找是否存在该表项,如果存在,则转发报文;否则,判断端口的MAC地址数是否达到限制值;如果未达到,将此MAC地址和VLAN ID写入MAC地址转发表中,并更新端口 MAC地址数目;否则,直接丢弃报文;控制平面在更新端口 MAC地址数后,判断端口的MAC地址数是否超过限制值;如是,则关闭源MAC查找失败时上送控制平面的控制开关,否则,打开源MAC查找失败时上送控制平面的开关,以便控制平面能处理报文。
7.根据权利要求6所述的终端接入数量控制系统,其特征在于,所述端口数目检测模块,还用于通知控制平面准备读取MAC地址数,在收到控制平面回应后,开始读取端口的MAC地址数。
8.根据权利要求7所述的终端接入数量控制系统法,其特征在于,所述控制模块进一步用于收到开始读取MAC地址数通知后,停止处理该端口上的上送报文。
9.根据权利要求8所述的终端接入数量控制系统,其特征在于,所述停止处理该端口上的上送报文,包括关掉该端口的MAC地址硬件学习功能。
10.根据权利要求6所述的终端接入数量控制系统,其特征在于,所述端口数目检测模块,从交换芯片中读取端口的MAC地址数。
【文档编号】H04L12/911GK103957166SQ201410187185
【公开日】2014年7月30日 申请日期:2014年5月6日 优先权日:2014年5月6日
【发明者】王文科 申请人:迈普通信技术股份有限公司