一种gvrp系统的定时器控制方法

文档序号:7823586阅读:485来源:国知局
一种gvrp系统的定时器控制方法
【专利摘要】本发明公开了一种GVRP系统的定时器控制方法,通过GARP实体在其报文信息中扩展设置四种定时器的属性信息,当交换机与GARP实体进行通讯时,交换机通过判断GARP实体的报文信息中的定时器信息,从而设置交换机内部四种定时器的属性取值与GARP实体的属性取值保持一致,使得参与GVRP协议的多个GARP实体与交换机之间维持相同的定时器配置,能够保持GVRP系统中虚拟局域网配置稳定。本发明提供的一种基于GVRP协议下GARP实体的定时器控制方法能够避免GVRP系统的虚拟局域网环境的震荡,以此提高GVRP系统性能及用户体验。
【专利说明】一种GVRP系统的定时器控制方法

【技术领域】
[0001]本发明涉及GARP定时器配置方法,具体涉及一种GVRP系统的定时器控制方法。

【背景技术】
[0002]通用属性注册协议(GenericAttribute Registrat1n Protocol,简称GARP)。它为处于同一个交换网内的交换成员之间提供了分发、传播、注册某种信息(组播MAC地址、和VLAN等属性)的手段。通过GARP机制,一个GARP成员上的配置信息会迅速传播到整个交换网。
[0003]GARP本身仅仅是一个协议规范,不作为一个实体在交换机中存在。遵循GARP协议的应用实体称为GARP应用,目前主要的GARP应用为GVRP和GMRP。协议在交换机中的存在是通过各种GARP应用体现出来。
[0004]GVRP (GARP VLAN Registrat1n Protocol — 802.1P,802.1Q)支持设备之间VLAN信息的传播服务。在启用GVRP应用中,能够手工配置一台交换机的VLAN信息,该网络中的其它所有交换机能够动态了解那些VLAN的情况。终端节点可以接入任何交换机并且连接到所需的VLAN上。终端要使用GVRP就需要安装GVRP兼容的网络接口卡(Network Interface Card,简称NIC)。GVRP兼容的NIC可以配置加入到所需的VLAN或VLAN,然后接入一个GVRP-enabled交换机。NIC与交换机之间建立通信连接,并在两者之间实现了 VLAN连通性,实现了 vlan的自动化配置,减少手工配置管理的工作量。
[0005]在GVRP协议中,规定了 4类定时器:GARP协议定义了四种定时器维持状态机的变化、协议消息的发送、属性的注册、注销等动作。四种定时器分别为:Hold定时器、Join定时器、Leave定时器和LeaveAll定时器。其中LeaveAll定时器为全局控制的定时器,其它三个定时器和每个端口相关。一个GARP协议应用实体只要管理一个LeaveAll定时器,但是有多个参与端口就要有相应多个的Hold定时器、Join定时器和Leave定时器。GARP协议所使用的定时器的单位为厘秒(centsecond)。


【发明内容】

[0006]本发明的目的在于提供一种GVRP系统的定时器控制方法,通过GARP实体在其报文信息中扩展设置四种定时器的属性信息,当交换机与GARP实体进行通讯时,交换机通过判断GARP实体的报文信息中的定时器信息,从而设置交换机内部四种定时器的属性取值与GARP实体的属性取值保持一致,使得参与GVRP协议的多个GARP实体与交换机之间维持相同的定时器配置,能够保持GVRP系统中虚拟局域网配置稳定。本发明提供的一种基于GVRP协议下GARP实体的定时器控制方法能够避免GVRP系统的虚拟局域网环境的震荡,以此提高GVRP系统性能及用户体验。
[0007]为了达到上述目的,本发明通过以下技术方案实现:
一种GVRP系统,其特点是,该GVRP系统包含:
多个GARP实体,每个所述GARP实体用于分发、注册和传播信息; 交换机,分别与所述多个GARP实体进行通讯。
[0008]优选地,每个所述GARP实体包含:
第一处理模块,设置在所述GARP实体内;
网络接口模块,设置在所述GARP实体内,与所述第一处理模块连接,并与所述交换机进行通讯;
第一 Hold定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接;
第一 Join定时器,设置在所述GARP实体内,并与所述第一 Hold定时器、第一处理模块连接;
第一 Leave定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接;
第一 Leaveall定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接。
[0009]优选地,当GARP实体通过网络接口模块获取交换机传来的注册信息时,启动第一Hold定时器,当该第一 Hold定时器超时,控制第一处理模块将此阶段内收到的所有注册信息生成一个join信息,并通过网络接口模块发送至交换机;
为了确保的join信息能够通过交换机传输至其他GARP实体,当GARP实体通过网络接口模块获取交换机传来的注册信息时,同时启动第一 Join定时器,当该第一 Join定时器超时,控制第一处理模块将join信息通过网络接口模块再次发送至交换机;
当GARP实体通过网络接口模块获取交换机传来的其他GARP实体发送的leave信息时,启动第一 Leave定时器,在该第一 Leave定时器超时之前没有收到任何join信息,贝Ij当到达该第一 Leave定时器定时时长时,控制第一处理模块注销该GARP实体内leave信息中的所有属性信息;
当GARP实体启动时,控制第一 Leaveall定时器启动,当该第一 Leaveall定时器超时后,控制第一处理模块通过网络接口模块向交换机发送Ieaveall信息,确保其他GARP实体重新注册该GARP实体的所有属性信息。
[0010]优选地,所述交换机包含:
第二处理模块,设置在所述交换机内部;
第二 Hold定时器,设置在所述交换机内,与第二处理模块连接;
第二 Join定时器,设置在所述交换机内,与所述第二 Hold定时器、第二处理模块连接;
第二 Leave定时器,设置在所述交换机内,与所述第二处理模块连接;
第二 Leaveall定时器,设置在所述交换机内,与所述第二处理模块连接。
[0011]一种GVRP系统的定时器控制方法,其特点是,该控制方法包含如下步骤:
SI,交换机获取与其通讯的所有GARP实体的报文信息;
S2,所述交换机分别解析、判断获取的每个报文信息中的定时器属性信息。
[0012]优选地,在所述步骤SI之前还包含:
每个所述GARP实体的第一处理模块设置报文信息,所述报文信息包含:协议ID、多个消息和结束标志;每个消息由属性类型和属性列表组成,每个属性列表有多个属性和结束标志组成;每个属性包含:属性长度、属性事件及属性取值;
所述第一处理模块在所述报文信息中分别设置该GARP实体的第一 Hold定时器的属性、第一 Join定时器的属性、第一 Leave定时器的属性及第一 Leaveall定时器的属性。
[0013]优选地,
所述GARP实体的第一处理模块设定的第一 Hold定时器的属性包含:属性长度为L,属性事件为He,属性取值为VHl ;
该GARP实体的第一处理模块设定的第一 Join定时器的属性包含:属性长度为L,属性事件为Je,属性取值为VJl ;
该GARP实体的第一处理模块设定的第一 Leave定时器的属性包含:属性长度为L,属性事件为Le,属性取值为VLl ;
该GARP实体的第一处理模块设定的第一 Leaveall定时器的属性包含:属性长度为L,属性事件为LAe,属性取值为VLAl。
[0014]优选地,在所述步骤SI之前还包含:
所述交换机的第二处理模块设置其内部的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性。
[0015]优选地,
所述交换机的第二处理模设定的第二 Hold定时器的属性包含:属性长度为Ls,属性事件为He,属性取值为VH2 ;
该交换机的第二处理模设定的第二 Join定时器的属性包含:属性长度为Ls,属性事件为Je,属性取值为VJ2 ;
该交换机的第二处理模设定的第二 Leave定时器的属性包含:属性长度为Ls,属性事件为Le,属性取值为VL2 ;
该交换机的第二处理模设定的第二 Leaveall定时器的属性包含:属性长度为Ls,属性事件为LAe,属性取值为VLA2。
[0016]优选地,所述步骤SI包含如下步骤:
每个所述GARP实体的第一处理模块将设置后的报文信息通过网络接口模块发送至与该GARP实体通讯的所述交换机的第二处理模块。
[0017]优选地,所述步骤S2包含如下步骤:
S2.1,所述交换机的第二处理模块解析所有GARP实体的报文信息,并获取每个GARP实体的第一 Hold定时器的属性、第一 Join定时器的属性、第一 Leave定时器的属性及第一Leaveall定时器的属性;
S2.2,所述第二处理模块判断解析到的报文信息中的属性事件值是否为He、Je, Le或LAe,当所述报文信息中的属性事件值为上述值之一时,跳转至步骤S2.3 ;
S2.3,所述交换机获取的所述GARP实体的定时器属性事件值是否与该交换机的的定时器属性事件值一致。
[0018]优选地,所述步骤S2.2包含:
S2.2.1,当所述第二处理模块判断解析到的报文信息中的属性事件值为He、Je, Le或LAe时,该第二处理模块调用交换机的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性,判断所述GARP实体的定时器属性是否与该交换机的定时器属性一致,跳转至所述步骤S2.3 ;
S2.2.2,当所述交换机判断解析到的报文信息中的属性事件值其他值时,根据该报文信息的其他属性事件情况处理,结束。
[0019]优选地,所述步骤S2.3包含:
S2.3.1,当所述第二处理模块获取的属性事件值为LAe时,判断所述GARP实体的第一Leaveall定时器的属性取值VLAl是否与所述第二 Leaveall定时器的属性取值VLA2—致;S2.3.2,当所述交换机获取的属性事件值为Le时,判断所述GARP实体的第一 Leave定时器的属性取值VLl是否与所述第二 Leave定时器的属性取值VL2 —致;
S2.3.3,当所述交换机获取的属性事件值为Je时,判断所述GARP实体的第一 Join定时器的属性取值VJl是否与所述第二 Join定时器的属性取值VJ2 —致;
S2.3.4,当所述交换机获取的属性事件值为He时,判断所述GARP实体的第一 Hold定时器的属性取值VHl是否与所述第二 Hold定时器的属性取值VH2 —致。
[0020]优选地,所述S2.3.1包含:
S2.3.1.1,当所述GARP实体的第一 Leaveall定时器的属性取值VLAl小于所述第二Leaveall定时器的属性取值VLA2时,所述第二处理模块将该第二 Leaveall定时器的属性取值设为VLAl,结束;
S2.3.1.2,当所述GARP实体的第一 Leaveall定时器的属性取值VLAl大于所述第二Leaveall定时器的属性取值VLA2时,将所述第二 Leaveall定时器的属性取值保持不变,结束。
[0021]优选地,所述步骤S2.3.2包含:
S2.3.2.1,当所述GARP实体的第一 Leave定时器的属性取值VLl小于所述第二 Leave定时器的属性取值VL2时,所述第二处理模块将该第二 Leave定时器的属性取值设为VL1,结束;
S2.3.2.2,当所述GARP实体的第一 Leave定时器的属性取值VLl大于所述第二 Leave定时器的属性取值VL2时,将所述第二 Leave定时器的属性取值保持不变,结束。
[0022]优选地,所述步骤S2.3.3包含:
S2.3.3.1,当所述GARP实体的第一 Join定时器的属性取值VJl小于所述第二 Join定时器的属性取值VJ2时,所述交换机将该第二 Join定时器的属性取值设为VJl,结束;
S2.3.3.2,当所述GARP实体的第一 Join定时器的属性取值VJl大于所述第二 Join定时器的属性取值VJ2时,将所述第二 Join定时器的属性取值保持不变,结束。
[0023]优选地,所述步骤S2.3.4包含:
S2.3.4.1,当所述GARP实体的第一 Hold定时器的属性取值VHl小于所述第二 Hold定时器的属性取值VH2时,所述交换机将该第二 Hold定时器的属性取值设为VHl,结束;
S2.3.4.2,当所述GARP实体的第一 Hold定时器的属性取值VHl大于所述第二 Hold定时器的属性取值VH2时,将所述第二 Hold定时器的属性取值保持不变,结束。
[0024]本发明与现有技术相比具有以下优点:
本发明提供的一种基于GVRP协议下GARP实体的定时器控制方法,增加了 GVRP系统运行的健壮性、稳定性;避免了由于GARP实体的定时器参数与交换机的定时器参数不一致时,GVRP系统的虚拟局域网环境在配置时产生的震荡,以此提高GVRP系统性能及用户体验。

【专利附图】

【附图说明】
[0025]图1为本发明一种GVRP系统的定时器控制方法的GARP实体结构示意图。
[0026]图2为本发明一种GVRP系统的定时器控制方法的整体流程图。
[0027]图3为本发明一种GVRP系统的定时器控制方法的具体流程示意图。
[0028]图4为本发明一种GVRP系统的定时器控制方法的实施例示意图。

【具体实施方式】
[0029]以下结合附图,通过详细说明一个较佳的具体实施例,对本发明做进一步阐述。
[0030]一种GVRP系统,该GVRP系统包含:多个GARP实体、交换机。其中,交换机分别与多个GARP实体进行通讯。每个GARP实体用于分发、注册和传播信息。
[0031]如图1所示,每个GARP实体包含设置在GARP实体内的:第一处理模块1、网络接口模块2、第一 Hold定时器3、第一 Join定时器4、第一 Leave定时器5及第一 Leaveall定时器6。
[0032]其中,网络接口模块2与第一处理模块I连接,并与交换机进行通讯。第一 Hold定时器3与网络接口模块2、第一处理模块I连接。第一 Join定时器4与第一 Hold定时器3、第一处理模块I连接。第一 Leave定时器5与网络接口模块2、第一处理模块I连接。第一 Leaveall定时器6与网络接口模块2、第一处理模块I连接。
[0033]交换机包含设置在交换机内部的:第二处理模块、第二 Hold定时器、第二 Join定时器、第二 Leave定时器及第二 Leaveall定时器。
[0034]其中,第二 Hold定时器与第二处理模块连接;第二 Join定时器与第二 Hold定时器、第二处理模块连接;第二 Leave定时器与第二处理模块连接;第二 Leaveall定时器与第二处理模块连接。
[0035]本发明中,当GARP实体通过网络接口模块2获取交换机传来的注册信息时,启动第一 Hold定时器3,当该第一 Hold定时器3超时,控制第一处理模块I将此阶段内收到的所有注册信息生成一个join信息,并通过网络接口模块2发送至交换机。
[0036]本实施例中,该join信息类型为PDU报文信息。
[0037]为了确保的join信息能够通过交换机传输至其他GARP实体,当GARP实体通过网络接口模块2获取交换机传来的注册信息时,同时启动第一 Join定时器4,当该第一 Join定时器4超时,控制第一处理模块I将join信息通过网络接口模块2再次发送至交换机。
[0038]当GARP实体通过网络接口模块2获取交换机传来的其他GARP实体发送的leave信息时,启动第一 Leave定时器5,在该第一 Leave定时器5超时之前没有收到任何join信息,则当到达该第一 Leave定时器5定时时长时,控制第一处理模块I注销该GARP实体内leave信息中的所有属性信息;
当GARP实体启动时,控制第一 Leaveall定时器6启动,当该第一 Leaveall定时器6超时后,控制第一处理模块I通过网络接口模块2向交换机发送Ieaveall信息,确保其他GARP实体重新注册该GARP实体的所有属性信息。
[0039]如图2所示。一种基于GVRP协议下GARP实体的定时器控制方法,该控制方法包含如下步骤:
SI,交换机获取与其通讯的所有GARP实体的报文信息。该步骤SI包含如下步骤:每个GARP实体的第一处理模块I将设置后的报文信息通过网络接口模块2发送至与该GARP实体通讯的交换机的第二处理模块。
[0040]在步骤SI之前还包含两个步骤,分别是:
步骤一:每个GARP实体的第一处理模块I设置报文信息。
[0041]如图4所示,GARP实体的报文信息为PDU报文,该PDU报文信息包含:协议ID、多个消息和结束标志;每个消息由属性类型和属性列表组成,每个属性列表有多个属性和结束标志组成;每个属性包含:属性长度、属性事件及属性取值。
[0042]第一处理模块I在报文信息中分别设置该GARP实体的第一 Hold定时器3的属性、第一 Join定时器4的属性、第一 Leave定时器5的属性及第一 Leaveall定时器6的属性。
[0043]每个GARP实体的第一处理模块I设定的第一 Hold定时器3的属性包含:属性长度为L,属性事件为He,属性取值为VHl。本实施例中,L=4,H e =7, VHl=1则第一 Hold定时器3的定时时长为0.1s。
[0044]该GARP实体的第一处理模块I设定的第一 Join定时器4的属性包含:属性长度为L,属性事件为Je,属性取值为VJl。本实施例中,L=4, Je=8,VHl=2?则第一 Join定时器4的定时时长为0.2s。
[0045]该GARP实体的第一处理模块I设定的第一 Leave定时器5的属性包含:属性长度为L,属性事件为Le,属性取值为VLl。本实施例中,L=4, Le=9, VH1=6。则第一 Leave定时器5的定时时长为0.6s。
[0046]该GARP实体的第一处理模块I设定的第一 Leaveall定时器6的属性包含:属性长度为L,属性事件为LAe,属性取值为VLAl。本实施例中,L=4,LAe=6,VH1=100。则第一Leaveall定时器6的定时时长为10s。
[0047]步骤二:交换机的第二处理模块设置其内部的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性。
[0048]本实施例中,交换机的第二处理模设定的第二 Hold定时器的属性包含:属性长度为Ls,属性事件为He,属性取值为VH2。
[0049]该交换机的第二处理模设定的第二 Join定时器的属性包含:属性长度为Ls,属性事件为Je,属性取值为VJ2。
[0050]该交换机的第二处理模设定的第二 Leave定时器的属性包含:属性长度为Ls,属性事件为Le,属性取值为VL2。
[0051]该交换机的第二处理模设定的第二 Leaveall定时器的属性包含:属性长度为Ls,属性事件为LAe,属性取值为VLA2。
[0052]如图3所示,S2,交换机分别解析、判断获取的每个报文信息中的定时器属性信息。该步骤S2包含如下步骤:
S2.1,交换机的第二处理模块解析所有GARP实体的报文信息,并获取每个GARP实体的第一 Hold定时器3的属性、第一 Join定时器4的属性、第一 Leave定时器5的属性及第一Leaveall定时器6的属性。
[0053]S2.2,第二处理模块判断解析到的报文信息中的属性事件值是否为He、Je, Le或LAe,当报文信息中的属性事件值为上述值之一时,跳转至步骤S2.3。该步骤S2.2包含:S2.2.1,当第二处理模块判断解析到的报文信息中的属性事件值为He、Je, Le或LAe时,该第二处理模块调用交换机的第二 Hold定时器的属性、第二 Join定时器的属性、第二Leave定时器的属性及第二 Leaveall定时器的属性,判断GARP实体的定时器属性是否与该交换机的定时器属性一致,跳转至步骤S2.3。
[0054]本实施例中,当解析到的PDU报文信息中的属性事件值为6,7,8或9时,交换机的第二处理模块调用交换机的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性。
[0055]S2.2.2,当交换机判断解析到的报文信息中的属性事件值其他值时,根据该报文信息的其他属性事件情况处理,结束。
[0056]本实施例中,当解析到的PDU报文信息中的属性事件值为0,I,2,3,4或5时,第二处理模块判断该属性事件表示其他事件,第二处理模块根据该事件处理流程进行。
[0057]S2.3,交换机获取的GARP实体的定时器属性事件值是否与该交换机的的定时器属性事件值一致。该步骤S2.3包含:
S2.3.1,当第二处理模块获取的属性事件值为LAe时,判断GARP实体的第一 Leaveall定时器6的属性取值VLAl是否与第二 Leaveall定时器的属性取值VLA2 —致。该S2.3.1包含:
S2.3.1.1,当GARP实体的第一 Leaveall定时器6的属性取值VLAl小于第二 Leaveall定时器的属性取值VLA2时,第二处理模块将该第二Leaveall定时器的属性取值设为VLA1,结束。
[0058]S2.3.1.2,当GARP实体的第一 Leaveall定时器6的属性取值VLAl大于第二Leaveall定时器的属性取值VLA2时,将第二 Leaveall定时器的属性取值保持不变,结束。
[0059]本实施例中,当第二处理模块解析到接收的PDU报文信息的属性事件值为6时,说明该时间为Leaveall定时器事件,则第二处理模块获取交换器的第二 Leaveall定时器的属性取值VLA2,当第二处理模块发现VLA2>100时,则VLA2=100 ;当第二处理模块发现VLA2<100时,VLA2值不改变。
[0060]S2.3.2,当交换机获取的属性事件值为Le时,判断GARP实体的第一 Leave定时器5的属性取值VLl是否与第二 Leave定时器的属性取值VL2 —致。该步骤S2.3.2包含:
S2.3.2.1,当GARP实体的第一 Leave定时器5的属性取值VLl小于第二 Leave定时器的属性取值VL2时,第二处理模块将该第二 Leave定时器的属性取值设为VL1,结束。
[0061]S2.3.2.2,当GARP实体的第一 Leave定时器5的属性取值VLl大于第二 Leave定时器的属性取值VL2时,将第二 Leave定时器的属性取值保持不变,结束。
[0062]本实施例中,当第二处理模块解析到接收的I3DU报文信息的属性事件值为6时,说明该时间为Leaveall定时器事件,则第二处理模块获取交换器的第二 Leaveall定时器的属性取值VL2,当第二处理模块发现VL2>6时,则VL2=6 ;当第二处理模块发现VL2〈6时,VL2值不改变。
[0063]S2.3.3,当交换机获取的属性事件值为Je时,判断GARP实体的第一 Join定时器4的属性取值VJl是否与第二 Join定时器的属性取值VJ2 —致。该步骤S2.3.3包含:
S2.3.3.1,当GARP实体的第一 Join定时器4的属性取值VJl小于第二 Join定时器的属性取值VJ2时,交换机将该第二 Join定时器的属性取值设为VJ1,结束。
[0064]S2.3.3.2,当GARP实体的第一 Join定时器4的属性取值VJl大于第二 Join定时器的属性取值VJ2时,将第二 Join定时器的属性取值保持不变,结束。
[0065]本实施例中,当第二处理模块解析到接收的rou报文信息的属性事件值为6时,说明该时间为Leaveall定时器事件,则第二处理模块获取交换器的第二 Leaveall定时器的属性取值VJ2,当第二处理模块发现VJ2>2时,则VJ2=2 ;当第二处理模块发现VJ2〈2时,VJ2值不改变。
[0066]S2.3.4,当交换机获取的属性事件值为He时,判断GARP实体的第一 Hold定时器3的属性取值VHl是否与第二 Hold定时器的属性取值VH2 —致。该步骤S2.3.4包含:
S2.3.4.1,当GARP实体的第一 Hold定时器3的属性取值VHl小于第二 Hold定时器的属性取值VH2时,交换机将该第二 Hold定时器的属性取值设为VHl,结束.S2.3.4.2,当GARP实体的第一 Hold定时器3的属性取值VHl大于第二 Hold定时器的属性取值VH2时,将第二 Hold定时器的属性取值保持不变,结束。
[0067]本实施例中,当第二处理模块解析到接收的I3DU报文信息的属性事件值为6时,说明该时间为Leaveall定时器事件,则第二处理模块获取交换器的第二 Leaveall定时器的属性取值VH2,当第二处理模块发现VH2>1时,则VH2=1。
[0068]根据本发明提供的定时器控制方法,当任何GARP实体的定时器更新后,下次发送报文信息时,会使用更新后的数据而非使用原始的定时器配置数据。经过若干次交互后,GVRP系统中运行的GARP实体、交换机的各项定时器参数将保持一致,从而能够避免GVRP系统的虚拟局域网环境的震荡,以此提高GVRP系统性能及用户体验。
[0069]尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
【权利要求】
1.一种GVRP系统,其特征在于,该GVRP系统包含: 多个GARP实体,每个所述GARP实体用于分发、注册和传播信息; 交换机,分别与所述多个GARP实体进行通讯; 每个所述GARP实体包含: 第一处理模块,设置在所述GARP实体内; 网络接口模块,设置在所述GARP实体内,与所述第一处理模块连接,并与所述交换机进行通讯; 第一 Hold定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接; 第一 Join定时器,设置在所述GARP实体内,并与所述第一 Hold定时器、第一处理模块连接; 第一 Leave定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接; 第一 Leaveall定时器,设置在所述GARP实体内,并与所述网络接口模块、第一处理模块连接。
2.如权利要求1所述的GVRP系统,其特征在于,所述交换机包含: 当GARP实体通过网络接口模块获取交换机传来的注册信息时,启动第一 Hold定时器,当该第一 Hold定时器超时,控制第一处理模块将此阶段内收到的所有注册信息生成一个join信息,并通过网络接口模块发送至交换机; 为了确保的join信息能够通过交换机传输至其他GARP实体,当GARP实体通过网络接口模块获取交换机传来的注册信息时,同时启动第一 Join定时器,当该第一 Join定时器超时,控制第一处理模块将join信息通过网络接口模块再次发送至交换机; 当GARP实体通过网络接口模块获取交换机传来的其他GARP实体发送的leave信息时,启动第一 Leave定时器,在该第一 Leave定时器超时之前没有收到任何join信息,贝Ij当到达该第一 Leave定时器定时时长时,控制第一处理模块注销该GARP实体内leave信息中的所有属性信息; 当GARP实体启动时,控制第一 Leaveall定时器启动,当该第一 Leaveall定时器超时后,控制第一处理模块通过网络接口模块向交换机发送Ieaveall信息,确保其他GARP实体重新注册该GARP实体的所有属性信息。
3.如权利要求1所述的GVRP系统,其特征在于,所述交换机包含: 第二处理模块,设置在所述交换机内部; 第二 Hold定时器,设置在所述交换机内,与第二处理模块连接; 第二 Join定时器,设置在所述交换机内,与所述第二 Hold定时器、第二处理模块连接; 第二 Leave定时器,设置在所述交换机内,与所述第二处理模块连接; 第二 Leaveall定时器,设置在所述交换机内,与所述第二处理模块连接。
4.一种GVRP系统的定时器控制方法,其特征在于,该控制方法包含如下步骤: SI,交换机获取与其通讯的所有GARP实体的报文信息; S2,所述交换机分别解析、判断每个报文信息中的定时器属性信息。
5.如权利要求4所述的GVRP系统的定时器控制方法,其特征在于,在所述步骤SI之前还包含: 每个所述GARP实体的第一处理模块设置报文信息,所述报文信息包含:协议ID、多个消息和结束标志;每个消息由属性类型和属性列表组成,每个属性列表有多个属性和结束标志组成;每个属性包含:属性长度、属性事件及属性取值; 所述第一处理模块在所述报文信息中分别设置该GARP实体的第一 Hold定时器的属性、第一 Join定时器的属性、第一 Leave定时器的属性及第一 Leaveall定时器的属性。
6.如权利要求5所述的GVRP系统的定时器控制方法,其特征在于, 所述GARP实体的第一处理模块设定的第一 Hold定时器的属性包含:属性长度为L,属性事件为He,属性取值为VHl ; 该GARP实体的第一处理模块设定的第一 Join定时器的属性包含:属性长度为L,属性事件为Je,属性取值为VJl ; 该GARP实体的第一处理模块设定的第一 Leave定时器的属性包含:属性长度为L,属性事件为Le,属性取值为VLl ; 该GARP实体的第一处理模块设定的第一 Leaveall定时器的属性包含:属性长度为L,属性事件为LAe,属性取值为VLAl。
7.如权利要求6所述的GVRP系统的定时器控制方法,其特征在于,在所述步骤SI之前还包含: 所述交换机的第二处理模块设置其内部的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性。
8.如权利要求7所述的GVRP系统的定时器控制方法,其特征在于, 所述交换机的第二处理模设定的第二 Hold定时器的属性包含:属性长度为Ls,属性事件为He,属性取值为VH2 ; 该交换机的第二处理模设定的第二 Join定时器的属性包含:属性长度为Ls,属性事件为Je,属性取值为VJ2 ; 该交换机的第二处理模设定的第二 Leave定时器的属性包含:属性长度为Ls,属性事件为Le,属性取值为VL2 ; 该交换机的第二处理模设定的第二 Leaveall定时器的属性包含:属性长度为Ls,属性事件为LAe,属性取值为VLA2。
9.如权利要求4所述的基GVRP系统的定时器控制方法,其特征在于,所述步骤SI包含如下步骤: 每个所述GARP实体的第一处理模块将设置后的报文信息通过网络接口模块发送至与该GARP实体通讯的所述交换机的第二处理模块。
10.如权利要求8所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2包含如下步骤: S2.1,所述交换机的第二处理模块解析所有GARP实体的报文信息,并获取每个GARP实体的第一 Hold定时器的属性、第一 Join定时器的属性、第一 Leave定时器的属性及第一Leaveall定时器的属性; S2.2,所述第二处理模块判断解析到的报文信息中的属性事件值是否为He、Je, Le或LAe,当所述报文信息中的属性事件值为上述值之一时,跳转至步骤S2.3 ; S2.3,所述交换机获取的所述GARP实体的定时器属性事件值是否与该交换机的的定时器属性事件值一致。
11.如权利要求10所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2.2包含: S2.2.1,当所述第二处理模块判断解析到的报文信息中的属性事件值为He、Je, Le或LAe时,该第二处理模块调用交换机的第二 Hold定时器的属性、第二 Join定时器的属性、第二 Leave定时器的属性及第二 Leaveall定时器的属性,判断所述GARP实体的定时器属性是否与该交换机的定时器属性一致,跳转至所述步骤S2.3 ; S2.2.2,当所述交换机判断解析到的报文信息中的属性事件值为其他值时,根据该报文信息的其他属性事件情况处理,结束。
12.如权利要求10所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2.3包含: S2.3.1,当所述第二处理模块获取的属性事件值为LAe时,判断所述GARP实体的第一Leaveall定时器的属性取值VLAl是否与所述第二 Leaveall定时器的属性取值VLA2—致;S2.3.2,当所述交换机获取的属性事件值为Le时,判断所述GARP实体的第一 Leave定时器的属性取值VLl是否与所述第二 Leave定时器的属性取值VL2 —致; S2.3.3,当所述交换机获取的属性事件值为Je时,判断所述GARP实体的第一 Join定时器的属性取值VJl是否与所述第二 Join定时器的属性取值VJ2 —致; S2.3.4,当所述交换机获取的属性事件值为He时,判断所述GARP实体的第一 Hold定时器的属性取值VHl是否与所述第二 Hold定时器的属性取值VH2 —致。
13.如权利要求12所述的GVRP系统的定时器控制方法,其特征在于,所述S2.3.1包含: S2.3.1.1,当所述GARP实体的第一 Leaveall定时器的属性取值VLAl小于所述第二Leaveall定时器的属性取值VLA2时,所述第二处理模块将该第二 Leaveall定时器的属性取值设为VLAl,结束; S2.3.1.2,当所述GARP实体的第一 Leaveall定时器的属性取值VLAl大于所述第二Leaveall定时器的属性取值VLA2时,将所述第二 Leaveall定时器的属性取值保持不变,结束。
14.如权利要求12所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2.3.2包含: S2.3.2.1,当所述GARP实体的第一 Leave定时器的属性取值VLl小于所述第二 Leave定时器的属性取值VL2时,所述第二处理模块将该第二 Leave定时器的属性取值设为VL1,结束; S2.3.2.2,当所述GARP实体的第一 Leave定时器的属性取值VLl大于所述第二 Leave定时器的属性取值VL2时,将所述第二 Leave定时器的属性取值保持不变,结束。
15.如权利要求12所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2.3.3包含: S2.3.3.1,当所述GARP实体的第一 Join定时器的属性取值VJl小于所述第二 Join定时器的属性取值VJ2时,所述交换机将该第二 Join定时器的属性取值设为VJl,结束; S2.3.3.2,当所述GARP实体的第一 Join定时器的属性取值VJl大于所述第二 Join定时器的属性取值VJ2时,将所述第二 Join定时器的属性取值保持不变,结束。
16.如权利要求12所述的GVRP系统的定时器控制方法,其特征在于,所述步骤S2.3.4包含: S2.3.4.1,当所述GARP实体的第一 Hold定时器的属性取值VHl小于所述第二 Hold定时器的属性取值VH2时,所述交换机将该第二 Hold定时器的属性取值设为VHl,结束; S2.3.4.2,当所述GARP实体的第一 Hold定时器的属性取值VHl大于所述第二 Hold定时器的属性取值VH2时,将所述第二 Hold定时器的属性取值保持不变,结束。
【文档编号】H04L29/06GK104486345SQ201410801291
【公开日】2015年4月1日 申请日期:2014年12月22日 优先权日:2014年12月22日
【发明者】程世勇, 黄沁宇, 刘驰 申请人:上海斐讯数据通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1