KR101269222B1 - 통신 장치, 허브 감지 방법 및 패킷 전송 방법 - Google Patents

통신 장치, 허브 감지 방법 및 패킷 전송 방법 Download PDF

Info

Publication number
KR101269222B1
KR101269222B1 KR1020110061767A KR20110061767A KR101269222B1 KR 101269222 B1 KR101269222 B1 KR 101269222B1 KR 1020110061767 A KR1020110061767 A KR 1020110061767A KR 20110061767 A KR20110061767 A KR 20110061767A KR 101269222 B1 KR101269222 B1 KR 101269222B1
Authority
KR
South Korea
Prior art keywords
node
pheromone
hub
packet
hop neighbor
Prior art date
Application number
KR1020110061767A
Other languages
English (en)
Other versions
KR20130000941A (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 KR1020110061767A priority Critical patent/KR101269222B1/ko
Priority to PCT/KR2011/005144 priority patent/WO2012176951A1/en
Priority to US14/126,487 priority patent/US20140133353A1/en
Publication of KR20130000941A publication Critical patent/KR20130000941A/ko
Application granted granted Critical
Publication of KR101269222B1 publication Critical patent/KR101269222B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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/02Topology update or discovery
    • H04L45/08Learning-based routing, e.g. using neural networks or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 노드로서 동작하는 통신 장치, 허브 감지 방법 및 패킷 전송 방법이 개시된다. 여기서, 통신 장치는 멀티홉 네트워크에서 허브로 동작하는지를 판단하는 허브 감지부, 허브인지 여부에 따른 페로몬 값을 계산하는 페로몬 계산부, 페로몬 값을 이웃 노드들에게 브로드캐스팅하는 송신부, 이웃 노드들로부터 각각의 상기 페로몬 값을 수신하는 수신부 및 이웃 노드들의 페로몬 값을 비교하여 페로몬 값이 가장 큰 이웃 노드를 패킷을 전송할 포워딩 노드로 선정하는 포워딩 노드 선정부를 포함한다.

Description

통신 장치, 허브 감지 방법 및 패킷 전송 방법{COMMUNICATION DEVICE, METHOD FOR DETECTING HUB AND TRANSMITTING PACKET THEREOF}
본 발명은 통신 장치, 허브 감지 방법 및 패킷 전송 방법에 관한 것으로, 특히, 멀티홉 네트워크에서 개미 군집 알고리즘(ant colony algorithm)을 이용하여 선택한 포워딩 노드로 패킷을 전송하는 통신 장치, 허브 감지 방법 및 패킷 전송 방법에 관한 것이다.
개미 군집 알고리즘(ant colony algorithm)은 개미가 먹이를 찾을 때 최단거리를 이용하는 점과 목적지까지 페로몬을 배출함으로써 타 개미와 정보를 공유한다는 사실에 착안한 라우팅 방법이다. 종래의 개미 군집 알고리즘은 플러딩(flooding) 방식의 제어 오버헤드 없이 자율적인 방식으로 최단경로를 탐색할 수 있는 장점이 있는 반면, 특정 지역의 혼잡을 야기하는 단점이 있다.
한편, 온라인 소셜 네트워크(online social network)는 유선망에 기반하기 때문에 이동성이 거의 없고, 서비스 제공자들의 서버에 저장된 데이터 중심으로 통신이 이루어지기 때문에 데이터 전달에 있어 사용자들의 역할이 크지 않은 특징이 있다.
반면, 이동 소셜 네트워크는 데이터 전송이 사용자 개인 단말기에 저장된 정보들을 중심으로 이루어지기 때문에 사용자들의 역할이 큰 비중을 차지한다. 여기서, 이동 소셜 네트워크는 스마트폰, 태블릿 PC 등 이동이 가능한 휴대 통신 단말기를 소지한 사용자들이 개인 또는 집단의 공통 이해 관계에 따라 소셜 애플리케이션을 통해 커뮤니티를 형성하여 서로 데이터를 교환하는 네트워크를 의미한다.
현재는 셀룰러(cellular) 망, 무선(wifi) 망, 블루투스(bluetooth) 망 등을 통한 1홉 통신이 주를 이루고 있지만, 미래에는 단말기들이 무선 통신을 통해 애드 혹(ad-hoc) 망을 형성하고 이를 포함하는 이기종 망의 멀티홉을 거쳐 데이터 전송이 이루어지는 구조로 재편될 가능성이 크다. 이는 현재 급격하게 증가하고 있는 스마트폰, 태블릿 PC 사용자들이 점유하는 셀룰러(cellular) 망 및 무선(wifi) 망의 자원을 현저히 감소시킬 수 있기 때문에 데이터 폭증(data explosion) 문제를 완화시킬 수 있는 장점이 있다.
또한, 소셜 네트워크는 척도 없는 네트워크(scale-free network)로 알려져 있다. 그래서 소셜 네트워크에는 일반 노드들에 비해 상대적으로 다른 노드들과 연결이 많이 되어있는 허브(hub)가 존재가 한다. 이러한 허브는 최단 경로 라우팅의 전달 경로로 빈번하게 선택되고 다양한 방향으로 데이터를 전달할 수 있는 특징이 있다.
그런데 종래에 통신 네트워크는 허브를 찾기 위해서는 전체 토폴로지에 대한 정보를 기반으로 사이 중앙성(betweenness centrality)을 측정해야 한다. 하지만 중앙 관리 시스템의 부재, 무선 네트워크 연결의 불연속성 등으로 인해 허브 감지의 어려움이 존재한다. 이와 더불어, 허브(hub)는 상대적으로 많은 연결로 인해 트래픽 혼잡 문제를 야기하며, 바이러스나 웜 등의 전파 수단으로 활용될 여지가 있다.
본 발명이 이루고자 하는 기술적 과제는 중앙 통제 시스템을 요구하지 않는 분산 방식으로 허브를 감지하고, 허브에 대한 경로 사용 빈도를 경감시킬 수 있는 통신 장치, 허브 감지 방법 및 패킷 전송 방법을 제공하는 것이다.
본 발명의 한 특징에 따르면, 통신 장치가 제공된다. 이 장치는, 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 노드로서 동작하는 통신 장치에 있어서, 상기 통신 장치가 허브인지를 판단하는 허브 감지부; 상기 허브인지 여부에 따른 페로몬 값을 계산하는 페로몬 계산부; 상기 페로몬 값을 이웃 노드들에게 브로드캐스팅하는 송신부; 상기 이웃 노드들로부터 각각의 상기 페로몬 값을 수신하는 수신부; 및 상기 이웃 노드들의 페로몬 값을 비교하여 페로몬 값이 가장 큰 이웃 노드를 패킷을 전송할 포워딩 노드로 선정하는 포워딩 노드 선정부를 포함한다.
본 발명의 다른 특징에 따르면, 허브 감지 방법이 제공된다. 이 방법은, 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 임의의 노드가 자신을 거쳐간 패킷들의 소스 주소와 목적지 주소를 저장하는 단계; 1홉 이웃 노드들로부터 상기 1홉 이웃 노드들의 위치 정보, 페로몬 값 및 경로 활용 빈도를 수신하는 단계; 상기 1홉 이웃 노드들의 수신 신호 세기, 위치 정보 및 페로몬 값을 토대로 상기 1홉 이웃 노드가 문제 노드인지를 판단하는 단계; 및 문제 노드가 아닌 1홉 이웃 노드의 경로 활용 빈도를 상기 임의의 노드의 경로 활용 빈도와 비교하여 자신이 허브인지를 판단하는 단계를 포함한다.
본 발명의 또 다른 특징에 따르면, 패킷 전송 방법이 제공된다. 이 방법은, 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 노드의 패킷 전송 방법에 있어서, 상기 노드가 허브인지를 판단하는 단계; 상기 허브인지 여부에 따라 페로몬 값을 계산하는 단계; 상기 페로몬 값을 이웃 노드들과 교환하는 단계; 상기 이웃 노드들로부터 수신한 페로몬 값을 비교하는 단계; 및 상기 페로몬 값이 가장 큰 이웃 노드에게 패킷을 전송하는 단계를 포함한다.
본 발명의 한 실시예에 따르면, 허브를 감지하고, 허브가 과도하게 라우팅 경로에 포함되는 것을 방지하기 위한 페로몬 할당 방법을 제시하여 허브 주위 지역의 혼잡을 방지하고, 공격, 침입, 고장 등으로 인한 허브의 문제 발생시 이로 인해 발생하는 망 전체의 성능 저하를 최소화할 수 있다.
또한, 이동 소셜 네트워크에서 패킷이 거쳐온 홉 수, 소스 주소와 목적지 주소에 기반한 경로 활용 빈도를 이용하여 허브를 감지하므로, 노드 자신과 이웃 노드들의 정보만을 활용하기 때문에 전체 토폴로지 정보 교환에 대한 오버헤드를 경감할 수 있다.
또한, 허브 감지 방법은 척도 없는 네트워크(scale-free network), 무선 메시 네트워크(wireless mesh network), 무선 센서 네트워크(wireless sensor network) 등과 같은 허브앤드스포크(hub-and-spoke) 타입의 네트워크에서 효율적으로 허브를 탐지하는데 활용될 수 있다.
또한, 여러 통신의 채널 상태 및 과금 정책에 따라 효율적인 통신을 선택하고 이웃 노드의 이동 속도 및 허브 여부에 따라 페로몬 값을 계산함으로써 데이터를 전송하는 과정에서 최적의 서비스를 제공할 수 있다.
또한, 허브의 페로몬 값 제어를 통해 허브의 사용 빈도를 적정 수준으로 조절하고 허브 주위의 트래픽 혼잡 문제를 해결할 수 있다. 이와 함께 허브가 바이러스나 웜 등에 감염되어 전파 수단으로 활용되거나, 고장, 공격 등의 문제로 인해 전체 네트워크 성능에 미치는 영향을 최소화한다.
도 1은 본 발명의 실시예가 적용되는 네트워크 구성도이다.
도 2는 본 발명의 실시예에 따른 통신 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 FIB의 구조를 나타낸다.
도 4는 본 발명의 실시예에 따른 헬로우 메시지의 기본 구조를 나타낸다.
도 5는 본 발명의 실시예에 따른 평균 TTL 값을 나타낸 테이블이다.
도 6은 본 발명의 실시예에 따른 통신 방법에 대한 페로몬 증발률을 나타낸 표이다.
도 7은 본 발명의 실시예에 따른 파라미터 설정 테이블을 나타낸다.
도 8은 본 발명의 실시예에 따른 개략적인 패킷 전송 방법을 나타낸다.
도 9는 본 발명의 실시예에 따른 허브 감지 방법을 나타낸 순서도이다.
도 10은 본 발명의 실시예에 따른 헬로우 메시지 전송 방법을 나타낸 순서도이다.
도 11은 본 발명의 실시예에 따른 소스 노드의 패킷 전송 방법을 나타낸 순서도이다.
도 12는 본 발명의 실시예에 따른 포워딩 노드의 패킷 라우팅 방법을 나타낸 순서도이다.
도 13은 본 발명의 실시예에 따른 이동 소셜 네트워크의 구조를 나타낸 도면이다.
도 14는 본 발명의 실시예에 따른 라우팅 방법(HDR)과 종래의 개미 군집 알고리즘 기반 라우팅(ARA)에서의 페로몬 값에 따른 증발률을 비교한 그래프이다.
도 15는 본 발명의 실시예에 따른 라우팅 방법(HDR)과 종래의 개미 군집 알고리즘 기반 라우팅(ARA)에서의 시간에 따른 페로몬 값의 변화를 비교한 그래프이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 시퀀스를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
또한, 명세서에 기재된 "…부" 의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 실시예가 적용되는 네트워크 구성도이다.
도 1을 참조하면, 본 발명의 실시예가 적용되는 네트워크는 특정 관심사에 따라 형성된 소셜 커뮤니티에 기반한 이동 소셜 네트워크라 정의할 수 있다.
이때, 이동 소셜 네트워크는 데이터 전송이 사용자 개인 단말기에 저장된 정보들을 중심으로 이루어지기 때문에 사용자들의 역할이 큰 비중을 차지하는 네트워크로서, 스마트폰, 태블릿 PC등 이동이 가능한 휴대 통신 단말기를 소지한 사용자들이 개인 또는 집단의 공통 이해 관계에 따라 소셜 애플리케이션을 통해 커뮤니티를 형성하여 서로 데이터를 교환하는 네트워크를 의미한다.
이러한 소셜 네트워크는 하나 이상의 노드와, 두 노드 사이에 존재하는 하나의 링크(Link)들의 집합으로 구성되는 애드 혹(ad-hoc)의 멀티홉 네트워크로 구현된다.
여기서, 노드는 멀티홉 네트워크를 구성하는 하나 하나의 구성 요소로서, 기지국(Base Station), 액세스 포인트(Access Point), 데스크톱 PC(Desktop PC), 스마트폰(Smartphone), 태블릿 PC(Tablet PC)를 포함한다. 여기서, 스마트폰(Smartphone), 태블릿 PC(Tablet PC)와 같이 이동성이 있는 노드는 특히 이동 노드라 한다.
이러한 멀티홉 네트워크는 복수의 서로 다른(이종, 異種) 네트워크가 혼합된 네트워크로서, 유선망 또는 무선망에 연결된 데스크톱 PC, 무선(wifi) 망 서비스를 제공하는 다수의 액세스 포인트, 셀룰러(cellular) 망 서비스를 제공하는 다수의 기지국이 통신 경로 상에 존재하는 하나의 노드로서 존재한다. 즉 서로 다른 통신 방식을 제공하는 노드들이 서로 링크를 형성하여 패킷을 송수신할 수 있도록 되어 있다.
또한, 이웃 노드에 대한 정보는 헬로우(Hello) 메시지를 주고받음으로써 알 수 있다. 즉 자신의 존재를 알리고 싶은 노드는 주기적으로 헬로우(Hello) 메시지를 1홉(hop) 이웃 노드에게 전송한다.
예컨대 소스 노드(source node)(100)가 목적지 노드(destination node)(100')에게 패킷을 전송할 때 패킷 전송 경로 상에는 데스크톱 PC, 액세스 포인트, 태블릿 PC가 존재하고 이러한 멀티홉을 거쳐 최종 목적지 노드로 패킷이 전송된다. 여기서, 소스 노드와 목적지 노드는 모두 스마트폰이다.
이때, 모든 노드는 통신 장치(100)라 통칭하며, 통신 장치(100)는 도 2와 같이 구성된다.
도 2는 본 발명의 실시예에 따른 통신 장치의 구성을 나타낸 블록도이다.
이때, 통신 장치(100)는 이동 노드, 기지국, 액세스 포인트인지에 따라 각각의 고유 기능을 수행하는 구성 요소를 포함하며, 도 2에서는 본 발명의 실시예에 따른 공통된 기능만을 도시한다.
도 2를 참조하면, 통신 장치(100)는 패킷 송신부(101), 패킷 수신부(103), FIB(Forwarding Information Base) 관리부(105), 통신 방법 선택부(107), 헬로우 메시지 수신부(109), 허브 감지부(111), 페로몬 계산부(113), 헬로우 메시지 전송부(115) 및 포워딩 노드 선정부(117)를 포함한다.
패킷 송신부(101)는 포워딩 노드 선정부(117)가 포워딩 노드로 선택한 1홉 이웃 노드로 패킷을 전송한다. 이때, TTL(Time-To-Live) 값을 설정한 패킷을 전송한다.
여기서, TTL 값은 패킷이 다른 노드로 홉핑(hoppoing)할 때마다 1씩 감소하며, TTL 값이 0이 될 때까지 패킷은 다른 노드로 홉핑된다. 예를 들어, 소스 노드로부터 패킷을 수신한 노드는 TTL 값을 1 감소시키고, 다시 이웃 노드로 패킷을 홉핑한다.
패킷 수신부(103)는 소스 노드 혹은 임의의 1홉 이웃 노드로부터 패킷을 수신한다.
포워딩 정보 베이스(Forwarding Information Base, 이하 'FIB'라 통칭함) 관리부(105)는 패킷 송신부(101) 및 패킷 수신부(103)를 통하여 패킷이 송수신될 때마다 라우팅 테이블 정보를 포함하는 FIB를 갱신한다. 즉 FIB 관리부(105)는 자신을 거쳐간 패킷들의 소스 주소와 목적지 주소를 저장한다.
통신 방법 선택부(107)는 셀룰러 망 기지국을 이용한 통신, 무선망 액세스 포인트를 이용한 통신, 이웃 노드들을 통한 직접 통신 중 채널 상태 및 과금 정책에 따라 적합한 통신 방법을 선택한다.
이러한 통신 방법 선택부(107)는 사용자가 데이터 접속을 원할 때, 복수의 망 중에서 접속망을 선택하도록 요청하여 선택된 망을 입력받는 사용자 인터페이스를 포함한다.
또한, 통신 방법 선택부(107)는 통신 장치(100)가 기지국, 액세스 포인트와 같이 통신 방법이 고정되어 있는 경우에는 디폴트 설정된 통신 방법을 선택한다.
헬로우 메시지 수신부(109)는 1홉 이웃 노드들로부터 헬로우(Hello) 메시지를 주기적으로 수신한다. 이러한 헬로우 메시지는 해당 이웃 노드의 위치 정보, 이동 속도, 경로 활용 빈도, 페로몬 값, 통신 방법을 포함한다.
허브 감지부(111)는 헬로우 메시지 수신부(109)를 통해 수신한 1홉 이웃 노드들의 헬로우 메시지를 통해 확인한 위치 정보, 신호 수신 세기, 페로몬 값을 토대로 임의의 1홉 이웃 노드가 문제 노드인지를 판단하여 문제 노드로 판단된 1홉 이웃 노드는 제외시킨다. 그리고 자신의 경로 활용 빈도 및 페로몬 값을 문제 노드가 아닌 1홉 이웃 노드들의 경로 활용 빈도 및 페로몬과 비교하여 자신이 허브인지를 판단한다.
좀 더 자세히 설명하면, 허브 감지부(111)는 헬로우 메시지 수신부(109)가 헬로우 메시지를 수신한 1홉 이웃 노드들 중에서 헬로우 메시지의 수신 신호 세기가 일정 세기를 만족하고, 링크 연결 지속 시간(
Figure 112011048368229-pat00001
)이 기 정의된 임계치를 만족하는지 판단한다.
이때, 허브 감지부(111)는 각 이동 노드(
Figure 112011048368229-pat00002
)의 이동성에 의한 영향을 최소화하기 위해 1홉 이웃 노드(
Figure 112011048368229-pat00003
)의 위치 정보(
Figure 112011048368229-pat00004
), 상대 이동 속도(
Figure 112011048368229-pat00005
), 이동 노드(
Figure 112011048368229-pat00006
)의 전송 범위(
Figure 112011048368229-pat00007
)를 이용하여 수학식 1과 같이 링크 연결 지속 시간()을 예측한다.
Figure 112011048368229-pat00008
여기서,
Figure 112011048368229-pat00009
는 각각 이동 노드(
Figure 112011048368229-pat00010
)에 대한 1홉 이웃 노드(
Figure 112011048368229-pat00011
)의 x축 방향과 y축 방향의 상대 이동 속도를 뜻한다.
Figure 112011048368229-pat00012
,
Figure 112011048368229-pat00013
는 각각 이동 노드(
Figure 112011048368229-pat00014
)에 대한 1홉 이웃 노드(
Figure 112011048368229-pat00015
)의 x축, y축 상대 좌표를 의미한다.
또한, 허브 감지부(111)는 수신 신호 세기가 일정 세기를 만족하며, 링크 연결 지속 시간(
Figure 112011048368229-pat00016
)이 기 정의된 임계치를 만족하는 1홉 이웃 노드들의 헬로우 메시지를 통해 확인한 위치 정보, 페로몬 값 및 FIB에 저장된 소스 주소와 목적지 주소를 토대로 자신의 경로 활용 빈도를 계산한다. 그리고 계산된 자신의 경로 활용 빈도를 1홉 이웃 노드들의 헬로우 메시지에 수록된 경로 활용 빈도와 비교하여 자신의 경로 활용 빈도가 더 많고, 송수신 패킷의 TTL이 평균 TTL 조건을 충족하면, 허브로 인지한다.
페로몬 계산부(113)는 통신 장치(100)가 이동 노드인 경우, 1홉 이웃 노드의 이동 속도에 기반하여 자신의 상대 이동 속도를 계산하고, 허브 감지부(111)의 허브 감지 여부에 따라 페로몬 값을 계산한다. 이때, 패킷 송수신시마다 페로몬 계산부(113)는 페로몬 값을 업데이트한다.
여기서, 페로몬 값은 다음 수학식 2를 통해 계산된다.
Figure 112011048368229-pat00017
여기서,
Figure 112011048368229-pat00018
Figure 112011048368229-pat00019
시점에서 각 노드
Figure 112011048368229-pat00020
의 목적지
Figure 112011048368229-pat00021
에 대응하는 페로몬 값에 기반하여 계산되는
Figure 112011048368229-pat00022
시점에서 각 노드
Figure 112011048368229-pat00023
의 목적지
Figure 112011048368229-pat00024
에 대응하는 페로몬 값이다. 이러한 페로몬 값을 계산하는 방식은 종래의 개미 군집 알고리즘에 따른다.
Figure 112011048368229-pat00025
은 셀룰러(cellular) 망, 무선(wifi) 망, 이동 단말기에 대한 페로몬 증발률을 나타낸다.
Figure 112011048368229-pat00026
은 각 노드의 페로몬 값에 따른 증발률을 의미한다. 이때,
Figure 112011048368229-pat00027
는 허브 여부 및 경로 활용 빈도에 따라 다양한 값을 가진다.
이처럼, 수학식 2에 의해 각 노드에 페로몬 값이 지속적으로 업데이트되면서 안정된 라우팅 경로가 확보될 수 있다.
헬로우 메시지 전송부(115)는 페로몬 계산부(113)가 계산한 페로몬 값, 통신 방법 선택부(107)가 선택한 통신 방법을 헬로우 메시지에 수록하여 1홉 이웃 노드들에게 주기적으로 브로드캐스팅한다.
포워딩 노드 선정부(117)는 헬로우 메시지 수신부(109)가 헬로우 메시지를 수신한 1홉 이웃 노드들 중에서 허브 감지부(111)에 의해 예측된 링크 연결 지속 시간이 사전에 정의된 기준값을 만족하는 1홉 이웃 노드들을 포워딩 노드(forwarding node)의 대상으로 선정한다. 그리고 포워딩 노드의 대상으로 선정된 1홉 이웃 노드들의 페로몬 값을 비교하여 페로몬 값이 가장 큰 1홉 이웃 노드를 포워딩 노드로 선정하여 패킷 송신부(101)에게 알린다.
도 3은 본 발명의 실시예에 따른 FIB의 구조를 나타낸다.
도 3을 참조하면, FIB(200)는 소스 주소 필드(201), 목적지 주소 필드(203), 이웃 노드 주소 필드(205), 이웃 노드 위치 정보 필드(207), 이웃 노드 속도 정보 필드(209) 및 이웃 노드 페로몬 필드(211)를 포함한다.
여기서, 소스 주소 필드(201)는 해당 노드를 거쳐간 패킷의 소스 주소(source address)가 수록된다.
목적지 주소 필드(203)는 해당 노드를 거쳐간 패킷의 목적지 주소(destination address)가 수록된다.
이웃 노드 주소 필드(205)는 목적지 주소 필드(203)에 수록된 목적지 주소에 대해 패킷 전달 경로에 포함될 수 있는 이웃 노드 주소(neighbor address)를 포함한다.
이웃 노드 위치 정보 필드(207)는 이웃 노드 주소 필드(205)에 수록된 이웃 노드에 대한 위치 정보(neighbor location information)를 포함한다.
이웃 노드 속도 정보 필드(209)는 이웃 노드 주소 필드(205)에 수록된 이웃 노드에 대한 속도 정보(neighbor velocity information)를 포함한다.
이웃 노드 페로몬 필드(211)는 이웃 노드 주소 필드(205)에 수록된 각 이웃 노드의 페로몬(neighbor pheromone) 값을 포함한다.
도 4는 본 발명의 실시예에 따른 헬로우 메시지의 기본 구조를 나타낸다.
도 4를 참조하면, 도 2의 헬로우 메시지 수신부(109) 및 헬로우 메시지 전송부(115)가 송수신하는 헬로우 메시지(300)는 위치 정보 필드(301), 이동 속도 필드(303), 경로 활용 빈도(305), 페로몬 필드(307) 및 통신 방법 필드(309)를 포함한다.
위치 정보 필드(301)는 해당 노드의 위치 정보가 수록된다.
이동 속도 필드(303)는 해당 노드의 이동 속도가 수록된다.
경로 활용 빈도(305)는 해당 노드의 경로 활용 빈도가 수록된다.
페로몬 필드(307)는 해당 노드의 페로몬 값이 수록된다.
통신 방법 필드(309)는 해당 노드의 통신 방법이 수록된다. 이때, 통신 방법은 해당 노드가 기지국 또는 액세스 포인트라면, 각각의 디폴트 통신 방법 즉 기지국이라면 셀룰러 망, 액세스 포인트라면 무선랜망, 데스크톱 PC라면 유선망으로 설정된다. 또한, 해당 노드가 이동 노드라면, 접속 가능한 통신 방식 중에서 사용자가 선택한 통신 방법이 설정된다.
도 5는 본 발명의 실시예에 따른 평균 TTL 값을 나타낸 테이블이다.
도 5를 참조하면, 규모에 따른 척도 없는 네트워크(scale-free network)에서 허브에 유입되는 패킷의 평균 TTL(Time To Live, 생존시간) 값의 예를 확인할 수 있다.
이 때, 네트워크의 이동성, 연결 구성, 노드 수에 따라 평균 TTL값은 변화될 수 있다. 즉 전체 노드수가 1000이라면 평균 TTL은 2.1, 전체 노드수가 2000이라면 평균 TTL은 2.8, 전체 노드수가 3000이라면 평균 TTL은 3.2, 전체 노드수가 4000이라면 평균 TTL은 3.7, 전체 노드수가 5000이라면 평균 TTL은 4.0이 된다.
따라서, 도 2의 허브 감지부(111)는 이러한 평균 TTL의 테이블에서 현재 자신이 속한 네트워크에 부합하는 평균 TTL에 기초하여 허브 여부를 판단한다.
도 6은 본 발명의 실시예에 따른 통신 방법에 대한 페로몬 증발률을 나타낸 표이다.
도 6을 참조하면, 통신 장치(100)가 통신 방법 무관 모드로 동작하는 경우, 페로몬 증발률(
Figure 112011048368229-pat00028
)은 0이다.
또한, 통신 장치(100)의 통신 방법이 셀룰러(cellular) 망인 경우, 페로몬 증발률(
Figure 112011048368229-pat00029
)은 0.2이다.
또한, 통신 장치(100)의 통신 방법이 무선(wifi)망인 경우, 페로몬 증발률(
Figure 112011048368229-pat00030
)은 0.3이다.
또한, 통신 장치(100)의 통신 방법이 장치 간 직접 통신인 경우, 페로몬 증발률(
Figure 112011048368229-pat00031
)은 0.4이다.
따라서, 도 2의 페로몬 계산부(113)는 이러한 페로몬 증발률(
Figure 112011048368229-pat00032
) 중에서 통신 방법 선택부(107)가 선택한 통신 방법에 해당하는 페로몬 증발률(
Figure 112011048368229-pat00033
)을 수학식 2에 적용하여 페로몬 값을 계산한다.
도 7은 본 발명의 실시예에 따른 허브 여부 및 경로 활용 빈도에 따른 파라미터 설정 테이블을 나타낸다.
도 7을 참조하면, 파라미터 설정 테이블은 허브 여부가 거짓인지 참인지 관계없이, 경로 활용 빈도(
Figure 112011048368229-pat00034
)가 무관 모드로 설정된 경우, 파라미터
Figure 112011048368229-pat00035
는 1로 매핑되어 있다.
또한, 허브 여부가 참인 경우, 0<경로 활용 빈도(
Figure 112011048368229-pat00036
)≤10이면, 파라미터
Figure 112011048368229-pat00037
는 2로 매핑되어 있다.
또한, 허브 여부가 참인 경우, 10<경로 활용 빈도(
Figure 112011048368229-pat00038
)≤20이면, 파라미터
Figure 112011048368229-pat00039
는 3로 매핑되어 있다.
또한, 허브 여부가 참인 경우, 20<경로 활용 빈도(
Figure 112011048368229-pat00040
)이면, 파라미터
Figure 112011048368229-pat00041
는 4로 매핑되어 있다.
따라서, 도 2의 페로몬 계산부(113)는 도 2의 허브 감지부(111)의 허브 여부 판단 결과와, 허브 감지부(111)가 계산한 경로 활용 빈도(
Figure 112011048368229-pat00042
)에 해당하는 파라미터
Figure 112011048368229-pat00043
를 파라미터 설정 테이블에서 선택하여 수학식 2에 적용하여 페로몬 값을 계산한다.
이제, 본 발명의 실시예에 따른 통신 장치(100)의 허브 감지 방법 및 패킷 전송 방법에 대해 설명하기로 한다.
이때, 도 2 내지 도 7의 구성 요소와 연계하여 동일한 도면 부호를 사용하여 설명한다.
먼저, 도 8은 본 발명의 실시예에 따른 개략적인 패킷 전송 방법을 나타낸다.
여기서, 패킷 전송은 소스 노드가 최초로 패킷을 전송하는 동작과, 소스 노드와 목적지 노드 사이에 위치하는 포워딩 노드가 패킷을 라우팅하는 동작을 모두 포함한다.
도 8을 참조하면, 임의의 노드(소스 노드 또는 포워딩 노드를 포함함)로서 동작하는 통신 장치(100)의 통신 방법 선택부(107)가 통신 방법을 선택한다(S101).
이때, S101 단계는 통신 장치(100)가 이동 노드일 경우 수행되는 단계로서, 통신 장치(100)가 기지국, 액세스 포인트, 데스크톱 PC인 경우에는 통신 방법이 선택될 수 없도록 고정되므로, 생략될 수 있다.
다음, 통신 장치(100)의 허브 감지부(111)는 자신이 경로 활용 빈도가 높은 허브인지를 판단한다(S103). 상세한 과정은 도 4에서 후술하기로 한다.
다음, 통신 장치(100)의 페로몬 계산부(113)는 S101 단계에서 선택된 통신 방법 혹은 디폴트로 설정된 통신 방법, S103 단계에서 감지된 허브 여부에 따라 수학식 2를 이용하여 페로몬 값을 계산한다(S105). 즉 S103 단계에서 허브로 감지되면, 도 7의 파라미터 설정 테이블에서 선택된
Figure 112011048368229-pat00044
값을 적용하여 페로몬 값이 계산된다.
다음, 통신 장치(100)의 헬로우 메시지 전송부(115)는 S105 단계에서 계산된 페로몬 값을 포함한 헬로우 메시지를 1홉 이웃 노드들에게 브로드캐스팅하고, 헬로우 메시지 수신부(109)는 1홉 이웃 노드들로부터 각각의 헬로우 메시지를 수신한다(S107).
여기서, 헬로우 메시지를 브로드캐스팅하는 동작과 수신하는 동작은 동시에 이루어질 수 있지만, 각각 수행될 수 있다.
다음, 통신 장치(100)의 포워딩 노드 선정부(117)는 S107 단계에서 수신된 헬로우 메시지를 토대로 1홉 이웃 노드들의 페로몬 값을 비교(S109)하여 페로몬 값이 가장 큰 이웃 노드에게 패킷을 전송한다(S111).
이때, 1홉 이웃 노드들 중에서 허브로 동작하는 노드의 경우, 페로몬 값에 허브 여부가 반영되어 페로몬 값이 다른 이웃 노드들에 비해 낮은 값을 가지므로, 패킷 전송을 위한 노드로 선택되지 않아 결국 허브의 경로 활용 빈도를 감소시킬 수 있게 된다.
도 9는 본 발명의 실시예에 따른 허브 감지 방법을 나타낸 순서도이다.
도 9를 참조하면, 통신 장치(100)의 패킷 송신부(101) 및 패킷 수신부(103)를 통해 패킷 송수신(S201)이 이루어지면, FIB 관리부(105)는 패킷 송수신에 따라 FIB를 갱신한다(S203). 즉 송수신된 패킷의 소스 주소, 목적지 주소, 각 목적지 주소에 대해 패킷 전달 경로에 포함될 수 있는 이웃 노드 주소, 이웃 노드에 대한 위치 정보, 속도 정보, 각 이웃 노드의 페로몬을 FIB에 업데이트한다.
다음, 통신 장치(100)의 허브 감지부(111)는 헬로우 메시지 수신부(109)가 1홉 이웃 노드들로부터 수신(S205)한 헬로우 메시지의 신호 수신 세기가 일정 크기 이상인지를 판단한다(S207). 이 단계는 상태가 불안정한 이웃 노드들을 의사 결정 과정에서 제외시키기 위한 과정이다.
다음, 허브 감지부(111)는 S207 단계에서 신호 수신 세기가 일정 크기 이상으로 판단되는 1홉 이웃 노드들 각각의 링크 연결 지속 시간(
Figure 112011048368229-pat00045
)을 예측(S209)하여 기 정의된 임계치를 충족하는지를 판단한다(S211).
이때, 기 정의된 임계치를 충족하는 1홉 이웃 노드들을 포워딩 노드(forwarding node) 대상으로 선정한다(S213).
여기서, 이동성이 크지 않은 환경에서는 링크 연결 지속 시간 예측 과정이 생략될 수 있다.
그러면, 허브 감지부(111)는 송수신 패킷의 TTL(Time To Live)이 평균 TTL 조건을 만족하는지 판단한다(S215). 이때, 송수신 패킷의 TTL은 송수신 패킷에 수록되어 있다.
또한, 네트워크의 이동성, 연결 구성, 노드 수에 따라 평균 TTL은 변화될 수 있으며, 미리 저장되어 있거나 일정 주기로 산출될 수 있다.
예컨대 평균 TTL 조건은 도 5의 값 중에서 자신이 속한 네트워크에 매핑된 평균 TTL 조건이 이용될 수 있다.
이때, 허브 감지부(111)는 S215 단계에서 평균 TTL 조건을 만족하는 경우, S203 단계에서 갱신된 FIB에 수록된 정보를 토대로 노드 자신의 경로 활용 빈도를 계산한다(S217).
그리고 계산된 경로 활용 빈도를 S213 단계에서 포워딩 노드 대상으로 선정된 1홉 이웃 노드들로부터 수신(S205)된 헬로우 메시지에 수록된 경로 활용 빈도와 비교(S219)하여 많은지 판단한다(S221).
이때, S217 단계에서 계산된 경로 활용 빈도가 S205 단계에서 수신된 경로 활용 빈도보다 많을 경우, 자신을 허브로 판단한다(S223).
여기서, 이동 소셜 네트워크가 척도 없는 네트워크(scale-free network)의 기준을 만족하지 못할 경우, S215 단계를 생략하고 바로 다음 단계 S217로 넘어갈 수 있다.
이처럼, 이동 소셜 네트워크에서 전체 토폴로지 정보에 기반한 사이 중앙성(betweenness centrality) 정보 없이 지역 정보 활용만으로 허브 여부를 감지할 수 있다.
다음, 도 10은 본 발명의 실시예에 따른 헬로우 메시지 전송 방법을 나타낸 순서도이다.
도 10을 참조하면, 통신 장치(100)의 패킷 송신부(101) 및 패킷 수신부(103)를 통해 패킷 송수신(S301)이 이루어지면, 페로몬 계산부(113)는 통신 방법, 허브 여부 및 경로 활용 빈도에 따라 페로몬 값을 업데이트한다(S303). 이때, 도 6에서 해당 통신 방법에 따른 페로몬 증발률을 적용한 페로몬 값을 계산한다.
이후, 주기가 도래(S305)하면, 통신 장치(100)의 헬로우 메시지 전송부(115)는 통신 방법 및 S303 단계에서 업데이트된 페로몬 값을 헬로우 메시지에 수록(S307)하여 1홉 이웃 노드들에게 브로드캐스팅한다(S309).
또한, 본 발명의 실시예에 따른 패킷 전송 방법을 소스 노드가 패킷을 전송하는 과정과, 포워딩 노드가 패킷을 라우팅하는 과정으로 구분한 실시예에 대해 설명한다.
도 11은 본 발명의 실시예에 따른 소스 노드의 패킷 전송 방법을 나타낸 순서도로서, 통신 장치(100)가 소스 노드로서 동작하는 경우의 패킷 전송 과정을 나타낸 순서도이다.
도 11을 참조하면, 통신 장치(100)의 통신 방법 선택부(107)를 통해 통신 방법이 선택(S401)된 상태에서 포워딩 노드 선정부(117)는 1홉 이웃 노드들로부터 수신된 페로몬 값이 존재하는지를 판단한다(S403).
여기서, 포워딩 노드 선정부(117)는 헬로우 메시지 수신부(109)가 수신한 헬로우 메시지의 수신 신호 세기가 일정 세기 이상이고, 링크 연결 지속 시간이 기준값(임계치)을 충족하는 1홉 이웃 노드들을 포워딩 노드 대상으로 선정하고, 선정된 포워딩 노드 대상들의 페로몬 값의 존재 여부를 판단한다.
이때, 네트워크 초기 단계와 같이 노드에 대한 페로몬 정보가 없을 경우, 포워딩 노드 선정부(117)는 랜덤한 확률로 포워딩 노드를 선택한다(S405).
반면, 기존에 수신된 페로몬 값이 존재하는 경우, 포워딩 노드 선정부(117)는 페로몬 값들을 비교(S407)하여 페로몬 값이 가장 큰 1홉 이웃 노드를 포워딩 노드로 선택한다(S409).
그리고 포워딩 노드 선정부(117)는 1홉 이웃 노드로부터 수신한 헬로우 메시지에 수록된 통신 방법과, 자신의 통신 방법(선택 또는 디폴트 고정)이 부합하는지를 판단한다(S411).
이때, 서로의 통신 방법이 부합하지 않으면, 포워딩 노드 선정부(117)는 페로몬 값이 다음으로 큰 1홉 이웃 노드를 포워딩 노드로 선택(S413)한 후, S411 단계를 수행한다.
한편, S311 단계에서 서로의 통신 방법이 부합하면, 포워딩 노드 선정부(117)는 자신의 통신 방법을 패킷에 수록한다(S415).
그러면, 패킷 송신부(101)는 S405 단계 또는 S409 단계에서 선택된 포워딩 노드로 S415 단계에서 생성된 패킷을 전송한다(S417).
도 12는 본 발명의 실시예에 따른 포워딩 노드의 패킷 라우팅 방법을 나타낸 순서도로서, 통신 장치(100)가 포워딩 노드로서 동작하는 경우의 패킷 라우팅 과정을 나타낸 순서도이다.
도 12를 참조하면, 통신 장치(100)의 패킷 수신부(103)가 패킷을 수신(S501)하면, 포워딩 노드 선정부(117)는 1홉 이웃 노드들로부터 수신된 페로몬 값이 존재하는지를 판단한다(S503). 이때, 수신 패킷에는 소스 노드가 수록한 통신 방법이 포함되어 있다.
또한, 포워딩 노드 선정부(117)는 헬로우 메시지 수신부(109)가 수신한 헬로우 메시지의 수신 신호 세기가 일정 세기 이상이고, 링크 연결 지속 시간이 기준값(임계치)을 충족하는 1홉 이웃 노드들을 포워딩 노드 대상으로 선정하고, 선정된 포워딩 노드 대상들의 페로몬 값의 존재 여부를 판단한다.
이때, 네트워크 초기 단계와 같이 노드에 대한 페로몬 정보가 없을 경우, 포워딩 노드 선정부(117)는 랜덤한 확률로 포워딩 노드를 선택한다(S505).
반면, 기존에 수신된 페로몬 값이 존재하는 경우, 포워딩 노드 선정부(117)는 페로몬 값들을 비교(S507)하여 페로몬 값이 가장 큰 1홉 이웃 노드를 포워딩 노드로 선택한다(S509).
그리고 포워딩 노드 선정부(117)는 수신 패킷에 포함된 통신 방법과, 포워딩 노드로 선택된 1홉 이웃 노드로부터 수신한 헬로우 메시지에 수록된 통신 방법이 부합하는지를 판단한다(S511).
이때, 서로의 통신 방법이 부합하지 않으면, 포워딩 노드 선정부(117)는 페로몬 값이 다음으로 큰 1홉 이웃 노드를 포워딩 노드로 선택(S513)한 후, S511 단계를 수행한다.
한편, S511 단계에서 서로의 통신 방법이 부합하면, 패킷 송신부(101)는 S505 단계 또는 S509 단계에서 선택된 포워딩 노드로 수신 패킷을 라우팅한다(S515).
한편, 도 13은 본 발명의 실시예에 따른 허브 여부 및 페로몬 값을 기반으로 패킷 전송 경로를 선택하는 이동 소셜 네트워크의 구조를 나타낸 도면이다.
도 13을 참조하면, 이동 소셜 네트워크는 스마트폰 또는 태블릿 PC로 구성된 이동 노드(401, 407, 409, 415)를 포함하는 다수의 이동 노드, 유선망 또는 무선망에 연결된 데스크톱 PC(403, 413)를 포함하는 다수의 데스크톱 PC, 무선(wifi) 망 서비스를 제공하는 액세스 포인트(access point)(405, 411)를 포함하는 다수의 액세스 포인트, 셀룰러(cellular) 망 서비스를 제공하는 기지국(417)을 포함하는 다수의 기지국을 포함한다.
이때, 이동 노드(401, 407, 409, 415), 데스크톱 PC(403, 413)은 액세스 포인트(405, 411), 기지국(417)과의 직접 통신들을 통해 데이터 패킷을 전송, 교환한다. 그리고 패킷 전달을 위한 라우팅 경로를 형성하기 위해 페로몬 값을 가진다.
각 노드들은 자신의 1홉 이웃 노드들 중 높은 페로몬값을 가지는 노드를 전달 노드(forwarding node)로 선택하여 패킷을 전달한다.
이때, 종래의 개미 군집 알고리즘 기반 라우팅(ant colony routing algorithm, ARA)의 경우, 소스 노드(401)와 목적지 노드(415) 간의 데이터 전달을 위해 페로몬 값 P에 기반하여 라우팅 결정을 한다. 따라서, 결정된 경로는 (401 -> 403 -> 405 -> 411 -> 415)로서 허브인 액세스 포인트(405)를 포함한다.
그러므로, 허브를 라우팅 경로에 빈번하게 활용하기 때문에 트래픽 혼잡 문제, 노드 고장, 감염 등에 의한 망 전체 성능 저하 문제 등을 야기한다.
반면, 본 발명의 실시예에 따라 제안하는 알고리즘(hub detour routing, HDR)을 사용할 경우, 데이터 전달을 위한 경로 설정을 위해 페로몬 값으로 P'가 할당되며 이에 기반한 라우팅 경로는 (401 -> 403 -> 407 -> 409 -> 413 -> 415)이다. 따라서, 허브(hub)인 액세스포인트(405)를 우회하는 경로를 선택하기 때문에 허브의 영향력을 과도하지 않게 조절할 수 있다.
한편, 도 14는 본 발명의 실시예에 따른 라우팅 방법(HDR)과 종래의 개미 군집 알고리즘 기반 라우팅(ARA)에서의 페로몬 값에 따른 증발률을 비교한 그래프이다.
도 14에 따르면, HDR의 경우 페로몬 값에 의해 증발률이 좌우된다. 즉, 페로몬 값이 작은 초기 단계에서는 증발률이 증가하다가 어느 시점에서 일정한 값으로 수렴된다.
반면, ARA의 경우, 페로몬 값과 무관하게 일정한 증발률을 가진다.
도 15는 본 발명의 실시예에 따른 라우팅 방법(HDR)과 종래의 개미 군집 알고리즘 기반 라우팅(ARA)에서의 시간에 따른 페로몬 값의 변화를 비교한 그래프이다.
도 15를 참조하면, HDR의 경우, 일정 시점 이후 페로몬 값이 일정하게 유지되는 특징을 가진다. 이로 인해 빈번하게 활용될 수 있는 허브의 페로몬 값을 적절하게 조절할 수 있어, 보다 효율적이며 안전한 경로를 제공할 수 있다.
반면, ARA의 경우, 일정 시점 이후에도 페로몬 값이 지속적으로 증가하는 것을 알 수 있다. 이러한 특징은 허브의 페로몬 값이 항상 다른 노드의 페로몬 값보다 큰 값을 유지하기 때문에 허브의 과도한 활용 문제를 초래한다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
또한, 본 발명의 실시예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있다.

Claims (21)

  1. 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 노드로서 동작하는 통신 장치에 있어서,
    상기 통신 장치가 허브인지를 판단하는 허브 감지부;
    상기 허브인지 여부에 따른 페로몬 값을 계산하는 페로몬 계산부;
    상기 페로몬 값을 이웃 노드들에게 브로드캐스팅하는 송신부;
    상기 이웃 노드들로부터 각각의 상기 페로몬 값을 수신하는 수신부; 및
    상기 이웃 노드들의 페로몬 값을 비교하여 페로몬 값이 가장 큰 이웃 노드를 패킷을 전송할 포워딩 노드로 선정하는 포워딩 노드 선정부
    를 포함하는 통신 장치.
  2. 제1항에 있어서,
    패킷이 송수신될 때마다 라우팅 테이블 정보를 포함하는 포워딩 정보 베이스를 갱신하는 관리부를 더 포함하고,
    상기 포워딩 정보 베이스는,
    상기 통신 장치를 경유한 패킷의 소스 주소 및 목적지 주소, 상기 목적지 주소에 대한 패킷 전달 경로에 포함되는 하나 이상의 이웃 노드 주소, 상기 하나 이상의 이웃 노드의 위치 정보, 상기 하나 이상의 이웃 노드의 속도 정보 및 상기 하나 이상의 이웃 노드의 페로몬 값을 포함하는 통신 장치.
  3. 제2항에 있어서,
    상기 통신 장치의 통신 방법을 선택하기 위한 통신 방법 선택부를 더 포함하고,
    상기 송신부는 상기 통신 장치의 위치 정보, 이동 속도, 상기 경로 활용 빈도, 상기 페로몬 값 및 통신 방법을 포함하는 헬로우 메시지를 브로드캐스팅하고,
    상기 수신부는 1홉 이웃 노드의 위치 정보, 이동 속도, 경로 활용 빈도, 페로몬 값 및 통신 방법을 포함하는 헬로우 메시지를 수신하는 통신 장치.
  4. 제3항에 있어서,
    상기 허브 감지부는,
    상기 포워딩 정보 베이스에 저장된 정보를 이용하여 자신의 경로 활용 빈도를 계산하고, 신호 수신 세기가 기 정의된 크기 이상인 헬로우 메시지를 전송하고, 링크 연결 지속 시간이 기 정의된 임계치를 충족하는 1홉 이웃 노드들의 경로 활용 빈도를 자신의 경로 활용 빈도와 비교하여 자신의 경로 활용 빈도가 상기 1홉 이웃 노드들보다 많으면, 허브로 판단하는 통신 장치.
  5. 제4항에 있어서,
    상기 허브 감지부는,
    네트워크의 특성 별로 평균 생존 시간이 수록된 테이블을 포함하고, 상기 테이블로부터 상기 통신 장치가 속한 네트워크의 평균 생존 시간을 선택하여 송수신된 패킷의 생존 시간이 선택된 평균 생존 시간을 충족하는지 판단하여 상기 평균 생존 시간을 만족하면, 허브로 판단하는 통신 장치.
  6. 제4항에 있어서,
    상기 페로몬 계산부는,
    통신 방법 별로 각각의 페로몬 증발률을 매핑한 테이블, 허브 여부 및 경로 활용 빈도에 따른 각각의 파라미터가 설정된 테이블 및 이전 시점에 계산된 페로몬 값을 저장하고, 상기 허브 감지부의 허브 여부 판단 결과 및 상기 경로 활용 빈도에 따라 선택된 파라미터, 상기 통신 방법에 따라 선택된 페로몬 증발률 및 상기 이전 시점에 계산된 페로몬 값을 이용하여 현재 시점의 페로몬 값을 계산하는 통신 장치.
  7. 제6항에 있어서,
    상기 포워딩 노드 선정부는,
    상기 헬로우 메시지의 수신 신호 세기가 기 정의된 일정 세기 이상이고, 링크 연결 지속 시간이 임계치를 충족하는 1홉 이웃 노드들을 포워딩 노드 대상으로 선정하고, 선정된 포워딩 노드 대상들의 페로몬 값을 비교하는 통신 장치.
  8. 제7항에 있어서,
    상기 포워딩 노드 선정부는,
    상기 통신 장치가 소스 노드인 경우, 페로몬 값이 가장 큰 1홉 이웃 노드의 통신 방법이 상기 통신 방법 선택부를 통해 선택된 통신 방법에 부합하는지 판단하거나 또는 상기 통신 장치가 포워딩 노드인 경우, 페로몬 값이 가장 큰 1홉 이웃 노드의 통신 방법이 수신 패킷에 수록된 통신 방법에 부합하는지 판단하고, 부합하면 패킷 전송을 수행하고, 부합하지 않으면 다음으로 페로몬 값이 큰 1홉 이웃 노드를 선택하는 통신 장치.
  9. 제8항에 있어서,
    상기 통신 방법 선택부를 통해 선택된 통신 방법을 패킷에 수록하여 전송하는 패킷 송신부
    를 더 포함하는 통신 장치.
  10. 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 임의의 노드가 자신을 거쳐간 패킷들의 소스 주소와 목적지 주소를 저장하는 단계;
    1홉 이웃 노드들로부터 상기 1홉 이웃 노드들의 위치 정보, 페로몬 값 및 경로 활용 빈도를 수신하는 단계;
    상기 1홉 이웃 노드들의 수신 신호 세기, 위치 정보 및 페로몬 값을 토대로 상기 1홉 이웃 노드가 문제 노드인지를 판단하는 단계; 및
    문제 노드가 아닌 1홉 이웃 노드의 경로 활용 빈도를 상기 임의의 노드의 경로 활용 빈도와 비교하여 자신이 허브인지를 판단하는 단계
    를 포함하는 허브 감지 방법.
  11. 제10항에 있어서,
    상기 수신하는 단계는,
    상기 위치 정보, 페로몬 값 및 경로 활용 빈도를 포함하는 헬로우 메시지를 수신하는 허브 감지 방법.
  12. 제11항에 있어서,
    상기 문제 노드인지를 판단하는 단계는,
    상기 헬로우 메시지의 수신 신호 세기가 기 정의된 신호 세기 이상인지를 판단하는 단계; 및
    상기 신호 세기 미만이면, 문제 노드로 판단하는 단계
    를 포함하는 허브 감지 방법.
  13. 제12항에 있어서,
    상기 허브인지를 판단하는 단계는,
    상기 신호 수신 세기가 상기 기 정의된 크기 이상인 1홉 이웃 노드들과의 링크 연결 지속 시간이 기 정의된 임계치를 충족하면, 1홉 이웃 노드들의 경로 활용 빈도를 상기 노드의 경로 활용 빈도와 비교하는 단계;
    송수신 패킷의 생존 시간이 기 정의된 평균 생존 시간을 충족하는지 판단하는 단계; 및
    상기 평균 생존 시간을 만족하고, 상기 노드의 경로 활용 빈도가 상기 1홉 이웃 노드들보다 많으면, 허브로 판단하는 단계
    를 포함하는 허브 감지 방법.
  14. 복수의 서로 다른 네트워크가 혼합된 멀티홉 네트워크를 구성하는 노드의 패킷 전송 방법에 있어서,
    상기 노드가 허브인지를 판단하는 단계;
    상기 허브인지 여부에 따라 페로몬 값을 계산하는 단계;
    상기 페로몬 값을 이웃 노드들과 교환하는 단계;
    상기 이웃 노드들로부터 수신한 페로몬 값을 비교하는 단계; 및
    상기 페로몬 값이 가장 큰 이웃 노드에게 패킷을 전송하는 단계
    를 포함하는 패킷 전송 방법.
  15. 제14항에 있어서,
    상기 판단하는 단계 이전에,
    상기 노드의 통신 방법을 선택하는 단계를 더 포함하고,
    상기 페로몬 값을 계산하는 단계는,
    상기 허브인지 여부 및 상기 통신 방법을 적용한 페로몬 값을 계산하는 패킷 전송 방법.
  16. 제15항에 있어서,
    상기 전송하는 단계는,
    상기 노드가 소스 노드인 경우, 상기 페로몬 값이 가장 큰 이웃 노드가 상기 노드의 통신 방법에 부합하는지를 판단하는 단계;
    부합하지 않으면, 페로몬 값이 다음으로 큰 노드를 선택한 후, 상기 판단하는 단계를 수행하는 단계; 및
    부합하면, 상기 가장 큰 이웃 노드에게 패킷을 전송하는 단계
    를 포함하는 패킷 전송 방법.
  17. 제15항에 있어서,
    상기 전송하는 단계는,
    상기 노드가 포워딩 노드인 경우, 상기 페로몬 값이 가장 큰 이웃 노드가 수신 패킷에 수록된 통신 방법에 부합하는지를 판단하는 단계;
    부합하지 않으면, 페로몬 값이 다음으로 큰 노드를 선택한 후, 상기 판단하는 단계를 수행하는 단계; 및
    부합하면, 상기 가장 큰 이웃 노드에게 패킷을 라우팅하는 단계
    를 포함하는 패킷 전송 방법.
  18. 제16항 또는 제17항에 있어서,
    상기 교환하는 단계는,
    상기 노드의 통신 방법 및 상기 노드의 페로몬 값을 포함하는 헬로우 메시지를 1홉 이웃 노드들에게 브로드캐스팅하는 단계; 및
    상기 1홉 이웃 노드들의 각각의 통신 방법 및 각각의 페로몬 값을 포함하는 헬로우 메시지를 수신하는 단계
    를 포함하는 패킷 전송 방법.
  19. 제18항에 있어서,
    상기 비교하는 단계는,
    상기 1홉 이웃 노드들 중에서 상기 1홉 이웃 노드들이 전송한 헬로우 메시지의 수신 신호 세기가 기 정의된 크기 이상인 1홉 이웃 노드들을 분류하는 단계;
    분류된 상기 1홉 이웃 노드들과의 링크 연결 지속 시간을 예측하는 단계;
    상기 링크 연결 지속 시간이 기 정의된 임계치를 충족하는 1홉 이웃 노드들을 포워딩 노드 대상으로 선정하는 단계; 및
    상기 포워딩 노드 대상으로 선정된 1홉 이웃 노드들의 페로몬 값들을 서로 비교하는 단계
    를 포함하는 패킷 전송 방법.
  20. 제19항에 있어서,
    상기 허브인지를 판단하는 단계는,
    패킷을 송수신하는 단계;
    송수신된 패킷의 소스 주소 및 목적지 주소를 포워딩 정보 베이스-상기 포워딩 정보 베이스는 소스 주소, 목적지 주소, 상기 소스 주소 및 상기 목적지 주소에 대응하는 이웃 노드 주소, 이웃 노드 위치 정보, 이웃 노드 속도 정보 및 이웃 노드의 페로몬을 포함함-에 갱신하는 단계;
    1홉 이웃 노드들로부터 헬로우 메시지가 수신되면, 신호 수신 세기가 기 정의된 크기 이상인지 판단하는 단계;
    상기 신호 수신 세기가 상기 기 정의된 크기 미만인 1홉 이웃 노드들을 제외시키는 단계;
    상기 신호 수신 세기가 상기 기 정의된 크기 이상인 1홉 이웃 노드들과의 링크 연결 지속 시간이 기 정의된 임계치를 충족하면, 1홉 이웃 노드들의 경로 활용 빈도를 상기 노드의 경로 활용 빈도와 비교하는 단계;
    상기 송수신된 패킷의 생존 시간이 기 정의된 평균 생존 시간을 충족하는지 판단하는 단계; 및
    상기 평균 생존 시간을 만족하고, 상기 노드의 경로 활용 빈도가 상기 1홉 이웃 노드들보다 많으면, 허브로 판단하는 단계
    를 포함하는 패킷 전송 방법.
  21. 제20항에 있어서,
    상기 비교하는 단계는,
    상기 헬로우 메시지로부터 확인한 1홉 이웃 노드들의 위치, 1홉 이웃 노드들의 페로몬 값 및 상기 포워딩 정보 베이스에 수록된 소스 주소와 목적지 주소 저장 정보를 토대로 상기 노드의 경로 활용 빈도를 계산하는 단계; 및
    상기 노드의 경로 활용 빈도를 상기 헬로우 메시지에 수록된 1홉 이웃 노드의 경로 활용 빈도와 각각 비교하는 단계
    를 포함하는 패킷 전송 방법.
KR1020110061767A 2011-06-24 2011-06-24 통신 장치, 허브 감지 방법 및 패킷 전송 방법 KR101269222B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020110061767A KR101269222B1 (ko) 2011-06-24 2011-06-24 통신 장치, 허브 감지 방법 및 패킷 전송 방법
PCT/KR2011/005144 WO2012176951A1 (en) 2011-06-24 2011-07-13 Communication device, method for detecting hub and transmitting packet thereof
US14/126,487 US20140133353A1 (en) 2011-06-24 2011-07-13 Communication device, method for detecting hub and transmitting packet thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110061767A KR101269222B1 (ko) 2011-06-24 2011-06-24 통신 장치, 허브 감지 방법 및 패킷 전송 방법

Publications (2)

Publication Number Publication Date
KR20130000941A KR20130000941A (ko) 2013-01-03
KR101269222B1 true KR101269222B1 (ko) 2013-05-30

Family

ID=47422763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110061767A KR101269222B1 (ko) 2011-06-24 2011-06-24 통신 장치, 허브 감지 방법 및 패킷 전송 방법

Country Status (3)

Country Link
US (1) US20140133353A1 (ko)
KR (1) KR101269222B1 (ko)
WO (1) WO2012176951A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101625797B1 (ko) * 2015-05-04 2016-05-31 한국과학기술원 소셜 네트워크와 물리적 네트워크가 오버레이된 환경에서의 컨텐츠 배치 방법 및 시스템

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014055486A1 (en) 2012-10-01 2014-04-10 Cooper Technologies Company System and method for support of one-way endpoints in two-way wireless networks
US9699708B2 (en) * 2014-01-17 2017-07-04 Cooper Technologies Company Dynamically-selectable multi-modal modulation in wireless multihop networks
US9935831B1 (en) * 2014-06-03 2018-04-03 Big Switch Networks, Inc. Systems and methods for controlling network switches using a switch modeling interface at a controller
BR102014017796A2 (pt) * 2014-07-18 2016-02-23 Cielo S A sistema de comunicação, método para determinar a localização de dispositivos, método para gerar uma lista de dispositivos vizinhos, método para determinar a localização de uma pluralidade de dispositivos, método de comunicação via enlace alternativo, método para escolher a forma de comunicação entre um dispositivo e um dentre um credenciador e um provedor de serviços e método para atualizar aplicações em dispositivos pos
KR102324361B1 (ko) * 2017-05-29 2021-11-11 한국전자통신연구원 집단 지능 기반 악의적 기기 탐지 장치 및 방법
CN110728363B (zh) * 2018-06-29 2022-11-18 华为技术有限公司 任务处理方法和装置
KR102083796B1 (ko) 2019-12-13 2020-05-15 주식회사 엠에이티 원격검침에 사용되는 블루투스 메쉬 네트워크에서 트래픽 최적화 설정방법
US11546874B1 (en) * 2020-03-20 2023-01-03 Synapse Wireless, Inc. Systems and methods for reducing network traffic
US11589195B2 (en) 2020-08-20 2023-02-21 Ip Co, Llc Asset tracking systems and methods

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101102350B1 (ko) 2010-06-01 2012-01-03 한국과학기술원 생태계 기반의 라우팅 장치와 이를 이용한 전송 경로 설정 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1313267B1 (en) * 2001-11-19 2006-12-27 Motorola, Inc. Method for optimising path selection in packet switched networks
US7116643B2 (en) * 2002-04-30 2006-10-03 Motorola, Inc. Method and system for data in a collection and route discovery communication network
KR20050001685A (ko) * 2003-06-26 2005-01-07 주식회사 케이티 무선통신 마이크로셀 시스템에서의 macs를 이용한동적 자원 관리 방법 및 그 방법을 포함하는 프로그램이저장된 기록매체
US7693049B2 (en) * 2004-10-29 2010-04-06 Honeywell International Inc. Self-organization of sensor networks using ant colony optimization
US7813326B1 (en) * 2005-05-27 2010-10-12 Bluetronix Inc. Swarm location service for mobile ad hoc network communications
US7957355B1 (en) * 2005-05-27 2011-06-07 Heiferling Mark J Swarm autonomous routing algorithm for mobile ad hoc network communications
EP2328308B1 (en) * 2009-11-27 2012-07-18 Alcatel Lucent Method for building a path according to adaptation functions using an ant colony
US8296711B2 (en) * 2010-09-30 2012-10-23 Synopsys, Inc. Method and apparatus for using entropy in ant colony optimization circuit design from high level synthesis

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101102350B1 (ko) 2010-06-01 2012-01-03 한국과학기술원 생태계 기반의 라우팅 장치와 이를 이용한 전송 경로 설정 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101625797B1 (ko) * 2015-05-04 2016-05-31 한국과학기술원 소셜 네트워크와 물리적 네트워크가 오버레이된 환경에서의 컨텐츠 배치 방법 및 시스템

Also Published As

Publication number Publication date
WO2012176951A1 (en) 2012-12-27
US20140133353A1 (en) 2014-05-15
KR20130000941A (ko) 2013-01-03

Similar Documents

Publication Publication Date Title
KR101269222B1 (ko) 통신 장치, 허브 감지 방법 및 패킷 전송 방법
KR101033720B1 (ko) 무선 통신 루트 개선 방법 및 시스템
US7656851B1 (en) Adaptive message routing for mobile ad HOC networks
Al-Rawi et al. Application of reinforcement learning to routing in distributed wireless networks: a review
KR101136375B1 (ko) 멀티-홉 네트워크에서의 라우팅 경로 설정 방법 및 이를 위한 장치
Chowdhury et al. CRP: A routing protocol for cognitive radio ad hoc networks
Biswas et al. Trust based energy efficient detection and avoidance of black hole attack to ensure secure routing in MANET
US8982708B1 (en) Priority aware dynamic routing protocol for ad-hoc networks
Prabha et al. An improved multipath MANET routing using link estimation and swarm intelligence
US9565267B2 (en) Efficient proxy table management in communication networks
US11290942B2 (en) System and method for independent dominating set (IDS) based routing in mobile AD hoc networks (MANET)
Chowdhury et al. Leveraging content connectivity and location awareness for adaptive forwarding in NDN-based mobile ad hoc networks
Sharma et al. P-AODV: a priority based route maintenance process in mobile ad hoc networks
Chughtai et al. Congestion-aware and traffic load balancing scheme for routing in WSNs
US20140204823A1 (en) Multiple simultaneous link transmissions for a multi-frequency multi-rate multi-transceiver communications device
US9049136B2 (en) System and method for packet transmission along shortest-path to multiple destinations
CN113055945A (zh) 负载均衡方法及移动自组织网络
Chen et al. A self-selection technique for flooding and routing in wireless ad-hoc networks
KR101473868B1 (ko) 컨텐츠 중심 네트워킹 환경에서 노드들 사이의 통신 방법 및 노드
US9332399B2 (en) Just in time link transmission for a multi-frequency multi-rate multi-transceiver communication device
Sett et al. An overhearing based routing scheme for wireless sensor networks
Revathi et al. Secured optimal adaptable ad-hoc routing protocol in MANET
US11457506B2 (en) Adaptive multipath routing failure recovery in a wireless network
KR101048989B1 (ko) 이동 애드혹 네트워크에서 데이터 전송 방법 및 이동 애드혹 네트워크에서 데이터 전송 방법이 기록된 기록매체
Ranjan et al. Potential node detection for route discovery in mobile 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
FPAY Annual fee payment

Payment date: 20160517

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170508

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190514

Year of fee payment: 7