소프트웨어 정의 네트워킹 (Software-Defined Networking, SDN)
네트워크의 제어 기능을 네트워크 장비에서 분리하여 소프트웨어 기반 컨트롤러로 중앙집중화하는 네트워크 아키텍처.
목적
- 네트워크 리소스 최적화
- 변화하는 비즈니스 요구사항에 신속한 대응
- 네트워크 관리 및 구성의 간소화
특징
- 제어 평면 (Control Plane) 과 데이터 평면 (Data Plane) 의 분리: 네트워크 장비의 제어 기능 (라우팅 결정 등) 을 별도의 소프트웨어 컨트롤러로 분리.
- 중앙집중식 관리: 전체 네트워크를 단일 지점에서 관리할 수 있어 효율성이 향상.
- 프로그래밍 가능성: API 를 통해 네트워크 동작을 프로그래밍할 수 있어 유연성이 증가
- 개방형 표준: 표준화된 프로토콜과 인터페이스를 사용하여 다양한 벤더의 장비를 통합 관리할 수 있음.
계층 구조
- 애플리케이션 계층 (Application Layer)
- 네트워크 서비스, 비즈니스 애플리케이션
- API 를 통한 네트워크 제어
- ↕ Northbound API
- 제어 계층 (Control Layer)
- SDN 컨트롤러
- 네트워크 정책 및 제어 로직
- ↕ Southbound API (OpenFlow 등)
- 인프라 계층 (Infrastructure Layer)
- 스위치, 라우터 등 네트워크 장비
- 패킷 전송 및 처리
장점
- 유연성과 민첩성: 네트워크 구성을 신속하게 변경할 수 있다.
- 비용 절감: 하드웨어 의존도를 줄여 CAPEX 와 OPEX 를 절감할 수 있다.
- 중앙집중식 관리: 네트워크 전체를 단일 지점에서 관리할 수 있다.
- 보안 강화: 중앙에서 일관된 보안 정책을 적용할 수 있음.
단점
- 단일 장애 지점: 중앙 컨트롤러에 문제가 생기면 전체 네트워크에 영향을 줌.
- 성능 저하 가능성: 네트워크 규모가 커지면 컨트롤러의 부하가 증가할 수 있음.
- 보안 취약점: 중앙 컨트롤러가 공격 대상이 될 수 있음.
기업의 지출을 구분하는 두 가지 주요 카테고리
- CAPEX (Capital Expenditure, 자본 지출): 장기적인 자산 취득을 위한 지출
- OPEX (Operating Expenditure, 운영 비용): 기업의 일상적인 운영을 위한 지출