GVRP技术介绍


GVRP

GVRP简介

GVRPGARP VLAN Registration ProtocolGARP VLAN注册协议)是GARPGeneric Attribute Registration Protocol,通用属性注册协议)的一种应用,下面首先介绍一下GARP的相关内容。

GARP简介

GARP提供了一种机制,用于协助同一个局域网内的交换成员之间分发、传播和注册某种信息(如VLAN、组播地址等)。

GARP本身不作为一个实体存在于设备中,遵循GARP协议的应用实体称为GARP应用,GVRP就是GARP的一种应用。当GARP应用实体存在于设备的某个端口上时,该端口对应于一个GARP应用实体。

1. GARP消息和定时器

(1)        GARP消息

GARP成员之间的信息交换借助于消息的传递来完成,主要有三类消息起作用,分别为Join消息、Leave消息和LeaveAll消息。

l              当一个GARP应用实体希望其它设备注册自己的属性信息时,它将对外发送Join消息;当收到其它实体的Join消息或本设备静态配置了某些属性,需要其它GARP应用实体进行注册时,它也会向外发送Join消息。

l              当一个GARP应用实体希望其它设备注销自己的属性信息时,它将对外发送Leave消息;当收到其它实体的Leave消息注销某些属性或静态注销了某些属性后,它也会向外发送Leave消息。

l              每个GARP应用实体启动后,将同时启动LeaveAll定时器,当该定时器超时后GARP应用实体将对外发送LeaveAll消息,LeaveAll消息用来注销所有的属性,以使其它GARP应用实体重新注册本实体上所有的属性信息。

Join消息、Leave消息与LeaveAll消息配合确保信息的重新注册或注销。

通过消息交互,所有待注册的属性信息可以传播到同一局域网配置了GARP的所有设备上。

(2)        GARP定时器

GARP消息发送的时间间隔是通过定时器来实现的,GARP定义了四种定时器,用于控制GARP消息的发送周期:

l              Hold定时器:当GARP应用实体接收到其它设备发送的注册信息时,不会立即将该注册信息作为一条Join消息对外发送,而是启动Hold定时器,当该定时器超时后,GARP应用实体将此时段内收到的所有注册信息放在同一个Join消息中向外发送,从而节省带宽资源。

l              Join定时器:GARP应用实体可以通过将每个Join消息向外发送两次来保证消息的可靠传输,在第一次发送的Join消息没有得到回复的时候,GARP应用实体会第二次发送Join消息。两次Join消息发送之间的时间间隔用Join定时器来控制。

l              Leave定时器:当一个GARP应用实体希望注销某属性信息时,将对外发送Leave消息,接收到该消息的GARP应用实体启动Leave定时器,如果在该定时器超时之前没有收到Join消息,则注销该属性信息。

l              LeaveAll定时器:每个GARP应用实体启动后,将同时启动LeaveAll定时器,当该定时器超时后,GARP应用实体将对外发送LeaveAll消息,以使其它GARP应用实体重新注册本实体上所有的属性信息。随后再启动LeaveAll定时器,开始新的一轮循环。

&  说明:

l      GARP定时器的值将应用于所有在同一局域网内运行的GARP应用(如GVRP)。

l      Hold定时器、Join定时器和Leave定时器的值可以在每个以太网端口单独进行设置;而LeaveAll定时器只需在设备的全局进行设置即可,设置完成后,该值将在设备的所有端口上生效。

l      在全网有多台设备的情况下,各个设备的LeaveAll定时器的取值可能不相同,但各设备都将以全网最小的LeaveAll定时器为准发送LeaveAll消息。因为每次发送LeaveAll消息时,当其它设备接收到之后都会清零LeaveAll定时器,因此即使全网存在很多不同的LeaveAll定时器,也只有最小的那个LeaveAll定时器起作用。

 

2. GARP运行过程

通过GARP机制,一个GARP成员上的配置信息会迅速传播到整个局域网。GARP成员可以是终端工作站或网桥。GARP成员通过声明或回收声明来通知其它的GARP成员注册或注销自己的属性信息,并根据其它GARP成员的声明或回收声明注册或注销对方的属性信息。当端口接收到一个属性声明时,该端口将注册该属性,如果端口接收到回收属性的声明,该端口将注销该属性。

GARP应用实体的协议数据报文以特定的组播MAC地址为目的MAC。设备在接收到GARP应用实体的报文后,会根据其目的MAC地址加以区分并交给不同的GARP应用(如GVRP)去处理。

3. GARP的报文格式

图1 GARP报文格式

GARP的报文格式如1所示,其中各字段的说明如1所示。

表1 各个字段的说明

字段

含义

取值

Protocol ID

协议ID

取值为1

Message

消息,每个MessageAttribute TypeAttribute List构成

-

Attribute Type

属性类型,由具体的GARP的应用定义

对于GVRP,属性类型为0x01,表示属性取值为VLAN ID

Attribute List

属性列表,由多个属性构成

-

Attribute

属性,每个属性由Attribute LengthAttribute EventAttribute Value构成

-

Attribute Length

属性长度

2255,单位为字节

Attribute Event

属性描述的事件

0LeaveAll Event

1JoinEmpty Event

2JoinIn Event

3LeaveEmpty Event

4LeaveIn Event

5Empty Event

Attribute Value

属性取值

GVRP的属性取值为VLAN ID,但LeaveAll属性的Attribute Value值无效

End Mark

结束标志、GARPPDU的结尾标志

0x00取值表示

 

GVRP实现原理

GVRPGARP的一种应用。它基于GARP的工作机制,维护设备中的VLAN动态注册信息,并传播该信息到其它的设备中。

设备启动GVRP特性后,能够接收来自其它设备的VLAN注册信息,并动态更新本地的VLAN注册信息,包括当前的VLAN成员、这些VLAN成员可以通过哪个端口到达等。而且设备能够将本地的VLAN注册信息向其它设备传播,以便使同一局域网内所有设备的VLAN信息达成一致。GVRP传播的VLAN注册信息既包括本地手工配置的静态注册信息,也包括来自其它设备的动态注册信息。

GVRP的端口注册模式有三种:NormalFixedForbidden,各模式描述如下。

l              Normal模式:允许该端口动态注册、注销VLAN,传播动态VLAN以及静态VLAN信息。

l              Fixed模式:禁止该端口动态注册、注销VLAN,只传播静态VLAN信息,不传播动态VLAN信息。也就是说被设置为Fixed模式的Trunk口,即使允许所有VLAN通过,实际通过的VLAN也只能是手动配置的那部分。

l              Forbidden模式:禁止该端口动态注册、注销VLAN,不传播除VLAN1以外的任何的VLAN信息。也就是说被配置为Forbidden模式的Trunk端口,即使允许所有VLAN通过,实际通过的VLAN也只能是VLAN 1

附件下载

联系我们