STP – 동작

STP/RSTP는 각 스위치 포트를 전달 상태(forwarding state) 또는 차단 상태(blocking state) 중 하나로 설정하여 루프를 방지합니다. 전달 상태에 있는 인터페이스는 정상적으로 작동하여 프레임을 전달하고 수신합니다. 반면, 차단 상태에 있는 인터페이스는 STP/RSTP 메시지(및 일부 다른 오버헤드 메시지)를 제외하고는 어떤 프레임도 처리하지 않습니다. 차단 상태의 인터페이스는 사용자 프레임을 전달하지 않으며, 수신된 프레임의 MAC 주소를 학습하지 않고, 수신된 사용자 프레임을 처리하지도 않습니다.

아래 그림은 SW3의 포트(Gi0/2) 하나를 차단 상태로 설정함으로써 문제를 해결하는 간단한 STP/RSTP 트리를 보여줍니다.

그림1 – STP/RSTP의 역할: 루프를 차단하기 위해 포트를 차단합니다

이제 Bob이 브로드캐스트 프레임을 전송해도 프레임이 순환하지 않습니다. 그림의 단계에서 볼 수 있듯이:

1단계. Bob이 프레임을 SW3로 전송합니다.

2단계. SW3는 프레임을 SW1으로만 전달하고, SW2로 연결된 Gi0/2를 통해서는 전달하지 않습니다. 이는 SW3의 Gi0/2 인터페이스가 차단 상태이기 때문입니다.

3단계. SW1은 해당 프레임을 Fa0/11과 Gi0/1 양쪽 모두로 전송합니다.

4단계. SW2는 Fa0/12 및 Gi0/1을 통해 프레임을 브로드캐스트합니다.

5단계. SW3는 프레임을 물리적으로 수신하지만, SW3의 Gi0/2 인터페이스가 차단 상태이므로 SW2로부터 수신된 프레임은 무시합니다.

그림1에 표시된 STP/RSTP 토폴로지에서 스위치들은 이 VLAN의 트래픽에 대해 SW2와 SW3 사이의 링크를 사용하지 않는데, 이는 STP의 (사소한) 원하지 않는 결과이기는 합니다. 하지만 나머지 두 링크 중 하나가 장애를 일으키면 STP/RSTP가 수렴하여 SW3가 Gi0/2 인터페이스에서 트래픽을 차단하지 않고 전달상태로 변경됩니다.

STP Convergence란 스위치들이 LAN 토폴로지에 변화가 발생했음을 공동으로 인지하고, 어떤 포트를 차단하고 어떤 포트를 전달할지 변경해야 하는지 결정하는 과정을 의미합니다.

STP/RSTP가 각 포트를 전달(forwarding) 상태나 차단(blocking) 상태 중 하나로 설정한다는 설명은 끝났습니다. 이제 중요한 것은, STP/RSTP에서 어떤 스위치의 어떤 포트를 차단하는가? 그리고 왜 그러한 선택을 하는가? 하는 점입니다. STP/RSTP는 어떻게 각 인터페이스에서 스위치가 트래픽을 차단하거나 전달하도록 제어할까요? 또한 네트워크 장애 발생 시 이중화된 링크를 효과적으로 활용하기 위해 차단 상태에서 전달 상태로 전환되는 수렴 과정은 어떻게 이루어질까요?