KR20170122568A - 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템 - Google Patents

오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템 Download PDF

Info

Publication number
KR20170122568A
KR20170122568A KR1020160051718A KR20160051718A KR20170122568A KR 20170122568 A KR20170122568 A KR 20170122568A KR 1020160051718 A KR1020160051718 A KR 1020160051718A KR 20160051718 A KR20160051718 A KR 20160051718A KR 20170122568 A KR20170122568 A KR 20170122568A
Authority
KR
South Korea
Prior art keywords
network
virtual
virtualization
virtual network
environment
Prior art date
Application number
KR1020160051718A
Other languages
English (en)
Other versions
KR102105690B1 (ko
Inventor
윤성현
나태흠
류호용
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020160051718A priority Critical patent/KR102105690B1/ko
Priority to US15/217,435 priority patent/US10367714B2/en
Publication of KR20170122568A publication Critical patent/KR20170122568A/ko
Application granted granted Critical
Publication of KR102105690B1 publication Critical patent/KR102105690B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F9/4443
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45545Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템으로, 물리 계층부와, 사용자별로 독립적인 환경에서 가상화 기능을 제공하는 네트워크 기능 가상화(Network Function Virtualization : NFV) 인프라 도메인 계층부와, 개별적으로 운용될 수 있는 가상 네트워크 장치의 단위인 가상 어플라이언스들에 대한 처리 기반 환경을 제공하는 도커 엔진 계층부와, 상기 가상 어플라이언스들을 컨테이너 형태로 개발 및 등록할 수 있도록 지원하는 컨테이너 프레임워크 계층부와, 상기 컨테이너 프레임워크 계층부와 연동한 유저 인터페이스를 제공하여, 상기 유저 인터페이스를 통해 사용자가 가상 네트워크를 구성하고, 구성된 가상 네트워크의 테스트 기능을 지원하는 가상 네트워크 서비스 계층부를 포함한다.

Description

오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템{Network Computing Testbed System Based on Open Source Virtualized Cloud Environment}
본 발명은 네트워크 장비, 서비스 등 네트워킹 솔루션을 개발할 수 있는 규격 및 시험을 지원함으로써 기업이 자사의 서비스/제품 개발 및 시험을 쉽게 수행할 수 있도록 하기 위한 가상화 클라우드 기반의 네크워크·컴퓨팅 시험개발환경에 관한 것이다.
최근 들어 비용절감 및 운영 효율성을 이유로 오픈 소스 기반 가상화 클라우드에 대한 관심이 점차 높아지고 있다. 이렇듯 근래의 ICT 환경은 기존 하드웨어 기반 클라우드에 오픈 소스를 활용한 가상화 기술을 접목하여 비용을 절감하고 효율적인 인프라를 구성하기 위한 방향으로 진화해가고 있다. 가상화 기술의 발전으로 인해 기존 하드웨어에 종속적인 공급자 중심의 네트워크 산업기반을 벗어나 점차 사용자 중심의 소프트웨어 기반 장비 형태로 개편되고 있으며, 운영비 절감, 서비스 연속성, 에너지 소모량 절감, 탄력적인 운용 등 많은 이점을 목적으로 네트워크·컴퓨팅 장비의 가상화를 통해 하드웨어 기반의 네트워크 컴퓨팅 장비를 일반 상용서버에서 가상서버 형태로 구동하고자 하는 노력이 지속적으로 이루어지고 있다.
클라우드란(Cloud) 정보가 인터넷 상의 서버에 의도적으로 삭제하지 않는 이상 반영구적으로 저장되고, 데스크톱·태블릿 컴퓨터·노트북·넷북·스마트폰 등의 IT 기기 등과 같은 클라이언트에는 일시적으로 보관되는 컴퓨터 환경으로서, 이용자의 모든 정보를 인터넷 상의 서버에 저장하고, 이 정보를 각종 IT 기기를 통하여 언제 어디서든 이용할 수 있는 컴퓨팅 환경을 일컫는다. 클라우드 환경은 과거 물리적 서버 기반의 운용 방식에서 점차 가상화 기술을 접목하여 유연성을 확대하고 있다.
클라우드 운영에 있어서는 서버, 스토리지, 네트워크 자원 등이 필요하게 되고, 각 자원들을 제어하고, 더 나아가 이들을 통합적으로 관리하고 운영할 수 있는 소프트웨어가 필요하게 되는데, 통상 이들을 클라우드 운영체제(OS; Operating System)라 칭한다.
클라우드 컴퓨팅 환경이 보편화 되면서 마이크로소프트, 아마존, VMware등 많은 소프트웨어 기업들이 상용 클라우드 OS를 제공하고 있다. 그러나 한편으로는 오픈 소스로 무게 중심이 쏠리면서 HP, RedHat 등 수많은 오픈 소스 기반 소프트웨어 기업들을 중심으로 오픈소스 클라우드 운영체제를 지원하고 있으며, 그 정점에 오픈스택(OpenStack)이 자리잡고 있다.
오픈스택은 IaaS 형태의 클라우드 컴퓨팅 오픈소스 프로젝트로서 프로세싱, 저장공간, 네트워킹의 가용자원을 제어하는 목적의 여러 개의 하위 오픈소스 프로젝트를 모아놓은 집합체로 볼 수 있으며, 현재 수많은 기업들이 이 프로젝트에 참여하고 있다.
오픈 소스 프로젝트답게 주로 리눅스 기반으로 운용과 개발이 이루어지고 있으며, 열린 설계와 개발을 지향함으로써 누구나 자유롭게 참여할 수 있다.
가상화란(Virtualization) 물리적인 컴퓨터 리소스의 특징을 다른 시스템, 응용 프로그램, 최종 사용자들이 리소스와 상호 작용하는 방식으로부터 감추는 기술로서, 자원의 물리적인 특징을 추상화함으로써 사용자에게 논리적 자원을 제공하며, 이를 통하여 다양한 기술적/관리적 이점들을 제공하게 된다.
가상화는 최근 인터넷과 스마트 단말을 통한 클라우드 컴퓨팅이 확산되고, 클라우드 컴퓨팅에 관한 논의가 활발해지면서 많은 주목을 받고 있다. 가상화는 1960년대부터 등장했던 용어이지만, 근래 들어 클라우드 컴퓨팅이 확산되면서 경제적으로나 기술적으로 그 중요성이 더욱 커지고 있다. 특히 기업 환경이 빠르게 변하고, 시장 경쟁이 강화되어 시장에 민첩하게 대응하지 못하면 살아남지 못하는 상황에서, 기업의 분산된 ICT 자원을 통합하고 구성원간 협업을 통해 생산성을 높이고 스마트 기기 확산에 따른 이동성을 높이는데 있어서 ICT의 역할, 특히 가상화의 역할이 점차 중요해지고 있다.
이는 무엇보다도 가상화를 통해 컴퓨팅 자원에 대한 접근 및 인프라 관리를 간소화 함으로서 매우 효율적으로 인프라를 운용할 수 있기 때문이다. 이러한 가상화의 장점으로 인해 최근에는 애플리케이션 가상화, 데스크톱 가상화, 서버 가상화, 스토리지 가상화, 네트워크 가상화 등처럼 컴퓨터 자원만이 아닌 네트워크 등 ICT 자원을 총망라해서 대부분의 분야에 적용되고 있다.
특히 네트워크 가상화에 있어서, 네트워크 가상화 기술은 기존 하드웨어 위주였던 네트워킹 기술을 컴퓨팅, 서버, 네트워크 기능을 추상화 하여 소프트웨어적으로 제어가 가능하도록 하는 기술로서, SDN/NFV와 같은 기술들이 네트워크 기술의 트랜드로 자리잡아가고 있다.
SDN(Software Defined Network)은 기존의 스위치/라우터에서 제어 기능을 분리해 논리적으로 혹은 물리적으로 중앙 집중화시키고, 개방형 API(어플리케이션 프로그래밍 인터페이스)를 통해 네트워크의 트래픽 전달 동작을 SW기반 컨트롤러에서 제어ㆍ관리하는 기술로서, 가상화 기술이기 보다는 물리 네트워크를 프로비져닝하고 관리하기 위해 기존 분산 방식과 달리 중앙에서 네트워크 트래픽을 통제할 수 있는 새로운 네트워크 제어 수단이라 볼 수 있다.
네트워크 기능 가상화는 (NFV; Network Function Virtualization) 가상화 기술을 기반으로 저비용, 고효율 및 신속한 서비스 제공을 위한 새로운 네트워크 '생산 환경’을 제공하기 위한 것으로서, 통신망 구성, 제어, 관리 등에 필요한 다양한 소프트웨어적인 기능들을 가상화하여 이용하는 기술로서, 통상 x86 기반의 가상 서버에서 실행된다. 네트워크 기능 가상화는 네트워크 사업자가 기존의 네트워크 하드웨어 장비를 가상화하여 데이터센터, 네트워크 노드 및 가입자 장비에 해당하는 범용 하드웨어 장비에 탑재하여 구동시킬 수 있게 한다.
예로서, 과거 초창기 컴퓨터는 운영체제(Operating System) 및 프로그램 등의 소프트웨어와 하드웨어가 함께 제공되어 운용되었으나, 개인용 컴퓨터가 (PC; Personal Computer) 보편화 되면서 IBM 호환의 범용 하드웨어에 윈도우, 매킨토시, 리눅스 등 다양한 OS를 사용자의 의도에 맞게 탑재하여 운용하게 되었다. 마찬가지로, 네트워크 기능 가상화 기술이 발전하면서 하드웨어와 소프트웨어가 일체화 되어 있던 기존 네트워크 장비에서 벗어나, 범용의 네트워크 장비에 용도에 맞는 다양한 소프트웨어를 설치하여 활용 할 수 있게 되었다.
즉, 새로운 네트워크 장비를 설치하지 않아도 가상 서버 등에 새로운 소프트웨어 기능을 탑재함으로써 네트워크 기능을 구현할 수 있다. 결국 네트워크 기능 가상화는 네트워크 사업자로 하여금 네트워크 프로비져닝 및 장애 처리 등 운용 관리 측면에서 상당한 편리성과 비용 절감을 실현할 수 있게 한다.
이러한 네트워크 기능 가상화의 등장배경에는 점차 줄어드는 수익에 비해 고가의 네트워크 장비에 대한 투자비용과 운용비용이 부담이 되고, 또한 특정 네트워크 장비 밴더에 대한 종속을 탈피함으로써 망 운용비용을 절감하고자 노력해온 통신사업자들이 있다. 특히, 투자비용이 상대적으로 큰 이동통신사업자들을 중심으로 네트워크 기능 가상화에 대한 연구개발이 한창 진행 중에 있다.
다만 네트워크 기능 가상화가 본격적으로 실제 망에 적용 되기에는 아직까지도 좀 더 시간이 필요하다는 판단이 지배적이다. 이러한 배경에는 성능 측면의 이슈가 자리하고 있다. 네트워크 기능 가상화를 도입함으로써, 운용관리적인 측면에서 이득이 있다고는 하지만, 기존 하드웨어를 대체할 수 있을 정도의 성능이 보장되지 않고 있기 때문에, 통신사업자들은 섣불리 네트워크 기능 가상화를 도입할 수 없는 실정에 있다. 상용망을 운용하는 통신사업자의 입장에서는 안정적인 망운용이 무엇보다도 중요하므로, 네트워크 기능 가상화 도입에 따른 망의 안정성이 보장되어야 하기 때문이다.
따라서 아무리 가상화 기술이 시스템 자원의 효율성을 높여주고 망운용의 편리성을 가져다 준다 하여도, 실제 망에 적용하기 위해서는 기존 하드웨어 기반 시스템 대비 일정 정도의 예측 가능한 성능을 보장해 주어야 한다. 이런 노력의 일환으로 근래 들어, 가상화 기술에서의 성능 문제를 극복하기 위해 보다 빠른 속도와 보다 적은 자원 소비를 위한 경량의 가상화 기술인 컨테이너 기술이 주목 받고 있다.
컨테이너란 소프트에어가 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 이동했을 때 안정적으로 운영될 수 있는지를 해결하기 위한 기술로서, 애플리케이션과 이를 구동하는데 필요한 모든 종속물, 라이브러리, 기타 바이너리와 구성 파일 등을 하나의 패키지로 묶은 런타임 실행 환경으로 구성된다.
VMware, Xen, Hyper-V 등과 같이 물리 서버 위에 동작하는 하이퍼바이저 상에서 호스트 시스템과 독립적으로 운영될 수 있는 게스트 시스템이 동작하는 기존의 하이퍼바이저 기반 가상화 기술과 달리, 컨테이너 기반의 가상화 기술은 시스템을 가상화 하는 것이 아니라, 애플리케이션을 구동할 수 있는 환경을 가상화한다.
따라서 애플리케이션이 동작할 수 있도록 가상 기계들간 CPU 및 메모리 등 하드웨어는 가상화하여 독립적으로 사용하지만, OS 및 라이브러리는 공용으로 사용한다. 즉, 기존 가상화 기술에서는 호스트 시스템의 OS와 게스트 시스템의 OS가 다를 수 있으며, 오히려 통상 서로 다른 OS를 사용하는 데 많이 활용되는 반면, 컨테이너 기반 가상화 기술에서는 게스트 시스템의 OS는 호스트 시스템의 OS에 종속적이다.
결론적으로, 하이퍼바이저 기반의 가상화 기술은 '시스템' 가상화 기술이고 컨테이너 기반의 가상화 기술은 '애플리케이션' 가상화 기술이라 할 수 있다.  
가상화 기술로 인해 촉진된 이러한 트랜드는 향후 기간망 장비에서 종단 단말까지 네트워크 산업 전방위적으로 확산될 것이고, 결국 미디어의 종류와 선로의 종류로 구별되던 기존의 네트워크 패러다임이 근본적인 변화가 도래되리라 예측된다.
이러한 상황에서 새롭고 혁신적인 네트워크 기능을 개발하는 것도 중요하지만, 기존 네트워크 기능을 가상 네트워크 기능(VNF)화함으로써 얼마나 다양한 가상화 네트워크 서비스 피처를 확보하는 것이 경쟁력 제고에 중요한 성분이 되고 있는 현실에서, 오픈 소스 기반 가상화 클라우드 환경에서 동작하는 시험 개발 환경으로서, 최고의 시스템 자원 효율성으로 시스템 용량이 허용하는 최대 다수의 개발자에게 시험개발환경 제공에 대한 중요성도 부각되고 있다.
본 발명은 오픈 소스 가상화 클라우드 환경 기반에서 동작하는 가상 네트워크 장치를 활용하여 가상의 네트워크를 구성하고 이를 바탕으로 다양한 네트워크 기능 시험 및 새로운 기능을 개발할 수 있는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템을 제공한다.
본 발명은 네트워크·컴퓨팅 분야의 엔지니어 및 개발자 그리고 제품 기획자 등 제품 및 서비스 개발 관련자를 대상으로 네트워크 기능 가상화 기술 개발에 필요한 효과적인 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템을 제공한다.
본 발명은 개발자들이 물리적 환경에 기인하는 시간적, 공간적 한계를 극복하여 개발자로 하여금 자신의 여건에 따라 온라인을 통해 접근하여 자신의 개발 제품 및 서비스를 시험해보고, 이를 통해 새로운 제품 및 서비스를 개발 및 시험할 수 있는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템을 제공한다.
본 발명은 사용자 입장에서 새로이 네트워크 기능을 개발하는데 필요한 새로운 시험개발환경을 준비하기 위한 많은 시간과 비용을 절감할 수 있으며, 여기서 얻는 이득은 새로운 기능 개발을 위한 투자로 이어질 수 있으므로, 개발/시험/상용화에 이르는 선순환 개발 생태계의 여건을 조성하는데 도움이 되고자 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템을 제공한다.
본 발명은 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템으로, 물리 계층부와, 사용자별로 독립적인 환경에서 가상화 기능을 제공하는 네트워크 기능 가상화(Network Function Virtualization : NFV) 인프라 도메인 계층부와, 개별적으로 운용될 수 있는 가상 네트워크 장치의 단위인 가상 어플라이언스들에 대한 처리 기반 환경을 제공하는 도커 엔진 계층부와, 상기 가상 어플라이언스들을 컨테이너 형태로 개발 및 등록할 수 있도록 지원하는 컨테이너 프레임워크 계층부와, 상기 컨테이너 프레임워크 계층부와 연동한 유저 인터페이스를 제공하여, 상기 유저 인터페이스를 통해 사용자가 가상 네트워크를 구성하고, 구성된 가상 네트워크의 테스트 기능을 지원하는 가상 네트워크 서비스 계층부를 포함한다.
본 발명에 따라 가상 네트워크 장치를 이용한 가상 네트워크를 구성하여, 다양한 네트워크 기능요소에 대한 설정 및 동작에 대한 검증 절차를 제공하고 이를 바탕으로 신규 네트워킹 서비스 개발을 위한 도구로 활용될 수 있다. 따라서, FNCP Playnet은 국내 중소 기업, 1인 기업, 예비창업자 및 커뮤니티 등 다양한 개발자 그룹을 대상으로 활용될 수 있으며, 다음과 같은 효과가 있다.
또한, 가상 기계 기반 가상 네트워크 시험 도구 대비 컨테이너 기술 활용을 통한 개선된 성능을 통해 보다 쾌적한 시험개발환경 제공한다.
또한, 직관적 UI & UX를 제공을 통해 비전문가도 쉽게 시험 및 개발이 가능하고, 이로써 가상 네트워크 장치를 활용한 네트워크 기능 개발 관련 학습 및 교육에도 활용 가능하다.
또한, 동일한 UI/UX를 통해 다양한 가상 네트워크 환경 구축 및 재사용을 손쉽게 제공하여, 제품 개발 라이프 사이클의 속도 및 효율성 배가할 수 있다.
또한, 제품 기획자로부터 초/중/고급 개발자까지 다양한 사용자층에서 활용 가능하므로, 기획, IPR, 개발, 시험/검증 및 배포에 이르는 전주기적 제품 및 서비스 개발 지원에 활용 가능하다.
따라서, 본 발명에 따라 궁극적으로 열악한 국내 소규모 중소 영세기업들의 개발환경 개선을 통한 제품 및 서비스 경쟁력 강화를 통해, 관련 산업의 선순환 생태계 조성에 기여할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템의 구조도이다.
도 2는 컨테이너 프레임워크 계층과 어플리케이션 API 계층에 해당하는 PaaS(Platform as a Service)의 UI(User Interface) 화면의 일 예를 도시한 도면이다.
도 3은 FNCP Playnet을 이용하기 위한 사용자 접점이 되는 FNCP Playnet UI/UX의 예시 및 각 UI의 구성요소들이 FNCP Playnet 구조와 어떻게 연관되는지를 도시한 도면이다.
도 4는 ETSI에서 NFV를 제공하기 위해 필요한 요소들과 FNCP Playnet과의 관계를 나타낸다.
도 5는 Host VM & Nested VM 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 6은 Host VM & 컨테이너 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 7은 VM 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 8은 컨테이너 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 9는 FNCP Playnet을 통해 제공되거나, 사용자가 FNCP Planet을 활용하여 개발 할 수 있는 가상 네트워크 장치들의 예시이다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시 예에 따른 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템의 구조도이다. 이후, 설명의 편의를 위해 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템을 FNCP(Future Network Computing Platform) Playnet이라 명명하기로 한다. 그러나, 이는 설명의 편의를 위한 것으로, 본 발명은 이에 한정되지 않는다.
도 1을 참조하면, FNCP Playet은 물리 계층부(Physical Space)(110), 인프라 계층부(Infrastructure Space)(120), 커널 계층부(Kernel Space)(130), 개발자 계층부(Developer Space)(140), 사용자 계층부(User Space)(150), 관리 계층부(Management Space)(170) 및 서비스 계층부(Service Space)(170, 180)으로 구성된다.
물리 계층부(110)는 레거시(Legacy), 가상 네트워크 및 SDN 네트워크가 존재한다. 즉, FNCP Playet은 자원의 확장이 용이한 유연한 인프라 환경을 구성하기 위해 가상화 클라우드 환경을 기반 인프라로 활용한다. 점차 기반 인프라 규모가 확장됨에 따라 FNCP Playnet 기반 인프라의 구조가 단일 클라우드 시스템에서 분산 클라우드 시스템으로 점차 확장될 수 있으며, 이에 따라 인프라를 구성하는 네트워크 역시 다양해 질 것이다. 여기서, SDN(Software Defined Network)은 기존의 스위치/라우터에서 제어 기능을 분리해 논리적으로 혹은 물리적으로 중앙 집중화시키고, 개방형 API(어플리케이션 프로그래밍 인터페이스)를 통해 네트워크의 트래픽 전달 동작을 SW기반 컨트롤러에서 제어ㆍ관리하는 기술로서, 가상화 기술이기 보다는 물리 네트워크를 프로비져닝하고 관리하기 위해 기존 분산 방식과 달리 중앙에서 네트워크 트래픽을 통제할 수 있는 새로운 네트워크 제어 수단이라 볼 수 있다.
인프라 계층부(120)에는 네트워크 기능 가상화 인프라 도메인(Network Function Virtualization Infrastructure Domain)이 존재한다. 이 계층에서는 사용자별로 독립적인 NFV(Network Function Virtualization) 환경을 제공해준다. 즉, Multi-tenancy를 지원하면서 컴퓨팅/네트워킹/스토리지 가상화기능을 제공하는 계층이다. 여기서, 네트워크 기능 가상화(NFV; Network Function Virtualization)는 가상화 기술을 기반으로 저비용, 고효율 및 신속한 서비스 제공을 위한 새로운 네트워크 '생산 환경’을 제공하기 위한 것으로서, 통신망 구성, 제어, 관리 등에 필요한 다양한 소프트웨어적인 기능들을 가상화하여 이용하는 기술로서, 통상 x86 기반의 가상 서버에서 실행된다. 네트워크 기능 가상화는 네트워크 사업자가 기존의 네트워크 하드웨어 장비를 가상화하여 데이터센터, 네트워크 노드 및 가입자 장비에 해당하는 범용 하드웨어 장비에 탑재하여 구동시킬 수 있게 한다. 예로서, 과거 초창기 컴퓨터는 운영체제(Operating System) 및 프로그램 등의 소프트웨어와 하드웨어가 함께 제공되어 운용되었으나, 개인용 컴퓨터가 (PC; Personal Computer) 보편화 되면서 IBM 호환의 범용 하드웨어에 윈도우, 매킨토시, 리눅스 등 다양한 OS를 사용자의 의도에 맞게 탑재하여 운용하게 되었다. 마찬가지로, 네트워크 기능 가상화 기술이 발전하면서 하드웨어와 소프트웨어가 일체화 되어 있던 기존 네트워크 장비에서 벗어나, 범용의 네트워크 장비에 용도에 맞는 다양한 소프트웨어를 설치하여 활용 할 수 있게 되었다. 즉, 새로운 네트워크 장비를 설치하지 않아도 가상 서버 등에 새로운 소프트웨어 기능을 탑재함으로써 네트워크 기능을 구현할 수 있다. 결국 네트워크 기능 가상화는 네트워크 사업자로 하여금 네트워크 프로비져닝 및 장애 처리 등 운용 관리 측면에서 상당한 편리성과 비용 절감을 실현 할 수 있게 한다.
물리 계층부(110)와 인프라 계층부(120)는 사용자가 직접적으로 관여하는 계층은 아니며, 인프라 운영자와 관련성이 깊다.
FNCP Playnet에서는 전술한 기능을 지원하기 위해 가장 주목받고 있는 오픈소스 클라우드 OS인 오픈 스택(OpenStack)을 활용한다. 오픈스택은 IaaS 형태의 클라우드 컴퓨팅 오픈소스 프로젝트로서 프로세싱, 저장공간, 네트워킹의 가용자원을 제어하는 목적의 여러 개의 하위 오픈소스 프로젝트를 모아놓은 집합체로 볼 수 있으며, 현재 수많은 기업들이 이 프로젝트에 참여하고 있다. 오픈 소스 프로젝트답게 주로 리눅스 기반으로 운용과 개발이 이루어지고 있으며, 열린 설계와 개발을 지향함으로써 누구나 자유롭게 참여할 수 있다. 이를 활용하면 실제 클라우드 환경을 구축하는데 요구되는 기능들을 손쉽게 활용할 수 있다. 다만, OpenStack은 6개월에 한번씩 새로운 버전이 릴리즈되는 관계로 버전 간 호환성을 보장하지는 않는다. 현재 많은 기업들이 채택하여 안정화가 이루어져 있는 버전은 IceHouse 버전이지만, 여기에서는 KVM 기반의 가상화 기술이 적용됨으로써, 하이퍼바이저로서 컨테이너 기반의 가상화 기술을 적용하기에는 적절하지 않은 상황이다.
따라서 FNCP Planet에 적용되는 OpenStack 버전은 대표적 컨테이너 기반 가상화 기술인 도커(Docker)를 적용할 수 있는 Kilo 버전으로 구성된다. 이를 통해 기존 KVM 기반의 가상화 기술과 컨테이너 기반의 가상화 기술을 모두 활용할 수 있다. 여기서, 컨테이너란 소프트에어가 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 이동했을 때 안정적으로 운영될 수 있는지를 해결하기 위한 기술로서, 애플리케이션과 이를 구동하는데 필요한 모든 종속물, 라이브러리, 기타 바이너리와 구성 파일 등을 하나의 패키지로 묶은 런타임 실행 환경으로 구성된다. VMware, Xen, Hyper-V 등과 같이 물리 서버 위에 동작하는 하이퍼바이저 상에서 호스트 시스템과 독립적으로 운영될 수 있는 게스트 시스템이 동작하는 기존의 하이퍼바이저 기반 가상화 기술과 달리, 컨테이너 기반의 가상화 기술은 시스템을 가상화 하는 것이 아니라, 애플리케이션을 구동할 수 있는 환경을 가상화한다.
따라서 애플리케이션이 동작할 수 있도록 가상 기계들간 CPU 및 메모리 등 하드웨어는 가상화하여 독립적으로 사용하지만, OS 및 라이브러리는 공용으로 사용한다. 즉, 기존 가상화 기술에서는 호스트 시스템의 OS와 게스트 시스템의 OS가 다를 수 있으며, 오히려 통상 서로 다른 OS를 사용하는 데 많이 활용되는 반면, 컨테이너 기반 가상화 기술에서는 게스트 시스템의 OS는 호스트 시스템의 OS에 종속적이다. 결론적으로, 하이퍼바이저 기반의 가상화 기술은 '시스템' 가상화 기술이고 컨테이너 기반의 가상화 기술은 '애플리케이션' 가상화 기술이라 할 수 있다.  
따라서, 커널 계층부(130)에 사용되는 Playnet Store Dock Engine에서는 Playnet에서 제공하는 다양한 가상화된 어플라이언스들에 대해 실행/보관/전송이 가능하도록 기반환경을 제공한다. 실제 컨테이너형 가상 어플라이언스들은 이 계층을 통해 관리되고 연동된다. 컨테이너 기술로서는 Libcontainer 기반으로 많이 활용되고 있는 오픈 소스 소프트웨어인 Docker를 활용한다. 어플리케이션 개발자는 이 계층에서 제공하는 기능에 대한 이해가 필요하다.
개발자 계층(140)인 Playnet Container Framework 계층에서는 다양한 컨테이너형 가상 어플라이언스들이 존재하고 Playnet 어플리케이션 개발규격에 따라 개발하고, CTS(Compatibility Test System) 및 인증과정을 거치면 Playnet Playstore에 정식으로 등록할 수 있다.
FNCP Playnet에 등록된 다양한 가상 어플라이언스(Virtual Appliance : 이하 'vAPP'로 기재함)에서 제공하는 API를 활용함으로써, 사용자들은 직접 가상화된 환경에서 서비스를 구축할 수 있고, 이를 다양한 용도로 활용할 수 있다. 여기서 vAPP는 FNCP Playnet에서 개별적으로 운용될 수 있는 가상 네트워크 장치의 단위로서, 이들은 FNCP Playnet 구동 시 가상 네트워크 유형에 따라 프로세스 또는 가상 기계 형태로 존재하며, 기본적으로 프로파일(Profiles), 디스크립션(Description), 운영 환경(Running Environment) 및 소스(Sources)로 구성된다.
도 2는 컨테이너 프레임워크 계층과 어플리케이션 API 계층에 해당하는 PaaS(Platform as a Service)의 UI(User Interface) 화면의 일 예를 도시한 도면이다.
도 2를 참조하면, HTML5 기반의 웹으로 동작함으로써 접근성을 높이고, 스마트폰 모바일 OS와 유사하게 제작함으로써 사용자에게 친숙하고 직관적인 인터페이스를 제공한다. 각 사용자는 가상화된 형태의 자원을 할당받고, 각자가 원하는 시스템 또는 서비스들을 쉽고 신속하게 구성할 수 있다.
도 3은 FNCP Playnet을 이용하기 위한 사용자 접점이 되는 FNCP Playnet UI/UX의 예시 및 각 UI의 구성요소들이 FNCP Playnet 구조와 어떻게 연관되는지를 도시한 도면이다.
도 3을 참조하면, 사용자에게 제공될 UI에서는 PaaS 형태로 서비스를 제공하지만, 각각의 기능들이 실제로 구현되기 위해서는 전 계층과 정보를 주고받아야 한다.
FNCP Playnet UI에서는 소정 영역(320)에 아이콘(321) 형태로 vAPP을 제공하고 표현하며, 사용자는 상품성이 검증된(CTS; Compatibility Test System을 통해 다른 사용자에게 유통될 수 있는지를 검증) 다양한 가상 네트워크 장치를 보관하는 공용 저장소이자 (public repository) 일종의 앱스토어인 Playstore(310)에서 vAPP을 구매할 수 있다.
즉, 사용자는 기존의 vAPP를 활용할 수도 있고, 이들을 토대로 구성된 가상 네트워크 환경을 기반으로 새로운 기능의 vAPP을 만들 수도 있고, 새로이 만들어진 vAPP을 다른 사용자에게 제공할 수도 있다.
이를 위해 사용자는 FNCP Playnet에서 제공하는 저장소에 본인이 개발한 vAPP을 보관할 수 있고, 인증과정을 통해 Playstore에 등록하여 다른 사용자들에게 판매할 수 있다. 이러한 vAPP 개발 및 배송과정은 하기의 <표 1>과 같이 컨테이너 기반의 3종류의 저장소에 의해 지원된다.
저장소 종류 용도
사설 저장소
Private Repository (for each user)
사용자마다 기본적으로 제공되는 사설 vAPP 저장소, Playstore에서 구매한 vAPP이 저장되고, 필요에 따라 본인이 개발한 vAPP도 보관할 수 있음
임시 저장소
Test Repository (for CTS Procedure)
FNCP Playnet 관리자에게 인증받는 용도로 제공되는 저장소로, 해당 저장소에 저장해둔 vAPP들은 관리자에 의해 CTS 과정을 거침.
공용 저장소
Public Repository (for Playstore)
임시저장소에서 CTS와 인증과정을 마친 vAPP들이 보관되며, 저장된 vAPP들은 Playstore에 노출됨.
사용자가 구매하여 보유한 vAPP은 Playnet 진입 시, 도 3의 좌측에 도시된 아이콘(321) 형태로 나열된다. 이 경우 해당 vAPP의 이미지가 사용자의 사설 저장소에(private repository) 저장되는 과정이 내부적으로 수행된다.
사용자 개인의 사설 저장소에 있는 가상 네트워크 장치들이 구비되면, 사용자는 이를 이용하여 가상 네트워크를 구성할 수 있다.
가상 네트워크를 구성하는 방법은 FNCP Playnet이 제공하는 직관적인 UI의 소정 영역(330)을 통해 사용자가 그림을 그리듯이 쉽게 할 수 있으며, 일단 구성된 가상 네트워크 설정은 저장 및 불러오기 기능 등을 통해 추후 재사용이 가능하므로, 단계적으로 진화하는 가상 네트워크 설정을 통해 가상 네트워크의 버전별 시험 및 개발이 용이하다.
사용자가 새로이 개발한 가상 네트워크 장치는 FNCP Playnet에 공급할 수 있다. 이 경우 FNCP Playnet 운영자는 CTS를 통해 사용자가 공급하려는 가상 네트워크 장치의 기능 및 이상 여부 등에 대한 시험을 통해 공용 저장소인 Playstore(310)에 등록 가능 여부를 판단하고, 결과를 수행한다.
FNCP Playnet UI에서 제공되는 기능들은 ETSI(European Telecommunications Standards institute)에서 NFV 표준구조로 발표한 MANO(Management and Orchestration)에 기반하여 설계될 수 있다.
도 4는 ETSI에서 NFV를 제공하기 위해 필요한 요소들과 FNCP Playnet과의 관계를 나타낸다.
도 4를 참조하면, FNCP Playnet의 개념도와 직접적으로 해당하는 부분을 화살표와 계층 구분선으로 나타내고 있다. 관리 및 조정 계층(400)으로서의 MANO 개념이 직접적으로 적용되는 부분은 NFVI부터 Playnet Container Framework 계층으로, 가상화 인프라 관리부(Virtualized Infrastructure Manager)(410), 가상화 네트워크 기능 관리부(VNF Manager)(420) 및 조정부(Orchestrator)(430) 세 가지 핵심 기능 요소에 의해 관리된다.
제시한 MANO에서 NFVI(Network Function Virtualization Infrastructure)는 Virtualized Infrastructure Manager(410)에 의해 관리되고, 인프라 가상화 기능은 OpenStack에 의해서 관리될 수 있다.
VNF Manager(420)는 VNF 인스턴스의 라이프사이클을 관리한다. 각각의 VNF 인스턴스들은 VNF Manager(420)와 연동되고, VNF Manager(420)는 하나 또는 다수의 VNF instance를 같은 타입으로 관리할 수 있다.
VNF Manager(420)는 기본적으로 VNF deployment template에 의한 (설정을 포함한) VNF 인스턴스화, VNF 인스턴스화 가능여부 확인, VNF 인스턴스 소프트웨어 업데이트/업그레이드, VNF 인스턴스 수정, VNF 인스턴스 Scaling out/in, up/down, VNF 인스턴스와 관련된 NFVI 성능 측정 및 faults/event정보 수집, VNF 인스턴스 종료, VNF 라이프사이클 변경 알림, VNF의 라이프사이클 수정을 통한 VNF 인스턴스의 통합된 관리 및 VIM과 EM간 설정과 이벤트 알림을 위한 전반적 조율 및 Roll 적용하는 기능을 가질 수 있다.
NFV Orchestrator(420)는 Network Service lifecycle을 관리하고 조정하는 기능 블럭으로, VNF Manager(420)와 NFV Infrastructure와 연동되어 최적화된 VNF의 필요자원을 제공할 수 있는 인프라 선정과 연결성을 제공한다.
FNCP Playnet을 통해, 사용자는 다양한 가상 네트워크 장치를 이용하여 여러 유형의 가상 네트워크를 구성하고, 각 네트워크 기능에 대한 시험 및 개발을 체험하고 수행함으로써 새로운 네트워크 기능을 개발할 수 있게 되는데, 오픈 소스 기반 가상화 클라우드 환경에서 가상 네트워크 장치를 이용하여 구성할 수 있는 가상 네트워크의 유형은 가상화 기술을 어떻게 적용하는가에 따라 Host VM & Nested VM 기반 가상 네트워크, Host VM & 컨테이너 기반 가상 네트워크, VM 기반 가상 네트워크 및 컨테이너 기반 가상 네트워크를 포함하여 크게 네 가지로 분류될 수 있다.
도 5는 Host VM & Nested VM 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 5를 참조하면, Host VM & Nested VM 기반의 가상 네트워크는 KVM 하이퍼바이저 상에 동작하는 Host 가상 머신 내에 Nested 가상 기계를 생성하고, Nested 가상 기계에 가상 네트워크 기능을 구현함으로써 Nested 가상 기계가 가상 네트워크 장치의 역할을 수행하도록 한다. 이 경우, 가상 네트워크 장치의 구현에 있어, Nested 가상 기계의 커널을 직접 제어할 수 있으므로, OS의 제한 없이 다양한 기능 개발의 가능성이 열려 있는 반면, 이중의 Hypervisor 가상화로 인해 심각한 리소스 점유 및 성능 손실을 유발하고, VNF Instantiation 과정에서도 많은 지연을 초래하게 된다. 즉, KVM(510), Guest OS(Host VM)(520), Nested OS (Nested VM)(530), VNF(540) 구조로서, 이 구조의 가상화에서는 심각한 성능 열화를 감수해야 한다.
도 6은 Host VM & 컨테이너 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 6을 참조하면, Host VM & 컨테이너 기반의 가상 네트워크는 Host 가상 기계 내부에 프로세스 가상화 방법인 Container 방식을 사용한다. 전술한 Nested VM 기반의 가상 네트워크 구성보다 경량의 접근법으로서, Guest OS의 컨테이너 기술을 활용하여 성능을 개선할 수 있고, 가상 기계 단위로 자유로이 가상 네트워크를 구성할 수 있으므로 관리 측면에서 유리하며, 커널의 직접 제어 또한 가능하지만, 다수의 VNF로 이루어진 대규모 NS (Network Service) 에 대응하기에는 무리가 있고, 아울러 하이퍼바이저 사용에서 기인하는 성능 효율 문제는 여전히 남아있다. 즉, KVM(610), Guest OS(VM)(620), Container(630), VNF(640) 구조로서, 성능상의 개선 및 개발 가능성 측면에서 다소 유리하지만, 하이퍼바이저 가상화로 인해 기반 하드웨어의 성능을 최대한 활용하기에는 한계가 있다.
도 7은 VM 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 7을 참조하면, VM 기반의 가상 네트워크는 하이퍼바이저(710) 상에서 동작하는 각 가상 기계에서 동작하는 응용에 따라 가상 기계 자체가 가상 네트워크 장치로 동작하게 되므로 커널의 직접제어가 가능하지만, 하이퍼바이저가 각 가상 네트워크 및 가상 네트워크 장치들을 관리해야 하는 부담이 따른다.
도 8은 컨테이너 기반의 가상 네트워크를 구성하기 위한 FNCP Playnet의 구조를 나타낸다.
도 8을 참조하면, 컨테이너 기반의 가상 네트워크는 하이퍼바이저(810) 자체가 컨테이너 기반 가상화 기술을 제공하므로, 성능의 열화 없이 하드웨어의 성능을 거의 그대로 활용할 수 있지만, 사용자가 커널을 직접 제어하기에는 무리가 따른다. 또한 여전히 하이퍼바이저가 각 가상 네트워크 및 가상 네트워크 장치들을 관리해야 하는 부담이 따른다
도 9는 FNCP Playnet을 통해 제공되거나, 사용자가 FNCP Planet을 활용하여 개발 할 수 있는 가상 네트워크 장치들의 예시이다.
도 9를 참조하면, 사용자는 예시에 주어진 다양한 가상 네트워크 장치를 통해 다양한 유형의 가상 네트워크를 구성할 수 있다. 구성된 가상 네트워크를 통해 자신이 개발하고자 하는 네트워크 기능을 시험해볼 수 있으며, 이를 토대로 새로운 네트워크 기능을 개발할 수 있으며, 결국 새로운 가상 네트워크 장치의 개발도 가능하다.

Claims (10)

  1. 물리 계층부와,
    사용자별로 독립적인 환경에서 가상화 기능을 제공하는 네트워크 기능 가상화(Network Function Virtualization : NFV) 인프라 도메인 계층부와,
    개별적으로 운용될 수 있는 가상 네트워크 장치의 단위인 가상 어플라이언스들에 대한 처리 기반 환경을 제공하는 도커 엔진 계층부와,
    상기 가상 어플라이언스들을 컨테이너 형태로 개발 및 등록할 수 있도록 지원하는 컨테이너 프레임워크 계층부와,
    상기 컨테이너 프레임워크 계층부와 연동한 유저 인터페이스를 제공하여, 상기 유저 인터페이스를 통해 사용자가 가상 네트워크를 구성하고, 구성된 가상 네트워크의 테스트 기능을 지원하는 가상 네트워크 서비스 계층부를 포함함을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  2. 제1 항에 있어서, 상기 물리 계층부는
    레거시, 가상 네트워크 및 소프트웨어 정의 네트워크(Software Defined Network : SDN) 중 적어도 하나 이상을 포함함을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  3. 제1 항에 있어서, 상기 가상 어플라이언스는
    가상 네트워크 유형에 따라 프로세스 또는 가상 기계 형태로 존재하며, 프로파일, 디스크립션, 운용 환경 및 소스를 포함함을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  4. 제1 항에 있어서, 상기 유저 인터페이스는
    아이콘 형태로 소정 영역에 나열된 가상 어플라이언스들과, 상품성이 검증된 가상 어플라이언스들을 보관 및 판매하는 앱스토어와, 상기 가상 어플라이언스들을 이용해 사용자가 가상 네트워크를 구성할 수 있는 영역을 포함함을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  5. 제4 항에 있어서,
    상기 사용자에 의해 개발된 가상 네트워크는 사설 저장소에 저장됨을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  6. 제4 항에 있어서,
    임시 저장소에 저장된 가상 어플라이언스들은 관리자에 의해 인증 과정을 거친 후 공용 저장소에 저장되어 상기 앱 스토어를 통해 판매 가능한 상태로 노출됨을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  7. 제4 항에 있어서,
    상기 사용자에 의해 구성된 가상 네트워크는 저장 및 불러오기를 포함하는 기능들을 통해 추후 재사용됨을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  8. 제1 항에 있어서,
    상기 네트워크 기능 가상화(Network Function Virtualization : NFV) 인프라 도메인 계층부, 도커 엔진 계층부 및 컨테이너 프레임워크 계층부와 연동되는 관리 및 조정 계층을 더 포함함을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  9. 제1 항에 있어서,
    네트워크 기능 가상화 인프라 도메인 계층부를 관리하는 가상화 인프라 관리부와,
    가상화 네트워크 기능 인스턴스의 라이프사이클을 관리하는 가상화 네트워크 기능 관리부와,
    네트워크 서비스 라이프사이클을 관리 및 조정하되, 상기 가상화 내트워크 기능 관리부와 네트워크 기능 가상화 인프라 도메인 계층부와 연동되어 최적화된 가상화 네트워크 기능의 필요자원을 제공할 수 있는 인프라 선정과 연결성을 제공하는 조정부를 포함함을 특징으로 하는 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템.
  10. 제1 항에 있어서,
    가상 네트워크 장치를 이용하여 구성할 수 있는 가상 네트워크의 유형은 Host VM & Nested VM 기반 가상 네트워크, Host VM & 컨테이너 기반 가상 네트워크, VM 기반 가상 네트워크 및 컨테이너 기반 가상 네트워크 중 적어도 하나임을 특징으로 하는 오픈 소스 가상화 클라우드 환경 기반 가상 네트워크 장치를 이용한 네트워크 컴퓨팅 개발 테스트베드 시스템.
KR1020160051718A 2016-04-27 2016-04-27 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템 KR102105690B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160051718A KR102105690B1 (ko) 2016-04-27 2016-04-27 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템
US15/217,435 US10367714B2 (en) 2016-04-27 2016-07-22 Apparatus for testing and developing products of network computing based on open-source virtualized cloud

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160051718A KR102105690B1 (ko) 2016-04-27 2016-04-27 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템

Publications (2)

Publication Number Publication Date
KR20170122568A true KR20170122568A (ko) 2017-11-06
KR102105690B1 KR102105690B1 (ko) 2020-04-28

Family

ID=60158657

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160051718A KR102105690B1 (ko) 2016-04-27 2016-04-27 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템

Country Status (2)

Country Link
US (1) US10367714B2 (ko)
KR (1) KR102105690B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190056709A (ko) * 2017-11-17 2019-05-27 에스케이브로드밴드주식회사 서비스 관리를 위한 장치 및 방법
WO2020222352A1 (ko) * 2019-04-29 2020-11-05 래블업(주) 사용자가 요청한 다수개의 라이브러리를 탑재한 세션 컨테이너 제공방법
KR20210028176A (ko) * 2019-02-28 2021-03-11 에스케이브로드밴드주식회사 컨테이너를 활용한 가상 데스크탑 시스템 및 그 데이터 처리 방법
KR20220079475A (ko) * 2020-12-04 2022-06-13 광주과학기술원 에스디아이 환경의 운용시스템, 및 운용방법
WO2024128401A1 (ko) * 2022-12-13 2024-06-20 쿠팡 주식회사 전자 장치 및 그의 정보 제공 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107918870B (zh) * 2016-10-10 2021-06-18 深圳劲嘉盒知科技有限公司 产品生命值测量的建模方法及装置
US10229039B2 (en) * 2016-10-27 2019-03-12 International Business Machines Corporation Testing a virtual network function by a virtual network tester
CN107832227B (zh) * 2017-11-24 2020-04-10 平安科技(深圳)有限公司 业务系统的接口参数测试方法、装置、设备和存储介质
CN108132878A (zh) * 2017-12-21 2018-06-08 税友软件集团股份有限公司 一种测试环境的调度方法及系统
CN108829399B (zh) * 2018-04-13 2022-05-20 杭州朗和科技有限公司 一种应用的测试方法、测试装置、介质和计算设备
US10880173B2 (en) 2018-12-03 2020-12-29 At&T Intellectual Property I, L.P. Automated certification of network functions
CN109739640A (zh) * 2018-12-13 2019-05-10 北京计算机技术及应用研究所 一种基于申威架构的容器资源管理系统
CN109766269A (zh) * 2018-12-18 2019-05-17 微梦创科网络科技(中国)有限公司 持续集成自动化测试方法、装置、设备和介质
CN109725986B (zh) * 2019-01-29 2023-01-20 中山大学 一种图形化和容器化的虚拟网络环境构建及批量部署方法
CN109871328B (zh) * 2019-02-26 2022-04-05 网宿科技股份有限公司 一种软件测试方法及装置
CN110417574B (zh) * 2019-05-21 2022-01-07 腾讯科技(深圳)有限公司 一种拓扑分析方法、装置和存储介质
EP3745761A1 (en) 2019-05-28 2020-12-02 Samsung Electronics Co., Ltd. Virtualization of ran functions based on load of the base stations
KR102265886B1 (ko) * 2020-07-24 2021-06-16 (주)온넷시스템즈코리아 Arm 서버 기반의 가상 클라우드 서비스 플랫폼
CN114244722A (zh) 2020-09-08 2022-03-25 中兴通讯股份有限公司 虚拟网络健康分析方法、系统和网络设备
KR20220059783A (ko) 2020-11-03 2022-05-10 에스케이텔레콤 주식회사 클라우드 성능 테스트 장치 및 방법
KR102663831B1 (ko) * 2021-02-02 2024-05-07 쉬프트정보통신 주식회사 클라우드 기반의 ui/ux 협업 개발시스템
CN116112412B (zh) * 2023-02-28 2024-10-15 苏州浪潮智能科技有限公司 一种虚拟网卡绑定冗余功能测试方法、系统、装置及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140164624A1 (en) * 2011-08-19 2014-06-12 Panavisor, Inc. Systems and Methods for Managing a Virtual Infrastructure
US20140241247A1 (en) * 2011-08-29 2014-08-28 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3g packet core in a cloud computer with openflow data and control planes
KR20150124001A (ko) * 2014-04-25 2015-11-05 (주)나누미넷 클라우드 기반 웹 호스팅 시스템
US20160072669A1 (en) * 2008-11-12 2016-03-10 Teloip Inc. System, apparatus and method for providing a virtual network edge and overlay with virtual control plane

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8254358B2 (en) * 2003-03-06 2012-08-28 Ericsson Ab Communicating a broadcast message to change data rates of mobile stations
KR20110064539A (ko) 2009-12-08 2011-06-15 주식회사 케이티 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법
US8572612B2 (en) * 2010-04-14 2013-10-29 International Business Machines Corporation Autonomic scaling of virtual machines in a cloud computing environment
KR20120068279A (ko) 2010-12-17 2012-06-27 연세대학교 산학협력단 가상 네트워크 자원을 활용한 자동 테스트베드 구축 시스템
US20140024124A1 (en) * 2011-02-16 2014-01-23 National University Corporation Hokkaido University Labeling agent for analyzing post-translational modifications of serine and threonine
US8447851B1 (en) * 2011-11-10 2013-05-21 CopperEgg Corporation System for monitoring elastic cloud-based computing systems as a service
US9713064B2 (en) * 2013-03-31 2017-07-18 Hewlett Packard Enterprise Development Lp Schedule for access to shared wireless medium based on profile data
US9183121B2 (en) 2013-07-19 2015-11-10 Cisco Technology, Inc. Network development and testing as a cloud service
US9588815B1 (en) 2015-06-17 2017-03-07 EMC IP Holding Company LLC Architecture for data collection and event management supporting automation in service provider cloud environments
US10255147B2 (en) 2016-04-14 2019-04-09 Vmware, Inc. Fault tolerance for containers in a virtualized computing environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160072669A1 (en) * 2008-11-12 2016-03-10 Teloip Inc. System, apparatus and method for providing a virtual network edge and overlay with virtual control plane
US20140164624A1 (en) * 2011-08-19 2014-06-12 Panavisor, Inc. Systems and Methods for Managing a Virtual Infrastructure
US20140241247A1 (en) * 2011-08-29 2014-08-28 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3g packet core in a cloud computer with openflow data and control planes
KR20150124001A (ko) * 2014-04-25 2015-11-05 (주)나누미넷 클라우드 기반 웹 호스팅 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
나태흠 외 1명. '다지점 오픈플로우 사이트들을 위한 자동화된 연동 도구의 설계 및 구현'. 정보과학회 컴퓨팅의 실제 논문지 제21권 제1호, 2015.01., pp.1-12.* *
황정연 외 3명. '초연결 통신인프라를 위한 클라우드 기반 NFV 기술동향'. 전자통신동향분석 제31권 제1호, 2016.02., pp.86-98.* *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190056709A (ko) * 2017-11-17 2019-05-27 에스케이브로드밴드주식회사 서비스 관리를 위한 장치 및 방법
KR20210028176A (ko) * 2019-02-28 2021-03-11 에스케이브로드밴드주식회사 컨테이너를 활용한 가상 데스크탑 시스템 및 그 데이터 처리 방법
WO2020222352A1 (ko) * 2019-04-29 2020-11-05 래블업(주) 사용자가 요청한 다수개의 라이브러리를 탑재한 세션 컨테이너 제공방법
US11144343B1 (en) 2019-04-29 2021-10-12 Lablup Inc. Method of providing session container mounted with plurality of libraries requested by user
KR20220079475A (ko) * 2020-12-04 2022-06-13 광주과학기술원 에스디아이 환경의 운용시스템, 및 운용방법
WO2024128401A1 (ko) * 2022-12-13 2024-06-20 쿠팡 주식회사 전자 장치 및 그의 정보 제공 방법

Also Published As

Publication number Publication date
KR102105690B1 (ko) 2020-04-28
US10367714B2 (en) 2019-07-30
US20170317914A1 (en) 2017-11-02

Similar Documents

Publication Publication Date Title
KR20170122568A (ko) 오픈 소스 가상화 클라우드 환경 기반 네트워크 컴퓨팅 개발 테스트베드 시스템
US11405274B2 (en) Managing virtual network functions
US11023215B2 (en) Methods, systems, and portal for accelerating aspects of data analytics application development and deployment
US10225335B2 (en) Apparatus, systems and methods for container based service deployment
US10656983B2 (en) Methods and apparatus to generate a shadow setup based on a cloud environment and upgrade the shadow setup to identify upgrade-related errors
US11146620B2 (en) Systems and methods for instantiating services on top of services
Vögler et al. A scalable framework for provisioning large-scale IoT deployments
US9032373B1 (en) End to end testing automation and parallel test execution
US9519472B2 (en) Automation of virtual machine installation by splitting an installation into a minimal installation and customization
US20120102103A1 (en) Running legacy applications on cloud computing systems without rewriting
US20130227089A1 (en) Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
US20120066681A1 (en) System and method for management of a virtual machine environment
US20200059401A1 (en) Management pod deployment with the cloud provider pod (cpod)
Bozman et al. Cloud computing: The need for portability and interoperability
US9645814B1 (en) Generating and publishing applications for multiple platforms
US9959135B2 (en) Pattern design for heterogeneous environments
US10620991B1 (en) Workload migration in multi-cloud environments
US20150040125A1 (en) Allowing management of a virtual machine by multiple cloud providers
CN105335176A (zh) 一种调用安装于电子设备上的应用的方法及装置
Muzumdar et al. Navigating the Docker Ecosystem: A Comprehensive Taxonomy and Survey
US20230055276A1 (en) Efficient node identification for executing cloud computing workloads
KR102554497B1 (ko) 클라우드 컴퓨팅 기반의 해운 항만 물류 서비스 플랫폼 구축 장치 및 방법
CN114730274A (zh) 由托管的操作系统进行的虚拟机迁移检测
Yoon et al. Design and implementation of virtual network function development toolkit
Fang et al. Cloud computing: virtual web hosting on infrastructure as a service (IAAS)

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant