STP?
이더넷 프레임이 장비들 사이에서 프레임이 소멸되지 않고 계속 도는 현상을 루핑이라고 합니다. 이를 막아주기 위한 프로토콜이 바로 STP 입니다.
전 글에서도 썼던 토폴로지인데 루핑은 이런식의 종단간 종단으로 끝나지 않고 서로 유기적으로 연결돼 있는 토폴로지에서 발생하기 쉬운 문제입니다. 루핑은 broadcasting storm, mac address table 불안정 등등을 야기할 수 있어 무시하면 안되는 인프라 오류 입니다.
STP 작동방식
STP는 이런 구조에서 루핑을 방지하기 위해 물리적으로 연결돼 있는 링크를 논리적으로 차단해 루핑이 발생하지 않는 종단간 망처럼 만들어 줍니다. 만약 허용됐던 링크가 장애를 일으키면 차단하고 차단돼있던 링크를 다시 허용해 서비스 중단을 막습니다. 따라서 위의 사진에서도 정상적으로 연결돼 있는 회선이 차단되어 있는 것을 볼 수 있습니다.
1. BPDU : 브리지 ID , 경로 비용, 포트 정보 등의 정보를 담음 BPDU 프레임을 정기적으로 송출하고 수신함
2. 브리지 루프 차단 : 각 브리지에서 루트 브리지로 가는 각 경로의 비용을 계산하고 비용이 가장 낮은 경로만 유지한채 다른 경로는 중단 시킴
3. 장애 발생시 Alternate 상태의 포트를 활성화 해 30초 정도의 대기 시간 이후 정상 적으로 통신 함 (토폴로지에서 주황색으로 차단된 포트)
Switch 선출 방식
- 루트 스위치를 선출 bridge id가 가장 낮은 스위치가 선출됨
- 루트 스위치 이외에 모든 스위치에서 루트 포트를 하나씩 선출함 경로 값의 합이 가장 작은 포트 인접 스위치의 Bridge ID가 가장 낮은 포트 인접 스위치의 포트 ID가 가장 낮은 포트
- 각각 스위치의 지정포트(Designated port)를 선출함. 지정포트는 스위치당 한개씩 선출되며 이 포트를 통해 프레임을 전송함
- 루트포트와 지정포트를 대체할 Aleternate port를 선출함 (항상 차단되어 있는 포트)
STP port 상태
- 차단 : 데이터 프레임은 송수신하지 않고 BPDU만 수신함. 포트가 활성화되면 Root, Designated 일때 청취하고 Alternate일때 차단 상태가 된다. 대체 포트에서 지정 포트나 루트 포트가 될땐 20추 정도의 대기 후 청취 상태로 변경된다.
- 청취 : 포트가 Dsignated일때 BPDU를 전송한다. 15초가 지나면 학습 상태로 변하는데 이 시간을 전송지연 타이머라고 함
- 학습 : MAC 테이블을 채움 15초가 지나면 전송상태로 변하고 이 시간도 전송지연타이머라고 함
- 전송 : 데이터 프레임을 정상적으로 송수신함
show spanning-tree vlan 1 명령어로 stp 상태 정보 확인 가능
debug spanning-tree evetns 명령어로 stp 동작 확인 가능
Portfast
이 설정이 되어 있지않은 스위치의 포트는 상태를 변경할때 청취→학습→ 전송 상태 단계를 거치게 되는데 이는 확실히 느리다. portfast를 활성화 함으로써 위의 과정 없이 바로 전송상태가 된다.
단일 호스트에 연결된 포트에만 활성화 시켜야 한다고 함. 허브,스위치, 브리지 등등에 활성화하면 루프가 발생할 수 있음
PVST
전통적 stp의 단점을 보완하기 위한 stp의 한 타입으로 stp는 vlan의 존재 여부를 무시하고 경로를 지정하게 되는데 이럴때 상황에 따라 치명적 오류를 낼 수 있다. 따라서 이를 보완하기 위해 VLAN마다 트리를 만드는 것을 말한다.
PVST는 CST(일반 STP의 트리)와 통신하지 못하는데 이를 위해 개발된게 PVST+, PVST+의 동작으로 CST와 각각 나눠져 있는 PVST를 연결해줌
RSTP(RAPID Spanning tree protocol)
STP의 장애 발생 시 동작시간은 30초 또는 50초 이런 시간을 줄이기 위해 Portfast, Uplink Fast등의 방법이 있지만 시간을 줄이는데 한계가 있다. 이를 해결하기 위해 존재하는게 RSTP
동작 과정
- RSTP는 자신의 BPDU 정보가 우세하면 바로 자신이 Designated Port라고 주장하기 위헤 Proposal PDU를 송신
- 이것을 수신한 상대 포트는 자신이 Root Port가 되겠다는 Agreement BPDU를 송신하고 포트를 전송상태로 변경
- Agreement BPDU를 수신한 Designed Port도 즉시 전송상태로 변경
원래 STP가 30초 또는 50초(루트포트,지정포트 → 전송포트) 걸리던 것에 비해 바로 전송상태로 변함
설정법
spanning-tree mode rapid-pvst //모든 스위치에 설정해줘야 함
spanning-tree vlan 1 priority 0 //루트 스위치 지정
int g0/0
//종단에 연결된 pc나 서버, 라우터같은 장비에 연결된 스위치 포트에는 Port Fast 설정해줘야
//전송 모드로 변함
spanning-tree portfast
포트의 역할
- Root BPDU를 수신하는 역할 스위치당 1개 프레임 송수신 가능
- Designated STP와 동일하게 BPDU를 송신하는 역할(수신을 못함) 프레임 송수신 가능
- Alternated Root port가 다운될 시 대체포트로 루트포트로 역할을 바꿈 프레임 송수신 불가능 BPDU 수신은 가능
- Backup 2개의 스위치 간 링크가 복수개로 연결되어 있을 때 생김 한쪽이 Designated라면 나머지들은 Backup이 됨 Designated가 다운되면 Backup이 대체함
- Disabled 말 그대로 사용할 수 없는 shutdown된 포트
포트 상태
- 폐기상태 STP의 차단상태와 동일한 역할 수행
- 학습상태 STP와 동일 역할 수행 STP와는 다르게 15초 유지 이런거 없고 바로 포워딩상태로 변경
- 전송상태 STP와 동일 역할 수행 프레임 송수신 가능 상태
'네트워크 > 네트워크 일반' 카테고리의 다른 글
frame-relay(point to point, multi point) (0) | 2022.11.04 |
---|---|
BOGON IP (0) | 2022.10.20 |
Etherchannel (Link Aggregation) (0) | 2022.08.14 |
VTP (2) | 2022.08.14 |
라우터 NAT(static,dynamic,pat,port-forwarding) (0) | 2022.08.13 |