Les BID et autres informations du protocole spanning tree sont transportés dans des unités de trames de données spéciales nommées BPDU (Bridge Protocol Data Units). Les BPDU sont échangées régulièrement (toutes les deux secondes) et permettent aux commutateurs de garder une trace des changements sur le réseau afin d'activer ou de désactiver les ports requis. Quand un commutateur ou un pont est raccordé au réseau, il commence par envoyer des BPDU afin de déterminer la topologie du réseau, avant de pouvoir commencer à transférer des données.
Il existe trois types de BPDU :
Les BPDU sont envoyés sur l'adresse multicast 01:80:C2:00:00:00.
L'algorithme original de Spanning Tree a été décrit par Radia Perlman alors employée par Digital Equipment Corporation, il est nommé DEC STP. En 1990, l'IEEE publié le premier standard 802.1D basé sur le travail de Perlman. Des versions ultérieurs sont publiées en 1998 et 2004.
Il existe certaines différences entre DEC STP et 802.1D qui peuvent causer des problèmes d'interopérabilité.
Les évolutions STP tentent d'améliorer certains aspects de STP, notamment :
En 1998, l'IEEE publie le document 802.1w qui accélère la convergence du protocole STP après un changement de topologie. Il est inclus dans standard IEEE 802.1D-2004. Tandis que le STP classique peut prendre de 30 à 50 secondes pour converger après un changement de topolgie, RSTP est capable de converger en 3 fois la valeur du délai Hello (6 secondes par défaut).
Le fonctionnement général de RSTP est semblable à celui du STP classique. Les différences sont les suivantes :
Quand plusieurs VLAN existent dans un réseau ethernet commuté, STP peut fonctionner de façon indépendante sur chacun des VLAN séparément. Ce mode de fonctionnement a été baptisé PVST(+) par Cisco. C'est le mode par défaut sur les commutateurs de la marque. Il s'agit d'un développement propriétaire qui est également pris en charge par certains fournisseurs concurrents.
PVST fonctionne uniquement avec Cisco Inter-Switch Link (ISL). PVST+ est utilisé avec dot1q.
Le Multiple Spanning Tree Protocol (MSTP), défini dans la norme IEEE 802.1s puis inclus dans IEEE 802.1Q-2003, est une extension de RSTP dans laquelle une instance de RSTP existe par groupe de VLAN.
Disposer de plusieurs instances de STP permet de mieux utiliser les liaisons dans le réseau, si la topologie STP est différente pour certains groupes de VLAN. Contrairement à PVST, il n'est cependant pas nécessaire de disposer d'une instance par VLAN, ceux-ci pouvant être très nombreux, les VLAN étant groupés.
MSTP a été inspiré par le protocole de Cisco Multiple Instances Spanning Tree Protocol (MISTP).
MSTP est compatible avec les ponts RSTP, le format de BPDU étant le même.