Shortest Path Bridging

Regulamentado como IEEE 802.1aq, em maio de 2012, Shortest Path Bridging (SPB) tem como  principal objetivo facilitar e eliminar erros humanos na hora de configurar uma rede que possua múltiplas rotas.

Os protocolos spanning tree tratam loops através do bloqueio de caminhos reduntantes entre pares de  nós na rede para gerar uma topologia lógica em árvore. Este tipo de procedimento leva a um uso ineficiente da rede. No exemplo abaixo, o protocolo STP encaminha o fluxo pelo caminho vermelho que faz parte da árvore de espalhamento da rede, em vez de usar o caminho mais curto (verde), pois este é bloqueado pelo protocolo. Outra dificuldade dos STP é o longo tempo de convergência.

Extraída de [12]

O Shortest Path Bridging surgiu para substituir os protocolos STP, RSTP e MSTP com as vantagens de ter um menor tempo de convergência e um melhor uso dos caminhos redundantes da rede.

No SPB, cada bridge tem uma árvore de caminhos mínimos que alcança todos os outros bridges daquela região. Desta maneira, a transferência de fluxo entre cada par de bridges é feita através do caminho mínimo.

Quando existe mais de um caminho mínimo entre um par de bridges, cada uma pode escolher um caminho diferente. Quando isso ocorre, dizemos que suas respectivas spanning trees são assimétricas. No exemplo abaixo, a estação X envia um frame para a estação Y. Como nenhuma bridge conhece Y, a spanning tree de A é inundada e cada bridge aprende onde está X. Quando Y responde a X, através da spanning tree de E. Nesta situação, ocorre um erro porque a resposta de Y para X usaria o caminho inverso ao do frame anterior, contudo nesta árvore X não pode ser alcançado por este caminho.

Extraídas de [13]

Para evitar erros como este, o SPB usa vetores de caminho que alteram as spanning trees para que os caminhos se tornem simétricos. Cada bridge propaga, para toda a rede, mensagens com vetores de caminho (path vector). Quando um vetor de caminho é recebido por um bridge, uma flag do bridge é adicionado ao vetor e ele é encaminhado. Se um vetor receber mais de um caminho de custo igual, ele elege um deles baseado no vetor de caminho, em vez de usar o bridge ID.

« Protocolos | Comparação entre soluções »