1 |
1
(a)라우팅 테이블을 초기화하고, 노드의 네트워크 디바이스를 찾아 호스트를 초기화하는 단계; (b)상위 계층에서 IP 패킷의 전달요구가 있거나, 상기 네트워크 디바이스를 통한 요구가 있는 두 가지의 상황에 대해 소켓을 오픈하는 단계;(c)상기 상위 계층 노드의 IP 패킷 전달요구인가 또는 네트워크 디바이스로부터 패킷을 전달 받았는가를 판단하는 단계;(d)상기 상위 계층에서의 IP 패킷 전달요구인 경우, 자신의 노드 라우팅 테이블을 조사하고, 라우팅 테이블에 패킷을 전달하려는 목적지 노드가 있는가를 판단하여, 목적지 노드가 존재하면 메인 루프로 리턴하는 단계;(e)상기 네트워크 디바이스를 통해서 패킷을 전달받은 경우, 전달받은 패킷의 타입을 판단하여 RREQ(Route REQuest: 경로요구) 패킷의 에너지 필드값을 추출하여 처리하는 RREQ 처리 과정, 주변 노드들의 상태를 파악하는 IDLE(비활동)의 처리 과정, RREQ 메시지에 대해 응답하는 RREP(Route REPly: 경로응답) 처리 과정, RERR(Route ERRor: 경로설정에러)에 해당하는 엔트리가 있는지 확인하여 처리하는 RERR 처리 과정, 상기 RREP 메시지를 수신했음을 알려주는 RREP_ACK(Route REPly ACKnowledge character: 경로응답 확인) 처리 과정으로 각각 넘어가는 단계로 이루어지는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
2 |
2
제 1항에 있어서, 상기 (d)단계는 상기 목적지 노드가 존재하지 않는 경우, 자신의 에너지 필드 세팅후 RREQ 패킷을 전달하는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
3 |
3
제 1항에 있어서, 상기 (e)단계는 (f)상기 전달받은 패킷이 RREQ인 경우, 상기 RREQ 메시지의 에너지 필드값을 추출하여 '0'인가를 판단하는 단계; (g)상기 에너지 값이 '0'인 경우, 상기 RREQ 패킷에 자신의 에너지량 '10'으로 세팅하여 전달하고, 상기 에너지 값이 '0'이 아닌 경우, 현재의 노드가 RREQ를 처리한 적이 있는가를 판단하는 단계; (h)상기 RREQ를 처리한 적이 없는 경우, 현재 노드의 에너지량을 측정하여, threshold one 값과 비교하는 단계; (i)상기 노드의 에너지량이 threshold one 값보다 작으면, 현재 노드의 에너지와 전달받은 RREQ 패킷의 에너지 필드 값 차이가 threshold two 값보다 큰가를 판단하여, 작은 경우에는 전달하고자 하는 RREQ 패킷의 에너지 필드를 '10'으로 세팅하여 전송하고, 큰 경우에는 IDLE 메시지로 세팅하는 단계; 및 (j)상기 노드의 에너지량이 threshold one 값보다 크면, 일반적인 RREQ 패킷 포워딩과 같이 다음 노드로 RREQ 패킷을 전달하는 단계로 이루어진 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
4 |
4
제 3항에 있어서, 상기 (j)단계는 상기 RREQ 패킷을 전달하기 위한 리버스 패스를 저장하고, 상기 패킷의 목적지 노드에 대한 정보가 현재 노드에 있는가를 판단하는 단계; 상기 목적지 노드에 대한 정보가 있는 경우, 라우팅 테이블을 업데이트 하고 리버스 패스를 이용하여 RREP 메시지를 전달하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
5 |
5
제 1항에 있어서, 상기 (e)단계는 상기 전달받은 패킷이 IDLE인 경우, 전달받은 메시지의 원래 주소가 로컬과 같은 가를 판단하는 단계; 상기 로컬과 같지 않은 경우, 라우팅 테이블의 호프 카운트가 '1'인 노드의 개수가 2와 같은가를 판단하여, 같지 않은 경우 IDLE 카운트 값을 하나 더 증가시키고, 호프 카운트가 '1'인 것의 개수와 IDLE 카운트+1의 수를 비교하여 같을 경우 에너지를 '0'으로 세팅하는 단계; 상기 로컬과 같은 경우, 라우팅 테이블의 호프 카운트가 '1'인 노드의 개수가 1과 같은가를 판단하여, 같지 않은 경우 IDLE 카운트 값을 하나더 증가시키고, 호프 카운트가 '1'인 것의 개수와 IDLE 카운트의 수를 비교하여 같을 경우 에너지를 0으로 세팅하는 단계; 및 상기 RREQ 메시지 필드값을 세팅하는 단계를 더 포함하여 이루어지는 것을 특징으로하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
6 |
6
제 1항에 있어서, 상기 (e)단계는상기 전달받은 패킷이 RREP인 경우, 목적지에 대한 정보가 라우팅 테이블에 있는가를 판단하여, 있는 경우, 상기 라우팅 테이블의 정보를 업데이트 하고, 그렇지 않은 경우, 라우팅 테이블에 정보를 추가하는 단계;상기 RREP 패킷의 원래 주소와 현 노드의 주소가 맞는지를 확인하여, 맞는 경우, 상기 RREP 전달과정을 종료하고, 다른 경우 리버스 패스를 통해 RREP 패킷을 전달하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
7 |
7
제 1항에 있어서, 상기 (e)단계는 상기 전달받은 패킷이 RERR인 경우, 라우팅 테이블 엔트리를 찾아 RERR에 해당하는 엔트리를 제거하는 단계; 상기 RERR에 영향을 받은 다른 엔트리가 있는가를 확인하여, 있는 경우, 항목을 리스트화하고 모두 테이블에서 제거하는 단계; 및 이웃 노드에 영향을 주는 항목이 있는지를 확인하여, 있는 경우, 상기 리스트에 포함된 모든 이웃에 유니캐스트 또는 브로드캐스트로 RERR을 전달하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|
8 |
8
제 1항에 있어서, 상기 (e)단계는 상기 전달받은 패킷이 RREP_ACK인 경우, 상기 RREP 특정 옵션을 통한 전송으로 구동된 타이머를 정지시키고 메인 루프로 리턴하는 것을 특징으로 하는 센서 네트워크의 라우팅 프로토콜 제공방법
|