KR100989847B1 - 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법 - Google Patents

센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법 Download PDF

Info

Publication number
KR100989847B1
KR100989847B1 KR1020090095119A KR20090095119A KR100989847B1 KR 100989847 B1 KR100989847 B1 KR 100989847B1 KR 1020090095119 A KR1020090095119 A KR 1020090095119A KR 20090095119 A KR20090095119 A KR 20090095119A KR 100989847 B1 KR100989847 B1 KR 100989847B1
Authority
KR
South Korea
Prior art keywords
condition table
node
record
sensor node
sensor
Prior art date
Application number
KR1020090095119A
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 KR1020090095119A priority Critical patent/KR100989847B1/ko
Application granted granted Critical
Publication of KR100989847B1 publication Critical patent/KR100989847B1/ko

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Marketing (AREA)
  • Signal Processing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법이 개시된다. 상기조건 테이블 분할 방법은, 센서 노드의 부모 노드로부터 조건 테이블을 전송 받고, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하며, 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하도록 구성된다.

Description

센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법{Sensor node and method for distributing condition table therein}
본 발명의 실시 예들은 트리 기반의 센서 네트워크 및 상기 센서 네트워크에서의 이벤트 검출 기술과 관련된다.
센서 네트워크는 각종 센서에서 수집한 정보를 무선으로 수집할 수 있도록 구성한 네트워크로서, 외부 환경의 감시나 제어 기능을 수행하는 지능형 교통 시스템, 생산공정 자동 제어, 환자의 상태 원격감지, 지능형 빌딩 내의 환경 제어 등에 광범위하게 사용되고 있다.
센서 네트워크에서 사용자가 원하는 데이터를 수집하기 위하여, 일반적으로 조건 테이블을 이용한 이벤트 검출 방법이 사용된다. 조건 테이블이란 사용자가 검출하고자 하는 조건들을 기록한 테이블로서, 상기 조건들은 레코드의 형태로 상기 테이블 내에 기록된다. 센서 네트워크에 조건 테이블이 주어지면, 상기 센서 네트워크는 각 노드에서 센싱된 정보와 조건 테이블을 조인(Join) 연산하여 상기 조건 테이블에 기록된 이벤트가 발생하였는지를 판단하게 된다.
이러한 조인 연산은 센서 네트워크로부터 센싱 데이터를 전송받는 베이스 스테이션(Base station)에서 수행될 수도 있으나, 이 경우 센서 노드에서 센싱된 값이 주어진 조건을 만족하는지 여부를 판단하기 위하여 상기 센싱값 전부를 일단 베이스 스테이션으로 전송하여야 한다. 센서 노드에서는 내부에서 연산을 수행할 때보다 외부와 통신을 수행할 때 훨씬 많은 에너지를 소모하기 때문에, 조인 연산을 베이스 스테이션에서 수행하는 것 보다는 센서 노드 내부에서 조인 연산을 수행하고 조건에 맞는 값만을 베이스 스테이션으로 전송하는 것이 전력 소비 관점에서 효과적이다.
그러나 센서 노드들은 내부의 저장 공간의 크기가 제한되므로 조건 테이블을 하나의 센서 노드에 모두 저장할 수 없는 경우가 발생할 수 있다. 따라서 상기 조건 테이블을 센서 네트워크상에서 효과적으로 분할하여 저장하는 방안에 대한 연구가 필요하게 되었다.
본 발명의 실시예들은 트리 기반의 센서 네트워크에 있어 조건 테이블을 각 센서 노드의 저장 공간을 고려하여 분할함으로써, 센싱된 데이터의 조건 테이블과의 조인 연산을 위한 메시지 전송량을 최소화하는 동시에 각 센서 노드의 저장 공간의 크기가 다른 경우에도 효과적으로 조건 테이블을 분할할 수 있는 방법을 제공하고자 한다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 센서 네트워크에서의 조건 테이블 분할 방법은, 상기 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블을 전송 받는 단계; 상기 센서 노드에서, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하는 단계; 상기 센서 노드에서, 상기 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 단계; 및 상기 센서 노드에서, 상기 센서 노드의 자식 노드가 존재하는 경우, 상기 조건 테이블을 상기 자식 노드로 전송하는 단계; 를 포함한다.
한편, 상기 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 센서 네트워크에서의 조건 테이블 분할 방법은, 상기 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블 및 조상노드의 저장 가능 레코드 수를 전송 받는 단계; 상기 센서 노드에서, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하는 단계; 상기 센서 노드에서, 상기 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 단계; 및 상기 센서 노드에서, 상기 센서 노드의 자식 노드가 존재하는 경우, 상기 조건 테이블 및 상기 자식 노드의 조상 노드의 저장 가능 레코드 수를 상기 자식 노드로 전송하는 단계;를 포함한다.
한편, 상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 센서 노드는, 센서 네트워크 내의 다른 센서 노드로부터 메시지를 전송 받거나 다른 센서 노드로 메시지를 전송하는 통신부; 상기 통신부를 통하여 부모 노드 또는 베이스 스테이션으로부터 조건 테이블을 전송 받고, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하며, 계산된 상기 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 중앙 처리부; 및 상기 중앙 처리부에서 추출된 상기 조건 테이블의 레코드를 저장하는 조건 테이블 저장부;를 포함한다.
전술한 것 외의 다른 측면, 특징 및 이점은 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명의 실시예들은 조건 테이블의 분배에 있어 각 센서 노드의 저장 공간을 최대로 활용함으로써 센싱된 데이터의 조인 연산을 위한 메시지 전송량을 최소화할 수 있다.
또한 본 발명의 실시 예들은 각 센서 노드의 저장 공간의 크기에 관계 없이 조건 테이블을 분배할 수 있어, 센서 네트워크를 구성하는 센서 노드의 저장 공간 의 크기가 다른 경우에도 효과적으로 대응할 수 있다.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하의 실시예는 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도 1은 본 발명의 일 실시 예에 따른 조건 테이블(100)의 예시도이다.
조건 테이블(100)은 센서 네트워크를 이용하여 검출하고자 하는 조건들을 기록한 테이블이다. 예를 들어, 도시된 조건 테이블(100)의 첫 번째 레코드에는 (오전 8시, 기온 16? 이상, 습도 60% 이상)이라는 조건이 기록되어 있다. 센서 노드에 이와 같은 조건 테이블(100)이 저장되어 있는 경우, 상기 센서 노드는 해당 시간에 센싱한 기온 및 습도 정보와 조건 테이블(100)에 저장된 조건들을 비교하여 센싱된 데이터가 상기 조건을 모두 만족하는 경우 해당 센싱값을 루트 노드와 연결된 베이스 스테이션으로 전송한다.
센서 네트워크를 구성하는 각각의 센서 노드에서 센싱한 값들이 기 설정된 조건들을 만족시키는지를 판단하기 위해서는, 각각의 센서 노드마다 도 1과 같은 조건 테이블을 저장해 두는 것이 가장 바람직하다. 그러나 조건 테이블의 크기가 매우 크거나 센서 노드 내의 데이터 저장 영역의 크기가 작을 경우에는 하나의 센서 노드에 조건 테이블 전체를 기록하는 것이 불가능하게 된다. 따라서 이 경우에는 다음의 도 2와 같이 조건 테이블을 센서 노드들 간에 분할하여 저장하여야 한다.
센서 노드의 저장 용량이 동일할 경우의 조건 테이블 분할
도 2는 센서 네트워크를 구성하는 센서 노드들의 조건 테이블 저장 용량이 모두 동일할 경우의 조건 테이블 분할 방법(200)을 나타낸 순서도이다.
먼저, 상기 센서 네트워크 내의 임의의 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블을 전송 받는다(202). 만약 상기 센서 노드가 레벨 1인 루트 노드일 경우, 상기 루트 노드는 베이스 스테이션(Base Station; BS)로부터 조건 테이블을 전송 받게 된다. 여기서 상기 전송 받은 조건 테이블의 레코드 수는 상기 센서 네트워크 내의 각 센서 노드들의 저장 가능 레코드 수 보다 많다고 가정한다.
다음으로, 상기 조건 테이블을 전송 받은 상기 센서 노드는, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산한다(204). 만약 조건 테이블의 전체 레코드 개수를 max라 하면, 상기 조건 테이블의 레코드 번호(R)는 0 ≤ R ≤ max-1 이 된다. 각 센서 노드 당 저장 가능한 레코드의 개수를 P, 센서 노드의 현재 레벨을 i(i≥1)라 하면, 상기 센서 노드가 저장할 레코드의 시작 번호(start) 및 끝 번호(end)는 다음의 수학식 1과 같이 정해진다.
Figure 112009061416517-pat00001
Figure 112009061416517-pat00002
이때, mod는 정수 나누기 연산을 수행한 나머지 값(양의 정수)를 반환하는 연산자이다.
상기 수학식 1에 의하여 상기 센서 노드가 저장할 레코드의 시작 번호 및 끝 번호가 계산되면, 상기 센서 노드는 계산된 상기 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에서 레코드를 추출하여 자신의 저장 공간에 저장한다(206). 이때, 상기 센서 노드는 상기 전송된 조건 테이블을 테이블의 끝 부분과 첫 부분이 서로 연결된 환형 테이블로 취급한다. 상기 시작 번호(start) 및 끝 번호(end)에 따른 레코드 추출은 다음과 같이 이루어진다.
먼저 start < end 일 경우, 즉 시작 번호가 끝 번호보다 작을 경우에는 상기 조건 테이블의 레코드 중 레코드 번호(R)가 start ≤ R ≤ end 인 레코드를 추출하여 저장한다.
만약 start ≥ end 일 경우, 즉 시작 번호가 끝 번호보다 크거나 같을 경우에는 상기 조건 테이블의 레코드 중 레코드 번호(R)가 start ≤ R ≤ max-1 인 레코드와 0 ≤ R ≤ end 인 레코드를 추출한다. 즉 start 부터 시작하여 조건 테이블의 마지막 레코드(max-1) 까지 추출한 후 다시 조건 테이블의 처음으로 돌아가 첫 번째 레코드(0)부터 end까지의 레코드를 추출하게 된다.
레코드의 추출 및 저장이 완료되면, 상기 센서 노드는 자신의 자식 노드가 존재하는지의 여부를 판단하고(208), 자식 노드가 존재하는 경우 상기 조건 테이블을 자식 노드로 전송한다(210). 만약 자식 노드가 존재하지 않을 경우, 상기 과정은 종료된다.
상기 조건 테이블을 전송받은 자식 노드는, 상기 루트 노드와 마찬가지로 전술한 단계 202 내지 210을 반복 수행하게 된다. 상기 과정은 상기 센서 네트워크의 루트 노드로부터 시작되어 상기 조건 테이블이 센서 네트워크의 리프 노드에 도달할 때까지(즉, 더 이상 조건 테이블을 전달할 자식 노드가 존재하지 않을 때까지) 계속된다.
도 3은 도 2에 도시된 실시예에 따라 센서 네트워크를 구성하는 각 센서 노드들에 조건 테이블을 분할한 예를 나타낸 도면이다.
도 1에 도시된 조건 테이블(100)에서 전체 레코드 수는 6 개이다(max = 6). 만약 센서 네트워크를 구성하는 각 센서 노드의 최대 저장 레코드 수가 4인 경우(P = 4), 레벨이 1인 1번 센서 노드에서 저장할 레코드의 시작 번호(start)는 0, 끝 번호(end)는 3이 된다. 따라서 도 3에 도시된 바와 같이 상기 1번 센서 노드에는 조건 테이블(100)의 레코드 중 0, 1, 2, 3번 레코드가 저장된다. 1번 센서 노드의 자식 노드의 2번, 3번 센서 노드는 레벨이 2이므로, 위 수학식 1에 의해 start = 4, end = 1이 된다. 이 경우 start > end 이므로 저장할 레코드 번호는 4, 5 그리고 0, 1이 된다. 또한 상기 2번, 3번 센서 노드의 자식 노드인 4, 5, 6번 센서 노드는 start = 2, end = 5이므로 2, 3, 4, 5번 레코드를 저장하며, 7, 8, 9번 센서 노드는 다시 0, 1, 2, 3번 레코드를 저장하게 된다. 이와 같이 각 센서 노드들은 부모 노드가 저장한 다음 레코드로부터 순환 고리 형식으로 저장할 레코드를 선택하게 된다. 도 3에 도시된 각 센서 노드들이 저장한 레코드의 번호를 도 4에 나타내었다.
최대 및 평균 전송 레벨 계산
도 2 및 도 3에서와 같이 조건 테이블이 분할된 센서 네트워크에서, 각 센서 노드에서 데이터를 센싱할 경우, 상기 센서 노드는 우선 자신이 저장하고 있는 조건 테이블의 조각과 상기 센싱 데이터를 조인 연산하여 상기 센싱 데이터가 상기 조건 테이블의 조각과 조인되는지를 판단한다. 이때, 만약 상기 센싱 데이터가 상 기 조건 테이블의 조각과 조인되는 경우, 상기 센서 노드는 상기 센싱 데이터를 베이스 스테이션으로 전송하며, 조인되지 않을 경우에는 상기 센싱 데이터를 부모 노드로 전송한다. 상기 센싱 데이터를 전송받은 부모 노드 또한 자신이 저장한 조건 테이블의 조각과 전송받은 센싱 데이터를 조인하여 조인되는 경우 이를 베이스 스테이션으로 전송하며 조인되지 않을 경우에는 다시 자신의 부모 노드로 전송하게 된다.
전술한 과정은 센싱 데이터가 데이터를 센싱한 노드 또는 상기 노드의 조상 노드 중 하나에 저장된 조건 테이블의 조건과 조인되거나, 전체 조건 테이블과 조인되지 않았다고 판단될 때까지 계속된다. 따라서 각 센서 노드들은 자신으로부터 몇 번째 조상 노드까지 상기 센싱 데이터를 전송하여야 전체 조건 테이블을 모두 만날 수 있는지를 알아야 할 필요가 있으며, 이를 최대 전송 레벨이라 한다. 즉, 특정 센서 노드에서 센싱된 데이터는 자신의 조건 테이블부터 비교를 시작하여 최대로 상기 최대 전송 레벨의 수까지 조상 노드로 올라가면서 조건 테이블과 비교(조인 연산)을 수행하게 된다.
상기 최대 전송 레벨(MT)은 다음의 수학식 2에 의하여 계산된다.
Figure 112009061416517-pat00003
이때, max는 조건 테이블의 전체 레코드 수, P는 각 센서 노드에 저장되는 레코드 수이다.
상기 수학식에서 계산된 최대 전송 레벨이 자신의 레벨보다 크거나 같은 경우, 해당 센서 노드에서 센싱된 데이터는 최대로 루트 노드까지만 전송되며, 이 경우의 최대 전송 레벨의 수는 자신의 레벨 k와 루트 레벨의 차이, 즉 k-1이 된다.
자신의 레벨이 최대 전송 레벨보다 큰 노드들의 센싱 데이터는 자신의 레벨부터 (MT-1)번째 조상 노드까지는 각각 해당 노드에 저장된 P 개의 레코드들과 조인을 위해 비교될 수 있으며, MT 번째 조상 노드에서는 자신의 노드부터 (MT-1)번째 조상 노드까지 비교되지 않은 전체(max) 레코드들 중의 나머지 레코드들과 비교될 수 있다. 따라서, 자신의 레벨이 최대 전송 레벨보다 큰 노드들의 평균 전송 레벨 수는 다음의 수학식 3과 같다.
Figure 112009061416517-pat00004
이때 (MT > 0)이며, 만일 (MT = 0)이면 각 노드가 조건테이블을 모두 저장하고 있게 된다.
예를 들어 조건 테이블의 크기 max = 11이고 한 노드에 저장할 레코드 수 P = 3이라 하면, 최대 전송 레벨
Figure 112009061416517-pat00005
이 되고, 수학식 3에 의해 노드의 평균 전송 레벨 수는
Figure 112009061416517-pat00006
이 된다.
여기서 레벨이 MT보다 작은 노드들은 최대 루트 노드까지만 센싱 데이터를 전송하므로 이 경우는 상기 수학식 3에서 레벨의 수를 루트까지만 계산하여야 한다.
센서 노드의 저장 용량이 상이할 경우의 조건 테이블 분할
도 5는 센서 네트워크를 구성하는 센서 노드들의 조건 테이블 저장 용량이 상이할 경우의 조건 테이블 분할 방법(500)을 나타낸 순서도이다.
먼저, 상기 센서 네트워크 내의 임의의 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블 및 조상 노드의 저장 가능 레코드 수를 전송 받는다(502). 만약 상기 센서 노드가 레벨 1인 루트 노드일 경우, 상기 루트 노드는 베이스 스테이션(Base Station; BS)로부터 조건 테이블을 전송 받게 된다. 본 실시예에서도 상기 전송 받은 조건 테이블의 레코드 수는 상기 센서 네트워크 내의 각 센서 노드들의 저장 가능 레코드 수 보다 많다고 가정한다.
다음으로, 상기 조건 테이블을 전송 받은 상기 센서 노드는, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호(start) 및 끝 번호(end)를 계산한 다(504). 상기 시작 번호 및 끝 번호는 다음의 수학식 4에 의해 계산된다.
Figure 112009061416517-pat00007
Figure 112009061416517-pat00008
이때, max는 조건 테이블의 전체 레코드 개수, Pi는 상기 센서 노드의 조상 노드 중 레벨이 i(i>1)인 센서 노드의 저장 가능한 레코드의 개수, mod는 정수 나누기 연산을 수행한 나머지 값(양의 정수)를 반환하는 연산자이다. 만일 i가 1이면 루트 노드이며, start는 0이다.
상기 수학식 4에 의하여 상기 센서 노드가 저장할 레코드의 시작 번호 및 끝 번호가 계산되면, 상기 센서 노드는 계산된 상기 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에서 레코드를 추출하여 자신의 저장 공간에 저장한다(506). 이때, 도 2에서의 실시예와 마찬가지로 상기 센서 노드는 상기 전송된 조건 테이블을 테이블의 끝 부분과 첫 부분이 서로 연결된 환형 테이블로 취급한다. 상기 시작 번호(start) 및 끝 번호(end)에 따른 레코드 추출은 다음과 같이 이루어진다.
먼저 start < end 일 경우, 즉 시작 번호가 끝 번호보다 작을 경우에는 상기 조건 테이블의 레코드 중 레코드 번호(R)가 start ≤ R ≤ end 인 레코드를 추출하여 저장한다.
만약 start ≥ end 일 경우, 즉 시작 번호가 끝 번호보다 크거나 같을 경우에는 상기 조건 테이블의 레코드 중 레코드 번호(R)가 start ≤ R ≤ max-1 인 레코드와 0 ≤ R ≤ end 인 레코드를 추출한다. 즉 start 부터 시작하여 조건 테이블의 마지막 레코드(max-1) 까지 추출한 후 다시 조건 테이블의 처음으로 돌아가 첫 번째 레코드(0)부터 end까지의 레코드를 추출하게 된다.
레코드의 추출 및 저장이 완료되면, 상기 센서 노드는 자신의 자식 노드가 존재하는지의 여부를 판단하고(508), 자식 노드가 존재하는 경우 상기 조건 테이블 및 자신을 포함한 조상 노드의 저장 가능한 레코드의 개수를 자식 노드로 전송한다(510). 만약 자식 노드가 존재하지 않을 경우, 상기 과정은 종료된다.
상기 조건 테이블을 전송 받은 자식 노드는, 상기 루트 노드와 마찬가지로 전술한 단계 502 내지 510을 반복 수행하게 된다. 상기 과정은 상기 센서 네트워크의 루트 노드로부터 시작되어 상기 조건 테이블이 센서 네트워크의 리프 노드에 도달할 때까지(즉, 더 이상 조건 테이블을 전달할 자식 노드가 존재하지 않을 때까지) 계속된다.
도 6은 도 5에 도시된 실시예에 따라 센서 네트워크를 구성하는 각 센서 노드들에 조건 테이블을 분할한 예를 나타낸 도면이다.
상기 도 6에 도시된 센서 네트워크에서 도 1에 도시된 조건 테이블을 분할할 경우, 각 센서 노드의 저장 가능 레코드 수 P와 start, end를 수학식 4에 의해 계산하면 다음의 표 1과 같다.
레벨 센서 노드 번호 저장 가능 레코드 수 P start end
1 1 2 0 1
2 2 3 2 4
2 3 2 2 3
3 4 4 5 2
3 5 2 5 0
3 6 4 4 1
4 7 3 1 3
4 8 2 2 3
5 9 3 2 4
이와 같이, 각 센서 노드들은 저장 공간이 서로 다른 경우에도 부모 노드가 저장한 다음 레코드부터 순환 고리 형식으로 저장할 레코드를 선택하게 된다.
최대 및 평균 전송 레벨 계산
각 센서 노드들의 저장 공간이 서로 다른 경우의 최대 전송 레벨을 다음의 수학식에 의해 계산된다.
현재 노드로부터 n번째 조상 노드(즉, 레벨이 i-n 인 노드)까지 저장된 레코드 수(Sn)는 다음과 같다.
Figure 112009061416517-pat00009
이때, i(i > n)는 현재 노드의 레벨 번호, Pk는 현재 노드로부터 루트 노드까지의 경로상에 존재하는 노드들 중에서 k 레벨에 있는 노드가 저장한 레코드 수이다.
최대 전송 레벨은 Sn ≥ max를 만족시키는 n 중에서 최소값이 된다. 즉, 다음의 수학식 6과 같이 정해진다.
Figure 112009061416517-pat00010
이때, max는 테이블의 전체 레코드수, i는 현재 노드의 레벨, Pk는 현재 노드로부터 루트 노드까지의 경로상에 존재하는 노드들 중에서 k 레벨에 있는 노드가 저장한 레코드 수, min(n)은 n 이 가질 수 있는 값 중에서 최소인 정수를 의미한다.
상기 최대 전송 레벨 수는 레벨이 MT'보다 큰 노드들에게 적용된다. 레벨이 MT'보다 작거나 같은 노드들은 센싱 데이터를 루트 노드까지만 전송하며, 이 경우의 최대 전송 레벨의 수는 자신의 레벨(k)과 루트 레벨의 차이, 즉 k-1이 된다.
자신의 레벨이 최대 전송 레벨보다 큰 노드들의 센싱 데이터는 자신의 레벨부터 (MT'-1)번째 조상 노드까지는 각각 해당 노드에 저장된 레코드들과 조인을 위해 비교될 수 있으며, MT'번째 조상 노드에서는 자신의 노드부터 (MT'-1)번째 조상 노드까지 비교되지 않은 전체(max) 레코드들 중의 나머지 레코드들과 비교될 수 있다. 따라서, 자신의 레벨이 최대 전송 레벨보다 큰 노드들의 평균 전송 레벨 수는 다음의 수학식 7과 같다.
Figure 112009061416517-pat00011
이때, MT'(MT' > 0)는 최대 전송 레벨, max는 전체 레코드 수, i는 현재 노드의 레벨, Pk는 현재 노드로부터 루트 노드까지의 경로상에 존재하는 노드들 중에서 k 레벨에 있는 노드가 저장한 레코드 수이다. 만일 MT' = 0이면, 각 노드가 조건테이블을 모두 저장하고 있게 된다.
상기 평균 전송 레벨 수는 레벨이 MT'보다 큰 노드들에게 적용된다. 레벨이 MT'보다 작거나 같은 노드들은 루트 노드까지만 센싱 데이터를 전송하므로 상기 수학식 7에서 전송 레벨을 루트 노드까지만 적용하여 계산한다.
도 5 및 6에 도시된 실시예에서, 7번 노드의 최대 전송 레벨 및 평균 전송 레벨 수는 다음과 같이 계산할 수 있다.
수학식 5에 의할 때, S1 = 5 < 6, S2 = 8 > 6 이 되므로, 수학식 6에 따라 최대 전송 레벨 MT' = 2 가 된다. 또한 상기 노드의 평균 전송 레벨 수는
Figure 112009061416517-pat00012
이 된다.
한편, 본 발명의 실시 예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야에서 통상의 지식을 가진 자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 센서 네트워크에 포함되는 센서 노드(700)의 구성을 나타낸 도면이다.
도시된 바와 같이, 본 발명의 일 실시 예에 따른 센서 노드(700)는, 통신부(702), 중앙 처리부(704) 및 조건 테이블 저장부(706)를 포함하여 구성된다.
통신부(702)는 다른 센서 노드로부터 메시지를 전송 받거나 다른 센서 노드로 메시지를 전송한다. 상기 통신부(702)는, 예를 들어 지그비(Zigbee) 등의 근거리 통신 수단으로 구성될 수 있다.
중앙 처리부(704)는 통신부(702)를 통하여 부모 노드로부터 조건 테이블을 전송 받고, 상기 조건 테이블 중 자신이 저장할 레코드의 처음과 끝을 계산하며, 상기 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에서 레코드를 추출하여 조건 테이블 저장부(706)에 저장한다. 이때, 센서 노드(700)가 속한 상기 센서 네트워크의 각 센서 노드의 조건 테이블 저장 용량이 서로 상이한 경우, 중앙 처리부(704)는 상기 조건 테이블과 함께 조상 노드의 레코드 저장 개수 정보를 부모 노드로부터 전송받을 수 있다. 중앙 처리부(704)는 전술한 바와 같이 순환 고리 방식으로 레코드를 추출하게 되므로, 상기 조건 테이블의 레코드를 추출하는 도중 상기 조건 테이블의 마지막 레코드에 도달하는 경우, 상기 조건 테이블의 첫 번째 레코드로 이동하여 상기 첫 번째 레코드부터 순차적으로 상기 조건 테이블의 레코드를 추출하도록 구성된다.
또한, 중앙 처리부(704)는 상기 레코드 추출과 별도로 상기 조건 테이블 전체를 획득할 수 있는 최대 전송 레벨을 계산하여 저장한다. 상기 최대 전송 레벨의 계산 과정에 대해서는 전술하였다.
조건 테이블 저장부(706)는 중앙 처리부(704)에서 추출된 상기 조건 테이블의 레코드를 저장한다.
이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다.
그러므로 본 발명의 권리범위는 설명된 실시 예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 일 실시 예에 따른 조건 테이블(100)의 예시도이다.
도 2는 센서 네트워크를 구성하는 센서 노드들의 조건 테이블 저장 용량이 모두 동일할 경우의 조건 테이블 분할 방법(200)을 나타낸 순서도이다.
도 3은 도 2에 도시된 실시예에 따라 센서 네트워크를 구성하는 각 센서 노드들에 조건 테이블을 분할한 예를 나타낸 도면이다.
도 4는 도 3에 도시된 각 센서 노드들이 저장한 레코드의 번호를 나타낸 도면이다.
도 5는 센서 네트워크를 구성하는 센서 노드들의 조건 테이블 저장 용량이 상이할 경우의 조건 테이블 분할 방법(500)을 나타낸 순서도이다.
도 6은 도 5에 도시된 실시예에 따라 센서 네트워크를 구성하는 각 센서 노드들에 조건 테이블을 분할한 예를 나타낸 도면이다.
도 7은 본 발명의 일 실시 예에 따른 센서 네트워크에 포함되는 센서 노드(700)의 구성을 나타낸 도면이다.

Claims (15)

  1. 센서 네트워크를 구성하는 센서 노드에서의 조건 테이블 분할 방법으로서,
    상기 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블을 전송 받는 단계;
    상기 센서 노드에서, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하는 단계;
    상기 센서 노드에서, 상기 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 단계; 및
    상기 센서 노드에서, 상기 센서 노드의 자식 노드가 존재하는 경우, 상기 조건 테이블을 상기 자식 노드로 전송하는 단계;
    를 포함하는 센서 네트워크에서의 조건 테이블 분할 방법.
  2. 제1항에 있어서,
    상기 조건 테이블을 전송 받는 단계에서, 상기 센서 노드의 부모 노드가 존재하지 않는 경우, 상기 센서 노드는 상기 센서 네트워크와 연결된 베이스 스테이션으로부터 상기 조건 테이블을 전송 받는, 센서 네트워크에서의 조건 테이블 분할 방법.
  3. 제1항에 있어서,
    상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호는, 다음의 수학식
    Figure 112009061416517-pat00013
    Figure 112009061416517-pat00014
    (이때, max는 조건 테이블의 전체 레코드 개수, P는 각 센서 노드 당 저장 가능한 레코드의 개수, i는 센서 노드의 현재 레벨, start는 시작 번호, end는 끝 번호)
    에 의하여 계산되는, 센서 네트워크에서의 조건 테이블 분할 방법.
  4. 제1항에 있어서,
    상기 레코드 추출 단계에서, 상기 시작 번호가 상기 끝 번호보다 크거나 같은 경우, 상기 센서 노드는 상기 시작 번호에 해당하는 레코드부터 마지막 레코드까지 상기 조건 테이블의 레코드를 추출하고, 상기 조건 테이블의 첫 레코드부터 상기 끝 번호에 해당하는 레코드까지 상기 조건 테이블의 레코드를 추출하는, 센서 네트워크에서의 조건 테이블 분할 방법.
  5. 제1항에 있어서,
    상기 레코드 추출 단계의 수행 이후, 상기 센서 네트워크에서 상기 조건 테이블 전체를 획득하기 위한 최대 전송 레벨을 계산하는 단계를 더 포함하는, 센서 네트워크에서의 조건 테이블 분할 방법.
  6. 제5항에 있어서,
    상기 최대 전송 레벨은, 다음의 수학식
    Figure 112009061416517-pat00015
    (이때, max는 조건 테이블의 전체 레코드 수, P는 각 센서 노드에 저장되는 레코드 수)
    에 의하여 계산되는, 센서 네트워크에서의 조건 테이블 분할 방법.
  7. 센서 네트워크를 구성하는 센서 노드에서의 조건 테이블 분할 방법으로서,
    상기 센서 노드에서, 상기 센서 노드의 부모 노드로부터 조건 테이블 및 조상노드의 저장 가능 레코드 수를 전송 받는 단계;
    상기 센서 노드에서, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하는 단계;
    상기 센서 노드에서, 상기 계산된 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 단계; 및
    상기 센서 노드에서, 상기 센서 노드의 자식 노드가 존재하는 경우, 상기 조건 테이블 및 상기 자식 노드의 조상 노드의 저장 가능 레코드 수를 상기 자식 노드로 전송하는 단계;
    를 포함하는 센서 네트워크에서의 조건 테이블 분할 방법.
  8. 제7항에 있어서,
    상기 조건 테이블을 전송 받는 단계에서, 상기 센서 노드의 부모 노드가 존재하지 않는 경우, 상기 센서 노드는 상기 센서 네트워크와 연결된 베이스 스테이션으로부터 상기 조건 테이블을 전송 받는, 센서 네트워크에서의 조건 테이블 분할 방법.
  9. 제7항에 있어서,
    상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호는, 다음의 수학식
    Figure 112009061416517-pat00016
    Figure 112009061416517-pat00017
    (이때, max는 조건 테이블의 전체 레코드 개수, Pi는 상기 센서 노드의 조상 노드 중 레벨이 i인 센서 노드의 저장 가능한 레코드의 개수, mod는 정수 나누기 연산을 수행한 나머지 값(양의 정수)를 반환하는 연산자)
    에 의하여 계산되는, 센서 네트워크에서의 조건 테이블 분할 방법.
  10. 제7항에 있어서,
    상기 레코드 추출 단계에서, 상기 시작 번호가 상기 끝 번호보다 크거나 같은 경우, 상기 센서 노드는 상기 시작 번호에 해당하는 레코드부터 마지막 레코드까지 상기 조건 테이블의 레코드를 추출하고, 상기 조건 테이블의 첫 레코드부터 상기 끝 번호에 해당하는 레코드까지 상기 조건 테이블의 레코드를 추출하는, 센서 네트워크에서의 조건 테이블 분할 방법.
  11. 제7항에 있어서,
    상기 레코드 추출 단계의 수행 이후, 상기 센서 네트워크에서 상기 조건 테이블 전체를 획득하기 위한 최대 전송 레벨을 계산하는 단계를 더 포함하는, 센서 네트워크에서의 조건 테이블 분할 방법.
  12. 제11항에 있어서,
    상기 최대 전송 레벨은, 다음의 수학식
    Figure 112009061416517-pat00018
    (이때, max는 테이블의 전체 레코드 수, i는 현재 노드의 레벨, Pk는 현재 노드로부터 루트 노드까지의 경로상에 존재하는 노드들 중에서 k 레벨에 있는 노드 가 저장한 레코드 수, min(n)은 n 이 가질 수 있는 값 중에서 최소인 정수)
    에 의하여 계산되는, 센서 네트워크에서의 조건 테이블 분할 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 기재된 방법을 컴퓨터상에서 수행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  14. 센서 네트워크 내의 다른 센서 노드로부터 메시지를 전송 받거나 다른 센서 노드로 메시지를 전송하는 통신부;
    상기 통신부를 통하여 부모 노드 또는 베이스 스테이션으로부터 조건 테이블을 전송 받고, 상기 조건 테이블 중 자신이 저장할 레코드의 시작 번호 및 끝 번호를 계산하며, 계산된 상기 시작 번호 및 끝 번호를 이용하여 상기 조건 테이블에 포함된 레코드를 추출하는 중앙 처리부; 및
    상기 중앙 처리부에서 추출된 상기 조건 테이블의 레코드를 저장하는 조건 테이블 저장부;
    를 포함하는 센서 노드.
  15. 제14항에 있어서,
    상기 중앙 처리부는, 계산된 상기 시작 번호가 상기 끝 번호보다 크거나 같은 경우, 상기 시작 번호에 해당하는 레코드부터 마지막 레코드까지 상기 조건 테이블의 레코드를 추출하고, 상기 조건 테이블의 첫 레코드부터 상기 끝 번호에 해 당하는 레코드까지 상기 조건 테이블의 레코드를 추출하는, 센서 노드.
KR1020090095119A 2009-10-07 2009-10-07 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법 KR100989847B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090095119A KR100989847B1 (ko) 2009-10-07 2009-10-07 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090095119A KR100989847B1 (ko) 2009-10-07 2009-10-07 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법

Publications (1)

Publication Number Publication Date
KR100989847B1 true KR100989847B1 (ko) 2010-10-29

Family

ID=43135819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090095119A KR100989847B1 (ko) 2009-10-07 2009-10-07 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법

Country Status (1)

Country Link
KR (1) KR100989847B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100585935B1 (ko) * 2003-12-27 2006-06-01 한국전자통신연구원 멀티비트 트리 비트맵을 이용한 패킷 분류 장치 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100585935B1 (ko) * 2003-12-27 2006-06-01 한국전자통신연구원 멀티비트 트리 비트맵을 이용한 패킷 분류 장치 및 그 방법

Similar Documents

Publication Publication Date Title
CN102342169B (zh) 对短距无线网络的改进
CN102342171B (zh) 对短程无线网络的改进
KR102455630B1 (ko) 센서 네트워크에 대한 커뮤니케이션 시스템
EP2819382A2 (en) Water leak sensor management method, water leak sensor performing the same and storage media storing the same
CN105684541A (zh) 用于动态地设置无线网络中的响应指示推迟的系统、方法以及设备
CN105493609A (zh) 高效率无线通信中的自适应rts/cts
CN102860085A (zh) 自适应无线传感器网络及无线传感器网络中路由数据的方法
CN101411128A (zh) 自治无线网络
JP2010074829A (ja) センサーノードのグループ設定装置及びその方法
KR101043763B1 (ko) 트리 방식의 센서 네트워크 노드 구성 방법 및 시스템
KR20130121158A (ko) 와이파이에 대한 디바이스 밀도 및 넌 피어 발견 전송들에 기초한 적응적 피어 발견
CN104883301A (zh) 基于剩余能量与通信代价的无线传感器网络分簇路由协议
KR20130080988A (ko) 무선 신체 영역 네트워크(wban)에서 노드의 활동 구간을 재설정하기 위한 허브, 중계 노드, 노드 및 그 통신 방법
CN104811987A (zh) 确定无线传感器网络内的故障节点
US20140161206A1 (en) Methods, systems, and media for forming linear combinations of data
Mitici et al. Energy-efficient data collection in wireless sensor networks with time constraints
JP2007004390A (ja) センサネットワークシステム、クラスタ形成方法およびセンサノード
KR100989847B1 (ko) 센서 노드 및 상기 센서 노드에서의 조건 테이블 분할 방법
KR101872904B1 (ko) 무선 센서 노드의 그룹화 및 변경 방법과 시스템
KR101794848B1 (ko) 에너지 수집형 무선 센서 네트워크에서의 센서 노드 및 에너지 적응형 데이터 수집률 향상 방법, 이를 수행하기 위한 기록 매체
CN104125606A (zh) 在无线多跳通信系统中优化电池寿命的系统和方法
CN101582912B (zh) 一种基于Zigbee的信息推送方法、系统和设备
KR101944194B1 (ko) 태양 에너지 수집형 무선 센서 네트워크에서 에너지 할당을 고려한 센싱 주기와 압축 알고리즘 선택 방법, 이를 수행하기 위한 기록 매체 및 장치
KR101022876B1 (ko) 무선 센서 네트워크에서의 클러스터링 방법 및 시스템
KR101780831B1 (ko) 고에너지 효율의 센서 노드 및 센서 노드의 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20131021

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151002

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160928

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170927

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181004

Year of fee payment: 9