OpenFlow
OpenFlow란 무엇인가요?
OpenFlow는 소프트웨어 기반의 네트워크 구성 방식인 SDN(소프트웨어 정의 네트워킹)을 구현하는 기술입니다.
기존에는 네트워크 장치가 두 가지 핵심 기능, 즉 경로 관리를 담당하는 제어 평면과 데이터 전달을 담당하는 데이터 평면을 함께 수행했습니다. OpenFlow의 가장 큰 특징은 이 두 기능을 분리한다는 점입니다. OpenFlow 컨트롤러는 제어 평면(일반적으로 소프트웨어로 구현됨)을 담당하고, OpenFlow 스위치는 데이터 평면(일반적으로 하드웨어로 제공되지만 Open vSwitch와 같은 소프트웨어 구현도 있음)을 담당합니다.
OpenFlow의 또 다른 주요 특징은 데이터 전달 규칙을 정의하는 플로우 테이블을 사용한다는 점입니다. 플로우 테이블은 MAC 주소, IP 주소, 포트 번호, VLAN ID 또는 MPLS 레이블과 같은 패킷 처리 조건과, 패킷을 특정 포트로 전달하거나 특정 필드를 수정하거나 패킷을 폐기하는 등의 해당 동작을 지정합니다.
OpenFlow는 플로우 테이블을 사용하여 일반적으로 레이어 2(L2) 스위치, 라우터 또는 레이어 3(L3) 스위치가 처리하는 기능을 수행할 수 있습니다. 또한 방화벽이나 로드 밸런서와 유사한 동작도 구현할 수 있습니다. 이와 더불어 OpenFlow는 장애 조치 메커니즘을 지원하므로 스위치에 장애가 발생하면 대체 경로를 통해 자동으로 트래픽을 재라우팅할 수 있으며, VLAN과 유사한 네트워크 세분화도 가능합니다. 여러 OpenFlow 스위치로 구성된 네트워크는 OpenFlow 컨트롤러를 통해 중앙에서 관리되고 제어됩니다.
OpenFlow는 네트워크 구성과 기능을 정의하고 관리할 수 있는 매우 유연하고 프로그래밍 가능한 방식을 제공하며, 기존의 하드웨어 기반 네트워크 인프라에 비해 상당한 이점을 제공합니다.
