네트워크_데이터 평면/제어 평면
데이터 평면 (Data Plane)
정의:
데이터 평면은 실제 사용자 데이터를 전달하는 기능을 수행하는 네트워크 계층의 부분이다. 즉, 패킷이 한 라우터에서 다른 라우터로 전달될 때, 이 경로를 따라 실제로 **전달되는 트래픽(데이터)**을 처리하는 영역이다.
동작 원리:
- 수신한 패킷의 목적지 주소를 확인하고,
- 라우팅 테이블(FIB, Forwarding Information Base)을 기반으로,
- 해당 목적지로 패킷을 **포워딩(전달)**한다.
- 처리 속도가 빠르고 하드웨어(ASIC 등) 기반으로 구현되는 경우가 많다.
특징:
- 빠르고 단순하다.
- 실시간으로 동작하며, 모든 패킷에 대해 작동한다.
- 목적지는 제어 평면이 정해주고, 데이터 평면은 그 목적지를 따라 전달만 한다.
제어 평면 (Control Plane)
정의:
제어 평면은 어떤 경로로 패킷을 보낼지를 결정하는 라우팅 정책과 경로 계산을 수행하는 영역이다. 즉, 네트워크 내의 라우터들이 서로 정보를 교환하고 최적의 경로를 학습하는 두뇌 역할을 한다.
동작 원리:
- 라우팅 프로토콜(OSPF, BGP, RIP 등)을 통해 라우터 간에 경로 정보를 교환한다.
- 수집한 정보를 바탕으로 **라우팅 테이블(RIB)**을 생성한다.
- 이 라우팅 테이블을 기반으로 데이터 평면이 사용하는 **포워딩 테이블(FIB)**을 갱신한다.
특징:
- 상대적으로 느리고 복잡하다.
- 소프트웨어 기반으로 구현되는 경우가 많다.
- 네트워크 상태 변화(링크 다운, 경로 변경 등)에 반응한다.
요약 비교
항목 | 데이터 평면 (Data Plane) | 제어 평면 (Control Plane) |
---|---|---|
역할 | 패킷 전달 | 경로 결정 |
주요 기능 | 포워딩 | 라우팅 정보 계산 |
동작 대상 | 실제 사용자 데이터 | 라우터 간 제어 메시지 |
처리 방식 | 빠르고 단순 | 느리지만 복잡 |
구현 위치 | 하드웨어 중심 (FIB 사용) | 소프트웨어 중심 (RIB 생성) |
1. Per-router Control Plane (라우터별 제어 평면)
정의:
Per-router control plane이란, 각 라우터가 독립적으로 제어 평면 기능(예: 라우팅 결정, 경로 계산)을 수행하는 전통적인 네트워크 구조이다.
동작 원리:
- 각 라우터는 라우팅 프로토콜(OSPF, RIP, BGP 등)을 통해 이웃 라우터들과 정보를 교환하고,
- 자신만의 **라우팅 테이블(RIB)**을 계산한 후,
- 이를 바탕으로 포워딩 테이블(FIB)을 만든다.
- 제어 정보는 각 라우터 내부에 분산되어 존재한다.
특징 및 장단점:
- 장점: 라우터 간 분산 구조로, 특정 지점의 장애가 전체에 영향 X
- 단점: 관리가 복잡하고, 일관된 정책 적용이 어렵다
2. Logically Centralized Control Plane (논리적으로 중앙집중형 제어 평면)
정의: Logically centralized control plane은 **제어 평면의 논리를 하나의 중앙 컨트롤러(SDN controller 등)**가 담당하고, 각 라우터는 단순히 데이터 전달만 수행하는 구조이다.
동작 원리:
- 모든 제어 결정은 중앙 컨트롤러에서 수행된다.
- 각 라우터(또는 스위치)는 컨트롤러로부터 전달받은 포워딩 테이블에 따라 데이터만 포워딩한다.
- OpenFlow 같은 프로토콜을 통해 중앙 제어기와 라우터 간 통신이 이뤄진다.
특징 및 장단점:
- 장점: 중앙에서 모든 경로를 계산하므로 정책 일관성이 높고, 네트워크 전체를 쉽게 관리 가능
- 단점: 컨트롤러에 문제가 생기면 전체 네트워크가 영향을 받을 수 있음 (단일 실패점 가능)