스위치를 이중화 구조로 구성한 경우 발생할 수 있는 루프를 방지해주는 프로토콜이다. 목적지로 향하는 경로가 2가지 이상이 있는 경우 하나의 경로를 차단하고 하나의 경로만 사용하게 하여 프레임이 중복 생성되어 루프가 발생하는 것을 방지한다.
STP 구성요소
- BPDU (Bridge Protocol Data Unit) : 스위치 간 STP 정보를 교환하는데 사용되는 프로토콜로 2초 간격으로 전송한다.
- Root Bridge : 가상 상위에 있는 스위치로, 내부 네트워크의 모든 프레임이 루트 브릿지를 거친다.
- BDI (Bridge ID): 스위치를 고유하게 식별할 수 있게 해주는 고유 ID로 Priority와 MAC Address를 조합해서 구성된다.
- Root Port : Non-Root 브릿지에서 Root 브릿지로 가는 최적의 경로에 있는 포트다.
- Designated Port : 루트 브릿지로 부터 프레임을 전달 받는데 가장 좋은 경로의 포트다.
- Non Designated Port : Block Port로 지정되어 통신에 사용되지 않고 BPDU 수신만 가능한 포트다.
STP 동작과정 6단계
- Root Bridge 선출
- 모든 스위치는 최초 자신을 루트 브릿지로 간주하고 BPDU를 뿌린다.
- 전달 받은 BPDU에서 가장 낮은 Bridge ID를 루트 브릿지로 선출한다.
- Root Port 선정
- Non-Root 브릿지에서 Root 브릿지로 가는 최적의 경로를 계산하기 위해 Path Cost를 산출한다.
- Path Cost를 통해 대역폭이 높아 가장 빠르게 프레임을 보낼 수 있는 포트를 찾아 루트 포트로 선정한다.
- Path Cost가 같다면 Sender BID가 낮은 포트를 루트 포트로 선정한다.
- Sender BID도 동일하면 Sender의 포트 번호가 낮은 포트를 루트 포트로 선정한다.
- Sender의 포트도 동일하면 자신의 포트가 낮은 포트를 루트 포트로 선정한다.
- Designated Port 선정
- Root 브릿지로 가는 최적의 경로를 제공하는 포트를 Designated 포트로 지정한다.
- 루트 브릿지의 모든 포트는 Designated 포트로 지정된다.
- Non Designated Port (Blocking Port) 설정
- 루트 포트와 Designated 포트를 제외한 나머지는 모두 Blocking 포트로 지정한다.
- 토폴로지 변화 감지 및 대응
- 링크가 다운되거나 스위치가 추가되었을 때 BPDU를 통해 변화를 감지한다.
- 토폴로지가 변경되면 MAC Address Table을 갱신한다.
- 동작과정: Blocking →Listening → Learning → Forwarding
- (Listening) Blocking 포트를 Designated 포트로 변경한다.
- (Learning) MAC Address를 학습한다.
- (Forwarding) 데이터를 전송 가능한 상태가 된다.
- Convergence
- 모든 스위치가 일관된 네트워크 뷰를 가질 때까지 위 과정을 반복한다.
- 완전한 Convergence 상태가 되기 까지 30~50초가 소요될 수 있다.
STP 지연 시간 단축을 위한 기술
- Port Fast
- 신규 스위치가 추가되었을 때 STP 동작으로 인한 지연 없이 바로 Forwarding 상태로 전환한다.
- Up Link Fast
- 링크에 장애가 발생 했을 때 Blocking 상태에서 즉시 Forwarding 상태로 전환한다.
- Backbone Fast
- Blocking 포트를 Listening 포트로 변경 과정에 발생하는 지연 시간을 없애고 바로 변경해준다.
- RSTP (Rapid Spanning Tree Procotol)
- STP 가 발생 시키는 지연 시간을 개선한 STP 방식이다.
- 링크 장애 발생 시 인접 스위치들과 제안, 동의 메세지를 주고 받아 즉시 상태를 변경하는 방법이다.
- 링크에 문제가 발생했을 때 자신이 Root Bridge, Port가 되겠다고 제안 메세지를 보낸다.
- 메세지 수신측은 상대방과 자신의 BID를 비교해 동의 여부를 응답하고, 이를 기반으로 상태를 변경하는 방식이다.
- Port Aggregation (Etherchannel)
- 스위치 간 포트 회선을 여러 개로 구성해서 대역폭을 높이고자 해도 STP로 인해 1개의 회선만 사용하게 된다.
- 물리적으로 다중 회선으로 구성되어 있어도 논리적으로 1개의 포트처럼 사용할 수 있게 해주는 기술이다.
'CS Fundamentals > Network' 카테고리의 다른 글
[Network] Switch & Router 기본 설정 (0) | 2025.03.11 |
---|---|
[Network] Switch (0) | 2025.03.10 |
[Network] OSI 7 Layer & TCP/IP 5 Layer (0) | 2025.02.18 |