KR102038303B1 - 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법 - Google Patents

다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법 Download PDF

Info

Publication number
KR102038303B1
KR102038303B1 KR1020180061064A KR20180061064A KR102038303B1 KR 102038303 B1 KR102038303 B1 KR 102038303B1 KR 1020180061064 A KR1020180061064 A KR 1020180061064A KR 20180061064 A KR20180061064 A KR 20180061064A KR 102038303 B1 KR102038303 B1 KR 102038303B1
Authority
KR
South Korea
Prior art keywords
group
node
sink
sensor
nodes
Prior art date
Application number
KR1020180061064A
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 KR1020180061064A priority Critical patent/KR102038303B1/ko
Application granted granted Critical
Publication of KR102038303B1 publication Critical patent/KR102038303B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/026Details of "hello" or keep-alive messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명의 실시예에 따른 센서 노드를 그룹화하는 방법은 다중 싱크 노드 환경에서 센서 노드에 의해 수행되는 그룹화 방법으로서, 주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계, 상기 주변 노드들로부터 응답 패킷(reply packet)을 수신하는 단계, 상기 응답 패킷(reply packet)에 포함된 싱크넘버(sink number)와 그룹넘버(group nember)를 추출하는 단계, 각각의 싱크노드를 기준으로 상기 주변 노드의 그룹넘버들을 계산하는 단계 및 상기 주변 노드의 그룹넘버들에 싱크 임계값(K)을 더한 값들과 상기 센서 노드의 기존 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계를 포함한다.

Description

다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법{METHOD FOR GROUPING SENSOR NODE IN MULTI SINK NODE ENVIRONMENT}
본 발명은 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법에 관한 것으로서, 보다 상세하게는 여러개의 싱크 노드에서 센서 노드의 데이터 전송 최적화를 위한 그룹화 방법에 관한 것이다.
무선 센서 네트워크(WSN: Wireless Sensor Network)는 자체적으로 주변의 정보를 센싱하고 센싱한 정보를 송신하는 많은 수의 센서 노드들로 구성되어 있다.
무선 센서 네트워크에서 센서 노드들은 서로 연결되어 그리드 컴퓨팅(Grid Computing)처럼 정보를 분산 처리하며, 한정된 인터페이스의 개인 컴퓨터와는 달리 다양한 종류의 센서와 많은 센서 노드의 수로 뛰어난 상황 인지 능력을 갖기 때문에, 무선 센서 네트워크는 유비쿼터스 환경에 가장 적합한 기술로 평가된다.
따라서 무선 센서 네트워크는 지능형 빌딩 또는 공장 내의 환경 제어, 생산 공정 자동 제어, 물류 관리, 병원에서의 물품 및 정보 관리, 환자 상태의 원격 감지, 군사 통제 등 다양한 분야에서 사용되고 있다.
무선 센서 네트워크는 싱크 노드를 중심으로 방사형 형태로 확장하며 스스로 네트워크를 형성한다. 그 후 애플리케이션의 목적에 따라 다르지만 보통 특정 구역의 정보를 싱크 노드(sink node)로 수집하는 것이 주를 이룬다.
싱크 노드로 데이터를 송신하기 위하여 각 센서 노드들은 주변에 위치하는 다수의 센서 노드들로부터 데이터 패킷을 수신하거나 수신한 데이터 패킷을 다시 주변 센서 노드들을 통해 싱크 노드로 송신한다.
또한, 센서 노드에서 감지한 감지 데이터를 주변 센서 노드를 통해 싱크 노드로 송신한다.
무선 센서 네트워크는 사람이 쉽게 접근하기 곤란한 장소에 다수의 센서 노드들이 분포되어 있는 경우가 대부분이며, 센서 노드는 작은 사이즈로 제작되어 센서 노드에서 사용할 수 있는 에너지도 한정되어 있다.
따라서 무선 센서 네트워크에서는 한정된 에너지 자원으로 요구되는 신뢰도와 송신 지연값으로 센싱 노드에서 센싱한 데이터를 싱크 노드로 송신하여야 한다.
그러나 단일 싱크 노드로 데이터를 송신하는 종래 무선 센서 네트워크에서 신뢰도를 높이기 위하여 송신 노드에서 데이터를 재전송하는 횟수를 증가시킬수록 단일 싱크 노드에서 중복되어 수신되는 데이터량이 증가하여 송신 지연값이 커지게 되며, 반대로 송신 지연값을 줄이기 위하여 송신 노드에서 데이터를 재전송하는 횟수를 감소시키면 단일 싱크 노드에서 데이터를 수신할 신뢰도가 낮아진다는 문제점을 가진다.
더욱이 한정된 에너지 자원을 가지는 무선 센서 네트워크에서 신뢰도를 높이기 위하여 데이터의 재전송 횟수를 늘리는 경우 데이터를 송신하는데 소비되는 에너지량도 증가한다는 문제점을 가진다. 무선 센서 네트워크의 센서 노드는 제한적인 성능과 용량을 지니며 한정된 에너지원을 이용하여 작동한다. 따라서 전체 무선 센서 네트워크에서 싱크 노드에 근접하여 위치하고 있는 센서 노드들은 빈번한 데이터 송신으로 인하여 오버헤드가 발생하며 한정된 에너지를 빨리 소진하게 된다. 무선 센서 네트워크에서 일부 센서 노드의 짧은 수명은 전체 무선 센서네트워크의 수명도 단축하게 되는 문제점을 가진다.
더욱이 무선 센서 네트워크에서 센서 노드는 버퍼에 저장되어 있는 주변 센서 노드로 플러딩(flooding) 방식으로 송신하기 때문에 센서 노드는 모든 주변 센서 노드로부터 데이터를 수신하여 오버헤드의 부담을 가지며 이는 센서 노드가 가지는 한정된 에너지를 빨리 소진하게 하는 문제점을 가진다.
또한, 네트워크가 커지면서 하나의 싱크로는 전체 네트워크를 감당할 수 없게된다. 네트워크가 커지면 싱크로부터 멀리 떨어지게 되는 노드들이 증가하고 결국 그룹 넘버의 증가로 이어져 하나의 데이터 전송을 위해 거쳐야 하는 노드의 수가 증가하게 된다.
이러한 무선 센서 네트워크에서 최적화된 데이터 전송 환경을 제공하기 위해서 다중 싱크 노드가 적용된 무선 센서 네트워크 환경의 필요성이 증가하고 있으며, 동시에 다중 싱크 노드에서의 센서 노드의 데이터 전송방법에 대한 고려가 필요한 실정이다.
한국특허출원 제2009-0041378호 "무선 센서 네트워크 환경에서의 무선 통신 방법"
본 발명의 목적은 다중 싱크 노드 환경에서 하나의 센서 노드가 어떠한 싱크 노드로 데이터를 전송할지 결정하는 방법을 제공하는 것이다.
또한, 본 발명의 목적은 다중 싱크 노드 환경에서 이동중에 있는 센서 노드의 데이터 전송방법을 제공하는 것이다.
본 발명의 실시예에 따른 센서 노드를 그룹화하는 방법은 다중 싱크 노드 환경에서 센서 노드에 의해 수행되는 그룹화 방법으로서, 주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계, 상기 주변 노드들로부터 응답 패킷(reply packet)을 수신하는 단계, 상기 응답 패킷(reply packet)에 포함된 싱크넘버(sink number)와 그룹넘버(group nember)를 추출하는 단계, 각각의 싱크노드를 기준으로 상기 주변 노드의 그룹넘버들을 계산하는 단계 및 상기 주변 노드의 그룹넘버들에 싱크 임계값(K)을 더한 값들과 상기 센서 노드의 기존 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계를 포함한다.
여기서, 상기 주변 노드의 그룹넘버들을 계산하는 단계는 하기 [수학식 1], [수학식 2] 및 [수학식 3]에 의해서 계산하는 단계를 포함한다.
[수학식 1]
Figure 112018052599496-pat00001
[수학식 2]
Figure 112018052599496-pat00002
[수학식 3]
Figure 112018052599496-pat00003
여기서, round 연산은 소수점 첫째 자리에서 반올림할 수 있고, movingDistance는 각 센서 노드가 움직인 거리이며, maxDistance는 헬로우 패킷을 보내기 위한 최대 이동거리이고, Gn은 각 노드의 그룹 넘버이며, min(Gn)은 받은 패킷들의 그룹 넘버 중에서 가장 작은 값임.
여기서, 상기 싱크 임계값(K)는 상기 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정될 수 있다.
본 발명의 실시예에 따른 센서 노드를 그룹화 하는 방법은 상기 주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계 이전에 RTS(Request To Send)를 송신하는 단계를 포함할 수 있다.
본 발명의 실시예에 따른 센서 노드의 그룹화 시스템은 그룹 아이디 필드가 포함된 광고 패킷(Advertisement packet)을 각각 전송하는 제1, 제2 싱크 노드 및 상기 제1 싱크 노드의 그룹 아이디 필드로부터 초기 정보를 추출하고, 상기 추출된 초기 정보에 미리 지정된 값을 반영하여 그룹 아이디로 설정하며, 상기 설정된 그룹 아이디를 상기 그룹 아이디 필드에 업데이트 하고, 상기 업데이트 된 광고 패킷(Advertisement packet)을 전송하는 센서 노드를 포함하는 센서 노드의 그룹화 시스템으로서, 상기 센서 노드는 그룹 재설정을 위한 헬로 패킷(hello packet)을 전송하고, 수신된 응답 패킷(reply packet)에서 상기 제1 싱크 노드에 속하는 제1 싱크넘버와 제1 그룹넘버를 추출하고, 상기 제2 싱크 노드에 속하는 제2 싱크넘버와 제2 그룹넘버를 추출한 후, 상기 제1 그룹넘버와 상기 제2 그룹넘버에 싱크 임계값(K)를 더한 값 중 최소값을 선택하여 그룹 재설정을 수행한다.
여기서, 상기 센서 노드는 데이터 전송을 시작하기 위해 RTS(Request To Send)신호를 전송하였으나 주변 노드로부터 CTS(Clear To Send)신호를 수신하지 못한 경우, 그룹 재설정을 수행할 수 있다.
여기서, 상기 응답 패킷(reply packet)은 헬로 패킷(hello packet)을 전송받은 센서 노드의 싱크 넘버와 그룹 넘버를 포함할 수 있다.
본 발명의 실시예에 따른 센서 노드는 광고 패킷(Advertisement packet)을 송수신하는 송수신부, 상기 수신한 광고 패킷(Advertisement packet)의 그룹 아이디 필드로부터 초기 정보를 추출하는 추출부 및 그룹 아이디를 설정하는 설정부를 포함하는 센서 노드로서, 상기 설정부는 상기 초기 정보에 의해 그룹 아이디를 설정하는 초기 설정모듈, 전송한 헬로 패킷(hello packet)에 대해 수신된 응답 패킷(reply packet)에서 싱크 넘버와 그룹넘버를 추출하여 그룹 아이디를 재설정하는 재설정모듈을 포함할 수 있다.
여기서, 상기 재설정모듈은 주변 센서 노드의 그룹넘버들에 싱크 임계값(K)를 더한 값들과 상기 초기 설정모듈에서 설정한 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하여 그룹 아이디를 재설정할 수 있다.
여기서, 상기 싱크 임계값(K)는 상기 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정될 수 있다.
본 발명의 실시예에 따른 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법에 의하면, 센서 노드의 데이터 전송을 최적화 할 수 있다.
또한, 노드에서의 데이터 병목현상을 최소화할 수 있다.
또한, 다중 싱크 노드를 활용함으로서 데이터의 수집범위가 넓어질 수 있다.
또한, 네트워크 환경에서 전체적인 에너지 소모가 줄어들게 되어 네트워크 수명을 늘릴수 있다.
도 1은 본 발명의 실시예에 따른 센서 노드를 그룹화하는 방법의 순서도이다.
도 2 내지 도 4는 초기 센서노드의 그룹을 설정하는 방법의 개념도이다.
도 5는 본 발명의 실시예에 따른 센서노드의 그룹화 시스템을 설명하기 위한 예시도이다.
도 6은 본 발명의 실시예에 따른 센서노드의 그룹설정을 위한 개념도이다.
도 7은 본 발명의 또 다른 실시예에 따른 센서 노드의 기능블록도이다.
이하에서, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나 이러한 실시예들에 의해 권리범위가 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명에서 사용되는 용어는, 연관되는 기술 분야에서 일반적이고 보편적인 것으로 선택되었으나, 기술의 발달 및/또는 변화, 관례, 기술자의 선호 등에 따라 다른 용어가 있을 수 있다. 따라서, 아래 설명에서 사용되는 용어는 기술적 사상을 한정하는 것으로 이해되어서는 안 되며, 실시예들을 설명하기 위한 예시적 용어로 이해되어야 한다.
또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세한 그 의미를 기재할 것이다. 따라서 아래 설명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 명세서 전반에 걸친 내용을 토대로 이해되어야 한다.
이하 본 발명의 실시예에 따른 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법에 대해서 도면을 통해 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 센서 노드를 그룹화하는 방법의 순서도이다.
도 1에 도시된 바와 같이 본 발명의 실시예에 따른 센서 노드를 그룹화하는 방법은 다중 싱크 노드 환경에서 센서 노드에 의해 수행되는 그룹화 방법으로서, RTS(Request To Send)를 송신하는 단계(S100), 주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계(S200), 상기 주변 노드들로부터 응답 패킷(reply packet)을 수신하는 단계(S300), 상기 응답 패킷(reply packet)에 포함된 싱크넘버(sink number)와 그룹넘버(group nember)를 추출하는 단계(S400), 각각의 싱크노드를 기준으로 상기 주변 노드의 그룹넘버들을 계산하는 단계(S500) 및 상기 주변 노드의 그룹넘버들에 싱크 임계값(K)을 더한 값들과 상기 센서 노드의 기존 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계(S600)를 포함한다. 그룹넘버의 최소값이 결정되면 센서 노드의 그룹설정(S700)이 완료된다.
본 발명의 실시예에 따른 센서노드를 그룹화하는 방법은 기존 그룹이 설정된 상태에서 데이터 통신이 불가능하게 되는 상황이 발생하면 센서노드의 그룹을 재설정하는 방법이다.
센서노드의 그룹을 재설정하는 방법을 설명하기 이전에 도 2 내지 도 4를 통해서 초기 센서노드의 그룹을 설정하는 방법을 간단히 살펴본다.
도 2 내지 도 4는 초기 센서노드의 그룹을 설정하는 방법의 개념도이다.
센서노드를 통해서 수집된 각종 데이터는 플러딩 방식으로 주변 노드에 전달되고, 싱크노드로 전송된다.
도 2와 같이 그룹설정이 되지 않은 초기상태의 센서노드는 광고패킷(advertisement packet)을 수신한다. 광고패킷은 싱크노드 또는 주변의 센서노드에서 전송된다. 광고패킷에 포함되어 있는 싱크넘버와 그룹넘버를 추출하면 도 2와 같이 싱크넘버(Sink ID)는 A, 그룹넘버(Group ID)는 N이다.
위와 같은 광고패킷을 받은 센서노드(Node #)는 자신의 싱크넘버를 A로 설정하고 그룹넘버는 N+1로 설정한다.
센서노드는 자신의 싱크넘버와 그룹넘버가 포함된 광고패킷을 주변 노드에 전송한다.
도 3은 센서노드에 싱크넘버(Sink ID)가 B로 설정되어 있고, 그룹넘버(Group ID)가 M으로 설정되어 있는 상태에서 광고패킷을 수신한 경우로서, 수신한 광고패킷에 포함된 그룹넘버 N에 "1"을 더한 값 N+1이 기 설정되어 있는 그룹넘버 M보다 큰 경우이다.
N+1≥M인 경우에는 기존 그룹넘버가 싱크노드에서 가까운 위치에 있다는 것으로서, 센서노드는 기존 설정을 그대로 유지하고 수신된 광고패킷을 무시한다.
도 4는 도 3의 경우와 달리 수신된 광고패킷에 포함되어 있는 그룹넘버 N에 "1"을 더한 값이 기존 그룹넘버 M보다 작은 경우를 가정한 예이다.
N+1<M인 경우는 센서노드의 기존 설정을 변경하여 싱크넘버 A, 그룹넘버 N+1로 변경하고, 주변노드에 자신의 변경된 싱크넘버와 그룹넘버를 포함하는 광고패킷을 전송한다.
이처럼 도 2 내지 도 4의 각 초기 센서노드에서 자신의 그룹을 설정하는 방법은 노드들 사이에서 광고패킷 전송이 멈출 경우에 그룹설정이 완료된다.
다만, 그룹의 설정이 완료된 이후에 싱크노드나 센서노드의 이동 등으로 인하여 데이터의 전송이 불가능한 경우가 발생하게 되고, 그룹 재설정이 필요하다.
본 발명의 실시예에 따른 그룹 재설정 방법에 의하면 도 1에 도시된 바와 같이 센서노드의 전송을 시작하기 위해 센서노드는 RTS(Request To Send)신호를 주변 노드에 송신한다(S100). 주변 노드는 RTS신호를 수신한 경우 CTS(Clear To Send)신호를 센서노드로 전송하는데 앞서 살펴본 바와 같이 노드간의 전송이 불가능한 상태는 CTS신호를 센서노드에서 수신하지 못하게 될 경우이고, 센서노드의 그룹 재설정이 시작된다.
재설정이 시작되면 센서노드는 주변의 노드들에게 헬로패킷(hello packet)을 전송한다(S200). 헬로패킷을 받은 주변의 노드들은 자신의 싱크넘버와 그룹넘버 정보를 포함한 응답패킷을 전송한다(S300). 주변의 노드들 중에는 싱크노드도 포함되어 있으며, 싱크노드는 자신의 싱크넘버와 그룹넘버로서 "0"을 응답패킷을 통해 전송한다.
응답패킷을 받은 센서노드는 응답패킷에서 싱크넘버와 그룹넘버를 추출한다(S400).
응답패킷이 싱크노드에서 전송된 패킷인 경우 센서노드는 전송된 응답패킷에 포함되어 있는 싱크넘버로 설정되고, 그룹넘버는 "1"로 설정될 수 있다.
다음으로, 각각의 싱크노드를 기준으로 주변 노드의 그룹넘버들을 계산하는 단계(S500)는 응답패킷을 전송받은 센서노드를 기준으로 각 그룹넘버를 계산하는 단계이다. 계산하는 방법은 하기 수학식 1 내지 수학식 3에 의해서 계산된다.
[수학식 1]
Figure 112018052599496-pat00004
[수학식 2]
Figure 112018052599496-pat00005
[수학식 3]
Figure 112018052599496-pat00006
여기서, round 연산은 소수점 첫째 자리에서 반올림할 수 있고, movingDistance는 각 센서 노드가 움직인 거리이며, maxDistance는 헬로우 패킷을 보내기 위한 최대 이동거리이고, Gn은 각 노드의 그룹 넘버이며, min(Gn)은 받은 패킷들의 그룹 넘버 중에서 가장 작은 값이다.
위 수학식 1 내지 3에 의해서 계산된 그룹넘버들과 센서노드의 기존 싱크노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계(S600)는 주변 노드들에서 전송된 그룹넘버에 싱크 임계값(K)을 더한 값과 기존 싱크노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계이다.
본 발명의 실시예에 따른 센서노드는 그룹이 설정된 상태에서 발생하는 시스템상의 통신장애 등으로 인한 그룹 재설정인 관계로 센서노드에 기 설정된 싱크넘버와 그룹넘버가 존재하게 된다.
최소값을 선택하는 이유는 예상하다시피 싱크노드에서 가장 최단거리에 있는 경로를 채택함으로서, 데이터 전송경로를 최소화하고, 트래픽을 줄이기 위함이다.
또한, 다른 노드에서 전송된 응답패킷 상에 있는 그룹넘버에 싱크 임계값(K)를 더하는 것은 하나의 노드가 원래의 싱크와 다른 싱크의 경계선상에 있을때 빈번한 싱크 교체가 일어나는 것을 방지하기 위한 설정값이다.
이러한 설정값인 싱크 임계값(K)은 센서노드의 이동속도, 버퍼크기, 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정된다.
센서노드의 이동속도는 노드의 이동속도가 빠를수록 여러 싱크를 넘나들수 있는 확률이 크다. 따라서 확실하게 다른 싱크영역에 들어와 싱크간의 이동이 일어났음을 확인하고 판별하기 위해서 센서노드의 이동속도가 빠를수록 싱크 임계값(K)은 커지게 된다.
센서노드의 최대 버퍼크기에 따라서 싱크 임계값(K)은 조정될 수 있다. 센서노드의 최대 버퍼 크기가 작을수록 싱크 가까이에서 병목현상이 일어날 확률이 높다. 이는 일반적으로 싱크에 가까워질수록, 즉 그룹 넘버가 작아질수록 센서노드의 개수가 적어지기 때문이다. 노드간의 데이터 전송이 하위 그룹 노드들의 데이터가 상위 그룹 노드에 릴레이가 되는 방식이므로 상위 그룹 노드들에서 병목현상이 발생할 수 있다. 따라서 하위 그룹 노드가 많아진다면 병목현상이 발생하게 될 확률이 높아지게 된다. 이때 싱크 임계값(K)을 크게 설정하게 되면 센서노드는 원래 싱크노드에 대해 더 큰 그룹 번호를 가질 때까지 다른 싱크로 이동하지 않고 계속 연결을 유지하게된다. 결국, 센서노드의 최대 버퍼크기가 클수록 싱크 임계값(K)은 커지게 된다.
다음으로, 데이터 발생빈도가 많을수록 싱크 임계값(K)는 작아진다. 같은 속도로 이동할 때 데이터 발생빈도가 많다면 작은 싱크 임계값(K)를 가지더라도 하나의 싱크에서 해당 노드에 대해 많은 횟수의 데이터를 수집할 수 있기 때문에 하나의 노드에 대한 데이터가 어느 정도 꾸준히 누적될 수 있다. 하지만 같은 싱크 임계값(K)에 대해 데이터 발생 빈도를 낮춘다면 싱크간에 이동이 일어나는 동안 더 작은 횟수의 데이터 수집이 일어나게 되고 이는 첫번째 수집된 데이터가 A라는 싱크 노드에 두번째 수집된 데이터는 B라는 싱크노드에 수집되는 현상이 발생할 수 있다. 다시 말해 하나의 센서노드에서 수집된 데이터가 다른 싱크노드에 분산 수집되는 비효율성이 발생하게 된다. 따라서 데이터 발생빈도가 많을수록 싱크 임계값(K)를 작게 설정하는 것이 바람직하다.
본 발명의 또 다른 실시예인 센서 노드 그룹화 시스템에 관하여 도 5 내지 도 6을 통해 상세히 설명한다.
본 발명의 또 다른 실시예에 따른 센서 노드 그룹화 시스템은 그룹 아이디 필드가 포함된 광고 패킷(Advertisement packet)을 각각 전송하는 제1, 제2 싱크 노드(SN1, SN2) 및 상기 제1 싱크 노드의 그룹 아이디 필드로부터 초기 정보를 추출하고, 상기 추출된 초기 정보에 미리 지정된 값을 반영하여 그룹 아이디로 설정하며, 상기 설정된 그룹 아이디를 상기 그룹 아이디 필드에 업데이트 하고, 상기 업데이트 된 광고 패킷(Advertisement packet)을 전송하는 센서 노드를 포함하는 센서 노드의 그룹화 시스템으로서, 상기 센서 노드는 그룹 재설정을 위한 헬로 패킷(hello packet)을 전송하고, 수신된 응답 패킷(reply packet)에서 상기 제1 싱크 노드에 속하는 제1 싱크넘버와 제1 그룹넘버를 추출하고, 상기 제2 싱크 노드에 속하는 제2 싱크넘버와 제2 그룹넘버를 추출한 후, 상기 제1 그룹넘버와 상기 제2 그룹넘버에 싱크 임계값(K)를 더한 값 중 최소값을 선택하여 그룹 재설정을 수행한다.
도 5는 본 발명의 실시예에 따른 센서노드의 그룹화 시스템을 설명하기 위한 예시도이다.
도 6은 본 발명의 실시예에 따른 센서노드의 그룹설정을 위한 개념도이다.
도 5에 도시된 바와 같이 싱크노드 1(SN1)은 그룹 1(G1), 그룹 2(G2), 그룹 3(G3), 그룹 4(G4)로 영역에 속해 있는 센서노드를 그룹화하고 있으며, 싱크노드 2(SN2)도 마찬가지로 센서노드를 그룹화하고 있다.
센서노드(11a)는 싱크노드 1의 그룹 3에 속해 있고, (SN1, G3)으로 설정되어 있다.
도 5에 도시된 바와 같이 센서노드(11a)가 싱크노드의 경계를 움직일때 싱크 노드 및 그에 다른 그룹넘버를 재설정해야 할지를 결정하는 문제가 발생한다. 계속해서 도5를 참고하면, 센서노드(11a)는 정해진 속도로 싱크노드 1, 싱크노드 2의 경계 사이를 이동하면서 특정시점에 센서노드(11a→11b)는 싱크노드 1의 그룹 4에 위치(SN1, G4)함과 동시에 싱크노드 2의 그룹 3에 위치(SN2, G3)하게 되었다.
도 5에서 센서노드(11a→11b)는 RTS(Request To Send)를 주변 노드들에 전송하여 CTS(Clear To Send)를 받을 수 없는 장애상황이 발생한 것으로 가정한다. 이러한 상황은 주변의 다른 노드가 통신중이기 때문에 경쟁에서 실패하여 매체를 점유하지 못하는 경우이거나 주변의 다른 노드가 통신중이지 않지만 토폴로지의 변화로 인해 즉, 위치가 바뀜으로서 센서노드의 상위 그룹 노드가 주변에 없는 경우에 발생한다.
도 5의 시스템에서 센서노드(11a→11b)는 헬로 패킷(hello packet)을 전송한다. 주변 노드들은 헬로 패킷에 대한 응답 패킷(reply packet)을 전송한다. 도 5에서 싱크노드 1에 속하는 제1 싱크넘버와 제1 그룹넘버를 추출한다. 이때 추출된 제1 싱크넘버는 SN1, 제1 그룹넘버는 G4이다. 센서노드의 처음위치에서 제1 그룹넘버가 G3에서 G4로 바뀌게 되었음을 확인할 수 있다.
또한, 싱크노드 2에 속하는 제2 싱크넘버는 SN2, 제2 그룹넘버는 G3이다.
이동전 센서노드(11a)는 제1 싱크넘버 SN1, 제1 그룹넘버 G3임을 감안해서 주변노드의 그룹넘버를 계산하고 싱크 임계값(K)를 더한 값을 도 6을 통해서 확인할 수 있다. 보다 상세하게는 이동이 완료된 센서노드(11a→11b)는 싱크노드 1에 속하는 제1 싱크넘버와 그룹넘버 G3에 있는 센서노드의 응답패킷(reply packet)에서 추출된 정보를 이용하여 센서노드의 싱크넘버와 그룹넘버를 계산하면 앞서 언급한 바와 같이 (SN1, G4)가 되고, 싱크노드 2에 속하는 제2 싱크넘버와 그룹넘버 G2에 있는 센서노드의 응답패킷에서 추출된 정보를 이용하여 센서노드의 싱크넘버와 그룹넘버를 계산하면 (SN2, G3)가 된다.
그룹재설정을 위해서 싱크노드 2에 해당하는 그룹넘버에 싱크 임계값(K)를 더하고, 싱크노드 1에 해당하는 그룹넘버 G4와 비교한다.
비교한 결과 G4>G3+K이면, 센서노드의 그룹은 싱크넘버 SN2, 그룹넘버 G3가되고, G4<G3+K이면, 센서노드의 그룹은 싱크넘버 SN1, 그룹넘버 G4가 된다.
앞서 설명한 바와 같이 싱크 임계값(K)는 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정된다.
이하 본 발명의 또 다른 실시예에 따른 센서 노드를 도 7을 통해 상세히 설명한다. 앞선 실시예와 중복되는 구성에 대한 설명은 생략한다.
도 7은 본 발명의 또 다른 실시예에 따른 센서 노드의 기능블록도이다.
도 7에 도시된 바와 같이 본 발명의 실시예에 따른 센서 노드는 광고 패킷(Advertisement packet)을 송수신하는 송수신부(100), 상기 수신한 광고 패킷(Advertisement packet)의 그룹 아이디 필드로부터 초기 정보를 추출하는 추출부(200) 및 그룹 아이디를 설정하는 설정부(300)를 포함하는 센서 노드로서, 상기 설정부(300)는 상기 초기 정보에 의해 그룹 아이디를 설정하는 초기 설정모듈(310), 전송한 헬로 패킷(hello packet)에 대해 수신된 응답 패킷(reply packet)에서 싱크 넘버와 그룹넘버를 추출하여 그룹 아이디를 재설정하는 재설정모듈(320)을 포함한다.
송수신부(100)는 싱크노드 또는 주변의 센서노드로부터 광고패킷을 수신하거나 송신할 수 있다.
추출부(200)는 수신한 광고 패킷의 그룹 아이디 필드로부터 초기 정보를 추출할 수 있다. 예를 들어 그룹 아이디 필드의 초기 정보는 "0"으로 표현될 수 있다.
설정부(300)는 추출된 초기 정보에 미리 지정된 값을 반영하여 그룹 아이디로 설정할 수 있다. 예를 들어, 그룹 아이디의 초기 정보에 반영되는 미리 지정된 값은 "1"로 표현될 수 있다.
또한, 설정부(300)는 초기 설정모듈과 전송한 헬로 패킷에 대해 수신된 응답 패킷에서 싱크넘버와 그룹넘버를 추출하여 그룹아이디를 재설정하는 재설정모듈(320)을 포함한다.
상기 재설정모듈(320)은 주변 센서 노드의 그룹넘버들에 싱크 임계값(K)를 더한 값들과 상기 초기 설정모듈에서 설정한 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하고 그룹 아이디를 재설정한다.
상기 싱크 임계값(K)는 상기 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정될 수 있다.
앞서 설명한 본 발명의 실시예에 따른 센서 노드 그룹화 방법, 시스템 및 이를 구현하기 위한 센서 노드를 통해서 경계상에 움직이는 센서 노드의 싱크를 계속 바꿈으로 인해서 발생하는 문제점을 해결하고, 하나의 노드가 수집하는 정보를 한곳에서 일정하게 수집할 수 있도록 할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다
예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다 처리 장치는 운영 체제(OS) 및 상기 운영 체제상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다 소프트웨어는 네트워크로 연결된 컴퓨터 시스템상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어코드를 포함한다 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100 송수신부
200 추출부
300 설정부
310 초기설정모듈
320 재설정모듈

Claims (10)

  1. 다중 싱크 노드 환경에서 센서 노드에 의해 수행되는 그룹화 방법으로서,
    주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계;
    상기 주변 노드들로부터 응답 패킷(reply packet)을 수신하는 단계;
    상기 응답 패킷(reply packet)에 포함된 싱크넘버(sink number)와 그룹넘버(group nember)를 추출하는 단계;
    각각의 싱크노드를 기준으로 상기 주변 노드의 그룹넘버들을 계산하는 단계; 및
    상기 주변 노드의 그룹넘버들에 싱크 임계값(K)을 더한 값들과 상기 센서 노드의 기존 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하는 단계를 포함하는 것을 특징으로 하는 센서 노드를 그룹화하는 방법.
  2. 제1항에 있어서,
    상기 주변 노드의 그룹넘버들을 계산하는 단계는 하기 [수학식 1], [수학식 2] 및 [수학식 3]에 의해서 계산하는 단계를 포함하는 것을 특징으로 하는 센서 노드를 그룹화하는 방법.
    [수학식 1]
    Figure 112018052599496-pat00007

    [수학식 2]
    Figure 112018052599496-pat00008

    [수학식 3]
    Figure 112018052599496-pat00009

    여기서, round 연산은 소수점 첫째 자리에서 반올림할 수 있고, movingDistance는 각 센서 노드가 움직인 거리이며, maxDistance는 헬로우 패킷을 보내기 위한 최대 이동거리이고, Gn은 각 노드의 그룹 넘버이며, min(Gn)은 받은 패킷들의 그룹 넘버 중에서 가장 작은 값임.
  3. 제1항에 있어서,
    상기 싱크 임계값(K)는 상기 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정되는 것을 특징으로 하는 센서 노드를 그룹화하는 방법.
  4. 제1항에 있어서,
    상기 주변 노드들에 헬로 패킷(hello packet)을 전송하는 단계 이전에 RTS(Request To Send)를 송신하는 단계를 포함하는 것을 특징으로 하는 센서 노드를 그룹화하는 방법.
  5. 그룹 아이디 필드가 포함된 광고 패킷(Advertisement packet)을 각각 전송하는 제1, 제2 싱크 노드; 및
    상기 제1 싱크 노드의 그룹 아이디 필드로부터 초기 정보를 추출하고, 상기 추출된 초기 정보에 미리 지정된 값을 반영하여 그룹 아이디로 설정하며, 상기 설정된 그룹 아이디를 상기 그룹 아이디 필드에 업데이트 하고, 상기 업데이트 된 광고 패킷(Advertisement packet)을 전송하는 센서 노드를 포함하는 센서 노드의 그룹화 시스템으로서,
    상기 센서 노드는 그룹 재설정을 위한 헬로 패킷(hello packet)을 전송하고, 수신된 응답 패킷(reply packet)에서 상기 제1 싱크 노드에 속하는 제1 싱크넘버와 제1 그룹넘버를 추출하고, 상기 제2 싱크 노드에 속하는 제2 싱크넘버와 제2 그룹넘버를 추출한 후, 상기 제1 그룹넘버와 상기 제2 그룹넘버에 싱크 임계값(K)를 더한 값 중 최소값을 선택하여 그룹 재설정을 수행하는 것을 특징으로 하는 센서 노드의 그룹화 시스템.
  6. 제5항에 있어서,
    상기 센서 노드는 데이터 전송을 시작하기 위해 RTS(Request To Send)신호를 전송하였으나 주변 노드로부터 CTS(Clear To Send)신호를 수신하지 못한 경우, 그룹 재설정을 수행하는 것을 특징으로 하는 센서 노드의 그룹화 시스템.
  7. 제5항에 있어서,
    상기 응답 패킷(reply packet)은 헬로 패킷(hello packet)을 전송받은 센서 노드의 싱크 넘버와 그룹 넘버를 포함하는 것을 특징으로 하는 센서 노드의 그룹화 시스템.
  8. 광고 패킷(Advertisement packet)을 송수신하는 송수신부;
    상기 수신한 광고 패킷(Advertisement packet)의 그룹 아이디 필드로부터 초기 정보를 추출하는 추출부; 및
    그룹 아이디를 설정하는 설정부를 포함하는 센서 노드로서,
    상기 설정부는
    상기 초기 정보에 의해 그룹 아이디를 설정하는 초기 설정모듈;
    전송한 헬로 패킷(hello packet)에 대해 수신된 응답 패킷(reply packet)에서 싱크 넘버와 그룹넘버를 추출하여 그룹 아이디를 재설정하는 재설정모듈을 포함하는 것을 특징으로 하는 센서 노드.
  9. 제8항에 있어서,
    상기 재설정모듈은 주변 센서 노드의 그룹넘버들에 싱크 임계값(K)를 더한 값들과 상기 초기 설정모듈에서 설정한 싱크 노드에 속하는 그룹넘버를 비교하여 최소값을 선택하여 그룹 아이디를 재설정하는 것을 특징으로 하는 센서 노드.
  10. 제9항에 있어서,
    상기 싱크 임계값(K)는 상기 센서 노드의 이동속도, 버퍼크기 및 데이터 발생빈도 중에서 선택된 적어도 어느 하나의 인자에 의해서 결정되는 것을 특징으로 하는 센서 노드.
KR1020180061064A 2018-05-29 2018-05-29 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법 KR102038303B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180061064A KR102038303B1 (ko) 2018-05-29 2018-05-29 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180061064A KR102038303B1 (ko) 2018-05-29 2018-05-29 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법

Publications (1)

Publication Number Publication Date
KR102038303B1 true KR102038303B1 (ko) 2019-10-30

Family

ID=68462840

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180061064A KR102038303B1 (ko) 2018-05-29 2018-05-29 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법

Country Status (1)

Country Link
KR (1) KR102038303B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090041378A (ko) 2009-04-06 2009-04-28 주식회사 신한은행 차별화된 수익성 정보 제공 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090041378A (ko) 2009-04-06 2009-04-28 주식회사 신한은행 차별화된 수익성 정보 제공 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Intae Ryoo. et. al, "A 3-dimensional group management MAC scheme for mobile IoT devices in wirelesssensor networks", Journal of Ambient Intelligence and Humanized Computing, 28 August 2017* *

Similar Documents

Publication Publication Date Title
US11706625B2 (en) Malicious black hole node detection and circumvention
Ma et al. Delay constrained relay node placement in two-tiered wireless sensor networks: A set-covering-based algorithm
Kandris et al. Multiobjective optimization algorithms for wireless sensor networks
JP5870161B2 (ja) 感知された表示を使用するアプリケーション層プロトコルの特性を適応するためのシステムおよび方法
KR101872904B1 (ko) 무선 센서 노드의 그룹화 및 변경 방법과 시스템
KR102038303B1 (ko) 다중 싱크 노드 환경에서의 센서 노드를 그룹화하는 방법
US9727403B2 (en) System and method for detecting an abnormal condition in a multi-node communication system
KR101471276B1 (ko) 지연 허용 네트워크에서의 이동 노드 및 이의 데이터 전달 방법과 이에 관한 기록매체
KR102252301B1 (ko) 재난 관리 서버의 동작 방법
WO2019019288A1 (zh) 一种省电模式的切换方法及装置
Prashanth et al. Cluster-based rendezvous points selection for reducing tour length of mobile element in WSN
KR101915566B1 (ko) 멀티홉 네트워크 및 그것의 토폴로지 형성 방법
CN108377480B (zh) 基于无人机的应急物联通信方法
KR20190120057A (ko) 로드 균형을 위한 확률 기반 적응형 라우팅 알고리즘
Vedantham et al. Hazard avoidance in wireless sensor and actor networks
Kakarla et al. A delay and energy aware coordination mechanism for WSAN
CN112653717B (zh) 一种多云协作分布式系统和应用分发的方法
KR101490062B1 (ko) 무선 센서 네트워크에서 센서 노드의 그룹화 방법
KR20220104948A (ko) 무선 센서 네트워크의 데이터 전송 시스템 및 방법
JP6248434B2 (ja) 無線通信システム、無線基地局、及び、無線端末
Patil et al. Energy-efficient cluster-based aggregation protocol for heterogeneous wireless sensor networks
Oh et al. DACODE: Distributed adaptive communication framework for energy efficient industrial IoT-based heterogeneous WSN
Rajput et al. Clustering techniques of Wireless sensor networks for Internet of Things
KR20220071583A (ko) 자율주행 차량 애드혹 네트워크를 이용한 오프로딩 방법
KR101654734B1 (ko) 계층 구조를 갖는 정보 전달망에 대한 모델링 방법 및 이에 대한 장치

Legal Events

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