네트워크

스패닝 트리 프로토콜 STP

knxwledge 2025. 3. 28. 15:59

스패닝 트리 프로토콜(Spanning Tree Protocol)은 브릿지가 순환 형태로 연결되어 있을 때 패킷이 끊임없이 도는 것을 막는 2계층 프로토콜이다. 위 그림과 같이 특정 포트를 비활성화하는 방식으로 작동한다. 정확한 작동 순서는 다음과 같다.

 

1. root 브릿지가 선정된다. root 브릿지는 bridge ID(BID)가 가장 낮은 브릿지인데, 이 BID는 터미널에서 설정할 수 있다. 예시 그림에서는 브릿지 위에 쓰인 숫자가 BID다.

root 브릿지 선정

 

2. root 외의 브릿지에서 root 브릿지에 "가장 가까운" 포트가 root port (RP)로 지정된다. 여기서 가깝다는 것은 root 브릿지로 가는 cost가 낮다는 것을 의미한다. 만약 root 브릿지까지의 cost가 같은 포트가 있으면 더 낮은 BID의 브릿지를 거쳐 가는 쪽을 RP로 한다. 예시 그림에서는 각 세그먼트, 즉 브릿지 사이 연결부위의 cost가 동일하다고 가정했다.

RP 지정

 

3. 각 세그먼트(브릿지 사이 연결부위)에서 root 브릿지에 더 가까운 포트가 designated port (DP)로 지정된다. 마찬가지로 한 세그먼트에서 root 브릿지로 가는 cost가 같은 경우 더 낮은 BID의 브릿지를 거쳐가는 쪽을 DP로 한다.

DP 지정

 

4. RP나 DP가 아닌 포트들은 비활성화된다.

모든 브릿지가 서로 통신할 수 있지만 패킷이 순환할 수는 없는 구조가 되었다.

 


 

예시에서는 RP인 포트는 DP가 아니고, DP인 포트는 RP가 아니다. 여기서 궁금할 수 있는 점이 있는데, 한 포트가 RP이며 DP일 수는 없을까? 간단히 말하면, 그럴 수 없다. RP와 DP의 정의를 살펴보면 이 두 개념이 상호배제적이라는 것을 알 수 있다.

 

만약 다음과 같이 브릿지 A와 B의 연결 세그멘트에서 B쪽 포트가 RP라고 가정하자. 

이것은 B에서 root 브릿지까지 가는 가장 cost가 낮은 경로가 A를 거쳐간다는 뜻이다. 그러므로 무조건 A쪽 포트가 root 브릿지와 가깝다. 즉, A쪽 포트가 DP인 것이다.

 

다음으로 B쪽 포트가 DP라고 가정하자.

이것은 A쪽 포트보다 B쪽 포트가 root 브릿지와 가깝다는 뜻이다. 그러면 B에서 root 브릿지까지 가는 가장 짧은 경로에 A가 포함될 수 없다. 그러니 B의 RP는 다른 포트여야 한다.

'네트워크' 카테고리의 다른 글

IP 패킷의 구조  (1) 2025.04.09
이더넷 패킷의 구조  (0) 2025.04.09
DNS 계층 구조  (0) 2025.02.20
두 스위치에 나눠져 있는 VLAN을 trunk로 연결하기  (1) 2025.01.31
스위치 VLAN으로 나누기  (4) 2025.01.27