STP와 RSTP의 차이: 포트의 상태와 역할·전환 속도·BPDU·호환성 비교
스위치를 이중화된 경로로 연결하면 브로드캐스트 프레임이 루프를 계속 돌아 브로드캐스트 스톰을 일으킵니다. STP(스패닝 트리 프로토콜)는 스위치끼리 BPDU라는 메시지를 교환하고 일부 포트를 차단해, 네트워크를 루트 브리지를 뿌리로 하는 루프 없는 트리로 만듭니다. 다만 고전적인 STP(IEEE 802.1D)는 루프가 생기지 않도록 타이머를 기다리며 포트를 포워딩 상태로 옮기므로, 기본값에서는 장애 후 복구에 30~50초가 걸립니다. RSTP(Rapid STP, IEEE 802.1w)는 같은 루트 브리지 선출과 포트를 차단한다는 같은 사고방식을 유지하면서, 이웃 스위치와의 제안·합의 교환과 미리 정해 둔 대체 포트로 전환을 일반적으로 몇 초 이내로 줄였습니다. RSTP는 IEEE 802.1D 2004년판에 통합되어 고전적인 STP를 대신하는 표준이 되었습니다.
| 비교 항목 | STP | RSTP |
|---|---|---|
| 규격 | IEEE 802.1D(1998년판까지) | IEEE 802.1w. IEEE 802.1D 2004년판에 통합 |
| 포트 상태 | 5가지: 디세이블, 블로킹, 리스닝, 러닝, 포워딩 | 3가지: 디스카딩, 러닝, 포워딩 |
| 포트 역할 | 루트 포트와 지정 포트. 어느 쪽도 아닌 포트는 차단합니다 | 루트 포트와 지정 포트에 더해 대체 포트(루트 포트의 대역)와 백업 포트(지정 포트의 예비) |
| 장애 후 복구 시간 | 기본 타이머로 30~50초(최대 에이지 20초 + 포워드 지연 15초 × 2) | 일반적으로 몇 초 이내 |
| 빠른 전환의 구조 | 없음. 타이머를 기다리며 리스닝과 러닝을 거쳐 포워딩에 이릅니다 | 포인트 투 포인트 링크에서는 이웃과 제안과 합의를 교환해 타이머를 기다리지 않고 포워딩을 시작합니다. 루트 포트가 고장 나면 대체 포트가 바로 이어받습니다 |
| BPDU 송신과 장애 감지 | 각 스위치는 루트 브리지가 보낸 BPDU를 중계합니다. BPDU 정보가 최대 에이지(기본 20초) 동안 갱신되지 않으면 장애로 간주합니다 | 각 스위치가 헬로 타임(기본 2초)마다 자신의 BPDU를 보냅니다. 3번 연속 받지 못하면 장애로 간주합니다 |
| 토폴로지 변경 통지 | 변화를 알아챈 스위치가 TCN BPDU로 루트 브리지에 알리고, 루트 브리지가 전체에 퍼뜨립니다. MAC 주소 테이블은 에이징 시간을 포워드 지연(15초)으로 줄여 오래된 항목을 지웁니다 | 변화를 알아챈 스위치가 이웃에게 직접 알리고, 받은 스위치는 MAC 주소 테이블의 오래된 항목을 바로 지웁니다 |
| 단말용 포트 | 규격에서 구별하지 않습니다. 기기를 꽂으면 포워딩이 시작될 때까지 약 30초 기다립니다 | 에지 포트로 설정한 포트는 바로 포워딩을 시작합니다. BPDU를 받으면 일반 포트로 다룹니다 |
| 호환성 | RSTP 스위치와 연결해도 STP로 계속 동작합니다 | STP 스위치와 마주한 포트에서는 STP 호환 동작으로 바꿉니다(그 포트에서의 전환은 느려집니다) |
수치는 대략적인 자릿수 기준이며, 공정 세대와 제품에 따라 달라져요.