KR101546388B1 - Server and method for connecting session to virtual machine and, server for generating virtual machine - Google Patents
Server and method for connecting session to virtual machine and, server for generating virtual machine Download PDFInfo
- Publication number
- KR101546388B1 KR101546388B1 KR1020120153766A KR20120153766A KR101546388B1 KR 101546388 B1 KR101546388 B1 KR 101546388B1 KR 1020120153766 A KR1020120153766 A KR 1020120153766A KR 20120153766 A KR20120153766 A KR 20120153766A KR 101546388 B1 KR101546388 B1 KR 101546388B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- type
- virtual machine
- virtual machines
- statistical information
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
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)
- Computer And Data Communications (AREA)
Abstract
디바이스로부터 수신된 어플리케이션의 실행 요청에 대응하여 상기 어플리케이션을 실행할 가상 머신을 선택하는 세션 관리 서버는 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 통계 정보 추출부, 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정하는 어플리케이션 유형 결정부, 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 통신부, 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택하는 가상 머신 선택부를 포함한다. A session management server for selecting a virtual machine to execute the application in response to an application execution request received from the device includes a statistical information extracting unit for extracting statistical information of each of a plurality of applications already executed by the plurality of virtual machines from a database, An application type determination unit for determining an application type corresponding to each of the plurality of virtual machines based on the extracted statistical information, a communication unit for receiving a request for execution of the first application from the device, 1 application to execute the virtual machine.
Description
가상 머신과 세션을 연결하는 서버 및 방법 그리고, 가상 머신을 생성하는 서버에 관한 것이다. A server and method for connecting a virtual machine and a session, and a server for creating a virtual machine.
네트워크는 다양한 서비스 요구를 반영하기 위해 다수의 장치들이 복잡한 형태의 구조로 형성된다. 이로 인해, 다수의 서로 다른 장치들에 의해 여러 가지 서비스들이 동시에 수행되는 과정에서 다양한 인프라 및 자원의 제공이 요구될 수 있다. 이로 인해, 특정한 기능을 수행하는 서버들이 밀집되어 있는 데이터 센터 및 네트워크 인프라에 대하여 자원을 제어하고 관리하는 기술에 대한 요구도 증가하고 있다. In order to reflect various service demands, a plurality of devices are formed in a complicated structure. Accordingly, it is required to provide various infrastructures and resources in the process of performing various services simultaneously by a plurality of different devices. As a result, there is a growing demand for technologies to control and manage resources for data centers and network infrastructures in which servers performing specific functions are concentrated.
한편, 가상화 기술은 일반적으로 하나의 물리적인 장비를 여러 개의 장비처럼 사용하는 기술로, 가상화 기술을 이용하여 네트워크 등의 컴퓨팅 자원의 활용을 증가시키고, 대규모 데이터 센터의 관리를 위해 자원을 운영하고 관리할 수 있다. 또한, 이러한 가상화 기술을 통해 하나의 물리 장비를 이용하여 다수의 독립 실행 가능한 가상 머신을 생성하고, 생성된 각각의 가상 머신을 통해 서비스를 제공할 수 있다. 이에, 다수의 가상 머신에 대하여 가상 머신의 자원을 효율적으로 이용할 수 있는 방법이 요구된다. 가상 머신에 대한 자원을 관리하는 방법과 관련하여 한국공개특허 제2012-0072059호에는 가상화 네트워크에서 자원을 제어 하는 방법에 대한 구성이 개시되어 있다. Virtualization technology, on the other hand, is a technology that uses one physical device as multiple devices. It uses virtualization technology to increase the utilization of computing resources such as networks, and operates and manages resources for the management of large data centers. can do. In addition, through this virtualization technology, a plurality of stand-alone executable virtual machines can be created using one physical device, and services can be provided through each of the created virtual machines. Therefore, a method of efficiently utilizing resources of a virtual machine with respect to a plurality of virtual machines is required. Korean Patent Publication No. 2012-0072059 discloses a method for controlling resources in a virtual network in connection with a method for managing resources for a virtual machine.
어플리케이션의 유형에 따라 가상 머신 및 가상 머신 내의 자원을 할당하여 가상 머신에 대한 세션을 스케쥴링하고자 한다. 다양한 통계정보를 이용하여 가상 머신 상에 할당될 자원의 비율을 결정하고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. We want to schedule sessions for virtual machines by allocating resources in virtual machines and virtual machines according to the type of application. We will use various statistical information to determine the ratio of resources to be allocated on the virtual machine. It is to be understood, however, that the technical scope of the present invention is not limited to the above-described technical problems, and other technical problems may exist.
상술한 기술적 과제를 달성하기 위한 수단으로서, 본 발명의 일 실시예는 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 통계 정보 추출부, 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정하는 어플리케이션 유형 결정부, 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 통신부, 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택하는 가상 머신 선택부를 포함하는 세션 관리 서버를 제공할 수 있다. As a means for achieving the above technical object, an embodiment of the present invention includes a statistical information extracting unit for extracting statistical information of each of a plurality of applications already executed by a plurality of virtual machines from a database, A communication unit for receiving an execution request of the first application from the device; a virtual machine for executing the first application among the plurality of virtual machines based on the determined application type; And a virtual machine selection unit for selecting a virtual machine.
또한, 본 발명의 다른 실시예에 있어서, 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 단계, 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정하는 단계, 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 단계, 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택하는 단계, 디바이스와의 세션을 선택된 가상 머신으로 요청하는 단계를 포함하는 세션 관리 방법을 제공할 수 있다. According to another embodiment of the present invention, there is provided a computer-readable recording medium storing a computer program for causing a computer to execute a process of extracting statistical information of each of a plurality of applications already executed by a plurality of virtual machines from a database, Selecting a virtual machine to execute a first one of a plurality of virtual machines based on the determined application type, selecting a virtual machine to execute the first application from among the plurality of virtual machines based on the selected virtual machine, The method comprising the steps of:
또한, 본 발명의 다른 실시예에 있어서, 복수의 가상 머신을 생성하는 가상 머신 생성부, 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션의 실행 이력에 기초하여 복수의 어플리케이션 각각의 통계 정보를 생성하는 통계 정보 생성부, 생성된 통계 정보를 세션 관리 서버와 연결된 데이터베이스로 저장시키고, 세션 관리 서버로부터 복수의 가상 머신 각각에 대응하는 어플리케이션 유형 정보를 수신하는 통신부, 세선 관리 서버로부터 디바이스와의 세션 연결을 요청받는 경우, 수신된 어플리케이션 유형 정보에 기초하여 디바이스와 복수의 가상 머신 중 어느 하나와 세션을 연결하는 세션 연결부를 포함하는 가상화 서버를 제공할 수 있다. According to another embodiment of the present invention, there is provided a virtual machine system including a virtual machine generation unit for generating a plurality of virtual machines, a plurality of virtual machines for generating statistical information of each of a plurality of applications based on execution histories of a plurality of applications already executed by the plurality of virtual machines A communication unit that stores the generated statistical information in a database connected to the session management server and receives application type information corresponding to each of the plurality of virtual machines from the session management server; A session connection unit for connecting a session with one of the plurality of virtual machines and the device based on the received application type information.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 어플리케이션의 유형에 따라 가상 머신 및 가상 머신 내의 자원을 할당하여 가상 머신에 대한 세션을 스케쥴링할 수 있다. 시간대 별 동시 접속 통계정보에 기초하여 가상 머신 상의 자원 할당 비율을 우선 지정하고 어플리케이션을 분배 및 설치할 수 있다. 사용자 세션 할당 시 사용자 구매 정보 및 사용자 웹 페이지 URL 접속 정보를 기반으로 유형을 나누어 세션을 스케쥴링함으로써, 가상 서버의 자원 활용 및 실행 성능을 최적화 할 수 있다. According to any one of the tasks of the present invention described above, a virtual machine and a resource in the virtual machine can be allocated according to the type of application to schedule a session for the virtual machine. It is possible to assign the resource allocation rate on the virtual machine based on the time-based concurrent access statistical information, and distribute and install the application. When allocating a user session, scheduling a session by dividing types based on user purchase information and user web page URL access information can optimize resource utilization and execution performance of the virtual server.
도 1은 본 발명의 일 실시예에 따른 가상화 시스템의 구성도이다.
도 2는 도 1에 도시된 세션 관리 서버의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 생성된 복수의 가상 머신을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 세션을 스케쥴링하는 과정을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 세션을 연결하는 과정을 나타내는 도면이다.
도 6은 도 1에 도시된 가상화 서버의 구성도이다.
도 7은 본 발명의 일 실시예에 따른 세션 관리 방법을 나타내는 동작 흐름도이다. 1 is a configuration diagram of a virtualization system according to an embodiment of the present invention.
2 is a configuration diagram of the session management server shown in FIG.
Figure 3 is a diagram illustrating a plurality of virtual machines created in accordance with one embodiment of the present invention.
4 is a diagram illustrating a process of scheduling a session according to an embodiment of the present invention.
5 is a diagram illustrating a process of connecting sessions according to an embodiment of the present invention.
6 is a configuration diagram of the virtualization server shown in FIG.
7 is a flowchart illustrating a method of managing a session according to an exemplary embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when an element is referred to as "comprising ", it means that it can include other elements as well, without departing from the other elements unless specifically stated otherwise.
도 1은 본 발명의 일 실시예에 따른 가상화 시스템의 구성도이다. 도 1을 참조하면, 가상화 시스템은 세션 관리 서버(10), 가상화 서버(20), 디바이스(30), 어플리케이션 저장소(40) 및 사용자 데이터베이스(50)를 포함한다. 다만, 이러한 도 1의 가상화 시스템은 본 발명의 일 실시예에 불과하므로, 도 1을 통해 본 발명이 한정 해석 되는 것은 아니다. 예를 들면, 사용자 데이터베이스(50)는 세션 관리 서버(10) 또는 가상화 서버(20) 내부에 포함될 수 있다. 1 is a configuration diagram of a virtualization system according to an embodiment of the present invention. Referring to FIG. 1, a virtualization system includes a
사용자 데이터베이스(50)는 가상화 서버(30)로부터 수신된 사용자 별 어플리케이션의 사용 통계 정보 및 복수의 가상 머신 각각의 어플리케이션 실행 통계 정보를 저장할 수 있다. 사용자 데이터베이스(50)에 저장된 통계 정보는 1 시간 또는, 1일 등 소정 시간 간격으로 갱신될 수 있다. The
어플리케이션 저장소(40)는 복수의 다양한 웹 어플리케이션을 저장하고 있으며, 가상화 서버(30)로부터의 웹 어플리케이션의 요청에 기초하여, 요청된 웹 어플리케이션을 가상화 서버(30)로 전송할 수 있다. The
디바이스(30)는 방송 영상 및 광고 영상을 표시하는 장치로서, TV 스마트TV, IPTV, PC와 연결된 모니터 및 TV와 연결된 셋탑박스와 같은 방송 영상을 표시할 수 있는 장치를 포함한다. 그리고, 셋탑박스와 같은 장치는 TV 장치의 내부에 포함될 수 있으며, 외부 장치로서 TV 장치에 연결될 수 있다. 다만, 도 1에 개시된 디바이스(30)의 종류 및 형태는 설명의 편의를 위해 예시된 것에 불과하므로, 본원에서 이야기하는 디바이스(30)의 종류 및 형태가 도 1에 도시된 것으로 한정 해석되는 것은 아니다. The
세션 관리 서버(10)는 복수의 가상 머신에 의하여 실행된 복수의 어플리케이션 각각의 통계 정보를 사용자 데이터베이스(50)로부터 추출할 수 있다. 일 예로, 세션 관리 서버(10)는 사용자 데이터베이스(50)로부터 어플리케이션 각각의 피크타임(Peak Time), 피크타임에서 어플리케이션을 이용한 사용자의 수 등의 다양한 통계 정보를 추출할 수 있다. The
세션 관리 서버(10)는 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정할 수 있다. 어플리케이션 유형은 어플리케이션의 전송 유형 및 어플리케이션의 형태 유형에 따라 결정될 수 있다. 세션 관리 서버(10)는 복수의 가상 머신 각각에 대응하는 어플리케이션 유형들 및 어플리케이션 유형들간의 자원 할당 비율을 결정할 수도 있다. The
세션 관리 서버(10)는 디바이스(30)로부터 제 1 어플리케이션의 실행 요청을 수신할 수 있다. 예를 들면, 세션 관리 서버(10)는 IPTV로부터 스크린 영어 어플리케이션의 실행을 요청하는 실행 요청을 수신할 수 있고, 지도 또는, 교통 정보 어플리케이션의 실행 요청을 수신할 수 도 있다. The
세션 관리 서버(10)는 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택할 수 있다. 예를 들어, 세션 관리 서버(10)는 어플리케이션의 전송 유형에 따라 결정된 복수의 가상 머신 중 지도 어플리케이션 또는 교통 정보 어플리케이션을 실행할 가상 머신을 선택할 수 있다. The
이와 같은 세션 관리 서버(10)의 동작에 대해서는 도 2를 통해 보다 자세히 설명한다. The operation of the
가상화 서버(20)는 복수의 가상 머신을 생성한다. 가상 머신은 가상화 기술을 통해 하나의 물리 장비를 이용하여 다수의 독립 실행이 가능한 논리적인 운영체제 또는 어플리케이션이다. 이러한 가상 머신은 물리 머신의 하드웨어 자원을 할당받아 가상의 실행 환경을 만들어, 서로 다른 운영체제 또는 어플리케이션을 실행할 수 있다. 가상화 서버(20)는 복수의 가상 머신을 생성할 수 있다. The
가상화 서버(20)는 복수의 가상 머신에 의하여 실행된 복수의 어플리케이션의 실행 이력에 기초하여 복수 어플리케이션 각각의 통계 정보를 생성할 수 있다. 생성된 통계 정보는 세션 관리 서버(10)와 연결된 사용자 데이터베이스(50)에 저장될 수 있다. The
가상화 서버(10)는 세션 관리 서버(10)로부터 복수의 가상 머신 각각에 대응하는 어플리케이션 유형 정보를 수신하고 세션 관리 서버(10)로부터 디바이스(30)와의 세션 연결을 요청 받는 경우, 수신된 어플리케이션 유형 정보에 기초하여 디바이스(30)와 복수의 가상 머신 중 어느 하나와 세션을 연결할 수 있다. When the
이와 같은 가상화 서버(20)의 동작에 대해서는 도 6을 통해 다시 한번 설명된다. The operation of the
도 2는 도 1에 도시된 세션 관리 서버(10)의 구성도이다. 도 2를 참조하면, 디바이스(30)로부터 수신된 어플리케이션의 실행 요청에 대응하여 어플리케이션을 실행할 가상 머신을 선택하는 세션 관리 서버(10)는 통계 정보 추출부(11), 어플리케이션 유형 결정부(12), 통신부(13) 및 가상 머신 선택부(14)를 포함한다. 다만, 도 2에 도시된 구성 요소들을 기초로 하여 여러 가지 변형이 가능함은 본 발명의 일 실시예에 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다. 2 is a configuration diagram of the
통계 정보 추출부(11)는 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 사용자 데이터베이스(50)로부터 추출한다. 또한, 통계 정보 추출부(11)는 사용자 데이터베이스(50)로부터 사용자에 의해 사용된 복수의 어플리케이션 각각의 통계 정보를 추출할 수도 있다. 예를 들어, 통계 정보 추출부(11)는 사용자 데이터베이스(50)로부터 복수의 어플리케이션 각각의 피크 타임(Peak Time), 피크 타임에서의 동시 접속자의 수, 최대 동시 접속자의 수 및 사용자에 의해 사용된 어플리케이션의 종류 등의 통계 정보를 로데이터로서 추출할 수 있다. 추출된 통계 정보는 1 시간, 1 일 등의 소정 시간 간격으로 주기적으로 갱신될 수 있다. The statistical information extracting unit (11) extracts statistical information of each of a plurality of applications already executed by the plurality of virtual machines from the user database (50). The statistical
어플리케이션 유형 결정부(12)는 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정할 수 있다. 이 때, 어플리케이션 유형 결정부(12)는 복수의 가상 머신 각각에 대응하는 어플리케이션 전송 유형 및 형태 유형을 결정하고, 결정된 어플리케이션의 전송 유형 및 형태 유형에 기초하여 가상 머신 각각에 대응하는 어플리케이션의 유형을 결정할 수 있다. 어플리케이션의 전송 유형은 이미지 전송 유형 및 스트리밍 전송 유형 중 어느 하나일 수 있고, 어플리케이션의 형태 유형은 페이지 형태 및 패키지 형태 중 어느 하나일 수 있다. The application
예를 들면, 어플리케이션 유형 결정부(12)는 어플리케이션의 형태 및 전송 유형에 따라 스트리밍 전송 유형의 패키지 형태를 갖는 어플리케이션 유형, 스트리밍 전송 유형의 페이지 형태를 갖는 어플리케이션 유형, 이미지 전송 유형의 패키지 형태를 갖는 어플리케이션 유형 및 이미지 전송 유형의 페이지 형태를 갖는 어플리케이션 유형 중 어느 하나의 어플리케이션 유형을 결정할 수 있다. 다만, 결정된 어플리케이션 유형이 앞서 예시된 것들로 한정되지는 않는다. For example, the application
어플리케이션 유형 결정부(12)는 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션 유형들 및 어플리케이션 유형들 간의 자원 할당 비율을 결정할 수 있다. 이 경우, 어플리케이션 유형 결정부(12)는 복수의 가상 머신 각각의 자유 영역 또는, 백업 영역의 비율을 더 포함하는 자원 할당 비율을 결정할 수 있다. The application
도 3은 본 발명의 일 실시예에 따른 생성된 복수의 가상 머신을 나타내는 도면이다. 도 3을 통해 예를 들면, 가상화 서버(20) 내에 가상 머신(VM) 1 내지 가상 머신 5의 복수의 가상 머신이 생성되어 있다. 어플리케이션 유형 결정부(12)는 이미지 전송 유형을 담당할 가상 머신 또는 스트리밍 전송 유형을 담당할 가상 머신을 결정할 수 있다. 즉, 가상 머신 1 내지 가상 머신 3을 이미지 전송 유형을 담당할 가상 머신으로 결정하고, 가상 머신 4 및 가상 머신 5를 스트리밍 전송 유형을 담당할 가상 머신으로 결정할 수 있다. 실제로, 이미지 전송 유형의 경우, 스트리밍 전송 유형과 비교하여 상대적으로 많은 메모리가 많이 요구된다. Figure 3 is a diagram illustrating a plurality of virtual machines created in accordance with one embodiment of the present invention. For example, in the
이후, 어플리케이션 유형 결정부(12)는 가상 머신 별로 자원을 얼마나 쓰는지에 대한 통계 정보에 기초하여 각 가상 머신 별로 백업 공간을 확보하고, 어플리케이션 유형 별로 세션 비율을 결정할 수 있다. 즉, 어플리케이션 유형 결정부(12)는 이미지 전송 유형을 담당하는 가상 머신 1 내지 가상 머신 3에서 페이지 형태의 유형에 얼마나 자원을 할당하고, 패키지 형태의 유형에 얼마나 자원을 할당할지를 결정할 수 있다. 어플리케이션 유형 결정부(12)는 가상 머신 4 내지 가상 머신 5에서 페이지 형태의 유형에 얼마나 자원을 할당하고, 패키지 형태의 유형에 얼마나 자원을 할당할지를 결정할 수도 있다. Thereafter, the application
어플리케이션 유형 결정부(12)는 패키지 형태의 어플리케이션을 종류 별로 구분하고, 구분된 어플리케이션들을 담당할 가상 머신 또는 가상 머신 내의 자원 할당 비율을 결정할 수 있다. 보다 상세히 말하면, 어플리케이션 유형 결정부(12)는 패키지 형태의 어플리케이션 각각의 배포자, 패키지 형태의 어플리케이션 각각의 주 사용 시간 등의 패키지 어플리케이션 각각의 통계 정보에 기초하여 패키지 형태의 어플리케이션들을 A 내지 E로 구분한다. 여기서 A 내지 E는 어플리케이션의 제목일 수 있다. 이후, 어플리케이션 유형 결정부(12)는 이미지 전송 유형의 패키지 형태의 어플리케이션인 A 내지 C와 관련하여 가상 머신 1 내지 가상 머신 3 각각에서의 자원 비율을 결정하고, 스트리밍 전송 형태의 패키지 형태의 어플리케이션인 D 내지 E 와 관련하여, 가상 머신 4 내지 가상 머신 5 내에서의 자원 비율을 결정할 수 있다. The application
통신부(13)는 디바이스(30)로부터 제 1 어플리케이션의 실행 요청을 수신한다. 일 예를 들면, 통신부(13)는 IPTV 또는 IPTV의 셋탑박스로부터 스크린 영어 어플리케이션의 실행을 요청하는 요청 신호를 수신할 수 있다. 통신부(13)는 결정된 자원 할당 비율에 기초하여 가상화 서버(20)에 가상 머신에 대한 자원 할당을 요청할 수도 있다. The
가상 머신 선택부(14)는 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택할 수 있다. 이 때, 가상 머신 선택부(14)는 추출된 통계 정보에 기초하여 복수의 가상 머신의 우선 순위 테이블을 생성하고, 생성된 우선 순위 테이블에 기초하여 제 1 어플리케이션을 실행할 가상 머신을 선택할 수 있다. 일 예로, 가상 머신 선택부(14)는 사용자의 웹 어플리케이션 구매 정보 및 웹 페이지 접속 정보를 이용하여 추출된 통계 정보에 기초하여 사용자의 웹 어플리케이션 사용 유형 별 가상 머신 접속 유형을 선정하고, 이에 따른 우선 순위 테이블 생성하여 가상 머신 별 배정 우선 순위를 결정할 수 있다. 가상 머신 선택부(14)는 결정된 우선 순위에 기초하여 스크린 영어 어플리케이션을 실행할 가상 머신을 선택할 수 있다. The virtual
이후, 통신부(13)는 디바이스(30)와의 세션을 선택된 가상 머신으로 요청할 수 있다. 예를 들면, 통신부(13)는 스크린 영어 어플리케이션의 실행을 요청한 IPTV와 가상 머신 선택부(14)에 의해 선택된 스크린 영어 어플리케이션을 실행할 가상 머신으로 세션을 요청할 수 있다. Thereafter, the
도 4는 본 발명의 일 실시예에 따른 세션을 스케쥴링하는 과정을 나타내는 도면이다. 도 4를 참조하면 디바이스(30)는 세션 관리 서버(10)에 어플리케이션의 연결을 요청(S401)하고, 세션 관리 서버(10)는 수신된 연결 요청에 기초하여 가상화 서버에 세션의 할당을 요청(S402)한다. 가상화 서버(20)는 어플리케이션 저장소(40)에 세션 요청된 어플리케이션을 요청(S403)하고, 어플리케이션 저장소(40)는 가상화 서버(30)에 해당 어플리케이션을 전송(S404)한다. 가상화 서버(20)는 전송된 패키지 어플리케이션을 설치하여 실행(S405)하고, 디바이스(30)에 해당 어플리케이션의 실행 정보의 가상화 정보를 전송(S406)한다. 디바이스(30)는 전송된 가상화 정보에 기초하여 가상화 서버(20)를 통해 해당 어플리케이션을 이용할 수 있다. 디바이스(30)는 어플리케이션의 사용이 완료되면, 가상화 서버(20)에 어플리케이션의 종료를 요청(S407)하고, 가상화 서버(20)는 사용자의 어플리케이션 사용 통계 정보를 계산(S408)하여, 통계 정보를 사용자 데이터베이스(50)에 전송(S409)하고, 디바이스(30)와의 세션을 종료(S410)한다. 가상화 서버(20)는 디바이스(30)와의 세션이 종료되면, 어플리케이션 실행에 사용된 가상 머신 별 어플리케이션 실행 통계 정보를 계산(S411)하여, 사용자 데이터베이스(50)에 가상 머신 별 어플리케이션 실행 통계 정보를 전송(S412)한다. 4 is a diagram illustrating a process of scheduling a session according to an embodiment of the present invention. 4, the
이후, 세션 관리 서버(10)는 사용자 데이터베이스(50)로부터 가상 머신 및 사용자의 통계 정보를 수신(S413)하고, 세션 관리 서버(10)는 수신된 통계 정보에 기초하여 가상 머신 접속 우선 순위 및 가상 머신 내 어플리케이션 별로 자원의 할당 비율에 대한 테이블을 도출(S414)한다. 세션 관리 서버(10)는 도출된 어플리케이션 자원 할당 비율에 기초하여 가상화 서버(20)에 자원의 할당을 요청(S415)하고, 가상화 서버(20)는 가상 머신 간 세션 마이그레이션(S416)을 통해 연결된 세션을 이동시키거나 또는 가상 머신 내의 어플리케이션을 이동시킨다. 가상화 서버(20)는 수신된 자원 할당 비율에 기초하여 어플리케이션 저장소(40)에 해당 어플리케이션을 요청(S417)하고, 요청된 어플리케이션을 수신(S418)한다. 그리고, 가상화 서버(20)는 가상 머신 별로 어플리케이션을 설치하고, 기존에 가상 머신에 설치된 어플리케이션을 정리(S419)한다. Thereafter, the
세션 관리 서버(10)는 사용자 별 통계 정보에 기초하여 사용자 별 가상 머신 접속 우선 순위 테이블을 도출(S420)하고, 디바이스(30)로부터의 어플리케이션 연결 요청(S421)을 수신하는 경우, 도출된 접속 우선 순위에 기초하여 어플리케이션을 제공할 어느 하나의 가상 머신을 선택하여 가상화 서버(20)에 세션의 할당을 요청(S422)한다. The
다만, 도 4에 도시된 실시예는 본 발명의 다양한 실시예 중 어느 하나에 불과하므로, 도 4에 도시된 실시예로 본 발명이 한정되어서는 안된다. However, since the embodiment shown in FIG. 4 is only one of various embodiments of the present invention, the present invention should not be limited to the embodiment shown in FIG.
도 5는 본 발명의 일 실시예에 따른 세션을 연결하는 과정을 나타내는 도면이다. 도 5를 참조하면, 세션 관리 서버(10)는 디바이스(30)로부터 세션의 할당이 요청(S501)되면, 사용자의 어플리케이션 전송 타입별 이용율을 산정(S502)하고, 이미지 전송 유형의 이용율이 스트리밍 전송 유형 보다 많은 경우(S503), 패키지 형태의 유형의 이용율이 페이지 형태의 유형보다 높은 경우(S505) 등에 따라 어플리케이션의 타입 또는 유형을 분류한다. 다시 말하면, 세션 관리 서버(10)는 복수의 어플리케이션을 이미지 전송 유형의 패키지 형태인 어플리케이션 유형, 이미지 전송 유형의 페이지 형태인 어플리케이션 유형, 스트리밍 전송 유형의 패키지 형태인 어플리케이션 유형 및 스트리밍 전송 유형의 페이지 형태인 어플리케이션 유형으로 분류하여 어플리케이션의 유형을 결정할 수 있다. 5 is a diagram illustrating a process of connecting sessions according to an embodiment of the present invention. 5, the
세션 관리 서버(10)는 사용자의 구매 패키지, 어플리케이션 이용률 및 어플리케이션의 우선 순위를 산정(S506)하여 해당 어플리케이션의 유형 또는, 타입 별로 가상 머신을 배정(S507)한다. 그리고, 세션 관리 서버(10)는 가상 머신의 타입 및 사용자 어플리케이션의 존재 여부(S508)에 따라 가상화 서버(20)로 디바이스(30)에 세션을 할당할 것을 요청(S509)한다. The
도 5에서 설명된 실시예는 본 발명의 일 실시예에 불과하며, 다양한 실시예가 더 존재할 수 있음은 본 발명이 속하는 기술분야의 속하는 당업자에게 자명하다. It should be apparent to those skilled in the art that the embodiment described in FIG. 5 is merely an embodiment of the present invention, and that various embodiments may be further included.
도 6은 도 1에 도시된 가상화 서버(20)의 구성도이다. 도 6에 도시된 가상화 서버(20)는 도 1에 도시된 여러 가지 구성들과 데이터의 송수신을 통해 동작한다. 따라서, 이하 생략된 내용이라고 하더라도, 도 1에 도시된 세션 관리 서버(10)에 관하여 이상에서 기술된 내용들은 도 6에 도시된 가상화 서버(20)의 동작에도 적용된다. 다시 말하면, 도 6의 가상화 서버(20)에 대하여 설명되지 아니한 사항은 도 1 내지 도 2를 통해 가상화 서버(20)에 대해 설명된 내용과 동일하거나 설명된 내용으로부터 당업자에 의해 용이하게 유추 가능하므로 이하 생략한다. 6 is a configuration diagram of the
도 6을 참조하면, 가상화 서버(20)는 가상 머신 생성부(21), 통계 정보 생성부(22), 통신부(23) 및 세션 연결부(24)를 포함한다. 6, the
가상 머신 생성부(21)는 복수의 가상 머신을 생성한다. 이 때, 가상 머신 생성부(21)는 세션 관리 서버(10)로부터 수신된 어플리케이션 유형들 및 어플리케이션 유형들 간의 자원 할당 비율을 포함하는 어플리케이션 유형 정보에 기초하여 어플리케이션 유형에 대응하는 적어도 하나 이상의 가상 머신을 생성할 수 있다. The virtual
통계 정보 생성부(22)는 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 실행 이력에 기초하여 복수의 어플리케이션 각각의 통계 정보를 생성한다. 통계 정보 생성부(22)는 사용자에 의해 사용된 복수의 어플리케이션 각각의 통계 정보를 생성할 수도 있다. The statistical
통신부는 생성된 통계 정보를 세션 관리 서버(10)와 연결된 사용자 데이터베이스(50)로 저장시키고, 세션 관리 서버(10)로부터 복수의 가상 머신 각각에 대응하는 어플리케이션 유형 정보를 수신한다. The communication unit stores the generated statistical information in the
세션 연결부(24)는 세션 관리 서버(10)로부터 디바이스(30)와의 세션 연결을 요청받는 경우, 수신된 어플리케이션 유형 정보에 기초하여 디바이스(30)와 복수의 가상 머신 중 어느 하나와 세션을 연결한다. 복수의 가상 머신 중 어느 하나는 세션 관리 서버(10)에서 결정된 접속 우선 순위에 따라 선택된 가상 머신일 수 있다. When the
도 7은 본 발명의 일 실시예에 따른 세션 관리 방법을 나타내는 동작 흐름도이다. 도 1에 도시된 세션 관리 서버(10)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서 이하 생략된 내용이라고 하여도, 도 1 내지 도 2를 통해 세션 관리 서버(10)에 대하여 이상에서 기술된 내용은 도 7에서 설명되는 실시예에도 적용된다. 7 is a flowchart illustrating a method of managing a session according to an exemplary embodiment of the present invention. And the steps of the
도 7을 참조하면, 세션 관리 서버(10)는 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 사용자 데이터베이스(50)로부터 추출(S701)하고, 세션 관리 서버(10)는 추출된 통계 정보에 기초하여 복수의 가상 머신 각각에 대응하는 어플리케이션의 유형을 결정(S702)한다. 이후, 세션 관리 서버(10)는 디바이스(30)로부터 제 1 어플리케이션의 실행을 요청하는 실행 요청을 수신(S703)하고, 세션 관리 서버(10)는 결정된 어플리케이션 유형에 기초하여 복수의 가상 머신 중 제 1 어플리케이션을 실행할 가상 머신을 선택(S704)한다. 세션 관리 서버(10)는 디바이스(30)와의 세션을 선택된 가상 머신으로 요청(705)한다. 7, the
도 7을 통해 설명된 실시예에 따른 세션 관리 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 엑세스 될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비 분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. The session management method according to the embodiment described with reference to FIG. 7 may also be implemented in the form of a recording medium including instructions executable by a computer such as a program module executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer-readable medium may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes any information delivery media, including computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.
10: 세션 관리 서버
20: 가상화 서버
30: 디바이스
40: 어플리케이션 저장소
50: 사용자 데이터베이스10: Session management server
20: Virtualization server
30: Device
40: Application Repository
50: User database
Claims (15)
복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 통계 정보 추출부;
상기 추출된 통계 정보에 기초하여 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정하는 어플리케이션 유형 결정부; 및
상기 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 통신부;
상기 결정된 어플리케이션 유형에 기초하여 상기 복수의 가상 머신 중 상기 제 1 어플리케이션을 실행할 가상 머신을 선택하는 가상 머신 선택부를 포함하고,
상기 통신부는 상기 디바이스와의 세션을 상기 선택된 가상 머신으로 요청하고,
상기 어플리케이션 유형 결정부는 상기 복수의 가상 머신 각각에 대응하는 어플리케이션의 전송 유형을 결정하도록 구성되는 것인, 세션 관리 서버.
A session management server for selecting a virtual machine to execute the application in response to an execution request of an application received from a device,
A statistical information extracting unit for extracting statistical information of each of a plurality of applications already executed by a plurality of virtual machines from a database;
An application type determination unit for determining an application type corresponding to each of the plurality of virtual machines based on the extracted statistical information; And
A communication unit for receiving an execution request of the first application from the device;
And a virtual machine selection unit for selecting a virtual machine to execute the first application among the plurality of virtual machines based on the determined application type,
Wherein the communication unit requests a session with the device to the selected virtual machine,
Wherein the application type determination unit is configured to determine a transfer type of an application corresponding to each of the plurality of virtual machines.
상기 어플리케이션 유형 결정부는 상기 추출된 통계 정보에 기초하여 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형들 및 상기 어플리케이션 유형들간의 자원 할당 비율을 결정하고,
상기 가상 머신 선택부는 상기 결정된 어플리케이션 유형들 및 상기 자원 할당 비율에 기초하여 상기 가상 머신을 선택하는 것인, 세션 관리 서버.
The method according to claim 1,
Wherein the application type determination unit determines application types corresponding to each of the plurality of virtual machines and a resource allocation ratio between the application types based on the extracted statistical information,
And the virtual machine selection unit selects the virtual machine based on the determined application types and the resource allocation ratio.
상기 통계 정보 추출부는 사용자에 의해 사용된 복수의 어플리케이션 각각의 통계 정보를 상기 데이터베이스로부터 추출하는 것인, 세션 관리 서버.
The method according to claim 1,
Wherein the statistical information extracting unit extracts statistical information of each of a plurality of applications used by a user from the database.
상기 어플리케이션의 전송 유형은 이미지 전송 유형 및 스트리밍 전송 유형 중 어느 하나인 것인, 세션 관리 서버.
The method according to claim 1,
Wherein the transmission type of the application is one of an image transmission type and a streaming transmission type.
상기 어플리케이션 유형 결정부는 상기 복수의 가상 머신 각각의 자유 영역의 비율을 더 포함하여 상기 어플리케이션 유형들 및 상기 어플리케이션 유형들 간의 자원 할당 비율을 결정하는 것인, 세션 관리 서버.
3. The method of claim 2,
Wherein the application type determination unit further includes a ratio of free areas of each of the plurality of virtual machines to determine a resource allocation ratio between the application types and the application types.
상기 어플리케이션 유형 결정부는 어플리케이션 형태 유형들 간의 자원 할당 비율을 결정하고,
상기 어플리케이션 형태 유형은 페이지 형태 유형 및 패키지 형태 유형 중 어느 하나인 것인, 세션 관리 서버.
3. The method of claim 2,
The application type determination unit determines a resource allocation rate between application type types,
Wherein the application type type is one of a page type type and a package type type.
복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 통계 정보 추출부;
상기 추출된 통계 정보에 기초하여 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형을 결정하는 어플리케이션 유형 결정부; 및
상기 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 통신부;
상기 결정된 어플리케이션 유형에 기초하여 상기 복수의 가상 머신 중 상기 제 1 어플리케이션을 실행할 가상 머신을 선택하는 가상 머신 선택부를 포함하고,
상기 통신부는 상기 디바이스와의 세션을 상기 선택된 가상 머신으로 요청하고,
상기 통계 정보 추출부는 사용자에 의해 사용된 복수의 어플리케이션 각각의 통계 정보를 상기 데이터베이스로부터 추출하고,
상기 가상 머신 선택부는 상기 추출된 통계 정보에 기초하여 복수의 가상 머신의 우선 순위 테이블을 생성하고, 상기 생성된 우선 순위 테이블에 기초하여 상기 제 1 어플리케이션을 실행할 가상 머신을 선택하는 것인, 세션 관리 서버.
A session management server for selecting a virtual machine to execute the application in response to an execution request of an application received from a device,
A statistical information extracting unit for extracting statistical information of each of a plurality of applications already executed by a plurality of virtual machines from a database;
An application type determination unit for determining an application type corresponding to each of the plurality of virtual machines based on the extracted statistical information; And
A communication unit for receiving an execution request of the first application from the device;
And a virtual machine selection unit for selecting a virtual machine to execute the first application among the plurality of virtual machines based on the determined application type,
Wherein the communication unit requests a session with the device to the selected virtual machine,
Wherein the statistical information extracting unit extracts statistical information of each of a plurality of applications used by a user from the database,
Wherein the virtual machine selection unit generates a priority table of a plurality of virtual machines based on the extracted statistical information and selects a virtual machine to execute the first application based on the generated priority table, server.
상기 통신부는 상기 결정된 자원 할당 비율에 기초하여 가상화 서버에 상기 가상 머신에 대한 자원 할당을 요청하는 것인, 세션 관리 서버.
3. The method of claim 2,
Wherein the communication unit requests resource allocation for the virtual machine to the virtualization server based on the determined resource allocation ratio.
상기 어플리케이션 유형 결정부는 상기 결정된 어플리케이션 형태 유형 및 상기 어플리케이션의 전송 유형에 기초하여 상기 가상 머신 각각에 대응하는상기 어플리케이션 유형을 결정하는 것인, 세션 관리 서버.
5. The method of claim 4,
Wherein the application type determination unit determines the application type corresponding to each of the virtual machines based on the determined application type type and the transmission type of the application.
복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션 각각의 통계 정보를 데이터베이스로부터 추출하는 단계;
상기 추출된 통계 정보에 기초하여 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형 및 어플리케이션의 전송 유형을 결정하는 단계;
상기 디바이스로부터 제 1 어플리케이션의 실행 요청을 수신하는 단계;
상기 결정된 어플리케이션 유형에 기초하여 상기 복수의 가상 머신 중 상기 제 1 어플리케이션을 실행할 가상 머신을 선택하는 단계; 및
상기 디바이스와의 세션을 상기 선택된 가상 머신으로 요청하는 단계를 포함하는 세션 관리 방법.
A session management method for selecting a virtual machine to execute the application in response to an execution request of an application received from a device,
Extracting statistical information of each of a plurality of applications already executed by a plurality of virtual machines from a database;
Determining a transmission type of an application type and an application corresponding to each of the plurality of virtual machines based on the extracted statistical information;
Receiving an execution request of the first application from the device;
Selecting a virtual machine to execute the first application among the plurality of virtual machines based on the determined application type; And
And requesting a session with the device to the selected virtual machine.
상기 어플리케이션 유형을 결정하는 단계는 상기 추출된 통계 정보에 기초하여 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형들 및 상기 어플리케이션 유형들간의 자원할당 비율을 결정하는 것인, 세션 관리 방법.
11. The method of claim 10,
Wherein the step of determining the application type determines application types corresponding to each of the plurality of virtual machines and a resource allocation ratio between the application types based on the extracted statistical information.
상기 가상 머신을 선택하는 단계는 상기 결정된 어플리케이션 유형들 및 상기 자원 할당 비율에 기초하여 상기 가상 머신을 선택하는 것인, 세션 관리 방법.
12. The method of claim 11,
Wherein the step of selecting the virtual machine selects the virtual machine based on the determined application types and the resource allocation ratio.
복수의 가상 머신을 생성하는 가상 머신 생성부;
상기 복수의 가상 머신에 의하여 이미 실행된 복수의 어플리케이션의 실행 이력에 기초하여 상기 복수의 어플리케이션 각각의 통계 정보를 생성하는 통계 정보 생성부;
상기 생성된 통계 정보를 세션 관리 서버와 연결된 데이터베이스로 저장시키고, 상기 세션 관리 서버로부터 상기 복수의 가상 머신 각각에 대응하는 어플리케이션 유형 정보를 수신하는 통신부; 및
상기 세션 관리 서버로부터 디바이스와의 세션 연결을 요청받는 경우, 상기 수신된 어플리케이션 유형 정보에 기초하여 상기 디바이스와 상기 복수의 가상 머신 중 어느 하나와 세션을 연결하는 세션 연결부를 포함하고,
상기 통신부는 상기 세션 관리 서버로부터 상기 복수의 가상 머신 각각에 대응하는 어플리케이션의 전송 유형을 수신하도록 구성되는 것인, 가상화 서버.
In a virtualization server including a plurality of virtual machines,
A virtual machine generation unit for generating a plurality of virtual machines;
A statistical information generation unit configured to generate statistical information of each of the plurality of applications based on execution histories of a plurality of applications already executed by the plurality of virtual machines;
A communication unit for storing the generated statistical information in a database connected to the session management server and receiving application type information corresponding to each of the plurality of virtual machines from the session management server; And
And a session connection unit for connecting a session with any one of the plurality of virtual machines and the device based on the received application type information when a session connection with the device is requested from the session management server,
Wherein the communication unit is configured to receive a transfer type of an application corresponding to each of the plurality of virtual machines from the session management server.
상기 가상 머신 생성부는 상기 수신된 어플리케이션 유형 정보에 기초하여 상기 어플리케이션 유형 정보에 대응하는 적어도 하나 이상의 가상 머신을 생성하는 것인, 가상화 서버.
14. The method of claim 13,
Wherein the virtual machine creation unit creates at least one or more virtual machines corresponding to the application type information based on the received application type information.
상기 수신된 어플리케이션 유형 정보는 상기 어플리케이션 유형들 및 상기 어플리케이션 유형들 간의 자원 할당 비율을 포함하는 것인, 가상화 서버.15. The method of claim 14,
Wherein the received application type information includes a resource allocation ratio between the application types and the application types.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120153766A KR101546388B1 (en) | 2012-12-26 | 2012-12-26 | Server and method for connecting session to virtual machine and, server for generating virtual machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120153766A KR101546388B1 (en) | 2012-12-26 | 2012-12-26 | Server and method for connecting session to virtual machine and, server for generating virtual machine |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140083707A KR20140083707A (en) | 2014-07-04 |
KR101546388B1 true KR101546388B1 (en) | 2015-08-21 |
Family
ID=51734085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120153766A KR101546388B1 (en) | 2012-12-26 | 2012-12-26 | Server and method for connecting session to virtual machine and, server for generating virtual machine |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101546388B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113672392B (en) * | 2021-08-25 | 2023-07-25 | 国家电网有限公司信息通信分公司 | Method and device for optimizing energy consumption, electronic equipment and computer readable storage medium |
-
2012
- 2012-12-26 KR KR1020120153766A patent/KR101546388B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20140083707A (en) | 2014-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020238751A1 (en) | Resource access method under serverless architecture, device, system, and storage medium | |
CN108337109B (en) | Resource allocation method and device and resource allocation system | |
CN102082692B (en) | Method and equipment for migrating virtual machines based on network data flow direction, and cluster system | |
US9699250B2 (en) | Method and system for building an elastic cloud web server farm | |
US8250213B2 (en) | Methods and apparatus to allocate resources associated with a distributive computing network | |
US9665410B2 (en) | Processing of application programming interface traffic | |
US10261811B2 (en) | Systems and methods for contextually allocating emulation resources | |
US11064041B2 (en) | Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof | |
Wright et al. | A constraints-based resource discovery model for multi-provider cloud environments | |
KR20170017049A (en) | Cloud service broker and method thereof | |
US9104501B2 (en) | Preparing parallel tasks to use a synchronization register | |
KR20210095690A (en) | Resource management method and apparatus, electronic device and recording medium | |
CN112579622B (en) | Method, device and equipment for processing service data | |
KR20130089779A (en) | System for proving contents based on cloud computing and method thereof | |
KR101236477B1 (en) | Method of processing data in asymetric cluster filesystem | |
EP3274859B1 (en) | Cluster computing service assurance apparatus and method | |
CN102790784A (en) | Distributed cache method and system and cache analyzing method and analyzing system | |
CN109992373B (en) | Resource scheduling method, information management method and device and task deployment system | |
KR20190028210A (en) | Cloud service method and system for deployment of artificial intelligence application using container | |
US20180367631A1 (en) | Apparatus for providing cloud brokerage service based on multiple clouds and method thereof | |
KR20110133409A (en) | System for adaptive mobile cloud service using the private virtual instance and construction method thereof | |
KR102389334B1 (en) | Virtual machine provisioning system and method for cloud service | |
KR101386161B1 (en) | Apparatus and method for managing compressed image file in cloud computing system | |
KR101546388B1 (en) | Server and method for connecting session to virtual machine and, server for generating virtual machine | |
US20150286508A1 (en) | Transparently routing job submissions between disparate environments |
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 | ||
FPAY | Annual fee payment |
Payment date: 20180801 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190731 Year of fee payment: 5 |