KR101724339B1 - Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체 - Google Patents

Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체 Download PDF

Info

Publication number
KR101724339B1
KR101724339B1 KR1020160044428A KR20160044428A KR101724339B1 KR 101724339 B1 KR101724339 B1 KR 101724339B1 KR 1020160044428 A KR1020160044428 A KR 1020160044428A KR 20160044428 A KR20160044428 A KR 20160044428A KR 101724339 B1 KR101724339 B1 KR 101724339B1
Authority
KR
South Korea
Prior art keywords
android
failover
vnc
mam
gateway
Prior art date
Application number
KR1020160044428A
Other languages
English (en)
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 KR1020160044428A priority Critical patent/KR101724339B1/ko
Application granted granted Critical
Publication of KR101724339B1 publication Critical patent/KR101724339B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)

Abstract

VNC 게이트웨이 VM 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 통해 시스템의 기능들을 실행하는 안드로이드(Android) VM을 포함하는, SFC 환경에서의 안드로이드 VM 장애 극복 장치는, 상기 안드로이드 VM의 실행에 장애가 발생하는지 여부를 감시하는 장애 감지부; 상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하는 VM 추가 생성부; 상기 장애 감지부에서 장애가 감지되면, 상기 VM 추가 생성부에 페일오버 서비스를 요청하는 서비스 요청부; 및 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성하는 플로우 형성부를 포함한다. 이에 따라, 자동적인 VM 생성 및 서버단의 흐름 규칙 추가 작업을 통하여 사용자에게 기술 개발에 있어 불편함 없이 지속적인 서비스를 제공할 수 있다.

Description

SFC 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체{DEVICE, SYSTEM AND METHOD FOR ANDROID VM FAILOVER SOLUTION IN SFC ENVIRONMENT, RECORDING MEDIUM FOR PERFORMING THE METHOD}
본 발명은 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체에 관한 것으로서, 더욱 상세하게는 SFC 환경에서 시스템에 문제가 발생한 경우 서비스 요청에 따른 장애 극복 솔루션에 관한 것이다.
기존의 페일오버(Failover) 기능은, 1차적으로 사용중인 시스템의 고장, 유지보수 및 사용 불가능인 상태일 경우 2차 시스템에서 이전에 사용중인 시스템의 임무를 자동적으로 넘겨받아 시스템의 구성요소들 사용자들이 시스템을 사용하는데 불편함이 없도록 백업할 수 있는 기능을 말한다.
최근 이러한 기능들은 시스템 설계에 있어 필수적이다. 사용중인 시스템에 문제가 생겨 잠시라도 사용이 불가능한 경우 막대한 손실이 우려가 되고, 사용에 불편함이 있기 때문에, 이러한 페일오버 기능을 활용하여 문제가 생기더라도 즉각적인 대처로 문제를 제거하기 위함이다.
하지만, 그러나 SFC(Service Function Chaining) 환경에서의 페일오버 기능은 기존의 페일오버 기능과 차이를 두고 있다. SFC 환경에서는 기존 VNC(Virtual Network Computing, 가상 네트워크 컴퓨팅) 게이트웨이(Gateway)인 Guacamole, Android, MAM(Mobile Application Management)의 3개의 VM(virtual machine)이 서로 다른 흐름 규칙(Flow Rule)을 통한 서로의 통신을 행하고 있다.
기존 페일오버는 1차 시스템에 문제가 생기게 되면 예비 2차 시스템이 기존 시스템의 서비스를 이어받게 되어, 사용 중인 서비스를 지속적으로 유지 가능하게 한다. 이 기술을 그대로 SFC 환경에서의 안드로이드(Android) VM에 적용하게 되면, 새로운 안드로이드 VM을 지속적으로 서버 내에 무분별하게 생성하게 되는 문제가 발생한다.
이에 따라, 기존 흐름 규칙(Flow Rule)이 적용이 되지 않아 사용할 수 없는 다수의 불필요한 VM을 생성을 할 수 있으며, 이에 따른 서버 과부하가 생기게 되어 지속적인 서비스 제공이 어려워지게 된다.
KR 2010-0138689 A KR 2012-0071979 A
이에, 본 발명의 기술적 과제는 이러한 점에서 착안된 것으로 본 발명의 목적은 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치를 제공하는 것이다.
본 발명의 다른 목적은 SFC 환경에서의 안드로이드 가상머신 장애 극복 시스템을 제공하는 것이다.
본 발명의 또 다른 목적은 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법을 제공하는 것이다.
본 발명의 더욱 또 다른 목적은 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 기록 매체를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 VNC 게이트웨이 가상머신(virtual machine, 이하 VM) 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 통해 시스템의 기능들을 실행하는 안드로이드(Android) VM을 포함하는, 서비스 기능 체이닝(Service Function Chaining, 이하 SFC) 환경에서의 안드로이드 VM 장애 극복 장치에 있어서, 상기 안드로이드 VM의 실행에 장애가 발생하는지 여부를 감시하는 장애 감지부; 상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하는 VM 추가 생성부; 상기 장애 감지부에서 장애가 감지되면, 상기 VM 추가 생성부에 페일오버 서비스를 요청하는 서비스 요청부; 및 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성하는 플로우 형성부를 포함한다.
본 발명의 실시예에서, 상기 SFC 환경에서의 안드로이드 VM 장애 극복 장치는, 상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM과 함께 클라우딩 컴퓨팅 플랫폼 상에 존재할 수 있다.
본 발명의 실시예에서, 상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM은 동일한 서버에 형성될 수 있다.
본 발명의 실시예에서, 상기 SFC 환경에서의 안드로이드 VM 장애 극복 장치는, 상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM이 형성된 서버와 별도의 서버에 형성될 수 있다.
본 발명의 실시예에서, 상기 VM 추가 생성부는 사용자의 요청에 따라 페일오버 안드로이드 VM을 생성할 수 있다.
상기한 본 발명의 다른 목적을 실현하기 위한 일 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 시스템은, 인터넷 상에서 컴퓨팅 데스크톱 환경을 보여주는 VNC(Virtual Network Computing, 가상 네트워크 컴퓨팅) 게이트웨이(Gateway) 가상머신(virtual machine, 이하 VM); 모바일 기기에 설치된 애플리케이션과 데이터를 선택적으로 관리하는 MAM(Mobile Application Management, 모바일 애플리케이션 매니지먼트) VM; 상기 VNC 게이트웨이 VM 및 상기 MAM VM과 각각의 흐름 규칙(Flow Rule)을 이용하여 서비스 기능들을 실행하는 안드로이드(Android) VM; 및 상기 안드로이드 VM의 실행에 장애가 발생한 경우, 상기 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하고, 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 제공하는 안드로이드 VM 장애 극복 장치를 포함한다.
상기한 본 발명의 또 다른 목적을 실현하기 위한 일 실시예에 따른 서비스 기능 체이닝(Service Function Chaining, 이하 SFC) 환경에서의 안드로이드 가상머신(virtual machine, 이하 VM) 장애 극복 방법에 있어서, VNC 게이트웨이 VM 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 이용하여, 안드로이드(Android) VM을 통해 시스템의 기능들을 실행하는 단계; 상기 안드로이드 VM의 실행에 장애가 발생하는지 여부를 감시하는 단계; 상기 안드로이드 VM에서 장애가 감지되면, 페일오버(Failover) 서비스를 요청하는 단계; 상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버 안드로이드 VM을 생성하는 단계; 및 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성하는 단계를 포함한다.
본 발명의 실시예에서, 상기 SFC 환경에서의 안드로이드 VM 장애 극복 방법은, 사용자의 요청에 따라 페일오버 안드로이드 VM을 생성하는 단계를 더 포함할 수 있다.
본 발명의 실시예에서, 상기 단계들은 클라우딩 컴퓨팅 플랫폼 상에 수행될 수 있다.
상기한 본 발명의 더욱 또 다른 목적을 실현하기 위한 일 실시예에 따른 컴퓨터로 판독 가능한 저장 매체에는, 상기 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법을 수행하기 위한 컴퓨터 프로그램이 기록되어 있다.
이와 같은 SFC 환경에서의 안드로이드 가상머신 장애 장치에 따르면, 사용 중인 안드로이드(Android) VM의 작동이 중지 되거나 작업 환경에 있어 불편함을 겪게 될 경우에, 페일오버(Failover) 서비스 신청을 하여 새로운 안드로이드 VM을 할당받아 기존 VM들과의 작업환경에 있어서 최적의 상태를 유지할 수 있다. 본 발명은 페일오버 서비스 요청을 하여 자동적인 안드로이드 VM 생성 및 서버단의 흐름 규칙(Flow Rule)을 추가로 생성하여, 기존 VM의 장애를 해결함과 동시에 새로운 VM을 제공함으로써 사용자에게 지속적인 서비스를 제공할 수 있다.
도 1은 클라우딩 컴퓨팅 플랫폼의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치를 포함하는 클라우딩 컴퓨팅 플랫폼의 블록도이다.
도 3은 본 발명의 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치의 상세한 블록도이다.
도 4는 본 발명의 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치에서 생성된 페일오버 안드로이드 VM의 흐름 규칙(Flow Rule)을 보여주는 도면이다.
도 5는 본 발명의 일 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법의 흐름도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 클라우딩 컴퓨팅 플랫폼의 블록도이다. 도 2는 본 발명의 일 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 장치를 포함하는 클라우딩 컴퓨팅 플랫폼의 블록도이다.
본 발명에 따른 SFC 환경에서의 안드로이드 가상머신(virtual machine, 이하 VM) 장애 극복 장치(700)는 페일오버(Failover) 서비스 요청이 들어오게 되면, 서비스 요청에 따른 자동적인 페일오버(Failover) 안드로이드 VM을 생성하고, 서버단에서의 기존 흐름 규칙(Flow Rule)이 아닌 새로 생성된 VM의 흐름 규칙(Flow Rule)을 자동적으로 연결하여, 가상머신 간의 통신이 끊어지지 않게 유지해준다.
본 발명은 서비스 기능 체이닝(Service Function Chaining, 이하 SFC) 환경으로서, 단대단 서비스의 제공에는 다양한 서비스 기능들이 포함되는데 이 경우에 방화벽이나 NAT등의 기존 네트워크 서비스 및 특정 애플리케이션들을 위한 기능들이 포함된다. SFC 환경이란, 이러한 기능들을 순서대로 묶은 서비스의 정의 또는 인스턴스화, 그리고 이들을 거쳐가는 트래픽들을 잘 조종하는(Steering) 과정을 일컫는다.
다시 말해, 서비스 기능 체인은 분류 과정에서 선택된 패킷, 프레임, 플로우를 위하여 필요한 서비스 기능들과 기능들의 조합 순서를 정의한다. SFC는 하나 이상의 서비스 기능들로 구성된 서비스의 구현을 가능하게 한다. 또한, SFC 구조는 특정 네트워크나 배치시나리오에 독립적으로 작성되었으므로, 유무선 네트워크 또는 데이터센터 어디든지 적용 가능하다.
도 1을 참조하면, 클라우딩 컴퓨팅 플랫폼(1)을 보여주는 도면으로서, VNC(Virtual Network Computing, 가상 네트워크 컴퓨팅) 게이트웨이(Gateway) VM(100), 서비스 기능들을 실행하는 안드로이드(Android) VM(300), MAM(Mobile Application Management, 모바일 애플리케이션 매니지먼트) VM(500)을 포함한다.
상기 클라우딩 컴퓨팅 플랫폼(1)은 예를 들어, 클라우드 스택(CloudStack), 오픈 스택(OpenStack) 등의 클라우스 시스템일 수 있다. 상기 VNC 게이트웨이 VM(100), 상기 안드로이드(Android) VM(300) 및 상기 MAM VM(500)은 하나의 서버에 형성될 수 있다.
여기서, VM이란 콘텐츠나 애플리케이션을 단말기 내에서 실행할 수 있는 환경을 제공하는 가상머신의 모바일 운영체제를 말한다. PC에서 윈도우처럼 일종의 구동 프로그램인 셈이다. 압축 솔루션, 3D엔진, DRM, 보안 등 무선인터넷을 위한 개별 요소 솔루션 등은 단독으로 의미를 가질 수 없으며, 결국은 VM을 이용하여 활용된다.
상기 VNC 게이트웨이 VM(100)은 인터넷 상에서 어디서든 컴퓨팅 데스크톱 환경을 보여주는 가상머신이다. 상기 VNC 게이트웨이 VM(100)은 자판과 마우스 이벤트를 한 컴퓨터에서 다른 컴퓨터로 전송시켜서 네트워크를 거쳐 그래픽 화면을 갱신하는 방식을 제공할 수 있다. 상기 VNC 게이트웨이 VM(100)는 예를 들어, 과카몰리(Guacamole)일 수 있다.
상기 VNC 게이트웨이 VM(100)은 VM 원격접속을 실행하여 변화된 부분만 감지하여 전송할 수 있도록 하고, 이에 압축을 더하여 화면 전송 대역폭을 최소화시키도록 하여 서버와 사용자에게 최적화된 환경을 제공한다. 또한, 사용자로 하여금 단말기 상에서 안드로이드 VM이 구동되는 환경을 제공하기 위해, 화면 전송 대역폭 감소, 압축 등을 이용하여 최적화한다.
상기 MAM VM(500)은 애플리케이션과 데이터를 통합 관리 및 제어하는 가상머신으로서, 안드로이드 단말 내의 애플리케이션을 직접적으로 제어를 하여 화이트리스트(Whitelist), 블랙리스트(Blacklist) 및 설치 가능한 애플리케이션을 직접적으로 제어한다.
MAM은 모바일 기기에 설치된 애플리케이션과 데이터를 선택적으로 관리하는 솔루션이기 때문에, 기업이 개인이 소유한 스마트 기기 전체를 중앙에서 제어하는 솔루션인 MDM과 달리 개인의 영역과 기업의 영역을 나눠서 관리한다.
MAM은 기업 자체가 앱스토어를 만들어 직원들에게 자신이 필요로 하는 업무용 애플리케이션을 내려받을 수 있도록 하며 메일, 문서, 위치 파악 등 카테고리별로 애플리케이션을 제공하는 것이 특징이다. MAM은 모바일 장치 등에 설치되어 있는 각각의 애플리케이션을 통제하는 강력한 기능을 가진다.
상기 안드로이드(Android) VM(300)은 상기 VNC 게이트웨이 VM(100) 및 상기 MAM VM(500)과 각각의 흐름 규칙(Flow Rule)을 통해 시스템의 기능들을 실행한다. 즉, 상기 안드로이드(Android) VM(300)과 상기 VNC 게이트웨이 VM(100) 사이의 흐름 규칙과 상기 안드로이드(Android) VM(300)과 상기 MAM VM(500) 사이의 흐름 규칙은 서로 다르다. 여기서, 시스템의 기능이란 프로세서, 애플리케이션, 서버, 데이터베이스 등을 모두 포함하는 넓은 개념이다.
사용자는 모바일 단말기를 통해 서비스를 제공받으며, 상기 모바일 단말기는 스마트 폰, 태블릿 컴퓨터, 넷북, 피디에이(PDA), 피엠피(PMP), 피에스피(PSP), 엠피쓰리(MP3) 플레이어, 이북(e-book) 리더, 내비게이션, 스마트 카메라, 전자사전, 전자시계 등의 모바일(mobile) 전자 기기를 모두 포함할 수 있다.
또한, 상기 모바일 단말기는 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
도 2를 참조하면, 본 발명에 따른 안드로이드 VM 장애 극복 장치(700)가 상기 클라우딩 컴퓨팅 플랫폼(1) 상에 제공된다.
본 발명에 따른 안드로이드 VM 장애 극복 장치(700)는 사용자가 모바일 단말기를 통해 시스템의 기능들을 실행하는 도중 안드로이드(Android) VM(300)의 상태 이상이 발생하거나 작동에 이상이 발생하는 등 장애가 발생하는 경우, 자동적으로 장애가 발생한 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하여 제공한다.
상기 안드로이드 VM 장애 극복 장치(700)는 상기 VNC 게이트웨이 VM(100), 상기 안드로이드(Android) VM(300) 및 상기 MAM VM(500)이 형성된 서버와 다른 별도의 서버에 형성될 수 있다.
상기 안드로이드 VM 장애 극복 장치(700)는 운영체제의 펌웨어 또는 커널(kernel)에서 동작할 수 있다. 커널 영역은 인터럽트 처리, 프로세스 관리, 메모리 관리, 파일 시스템 관리, 프로그래밍 인터페이스를 제공하는 등 컴퓨터 운영체제의 가장 중요한 핵심으로서 컴퓨터의 가장 기본적인 장치들을 관리하고 제어하는 영역이다. 따라서, 커널 영역은 일반적으로 접근이 불가능한 메모리에 로드(load)되며, 하드웨어를 제어하기 위한 일종의 API(Application Program Interface)라고 볼 수 있다.
도 3을 참조하면, 본 발명에 따른 안드로이드 VM 장애 극복 장치(700)는 장애 감지부(710), 서비스 요청부(730), VM 추가 생성부(750) 및 플로우 형성부(770)를 포함한다.
상기 장애 감지부(710)는 상기 안드로이드 VM(300)의 실행에 장애가 발생하는지 여부를 감시하고, 상기 서비스 요청부(730)는 상기 장애 감지부에서 장애가 감지되면, 상기 VM 추가 생성부(750)에 페일오버 서비스를 요청한다.
페일오버(Failover)는 기존 시스템의 문제 발생시 새로운 시스템에 기존 시스템이 자동적으로 할당되어, 기존 시스템의 이용에 문제가 없도록 한다. 이러한 이유로 기술 개발에 있어 유지 보수를 위한 페일오버 기능은 필수적이다. 기존 페일오버는 1차 시스템에 문제가 생기게 되면, 예비 2차 시스템이 기존 시스템의 서비스를 이어받게 되어 사용 중인 서비스를 지속적으로 유지 가능하게 해준다.
하지만, 기존 페일오버 기술을 SFC 환경에 그대로 적용하게 되는 경우, 사용자들은 예를 들어, 클라우드 스택(CloudStack) 서버 내에 무분별한 안드로이드 VM을 만들게 되고, 이로 인해 흐름 규칙(Flow Rule)이 적용 되지 않아 사용할 수 없는 다수의 불필요한 VM을 생성을 할 수 있으며, 이에 따른 서버 과부하가 생기게 되어, 지속적인 서비스 제공이 어려워지게 된다.
이에, 본 발명은 SFC 환경에서 안드로이드 VM의 페일오버 서비스 요청을 통하여 자동적인 VM 생성 및 서버단의 흐름 규칙(Flow Rule)의 추가 작업으로, 기존 VM의 불편한 점을 해결함과 동시에 새로운 VM을 제공함으로써 사용자에게 지속적인 서비스를 제공할 수 있다.
상기 VM 추가 생성부(750)는 상기 장애가 발생한 안드로이드 VM(300)을 대체하는 페일오버(Failover) 안드로이드 VM(800)을 생성하고, 상기 플로우 형성부(770)는 상기 생성된 페일오버 안드로이드 VM(800)과 상기 VNC 게이트웨이 VM(100) 및 상기 MAM VM(500)에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성한다.
도 4를 참조하면, 상기 VM 추가 생성부(750)에서 생성한 페일오버 안드로이드 VM(800)과 상기 VNC 게이트웨이 VM(100) 및 상기 MAM VM(500)과의 새로운 흐름 규칙(Flow Rule)을 나타낸다.
이에 따라, 사용자는 기존 안드로이드 VM(300)과의 통신은 물론 새로운 페일오버 안드로이드 VM(800)을 이용한 작업이 가능하다. 이러한 방식은 사용자에게 지속적인 서비스의 제공과 함께 쾌적한 환경의 VM을 제공함으로써 일처리 과정에 있어 빠른 환경을 제공해 준다.
다른 실시예로서, 상기 VM 추가 생성부(750)는 사용자의 요청에 따라 페일오버 안드로이드 VM(800)을 생성할 수도 있다. 이에 따라, 사용자 스스로 시스템의 기능 사용 중 이상을 감지하거나 불편함을 느낄 때, 상기 VM 추가 생성부(750)에 요청하여 기존 안드로이드 VM(300)을 대체하는 페일오버 안드로이드 VM(800)의 생성을 요청할 수 있다.
본 발명에서 제안하는 SFC환경에서의 안드로이드 VM 페일오버 기능을 사용하게 되면, 무분별한 안드로이드 VM 생성 및 사용 중인 VM의 장애에 따른 불편함을 겪게 될 경우에 페일오버 서비스 신청을 하여 새로운 VM을 할당 받아 기존 VM들과의 작업환경에 있어서 최적의 상태를 유지할 수 있다.
또한, 안드로이드 VM이 작동 불가능인 상태가 되는 경우, 안드로이드 VM 이상 보고 및 서비스 신청에 따른 자동적인 안드로이드 VM 생성과 새로 생성된 VM과 기존의 상기 VNC 게이트웨이 VM(100) 및 상기 MAM VM(500)과의 흐름 규칙(Flow Rule)을 통한 지속적인 통신이 가능하게 된다.
따라서, 본 발명은 안드로이드 VM을 직접적으로 사용하면서 겪는 불편함, 속도 저하 등에 있어 발생하는 지속적인 문제에 대해, 페일오버 서비스 신청을 하게 되어 서버단을 거쳐 자동적으로 새로운 안드로이드 VM을 생성하여 지속적인 작업이 가능 하도록 만들어 준다.
도 5는 본 발명의 일 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법의 흐름도이다.
본 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법은, 도 3의 안드로이드 VM 장애 극복 장치(700)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 3의 안드로이드 VM 장애 극복 장치(700)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략한다.
또한, 본 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법은 안드로이드 가상머신의 장애를 극복하기 위한 소프트웨어(애플리케이션)에 의해 실행될 수 있다.
상기 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법은 클라우딩 컴퓨팅 플랫폼 상에 수행될 수 있다. 상기 클라우딩 컴퓨팅 플랫폼은 예를 들어, 클라우드 스택(CloudStack), 오픈 스택(OpenStack) 등의 클라우스 시스템일 수 있다.
도 5를 참조하면, 본 실시예에 따른 SFC 환경에서의 안드로이드 가상머신 장애 극복 방법은, VNC 게이트웨이 VM 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 이용하여, 안드로이드(Android) VM을 통해 시스템의 기능들을 실행한다(단계 S10).
상기 VNC 게이트웨이 VM은 인터넷 상에서 어디서든 컴퓨팅 데스크톱 환경을 보여주는 가상머신이고, 상기 MAM VM은 애플리케이션과 데이터를 통합 관리 및 제어하는 가상머신이다.
여기서, VM이란 콘텐츠나 애플리케이션을 단말기 내에서 실행할 수 있는 환경을 제공하는 가상머신의 모바일 운영체제를 말한다. PC에서 윈도우처럼 일종의 구동 프로그램인 셈이다. 압축 솔루션, 3D엔진, DRM, 보안 등 무선인터넷을 위한 개별 요소 솔루션 등은 단독으로 의미를 가질 수 없으며, 결국은 VM을 이용하여 활용된다.
상기 안드로이드(Android) VM은 상기 VNC 게이트웨이 VM 및 상기 MAM VM과 각각의 흐름 규칙(Flow Rule)을 통해 시스템의 기능들을 실행한다. 즉, 상기 안드로이드(Android) VM과 상기 VNC 게이트웨이 VM 사이의 흐름 규칙과 상기 안드로이드(Android) VM과 상기 MAM VM 사이의 흐름 규칙은 서로 다르다. 여기서, 시스템의 기능이란 프로세서, 애플리케이션, 서버, 데이터베이스 등을 모두 포함하는 넓은 개념이다.
사용자는 모바일 단말기를 통해 서비스를 제공받으며, 상기 모바일 단말기는 스마트 폰, 태블릿 컴퓨터, 넷북, 피디에이(PDA), 피엠피(PMP), 피에스피(PSP), 엠피쓰리(MP3) 플레이어, 이북(e-book) 리더, 내비게이션, 스마트 카메라, 전자사전, 전자시계 등의 모바일(mobile) 전자 기기를 모두 포함할 수 있다.
또한, 상기 모바일 단말기는 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.
상기 VNC 게이트웨이 VM, 상기 안드로이드(Android) VM 및 상기 MAM VM은 하나의 서버에 형성될 수 있다.
사용자가 모바일 단말기를 통해 시스템의 기능들을 실행하는 도중 안드로이드(Android) VM의 상태 이상이 발생하거나 작동에 이상이 발생하는 등 장애가 발생하는 경우(단계 S30), 페일오버(Failover) 서비스를 요청한다(단계 S50).
페일오버(Failover)는 기존 시스템의 문제 발생시 새로운 시스템에 기존 시스템이 자동적으로 할당되어, 기존 시스템의 이용에 문제가 없도록 한다. 이러한 이유로 기술 개발에 있어 유지 보수를 위한 페일오버 기능은 필수적이다. 기존 페일오버는 1차 시스템에 문제가 생기게 되면, 예비 2차 시스템이 기존 시스템의 서비스를 이어받게 되어 사용 중인 서비스를 지속적으로 유지 가능하게 해준다.
하지만, 기존 페일오버 기술을 SFC 환경에 그대로 적용하게 되는 경우, 사용자들은 예를 들어, 클라우드 스택(CloudStack) 서버 내에 무분별한 안드로이드 VM을 만들게 되고, 이로 인해 흐름 규칙(Flow Rule)이 적용 되지 않아 사용할 수 없는 다수의 불필요한 VM을 생성을 할 수 있으며, 이에 따른 서버 과부하가 생기게 되어, 지속적인 서비스 제공이 어려워지게 된다.
이에, 본 발명은 SFC 환경에서 안드로이드 VM의 페일오버 서비스 요청을 통하여 상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 자동적으로 생성한다(단계 S70). 또한, 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성한다(단계 S90).
상기 생성된 페일오버 안드로이드 VM은 상기 VNC 게이트웨이 VM, 상기 안드로이드(Android) VM 및 상기 MAM VM이 형성된 서버와 다른 별도의 서버에 형성될 수 있다.
이와 같이, 본 발명은 SFC 환경에서 안드로이드 VM의 페일오버 서비스 요청을 통하여 자동적인 VM 생성 및 서버단의 흐름 규칙(Flow Rule)의 추가 작업으로, 기존 VM의 불편한 점을 해결함과 동시에 새로운 VM을 제공함으로써 사용자에게 지속적인 서비스를 제공할 수 있다.
또한, 사용자 스스로 시스템의 기능 사용 중 이상을 감지하거나 불편함을 느낄 때, 페일오버 서비스를 요청하여, 기존 안드로이드 VM을 대체하는 페일오버 안드로이드 VM을 생성할 수도 있다.
이와 같은, SFC 환경에서의 안드로이드 가상머신 장애 극복 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명은 안드로이드 가상 머신(Android VM)의 장애 극복(Failover) 서비스 요청이 발생하면, 서비스 요청에 따른 자동적인 안드로이드 가상 머신을 생성하고, 서버단에서의 기존 흐름 규칙(Flow Rule)이 아닌 새로 생성된 VM의 흐름 규칙(Flow Rule)을 자동적으로 연결 해주어 가상 머신 간의 통신이 끊어지지 않게 유지해 준다. 이를 통해, 클라우드 컴퓨팅 환경 하에서 정보보안 서비스를 제공하기 위한 SecaaS 프레임워크 원천기술 개발과 이를 이용한 1Gbps급 모바일 정보유출방지 서비스 구축에 유용하게 활용할 수 있다.
1: 클라우딩 컴퓨팅 플랫폼
100: VNC 게이트웨이 VM
300: 안드로이드 VM
500: MAM VM
700: 안드로이드 VM 장애 극복 장치
710: 장애 감지부
730: 서비스 요청부
750: VM 추가 생성부
770: 플로우 형성부
800: 페일오버 안드로이드 VM

Claims (10)

  1. VNC 게이트웨이 가상머신(virtual machine, 이하 VM) 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 통해 시스템의 기능들을 실행하는 안드로이드(Android) VM을 포함하는, 서비스 기능 체이닝(Service Function Chaining, 이하 SFC) 환경에서의 안드로이드 VM 장애 극복 장치에 있어서,
    상기 안드로이드 VM의 실행에 장애가 발생하는지 여부를 감시하는 장애 감지부;
    상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하는 VM 추가 생성부;
    상기 장애 감지부에서 장애가 감지되면, 상기 VM 추가 생성부에 페일오버 서비스를 요청하는 서비스 요청부; 및
    상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성하는 플로우 형성부를 포함하는, SFC 환경에서의 안드로이드 VM 장애 극복 장치.
  2. 제1항에 있어서,
    상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM과 함께 클라우딩 컴퓨팅 플랫폼 상에 존재하는, SFC 환경에서의 안드로이드 VM 장애 극복 장치.
  3. 청구항 3은(는) 설정등록료 납부시 포기되었습니다.
    제2항에 있어서,
    상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM은 동일한 서버에 형성되는, SFC 환경에서의 안드로이드 VM 장애 극복 장치.
  4. 청구항 4은(는) 설정등록료 납부시 포기되었습니다.
    제3항에 있어서,
    상기 안드로이드 VM, 상기 VNC 게이트웨이 VM 및 상기 MAM VM이 형성된 서버와 별도의 서버에 형성되는, SFC 환경에서의 안드로이드 VM 장애 극복 장치.
  5. 제1항에 있어서,
    상기 VM 추가 생성부는 사용자의 요청에 따라 페일오버 안드로이드 VM을 생성하는, SFC 환경에서의 안드로이드 VM 장애 극복 장치.
  6. 인터넷 상에서 컴퓨팅 데스크톱 환경을 보여주는 VNC(Virtual Network Computing, 가상 네트워크 컴퓨팅) 게이트웨이(Gateway) 가상머신(virtual machine, 이하 VM);
    모바일 기기에 설치된 애플리케이션과 데이터를 선택적으로 관리하는 MAM(Mobile Application Management, 모바일 애플리케이션 매니지먼트) VM;
    상기 VNC 게이트웨이 VM 및 상기 MAM VM과 각각의 흐름 규칙(Flow Rule)을 이용하여 서비스 기능들을 실행하는 안드로이드(Android) VM; 및
    상기 안드로이드 VM의 실행에 장애가 발생한 경우, 상기 안드로이드 VM을 대체하는 페일오버(Failover) 안드로이드 VM을 생성하고, 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 제공하는 안드로이드 VM 장애 극복 장치를 포함하는, SFC(Service Function Chaining, 서비스 기능 체이닝) 환경에서의 안드로이드 VM 장애 극복 시스템.
  7. 서비스 기능 체이닝(Service Function Chaining, 이하 SFC) 환경에서의 안드로이드 가상머신(virtual machine, 이하 VM) 장애 극복 방법에 있어서,
    VNC 게이트웨이 VM 및 MAM VM과 각각의 흐름 규칙(Flow Rule)을 이용하여, 안드로이드(Android) VM을 통해 시스템의 기능들을 실행하는 단계;
    장애 감지부는 상기 안드로이드 VM의 실행에 장애가 발생하는지 여부를 감시하는 단계;
    서비스 요청부는 상기 안드로이드 VM에서 장애가 감지되면, 페일오버(Failover) 서비스를 요청하는 단계;
    VM 추가 생성부는 상기 장애가 발생한 안드로이드 VM을 대체하는 페일오버 안드로이드 VM을 생성하는 단계; 및
    플로우 형성부는 상기 생성된 페일오버 안드로이드 VM과 상기 VNC 게이트웨이 VM 및 상기 MAM VM에 대한 흐름 규칙(Flow Rule)을 각각 추가로 생성하는 단계를 포함하는, SFC 환경에서의 안드로이드 VM 장애 극복 방법.
  8. 제7항에 있어서,
    상기 VM 추가 생성부는 사용자의 요청에 따라 페일오버 안드로이드 VM을 생성하는 단계를 더 포함하는, SFC 환경에서의 안드로이드 VM 장애 극복 방법.
  9. 제7항에 있어서,
    상기 단계들은 클라우딩 컴퓨팅 플랫폼 상에 수행되는, SFC 환경에서의 안드로이드 VM 장애 극복 방법.
  10. 제7항 내지 제9항 중 어느 하나의 항에 따른 SFC 환경에서의 안드로이드 VM 장애 극복 방법을 수행하기 위한, 컴퓨터 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020160044428A 2016-04-11 2016-04-11 Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체 KR101724339B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160044428A KR101724339B1 (ko) 2016-04-11 2016-04-11 Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160044428A KR101724339B1 (ko) 2016-04-11 2016-04-11 Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체

Publications (1)

Publication Number Publication Date
KR101724339B1 true KR101724339B1 (ko) 2017-04-10

Family

ID=58581253

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160044428A KR101724339B1 (ko) 2016-04-11 2016-04-11 Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체

Country Status (1)

Country Link
KR (1) KR101724339B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100138689A (ko) 2009-06-23 2010-12-31 삼성전자주식회사 클라우드 컴퓨팅 서비스를 제공하는 관리 서버 및 방법
KR20120071979A (ko) 2010-12-23 2012-07-03 주식회사 케이티 클라우드 컴퓨팅 시스템의 자원관리장치 및 방법
KR20150126463A (ko) * 2014-05-02 2015-11-12 한국인터넷진흥원 가상머신 논리적 그룹에 기반한 정책 관리 시스템 및 방법
KR20160012539A (ko) * 2014-07-24 2016-02-03 에스케이텔레콤 주식회사 가상머신 간에 이동 가능한 가상 디스크 연결방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100138689A (ko) 2009-06-23 2010-12-31 삼성전자주식회사 클라우드 컴퓨팅 서비스를 제공하는 관리 서버 및 방법
KR20120071979A (ko) 2010-12-23 2012-07-03 주식회사 케이티 클라우드 컴퓨팅 시스템의 자원관리장치 및 방법
KR20150126463A (ko) * 2014-05-02 2015-11-12 한국인터넷진흥원 가상머신 논리적 그룹에 기반한 정책 관리 시스템 및 방법
KR20160012539A (ko) * 2014-07-24 2016-02-03 에스케이텔레콤 주식회사 가상머신 간에 이동 가능한 가상 디스크 연결방법

Similar Documents

Publication Publication Date Title
US10735509B2 (en) Systems and methods for synchronizing microservice data stores
US9354983B1 (en) Integrated it service provisioning and management
US9973472B2 (en) Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
US9729421B2 (en) Outcome-based software-defined infrastructure
US20130283335A1 (en) Systems and methods for applying policy wrappers to computer applications
US20180359218A1 (en) Systems and methods for securing network traffic flow in a multi-service containerized application
US10785133B2 (en) Virtual desktop operation and data continuity preservation
CN104635901A (zh) 用于保护虚拟化设施的系统和方法
US11474842B2 (en) Integration application creator design
US11711241B2 (en) Techniques for utilizing multiple network interfaces for a cloud shell
US20160269439A1 (en) Deploying a security appliance system in a high availability environment without extra network burden
US10536506B2 (en) Webpage analytics and control
US20230359455A1 (en) Service orchestration within a distributed pod based system
KR20150137530A (ko) 멀티 클라우드 배포 관리 시스템 및 방법
US9646163B2 (en) Communicating data between client devices using a hybrid connection having a regular communications pathway and a highly confidential communications pathway
US20220138220A1 (en) Dedicated replication channels for replicating records between regions
Naik et al. Workload monitoring in hybrid clouds
Kleiner et al. Ensuring mobile device security and compliance at the workplace
KR101724339B1 (ko) Sfc 환경에서의 안드로이드 가상머신 장애 극복 장치, 시스템 및 방법, 그 방법을 수행하기 위한 기록 매체
US10127293B2 (en) Collaborative data intelligence between data warehouse models and big data stores
US9342341B2 (en) Systems and methods for deploying an application and an agent on a customer server in a selected network
KR20130070489A (ko) 개방형 모바일 클라우드를 위한 협업 미들웨어 장치 및 서비스 방법
CN107608768A (zh) 基于命令行模式的资源访问方法、电子设备及存储介质
US12032935B2 (en) Enforcement of environmental conditions for cloud applications
Benedetti et al. Open-source serverless for edge computing: a tutorial

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant