[发明专利]GVRP协议的应用层实现方法及系统有效
申请号: | 201310193497.9 | 申请日: | 2013-05-23 |
公开(公告)号: | CN103384265A | 公开(公告)日: | 2013-11-06 |
发明(设计)人: | 李业中;张伟 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 上海智信专利代理有限公司 31002 | 代理人: | 胡美强;王婧荷 |
地址: | 201616 上海市松江*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | gvrp 协议 应用 实现 方法 系统 | ||
技术领域
本发明涉及一种GVRP协议的应用层实现方法及系统。
背景技术
在传统的静态VLAN(虚拟局域网)模式下,若要在整个交换网络中增加或者删除某条VLAN,需要对每台交换机都进行配置。相对于静态VLAN,动态VLAN更加灵活,减小了配置错误的概率,也减小了工作量。GVRP(Generic VLAN Registration Protocol),即通用虚拟局域网注册协议,是一种动态VLAN注册协议,可用于协助同一个交换网络内的交换成员之间分发、传播和注册VLAN信息。GVRP是GARP,GARP(Generic Attribute Registration Protocol),即通用属性注册协议,GARP建立了一种局域网内的属性扩散机制,它是一种用于交换网内属性扩散的通用机制,而GVRP则是GARP的一种具体应用
GVRP协议的行为则由IEEE组织(美国电气和电子工程师协会)规定。IEEE制定的标准IEEE Std802.1D和IEEE Std802.1Q分别定义了GARP和GVRP协议的具体内容,其中包括协议的原理、状态机以及代码的架构。在IEEE Std802.1D和IEEE Std802.1Q中,分别给出了GARP和GVRP的软件代码的架构,但并未给出更为具体的实现。
在Linux(一种自由和开放源代码的类UNIX操作系统)内核中,可以找到与GVRP相关的内核代码,但是内核的实现方式并不适合于应用层实现。在应用程序中,要实现精确定时、还要能够及时处理数据包的收发以及信号的处理并不容易。现有的实现定时的方法一般采用轮询或者定时器中断。但是采用轮询的实时性不好且占用资源太高,采用定时中断的话则会破坏程序的顺序性。
发明内容
本发明要解决的技术问题是为了克服现有技术中的GVRP相关的内核代码不适用于应用层实现,采用轮询会占用较多资源且实时性不好,采用定时中断会破坏程序的顺序性的缺陷,提出一种GVRP协议的应用层实现方法及系统。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种GVRP协议的应用层实现方法,其特点在于,包括以下步骤:
S1、程序初始化;
S2、在有套接字为可读状态时执行步骤S3,在有定时器超时时执行步骤S4,在接收到信号时执行步骤S5,在其余情况下休眠;
S3、执行和可读状态的套接字对应的处理函数,然后返回步骤S2;
S4、执行定时器处理函数,然后返回步骤S2;
S5、在接收到的信号不为结束信号时、执行和接收到的信号对应的信号处理函数、然后返回步骤S2,在接收到的信号为结束信号时、执行清理操作并终止流程。
在上述应用层实现方法中,进程在时间上可以最大限度地处于休眠状态,在休眠状态下占用的中央处理器的资源较少,能够有效降低中央处理器的功耗。
较佳地,该步骤S3包括以下步骤:
S301、读取套接字事件列表;
S302、判断套接字事件的类型,在类型为gvrp报文的情况下执行步骤S303,在类型为ctrl报文的情况下执行步骤S313;
S303、判断gvrp报文属于Join报文、Leave报文还是Leaveall报文,在Join报文的情况下执行步骤S304,在Leave报文的情况下执行步骤S305,在Leaveall报文的情况下执行步骤S306;
S304、注册并转发该Join报文,并返回步骤S2;
S305、启动Leave定时器,如果在Leave定时器超时前收到该Join报文则转发该Join报文,如果在Leave定时器超时前未收到该Join报文则清除该gvrp报文中的VLAN属性,并返回步骤S2;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310193497.9/2.html,转载请声明来源钻瓜专利网。