I was wondering how VTP protocol deals with revision conflict?
E.g. VTP clients and servers are up to date with the latest database revision X.
Suddenly two VTP servers propagate revision X+1 with conflicting changes in it.
How is that solved?
How is that solved?
Probably not really at all.
https://www.cisco.com/c/en/us/support/docs/lan-switching/vtp/98155-tshoot-vlan.html#topic14
(quoted from above, emphasis by me)
VTP is designed for an administrative environment in which the VLAN database for the domain is changed at only one switch at any one time. It assumes that the new revision propagates throughout the domain before another revision is made. If you change the database simultaneously on two different devices in the administrative domain, you can cause two different databases to be generated with the same revision number. These databases propagate and overwrite the existing information until they meet at an intermediate Catalyst switch on the network. This switch cannot accept either advertisement because the packets have the same revision number but a different MD5 value. When the switch detects this condition, the switch increments the No of config revision errors counter.
If a switch gets revision X+1 from one VTP server, it will simply look at the revision number if that same revision number comes in an update from the other VTP server. The switch will then ignore the revision with the same number from the other server, thinking it is up to date.
Also, remember that it is not only servers, but also clients, that can propagate revisions, and it has been a problem in the past where plugging in a client with a higher revision number can and will wipe out the VTP database on all the switches in a network.