SPB의 등장배경
2012년 SPB(Shortest Path Bridge)는 아래와 같은 STP의 문제점을 대체하기 위해 Huawei, Avaya, Alcatel 등의 회사에서 6년의 연구 끝에 출시되었습니다.
STP의 구조 | 발생하는 오류 |
루핑 방지를 일부 회선을 차단하여 경로를 제한함 | 루트 브릿지를 경유하는 비효율적 경로 |
사용되지 않는 회선의 낭비 | |
루트 경로 선출 시 경로 학습에 절차와 시간이 복잡함 EX) Blocking(20초) -> Listening(15초) -> Learning(15초) -> Forwarding |
루트 회선 장애 발생 시 복구되는 동안 필연적으로 50초 동안의 네트워크 블랙홀 발생 |
SPBM의 정의
SPB(Shortest Path Bridging)는 2006년 처음 발표되어 2012년 IEEE 802.1aq와 RFC 6329에 표준 프로토콜로 정의되었습니다. SPB의 목표는IS-IS, 멀티캐스트 등의 기술을 이용하여 복잡한 설정 없이 STP를 대체하는 것입니다.
SPB는 Q-in-Q 방식을 이용하는 SPBV와 Mac-in-MAC 방식을 이용하는 SPBM으로 구분됩니다.
SPBM의 개선점
AS-IS | TO-BE |
루트 브릿지를 경유하는 비효율적 경로 사용 | IS-IS 라우팅을 이용한 2계층 경로 라우팅으로 보완 |
사용되지 않는 회선의 낭비 | |
루트 회선 장애 발생 시 복구되는 동안 필연적으로 50초 동안의 네트워크 블랙홀 발생 | 최단 경로 내 ECM 알고리즘을 이용한 최대 16개의 로드밸런싱 제공 |
루핑을 발생시키는 브로드캐스트 트래픽 존재 | 브로드캐스트를 지원하지 않으며 브로드캐스트 트래픽 발생 시 멀티캐스트로 변환하여 통신, 독특한 루핑 차단 알고리즘 |
SPBM의 작동방식
SPBM의 표준 문서에는 2계층에서의 작동만 명시되어 있습니다. 지원 벤더들의 꾸준한 지원으로 현재는 L3도 충분히 지원합니다. 개인적으로는 VXLAN보다 L3 관점에서 구성이 더 복잡한 것 같습니다.
이제는 3Tier-Network 보다 Spine-Leaf 구조가
SPBM 용어
용어 | 의미 |
BEB (Backbone Edge Bridge) | PC와 같은 종단장치와 연결되는 스위치이다 |
BCB (Backbone Core Bridge) | BEB를 연결하는 스위치이다 |
UNI (User Network Interface) | PC, 서버 등의 장치가 연결되는 BEB의 인터페이스 |
NNI (Network-Network Interface) | BEB와 BCB를, BCB와 BCB를 연결하는 인터페이스 |
SPBM Network | SPBM이 실행되는 구역 |
Customer Network | 실제 VLAN이 할당되어 있는 종단 구역 |
I-SID | SPBM 네트워크에서 캡슐화된 각 프레임이 어는 VLAN에 속했는지 구분한다 |
C-VID | 고객 네트워크의 VLAN ID |
B-VID | IS-IS 라우팅과 ECT에 의해 선정된 16개의 최단경로를 매핑한 VLAN |
B-SA | 송신 BEB의 MAC |
B-DA | 수신 BEB의 MAC |
SPBM 패킷 구조
필드 | 설명 | |
B-DA | 대상 BEB를 식별하는 대상 B-MAC입니다. | |
B-SA | 소스 B-MAC. 이는 MAC-in-MAC 프레임을 캡슐화하는 BEB의 알려진 MAC 주소입니다. | |
B-TAG | TPID | 프레임을 802.1ah 캡슐화된 프레임으로 식별하기 위해 0x88E7에 고정된 값입니다. |
B-VLAN | 경로 로드밸런싱을 위해 ECT 알고리즘과 매핑되는16개의 임의의 VLAN ID입니다. | |
I-TAG | 이 필드에는 고객 VLAN ID와 우선순위가 포함됩니다. | |
I-PCP | BEB에서 프레임의 전송 우선순위입니다. | |
I-DEI | BEB에서 프레임의 우선순위를 삭제합니다. | |
I-SID | 해당 값으로 어느 VLAN의 트래픽인지 구분합니다. | |
C-DA | 고객 대상 MAC 주소 | |
C-SA | 고객 소스 MAC 주소 | |
C-TAG | Customer 네트워크에서의 VLAN ID와 우선순위가 포함됩니다. |
작동 방식
위와 같이 BEB, BCB 장치로 이루어진 네트워크를 SPBM 네트워크, BEB와 연결되는 네트워크를 고객 네트워크로 구분하게 됩니다. IS-IS에 의하여 SPBM 네트워크의 모든 스위치는 MAC을 이용하여 라우팅 됩니다. BCB 스위치의 경우 고객 네트워크에 존재하는 종단 장치들의 MAC을 학습하지 않습니다.
각각의 고객 네트워크의 VLAN은 SPBM 네트워크 안에서 I-SID 값으로 지정됩니다. 같은 I-SID로 묶인 경로들을 VSI(Virtual Switch Instance)라고 하며 해당 BEB 스위치끼리 PW라는 터널링을 형성합니다.
터널링을 형성한 같은 I-SID에 위치한 BEB 스위치들은 각각 가지고 있는 종단 장치의 MAC을 서로 학습합니다. 이 때 ARP가 발생하게 되는데 SPB는 브로드캐스트를 지원하지 않기 때문에 트래픽을 멀티캐스트로 변환하여 전달합니다.
모든 SPB 노드는 고유한 SPsourceID를 가지고 있고 이 또한 IS-IS에 의해 공유됩니다. SPsourceID와 I-SID 값을 바탕으로 같은 최단 경로에 있는 SPB 노드끼리 그룹을 형성하게 됩니다. 그룹을 형성한 노드들은 해당 ARP 트래픽을 전달받아 MAC을 학습합니다.
SPBM이 브로드캐스트를 막는 알고리즘은 한 가지 더 있습니다. SPBM에서 NNI 포트로 어떤 트래픽이 들어올 때 해당 트래픽이 최단 경로로 지정된 포트에서 들어오는 트래픽이 아니라면 루핑이 발생했다고 판단하고 프레임을 폐기합니다.
표준문서에 따르면 SPBM은 ECT 알고리즘을 이용하여 최대 16개의 최단경로를 제공합니다. 초기에는 모든 ECT 알고리즘에 의한 경로가 기본 B-VID에 매핑되어 있는데 이런 ECT 알고리즘의 경로에 B-VID를 매핑하여 로드밸런싱을 구현할 수 있습니다.
EX) 홀수 I-SID는 B-VID 1에 매핑, 짝수 I-SID는 B-VID 2에 매핑
Layer 3 SPBM
3계층의 SPBM은 2계층의 SPBM처럼 작동하지만 I-SID는 VLAN이 아닌 VRF에 매핑 됩니다. 따라서 VRF로 연결된 라우터의 서로 다른 서브넷이 하나의 I-SID로 분리됩니다. 또, LAYER 3 IP에선 멀티캐스트가 표준이 아니므로 SPB에서는 구성의 복잡성으로 인해 PIM과 같은 추가적인 프로토콜을 사용하는 대신 3가지의 TLV 확장을 이용하고 있습니다. 이런 방식은Avaya, Alcatel, Extreme벤더에서만 지원하기 때문에 Layer 3에서 구성하려면 Edge 노드를 위 벤더의 장비로만 구성해야 합니다.
Layer3간 이동이 있더라도 같은 서브넷을 이용할 수 있도록 구성할 수 있습니다. 2계층 SPBM에 하나 이상의 IP 인터페이스를 구성하여 3계층 SPBM에 연결하여 서로 다른 라우터에 연결되어 있더라도 같은 서브넷과 I-SID를 공유할 수 있습니다.
'네트워크 > 네트워크 가상화, 자동화' 카테고리의 다른 글
Shortest Path Bridging 의 L2, L3에서 작동 (0) | 2024.05.02 |
---|---|
Anycast Gateway (0) | 2024.04.29 |
Ansible Tags (1) | 2023.10.10 |
Ansible facts (0) | 2023.09.13 |
Ansible known hosts 자동 등록 & 무시 방법 (0) | 2023.09.12 |