KR20110064539A - Apparatus and method for virtual network simulation using multiple virtual machines - Google Patents

Apparatus and method for virtual network simulation using multiple virtual machines Download PDF

Info

Publication number
KR20110064539A
KR20110064539A KR1020090121200A KR20090121200A KR20110064539A KR 20110064539 A KR20110064539 A KR 20110064539A KR 1020090121200 A KR1020090121200 A KR 1020090121200A KR 20090121200 A KR20090121200 A KR 20090121200A KR 20110064539 A KR20110064539 A KR 20110064539A
Authority
KR
South Korea
Prior art keywords
virtual machine
virtual
network
machine
network simulation
Prior art date
Application number
KR1020090121200A
Other languages
Korean (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 KR1020090121200A priority Critical patent/KR20110064539A/en
Publication of KR20110064539A publication Critical patent/KR20110064539A/en

Links

Images

Classifications

    • 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
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)

Abstract

PURPOSE: A network simulation apparatus using a plurality of VM and a method thereof are provided to perform network simulation by generating a VM equipped with a communication socket with the other VM. CONSTITUTION: A VM(Virtual Machine)(24) performs the function of network equipment which is operated under an OS(Operating System). The VM creates a communication socket with the other VM. According to the command of a client, a VM monitor(23) creates the VM. A host machine(22) transfers the command of the client to the VM monitor. The host machine creates the VM.

Description

다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법{APPARATUS AND METHOD FOR VIRTUAL NETWORK SIMULATION USING MULTIPLE VIRTUAL MACHINES}Apparatus and method for network simulation using multiple virtual machines {APPARATUS AND METHOD FOR VIRTUAL NETWORK SIMULATION USING MULTIPLE VIRTUAL MACHINES}

본 발명은 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 외부 클라이언트로부터의 명령에 따라 소정 운영체제하에서 동작하면서 네트워크 장비의 기능을 수행하며 자신의 호스트머신내 실제 네트워크 드라이버와 연결된 가상머신을 생성하여 네트워크 시뮬레이션을 수행하기 위한, 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법에 관한 것이다.The present invention relates to a network simulation apparatus and a method using a plurality of virtual machines, and more particularly, to perform a function of the network equipment while operating under a predetermined operating system according to a command from an external client, the actual network driver in its own host machine The present invention relates to a network simulation apparatus using a plurality of virtual machines and a method for generating a virtual machine connected to the network simulation.

가상머신은 하나의 PC(Personal Computer) 또는 서버에 다수의 가상 하드웨어를 구성하고 이를 이용하여 새로운 운영체제를 실행하는 기술이다.A virtual machine is a technology that configures a plurality of virtual hardware in one personal computer (PC) or server and executes a new operating system using the same.

이때 가상의 하드웨어가 생성되는 실제 PC 또는 서버를 호스트머신이라 하고, 그 안에서 가상의 하드웨어를 구성해 주는 프로그램을 가상머신 모니터 또는 하이퍼바이저(Hypervisor)라 하며, 가상머신 모니터가 생성한 가상의 하드웨어와 그에 상응하는 운영체제를 가상머신이라 한다. 가상머신 모니터에는 상용 제품으로 유명한 'Vmware'가 있고, 오픈소스로 제작된 'QEMU' 및 'Virtualbox' 등이 있다.At this time, the actual PC or server where virtual hardware is created is called a host machine, and the program that configures the virtual hardware therein is called a virtual machine monitor or a hypervisor, and the virtual hardware generated by the virtual machine monitor The corresponding operating system is called a virtual machine. Virtual machine monitors include Vmware, a popular commercial product, and open source, QEMU and Virtualbox.

가상 네트워크 시뮬레이션 시스템은 라우터로 동작하는 다수의 가상머신들을 생성하고, 가상 라우터 간의 연결을 통해서 하나의 가상화된 네트워크를 구축하여 시뮬레이션할 수 있다.The virtual network simulation system generates a plurality of virtual machines that operate as routers, and builds and simulates one virtualized network through the connection between the virtual routers.

일반적인 네트워크 시뮬레이션 툴인 'NS2'나 'Opnet'과 같은 프로그램은 네트워크 모델링을 통해서 실제 라우터나 PC와 같은 동작을 수행하도록 한다. 따라서 정확도 및 시뮬레이션 속도에 한계가 있다.Programs such as 'NS2' and 'Opnet', which are general network simulation tools, perform network modeling to perform the same operations as a real router or PC. Therefore, there is a limit in accuracy and simulation speed.

또한 라우터와 서버 등을 실제로 구성하는 테스트베드를 구축하여 테스트하는 방법은 막대한 비용 문제를 야기한다.In addition, building and testing a testbed that actually configures routers and servers creates enormous cost problems.

이를 해결하기 위한 종래의 기술로 가상화 기술을 이용하여 하나의 PC나 서버에 다수의 가상머신을 생성한 후 시뮬레이션하는 방법이 시도되었으나, 가상머신간의 원할한 통신을 보장하기 위한 구체적인 방안을 제시하지 못하였다.As a conventional technique for solving this problem, a method of simulating after creating a plurality of virtual machines on a single PC or server using virtualization technology has been attempted, but it has not been suggested a specific method for ensuring smooth communication between virtual machines. It was.

다른 한편으로, 종래의 기술은 하나의 PC나 서버에 생성되는 가상머신들을 대상으로 시뮬레이션하기 때문에, 그 확장성에 한계가 있는 문제점이 있었다.On the other hand, since the conventional technology simulates a virtual machine generated on one PC or server, there is a problem in that scalability is limited.

상기와 같은 종래 기술의 문제점을 해결하고자 하는 것이 본 발명의 과제이다.It is a problem of the present invention to solve the problems of the prior art as described above.

따라서 본 발명은 외부 클라이언트로부터의 명령에 따라 소정 운영체제하에서 동작하면서 네트워크 장비의 기능을 수행하며 타 가상머신과의 통신용 소켓을 구비한 가상머신을 생성하여 네트워크 시뮬레이션을 수행함으로써, 가상머신간의 원할한 통신을 제공하고, 여러 장애를 인위적으로 발생시켜 그에 대한 대응방안을 사전에 개발할 수 있도록 하기 위한, 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention performs network simulation while operating under a predetermined operating system according to a command from an external client, and creates a virtual machine having a socket for communication with another virtual machine to perform network simulation, thereby smoothly communicating between virtual machines. The purpose of the present invention is to provide a network simulation apparatus and method using a plurality of virtual machines in order to provide a system, and to artificially generate various obstacles so as to develop a countermeasure in advance.

또한 본 발명은 외부 클라이언트로부터의 명령에 따라 소정 운영체제하에서 동작하면서 네트워크 장비의 기능을 수행하며 자신의 호스트머신내 실제 네트워크 드라이버와 연결된 가상머신을 생성하여 네트워크 시뮬레이션을 수행함으로써, 가상머신간의 원할한 통신을 제공할 뿐만 아니라, 상용망과 유사한 대용량의 가상 네트워크를 구축할 수 있고, 여러 장애를 인위적으로 발생시켜 그에 대한 대응방안을 사전에 개발할 수 있도록 하기 위한, 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치 및 그 방법을 제공하는데 다른 목적이 있다.In addition, the present invention performs the function of the network equipment while operating under a predetermined operating system according to a command from an external client, and creates a virtual machine connected to the actual network driver in its host machine to perform network simulation, thereby smoothly communicating between the virtual machines. Network simulation apparatus using multiple virtual machines, and the like, to construct a large-capacity virtual network similar to a commercial network, and to artificially generate various obstacles and to develop countermeasures in advance. There is another purpose in providing a method.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

상기 목적을 달성하기 위한 본 발명의 장치는, 하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 장치에 있어서, 운영체제하에서 동작하는 네트워크 장비의 기능을 수행하며, 타 가상머신과의 통신용 소켓을 생성하기 위한 가상머신; 클라이언트의 명령에 따라 상기 가상머신을 생성하기 위한 가상머신 모니터; 및 상기 클라이언트로부터의 명령을 상기 가상머신 모니터로 전달하여 상기 가상머신을 생성하도록 하기 위한 호스트머신을 포함한다.The apparatus of the present invention for achieving the above object is a network simulation apparatus in an environment in which at least two virtual machines are created on one host machine, and performs functions of network equipment operating under an operating system, and another virtual machine. A virtual machine for creating a socket for communication with the network; A virtual machine monitor for generating the virtual machine according to a command of a client; And a host machine for transmitting the command from the client to the virtual machine monitor to generate the virtual machine.

또한 상기 목적을 달성하기 위한 본 발명의 방법은, 하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 방법에 있어서, 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하는 제 1 가상머신을 생성하는 제 1 가상머신 생성단계; 상기 제 1 가상머신이 제 2 가상머신과의 통신용 소켓을 생성하는 단계; 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성하는 제 2 가상머신 생성단계; 상기 제 2 가상머신이 제 1 가상머신과의 통신용 소켓을 생성하는 단계; 및 상기 생성한 통신용 소켓을 통해 상호 통신하면서 해당 기능을 수행하는 단계를 포함한다.In addition, the method of the present invention for achieving the above object, in a network simulation method in an environment in which at least two virtual machines are created on one host machine, performing the function of the first network equipment while operating under the first operating system Generating a first virtual machine to generate a first virtual machine; Creating, by the first virtual machine, a socket for communication with a second virtual machine; A second virtual machine generating step of generating a second virtual machine operating under a second operating system and performing a function of a second network equipment; Generating, by the second virtual machine, a socket for communication with the first virtual machine; And performing a corresponding function while communicating with each other through the created communication socket.

한편 상기 다른 목적을 달성하기 위한 본 발명의 장치는, 각기 다른 호스트머신상에 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 장치에 있어서, 운영체제하에서 동작하는 네트워크 장비의 기능을 수행하며, 해당 호스트머신의 네트워 크 드라이버를 통해 타 호스트머신상의 가상머신과 통신하기 위한 가상머신; 클라이언트의 명령에 따라 상기 가상머신을 생성하기 위한 가상머신 모니터; 및 상기 클라이언트로부터의 명령을 상기 가상머신 모니터로 전달하여 상기 가상머신을 생성하도록 하기 위한 호스트머신을 포함한다.On the other hand, the apparatus of the present invention for achieving the above object, in the network simulation apparatus in the environment in which the virtual machine is created on different host machine, performs the function of the network equipment operating under the operating system, A virtual machine for communicating with a virtual machine on another host machine through a network driver; A virtual machine monitor for generating the virtual machine according to a command of a client; And a host machine for transmitting the command from the client to the virtual machine monitor to generate the virtual machine.

또한 상기 다른 목적을 달성하기 위한 본 발명의 방법은, 각기 다른 호스트머신상에 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 방법에 있어서, 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하는 제 1 가상머신을 생성하는 제 1 가상머신 생성단계; 상기 제 1 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결하는 제 1 연결단계; 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성하는 제 2 가상머신 생성단계; 상기 제 2 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결하는 제 2 연결단계; 및 각기 연결한 네트워크 드라이버를 통해 서로 통신하면서 해당 기능을 수행하는 단계를 포함한다.In addition, the method of the present invention for achieving the above another object, in the network simulation method in the environment where the virtual machine is created on different host machine, performing the function of the first network equipment while operating under the first operating system Generating a first virtual machine; A first connection step of connecting the first virtual machine with a network driver in its host machine; A second virtual machine generating step of generating a second virtual machine operating under a second operating system and performing a function of a second network equipment; A second connection step of connecting the second virtual machine with a network driver in its host machine; And performing a corresponding function while communicating with each other through the connected network drivers.

상기와 같은 본 발명은, 외부 클라이언트로부터의 명령에 따라 소정 운영체제하에서 동작하면서 네트워크 장비의 기능을 수행하며 타 가상머신과의 통신용 소켓을 구비한 가상머신을 생성하여 네트워크 시뮬레이션을 수행함으로써, 가상머신간의 원할한 통신을 제공하고, 여러 장애를 인위적으로 발생시켜 그에 대한 대응방안을 사전에 개발할 수 있도록 하는 효과가 있다.The present invention as described above, by operating under a predetermined operating system according to a command from an external client to perform the function of the network equipment and to create a virtual machine having a socket for communication with other virtual machines to perform network simulation, It has the effect of providing smooth communication and artificially generating various obstacles to develop countermeasures in advance.

또한 본 발명은 외부 클라이언트로부터의 명령에 따라 소정 운영체제하에서 동작하면서 네트워크 장비의 기능을 수행하며 자신의 호스트머신내 실제 네트워크 드라이버와 연결된 가상머신을 생성하여 네트워크 시뮬레이션을 수행함으로써, 가상머신간의 원할한 통신을 제공할 뿐만 아니라, 상용망과 유사한 대용량의 가상 네트워크를 구축할 수 있고, 여러 장애를 인위적으로 발생시켜 그에 대한 대응방안을 사전에 개발할 수 있도록 하는 효과가 있다.In addition, the present invention performs the function of the network equipment while operating under a predetermined operating system according to a command from an external client, and creates a virtual machine connected to the actual network driver in its host machine to perform network simulation, thereby smoothly communicating between the virtual machines. In addition to providing a large amount of virtual network similar to the commercial network, it is possible to artificially generate a number of failures and to develop countermeasures in advance.

상술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되어 있는 상세한 설명을 통하여 보다 명확해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings, It can be easily carried out. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1 은 본 발명이 적용되는 다수의 가상머신을 이용한 네트워크 시뮬레이션 시스템에 대한 일실시예 구성도이다.1 is a configuration diagram of an embodiment of a network simulation system using a plurality of virtual machines to which the present invention is applied.

도 1에 도시된 바와 같이, 본 발명이 적용되는 다수의 가상머신을 이용한 네트워크 시뮬레이션 시스템은 제어 단말에 위치한 클라이언트 프로그램(이하, 클라이언트라 함)(10) 및 다수의 네트워크 시뮬레이션 장치(20)를 포함한다.As shown in FIG. 1, a network simulation system using a plurality of virtual machines to which the present invention is applied includes a client program (hereinafter referred to as a client) 10 and a plurality of network simulation apparatuses 20 located at a control terminal. do.

클라이언트(10)는 다수의 호스트머신과 통신하여 가상머신의 생성을 지시하고 제어한다. 이때 클라이언트(10)는 각 호스트머신내 가상머신과 가상머신 제어 인터페이스(VM API)를 통해 통신한다.The client 10 communicates with a plurality of host machines to instruct and control the creation of the virtual machine. At this time, the client 10 communicates with the virtual machine in each host machine through a virtual machine control interface (VM API).

네트워크 시뮬레이션 장치(20)는 가상머신 제어 인터페이스를 통해 클라이언트(10)로부터 받은 명령을 가상머신 모니터로 전달하여 해당 네트워크 장비의 기능을 수행하는 가상머신(24)을 생성하도록 하기 위한 호스트머신, 및 네트워크 장비의 기능을 수행하기 위한 다수의 가상머신을 포함한다.The network simulation apparatus 20 transmits a command received from the client 10 through the virtual machine control interface to the virtual machine monitor to generate a virtual machine 24 performing a function of the corresponding network equipment, and a network. It includes a number of virtual machines to perform the functions of the equipment.

이러한 구성을 가지는 네트워크 시뮬레이션 시스템은 서버/클라이언트 모델을 이용함으로써, 네트워크 장비의 기능을 수행하는 가상머신의 수를 증가시키는데 매우 용이한 장점이 있다.The network simulation system having such a configuration has a very easy advantage of increasing the number of virtual machines performing the functions of network equipment by using the server / client model.

즉, 클라이언트(10)로부터의 가상머신 생성 명령에 따라 하나의 호스트머신내에 적어도 하나의 가상머신을 생성하여 네트워크 시뮬레이션 테스트를 수행할 수도 있고, 다수의 호스트머신내에 가상머신을 생성하여 네트워크 시뮬레이션 테스트를 수행할 수도 있어 그 확장이 매우 용이하다.That is, the network simulation test may be performed by generating at least one virtual machine in one host machine according to the virtual machine creation command from the client 10, or may generate a virtual machine in a plurality of host machines to perform a network simulation test. It can also be done so its expansion is very easy.

이를 위해서는 종류가 서로 다른 각 가상머신간에 동일한 방식의 통신 기능을 제공해야 한다. 이에 대한 상세한 설명은 하기에서 언급하기로 한다.To do this, it is necessary to provide the same type of communication between virtual machines of different types. Detailed description thereof will be made later.

도 2 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치의 일실시예 구성도이다.2 is a diagram illustrating an embodiment of a network simulation apparatus using a plurality of virtual machines according to the present invention.

도 2에 도시된 바와 같이, 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치는, 가상머신 제어 인터페이스(VM API)(21)를 통해 클라이언트(10)로부터 받은 명령을 각 가상머신 모니터(23)로 전달하여 각 가상머신 모니터(23)로 하여금 해당 네트워크 장비의 기능을 수행하는 가상머신(24)을 생성 및 제어하도록 하기 위한 호스트머신(22), 호스트머신(22)으로부터 전달받은 명령에 따라 해당 네트워크 장비의 기능을 수행하는 가상머신(24)을 생성하기 위한 가상머신 모니터(23), 가상머신 모니터(23)에 의해 생성되어 네트워크 장비의 기능을 수행하기 위한 적어도 하나의 가상머신(24)을 포함한다.As shown in FIG. 2, the network simulation apparatus using a plurality of virtual machines according to the present invention receives a command received from the client 10 through a virtual machine control interface (VM API) 21 for each virtual machine monitor 23. According to the command received from the host machine 22 and the host machine 22 to allow each virtual machine monitor 23 to create and control the virtual machine 24 performing the functions of the corresponding network equipment. At least one virtual machine 24 generated by the virtual machine monitor 23 and the virtual machine monitor 23 for generating the virtual machine 24 performing the function of the corresponding network equipment and performing the function of the network equipment. It includes.

또한 가상머신 제어 인터페이스(21)는 호스트머신(22)상에서 동작하여 클라이언트(10)와 호스트머신(22) 내에 생성된 모든 가상머신과의 인터페이스를 제공한다.The virtual machine control interface 21 also operates on the host machine 22 to provide an interface between the client 10 and all virtual machines created in the host machine 22.

아울러, 가상머신(24)은 타 가상머신과 통신하기 위해 통신용 소켓을 생성하거나 해당 호스트머신 내 네트워크 드라이버와 연결한다.In addition, the virtual machine 24 generates a communication socket or communicates with a network driver in the host machine in order to communicate with other virtual machines.

이하, 가상머신 모니터(23)의 종류 및 각 가상머신 모니터(23)가 생성하는 가상머신(24)에 대해 살펴보기로 한다.Hereinafter, the type of the virtual machine monitor 23 and the virtual machine 24 generated by each virtual machine monitor 23 will be described.

먼저 가상머신 모니터(23)의 종류는 'Xen', 'Dynamips', 'QEMU' 등이 있다. 'Xen' 및 'QEMU'는 일반 PC(Personal Computer) 하드웨어를 가상화할 수 있는 소스로 윈도우, 리눅스, 솔라리스, 주니퍼 라우터 등과 같은 장비를 가상화할 수 있고, 'Dynamips'는 'MIPS CPU'를 가상화할 수 있는 소스로 시스코 라우터 7200 시리즈, 시스코 라우터 3800 시리즈, 시스코 라우터 2800 시리즈를 가상화할 수 있다.First, the types of the virtual machine monitor 23 include 'Xen', 'Dynamips', and 'QEMU'. 'Xen' and 'QEMU' are the sources of virtualization of general personal computer (PC) hardware. Virtual machines such as Windows, Linux, Solaris, and Juniper routers can be virtualized, and 'Dynamips' is used to virtualize 'MIPS CPU'. It can be used to virtualize the Cisco Router 7200 Series, the Cisco Router 3800 Series, and the Cisco Router 2800 Series.

따라서 'Xen' 또는 'QEMU'은 네트워크 장비인 주니퍼 라우터와 운영체제인 'Junos' 및 네트워크 드라이버인 NIC(Network Interface Card) 드라이버를 가상화하여, 'Junos'에서 동작하면서 주니퍼 라우터의 기능을 수행하는 제 1 가상머신을 생성한다. 이때, 본 발명에서는 제 1 가상머신이 타 가상머신과 원할히 통신할 수 있도록 UDP(User Datagram Protocol) 소켓을 생성하되, 이는 가상 NIC 드라이버가 수행한다.Therefore, 'Xen' or 'QEMU' virtualizes Juniper routers, which are network devices, Junos, which is an operating system, and Network Interface Card (NIC) drivers, which are network drivers. Create a virtual machine. In this case, the present invention creates a UDP (User Datagram Protocol) socket so that the first virtual machine can communicate with other virtual machines smoothly, which is performed by the virtual NIC driver.

또한, 'Dynamips'는 네트워크 장비인 시스코 라우터와 운영체제인 'IOS' 및 네트워크 드라이브인 가상 NIC 드라이버를 가상화하여, 'IOS'에서 동작하는 시스코 라우터의 기능을 수행하는 제 2 가상머신을 생성한다. 이때, 본 발명에서는 제 2 가상머신이 타 가상머신과 원할히 통신할 수 있도록 UDP 소켓을 생성하되, 이는 가상 NIC 드라이버가 수행한다.In addition, 'Dynamips' virtualizes a Cisco router, which is a network device, an operating system, 'IOS', and a virtual NIC driver, which is a network drive, to create a second virtual machine that performs a function of a Cisco router operating in the 'IOS'. In this case, in the present invention, a UDP socket is created so that the second virtual machine can communicate with other virtual machines smoothly, which is performed by the virtual NIC driver.

도 3 은 본 발명에 따른 가상 네트워크를 구성 및 제어하는 클라이언트에 대한 일예시도이다.3 is an exemplary view of a client configuring and controlling a virtual network according to the present invention.

도 3에 도시된 바와 같이, 클라이언트 프로그램이 적용된 클라이언트 단말은 호스트머신에서 제공하는 가상머신의 종류를 관리하기 위한 가상머신 카테고리(31), 가상 네트워크를 구축하기 위한 토폴로지 관리(32), 가상머신을 제어하기 위한 클라이언트 API(33)를 포함한다.As shown in FIG. 3, the client terminal to which the client program is applied includes a virtual machine category 31 for managing the types of virtual machines provided by the host machine, a topology management 32 for establishing a virtual network, and a virtual machine. A client API 33 for control.

따라서 사용자는 클라이언트 프로그램이 실행된 화면에서 가상머신의 카테고리 내에서 원하는 가상머신을 토폴로지 영역으로 드래그 앤 드롭(Drag & Drop)함으로써 가상의 네트워크를 구성할 수 있다.Therefore, the user can configure a virtual network by dragging and dropping a desired virtual machine into the topology area in the category of the virtual machine on the screen where the client program is executed.

이때 사용자는 토폴로지 관리(32) 영역에 존재하는 가상머신의 하드웨어 종류를 선택할 수 있고, 각 가상머신들은 네트워크로 상호 연결된다.At this time, the user can select a hardware type of the virtual machine existing in the topology management 32 area, and each virtual machine is interconnected by a network.

도 4 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치에서의 가상머신간 통신 과정에 대한 일실시예 설명도로서, 하나의 호스트머신상 에 생성된 두개의 가상머신간의 통신 과정을 나타낸다. 이해를 돕기 위해 두개의 가상머신을 예로 들어 설명하지만, 가상머신의 수는 본 발명에 아무런 영향을 미치지 않는다.4 is a diagram illustrating an embodiment of a communication process between virtual machines in a network simulation apparatus using a plurality of virtual machines according to the present invention, and illustrates a communication process between two virtual machines generated on one host machine. For the sake of understanding, two virtual machines are described as examples, but the number of virtual machines has no influence on the present invention.

도 4에 도시된 바와 같이, 하나의 호스트머신상에 'Junos' 운영체제하에서 동작하는 주니퍼 라우터의 기능을 수행하기 위한 제 1 가상머신(41)과 'IOS' 운영체제하에서 동작하는 시스코 라우터의 기능을 수행하기 위한 제 2 가상머신(42)이 생성되어 있다.As shown in FIG. 4, the first virtual machine 41 for performing the functions of the Juniper router operating under the Junos operating system on one host machine and the Cisco router operating under the 'IOS' operating system are performed. The second virtual machine 42 is created for this purpose.

이때 각 가상머신내의 가상 NIC 드라이버는 타 가상머신과 통신하기 위한 UDP 소켓을 생성한다. 즉, 제 1 가상머신(41)의 가상 NIC 드라이버는 제 2 가상머신(42)과 통신하기 위한 UDP 소켓을 생성한 후 UDP 패킷을 통해 통신하고, 제 2 가상머신(42)의 가상 NIC 드라이버는 제 1 가상머신(41)과 통신하기 위한 UDP 소켓을 생성한 후 UDP 패킷을 통해 통신한다.At this time, the virtual NIC driver in each virtual machine creates a UDP socket for communicating with another virtual machine. That is, the virtual NIC driver of the first virtual machine 41 creates a UDP socket for communicating with the second virtual machine 42 and then communicates through the UDP packet, and the virtual NIC driver of the second virtual machine 42 After creating a UDP socket for communicating with the first virtual machine 41, it communicates via a UDP packet.

결국 제 1 가상머신(41)의 가상 NIC 드라이버와 제 2 가상머신(42)의 가상 NIC 드라이버는 UDP 소켓을 통해 상호 연결된다. 일예로 제 1 가상머신(41)에서 제 2 가상머신(42)으로 전송되는 UDP 패킷은 서버포트 10000을 사용하고, 제 2 가상머신(42)에서 제 1 가상머신(41)으로 전송되는 UDP 패킷은 서버포트 1001을 사용한다.As a result, the virtual NIC driver of the first virtual machine 41 and the virtual NIC driver of the second virtual machine 42 are interconnected through a UDP socket. For example, the UDP packet transmitted from the first virtual machine 41 to the second virtual machine 42 uses the server port 10000, and the UDP packet transmitted from the second virtual machine 42 to the first virtual machine 41. Uses server port 1001.

이때 각 가상머신의 네트워크 드라이버(가상 NIC 드라이버)는 UDP 서버로 동작하며, IP 주소는 'Loopback address'인 127.0.0.1을 사용한다.At this time, the network driver (virtual NIC driver) of each virtual machine operates as a UDP server, and the IP address uses 127.0.0.1, a 'Loopback address'.

도 5 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장 치에서의 가상머신간 통신 과정에 대한 다른 실시예 설명도로서, 각기 다른 호스트머신내에 생성된 가상머신간의 통신 과정을 나타낸다.5 is a diagram illustrating another embodiment of a communication process between virtual machines in a network simulation device using a plurality of virtual machines according to the present invention, and illustrates a communication process between virtual machines generated in different host machines.

도 5에 도시된 바와 같이, 제 1 호스트머신상에 'Junos' 운영체제하에서 동작하는 주니퍼 라우터의 기능을 수행하기 위한 제 1 가상머신(41)이 생성되어 있고, 제 2 호스트머신상에 'IOS' 운영체제하에서 동작하는 시스코 라우터의 기능을 수행하기 위한 제 2 가상머신(42)이 생성되어 있다.As shown in FIG. 5, a first virtual machine 41 is created on a first host machine to perform a function of a Juniper router operating under a Junos operating system, and an 'IOS' on a second host machine. A second virtual machine 42 is created to perform the function of a Cisco router operating under an operating system.

이때 제 1 가상머신(41)내의 가상 NIC 드라이버와 제 2 가상머신(42)내의 가상 NIC 드라이버는 상호 통신하기 위해 자신의 호스트머신 내 TAP 인터페이스를 통해 실제 NIC 드라이버와 연결한다.At this time, the virtual NIC driver in the first virtual machine 41 and the virtual NIC driver in the second virtual machine 42 connect with the actual NIC driver through the TAP interface in their host machine to communicate with each other.

즉, 제 1 호스트머신상에 생성된 제 1 가상머신(41)의 가상 NIC 드라이버는 TAP 인터페이스(51)를 통해 제 1 호스트머신상의 실제 NIC 드라이버(52)와 연결하고, 제 2 호스트머신상에 생성된 제 2 가상머신(42)의 가상 NIC 드라이버는 TAP 인터페이스(53)를 통해 제 2 호스트머신상의 실제 NIC 드라이버(54)와 연결한다.That is, the virtual NIC driver of the first virtual machine 41 created on the first host machine connects to the actual NIC driver 52 on the first host machine through the TAP interface 51 and connects to the second host machine. The generated virtual NIC driver of the second virtual machine 42 connects with the actual NIC driver 54 on the second host machine through the TAP interface 53.

결국 제 1 가상머신(41)과 제 2 가상머신(42)은 인터넷에 연결되어 상호 통신이 가능하다. 이때, IP 주소는 TAP 인터페이스에 할당한 공인 IP를 사용한다.As a result, the first virtual machine 41 and the second virtual machine 42 may be connected to the Internet to communicate with each other. At this time, the IP address uses a public IP assigned to the TAP interface.

여기서 TAP 인터페이스는 커널과 어플리케이션이 통신하기 위한 가상의 네트크 인터페이스로서, 어플리케이션은 TAP 인터페이스에 패킷을 송신하는 것으로 커널에 패킷을 전달할 수 있고, 커널이 TAP 인터페이스로 송신한 패킷을 어플리케이션이 수신할 수 있다. 주로 이더넷(Ethernet) 프레임을 처리하는데 이용된다.In this case, the TAP interface is a virtual network interface for communication between the kernel and the application. The application can transmit a packet to the kernel by sending a packet to the TAP interface, and the application can receive a packet transmitted by the kernel to the TAP interface. have. It is mainly used to process Ethernet frames.

도 6 은 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 방 법에 대한 일실시예 흐름도로서, 하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 과정을 나타낸다.6 is a flowchart illustrating a network simulation method using a plurality of virtual machines according to the present invention, and illustrates a network simulation process in an environment in which at least two virtual machines are generated on one host machine.

먼저 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하는 제 1 가상머신을 생성한다(601).First, in operation 601, a first virtual machine that operates under a first operating system and performs a function of a first network device.

그리고 상기 제 1 가상머신이 제 2 가상머신과의 통신용 소켓을 생성한다(602).The first virtual machine creates a socket for communication with the second virtual machine (602).

그리고 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성한다(603).In operation 603, a second virtual machine which operates under a second operating system and performs a function of a second network device is created.

그리고 상기 제 2 가상머신이 제 1 가상머신과의 통신용 소켓을 생성한다(604).The second virtual machine creates a socket for communication with the first virtual machine (604).

이후, 상기 생성한 통신용 소켓을 통해 상호 통신하면서 해당 기능을 수행한다(605). 즉, 제 1 가상머신과 제 2 가상머신은 통신용 소켓을 통해 상호 통신하면서 네트워크 시뮬레이션을 수행한다.Subsequently, the corresponding function is performed while communicating with each other through the created communication socket (605). That is, the first virtual machine and the second virtual machine perform network simulation while communicating with each other through a communication socket.

이러한 과정을 통해 하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서 각 가상머신간의 원할한 통신이 가능하여 최적의 네트워크 시뮬레이션을 수행할 수 있다.Through this process, smooth communication between virtual machines is possible in an environment in which at least two virtual machines are created on one host machine, and thus, optimal network simulation can be performed.

도 7 은 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법에 대한 다른 실시예 흐름도로서, 각기 다른 호스트머신상에 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 과정을 나타낸다.7 is a flowchart illustrating a network simulation method using a plurality of virtual machines according to the present invention, and illustrates a network simulation process in an environment in which virtual machines are generated on different host machines.

먼저 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하 는 제 1 가상머신을 생성한다(701).First, in operation 701, a first virtual machine that operates under a first operating system and performs a function of a first network device is created.

그리고 상기 제 1 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결한다(702).The first virtual machine connects with the network driver in its host machine (702).

그리고 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성한다(703).In operation 703, a second virtual machine is generated under the operating system of the second operating system, which performs the function of the second network equipment.

그리고 상기 제 2 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결한다(704).The second virtual machine connects with the network driver in its host machine (704).

그리고 각기 연결한 네트워크 드라이버를 통해 서로 통신하면서 해당 기능을 수행한다(705). 즉, 제 1 가상머신과 제 2 가상머신은 자신의 호스트머신 내 TAP 인터페이스를 통해 네트워크 드라이버에 연결하여 인터넷 환경에서 상호 통신하면서 네트워크 시뮬레이션을 수행한다.In operation 705, the corresponding driver communicates with each other through the connected network driver. That is, the first virtual machine and the second virtual machine connect to a network driver through a TAP interface in their host machine and perform network simulation while communicating with each other in the Internet environment.

이러한 과정을 통해 각기 다른 호스트머신상에 가상머신이 생성된 환경에서 각 가상머신간의 원할한 통신이 가능하여 최적의 네트워크 시뮬레이션을 수행할 수 있음은 물론 상용망과 유사한 대용량의 가상 네트워크를 구축할 수 있다.Through this process, it is possible to perform smooth network communication between virtual machines in an environment where virtual machines are created on different host machines, and to perform an optimal network simulation and to build a large-capacity virtual network similar to a commercial network. .

한편, 전술한 바와 같은 본 발명의 방법은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체(정보저장매체)에 저장되고, 컴퓨터에 의하여 판독되고 실행됨으로써 본 발명의 방법을 구현한다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.On the other hand, the method of the present invention as described above can be written in a computer program. And the code and code segments constituting the program can be easily inferred by a computer programmer in the art. In addition, the written program is stored in a computer-readable recording medium (information storage medium), and read and executed by a computer to implement the method of the present invention. The recording medium may include any type of computer readable recording medium.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

도 1 은 본 발명이 적용되는 다수의 가상머신을 이용한 네트워크 시뮬레이션 시스템에 대한 일실시예 구성도,1 is a configuration diagram of an embodiment of a network simulation system using a plurality of virtual machines to which the present invention is applied;

도 2 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치의 일실시예 구성도,2 is a configuration diagram of an embodiment of a network simulation apparatus using a plurality of virtual machines according to the present invention;

도 3 은 본 발명에 따른 가상 네트워크를 구성 및 제어하는 클라이언트에 대한 일예시도,3 is an exemplary view of a client configuring and controlling a virtual network according to the present invention;

도 4 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치에서의 가상머신간 통신 과정에 대한 일실시예 설명도,4 is a diagram illustrating an embodiment of a communication process between virtual machines in a network simulation apparatus using a plurality of virtual machines according to the present invention;

도 5 는 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치에서의 가상머신간 통신 과정에 대한 다른 실시예 설명도,5 is a diagram illustrating another embodiment of a communication process between virtual machines in a network simulation apparatus using multiple virtual machines according to the present invention;

도 6 은 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법에 대한 일실시예 흐름도,6 is a flowchart illustrating an embodiment of a network simulation method using multiple virtual machines according to the present invention;

도 7 은 본 발명에 따른 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법에 대한 다른 실시예 흐름도이다.7 is a flowchart illustrating another embodiment of a network simulation method using multiple virtual machines according to the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

21 : VM API 22 : 호스트머신21: VM API 22: Host Machine

23 : 가상머신 모니터 24 : 가상머신23: virtual machine monitor 24: virtual machine

Claims (12)

하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 장치에 있어서,In the network simulation apparatus in an environment in which at least two virtual machines are created on one host machine, 운영체제하에서 동작하는 네트워크 장비의 기능을 수행하며, 타 가상머신과의 통신용 소켓을 생성하기 위한 가상머신;A virtual machine that performs a function of a network device operating under an operating system and creates a socket for communication with another virtual machine; 클라이언트의 명령에 따라 상기 가상머신을 생성하기 위한 가상머신 모니터; 및A virtual machine monitor for generating the virtual machine according to a command of a client; And 상기 클라이언트로부터의 명령을 상기 가상머신 모니터로 전달하여 상기 가상머신을 생성하도록 하기 위한 호스트머신Host machine for transmitting the command from the client to the virtual machine monitor to create the virtual machine 을 포함하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation apparatus using a plurality of virtual machines including a. 제 1 항에 있어서,The method of claim 1, 상기 호스트머신은,The host machine, 가상머신 제어 인터페이스를 통해 상기 클라이언트로부터의 명령을 수신하는 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation apparatus using a plurality of virtual machines, characterized in that for receiving a command from the client via a virtual machine control interface. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 가상머신은,The virtual machine, 통신용 소켓을 생성하기 위한 가상 NIC(Network Interface Card) 드라이버를 포함하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation device using a plurality of virtual machines including a virtual network interface card (NIC) driver for creating a communication socket. 제 3 항에 있어서,The method of claim 3, wherein 상기 통신용 소켓은,The communication socket, UDP(User Datagram Protocol) 소켓인 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation apparatus using a plurality of virtual machines, characterized in that the UDP (User Datagram Protocol) socket. 하나의 호스트머신상에 적어도 두개의 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 방법에 있어서,In the network simulation method in an environment in which at least two virtual machines are created on one host machine, 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하는 제 1 가상머신을 생성하는 제 1 가상머신 생성단계;A first virtual machine generating step of generating a first virtual machine operating under a first operating system and performing a function of a first network equipment; 상기 제 1 가상머신이 제 2 가상머신과의 통신용 소켓을 생성하는 단계;Creating, by the first virtual machine, a socket for communication with a second virtual machine; 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성하는 제 2 가상머신 생성단계;A second virtual machine generating step of generating a second virtual machine operating under a second operating system and performing a function of a second network equipment; 상기 제 2 가상머신이 제 1 가상머신과의 통신용 소켓을 생성하는 단계; 및Generating, by the second virtual machine, a socket for communication with the first virtual machine; And 상기 생성한 통신용 소켓을 통해 상호 통신하면서 해당 기능을 수행하는 단계Performing a function while communicating with each other through the created communication socket; 를 포함하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법.Network simulation method using a plurality of virtual machines including a. 제 5 항에 있어서,The method of claim 5, 상기 제 1 가상머신 생성단계 및 상기 제 2 가상머신 생성단계는,The first virtual machine generation step and the second virtual machine generation step, 가상머신 제어 인터페이스를 통해 클라이언트로부터의 명령을 전달받아 해당 가상머신을 생성하는 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법.Network simulation method using a plurality of virtual machines, characterized in that for receiving a command from the client via a virtual machine control interface to create a corresponding virtual machine. 제 5 항 또는 제 6 항에 있어서,The method according to claim 5 or 6, 상기 통신용 소켓은,The communication socket, UDP(User Datagram Protocol) 소켓인 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법.Network simulation method using a plurality of virtual machines, characterized in that the UDP (User Datagram Protocol) socket. 각기 다른 호스트머신상에 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 장치에 있어서,In the network simulation apparatus in an environment where virtual machines are created on different host machines, 운영체제하에서 동작하는 네트워크 장비의 기능을 수행하며, 해당 호스트머신의 네트워크 드라이버를 통해 타 호스트머신상의 가상머신과 통신하기 위한 가상머신;A virtual machine that performs a function of a network device operating under an operating system and communicates with a virtual machine on another host machine through a network driver of the corresponding host machine; 클라이언트의 명령에 따라 상기 가상머신을 생성하기 위한 가상머신 모니터; 및A virtual machine monitor for generating the virtual machine according to a command of a client; And 상기 클라이언트로부터의 명령을 상기 가상머신 모니터로 전달하여 상기 가상머신을 생성하도록 하기 위한 호스트머신Host machine for transmitting the command from the client to the virtual machine monitor to create the virtual machine 을 포함하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation apparatus using a plurality of virtual machines including a. 제 8 항에 있어서,The method of claim 8, 상기 가상머신은,The virtual machine, 상기 호스트머신의 네트워크 드라이버와 연결하기 위한 가상 NIC(Network Interface Card) 드라이버를 구비하되, 상기 가상 NIC 드라이버는 TAP 인터페이스를 통해 상기 호스트머신의 네트워크 드라이버와 연결하는 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.A virtual NIC (Network Interface Card) driver for connecting with the network driver of the host machine, wherein the virtual NIC driver is connected to the network driver of the host machine through a TAP interface using a plurality of virtual machines Network simulation device. 제 8 항 또는 제 9 항에 있어서,10. The method according to claim 8 or 9, 상기 호스트머신은,The host machine, 가상머신 제어 인터페이스를 통해 상기 클라이언트로부터의 명령을 수신하는 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 장치.Network simulation apparatus using a plurality of virtual machines, characterized in that for receiving a command from the client via a virtual machine control interface. 각기 다른 호스트머신상에 가상머신이 생성된 환경에서의 네트워크 시뮬레이션 방법에 있어서,In the network simulation method in an environment where virtual machines are created on different host machines, 제 1 운영체제하에서 동작하면서 제 1 네트워크 장비의 기능을 수행하는 제 1 가상머신을 생성하는 단계;Creating a first virtual machine operating under a first operating system and performing a function of the first network equipment; 상기 제 1 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결하는 제 1 연결단계;A first connection step of connecting the first virtual machine with a network driver in its host machine; 제 2 운영체제하에서 동작하면서 제 2 네트워크 장비의 기능을 수행하는 제 2 가상머신을 생성하는 단계;Creating a second virtual machine operating under a second operating system and performing a function of a second network equipment; 상기 제 2 가상머신이 자신의 호스트머신 내 네트워크 드라이버와 연결하는 제 2 연결단계; 및A second connection step of connecting the second virtual machine with a network driver in its host machine; And 각기 연결한 네트워크 드라이버를 통해 상호 통신하면서 해당 기능을 수행하는 단계Steps to perform the function while communicating with each other through the connected network driver 를 포함하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법.Network simulation method using a plurality of virtual machines including a. 제 11 항에 있어서,The method of claim 11, 상기 제 1 연결단계 및 상기 제 2 연결단계는,The first connection step and the second connection step, 해당 호스트머신의 TAP 인터페이스를 통해 네트워크 드라이버와 연결하는 것을 특징으로 하는 다수의 가상머신을 이용한 네트워크 시뮬레이션 방법.Network simulation method using a plurality of virtual machines, characterized in that connected to the network driver through the TAP interface of the host machine.
KR1020090121200A 2009-12-08 2009-12-08 Apparatus and method for virtual network simulation using multiple virtual machines KR20110064539A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090121200A KR20110064539A (en) 2009-12-08 2009-12-08 Apparatus and method for virtual network simulation using multiple virtual machines

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090121200A KR20110064539A (en) 2009-12-08 2009-12-08 Apparatus and method for virtual network simulation using multiple virtual machines

Publications (1)

Publication Number Publication Date
KR20110064539A true KR20110064539A (en) 2011-06-15

Family

ID=44397963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090121200A KR20110064539A (en) 2009-12-08 2009-12-08 Apparatus and method for virtual network simulation using multiple virtual machines

Country Status (1)

Country Link
KR (1) KR20110064539A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140099873A (en) * 2012-01-30 2014-08-13 엘지전자 주식회사 Method for managing virtual machine and device therefor
KR101716715B1 (en) * 2016-12-27 2017-03-15 주식회사 티맥스클라우드 Method and apparatus for handling network I/O apparatus virtualization
CN106776398A (en) * 2016-12-20 2017-05-31 广州视源电子科技股份有限公司 The method and apparatus of dual system double-direction control
US10367714B2 (en) 2016-04-27 2019-07-30 Electronics And Telecommunications Research Institute Apparatus for testing and developing products of network computing based on open-source virtualized cloud
WO2024087810A1 (en) * 2022-10-27 2024-05-02 深圳云豹智能有限公司 Cloud data center management system and electronic device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140099873A (en) * 2012-01-30 2014-08-13 엘지전자 주식회사 Method for managing virtual machine and device therefor
US9891937B2 (en) 2012-01-30 2018-02-13 Lg Electronics Inc. Method for managing virtual machine and device therefor
US10367714B2 (en) 2016-04-27 2019-07-30 Electronics And Telecommunications Research Institute Apparatus for testing and developing products of network computing based on open-source virtualized cloud
CN106776398A (en) * 2016-12-20 2017-05-31 广州视源电子科技股份有限公司 The method and apparatus of dual system double-direction control
WO2018113112A1 (en) * 2016-12-20 2018-06-28 广州视源电子科技股份有限公司 Two-system two-way control method and device
KR101716715B1 (en) * 2016-12-27 2017-03-15 주식회사 티맥스클라우드 Method and apparatus for handling network I/O apparatus virtualization
US10754679B2 (en) 2016-12-27 2020-08-25 Tmax Cloud Co., Ltd. Method and apparatus for handling network I/O device virtualization
WO2024087810A1 (en) * 2022-10-27 2024-05-02 深圳云豹智能有限公司 Cloud data center management system and electronic device

Similar Documents

Publication Publication Date Title
Ahrenholz et al. CORE: A real-time network emulator
EP2979180B1 (en) Methods, systems, and computer readable media for emulating virtualization resources
CN108768685B (en) Large-scale information communication network real-time simulation system
US9838294B2 (en) Network development and testing as a cloud service
Ahrenholz Comparison of CORE network emulation platforms
US9286103B2 (en) Method and apparatus for providing a test network as an IP accessible cloud service
TWI588751B (en) Computer host with a baseboard management controller to manage virtual machines and method thereof
CN110995561B (en) Virtual network data communication interaction method and system based on container technology
US8588094B2 (en) Computer-readable medium storing test environment creation program, test environment creation method, and test device
JP5905512B2 (en) Cyber attack exercise system, exercise environment providing method, and exercise environment providing program
JP2015138525A (en) virtual plant monitoring control device
CN104486234A (en) Method and server for uninstalling service exchanger to physical network card
KR20110064539A (en) Apparatus and method for virtual network simulation using multiple virtual machines
US20140040441A1 (en) System and method for the configuration of a clustered simulation network
Tavares et al. Niep: Nfv infrastructure emulation platform
CN111049686A (en) Safety protection virtual laboratory of power monitoring system and construction method thereof
US11546224B2 (en) Virtual network layer for distributed systems
CN108255547B (en) Application program control method and device
Liu et al. Feasibility analysis of network security teaching platform based on KVM and GNS3
Autefage et al. NEmu: A distributed testbed for the virtualization of dynamic, fixed and mobile networks
Dayanand et al. A survey on the use of GNS3 for virtualizing computer networks
CN113268252A (en) Mirror image manufacturing method and system based on virtual chemical industry control equipment and storage medium
Gallenmüller et al. Prototyping Prototyping Facilities: Developing and Bootstrapping Testbeds
Raychev et al. Development and Integration of Educational Software Defined Networking Platform in Computer Networking Classes
CN111367624B (en) Method and equipment for establishing simulation platform in SONiC system

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid