KR101256918B1 - 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템 - Google Patents

클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템 Download PDF

Info

Publication number
KR101256918B1
KR101256918B1 KR1020110135656A KR20110135656A KR101256918B1 KR 101256918 B1 KR101256918 B1 KR 101256918B1 KR 1020110135656 A KR1020110135656 A KR 1020110135656A KR 20110135656 A KR20110135656 A KR 20110135656A KR 101256918 B1 KR101256918 B1 KR 101256918B1
Authority
KR
South Korea
Prior art keywords
service
quality
station node
management
node
Prior art date
Application number
KR1020110135656A
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 KR1020110135656A priority Critical patent/KR101256918B1/ko
Application granted granted Critical
Publication of KR101256918B1 publication Critical patent/KR101256918B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/24Negotiating SLA [Service Level Agreement]; Negotiating QoS [Quality of Service]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5032Generating service level reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명에 따른 클라우드 서비스의 확장성과 가용성을 향상시키는 방법은 다음과 같은 단계를 포함한다. 제1 단계에서는 관리서버에서 모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받는다. 제2 단계에서는 상기 관리서버가 수집된 정보를 이용하여 품질 관리 프로세스의 수행 여부를 판단한다. 제3 단계에서는 상기 관리서버가 품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 서비스 이주 프로세스 및 서비스 복제 프로세스 중 적어도 어느 하나의 서비스 품질 관리활동을 선정한다. 제4 단계에서는 상기 관리서버가 선정한 서비스 품질 관리활동을 수행시킨다.
본발명에 따른 서비스 확장성 관리 프레임워크와 방법을 통하여 서비스 시스템의 모든 자원을 동적으로 등록, 관리할 수 있으며, 부하량에 따라 새로운 서비스 호출을 동적 라우팅함으로써 서비스 시스템의 확장성을 극대화할 수 있다.

Description

클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템{Method for enhancing scalability and availability of cloud services and the system thereby}
본 발명은 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템에 관한 것으로서, 보다 상세하게는 전체 노드의 자원을 통합관리함으로써 클라우드 서비스의 품질 저하의 원인에 능동적으로 대응하여 품질을 향상시키는 방법과 그 시스템에 관한 것이다.
모바일 컴퓨팅은 중앙연산처리장치(CPU), 메모리 등 독립적인 시스템을 구성하며 높은 휴대성과 이동성을 가지고 네트워크를 통하여 타 컴퓨터 시스템과 연결된다. 하지만 휴대성, 이동성을 위한 소형화의 결과로 일반 데스크탑 컴퓨터나 서버용 컴퓨터에 비하여 성능이 떨어진다.
최근 이러한 모바일 컴퓨팅의 성능상 한계를 고려하여 모바일 어플리케이션의 일부 기능을 모바일 디바이스가 아닌 외부에 위치시키는 서버 기반 모바일 어플리케이션과 서비스 기반 모바일 어플리케이션에 대한 연구가 진행되고 있다.
이러한 연구는 크게 네트워크 및 서비스의 품질 측정에 관한 영역, 측정된 품질을 분석하는 기술에 관한 영역, 부석된 결과를 토대로 네트워크 및 서비스의 품질을 향상시키는 기술, 즉 서비스 확장성에 관한 영역으로 나누어 볼 수 있다.
서비스 지향 컴퓨팅에서는 서비스 사용자 그룹이나 서비스 요청의 빈도가 미리 알려져 있지 않으므로, 예측하지 못한 많은 양의 서비스 요청은 서비스 서버의 자원 고갈과 네트워크의 집중문제를 야기시켜 서비스의 전반적인 품질을 저하시킬 수 있다. 이러한 문제는 서비스 확장성 (Scalability) 이 충분히 높지 않을 때 발생한다. 낮은 수준의 확장성을 가진 서비스는 사용자의 선호도를 낮추게 된다. 따라서, 서비스 지향 컴퓨팅에서는 소비자의 증가에 따른 서비스 품질의 저하를 최소화하며 보다 많은 소비자에게 서비스를 제공하기 위한 '서비스 확장성'에 대한 연구가 요구되고 있다.
확장성에 대한 연구는 네트워크와 데이터베이스, 분산 컴퓨팅 등의 여러 분야에서 진행되었다. 기존 연구에서는 동적 라우팅을 통하여 네트워크에 연결된 다중 노드에서 실행 중인 동일한 컴포넌트에 부하를 분산하거나, 데이터베이스의 복제와 동기화를 통한 부하분산, 혹은 태스크를 분할하여 병렬 처리하는 방식으로 확장성을 관리한다. 하지만, 서비스는 불특정 다수의 소비자를 대상으로 하기 때문에, 소비자의 서비스 이용에 따른 부하 발생량을 예측하기 힘들고, 부하량이 급격히 증가하는 피크타임이 존재한다. 이와 같은 서비스의 특성으로 인하여 서비스 확장성에 대한 정의와 관련 메트릭, 확장성 관리 기법 등이 새롭게 정의되어야 한다. 즉, 각 분야에서 필요한 확장성 연구는 서비스 지향 컴퓨팅에서 서비스 확장성과 관련한 기반을 제공하지만, 이를 연관 지어서 서비스 수준의 확장성을 확보하는 기법 등이 부족한 상황이다.
확장성을 높이기 위한 전통적인 접근방법은 새로운 하드웨어를 추가하여 시스템의 확장성을 높이는 것이다. 일반적으로 스케일업 방법(Scale-UP)은 하나의 노드에 추가적인 하드웨어를 설치하여 해당 노드의 물리적인 처리능력을 향상시키는 것이며, 스케일 아웃(Scale-Out) 방법은 시스템에 새로운 노드를 추가하여 대상 시스템의 처리능력을 향상시키는 것이다. 하지만, 하드웨어적인 확장성 향상 기법은 하드웨어 설치 및 운영을 위해 시스템을 멈출 필요가 있고, 새로운 하드웨어를 추가할수록 추가되는 자원에 대한 실제 확장성 향상 비율이 감소하는 문제점을 갖는다.
Wang의 연구는 서비스기반 그리드환경에서 에이전트를 이용한 부하분산 모델을 제시하고 있다. 제시된 모델은 여섯 개의 컴포넌트로 구성되어 있고, 각 컴포넌트는 Global Scheduler(GS), Local Scheduler(LS), Balancer Agent(BA), Fault Tolerance Agent(FTA), History Information Database(HID), Load Monitoring Agent(LM) 이다. GS와 LS는 부하를 분산하기 위한 역할을 수행하며, GS는 LS의 영역을 포함하고 있다. BA는 GS와 LS에 탑재되어 부하분산을 수행하며, FTA는 결함 허용(fault tolerant)을 수행한다. HID는 부하에 대한 데이터를 기록하며 데이터는 GS에 저장 된다. LM은 서비스 인스턴스가 부담하고 있는 부하량을 감시한다. 여섯 개의 컴포넌트와 함께 부하 측정기법과 부하분산 기법을 제시하여 성능과 확장성을 향상시키고 있다. 그러나, 서비스노드의 확장성이 고려되지 않아 제한된 노드만을 활용해야 한다. 따라서, 기대 이상으로 발생하는 서비스 요청에 대응하기 위한 해결책이 요구된다. 이러한 Wang의 연구는 'Wang, J., Wu, Q., Zheng, D., and Jia, Y., "Agent based Load Balancing Model for Service based Grid Applications," In proceedings of Computational Intelligence and Security (CIS'2006), pp487-491, Guangzhou, China, Nov. 3-6, 2006.'에 기재되어 있다.
Chawathe의 연구에서는 서비스 네트워크를 구성하여 확장성과 결함 회피를 제공하고 있다. 논문에서 제시하고 잇는 SNS(Scalable Network Services) 아키텍처는 중앙집중 형 관리자를 통해 부하분산과 노드 관리 그리고 결함에 대한 회피를 제공하고 있다. SNS에는 모든 노드를 관리하는 중앙관리자와 서비스의 기능을 수행하는 Worker, 그리고 Worker에 포함되어 있는 라이브러리로서 중앙관리자의 연결을 위한 Worker Driver으로 구성된다. 중앙관리자는 노드의 Worker Driver로 부터 노드가 부담하는 부하에 대한 데이터를 수집하고 부하분산에 대한 계획을 수립하고 수행한다. 부하의 증가는 중앙관리자로부터 유휴노드를 Worker으로 참여시킨다. SNS는 중앙집중 형 관리로 인해 모든 Worker의 상황을 파악하고, 구성된 네트워크에서 효과적인 부하분산 및 확장성향상을 도모 한다. 그러나, 중앙집중 형 구성은 병목현상을 유발하기 쉽다. 서비스 사용자의 요청이 모두 집중되고 Worker간의 상호작용 또한 중앙관리자를 통하기 때문에, 서비스 중계과정에서 지연발생의 소지가 높다. 이러한 Chawathe의 연구는 'Chawathe, Y. and Brewer, E. A., "System Support for Scalable and Fault Tolerant Internet Services," In proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing, pp 71-88, London, UK, Sep. 1-1, 2009.'에 기재되어 있다.
이와 같이 네트워크를 이용한 확장성 향상과 결함회피에 대한 많은 연구가 진행되었지만, 정적인 노드 관리와 서비스의 특성을 고려하지 못한 한계점이 존재한다.
상기와 같은 문제점을 해결하기 위한 것으로서,
본 발명의 과제는 기존의 하드웨어적인 기법의 문제점인 정적인 노드 관리의 한계를 극복하기 위한 전체 노드 및 서비스의 동적인 관리 방법 및 그 수단을 제공하는 데 있다.
또한 본 발명의 과제는 서비스 확장성뿐 아니라 서비스가 제공하는 전체 품질 속성을 보장하기 위한 방법 및 수단을 제공하는데 있다.
본 발명에 따른 클라우드 서비스의 확장성과 가용성을 향상시키는 방법은 다음과 같은 단계를 포함한다.
제1 단계에서는 관리서버에서 모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받는다.
제2 단계에서는 상기 관리서버가 수집된 정보를 이용하여 품질 관리 프로세스의 수행 여부를 판단한다.
제3 단계에서는 상기 관리서버가 품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 서비스 이주 프로세스 및 서비스 복제 프로세스 중 적어도 어느 하나의 서비스 품질 관리활동을 선정한다.
제4 단계에서는 상기 관리서버가 선정한 서비스 품질 관리활동을 수행시킨다.
또한 상기 서비스 품질 관리활동의 선정은 목적 스테이션 노드 및 대상 스테이션 노드의 선정을 포함할 수 있다.
또한 상기 제3 단계에서 서비스 품질 관리활동은 부하분산 테이블을 갱신하는 방법을 더 포함할 수 있다.
또한 상기 서비스 복제 프로세스의 수행은 다음의 단계를 포함할 수 있다.
제4a-1단계에서는 상기 관리서버가 상기 스테이션 노드로부터 전송된 리소스 정보를 참조하여 최대 가용 리소스를 구비한 스테이션 노드를 목적 스테이션 노드로 선정한다.
제4a-2단계에서는 상기 관리서버가 상기 목적 스테이션 노드의 정보를 서비스의 품질이 문제되는 대상 스테이션 노드에 전달한다.
제4a-3단계에서는 상기 대상 스테이션 노드가 상기 목적 스테이션 노드에 대상 서비스 중 가변 컴포넌트를 전송한다.
또한 상기 서비스 이주 프로세스의 수행은 다음의 단계를 포함할 수 있다.
제4b-1단계에서는 품질 관리 대상인 대상 스테이션 노드가 상기 가변적인 컴포넌트를 관리 서버에 전송한다.
제4b-2단계에서는 상기 대상 스테이션 노드가 전송된 컴포넌트가 속하는 서비스의 형상을 제거한다.
제4b-3단계에서는 상기 관리서버가 상기 대상 스테이션 노드로부터 전송된 리소스 정보를 참조하여 최대 가용 리소스를 구비한 스테이션 노드를 목적 스테이션 노드로 선정한다.
제4b-4단계에서는 상기 관리서버가 상기 목적 스테이션 노드에 상기 전송된 가변 컴포넌트를 전송한다.
나아가 상기 서비스 이주 또는 복제 프로세스 이후에 다음의 단계를 더 포함할 수 있다. 제5단계에서는 상기 목적 스테이션 노드가 전송된 가변 컴포넌트를 동적으로 설치하고 이용가능하도록 배치한다. 제6 단계에서는 목적 스테이션 노드가 상기 수행된 서비스 이주 또는 복제 프로세스의 수행 결과를 상기 관리서버에 전송한다.
더 나아가 상기 제5단계에서 클래스 로딩 기법을 이용하여 상기 가변적 컴포넌트를 동적으로 설치 및 배치할 수 있다.
한편, 상기 서비스 이주 또는 복제 프로세스 전과 후의 처리량을 비교하여 서비스 확장성을 측정하는 제7 단계를 더 포함할 수 있다.
또한 상기 가변적 컴포넌트는 서비스의 기능을 구현한 클래스들의 집합인 서비스 구현체와 서비스 인터페이스를 포함할 수 있다.
또한 제3 단계에서는 관리가 필요한 대상 스테이션 노드와 상기 스테이션 노드가 제공하는 서비스를 이용하는 모바일 노드 간의 물리적 거리가 먼 경우, 응답 시간이 긴 경우, 상기 대상 스테이션 노드의 트래픽이 증가하는 경우 및 대상 스테이션 노드의 리소스가 부족한 경우 중 적어도 어느 하나의 경우에 해당될 때 서비스 이주 프로세스를 선정할 수 있다.
또한 제3 단계에서는 관리 대상 스테이션 노드가 제공하는 서비스의 이용량이 급증하거나 서비스 품질(QoS)이 품질 저하 상태인 경우에 서비스 복제 프로세스를 선정할 수 있다.
복수의 모바일 노드와 서비스를 제공하는 스테이션 노드와 관리서버를 구비하는 클라우드 서비스 시스템에 있어서 본 발명에 따른 관리서버는 다음의 구성을 포함한다.
모니터링 수단은 모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받아 품질 관리 프로세스의 수행 여부를 판단한다.
품질관리계획 수립수단은 품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 서비스 이주 프로세스 및 서비스 복제 프로세스 중 적어도 어느 하나의 서비스 품질 관리활동을 선정한다.
품질관리활동 실행수단은 상기 품질관리계획 수립수단에 의하여 선정된 대상 노드, 서비스 품질 관리활동의 종류 및 목적 노드에 따라 품질관리 활동을 수행시킨다.
또한 상기 가변적 컴포넌트는 서비스의 기능을 구현한 클래스들의 집합인 서비스 구현체와 서비스 인터페이스를 포함할 수 있다.
한편, 복수의 모바일 노드와 서비스를 제공하는 스테이션 노드와 관리서버를 구비하는 클라우드 서비스 시스템에 있어서 본 발명에 따른 스테이션 노드는 다음의 구성을 포함한다. 품질정보 전송수단은 상기 스테이션 노드의 리소스 정보를 수집하여 상기 관리서버로 전송한다..
품질 제어수단은 상기 관리서버로부터 서비스 이주 프로세스 및 서비스 복제 프로세스 중 어느 하나의 수행명령과, 목적 목적 스테이션 노드에 관한 정보를 전달받아 품질관리활동을 수행한다.
나아가, 상기 품질 제어수단은 상기 관리서버로부터 서비스 이주 프로세스 수행 명령을 전송받는 경우 품질관리 대상 서비스 중 가변적 컴포넌트를 상기 관리서버로 전송할 수 있다.
다른 한편, 상기 품질 제어수단은 상기 관리서버로부터 서비스 복제 프로세스 수행 명령과 목적 스테이션 노드 정보를 전달받는 경우, 상기 목적 스테이션 노드에 상기 가변적 컴포넌트를 전송할 수 있다.
본 발명에 따르면, 전통적인 하드웨어적 기법이 아닌 소프트웨어 측면에서 서비스 확장성 향상 기법을 제안함으로써 동일한 자원 상황에서도 자원의 활용성을 높이고 결과적으로 서비스의 확장성을 향상시킨다.
또한 본 발명에 따르면 서비스 운영 중에 동적으로 새로운 노드를 추가하고 특정 노드에 서비스를 배치 운영하는 관리 방법을 제안함으로써 전통적인 기법의 문제점인 자원의 정적 추가, 즉 새로운 노드를 추가하기 위하여 서비스를 멈추어야 하는 한계를 극복할 수 있다.
또한 본 발명에 따르면 소비자의 서비스 요청을 관리서버에 등록된 각 노드에 효율적으로 분배함으로써 추가되는 자원에 대한 실제 확장성 향상 비율을 높인다.
즉, 본발명에 따른 서비스 확장성 관리 프레임워크와 방법을 통하여 서비스 시스템의 모든 자원을 동적으로 등록, 관리할 수 있으며, 부하량에 따라 새로운 서비스 호출을 동적 라우팅함으로써 서비스 시스템의 확장성을 극대화할 수 있다.
도 1은 클라우드 서비스 시스템의 서비스 품질(QoS) 관리 프로세스의 전체 흐름을 나타내는 순서도이다.
도 2는 본 발명의 일 실시예에 따른 클라우드 서비스 및 모바일 컴퓨팅 환경의 서비스 품질 관리 시스템의 모습을 나타내는 블록도이다.
도 3은 일 실시예에 따른 모바일 노드 에이전트의 모습을 나타내는 블록도이다.
도 4는 일 실시예에 따른 스테이션 노드 에이전트의 모습을 나타내는 블록도이다.
도 5는 일 실시예에 따른 관리서버의 모습을 나타내는 블록도이다.
도 6은 일 실시예 따른 서비스 수준 품질 및 형상 수준의 품질의 분류 상태를 나타내는 그래프이다.
도 7는 일 실시예에 따른 개념적 서비스 품질 관리활동을 나타내는 블록도이다.
도 8은 일 실시예에 따른 구체적 서비스 품질 관리활동을 나타내는 블록도이다.
도 9은 일 실시예에 따른 클라우드 서비스의 확장성 및 가용성을 향상시키는 방법의 전체 프로세스를 개략적으로 나타내는 순서도이다.
도 10은 일 실시예에 따른 서비스 복제 프로세스를 나타내는 순서도이다.
도 11은 일 실시예에 따른 서비스 이주 프로세스를 나타내는 순서도이다.
이하 첨부된 도면을 참조하여 본 발명의 실시예를 설명한다. 특별한 정의나 언급이 없는 경우에 본 설명에 사용하는 방향을 표시하는 용어는 도면에 표시된 상태를 기준으로 한다. 또한 각 실시예를 통하여 동일한 도면부호는 동일한 부재를 가리킨다.
한편, 이하에서 서비스 타입이라 함은 다수의 인스턴스를 포함하는 하나의 서비스 자체를 말하며, 형상이라 함은 전체 관리 대상이 되는 다수의 서비스 타입과 모바일 앱(어플리케이션)을 의미한다.
도 1에 클라우드 서비스 시스템의 서비스 품질(QoS) 관리 프로세스의 전체 흐름을 도시하였다. 서비스 품질 자율 관리 프로세스는 크게 형상의 품질을 평가하고, 품질관리의 필요성이 있는지 여부를 판단한다. 클라우드 서비스 시스템의 전체 품질과 각 서비스 유형별 품질, 각 유형별 서비스 인스턴스의 품질에 대한 분석을 수행하고, 서비스 품질 향상을 위한 활동 및 수행 계획을 수립한다. 수립된 품질 향상 계획에 따라 해당하는 노드 또는 관리 서버가 품질 활동향상 활동을 수행한다. 마지막으로 수행된 품질 향상 활동의 결과에 따라서 변경된 클라우드 서비스 시스템의 현재 구성을 관리서버에게 전달하고, 관리서버는 변경된 클라우드 서비스 시스템의 구조를 기반으로 품질 측정 활동을 수행한다. 본 발명은 이중에서도 특히 품질향상 활동의 계획을 수립과 품질향상 활동 수행에 주요 특징이 있다.
도 2를 참조하여 본 발명의 일 실시예에 따른 클라우드 서비스 및 모바일 컴퓨팅 환경의 서비스 품질 관리 시스템의 전체적인 모습을 설명한다. 도 2는 본 발명의 일 실시예에 따른 클라우드 서비스 및 모바일 컴퓨팅 환경의 서비스 품질 관리 시스템의 모습을 나타내는 블록도이다.
클라우드 서비스가 제공되는 네트워크(10) 상에는 관리서버(100), 모바일 노드(200) 및 스테이션 노드(300)가 구비된다. 모바일 노드(200)는 클라우드 서비스를 제공받는 노드를 의미하며, 클라우드 서비스를 이용하기 위한 서비스 앱(220)과 서비스 품질관리를 위한 모바일 노드 에이전트(210)를 구비한다. 스테이션 노드(300)는 클라우드 서비스를 제공하는 역할을 하는 구성으로서 서비스 제공을 위한 다수의 인스턴스가 포함된 서비스 제공 수단(320)과, 서비스 품질관리를 위한 스테이션 노드 에이전트(310)를 구비한다. 한편, 관리서버(100)는 모바일 노드(200) 및 스테이션 노드(300)를 포함한 전체 형상의 품질을 관리하기 위한 관리 매니저(110)와 각종 품질 데이터 등이 저장되는 데이터 저장부(130)를 구비한다. 이하에서는 구체적인 클라우드 서비스 및 모바일 컴퓨팅 환경의 서비스 품질 관리 방법을 해당 구성과 함께 설명한다.
도 3을 참조하여 본 발명의 일 실시예에 따른 모바일 노드 에이전트를 설명한다. 도 3은 일 실시예에 따른 모바일 노드 에이전트의 모습을 나타내는 블록도이다.
모바일 노드 에이전트(210)는 품질을 측정하기 위한 측정수단(211)을 구비한다. 모바일 노드 에이전트(210)의 측정수단(211)으로 리소스 측정수단(2111)과 응답시간 측정수단(2112)가 구비된다. 리소스 측정수단(2111)은 해당 노드 디바이스의 리소스 사용 상태를 측정한다. 리소스 측정수단은 해당 노드의 CPU 사용량, 메모리 사용량, 네트워크 대역폭, 배터리 량 등을 측정한다. 응답시간 측정수단(2112)은 서비스의 응답시간을 측정한다.
한편, 동적 모바일 생태계(DME)의 상태는 시스템의 품질을 의미하며 이를 측정하기 위한 품질 모델이 필요하다. 따라서 소프트웨어의 품질을 객관적이고 정량적으로 측정할 수 있고, 품질 모델의 표준으로 인정 받고 있는 ISO 9126[7]을 사용하여 모니터링 품질 모델을 결정한다.
본 발명에서는 일 실시예로서 성능과 밀접한 관련이 있는 효율성(Efficiency)을 품질 모델로 정하고, 소비시간(Time consumption)과 자원 효율성(Resource utilization) 속성을 정의한다. 특히 소비시간의 속성으로 응답시간(RT)을 선택하였다. 응답시간은 어플리케이션이 요구하는 서비스를 요청하는 시간부터 서비스 수행이 끝나고 결과를 어플리케이션으로 전송할 때 까지 소요되는 시간을 의미한다. 각 속성들의 메트릭은 아래의 표 1에 도시하였다. 자원 효율성으로는 CPU 사용량, 메모리 사용량, 배터리 량, 네트워크 대역폭이 있다.
<표 1>
Figure 112011099912006-pat00001
품질정보 전송수단(212)은 측정수단(211)으로부터 측정된 서비스 품질 정보와 리소스 정보를 주기적으로 관리서버(100)에 전송한다. 품질 제어수단(214)은 관리서버에서 수립된 품질관리 활동 계획에 따라 품질관리 활동의 수행을 중재하는 역할을 한다.
도 4를 참조하여 스테이션 노드 에이전트를 설명한다. 도 4는 일 실시예에 따른 스테이션 노드 에이전트의 모습을 나타내는 블록도이다.
스테이션 노드 에이전트(310)는 모바일 노드 에이전트와 유사한 기능을 한다. 다만, 서비스의 제공측에 속하기 때문에 응답시간을 측정할 필요가 없고, 리소스 측정수단(311)을 구비하여 해당 스테이션 노드의 리소스를 측정하게 된다. 이외 품질정보 전송수단(312) 및 품질 제어수단(314)은 앞서 설명한 모바일 노드 에이전트의 품질 정보 전송수단 및 품질 제어수단(314)과 유사한 역할을 하게 된다.
관리서버(100)에 대하여 설명한다. 관리서버(100)는 앞서 설명한 바와 같이 관리 매니저(110)와 데이터 저장부(130)를 구비한다. 관리 매니저(110)는 앞서 설명한 모바일 노드 에이전트와 스테이션 노드 에이전트로부터 서비스 품질 및 리소스 정보를 전달받아 품질을 평가하는 모니터링 수단(111)과 평가된 품질에 대응하여 품질관리 계획을 수립하고 이를 실행시키는 관리수단(112)을 구비한다.
도 5 및 도 6을 참조하여 모니터링 수단(111)에 대하여 설명한다. 도 5는 일 실시예에 따른 관리서버의 모습을 나타내는 블록도이고, 도 6은 일 실시예 따른 서비스 수준 품질 및 형상 수준의 품질의 분류 상태를 나타내는 그래프이다.
품질정보 수집수단(1111)은 모바일 노드 및 스테이션 노드로부터 서비스 품질 정보 및 리소스 상태 정보를 전달받는다.
품질 평가 수단(1112)은 모바일 노드로부터 전송된 서비스 품질 및 리소스 상태 정보로부터 서비스 인스턴스 수준의 품질, 서비스 타입 수준의 품질 및 형상 수준의 품질을 평가항목 별로 산출하고, 상기 산출된 서비스 타입 수준 품질과, 형상 수준의 품질을 평가하여 품질 관리 프로세스의 수행 여부를 판단한다.
품질 평가 항목은 서비스 인스턴스 수준의 효율성, 서비스 타입 수준의 효율성 및 전체 형상 수준의 효율성 세 가지로 세분화 될 수 있다.
예를들어 서비스 인스턴스 수준의 효율성은 응답 시간(RT) 속성과 처리량(TP) 속성으로 구분할 수 있다. 응답 시간(RT)의 속성을 갖는 평가 항목은 AVG_RTServiceInstance (Sj k)와 SD_RTServiceInstance(Sj k)이다. AVG_RTServiceInstance (Sj k)은 서비스 인스턴스가 기능을 수행하는데 걸린 평균 시간을 의미하며, SD_RTServiceInstance(Sj k)는 서비스 인스턴스가 기능을 수행하는데 걸린 표준 편차를 의미한다. RT 속성은 0 이상의 값을 갖게 되며 값이 높을수록 낮은 효율성을 나타낸다. 처리량의 속성을 갖는 평가 항목은 AVG_TPServiceInstance(Sj k)와, SD_TPServiceInstance (Sj k)가 있다. AVG_TPServiceInstance(Sj k)는 인스턴스가 주어진 시간 내 성공적으로 수행을 마친 기능 호출 평균을 의미하며, SD_TPServiceInstance (Sj k)는 인스턴스가 주어진 시간 내 성공적으로 수행을 마친 기능 호출 표준 편차를 의미한다. 처리량 속성은 0 내지 1의 값을 갖게 되며, 값이 높을수록 높은 효율성을 나타낸다.
다음으로 서비스 타입 수준의 효율성도 마찬가지로 응답시간과 처리량 속성으로 평가한다. 응답시간의 평가항목으로는 AVG_RTServiceType (Sj), SD_RTServiceType (Sj)가 있다. AVG_RTServiceType (Sj)는 서비스 타입을 구현한 모든 서비스 인스턴스의 응답시간의 평균을 의미하며, SD_RTServiceType (Sj)는 서비스 타입을 구현한 모든 서비스 인스턴스의 응답시간의 표준 편차를 의미한다. 처리량의 평가항목으로는 서비스 타입을 구현한 모든 서비스 인스턴스의 처리량의 평균을 의미하는 AVG_TPServiceType (Sj)와 서비스 타입을 구현한 모든 서비스 인스턴스의 처리량의 표준편차를 의미하는 SD_TPServiceType (Sj)가 있다. 각 항목이 갖게 되는 값과 그 효율적인 의미는 앞서 설명한 것과 동일하다.
전체 형상 수준의 효율성도 마찬가지로 응답시간 및 처리량의 속성에 따라 평가할 수 있다. 평가 항목으로는 현재 형상의 평균 응답 시간을 의미하는 AVG_RTME, 현재 형상 응답 시간의 표준 편차를 의미하는 SD_RTME, 현재 형상의 평균 기능 처리량을 의미하는 AVG_TPME 및 현재 형상 처리량에 대한 표준 편차를 의미하는 SD_TPME가 있다.
서비스 품질관리 계획수립에 앞서, 먼저 서비스 품질관리 계획에 따라 수행될 서비스 관리 활동의 종류 및 관리 프로세스의 수행 여부의 판단 방법에 대하여 설명한다.
서비스 품질관리 활동은 목적 및 품질 수준의 조합에 의하여 아래의 표 2에 도시된 바와 같이 총 4가지로 나눌 수 있다. 먼저 전체 형상 수준(quality of environment 수준, QoE 수준)에서의 품질 관리 활동으로서 서비스 품질(QoS) 향상 활동과 서비스 품질 안정화 활동이 있다. 다음으로는 서비스 품질 수준에서의 품질 관리 활동으로서 서비스 품질 향상 활동과 서비스 품질 안정화 활동이 있다.
<표 2. QoS 관리 활동의 종류>
Figure 112011099912006-pat00002
여기서 EnhanceEffSME()는 QoE 수준에서 품질 저하 상태인 경우에 수행되는 QoS 품질관리 활동으로서 QoS를 향상시키는데 목적이 있다. EnhanceEffServiceType()는 QoS 수준에서 품질 저하 상태인 경우에 수행되는 QoS 품질관리 활동으로서 QoS를 향상시키는데 목적이 있다. 또한 BalanceEffSME()는 QoE 수준에서 품질 과잉 상태인 경우에 수행되는 QoS 품질관리 활동으로서 QoS 안정화에 그 목적이 있다. 또한 BalanceEffservicetype()은 QoS 수준에서 품질 과잉 상태인 경우에 수행되는 QoS 품질 관리 활동으로서 QoS를 안정화 시키는데 목적이 있다. 예를 들어, EnhanceEffServiceType()은 문제가 되는 서비스 타입의 품질을 향상시키는 것을 목적으로 하며, 이는 해당 서비스 타입을 구현하는 서비스 인스턴스 중 일부 컴포넌트를 다른 노드로 복제하거나 이주 하는 것으로 구현될 수 있다. 이에 관하여는 이후 구체적으로 설명한다.
도 6을 참조하여 품질을 결정하는 방법에 대하여 설명한다. 서비스 타입과 전체 형상에 대한 실시간 품질 판단 기법은 다음과 같이 결정된다. 먼저 전체 형상 수준(quality of environment 수준, QoE 수준)에서의 실시간 품질 판단 기법은 사전에 사용자가 정의한 두 가지 임계치인 품질 최저 임계치와 품질 최고 임계치를 기반으로 다음의 3가지 형태, 즉 정상 상태(normal state), 품질 저하 상태(poor state) 및 품질 과잉 상태(exceeding state)로 정의한다. 정상 상태는 현재 품질이 정상 범위에 있어 어떠한 품질 향상 활동이 취해질 필요가 없는 상태를 의미한다. 품질 저하 상태는 현재 품질이 사용자가 사전에 정의한 품질 최저 임계치보다 낮아 품질이 저하되고 있음을 나타낸다. 이 경우에는 형상 재구성을 통하여 현재 품질을 향상시키는 활동을 수행하여야 한다. 품질 과잉 상태는 현재 품질이 사용자가 사전에 정의한 품질 최고 임계치보다 낮아 현재 품질이 지나치게 좋은 상태임을 암시한다. 이 중 일부 경우에는 자원 과다 사용으로 인해 품질이 과잉 상태에 속하게 되므로, 추가적인 검사를 통하여 자원이 낭비되고 있는지를 판단해야 한다. 한편, 전체 품질이 정상 범위 내에 있다고 하더라도, 일부 서비스는 품질 저하 상태에 있는 경우가 발생할 수 있다. 이런 문제를 해결하기 위하여, 모바일 환경에서는 품질 향상 필요성에 대한 판단을 QoE 수준 이외에도 서비스 타입 수준에서의 품질 평가를 병행한다.
전체 형상에 대한 품질 값인 AVG_RTME와AVG_TPME에 대한 최고 및 최저 임계치는 대부분 서비스 관리자에 의해 결정이 되며, 서비스 타입에 대한 품질 값인 AVG_RTServiceType (Ti)와 AVG_TPServiceType (Ti)에 대한 최고 및 최저 임계치는 서비스 제공자가 SLA에 기술한 값을 기반으로 결정된다. 즉, QoS 수준 품질 판단에서는 현재 형상을 구성하는 각 서비스 타입에 대한 품질을 서비스 수준 계약서 (Service Level Agreement, SLA)에서 명세된 임계치와 비교하여, 각 서비스 별 품질을 평가하게 된다. QoE 수준과 QoS 수준에서의 품질 판단은 앞서 설명한 바와 같이 모두 사전에 정의한 품질 모델인 응답시간 (RT와 관련된 메트릭)와 처리량(TP와 관련된 메트릭)을 이용하여 결정된다.
처리량과 응답시간 면에서 모두 문턱치(Threshold)값의 범위 내에 위치하는 영역(A1)에서는 품질이 양호한 것으로 판단할 수 있으며, 응답시간이 작고, 처리량이 많은 영역(A2)은 품질 과잉 상태로 판단할 수 있다. 또한 응답시간이 크고, 처리량이 적은 영역(A3)은 품질 부족 상태로 판단할 수 있다. A1 영역 주변의 영역(A4)은 추가적인 조사를 통하여 품질이 상태를 판별할 수 있다.
한편, 품질정보 표시수단(1113)은 각 노드로부터 전송된 데이터를 사용자가 이해하기 쉬운 형태의 사용자 인터페이스로 보여주며, 품질 형상 관리수단(1114)은 모니터링되고 수집된 품질 데이터를 저장하거나 요청에 따라 검색하는 역할을 한다.
도 5, 도 7 및 도 8을 참조하여 관리 수단(112)을 설명한다. 도 7는 일 실시예에 따른 개념적 서비스 품질 관리활동을 나타내는 블록도이고, 도 8은 일 실시예에 따른 구체적 서비스 품질 관리활동을 나타내는 블록도이다.
품질관리계획 수립수단(1121)은 품질 관리 프로세스의 수행이 결정된 서비스 타입 및 형상이 수행할 품질 관리 프로세스를 선정하고, 해당 프로세스의 대상 노드 및 목적 노드를 선정한다. 품질관리계획 수립수단(1121)은 개념적인 서비스 품질 관리 계획의 수립과 구체적인 서비스 품질 관리 계획의 두 단계의 과정을 통하여 품질관리계획을 수립하게 된다.
개념적인 품질관리계획 수립 단계에서는 도 7에 도시된 바와 같이 수행하여야 할 서비스 품질 관리 활동을 결정하게 된다. 이 때 서비스 품질 관리 활동은 하나 이상이 포함될 수 있다. 다음으로 복수의 서비스 품질 관리 활동이 포함된 경우에는 서비스 품질 관리활동 간의 순서를 정의한다.
구체적인 QoS 관리 계획 수립 단계에서는 도 8에 도시된 바와 같이 먼저 문제가 되는 서비스 타입 및 서비스 인스턴스를 결정하고, 다음으로 서비스 품질 관리활동의 구현 방법을 결정한다. 서비스 품질 관리활동의 구현 방법으로는 서비스 컴포넌트 이주, 서비스 컴포넌트 복제, 부하분산 테이블 갱신 등이 있다. 마지막으로 각 서비스 품질 관리활동의 구현에 필요한 목적 노드, 즉 목표 타켓을 결정하게 된다.
구체적으로 서비스 이주는 클라이언트와 서비스 간의 물리적 거리가 멀거나, 네트워크의 혼잡도과 같이 응답 시간이 늦어질 때, 다수의 서비스를 동시에 호출하거나 노드가 더 이상 서비스 적재를 감당하기 어렵거나 서비스를 제공하기에 노드 자원이 부족 현상이 일어날 때 효과적으로 적용된다. 서비스 복제는 서비스의 사용량이 급증했을 때, 사용자가 기대하는 SLA에 비해 QoS가 미치지 못했을 경우에 적용된다. 즉, 서비스 사용 빈도의 증가나 QoS 저하의 손실을 줄이기 위해 적용한다.
이러한 판단 기준을 속성에 따라 정리하여 아래의 표 3에 도시하였다.
<표 3; 서비스 컴포넌트 이주 및 복제의 결정 기준>
Figure 112011099912006-pat00003

문제가 되는 서비스가 배치되어 있었던 기존 노드 자체의 성능 또는 자원 상의 결함이 존재하지 않으면 최단경로 알고리즘을 이용하여 결정한 노드에 새롭게 서비스를 복제하고 그렇지 않으면 이주시킨다. 이런 과정을 통하여 새로운 형상 및 이를 구축하기 위한 계획을 수립한다. 위와 같이 서비스 컴포넌트 이주와 서비스 컴포넌트 복제는 현재 문제가 발생한 상황에 따라 결정이 된다.
개념적인 QoS 관리 계획 수립에서 결정된 QoS 관리 활동은 이하의 표 4 내지 표 7에 도시된 바와 같이 구체적인 절차로 실체화된다.
<표 4; EnhanceEffME( )의 실체(Realization) 기법>
Figure 112011099912006-pat00004
표 4을 참조하여 설명하면, 전체 형상 수준에서 QoS 품질을 향상시키기 위하여 순차적으로 각 서비스 타입에 대한 QoS 품질 향상 관리활동을 수행한다.
<표 5; EnhanceEffServiceType(Si)의 실체(Realization) 기법>
Figure 112011099912006-pat00005
한편, 각 서비스 타입 수준에서의 QoS 품질 향상 관리활동은 표 5에 도시된 바와 같이 각 인스턴스에 대하여 이주할 것인지 또는 복제할 것인지를 결정하고, 이후 목적 노드를 결정한 후 결정된 방법과 목적 노드에 따라 품질 관리활동을 수행한다.
<표 6; BalanceEffME( )의 실체(Realization) 기법>
Figure 112011099912006-pat00006
마찬가지로 표 6에 도시된 바와 같이 전체 형상 수준에서의 QoS 품질을 안정화 또는 균형화시키기 위하여 각 서비스 타입에 대하여 순차적으로 QoS 안정화를 수행하게 된다.
<표 7; BalanceEffServiceType(Si)의 실체(Realization) 기법>
Figure 112011099912006-pat00007
또한 각 서비스 타입 수준에서의 QoS 품질 안정화 관리활동은 표 7에 도시된 바와 같이 각 인스턴스에 대하여 이주할 것인지 또는 복제할 것인지를 결정하고, 이후 목적 노드를 결정한 후 결정된 방법과 목적 노드에 따라 품질 관리활동을 수행한다.
한편, 본 실시예에서는 서비스의 모든 컴포넌트가 포함된 바이너리 패키지 파일을 복제 또는 이주하는 것이 아니라, Open-Closed Principle(OCP)을 적용하여, 서비스 간의 공통 구조를 각 노드 에이전트가 유지하고 이를 이용하여 서비스들 간의 가변적인 부분 즉, 가변적 컴포넌트 만을 이주 및 복제한다. 클라우드 서비스의 기본적인 구조는 서비스 구현체와 서비스 인터페이스로 이루어진다. 서비스 구현체는 서비스가 제공하는 기능을 실제 구현한 클래스들의 집합이며, 서비스 인터페이스는 서비스가 제공하는 기능을 서비스 사용자에게 노출시키는 역할을 수행한다. 즉, 서비스 인터페이스를 통해 공개된 API를 통해 서비스 사용자는 실제 서비스 구현체에 접근이 가능하다. 이런 서비스 인터페이스와 서비스 구현체는 클라우드 서비스 종류에 따라 가변적이므로, 본 발명에서는 가변적인 서비스 구조로 분류한다. 클라우드 서비스의 공통적인 구조는 서비스 인터페이스의 추상 클래스와 서비스 어댑터, 통신 스텁으로 이루어진다. 서비스 인터페이스의 추상 클래스는 서비스의 실제 인터페이스에 대한 연결을 제공하며, 이를 기반으로 서비스의 사용자는 실제 서비스에 접근이 가능하게 된다. 서비스 어댑터는 동적 서비스 설치 및 배치를 가능하도록 하는 컴포넌트로서, 서비스의 가변적인 구조와 공통적인 구조를 연결하는 역할을 수행한다. 서비스 어댑터를 통해 서비스 구현체는 네트워크를 통한 호출이 가능한 상태가 되며, 서비스 사용자는 서비스 구현체에 구현된 서비스 기능을 호출할 수 있다. 즉, 본 실시예에서의 이주 및 복제의 대상인 가변적 컴포넌트는 이러한 서비스 인터페이스와 서비스 구현체를 의미한다. 이러한 방식은 최근 서비스의 크기가 커지는 추세에 비추어 전체 컴포넌트를 이주 또는 복제하는 방식에 비하여 효율적이다.
또한 이러한 가변적 컴포넌트는 각 노드에 구비된 서비스 공통 구조를 활용하여 클래스 로딩 기법을 적용함으로써 해당 스테이션 노드에 동적으로 배치할 수 있다.
품질관리활동 실행수단(1122)은 품질관리계획 수립수단(113)에 의하여 선정된 대상 노드, 품질 관리 프로세스 및 목적 노드에 따라 품질관리 활동을 실행, 즉 해당 노드에 품질관리계획에 관련된 실행 정보를 전달한다. 품질관리 활동 실행수단(1122)이 수행하는 품질관리 활동의 상세한 프로세스는 이하 각 프로세스의 설명 부분에서 상세히 설명한다.
형상관리 매니저(1123)는 이주 및 복제된 서비스를 포함하여 데이터 저장부(130)에 저장된 형상에 관한 데이터를 갱신한다.
이하에서는 본 발명의 일 실시예에 따른 클라우드 서비스의 확장성과 가용성을 향상시키는 방법에 대한 프로세스의 개요와, 구체적인 품질관리 방법에 대한 프로세스를 설명한다.
먼저 도 9를 참조하여 전체적인 프로세스의 개요에 대하여 설명한다. 도 9은 일 실시예에 따른 클라우드 서비스의 확장성 및 가용성을 향상시키는 방법의 전체 프로세스를 개략적으로 나타내는 순서도이다.
먼저, 관리서버에서 모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받는다(S10). 다음으로 관리서버가 수집된 정보를 이용하여 앞서 설명한 바와 같이 품질 관리 프로세스의 수행 여부를 판단한다.
다음으로 관리서버가 품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 품질 관리활동을 선정한다(S30). 이 때 품질 관리활동으로는 앞서 설명한 바와같이 서비스 이주 프로세스 및/또는 서비스 복제 프로세스를 선정할 수 있으며, 필요에 부하분산 테이블을 갱신하는 방법을 더 포함할 수 있다. 이어서 관리서버가 선정한 서비스 품질 관리활동을 수행시킨다(S50)
도 10을 참조하여 서비스 복제 프로세스(S42)를 설명한다. 도 10은 일 실시예에 따른 서비스 복제 프로세스를 나타내는 순서도이다.
먼저 제1 단계로서 후보 노드 검색 및 선택을 수행한다(S421). 즉, 관리 매니저가 스테이션 노드로부터 전달받은 리소스 정보를 참고하여 문제된 스테이션 노드로부터 해당 서비스를 설치 및 배치하기에 충분한 현재 가용 리소스를 구비한 노드를 검색한다. 검색된 대상 노드 중 가용한 리소스와 네트워크 대역폭을 기준으로 가장 높은 노드를 서비스 복제를 위한 목적 노드로 선택한다.
제2 단계로서 후보 노드 알림 단계를 수행한다(S422). 관리 매니저는 제1 단계에서 선택된 스테이션 노드에 대한 정보를 서비스 품질 문제가 발생한 스테이션 노드의 스테이션 노드 에이전트에 전달한다.
제3 단계로서 서비스 전송 단계를 수행한다(S423). 문제가 된 스테이션 노드의 스테이션 노드 에이전트가 관리 매니저로부터 해당 서비스를 전송할 목적 스테이션 노드에 대한 정보를 전달받고, 해당 서비스 중 가변적인 컴포넌트를 목적 스테이션 노드로 전송하게 된다.
제4 단계로서 서비스 동적 설치 및 배치 단계를 수행한다(S424). 서비스를 전달받은 스테이션 노드의 스테이션 노드 에이전트는 서비스 어댑터 컴포넌트를 이용하여 전달받은 서비스를 동적으로 설치하고, 네트워크를 통한 접근이 가능하도록 배치한다.
제5 단계로서 서비스 복제 결과 알림 단계를 수행한다(S425). 즉, 서비스 복제 활동이 완료되면, 목적 스테이션 노드의 스테이션 노드 에이전트는 관리서버의 관리 매니저에게 서비스 복제의 정상 수행 여부와 부수적인 정보 등 복제 활동의 결과를 전달한다.
제6 단계로서, 클라우드 서비스 구조 업데이트 단계를 수행한다(S426). 즉, 서비스 복제 활동의 결과로 변경된 전체 클라우드 서비스 구조를 업데이트한다. 업데이트된 정보는 새롭게 복제된 서비스에 대한 사용자 호출을 연결이 가능하도록 하며, 서비스 품질 관리를 위한 모니터링에 활용된다.
도 11을 참조하여 서비스 이주 프로세스(S43)를 설명한다. 도 11은 일 실시예에 따른 서비스 이주 프로세스를 나타내는 순서도이다.
제1 단계로서 서비스 전송 단계를 수행한다(S431). 서비스 품질 문제가 발생한 대상 스테이션 노드의 스테이션 노드 에이전트는 품질관리의 필요성이 있는 대상 서비스의 가변적인 컴포넌트를 관리 매니저에게 전송한다.
제2 단계로서 대상 서비스의 형상 제거 단계를 수행한다(S432). 이주되는 대상 서비스에 대한 형상을 해당 서비스를 제공하는 클라우드 서비스 시스템의 현재 형상으로부터 제거한다. 서비스 형상을 제거함으로써, 해당 서비스는 대상 스테이션 노드를 통하여 더이상 사용자에게 노출되지 않는다.
제3 단계로서 후보 노드 검색 및 선택 단계를 수행한다(S433). 현재 품질 문제가 발생한 대상 서비스를 이주하기 위해 대상 서비스를 설치 및 배치하기에 충분한 가용 컴퓨팅 리소스가 충분한 스테이션 노드를 검색한다. 검색된 스테이션 노드 중 가용한 리소스와 네트워크 대역폭을 기준으로 가장 높은 노드를 서비스 복제를 위한 목적 노드로 선택한다.
제4 단계로서 서비스 전달 단계를 수행한다(S434). 매니저는 선택된 목적 노드의 스테이션 노드 에이전트에 이주를 위하여 서비스를 전달한다.
제5 단계로서 서비스 동적 설치 및 배치 단계를 수행한다(S435). 서비스를 전달받은 목적 스테이션 노드 에이전트는 서비스 어댑터 컴포넌트를 이용하여 전달받은 서비스를 동적으로 설치하고, 네트워크를 통한 접근이 가능하도록 배치한다.
제6 단계로서 서비스 이주 결과 알림단계를 수행한다(S436). 서비스 이주 활동이 완료되면, 목적 스테이션 노드의 스테이션 노드 에이전트는 관리 매니저에게 서비스 이주 활동의 결과를 전달한다.
제7 단계로서 클라우드 서비스 구조 업데이트 단계를 수행한다(S437). 즉, 서비스 이주 활동의 결과로 변경된 전체 클라우드 서비스 구조를 업데이트한다. 업데이트된 정보는 새롭게 이주된 서비스에 대한 사용자 호출을 연결이 가능하도록 하며, 서비스 품질 관리를 위한 모니터링에 활용된다.
한편, 부하분산 테이블의 갱신은 기존의 별도로 구비된 부하분산용 노드에 구비된 부하분산 테이블을 갱신하여 하드웨어적으로 부하분산이 이루어지도록 하는 것이다. 이에 관하여는 구체적인 설명을 생략한다. 부하분산 테이블의 갱신은 필요에 따라 본 시스템에 구비되거나 생략될 수 있다. 즉, 본 발명의 경우 단순히 별도의 하드웨어 노드를 구비하여 부하분산을 수행하는 경우에는 관리 지역 설정 등을 수행하여야 하므로 관리 지역이 협소하다는 문제가 있으나, 본 발명의 경우와 같이 서비스 복제 및 이주를 병행하거나 서비스 복제 및 이주만을 이용하는 경우에는 인터넷 등 네트워크에 연결된 모든 노드에 대하여 관리가 가능한 장점이 있다.
서비스 확장성 측정 단계(S50)에서는 문제가 발생한 서비스에 대하여 본 발명에 따른 확장성 향상 기법을 적용하기 전과 후의 품질을 비교하여 해당 서비스의 확장성을 측정한다. 서비스 확장성은 하기 식 1과 같이 계산될 수 있다.
식(1):
Figure 112011099912006-pat00008
분모는 서비스 확장성 향상 기법을 적용하기 전의 문제가 발생한 서비스 처리량이다. 분자는 기법 적용 후에 측정된 처리량이다. 기법이 성공적으로 적용되면 서비스의 처리량이 증가하여 최소 품질을 만족해야 한다. 즉, 확장성이 1 이상의 값을 가져야 한다.
이상 본 발명의 바람직한 실시예에 대하여 설명하였으나, 본 발명의 기술적 사상이 상술한 바람직한 실시예에 한정되는 것은 아니며, 특허청구범위에 구체화된 본 발명의 기술적 사상을 벗어나지 않는 범주에서 다양한 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템으로 구현될 수 있다.
100: 관리서버 110: 관리 매니저
111: 모니터링 수단 1111:품질정보 수집수단
1112: 품질 평가 수단 1113: 품질정보 표시수단
1114: 품질형상 관리수단 112: 관리 수단(112)
1121:품질관리계획 수립수단 1122: 품질관리활동 실행수단
1123: 형상관리 매니저 130: 데이터 저장부
200: 모바일 노드 211: 측정수단
2111,311: 리소스 측정수단 2112: 응답시간 측정수단
212,312: 품질정보 전송수단 214,314: 품질 제어수단
300: 스테이션 노드 310: 스테이션 노드 에이전트

Claims (16)

  1. 관리서버에서 모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받는 제1 단계;
    상기 관리서버가 수집된 정보를 이용하여 품질 관리 프로세스의 수행 여부를 판단하는 제2 단계;
    상기 관리서버가 품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 서비스 이주 프로세스 및 서비스 복제 프로세스 중 적어도 어느 하나의 서비스 품질 관리활동을 선정하는 제3 단계; 및
    상기 관리서버가 선정한 서비스 품질 관리활동을 수행시키는 제4 단계;를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  2. 제1항에 있어서,
    상기 서비스 품질 관리활동의 선정은 목적 스테이션 노드 및 대상 스테이션 노드의 선정을 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  3. 제1항에 있어서,
    상기 제3 단계에서 서비스 품질 관리활동은 부하분산 테이블을 갱신하는 방법을 더 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  4. 제1항에 있어서,
    상기 서비스 복제 프로세스의 수행은,
    상기 관리서버가 상기 스테이션 노드로부터 전송된 리소스 정보를 참조하여 최대 가용 리소스를 구비한 스테이션 노드를 목적 스테이션 노드로 선정하는 제4a-1단계;
    상기 관리서버가 상기 목적 스테이션 노드의 정보를 서비스의 품질이 문제되는 대상 스테이션 노드에 전달하는 제4a-2단계;
    상기 대상 스테이션 노드가 상기 목적 스테이션 노드에 대상 서비스 중 가변적 컴포넌트를 전송하는 제4a-3단계;를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  5. 제1항에 있어서,
    상기 서비스 이주 프로세스의 수행은,
    품질 관리 대상인 대상 스테이션 노드가 상기 가변적 컴포넌트를 관리 서버에 전송하는 제4b-1단계;
    상기 대상 스테이션 노드가 전송된 컴포넌트가 속하는 서비스의 형상을 제거하는 제4b-2단계;
    상기 관리서버가 상기 대상 스테이션 노드로부터 전송된 리소스 정보를 참조하여 최대 가용 리소스를 구비한 스테이션 노드를 목적 스테이션 노드로 선정하는 제4b-3단계;
    상기 관리서버가 상기 목적 스테이션 노드에 상기 전송된 가변적 컴포넌트를 전송하는 제4b-4단계;를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  6. 제4항 또는 제5항에 있어서,
    상기 서비스 이주 또는 복제 프로세스 이후에 상기 목적 스테이션 노드가 전송된 가변적 컴포넌트를 동적으로 설치하고 이용가능하도록 배치하는 제5단계; 및
    목적 스테이션 노드가 상기 수행된 서비스 이주 또는 복제 프로세스의 수행 결과를 상기 관리서버에 전송하는 제6단계;을 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  7. 청구항 7은(는) 설정등록료 납부시 포기되었습니다.
    제6항에 있어서,
    상기 제5단계에서 클래스 로딩 기법을 이용하여 상기 가변적 컴포넌트를 동적으로 설치 및 배치하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  8. 제6항에 있어서,
    상기 서비스 이주 또는 복제 프로세스 전과 후의 처리량을 비교하여 서비스 확장성을 측정하는 제7 단계를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  9. 제1항에 있어서,
    상기 가변적 컴포넌트는 서비스의 기능을 구현한 클래스들의 집합인 서비스 구현체와 서비스 인터페이스를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  10. 제1항에 있어서,
    제3 단계에서는 관리가 필요한 대상 스테이션 노드와 상기 스테이션 노드가 제공하는 서비스를 이용하는 모바일 노드 간의 물리적 거리가 먼 경우, 응답 시간이 긴 경우, 상기 대상 스테이션 노드의 트래픽이 증가하는 경우 및 대상 스테이션 노드의 리소스가 부족한 경우 중 적어도 어느 하나의 경우에 해당될 때 서비스 이주 프로세스를 선정하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  11. 제1항에 있어서,
    제3 단계에서는 관리 대상 스테이션 노드가 제공하는 서비스의 이용량이 급증하거나 서비스 품질(QoS)이 품질 저하 상태인 경우에 서비스 복제 프로세스를 선정하는 클라우드 서비스의 확장성과 가용성을 향상시키는 방법.
  12. 복수의 모바일 노드와 서비스를 제공하는 스테이션 노드와 관리서버를 구비하는 클라우드 서비스 시스템에 있어서,
    모바일 노드의 서비스 품질 및 리소스 정보와, 스테이션 노드의 리소스 정보를 전송받아 품질 관리 프로세스의 수행 여부를 판단하는 모니터링 수단;
    품질 관리 프로세스의 수행이 결정된 대상 서비스 중 가변적 컴포넌트에 대하여 수행할 서비스 이주 프로세스 및 서비스 복제 프로세스 중 적어도 어느 하나의 서비스 품질 관리활동을 선정하는 품질관리계획 수립수단: 및
    상기 품질관리계획 수립수단에 의하여 선정된 대상 노드, 서비스 품질 관리활동의 종류 및 목적 노드에 따라 품질관리 활동을 수행시키는 품질관리활동 실행수단:을 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 관리서버.
  13. 제12항에 있어서,
    상기 가변적 컴포넌트는 서비스의 기능을 구현한 클래스들의 집합인 서비스 구현체와 서비스 인터페이스를 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 관리서버.
  14. 복수의 모바일 노드와 서비스를 제공하는 스테이션 노드와 관리서버를 구비하는 클라우드 서비스 시스템에 있어서,
    상기 스테이션 노드의 리소스 정보를 수집하여 상기 관리서버로 전송하는 품질정보 전송수단; 및
    상기 관리서버로부터 서비스 이주 프로세스 및 서비스 복제 프로세스 중 어느 하나의 수행명령과, 목적 목적 스테이션 노드에 관한 정보를 전달받아 품질관리활동을 수행하는 품질 제어수단;을 포함하는 클라우드 서비스의 확장성과 가용성을 향상시키는 스테이션 노드.
  15. 제14항에 있어서,
    상기 품질 제어수단은,
    상기 관리서버로부터 서비스 이주 프로세스 수행 명령을 전송받는 경우 품질관리 대상 서비스 중 가변적 컴포넌트를 상기 관리서버로 전송하는 클라우드 서비스의 확장성과 가용성을 향상시키는 스테이션 노드.
  16. 제14항에 있어서,
    상기 품질 제어수단은,
    상기 관리서버로부터 서비스 복제 프로세스 수행 명령과 목적 스테이션 노드 정보를 전달받는 경우, 상기 목적 스테이션 노드에 가변적 컴포넌트를 전송하는 클라우드 서비스의 확장성과 가용성을 향상시키는 스테이션 노드.
KR1020110135656A 2011-12-15 2011-12-15 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템 KR101256918B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110135656A KR101256918B1 (ko) 2011-12-15 2011-12-15 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110135656A KR101256918B1 (ko) 2011-12-15 2011-12-15 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR101256918B1 true KR101256918B1 (ko) 2013-04-25

Family

ID=48443586

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110135656A KR101256918B1 (ko) 2011-12-15 2011-12-15 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템

Country Status (1)

Country Link
KR (1) KR101256918B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101521440B1 (ko) * 2013-12-16 2015-06-26 대한민국 클라이언트 기반의 서버 관리장치와 방법
KR20160073892A (ko) * 2014-12-17 2016-06-27 (주)에임투지 사용자 서비스 품질 기반 클라우드 오토 스케일링 장치 및 그 방법
KR20180102386A (ko) * 2017-03-07 2018-09-17 한국전자통신연구원 스트리밍 서비스의 성능 확장 방법 및 이를 위한 장치
KR20210046251A (ko) * 2019-10-18 2021-04-28 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
KR20220054154A (ko) * 2020-10-23 2022-05-02 숭실대학교산학협력단 쿠버네티스를 기반으로 하는 데이터 분석 오토 스케일링 시스템
KR20220055627A (ko) * 2020-10-27 2022-05-04 한국과학기술정보연구원 인공 지능 학습을 위한 컴퓨팅 환경 구축 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162591A (ja) 2001-11-28 2003-06-06 Nec Corp 通信のサービス品質保証方法およびシステム
KR100848504B1 (ko) 2006-12-13 2008-07-28 에스케이 텔레콤주식회사 법인호에 대한 무선 인터넷 데이터 서비스의 품질을측정하는 방법과 그를 수행하는 서버 및 시스템
JP2009246526A (ja) 2008-03-28 2009-10-22 Fujitsu Ltd 無線通信システム、無線基地局装置、無線移動端末装置、マルチサービス管理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162591A (ja) 2001-11-28 2003-06-06 Nec Corp 通信のサービス品質保証方法およびシステム
KR100848504B1 (ko) 2006-12-13 2008-07-28 에스케이 텔레콤주식회사 법인호에 대한 무선 인터넷 데이터 서비스의 품질을측정하는 방법과 그를 수행하는 서버 및 시스템
JP2009246526A (ja) 2008-03-28 2009-10-22 Fujitsu Ltd 無線通信システム、無線基地局装置、無線移動端末装置、マルチサービス管理装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101521440B1 (ko) * 2013-12-16 2015-06-26 대한민국 클라이언트 기반의 서버 관리장치와 방법
KR20160073892A (ko) * 2014-12-17 2016-06-27 (주)에임투지 사용자 서비스 품질 기반 클라우드 오토 스케일링 장치 및 그 방법
KR101686658B1 (ko) * 2014-12-17 2016-12-14 (주)에임투지 사용자 서비스 품질 기반 클라우드 오토 스케일링 장치 및 그 방법
KR20180102386A (ko) * 2017-03-07 2018-09-17 한국전자통신연구원 스트리밍 서비스의 성능 확장 방법 및 이를 위한 장치
KR102013579B1 (ko) * 2017-03-07 2019-08-23 한국전자통신연구원 스트리밍 서비스의 성능 확장 방법 및 이를 위한 장치
KR20210046251A (ko) * 2019-10-18 2021-04-28 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
KR102248443B1 (ko) * 2019-10-18 2021-05-04 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
KR20220054154A (ko) * 2020-10-23 2022-05-02 숭실대학교산학협력단 쿠버네티스를 기반으로 하는 데이터 분석 오토 스케일링 시스템
KR102496674B1 (ko) 2020-10-23 2023-02-07 숭실대학교 산학협력단 쿠버네티스를 기반으로 하는 데이터 분석 오토 스케일링 시스템
KR20220055627A (ko) * 2020-10-27 2022-05-04 한국과학기술정보연구원 인공 지능 학습을 위한 컴퓨팅 환경 구축 방법 및 장치
KR102481870B1 (ko) * 2020-10-27 2022-12-28 한국과학기술정보연구원 인공 지능 학습을 위한 컴퓨팅 환경 구축 방법 및 장치

Similar Documents

Publication Publication Date Title
US10810050B2 (en) Virtual systems management
CN113448721A (zh) 算力处理的网络***及算力处理方法
KR101256918B1 (ko) 클라우드 서비스의 확장성과 가용성을 향상시키는 방법 및 그 시스템
US9929918B2 (en) Profile-based SLA guarantees under workload migration in a distributed cloud
Balasangameshwara et al. A hybrid policy for fault tolerant load balancing in grid computing environments
US20130219043A1 (en) Method and apparatus for automatic migration of application service
US10289441B1 (en) Intelligent scale-out federated restore
US20160216994A1 (en) Method, system, computer program and computer program product for monitoring data packet flows between virtual machines, vms, within a data centre
CN113709048A (zh) 一种路由信息的发送、接收方法、网元及节点设备
Hiessl et al. Optimal placement of stream processing operators in the fog
US20150263979A1 (en) Method and apparatus for a highly scalable, multi-cloud service deployment, orchestration and delivery
US20150263906A1 (en) Method and apparatus for ensuring application and network service performance in an automated manner
US9934059B2 (en) Flow migration between virtual network appliances in a cloud computing network
WO2013104217A1 (zh) 基于云基础设施的针对应用***维护部署的管理***和方法
US20160156567A1 (en) Allocation method of a computer resource and computer system
JP5740652B2 (ja) 計算機システム及びサブシステム管理方法
KR101256916B1 (ko) 클라우드 서비스 및 모바일 컴퓨팅 환경의 서비스 품질 관리 방법 및 그 시스템
Aldwyan et al. Elastic deployment of container clusters across geographically distributed cloud data centers for web applications
Herlicq et al. Nextgenemo: an efficient provisioning of edge-native applications
Burakowski et al. Traffic Management for Cloud Federation.
El-Zoghdy et al. A threshold-based load balancing algorithm for grid computing systems
Diouani et al. An Adaptive Autonomic Framework for Optimizing Energy Consumption in the Cloud Data Centers.
JP6502783B2 (ja) 一括管理システム、一括管理方法およびプログラム
Asensio et al. Carrier SDN to control flexgrid-based inter-datacenter connectivity
WO2023218664A1 (ja) リプレースシステム及びリプレース方法

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: 20170410

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180409

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190516

Year of fee payment: 7