유비쿼터스 컴퓨팅의 핵심 기술인 센서 네트워크 기술이 각광을 받으면서 다양한 종류의 센서 노드로 구성된 센서 네트워크에 대한 연구가 활발히 진행되고 있다. 센서 네트워크 어플리케이션들의 주요 트래픽 패턴은 몇몇의 센서 노드들로부터 싱크 노드로 패킷을 전송하는 타입의 단일 방향성 데이터 수집형태로 구성되어있으며 소스 노드, 중간 노드, 싱크 노드에 이르기 까지 각각 자신의 상위 노드를 곧 바로 깨움으로써 지연의 감소와 에너지 효율성을 이끌어냈다. 본 논문에서는 센서 노드의 지연 감소를 위해 2계층 클러스터 구조를 제시하고 이에 기존에 사용한 라우팅 프로토콜을 네트워크 시뮬레이션을 통해 비교 분석하였다.
The sensor network technology for core technology of ubiquitous computing is in the spotlight recently, the research on sensor network is proceeding actively which is composed many different sensor node. The major traffic patterns of plenty of sensor networks are composed of collecting types of single directional data, which is transmitting packets from several sensor nodes to sink node. One of the important condition for design of sensor node is to extend for network life which is to minimize power-consumption under the limited resources of sensor network. In this paper analysis used routing protocols using the network simulation that was used second level cluster structure to reduce delay and power-consumption of sensor node.
저전력 센서 네트워크를 포함한 무선 센서 네트워크는 감지, 연산 그리고 무선 통신 능력을 갖는 수많은 작은 센서 노드들로 구성되며, 센서노드로부터 얻은 데이터를 통해 다양한 응용분야에 이용되고 있다[1-3].
센서 네트워크 내의 센서 노드들은 넓은 지역에 걸쳐 분포되어 있기 때문에 전력을 소진할 경우 일일이 재충전하기 어렵다. 결국 센서 노드들의 전력 소모는 전체 센서 네트워크 수명에 직접적인 영향을 준다. 그러므로 센서 네트워크 응용분야에서의 데이터 수집과 전달, 센서 노드의 효율적인 에너지 소모는 매우 중요하며, 이를 위하여 센서 네트워크를 위한 라우팅, 노드간 지연감소는 센서 네트워크를 구성할 때 반드시 최우선적으로 고려해야 하는 사항이다.
무선 센서 네트워크는 다른 무선 기술들과 비교했을 때, 완전히 다른 특징을 제시한다. 무선 센서 네트워크는 임베디드 메모리와 프로세서가 포함되어 단일 칩으로 구성된 저 비용의 센서노드들과 휴대용 전송장치들로 구성되어있다. 저전력 용량은 제한된 범위와 다른 센서 노드들과 비교된 센서노드들을 위한 통신 범위를 이끈다. 다른 무선 네트워크들과는 달리, 무선 센서 네트워크는 다 소진한 배터리를 교환하기가 용이하지 않다. 이것은 노드 및 네트워크의 수명을 최대화하는데 가장 중요한 요인이다. 그리고 다른 환경의 수행은 두번째 문제이다[3].
네트워크의 성능은 얼마나 효율적인가 그리고 미디어를 노드들이 공평하게 공휴 할 수 있는가에 크게 의존한다. 무선 네트워크는 항상 파워소스를 제한 한다. 그러므로 프로토콜의 주의 깊은 디자인과 분석은 최적화된 성능을 위해 필요하다.
본 논문에서는 이러한 사항들을 고려하여 노드간 지연을 최소화하고 효율적인 전력소모를 위한 라우팅 프로토콜을 제안하고 분석 하고자 한다[4].
지금까지 연구된 WSN(Wireless Sensor Network) 프로토콜은 네트워크 구조에 따라 평면 프로토콜(Flat Protocol)과 계층 프로토콜(Hierarchical Protocol)로 분류된다. 평면 프로토콜은 네트워크 전체를 하나의 영역으로 간주하여 모든 센서노드들이 동일한 기능과 역할을 수행한다. 그러므로 네트워크로부터 데이터를 수집하고자 하는 경우 데이터 전송에 참여하는 센서노드 수가 많아지게 되고 이는 많은 에너지 소비를 유발한다. 계층 프로토콜은 센서노드들을 멤버노드와 헤드노드로 구분하여 서로 다른 역할을 수행한다. 멤버노드는 관찰대상이 되는 지역에서 감지한 이벤트를 헤드노드로 전송하는 역할을 수행하고, 헤드노드는 사용자의 요청질의를 멤버노드에게 전달하고 멤버노드들이 전송한 데이터를 조합하여 싱크노드로 전송하는 역할을 한다. 계층 프로토콜에서 네트워크는 클러스터라고 하는 기본 단위로 분할되는데 각 클러스터는 한 개의 헤드노드와 다수의 멤버노드로 구성된다. 이와 같은 구조를 통해 계층 프로토콜은 평면 프로토콜보다 메시지의 송수신 횟수를 줄일 수 있으므로 에너지 효율적인 장점이 있다[2,4].
LEACH(Low-Energy Adaptive Clustering Hierarchy) 프로토콜은 클러스터링 기반 라우팅 기법으로, 클러스터 헤드가 클러스터의 멤버 노드들로부터 데이터를 수집하여 직접 싱크노드로 전달한다. 이 방식의 특징은 네트워크에 있는 모든 센서노드들에 에너지 소비를 공정하게 분산시키기 위해, 에너지 집약적인 기능을 하는 클러스터 헤드를 무작위로 순환시키고, 전체적인 통신 비용을 줄이기 위해 클러스터 헤드에서 클러스터내의 데이터를 모아 지역적으로 연합하는 것으로 동작 과정은 아래와 같다[3,4].
(1) 각 노드는 라운드 시작 시점마다 아래 식에 따라 스스로 클러스터 헤드로 선정 될 확률을 구한다.
여기서 c(t)는 지시함수로서 r mod(n/k) 라운드 동안 해당 노드가 클러스터 헤드였다면 0으로 아니면 1로 설정된다. 이는 한번이라도 헤드 역할을 했던 노드를 배제함으로서 모든 노드가 동일한 확률로 클러스터 헤드가 되는 것을 보장하기 위함이다.
(2) 클러스터 헤드로 결정된 노드들은 멤버노드들에게 헤드임을 알리는 메시지를 브로드캐스트한다. 이때 네트워크의 모든 노드들이 수신할 수 있는 전송강도로 발신한다.
(3) 모든 헤드로부터 메시지를 수신한 각 노드들은 메시지의 신호강도를 계산하여 자신에게 가장 가까운 헤드를 자신의 클러스터 헤드로 결정한다.
(4) 각 노드는 자신의 헤드에게 클러스터에 참여하겠다는 연결허락 메시지를 발신한다. 마찬가지로 각 노드는 헤드의 네트워크상의 위치를 모르므로 네트워크의 모든 노드들이 수신할 수 있는 전송강도로 발신한다.
(5) 각 헤드들은 일반노드들이 보낼 연결허락 메시지를 수신하여 클러스터를 완성한다.
S-MAC(Sensor Medium Access Control) 프로토콜은 무선 센서 네트워크를 위해 특별히 고안된 방법으로 슬롯개념을 사용하는 MAC 프로토콜이다. S-MAC 프로토콜은 단일 채널을 사용하는 경쟁기반 프로토콜로 시간을 프레임 단위로 나누고, 이 프레임을 활성 구간과 수면 구간으로 나눈다. 수면 구간에서는 노드가 무선통신을 위한 부분의 전원을 끄고 에너지 소모를 거의 하지 않는 상태로 활성 구간의 듀티 싸이클을 줄임으로 써 전력 소모를 줄이는 방법을 사용한다. 하지만 이 방법은 세 가지 결점을 가진다. 첫째로, 패킷 전송 지연이다. 중간 노드는 자신이 소유한 정보를 다음 수신 노드가 깨어나야만 전송 할 수 있다. 이것이 슬립 지연이다. 둘째로, 고정된 듀티 싸이클은 센서 네트워크에서의 다양한 트래픽 변화에 적합하지 않다. 만약 고정된 듀티 싸이클 이내의 트래픽 로드가 발생한다면 남은 주기 동안에 불필요한 에너지를 소비하게 된다. 셋째로, 고정된 듀티 싸이클 즉, 고정된 동기는 센서 네트워크에서 패킷 충돌의 가능성을 증가 시킨다[6].
D-MAC 프로토콜은 에너지 효율성과 낮은 데이터 전송 지연을 목표로 한다. D-MAC에서는 엇갈린 엑티브/슬립 스케줄을 함으로 멀티 패스 상에서 데이터 포워딩이 가능하게 한다. D-MAC은 다수의 소스 노드들로부터 단일의 싱크로의 데이터 수집 경로를 이용하여 데이터를 전송한다[5,6].
많은 무선 센서 네트워크에서, 데이터 트래픽이 폭주할 때가 아니면 노드는 다른 이벤트가 일어나기를 기다리는 유휴상태로 대기한다. 그러므로 제안하는 프로토콜은 D-MAC에서 제안한 데이터 수집 경로를 따른다. 그리고 그 트리는 이벤트 중심 어플리케이션을 위한 엇갈린 웨이크업 스케줄을 지연의 감소를 위해 사용한다. 여기서의 지연 감소는 소스 노드에서 싱크 노드로의 데이터 패킷 전송 시 지연감소를 뜻한다. 본 논문에서는 센선 노드의 활발한 채널 센싱의 결과로 인해 나타날 데이터 패킷의 폭주의 경우에 슬롯 추가를 위해 slot-by-slot renewal 방법에 약간의 변화를 주었다. 센서노드는 활동과 데이터의 진행과정을 감지한 후에 전송을 시작하기 때문에 정확히 얼마나 많은 정보가 전송될 것인지를 안다. 그래서 우리는 단지 한 번만 맥 헤더의 첫 패킷을 확인함으로 많은 데이터의 증가로 인해 새롭게 된 슬롯에서 정보를 확인 할 수 있다. 이 slot-by-slot renewal 방법을 사용함으로, 빠르고 더 나은 트래픽 로드로의 적응력뿐만 아니라, 많은 데이터로 인한 모든 슬롯을 확인 하는 오버헤드를 감소시키는 것 또한 증명이 되었다[5].
노드 A는 수신측에서 처음 한 번에 많은 연속적인 슬롯으로 새롭게 하도록 하기 위해서 노드 A 자신의 전송하고자 하는 정보로 가득 찬 버퍼를 확인한다. 그다음이 확장 요청은 데이터 수집 경로를 통해서 다중 경로상의 모든 노드들에게 전달된다. 이런 과정이 지나면 연속된 슬롯으로 인해 많은 양의 데이터 패킷이 끊김이나 중단 없이 자연스럽게 한 번에 전송이 가능하게 된다. 이것은 지연의 감소뿐만 아니라, 약간의 에너지 소비 절감의 효과도 가져온다.
그림 4와 같이 1계층의 여러 노드 중에 선출된 헤드노드는 각 클러스터에서의 데이터를 수집하여 2계층의 노드에게 데이터를 전달하게 된다.
1계층은 기존의 LEACH 프로토콜로 헤드노드는 무작위로 선출된다. 하지만 2계층의 헤드노드는 위치를 기반으로 주위노드간의 가장 평균적인 자리에 위치한 노드로 선정한다. 고정적이며 한번 선출로 수명이 다할 때까지 지속하게 된다.
제안한 시스템의 구성은 표 1과 같이 베이스 스테이션(BS: Base Station), 2계층의 클러스터 헤드(2CH: 2Layer Cluster Head), 1계층의 클러스터 헤드(1CH: 1Layer Cluster Head), 센서노드(SN: Sensor Node)로 구성된다. 1계층에서의 데이터 병합과 2계층에서의 데이터 확인으로 필요한 데이터를 필요시에만 보냄으로서 에너지 소모를 급격히 줄일 수 있다[7].
센서 네트워크 시스템 기능별 노드
본 논문에서 제시한 방법의 성능 평가를 위해 C언어를 사용하여 센서 네트워크 시뮬레이션을 구성 하였다
넓은 범위의 무선 센서네트워크를 위하여 센서 노드수는 100개로 제한하고 네트워크 범위를 100X100으로 조정하고 싱크 노드의 위치를 50X50으로 네트워크의 중앙에 배치하여 테스트 하였다. 표2는 그 범주의 값들이다.
실험 환경 설정을 위한 파라미터 값
회로의 소모 에너지는 균등하게 놓고 테스트 하였으며, 데이터의 패킷에 따른 에너지 소모도 틀려진다. 에너지 소비는 전송거리의 제곱에 비례해서 증가하므로 전송거리를 줄이는 것이 가장 중요하고 다음으로 패킷의 크기를 줄여서 보내는 것이 중요하다. 전송거리는 클러스터 형성으로 어느 정도 극복이 가능하여 본 논문에서는 데이터의 패킷을 줄이는데 집중하였다. 그림 6 과 7을 비교하였을 때 기존 LEACH 프로토콜에 비해 D-MAC 프로토콜에서는 에너지 소모가 비교적 균일하지만 2계층 클러스터 헤드의 에너지 소모는 극심하게 나타났다. 2계층의 클러스터 헤드는 한번 선출되면 데이터의 패킷 비교를 위해 고정된 후 지속적으로 에너지 소모가 이루 어 진다.
라운드가 지속되어서 2계층 헤드의 노드는 다른 노드에 비해 에너지 소모가 심하지만 라운드가 지속된다면 LEACH에 비해 전체적으로 노드의 에너지 소모가 오랫동안 유지되는 것을 그림6을 통해 알 수 있다[7].
본 논문은 기존의 센서 네트워크 프로토콜이 가지는 노드 간 전송 기법을 기준으로 저 전력 센서 네트워크에서의 에너지 효율성을 개선하기 위해 제안된 프로토콜들을 비교 분석 하였다. 분석 결과 노드 간 전송 시 지연 감소를 위해서는 제안한 프로토콜의 2계층 헤드 선출 및 단일 슬롯에서 리뉴얼 메커니즘 방법 등이 효율적임을 나타 내었다. 향후 데이터 비교 방법 및 다양한 노드 간 전송기법 추가 등을 고려한 동적 네트워크 상에서의 적용 프로토콜 등을 연구하면 저전력 센서 네트워크의 상용 프로토콜을 제시할 수 있을 것으로 판단된다.