WIPIVERSE

Open vSwitch

Open vSwitch는 리눅스 커널 및 사용자 공간에서 동작하도록 설계된 오픈 소스 가상 스위치이다. 주로 가상화된 환경에서 가상 머신(VM) 또는 컨테이너 사이의 네트워크 트래픽을 제어하고, 물리적 네트워크와 연결하는 역할을 수행한다. Open vSwitch는 표준화된 네트워크 프로토콜인 OpenFlow를 지원하며, 이를 통해 SDN(Software‑Defined Networking) 컨트롤러와의 연동이 가능하다.

주요 특징

  • 다중 레이어 지원: L2 스위치 기능 외에도 라우팅, ACL(Access Control List), QoS(품질 서비스) 등을 제공한다.
  • OpenFlow 호환: OpenFlow 1.0~1.5 버전을 지원하여 외부 SDN 컨트롤러가 흐름 규칙을 동적으로 삽입·삭제할 수 있다.
  • 가상화 플랫폼 통합: KVM, Xen, VMware ESXi, OpenStack, Kubernetes 등 다양한 가상화·컨테이너 환경과 호환된다.
  • 성능 최적화: 커널 모드에서는 Datapath라는 고성능 패킷 처리 경로를 이용해 사용자 공간에서의 오버헤드를 최소화한다.
  • 확장성: DPDK(Data Plane Development Kit)와 같은 고성능 패킷 처리 프레임워크와 연동해 10 Gbps·100 Gbps 수준의 트래픽을 처리할 수 있다.

개발 및 배포

  • 시작 배경: 2009년 Nicira Networks에 의해 초기 개발되었으며, 2012년 VMware가 Nicira를 인수한 뒤에도 오픈 소스 프로젝트로 유지·보수되고 있다.
  • 라이선스: Apache License 2.0 하에 배포된다.
  • 커뮤니티: GitHub 저장소(https://github.com/openvswitch/ovs)를 중심으로 활발한 개발자 커뮤니티가 존재한다. 정기적인 릴리즈와 보안 패치가 제공된다.

활용 사례

  • 클라우드 인프라: OpenStack Neutron 및 Amazon EC2와 같은 퍼블릭·프라이빗 클라우드에서 가상 네트워크 구현에 사용된다.
  • 데이터센터: 물리적 스위치와 연동해 하이퍼컨버지드 인프라(HCI)에서 네트워크 가시성 및 정책 관리에 활용된다.
  • 연구·교육: SDN 실험 환경 및 네트워크 교육용 시뮬레이션 도구로 자주 채택된다.

기술 구조

  1. User Space Daemon (ovs-vswitchd): OpenFlow 및 기타 제어 인터페이스를 처리하고, 흐름 테이블을 관리한다.
  2. Kernel Module (openvswitch.ko): Data Path를 구현해 패킷을 빠르게 전송·수정한다.
  3. Management Tools: ovs-vsctl, ovs-ofctl 등 명령줄 도구를 통해 스위치 구성·제어가 가능하다.

참고 문헌

  • Open vSwitch 공식 문서 (https://www.openvswitch.org)
  • Nicira, “Open vSwitch Architecture”, 2010.
  • VMware, “Open vSwitch Release Notes”, 2023.

본 내용은 공개된 기술 문서와 공식 발표 자료에 기반한 객관적인 서술이며, 확인되지 않은 정보는 포함하지 않았다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기