KR20050116852A - 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치 - Google Patents

무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치 Download PDF

Info

Publication number
KR20050116852A
KR20050116852A KR1020040041886A KR20040041886A KR20050116852A KR 20050116852 A KR20050116852 A KR 20050116852A KR 1020040041886 A KR1020040041886 A KR 1020040041886A KR 20040041886 A KR20040041886 A KR 20040041886A KR 20050116852 A KR20050116852 A KR 20050116852A
Authority
KR
South Korea
Prior art keywords
cost
node
module
link
value
Prior art date
Application number
KR1020040041886A
Other languages
English (en)
Other versions
KR100664919B1 (ko
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 KR1020040041886A priority Critical patent/KR100664919B1/ko
Publication of KR20050116852A publication Critical patent/KR20050116852A/ko
Application granted granted Critical
Publication of KR100664919B1 publication Critical patent/KR100664919B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/12Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

본 발명은 모바일 애드혹 네트워크에서의 라우팅 기법에 관한 것이다. 본 발명에 따른 무선 애드혹 네트워크를 구성하는 모바일 노드는, 모바일 노드와 인접 노드간의 다운링크 비용을 측정하는 링크 비용 측정 모듈과, 수신된 컨트롤 패킷을 판독하여 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내고, 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정하는 라우팅 모듈과, 상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리고, 상기 설정된 라우팅 경로에 따라 다른 모바일 노드와 데이터를 송수신하는 송수신 모듈로 이루어진다.

Description

무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치{Method and apparatus for configuring routing path in a wireless ad hoc network}
본 발명은 무선 통신에 관한 것으로, 보다 상세하게는 모바일 애드혹 네트워크에서의 라우팅 기법에 관한 것이다.
무선 네트워크 분야의 급속한 발전에 힘입어 모바일 애드혹 네트워크(mobile ad hoc network; 이하 MANET이라 함) 기술에 점점 많은 관심이 집중되고 있다. MANET은 중앙집중화된 관리나 표준화된 지원서비스의 도움 없이 임시망을 구성하는 무선 이동 호스트들의 집합이다. 이러한 망은 백본 호스트나 다른 이동 호스트로의 연결을 제공하기 위한 고정된 제어 장치를 갖지 않으며, 각 이동 호스트가 라우터로 동작하여 이동 호스트로부터의 패킷을 다른 이동 호스트로 전달한다. 한 개 이상의 경로를 형성하는 이동 호스트가 다른 곳으로 이동함으로써 해당 경로를 무효화 시키기 때문에 이러한 망에서의 통신 연결은 상당히 취약하다. 이동 호스트는 이동에 따른 루트의 계산과 수정에 많은 시간을 소비해서는 안된다. 이렇게 되면 데이터 처리율이 낮아져서 비효율적이고 비 현실적인 시스템이 되기 쉽다. 따라서 애드 혹 이동 호스트들간에 높은 효율의 통신을 제공하기 위해서는 잘 정의된 라우팅 기법이 요구된다.
그러나, 무선 네트워크의 특성상 기존의 유선에서의 라우팅 프로토콜을 그대로 사용할 수 없기 때문에, DSR(Dynamic Source Routing), AODV(Ad hoc On-Demand Distance Vector Routing), 그리고 TORA(Temporally Ordered Routing Algorithm) 등의 모바일 애드혹 네트워크를 위한 라우팅 프로토콜(routing protocol)이 개발되었다. 이들은 무선 네트워크에서, 소스(source) 노드와 목적지(destination) 노드 간의 최단 경로를 찾기 위하여 제안된 것이다.
이러한 종래의 라우팅 프로토콜은 주로 하나의 노드로부터 목적지 노드까지 홉수(hop count)를 최소화하는 것에 주안점을 두고, 홉수가 최소가 되는 경로를 전송 경로로 선택하는 방법을 택하고 있다. 그러나, 각 노드 간의 환경은 다를 수 있으므로 같은 홉수를 갖는 경로라고 하더라도 같은 전송속도를 가질 수 없다. 따라서 단순히 홉수를 고려하는 것만으로는 최선의 전송 경로를 선택할 수 없는 것이다. 따라서, 홉수뿐만이 아니라 각 노드 간의 링크 비용(link Cost)를 고려하여야 한다. 이와 관련한 기술로서, 미국 공개특허(공개번호: 2004-0022223, 이하 '223특허라 함)는 MANET에서 PER(Packet Error Rate)를 기반으로 링크 비용을 계산하여 최적의 라우팅 경로를 선택하는 방법을 택하고 있다. '223 특허는 경로의 홉수와 링크간 비용을 함께 고려함으로써 종래의 라우팅 기술에 비하여 보다 효율적인 라우팅을 가능하게 한다.
도 1은 '223 특허의 개념을 간단히 나타낸 개략도이다. 여기서 각 노드 간에 기재된 수치는 '223 특허에서 계산되는 링크 비용과 반비례하는 개념인 링크간 비용(cost)를 의미한다. 여기서, 전송 노드 A는 동일한 목적지에 도달하기 위한 경로들 중에서 코스트가 낮은 경로를 최적의 라우팅 경로로 선택한다. 도 1에서, A-B-D 경로는 비용이 8이고, A-D 경로는 비용이 7이며, A-C-D 경로는 비용이 5이므로 최소 비용이 소요되는 A-C-D 경로를 라우팅 경로로 선택하는 것이다.
그러나, '223 특허에서도 방향에 상관없이 링크 간의 비용은 같은 것으로 가정하고 있어서, 유선 네트워크와는 달리 방향성을 가지는 무선 네트워크의 특성을 라우팅 방법에 제대로 반영하지 못하고 있다. 도 2에 도시하는 무선 네트워크가 있다고 할 때, 각 무선 노드는 송신가능한 전파 범위가 서로 다를 수 있다. 노드 A의 전파 범위(1)와, 노드 B의 전파 범위(2)와, 노드 C의 전파 범위(3)와, 노드 D의 전파 범위(4)는 기기의 특성이나 무선 변조 방식에 따라서 달라진다. 도 2에서 보면, 노드 A와 노드 C, 노드 B와 노드 D간에는 서로 자유롭게 통신할 수 있지만, 노드 A와 노드 B간에는 전파 범위의 차이로 인하여 노드 A에서 노드 B로만 데이터를 전송할 수 있다. 마찬가지로, 노드 C와 노드 D간에는 노드 D에서 노드 C로만 데이터를 전송할 수 있다.
여기서, 노드 A가 노드 D에 데이터를 전송하는 경우를 상정한다면, 노드 A는 데이터를 일단 노드 B에 전송하고, 노드 B는 이 데이터를 노드 D에 전달함으로써 전송이 완료된다. 그러나, 노드 D가 노드 A에 데이터를 전송할 때에는 상기 A-B-D 경로를 이용할 수가 없다. 이 경우에는 오히려 D-C-A 경로를 이용함으로써 올바른 전송이 가능하게 된다. 따라서, 노드 A와 노드 D간에 라우팅 경로의 비대칭성이 발생할 수 있다.
이와 같이, 무선 노드간에는 데이터 전송의 일방향성이 존재할 뿐만 아니라, 노드 간에 양방향 전송이 가능한 경우에도 링크 비용은 방향에 따라서 달라질 수 있다. 도 3은 노드 간의 SNR(Signal-to-Noise ratio)을 측정한 결과를 나타낸 도면이다. 도 3은 두 노드 간에 시간에 따라서 일방향으로 전송할 경우의의 SNR(5)과 반대방향으로 전송할 경우의 SNR(7), 그리고 그 두 값의 차이(8)를 시간에 따라서 측정한 결과를 나타낸다. 노드 간의 거리가 변화하거나, 노드 간에 장애물이 생성/소멸하는 등 가변적인 무선 환경에서, 각 방향에 대한 SNR 값은 변화하며 방향에 따라서 서로 다른 값을 가지게 된다. 이와 같은 SNR은 데이터의 전송 에러율이나 전송률에 영향을 미칠 수 있다.
한편, 도 4는 노드 간의 데이터 전송률을 측정한 결과를 나타낸 도면이다. 도 4는 여러 가지 링크, 즉 노드 쌍(node pair)에 대하여 양방향 전송률을 측정한 결과를 막대 그래프로 나타낸다. 막대 그래프의 상단은 양방향 중 상대적으로 높은 전송률을 갖는 방향에 대한 전송률을, 하단은 상대적으로 낮은 전송률을 갖는 방향에 대한 전송률을 가리킨다. 이와 같이 링크의 종류에 따라서 양방향 전송률의 차이가 작은 경우 또는, 전송률의 차이가 큰 경우가 존재하게 된다.
이상에서 살펴본 바와 같이, 무선 네트워크의 특성상 노드간의 통신은 방향성을 가지지만, 종래의 방법들은 노드간의 방향성을 고려하지 않은 라우팅 기법들을 사용하고 있어서, 소스 노드(source node)와 목적지 노드(destination node)간에 최적의 경로를 제시하지 못한다. 따라서, 전송 경로의 홉수, 링크의 비용, 및 링크 비용의 방향성을 모두 고려한 라우팅 기법을 제시할 필요가 있다.
본 발명은 상기한 문제점을 고려하여 창안된 것으로, 한정된 전파 자원을 공유하여 사용하는 무선 네트워크에서 효율적인 대역폭 활용을 위한 라우팅 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 무선 노드간의 링크 비용을 평가하는 효율적인 기준을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 무선 애드혹 네트워크를 구성하는 모바일 노드는, 상기 모바일 노드와 인접 노드간의 다운링크 비용을 측정하는 링크 비용 측정 모듈; 수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내고, 상기 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정하는 라우팅 모듈; 및 상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리고, 상기 설정된 라우팅 경로에 따라 다른 모바일 노드와 데이터를 송수신하는 송수신 모듈을 포함한다.
상기한 목적을 달성하기 위하여, 본 발명에 따른 무선 애드혹 네트워크를 구성하는 모바일 노드의 라우팅 경로 설정 방법은, (a) 상기 모바일 노드와 인접 노드간의 다운링크 비용을 측정하는 단계; (b) 수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내는 단계; (c) 상기 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정하는 단계; 및 (d) 상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리는 단계를 포함한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
도 5는 본 발명에 따른 모바일 노드(mobile node)의 구성을 개략적으로 나타낸 블록도이다. 본 발명에 따른 모바일 노드(100)는 라우팅 모듈(10)과, 링크 비용 측정 모듈(20)과, 송수신 모듈(30)과, 응용층 모듈(40)을 포함하여 구성될 수 있다. 그러나, 이는 개념상의 구분에 불과하고 둘 이상의 모듈이 하나의 모듈로 구현될 수도 있으며, 하나의 모듈이 다른 모듈을 포함하여 구현될 수도 있음은 당업자에게는 자명한 사항이다.
링크 비용 측정 모듈(20)은 모바일 노드(100)와 인접 노드간의 다운링크 비용을 측정한다.
라우팅 모듈(10)은 수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내고, 상기 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정한다.
그리고, 송수신 모듈(30)은 상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리고, 상기 설정된 라우팅 경로에 따라 다른 모바일 노드와 데이터를 송수신한다.
한편, 응용층(application layer) 모듈(40)은 응용 프로그램을 수행 결과 생성되는 데이터 페이로드를 송수신 모듈(30)에 전달하고, 송수신 모듈(30)로부터 전달되는 데이터 페이로드를 이용하여 응용 프로그램을 수행한다.
도 6은 라우팅 모듈(10)의 구성을 보다 상세히 나타낸 블록도이다. 라우팅 모듈(10)은 컨트롤 패킷 생성 모듈(11)과, 컨트롤 패킷 판독 모듈(12)과, 위상 테이블 갱신 모듈(13)과, 라우팅 테이블 갱신 모듈(14)과, 인접 테이블 갱신 모듈(15)과, 메모리(16)를 포함하여 구성될 수 있다.
컨트롤 패킷 생성 모듈(11)은 메모리에 저장된 인접 테이블을 참조하여 컨트롤 패킷의 페이로드(payload)를 생성한다. 컨트롤 패킷은 라우팅 테이블을 구성하기 위하여 다른 노드와 송수신하는 패킷을 의미한다. 이러한 컨트롤 패킷에는, 모바일 노드(100; 이하 제1 노드라 함)가 인접 노드에 업링크 비용 정보와 다운링크 비용 정보를 송수신하기 위한 탐색 패킷(probe packet)과, 제1 노드가 자신과 인접 노드간의 업링크 비용 정보와 다운링크 비용 정보를 IBSS(independent basic service set) 내의 다른 노드들에게 전송하기 위한 통지 패킷(advertisement packet)이 있다.
도 7은 상기 탐색 패킷(probe packet)의 구성을 나타낸 도면이다. 탐색 패킷은 헤더(Header)와, 전송 노드의 주소가 기록되는 Originator Address 필드와, 중복 데이터의 수신을 방지하기 위한 식별 번호가 기록되는 Sequence Number 필드와, Neighbor Link Cost 필드의 크기를 나타내는 length 필드와, 인접 노드와의 업링크 비용 및 다운링크 비용에 관한 정보를 기록하는 Neighbor Link Cost 필드를 포함한다.
Neighbor Link Cost 필드는, 인접 노드의 주소가 기록되는 Neighbor Address 필드와, 업스트림의 링크 비용을 나타내는 Uplink Cost 필드와 다운스트림의 링크 비용을 나타내는 Downlink Cost 필드를 포함한다. Neighbor Link Cost 필드는 Neighbor Address 필드, Uplink Cost 필드, 및 Downlink Cost 필드를 인접 노드의 개수만큼 반복하여 포함한다. 이러한 링크 비용을 산출하는 방법에 대하여는 도 13의 설명에서 보다 자세히 하기로 한다. 탐색 패킷 중에서, 페이로드는 컨트롤 패킷 생성 모듈(11)에 의하여 생성되고, 헤더는 송수신 모듈(30)의 각 네트워크 계층 모듈(도 12의 31, 32, 33, 34)에 의하여 생성된다.
제1 노드는 인접 노드로부터 패킷이 수신될 때 여러 가지 비용 측정 요소(예를 들어, SNR, PDR(Packet Delivery Ratio) 등)를 측정함으로써 다운링크 비용을 알 수 있다. 그러나, 업링크 비용은 인접 노드로부터 수신되는 탐색 패킷의 해당 Downlink Cost 필드를 판독함으로써 알 수 있게 된다. 여기서, Uplink Cost 필드가 아니라 Downlink Cost 필드를 판독하는 이유는, 제1 노드의 업링크 비용은 인접 노드의 다운링크 비용에 해당하기 때문이다. 마찬가지로, 제1 노드도 주기적으로 인접 노드에 탐색 패킷을 전송하게 되고, 이를 통하여 인접 노드들은 자신의 업링크 비용을 알 수 있게 된다.
탐색 패킷은 인접 노드에만 브로드캐스팅되면 되므로, TTL(Time to Live) 값이 1로 지정된다. 상기 TTL 값은 헤더 중 IP 헤더의 하나의 필드에 기록된다. 탐색 패킷이 한 홉을 건널 때마다 TTL 값은 1씩 감소되고, TTL 값이 0이 되면 패킷은 더 이상 전달되지 않고 버려진다.
본 실시예에서는, 탐색 패킷이 라우팅 모듈(10)에서 생성하거나 수신하는 것으로 하여, 탐색 패킷을 전송하거나 수신할 때 전송층, 네트워크층, 데이터 링크층, 및 물리층을 모두 거치는 것으로 하였다. 그러나, 이에 한 하지 않고 탐색 패킷을 링크 비용 측정 모듈(20)에서 생성/수신하는 경우도 생각할 수 있다. 이 경우 탐색 패킷을 전송하거나 수신할 때에는 데이터 링크층 및 물리층만을 거치게 되어 오버헤드가 감소된다. 다만, 이 경우 네트워크 헤더가 부착되지 않으므로 TTL 값을 지정할 수 없지만, 탐색 패킷은 원래 1홉 내에서만 브로드캐스트되므로 TTL 값이 지정되지 않아도 본 발명의 동작에는 문제가 없다.
도 8은 통지 패킷(advertisement packet)의 구성을 나타낸 도면이다. 통지 패킷도 탐색 패킷과 마찬가지로, 헤더(Header)와, 전송 노드의 주소가 기록되는 Originator Address 필드와, 중복 데이터의 수신을 방지하기 위한 식별 번호가 기록되는 Sequence Number 필드와, Neighbor Link Cost 필드의 크기를 나타내는 length 필드와, 인접 노드와의 업링크 비용 및 다운링크 비용에 관한 정보를 기록하는 Neighbor Link Cost 필드를 포함한다. 또한, Neighbor Link Cost 필드는, 인접 노드의 주소가 기록되는 Neighbor Address 필드와, 업스트림의 링크 비용을 나타내는 Uplink Cost 필드와 다운스트림의 링크 비용을 나타내는 Downlink Cost 필드를, 인접 노드의 개수만큼 반복하여 포함한다.
통지 패킷은 인접 노드와의 링크 비용 정보를 IBSS 내의 다른 노드들에게 전달하기 위하여 브로드캐스트되므로, TTL 값은 IBSS 내의 모든 노드에게 전달될 만큼의 크기 값을 가진다. 본 실시예에서는 TTL=255로 지정되는 것으로 한다. 다만, 애드혹 네트워크의 특성상 브로드캐스트는 네트워크에 상당한 트래픽(traffic)을 유발할 수 있다 그러나, 통지 패킷을 수신한 노드가 인접 노드로 통지 패킷을 전달하기 전에 Sequence Number 필드를 확인하여 Sequence Number가 동일한 경우에는 전달하지 않으므로, 일정 이상 불필요한 트래픽이 발생하지는 않는다.
다시 도 6을 참조하면, 컨트롤 패킷 판독 모듈(12)은 수신된 컨트롤 패킷으로부터 얻어지는 링크 비용 정보를 위상 테이블(topology table) 또는 인접 테이블(neighbor table)을 갱신하는 데 제공한다. 보다 자세히 보면, 컨트롤 패킷 판독 모듈(12)은 특정 인접 노드로부터 수신된 탐색 패킷 중에서 제1 노드의 주소에 해당되는 Downlink Cost 필드를 판독함으로써, 제1 노드와 특정 인접 노드간의 링크에 대하여 업링크 비용 정보(이하 '탐색된 업링크 비용 정보'라고 함)를 알아내고 이를 인접 테이블 갱신 모듈(15)에 제공한다. 그리고, 컨트롤 패킷 판독 모듈(12)은 IBSS 내의 특정 노드로부터 수신된 통지 패킷에 포함되는 상기 특정 노드와 그 인접 노드 간의 각 링크에 대한 업링크 비용 정보와 다운 링크 비용 정보(이하 '통지된 링크 비용 정보'라 함)를 위상 테이블 갱신 모듈(13)에 제공한다.
위상 테이블 갱신 모듈(13)은 컨트롤 패킷 판독 모듈(12)로부터 전달되는 '통지된 링크 비용 정보'를 이용하여 메모리(16)에 저장된 위상 테이블(topology table)을 갱신한다. 이와 같은 위상 테이블은 도 9에 도시된 바와 같이, 목적지 노드의 주소를 기록하는 'Destination Address' 항목과, 목적지로 전달되기 이전에 거칠 수 있는 노드, 즉 목적지 노드의 인접노드(이하, '마지막 노드'라고 함)의 주소를 기록하는 'Last Address' 항목과, 마지막 노드가 목적지 노드로 데이터를 전송할 때의 링크 비용 정보를 기록하는 'Uplink Cost' 항목과, 마지막 노드가 목적지 노드로부터 데이터를 수신할 때의 링크 비용 정보를 기록하는 'Downlink Cost' 항목과, 각 링크의 정보(즉, 각 행(row)의 정보)가 만료되는 시간을 나타내는 'Expiration Time' 항목을 포함한다. 상기 항목은 전체 링크 수만큼 각 행별로 기재된다.
이러한 위상 테이블에는 제1 노드와 그 인접 노드에 대하여는 기록되지 않는데, 이에 대한 정보들은 별도의 인접 테이블에 기록되기 때문이다.
한편, 인접 테이블 갱신 모듈(15)은 컨트롤 패킷 판독 모듈(12)로부터 전달되는 '탐색된 업링크 비용 정보'와 링크 비용 측정 모듈(20)에서 측정되어 전달되는 '측정된 다운링크 비용 정보'를 이용하여 인접 테이블을 갱신한다. 이와 같은 인접 테이블은 도 10에 도시된 바와 같이, 제1 노드의 인접 노드의 주소를 기록하는 'Neighbor Address' 항목과, 제1 노드가 특정 인접 노드로 데이터를 전송할 때의 링크 비용을 기록하는 'Uplink Cost' 항목과, 제1 노드가 특정 인접 노드로부터 데이터를 수신할 때의 링크 비용 정보를 기록하는 'Downlink Cost' 항목과, 각 링크의 정보가 만료되는 시간을 나타내는 'Expiration Time' 항목을 포함한다. 상기 항목은 제1 노드와 인접한 노드의 수만큼 각 행별로 기재된다.
라우팅 테이블 갱신 모듈(14)은 갱신된 인접 테이블과 위상 테이블을 이용하여 라우팅 테이블을 갱신한다. 상기 갱신 방법은 제1 노드로부터 목적지 노드로 향하는 경로의 수가 복수개 존재하는 경우에는 상기 경로가 갖는 총 비용을 계산하여 최소의 비용을 갖는 경로를 선택하고 선택된 라우팅 정보를 라우팅 테이블에 기록함으로써 수행된다.
라우팅 테이블은 도 11에 도시한 바와 같이, 목적지 노드의 주소가 기록되는 'Destination Address' 항목과, 목적지 노드로 라우팅하기 위하여 제1 노드가 전송하는 데이터가 첫번째로 거쳐야 하는 인접 노드(이하 '다음 노드'라 함)의 주소가 기록되는 'Next Address' 항목과, 각 행의 정보가 만료되는 시간을 나타내는 'Expiration Time' 항목을 포함한다. 여기에, 목적지 노드까지 전달하기 위한 홉수가 기록되는 'Distance to Destination' 항목과, 목적지 노드까지 전달하기 위한 총 비용이 기록되는 'Link Cost to Destination' 항목이 부가적으로 포함될 수 있다.
그리고, 메모리(16)는 위상 테이블과, 인접 테이블과, 라우팅 테이블을 저장하고 다른 모듈들에게 제공하는 역할을 수행한다.
이상의 도 7 내지 도 11에서 사용되는 'Address'로서, 바람직하게는 IP 주소를 사용할 수 있다. 다만, 탐색 패킷이 라우팅 모듈(10)에서 생성되는 것이 아니라, 링크 비용 측정 모듈(20)에서 생성되는 경우를 생각한다면 이 경우에는 네트워크층이 사용되지 않으므로, 상기 'Address'로는 MAC 주소를 사용하는 것이 바람직하다.
도 12는 링크 비용 측정 모듈(20)과 그 주변 모듈의 구성을 보다 자세히 나타낸 블록도이다. 링크 비용 측정 모듈(20)은 SNR 안정도 계산 모듈(21)과, SNR 측정 모듈(22)과, PDR 측정 모듈(23)과, 비용 계산 모듈(24)을 포함하여 구성될 수 있다.
SNR 측정 모듈(22)은 송수신 모듈(30)에서 측정되는 RSSI(Received Signal Strength Indication)을 이용하여 SNR 값을 계산한다. SNR은 다음의 수학식 1에 의하여 계산될 수 있다.
여기서, RSSIS는 현재 수신되는 신호에 의하여 측정된 RSSI 값이고, RSSIN은 신호가 수신되지 않을 때, 즉 잡음에 의한 RSSI 값을 의미한다.
PDR 측정 모듈(23)은 일정 수의 전체 패킷에 대하여 몇 개의 패킷이 에러 없이 수신되었는가를 나타내는 PDR(Packet Delivery Ratio)를 계산한다. PDR은 일정 수의 패킷 수에 대한 에러 없이 수신된 패킷의 수의 비율로 정의될 수 있다.
한편, SNR 안정도 계산 모듈(21)은 SNR 측정 모듈(22)에서 계산되는 SNR 값을 이용하여 SNR의 안정도를 계산한다. SNR 안정도는 시간에 따른 SNR 값의 변동이 적은 정도를 의미하는 것으로, 일 예로, 일정 횟수 동안 관찰된 SNR 값들로부터 평균 SNR에 대한 표준편차 값의 비를 계산함으로써 구할 수 있다.
비용 계산 모듈(24)은 상기 SNR, SNR 안정도, 및 PDR을 이용하여 다운링크시의 비용을 계산한다. 상기 비용은 링크 품질(link quality)과는 반대되는 개념으로서, 일 예로 계산된 링크 품질 값을 간단히 역수로 취함으로써 구할 수 있다. 보다 바람직하게는, 실수값을 갖는 링크 품질을 구간별로 분류하여 이산 값을 갖는 N개의 정수값으로 구분하고, 가장 높은 링크 비용을 갖는 경우에 비용을 1로, 가장 낮은 링크 비용을 갖는 경우에 비용을 N으로 설정하는 방법을 사용할 수 있다.
도 13은 비용 계산 모듈(24)의 구성을 보다 자세히 나타낸 블록도이다. 먼저, SNR 측정 모듈(22)로부터 SNR 값(이하, 라고 표시함)을 비용 계산 모듈(24) 및 SNR 안정도 계산 모듈(21)에 전송한다. 여기서, 은 시간 t에서 노드 I로부터 수신한 패킷의 SNR 값을 의미한다.
SNR 안정도 계산 모듈(21)은 일정 시간 L 동안(t-L 시각부터 t 시각 동안)에 수신된 패킷의 값들의 표준편차(Standard Deviation)인 와, 평균(mean)인 을 계산하고, 이 값들을 이용하여 SNR 안정도()를 다음의 수학식 2에 따라서 계산한다.
이 때, 는 0에서 1까지의 범위를 가지며, 만약 가 1보다 크다면 는 1로 둔다.
그리고, PDR 측정 모듈(23)은 일정 기간 L 동안에 수신한 패킷의 수신율(Delivery Rate)인 을 계산한다. 이 때, 은 0에서 1까지의 범위를 갖는다.
한편, 비용 계산 모듈(24)은 메디안 필터(25)와, EWMA 필터(26)와, 링크 품질 계산 모듈(26)과, 분류 모듈(27)을 포함하여 구성될 수 있다.
메디안 필터(25)는 일정 시간() 동안 계산된 에 대하여 다음의 수학식 3에서와 같이 메디안(median) 연산을 수행한다. 메디안 필터는 일시적으로 큰 변화를 갖는 입력값들을 제거하여 보다 신뢰할 수 있는 출력값을 생성한다.
EWMA(exponential weighted moving average) 필터(26)는 메디안 필터(25)에 의하여 계산된 결과인 에 대하여 다음의 수학식 4에서와 같이 EWMA 연산을 수행한다.
여기서, 는 EWMA 연산에 의하여 처리된 결과 값이고, 는 이전의 결과 값이며, 는 1과 0사이의 실수로서 새로운 변화를 반영하는 비율에 반비례하는 값이다. 즉, 가 크면 새로운 변화의 반영 정도가 낮고, 가 작으면 새로운 변화의 반영 정도가 높다.
링크 품질 계산 모듈(26)은 EWMA 필터 처리된 값 와, 와, 을 이용하여 해당 링크의 품질을 계산한다. 링크 품질은 다음의 수학식 5에 의하여 계산될 수 있다.
여기서, 는 계산된 링크 품질 값이며, a, b, c는 상수 계수이다. 수학식 5에서 보면, 가 증가함에 따라, 가 감소함에 따라 커진다. 그러나, 링크 품질 계산식은 수학식 5와 같이 반드시 3개의 변수로 구성되는 것은 아니고, 3개의 변수 중 일부 변수의 조합으로도 구성될 수 있다. 예를 들어, 을 변수로 사용한다면, 는 제거하면 될 것이고, 를 변수로 사용한다면 b=0으로 두면 될 것이다.
분류 모듈(27)은 계산된 링크 품질 값 을 크기에 따라 구간별로 분류하여 소정 개수(N)의 정수 인덱스로 구분하고, 가장 높은 링크 품질을 갖는 경우에 비용을 1로, 가장 낮은 링크 품질을 갖는 경우에 비용을 N으로 설정한다. 분류 모듈(27)에 의하여 분류된 정수 인덱스, 즉 비용 값은 으로 표시된다.
도 14는 송수신 모듈(30)의 구성을 보다 자세히 나타낸 블록도이다. 송수신 모듈(30)은 네트워크 디바이스 드라이버(35)와, 전송층(transport layer) 모듈(31)과, 네트워크층(network layer) 모듈(32)과, 데이터 링크층(data link layer) 모듈(33)과, 물리층(physical layer) 모듈(34)을 포함하여 구성될 수 있다.
네트워크 디바이스 드라이버(35)는 데이터 링크층(data link layer) 모듈(33)과, 물리층(physical layer) 모듈(34)을 포함하는 네트워크 인터페이스 카드를 제어하기 위한 프로그램이다. 네트워크 디바이스 드라이버는 시스템내의 모듈들이 사용하는 일반적인 입출력 명령어들을, 네트워크 인터페이스 카드가 이해할 수 있는 메시지의 형태로 변환하는 역할을 담당한다. 즉, 네트워크 디바이스 드라이버(35)는 데이터 링크층 모듈(33)과 링크 비용 측정 모듈(20)간에 데이터 전달시의 가교 역할을 한다.
전송층 모듈(31)은 전송층에서의 동작을 제어한다. 일반적인 전송층의 동작은 응용층 모듈(40)로부터 전달되는 데이터 페이로드에 전송층 헤더를 생성, 부가하고 이를 네트워크 층으로 전달하고, 네트워크 층으로부터 전달되는 데이터에서 전송층 헤더를 제거하고 이를 응용층 모듈(40)에 전달한다. 이외에, 전송층 모듈(31)은 컨트롤 패킷 판독 모듈(12)로부터 전달되는 탐색 패킷의 페이로드나 통지 패킷의 페이로드에 전송층 헤더를 생성, 부가하고 이를 네트워크 층으로 전달하며, 네트워크 층으로부터 탐색 패킷이나 통지 패킷에 관한 데이터를 전달받은 경우에는 이로부터 전송층 헤더를 제거한 후 컨트롤 패킷 판독 모듈(12)로 전달한다. 이와 같은 전송층 모듈(31)은 예컨대 UDP(User Datagram Protocol), 또는 TCP(Transmission Control Protocol)에 의하여 구현될 수 있다.
네트워크층 모듈(32)은 네트워크층에서의 동작을 제어한다. 네트워크층의 동작은 전송층 모듈(31)로부터 전달되는 데이터에 네트워크층 헤더를 생성, 부가하여 이를 데이터 링크층으로 전달하고, 데이터 링크 층으로부터 전달되는 데이터에서 네트워크층 헤더를 제거하고 이를 전송층으로 전달한다. 상기 생성, 부가되는 네트워크층 헤더에는 라우팅 모듈(10)에 의하여 관리되는 라우팅 테이블에서 제공하는 목적지 노드의 주소 정보와, '다음 노드'의 주소 정보가 포함된다. 이와 같은 네트워크층 모듈(32)은 예컨대, IP에 의하여 구현될 수 있다.
데이터 링크층 모듈(33)은 네트워크 디바이스 드라이버(35)를 통하여 링크 비용 측정 모듈(20)과 접속된다. 데이터 링크층 모듈(33)은 물리층으로부터 데이터 링크층으로 전달되는 패킷 에러 정보 및 RSSI 정보를 네트워크 디바이스 드라이버(35)를 통하여 링크 비용 측정 모듈(20)에 전달한다. 또한, 일반적인 동작으로서, 네트워크 층으로부터 전달되는 데이터에 데이터 링크 층 헤더를 생성, 부가하여 이를 물리층으로 전달하고, 물리층으로부터 전달되는 데이터에 데이터 링크 층 헤더를 제거하여 네트워크층으로 전달한다.
물리층 모듈(34)은 데이터 링크층으로부터 전달되는 데이터를 소정의 무선 변조 방식으로 변조하고 변조된 RF(radio-frequency) 신호를 무선 매체를 통하여 전송하는 한편, 무선 매체로부터 RF 신호를 수신하고 이로부터 판독된 데이터를 데이터 링크층으로 전달한다.
지금까지의 설명에서, "모듈(module)"이라는 용어는 소프트웨어 구성요소(software component) 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소(hardware component)를 의미하며, 모듈은 어떤 역할들을 수행한다.  그렇지만 모듈은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다.  모듈은 어드레싱(addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다.  따라서, 일 예로서 모듈은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스(class) 구성요소들 및 태스크(task) 구성요소들과 같은 구성요소들과, 프로세스들(processes), 함수들(functions), 속성들(properties), 프로시저들(procedures), 서브루틴들(sub-routines), 프로그램 코드(program code)의 세그먼트들(segments), 드라이버들(drivers), 펌웨어(firmwares), 마이크로코드(micro-codes), 회로(circuits), 데이터(data), 데이터베이스(databases), 데이터 구조들(data structures), 테이블들(tables), 어레이들(arrays), 및 변수들(variables)을 포함한다.  구성요소들과 모듈들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 모듈들로 결합되거나 추가적인 구성요소들과 모듈들로 더 분리될 수 있다.  뿐만 아니라, 구성요소들 및 모듈들은 통신 시스템 내의 하나 또는 그 이상의 컴퓨터들을 실행시키도록 구현될 수도 있다.
도 15a는 본 발명에 따라서 라우팅 경로를 결정하는 실제 예를 나타내는 도면이다. 여기서, 각 노드 간에 표시된 값들은 링크간의 양방향 비용을 나타낸다. 먼저, 노드 A가 노드 G로의 라우팅 경로를 결정하는 과정을 살펴본다. 노드 A는 주변 노드인 노드 B 및 노드 C와 탐색 패킷을 주고 받음을 통하여 도 15b와 같은 인접 테이블을 구성한다. 여기서, 노드 A에서 노드 D로는 업로드만 가능하므로 다운링크 비용은 계산될 수 없으므로 Neighbor Address가 D인 행의 Downlink Cost에는 'NULL'이 기록된다.
한편, 노드 A는 다른 노드들이 전송하는 통지 패킷을 확인함으로써 도 15c와 같은 위상 테이블을 구성한다. 다만, 여기서 노드 D(last address)에서 노드 G(destination address)로는 업로드는 불가능하고 다운로드만 가능하므로 Destination Address가 G이고 Last Address가 D인 행의 Uplink Cost에는 'NULL'이 기록된다.
다음으로, 도 15d와 같은 노드 A의 라우팅 테이블을 구성한다. 노드 D로 향하는 경로는 A-B-D와 A-D, 및 A-C-D 세가지가 있다. 이 중 최소 비용을 갖는 A-B-D 경로가 선택되어 라우팅 테이블의 3행에 기록된다. 따라서 3행의 Destination Address에는 목적지 노드인 노드 D가 기록되고, Next Address에는, 노드 D로 향하기 위한 경로를 택할 때 노드 A가 거치는 다음 노드, 즉 노드 B가 기록된다.
마찬가지로 D에서 G로 향하는 경로는 D-E-G, D-F-G 두 개가 있지만(D-G는 이를 통한 업링크 불가능하므로 제외됨), 최소 비용을 갖는 D-F-G가 선택된다. 결과적으로, A-B-D-F-G가 총비용 8로서 최적의 경로인 것으로 선택된다.
그러나, 노드 A가 데이터를 전송하기 위하여 각 경로에 존재하는 노드 B, D, F, G 모두를 지정하여 전송할 필요는 없다. 노드 A는 단지 최종 목적지 노드인 노드 G와 이를 위하여 일단 다음 노드 B만 지정하여 전송하면 된다. 그 후에는 노드 B, 노드 D, 노드 F를 통해 데이터가 릴레이 되어 최종적으로 노드 G로 데이터가 전송된다. 이와 같이 노드 A가 예측한 경로로 릴레이가 되는 것은 노드 A 이외의 다른 노드들도 주기적으로 통지 패킷을 수신하여 자신의 라우팅 테이블을 갱신하기 때문이다. 이와 같은 이유로, 도 15d와 같은 라우팅 테이블에는 최종 목적지 노드와 최적 경로를 위한 다음 노드만 기록되면 되는 것이다. 따라서 제6행에서 Destination Address에는 노드 G가 기록되고, Next Address에는 노드 B가 기록된다.
반대로, 노드 G로부터 노드 A로의 라우팅 경로를 결정하는 경우를 살펴보면, 노드 G에서 노드 D로의 최소 비용을 갖는 경로는 G-D경로이고, 노드 D에서 노드 A로의 최소 비용을 갖는 경로는 D-C-A 경로이므로 결국, G-D-C-A가 노드 G로부터 노드 A로의 최적 라우팅 경로가 된다. 결과적으로, 본 발명을 적용하여 최적의 라우팅 경로를 선택하면 노드 A로부터 노드 G로의 라우팅 경로와, 노드 G로부터 노드 A로의 라우팅 경로는 상당히 달라질 수 있다. 이러한 현상은 특히 무선 네트워크 상태가 안정적이지 못하고 기기간의 성능 차이가 클 때 보다 현저하게 된다. 이와 같이, 본 발명에 따르면 가변적이거나 열악한 네트워크 상태에서도 최적의 라우팅 경로를 적응적으로 찾아낼 수 있음을 알 수 있다.
도 16은 탐색 패킷을 전송하는 과정을 나타낸 흐름도이다. 먼저, 인접 테이블에서 특정 링크의 타이머가 만료되면(S11의 예), 컨트롤 패킷 생성 모듈(11)은 인접 테이블을 참조하여 제1 노드와 주변 노드간의 업링크 비용과 다운링크 비용 정보를 포함하는 탐색 패킷의 페이로드를 생성한다(S12). 이러한 탐색 패킷의 구조는 도 7에서 설명한 바와 같다.
그리고, 송수신 모듈(30)은 상기 탐색 패킷의 페이로드에 각 계층 별로 해당 헤더를 부착한다(S13). 이 때 네트워크층 헤더에 기록되는 TTL은 1로 설정된다. 그리고, 물리층 모듈(34)은 탐색 패킷을 제1 노드로부터 1홉내로 브로드캐스팅한다(S14).
도 17은 탐색 패킷을 수신하는 과정을 나타낸 흐름도이다. 먼저, 물리층 모듈(34)은 제1 노드의 주변 노드로부터 탐색 패킷을 수신한다(S20). 그리고, 컨트롤 패킷 판독 모듈(12)은 수신된 판독 패킷의 해당 'Downlink Cost' 필드를 판독한다(S21). 여기서 해당 필드란 제1 노드의 주소가 기재된 위치의 'Downlink Cost' 필드를 의미한다.
다음으로, SNR 측정 모듈(22)은 수신된 탐색 패킷으로부터 SNR을 측정하고, PDR 측정 모듈(23)은 PDR을 측정한다(S22). 그리고, SNR 안정도 계산 모듈(21)은 측정된 SNR을 이용하여 SNR 안정도를 계산한다(S23). 비용 계산 모듈(24)은 상기 SNR, SNR 안정도, 및 PDR을 이용하여 링크간 비용을 계산한다(S24). 상기 S22 내지 S24까지의 과정은 도 12의 설명에서 보다 자세히 나타나 있다.
다음, 인접 테이블 갱신 모듈(15)은 상기 판독된 'Downlink Cost' 필드 값을 이용하여 인접 테이블의 해당 업링크 비용(uplink cost) 값을 갱신하고, 상기 계산된 링크 비용을 이용하여 인접 테이블의 해당 다운링크 비용(downlink cost) 값을 갱신한다(S25). 그리고, 라우팅 테이블 갱신 모듈(14)은 상기 인접 테이블의 변경을 반영하여 라우팅 테이블을 갱신한다(S26).
도 18은 통지 패킷을 전송하는 과정을 나타낸 흐름도이다. 먼저, 인접 테이블에서 특정 링크의 타이머가 만료되면(S31의 예), 컨트롤 패킷 생성 모듈(11)은 인접 테이블을 참조하여 제1 노드와 주변 노드간의 업링크 비용과 다운링크 비용 정보를 포함하는 통지 패킷의 페이로드를 생성한다(S32). 이러한 탐색 패킷의 구조는 도 8에서 설명한 바와 같다.
그리고, 송수신 모듈(30)은 상기 통지 패킷의 페이로드에 각 계층 별로 해당 헤더를 부착한다(S33). 이 때 네트워크층 헤더에 기록되는 TTL은 예컨대, 255로 설정된다. 그리고, 물리층 모듈(34)은 탐색 패킷을 제1 노드로부터 전체 IBSS에 대하여 브로드캐스팅한다(S34).
도 19는 통지 패킷을 수신하는 과정을 나타낸 흐름도이다. 먼저, 물리층 모듈(34)은 IBSS의 구성 노드 중 하나로부터 통지 패킷을 수신한다(S41). 그리고, 컨트롤 패킷 판독 모듈(12)은 수신된 통지 패킷의 해당 'Uplink Cost' 필드 및 'Downlink Cost' 필드를 판독한다(S42). 여기서 해당 필드란 제1 노드의 주소가 기재된 위치의 각 필드를 의미한다.
다음, 위상 테이블 갱신 모듈(13)은 상기 판독된 'Uplink Cost' 필드 값 및 'Downlink Cost' 필드 값을 이용하여 위상 테이블의 해당 업링크 비용(uplink cost) 값 및 다운링크 비용(downlink cost) 값을 갱신한다(S43). 그리고, 라우팅 테이블 갱신 모듈(14)은 상기 위상 테이블의 변경을 반영하여 라우팅 테이블을 갱신한다(S44).
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
본 발명에 따르면, 무선 애드혹 네트워크상에서 제한된 대역폭을 더욱 효율적으로 사용할 수 있게 된다.
또한 본 발명에 따르면, 업스트림과 다운스트림이 한 노드에서 집중되어 발생할 수 있는 경쟁(contention)과 그에 따른 패킷 유실(packet loss), 패킷 지연(packet delay)를 감소시킬 수 있다.
그리고, 상기 효과들을 통하여 무선 네트워크에서 패킷의 송수신을 보다 안정적으로 수행할 수 있게 된다.
도 1은 선행기술의 개념을 간단히 나타낸 개략도.
도 2는 무선 노드 전송의 방향성을 설명하는 개념도.
도 3은 노드 간의 SNR을 측정한 결과를 나타낸 도면.
도 4는 노드 간의 데이터 전송률을 측정한 결과를 나타낸 도면.
도 5는 본 발명에 따른 모바일 노드의 구성을 개략적으로 나타낸 블록도.
도 6은 라우팅 모듈의 구성을 보다 상세히 나타낸 블록도.
도 7은 탐색 패킷의 구성을 나타낸 도면.
도 8는 통지 패킷의 구성을 나타낸 도면.
도 9는 위상 테이블의 구성을 나타낸 도면.
도 10은 인접 테이블의 구성을 나타낸 도면.
도 11은 라우팅 테이블의 구성을 나타낸 도면.
도 12는 링크 비용 측정 모듈과 그 주변 모듈의 구성을 보다 자세히 나타낸 블록도.
도 13은 비용 계산 모듈의 구성을 보다 자세히 나타낸 블록도.
도 14는 송수신 모듈의 구성을 보다 자세히 나타낸 블록도.
도 15a는 본 발명에 따라서 라우팅 경로를 결정하는 실제 예를 나타내는 예시도.
도 15b는 도 15a의 예에서 구성되는 인접 테이블.
도 15c는 도 15a의 예에서 구성되는 위상 테이블.
도 15d는 도 15a의 예에서 구성되는 라우팅 테이블.
도 16은 탐색 패킷을 전송하는 과정을 나타낸 흐름도.
도 17은 탐색 패킷을 수신하는 과정을 나타낸 흐름도.
도 18은 통지 패킷을 전송하는 과정을 나타낸 흐름도.
도 19는 통지 패킷을 수신하는 과정을 나타낸 흐름도.
(도면의 주요부분에 대한 부호 설명)
10 : 라우팅 모듈 20 : 링크 비용 측정 모듈
30 : 송수신 모듈 100 : 모바일 노드

Claims (14)

  1. 무선 애드혹 네트워크를 구성하는 모바일 노드에 있어서,
    상기 모바일 노드와 인접 노드간의 다운링크 비용을 측정하는 링크 비용 측정 모듈;
    수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내고, 상기 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정하는 라우팅 모듈; 및
    상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리고, 상기 설정된 라우팅 경로에 따라 다른 모바일 노드와 데이터를 송수신하는 송수신 모듈을 포함하는 모바일 노드.
  2. 제1항에 있어서, 상기 링크 비용 측정 모듈은
    상기 송수신 모듈에서 측정되는 RSSI(Received Signal Strength Indication)을 이용하여 SNR 값을 계산하는 SNR 측정 모듈; 및
    일정 수의 패킷 수에 대해 에러 없이 수신한 패킷의 수의 비율(PDR)을 계산하는 PDR 측정 모듈;
    상기 SNR(Signal-to-Ratio) 값을 이용하여 SNR의 안정도를 계산하는 SNR 안정도 계산 모듈; 및
    상기 SNR, SNR 안정도, 및 PDR을 이용하여 다운링크시의 비용을 계산하는 비용 계산 모듈을 포함하는 모바일 노드.
  3. 제2항에 있어서, 상기 비용 계산 모듈은
    일정 시간 동안 계산된 SNR 값에 대하여 메디안(median) 연산을 수행하는 메디안 필터;
    상기 연산 수행 결과 값에 대하여 EWMA(exponential weighted moving average) 연산을 수행하는 EWMA 필터;
    상기 EWMA 연산 결과 값과, 상기 계산된 SNR 안정도 값, 및 상기 계산된 PDR 값을 모두 고려하여 해당 링크의 품질을 계산하는 링크 품질 계산 모듈; 및
    상기 계산된 링크 품질 값을 크기에 따라 구간별로 분류하여 소정 개수의 정수 인덱스로 구분하고 이를 역순으로 배열하여 링크 비용 값으로 설정하는 분류 모듈을 포함하는 모바일 노드.
  4. 제1항에 있어서, 상기 라우팅 모듈은
    수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내는 패킷 판독 모듈;
    상기 찾아낸 양방향 링크 비용을 이용하여 위상 테이블을 갱신하는 위상 테이블 갱신 모듈;
    상기 찾아낸 양방향 링크 비용을 이용하여 인접 테이블을 갱신하는 인접 테이블 갱신 모듈; 및
    갱신된 인접 테이블 또는 갱신된 위상 테이블을 이용하여 라우팅 테이블을 갱신하는 라우팅 테이블 갱신 모듈을 포함하는 모바일 노드.
  5. 제4항에 있어서, 상기 위상 테이블 및 상기 인접 테이블은
    특정 링크에 대하여 업링크 비용과 다운링크 비용이 각각 별도로 기록되는 것을 특징으로 하는 모바일 노드.
  6. 제4항에 있어서, 상기 라우팅 테이블은
    목적지 노드의 주소 및 다음 노드의 주소가 기록되는 것을 특징으로 하는 모바일 노드.
  7. 제4항에 있어서,
    상기 위상 테이블은 통지 패킷을 수신한 때 갱신되고, 상기 인접 테이블은 탐색 패킷을 수신한 때 갱신되는 것을 특징으로 하는 모바일 노드.
  8. 제7항에 있어서, 상기 통지 패킷 및 상기 탐색 패킷에는
    특정 링크에 대하여 업링크 비용과 다운링크 비용이 각각 별도로 기록되는 것을 특징으로 하는 모바일 노드.
  9. 제1항에 있어서,
    상기 비용 정보는 컨트롤 패킷을 통하여 다른 모바일 노드에 전송되는데, 상기 컨트롤 패킷이 통지 패킷인 경우에는 TTL 값은 소정의 양의 정수값으로 설정되고, 상기 컨트롤 패킷이 탐색 패킷인 경우에는 상기 TTL 값은 1로 설정되어 전송되는 것을 특징으로 하는 모바일 노드.
  10. 무선 애드혹 네트워크를 구성하는 모바일 노드의 라우팅 경로 설정 방법에 있어서,
    (a) 상기 모바일 노드와 인접 노드간의 다운링크 비용을 측정하는 단계;
    (b) 수신된 컨트롤 패킷을 판독하여 상기 무선 애드혹 네트워크를 구성하는 모바일 노드간의 양방향 링크 비용을 찾아내는 단계;
    (c) 상기 찾아낸 링크 비용이 최소가 되는 방향으로 라우팅 경로를 설정하는 단계;
    (d) 상기 측정된 다운링크 비용 정보를 상기 무선 애드혹 네트워크를 구성하는 다른 모바일 노드들에게 알리는 단계를 포함하는 라우팅 경로 설정 방법.
  11. 제10항에 있어서, 상기 (a) 단계는
    (a1) 상기 송수신 모듈에서 측정되는 RSSI(Received Signal Strength Indication)을 이용하여 SNR 값을 계산하는 단계;
    (a2) 일정 수의 패킷 수에 대해 에러 없이 수신한 패킷의 수의 비율(PDR)을 계산하는 단계;
    (a3) 상기 SNR(Signal-to-Ratio) 값을 이용하여 SNR의 안정도를 계산하는 단계;
    (a4) 상기 SNR, SNR 안정도, 및 PDR을 이용하여 다운링크시의 비용을 계산하는 단계를 포함하는 라우팅 경로 설정 방법.
  12. 제10항에 있어서, 상기 (a4) 단계는
    일정 시간 동안 계산된 SNR 값에 대하여 메디안 연산을 수행하는 단계;
    상기 연산 수행 결과 값에 대하여 EWMA 연산을 수행하는 단계;
    상기 EWMA 연산 결과 값과, 상기 계산된 SNR 안정도 값, 및 상기 계산된 PDR 값을 모두 고려하여 해당 링크의 품질을 계산하는 단계; 및
    상기 계산된 링크 품질 값을 크기에 따라 구간별로 분류하고 소정 개수의 정수 인덱스로 구분하는 단계; 및
    상기 구분된 정수 인덱스를 역순으로 배열하여 링크 비용 값으로 설정하는 단계를 포함하는 라우팅 경로 설정 방법.
  13. 제10항에 있어서, 상기 (c) 단계는
    상기 찾아낸 양방향 링크 비용을 이용하여 위상 테이블을 갱신하는 단계;
    상기 찾아낸 양방향 링크 비용을 이용하여 인접 테이블을 갱신하는 단계; 및
    상기 갱신된 인접 테이블 또는 상기 갱신된 위상 테이블을 이용하여 라우팅 테이블을 갱신하는 단계를 포함하는 라우팅 경로 설정 방법.
  14. 제13항에 있어서, 상기 위상 테이블 및 상기 인접 테이블은
    특정 링크에 대하여 업링크 비용과 다운링크 비용이 각각 별도로 기록되는 것을 특징으로 하는 라우팅 경로 설정 방법.
KR1020040041886A 2004-06-08 2004-06-08 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치 KR100664919B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040041886A KR100664919B1 (ko) 2004-06-08 2004-06-08 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040041886A KR100664919B1 (ko) 2004-06-08 2004-06-08 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20050116852A true KR20050116852A (ko) 2005-12-13
KR100664919B1 KR100664919B1 (ko) 2007-01-04

Family

ID=37290363

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040041886A KR100664919B1 (ko) 2004-06-08 2004-06-08 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치

Country Status (1)

Country Link
KR (1) KR100664919B1 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703372B1 (ko) * 2003-08-22 2007-04-03 삼성전자주식회사 이동 애드혹 망에서 총 연결 비용을 결정하는 장치 및 방법
KR100895621B1 (ko) * 2008-03-27 2009-05-06 국방과학연구소 무선 이동 Ad-Hoc 네트워크에서의 토폴로지 관리방법
KR101011265B1 (ko) * 2009-02-18 2011-01-27 고려대학교 산학협력단 모바일 애드혹 네트워크에서의 이기성 노드 검출 장치 및 방법과 이를 이용한 데이터 복제본 할당 방법
KR101088178B1 (ko) * 2009-12-18 2011-12-02 한국과학기술원 멀티 라디오 모바일 애드 혹 네트워크 환경에서의 라우팅 방법
KR101141602B1 (ko) * 2009-07-30 2012-05-17 경상대학교산학협력단 센서 네트워크 장치 및 이를 이용한 라우팅 방법
WO2012081823A1 (ko) * 2010-12-17 2012-06-21 이화여자대학교 산학협력단 피어링 제의 리스트를 제공하는 방법, p2p 네트워크를 형성하는 방법, p2p 어플리케이션 장치, p2p 네트워크를 형성하는 단말 및 네트워크 장치
KR101254704B1 (ko) * 2006-12-13 2013-04-15 삼성전자주식회사 라우팅 체인 최소화 방법 및 이를 이용하는 네트워크시스템
KR101405471B1 (ko) * 2007-02-22 2014-06-11 삼성전자주식회사 광대역 무선통신 시스템에서 경로선택을 위한 장치 및 방법
US8804610B2 (en) 2007-12-10 2014-08-12 Electronics And Telecommunications Research Institute Packet transmission scheduling method for simultaneous packet transmission in multiplexing paths in wireless network, and packet transmission method using the same
KR101897404B1 (ko) * 2017-04-12 2018-09-10 국방과학연구소 이동 애드혹 네트워크의 경로 설정 방법과 이를 이용한 네트워크 시스템
KR101986497B1 (ko) * 2018-10-22 2019-06-07 엘아이지넥스원 주식회사 모바일 애드혹 네트워크에서 데이터 패킷 송신 경로 선택 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100356955B1 (ko) * 2000-12-14 2002-10-18 엘지전자 주식회사 애드-혹 망에서 다중 경로를 이용한 라우팅 방법
US7342876B2 (en) 2001-12-20 2008-03-11 Sri International Interference mitigation and adaptive routing in wireless ad-hoc packet-switched networks
US6958986B2 (en) 2002-01-10 2005-10-25 Harris Corporation Wireless communication system with enhanced time slot allocation and interference avoidance/mitigation features and related methods
US7107498B1 (en) 2002-04-16 2006-09-12 Methnetworks, Inc. System and method for identifying and maintaining reliable infrastructure links using bit error rate data in an ad-hoc communication network

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100703372B1 (ko) * 2003-08-22 2007-04-03 삼성전자주식회사 이동 애드혹 망에서 총 연결 비용을 결정하는 장치 및 방법
KR101254704B1 (ko) * 2006-12-13 2013-04-15 삼성전자주식회사 라우팅 체인 최소화 방법 및 이를 이용하는 네트워크시스템
KR101405471B1 (ko) * 2007-02-22 2014-06-11 삼성전자주식회사 광대역 무선통신 시스템에서 경로선택을 위한 장치 및 방법
US8804610B2 (en) 2007-12-10 2014-08-12 Electronics And Telecommunications Research Institute Packet transmission scheduling method for simultaneous packet transmission in multiplexing paths in wireless network, and packet transmission method using the same
KR100895621B1 (ko) * 2008-03-27 2009-05-06 국방과학연구소 무선 이동 Ad-Hoc 네트워크에서의 토폴로지 관리방법
KR101011265B1 (ko) * 2009-02-18 2011-01-27 고려대학교 산학협력단 모바일 애드혹 네트워크에서의 이기성 노드 검출 장치 및 방법과 이를 이용한 데이터 복제본 할당 방법
KR101141602B1 (ko) * 2009-07-30 2012-05-17 경상대학교산학협력단 센서 네트워크 장치 및 이를 이용한 라우팅 방법
KR101088178B1 (ko) * 2009-12-18 2011-12-02 한국과학기술원 멀티 라디오 모바일 애드 혹 네트워크 환경에서의 라우팅 방법
WO2012081823A1 (ko) * 2010-12-17 2012-06-21 이화여자대학교 산학협력단 피어링 제의 리스트를 제공하는 방법, p2p 네트워크를 형성하는 방법, p2p 어플리케이션 장치, p2p 네트워크를 형성하는 단말 및 네트워크 장치
KR101897404B1 (ko) * 2017-04-12 2018-09-10 국방과학연구소 이동 애드혹 네트워크의 경로 설정 방법과 이를 이용한 네트워크 시스템
KR101986497B1 (ko) * 2018-10-22 2019-06-07 엘아이지넥스원 주식회사 모바일 애드혹 네트워크에서 데이터 패킷 송신 경로 선택 방법

Also Published As

Publication number Publication date
KR100664919B1 (ko) 2007-01-04

Similar Documents

Publication Publication Date Title
RU2423010C2 (ru) Показатель маршрутизации на основе сведений по радиосвязи и полосе пропускания для многоканальных многоскачковых беспроводных сетей с множеством радиостанций
JP4598000B2 (ja) マルチホップネットワークにおけるコスト決定
Teo et al. Interference-minimized multipath routing with congestion control in wireless sensor network for high-rate streaming
US8085672B2 (en) Wireless routing implementation
US9450668B2 (en) Packet relay system and wireless node
JP5037120B2 (ja) アドホック無線通信ネットワークにおける最適なルーティング
US7978632B2 (en) Wireless mesh network transit link topology optimization method and system
EP3209089B1 (en) Hybrid mesh network
JP4098772B2 (ja) 移動体アドホック・ネットワークにおける許可制御
CN102223671B (zh) 无线多跳网络中数据传输的方法和通信设备
US20120030150A1 (en) Hybrid Learning Component for Link State Routing Protocols
US20080205420A1 (en) Determining bidirectional path quality within a wireless mesh network
CN101932062B (zh) 一种Ad Hoc网络环境下的多路径路由方法
CN101803309A (zh) 在公共事业智能网格网络中进行路由的方法和系统
Asokan A review of Quality of Service (QoS) routing protocols for mobile Ad hoc networks
KR20040102085A (ko) 다중 도약 무선 애드-혹 통신망에서 잠재적 숨겨진 노드문제를 식별해내는 시스템 및 방법
Ben Fradj et al. Opportunistic routing protocols in wireless sensor networks
KR100664919B1 (ko) 무선 애드혹 네트워크에서의 라우팅 경로 설정 방법 및 장치
Malathy et al. Routing constraints in the device-to-device communication for beyond IoT 5G networks: a review
Ahmad et al. Efficient AODV routing based on traffic load and mobility of node in MANET
Sharma et al. Ant colony based node disjoint local repair in multipath routing in MANET network
Deng et al. EPTR: expected path throughput based routing protocol for wireless mesh network
CN104053208B (zh) 无线自组网中基于信道分配的路由方法、装置
Raju et al. ZRP versus aodv and dsr: A comprehensive study on zrp performance on manets
Raju et al. Scenario-based comparison of source-tracing and dynamic source routing protocols for ad hoc networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee