KR20210041392A - Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법 - Google Patents

Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법 Download PDF

Info

Publication number
KR20210041392A
KR20210041392A KR1020190124053A KR20190124053A KR20210041392A KR 20210041392 A KR20210041392 A KR 20210041392A KR 1020190124053 A KR1020190124053 A KR 1020190124053A KR 20190124053 A KR20190124053 A KR 20190124053A KR 20210041392 A KR20210041392 A KR 20210041392A
Authority
KR
South Korea
Prior art keywords
ipfs
weather observation
observation data
space weather
node
Prior art date
Application number
KR1020190124053A
Other languages
English (en)
Other versions
KR102338265B1 (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 KR1020190124053A priority Critical patent/KR102338265B1/ko
Publication of KR20210041392A publication Critical patent/KR20210041392A/ko
Application granted granted Critical
Publication of KR102338265B1 publication Critical patent/KR102338265B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01WMETEOROLOGY
    • G01W1/00Meteorology
    • G01W1/10Devices for predicting weather conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/1827Management specifically adapted to NAS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • 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
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01WMETEOROLOGY
    • G01W1/00Meteorology
    • G01W2001/006Main server receiving weather information from several sub-stations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01WMETEOROLOGY
    • G01W2201/00Weather detection, monitoring or forecasting for establishing the amount of global warming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Ecology (AREA)
  • Marketing (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Cardiology (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Databases & Information Systems (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Atmospheric Sciences (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템에 관한 것으로서, 보다 구체적으로는 인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템으로서, 계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(Instrument PC); IPFS 네트워크로 상호 연결되며, 상기 계측기 단말에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드; 및 상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버를 포함하며, 상기 IPFS 네트워크에서는, 상기 IPFS 노드들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드에 대해서만 파일 배포를 하며, 상기 중앙 서버는, 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하고, 모니터링 결과를 웹 인터페이스를 통해 제공하는 것을 그 구성상의 특징으로 한다.
또한, 본 발명은 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법에 관한 것으로서, 보다 구체적으로는 인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법으로서, 계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(Instrument PC); IPFS 네트워크로 상호 연결되며, 상기 계측기 단말에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드; 및 상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버를 포함하는 모니터링 시스템에서, 상기 IPFS 네트워크에서는, 상기 IPFS 노드들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드에 대해서만 파일 배포를 하며, 상기 중앙 서버는, (A) 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하는 단계; 및 (B) 상기 단계 (A)에 따른, 노드의 실제 상태 및 데이터 흐름에 대한 모니터링 결과를 웹 인터페이스를 통해 제공하는 단계를 수행하여 모니터링을 하는 것을 그 구성상의 특징으로 한다.
본 발명에서 제안하고 있는 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법에 따르면, IPFS(Inter Planetary File System)를 사용하여 우주 기상 관측 데이터를 분산 저장함으로써, 피어 투 피어 연결을 통해 데이터를 노드로 분산시켜 데이터 가용성과 처리량을 증가시킬 수 있고, 단일 실패 지점이 없어 데이터를 더욱 원활하게 제공할 수 있으며, 각 노드로부터의 실시간 데이터 흐름과 노드 상태 정보를 모니터링하고, 모니터링 결과를 웹 인터페이스를 통해 제공함으로써, 관리자가 실행 중인 프로세스를 쉽게 관찰하고 대응할 수 있다.

Description

IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법{MONITORING SYSTEM AND METHOD FOR SPACE WEATHER OBSERVATION DATA IN IPFS DECENTRALIZED STORAGE ENVIRONMENT}
본 발명은 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법에 관한 것으로서, 보다 구체적으로는 인도네시아 우주 기상 관측 데이터를 위한 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템에 관한 것이다.
일반적으로 우주 기상이라는 용어는 우주 환경에서 발생하는 지구와 우주에서의 인간 활동에 영향을 줄 수 있는 물리적 프로세스를 말한다. 국립 항공 우주 연구소(LAPAN; https://lapan.go.id)가 대표하는 인도네시아는 아세안 지역의 우주 기상 정보 및 예측 서비스(Space Weather Information and Forecast Services, SWIFt; http://swifts.sains.lapan.go.id)라는 우주 기상 활동과 관련된 정보 및 예측을 제공하는 시스템을 적극적으로 개발하고 있다. SWIFtS 연구원 및 예측자는 매일 우주 분석(위성 또는 전파 기술)을 활용하는 응용 프로그램을 사용하는 사용자에게 SWIFtS 웹 사이트에 정확한 실제 정보를 제공하기 위해 매일 데이터 분석 및 처리를 수행한다. 따라서 우주 기상 관측 기기로부터 수집된 데이터는 지속적으로 업데이트 되어, 데이터 가용성을 유지한다. 백그라운드 프로세스에서, SWIFtS는 인도네시아 전역에 퍼져있는 관측소에 설치된 다양한 기기에서 데이터를 수집하는 데이터 스토리지 시스템에 의해 지원된다. SWIFtS가 제공하는 일일 정보는, 지속적으로 잘 작동하는 데이터 스토리지 시스템과, 연구원들의 요구를 충족시킬 수 있는 실시간 데이터 제공이 요구된다.
도 1은 인도네시아 관측 사이트 지도를 도시한 도면이다. 도 1에 도시된 바와 같이, 인도네시아에는 서로 다른 섬에 8개의 관측소(이하, 사이트라고 함)가 분산되어 있으며, 자바 섬(Java Island)의 반둥에는 중앙 데이터 센터가 하나 있다.
인도네시아 우주 기상 관측 데이터의 저장 및 처리를 위해 사용되는 기존 시스템은, 중앙 집중식 모델을 기반으로 클라이언트/서버 계층을 구현하고 있다. 현재 시스템의 중앙 집중식 방법에는 낮은 데이터 가용성, 낮은 처리량 및 데이터 업데이트 시간 증가와 같은 몇 가지 단점이 있다. 현재 반둥의 메인 서버는 데이터를 저장하는 중앙 스토리지로서, 반둥의 메인 서버에 대한 많은 수의 연결로 인하여 높은 네트워크 로드를 생성하게 된다. 현재 시스템에서는, 기본 SSH 포트를 통해 모든 데이터를 동기화하기 위해 모든 동기화 프로세스가 한 번에 실행된다. 따라서 각 사이트 및 기기의 다양한 데이터를 손상 없이 실시간으로 안전하게 저장하기 위해, 실행해야 하는 작업 대기열을 생성하게 된다. 낮은 처리량은 높은 네트워크 로드로 인해 데이터 동기화 시간에 영향을 주어, 동기화 시간이 더 오래 걸리는 문제가 있다.
따라서 이와 같은 중앙 집중식 방법에는, 시스템 과부하, 시간 지연 등의 문제가 있으며, 서버가 다운되면 시스템이 최신 데이터를 제공할 수 없는 문제가 있었다. 또한, 종래에는 데이터 모니터링 시에 관리자가 실행 중인 프로세스를 쉽게 관찰할 수 있는 방법이 없어 불편함이 야기되었다.
한편, 본 발명과 관련된 선행기술로서, 공개특허 제10-2017-0110200호(발명의 명칭: 기상 관련 데이터의 수집, 처리 및 배포 시스템, 공개일자: 2017년 10월 11일) 등이 개시된 바 있다.
본 발명은 기존에 제안된 방법들의 상기와 같은 문제점들을 해결하기 위해 제안된 것으로서, IPFS(Inter Planetary File System)를 사용하여 우주 기상 관측 데이터를 분산 저장함으로써, 피어 투 피어 연결을 통해 데이터를 노드로 분산시켜 데이터 가용성과 처리량을 증가시킬 수 있고, 단일 실패 지점이 없어 데이터를 더욱 원활하게 제공할 수 있으며, 각 노드로부터의 실시간 데이터 흐름과 노드 상태 정보를 모니터링하고, 모니터링 결과를 웹 인터페이스를 통해 제공함으로써, 관리자가 실행 중인 프로세스를 쉽게 관찰하고 대응할 수 있는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법을 제공하는 것을 그 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템은,
인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템으로서,
계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(Instrument PC);
IPFS 네트워크로 상호 연결되며, 상기 계측기 단말에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드; 및
상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버를 포함하며,
상기 IPFS 네트워크에서는, 상기 IPFS 노드들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드에 대해서만 파일 배포를 하며,
상기 중앙 서버는, 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하고, 모니터링 결과를 웹 인터페이스를 통해 제공하는 것을 그 구성상의 특징으로 한다.
바람직하게는,
상기 중앙 서버는 반둥 노드이며,
상기 IPFS 네트워크는, 인도네시아 우주 기상 관측 데이터의 실시간 제공을 위해, 상기 계측기 단말과의 연결 없이 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집하는 서버로서, Garut 노드 및 Pasuruan 노드를 더 포함할 수 있다.
바람직하게는, 상기 능동적 접근법은,
핑 프로세스를 통해 ICMP 패킷을 전송하여 노드의 실제 상태를 결정할 수 있다.
더욱 바람직하게는, 상기 중앙 서버는,
(1) 상기 IPFS 네트워크에서 대상 노드 ID를 핑(ping)하는 단계;
(2) 상기 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계; 및
(3) 퐁 결과를 웹 페이지에 표시하는 단계를 포함하는 능동적 접근법을 이용해 노드의 실제 상태를 모니터링할 수 있다.
더더욱 바람직하게는, 상기 단계 (1)은,
(1-1) 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 상기 노드 ID를 이용해 상기 대상 노드에 연결하는 단계; 및
(1-2) 상기 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계를 포함할 수 있다.
더더욱 바람직하게는, 상기 단계 (1)은,
모든 노드에서 상태 정보를 얻기 위해, 미리 정해진 시간마다 실행될 수 있다.
바람직하게는, 상기 수동적 접근법은,
상기 계측기 단말에서 생성된 우주 기상 관측 데이터가 IPFS 네트워크에 자동으로 업로드되는 과정에서 생성된 로그 파일을 이용해 데이터 흐름을 모니터링할 수 있다.
더욱 바람직하게는, 상기 로그 파일은,
파일 이름, 타임스탬프, 파일 크기, 블록 해시, 계측기 이름 및 총 크기를 포함하는 메타 데이터 파일 정보를 포함하며, 계측기 이름을 기반으로 할 수 있다.
더욱 바람직하게는, 상기 로그 파일은,
데이터 흐름을 모니터링하기 위해, 모든 IPFS 노드에서 상기 중앙 서버로 미리 정해진 시간 간격으로 전송될 수 있다.
바람직하게는, 상기 웹 인터페이스는,
HTML, CSS 및 JS로 구성된 Bootstrap 3.3 프레임워크로 구현될 수 있다.
상기한 목적을 달성하기 위한 본 발명의 특징에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법은,
인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법으로서,
계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(Instrument PC);
IPFS 네트워크로 상호 연결되며, 상기 계측기 단말에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드; 및
상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버를 포함하는 모니터링 시스템에서,
상기 IPFS 네트워크에서는, 상기 IPFS 노드들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드에 대해서만 파일 배포를 하며,
상기 중앙 서버는,
(A) 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하는 단계; 및
(B) 상기 단계 (A)에 따른, 노드의 실제 상태 및 데이터 흐름에 대한 모니터링 결과를 웹 인터페이스를 통해 제공하는 단계를 수행하여 모니터링을 하는 것을 그 구성상의 특징으로 한다.
바람직하게는,
상기 중앙 서버는 반둥 노드이며,
상기 IPFS 네트워크는, 인도네시아 우주 기상 관측 데이터의 실시간 제공을 위해, 상기 계측기 단말과의 연결 없이 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집하는 서버로서, Garut 노드 및 Pasuruan 노드를 더 포함할 수 있다.
바람직하게는, 상기 단계 (A)의 능동적 접근법은,
핑 프로세스를 통해 ICMP 패킷을 전송하여 노드의 실제 상태를 결정할 수 있다.
더욱 바람직하게는, 상기 단계 (A)는,
(1) 상기 IPFS 네트워크에서 대상 노드 ID를 핑(ping)하는 단계; 및
(2) 상기 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계를 포함하는 능동적 접근법을 이용해 노드의 실제 상태를 모니터링하며,
상기 단계 (B)에서는, 퐁 결과를 웹 페이지에 표시할 수 있다.
더더욱 바람직하게는, 상기 단계 (1)은,
(1-1) 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 상기 노드 ID를 이용해 상기 대상 노드에 연결하는 단계; 및
(1-2) 상기 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계를 포함할 수 있다.
더더욱 바람직하게는, 상기 단계 (1)은,
모든 노드에서 상태 정보를 얻기 위해, 미리 정해진 시간마다 실행될 수 있다.
바람직하게는, 상기 단계 (A)의 수동적 접근법은,
상기 계측기 단말에서 생성된 우주 기상 관측 데이터가 IPFS 네트워크에 자동으로 업로드되는 과정에서 생성된 로그 파일을 이용해 데이터 흐름을 모니터링할 수 있다.
더욱 바람직하게는, 상기 로그 파일은,
파일 이름, 타임스탬프, 파일 크기, 블록 해시, 계측기 이름 및 총 크기를 포함하는 메타 데이터 파일 정보를 포함하며, 계측기 이름을 기반으로 할 수 있다.
더욱 바람직하게는, 상기 로그 파일은,
데이터 흐름을 모니터링하기 위해, 모든 IPFS 노드에서 상기 중앙 서버로 미리 정해진 시간 간격으로 전송될 수 있다.
바람직하게는, 상기 웹 인터페이스는,
HTML, CSS 및 JS로 구성된 Bootstrap 3.3 프레임워크로 구현될 수 있다.
본 발명에서 제안하고 있는 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법에 따르면, IPFS(Inter Planetary File System)를 사용하여 우주 기상 관측 데이터를 분산 저장함으로써, 피어 투 피어 연결을 통해 데이터를 노드로 분산시켜 데이터 가용성과 처리량을 증가시킬 수 있고, 단일 실패 지점이 없어 데이터를 더욱 원활하게 제공할 수 있으며, 각 노드로부터의 실시간 데이터 흐름과 노드 상태 정보를 모니터링하고, 모니터링 결과를 웹 인터페이스를 통해 제공함으로써, 관리자가 실행 중인 프로세스를 쉽게 관찰하고 대응할 수 있다.
도 1은 인도네시아 관측 사이트 지도를 도시한 도면.
도 2는 중앙 서버와 사이트 서버 사이의 동기화 프로세스를 도시한 도면.
도 3은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템의 시스템 구성을 도시한 도면.
도 4는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법의 IPFS 네트워크 다이어그램을 도시한 도면.
도 5는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법에서, 관측 사이트의 상태를 표시한 도면.
도 6은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템에 데이터가 저장되는 과정을 설명하기 위해 도시한 도면.
도 7은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법의 흐름을 도시한 도면.
도 8 및 도 9는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법에서, 능동적 접근법을 이용한 노드 상태 모니터링의 세부적인 흐름을 도시한 도면.
도 10은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법에서, 수동적 접근법을 이용한 데이터 흐름 모니터링의 세부적인 흐름을 도시한 도면.
도 11은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법에서, 웹 인터페이스로 제공되는 모니터링 화면을 예를 들어 도시한 도면.
이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예를 상세하게 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 또한, 유사한 기능 및 작용을 하는 부분에 대해서는 도면 전체에 걸쳐 동일한 부호를 사용한다.
덧붙여, 명세서 전체에서, 어떤 부분이 다른 부분과 연결 되어 있다고 할 때, 이는 직접적으로 연결 되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 간접적으로 연결 되어 있는 경우도 포함한다. 또한, 어떤 구성요소를 포함 한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.
도 2는 중앙 서버(210)와 사이트 서버 사이의 동기화 프로세스를 도시한 도면이다. 종래 인도네시아 우주 기상 관측 데이터의 저장 및 처리를 위해 사용되는 시스템은, 중앙 집중식 모델을 기반으로 클라이언트/서버 계층을 구현하고 있다. 이와 같은 중앙 집중식 모델에서, 데이터 업데이트 지연 문제는 중앙 서버(210)에서 모든 사이트 서버로 또는 동시에 발생하는 사이트 서버와 PC 장비 간의 동기화에서 발생한다.
도 2에서, 크론 탭(crontab)은 5분마다 서브 프로그램을 실행하는 메인 프로그램을 실행하여 서버와 기기 PC 간에 데이터를 한 번에 동기화한다. 중앙 사이트와 모든 사이트 서버 간에 동일한 프로세스를 통해 15분마다 데이터를 동기화한다. 이와 같은 상황은 모든 동시 액세스가 하나의 포트로 향할 때 문제가 될 수 있으며, 많은 수의 작업 대기열 때문에 높은 네트워크 로드가 발생하며, 이로 인해 데이터 업데이트가 지연되게 된다.
도 3은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)의 시스템 구성을 도시한 도면이다. 도 3에 도시된 바와 같이, 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)은, 인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)으로서, 계측기 단말(100)(Instrument PC) 및 IPFS 노드(200)를 포함하여 구성될 수 있다.
즉, 본 발명에서는, 피어 투 피어 네트워크를 활용하여 우주 기상 관측 데이터를 위한 분산 스토리지 및 모니터링 시스템(10)을 개발하였다. 본 발명에서는, IPFS를 핵심 시스템으로 사용하여 데이터를 분산 저장하고 다른 노드에 배포할 수 있다. IPFS에서 저장소를 초기화하여 키 쌍(공개키 및 개인키)이 생성되고, 노드에서 IPFS 구성을 호스트하고 저장소 오브젝트를 저장하는 로컬 폴더가 형성될 수 있다. 각 노드의 ID(NodeID)는 노드의 공개키 해시를 사용해 만들어질 수 있다.
보다 구체적으로, 본 발명에서는, 중앙 서버 및 사이트(site) 서버를 IPFS 네트워크에 연결된 노드로 만들 수 있다. 피어는 피어 간에 파일을 자동으로 배포하는 프로세스를 위해 준비된 개인 IPFS 네트워크로 제한될 수 있다. 피어 간에 데이터를 교환하는 기본 프로세스가 유사하기 때문에, IPFS는 비트 토런트 프로토콜 위에서 객체 스토리지 서비스로 볼 수 있다. 파일이 IPFS에 게시되면 피어는 해당 내용에 액세스하여 로컬 복사본을 보관할 수 있다. 데이터는 최소 24시간 동안 공개적으로 제공될 수 있다. 다른 피어와의 상호작용(pinning)이 없으면, 데이터는 재활용하지 않고 가비지 수집기(garbage collector)에 전달될 수 있다. 가비지 수집기 도구는 IPFS 네트워크에서 사용하지 않는 데이터를 지우는데 사용될 수 있다. 제안된 시스템 아키텍처에서는 계측기(instrument)가 다양하고 연속적인 데이터를 생성하므로 자동 피닝(automatic pinning)으로 파일 공유를 처리해야 한다.
IPFS-클러스터는 다른 호스트에서 실행되는 IPFS 데몬 사이를 조정하는 데 사용되는 도구이다. 이들이 하나의 클러스터에 상호 연결되어 있으면, IPFS의 피어가 추가한 모든 개체가 모든 구성원에 의해 자동으로 고정(pinned)될 수 있다. 따라서 한 피어가 네트워크에서 연결을 끊거나 해당 개체를 삭제하더라도 다른 피어가 여전히 제공할 수 있다. 그러나 피어는 데이터 중 일부만 수신하고 피어가 개체를 배포하면 IPFS 네트워크에서 더 이상 중복되지 않을 수 있다. 따라서 본 발명에 따르면 내용이 동일한 각 파일이 저장되지 않으므로, 노드의 저장 공간을 크게 늘리지 않을 수 있다. 또한, 노드에서 사용 가능한 리소스를 사용하는 이점이 있다.
이하에서는, 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)을 구성하는 각 구성요소에 대하여 상세히 설명하도록 한다.
계측기 단말(100)은, 계측기와 연결되어, 우주 기상 관측 데이터를 생성할 수 있다. 우주 기상 관측 데이터는 유형에 따라 매일, 매시간, 15분, 5분마다 생성될 수 있다. 모든 사이트에는 다양한 계측기가 있는데, 예를 들어 CADI(Canadian Advanced Digital Ionosonde)와 같은 계측기가 포함될 수 있다. CADI는 이온층(Ionosphere layer) 내의 이온화된 부분을 연구하기 위한 특수 레이더이다. 여러 위치에 설치되며 항상 15분 간격으로 데이터를 생성한다.
계측기 단말(100)은 계측기에서 데이터를 수집하는 초기 제공자이다. 도 3에 도시된 바와 같이, IPFS 노드(200)와 계측기 단말(100) 간의 데이터 통신 모듈로는, TCP/IP를 사용할 수 있다. 데이터 전송 모듈(Data Transfer Module)의 경우, 단말의 운영 체제에 따라 상이할 수 있다. 예를 들어, FTP는 Windows OS로의 데이터 전송에 사용되는 반면, SFTP는 Unix OS가 설치된 단말에 사용될 수 있다. 각각의 계측기 단말(100)에는 데이터가 저장되는 장소로 데이터 수집기(Data collector)가 있을 수 있다. 사용자가 데이터를 사용할 수 있게 하려면 데이터가 생성되는 즉시 피어 간에 데이터를 배포해야 한다. 따라서 데이터 수집기 감시자(Data Collector watcher)는 최신 파일을 사이트 서버(IPFS 노드(200))의 데이터 수집기로 자동 전송할 수 있다. 데이터 수집기 감시자는 데이터 전송과 관련하여, 메타 데이터가 포함된 로그 파일을 생성할 수 있다. 이때, 데이터 수집기 감시자는 파이썬의 감시 라이브러리로 구축될 수 있다.
IPFS 노드(200)는, IPFS 네트워크로 상호 연결되며, 계측기 단말(100)에서 생성된 우주 기상 관측 데이터를 IPFS 네트워크에 분산 저장 및 배포할 수 있다. IPFS 네트워크에서는, IPFS 노드(200)들을 멤버로 하는 IPFS-클러스터를 구성하여 우주 기상 관측 데이터를 분산 저장 및 제공하되, IPFS-클러스터 멤버인 IPFS 노드(200)에 대해서만 파일 배포를 할 수 있다.
도 3에 도시된 바와 같이, IPFS 노드(200)에는 최신 데이터를 유지하는 데 필수적인 데이터 수집기 감시자 서비스가 사용될 수 있다. 이 서비스는 파이썬의 pylnotify 라이브러리와 IPFS API의 클라이언트 라이브러리를 사용하여 작성될 수 있다. 계측기 단말(100)에서 계측기 이름을 기반으로 하는 고유한 루트 디렉토리는 원시 데이터를 저장하는 루트 디렉토리로 설정될 수 있다. 계측기 단말(100)에서 새 파일을 생성하여 보내면 계측기 유형에 따라 이름이 지정된 서버의 폴더로 수집될 수 있다. 프로그램은 폴더가 변경될 때마다 IPFS에 데이터를 추가하고 파일 이름, 타임 스탬프, 계측기 이름, 블록 해시, 파일 크기 및 총 크기와 같은 메타 데이터 정보가 포함된 로그를 생성할 수 있다. 도 3에서 서버는 IPFS 바이너리를 실행하여 리소스를 IPFS 노드(200)로 관리할 수 있다. LibP2P는 시스템의 주요 부분으로, 데이터 및 통신 전송 허용, 분산 해시 테이블 작성 및 시스템에서 파일 교환과 같은 일부 필수 태스크가 필요할 수 있다. 데이터 통신 모듈의 경우 PC와 서버 간의 연결은 TCP/IP로 연결될 수 있다.
도 4는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법의 IPFS 네트워크 다이어그램을 도시한 도면이다. IPFS 네트워크에서는, IPFS 노드(200)들을 멤버로 하는 IPFS-클러스터를 구성하여 우주 기상 관측 데이터를 분산 저장 및 제공하되, IPFS-클러스터 멤버인 IPFS 노드(200)에 대해서만 파일 배포를 할 수 있다. 각 서버에는 노드 ID라고 하는 고유 식별자가 있으며 다중 주소 형식(Multiaddr-formatted)의 바이트 문자열을 사용하여 오버레이 네트워크의 노드 간에 통신할 수 있다. Multiaddr은 모든 네트워크 프로토콜의 주소를 지원하고 주소 캡슐화를 지원할 수 있다. 또한 IPFS-클러스터는 파일 배포 흐름을 제한하는 데 사용될 수 있다.
도 4에 도시된 바와 같이, 각 사이트에는 여러 시간 범위의 데이터를 생성하는 다양한 계측기가 있으므로 계측기들은 표준 피어로 사용되며, 중앙 서버(210)는 피어 리더로 사용될 수 있다. IPFS 노드(200)가 파일을 교환해야 할 경우, 피어 투 피어 연결이 노드 간에 구축되므로, 도 4에 도시된 바와 같이, 노드가 다른 노드에 직접 연결할 수 있다. 예를 들어, 파푸아 섬에 위치한 Biak 노드는 계측기 CADI에서 최신 파일을 수집하며, 다른 섬의 노드(예를 들어, 노드 반둥(Bandung))로 배포할 준비가 될 수 있다. 그들이 IPFS-클러스터에 연결되면, 반둥 피어는 Biak으로부터 파일을 요청하고, 그들 사이에 P2P 연결이 생성되어, 반둥은 Biak 피어로부터 직접 데이터를 얻을 수 있다. 이 시나리오는 반둥과 Biak뿐만 아니라 모든 피어에게도 발생할 수 있다. 즉, 피어가 다른 피어에게 요청된 파일을 제공하도록 요청할 때 모든 피어는 서로 직접 연결될 수 있다.
한편, 도 4에 도시된 바와 같이, 중앙 서버(210)는, IPFS 네트워크를 구성하며 피어 리더 역할을 할 수 있다. 중앙 서버(210)는, 계측기 단말(100)과 연결 없이 우주 기상 관측 데이터의 저장 및 배포를 하며, 자바 섬의 반둥 노드일 수 있다. 또한, IPFS 네트워크는, 인도네시아 우주 기상 관측 데이터의 실시간 제공을 위해, 계측기 단말(100)과의 연결 없이 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집하는 서버로서, Garut 노드 및 Pasuruan 노드를 더 포함할 수 있다. 반둥은 데이터 센터의 기본 사이트로 필수적이며 데이터를 필요로 하는 많은 수의 사용자를 보유하고 있으므로 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집해야 한다. 그러나 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법은 네트워크 및 스토리지 비용을 고려하여 파일을 모든 피어에 복제하지 않을 수 있다.
도 5는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법에서, 관측 사이트의 상태를 표시한 도면이다. 도 5에서 확인할 수 있는 바와 같이, 각 노드에는 대역폭 용량, 링크 연결성 및 매일 전달되는 총 데이터 양이 서로 다를 수 있다. 본 발명에서는, HDFS(Hadoop Distributed File System)의 복제 요소와 유사한 다른 세 노드에만 파일을 복제할 수 있다.
도 5에 따르면, 자바 섬의 반둥과 동일한 지리적 위치를 기반으로 데이터를 저장할 다른 노드를 선택하는 것이 바람직하다. 이는 반둥이 오프라인 상태로 표시된 다른 노드에서 파일을 가져와야 하는 시간을 줄이는 데 영향을 미칠 수 있다. 또한, 데이터를 매일 수집할 때 총 크기가 가장 작은 다른 노드, 다른 노드보다 대역폭 용량이 더 높은 노드, 및 광섬유 링크로 연결된 노드를 선택하는 것이 바람직하다. 따라서 이러한 고려 사항에 따라, Garut 노드 및 Pasuruan 노드를 데이터 복제의 두 번째 및 세 번째 센터로 선택하는 것이 바람직하다. Garut 노드는 광섬유 연결로 5Mbps의 대역폭 용량을 가지며 매일 21MB의 데이터를 수집한다. 또한 Pasuruan 노드는 광섬유 링크에 의한 대역폭 용량으로 7Mbps를 가지며 매일 39MB의 데이터를 수집한다. 따라서, 도 4에 도시된 네트워크 다이어그램에서 확인할 수 있는 바와 같이, Garut과 Pasuruan에 반둥과 함께 데이터 복제만 받는 역할을 하는 두 번째 서버(second server)를 각각 추가할 수 있다.
도 6은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)에 데이터가 저장되는 과정을 설명하기 위해 도시한 도면이다. 도 6에 도시된 바와 같이, 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)에서는, 먼저 계측기가 새 파일을 생성하고 계측기 단말(100)에 저장하면 데이터 감시자 서비스는 최신 데이터를 사이트 서버인 IPFS 노드(200)로 전송하기 위해 청구할 수 있다. 계측기 유형에 따라 사이트 서버(IPFS 노드(200))에서 데이터의 루트 디렉토리를 관찰하기 위해 데이터 수집기 감시자를 포함할 수 있다. 데이터 수집기 감시자는 데이터가 작성될 때마다 서버가 최신 파일을 IPFS 네트워크에 업로드하도록 할 수 있다. 이후 서버는 IPFS 노드(200)로서 데이터를 로컬 저장소에 객체로 저장하고 객체의 메타 데이터를 분산 해시 테이블(DHT)에 넣을 수 있다.
한편, 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법에서는, 데이터의 흐름 및 노드 상태를 모니터링하기 위해 피어 리더에서 모니터링을 생성할 수 있다. 즉, 중앙 서버(210)는, 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하고, 모니터링 결과를 웹 인터페이스를 통해 제공할 수 있다.
도 7은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법의 흐름을 도시한 도면이다. 도 7에 도시된 바와 같이, 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법은, 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하는 단계(S10) 및 모니터링 결과를 웹 인터페이스를 통해 제공하는 단계(S20)를 포함하여 구현될 수 있다.
단계 S10에서는, 중앙 서버(210)가 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행할 수 있다.
단계 S20에서는, 중앙 서버(210)가 단계 S10에 따른, 노드의 실제 상태 및 데이터 흐름에 대한 모니터링 결과를 웹 인터페이스를 통해 제공할 수 있다. 여기서, 웹 인터페이스는, HTML, CSS 및 JS로 구성된 Bootstrap 3.3 프레임워크로 구현될 수 있다.
도 8 및 도 9는 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법에서, 능동적 접근법을 이용한 노드 상태 모니터링의 세부적인 흐름을 도시한 도면이다. 도 8 및 도 9에 도시된 바와 같이, 중앙 서버(210)는, IPFS 네트워크에서 대상 노드 ID를 핑하는 단계(S110), 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계(S120) 및 퐁 결과를 웹 페이지에 표시하는 단계(S130)을 수행하여, IPFS 노드(200)의 실제 상태를 모니터링할 수 있다.
즉, 중앙 서버(210)는, IPFS 네트워크에서 대상 노드 ID를 핑(ping)하여, 능동 모니터링에 접근할 수 있다(S110). 단계 S110은, 모든 노드에서 상태 정보를 얻기 위해 미리 정해진 시간(예를 들어, 1분)마다 실행될 수 있다. 이 핑은 ICMP 패킷을 대상 노드로 보내는 것이 아니라 몇 가지 추가 단계를 거쳐야 한다. 즉, 단계 S110은, 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 노드 ID를 이용해 대상 노드에 연결하는 단계(S111) 및 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계(S112)를 포함할 수 있다.
대상 노드가 오프라인인 경우 퐁은 오류를 생성할 수 있다. 대상 노드가 온라인이면 응답을 수신하고 최종적으로 대기 시간에 대한 왕복 시간(RTT)을 인쇄할 수 있다(S120). pong 결과는 JSON(JavaScript Object Notation) 파일로 구성되며 JQuery 함수에 의해 웹 페이지에 표시될 수 있다(S130). NodeJS는 HTTP 서버로 사용되었으며 색인 페이지는 20초마다 상태를 업데이트할 수 있다.
도 10은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법에서, 수동적 접근법을 이용한 데이터 흐름 모니터링의 세부적인 흐름을 도시한 도면이다. 본 발명의 단계 S10에서, 수동적 접근법은, 계측기 단말(100)에서 생성된 우주 기상 관측 데이터가 IPFS 네트워크에 자동으로 업로드되는 과정에서 생성된 로그 파일을 이용해 데이터 흐름을 모니터링할 수 있다. 보다 구체적으로, 수동 접근 방식은 최신 파일이 계측기 단말(100)에서 사이트 서버(IPFS 노드(200))로 전송될 때마다 모니터링 하는 데이터 수집기 감시자(data collector watcher)를 사용할 수 있다. IPFS 노드(200)는 IPFS-클러스터를 통해 IPFS 네트워크에 파일을 자동으로 업로드 할 수 있다. 이 프로세스는 로그 파일을 생성할 수 있고, 수동적 접근법은 이러한 로그 파일을 이용해 데이터 흐름을 모니터링할 수 있다.
여기서, 로그 파일은, 파일 이름, 타임스탬프, 파일 크기, 블록 해시, 계측기 이름 및 총 크기를 포함하는 메타 데이터 파일 정보를 포함하며, 계측기 이름을 기반으로 할 수 있다. 로그 파일은, 데이터 흐름을 모니터링하기 위해, 모든 IPFS 노드(200)에서 중앙 서버(210)로 미리 정해진 시간 간격으로 전송될 수 있다. 즉, Rsync를 사용하여 1분마다 사이트와 중앙 서버(210)간에 모든 로그 파일을 추가로 동기화할 수 있다. 기본 서버의 업데이트 된 로그 파일은 HTTP를 통해 JQuery에 의해 검색되어 웹 인터페이스를 통해 표시될 수 있다.
본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법의 구현을 위하여, BitSwap 프로토콜을 사용하여 파일과 노드 정보의 실제 위치를 가진 피어의 포인터를 저장하기 위해 노드와 분산 해시 테이블(DHT) 간에 블록을 교환하는 IPFS 네트워크를 구성할 수 있다. 이와 같은, IPFS 네트워크에서 업로드된 파일은 해시 함수와 기본 인코딩의 조합을 사용하여 고정 크기의 객체에 매핑될 수 있다. 객체는 블록이라고 하는 여러 청크로 구성될 수 있다. 이때, SHA256 해시 기능이 적용될 수 있으며, IPFS는 파일 청크를 위해 Rabin 지문 방법을 사용하기 때문에 각 블록의 크기를 최대 256KB로 만들 수 있다.
모니터링을 위해서는, Bootstrap 3.3 프레임 워크 및 JQuery로 구축된 웹 인터페이스를 구현할 수 있다. 웹 인터페이스는, 데이터 전송을 위해 NodeJS 버전 10.15.3을 HTTP 서버로 구현할 수 있다. 각 IPFS 노드(200)에는 계측기에 따라 여러 개의 로그 파일이 있다. 따라서 별도의 JQuery 함수는 해당 파일에서 데이터를 읽고 추출하는 데 사용될 수 있다.
도 11은 본 발명의 일실시예에 따른 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법에서, 웹 인터페이스로 제공되는 모니터링 화면을 예를 들어 도시한 도면이다. 도 11에서 IPFS 네트워크에 성공적으로 저장되고 다른 노드로 분배된 데이터에 대한 정보가 제공되는 모니터링 화면을 확인할 수 있다. 또한, 각 IPFS 노드(200)의 상태도 표시되어 관리자는 IPFS 노드(200)의 현재 상태를 판별할 수 있다. 로그 파일은 1분마다 자동으로 업데이트되고, 데이터 모니터링을 위해 모든 사이트에서 중앙 서버(210)로 로그가 전송될 수 있다. 한편, 노드 상태 모니터링의 경우 상태 정보는 핑 완료 후 중앙 서버(210)에서 생성된 파일에서 가져올 수 있다. 도 11에서 노드 2와 노드 3은 오프라인 상태로 인해 데이터 정보가 없는 노드 4와 달리 상태가 온라인이므로 데이터를 표시할 수 있다.
전술한 바와 같이, 본 발명에서 제안하고 있는 IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10) 및 방법에 따르면, IPFS(Inter Planetary File System)를 사용하여 우주 기상 관측 데이터를 분산 저장함으로써, 피어 투 피어 연결을 통해 데이터를 노드로 분산시켜 데이터 가용성과 처리량을 증가시킬 수 있고, 단일 실패 지점이 없어 데이터를 더욱 원활하게 제공할 수 있으며, 각 노드로부터의 실시간 데이터 흐름과 노드 상태 정보를 모니터링하고, 모니터링 결과를 웹 인터페이스를 통해 제공함으로써, 관리자가 실행 중인 프로세스를 쉽게 관찰하고 대응할 수 있다.
이상 설명한 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.
10: 본 발명에 따른 모니터링 시스템
100: 계측기 단말
200: IPFS 노드
210: 중앙 서버
S10: 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하는 단계
S20: 모니터링 결과를 웹 인터페이스를 통해 제공하는 단계
S110: IPFS 네트워크에서 대상 노드 ID를 핑하는 단계
S111: 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 노드 ID를 이용해 대상 노드에 연결하는 단계
S112: 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계
S120: 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계
S130: 퐁 결과를 웹 페이지에 표시하는 단계

Claims (20)

  1. 인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10)으로서,
    계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(100)(Instrument PC);
    IPFS 네트워크로 상호 연결되며, 상기 계측기 단말(100)에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드(200); 및
    상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버(210)를 포함하며,
    상기 IPFS 네트워크에서는, 상기 IPFS 노드(200)들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드(200)에 대해서만 파일 배포를 하며,
    상기 중앙 서버(210)는, 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하고, 모니터링 결과를 웹 인터페이스를 통해 제공하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  2. 제1항에 있어서,
    상기 중앙 서버(210)는 반둥 노드이며,
    상기 IPFS 네트워크는, 인도네시아 우주 기상 관측 데이터의 실시간 제공을 위해, 상기 계측기 단말(100)과의 연결 없이 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집하는 서버로서, Garut 노드 및 Pasuruan 노드를 더 포함하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  3. 제1항에 있어서, 상기 능동적 접근법은,
    핑 프로세스를 통해 ICMP 패킷을 전송하여 노드의 실제 상태를 결정하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  4. 제3항에 있어서, 상기 중앙 서버(210)는,
    (1) 상기 IPFS 네트워크에서 대상 노드 ID를 핑(ping)하는 단계;
    (2) 상기 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계; 및
    (3) 퐁 결과를 웹 페이지에 표시하는 단계를 포함하는 능동적 접근법을 이용해 노드의 실제 상태를 모니터링하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  5. 제4항에 있어서, 상기 단계 (1)은,
    (1-1) 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 상기 노드 ID를 이용해 상기 대상 노드에 연결하는 단계; 및
    (1-2) 상기 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계를 포함하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  6. 제4항에 있어서, 상기 단계 (1)은,
    모든 노드에서 상태 정보를 얻기 위해, 미리 정해진 시간마다 실행되는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  7. 제1항에 있어서, 상기 수동적 접근법은,
    상기 계측기 단말(100)에서 생성된 우주 기상 관측 데이터가 IPFS 네트워크에 자동으로 업로드되는 과정에서 생성된 로그 파일을 이용해 데이터 흐름을 모니터링하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  8. 제7항에 있어서, 상기 로그 파일은,
    파일 이름, 타임스탬프, 파일 크기, 블록 해시, 계측기 이름 및 총 크기를 포함하는 메타 데이터 파일 정보를 포함하며, 계측기 이름을 기반으로 하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  9. 제7항에 있어서, 상기 로그 파일은,
    데이터 흐름을 모니터링하기 위해, 모든 IPFS 노드(200)에서 상기 중앙 서버(210)로 미리 정해진 시간 간격으로 전송되는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  10. 제1항에 있어서, 상기 웹 인터페이스는,
    HTML, CSS 및 JS로 구성된 Bootstrap 3.3 프레임워크로 구현된 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템(10).
  11. 인도네시아 우주 기상 관측 데이터를 위한, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법으로서,
    계측기와 연결되어, 우주 기상 관측 데이터를 생성하는 계측기 단말(100)(Instrument PC);
    IPFS 네트워크로 상호 연결되며, 상기 계측기 단말(100)에서 생성된 우주 기상 관측 데이터를 상기 IPFS 네트워크에 분산 저장 및 배포하는 IPFS 노드(200); 및
    상기 IPFS 네트워크를 구성하며, 피어 리더 역할을 하는 중앙 서버(210)를 포함하는 모니터링 시스템(10)에서,
    상기 IPFS 네트워크에서는, 상기 IPFS 노드(200)들을 멤버로 하는 IPFS-클러스터를 구성하여 상기 우주 기상 관측 데이터를 분산 저장 및 제공하되, 상기 IPFS-클러스터 멤버인 IPFS 노드(200)에 대해서만 파일 배포를 하며,
    상기 중앙 서버(210)는,
    (A) 노드의 실제 상태를 모니터링하는 능동적 접근법 및 데이터 흐름을 모니터링하는 수동적 접근법을 이용하여 모니터링을 수행하는 단계; 및
    (B) 상기 단계 (A)에 따른, 노드의 실제 상태 및 데이터 흐름에 대한 모니터링 결과를 웹 인터페이스를 통해 제공하는 단계를 수행하여 모니터링을 하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  12. 제11항에 있어서,
    상기 중앙 서버(210)는 반둥 노드이며,
    상기 IPFS 네트워크는, 인도네시아 우주 기상 관측 데이터의 실시간 제공을 위해, 상기 계측기 단말(100)과의 연결 없이 새 파일이 생성될 때마다 복제를 통해 모든 파일을 수집하는 서버로서, Garut 노드 및 Pasuruan 노드를 더 포함하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  13. 제11항에 있어서, 상기 단계 (A)의 능동적 접근법은,
    핑 프로세스를 통해 ICMP 패킷을 전송하여 노드의 실제 상태를 결정하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  14. 제13항에 있어서, 상기 단계 (A)는,
    (1) 상기 IPFS 네트워크에서 대상 노드 ID를 핑(ping)하는 단계; 및
    (2) 상기 대상 노드가 온라인이면 응답을 수신하고, 대기 시간에 대한 왕복 시간(RTT)을 인쇄하는 단계를 포함하는 능동적 접근법을 이용해 노드의 실제 상태를 모니터링하며,
    상기 단계 (B)에서는, 퐁 결과를 웹 페이지에 표시하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  15. 제14항에 있어서, 상기 단계 (1)은,
    (1-1) 핑 명령이 실행되면 분산 해시 테이블(DHT)에서 대상 노드의 노드 ID를 찾고, 상기 노드 ID를 이용해 상기 대상 노드에 연결하는 단계; 및
    (1-2) 상기 대상 노드에 ICMP 패킷을 전송하고 퐁 응답을 대기하는 단계를 포함하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  16. 제15항에 있어서, 상기 단계 (1)은,
    모든 노드에서 상태 정보를 얻기 위해, 미리 정해진 시간마다 실행되는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  17. 제11항에 있어서, 상기 단계 (A)의 수동적 접근법은,
    상기 계측기 단말(100)에서 생성된 우주 기상 관측 데이터가 IPFS 네트워크에 자동으로 업로드되는 과정에서 생성된 로그 파일을 이용해 데이터 흐름을 모니터링하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  18. 제17항에 있어서, 상기 로그 파일은,
    파일 이름, 타임스탬프, 파일 크기, 블록 해시, 계측기 이름 및 총 크기를 포함하는 메타 데이터 파일 정보를 포함하며, 계측기 이름을 기반으로 하는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  19. 제17항에 있어서, 상기 로그 파일은,
    데이터 흐름을 모니터링하기 위해, 모든 IPFS 노드(200)에서 상기 중앙 서버(210)로 미리 정해진 시간 간격으로 전송되는 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
  20. 제11항에 있어서, 상기 웹 인터페이스는,
    HTML, CSS 및 JS로 구성된 Bootstrap 3.3 프레임워크로 구현된 것을 특징으로 하는, IPFS 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 방법.
KR1020190124053A 2019-10-07 2019-10-07 Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법 KR102338265B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190124053A KR102338265B1 (ko) 2019-10-07 2019-10-07 Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190124053A KR102338265B1 (ko) 2019-10-07 2019-10-07 Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20210041392A true KR20210041392A (ko) 2021-04-15
KR102338265B1 KR102338265B1 (ko) 2021-12-09

Family

ID=75440879

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190124053A KR102338265B1 (ko) 2019-10-07 2019-10-07 Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102338265B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434093A (zh) * 2021-07-08 2021-09-24 山东中科好靓科技有限公司 一种可有效提高存储能力的ipfs数据存储方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020129134A1 (en) * 2000-05-26 2002-09-12 Leighton F. Thomson Global load balancing across mirrored data centers
CN109241161A (zh) * 2018-08-09 2019-01-18 深圳市雅码科技有限公司 一种气象数据管理方法
CN109344156A (zh) * 2018-09-03 2019-02-15 中国农业大学 海量多源气象观测数据分布式存储方法及装置
KR101962288B1 (ko) * 2018-12-31 2019-03-26 주식회사 미탭스플러스 블록체인을 이용해 공유재화의 가용성을 검증하는 공유경제 관리 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020129134A1 (en) * 2000-05-26 2002-09-12 Leighton F. Thomson Global load balancing across mirrored data centers
CN109241161A (zh) * 2018-08-09 2019-01-18 深圳市雅码科技有限公司 一种气象数据管理方法
CN109344156A (zh) * 2018-09-03 2019-02-15 中国农业大学 海量多源气象观测数据分布式存储方法及装置
KR101962288B1 (ko) * 2018-12-31 2019-03-26 주식회사 미탭스플러스 블록체인을 이용해 공유재화의 가용성을 검증하는 공유경제 관리 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434093A (zh) * 2021-07-08 2021-09-24 山东中科好靓科技有限公司 一种可有效提高存储能力的ipfs数据存储方法
CN113434093B (zh) * 2021-07-08 2023-12-01 山东中科好靓基础软件技术有限公司 一种可有效提高存储能力的ipfs数据存储方法

Also Published As

Publication number Publication date
KR102338265B1 (ko) 2021-12-09

Similar Documents

Publication Publication Date Title
US9992274B2 (en) Parallel I/O write processing for use in clustered file systems having cache storage
US10657108B2 (en) Parallel I/O read processing for use in clustered file systems having cache storage
US10481948B2 (en) Data transfer in a collaborative file sharing system
US10560544B2 (en) Data caching in a collaborative file sharing system
US11553014B2 (en) Downloading of server-based content through peer-to-peer networks
US11818209B2 (en) State management and object storage in a distributed cloud computing network
CN107888666B (zh) 一种跨地域数据存储系统以及数据同步方法和装置
CN107734026A (zh) 一种网络附加存储集群的设计方法、装置及设备
KR20040103980A (ko) 컨텐츠 전송 네트워크(cdn) 인터네트워킹, 각각의네트워크 및 인터페이스 구성요소를 실행하는 방법
Lomotey et al. MobiCrop: supporting crop farmers with a cloud-enabled mobile app
CN110753005A (zh) 限速方法、装置及系统、电子设备和计算机可读存储介质
Safrianti Peer Connection Classifier Method for Load Balancing Technique
KR102338265B1 (ko) Ipfs 분산 스토리지 환경에서의 우주 기상 관측 데이터 모니터링 시스템 및 방법
JP6950576B2 (ja) ネットワークシステム、トポロジ管理方法、およびプログラム
US9544371B1 (en) Method to discover multiple paths to disk devices cluster wide
CN115733848A (zh) 一种面向边缘设备的数据分布式存储管理系统
US20240176762A1 (en) Geographically dispersed hybrid cloud cluster
Schütt et al. Efficient synchronization of replicated data in distributed systems
Burkard Herodotus: A peer-to-peer web archival system
Andrian et al. Space Weather Data Management System and Monitoring in Decentralized Storage Environment
Lin et al. A Programmable and Reliable Publish/Subscribe System for Multi-Tier IoT
Tiago Telecommunications and Informatics Engineering
CN117675895A (zh) 一种物联网设备在内外网之间的异步信息实时传输方法
Xiao et al. Applying MapReduce Framework to Peer-to-Peer Overlay Network
Chillamcherla On High Performance Cloud Based File Synchronization with User Collaboration

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant