본문 바로가기
[CISSP]

[MPLS] Multiprotocol Label Switching 특징!!

by METAVERSE STORY 2025. 10. 27.
반응형

 

 

 

 

 

1) 한줄 요약

MPLS는 IP 라우팅 대신(또는 위에) 짧은 고정 길이 라벨을 사용해 패킷을 빠르고 유연하게 전달하는 기술로, 트래픽 엔지니어링(TE), VPN, 빠른 포워딩을 위해 널리 사용됩니다.


2) 왜 MPLS를 쓰나? (장점)

  • 빠른 포워딩: 라벨 기반으로 간단한 테이블 조회만으로 포워딩. 복잡한 IP 룩업 대신 라벨 인덱스 사용.
  • 트래픽 엔지니어링: 경로를 미리 지정(RSVP-TE 등)해 대역폭/지연을 제어 가능.
  • L3/L2 VPN 제공: MPLS L3VPN을 통해 분리된 고객망을 보장하면서 백본 공유.
  • QoS와 우선순위 제어 용이: 라벨 스택과 EXP 필드를 통해 우선순위/마킹 적용.
  • 운영의 유연성: 네트워크 내에서 라우팅과 제어를 분리하고, 여러 프로토콜(IPv4/IPv6/Ethernet 등)을 투명하게 전달.

3) 기본 개념 / 용어

  • Label: 고정 크기(보통 20비트) 값. 패킷 앞에 붙은 식별자(실제는 MPLS 헤더).
  • Label Stack: 다중 라벨을 쌓을 수 있음(최상위 라벨은 맨 앞).
  • LSR (Label Switching Router): 라벨을 교체(swap)하거나 푸시(push)/팝(pop)하는 라우터.
  • LER (Label Edge Router): MPLS 도입/종료 지점(입구/출구). 라우팅 → 라벨 푸시, 라벨 팝 → 라우팅.
  • LSP (Label Switched Path): 라벨 기반의 경로(소스에서 목적지까지). 일종의 “가상 회선”.
  • LIB (Label Information Base): 라벨 바인딩 저장소(컨트롤플레인 관점).
  • LFIB (Label Forwarding Information Base): 데이터 플레인에서 실제 포워딩에 사용되는 라벨 테이블.
  • LDP (Label Distribution Protocol): 라벨을 이웃과 교환하는 일반적인 프로토콜.
  • RSVP-TE: 트래픽 엔지니어링 목적의 라벨 경로 설정 프로토콜(자원 예약 포함).
  • PHP (Penultimate Hop Popping): 마지막에서 두 번째 라우터가 라벨을 제거해 최종 LER의 작업 부담 감소.

4) 동작 방식(데이터 플레인 관점) — 단계별 흐름

  1. 입구 LER: 들어오는 IP 패킷을 확인해 목적지/정책에 따라 라벨을 푸시(push).
  2. 중간 LSR: 패킷의 상위 라벨을 보고 LFIB에서 스왑(swap)(다른 라벨로 교체) 또는 팝(pop)(제거)하거나 그대로 전달.
  3. 출구 LER: 목적지에 도달하면 라벨을 모두 제거하고(PHP로 이미 제거될 수도 있음) IP 라우팅으로 전달.

간단한 ASCII 흐름:

 
IP 패킷 -> [입구 LER: push L1] -> [LSR1: swap L1->L2] -> [LSR2: swap L2->L3] -> [출구 LER: pop L3 -> IP 전달]

5) 라벨 연산 3가지 (Push/Swap/Pop)

  • Push: 라벨을 새로 추가(주로 LER에서 발생).
  • Swap: 현재 라벨을 다른 라벨로 바꿔 다음 홉 결정(LSR에서 주로).
  • Pop: 라벨을 제거(출구 또는 penultimate hop에서).

이 연산만으로 고속 포워딩 가능.


6) 제어 플레인: 라벨을 어떻게 나눌까?

  • LDP (Label Distribution Protocol): 가장 보편적. 자동으로 라벨 바인딩을 교환.
  • RSVP-TE (Resource Reservation Protocol with Traffic Engineering): LSP를 수동/예약형으로 설정, 대역폭, 우선순위, 경로 고정 가능.
  • BGP 기반 라벨 분배 (e.g., BGP/MPLS VPN): 라우팅과 라벨을 BGP로 교환하여 멀티-사설망(L3VPN)을 구성.

7) MPLS와 VPN

  • MPLS L3VPN (RFC 4364/2547bis): 고객별 VRF(Virtual Routing and Forwarding)를 LER에서 관리. MP-BGP를 통해 고객 라우트와 라벨 교환.
  • MPLS L2VPN: Ethernet 교환, VPLS 같은 기술로 L2 프레임을 백본에서 이음.

8) 트래픽 엔지니어링 (MPLS-TE)

  • 트래픽을 단순 라우팅(IGP) 대신 정해진 LSP로 강제할 수 있음.
  • 루프 방지, 대역폭 보장, 지연 최적화 등 목적에 사용.
  • RSVP-TE로 경로를 예약하고, 경로 실패 시 빠른 대체(예: Fast Reroute) 가능.

9) QoS와 MPLS

  • MPLS 헤더의 Exp(3비트) 필드를 사용해 QoS 우선순위 지정 가능.
  • DiffServ와 결합해 클래스별 처리가 쉬워짐.

10) Penultimate Hop Popping (PHP)

  • 최종 LER 바로 이전(=penultimate) LSR가 라벨을 제거해 출구 LER의 라벨 팝 비용을 줄임.
  • 일반적인 최적화로 구현되어 있음.

11) 보안/운영 고려사항

  • 라우팅/라벨 분배의 무결성: LDP/RSVP 세션 보호(X.509, TCP MD5 등 권장).
  • 백본 분리: 고객망 격리 필요 시 VPN+VRF로 보장.
  • 디버깅: 라벨 스택, LFIB, LIB 확인 필요 — 라벨 불일치 시 트래픽 블랙홀 발생 가능.
  • 스케일: 수천/수만 개의 LSP 또는 VRF는 장비 자원(메모리/CPU)에 영향.

12) MPLS vs 전통 IP 라우팅 비교 (요약)

  • IP 라우팅: 목적지 주소 기반 최적 경로(라우팅 테이블), 탄력적이지만 경로 제어가 제한적.
  • MPLS: 라벨 기반, 경로 제어(정해진 LSP), 빠른 포워딩, TE와 VPN 제공.
    둘은 상호 배타적이지 않으며, 많은 네트워크에서 IP 라우팅 위에 MPLS를 올려 사용합니다.

13) 실무 예시: LSP가 설정되는 흐름 (개념적)

  1. 네트워크 운영자가 RSVP-TE로 LSP를 생성: A -> B -> C -> D (대역폭 50Mbps 예약).
  2. 각 LSR은 라우터 간에 RSVP PATH/RESV 메시지 교환.
  3. 입구 LER(A)는 해당 트래픽을 캡슐화(push 라벨)해 LSP로 전송.
  4. 중간 LSR은 swap으로 다음 홉 라벨로 바꾸며 전달.
  5. 출구 LER(D)는 라벨 제거 후 최종 전달.

14) 실제 장비에서 확인해야 할 명령(예시, 벤더 중립적)

  • 라우팅 테이블 확인 (RIB)
  • 라벨 정보(LIB) 확인
  • 라벨 포워딩(LFIB) 확인
  • LDP/RSVP 세션 상태 확인
  • 라벨 스택 캡처(패킷 캡처 도구로 확인)

(구체적인 명령어는 Cisco/Juniper 등 벤더별로 다릅니다 — 필요하시면 장비명을 말해주시면 예시 명령어와 출력 예제를 바로 드릴게요.)


15) 한눈에 보는 구성요소 정리

  • 데이터 플레인: LFIB — 실제 라벨로 포워딩
  • 컨트롤 플레인: LDP / RSVP-TE / BGP — 라벨/경로 설정
  • 엣지 장비: LER — IP↔MPLS 변환 담당
  • 코어 장비: LSR — 라벨 기반 교환 담당

16) 결론 / 언제 MPLS를 고려해야 할까?

  • 대규모 백본에서 트래픽 엔지니어링, 서비스(예: L3VPN), 고성능 포워딩이 필요하면 MPLS는 매우 유용합니다.
  • 단순한 소규모 네트워크나 클라우드 전용 환경에서는 복잡도 대비 필요성이 떨어질 수 있습니다.

 

 

 

반응형

댓글