KR100458789B1 - 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템 - Google Patents

분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템 Download PDF

Info

Publication number
KR100458789B1
KR100458789B1 KR10-2002-0014772A KR20020014772A KR100458789B1 KR 100458789 B1 KR100458789 B1 KR 100458789B1 KR 20020014772 A KR20020014772 A KR 20020014772A KR 100458789 B1 KR100458789 B1 KR 100458789B1
Authority
KR
South Korea
Prior art keywords
information processor
contribution
measuring
distributed computing
measurement
Prior art date
Application number
KR10-2002-0014772A
Other languages
English (en)
Other versions
KR20020048318A (ko
Inventor
문의선
하유종
성현중
한봉우
김형호
Original Assignee
주.피어링포탈
문의선
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주.피어링포탈, 문의선 filed Critical 주.피어링포탈
Priority to KR10-2002-0014772A priority Critical patent/KR100458789B1/ko
Publication of KR20020048318A publication Critical patent/KR20020048318A/ko
Application granted granted Critical
Publication of KR100458789B1 publication Critical patent/KR100458789B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17318Parallel communications techniques, e.g. gather, scatter, reduce, roadcast, multicast, all to all

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Abstract

분산컴퓨팅은 대용량의 처리능력을 지닌 정보처리장치를 이용하지 않고 전자회로망 상에 산재해 있는 수많은 정보처리장치를 활용하여 대량의 처리능력을 이끌어 내는 방법이다. 본 발명은 분산컴퓨팅에 사용된 각 정보처리장치가 분산컴퓨팅에 사용된 정도를 측정하여 객관적이고 합리적으로 기여도를 측정하는 기여도 측정 방법 및 기여도 측정 시스템에 관한 것이다. 본 발명을 이용하여 각 정보처리장치가 분산컴퓨팅에 사용된 것에 대해 보상할 수 있는 공평한 기준을 마련할 수 있으므로, 정보처리장치의 소유자들이 적극적으로 분산컴퓨팅에 참여토록 하는 동기를 부여하여, 분산컴퓨팅에 활용할 수 있는 정보처리기의 자원을 보다 안정적으로 확보할 수 있다. 본 발명의 방법 및 장치는 종래의 통신시스템, 인터넷 등 임의의 전자회로망에 적용된다.

Description

분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템{A METHOD OF MEASURING CONTRIBUTION OF DATA PROCESSING UNITS AND A SYSTEM THEREOF}
본 발명은 전자회로망 상에 산재하고 있는 각종 정보처리장치의 유휴자원을 대용량의 처리능력을 필요로 하는 응용분야에 사용하는 분산컴퓨팅에 이용함에 있어서, 각 정보처리장치가 분산컴퓨팅에 대해 기여한 정도를 측정하는 방법 및 상기 방법에 따라 기여도를 측정하는 시스템에 관한 것이다.
컴퓨터라고 통칭되는 정보처리장치는 실생활의 거의 모든 분야에서 사용되고 있다. 간단한 구조와 처리능력이 작은 휴대전화 단말기나 PDA와 같은 정보처리장치로부터 일기예보, 국방, 모의실험 등의 목적에 활용되는 슈퍼컴퓨터와 같은 대용량의 처리능력을 가진 정보처리장치까지 그 형태와 기능과 용도는 매우 다양하다. 기존의 업무를 정보처리장치를 이용하여 처리하고자 할 때, 사용될 정보처리장치의 선택은 일반적으로 사용 용도와 응용 분야의 요구사항 등을 기초로 하여 결정된다. 즉, 처리할 업무의 양이 많거나 신속성을 요하거나 정밀성을 요구하는 등 요구사항이 고도화 될수록 더 높은 처리용량을 지닌 고가의 정보처리장치를 필요로 하게 된다. 국가방위나 일기예보 분야에서와 같이 공공의 목적을 위한 분야, 혹은 정보처리장치 구입에 소요되는 비용을 상회하는 경비를 절감할 수 있는 분야 혹은 정보처리장치 구입에 소요되는 비용을 상회하는 이익을 발생시킬 수 있는 분야 등은 막대한 비용을 부담하면서 요구사항을 만족할 수 있는 수준의 처리능력을 지닌 정보처리장치를 도입한다. 반면에 그렇지 않은 분야에서는 비용의 문제로 인해 필요한 처리능력을 갖춘 정보처리기를 도입하는데 어려움을 겪고 있으며, 요구수준에 미달하는 처리능력을 지닌 정보처리장치를 이용하는 경우에는 정보를 처리하는데 더 많은 시간을 소모하거나 정밀성이 떨어지는 등의 문제점을 드러내기도 한다.
이와 같은 배경에서 고안된 것이 인터넷 기반의 분산컴퓨팅 기술이다. 인터넷 상에는 수많은 정보처리장치들이 연결되어 있고, 이들 대부분의 정보처리장치들은 매우 긴 기간 동안 아무런 작업도 하지 않고 있다는 점에 착안하여, 대용량의 처리능력을 필요로 하는 작업을 작게 분할하여(이하 "세부작업") 아무 작업도 수행하지 않고 있는 상태(이하 "유휴상태")의 정보처리장치로 하여금 분담하여 처리하도록 하는 것이 분산컴퓨팅 기술이다. 즉, 전체 작업을 작게 분할하여 여러 대의 정보처리기가 분담 처리하도록 함으로써, 전체적으로는 대용량의 처리능력을 얻게 된다.
이와 같은 분산컴퓨팅의 특성상 분산컴퓨팅에 의해 도출되는 전체적인 처리능력은 분산컴퓨팅에 사용된 정보처리기의 수와 각 정보처리기의 처리능력과 각 정보처리기의 실제 기여도에 크게 좌우된다. 따라서 분산컴퓨팅을 이용하여 대용량의처리능력을 얻기 위해서는 사용할 수 있는 정보처리기를 많이 확보해야만 한다. 인터넷을 이용한 비즈니스를 수행하는 많은 업체들에서도 이와 비슷한 특성이 나타난다. 인터넷 비즈니스 업체들의 수익은 회원의 수나 사용자의 수에 따라 크게 좌우된다. 따라서, 이들 업체들은 수익성을 높이기 위해 실제의 화폐나 마일리지와 같이 가상의 가치를 가진 가상 화폐로 보상을 함으로써 회원과 사용자를 유도하는 방법을 사용하고 있다.
분산컴퓨팅에서도 마찬가지로 분산컴퓨팅에 사용된 정보처리기에 대해 보상을 함으로써 분산컴퓨팅에의 참여를 촉진하여 더 많은 수의 정보처리기를 활용할 수 있고, 사용할 수 있는 정보처리기의 수가 증가함에 따라 분산컴퓨팅에서 얻을 수 있는 전체 처리능력의 향상을 기대할 수 있고, 정보처리기의 수가 많아질수록 안정적이고 지속적으로 정보처리기를 사용할 수 있다. 이와 같은 효과를 위해서는 사용된 정보처리기에 대한 보상이 공평하고 합리적이어야만 한다. 그러나 현재까지는 사용자들로 하여금 무상으로 자신의 정보처리기를 분산컴퓨팅에 사용할 수 있도록 동의하는 것을 전제로 하고 있으므로 각 정보처리기가 분산컴퓨팅에 기여한 정도를 측정하는 방법과 그 장치가 매우 초보적인 수준에 머물러 있으며, 기여도를 측정하는 목적 또한 보상을 위한 것이 아니다. 따라서 각 정보처리기가 분산컴퓨팅에 참여한 정도와 분산컴퓨팅이 수행하는 전체 작업에 기여한 정도를 정확하게 측정하는 장치가 필요하다.
본 발명은 분산컴퓨팅에 사용된 각 정보처리기의 기여도, 즉 각 정보처리기가 분산컴퓨팅에 사용된 정도 또는 정보처리기가 분산컴퓨팅이 수행하는 전체 작업에 기여한 정도를 측정할 수 있는 기여도 측정 방법 및 기여도 측정 시스템을 제공하는 것을 목적으로 한다.또한, 본 발명은 다수의 구성요소(이하 "자원")로 이루어진 정보처리기에 대해, 분산컴퓨팅에 상기 각 자원이 사용된 정도를 고려하여 기여도를 평가할 수 있는 기여도 측정 방법 및 기여도 측정 시스템을 제공하는 것을 목적으로 한다.
도 1은 본 발명의 일실시예에 따른 기여도 측정 방법 및 기여도 측정 시스템에 사용되는 정보처리기(분산컴퓨팅의 세부작업을 분담하는 정보처리기)의 구조에 대한 블록도.
도 2는 분산컴퓨팅이 운용되는 물리적인 환경에 대한 예시도.
도 3은 분산컴퓨팅을 수행하는 각 기능별 모듈간의 관계를 도시한 도면.도 4는 본 발명의 일실시예에 따른 기여도 측정 시스템에 있어서의 기여도 측정 시스템에 있어서의 기능별 모듈간의 관계도를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 정보처리기의 연산장치, 기억장치 및 네트워크 인터페이스가 분산컴퓨팅에 의해 사용된 정도를 측정하는 방법을 도시한 흐름도.
도 6은 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 저장장치에 분산컴퓨팅을 위한 데이터가 저장되는 시점에서의 처리방법을 도시한 흐름도.
도 7은 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 저장장치로부터 분산컴퓨팅을 위한 데이터가 축출되는 시점에서의 처리방법을 도시한 흐름도.
도 8은 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 정보처리기의 저장장치가 분산컴퓨팅에 의해 사용된 정도를 서버에 보고하는 방법을 도시한 흐름도.
도 9는 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 정보처리기가 수행한 세부작업의 결과와 측정모듈이 측정한 결과를 수신하여 통계 처리하는 방법을 도시한 흐름도.
도 10은 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 정보처리기가 수행한 세부작업의 수에 따라 기여도를 측정하는 방법을 도시한 흐름도.
도 11은 본 발명의 일실시예에 따른 기여도 측정 방법에 따라 정보처리기에 클라이언트 모듈을 설치하는 방법과 이때 정보처리기 식별자를 할당받는 방법을 도시한 흐름도.
분산컴퓨팅을 위해 정보처리기가 사용된 정도를 측정하고자 하는 경우, 정보처리기는 분산컴퓨팅을 관리하는 서버와는 원격지에 존재하므로, 각 정보처리기(또는, 정보처리기에 장착된 자원)가 분산컴퓨팅에 사용되는 것을 감시해야 한다. 즉, 측정된 결과를 관리, 분석, 이용하는 주체와 측정되는 대상이 공간적으로 분리되어 있으며, 이들은 전자회로망을 통해 연결되어 있다. 따라서 정보처리기의 기여도를 측정하고자 하는 주체는 전자회로망을 통해 연결된 원격지 정보처리기의 자원 사용 여부를 감시해야 한다.분산컴퓨팅이 작업을 수행하는 과정은 분산컴퓨팅 서버가 수행될 전체 작업을 세부작업으로 분할하고, 각 정보처리기는 분산컴퓨팅 서버로부터 세부작업을 하나씩 수신하여 실행한 다음에, 세부작업의 수행이 완료되면 그 결과를 분산컴퓨팅 서버로 전송하는 절차로 진행된다. 각 정보처리기가 세부작업을 수행하는 도중에 잠시 중지해야 하는 상황이 발생할 수 있는데, 이때는 세부작업의 수행을 멈추고 중단된 세부작업을 재개할 수 있는 상황이 될 때까지 대기한다. 세부작업의 수행이 정지된 기간에는 분산컴퓨팅에 의해 사용되지 않는 자원이 발생하므로 이를 반영해야 한다.정보처리기가 분산컴퓨팅에 의해 사용된 정도 만으로는 기여도가 합리적으로 측정되지 않는다. 그 이유는 정보처리기가 수행한 작업의 결과가 분산컴퓨팅 전체의 작업에 기여하지 않는 경우가 발생하기 때문이다. 따라서 각 정보처리기가 수행한 작업결과가 분산컴퓨팅 전체의 작업에 기여하는 여부를 반영해야 한다.이하, 본 발명의 일실시예에 따른 기여도 측정 방법 및 기여도 측정 시스템에 대해 설명한다.도 1은 본 실시예에 따른 기여도 측정 방법 및 측정 시스템에서 사용될 수 있는 정보처리기(100)의 구성을 도시한 도면이다. 정보처리기(100)는 사용자로부터 입력을 받아들이는 입력 장치(12)와, 정보처리의 결과를 사용자에게 표현하기 위한 출력 장치(11)와, 프로그램된 명령을 수행하여 정보를 처리하는 연산장치(10)와, 수행할 프로그램이나 처리할 정보를 장기적으로 보관하는 저장장치(14)와, 연산장치가 프로그램된 명령을 수행하기 위하여 프로그램과 정보를 저장하는 기억장치(15)와 다른 정보처리기와 통신하기 위한 네트워크 인터페이스(13)로 구성된다.이들은 정보처리기(100)를 구성하는 자원으로서 분산컴퓨팅에 의해 사용된 정도를 측정하는 대상이 될 수 있다. 그러나, 대부분의 경우에는 입출력에 관계되는 자원은 분산컴퓨팅과 무관하므로 본 실시예에서는 연산장치(10), 저장장치(14), 기억장치(15), 네트워크 인터페이스(13)에 해당하는 자원을 측정의 대상으로 한다.
도 2는 분산컴퓨팅이 운용되는 물리적인 환경을 예시한 것이다. 서버(99)는 분산컴퓨팅 전체의 작업을 주관하는 일을 담당한다. 서버(99)는 분산 컴퓨팅을 수행할 정보 처리기를 결정하고, 작업을 분할하여 각 정보처리기가 할당하여 수행하도록 하고, 정보처리기가 수행한 세부작업의 결과를 취합하는 등의 전체적인 제어와 통제를 수행한다. 각 정보처리기(110, 111, 112, 113, 114)는 서버로부터 세부작업과 처리할 정보를 수신하여 지정된 작업을 자체적으로 수행하고 그 결과를 다시 서버로 전송한다. 정보처리기와 서버는 전자회로망을 통해 상호 연결되어 통신한다.
도 3은 분산컴퓨팅을 수행하는 각 기능별 모듈간의 상관관계를 예시한 것이다. 주모듈(81), 전송모듈(82), 관리모듈(83), 관리 데이터베이스(84) 등 4개 모듈은 도 2에 나타난 서버(99)측에서 수행되는 모듈이며, 클라이언트 모듈(85)은 도 2에 나타난 정보처리기(100) 측에서 수행되는 모듈이다.
주모듈(81)은 분산컴퓨팅이 수행할 전체 작업을 관리하고, 분할된 세부 작업을 스케줄링하고, 처리될 데이터를 관리하고, 세부작업을 수행할 정보처리기에 대한 관리(세부작업을 수행할 정보처리기를 선정하고 각 세부작업을 상기 정보처리기에 지정하는 것이 포함됨)를 담당하고, 수행 결과에 발생한 결함을 관리하고, 인증과 보안을 관리하고, 분산컴퓨팅에 참여하는 각 정보처리기의 계정을 관리한다.
전송모듈(82)은 서버(99)와 정보처리기(100) 사이의 데이터를 전송하기 위한 모듈로서, 주모듈(81)에 의해 결정된 작업을 정보처리기(100)에 전송하고 상기 정보처리기(100)가 처리한 작업 결과 및 관련 정보를 수신한다. 본 발명의 또 다른 실시예에 따르면, 전송모듈(82)은 서버(99)와 정보처리기(100) 간에 발생하는 전송을 효율적으로 처리하기 위한 캐싱 서비스를 제공하고, 트랜잭션을 관리할 수도 있다.
관리모듈(83)은 전체 시스템의 안정성과 통계관리를 목적으로 하여 사용자의 계정을 관리하고, 서버의 자원에 대한 관리를 수행하고, 수행과정에서 수집되는 각종 정보에 대한 통계관리를 한다.
관리 데이터베이스(84)는 사용자 정보, 분산컴퓨팅이 수행하는 작업에 대한 정보, 처리할 데이터에 대한 정보, 정보처리기(100)로부터 전송 모듈(82)를 통해 전송된 작업 처리 결과에 대한 정보, 각종 통계에 대한 정보 등을 저장한다.
클라이언트 모듈(85)은 세부 작업을 수행할 정보처리기의 자원을 감시하여 분산컴퓨팅에서 할당된 세부 작업을 시작할 시점을 파악하고, 할당된 작업을 주어진 데이터를 대상으로 수행하는 기능을 수행한다. 본 발명은 분산컴퓨팅이 동작하는 세부적인 방식과는 독립적이므로 분산컴퓨팅의 자세한 동작방식에 대해서는 생략한다.
도 4는 본 발명에 따른 기여도 측정 방법 및 상기 기여도 측정 방법을 수행하기 위한 시스템에 있어서의 기능별 모듈간 상관관계를 나타낸 것이다. 기여도 측정 시스템을 기능 측면에서 크게 분류를 하면 각 정보처리기에서 수행되는 측정모듈(30)과 서버에서 수행되는 취합모듈(40)로 구분할 수 있다. 측정모듈은 정보처리기 내의 각 자원들이 사용된 정도를 측정하는 기능을 담당하는 것으로, 이는 다시 각 자원별 측정모듈로 세분된다.
본 발명의 일실시예 실시예에 따른 기여도 측정 방법에 있어서, 할당된 작업을 수행하기 위해 정보처리기가 사용된 정도를 측정하는 단계는, 상기 작업을 수행하기 위해 상기 정보처리기가 처리한 명령어의 수 및 상기 정보처리기를 점유한 시간을 측정하는 단계를 포함할 수 있다. 즉, 상기 정보처리기의 연산장치에 있어서 세부작업이 수행되고 있는 기간 동안에 수행된 마이크로 명령어의 수와 연산장치가 세부작업을 수행한 시간 등을 측정하여 기여도 측정에 반영할 수 있다.또한, 본 발명의 또 다른 실시예에 따른 기여도 측정 방법에 있어서, 할당된 작업을 수행하기 위해 정보처리기가 사용된 정도를 측정하는 단계는, 상기 작업을 수행하기 위해 상기 정보처리기의 기억장치를 점유한 크기 및 상기 기억장치를 점유한 시간을 측정하는 단계를 포함할 수 있다.또한, 본 발명의 또 다른 실시예에 따른 기여도 측정 방법에 있어서, 할당된 작업을 수행하기 위해 정보처리기가 사용된 정도를 측정하는 단계는, 상기 작업을 수행하기 위해 상기 정보처리기가 송수신한 데이터의 크기를 측정하는 단계를 포함할 수 있다. 즉, 상기 정보처리기의 네트워크 인터페이스에 있어서 전송하거나 수신한 패킷의 수(데이터의 크기)를 측정하여 기여도 측정에 반영할 수 있다.상술한 바와 같이 각 자원별로 기여도를 측정하는 것은 구조체인 정보처리기가 다수의 자원으로 이루어져 있으므로, 세부 작업이 수행될 때에는 정보처리기의 각 자원을 필요에 따라 점유하게 되기 때문이다. 즉, 본 실시예에 따른 기여도 측정 방법에 있어서 분산컴퓨팅에 의해 정보처리기가 사용된 정도는 각 자원별로 구분하여 자원별 특성과 용도를 고려하여 측정하고, 각 정보처리기의 분산컴퓨팅에 대한 기여도는 해당 정보처리기 내의 자원별 사용도를 통합하여 판단하기 때문에, 정확한 기여도 측정이 가능하게 된다.상술한 바와 같은 방법으로 기여도를 측정하고 측정 결과를 기록하기 위해 각 자원별로 다음과 같은 자료구조가 사용될 수 있다.
연산장치 측정기록: <수행한 명령어의 수, 연산장치를 점유한 기간>
기억장치 측정기록: <기억장치를 점유한 크기, 기억장치를 점유한 기간>
네트워크 인터페이스 측정기록: <수신한 데이터의 크기, 송신한 데이터의 크기>도 5는 각 정보처리기에 있어서 상술한 방식으로 기여도를 측정하는 방법을 도시한 흐름도이다. 이 때 측정되는 자원은 상기 정보처리기의 연산장치, 기억장치, 네트워크 인터페이스 중 하나일 수 있다. 이러한 자원은 분산컴퓨팅에 의한 세부작업이 수행되고 있는 기간에만 사용상의 의미가 있으므로, 도 5는 각 자원이 분산컴퓨팅을 수행하기 위해 사용될 경우에만 그 사용 정도를 측정하는 과정을 도시한 것이다.도 5에 도시된 각 단계에 대해 설명하기로 한다. 단계 511에서 자원(연산장치, 기억장치, 네트워크 인터페이스 중 어느 하나임) 측정을 초기화하고 자원의 측정을 개시한다. 단계 512에서 중단된 세부작업이 있는지 여부를 판단하고, 단계 513에서 중단된 세부작업이 없으면 수신된 세부작업이 있는지 여부를 판단한다. 수신된 세부작업도 없다면, 단계 514에서 세부작업을 요청하여 단계 515에서 세부작업을 수신한다.중단된 세부작업이 있거나 세부작업을 수신한 경우, 단계 516에서 세부작업을 수행한다. 이 때 중지조건이 발생하는 경우, 즉 정보처리기에서 세부작업을 수행하지 않게 되는 경우(단계 517), 자원측정을 중지하고 중지조건이 해제될 때까지 대기한다(단계 518, 단계 519). 이러한 과정을 통해, 실제로 서버에서 지시한 세부작업을 실시할 때에는 정보처리기의 사용 정도를 측정하므로 정확한 기여도 측정이 가능해진다.중지조건이 해제되면 단계 520에서 자원측정을 재개하여 단계 512부터 반복한다. 중지조건이 발생되지 않는 경우에는 세부작업을 계속 수행하게 되고, 세부작업이 완료되면 세부작업의 수행 결과를 서버로 전송한다(단계 522). 또한, 세부작업이 수행 완료되면 자원 측정을 종료하고 자원 측정의 결과를 서버로 전송한다(단계 523, 단계 524). 추가적으로 수행할 세부작업이 있으면 단계 511부터 반복한다.이상과 같이, 본 실시예에 따른 기여도 측정 방법은 정보처리기가 분산컴퓨팅을 위해 세부작업을 수행할 때에만 그 사용 정도를 측정하고 있기 때문에, 상기 정보처리기가 분산 컴퓨팅에 기여한 정도를 보다 정확하게 측정할 수 있다. 따라서, 상기 측정 결과를 이용하여 상기 정보처리기의 사용자에 대한 보상을 시행하는 경우, 상기 측정 결과는 보상액 등을 결정하기 위한 자료로서 유용하게 사용될 수 있다.
반면에, 상술한 다른 자원과 달리 저장장치는 하드디스크와 같은 종류의 장기간 저장을 위해 사용되는 자원이기 때문에 다른 자원과는 달리 세부작업이 수행되지 않고 있는 기간에도 일정한 공간을 점유하고 있으므로 도 5의 흐름도에 도시된 것과는 다른 측정방식을 따른다. 즉, 도 6 내지 도 8에 도시하는 바와 같이, 저장장치에 데이터가 저장될 당시의 시각과 데이터의 크기를 기록하여, 이 데이터가 축출될 때까지 저장장치를 점유하고 있는 기간을 측정한다.도 6에서 도시한 바와 같이, 본 실시예에 따른 기여도 측정 방법에 의하면, 데이터를 저장하는 경우, 상기 데이터의 크기 및 상기 데이터의 저장 시간도 함께 기록한다. 도 7에 도시된 바와 같이, 상기 저정된 데이터가 축출되는 경우 상기 데이터의 크기 및 저장 기간을 기록한다. 이때, 저장 기간은 상기 데이터를 저장 시간을 이용하여 "축출시간-저장시간"으로써 구해질 수 있다. 도 8은 측정된 결과를 서버에 보고하는 과정을 도시한 흐름도이다. 축출된 데이터에 대한 보고는 축출된 데이터의 크기와 상기 데이터가 저장되어 있던 기간에 대한 보고를 의미한다. 남아있는 데이터에 대한 보고는 남아있는 데이터의 크기와 상기 남아있는 데이터가 저장되어 있던 기간에 대한 보고를 의미한다. 상기 남아있는 데이터의 저장기간은 "축출시간(즉, 보고시간)-저장시간"으로 구할 수 있다. 이때 축출된 데이터에 관한 기록을 삭제할 수 있다. 또한, 남아있는 데이터의 경우에는 상기 보고시간이 새로이 상기 남아있는 데이터의 저장시간에 해당하게 된다.상술한 방법에 의해 측정된 결과는 주기적으로 서버의 취합모듈에 의해 통계처리가 된다. 본 실시예는 하나 이상의 자원이 사용된 정도를 측정한 하나 이상의 측정 결과를 이용하여 해당하는 정보처리기에 대한 기여도를 평가하는 구성으로 되어 있기 때문에, 상기 정보처리기에 대한 종합적인 측정 결과를 얻을 필요가 있기 때문이다. 따라서, 취합모듈은 각 정보처리기로부터 수신한 각 자원에 대한 측정 결과를 취합하여 통계한 전체 측정값을 해당하는 정보처리기의 기여도에 반영하도록 한다. 한편, 상기 취합모듈에 의해 통계가 이루어지기 전에 검증 절차가 더 수행될 수 있으며 이에 대해서는 후술하기로 한다.저장장치 자원에 대한 측정 결과를 기록하기 위해 다음과 같은 자료구조가 사용된다.
저장장치 측정기록: <데이터 크기, 저장시각, 저장기간>
각각의 측정 결과는 해당 정보처리기가 기여한 정도를 파악하기 위한 목적을 가지고 있으므로 각 정보처리기를 식별하기 위한 정보처리기 식별자와 결부되어 전달된다.또한 본 발명의 기여도 측정 방법 및 측정 시스템에 의하면 각 자원에 대한 하나 이상의 측정 결과가 전송되므로 각 세부작업을 식별하기 위한 세부작업 식별자를 이용할 수 있다. 따라서 측정모듈로부터 취합모듈로 전송되는 측정결과는 다음과 같은 자료구조를 가질 수 있다.
<정보처리기 식별자, 세부작업 식별자, 연산장치 측정기록, 기억장치 측정기록, 네트워크 인터페이스 측정기록>
<정보처리기 식별자, 저장장치 측정기록>
본 발명의 또 다른 실시예에 따르면, 각 정보처리기로부터 전송된 각 자원의 사용 정도를 측정한 측정 결과를 이용하여 기여도를 측정하기 전에, 상기 측정 결과를 검증하는 과정이 이루어질 수도 있다. 각 정보처리기로부터 전송된 측정결과를 이용하여 검증하고 통계 처리하는 과정은 도 9에 도시된 바와 같다. 즉, 본 실시예에 따른 기여도 측정 방법은 각 정보처리기로부터 측정된 자원 사용도 결과를 수신하여, 정보처리기가 수행한 세부작업이 이미 다른 정보처리기에 의해 수행이 완료된 경우와 수행한 세부작업의 결과에 오류가 발견된 경우 등 세부작업을 수행한 경우라 하더라도 전체 작업에 기여한 바가 없는지 검증하는 절차가 더 포함될 수도 있다.이러한 검증을 거친 측정결과를 통계에 반영하여 기여도를 측정하면 보다 정확한 기여도 측정 결과를 얻을 수 있게 된다. 적절한 통계 처리를 위해 다음과 같은 자료구조가 이용될 수 있다.
<정보처리기 식별자, 연산장치 기여도, 기억장치 기여도, 네트워크 인터페이스 기여도, 저장장치 기여도>
이때 각 자원의 기여도는 일정 기간 동안 누적된 모든 정보처리기의 자원기여도에 대한 상대적인 평가값으로 부여하거나(예를 들면, 소정의 자원에 대한 측정 결과에는 가중치를 부여함), 각 정보처리기에서 측정된 사용도를 누적한 절대값으로 부여하는 것이 가능하다.
본 발명의 또 다른 실시예에 따르면, 정보처리기 내의 자원별로 사용된 정도를 측정하는 방식 외에도, 단순히 정보처리기가 분산컴퓨팅에 사용된 시간만을 측정하고 이를 기준으로 기여도를 측정하는 보다 간단한 방식을 사용하여 기여도를 측정할 수도 있다. 정보처리기가 분산컴퓨팅에 사용된 시간을 기준으로 하는 경우, 도 5에 나타난 절차를 통해 시간을 측정한다. 이때 각 자원별로 사용된 정도를 계산하는 것이 아니라 정보처리기 자체의 입장에서 사용된 시간을 측정하는 점만이 차이가 난다. 이 경우, 정보처리기에서 측정 결과를 기록하기 위해 다음과 같은 자료구조를 이용한다.
수행시간 측정기록: <시작시간, 수행기간>
이 수행시간 측정기록은 매 세부작업이 완료될 때마다 세부작업의 결과와 함께 취합모듈로 전송되거나, 주기적으로 전송한다. 이 측정결과를 취합모듈에서 통계 처리하기 위해서 다음과 같은 자료구조를 이용한다.
<정보처리기 식별자, 수행기간>
또한, 본 발명의 또 다른 실시예에 따르면, 전체 작업이 동일한 크기와 부하를 가지는 세부작업으로 분할이 가능한 경우에는 각 정보처리기가 수행한 세부작업의 수를 기준으로 기여도를 측정하는 간단한 방법도 사용할 수 있다. 정보처리기가 수행한 세부작업의 수를 기준으로 측정하는 방법은 각 정보처리기가 사용한 자원이나 세부작업을 수행한 시간을 측정할 필요가 없으므로 정보처리기가 분산컴퓨팅에 사용된 정도는 정보처리기에서 측정될 필요 없이 서버측에서 충분히 측정이 가능하다. 본 실시예에 따른 기여도 측정 방법은 세부작업의 수행결과를 수신하여 이를 검증하여 기여도를 측정하는 과정을 더 포함할 수 있고, 도 10은 이러한 과정을 도시한 흐름도이다. 각 정보처리기가 전송한 세부작업의 수를 세어 기여도를 측정하기 전에, 전송된 세부작업의 수행 결과에 오류가 있는지 또는 다른 정보처리기에서 이미 수행된 작업인지 여부를 검증한다. 만약 이러한 경우에 해당하는 세부작업 수행 결과는 이를 무시하고 통계에 반영하지 않을 수 있다. 이때의 취합모듈은 수행한 세부작업의 수를 통계내어 각 정보처리기의 기여도를 측정할 수 있다. 상기 취합모듈은 통계 처리를 수행하기 위해 다음과 같은 자료구조를 이용할 수 있다.
<정보처리기 식별자, 수행한 세부작업의 수>
본 발명에서 사용된 정보처리기 식별자를 할당받는 과정은 도 11에 도시되어 있다. 단계 1101에서 본 발명에 따른 기여도 측정 방법에 사용하기 위한 클라이언트 모듈을 요청한다. 이러한 클라이언트 모듈의 요청은 분산컴퓨팅에 참여하려는 정보처리기가 온라인으로 요청함으로써 이루어질 수 있다. 단계 1102에서 서버는 분산컴퓨팅에 참여하기 위해 클라이언트 모듈을 요청하는 정보처리기에 대한 정보처리기 식별자를 생성한다. 각 클라이언트 모듈은 고유한 정보처리기 식별자를 부여받고, 상기 클라이언트 모듈을 정보처리기에 전송하면, 상기 정보처리기의 사용자에 의해 상기 정보처리기에 상기 클라이언트 모듈이 설치되게 된다.
실제 활용분야에서 본 발명을 적용할 때에는 활용분야의 요구사항, 응용분야의 특성 등을 고려하여 구현상의 방법을 달리 적용할 수 있고, 측정의 대상인 자원을 일부로 제한하여 복합적으로 측정할 수 있다.이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따른 기여도 측정 방법 및 기여도 측정 시스템에 의하면, 분산컴퓨팅에 사용된 정보처리기의 기여도를 합리적으로 측정할 수 있다.또한, 본 발명에 따른 기여도 측정 방법 및 기여도 측정 시스템에 따르면, 정보처리기의 각 자원별로 자원의 특성과 용도를 고려하여 기여도를 측정할 수 있다.또한, 본 발명에 따른 기여도 측정 방법 및 기여도 측정 시스템에 따르면, 분산컴퓨팅이 수행하는 전체적인 작업에 대해 각 정보처리기가 수행한 세부작업이 실제로 분산컴퓨팅에 기여를 했는지 여부를 검증할 수 있기 때문에, 분산컴퓨팅에 사용된 각 정보처리기의 기여도를 정확하게 측정할 수 있다.
또한, 본 발명에 따른 기여도 측정 방법 및 기여도 측정 시스템에 따르면, 분산컴퓨팅에 사용된 정보처리기의 기여도를 합리적이고 정확하게 측정할 수 있기 때문에, 이러한 측정 결과를 분산컴퓨팅에 참여한 정보처리기의 사용자에 대한 보상 자료로 사용할 수 있다. 즉, 상기 정보처리기에 대한 보상의 기준을 마련할 수 있기 때문에, 분산컴퓨팅에 참여하는 정보처리기를 모집하는 것이 용이하다는 효과가 있다.
또한, 본 발명에 따른 기여도 측정 방법 및 기여도 측정 시스템에 따르면, 분산컴퓨팅에 사용된 각 자원별로 기여도를 통계 처리하는 것이 가능하므로 분산컴퓨팅의 수행에 필요한 자원 중에서 부족한 자원을 파악할 수 있고, 이에 따라 부족한 자원을 더욱 많이 확보하는데 활용할 수 있다.

Claims (10)

  1. 통신망을 통한 분산컴퓨팅에 사용된 정보처리기의 기여도를 측정하는 방법에 있어서,
    분산 컴퓨팅을 수행할 하나 이상의 정보 처리기를 선정하는 단계,
    작업을 분할하여 상기 정보처리기에 할당하는 단계,
    상기 작업을 수행하기 위해 상기 정보처리기가 사용된 정도를 측정하는 단계,
    상기 정보처리기 별로 측정 결과를 저장하는 단계, 및
    상기 측정 결과에 기초하여 기여도를 평가하는 단계
    를 포함하는 것을 특징으로 하는 기여도 측정 방법.
  2. 제1항에 있어서,
    상기 작업을 수행하기 위해 상기 정보처리기가 사용된 정도를 측정하는 상기 단계는,
    상기 작업을 수행하기 위해 상기 정보처리기가 처리한 명령어의 수 및 상기 정보처리기를 점유한 시간을 측정하는 단계,
    상기 작업을 수행하기 위해 상기 정보처리기의 기억장치를 점유한 크기 및 상기 기억장치를 점유한 시간을 측정하는 단계,
    상기 작업을 수행하기 위해 상기 정보 처리기가 송신한 데이터의 크기 및 수신한 데이터의 크기를 측정하는 단계, 및
    상기 작업을 수행하기 위해 상기 정보처리기가 저장하는 데이터의 크기, 상기 데이터의 저장 시각, 및 상기 데이터의 저장 기간을 측정하는 단계
    중 하나 이상의 단계를 포함하는 것을 특징으로 하는 기여도 측정 방법.
  3. 제1항에 있어서,
    상기 측정 결과에 기초하여 기여도를 평가하는 상기 단계는,
    분산컴퓨팅을 위해 상기 정보처리기가 수행한 세부작업의 종류 별로 측정 결과에 가중치를 주는 단계
    를 포함하는 것을 특징으로 하는 기여도 측정 방법.
  4. 제1항에 있어서,
    상기 측정 결과에 기초하여 기여도를 평가하는 상기 단계는,
    상기 측정 결과를 검증하는 단계, 및
    상기 검증된 측정 결과에 기초하여 기여도를 평가하는 단계
    를 더 포함하는 것을 특징으로 하는 기여도 측정 방법.
  5. 제4항에 있어서,
    상기 측정 결과를 검증하는 상기 단계는,
    상기 정보 처리기가 수행한 세부 작업의 결과를 입력 받는 단계, 및
    상기 세부 작업의 결과가 오류를 포함하고 있는지 여부 또는 상기 세부 작업이 다른 정보 처리기에서 수행 완료되었는지 여부를 검증하는 단계
    를 포함하는 것을 특징으로 하는 기여도 측정 방법.
  6. 통신망을 통한 분산컴퓨팅에 사용된 정보처리기의 기여도를 측정하는 방법에 있어서,
    작업을 일정한 크기와 부하를 갖는 세부 작업으로 분할하여 정보처리기에 할당하는 단계,
    상기 정보처리기가 수행하는 세부 작업의 수를 카운트하는 단계, 및
    상기 카운트된 세부작업의 수에 기초하여 상기 정보처리기의 기여도를 평가하는 단계
    를 포함하는 것을 특징으로 하는 기여도 측정 방법.
  7. 제1항 내지 제6항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
  8. 통신망을 통한 분산컴퓨팅에 사용된 정보처리기의 기여도를 측정하는 시스템에 있어서,
    분산 컴퓨팅을 수행할 정보처리기를 결정하고, 상기 정보처리기가 수행해야 할 작업을 지정하는 주모듈,
    상기 작업을 상기 정보처리기에 전송하고, 상기 정보처리기가 처리한 작업 결과 및 관련 정보를 수신하는 전송모듈, 및
    상기 작업 결과 및 상기 관련 정보에 기초하여 기여도를 측정하는 관리 모듈
    을 포함하는 것을 특징으로 하는 기여도 측정 시스템.
  9. 제8항에 있어서,
    상기 정보처리기는,
    상기 작업을 수행하기 위해상기 정보처리기의 연산장치가 수행한 명령어의 수 및 연산장치를 점유한 기간을 측정하는 연산장치 측정모듈,
    상기 작업을 수행하기 위해 상기 정보처리기의 기억장치를 점유한 크기 및 상기 기억장치를 점유한 시간을 측정하는 기억장치 측정모듈,
    상기 작업을 수행하기 위해 상기 정보 처리기의 네트워크 인터페이스가 송신한 데이터의 크기 및 수신한 데이터의 크기를 측정하는 네트워크 인터페이스 측정모듈, 및
    상기 작업을 수행하기 위해 상기 정보처리기의 저장장치가 저장하는 데이터의 크기 및 상기 데이터의 저장 기간을 측정하는 저장장치 측정모듈
    중 어느 하나 이상을 포함하고,
    상기 관련정보는 상기 연산장치 측정모듈, 상기 기억장치 측정모듈, 상기 네트워크 인터페이스 측정 모듈 및 상기 저장장치 측정모듈에 의해 측정된 값인 것을 특징으로 하는 기여도 측정 시스템.
  10. 제8항에 있어서,
    기여도를 측정한 결과인 측정 결과를 검증하는 검증 모듈을 더 포함하는 것을 특징으로 하는 기여도 측정 시스템.
KR10-2002-0014772A 2002-03-19 2002-03-19 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템 KR100458789B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0014772A KR100458789B1 (ko) 2002-03-19 2002-03-19 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0014772A KR100458789B1 (ko) 2002-03-19 2002-03-19 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템

Publications (2)

Publication Number Publication Date
KR20020048318A KR20020048318A (ko) 2002-06-22
KR100458789B1 true KR100458789B1 (ko) 2004-12-03

Family

ID=27725884

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0014772A KR100458789B1 (ko) 2002-03-19 2002-03-19 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템

Country Status (1)

Country Link
KR (1) KR100458789B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048319A (ko) * 2002-03-19 2002-06-22 문의선 분산컴퓨팅에 사용된 정보처리기에 대한 보상 방법 및 장치
KR100795593B1 (ko) * 2005-05-18 2008-01-21 아주대학교산학협력단 동적 순위 매김 및 그룹핑을 이용한 그리드 컴퓨팅 시스템및 그 데이터 처리 방법
KR101639397B1 (ko) * 2011-01-05 2016-07-15 에스케이플래닛 주식회사 분산 컴퓨팅 제공 시스템 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0175456B1 (ko) * 1995-12-22 1999-04-01 양승택 분산된 객체접속정보 관리 시스템 및 그 객체접속정보의 분산화 방법
KR19990031082A (ko) * 1997-10-08 1999-05-06 정선종 클라이언트-서버 응용 프로그램 자동 분할 장치 및 그 방법
KR20010044515A (ko) * 2001-03-02 2001-06-05 임찬웅 웹사이트 접속통계 산출시스템 및 그 방법
EP1146687A2 (en) * 2000-04-12 2001-10-17 Hewlett-Packard Company, A Delaware Corporation Internet usage analysis system and method
KR20010110640A (ko) * 2000-06-06 2001-12-13 가나이 쓰토무 정보처리시스템 및 스토리지장치의 할당방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0175456B1 (ko) * 1995-12-22 1999-04-01 양승택 분산된 객체접속정보 관리 시스템 및 그 객체접속정보의 분산화 방법
KR19990031082A (ko) * 1997-10-08 1999-05-06 정선종 클라이언트-서버 응용 프로그램 자동 분할 장치 및 그 방법
EP1146687A2 (en) * 2000-04-12 2001-10-17 Hewlett-Packard Company, A Delaware Corporation Internet usage analysis system and method
KR20010110640A (ko) * 2000-06-06 2001-12-13 가나이 쓰토무 정보처리시스템 및 스토리지장치의 할당방법
KR20010044515A (ko) * 2001-03-02 2001-06-05 임찬웅 웹사이트 접속통계 산출시스템 및 그 방법

Also Published As

Publication number Publication date
KR20020048318A (ko) 2002-06-22

Similar Documents

Publication Publication Date Title
Shi et al. COSMOS: Computation offloading as a service for mobile devices
Kuhlenkamp et al. Benchmarking elasticity of FaaS platforms as a foundation for objective-driven design of serverless applications
US9575810B2 (en) Load balancing using improved component capacity estimation
US8650298B2 (en) Resource allocation system
KR101903623B1 (ko) 버스트 모드 제어
CN101322113B (zh) 用于试验服务器应用程序性能的网格计算控制方法及其服务方法
Dumitrescu et al. Di-gruber: A distributed approach to grid resource brokering
CN112883527A (zh) 一种面向网络体系的仿真评估方法
Ochei et al. Optimal deployment of components of cloud-hosted application for guaranteeing multitenancy isolation
KR20150006946A (ko) 클라우드 컴퓨팅 환경에서의 동적 자원 신뢰도 계층 기반의 자원 거래 시스템 및 방법
Rak Performance modeling using queueing Petri nets
Leena Sri et al. An empirical model of adaptive cloud resource provisioning with speculation
Lu et al. VM scaling based on Hurst exponent and Markov transition with empirical cloud data
KR100506686B1 (ko) 분산컴퓨팅을 수행한 정보처리기에 대한 기여도 보상시스템 및 기여도 보상 방법
Zhu et al. Monitoring and billing of a lightweight cloud system based on linux container
KR20190051878A (ko) 단말 장치의 유휴 컴퓨팅 자원 활용 시스템 및 이를 이용한 유휴 컴퓨팅 자원 활용 방법
KR100458789B1 (ko) 분산컴퓨팅에 사용된 정보처리기의 기여도 측정 방법 및 기여도 측정 시스템
Ismail et al. A formal model of dynamic resource allocation in grid computing environment
KR20040076169A (ko) 분산컴퓨팅에 의해 사용된 정보처리장치의 기여도 측정방법 및 장치
KR101142237B1 (ko) 그리드 생체정보 인증 시스템에서의 부하 분산 스케줄링을 위한 시뮬레이션 기반 작업부하 예측모델 선택 시스템 및 방법
KR20050023469A (ko) 병렬전송에서의 기여도 측정 방법
KR20060054856A (ko) 이동단말기를 이용한 이동 그리드 시스템 및 그 운영 방법
Stolarz et al. Proposal of cost-effective tenant-based resource allocation model for a SaaS system
Pang et al. Eris: An Online Auction for Scheduling Unbiased Distributed Learning Over Edge Networks
Costa et al. Support for provisioning and configuration decisions for data intensive workflows

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

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131119

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141118

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160516

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee