VLAN Trunk Protocol (VTP) is a layer 2 protocol that maintains VLAN configurations through a common administrative domain. Configurations are made to a VTP server, and are propagated across trunk lines to all switches in the VTP domain. VTP provides auto-intelligence for configuring switches across the network. VTP is a Layer 2 messaging protocol. It carries configuration information throughout a single domain.
VTP operates in one of three modes:
1. Server mode: VTP Servers can create, modify, or delete VLANs and other configuration parameters for the specified VLAN domain.
2. Client mode: A VTP client can't create, change, or delete VLANs.
3. Transparent mode : A VTP transparent mode is used when a switch is not required to participate in VTP, but only pass the information to other switches. Transparent switches don't work either as Server or clients.
4. Configurations made to a single switch, called VTP server, are propagated across the switch fabric under a single domain control. Other switches, configured as VTP clients, learn the configuration information from the server. It is important to know that, Cisco switches such as Catalyst 1900, acting as VTP servers save the VLAN configuration information in their Non volatile memory (NVRAM), whereas client keep the information only in running configuration.
A VTP advertisement necessarily consists of "Configuration revision number". Every time a VTP server updates its VLAN information, it increments the configuration revision number by one count. VTP clients, use the revision number to enforce the VLAN configuration Update
There are two different VTP versions. VTP version 1 and VTP version 2. These versions are not interoperable. Version 1 is the default version. All switches in a given management domain should be configured in either version 1 or version 2.
Some of the advantages of VTP version 2 are as below:
1. Token Ring support: Supports Token Ring LAN switching and VLANs. If Token Ring is used, this is the version required.
2. Version number auto propagation: In case that all switches are capable of running Version 2, only one switch need to be Version 2 enabled, Version number is automatically propagated to others.
The command syntax for assigning a management domain for a switch is:
Switch# vtp domain <domain-name>
For example, if the domain name is newyork, the command is:
Switch# vtp domain newyork
VTP pruning is a technique that enhances the available network bandwidth by reducing the broadcast, multicast, and flooded unicast messages. These frames are not forwarded to network devices that don't have ports associated with a given VLAN. When VTP pruning is enabled, a switch forwards the flooded traffic across a link to another switch, only if that switch has ports associated with that VLAN. For example, a switch, Switch A sends flooded messages (say belonging to VLAN 7) to Switch B, only if Switch B has ports associated with VLAN 7.
VTP pruning should only be enabled on VTP servers, all the clients in the VTP domain will automatically enable VTP pruning. By default, VLANs 2 - 1001 are pruning eligible, but VLAN 1 can't be pruned because it's an administrative VLAN. Both VTP versions 1 and 2 support pruning.
Domain name set on a switch can be known by viewing the VTP Configuration of the switch, so use "show vtp status" command to check the domain name.
The following points may be noted with respect to IP Phone and switch port:
1. The trunk between the IP phone and switch port is created dynamically.
2. The trunk between the IP phone and switch port can contain only two VLANs, a voice VLAN and the native VLAN.
3. A special trunk is negotiated through DTP and CDP between IP phone and the switch port.
4. By default, a switch port connected to an IP phone does not use a trunk. If you want to configure a trunk, use "switchport vlice vlan" command in the interface configuration mode.
5. The switch instructs an attached IP Phone through CDP messages as to how it should extend QoS trust to its PC data switch port
6. By default, a switch instructs an attached IP Phone not to trust the PC port. CoS values are overwritten to 0.
The following are important commands that can be used for troubleshooting IP Phone connectivity and configuration:
1. show cdp neighbors
2. show interface <type> <mod/<num> switchport
3. show mls qos interface <type> <mod>/<num>
4. show interface <type> <mod>/<num> capabilities
5. show mls qos interface queueing
A trunk link can be negotiated between two switches only if both switches belong to the same VLAN Trunking Protocol (VTP) management domain or, if one or both switches have not defined their VTP domain (that is, the NULL domain). If the two switches are in different VTP domains and trunking is desired between them, you must set the trunk links to ON mode or no-negotiate mode. This setting forces the trunk to be established.
Load Sharing using STP Port Priorities: When two ports on the same switch form a loop, the STP port priority setting determines which port is enabled and which port is in a blocking state for a given VLAN. The trunk port with the higher priority (lower values) for a VLAN will be forwarding traffic for that VLAN. So, by ensuring that the port priorities are set differently for different VLANs, we can share the load on redundant links between two switches. The port priority is assigned using a 4-bit value. The priorities are now assigned in increments of 16 up to 256. Note that older standards used to have 8 bits for port priority, making it possible to have values ranging from 0 to 256. The new standard can take any value in multiples of 16, up to 256 and enables backward compatibility. The default port priority is 128, maximum possible value 256. Lower the value, higher the port priority. A port with a priority value of 16 is more preferred to one with a value of 32.
VTP advertisements may come from a VTP server or a VTP client. These are as given below
Summary Advertisements: These are sent by VTP domain servers every 5 minutes or every time the VLAN topology changes, It contains information about the management domain (VTP version, domain name, configuration revision number, timestamp, MD5 encryption hash code, and number of subset advertisements incoming). When there is a configuration change, summary advertisements are complimented by or more subset advertisements.
Subset advertisements: These are sent out by VTP domain servers after a configuration change. They list the specifics of the change (VLAN creation / deletion / suspension / activation / name change / MTU change) and the VLAN parameters (VLAN status, VLAN type, MTU, VLAN name, VLAN number, SAID value).
Advertisement Requests from Clients: VTP clients request specific VLAN information at times (say, Client switch is reset, or VTP domain name change) so they can be responded by summary and subset advertisements.
VTP Join message: It contains VTP domain name, and a VLAN bit string. If the bit is set, flood traffic for that VLAN should be received on that trunk. Each trunk port maintains a state variable per VLAN - Joined/Pruned.
For Inter VLAN communication, you need a router or a Layer-3 switch.
Dynamic Trunking Protocol (DTP) is the Cisco-proprietary that actively attempts to negotiate a trunk link between two switches. Below is the switchport modes (or DTP modes) for easy reference:
1. Dynamic Auto: Creates the trunk based on the DTP request from the neighboring switch.
2. Dynamic Desirable: Communicates to the neighboring switch via DTP that the interface would like to become a trunk if the neighboring switch interface is able to become a trunk.
3. Trunk: Automatically enables trunking regardless of the state of the neighboring switch and regardless of any DTP requests sent from the neighboring switch.
4. Access: Trunking is not allowed on this port regardless of the state of the neighboring switch interface and regardless of any DTP requests sent from the neighboring switch.
5. Nonegotiate: Prevents the interface from generating DTP frames. This command can be used only when the interface switchport mode is access or trunk. You must manually configure the neighboring interface as a trunk interface to establish a trunk link.