STP(Spanning Tree Protocol) : 스위치에서 이더넷 프레임의 루핑을 방지해주는 프로토콜.

(IP패킷의 경우 헤더에 TTL(Time To Live) 필드가 있어 패킷의 무한루프를 막아준다.)

 

 

프레임 루핑의 영향 3가지

1. 브로드 캐스트 폭풍 발생

위와 같은 구성에서, PC1이 PC2에게 ARP요청 프레임을 보낸다고 하자.

 

SW1은 PC1에게 수신한 포트를 제외한 나머지 포트로 ARP 요청 프레임을 브로드캐스트 시킨다.

 

만약 STP가 동작하지 않으면, SW2 및 SW3 도 수신 포트를 제외한 나머지 포트로 ARP 요청 프레임을 브로드캐스트 시킨다.

 

SW1는 자신이 보낸 브로드캐스트를 다시 되돌려 받게된다. 이더넷 프레임이 빙빙도는 이더넷 프레임 루핑 현상이라고 할 수 있다.

(SW2,SW3도 마찬가지)

 

위와 같이 스위치 및 접속된 장비들은 엄청나게 많은 브로드캐스트 프레임을 맞게 된다.

 

하나의 VLAN에서 발생한 브로드캐스트 루핑이 스위치 전체를 느리게 하고, 

 

결과적으로 다른 VLAN에도 영향을 미치게 된다.

 

 

 

2. MAC 주소 테이블 불안정

 

각 스위치들은 동일한 출발지 MAC 주소를 가진 이더넷 프레임을 서로 다른 인터페이스를 통하여 수신하게 된다.

 

예를 들어 SW2이 PC1에 대한 MAC 주소 정보를 SW1으로 부터 받게 되는 것 뿐만아니라, 루핑현상으로 인해 SW3에게서도 받게 될 수 있다.

 

MAC 테이블이 수시로 변경되는 불안정 현상이 발생된다.

 

 

 

3. 이중 프레임 수신

 

PC1, PC2, PC3는 동일한 브로드캐스트 프레임을 여러 개 수신하게 된다.

 

 

 

위 3가지 영향을 방지하기 위해 동작 하는 것이 STP(Spanning Tree Protocol) 이다.

(경우에 따라 STP가 동작해도 이더넷 프레임 루핑이 발생할 수 있으며, 먼저 물리적인 루프를 제거한 다음 원인을 찾아 해결 해야 한다.)

 

 

 

STP가 동작하면 물리적으로 루프 구조인 네트워크에서 특정 포트를 차단상태로 바꾸어 논리적으로 루프가 발생하지 않게 된다.

 

 

논리적으로 SW2와 SW3의 연결을 차단시켜서 위와 같은 구성이 만들어 지도록 하는 것이 STP이며,

(SW2와 SW3간의 연결을 차단 할지, SW1과 SW2의 연결을 차단할지, SW1과 SW3의 연결을 차단할지는 프로토콜로 결정된다.)

 

동작 중인 스위치나 포트가 다운되면 차단상태의 포트를 다시 전송상태로 바꾸어 계속적인 통신을 보장한다.

 

SW1와 SW3간 구간 장애가 일어나서 SW2와 SW3간 연결이 업 상태가 되었다.

 

 

 

 

 

 

 

 

STP는 BPDU(Bridge Protocol Data Unit)라는 프레임을 이용하여 루프가 없는 경로를 구성한다.

 

BPDU는 설정 BPDU와 TCN(Topology Change Notification) BPDU 두 종류가 있다.

(설정 BPDU : 스위치 및 포트의 역할을 결정하기 위하여 사용)

(TCN BPDU : 스위치 네트워크의 구조가 변경되었을 때 알리기 위하여 사용)

 

스위치는 설정 BPDU를 이용하여 루트 스위치를 선출하고, 스위치 포트의 역할을 결정한다.

 

설정 BPDU는 항상 루트 스위치가 만들며, 2초마다 전송한다.

 

다른 스위치들은 이것을 다음 스위치로 전송한다.

 

 

 

 

 

 

 

 

 

[참고문헌]

킹-오브-네트워킹 / 피터 전 지음

 

 

 

+ Recent posts