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