오픈플로우

IT위키
Openflow

네트워크 컨트롤러가 스위치망을 통해 네트워크 패킷의 경로를 정의하는 소프트웨어 정의 네트워크(SDN) 프로토콜

  • ONF(Open Networking Foundation, 비영리 국제기구)에서 관리하는 프로토콜

개요[편집 | 원본 편집]

SDN에서 OpenFlow의 위치[편집 | 원본 편집]

SDN 계층.png

OpenFlow 개요도[편집 | 원본 편집]

오픈플로우 개념도.png

구현 기술[편집 | 원본 편집]

구현 기술 개념도 / 설명
제어/데이터평면 분리기술

오픈플로우 제어-데이터 평면 분리.png

  • 패킷 제어 기능과 전달 기능을 분리하여 프로그래밍 기반 네트워크 제어
  • 제어 및 데이터 평면을 범용 서버에 설치하여 소프트웨어로 구현
  • 사용자가 자유롭게 특정 서비스나 애플리케이션 최적화 프로토콜 구현 가능
컨트롤러/스위치구성 기술

오픈플로우 컨트롤러-스위치 구성 기술.png

  • 스위치에 명령, 스위치는 명령에 따른 패킷 전송, 수정, 폐기 처리
  • L2 스위치에 OpenFlow 프로토콜 펌웨어 추가, 컨트롤러는 소프트웨어로 구현
  • 최단경로(SPF)나 회선 속도 외 사용자 지정 경로 가중치/부하 분산 조건
플로우테이블관리 기술

오픈플로우 플로우 테이블 관리 기술.png

  • 오픈플로우 스위치는 다수의 플로우 테이블 및 다수 플로우 엔트리로 구성
  • Flow Entry는 Match fields, Actions, Counters(통계)로 구성
  • 입력패킷과 매치 엔트리 존재 시 Counter(통계) 값 증가, 지정 명령(Action) 실행
파이프라인처리 기술

오픈플로우 파이프라인 처리 기술.png

  • 플로우 테이블 기반 패킷을 처리(Action) 및 다른 플로우 테이블 엔트리와 비교
  • 한 패킷을 다른 플로우 테이블에 보내기 전에 패킷에 메타 데이터 값 추가 가능
  • 테이블 간 메타 데이터 값을 비교하여 패킷 처리(Action)될 때까지 다음 테이블로 연속됨
그룹 테이블관리 기술

그룹 테이블 관리 기술.png

  • 인입 플로우에 대해 일련의 action bucket들이 실행 되도록 정의
  • Action bucket은 실행할 action 들의 집합과 파라미터들을 포함
  • 엔트리 ID 값, 그룹의 type, counter action buckets로 구성

라우팅 방식[편집 | 원본 편집]

  • Hop-by-hop 방식
    • 각 스위치는 패킷이 목적지에 도달할 때 까지 릴레이 방식으로 포워딩
    • 복잡한 경로를 자유롭게 구성 가능해 네트워크 효율 높음
    • 각 스위치가 모든 경로 정보를 가지고 있어야 하므로 확장성 문제
  • Overlay 방식
    • 컨트롤러가 모든 경로를 제어하지 않고 터널링 이용해 경로 설정
    • 컨트롤러와 스위치들은 터널상의 발신지와 착신지 정보만으로 라우팅
    • 대규모 네트워크 뿐만 아니라 기존 IP네트워크에도 적용 가능
    • 네트워크 사용 효율 낮음