본문 바로가기
Network

Spanning Tree (11/21)

by 리아챌 2025. 2. 18.

● 디버깅 키는 명령어

 

● Switch Port의 상태 변화

: 스패닝 트리 프로토콜을 구현해 나가는 과정에서 모든 브리지나 스위치의 interface들은 기본적으로 5가지의 상태변화가 발생한다.

 

※ BPDU(Bridge Protocol Data Unit)

- Switch 간 정보교환을 위한 Framedata, BPDU는 network에서 발생할 수 있는 Loop를 방지하기 위한 STP의 정보가 되며, 일정한 시간 간격으로 Switch 간 정보를 교환한다.

 

(1) Disabled (down)

- 포트가 고장나서 사용할 수 없거나 네트워크 관리자가 포트를 Shutdown 한 경우(PwRoff)

- MAC Address 학습 X

- BPDU(Bridge Protocol Data Unit) 송/수신 X

 

(2) Blocking

- 스위치를 처음 Power ON하거나 Disable되어 있는 interface를 관리자 다시 활성화 했을 경우 interface는 Blocking 상태로 진행된다.

- 데이터 전송은 되지 않고, 오직 BPDU만 송/수신 할 수 있다.

- 처음에 스위치가 ON되면 서로 BPDU를 송/수신 하면서 Root Bridge를 선정하고, Designated Port를 선정하는 과정이 스위칭의 Blocking 상태에서 일어난다.

- 데이터 전송 X

- MAC Address 학습 X

- BPDU 송/수신 O

- 0초 or 20초

 

(3) Listening

- Blocking 상태에서 있었던 스위치 interface가 Root Port나 Designated Port로 선정되었으면 interface는 Listening 상태로 진입한다.

- Listening 상태에 있던 interface도 네트워크의 새로운 스위치가 ON되어 접속했거나, 브리지나 스위치의 구성값(Bridge ID)이 바뀌면 Root Port나 Designated Port에서 Non Designated Port 상황이 바뀔 수 있다.

- 데이터 전송 X

- MAC Address 학습 X

- BPDU 송/수신 O

- 15초

 

(4) Learning

- Listening 상태에서 있던 스위치 interface가 포워딩 딜레이(Forwarding Delay) 디폴트 시간인 15초 동안 상태를 유지하면, Listening 상태에서 Learning 상태로 진행.

- Learning 상태에서는 MAC Address를 수신하여 MAC Address Table을 생성.

- 데이터 전송 X

- MAC Address 학습 O

- BPDU 송/수신 O

- 15초

 

(5) Forwarding

- 스위치 interface가 Learning 상태에서 다른 상태로 넘어가지 않고, 포워딩 딜레이 디폴트 시간인 15초 동안 그 상태를 유지하면 Learning 상태에서 포워딩 상태로 진입.

- Blocking 상태에 있던 포트가 Listening -> Learning 을 거쳐서 Forwarding 상태로 오려면 디폴트 딜레이 15초가 두번 지난 30초가 소요

- 데이터 전송 O 

- MAC Address 학습 O

- BPDU 송/수신 O

 

Disabled -> Blocking(20초) -> Listening(15초) -> Learning(15초) -> Forwarding

 

● STP(Spanning-Tree Protocol)스패닝 트리 프로토콜

- 스위치나 브리지에서 발생하는 루핑을 막아주기 위한 프로토콜

- 스위치나 브리지 구성에서 출발지로부터 목적지까지의 경로가 스위치 상에서 두 개 이상 존재 할 때 한 개의 경로만 남겨두고 나머지는 모두 막아버렸다가 사용하던 경로에 장애 및 문제가 발생하면 그 때 막아 두었던 경로를 활성화 한다.

 

※ 현재 동작 중인 스패닝 트리 정보 확인

switch#show spanning-tree

 

- CST(Common Spanning-tree)

: 802.1D, STP 표준

- PVST(Per Vlan STP)

: cisco에서 802.1D를 보안 해서 만든 것

- RSTP(Rapid Spanning-Tree Protocol)

: 802.1W 빠른 STP

- MST(Multiple STP)

: 802.1S

Instance라는 개념으로 VLAN을 묶어서 동작

 

Bridge ID = [ priority 값 + VLAN (번호) ] + BASE MAC ADDRESS

Cost

10 Mbps = 100

100 Mbps = 19

1 Gbps = 4

10 Gbps = 2

 

☆ Designated Port 선출

- 세그먼트(Segment)당 1개의 DP를 갖는다.

 

1) RootBridge의 모든 Port,

단 2개 이상의 Port가 하나의 세그먼트에 연결된 경우는 Port ID가 작은 Port

2) 큰 Bridge ID를 수신한 Port

3) Root Bridge로 가는 링크의 비용이 작은 방향의 Port

4) 연결된 스위치 중 Bridge ID가 작은 방향 Port

 

☆ Root Port 선출

- Root Bridge가 선출되고 난 후 나머지 스위치 (Non Root Bridge)에서 RP가 선출 되어야 한다.

- Root Port는 Non Root Bridge당 1개의 RP를 가진다.

- Root Port를 선출하기 위해서는 다음과 같은 룰을 따른다.

1) Root Bridge로 가는 링크의 비용이 작은 Port

2) 작은 Bridge ID를 수신한 Port

3) 연결된 스위치의 Bridge ID가 작은 Port

4) 연결된 스위치의 Port ID가 작은 Port

5) 자신의 Port ID가 낮은 Port

 

☆ Alternate Port (Blocking Port) 선출

- BPDU를 수신받는 포트이다. 하지만, 실제 데이터는 주고받지 않는다.

- BP가 선정되면 반대편은 DP가 된다.

(BP는 BPDU를 수신받는 포트이기 때문에 DP 포트가 되어야 송수신 가능)

 

1) Root Bridge 까지의 경로 Cost 값이 높은 포트.

2) 스위치의 Bridge ID가 높은 포트.

3) 스위치의 Port ID가 높은 포트.

 

※ RSTP

Discarding

: STP의 차단(Blocking) 상태와 동일, 스위치에서 정보 확인을 하면, Blocking 용어로 출력

Learning

: STP처럼 Forward-Delay 타이머(15초)를 사용하지 않고, 신속하게 진행된다.

Forwarding

: STP의 전송(Forwarding) 상태와 동일하다.

 

Discarding[Blockig, Listening] -> Learning(대기 없음) -> Forwarding

 

● f0/3번 포트가 꺼져있지만,

 

● f0/1 포트를 shutdown 시키면, f0/3번 포트가 새로 켜지게 되고, f0/1포트는 전원이 꺼진다.

 

● Spanning Tree에 대한 기본적인 정보를 보여주는 명령어

 

● 일반적인 Spanning Tree 모드는 pvst

 

● Root ID는 ID를 관리해줌(SW1번에서 Root Switch가 F0/1이라고 알려준다.)

Bridge ID는 자신의 것을 말함.

 

● sh version으로 확인해봤을때 Mac Address가 똑같은 것을 확인 가능

 

● SW2번으로 가서 확인해보면 root라고 되어있다. (Root쪽에 가서 Mac Address를 보면 Mac Address가 서로 같다.)

-> 시스코 스위치는 VLAN마다 Spanning Tree가 돌기 때문에 VLAN 값이 추가돼서 기본적인 32768에 VLAN 값을 더해서 32769가 된다.

 

● VLAN 10번을 만들면 Spanning Tree에 VLAN 10번이 추가되게 되고, 기본적인 32768에 VLAN 값을 더해서 32778이 된다. (SW3번에는 VLAN만 만들어준다. Trunk할 필요가 없음.)

 

● Vlan의 Priority값을 원래 root였던 SW2의 Priority값보다 낮게 설정하면 (4096의 배수로 설정) 하지만, 이 방법은 다른 Switch의 Priority를 알 때 사용할 수 있다. 일반적으론 사용하기 어려움. 그렇기 때문에 vlan 1 root priority를 사용한다.

 

● 그 결과 Blocking 포트 위치가 바뀌게 되고, root가 SW2에서 SW1으로 바뀌게 된다.

 

● spanning-tree vlan 1 root primary - 다른 priority보다 가장 낮게 알아서 설정해주는 명령어다.

 

● root bridge 그 다음으로 낮은 priority로 설정해주는 명령어

 

● root 포트는 전부 Designation 포트로 지정 되어있다.

 

● root 포트는 root로 가는 최단 거리의 포트(MAC Address가 Root 다음으로 두번째로 낮기 때문에 다른 경로가 Designation 포트로 지정되어있다.)

 

● SW3은 MAC Address가 가장 크므로 Alternative 포트로 지정된다.

 

● 이 명령어를 사용하게 되면, 인터페이스를 하나 다운 시키면 기다릴 필요없이 바로 주황불에서 초록불로 들어오게 된다.

 

● portfast 명령 - 전원 들어오는 것을 기다릴 필요가 없다. 바로 코딩단계로 넘기는 명령(바로 초록불이 들어온다.)

 

● 스위치나 허브가 아니라면 portfast가 default로 걸리는 명령

'Network' 카테고리의 다른 글

라우팅 이론, 서브넷팅, LAN (09/11)  (0) 2025.02.19
Port security (11/22)  (0) 2025.02.19
DTP (11/15)  (0) 2025.02.18
스위치 (11/08)  (0) 2025.02.18
NAT (10/24, 10/30)  (0) 2025.02.18