Alors,
pour commencer, le spanning tree est un protocole qui te permet d'éviter d'avoir des boucles de niveau 2 dans tes reseaux !
ex un switch A est connecté à un switch B et à un switch C qui sont tous les deux connectés ensembles (figure en triangle). Il y a une boucle physique (une trame envoyée par A part sur B et Sur C mais B va la ré-émettre sur C tandis que C va la renvoyer sur B et ainsi la trame va finir par revenir au switch A)
étant donné qu'au niveau 2 il n'y a aucun mécanisme pour empêcher qu'une trame ne tourne indéfiniment dans le réseau (cas du champs TTL pour IP niveau 3) , cette boucle va ta bloquer ton réseau c'est pourquoi il est IMPERATIF de faire appel à un protocole dédié 'SPANNING-TREE) qui se charge d'établir une topologie du réseau et de décider de fermer ou d'ouvrir des liaisons qui pourraient créer des boucles !
ensuite, tes switchs de niveau 3 sont QUAND MEME des switchs (le niveau 3 c'est parce qu'ils font du routage inter vlan mais au départ ce sont des switchs) donc cela n'influe en aucun cas sur le besoin de mettre du spanning tree. A partir du moment ou tu crée une boucle physique dans ton réseau en branchant 3 switchs il te FAUT du spanning tree.
Les routeurs sont des appareils ne niveau 3 qui font QUE du ROUTAGE, il ne font pas de commutation de ports, voila pourquoi tu n'as donc pas besoin de spanning-tree mais des switchs de niveau 3 ne sont pas a proprement parler des routeurs (même s'ils en ont quelques fonctionnalités).
Enfin, le TAG (mode trunk du protocole 802.1q) ne te sert qu'à insérer un champs supplémentaire dans ta trame de niveau 2 (au détriment de l'allongement de la longueur de la trame) pour identifier le vlan d'appartenance. Ce tagage est utilisé lorsqu'une trame issue d'un vlan est envoyée sur un autre switch qui gère aussi ce vlan :
ex les switch A et B disposent de 3 vlans ( le 1 le 2 et le 3) une machine du vlan 2 du switch A veut envoyer une trame à destination d'une machine du vlan2 du switch B. Lorsque la trame issue de la premiere machine arrivera au niveau du Switch A, celui ci va la transférer au switch B en utilisant une liaison commune (Vlan 1) taggée. il rajoute donc dans cette trame l'identifiant de Vlan source. Lorsque le switch B va recevoir cette trame taggée il saura ainsi à quel vlan il doit remettre cette trame.
le mode de taggage, n'a aucune incidence sur les boucles de niveau 2, il ne sert pas à cela du tout, donc ce ne peut pas être une alternative à l'utilisation du spanning tree.
j'éspère que ces quelques renseignements pourront éclairer ta lanterne