PVST, PVST+

mcyoo.log·2022년 7월 6일
0

Network

목록 보기
6/14
post-thumbnail

PVST (VLAN별로 루트 브리지 선정을 통한 로드 분산)

-----------------------CST (common spanning-tree : STP 1개)--------------------

  • 장점 : VLAN 추가시 STP로 인한 스위치 CPU 부하가 발생되지 않는다.
  • 단점 : VLAN 로드 분산 불가능

------------------------PVST(per VLAN spanning-tree : STP 4개)-------------------

  • 장점 : VLAN 로드 분산 가능
  • 단점 : VLAN 추가시 STP로 인한 스위치 CPU 부하가 발생된다.
    IEEE 802.1d STP 사용하는 기본 서비스 방식
    IEEE 802.1q 트렁크 : PVST+
    Cisco ISL : PVST

스위치에서 특별히 조정하지 않으면, STP는 루프방지를 위해서 모든 VLAN에 대해서 특정 포트를 차단한다. 그러나 모든 VLAN대하여 STP를 운용하게 되면,
어느 한 곳은 지속적으로 차단 되어 있어서, 모든 트레픽이 한곳으로 집중되어 효율적이지 못하다.

그래서 위그림과 같이 VLAN별로 루트브릿지를 다르게 설정하면, VLAN별로 다른 경로를 사용하므로 효율적인 로드 분산이 가능해 진다.

위 그림은 스위치 1을 VLAN 10,20의 루트 브릿지로 설정 하였고, 스위치 2에게 VLAN 10에 대한 secondary root 브릿지로, 스위치 3에게 VLAN 20에 대한 secondary root 브릿지로 설정 하였다.
따라서 VLAN 10이 전송 될 떄는 스위치 4번의 우측 포트가 차단되어 파란화살표 방향으로 이동할 것이고,
VLAN 20이 전송 될 떄는 스위치 4번의 왼쪽 포트가 차단되어 빨간화살표 방향으로 이동할 것이다.

1) 스위치 1을 VALN10, VLAN20의 루트스위치로 지정하기 (둘중 한가지 방법만 사용)
- SW1(config)# spaning-tree vlan 10,20 root primary ----> SW1스위치를 VLAN10,VLAN20의 루트스위치로 지정(자동으로 브릿지ID가 조정됨)

   - SW1(config)# spaning-tree vlan 10,20 priority 4096 ----> SW2,SW3,SW4의 브리지ID 보다 작게 조정 함

2) 스위치2를 VLAN 10의 cecondary root 브릿지로 지정하기 (둘중 한가지 방법만 사용)
- SW2(config)# spaning-tree vlan 10 root secondary ----> SW2스위치를 VLAN10의 secondary 루트스위치로 지정(자동으로 브릿지ID가 조정됨)

   - SW2(config)# spaning-tree vlan 20 priority 8192 ----> 브릿지 ID를 SW1보다 크고2,SW3,SW4보다 작게 조장 함.

일반 STP 는 BPDU 패킷이 네이티브 vlan 을 통해 언테그 해서 프레임을 전송한다
반면에 PVST+ 는 BPDU패킷을 테깅해서 보낸다. 대신 native vlan 에 대해선 untagged 한다 .
밑에 사진보면 패킷이 좀 다른데 그냥 pvst+ bpdu는 태깅한다라고 생각하자

MSTP와 관련하여 MSTP는 트렁크의 기본 VLAN과 상관없이 모든 BPDU를 태그 화되지 않은 상태로 보냅니다. 개별 인스턴스에 대한 정보는 단일 MSTP BPDU 내에 소위 Mrecords로 포함되어 있으며 전체 BPDU는 태그되지 않은 상태로 전송됩니다.

PVST +는 더 복잡합니다. 다음 두 가지 문서를 읽으시기 바랍니다.

http://www.cisco.com/en/US/tech/tk389/tk621/technologies_tech_note09186a00801d11a0.shtml#topic1
http://www.cisco.com/en/US/docs/ios/lanswitch/configuration/guide/lsw_rtng_vlan_ovw_ps6350_TSD_Products_Configuration_Guide_Chapter.html#wp1006501

즉, 기본 VLAN이 VLAN1 인 경우 :

VLAN1 표준 STP BPDU는 태그가 지정되지 않은 상태로 전송됩니다.
VLAN1 PVST + BPDU는 태그가 지정되지 않은 상태로 전송됩니다.
다른 VLAN의 PVST + BPDU에는 적절한 VLAN 태그가 전송됩니다.

네이티브 VLAN이 VLAN1과 다른 경우 다음을 수행합니다.

VLAN1 표준 STP BPDU는 태그가 지정되지 않은 상태로 전송됩니다.
VLAN1 PVST + BPDU에 VLAN1 태그가 전송됩니다.

다른 VLAN의 PVST + BPDU는 그에 따라 태그 지정되어 전송됩니다 (기본 VLAN에 대한 태그가 지정되지 않음)

즉, 표준 STP BPDU는 항상 VLAN1에서 파생되며 항상 태그가 지정되지 않은 상태로 전송됩니다. PVST + BPDU는 해당 VLAN에서 파생되며 트렁크의 기본 VLAN에 따라 태그가 지정됩니다.

루프를 피하기 위해 스위치는 먼저 다음과 같은 목적으로 BPDU를 교환해야합니다.
모든 스위치는 루트 브리지에서 공동으로 동의해야합니다.
각 비 루트 스위치는 루트 포트를 선택해야합니다.
각 세그먼트는 지정 포트를 선택해야합니다.

네이티브 VLAN을 통해 라우터간에 BPDU가 교환됩니다.

따라서 동일한 도메인에있는 스위치 간의 기본 VLAN이 다른 경우 (BPDU가 서로 다른 스위치에서 다른 VLAN을 통해 수신 된 경우) 누가 브리지인지를 공동으로 결정할 수 없으며 이로 인해 포트 역할이 일치하지 않아 스위치간에 루프가 발생할 위험이 있습니다.

따라서 주어진 두 스위치 간의 솔루션은 다음과 같습니다.
특수 MAC 주소 0180 : C200 : 0000 (첫 번째 채널)을 통해 네이티브 VLAN (로컬로 구성된)에 BPDU (항상 태그 없음)
두 번째 특수 MAC 주소 인 0100.0CCC.CCCD를 통해 기본 VLAN (로컬로 구성된) VLAN-ID를 보냅니다. 두 번째 채널 (VLAN-id = 1 인 경우 태그가 지정되지 않고 VLAN-id가 1이 아닌 경우 태그가 지정됨)
수신기는 제 2 채널에서 수신 된 VLAN-ID를 자신의 네이티브 VLAN-ID와 비교한다; if diffeent = "" % SPANTREE-2-BLOCK_PVID_LOCAL : VLAN1에서 차단. 일관되지 않은 로컬 vlan.PVST + : 에 대한 전달 지연 타이머를 다시 시작 함 "

참고
https://cciethebeginning.wordpress.com/2008/10/15/differences-between-pvst-and-pvst/
https://yhat.tistory.com/73

0개의 댓글