Na camada de rede do modelo OSI, além dos protocolos de roteamento que suportam comunicação do tipo unicast (ou seja, ponto a ponto), na qual um único nó de origem envia um pacote a um único destino, existem também os protocolos de roteamento broadcast e multicast.
No roteamento broadcast a camada de rede provê um serviço de entrega de um pacote originado de um nó, destinado a todos os outros nós da rede.
No roteamento de multicast, que veremos em outro tópico, ampliamos o alcance um pouco, pois habilita um único nó enviar uma cópia de um pacote a um subconjunto de nós pertencentes a outras redes.
Talvez o modo mais direto de conseguir comunicação do tipo broadcast, é o nó de origem ou podemos dizer, remetente, enviar uma cópia separada do pacote para cada destino.
Onde a informação presente no nó origem simplesmente faz tantas cópias quanto possui de nós em uma rede e destina cada cópia a um nó diferente utilizando roteamento do tipo unicast.
Essa forma de operação unicast com N caminhos é simples, mas não é preciso nenhum novo protocolo na camada de rede, duplicação de pacotes ou mesmo uma funcionalidade de repasse.
Esta abordagem possui uma desvantagem, ela é ineficiente. Se o nó origem estiver conectado por um único enlace, todas as cópias vão transitar por este único enlace, assim podendo congestioná-lo, dizemos que está trafegando lixo na rede.
Então o mais eficiente é enviar somente uma única cópia deste pacote até o primeiro salto e propor ao próximo nó, que recebera esta cópia, que retransmite o pacote a todos os nós que ele tem ligação, e isto vai ocorrendo com todos os nós que receberem este pacote até que toda a rede tenha recebido tal informação.
Spanning Tree Protocol (referido com o acrónimo STP), desenvolvido pela Cientista da Computação Radia Perlman, é um protocolo para equipamentos de rede que permite resolver problemas de loop em redes comutadas, cuja topologia introduz anéis nas ligações, auxiliando na melhor performance da rede.
Possui este nome em referência ao formato da rede, havendo uma árvore ao meio e dela saindo ramificações.
Para isso, o algoritmo de Spanning Tree determina qual é o caminho mais eficiente (de menor custo) entre cada segmento separado por bridges ou switches.
Quando um nó remetente for enviar um pacote broadcast, envia o pacote a todos os enlaces membros da Spanning tree, assim um nó presente no caminho que receba este pacote, vai repassá-lo a todos os seus vizinhos, seguindo o trajeto da ramificação.
A Spanning Tree Protocol (STP) não só elimina pacotes redundantes, mas depois de criada, pode ser utilizada por qualquer nó presente nesta árvore, para que iniciem também envios de broadcast, bastando saber quais são os seus vizinhos e qual está mais próximo do destino da mensagem.
O problema de conexões redundantes nos Switches pode ser exemplificado na figura 1:

Na topologia temos: