검색결과 리스트
글
< 스패닝 트리 프로토콜 >
STP(Spanning Tree Protocol) - 스위치에서 루핑을 막아주기 위한 프로토콜
스위치나 브리지 구성에서 출발지부터 목적지까지의 경로가 두 개 이상 존재할 때, 한 개의 경로만을 남겨 두고 나머지는 모두 끊어 두었다가 사용하던 경로에 문제가 발생하면 그때 끊어두었던 경로를 하나씩 살리는 방식의 프로토콜
① Bridge ID - 스위치나 브리지들이 통신할 때 서로를 확인하기 위해 하나씩 가지고 있는 번호. (디폴트 값은 32768)
구성은 앞 2Byte : Priority, 뒤 6Byte : Mac address
② Path Cost - 스위치가 얼마나 가까이, 빠른 링크로 연결되어 있는지를 알아내기 위한 값이며, 속도가 빠를수록 값이 작다.
둘 사이의 링크 대역폭을 1000Mbps로 나눈 값이지만, 기가비트로 넘어갈 때는 소수점이 나와 IEEE에서 정수 값으로 정의해줌
<스패닝 트리 프로토콜 구하기 법칙>
1. 네트워크당 하나의 루트 브리지를 갖는다
2. 루트 브리지가 아닌 나머지 모든 브리지는 무조건 하나씩의 루트 포트를 갖는다
- 루트포트란? 루트 브리지에 가장 빨리 갈 수 있는 포트
3. 세그먼트(스위치 간에 서로 연결된 링크)당 하나씩의 Designated 포트를 갖는다.
<STP 정하는 순서>
1. 누가 더 작은 Root BID(Bridge ID)를 가졌는가?
2. 루트 브리지의 Path Cost값은 누가 더 작은가?
3. 누구의 BID(Sender BID)가 더 낮은가?
4. 누구의 포트 ID가 더 낮은가?
BPDU란? 스패닝 트리 정보를 자기들끼리 주고받기 위해서 사용하는 프레임, 2초에 한 씩 뿌려짐
① 루트 브리지의 BID
② Root Path Cost값
③ 보내는 브리지의 BID
④ 어떤 포트에서 보냈는지를 알게 해주는 Port ID
<STP 1단계. 루트 브리지 뽑기>
대장 브리지를 뽑는 조건은 무조건 낮은 BID를 갖는 녀석이 대장이 됨
스위치들이 부팅을 시작하면 서로 BPDU를 보내면서 자신의 스위치 정보와 상대방의 스위치 정보를 비교해서 더 낮은 BID를 가려낸다. → 가장 낮은 BID를 갖은 스위치가 루트 브리지가 됨.
명령어)
show spanning-tree : Bridge Priority를 확인하는 명령어
spanning-tree vlan 1 priority 100 : 브리지의 Priority를 100으로 변경하는 명령어
<STP 2단계. Non Root Bridge의 루트 포트 뽑기>
루트 포트를 뽑는 조건은 루트 브리지와 가장 가까이 있는 포트를 말하는데. 즉, Path Cost가 가장 적게 드는 포트를 말한다.
<STP 3단계, Designated 포트 뽑기>
Designated 포트를 뽑는 조건은 우선 맨 처음에 루트 브리지를 뽑았기 때문에 서로의 BPDU에는 모두 같은 Root BID가 있을 것이다. 두 번째 조건인 Path Cost를 이용하여 가장 가까이 있는 포트가 Designated 포트로 뽑힌다.(루트 브리지의 나머지 포트는 모두 Designated가 되는 것을 알 수 있다)
두 번째 조건까지 똑같다면 <STP 정하는 순서>에 세 번째 단계인 Sender ID를 비교해보면 된다.
<스패닝 트리 프로토콜 5가지 상태 변화>
① Disabled : 포트가 고장나서 사용할 수 없거나 포트를 shutdown시켜 놓은 상태
- 데이터 전송 : X
- 맥 어드레스 : 배울 수 없음
- BPDU : 못 받음
② Blocking : 스위치를 맨 처음 켜거나 포트를 다시 살렸을 때 블로킹 상태가 됨. 루트 브리지, 루트 포트, Designated 포트를 뽑는 과정이 블로킹 상태에서 발생한다.
- 데이터 전송 : X
- 맥 어드레스 : 배울 수 없음
- BPDU : 받음
③ Listening : 블로킹 상태에 있던 스위치 포트가 루트 포트나 Designated 포트로 선정되면 포트는 바로 리스닝 상태로 넘어감. But 새로운 스위치가 접속했거나 스위치의 구성 값이 바뀌면서 루트 포트나 Designated 포트에서 Non Designated 포트로 상황이 변하면 블로킹 상태로 돌아감
- 데이터 전송 : X
- 맥 어드레스 : 배울 수 없음
- BPDU : 받음
④ Learning : 리스닝 상태에 있던 스위치 포트가 포워딩 딜레이(15초)동안 그 상태를 유지하면 러닝 상태로 넘어감
- 데이터 전송 : X
- 맥 어드레스 : 배울 수 있음
- BPDU : 받음
⑤ Forwarding : 스위치 포트가 러닝 상태에서 다른 상태로 넘어가지 않고, 포워딩 딜레이(15초)동안 유지하면 포워딩 상태로 넘어간다.
- 데이터 전송 : O
- 맥 어드레스 : 배울 수 있음
- BPDU : 받음
<스패닝 트리에 변화가 생기는 경우>
① Hello Time : 루트 브리지가 얼마만에 한 번씩 헬로 BPDU를 보내는지에 대한 시간. 디폴트 2초
② Max Age : 브리지들이 루트브리지로부터 얼마 동안 헬로 패킷을 받지 못했을 때 루트 브리지가 죽었다고 생각하고 새로운 스패닝 트리를 만들기 시작하는가에 대한 시간.
③ Forwarding Delay : 브리지 포트가 블로킹 상태에서 포워딩 상태로 넘어갈 때까지 걸리는 시간.
1. 루트 브리지로부터 헬로패킷을 2초마다 받던 스위치 C에 갑자기 헬로패킷이 들어오지 않게 된다.
2. 스위치 C는 Max Age시간인 20초 동안 기다리지만, E0포트를 통해 들어오지 않는다
3. 스위치 C는 스위치 B에서 전달해 준 헬로패킷을 자신의 E1포트로 받아들여(원래 블로킹 상태였지만, BPDU는 받아들임), E1포트를 루트 포트로 세팅하게 된다.
4. Non Designated 포트로 블로킹 상태에 있던 스위치 C의 E1 포트를 루트 포트로 선정했다고 바로 포워딩이 되는건 아니다. 포워딩 딜레이 시간 15초를 두 번(리스닝→러닝→포워딩) 기다려야 포워딩 상태로 넘어가게 된다.
VLAN10과 VLAN11 두 VALN을 만들어 종단 장치인 R5와 R7는 VLAN10으로 R6와 R8은 VLAN11로 지정한다.
그 후, R1~R4간의 STP를 조정하여 다음그림과 같이 만들어보자
위에 설명한 방법으로 하려면 R1에 루트(여기 실습에서는 VLAN10만 생각하자)브리지로 만들고, R2를 secondary브리지로 만들어야 가능하다.
R1)
R1의 구성
spanning-tree vlan 10 priority 8192
spanning-tree vlan 11 priority 16384
interface FastEthernet1/0
no switchport
ip address 1.1.1.1 255.255.255.0
interface FastEthernet1/1
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/2
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface Vlan10
ip address 10.10.10.254 255.255.255.0
router ospf 1
network 1.1.1.1 0.0.0.0 area 0
network 10.10.10.254 0.0.0.0 area 0
show spanning-tree brief 명령어를 쳤을때 R1의 STP
VLAN10
Spanning tree enabled protocol ieee
Root ID Priority 8192
Address c400.0b9c.0001
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 8192
Address c400.0b9c.0001
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Designated
Name Port ID Prio Cost Sts Cost Bridge ID Port ID
-------------------- ------- ---- ----- --- ----- -------------------- -------
FastEthernet1/1 128.42 128 19 FWD 0 8192 c400.0b9c.0001 128.42
FastEthernet1/2 128.43 128 19 FWD 0 8192 c400.0b9c.0001 128.43
R2)
R2의 구성
spanning-tree vlan 10 priority 16384
spanning-tree vlan 11 priority 8192
interface FastEthernet1/0
no switchport
ip address 1.1.1.2 255.255.255.0
interface FastEthernet1/1
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/2
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface Vlan11
ip address 11.11.11.254 255.255.255.0
router ospf 1
log-adjacency-changes
network 1.1.1.2 0.0.0.0 area 0
network 11.11.11.254 0.0.0.0 area 0
show spanning-tree brief 명령어를 쳤을때 R2의 STP
VLAN10
Spanning tree enabled protocol ieee
Root ID Priority 8192
Address c400.0b9c.0001
Cost 38
Port 43 (FastEthernet1/2)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 16384
Address c401.0b9c.0001
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Designated
Name Port ID Prio Cost Sts Cost Bridge ID Port ID
-------------------- ------- ---- ----- --- ----- ---------------------------
FastEthernet1/1 128.42 128 19 BLK 19 32768 c403.1ce8.0001 128.42
FastEthernet1/2 128.43 128 19 FWD 19 32768 c402.1ce8.0001 128.43
R3)
R3의 구성
interface FastEthernet1/0
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/1
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/2
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/10
switchport access vlan 10
interface FastEthernet1/11
switchport access vlan 11
show spanning-tree brief 명령어를 쳤을때 R3의 STP
VLAN10
Spanning tree enabled protocol ieee
Root ID Priority 8192
Address c400.0b9c.0001
Cost 19
Port 42 (FastEthernet1/1)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32768
Address c402.1ce8.0001
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Designated
Name Port ID Prio Cost Sts Cost Bridge ID Port ID
-------------------- ------- ---- ----- --- ----- -------------------- -------
FastEthernet1/0 128.41 128 19 FWD 19 32768 c402.1ce8.0001 128.41
FastEthernet1/1 128.42 128 19 FWD 0 8192 c400.0b9c.0001 128.42
FastEthernet1/2 128.43 128 19 FWD 19 32768 c402.1ce8.0001 128.43
FastEthernet1/10 128.51 128 19 FWD 19 32768 c402.1ce8.0001 128.51
R4)
R4의 구성
interface FastEthernet1/0
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/1
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/2
switchport trunk native vlan 99
switchport trunk allowed vlan 1,10,11,1002-1005
switchport mode trunk
interface FastEthernet1/10
switchport access vlan 10
interface FastEthernet1/11
switchport access vlan 11
show spanning-tree brief 명령어를 쳤을때 R4의 STP
VLAN10
Spanning tree enabled protocol ieee
Root ID Priority 8192
Address c400.0b9c.0001
Cost 19
Port 43 (FastEthernet1/2)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32768
Address c403.1ce8.0001
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300
Interface Designated
Name Port ID Prio Cost Sts Cost Bridge ID Port ID
-------------------- ------- ---- ----- --- ----- -------------------- -------
FastEthernet1/0 128.41 128 19 BLK 19 32768 c402.1ce8.0001 128.41
FastEthernet1/1 128.42 128 19 FWD 19 32768 c403.1ce8.0001 128.42
FastEthernet1/2 128.43 128 19 FWD 0 8192 c400.0b9c.0001 128.43
FastEthernet1/10 128.51 128 19 FWD 19 32768 c403.1ce8.0001 128.51
'Network > Switch' 카테고리의 다른 글
스위치(Switch) - STP 조정/보호기술 UplinkFast (0) | 2015.12.16 |
---|---|
스위치(Switch) - STP 조정/보호기술 PortFast (0) | 2015.12.16 |
스위치(Switch) - VTP(Vlan Trunking Protocol) (0) | 2015.12.14 |
스위치(Switch) - MAC 주소와 IP 주소의 관계 (0) | 2015.12.14 |
스위치(Switch) - 트랜스패런트 브리징(transparent bridging) (0) | 2015.12.14 |
RECENT COMMENT