1.定义
VLAN
集中管理协议VCMP
(VLAN Central Management Protocol
)可以实现VLAN
的集中维护和管理。VCMP
是华为的私有协议,工作于链路层,提供了一种在二层网络中传播VLAN
配置信息,从而保证整个二层网络中VLAN
配置信息一致。相较于手工配置,VCMP
具有维护工作量小、VLAN
配置一致的优点。
2.基本概念
VCMP
使用域来管理交换机,这个域就称为VCMP
管理域;并通过角色定义来确定设备的属性,称为VCMP
的角色,VCMP
共定义了Server
、Client
、Transparent
和Silent
四种角色。VCMP
管理域及角色下图所示:
# VCMP管理域及角色示意图
3.VCMP管理域
VCMP
管理域由一组域名相同的交换机通过Trunk
或Hybrid
链路类型的接口互连构成。同一域内的每台交换机都必须使用相同的域名,且一台交换机只能加入一个VCMP
管理域,不同域的交换机间不能同步VLAN
信息。
VCMP
管理域确定了VCMP
管理设备的范围,凡是加入域的交换机,均会受到域内管理设备的管理。域中只能有一台管理设备,但可以有多台被管理设备。
4.VCMP的角色
VCMP
通过角色定义确定设备的属性,VCMP
角色定义如下表所示:
# VCMP的角色
说明:
Transparent
和Silent
不属于任何VCMP
管理域。VCMP
管理域的边缘设备如果希望受VCMP
的管理,也可设置为Client
角色,但为防止本域的VCMP
报文传输到其他域中,需要将连接其他域的接口去使能VCMP
功能。
5.应用场景
小型企业网中,网络管理员可登录到每台交换机上进行VLAN
的配置和维护。但大型企业网中,交换机很多,会有大量的VLAN
信息需要配置和维护。如果仅靠网络管理员手工操作,工作量很大,也不能保证配置的一致性。
为了解决上述问题,可通过VCMP
实现VLAN
的集中管理。这样,只需在一台交换机上进行创建、删除VLAN
等操作,这些变更会自动通知到指定范围内的所有交换机,从而使这些交换机无需手工操作即可实现VLAN
的创建、删除等动作的同步,即减少了在多台交换机上修改同一个数据的工作量,也保证了修改的一致性。
说明:
VCMP
只能帮助网络管理员同步VLAN
配置,但不能帮助其动态地划分端口到VLAN
。因此,VCMP
一般需要与LNP
结合使用,以最大程度简化用户配置。GVRP
也可减少VLAN
配置,且可将端口动态地划分到VLAN
,但GVRP
创建的VLAN
是动态VLAN
,而VCMP
创建的VLAN
是静态VLAN
。
# VCMP应用场景组网图
如上图所示,某企业有部门A和部门B两个部门,分别属于不同二层网络,各部门规模较大,需要配置和维护的VLAN
信息很多。为了方便VLAN
的配置和维护,可在部门A
和部门B
内分别部署VCMP
,管理域分别为VCMP1
和VCMP2
,并选择汇聚交换机AGG1
作为VCMP1
的Sever
,接入交换机ACC1~ACC
2作为VCMP1
的Client
,汇聚交换机AGG2
作为VCMP2
的Server
,接入交换机ACC3~ACC4
作为VCMP2
的Client
。这样,网络管理员只需分别在AGG1
和AGG2
上创建、删除VLAN
或修改VLAN
的名称、描述,ACC1~ACC2
和ACC3~ACC4
会分别同步AGG1
和AGG2
上的VLAN
信息,实现了VLAN
的统一配置和管理。
6.VCMP协议报文
VCMP
通过在各角色设备间交互VCMP
报文实现VLAN
的集中管理,VCMP
报文只能在Trunk
或Hybrid
类型接口的VLAN 1
上传输。为确保在各种场景下Server
与Client
的VLAN
信息保持一致,VCMP
协议定义了Summary-Advert
、Subset-Advert
和Advert-Request
三种组播方式的报文。三种报文的作用及触发场景如下表所示。
其中,由Server
发送的Summary-Advert
和Subset-Advert
报文会携带配置修订号。配置修订号用来确定Server
发送的VLAN
信息是否比当前的更新,Client
使用它来判断是否需要同步Server
的VLAN
信息。它以8位
十六进制数体现,高四位用来标识VCMP
管理域或设备ID
的变更,低四位用来标识VLAN
的变更。只要Server
有VLAN
变更,配置修订号就会自动递增。而当VCM
P管理域名或设备ID
变更时,配置修订号的高四位会重新计算,低四位会清零。
7.实现机制
# Server上配置变更的VLAN同步机制
当Server
上的配置变更(包括创建、删除VLAN
,修改VLAN
的名称、描述,VCMP
管理域名、设备ID
修改,以及Server
重启等情况)时,Server
会发送携带变更信息的Summary-Advert
和Subset-Advert
报文,以通告VCMP
管理域内的Client
进行同步。
# 新增Client的VLAN同步机制
为确保Server
与Client
上的VLAN
信息的同步,Server
每5分钟
发送一次Summary-Advert
报文,向全域通告VCMP
管理域名、设备ID
和配置修订号,Server
还会发送Subset-Advert
报文来通告发生变更的VLAN
名称和VLAN
描述。当新加入一台Client
或Client
重启时,为了及时获取Server
上的VLAN
配置信息,新Client
和重启的Client
会发送Advert-Request
组播报文,请求Server
的VLAN
配置信息。
# 多Server告警机制
VCMP
管理域内只能有一台Server
。为防止用户假冒Server
攻击网络,Server
在收到Summary-Advert
报文后,会将报文中的VCMP
管理域名、设备ID
、源MAC
地址与本地的进行匹配。如果VCMP
管理域名和设备ID
匹配,但报文中的源MAC
地址与本地的系统MAC
地址不同,则会向网管发送“多Server”事件告警。
为了防止告警太多影响Server
性能,VCMP
抑制告警的发送次数,每30
分钟向网管发送一次告警。
# VCMP认证机制
未知交换机加入VCMP
管理域,可能会将其设备上的VLAN
信息同步到域内,进而影响域内网络的稳定。为防止未知交换机加入,使VCMP
管理域更安全,可以为域中的Server
和Client
配置域认证密码。
如果Server
或Client
配置了域认证密码,则用该密码字符串(默认使用空字符串)作为Key
值,对报文中的VCMP
管理域名、设备ID
等字段进行SHA-256
摘要计算,并把得到的摘要信息随Summary-Advert
报文、Subset-Advert
报文或Advert-Request
报文发送。域内每台Client
在收到的Server
的Summary-Advert
或Subset-Advert
报文时,则用本地配置的认证密码对报文中的VCMP
管理域名、设备ID
和配置修订号等字段进行SHA-256
摘要计算,并把得到的摘要信息与报文中携带的摘要信息进行比较。如果匹配,则认证通过,进行后续VCMP
处理;否则,丢弃该Summary-Advert
或Subset-Advert
报文。Server
收到Client
的Advert-Request
报文时进行同样的认证处理。
如果未配置域密码,则直接认证通过。
说明:
同一 VCMP
管理域中的Server
和每台Client
上配置的域密码必须相同。为充分保证设备安全,请用户定期修改密码。