EVPN 기술의 이해와 MP-BGP 기반 차세대 네트워크 아키텍처 설계

EVPN(Ethernet Virtual Private Network)의 개요

EVPN은 RFC 7432에서 정의된 "BGP MPLS 기반 이더넷 VPN" 기술로, 현대적인 데이터 센터와 서비스 프로바이더 네트워크에서 핵심적인 역할을 합니다. 기존의 VPLS(Virtual Private LAN Service)가 가졌던 한계를 극복하고, 제어 평면(Control Plane)과 데이터 평면(Data Plane)을 분리하여 효율적인 L2/L3 가상 네트워킹을 제공합니다.

EVPN의 설계 철학

EVPN은 MP-BGP(Multi-Protocol BGP)를 제어 평면으로 채택했습니다. 이는 다음과 같은 기술적 이점을 제공합니다.

  • 제어 평면 기반 학습: 데이터 평면에서의 플러딩(Flooding)을 통한 MAC 학습 대신, BGP를 통해 MAC/IP 정보를 사전에 교환합니다. 이는 네트워크 전역의 ARP 트래픽을 획기적으로 줄여줍니다.
  • 유연한 데이터 평면: EVPN은 제어 평면을 표준화하고 데이터 평면은 MPLS, VXLAN, SRv6, GRE 등 다양한 캡슐화 방식을 선택적으로 사용할 수 있는 "All-in-one" 솔루션입니다.
  • 멀티 호밍 지원: CE(Customer Edge) 장비가 여러 PE(Provider Edge)에 동시에 연결되는 액티브-액티브(Active-Active) 환경을 완벽하게 지원합니다.

EVPN의 5가지 핵심 라우팅 타입

EVPN은 MP-BGP의 NLRI(Network Layer Reachability Information) 필드를 확장하여 5가지 유형의 라우트를 사용합니다.

  1. Type 1 (Ethernet Auto-discovery Route): 서비스 엔드포인트 자동 발견 및 고속 수렴(Fast Convergence)을 위해 사용됩니다.
  2. Type 2 (MAC/IP Advertisement Route): 호스트의 MAC 및 IP 주소 정보를 원격 PE에 알리는 가장 핵심적인 라우트입니다.
  3. Type 3 (Inclusive Multicast Ethernet Tag Route): BUM(Broadcast, Unknown Unicast, Multicast) 트래픽 전달을 위한 터널을 설정합니다.
  4. Type 4 (Ethernet Segment Route): 멀티 호밍 환경에서 동일한 세그먼트를 공유하는 PE들을 식별하고 DF(Designated Forwarder)를 선출합니다.
  5. Type 5 (IP Prefix Route): 호스트의 MAC 정보 없이 IP 서브넷 정보를 전달할 때 사용(L3 VPN 기능)합니다.

EVPN의 동작 원리와 주요 프로세스

제어 평면의 초기화 (Control Plane Startup)

네트워크가 기동되면 EVPN은 다음과 같은 순서로 제어 평면을 구성합니다.

  • BUM 포워딩 테이블 생성: Type 3 라우트를 통해 PE 간에 정보를 교환하고 BUM 트래픽 전송을 위한 가상 인터페이스를 매핑합니다.
  • ES 발견 및 DF 선출: CE가 여러 PE에 연결된 경우, Type 4 라우트를 통해 ESI(Ethernet Segment Identifier) 정보를 공유합니다. 이후 특정 PE를 DF로 선출하여 중복 트래픽 전송을 방지합니다.
  • 수평 분할(Split Horizon) 설정: Type 1 라우트를 통해 ESI 레이블을 교환함으로써, 멀티 호밍 환경에서 루프가 발생하는 것을 차단합니다.

트래픽 전달 및 MAC 학습

제어 평면이 안정화된 후 실제 데이터가 유입되면 다음 단계가 진행됩니다.

  1. CE로부터 트래픽이 유입되면 PE는 소스 MAC 주소를 학습하고 이를 MAC-VRF에 저장합니다.
  2. 학습된 MAC 정보는 Type 2 라우트에 실려 MP-BGP를 통해 원격 PE로 전파됩니다.
  3. 원격 PE는 수신한 Type 2 라우트를 기반으로 자신의 MAC-VRF를 업데이트하고, 해당 목적지로 향하는 트래픽에 씌울 레이블 정보를 저장합니다.

주요 기술적 이슈 및 해결책

  • 루프 방지 메커니즘: ESI(Ethernet Segment Identifier)를 통해 동일한 사이트에서 온 패킷이 다시 해당 사이트로 돌아가지 않도록 필터링합니다.
  • 부하 분산: Aliasing 기능을 통해 특정 호스트로 향하는 경로가 여러 PE에 걸쳐 있음을 인지하고 트래픽을 분산 전송할 수 있습니다.
  • 고속 수렴: 특정 링크 장애 시, 관련된 모든 MAC 주소를 개별적으로 취소하는 대신 Type 1 라우트를 통해 해당 세그먼트 전체가 다운되었음을 즉시 통보하여 수렴 속도를 높입니다.

MPLS 기반 EVPN 구성 실습

다음은 NE40E 라우터 환경을 가정하여 PE 장비에서 EVPN 및 멀티 호밍(E-Trunk)을 구성하는 예시 코드입니다.

1. EVPN 인스턴스 및 브릿지 도메인 설정

# PE-01 설정
evpn vpn-instance EVPN_CORP_A bd-mode
 route-distinguisher 65001:10
 vpn-target 65001:100 export-extcommunity
 vpn-target 65001:100 import-extcommunity

bridge-domain 100
 evpn binding vpn-instance EVPN_CORP_A

vpn source-address 1.1.1.1

2. 멀티 호밍을 위한 E-Trunk 및 ESI 설정

CE와 연결된 인터페이스에서 액티브-액티브 동작을 위해 ESI를 구성합니다.

# PE-01 E-Trunk 구성
lacp e-trunk system-id 0011-2233-4455
lacp e-trunk priority 10

e-trunk 1
 peer-address 1.1.1.2 source-address 1.1.1.1

interface Eth-Trunk 10
 mode lacp-static
 e-trunk 1
 e-trunk mode force-master
 esi 0011.1111.1111.1111.1111 # 고유 ESI 할당

3. 서비스 서브 인터페이스 바인딩

interface Eth-Trunk 10.100 mode l2
 encapsulation dot1q vid 100
 rewrite pop single
 bridge-domain 100

4. BGP EVPN 피어링 설정

bgp 65001
 peer 1.1.1.3 as-number 65001
 peer 1.1.1.3 connect-interface LoopBack0
 
 l2vpn-family evpn
  peer 1.1.1.3 enable
  peer 1.1.1.3 reflect-client # RR(Route Reflector) 설정 시

동작 확인 및 검증

설정이 완료되면 다음과 같은 명령어를 통해 EVPN의 정상 동작 여부를 확인해야 합니다.

  • display evpn vpn-instance name EVPN_CORP_A mac: MP-BGP를 통해 학습된 원격 MAC 주소 확인
  • display evpn routing-table inclusive-multicast: Type 3 라우트 생성 여부 확인
  • display e-trunk 1: PE 간 E-Trunk 상태 및 멀티 호밍 동기화 상태 확인

EVPN은 복잡한 초기 설정 과정이 필요하지만, 일단 구성되면 대규모 네트워크에서 탁월한 확장성과 제어 능력을 제공합니다. 특히 데이터 센터 간 연결(DCI)이나 가상화 환경에서 L2 연동이 필요한 경우 최적의 선택지입니다.

태그: EVPN BGP mpls VPLS Network-Engineering

7월 31일 02:27에 게시됨