KR102382328B1 - 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법 - Google Patents

사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법 Download PDF

Info

Publication number
KR102382328B1
KR102382328B1 KR1020200142966A KR20200142966A KR102382328B1 KR 102382328 B1 KR102382328 B1 KR 102382328B1 KR 1020200142966 A KR1020200142966 A KR 1020200142966A KR 20200142966 A KR20200142966 A KR 20200142966A KR 102382328 B1 KR102382328 B1 KR 102382328B1
Authority
KR
South Korea
Prior art keywords
sensor data
rule
scheduling
rules
scheduled
Prior art date
Application number
KR1020200142966A
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 KR1020200142966A priority Critical patent/KR102382328B1/ko
Application granted granted Critical
Publication of KR102382328B1 publication Critical patent/KR102382328B1/ko

Links

Images

Classifications

    • H04L67/325
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y20/00Information sensed or collected by the things
    • G16Y20/20Information sensed or collected by the things relating to the thing itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Selective Calling Equipment (AREA)

Abstract

본 발명은 지정된 이벤트 발생 시, 조건을 분석하여 실행해야 하는 동작이 각각 설정된 다수의 규칙이 저장된 테이블 저장부, 다수의 규칙 중 동일한 이벤트에 대한 규칙을 추출하고, 추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터의 유효 시간을 나타내는 신선도 간격에 기반하여 센서 데이터를 수집하는 순서를 기지정된 방식에 따라 스케줄링하며, 스케줄링된 각 규칙의 센서 데이터 중 서로 다른 규칙이 동일하게 이용하는 센서 데이터인 공유 센서 데이터가 존재하면, 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링 규칙만 그대로 공유 센서 데이터를 수집하고 나머지 규칙은 공유 센서 데이터를 지연하여 수집하도록 스케줄링하는 스케줄 관리자 및 스케줄 관리자의 제어에 따라 스케줄링된 센서 데이터의 수집 순서에 따라 각 센서 데이터에 대응하는 IoT 기기로 센서 데이터 요청 명령을 전송하고, 각 IoT 기기로부터 센서 데이터를 수신하는 기기 관리자를 포함하여, 센서 데이터가 최대로 공유되면서도 사용자의 요구에 따른 응답 시간을 유지할 수 있도록 스케줄링함으로써 센서 데이터 요청을 최소화하여 IoT 기기의 전력 소비를 최소화할 수 있는 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법을 제공할 수 있다.

Description

사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법{Scheduling Apparatus And Method Based On Data Sharing Between Multiple Rules in IoT Environment}
본 발명은 스케줄링 장치 및 방법에 관한 것으로, 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법에 관한 것이다.
사물 인터넷(Internet of Things, 이하: IoT) 환경에서 사용자는 IoT 프레임 워크를 통해 이벤트 발생 시 특정 조건에서 수행할 작업을 지정하는 이벤트 조건 동작(Event-Condition-Action: ECA) 규칙을 정의할 수 있다. 이에 사용자는 이벤트 발생되면, IoT 프레임 워크가 특정 시간 제한 이내에 조건을 평가하여, 대응하는 적절한 동작을 수행할 것을 기대한다.
도 1은 IoT 환경에서 ECA 규칙의 일 예를 나타낸다.
도 1은 스마트 오피스에 대한 ECA 규칙을 도시하였다. 도 1의 예에서 사용자는 3가지 ECA 규칙(Rules)을 정의하였으며, 3가지 ECA 규칙에 공통되는 이벤트(Event)로 움직임 감지를 설정하였다. 그리고 3가지 규칙에 각각에 대한 조건(Condition) 및 동작(Action)을 서로 상이하게 정의하였다.
제1 규칙의 경우, 움직임 감지 이벤트가 발생했을 때, 습도가 80% 이상이거나 조도가 400lux 미만(Humidity > 80 || Illuminance < 400)의 조건을 만족하면, 블라인드를 오픈하는 동작을 수행하도록 정의되어 있다. 그리고 제2 규칙의 경우, 동일한 이벤트가 발생한 경우, 조도가 50lux 미만(Illuminance < 50)의 조건을 만족하면, 조명을 켜는 동작을 수행하도록 정의되어 있다. 마지막으로 제3 규칙에서는 움직임 감지 이벤트 발생시, 온도가 25도보다 높고 습도가 60%를 초과(Temperature > 25 && Humidity > 80)하는 조건이면, 에어컨을 켜도록 정의되었다.
도 1과 같이 정의된 ECA 규칙을 실현하기 위해서, IoT 프레임 워크에서 다수의 IoT 기기를 관리하는 IoT 서버는 이벤트를 모니터링하고, IoT 기기 중 센서 기기를 이용하여 조도 데이터, 온도 데이터 및 습도 데이터와 같은 센서 데이터를 수집하여 조건을 평가하며, 평가 결과에 따라 IoT 기기 중 동작 기기로 동작 명령을 전송한다.
이때, IoT 서버는 조건으로 설정된 조건값과 센서 장치에서 수집된 센서 데이터를 비교해야 하므로, 센서 데이터는 기지정된 유효 기간 이내에 획득된 데이터만을 유효한 데이터로서 이용할 수 있으며, 유효 기간을 초과한 데이터는 폐기되어, 이후 센서 데이터가 요구되는 경우 다시 센서 데이터를 수집해야 한다. 이를 데이터의 신선도(freshness)라 한다.
만일 이벤트가 발생하기 이전에 미리 센서 데이터를 수집하는 경우, 이벤트 발생 후 여러 센서 데이터를 동시에 수집해야 하는 데이터 수집 오버헤드와 사용자에 대한 응답 시간을 줄일 수 있다. 그러나 이벤트 발생 시점이 예측 불가능하고 센서 데이터의 신선도가 요구됨에 따라 센서 데이터를 미리 수집하는 것은 극히 비효율적이다.
일 예로 센서 데이터 중 온도나 습도 데이터의 경우, 급격한 변화가 발생되지 않으므로 유효 기간이 상대적으로 길게 설정될 수 있다. 그에 반해 조도의 경우, 조명의 온/오프에 따라 순간적으로 변화될 수 있으므로, 조건 만족 여부를 정확하게 판정하기 위해 조도 데이터의 유효 기간은 온도나 습도 센서 데이터에 비해 상대적으로 짧게 설정된다. 이에 조도 데이터를 미리 수집하더라도 수집된 조도 데이터가 이용되지 않을 확률이 매우 높다고 볼 수 있다.
뿐만 아니라 센서 데이터를 여러 번 반복 획득하는 것은 전력 소비 측면에서도 매우 비효율적이다. IoT 기기 중 센서 기기의 경우, 배터리를 이용하여 동작하는 경우가 많으므로, 전력 소모를 저감시키기 위해서도 센서 데이터 전송 횟수는 최소화되어야 한다.
그러나 기존에는 프로그램의 각 ECA 규칙이 서로 독립적이라고 가정하여, IoT 기기를 스케줄링하므로 각각의 ECA 규칙 내에서는 센서 데이터의 수집 타이밍을 조절할 수 있는 반면, 다수의 ECA 규칙에 공통되는 센서 데이터가 존재하더라도 이를 스케줄링에 반영할 수 없어 중복으로 센서 데이터를 획득하므로 매우 비효율적이다.
도 2는 센서 데이터 획득 기간에 따른 에너지 소비량을 나타낸다.
도 2에서 (a) 내지 (c)는 각각 1초, 10ms 및 10ms 주기로 센서 데이터를 수집하는 경우의 에너지 소비량을 나타낸다. 도 2에 도시된 바와 같이, 센서 데이터의 요청 주기가 짧아질수록 에너지 소비량을 크게 증가하게 되며, 이는 배터리 기반 IoT 기기의 가용 시간을 단축시키는 결과를 초래한다.
따라서 IoT 기기의 전력 소비를 저감시킬 수 있도록 데이터 전송 횟수를 최소화하면서도 사용자의 요구에 부합하는 빠른 동작을 수행할 수 있도록 효율적으로 데이터를 수집하고 동작을 제어할 수 있는 스케줄링 기법이 요구되고 있다.
한국 공개 특허 제10-2017-0111054호 (2017.10.12 공개)
본 발명의 목적은 스케줄링 장치 및 방법은 서로 다른 ECA 규칙에서 요구되는 센서 데이터가 최대로 공유되도록 스케줄링하여, 센서 데이터 요청을 최소화할 수 있는 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법을 제공하는데 있다.
본 발명의 다른 목적은 센서 데이터 요청을 최소화하면서도 사용자가 요구하는 응답 속도로 동작을 수행할 수 있는 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법을 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 스케줄링 장치는 지정된 이벤트 발생 시, 조건을 분석하여 실행해야 하는 동작이 각각 설정된 다수의 규칙이 저장된 테이블 저장부; 상기 다수의 규칙 중 동일한 이벤트에 대한 규칙을 추출하고, 추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터의 유효 시간을 나타내는 신선도 간격에 기반하여 센서 데이터를 수집하는 순서를 기지정된 방식에 따라 스케줄링하며, 스케줄링된 각 규칙의 센서 데이터 중 서로 다른 규칙이 동일하게 이용하는 센서 데이터인 공유 센서 데이터가 존재하면, 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링 규칙만 그대로 공유 센서 데이터를 수집하고 나머지 규칙은 공유 센서 데이터를 지연하여 수집하도록 스케줄링하는 스케줄 관리자; 및 상기 스케줄 관리자의 제어에 따라 스케줄링된 센서 데이터의 수집 순서에 따라 각 센서 데이터에 대응하는 IoT 기기로 센서 데이터 요청 명령을 전송하고, 각 IoT 기기로부터 센서 데이터를 수신하는 기기 관리자를 포함한다.
상기 스케줄 관리자는 추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터 각각에 대해 기지정된 신선도 간격을 분석하여, 각 규칙에서 센서 데이터가 상기 신선도 간격이 긴 센서 데이터부터 순차적으로 수집되도록 스케줄링하는 신선도 기반 스케줄부; 상기 신선도 기반 스케줄부에서 스케줄링된 각 규칙별 센서 데이터 수집 순서에서 각 센서 데이터의 신선도 간격을 기반으로 설정되는 신선도 간격 한계를 초과하지 않는 범위에서, 각 센서 데이터를 요청하여 수집될 때까지의 예상 시간을 나타내는 수집 대기 시간을 기반으로 재스케줄링하는 조기 종료 기반 스케줄부; 및 상기 조기 종료 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙 중 공유 센서 데이터를 이용하는 규칙을 판별하고, 판별된 규칙 중 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링된 규칙을 제외한 나머지 규칙들은 공유 센서 데이터를 대응하는 신선도 간격 이후에 수집하도록 지연 스케줄링하는 데이터 공유 기반 스케줄부를 포함할 수 있다.
상기 스케줄 관리자는 상기 데이터 공유 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙에서 공유 센서 데이터를 수집중인 규칙이 존재하면, 상기 공유 센서 데이터를 이용하는 다른 규칙에서 수집되지 않은 나머지 센서 데이터를 공유 데이터가 수집 완료되는 수집 대기 시간까지 지연 스케줄링하는 포워드 스케줄부를 더 포함할 수 있다.
상기 포워드 스케줄부는 상기 수집 대기 시간까지의 지연 시간이 기지정된 기준 지연 시간 이내인 경우에만, 상기 수집 대기 시간까지 지연 스케줄링을 수행할 수 있다.
상기 스케줄 관리자는 상기 데이터 공유 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙에서 이전 센서 데이터를 수집하도록 스케줄링된 규칙과 이후 센서 데이터를 수집하도록 스케쥴링된 규칙 사이에 신선도 간격 초과로 인해, 센서 데이터를 다시 수집하도록 스케줄링된 센서 데이터가 존재하면, 이전 센서 데이터를 수집하는 규칙에서 해당 센서 데이터의 수집 시간이 신선도 간격이 이후 규칙에서 동일한 센서 데이터를 수집하는 시점까지 도달하도록 지연 스케줄링하는 백워드 스케줄부를 더 포함할 수 있다.
상기 백워드 스케줄부는 상기 동일한 센서 데이터를 수집하는 시점까지의 지연 시간이 기지정된 기준 지연 시간 이내인 경우에만, 상기 지연 스케줄링을 수행할 수 있다.
상기 조기 종료 기반 스케줄부는 상기 각 규칙에 설정된 조건이 나타내는 조건식을 기지정된 방식으로 트리 구조로 변환하고, 변환된 트리구조에서 각 센서 데이터의 수집 대기 시간을 기반으로 조건 만족 여부 판별하기 위한 조건 평가가 종료될 시간을 나타내는 조건 평가 대기 시간의 최소값인 최소 예상 조건 평가 대기 시간이 상기 신선도 간격 한계를 초과하지 않으면, 수집 대기 시간이 가장 짧은 센서 데이터를 우선 수집하도록 재스케줄링할 수 있다.
상기 스케줄 관리자는 상기 기기 관리자를 통해 다수의 IoT 기기 중 이벤트 발생을 감지하는 이벤트 센서 기기로부터 전송된 이벤트를 수신하고, 테이블 저장부에 저장된 규칙 중 수신된 이벤트에 대응하는 규칙을 탐색하여, 탐색된 규칙에 설정된 조건에 포함된 센서 데이터를 스케줄링된 순서에 따라 상기 기기 관리자를 통해 대응하는 IoT 기기로 요청하고, IoT 기기로부터 전송된 센서 데이터를 기반으로 각 규칙의 조건을 평가할 수 있다.
상기 스케줄 관리자는 각 규칙의 조건 평가 결과와 각 규칙에 설정된 동작을 수행해야 하는 제한 시간을 나타내는 규칙 기한을 만족하면, 규칙에 설정된 동작을 수행할 수 있는 IoT 기기로 동작 명령을 전송할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 스케줄링 방법은 지정된 이벤트 발생 시, 조건을 분석하여 실행해야 하는 동작이 각각 설정된 다수의 규칙 중 동일한 이벤트에 대한 규칙을 추출하는 단계;
추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터의 유효 시간을 나타내는 신선도 간격에 기반하여 센서 데이터를 수집하는 순서를 기지정된 방식에 따라 스케줄링하는 단계; 스케줄링된 각 규칙의 센서 데이터 중 서로 다른 규칙이 동일하게 이용하는 센서 데이터인 공유 센서 데이터가 존재하면, 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링 규칙만 그대로 공유 센서 데이터를 수집하고 나머지 규칙은 공유 센서 데이터를 지연하여 수집하도록 재스케줄링하는 단계; 및 스케줄링된 센서 데이터의 수집 순서에 따라 각 센서 데이터에 대응하는 IoT 기기로 센서 데이터 요청 명령을 전송하고, 각 IoT 기기로부터 센서 데이터를 수신하는 단계를 포함한다.
따라서, 본 발명의 실시예에 따른 사물 인터넷 환경에서 다중 규칙 간 센서 데이터 공유에 기반하는 스케줄링 장치 및 방법은 서로 다른 ECA 규칙에서 요구되는 센서 데이터를 분석하여, 공유할 수 있는 센서 데이터가 최대로 공유되면서도 사용자의 요구에 따른 응답 시간을 유지할 수 있도록 스케줄링함으로써 센서 데이터 요청을 최소화하여 IoT 기기의 전력 소비를 최소화할 수 있다.
도 1은 IoT 환경에서 ECA 규칙의 일 예를 나타낸다.
도 2는 센서 데이터 획득 기간에 따른 에너지 소비량을 나타낸다.
도 3은 IoT 프레임 워크에서 센서 데이터의 공유를 이용한 스케줄링 개념을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 IoT 시스템의 스케줄링 장치의 개략적 구조를 나타낸다.
도 5는 테이블 저장부의 각 테이블에 저장되는 데이터의 일 예를 나타낸다.
도 6은 도 4의 스케줄 관리자의 상세 구성을 나타낸다.
도 7은 도 5의 스케줄 관리자의 스케줄링 기법의 개념을 설명하기 위한 도면이다.
도 8은 도 6의 예측 공유 기반 스케줄부의 스케줄링 기법의 개념을 설명하기 위한 도면이다.
도 9는 스케줄링 기법에 따라 정규화된 센서 데이터 수집 횟수를 시물레이션한 결과를 나타낸다.
도 10은 본 발명의 일 실시예에 따른 IoT 시스템의 스케줄링 방법을 나타낸다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 설명하는 실시예에 한정되는 것이 아니다. 그리고, 본 발명을 명확하게 설명하기 위하여 설명과 관계없는 부분은 생략되며, 도면의 동일한 참조부호는 동일한 부재임을 나타낸다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "...부", "...기", "모듈", "블록" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 3은 IoT 프레임 워크에서 센서 데이터의 공유를 이용한 스케줄링 개념을 설명하기 위한 도면이다.
도 3에서는 도 1의 3개의 ECA 규칙 중 제1 규칙과 제3 규칙을 참조하여 서로 다른 ECA 규칙이 센서 데이터를 공유할 수 있도록 스케줄링하는 개념을 설명한다. 도 3에서 (a)는 각 규칙을 독립적으로 구분하여 스케줄하는 경우를 나타내고, (b)는 2개의 규칙에서 요구되는 센서 데이터를 공유하여 스케줄하는 경우를 나타낸다. 그리고 각 규칙에서 가로 막대는 요구되는 센서 데이터를 수집하기 위한 수집 대기 시간을 나타내고, 화살표는 각 센서 데이터 항목의 유효 기간을 나타낸다.
도 1에 도시된 바와 같이, 제1 규칙과 제3 규칙은 모두 움직임 감지가 이벤트로 설정되어 있으며, 제1 규칙의 조건에는 습도와 조도 데이터가 포함되고, 제3 규칙의 조건에는 온도와 습도 데이터가 포함된다. 즉 제1 규칙과 제3 규칙은 모두 조건 만족 여부를 평가하기 위해 습도 데이터를 획득해야 한다.
그러나 (a)에 도시된 바와 같이, 기존의 스케줄링 기법에서는 각각의 규칙을 독립적으로 구분하여 스케줄링하므로, 제1 규칙은 조건 설정 순서에 따라 습도 데이터를 먼저 수집한 후, 조도 데이터를 수집한다. 그리고 제3 규칙은 온도 데이터를 먼저 수집한 후, 조도 데이터를 수집한다. 이때 습도 데이터의 유효 기간이 온도 데이터의 수집 대기 시간보다 짧아 유효 기간을 초과하게 되므로, (a)에서는 제3 규칙을 위해 습도 데이터를 다시 수집하였다.
그에 반해 (b)에서는 제1 규칙과 제3 규칙에서 습도 데이터가 공유되는 점을 인지하고 습도 데이터의 유효 기간을 고려하여, 제1 규칙에서 조도 데이터를 먼저 획득하고 이후 습도 데이터를 획득하도록 스케줄링 하였다. 이 경우, 습도 데이터는 제3 규칙에서 온도 데이터의 수집 대기 시간 이후에도 유효 기간 내이므로, 제3 규칙은 습도 데이터를 다시 수집하지 않고 그대로 이용할 수 있다. 따라서 (a)에서는 습도 데이터를 2회 수집하는데 반해, (b)에서는 1회만 수집하므로 IoT 시스템의 통신량을 줄여 전력 소비를 저감시킬 수 있다. 뿐만 아니라 습도 데이터가 이미 획득되어 있으므로 습도 데이터의 수집 대기 시간이 필요하지 않아 제3 규칙의 조건 판정을 조기에 마칠 수 있어 더 빠른 응답 동작을 수행할 수 있도록 한다.
결과적으로 다수의 ECA 규칙에서 센서 데이터 중 공유 가능한 센서 데이터를 확인하여 공유할 있도록 한다면 전력 소비를 저감할 뿐만 아니라, IoT 시스템의 응답 속도를 개선할 수 있다.
다만 다수의 ECA 규칙에서 센서 데이터의 공유 효율성을 높이기 위해서는 데이터 수집 스케줄링에서 규칙 기한(rule deadline), 조기 조건 평가 종료(early condition evaluation termination), 신선도 간격(freshness interval) 및 규칙간 데이터 공유(data sharing)의 4가지 항목이 고려되어야 한다.
첫번째 항목인 규칙 기한은 각 규칙에는 이벤트 발생 후, 동작이 실행되어야 하는 기간을 나타낸다. 사용자는 ECA 규칙을 설정함에 있어, 이벤트 발생 후, 일정 제한 시간 이내에 동작이 실행될 것을 기대한다. 예를 들어, 도 1의 규칙 2에 따르면 움직임이 감지되면, 조명을 켜야 한다. 이때, 조명을 켜는 동작이 지연되면, 사용자가 직접 조명을 켜야 하며, 이는 IoT 시스템의 효용성을 떨어뜨리는 결과를 초래한다. 따라서 IoT 시스템은 규칙 기한 내에 동작을 수행할 수 있어야 한다.
두번째 항목인 조기 조건 평가 종료는 각 규칙이 조건에 설정된 모든 센서 데이터를 획득하지 않더라도 조건 평가를 종료할 수 있음을 의미한다. 일 예로 도 1의 규칙 1에서는 습도가 80% 이상이거나 조도가 400lux 미만(Humidity > 80 || Illuminance < 400)이 조건으로 설정되어 있으므로, 조도 데이터나 습도 데이터 중 우선 수집된 센서 데이터가 조건을 만족하면 조건 평가를 조기에 종료할 수 있다. 즉 나머지 센서 데이터는 수집하지 않아도 무방하다.
세번째 항목인 신선도 간격은 상기한 각 센서 데이터의 유효 기간을 의미한다. 상기한 바와 같이, 센서 데이터는 그 종류에 따라 서로 유효 기간이 상이하게 설정될 수 있으므로 각 센서 데이터의 신선도 간격을 고려하여 스케줄링 되어야 한다.
마지막 항목인 규칙간 데이터 공유 또한 상기한 바와 같이, 스케줄링 시에 서로 다른 다수의 규칙 사이에 공유 가능한 센서 데이터를 분석해야 함을 의미한다.
그러므로 본 실시예에 따른 스케줄링 장치는 상기한 4가지 항목을 고려하여 센서 데이터 수집 스케줄을 조절할 수 있어야 한다.
도 4는 본 발명의 일 실시예에 따른 IoT 시스템의 스케줄링 장치의 개략적 구조를 나타내고, 도 5는 테이블 저장부의 각 테이블에 저장되는 데이터의 일 예를 나타낸다.
도 4에서는 스케줄링 장치가 IoT 서버로 구현되는 것으로 가정하였으나, 스케줄링 장치는 IoT 서버의 구성 요소로 포함될 수도 있으며, 별도의 장치로 구현되거나, 다른 IoT 기기에 포함되어 구현될 수 있다.
도 4를 참조하면, 본 실시예에 따른 IoT 서버는 테이블 저장부, 스케줄 관리자(200) 및 기기 관리자(300)를 포함할 수 있다.
테이블 저장부는 스케줄 관리자(200)가 데이터 수집 스케줄을 설정하기 위한 적어도 하나의 규칙에 대한 데이터를 저장하고, 스케줄 관리자(200)에 의해 설정된 센서 데이터의 수집 스케줄과 수집된 센서 데이터에 따른 조건 판정 결과를 저장한다.
테이블 저장부는 규칙 저장부(110), 이벤트 저장부(120), 데이터 수집 스케줄 저장부(130), 데이터 항목 저장부(140) 및 평가 상태 저장부(150)를 포함할 수 있다.
규칙 저장부(110)는 다수의 ECA 규칙을 포함하는 규칙 테이블이 저장된다. 도 5에 도시된 바와 같이, 규칙 테이블에는 이벤트 식별자, 조건 항목, 동작 항목이 매칭되어 저장된다. 그리고 이벤트 저장부(120)에는 다수의 이벤트를 포함하는 이벤트 테이블이 저장되며, 이벤트 테이블에는 다수의 이벤트와 규칙 식별자가 매칭되어 포함된다. 여기서 이벤트 식별자와 규칙 식별자는 이벤트 테이블에 포함된 다수의 이벤트와 규칙 테이블에 포함된 다수의 규칙에 대한 식별자로서, 규칙과 이벤트를 상호 연관시킴으로써, 스케줄 관리자(200)가 이벤트 발생에 따른 규칙의 조건을 확인하여 데이터 수집 스케줄을 설정하고, 수집된 데이터를 기반으로 조건을 판정할 수 있도록 한다.
데이터 수집 스케줄 저장부(130)는 스케줄 관리자(200)에 의해 설정된 센서 데이터에 대한 데이터 수집 스케줄 테이블이 저장된다. 데이터 수집 스케줄 테이블에는 수집되는 센서 데이터의 이름과 수집할 수집 시간이 매칭되어 포함되고, 스케줄 관리자(200)의 요청에 응답하여 포함된 수집 스케줄을 기기 관리자(300)로 전달하여 기기 관리자(300)가 설정된 스케줄에 따라 센서 데이터를 수집하도록 한다.
데이터 항목 저장부(140)는 기기 관리자(300)가 수집한 센서 데이터가 포함되는 데이터 항목 테이블을 저장한다. 이때 데이터 항목 테이블은 기기 관리자(300)를 통해 수집된 센서 데이터의 항목을 나타내는 센서 데이터 이름과, 센서 데이터의 유효 기간 및 센싱 값이 매칭되어 포함된다.
평가 상태 저장부(150)는 평가 상태 보드 테이블이 저장되며, 평가 상태 보드 테이블에는 규칙 기한(deadline)과 규칙, 센서 데이터 이름 및 조건 판정 결과가 매칭되어 저장된다.
여기서는 설명의 편의를 위하여 테이블 저장부의 각 구성을 별도로 도시하였으나, 테이블 저장부는 메모리 장치로 구현되어 스케줄 관리자(200)에 포함될 수 있다.
기기 관리자(300)는 통신 관리자(310) 및 이벤트 핸들러(320)를 포함할 수 있다.
통신 관리자(310)는 IoT 서버와 통신 가능한 다수의 IoT 기기와 통신을 수행한다. 여기서 다수의 IoT 기기는 움직임, 온도, 습도, 조도 등과 같이 기설정된 환경을 감지하여 센서 데이터를 획득하여 스케줄링 장치로 전송하는 센서 기기와 스케줄링 장치에서 인가되는 명령에 응답하여 지정된 동작을 수행하는 동작 기기로 구분될 수 있다. 또한 여기서는 센서 데이터 중 이벤트에 관한 센서 데이터를 이벤트 데이터라고 하며, 센서 기기 중 이벤트 발생을 감지할 수 있는 센서 기기를 이벤트 센서 기기라고 한다.
통신 관리자(310)는 스케줄 관리자(200)의 제어에 따라 이벤트 센서 기기로부터 이벤트 데이터를 인가받아, 이벤트 핸들러(320)로 전달하고, 스케줄 관리자(200)에 의해 데이터 수집 스케줄 저장부(130)에서 전달되는 데이터 수집 스케줄에 따라 수집해야 하는 센서 데이터를 감지하는 센서 기기로 감지 명령을 전달한다. 그리고 센서 기기로부터 센싱 데이터가 수신되면, 수신된 센싱 데이터를 데이터 항목 저장부(140)로 전달하여 저장한다.
이벤트 핸들러(320)는 이벤트 센서 기기에서 통신 관리자(310)로 이벤트 데이터가 수신되면, 이벤트 데이터를 스케줄 관리자(200)로 전달하여 스케줄 관리자(200)가 이벤트 발생을 인지할 수 있도록 한다.
스케줄 관리자(200)는 이벤트 저장부(120)에 저장된 이벤트 테이블을 분석하여, 감지해야 하는 이벤트를 판별하고, 기기 관리자(300)의 통신 관리자(310)를 통해 판별된 이벤트를 감지할 수 있는 이벤트 센서 기기로 이벤트 감지 명령을 전달하여 이벤트 센서 기기가 이벤트를 감지할 수 있도록 한다. 여기서 이벤트는 언제 발생할지 예측이 불가능하므로, 스케줄 관리자(200)는 이벤트 센서 기기가 이벤트별로 미리 지정된 주기에 따라 주기적으로 이벤트 발생 여부를 감지하도록 이벤트 감지 명령을 전달할 수 있다. 스케줄 관리자(200)는 규칙에 제거되어 특정 이벤트 데이터가 요구되지 않는 경우, 이벤트 감지 중지 명령을 이벤트 센서 기기로 전달할 수도 있다. 즉 이벤트 테이블에 포함되지 않은 이벤트를 이벤트 센서 기기가 감지하지 않도록 한다.
또한 스케줄 관리자(200)는 이벤트가 발생하기 이전 불필요하게 센서 기기로 센서 데이터를 미리 요청하여 수집하지 않음으로써, 센서 기기의 전력 소비를 저감한다.
그리고 스케줄 관리자(200)는 이벤트 핸들러(320)를 통해 이벤트 데이터가 전달되면, 이벤트 테이블의 규칙 식별자를 확인하고, 규칙 저장부(110)에 저장된 다수의 ECA 규칙에서 확인된 규칙 식별자에 대응하는 규칙을 확인한다.
이후 스케줄 관리자(200)는 이벤트 데이터에 대응하는 규칙이 확인되면 확인된 규칙에 설정된 조건을 분석하여 센서 데이터의 수집 스케줄을 결정하여 데이터 수집 스케줄 저장부(130)의 데이터 수집 스케줄 테이블에 저장하고, 데이터 수집 스케줄 테이블에 저장된 수집 스케줄에 따라 통신 관리자(310)를 통해 센서 데이터 요청을 센서 기기로 전송한다.
그리고 스케줄 관리자(200)는 센서 기기로부터 센서 데이터가 전송되어 통신 관리자(310)를 통해 데이터 항목 저장부(140)의 데이터 항목 테이블에 수집되면, 수집된 데이터 항목 테이블의 센서 데이터를 이용하여 규칙의 조건과 규칙 기한이 만족되었는지 판정하여, 판정 결과를 평가 상태 저장부(150)의 평가 상태 보드 테이블에 저장한다.
그리고 판정 결과에 따라 해당 규칙에 설정된 동작이 수행되도록 통신 관리자(310)를 통해 IoT 기기 중 동작 기기로 동작 명령을 전송한다.
스케줄 관리자(200)는 센서 데이터의 수집 스케줄을 결정하기 위해, 우선 이벤트 테이블에 포함된 이벤트 각각에 대응하는 규칙을 확인한다. 스케줄 관리자(200)는 이벤트 테이블에서 각 이벤트에 매칭된 규칙 식별자를 통해 규칙 테이블에 포함된 다수의 규칙 중 특정 이벤트에 관련된 규칙(r)을 확인하여 규칙 집합(R)을 획득할 수 있다.
그리고 규칙 테이블에서 규칙 집합(R)의 각 규칙(r)의 조건을 분석하여, 각 규칙(r) 조건을 평가하기 위해 요구되는 센서 데이터(vr)의 집합(Vr)을 획득한다. 즉 발생되는 이벤트에 대응하는 각 규칙의 조건을 판정하기 위해 요구되는 모든 센서 데이터(vr)를 확인한다.
그리고 획득된 센서 데이터 집합(Vr)의 각 센서 데이터(vr)의 신선도 간격(I[v])과 규칙 기한(Dr)을 제약 사항으로 반영하여, 각 센서 데이터(vr)의 수집 시간을 스케줄링한다.
규칙(r)에 대한 이벤트가 발생한 트리거 시간을 tr 이라 하고, 규칙(r)에 대한 평가 종료 시간을 tr E 이라 하면, 규칙 기한에 대한 제약 사항과 신선도 간격에 대한 제약 사항은 각각 수학식 1과 수학식 2로 표현될 수 있다.
Figure 112020115770669-pat00001
그리고 신선도 간격에 대한 제약 사항은 수학식 2로 표현될 수 있다.
Figure 112020115770669-pat00002
도 6은 도 4의 스케줄 관리자의 상세 구성을 나타내고, 도 7은 도 5의 스케줄 관리자의 스케줄링 기법의 개념을 설명하기 위한 도면이다.
도 6을 참조하면, 본 실시예에 따른 스케줄 관리자(200)는 신선도 기반 스케줄부(210), 조기 종료 기반 스케줄부(220) 및 데이터 공유 기반 스케줄부(230)를 포함할 수 있다.
도 7을 참조하여, 도 6의 스케줄 관리자(200)를 설명하면, 우선 신선도 기반 스케줄부(210)는 기존의 단일 규칙에 대한 스케줄링 기법인 최소 휘발성 항목 우선(Least Volatile item First: 이하 LVF) 알고리즘에 따라 도 7의 (a)에 도시된 바와 같이, 각 규칙에 대해 신선도 간격(I[v])이 긴 센서 데이터를 우선 수집하도록 스케줄링 한다. 도 7에서 vr i 는 센서 데이터 항목 집합(Vr)에서 i번쩨 센서 데이터를 나타낸다.
도 7의 (a)에 도시된 바와 같이, 신선도 기반 스케줄부(210)는 LVF 알고리즘에 따라 3개의 센서 데이터(v1 1, v1 2, v1 3)가 요구되는 제1 규칙(Rule 1)에서 신선도 간격(I[v])의 길이에 따라 제1 센서 데이터(v1 1), 제3 센서 데이터(v1 3) 및 제2 센서 데이터(v1 2)의 순서로 센서 데이터를 수집하도록 스케줄링한다.
조기 종료 기반 스케줄부(220)는 신선도 기반 스케줄부(210)에서 LVF 알고리즘에 따라 스케줄링된 센서 데이터를 규칙에 대한 조건의 중첩 구조와 평가 조기 종료 확률을 고려하여 센서 데이터의 수집 순서를 변경한다.
조기 종료 기반 스케줄부(220)는 조건 평가 조기 종료 확률을 높이기 위해 센서 데이터 항목(v)의 센서 데이터 수집 대기 시간(L[v])을 분석하여, 최소 예상 조건 평가 대기 시간을 계산한다. 여기서 조기 종료 기반 스케줄부(220)는 설정된 조건을 트리 구조로 변환하고, 변환된 트리 구조를 재귀적으로 탐색하여 반복 변형하며 예상 조건 평가 대기 시간을 계산하여 최소 예상 조건 평가 대기 시간을 계산할 수 있다. 이는 논리식의 연산 효율화를 위해 연구되어 공지된 기술이므로 여기서는 상세하게 설명하지 않는다.
그리고 조기 종료 기반 스케줄부(220)는 최소 예상 조건 평가 대기 시간이 수학식 2의 신선도 간격(I[v])에 대한 제약 사항을 위반하지 않으면, LVF에 따라 설정된 스케줄을 수집 대기 시간(L[v])이 가장 짧은 센서 데이터를 우선 배치하는 방식으로 스케줄을 조절한다. 특정 센서 데이터의 항목이 배치되면 나머지 필요한 센서 데이터에 대해서도 반복적으로 수집 대기 시간(L[v])을 분석하여, 신선도 간격(I[v])에 대한 제약 사항 범위내에서 수집 대기 시간(L[v])이 짧은 센서 데이터 순서로 순차 배치한다.
이와 같이 조건식에 대한 트리 구조에 기반하여 조건의 중첩 구조와 평가 조기 종료 확률을 고려한 기법을 여기서는 트리 기반 최소 휘발성 항목 우선(tree-based Least Volatile item First: 이하 tLVF) 알고리즘이라 한다.
tLVF 알고리즘에서는 도 1의 제1 규칙(Rule 1)과 같이 2개의 조건 중 하나만을 만족해도, 스케줄 관리자(200)가 조건 평가를 수행할 수 있는 경우에 빠르게 수집할 수 있는 센서 데이터를 우선 획득하여 조건 평가를 수행하여 조건 평가를 조기에 종료시킴으로써 나머지 센서 데이터를 수집하지 않고도 더 빠른 동작을 수행할 수 있도록 할 수 있다. 이에 도 2의 (b)에서 제1 규칙(Rule 1)은 (a)에서와 달리 3개의 센서 데이터(v1 1, v1 2, v1 3)가 제1 센서 데이터(v1 1), 제2 센서 데이터(v1 2) 및 제3 센서 데이터(v1 3) 순서로 수집되도록 스케줄링 되지만, 제1 센서 데이터(v1 1), 제2 센서 데이터(v1 2)만으로 조건을 만족하는 것으로 판정이 됨에 따라 제3 센서 데이터(v1 3)를 수집하지 않는다.
그러므로 (b)의 제1 규칙(Rule 1)은 (a)의 제1 규칙(Rule 1)과 비교하여 동일한 트리거 시간(t1)을 갖지만, 조건 평가 조기 종료에 따라 (b)의 평가 종료 시간(t1 E)이 더 빠르다는 것을 알 수 있다.
그리고 이때 제2 규칙(Rule 2)에도 3개의 센서 데이터(v2 1, v2 2, v2 3)가 수집되어야 하고, 제2 규칙(Rule 2)에서는 제1 센서 데이터(v2 1), 제3 센서 데이터(v2 3) 및 제2 센서 데이터(v2 2)의 순서로 센서 데이터를 수집하도록 스케줄링된다. 다만 제2 규칙(Rule 2)의 제3 센서 데이터(v2 3)는 제1 규칙(Rule 1)의 제1 센서 데이터(v1 1)와 동일한 센서 데이터로서, 제1 규칙(Rule 1)을 위해 이미 수집되어 있고, 제1 규칙(Rule 1)의 제1 센서 데이터(v1 1)의 유효 기간 이내이므로 추가적으로 수집되지 않고 공유될 사용될 수 있다. 그럼에도 (b)에 도시된 tLVF 알고리즘에서는 각각의 규칙을 독립적으로 스케줄링함에 따라 스케줄 관리자(200)는 제2 규칙(Rule 2)에서 제3 센서 데이터(v2 3)를 별도로 획득하는 것으로 스케줄링한다. 즉 이미 수집되고 유효한 센서 데이터를 중복하여 반복 획득하도록 스케줄링된다.
이에 데이터 공유 기반 스케줄부(230)는 tLVF 알고리즘에 따라 설정된 다수의 규칙 각각에서 요구되는 센서 데이터 중 동일한 센서 데이터가 다른 규칙에 의해 이전 획득되도록 설정되어 있는지 확인한다. 그리고 다른 규칙에 의해 설정된 센서 데이터가 신선도 간격(I[v])이내이면, 해당 센서 데이터를 신선도 간격(I[v]) 이후에 수집하는 것으로 지연시킨다. 즉 기존에 수집된 센서 데이터를 신선도 간격(I[v]) 동안 공유하여 이용할 수 있도록 함으로써, 중복하여 수집하지 않도록 한다.
이러한 스케줄링 기법을 여기서는 공유 인지 트리 기반 최소 휘발성 항목 우선(Sharing aware tree-based Least Volatile item First: S-tLVF) 알고리즘이라 한다.
도 7에서 (c)를 (b)와 비교하면, (c)에서는 제1 규칙(Rule 1)의 제1 센서 데이터(v1 1)와 동일한 센서 데이터인 제2 규칙(Rule 2)의 제3 센서 데이터(v2 3)를 제1 센서 데이터(v1 1)의 신선도 간격(I[v1 1]) 이후에 수집하는 것으로 지연시킨다. 따라서 제2 규칙(Rule 2)의 제3 센서 데이터(v2 3)를 획득하지 않는 만큼 (c)에서 제2 규칙(Rule 2)의 조건 평가 종료 시간(t2 E)이 (b)보다 빠르다는 것을 알 수 있다.
한편, 스케줄 관리자(200)는 도 6에 도시된 바와 같이, 예측 공유 기반 스케줄부(240)를 더 포함할 수 있다. 예측 공유 기반 스케줄부(240)는 S-tLVF 알고리즘을 확장하여 이후 공유될 수 있는 센서 데이터를 고려하여 센서 데이터의 수집 시점을 지연할 수 있다. 여기서는 이러한 기법을 예측 공유 인지 트리 기반 최소 휘발성 항목 우선(Predictive sharing-aware data acquisition scheduling: PS-tLVF)이라 한다.
예측 공유 기반 스케줄부(240)는 포워드 스케줄부(241)와 백워드 스케줄부(242)를 포함할 수 있다.
포워드 스케줄부(241)는 데이터 공유 기반 스케줄부(230)에서 S-tLVF 알고리즘에 따라 설정된 센서 데이터 수집 스케줄에서 특정 규칙의 조건에서 요구되는 센서 데이터 중 다른 규칙에 의해 현재 수집되고 있는 센서 데이터가 존재하는 경우, 해당 센서 데이터가 획득될 때까지 센서 데이터 수집을 지연한다.
도 8의 (a)를 살펴보면, 왼쪽은 S-tLVF 알고리즘에 따라 스케줄링된 센서 데이터를 나타내고, 오른쪽은 PS-tLVF 알고리즘 중 포워드 PS-tLVF 알고리즘에 따라 스케줄링된 센서 데이터를 나타낸다.
도 8의 (a)에서 제1 및 제2 규칙(Rule 1, Rule 2)에서는 각각 3개의 센서 데이터((v1 1, v1 2, v1 3), (v2 1, v2 2, v2 3))가 순차적으로 수집되도록 스케줄링되었다. 그리고 이 중 제1 규칙(Rule 1)의 제3 센서 데이터(v1 3)와 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1)가 동일한 센서 데이터로서 서로 공유 될 수 있으므로, S-tLVF 알고리즘에 따라 제1 규칙(Rule 1)의 제3 센서 데이터(v1 3)가 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1)의 신선도 간격(I[v2 1]) 이후에 수집되도록 지연되었다. 그러나 제1 규칙(Rule 1)은 제3 센서 데이터(v1 3) 대신 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1)를 이용하여 조건 평가를 수행할 수 있으므로, 센서 데이터 수집 효율성을 향상시킬 수 있다.
그러나 제1 규칙(Rule 1)에서 제3 센서 데이터(v1 3)(즉 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1))에 의해 조건 평가 조기 종료가 가능한 경우를 가정하면, (a)의 오른쪽에 도시된 바와 같이, 제1 규칙(Rule 1)은 제3 센서 데이터(v1 3)에 해당하는 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1)의 수집 대기 시간(L[v1 2])이 완료되도록 제2 센서 데이터(v1 2)를 획득하는 시점을 지연함으로써, 제1 규칙(Rule 1)의 조건 평가 종료 시간(t1 E)을 더 앞당길 수 있다. 즉 중첩되는 시간 구간에서의 제2 센서 데이터(v1 2)를 획득하는 것보다, 제3 센서 데이터(v1 3)에 해당하는 제2 규칙(Rule 2)의 제1 센서 데이터(v2 1)가 수신되도록 대기하는 것이 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t1 E)을 더 앞당길 가능성이 있다. 또한 이 경우, 제2 센서 데이터(v1 2)를 획득할 필요가 없어, 전력 소모를 줄일 수 있다.
비록 제3 센서 데이터(v1 3)에 의해 조건 평가 조기 종료되지 않는 경우, 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t1 E)이 일부 지연될 수 있으나, 이로 인한 지연이 크지 않으므로, 전력 소모의 저감 효과를 더 중요시하는 경우, (a)와 같은 포워드 PS-tLVF 알고리즘을 이용하는 것이 더욱 효율적이다.
그리고 포워드 스케줄부(241)는 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t1 E)이 크게 지연되지 않도록 기지정된 기준 지연 시간을 설정하여, 제2 센서 데이터(v1 2)에 대한 지연 시간이 기준 지연 시간 이내인 경우에만 지연되도록 할 수 있다.
한편, 백워드 스케줄부(242)는 데이터 공유 기반 스케줄부(230)에서 S-tLVF 알고리즘에 따라 설정된 센서 데이터 수집 스케줄에서 특정 규칙의 조건에서 요구되는 센서 데이터 중 다른 규칙과 공유되는 센서 데이터의 신선도 간격이 다른 규칙에서 요청되는 시점까지 유지될 수 있도록 규칙의 센서 데이터 획득 시점을 지연한다.
도 8의 (b)를 살펴보면, 왼쪽은 S-tLVF 알고리즘에 따라 스케줄링된 센서 데이터를 나타내고, 오른쪽은 PS-tLVF 알고리즘 중 백워드 PS-tLVF 알고리즘에 따라 스케줄링된 센서 데이터를 나타낸다.
도 8의 (b)에서는 제1 규칙(Rule 1)이 3개의 센서 데이터 (v1 1, v1 2, v1 3)를 순차적으로 수집하도록 스케줄링 되었으며, 제2 규칙(Rule 1, Rule 2)은 4개의 센서 데이터(v2 1, v2 2, v2 3, v2 4)를 순차적으로 수집하도록 스케줄링되었다.
이 중 제1 규칙(Rule 1)의 제1 센서 데이터(v1 1)와 제2 규칙(Rule 2)의 제4 센서 데이터(v2 4)가 동일한 센서 데이터로서 서로 공유될 수 있다. 다만, 왼쪽에 도시된 바와 같이, 제1 센서 데이터(v1 1)의 신선도 간격(I[v1 1])은 제2 규칙(Rule 2)에서 제4 센서 데이터(v2 4)가 수집 요청되는 시점가지 유지되지 않는다. 이에 S-tLVF 알고리즘에서는 제2 규칙(Rule 2)의 제4 센서 데이터(v2 4)를 다시 수집하여야만 한다.
그에 반해, 오른쪽에 도시된 백워드 PS-tLVF 알고리즘에서는 제1 규칙(Rule 1)의 제1 센서 데이터(v1 1)가 획득되는 시점을 지연하여, 제1 센서 데이터(v1 1)의 신선도 간격(I[v1 1])이 제2 규칙(Rule 2)의 제4 센서 데이터(v2 4)가 요청되는 시점까지 유지되도록 함으로써, 제4 센서 데이터(v2 4)를 다시 수집하지 않도록 한다. 즉 센서 기기의 전력 소비를 저감시킬 수 있다.
이 경우, 제1 규칙(Rule 1)의 3개의 센서 데이터 (v1 1, v1 2, v1 3)를 수집하는 시점이 모두 지연되어 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t1 E)이 지연되지만, 제2 규칙(Rule 2)이 제4 센서 데이터(v2 4)를 수집하지 않아 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t2 E)이 크게 앞당겨질 수 있다.
백워드 스케줄부(242) 또한 제1 규칙(Rule 1)에 대한 조건 평가 종료 시간(t1 E)이 크게 지연되지 않도록 기지정된 기준 지연 시간을 설정하여, 제1 규칙(Rule 1)의 조건 평가 종료 시간(t1 E)이 기준 지연 시간 이내인 경우에만 지연되도록 할 수 있다.
결과적으로 본 실시예에 따른 스케줄링 장치는 동일 이벤트에 관한 다수의 규칙에 설정된 조건을 분석하여 요구되는 센서 데이터를 확인하고, 확인된 센서 데이터를 각 규칙별 신선도 간격(I[v])이 긴 센서 데이터부터 우선 수집되도록 1차로 스케줄링한다. 그리고 각 규칙의 조건식을 트리 구조로 변환 및 재귀적 탐색하여 각 센서 데이터의 수집 대기 시간(L[v])을 기반으로 계산되는 최소 예상 조건 평가 대기 시간이 신선도 간격(I[v])에 대한 제약 사항을 위반하지 않는 범위에서 수집 대기 시간(L[v])이 짧은 센서 데이터 순서로 순차 배치하여 2차 스케줄링한다. 이후, 2차 스케줄링된 센서 데이터 중 다른 규칙에서 먼저 수집하는 동일한 종류의 센서 데이터를 확인하고, 확인된 센서 데이터를 해당 규칙이 우선 이용하고, 센서 데이터의 신선도 간격(I[v]) 이후에 재 수집되도록 지연하여 3차 스케줄링한다.
또한 3차 스케줄링된 다수의 규칙에 대한 센서 데이터 중 공유되는 센서 데이터가 다른 규칙에 의해 현재 수집되고 있는 센서 데이터가 존재하는 경우, 기지정된 기준 지연 시간 이내에서 공유되지 않는 센서 데이터 중 적어도 하나를 지연하여, 불필요할 수 있는 센서 데이터를 수집하지 않도록 할 수 있다. 또는 규칙의 조건에서 요구되는 센서 데이터 중 다른 규칙과 공유되는 센서 데이터의 신선도 간격이 다른 규칙에서 요청되는 시점까지 유지될 수 있도록 규칙의 센서 데이터 획득 시점을 지연하여 센서 데이터를 수집하는 횟수를 저감시킬 수도 있다.
도 9는 스케줄링 기법에 따라 정규화된 센서 데이터 수집 횟수를 시물레이션한 결과를 나타낸다.
도 9에서 (a)는 LVF 알고리즘을 기준으로 tLVF, S-tLVF 및 PS-tLVF 알고리즘 각각의 센서 데이터 수집 횟수 비율을 나타내고, (a)에서는 규칙에서 데이터 항목이 많은 경우와 적은 경우를 구분하였다. (a)를 살펴보면, LVF 알고리즘에 대비하여 센서 데이터 전송 횟수가 tLVF에서는 17.2 % 및 24.9 % 저감되고, S-tLVF에서는 31.9 % 및 34.7 % 저감되며, PS-tLVF에서는 33.1 % 및 34.7 % 저감되었음을 알 수 있다. 즉 센서 데이터 전송 횟수를 크게 줄여 전력 소모를 저감시킬 수 있음을 확인할 수 있다.
그리고 (b)는 신선도 간격 변화에 따른 스케줄링 기법별 센서 데이터 수집 횟수 변화를 나타낸다. (b)에 도시된 바와 와 같이, S-tLVF 및 PS-tLVF가 신선도 간격에 관계없이 LVF 및 tLVF보다 적은 횟수로 센서 데이터 수집을 요청함을 알 수 있다.
도 10은 본 발명의 일 실시예에 따른 IoT 시스템의 스케줄링 방법을 나타낸다.
도 3 내지 도 8을 참조하여 도 10의 스케줄링 방법을 설명하면, 우선 스케줄 장치는 사용자에 의해 미리 설정되어 저장된 다수의 규칙을 분석하여 동일 이벤트에 대한 규칙을 추출하여 규칙 집합(R)을 획득한다(S11).
그리고 규칙 집합(R) 내의 규칙(r)들이 요구하는 모든 센서 데이터를 확인한다(S12).
각 이벤트에 대한 규칙 기한 및 각 센서 데이터에 대한 신선도 간격 한계를 수학식 1 및 2의 제약 사항에 따라 설정한다(S13).
이후, 규칙 집합(R) 내의 각 규칙(r)에 설정된 조건에서 요구되는 센서 데이터를 LVF 알고리즘에 기반하여 스케줄링한다(S14). 여기서 LVF 알고리즘은 규칙 집합(R) 내의 각 규칙(r)에서 요구되는 센서 데이터(v)를, 각 센서 데이터별로 미리 지정된 유효 기간을 나타내는 신선도 간격(I[v])이 긴 센서 데이터부터 순차적으로 수집하도록 스케줄링한다.
그리고 LFV 알고리즘에 따라 각 규칙(r)별로 스케줄링된 센서 데이터(v)에 대해, tLVF 알고리즘에 기반하여 재스케줄링한다(S15).
tLVF 알고리즘에서는 LFV 알고리즘에 따라 스케줄링된 각 규칙(r)의 조건이 나타내는 조건식을 트리구조로 변환하고, 변환된 트리 구조에서 각 센서 데이터(v)의 수집 대기 시간(L[v])을 기반으로 조건 평가가 종료될 시간을 나타내는 예상 조건 평가 대기 시간을 계산하여 가장 최소값을 갖는 최소 예상 조건 평가 대기 시간을 계산하고, 계산된 최소 예상 조건 평가 대기 시간이 신선도 간격 제한 사항을 위반하지 않으면, 수집 대기 시간(L[v])이 가장 짧은 센서 데이터가 우선 수집되도록 재스케줄링한다.
한편, tLFV 알고리즘에 따라 재스케줄링된 규칙 집합(R) 내의 규칙(r)들 서로 다른 규칙이 동일한 종류의 센서 데이터를 이용하는 공유 센서 데이터가 존재하는지 판별한다(S16). 만일 공유 센서 데이터가 존재하는 것으로 판별되면, tLFV 알고리즘에 따라 각 규칙(r)별로 스케줄링된 센서 데이터(v)에 대해, S-tLVF 알고리즘에 기반하여 재스케줄링한다(S17).
S-tLVF 알고리즘에서는 공유 센서 데이터를 이용하는 규칙 중 tLVF 알고리즘에 따라 가장 먼저 공유 센서 데이터를 수집하도록 설정된 규칙을 제외한 나머지 규칙들은 공유 센서 데이터를 대응하는 신선도 간격(I[v]) 이후에 수집하도록 지연시킨다.
한편, S-tLVF 알고리즘에 따라 재스케줄링된 규칙 집합(R) 내의 규칙(r)들에 대한 센서 데이터들 중 현재 공유 센서 데이터가 수집되고 있는 규칙이 존재하는지 판별한다(S18).
만일 공유 센서 데이터가 수집되고 있는 규칙이 존재하면, 포워드 알고리즘에 따라 공유 센서 데이터를 이용하는 다른 규칙에서 현재까지 수집되지 않은 나머지 센서 데이터를 공유 데이터가 수집 완료되는 수집 대기 시간(L[v])까지 수집 지연시킨다(S19). 이때 지연되는 시간이 기지정된 기준 지연 시간 이내인 경우에만 수집지연 시키도록 미리 설정될 수 있다.
한편, S-tLVF 알고리즘에 따라 재스케줄링된 규칙 집합(R) 내의 규칙(r)들에 대한 센서 데이터들 중 동일한 센서 데이터를 이용하는 서로 다른 규칙에서 이전 센서 데이터를 수집하도록 스케줄링된 규칙과 이후 센서 데이터를 수집하도록 스케쥴링된 규칙 사이에 신선도 간격(I[v]) 초과로 인해, 센서 데이터를 다시 수집하도록 스케줄링되어 있는지 판별한다(S20). 만일 재수집하도록 스케쥴링된 규칙이 존재하면, 백워드 알고리즘에 따라 이전 센서 데이터를 수집하는 규칙에서 해당 센서 데이터의 수집 시간이 신선도 간격(I[v])이 이후 규칙에서 동일한 센서 데이터를 수집하는 시점까지 도달하도록 지연 스케줄링한다(S21). 이 경우에도 지연되는 시간이 기지정된 기준 지연 시간 이내인 경우에만 수집지연 시키도록 미리 설정될 수 있다.
그리고 설정된 스케줄에 따라 각 센서 데이터를 요청하는 센서 데이터 요청 명령을 대응하는 IoT 기기들로 전송하고, IoT 기기들로부터 센서 데이터를 수신하여 수집한다(S22).
본 발명에 따른 방법은 컴퓨터에서 실행시키기 위한 매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다. 여기서 컴퓨터 판독가능 매체는 컴퓨터에 의해 액세스 될 수 있는 임의의 가용 매체일 수 있고, 또한 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함하며, ROM(판독 전용 메모리), RAM(랜덤 액세스 메모리), CD(컴팩트 디스크)-ROM, DVD(디지털 비디오 디스크)-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등을 포함할 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.
따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 청구범위의 기술적 사상에 의해 정해져야 할 것이다.
110: 규칙 저장부 120: 이벤트 저장부
130: 데이터 수집 스케줄 저장부 140: 데이터 항목 저장부
150: 평가 상태 저장부 200: 스케줄 관리자
210: 신선도 기반 스케줄부 220: 조기 종료 기반 스케줄부
230: 데이터 공유 기반 스케줄부 240: 예측 공유 기반 스케줄부
241: 포워드 스케줄부 242: 백워드 스케줄부
300: 기기 관리자 310: 통신 관리자
320: 이벤트 핸들러

Claims (20)

  1. 지정된 이벤트 발생 시, 조건을 분석하여 실행해야 하는 동작이 각각 설정된 다수의 규칙이 저장된 테이블 저장부;
    상기 다수의 규칙 중 동일한 이벤트에 대한 규칙을 추출하고, 추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터의 유효 시간을 나타내는 신선도 간격에 기반하여 센서 데이터를 수집하는 순서를 기지정된 방식에 따라 스케줄링하며, 스케줄링된 각 규칙의 센서 데이터 중 서로 다른 규칙이 동일하게 이용하는 센서 데이터인 공유 센서 데이터가 존재하면, 공유 센서 데이터를 이용하는 서로 다른 규칙 중 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링된 규칙은 그대로 공유 센서 데이터를 수집하고 나머지 규칙은 공유 센서 데이터를 지연하여 수집하도록 스케줄링하는 스케줄 관리자; 및
    상기 스케줄 관리자의 제어에 따라 스케줄링된 센서 데이터의 수집 순서에 따라 각 센서 데이터에 대응하는 IoT 기기로 센서 데이터 요청 명령을 전송하고, 각 IoT 기기로부터 센서 데이터를 수신하는 기기 관리자를 포함하되,
    상기 스케줄 관리자는
    추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터 각각에 대해 기지정된 신선도 간격을 분석하여, 각 규칙에서 센서 데이터가 상기 신선도 간격이 긴 센서 데이터부터 순차적으로 수집되도록 스케줄링하는 신선도 기반 스케줄부;
    상기 신선도 기반 스케줄부에서 스케줄링된 각 규칙별 센서 데이터 수집 순서에서 각 센서 데이터의 신선도 간격을 기반으로 설정되는 신선도 간격 한계를 초과하지 않는 범위에서, 각 센서 데이터를 요청하여 수집될 때까지의 예상 시간을 나타내는 수집 대기 시간을 기반으로 재스케줄링하는 조기 종료 기반 스케줄부를 포함하고,
    상기 조기 종료 기반 스케줄부는
    상기 각 규칙에 설정된 조건이 나타내는 조건식을 기지정된 방식으로 트리 구조로 변환하고, 변환된 트리구조에서 각 센서 데이터의 수집 대기 시간을 기반으로 조건 만족 여부 판별하기 위한 조건 평가가 종료될 시간을 나타내는 조건 평가 대기 시간의 최소값인 최소 예상 조건 평가 대기 시간이 상기 신선도 간격 한계를 초과하지 않으면, 수집 대기 시간이 가장 짧은 센서 데이터를 우선 수집하도록 재스케줄링하는 IoT 시스템의 스케줄링 장치.
  2. 제1 항에 있어서, 상기 스케줄 관리자는
    상기 조기 종료 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙 중 공유 센서 데이터를 이용하는 규칙을 판별하고, 판별된 규칙 중 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링된 규칙을 제외한 나머지 규칙들은 공유 센서 데이터를 대응하는 신선도 간격 이후에 수집하도록 지연 스케줄링하는 데이터 공유 기반 스케줄부를 더 포함하는 IoT 시스템의 스케줄링 장치.
  3. 제2 항에 있어서, 상기 스케줄 관리자는
    상기 데이터 공유 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙에서 공유 센서 데이터를 수집중인 규칙이 존재하면, 상기 공유 센서 데이터를 이용하는 다른 규칙에서 수집되지 않은 나머지 센서 데이터를 공유 데이터가 수집 완료되는 수집 대기 시간까지 지연 스케줄링하는 포워드 스케줄부를 더 포함하는 IoT 시스템의 스케줄링 장치.
  4. 제3 항에 있어서, 상기 포워드 스케줄부는
    상기 수집 대기 시간까지의 지연 시간이 기지정된 기준 지연 시간 이내인 경우에만, 상기 수집 대기 시간까지 지연 스케줄링을 수행하는 IoT 시스템의 스케줄링 장치.
  5. 제2 항에 있어서, 상기 스케줄 관리자는
    상기 데이터 공유 기반 스케줄부에서 센서 데이터 수집 순서가 스케줄링된 다수의 규칙에서 이전 센서 데이터를 수집하도록 스케줄링된 규칙과 이후 센서 데이터를 수집하도록 스케쥴링된 규칙 사이에 신선도 간격 초과로 인해, 센서 데이터를 다시 수집하도록 스케줄링된 센서 데이터가 존재하면, 이전 센서 데이터를 수집하는 규칙에서 해당 센서 데이터의 수집 시간이 신선도 간격이 이후 규칙에서 동일한 센서 데이터를 수집하는 시점까지 도달하도록 지연 스케줄링하는 백워드 스케줄부를 더 포함하는 IoT 시스템의 스케줄링 장치.
  6. 제5 항에 있어서, 상기 백워드 스케줄부는
    상기 동일한 센서 데이터를 수집하는 시점까지의 지연 시간이 기지정된 기준 지연 시간 이내인 경우에만, 상기 지연 스케줄링을 수행하는 IoT 시스템의 스케줄링 장치.
  7. 삭제
  8. 제1 항에 있어서, 상기 조기 종료 기반 스케줄부는
    상기 신선도 간격 한계를 수학식
    Figure 112021117595230-pat00003

    (여기서 t는 이벤트 발생 시점, I[v]는 센서 데이터의 신선도 간격, Tr E는 규칙(r)에 대한 평가 종료 시간을 나타낸다.)
    에 따라 획득하는 IoT 시스템의 스케줄링 장치.
  9. 제1 항에 있어서, 상기 스케줄 관리자는
    상기 기기 관리자를 통해 다수의 IoT 기기 중 이벤트 발생을 감지하는 이벤트 센서 기기로부터 전송된 이벤트를 수신하고, 테이블 저장부에 저장된 규칙 중 수신된 이벤트에 대응하는 규칙을 탐색하여, 탐색된 규칙에 설정된 조건에 포함된 센서 데이터를 스케줄링된 순서에 따라 상기 기기 관리자를 통해 대응하는 IoT 기기로 요청하고, IoT 기기로부터 전송된 센서 데이터를 기반으로 각 규칙의 조건을 평가하는 IoT 시스템의 스케줄링 장치.
  10. 제9 항에 있어서, 상기 스케줄 관리자는
    각 규칙의 조건 평가 결과와 각 규칙에 설정된 동작을 수행해야 하는 제한 시간을 나타내는 규칙 기한을 만족하면, 규칙에 설정된 동작을 수행할 수 있는 IoT 기기로 동작 명령을 전송하는 IoT 시스템의 스케줄링 장치.
  11. 지정된 이벤트 발생 시, 조건을 분석하여 실행해야 하는 동작이 각각 설정된 다수의 규칙 중 동일한 이벤트에 대한 규칙을 추출하는 단계;
    추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터의 유효 시간을 나타내는 신선도 간격에 기반하여 센서 데이터를 수집하는 순서를 기지정된 방식에 따라 스케줄링하는 단계;
    스케줄링된 각 규칙의 센서 데이터 중 서로 다른 규칙이 동일하게 이용하는 센서 데이터인 공유 센서 데이터가 존재하면, 공유 센서 데이터를 이용하는 서로 다른 규칙 중 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링된 규칙은 그대로 공유 센서 데이터를 수집하고 나머지 규칙은 공유 센서 데이터를 지연하여 수집하도록 재스케줄링하는 단계; 및
    스케줄링된 센서 데이터의 수집 순서에 따라 각 센서 데이터에 대응하는 IoT 기기로 센서 데이터 요청 명령을 전송하고, 각 IoT 기기로부터 센서 데이터를 수신하는 단계를 포함하되,
    상기 재스케줄링하는 단계는
    센서 데이터 수집 순서가 스케줄링된 다수의 규칙 중 공유 센서 데이터를 이용하는 규칙을 판별하는 단계; 및
    판별된 규칙 중 가장 먼저 공유 센서 데이터를 수집하도록 스케줄링된 규칙을 제외한 나머지 규칙들은 공유 센서 데이터를 대응하는 신선도 간격 이후에 수집하도록 지연 스케줄링하는 단계를 포함하고,
    상기 스케줄링하는 단계는
    추출된 규칙 각각에 설정된 조건이 요구하는 센서 데이터 각각에 대해 기지정된 신선도 간격을 분석하여, 각 규칙에서 센서 데이터가 상기 신선도 간격이 긴 센서 데이터부터 순차적으로 수집되도록 1차 스케줄링하는 단계; 및
    1차 스케줄링된 각 규칙별 센서 데이터 수집 순서에서 각 센서 데이터의 신선도 간격을 기반으로 설정되는 신선도 간격 한계를 초과하지 않는 범위에서, 각 센서 데이터를 요청하여 수집될 때까지의 예상 시간을 나타내는 수집 대기 시간을 기반으로 2차 스케줄링하는 단계를 포함하는 IoT 시스템의 스케줄링 방법.
  12. 삭제
  13. 제11 항에 있어서, 상기 재스케줄링하는 단계는
    상기 지연 스케줄링하는 단계 이후, 다수의 규칙에서 공유 센서 데이터를 수집중인 규칙이 존재하는지 판별하는 단계; 및
    상기 공유 센서 데이터를 이용하는 다른 규칙에서 수집되지 않은 나머지 센서 데이터를 공유 데이터가 수집 완료되는 수집 대기 시간까지 추가 지연 스케줄링하는 단계를 더 포함하는 IoT 시스템의 스케줄링 방법.
  14. 제13 항에 있어서, 상기 추가 지연 스케줄링하는 단계는
    상기 수집 대기 시간까지의 지연 시간이 기지정된 기준 지연 시간 이내인지 판별하는 단계; 및
    상기 기준 지연 시간 이내이면, 상기 수집 대기 시간까지 추가 지연 스케줄링을 수행하는 단계를 포함하는 IoT 시스템의 스케줄링 방법.
  15. 제11 항에 있어서, 상기 재스케줄링하는 단계는
    상기 지연 스케줄링하는 단계 이후, 센서 데이터 수집 순서가 스케줄링된 다수의 규칙에서 이전 센서 데이터를 수집하도록 스케줄링된 규칙과 이후 센서 데이터를 수집하도록 스케쥴링된 규칙 사이에 신선도 간격 초과로 인해, 센서 데이터를 다시 수집하도록 스케줄링된 센서 데이터가 존재하는지 판별하는 단계; 및
    이전 센서 데이터를 수집하는 규칙에서 해당 센서 데이터의 수집 시간이 신선도 간격이 이후 규칙에서 동일한 센서 데이터를 수집하는 시점까지 도달하도록 추가 지연 스케줄링하는 단계를 더 포함하는 IoT 시스템의 스케줄링 방법.
  16. 제15 항에 있어서, 상기 추가 지연 스케줄링하는 단계는
    상기 동일한 센서 데이터를 수집하는 시점까지의 지연 시간이 기지정된 기준 지연 시간 이내인지 판별하는 단계; 및
    상기 기준 지연 시간 이내이면, 상기 추가 지연 스케줄링을 수행하는 단계를 포함하는 IoT 시스템의 스케줄링 방법.
  17. 삭제
  18. 제11 항에 있어서, 상기 2차 스케줄링하는 단계는
    상기 각 규칙에 설정된 조건이 나타내는 조건식을 기지정된 방식으로 트리 구조로 변환하고, 변환된 트리구조에서 각 센서 데이터의 수집 대기 시간을 기반으로 조건 만족 여부 판별하기 위한 조건 평가가 종료될 시간을 나타내는 조건 평가 대기 시간의 최소값인 최소 예상 조건 평가 대기 시간을 계산하는 단계; 및
    상기 최소 예상 조건 평가 대기 시간이 상기 신선도 간격 한계를 초과하지 않으면, 우선 수집 대기 시간이 가장 짧은 센서 데이터를 수집하도록 스케줄링하는 단계를 포함하는 IoT 시스템의 스케줄링 방법.
  19. 제18 항에 있어서, 상기 가장 짧은 센서 데이터를 수집하도록 스케줄링하는 단계는
    상기 신선도 간격 한계를 수학식
    Figure 112020115770669-pat00004

    (여기서 t는 이벤트 발생 시점, I[v]는 센서 데이터의 신선도 간격, Tr E는 규칙(r)에 대한 평가 종료 시간을 나타낸다.)
    에 따라 획득하는 IoT 시스템의 스케줄링 방법.
  20. 제11 항에 있어서, 상기 IoT 시스템의 스케줄링 방법은
    기기 관리자를 통해 다수의 IoT 기기 중 이벤트 발생을 감지하는 이벤트 센서 기기로부터 전송된 이벤트를 수신하는 단계;
    저장된 규칙 중 수신된 이벤트에 대응하는 규칙을 탐색하여, 탐색된 규칙에 설정된 조건에 포함된 센서 데이터를 스케줄링된 순서에 따라 상기 기기 관리자를 통해 대응하는 IoT 기기로 요청하는 단계; IoT 기기로부터 전송된 센서 데이터를 기반으로 각 규칙의 조건을 평가하는 단계; 및
    각 규칙의 조건 평가 결과와 각 규칙에 설정된 동작을 수행해야 하는 제한 시간을 나타내는 규칙 기한을 만족하면, 규칙에 설정된 동작을 수행할 수 있는 IoT 기기로 동작 명령을 전송하는 단계를 더 포함하는 IoT 시스템의 스케줄링 방법.
KR1020200142966A 2020-10-30 2020-10-30 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법 KR102382328B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200142966A KR102382328B1 (ko) 2020-10-30 2020-10-30 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200142966A KR102382328B1 (ko) 2020-10-30 2020-10-30 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102382328B1 true KR102382328B1 (ko) 2022-04-01

Family

ID=81183827

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200142966A KR102382328B1 (ko) 2020-10-30 2020-10-30 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102382328B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115551060A (zh) * 2022-10-20 2022-12-30 浙江瑞邦科特检测有限公司 低功耗数据监控方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170111054A (ko) 2016-03-25 2017-10-12 주식회사 핸디소프트 IoT 기반의 센서 데이터 분석 및 제공 시스템 및 방법
WO2019123832A1 (ja) * 2017-12-19 2019-06-27 ソニー株式会社 端末管理装置及び端末装置
KR20200070060A (ko) * 2018-12-07 2020-06-17 부산대학교 산학협력단 산업 IoT 환경에서 무선 통신 충돌 해결 오버헤드 감소를 위한 지연된 셀 재배치 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170111054A (ko) 2016-03-25 2017-10-12 주식회사 핸디소프트 IoT 기반의 센서 데이터 분석 및 제공 시스템 및 방법
WO2019123832A1 (ja) * 2017-12-19 2019-06-27 ソニー株式会社 端末管理装置及び端末装置
KR20200070060A (ko) * 2018-12-07 2020-06-17 부산대학교 산학협력단 산업 IoT 환경에서 무선 통신 충돌 해결 오버헤드 감소를 위한 지연된 셀 재배치 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115551060A (zh) * 2022-10-20 2022-12-30 浙江瑞邦科特检测有限公司 低功耗数据监控方法
CN115551060B (zh) * 2022-10-20 2023-11-17 浙江瑞邦科特检测有限公司 低功耗数据监控方法

Similar Documents

Publication Publication Date Title
US8533718B2 (en) Batch job assignment apparatus, program, and method that balances processing across execution servers based on execution times
US8032809B2 (en) Retransmission and delayed ACK timer management logic for TCP protocol
CN108459877A (zh) 数据处理
CN105426411A (zh) 基于访问趋势预测的时间序列数据库缓存管理方法
CN111274095B (zh) 日志数据处理方法、装置、设备及计算机可读存储介质
US10348815B2 (en) Command process load balancing system
US20090037923A1 (en) Apparatus and method for detecting resource consumption and preventing workload starvation
US9715409B2 (en) Job delay detection method and information processing apparatus
CA2591206A1 (en) System and method for adaptive query identification and acceleration
KR102382328B1 (ko) 사물 인터넷 환경에서 다중 규칙 간 데이터 공유에 기반하는 스케줄링 장치 및 방법
Chen et al. Retail: Opting for learning simplicity to enable qos-aware power management in the cloud
KR100888364B1 (ko) 다양한 센서 네트워크로의 통합 질의를 처리하기 위한 센서데이터 통합 처리 장치 및 그 방법
US11204812B2 (en) Information processing apparatus and distributed processing system
Zhang et al. Self-learning disk scheduling
CN104994143A (zh) 文件下载方法和装置
EP3070606A1 (en) Event management program, event management method, and distributed system
CN103530173A (zh) 动态权重事件处理系统和方法
CN113065055B (zh) 新闻资讯抓取方法、装置、电子设备及存储介质
US10379561B2 (en) Energy saving method based on confidence interval and apparatus using the same
JP2009211514A (ja) 関係情報取得システム、関係情報取得方法および関係情報取得用プログラム
Jacobi et al. A physical operator algebra for prioritized elements in data streams
CN110928698B (zh) 数据收发控制方法及装置、计算设备和存储介质
CN113836533A (zh) 一种文件监测方法、装置、电子设备及可读存储介质
JP4634096B2 (ja) データ処理装置及びデータ処理方法及びプログラム
CN113572683A (zh) 数据处理方法、装置、电子设备及存储介质

Legal Events

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