KR101049081B1 - Routing method and system in ad-hoc network considering transmission speed - Google Patents

Routing method and system in ad-hoc network considering transmission speed Download PDF

Info

Publication number
KR101049081B1
KR101049081B1 KR1020100123831A KR20100123831A KR101049081B1 KR 101049081 B1 KR101049081 B1 KR 101049081B1 KR 1020100123831 A KR1020100123831 A KR 1020100123831A KR 20100123831 A KR20100123831 A KR 20100123831A KR 101049081 B1 KR101049081 B1 KR 101049081B1
Authority
KR
South Korea
Prior art keywords
path
cost
packet
transmission
routing
Prior art date
Application number
KR1020100123831A
Other languages
Korean (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 KR1020100123831A priority Critical patent/KR101049081B1/en
Application granted granted Critical
Publication of KR101049081B1 publication Critical patent/KR101049081B1/en

Links

Images

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
    • 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
    • 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)
  • Mobile Radio Communication Systems (AREA)

Abstract

PURPOSE: A routing method of ADHOC network and routing system thereof are provided to increase the use efficiency of network resource and to select a route in consideration of transfer rate. CONSTITUTION: A transmission route setting is requested to a routing management module(S910). A first routing module determines the minimum cost routes through the routing table(S920, S930). A second routing module generates minimum cost route per transfer rate corresponding to the transmission route through one or more received route response packets(S940).

Description

전송 속도를 고려한 애드혹 네트워크에서의 라우팅 방법 및 라우팅 시스템{Routing method and system in ad-hoc network considering transmission speed}Routing method and system in ad-hoc network considering transmission speed}

본 발명은 라우팅(routing) 방법 및 라우팅 시스템에 관한 것으로, 특히 애드혹 네트워크(ad-hoc network)에서의 라우팅 방법 및 라우팅 시스템에 관한 것이다.The present invention relates to a routing method and a routing system, and more particularly to a routing method and a routing system in an ad-hoc network.

애드혹 네트워크는 고정된 하부구조(infrastructure)가 없기 때문에 이동성을 가지고 있는 노드들 간의 데이터 전달을 위해 각 노드들이 라우터 기능을 수행할 수 있어야 한다. 또한, 네트워크 자원이 제한되어 있고, 네트워크의 위상이 동적 변화하는 특징을 가지고 있다. 이상과 같은 특징으로 인하여 한정된 네트워크 자원을 효율적으로 사용하기 위한 다수의 전송 경로 결정 방법들이 제안되어 왔다. 상기 전송 경로 결정 방법들은 일반적으로 노드 간에 링크 품질이 대칭적임을 가정한 전송 경로 결정 방법을 사용하고 있다. 그러나 현실적으로 다양한 송신 파워를 가진 이동 노드들이 존재하며, 동일한 송신 파워를 가지고 있더라도 지형적 환경 등으로 인하여 노드 간 송신 링크 품질과 수신 링크 품질이 동일하지 않기 때문에 기존 대칭링크 기반 전송 경로 결정 방법의 적용시 결정된 경로의 신뢰성이 높지 않다.Since ad hoc networks do not have a fixed infrastructure, each node must be able to perform router functions for data transfer between nodes with mobility. In addition, network resources are limited, and the topology of the network is dynamically changed. Due to the above features, a number of transmission path determination methods have been proposed to efficiently use limited network resources. The transmission path determination methods generally use a transmission path determination method assuming that link quality between nodes is symmetrical. However, in reality, there are mobile nodes with various transmission powers, and even though they have the same transmission power, the transmission link quality and the reception link quality between nodes are not the same due to the geographical environment. The path is not reliable.

도 1은 애드혹 네트워크 토폴로지를 나타낸 도면이다.1 is a diagram illustrating an ad hoc network topology.

도 1을 참조하면, 노드 C는 노드 A의 전파 통달 거리 경계 부근에 위치하고 있으므로, 노드 A와 노드 C의 링크 품질이 임계값 미만인 것으로 가정한다. 노드 C가 라우팅 업데이트 패킷을 브로드캐스트한 경우, 노드 A와 노드 C의 링크 품질은 임계값 미만이므로 네트워크 토폴로지에 반영되지 않는다. 즉, 노드 A는 라우팅 경로를 계산할 때 노드 C의 라우팅 정보를 사용하지 않는다. 따라서, 노드 A가 노드 F로 패킷을 전송하려는 경우, 노드 A는 라우팅 경로 계산 시 노드 C를 경유하는 경로(PT2)를 고려하지 않게 된다. 그러므로, 노드 A가 노드 F에게 데이터 패킷을 전송하려는 경우, 라우팅 경로는 노드 B 및 노드 E를 경유하는 경로(PT1)로 결정된다. 즉, 상대적으로 작은 중계 홉 수를 갖더라도 임계값 이하의 품질을 갖는 링크로 연결된 경로는 라우팅 경로로 설정되지 않게 된다.Referring to FIG. 1, since node C is located near the propagation distance boundary of node A, it is assumed that link quality between node A and node C is below a threshold. If node C broadcasts a routing update packet, the link quality of node A and node C is below the threshold and is not reflected in the network topology. That is, node A does not use the routing information of node C when calculating the routing path. Therefore, when node A intends to send a packet to node F, node A does not consider the path PT2 via node C when calculating the routing path. Therefore, when node A intends to send a data packet to node F, the routing path is determined to be a path PT1 via node B and node E. That is, even if the number of relay hops is relatively small, a path connected to a link having a quality below a threshold value is not set as a routing path.

임계값 이하의 품질을 갖는 링크를 포함하는 경로가 라우팅 경로 계산에서 제외됨에 따라 중계 홉 수가 증가하지만 일정 수준 품질 이상의 링크들로 구성된 경로가 선택되게 된다. 그러나, 중계는 채널 점유를 위한 경쟁이 필요하며 충돌을 회피를 위한 백오프로 인하여 시간 지연이 발생한다. 또한, 무선 채널에 복수의 노드가 동시에 접근함에 따른 충돌을 완벽히 배제할 수 없다. 그러므로, 경로에 포함된 중계 홉 수가 증가하는 경우 중계에 따르는 비용 역시 증가하여 전송 비용 역시 증가하게 된다. 이러한 문제를 고려할 때 라우팅 경로 계산 시 중계 홉 수 증가를 최소화하는 방법을 적용하는 것이 바람직하다. As the number of relay hops is increased as a path including a link having a quality below the threshold is excluded from the routing path calculation, a path composed of links having a certain level or more of quality is selected. However, relaying requires competition for channel occupation and time delays due to backoff to avoid collisions. In addition, a collision due to the simultaneous access of a plurality of nodes to a wireless channel cannot be completely excluded. Therefore, if the number of relay hops included in the path increases, the cost of relaying also increases, thereby increasing the transmission cost. Considering this problem, it is desirable to apply a method that minimizes the increase in the number of relay hops in the calculation of the routing path.

또한 종래기술들은 라우팅 정보의 공유를 주기적으로 망 전체에 브로드캐스트하는 것에 의존하여 망 내 모든 노드가 라우팅 정보를 공유한다. 특히 이동성이 높은 망에서는 정확한 라우팅 정보를 공유하기 위해서는 브로드캐스트 주기가 짧아야 하고, 망 내 노드 수가 많을 수록 네트워크에 상당한 부하를 발생시킨다. 따라서 중대규모 망에서는 적용성에 제한이 존재하며, 이를 완화하기 방법을 적용하는 것이 바람직하다. The prior art also relies on periodically sharing the sharing of routing information throughout the network so that all nodes in the network share routing information. In particular, in the highly mobile network, the broadcast period should be short in order to share accurate routing information. The larger the number of nodes in the network, the greater the load on the network. Therefore, there is a limitation in applicability in medium and large networks, and it is desirable to apply a method to alleviate this.

본 발명이 해결하고자 하는 과제는 전송 속도를 고려하여 경로를 선택함으로써, 제한된 네트워크 자원의 사용 효율을 높일 수 있는 애드혹 네트워크에서의 라우팅 방법을 제공하는데 있다.The problem to be solved by the present invention is to provide a routing method in an ad hoc network that can improve the use efficiency of limited network resources by selecting a path in consideration of the transmission speed.

본 발명이 해결하고자 하는 다른 과제는 상기 라우팅 방법을 이용하는 라우팅 시스템을 제공하는데 있다.Another object of the present invention is to provide a routing system using the routing method.

상기 과제를 달성하기 위한 본 발명의 일 실시예에 따른 애드혹 네트워크에서의 라우팅 방법은 N 홉(N은 자연수) 내 모든 노드에 대한 전송 속도별 최소 비용 경로를 라우팅 테이블에 저장하는 단계, 상기 라우팅 테이블에 전송 경로가 존재하는 경우, 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하는 상기 최소 비용 경로들 중 기준 품질 이상이고 경로 비용이 최소인 경로를 최종 경로로 결정하는 단계, 상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하는 단계 및 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계를 구비할 수 있다.Routing method in an ad hoc network according to an embodiment of the present invention for achieving the above object is the step of storing the minimum cost path for each node in the N hop (N is a natural number) in the routing table, the routing table If a transmission path exists, determining, by using the routing table, a path having a higher than reference quality and having a minimum path cost among the minimum cost paths corresponding to the transmission path as a final path, the transmission to the routing table. Generating a minimum cost path for each transmission rate corresponding to the transmission path using the received at least one path response packet when the path does not exist or the path that is higher than the reference quality exists and the generated minimum cost path The final path is above the reference quality and the path cost is the least. Furnace may include the step of determining.

상기 라우팅 테이블을 이용하여 상기 최종 경로를 결정하는 단계는 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하는 단계, 송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계 및 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계를 구비할 수 있다.Determining the final path using the routing table comprises extracting the least cost paths corresponding to the transmission path using the routing table and above the reference quality, if the transmission packet is a real-time packet Determining a path that satisfies the transmission time limit among the minimum cost paths and has the minimum path cost as the final path, and when the transmission packet is not the real-time packet, the path cost of the extracted paths is Determining a path that is the minimum as the final path.

상기 전송 속도별 최소 비용 경로를 생성하는 단계는 상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 1 노드(예를 들어, 송신 노드)에서 경로 요청 패킷을 브로드 캐스트하는 단계, 목적지까지의 경로를 알고 있는 적어도 하나의 제 2 노드가 상기 경로 요청 패킷을 수신한 경우, 상기 적어도 하나의 제 2 노드는 상기 목적지까지의 경로를 포함하는 상기 적어도 하나의 경로 응답 패킷을 생성하여 상기 제 1 노드로 송신하는 단계 및 상기 제 1 노드에서 상기 적어도 하나의 경로 응답 패킷을 수신하고, 상기 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 속도별 최소 비용 경로를 생성하는 단계를 구비할 수 있다.The generating of the least cost path for each transmission rate may include: broadcasting a path request packet at a first node (for example, a transmitting node) when there is no transmission path or a path above the reference quality in the routing table. Step, when at least one second node that knows the route to the destination has received the route request packet, the at least one second node generates the at least one route response packet comprising the route to the destination. Transmitting to the first node and receiving the at least one path response packet at the first node, and generating a minimum cost path for each transmission rate using the at least one path response packet. Can be.

상기 생성된 최소 비용 경로들 중 상기 최종 경로를 결정하는 단계는 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하는 단계, 송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계 및 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계를 구비할 수 있다.Determining the final path among the generated minimum cost paths comprises extracting the minimum cost paths that are above the reference quality of the generated minimum cost paths, if the transmission packet is a real-time packet, the extracted minimum Determining a path that satisfies the transmission time limit among the cost paths and has the minimum path cost as the final path, and when the transmission packet is not the real-time packet, the path cost among the extracted paths is the minimum Determining a route as the final route.

상기 다른 과제를 달성하기 위한 본 발명의 일 실시예에 따른 애드혹 네트워크에서의 라우팅 시스템은 N 홉(N은 자연수) 내 모든 노드에 대한 전송 속도별 최소 비용 경로가 저장된 라우팅 테이블에 전송 경로가 존재하는 경우, 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하는 상기 최소 비용 경로들 중 기준 품질 이상이고 경로 비용이 최소인 경로를 최종 경로로 결정하는 제 1 라우팅 모듈 및 상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하고, 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 제 2 라우팅 모듈을 구비할 수 있다.The routing system in an ad hoc network according to an embodiment of the present invention for achieving the above another problem is that the transmission path is present in the routing table is stored the least cost path for each node in the N hop (N is a natural number) In this case, the transmission path is present in the first routing module and the routing table, which determine, as the final path, a path having a minimum quality or a minimum path cost among the minimum cost paths corresponding to the transmission path using the routing table. If not, or if there is no path higher than the reference quality, a minimum cost path for each transmission rate corresponding to the transmission path is generated using the received at least one path response packet, and the reference among the generated minimum cost paths. Determining the final path as a path that is above quality and has the least path cost A second routing module may be provided.

상기 제 1 라우팅 모듈은 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하고, 송신 패킷이 실시간성 패킷인 경우 상기 추출된 최소 비용 경로들 중 상기 기준 품질 이상이고 전송 제한 시간을 만족하며 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하고, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 상기 추출된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다.The first routing module uses the routing table to extract the least cost paths corresponding to the transmission path and equal to or greater than the reference quality, and if the transmission packet is a real-time packet, the first quality of the extracted least cost paths or more And a path satisfying a transmission time limit and having the minimum path cost as the final path, and if the transmission packet is not the real time packet, the path quality is equal to or greater than the reference quality among the extracted minimum cost paths. The path that is the smallest can be determined as the final path.

상기 제 2 라우팅 모듈은 상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 1 노드에서 경로 요청 패킷을 브로드 캐스트하고 목적지까지의 경로를 알고 있는 적어도 하나의 제 2 노드가 생성하여 송신한 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 속도별 최소 비용 경로를 생성할 수 있다.The second routing module may be configured to broadcast a route request packet at a first node and to recognize at least one second node that knows a route to a destination when there is no route higher than the transmission path or the reference quality in the routing table. The least cost path for each transmission rate may be generated using at least one path response packet generated and transmitted.

상기 제 2 라우팅 모듈은 송신 패킷이 실시간성 패킷인 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 전송 제한 시간을 만족하며 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하고, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다.The second routing module determines, as the final path, a path having the minimum quality path that is equal to or greater than the reference quality and satisfies a transmission time limit and has the minimum path cost when the transmission packet is a real-time packet. When the packet is not the real-time packet, the final path may be determined as a path having the above standard quality and the path cost being the least among the generated least cost paths.

본 발명에 기술적 사상에 의한 일 실시예에 따른 애드혹 네트워크에서의 라우팅 방법 및 라우팅 시스템은 전송 속도를 고려하여 경로를 선택함으로써 제한된 네트워크 자원의 사용 효율을 높일 수 있고, 하이브리드 라우팅 방식을 적용하여 라우팅 정보 공유를 위한 네트워크 오버헤드를 완화할 수 있으며, 네트워크 확장성 문제를 해결하여 중대규모 망에서 적용 가능하게 할 수 있는 장점이 있다.The routing method and routing system in an ad hoc network according to an embodiment of the present invention can increase the efficiency of use of limited network resources by selecting a path in consideration of a transmission speed, and apply routing information by applying a hybrid routing scheme. Network overhead for sharing can be alleviated, and network scalability problem can be solved and can be applied in medium-sized networks.

보다 구체적으로, 본 발명의 기술적 사상에 의한 일 실시예는 복수의 전송 속도를 지원하는 이동 노드에 대하여 전송 속도의 변화에 따른 링크 품질(예를 들어, 비트 에러율(Bit Erroe Rate ; BER))과 통달 거리 변화를 고려하여 능동적으로 라우팅 경로를 설정함으로써, 상대적으로 전송 비용이 큰 홉 중계를 줄일 수 있으므로, 단순히 링크 품질만을 고려하여 전송 경로를 결정 방법보다 무선 자원 사용의 효율성을 높일 수 있다.More specifically, according to an embodiment of the inventive concept, link quality (eg, Bit Erroe Rate (BER)) according to a change in transmission speed for a mobile node supporting a plurality of transmission speeds and By actively setting the routing path in consideration of the change in communication distance, it is possible to reduce the hop relay which is relatively expensive. Therefore, it is possible to increase the efficiency of using radio resources more than the method of determining the transmission path simply by considering only the link quality.

또한, 본 발명의 기술적 사상에 의한 일 실시예는 네트워크 확장성 및 컨트롤 패킷의 오버헤드 문제 완화가 가능하다. 즉, 설정된 홉 수에 의하여 나누어지는 라우팅 영역 내부는 링크 품질을 고려한 프로액티브(Proactive) 라우팅 방식을 적용하여 상기 라우팅 영역 외부는 링크 품질을 적용한 리액티브(Reactive) 라우팅 방식을 적용할 수 있다. 따라서, 주기적인 라우팅 정보 공유를 위한 프로액티브 라우팅 제어 패킷 브로드캐스팅 영역을 상기 설정된 라우팅 영역 홉 수로 제한함으로써, 제어 패킷 오버헤드 문제를 완화할 수 있고 네트워크 확장성을 높일 수 있다.In addition, according to an embodiment of the present invention, network scalability and control packet overhead may be alleviated. That is, the inside of the routing area divided by the set hop number may apply a proactive routing method in consideration of link quality, and the outside of the routing area may apply a reactive routing method in which link quality is applied. Therefore, by limiting the proactive routing control packet broadcasting region for periodic routing information sharing to the set routing region hop number, the control packet overhead problem can be alleviated and network scalability can be improved.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 애드혹 네트워크 토폴로지를 나타낸 도면이다.
도 2는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 시스템의 블록도이다.
도 3은 도 2의 라우팅 관리 모듈을 구체적으로 도시한 블록도이다.
도 4는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 영역 구성 예이다.
도 5는 본 발명의 기술적 사상에 의한 일 실시예에 따른 헬로우 패킷 송신 절차에 관한 흐름도이다.
도 6은 본 발명의 기술적 사상에 의한 일 실시예에 따른 헬로우 패킷 수신 절차에 관한 흐름도이다.
도 7은 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 업데이트 패킷 송신 방법에 관한 흐름도이다.
도 8은 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 업데이트 패킷 수신 방법에 관한 흐름도이다.
도 9는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 방법의 흐름도이다.
도 10은 도 9의 S930 단계의 일 실시예를 보다 구체적으로 도시한 흐름도이다.
도 11은 도 9의 S930 단계의 다른 일 실시예를 보다 구체적으로 도시한 흐름도이다.
도 12는 도 9의 S940 단계 및 S950 단계의 일 실시예를 보다 구체적으로 도시한 흐름도이다.
도 13은 도 9의 S940 단계 및 S950 단계의 다른 일 실시예를 보다 구체적으로 도시한 흐름도이다.
도 14는 본 발명의 기술적 사상에 의한 일 실시예에 따른 애드혹 네트워크 토폴로지를 도시한 도면이다.
도 15는 경로 요청 패킷 전달 과정을 설명하기 위한 네트워크 토폴로지에 관한 도면이다.
도 16은 경로 응답 패킷 전달 과정을 설명하기 위한 네트워크 토폴로지에 관한 도면이다.
도 17은 전송 제한 시간을 설명하기 위한 도면이다.
BRIEF DESCRIPTION OF THE DRAWINGS In order to better understand the drawings cited in the detailed description of the invention, a brief description of each drawing is provided.
1 is a diagram illustrating an ad hoc network topology.
2 is a block diagram of a routing system according to an embodiment of the inventive concept.
3 is a block diagram illustrating in detail the routing management module of FIG. 2.
4 is a configuration example of a routing area according to an embodiment of the inventive concept.
5 is a flowchart illustrating a hello packet transmission procedure according to an embodiment of the present invention.
6 is a flowchart illustrating a hello packet reception procedure according to an embodiment of the present invention.
7 is a flowchart illustrating a routing update packet transmission method according to an embodiment of the present invention.
8 is a flowchart illustrating a routing update packet receiving method according to an embodiment of the present invention.
9 is a flowchart illustrating a routing method according to an embodiment of the inventive concept.
FIG. 10 is a flowchart illustrating an embodiment of step S930 of FIG. 9 in more detail.
FIG. 11 is a flowchart illustrating another embodiment of step S930 of FIG. 9 in more detail.
FIG. 12 is a flowchart illustrating an embodiment of steps S940 and S950 of FIG. 9 in more detail.
FIG. 13 is a flowchart illustrating another embodiment of steps S940 and S950 of FIG. 9 in more detail.
14 is a diagram illustrating an ad hoc network topology according to an embodiment of the present invention.
15 is a diagram illustrating a network topology for explaining a process of forwarding a route request packet.
16 is a diagram illustrating a network topology for explaining a path response packet forwarding process.
17 is a diagram for explaining a transmission time limit.

본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 도면에 기재된 내용을 참조하여야 한다. DETAILED DESCRIPTION In order to fully understand the present invention, the operational advantages of the present invention, and the objects achieved by the practice of the present invention, reference should be made to the accompanying drawings which illustrate preferred embodiments of the present invention and the contents described in the drawings.

이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals in the drawings denote like elements.

일반적으로 모바일 노드들은 전송 속도에 따른 복수 개의 전송 모드를 포함하며, 동일한 신호품질(예를 들어, Signal-to-Noise Ratio ; SNR)에 대해서 전송 속도마다 링크 품질(예를 들어, Bit Error Rate ; BER)이 동일하지 않다. 동일 신호 품질이라 하더라도 임의의 전송 속도에서는 링크 품질이 전송 기준 링크 품질을 만족하지 않지만, 다른 낮은 전송 속도에서는 링크 품질이 전송 기준 링크 품질을 만족하는 경우가 있을 수 있다. 즉, 상대적으로 낮은 속도에서는 통달거리가 증가하기 때문에 비교적 전송 비용이 큰 중계의 홉 수를 줄이거나 최소화할 수 있다. 본 발명의 기술적 사상에 의한 일 실시예에서는 이러한 특성을 라우팅 경로 결정 과정에 반영하여 전송 속도 변경에 의해 능동적으로 경로를 선택한다.In general, mobile nodes include a plurality of transmission modes according to transmission rates, and link quality (eg, Bit Error Rate;) per transmission rate for the same signal quality (eg, Signal-to-Noise Ratio; SNR). BER) is not the same. Even at the same signal quality, the link quality does not satisfy the transmission reference link quality at any transmission rate, but at other lower transmission speeds, the link quality may satisfy the transmission reference link quality. In other words, the communication distance increases at a relatively low speed, thereby reducing or minimizing the number of hops of a relatively expensive transmission. According to an embodiment of the inventive concept, a path is actively selected by changing a transmission rate by reflecting this characteristic in a routing path determination process.

도 2는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 시스템(200)의 블록도이다.2 is a block diagram of a routing system 200 according to an embodiment of the inventive concept.

도 2를 참조하면, 라우팅 시스템(200)은 네트워크 스택(210), 신호 품질 계산 모듈(220), 인접 노드 관리 모듈(230), 제 1 라우팅 모듈(240), 제 2 라우팅 모듈(250), 라우팅 관리 모듈(260) 및 라우팅 패킷 송수신 모듈(270)을 포함할 수 있다.2, the routing system 200 includes a network stack 210, a signal quality calculation module 220, a neighbor node management module 230, a first routing module 240, a second routing module 250, The routing management module 260 and the routing packet transmission / reception module 270 may be included.

네트워크 스택(210)은 계층별 패킷화, 경로 결정 기능, 전송 충돌 회피 기능을 이용하여 데이터를 송수신할 수 있다. 라우팅 패킷 송수신 모듈(270) 또는 응용계층에서 데이터 전송 요청 시 네트워크 스택(210)은 패킷화를 하고, 라우팅 관리 모듈(260)에서 전송 경로 설정 요청을 하면 네트워크 스택(210)은 라우팅 경로를 설정하여 이웃 노드로 전달한다. 패킷 수신 시 네트워크 스택(210)은 목적지에 따라 수신 또는 중계를 한다. 만약, 네트워크 스택(210)의 IP 주소가 목적지인 경우에는, 패킷이 라우팅 업데이트 패킷이면 네트워크 스택(210)은 라우팅 패킷 송수신 모듈(270)로 라우팅 업데이트 패킷을 전달하고, 패킷이 일반 패킷이면 네트워크 스택(210)은 응용계층으로 일반 패킷을 전달한다. The network stack 210 may transmit and receive data by using layered packetization, a path determination function, and a transmission collision avoidance function. When requesting data transmission in the routing packet transmission / reception module 270 or application layer, the network stack 210 packetizes, and when the routing management module 260 makes a request for transmission path setting, the network stack 210 establishes a routing path. Pass to neighbor node. When receiving a packet, the network stack 210 receives or relays a packet according to a destination. If the IP address of the network stack 210 is a destination, if the packet is a routing update packet, the network stack 210 transmits a routing update packet to the routing packet transmission / reception module 270, and if the packet is a general packet, the network stack 210. 210 forwards the normal packet to the application layer.

신호 품질 계산 모듈(220)은 주기적으로 수신되는 헬로우(Hello) 패킷을 이용하여 이웃 노드의 신호 품질을 측정할 수 있다. 예를 들어, 상기 신호 품질은 수신된 헬로우 패킷에 대한 신호 품질로써 신호대잡음비(Signal-to-Noise Ratio ; SNR)를 의미할 수 있다. 일반적으로 상기 신호 품질이 높을수록 링크 품질인 비트에러율(Bit Error Rate ; BER)이 낮아지고 전송 성공 확률이 높아지며, 상기 신호 품질이 낮을수록 상기 비트에러율이 높아지며 상기 전송 성공 확률이 낮아진다. 신호 품질 계산 모듈(220)에서 측정된 상기 신호 품질은 인접 노드 관리 모듈(230)로 전달되고, 최종적으로 라우팅 모듈(240)에서의 위상 테이블에 업데이트되며, 이 정보는 라우팅 관리 모듈(250)의 전송 속도별 라우팅 테이블에 저장되는 최소 비용 경로 계산 시에 이용된다.The signal quality calculation module 220 may measure signal quality of the neighbor node by using a hello packet that is periodically received. For example, the signal quality may mean a signal-to-noise ratio (SNR) as the signal quality for the received hello packet. In general, the higher the signal quality, the lower the bit error rate (BER), which is the link quality, and the higher the transmission success probability. The lower the signal quality, the higher the bit error rate and the lower the transmission success probability. The signal quality measured in the signal quality calculation module 220 is transmitted to the neighbor node management module 230 and finally updated in the phase table in the routing module 240, and this information is updated in the routing management module 250. Used to calculate the least cost path stored in the routing table for each transmission rate.

인접 노드 관리 모듈(230)은 헬로우 패킷의 주기적인 송신과 이웃 노드가 발송한 헬로우 패킷의 수신을 통하여 이웃 노드와의 송수신 신호 품질 정보를 인접 노드 테이블에 갱신한다. 구체적으로는 헬로우 패킷 수신시 신호 품질 계산 모듈(220)에서 측정된 이웃 노드로부터의 수신 신호 품질 정보와 헬로우 패킷 내에 포함된 이웃 노드에서 측정된 자신의 송신 신호 품질 정보를 인접 노드 테이블에 갱신한다. 헬로우 패킷 수신 시 인접 노드 테이블이 갱신된 후, 인접 노드 테이블 내 이웃 노드와의 송수신 신호 품질 정보를 헬로우 패킷에 포함하여 주기적으로 이웃 노드에 1홉 브로드캐스트한다. 인접 노드 관리 모듈은 이러한 헬로우 패킷의 송수신 과정에 의하여 이웃 노드간의 신호 품질 변화를 공유한다.The neighbor node management module 230 updates the transmission / reception signal quality information with the neighbor node in the neighbor node table through periodic transmission of the hello packet and reception of the hello packet sent by the neighbor node. In detail, when the hello packet is received, the signal quality calculation module 220 updates the received signal quality information from the neighboring node and its own transmission signal quality information measured by the neighboring node included in the hello packet in the neighbor node table. When the hello packet is received, the neighbor node table is updated and then broadcasts one hop to the neighbor node periodically by including the hello packet transmission / reception signal quality information with the neighbor node in the neighbor node table. The neighbor node management module shares the signal quality change between neighbor nodes by transmitting and receiving the hello packet.

제 1 라우팅 모듈(240)은 인접노드 관리 모듈(230)이 관리하는 인접노드 테이블을 참조하여 이웃 노드와의 송수신 신호 품질 정보를 포함하는 라우팅 업데이트 패킷을 생성한 후 라우팅 패킷 송수신 모듈(270)에 전달하고 라우팅 패킷 송수신 모듈(270)이 네트워크 스택(210)에 송신 요청을 함으로써, 프로액티브(Proactive) 라우팅 영역으로 설정된 N 홉(N은 자연수) 반경 내의 노드들에 주기적으로 브로드캐스트한다. 상기 라우팅 업데이트 패킷 수신 시 제 1 라우팅 모듈(240)은 라우팅 테이블 내의 위상 테이블을 갱신한다. 상기 N홉 반경 내의 모든 노드가 주기적으로 브로드캐스트함으로써 각 노드의 제 1 라우팅 모듈(240)은 N 홉 반경 내의 모든 노드에 대한 송수신 신호 품질 변화를 공유하게 된다. 제 1 라우팅 모듈(240)에서 관리되는 위상 테이블이 갱신될 때마다, 라우팅 관리 모듈(260)은 프로액티브 라우팅 영역 내 모든 노드에 대하여 전송 속도별 최소 경로를 계산하여 상기 라우팅 테이블을 갱신한다. The first routing module 240 generates a routing update packet including signal quality information of the transmission and reception with the neighbor node by referring to the neighbor node table managed by the neighbor node management module 230 and then sends the routing packet to the routing packet transmission / reception module 270. Forwarding and routing packet transmission and reception module 270 periodically broadcasts to nodes within an N hop (N is a natural number) radius set as a proactive routing area by making a request to the network stack 210 for transmission. Upon receipt of the routing update packet, the first routing module 240 updates the phase table in the routing table. By periodically broadcasting all nodes within the N hop radius, each node's first routing module 240 shares the changes in transmit and receive signal quality for all nodes within the N hop radius. Each time the topology table managed by the first routing module 240 is updated, the routing management module 260 updates the routing table by calculating the minimum path for each transmission speed for all nodes in the proactive routing area.

패킷 송신 시 패킷의 목적지 노드가 라우팅 테이블에 존재하지 않는 경우, 즉 목적지 노드까지의 홉수가 송신 노드로부터 N 홉을 초과하는 것으로 판단되어 경로 탐색이 필요한 경우, 제 2 라우팅 모듈(250)은 라우팅 관리 모듈(260)의 요청에 의해 경로 요청(Routing Request ; RREQ) 패킷을 생성하여 라우팅 패킷 송수신 모듈(270)에 브로드캐스트 송신할 것을 요청한다. 라우팅 패킷 송수신 모듈(270)은 네트워크 스택(210)을 통해 상기 경로 요청 패킷을 브로드캐스트 송신한다. 상기 목적지 노드까지의 경로 정보를 알고 있는 노드까지 상기 경로 요청 패킷이 브로드캐스트되는 동안 통과하는 노드들은 상기 경로 요청 패킷 수신시 이전 홉 노드와의 링크 정보를 상기 경로 요청 패킷에 추가하고 다시 브로드캐스트한다. 상기 목적지 노드까지의 경로 정보를 알고 있는 노드(예를 들어, 상기 목적지 노드와 같은 프로액티브 라우팅 영역 안에 있는 노드)가 브로드캐스트된 상기 경로 요청 패킷을 수신하게 되면, 더 이상 상기 경로 요청 패킷을 브로드캐스트하지 않고 상기 경로 요청 패킷을 발신한 노드로 상기 목적지 노드까지의 경로 정보를 알려주기 위하여 경로 응답(Routing Reply ; RREP) 패킷을 생성한다. 상기 목적지 노드까지의 경로 정보를 알고 있는 노드는 자신으로부터 상기 목적지 노드까지의 정방향(상기 경로 요청 패킷 송신 노드로부터 상기 목적지 노드 방향) 발송 노드로부터 링크들의 라우팅 정보와 상기 경로 요청 패킷이 전달되는 과정에서 경유한 노드들의 정방향 링크들의 라우팅 정보를 상기 경로 응답 패킷에 포함시킨다. 따라서, 상기 경로 요청 패킷을 발송한 노드로부터 상기 목적지 노드까지의 정방향 링크들의 라우팅 경로가 완성되고, 상기 경로 응답 패킷에 포함되는 라우팅 정보는 상기 경로 요청 패킷을 발송한 노드로부터 상기 목적지 노드까지의 정방향 링크들의 신호 품질 값들이다. If the destination node of the packet does not exist in the routing table at the time of packet transmission, that is, if the number of hops to the destination node is determined to exceed N hops from the transmitting node and requires the path search, the second routing module 250 manages routing. In response to the request of the module 260, a routing request (RREQ) packet is generated and requested to be broadcasted to the routing packet transmission / reception module 270. The routing packet transceiving module 270 broadcasts the route request packet through the network stack 210. Nodes passing while the route request packet is broadcast to a node that knows route information to the destination node add link information with the previous hop node to the route request packet and broadcast again when receiving the route request packet. . When a node that knows route information to the destination node (e.g., a node in the same proactive routing area as the destination node) receives the broadcasted route request packet, it no longer broadcasts the route request packet. A Routing Reply (RREP) packet is generated to inform the node that sent the route request packet to the destination node without casting the route information. The node that knows the route information to the destination node, in the process of transmitting routing information of the links and the route request packet from the forwarding node (the route request packet transmitting node to the destination node) from itself to the destination node. The routing information of the forward links of the nodes passing through is included in the path response packet. Therefore, the routing path of the forward links from the node that sent the route request packet to the destination node is completed, and the routing information included in the route response packet is forward from the node that sent the route request packet to the destination node. Signal quality values of the links.

상기 목적지 노드 또는 상기 목적지 노드의 경로 정보를 알고 있는 노드는 상기 경로 응답 패킷을 상기 경로 요청 패킷을 발송한 노드로 전달하여야 하나, 비대칭 링크에서는 상기 경로 요청 패킷이 전송된 경로의 역방향으로 유니캐스트 경로가 존재한다고 가정할 수 없기 때문에, 상기 경로 요청 패킷을 발송한 노드가 상기 프로액티브 라우팅 영역 밖에 있는 경우 상기 경로 응답 패킷을 브로드캐스트로 전송해야 한다. 상기 경로 요청 패킷을 발송한 노드가 상기 프로액티브 라우팅 영역 안에 존재하고, 상기 경로 요청 패킷을 발송한 노드까지의 라우팅 정보를 알고 있는 노드가 브로드캐스트된 상기 경로 응답 패킷을 최초 수신하면, 상기 라우팅 테이블을 참조하여 상기 경로 응답 패킷을 상기 경로 요청 패킷의 송신 노드를 목적지로 하여 유니캐스트 전송을 한다.The destination node or a node that knows the path information of the destination node should forward the path response packet to the node that sent the path request packet, but in an asymmetric link, a unicast path in the reverse direction of the path where the path request packet is transmitted. Cannot be assumed to exist, the route response packet should be broadcasted if the node that sent the route request packet is outside the proactive routing area. If the node that sent the route request packet is in the proactive routing area and the node that knows routing information to the node that sent the route request packet first receives the broadcasted route response packet, the routing table. The unicast transmission is performed with reference to the path response packet as a destination node of the path request packet.

제 1 라우팅 모듈(240) 및 제 2 라우팅 모듈(250)의 구체적인 동작에 관하여는 도 4 내지 도 17을 참조하여 보다 상세하게 설명한다.Detailed operations of the first routing module 240 and the second routing module 250 will be described in more detail with reference to FIGS. 4 to 17.

라우팅 관리 모듈(260)은 패킷 송신 시 네트워크 스택(210)으로부터 송신 패킷에 대한 경로 설정 요청 패킷을 받으면, 프로액티브(Proactive) 라우팅 방식에 의해 관리되는 상기 라우팅 테이블 내에 송신 요구 패킷의 목적지까지 경로가 존재하는지 검색한다. 검색 결과 존재하면 상기 라우팅 테이블에서 송신 비용이 가장 작은 경로를 네트워크 스택(210)에 전달한다. 만약 라우팅 테이블에 목적지까지의 경로가 존재하지 않으면, 제 2 라우팅 모듈(250)에 경로 요청을 한다. 제 2 라우팅 모듈(250)은 상기 경로 요청 패킷을 송신하고, 이후 상기 경로 응답 패킷을 수신하여 패킷 내의목적지 노드까지의 경로 정보를 라우팅 관리 모듈(260)로 전달한다. 라우팅 관리 모듈(260)은 상기 제 2 라우팅 모듈(250)로부터 전달받은 라우팅 정보들 중에서 송신 비용이 가장 작은 경로를 네트워크 스택(210)에 전달한다.When the routing management module 260 receives the routing request packet for the transmission packet from the network stack 210 at the time of packet transmission, the routing management module 260 receives a path to the destination of the transmission request packet in the routing table managed by the proactive routing method. Search for the existence If the search result is present, the route with the lowest transmission cost is transmitted to the network stack 210 in the routing table. If the route to the destination does not exist in the routing table, the route request is made to the second routing module 250. The second routing module 250 transmits the route request packet, and then receives the route response packet and transmits route information to a destination node in the packet to the routing management module 260. The routing management module 260 transmits a path having the smallest transmission cost among the routing information received from the second routing module 250 to the network stack 210.

라우팅 패킷 송수신 모듈(270)은 라우팅 제어 패킷들의 네트워크 스택(210)으로의 송신 요청 및 네트워크 스택(210)으로부터 라우팅 제어 패킷의 수신 처리를 담당한다. 인접 노드 관리 모듈(230)로부터 상기 헬로우 패킷, 제 1 라우팅 모듈(240)로부터 라우팅 업데이트 패킷, 제 2 라우팅 모듈(250)로부터 상기 경로 요청 패킷과 상기 경로 응답 패킷을 전달받아 네트워크 스택(210)에 송신 요청을 수행한다. 반대로 네트워크 스택(210)으로부터 상기 라우팅 제어 패킷을 수신하여 상기 라우팅 제어 패킷 종류에 따라 인접 노드 관리 모듈(230), 제 1 라우팅 모듈(240) 또는 제 2 라우팅 모듈(250)로 전달한다.The routing packet transmit / receive module 270 is responsible for requesting transmission of routing control packets to the network stack 210 and receiving routing control packets from the network stack 210. The hello packet from the neighbor node management module 230, the routing update packet from the first routing module 240, and the route request packet and the route response packet are received from the second routing module 250 and transmitted to the network stack 210. Perform the send request. On the contrary, the routing control packet is received from the network stack 210 and transferred to the neighbor node management module 230, the first routing module 240, or the second routing module 250 according to the routing control packet type.

도 3은 도 2의 라우팅 관리 모듈(260)을 구체적으로 도시한 블록도이다.3 is a block diagram illustrating in detail the routing management module 260 of FIG. 2.

도 2 및 도 3을 참조하면, 라우팅 관리 모듈(260)은 경로 요청 처리 부모듈(310), 전송속도 결정 부모듈(320), MAC 연동 부모듈(330), 제 1 연동 부모듈(340) 및 제 2 연동 부모듈(350)을 구비할 수 있다.2 and 3, the routing management module 260 includes a path request processing submodule 310, a transmission speed determining submodule 320, a MAC interworking submodule 330, and a first interworking submodule 340. And a second interworking submodule 350.

경로 요청 처리 부모듈(310)은 네트워크 스택(210)으로부터 경로 설정 요청시 목적지 노드의 경로 정보가 상기 라우팅 테이블에 존재하는지 검사한다. 검사 결과 라우팅 정보가 존재하는 경우 프로액티브 라우팅 정보를 이용하여 경로를 결정하고, 검사 결과 라우팅 정보가 존재하지 않는 경우 리액티브 라우팅 정보에 의하여 경로를 결정한다. 상기 라우팅 테이블에 포함된 정보인 상기 프로액티브 라우팅 정보 또는 상기 경로 응답 패킷에 포함된 상기 리액티브 라우팅 정보를 전달받으면, 전송 속도 결정 부모듈(320)에 전송 속도를 고려하여 최적 경로를 계산하여 결정할 것을 요청한다. 전송 속도 결정 부모듈(320)로부터 결정된 최적 경로를 전달 받으면, 결정된 라우팅 정보를 네트워크 스택(210)에 전달하고, 최적 경로 결정시 설정된 전송 속도를 MAC 연동 부모듈(330)에 전달하여 물리계층(예를 들어, 모뎀)의 전송속도를 제어하도록 요청한다. The route request processing submodule 310 checks whether route information of the destination node exists in the routing table when requesting route establishment from the network stack 210. If there is routing information as a result of the check, the path is determined by using the proactive routing information. If the routing information does not exist, the path is determined by the reactive routing information. When receiving the proactive routing information, which is the information included in the routing table, or the reactive routing information included in the path response packet, the optimum path is calculated and determined by considering the transmission speed to the transmission speed determining submodule 320. To ask. Upon receiving the determined optimal path from the transmission rate determining submodule 320, the determined routing information is transmitted to the network stack 210, and the transmission rate set at the time of determining the optimum path is transmitted to the MAC interworking submodule 330 to provide the physical layer ( For example, request to control the transmission speed of the modem).

전송 속도 결정 부모듈(320)은 상기 리액티브 라우팅 정보 또는 상기 프로액티브 라우팅 정보를 이용하여 목적지까지 전송 속도를 고려한 최적 경로를 결정하고 결과를 경로 요청 처리 부모듈(310)로 전달한다. 프로액티브 라우팅 연동 부모듈(340)은 제 1 라우팅 모듈(240)에서 위상 정보를 참조하여 만들어진 전송 속도별 라우팅 테이블 정보를 상기 프로액티브 라우팅 정보로써 경로 요청 처리 부모듈(310)로 전달한다. 또한, 제 2 연동 부모듈(260)은 제 2 라우팅 모듈(250)에서 경로 요청 패킷 송신 및 경로 응답 패킷 수신에 의하여 생성된 목적지까지의 신호 품질 기반 경로 정보를 이용하여 만들어진 전송 속도별 경로 정보를 상기 리액티브 라우팅 정보로써 경로 요청 처리 부모듈(310)로 전달한다. The transmission speed determination submodule 320 determines the optimal path considering the transmission speed to the destination using the reactive routing information or the proactive routing information, and transmits the result to the path request processing submodule 310. The proactive routing interworking submodule 340 transmits routing table information for each transmission rate, which is generated by referring to the phase information in the first routing module 240, as the proactive routing information to the route request processing submodule 310. In addition, the second interworking submodule 260 may transmit the path information for each transmission rate generated by using the signal quality based path information from the second routing module 250 to the destination generated by the path request packet transmission and the path response packet reception. The reactive routing information is transmitted to the route request processing submodule 310.

MAC 연동 부모듈(330)은 최적 경로 결정시 설정된 전송 속도를 물리계층에 반영하기 위하여 물리계층 제어를 담당하는 MAC 계층에 전달한다. The MAC interworking submodule 330 transfers the set transmission rate to the physical layer in order to reflect the set transmission rate to the physical layer in determining the optimal path.

도 4는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 영역 구성 예이다.4 is a configuration example of a routing area according to an embodiment of the inventive concept.

도 4를 참조하면, 설정된 홉 수인 N 홉을 기준으로 내부 영역(410)은 전송 속도를 고려한 능동적 경로 선택 방법을 적용한 프로액티브 라우팅 방법, 외부 영역(450)은 전송 속도를 고려한 능동적 경로 선택 방법을 적용한 리액티브 라우팅 방법을 적용한다. 내부 영역(410)은 프로액티브 라우팅 기반의 라우팅 테이블을 공유하기 위한 라우팅 업데이트 패킷의 TTL 필드를 N 홉으로 설정하고 브로드캐스트함으로써, N 홉 내의 노드들에 대하여 라우팅 정보를 공유한다. 반면 N 홉을 초과하는 노드들은 경로 요청 패킷 송신과 경로 응답 패킷 수신에 의한 리액티브 라우팅 방법에 의하여 경로를 설정한다. 이상과 같은 하이브리드 라우팅 방식을 적용함으로써 라우팅 제어 패킷 부하를 완화하고 확장성을 높일 수 있다. 또한 N 홉 이내의 경로 결정(예를 들어, 프로액티브 라우팅 방식)과 N 홉 초과 노드의 경로 결정(예를 들어, 리액티브 라우팅 방식) 모두에 대하여 최종 경로 결정시 전송속도를 고려함으로써, 전송비용이 많이 발생하는 중계 홉수를 최소화하여 단순히 링크 품질만을 고려하는 기존의 방식에 보다 전송 효율을 높일 수 있다. Referring to FIG. 4, based on the N hops as the set number of hops, the inner region 410 may be a proactive routing method using an active path selection method considering a transmission rate, and the outer region 450 may be an active path selection method considering a transmission speed. Apply the reactive routing method applied. The inner area 410 shares routing information for nodes in the N hops by setting and broadcasting the TTL field of the routing update packet to N hops for sharing the proactive routing based routing table. On the other hand, nodes exceeding N hops set the path by the reactive routing method by transmitting the path request packet and receiving the path response packet. By applying the hybrid routing method as described above, it is possible to reduce the routing control packet load and increase the scalability. In addition, the transmission cost is considered by considering the transmission rate in the final path determination for both path determination within N hops (e.g., proactive routing) and path determination of N hop over nodes (e.g., reactive routing). By minimizing the number of relay hops that occur frequently, the transmission efficiency can be improved more than in the conventional scheme that considers only link quality.

내부 영역 라우팅과 외부 영역 라우팅의 구분은 사용자에 의해서 설정된 홉 수에 의해 결정될 수 있다. 사용자는 망 운용 개념 또는 망 구성 시나리오를 토대로 노드들의 밀집도를 고려하여 내부와 외부 라우팅 영역을 구분하는 홉 수를 결정한다. The distinction between inner zone routing and outer zone routing can be determined by the number of hops set by the user. The user decides the number of hops separating the internal and external routing areas by considering the density of nodes based on the network operation concept or the network configuration scenario.

도 5는 본 발명의 기술적 사상에 의한 일 실시예에 따른 헬로우 패킷 송신 절차에 관한 흐름도이다.5 is a flowchart illustrating a hello packet transmission procedure according to an embodiment of the present invention.

도 2 내지 도 5를 참조하면, 상기 헬로우 패킷 전송 주기인지 여부를 판단하여(S510) 상기 헬로 패킷 전송 주기인 경우, 각 노드들의 인접 노드 관리 모듈(230)은 상기 인접 노드 테이블을 참조하여 상기 노드와 1홉인 노드와의 송신 신호 품질 및 수신 신호 품질을 포함하는 라우팅 정보를 추출하여 헬로우 패킷을 생성할 수 있다(S520). 그리고, 인접 노드 관리 모듈(230)은 상기 생성된 헬로우 패킷을 라우팅 패킷 송수신 모듈(270)로 전달할 수 있다(S530). 라우팅 패킷 송수신 모듈(270)은 전달받은 상기 헬로우 패킷을 1홉 브로드캐스트 송신하도록 네트워크 스택에 요청할 수 있다,2 to 5, it is determined whether the hello packet transmission period is performed (S510). In the hello packet transmission period, the neighbor node management module 230 of each node refers to the neighbor node table with the node. And a hello packet may be generated by extracting routing information including a transmission signal quality and a reception signal quality with a node which is one hop (S520). In addition, the neighbor node management module 230 may transfer the generated hello packet to the routing packet transmission / reception module 270 (S530). The routing packet transceiving module 270 may request a network stack to transmit the received hello packet one-hop broadcast.

도 6은 본 발명의 기술적 사상에 의한 일 실시예에 따른 헬로우 패킷 수신 절차에 관한 흐름도이다.6 is a flowchart illustrating a hello packet reception procedure according to an embodiment of the present invention.

도 2 내지 도 6을 참조하면, 네트워크 스택(210)의 물리계층에서 헬로우 패킷을 수신(S610)한 경우, 신호 품질 계산 모듈(220)은 네트워크 스택(210)에서 전달받은 수신 헬로우 패킷에 대한 신호 품질을 측정한다. S610 단계에서 헬로우 패킷이 네트워크 스택(210)에 수신되고, 최종적으로 라우팅 패킷 송수신 모듈(270)에서 헬로우 패킷을 넘겨받아 인접 노드 관리 모듈(230)로 전달한다. 인접 노드 관리 모듈(230)은 수신된 헬로우 패킷을 파싱하고 해석하여, 헬로우 패킷 내에 포함된 송신지 1 홉 인접 노드들에 대한 송수신 신호 품질을 추출한다. 즉, 인접 노드 관리 모듈(230)은 헬로우 패킷에 대한 수신 신호 품질 측정값을 신호 품질 계산 모듈(220)로부터 전달받고, 헬로우 패킷에서 인접 노드에 대한 송수신 신호 품질 값을 추출함으로써 모든 인접 노드와의 송수신 신호 품질 정보를 알 수 있게 된다(S620). 그리고, 인접 노드 관리 모듈(230) 상기 추출된 헬로우 패킷에 대한 수신 신호 품질 값과 상기 추출된 인접 노드에 대한 송수신 신호 품질 값을 인접 노드 테이블에 갱신할 수 있다(S630). 상기 헬로우 패킷에서 추출한 인접 노드에 대한 송수신 신호 품질 값들은 제 1 라우팅 모듈(260)에 전달되어 위상 테이블이 갱신될 수 있다(S640). 이러한 각 노드는 상기 헬로우 패킷의 주기적인 송수신을 통하여 이웃 노드의 신호 품질 변화를 인지하며, 상기 인접 노드 테이블을 갱신할 수 있다. 2 to 6, when the hello packet is received at the physical layer of the network stack 210 (S610), the signal quality calculation module 220 receives a signal for the received hello packet received from the network stack 210. Measure the quality. In step S610, the hello packet is received by the network stack 210, and finally receives the hello packet from the routing packet transmission / reception module 270 and delivers the hello packet to the neighbor node management module 230. The neighbor node management module 230 parses and interprets the received hello packet, and extracts the transmit / receive signal quality for the source 1 hop neighbor nodes included in the hello packet. That is, the neighbor node management module 230 receives the received signal quality measurement value for the hello packet from the signal quality calculation module 220 and extracts the transmit / receive signal quality value for the neighbor node from the hello packet to all neighbor nodes. Transmission and reception signal quality information can be known (S620). The neighbor node management module 230 may update the received signal quality value of the extracted hello packet and the transmitted / received signal quality value of the extracted neighbor node to the neighbor node table (S630). Transmitting / receiving signal quality values of neighbor nodes extracted from the hello packet may be transmitted to the first routing module 260 to update a phase table (S640). Each node recognizes a signal quality change of a neighbor node through periodic transmission and reception of the hello packet, and may update the neighbor node table.

도 7은 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 업데이트 패킷 송신 방법에 관한 흐름도이다.7 is a flowchart illustrating a routing update packet transmission method according to an embodiment of the present invention.

도 2 내지 도 7을 참조하면, 상기 내부 라우팅 영역을 결정하는 홉 수를 설정하고, 상기 설정 정보는 제 1 라우팅 모듈(240)로 전달되어 제 1 라우팅 모듈(240)은 상기 라우팅 업데이트 패킷의 송신 홉 수를 결정할 수 있다(S710). 상기 설정된 홉 수(N 홉)이내에서만 프로액티브 라우팅이 수행될 수 있다. 제 1 라우팅 모듈(240)은 라우팅 업데이트 패킷 전송 주기인지 판단하여(S720), 제 1 라우팅 모듈(240)은 상기 라우팅 업데이트 패킷 전송 주기인 경우 상기 라우팅 업데이트 패킷을 생성할 수 있다. 즉, 상기 라우팅 업데이트 패킷 전송 주기인 경우, 제 1 라우팅 모듈(240)은 상기 인접 노드 테이블에서 각각의 이웃 노드별 송신 및 수신 신호 품질을 추출하여 상기 라우팅 업데이트 패킷을 생성할 수 있다(S730). 그리고, 제 1 라우팅 모듈(240)은 상기 생성된 라우팅 업데이트 메시지를 라우팅 패킷 송수신 모듈(270)로 전달할 수 있다. 라우팅 패킷 송수신 모듈(270)은 상기 라우팅 업데이트 패킷의 TTL(Time To Live)을 N(N은 자연수)으로 설정하고 최대 N 홉까지 라우팅 업데이트 패킷을 브로드캐스트할 수 있다(S740).2 to 7, a hop number for determining the internal routing area is set, and the setting information is transmitted to the first routing module 240 so that the first routing module 240 transmits the routing update packet. The number of hops may be determined (S710). Proactive routing can be performed only within the set hop number (N hops). The first routing module 240 determines whether the routing update packet transmission period is performed (S720), and the first routing module 240 may generate the routing update packet when the routing update packet transmission period is performed. That is, in the routing update packet transmission period, the first routing module 240 may generate the routing update packet by extracting the transmission and reception signal quality of each neighbor node from the neighbor node table (S730). In addition, the first routing module 240 may transfer the generated routing update message to the routing packet transmission / reception module 270. The routing packet transmission / reception module 270 may set a time to live (TTL) of the routing update packet to N (N is a natural number) and broadcast the routing update packet up to N hops (S740).

도 8은 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 업데이트 패킷 수신 방법에 관한 흐름도이다.8 is a flowchart illustrating a routing update packet receiving method according to an embodiment of the present invention.

도 2 내지 도 8을 참조하면, 라우팅 패킷 송수신 모듈(270)이 네트워크 스택(210)으로부터 수신한 상기 라우팅 업데이트 패킷을 제 1 라우팅 모듈(240)로 전달하고, 제 1 라우팅 모듈(240)은 라우팅 업데이트 패킷을 수신하여 파싱한다(S810). 제 1 라우팅 모듈(240)은 상기 파싱된 결과를 바탕으로 상기 라우팅 업데이트 패킷 내에 포함된 송신 노드의 인접 노드들에 대한 송수신 신호 품질을 추출한다(S820). 제 1 라우팅 모듈(240)은 상기 추출된 송신 노드의 인접 노드들에 대한 송수신 신호 품질을 위상 테이블에 갱신한다(S830). 제 1 라우팅 모듈(240)은 추출된 송신 노드의 인접 노드들에 대한 송수신 신호 품질을 신호 품질-링크 품질 변환(SNR-to-BER) 테이블을 통하여 전송 속도별 링크 품질로 변환한다(S840). 상기 신호 품질-링크 품질 변환 테이블은 각 전송속도에 대하여 신호 품질과 링크 품질의 관계에 대한 수학적 계산식을 이용하여 생성되거나, 신호 품질과 링크 품질의 관계에 대하여 반복 시뮬레이션을 통한 결과 또는 구현 후 실제 시스템 시험을 통한 결과를 이용하여 생성될 수 있다. 제 1 라우팅 모듈(240)은 전송 속도별로 계산된 송수신 링크 품질을 각각 송수신 경로 비용으로 변환한다(S850). 제 1 라우팅 모듈(240)은 각 전송 속도 별로 위상테이블에 포함된 모든 노드에 대하여 전송 가능 경로들 중에서 홉당 평균 전송 비용(이하 "경로 비용"이라 함)이 가장 작은 경로들을 선택한다(S860). 다만, 제 1 라우팅 모듈(240)은 상기 경로들 중 송신 임계값 미만의 링크를 포함하지 않는 경로를 우선적으로 선택할 수 있다. 제 1 라우팅 모듈(240)은 상기 라우팅 테이블 내 모든 노드들에 대한 전송 속도별 최소 비용 경로들을 라우팅 테이블에 업데이트할 수 있다(S870). 2 to 8, the routing packet transceiving module 270 delivers the routing update packet received from the network stack 210 to the first routing module 240, and the first routing module 240 performs routing. The update packet is received and parsed (S810). The first routing module 240 extracts the transmission / reception signal quality of neighboring nodes of the transmitting node included in the routing update packet based on the parsed result (S820). The first routing module 240 updates the transmission / reception signal quality of neighboring nodes of the extracted transmission node in the phase table (S830). The first routing module 240 converts the transmission / reception signal quality of neighboring nodes of the extracted transmission node into link quality for each transmission rate through a signal quality-link quality conversion (SNR-to-BER) table (S840). The signal quality-link quality conversion table is generated by using a mathematical calculation of the relationship between signal quality and link quality for each transmission rate, or through real-time results or implementation through iterative simulation on the relationship between signal quality and link quality. Can be generated using the results of the test. The first routing module 240 converts the transmission / reception link quality calculated for each transmission rate into transmission / reception path costs (S850). The first routing module 240 selects paths having the smallest average transmission cost per hop (hereinafter, referred to as "path cost") among the transmittable paths for all nodes included in the phase table for each transmission speed (S860). However, the first routing module 240 may preferentially select a path that does not include a link below the transmission threshold value among the paths. The first routing module 240 may update the minimum cost paths according to transmission speeds for all nodes in the routing table in the routing table (S870).

이후 주기적인 라우팅 업데이트 패킷 송수신 과정을 통하여 각 노드는 자신을 중심으로 N 홉 내의 모든 노드에 대한 최소 비용 경로를 계산하고, 상기 프로액티브 라우팅 기반의 상기 라우팅 테이블을 갱신하여 패킷 송신 시 이용할 수 있다.Thereafter, through the periodic routing update packet transmission and reception process, each node may calculate a minimum cost path for all nodes within N hops around the node, update the routing table based on the proactive routing, and use the packet during transmission.

도 9는 본 발명의 기술적 사상에 의한 일 실시예에 따른 라우팅 방법의 흐름도이다.9 is a flowchart illustrating a routing method according to an embodiment of the inventive concept.

도 2 내지 도 9를 참조하면, 어플리케이션 계층에서 패킷이 생성되어 네트워크 스택에 전송을 요구하면, 네트워크 스택(210) 내 IP 계층에서 라우팅 관리 모듈(260)에 전송 경로 설정을 요청할 수 있다(S910). 제 1 라우팅 모듈(240)은 이상에서 설명한 것과 같이 전송 속도별 최소 비용 경로가 저장된 라우팅 테이블에 상기 전송 경로가 존재하는지 판단한다(S920). S920 단계의 판단 결과 상기 라우팅 테이블에 상기 전송 경로가 존재하는 경우, 제 1 라우팅 모듈(240)은 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하는 상기 최소 비용 경로들 중 기준 품질 이상이고 경로 비용이 최소인 경로를 최종 경로로 결정할 수 있다(S930). S920 단계의 판단 결과 상기 라우팅 테이블에 상기 전송 경로가 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 이상에서 설명한 것과 같이 수신된 적어도 하나의 상기 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성할 수 있다(S940), 그리고, 제 2 라우팅 모듈(250)은 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S950). 2 to 9, when a packet is generated in the application layer and requests transmission to the network stack, the IP layer in the network stack 210 may request the routing management module 260 to set up a transmission path (S910). . As described above, the first routing module 240 determines whether the transmission path exists in the routing table in which the minimum cost path for each transmission rate is stored (S920). When the transmission path exists in the routing table as a result of the determination in step S920, the first routing module 240 uses the routing table to determine a path quality higher than a reference quality among the minimum cost paths corresponding to the transmission path. The smallest path may be determined as the final path (S930). When the transmission path does not exist in the routing table as a result of the determination in step S920, the second routing module 250 transmits the transmission path corresponding to the transmission path using the received at least one path response packet as described above. The minimum cost path for each rate may be generated (S940), and the second routing module 250 may determine a path having the minimum or higher path quality among the generated minimum cost paths as the final path. It may be (S950).

S930 단계에서 최소 비용 경로들 중 상기 기준 품질 이상인 경로가 없는 경우에는, S940 단계 및 S950 단계를 수행할 수도 있고 경로 설정을 실패한 것으로 판단하여 네트워크 스택(210) 내 상기 IP 계층으로 결로 설정 실패 메시지를 전달할 수도 있다. 또한, S950 단계에서 상기 최종 경로로 결정될 경로가 존재하지 않는 경우, 다른 경로 응답 패킷이 있으면 다른 경로 응답 패킷에 대하여 다시 S940 단계 및 S950 단계를 수행할 수 있고, 다른 경로 응답 패킷이 없으면 경로 설정을 실패한 것으로 판단하여 네트워크 스택(210) 내 상기 IP 계층으로 결로 설정 실패 패킷을 전달할 수도 있다. If there are no paths that are equal to or greater than the reference quality among the least cost paths in step S930, steps S940 and S950 may be performed, and it is determined that the path setting has failed, and a condensation setting failure message is sent to the IP layer in the network stack 210. You can also pass it. In addition, when there is no path to be determined as the final path in step S950, if there is another path response packet, steps S940 and S950 may be performed again with respect to another path response packet. The packet may be determined to have failed, and a condensation setting failure packet may be delivered to the IP layer in the network stack 210.

도 10은 도 9의 S930 단계의 일 실시예를 보다 구체적으로 도시한 흐름도이다.FIG. 10 is a flowchart illustrating an embodiment of step S930 of FIG. 9 in more detail.

도 2 내지 도 10을 참조하면, S920 단계의 판단 결과 상기 라우팅 테이블에 상기 전송 경로가 존재하는 경우, 제 1 라우팅 모듈(240)은 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출할 수 있다(S1010). 제 1 라우팅 모듈(240)은 송신 패킷이 실시간성 패킷(예를 들어, VoIP 음성 패킷)인지 판단하여(S1020), 상기 송신 패킷이 상기 실시간성 패킷인 경우 제 1 라우팅 모듈(240)은 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1030). 음성통신과 같은 실시간 통신을 하기 위해서는 실시간 데이터들이 지연 한계 시간을 만족해야 한다. 만약 이러한 지연 한계 시간을 만족시키지 못할 경우에는 서비스의 질이 떨어지거나 지연 한계 시간을 훨씬 초과하여 수신된 데이터는 아예 필요가 없어지게 된다. 따라서, 실시간 패킷인 경우에는 지연 한계 시간을 만족해야 한다. 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 제 1 라우팅 모듈(240)은 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1040).2 to 10, when the transmission path exists in the routing table as a result of the determination in step S920, the first routing module 240 corresponds to the transmission path using the routing table and is equal to or greater than the reference quality. The minimum cost paths may be extracted (S1010). The first routing module 240 determines whether the transmission packet is a real time packet (for example, a VoIP voice packet) (S1020), and when the transmission packet is the real time packet, the first routing module 240 extracts the packet. Among the minimum cost paths, a path satisfying a transmission time limit and having the minimum path cost may be determined as the final path (S1030). For real time communication such as voice communication, real time data must satisfy the delay limit time. If the delay time is not satisfied, the received data is no longer needed because of poor service quality or far exceeding the delay time. Therefore, in case of a real time packet, the delay limit time must be satisfied. If the transmission packet is not the real-time packet, the first routing module 240 may determine a path having the minimum path cost among the extracted paths as the final path (S1040).

만약, S1030 단계를 수행하려 하는데 상기 최종 경로로 결정될 경로가 없는 경우 또는 S1040 단계를 수행하려 하는데 상기 최종 경로로 결정될 경로가 없는 경우, 라우팅 정책에 따라 제 1 라우팅 모듈(240)은 도 9의 S940 단계 및 S950 단계를 수행할 수도 있고 경로 설정을 실패한 것으로 판단하여 네트워크 스택(210) 내 상기 IP 계층으로 결로 설정 실패 패킷을 전달할 수도 있다. If there is no path to be determined as the final path when the step S1030 is to be performed or if there is no path to be determined as the final path when the step S1040 is performed, the first routing module 240 according to the routing policy is performed by S940 of FIG. 9. Step S950 may be performed or it may be determined that path establishment has failed, and a condensation establishment failure packet may be delivered to the IP layer in the network stack 210.

도 11은 도 9의 S930 단계의 다른 일 실시예를 보다 구체적으로 도시한 흐름도이다.FIG. 11 is a flowchart illustrating another embodiment of step S930 of FIG. 9 in more detail.

도 2 내지 도 11을 참조하면, 제 1 라우팅 모듈(240)은 현재 전송 속도를 기준으로 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로가 라우팅 테이블에 존재하는지 판단할 수 있다(S1110). 상기 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로가 상기 라우팅 테이블에 존재하는 경우, 제 1 라우팅 모듈(240)은 송신 패킷이 실시간성 패킷인지 판단한다(S1120). 상기 송신 패킷이 상기 실시간성 패킷으로 판단된 경우, 제 1 라우팅 모듈(240)은 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하는지 판단한다(S1130). S1130 단계에서 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하는 경우 또는 S1120 단계에서 송신 패킷이 실시간성 패킷이 아닌 경우, 제 1 라우팅 모듈(240)은 상기 현재 전송 속도에 대응하는 상기 최소 비용 경로를 저장하고(S1140), 상기 현재 전송 속도보다 낮은 전송 속도가 존재하는지 판단한다(S1150). 상기 현재 전송 속도보다 낮은 전송 속도가 존재하는 경우, 제 1 라우팅 모듈(240)은 상기 현재 전송 속도보다 낮은 전송 속도에 대하여 S1110 단계 내지 S1150 단계를 다시 수행한다. 또한, S1110 단계에서 상기 전송 경로에 대응하고 상기 기준 품질 이상인 최소 비용 경로가 상기 라우팅 테이블에 존재하지 않는 경우 또는 S1130 단계에서 상기 최소 비용 경로의 전송 시간이 상기 전송 제한 시간을 만족하지 않는 경우, S1160 단계를 수행할 수 있다.2 through 11, the first routing module 240 may determine whether a minimum cost path corresponding to a transmission path based on a current transmission speed and having a reference quality or more exists in the routing table (S1110). If a minimum cost path corresponding to the transmission path and equal to or greater than a reference quality exists in the routing table, the first routing module 240 determines whether the transmission packet is a real-time packet (S1120). If the transmission packet is determined to be the real-time packet, the first routing module 240 determines whether the transmission time of the minimum cost path satisfies the transmission time limit (S1130). When the transmission time of the minimum cost path satisfies the transmission time limit in step S1130 or when the transmission packet is not a real-time packet in step S1120, the first routing module 240 determines the minimum cost corresponding to the current transmission rate. The path is stored (S1140), and it is determined whether there is a transmission rate lower than the current transmission rate (S1150). If there is a transmission rate lower than the current transmission rate, the first routing module 240 performs steps S1110 to S1150 again for the transmission rate lower than the current transmission rate. In addition, when the minimum cost path corresponding to the transmission path in step S1110 and above the reference quality does not exist in the routing table or when the transmission time of the minimum cost path does not satisfy the transmission time limit in step S1130, S1160. The steps can be performed.

상기 현재 전송 속도보다 낮은 전송 속도가 더 이상 존재하지 않는 경우, 제 1 라우팅 모듈(240)은 S1140 단계에서 저장된 최소 비용 경로들 중 경로 비용이 최소인 경로를 최종 경로로 결정하고(S1170), 상기 결정된 최종 경로에 대응하는 전송 속도를 최종 전송 속도로 결정할 수 있다(S1180).If a transmission rate lower than the current transmission rate no longer exists, the first routing module 240 determines a path having a minimum path cost among the minimum cost paths stored in step S1140 as the final path (S1170). The transmission rate corresponding to the determined final path may be determined as the final transmission rate (S1180).

만약, S1170 단계를 수행하려고 하는데 저장된 최소 비용 경로가 없는 경우, 제 1 라우팅 모듈(240)은 도 9의 S940 단계 및 S950 단계를 수행할 수도 있고 경로 설정을 실패한 것으로 판단하여 네트워크 스택(210) 내 상기 IP 계층으로 결로 설정 실패 패킷을 전달할 수도 있다.If there is no stored minimum cost path, the first routing module 240 may perform steps S940 and S950 of FIG. 9, and determines that the path setting has failed. The condensation setting failure packet may be delivered to the IP layer.

도 12는 도 9의 S940 단계 및 S950 단계의 일 실시예를 보다 구체적으로 도시한 흐름도이다.FIG. 12 is a flowchart illustrating an embodiment of steps S940 and S950 of FIG. 9 in more detail.

도 2 내지 도 12를 참조하면, S920 단계의 판단 결과 상기 라우팅 테이블에 상기 전송 경로가 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 상기 프로액티브 라우팅 영역인 N 홉 이내에 목적지가 존재하지 않는다고 판단하고, 망 전체로 목적지 노드까지의 경로를 찾기 위한 경로 요청 패킷을 브로드캐스트할 수 있다(S1210). 상기 목적지 노드 또는 상기 목적지 노드까지의 경로를 알고 있는 노드가 경로 요청 패킷을 수신하면, 상기 목적지 노드까지의 경로를 포함하는 경로 응답 패킷을 상기 경로 요청 패킷을 송신한 노드로 유니캐스트 송신할 수 있다. 상기 경로 요청 패킷을 송신한 노드는 상기 목적지 노드 또는 상기 목적지 노드까지의 경로를 알고 있는 노드로부터 상기 경로 응답 패킷을 수신할 수 있다(S1220). 제 2 라우팅 모듈(250)은 상기 경로 응답 패킷을 이용하여 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성할 수 있다(S1230). 즉, 제 2 라우팅 모듈(250)은 상기 경로 응답 패킷을 이용하여 전송 경로에 포함하는 노드간 신호 품질(예를 들어, 신호대잡음비) 값을 상기 신호 품질-링크 품질 변환 테이블을 통하여 전송 속도별 링크 품질(예를 들어, 비트에러율) 값으로 변환하고, 상기 전송 속도별 링크 품질 값을 상기 전송 속도별 최소 비용 경로를 생성할 수 있다. 이상에서 설명한 S1210 단계 내지 S1230 단계는 도 9의 S940 단계에 대응될 수 있다.2 to 12, when it is determined in step S920 that the transmission path does not exist in the routing table, the second routing module 250 determines that no destination exists within N hops as the proactive routing area. In operation S1210, a route request packet for finding a route to a destination node as a whole may be broadcast. When the node that knows the route to the destination node or the destination node receives the route request packet, the route response packet including the route to the destination node may be unicast to the node that sent the route request packet. . The node that has transmitted the path request packet may receive the path response packet from the node that knows the path to the destination node or the destination node (S1220). The second routing module 250 may generate a minimum cost path for each transmission rate corresponding to the transmission path using the path response packet in operation S1230. That is, the second routing module 250 uses the path response packet to link the inter-node signal quality (eg, signal-to-noise ratio) value included in the transmission path through the signal quality-link quality conversion table. Converting to a quality (for example, bit error rate) value, the link quality value for each transmission rate may generate a minimum cost path for each transmission rate. Steps S1210 to S1230 described above may correspond to step S940 of FIG. 9.

제 2 라우팅 모듈(250)은 상기 생성된 최소 비용 경로들 중 기준 품질 이상인 최소 비용 경로들을 추출할 수 있다(S1240). 제 2 라우팅 모듈(250)은 송신 패킷이 실시간성 패킷(예를 들어, VoIP 음성 패킷)인지 판단하여(S1250), 상기 송신 패킷이 상기 실시간성 패킷인 경우 제 2 라우팅 모듈(250)은 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1260). 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 제 2 라우팅 모듈(250)은 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1270). S1240 단계 내지 S1270 단계는 도 9의 S950 단계에 대응될 수 있다.The second routing module 250 may extract minimum cost paths having a reference quality or higher among the generated minimum cost paths (S1240). The second routing module 250 determines whether the transmission packet is a real time packet (for example, a VoIP voice packet) (S1250), and when the transmission packet is the real time packet, the second routing module 250 extracts the packet. Among the minimum cost paths, a path that satisfies the transmission time limit and has the minimum path cost may be determined as the final path (S1260). If the transmission packet is not the real-time packet, the second routing module 250 may determine a path having the minimum path cost among the extracted paths as the final path (S1270). Steps S1240 to S1270 may correspond to step S950 of FIG. 9.

만약, S1260 단계를 수행하려 하는데 상기 최종 경로로 결정될 경로가 없는 경우 또는 S1270 단계를 수행하려 하는데 상기 최종 경로로 결정될 경로가 없는 경우, 제 2 라우팅 모듈(250)은 수신된 다른 경로 응답 패킷이 존재하는지 확인한다. 상기 다른 경로 응답 패킷이 존재하면, 제 2 라우팅 모듈(250)은 상기 다른 경로 응답 패킷에 대하여 S1230 단계부터 다시 수행할 수 있다. 만약, 상기 다른 경로 응답 패킷이 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 경로 설정 실패로 판단하고 경로 설정 요청을 한 네트워크 스택(210)의 IP 계층으로 경로 설정 실패를 알리는 패킷을 전달할 수 있다.If there is no path to be determined as the final path when the step S1260 is to be performed or if there is no path to be determined as the final path, the second routing module 250 receives another path response packet. Check it. If the other path response packet exists, the second routing module 250 may perform the other path response packet again from step S1230. If the other route response packet does not exist, the second routing module 250 determines that the route establishment has failed and may transmit a packet indicating the route establishment failure to the IP layer of the network stack 210 that has made the route request. have.

도 13은 도 9의 S940 단계 및 S950 단계의 다른 일 실시예를 보다 구체적으로 도시한 흐름도이다.FIG. 13 is a flowchart illustrating another embodiment of steps S940 and S950 of FIG. 9 in more detail.

도 2 내지 도 13을 참조하면, 도 13의 S1310 단계 내지 S1330 단계는 도 12의 S1210 단계 내지 S1230 단계에 대응되므로, S1310 단계 내지 S1330 단계에 대한 구체적인 설명은 생략한다.2 to 13, since steps S1310 to S1330 of FIG. 13 correspond to steps S1210 to S1230 of FIG. 12, detailed descriptions of steps S1310 to S1330 are omitted.

S1330 단계에서 제 2 라우팅 모듈(250)이 전송 속도별 최소 비용 경로를 생성한 경우, 제 2 라우팅 모듈(250)은 상기 생성된 최소 비용 경로들 중 현재 전송 속도를 기준으로 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로가 존재하는지 판단할 수 있다(S1340). 상기 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로가 존재하는 경우, 제 2 라우팅 모듈(250)은 송신 패킷이 실시간성 패킷인지 판단한다(S1350). 상기 송신 패킷이 상기 실시간성 패킷으로 판단된 경우, 제 2 라우팅 모듈(250)은 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하는지 판단한다(S1360). S1360 단계에서 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하는 경우 또는 S1350 단계에서 송신 패킷이 실시간성 패킷이 아닌 경우, 제 2 라우팅 모듈(250)은 상기 현재 전송 속도에 대응하는 상기 최소 비용 경로를 저장하고(S1370), 상기 현재 전송 속도보다 낮은 전송 속도가 존재하는지 판단한다(S1380). 상기 현재 전송 속도보다 낮은 전송 속도가 존재하는 경우, 제 2 라우팅 모듈(250)은 상기 현재 전송 속도보다 낮은 전송 속도에 대하여 S1340 단계 내지 S1370 단계를 다시 수행한다. 또한, S1340 단계에서 상기 생성된 최소 비용 경로들 중 상기 전송 경로에 대응하고 상기 기준 품질 이상인 최소 비용 경로가 존재하지 않는 경우 또는 S1360 단계에서 상기 최소 비용 경로의 전송 시간이 상기 전송 제한 시간을 만족하지 않는 경우, S1390 단계를 수행할 수 있다.When the second routing module 250 generates the minimum cost path for each transmission rate in step S1330, the second routing module 250 corresponds to the transmission path based on the current transmission speed among the generated minimum cost paths, and It may be determined whether there is a minimum cost path that is greater than or equal to the quality (S1340). If there is a minimum cost path corresponding to the transmission path and above the reference quality, the second routing module 250 determines whether the transmission packet is a real-time packet (S1350). If the transmission packet is determined to be the real-time packet, the second routing module 250 determines whether the transmission time of the minimum cost path satisfies the transmission time limit (S1360). When the transmission time of the minimum cost path satisfies the transmission time limit in step S1360 or when the transmission packet is not a real-time packet in step S1350, the second routing module 250 determines the minimum cost corresponding to the current transmission speed. The path is stored (S1370) and it is determined whether there is a transmission rate lower than the current transmission rate (S1380). If there is a transmission rate lower than the current transmission rate, the second routing module 250 performs steps S1340 to S1370 again for the transmission rate lower than the current transmission rate. In addition, when there is no minimum cost path corresponding to the transmission path among the generated minimum cost paths in step S1340 and above the reference quality or in step S1360, the transmission time of the minimum cost path does not satisfy the transmission time limit. If not, step S1390 may be performed.

상기 현재 전송 속도보다 낮은 전송 속도가 더 이상 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 S1370 단계에서 저장된 최소 비용 경로들 중 경로 비용이 최소인 경로를 최종 경로로 결정하고(S1393), 상기 결정된 최종 경로에 대응하는 전송 속도를 최종 전송 속도로 결정할 수 있으며, MAC 연동 부모듈(330)을 통하여 상기 결정된 최종 전송 속도로 물리계층를 제어할 수 있다(S1395). S1340 단계 내지 S1395 단계는 도 9의 S950 단계에 대응될 수 있다.If a transmission rate lower than the current transmission rate no longer exists, the second routing module 250 determines a path having the lowest path cost among the minimum cost paths stored in operation S1370 as the final path (S1393). The transmission rate corresponding to the determined final path may be determined as the final transmission rate, and the physical layer may be controlled at the determined final transmission rate through the MAC interworking submodule 330 (S1395). Steps S1340 to S1395 may correspond to step S950 of FIG. 9.

만약, S1393 단계를 수행하려고 하는데 저장된 최소 비용 경로가 없는 경우, 제 2 라우팅 모듈(250)은 수신된 다른 경로 응답 패킷이 존재하는지 확인한다. 상기 다른 경로 응답 패킷이 존재하면, 제 2 라우팅 모듈(250)은 상기 다른 경로 응답 패킷에 대하여 S1330 단계부터 다시 수행할 수 있다. 만약, 상기 다른 경로 응답 패킷이 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 경로 설정 실패로 판단하고 경로 설정 요청을 한 네트워크 스택(210)의 IP 계층으로 경로 설정 실패를 알리는 패킷을 전달할 수 있다.If there is no stored minimum cost path, the second routing module 250 checks whether another received path response packet exists. If the other path response packet exists, the second routing module 250 may perform the other path response packet again from step S1330. If the other route response packet does not exist, the second routing module 250 determines that the route establishment has failed and may transmit a packet indicating the route establishment failure to the IP layer of the network stack 210 that has made the route request. have.

도 14는 본 발명의 기술적 사상에 의한 일 실시예에 따른 애드혹 네트워크 토폴로지를 도시한 도면이다.14 is a diagram illustrating an ad hoc network topology according to an embodiment of the present invention.

도 14에 도시된 노드들은 도 1에 도시된 노드들과 동일한 위치 관계를 나타낸다고 가정한다. 도 1과 관련하여 설명한 것과 같이, 종래 기술에서는 노드 C가 노드 A의 전파 통달 거리 경계 부근에 위치하므로 노드 A와 노드 C의 링크 품질이 일정 수준 이하의 임계값을 갖게 되고, 상기 링크 품질이 일정 수준 이상의 링크들로 구성되는 경로(PT1)이 라우팅 경로로써 선택되게 된다. 이에 라우팅 경로로 선택된 경로(PT1)은 경로(PT2)에 비하여 데이터 패킷 중계 횟수가 1번에서 2번으로 증가하게 된다. 데이터 패킷 중계 시에는 채널 점유를 위한 경쟁이 필요하며, 충돌을 회피를 위한 MAC 백오프로 인하여 시간 지연이 발생한다. 또한 무선 채널에 복수의 노드가 동시 접근에 의한 충돌을 완벽히 배제하지 못 한다. 이로 인하여 중계 홉 수가 증가시 중계에 따르는 비용 역시 증가하게 되며, 이러한 한 문제를 고려할 때 라우팅 경로 계산시 중계 홉 수 증가를 최소화해야 한다.It is assumed that the nodes shown in FIG. 14 represent the same positional relationship as the nodes shown in FIG. 1. As described with reference to FIG. 1, in the prior art, since node C is located near the propagation distance boundary of node A, the link quality between node A and node C has a threshold below a certain level, and the link quality is constant. A path PT1 consisting of more than one level of links is selected as the routing path. Accordingly, in the path PT1 selected as the routing path, the number of data packet relays increases from one to two times compared to the path PT2. When data packets are relayed, contention for channel occupancy is required, and time delay occurs due to MAC backoff to avoid collisions. In addition, multiple nodes do not completely exclude collision due to simultaneous access to a wireless channel. As a result, when the number of relay hops increases, the cost of relaying also increases. In consideration of such a problem, it is necessary to minimize the increase in the number of relay hops when calculating the routing path.

모든 노드들은 복수의 전송 속도들을 지원하며, 전송속도 1이 전송속도 2보다 빠르다고 가정하고, 전송속도 1의 통달거리는 1410이고, 전송속도 2의 통달거리는 1450이라고 가정한다. 또한, 노드 A와 노드 C의 신호 품질(예를 들어, 신호대잡음비)에 대하여 현재 전송속도 1 기준으로 노드 C는 노드 A의 전파 통달 거리 경계 부근에 위치하여 일정 수준의 임계값 이하의 링크 품질(예를 들어, 비트에러율)을 갖는다. 이에 더해 노드 A와 노드 C의 신호 품질에 대하여 전송속도 1보다 낮은 수준의 전송속도 2 기준으로는 전파 통달 거리가 확대되어 노드 C는 노드 A의 신호가 안정적인 부분에 위치하여 노드 A와 노드 C의 링크 품질이 일정 수준의 임계값 이상의 링크 품질을 갖는다고 가정한다.All nodes support a plurality of transmission speeds, and assuming that transmission speed 1 is faster than transmission speed 2, it is assumed that transmission speed 1 is 1410 and transmission speed 2 is 1450. Also, with respect to the signal quality (for example, signal-to-noise ratio) of node A and node C, at the current transmission rate 1, node C is located near the boundary of propagation distance of node A, so that link quality below a certain threshold ( For example, bit error rate. In addition, based on the transmission rate 2, which is lower than the transmission rate 1, with respect to the signal quality of the node A and the node C, the radio communication distance is extended, and the node C is located at the stable part of the node A, so that the node A and the node C Assume that the link quality has a link quality above a certain threshold.

이러한 가정을 바탕으로 본 발명의 실시 예에 대하여 설명한다. 본 발명에서는 전송 속도별로 일정 수준 이하의 링크품질을 갖는 링크를 네트워크 토폴로지에 포함하지 않는다. 즉, 특정 링크의 신호품질에 대한 전송속도 1의 링크 품질이 일정 수준의 임계값 이하의 값을 갖는 경우 전송속도 1 기준의 토폴로지에서는 제외되지만, 전송속도 2의 링크 품질이 상기 임계값 이상의 값을 갖는 경우 토폴로지에 포함된다. 사용자 설정에 의해 설정된 프로액티브 라우팅 영역 안의 모든 노드는 라우팅 업데이트 패킷에 포함된 이웃 노드와의 송신 및 수신 신호 품질을 주기적인 브로드캐스트를 통하여 공유하고, 수신한 라우팅 업데이트 패킷 내의 이웃 노드와의 송신 및 수신 신호 품질로부터 전송 속도별 링크 품질을 계산하여, 일정 수준 임계값 이상의 링크 품질을 갖는 링크들에 대해 각 전송 속도별로 토폴로지 테이블에 포함하게 된다. 이렇게 라우팅 업데이트 패킷에 의해 전송 속도별 토폴로지 테이블이 갱신되면, 전송 속도별로 각 노드까지의 라우팅 경로를 재계산하여 전송 속도별 라우팅 테이블을 갱신한다.Based on these assumptions, an embodiment of the present invention will be described. In the present invention, a link having a link quality of less than a predetermined level for each transmission speed is not included in the network topology. That is, if the link quality of transmission rate 1 with respect to the signal quality of a specific link has a value below a certain threshold, it is excluded from the topology based on transmission rate 1, but the link quality of transmission rate 2 is higher than the threshold. If yes, it is included in the topology. All nodes in the proactive routing area set by the user setting share the transmission and reception signal quality with neighboring nodes included in the routing update packet through periodic broadcast, and transmit and receive with the neighbor node in the received routing update packet. The link quality for each transmission rate is calculated from the received signal quality and included in the topology table for each transmission rate for links having a link quality above a predetermined threshold. When the topology table for each transmission rate is updated by the routing update packet, the routing table for each transmission rate is updated by recalculating the routing paths to each node for each transmission rate.

노드 A에서 노드 F로 데이터를 전달하고자 할 때, 먼저 모든 전송 속도 기준의 라우팅 테이블을 검색한다. 현재 설정된 전송속도 1에 해당하는 라우팅 테이블에는 노드 A에서 노드 C로의 신호 품질이 전송속도 1 기준으로는 일정 수준 임계값 이하의 링크 품질을 가지기 때문에, 토폴로지 정보에서 제외되어 라우팅 경로 계산에서 제외되기 때문에 노드 A에서 노드 F까지의 경로는 경로(PT1)이 설정된다. 전송속도 2에 해당하는 라우팅 테이블에는 노드 A에서 노드 C로의 신호 품질이 전송 속도2 기준으로는 일정 수준 임계값 이상의 링크 품질을 가지기 때문에, 토폴로지 정보에 포함된다. 따라서 라우팅 경로 계산에 포함되어 노드 A에서 노드 F까지의 경로는 경로(PT2)가 설정된다. 현재 전송속도 1에서의 라우팅 테이블에 저장된 노드 A에서 노드 F까지의 경로는 3홉이므로, 다른 전송 속도에서 3홉보다 작은 경로가 존재하는지 확인한다. 전송속도 2에서의 라우팅 테이블에 노드 A에서 노드 F까지의 경로가 2홉인 라우팅 경로가 존재하므로, 이 경로로 전송이 가능한지 확인한다. When we want to pass data from node A to node F, we first look up the routing table for all transmission rates. Since the signal quality from node A to node C has a link quality of less than a certain threshold value based on the transmission rate 1, the routing table corresponding to the transmission rate 1 is excluded from the topology information and excluded from the routing path calculation. The path PT1 is set from node A to node F. The routing table corresponding to transmission rate 2 is included in the topology information because the signal quality from node A to node C has a link quality higher than a predetermined threshold value based on transmission rate 2. Therefore, the path from node A to node F is included in the routing path calculation and the path PT2 is set. Since the path from node A to node F stored in the routing table at the current rate 1 is 3 hops, it is checked whether there is a path smaller than 3 hops at the other transmission rate. Since there is a two-hop routing path from node A to node F in the routing table at transmission rate 2, make sure that transmission is possible on this path.

만약 전송하고자 하는 패킷이 전송 제한 시간이 존재하는 실시간성 패킷이라면, 전송속도 2에서의 라우팅 경로인 경로(PT2)에 대해 패킷 전송 소요 시간과 MAC에서의 평균 백오프시간을 적용하여 총 전송 시간을 계산한다. 계산 결과 실시간 전송 제한 시간을 만족하는 시간이라면 전송속도2에서의 노드 A에서 노드 F까지의 라우팅 경로를 최종 경로로 설정하고, 네트워크 스택 내의 IP 계층으로 전달한다. 만약 계산 결과 실시간 전송 제한 시간을 만족하지 못한다면, 전송속도 1에서의 노드 A에서 노드 F까지의 라우팅 경로를 최종 경로로 설정하고, 네트워크 스택 내의 IP 계층으로 설정한 라우팅 경로를 전달한다. If the packet to be transmitted is a real-time packet with a transmission time limit, the total transmission time is determined by applying the packet transmission time and the average backoff time in the MAC for the path (PT2), which is the routing path at transmission rate 2. Calculate As a result of the calculation, if the time limit satisfies the real-time transmission time limit, the routing path from node A to node F at transmission rate 2 is set as the final path and transferred to the IP layer in the network stack. If the calculation does not satisfy the real-time transmission timeout, the routing path from node A to node F at transmission rate 1 is set as the final path, and the routing path set to the IP layer in the network stack is delivered.

도 15는 경로 요청 패킷 전달 과정을 설명하기 위한 네트워크 토폴로지 에 관한 도면이다.15 is a diagram illustrating a network topology for explaining a path request packet forwarding process.

도 15를 참조하면, 도 15는 프로액티브 라우팅 영역이 2홉으로 설정된 경우에 대하여 도시하고 있다. 다만, 본 발명이 이 경우에 한정되는 것은 아니며 프로액티브 라우팅 영역을 N 홉(N은 자연수)으로 설정할 수도 있다. 제 1 영역(1510)은 노드 I 기준의 프로액티브 라우팅 영역으로써 노드 I에 대한 라우팅 정보를 공유할 수 있는 영역이며, 제 2 영역(1550)는 노드 E 기준의 프로액티브 라우팅 영역으로써 노드 E에 대한 라우팅 정보를 공유할 수 있는 영역이다. Referring to FIG. 15, FIG. 15 illustrates a case where the proactive routing area is set to two hops. However, the present invention is not limited to this case, and the proactive routing area may be set to N hops (N is a natural number). The first area 1510 is a proactive routing area based on node I, and can share routing information for node I, and the second area 1550 is a proactive routing area based on node E, for node E. This is an area where routing information can be shared.

노드 E가 노드 I로 데이터를 전송하고자 할 때(노드 E에서 노드 I 방향으로의 경로를 정방향 경로라 하고, 노드 I에서 노드 E 방향으로서 경로를 역방향 경로라 함), 노드 I는 노드 E의 프로액티브 라우팅 영역에 바깥에 존재하여 라우팅 테이블에 존재하지 않는다. 따라서, 노드 E는 노드 I의 경로를 탐색하고자 경로 요청 (RREQ) 패킷을 브로드캐스트한다. 경로 탐색 대상인 노드 I 자신 또는 노드 I의 경로 정보를 알고 있는 노드까지 브로드캐스트되면서 거치는 중간 노드들은 경로 요청 패킷 수신시 이전 노드과의 라우팅 정보를 경로 요청 패킷에 추가시킨다. 즉, 노드 E가 발송한 경로 요청 패킷 브로드캐스트 패킷을 노드 B가 수신하면, 노드 B는 자신이 알고 있는 노드 E에서 노드 B로의 링크에 대한 신호 품질 값을 경로 요청 패킷에 추가하고, 노드 E는 경로 요청 패킷을 다시 브로드캐스트한다. 브로드캐스트된 경로 요청 패킷은 노드 I 기준의 프로액티브 라우팅 영역 안에 있는 노드 D가 수신(경로 요청 패킷(RREQ 1)을 먼저 수신하였다고 가정)하게 되면 노드 I의 라우팅 경로를 알고 있기 때문에 더 이상 경로 요청 패킷을 브로드캐스트하지 않는다.When node E wants to transfer data to node I (the path from node E to node I is called the forward path, and from node I to node E, the path is called the reverse path), node I is the node E's pro. It is outside the active routing area and does not exist in the routing table. Thus, node E broadcasts a route request (RREQ) packet to discover the path of node I. Intermediate nodes that are being routed while being broadcast to a node I, which is a route search target or to a node that knows the route information of the node I, add routing information with the previous node to the route request packet upon receiving the route request packet. That is, when node B receives a route request packet broadcast packet sent by node E, node B adds a signal quality value for the link from node E to node B, which it knows, to the route request packet. Rebroadcast the route request packet. The broadcasted route request packet is no longer a route request because node D in the proactive routing area of node I criteria (assuming that it received the route request packet (RREQ 1) first) knows the routing path of node I. Do not broadcast the packet.

도 16은 경로 응답 패킷 전달 과정을 설명하기 위한 네트워크 토폴로지 에 관한 도면이다.16 is a diagram illustrating a network topology for explaining a path response packet forwarding process.

도 16을 참조하면, 상기 경로 요청 패킷 수신 이후 노드 I는 경로 응답(RREP) 패킷을 생성하여 자신이 알고 있는 노드 I까지의 정방향 링크들(D-H, H-I)의 라우팅 정보와 경로 요청 패킷이 전달되는 과정에서 경유한 노드들의 정방향 링크들(E-C, E-A, A-D)의 라우팅 정보를 패킷에 포함시킨다. 이에 노드 E에서 노드 I까지의 정방향 링크들의 라우팅 경로가 완성되며, 포함되는 라우팅 정보는 노드 E에서 노드 I까지의 정방향 링크들의 신호 품질 값들이다. 노드 D는 경로 응답 패킷을 노드 E로 전달하여야 하나, 다음과 같은 이유로 브로드캐스트해야 한다. 일반적으로는 대칭링크를 가정하므로 경로 응답 패킷은 경로 요청 패킷 내에 포함된 경유 노드들에 대한 정방향 경로 정보를 이용하여 경로 요청 패킷 전송 경로의 역방향으로 경로 응답 패킷을 유니캐스트 전송을 하지만, 비대칭 링크에서는 경로 요청 패킷 정방향 경로의 역방향으로 유니캐스트 경로가 존재한다고 가정할 수 없기 때문에, 노드 D 기준의 프로액티브 라우팅 영역 밖에 있는 노드 E로 경로 응답 패킷을 전달하기 위해서는 브로드캐스트로 전송해야 한다. 노드 E 기준의 프로액티브 라우팅 영역 안에 존재하여 노드 E까지의 라우팅 정보를 알고 있는 노드가 브로드캐스트된 경로 응답 패킷을 최초 수신하면, 자신의 라우팅 테이블을 참조하여 경로 응답 패킷을 노드 E를 목적지로 하는 유니캐스트 전송을 한다.Referring to FIG. 16, after the path request packet is received, the node I generates a path response (RREP) packet to which routing information of the forward links DH and HI to the node I and the path request packet are delivered. Routing information of the forward links (EC, EA, AD) of the nodes passing through the process is included in the packet. This completes the routing path of the forward links from node E to node I, and the routing information included is the signal quality values of the forward links from node E to node I. Node D should forward the Path Response Packet to Node E, but broadcast it for the following reasons: In general, a symmetric link is assumed. Therefore, the path response packet unicasts the path response packet in the reverse direction of the path request packet transmission path by using forward path information on the passthru nodes included in the path request packet. Because the path request packet cannot be assumed to exist in the reverse direction of the forward path, it must be broadcast in order to deliver the path response packet to node E outside the proactive routing area of node D. When a node that is in a proactive routing area based on node E and knows routing information to node E first receives a broadcasted route response packet, the route response packet is referred to as its destination by referring to its own routing table. Unicast transmission.

일반적으로 비대칭 링크를 포함하는 네트워크 내에서는 경로 요청 패킷과 경로 응답 패킷 전송시 네트워크 전 영역을 대상으로 브로드캐스트 전송을 실시하지만, 경로 요청 패킷과 경로 응답 패킷을 브로드캐스트하다가 목적지 노드의 라우팅 정보를 알고 있는 영역 안의 노드가 수신하면 목적지까지 유니캐스트 전송을 하기 때문에 빈번한 브로드캐스트로 인한 오버헤드를 감소시킬 수 있다. In general, in a network including an asymmetric link, when a route request packet and a route response packet are transmitted, the broadcast is transmitted to the entire area of the network. However, while the route request packet and the route response packet are broadcast, the routing information of the destination node is known. When a node in a region receives a unicast transmission to the destination, the overhead of frequent broadcasts can be reduced.

프로액티브 라우팅 영역과 리액티브 라우팅 영역을 구분하여 주기적인 프로액티브 라우팅 제어 패킷의 브로드캐스트 전파 범위를 사용자에 의해 설정되는 프로액티브 라우팅 영역(N 홉)으로 제한하고, 브로드캐스트되는 리액티브 라우팅 제어 패킷 목적지의 프로액티브 라우팅 영역 안으로 전달되면 상기 설명한 바와 같이 프로액티브 라우팅 정보를 이용하여 유니캐스트 전송을 하기 때문에 라우팅 제어 패킷에 의한 오버헤드를 완화할 수 있다Distinguish between the proactive routing area and the reactive routing area to limit the broadcast propagation range of periodic proactive routing control packets to the proactive routing area (N hops) set by the user, and to broadcast the reactive routing control packets When delivered into the proactive routing area of the destination, since the unicast transmission is performed using the proactive routing information as described above, the overhead caused by the routing control packet can be alleviated.

도 17은 전송 제한 시간을 설명하기 위한 도면이다.17 is a diagram for explaining a transmission time limit.

도 17을 참조하면, BufferingTime(u)는 실시간 단위 데이터 u개를 버퍼링하는 시간이며 적용 코덱에 따라 달라진다. 또한, PlayingTime(u)는 실시간 단위 데이터 u개를 재생하는 시간이며 BufferingTime(u)와 동일한 시간이다. MacDelayAvgTime는 MAC에서의 백오프 평균 지연 시간, TxProcessingDelay는 MAC에서의 백오프 지연 시간 이후 모뎀에서의 송신 처리 지연시간, RxProcessingDelay는 모뎀에서의 수신 처리 지연시간이다. PacketTxTime(PacketSize(h,u),s)는 헤더 크기 h와 실시간 데이터 개수 u에 결정되는 패킷크기인 PacketSize(h,u)와 모뎀에서의 전송 속도 s에 의해 결정되는 패킷 전송 소요시간이다. 즉, 패킷 전송 소요시간은 주어진 패킷 크기와 모뎀 전송 속도에 대하여 송신측 노드의 모뎀 송신 처리 완료 후부터 수신측 노드의 모뎀 수신 처리 시작 전까지의 시간을 의미한다. Referring to FIG. 17, BufferingTime (u) is a time for buffering u real-time unit data and depends on the applied codec. In addition, PlayingTime (u) is a time for reproducing u real-time unit data and is the same time as BufferingTime (u). MacDelayAvgTime is the average backoff delay in the MAC, TxProcessingDelay is the transmission processing delay in the modem after the backoff delay in the MAC, and RxProcessingDelay is the reception processing delay in the modem. PacketTxTime (PacketSize (h, u), s) is a packet transmission time determined by PacketSize (h, u) which is a packet size determined by the header size h and the number of real-time data u and a transmission rate s in the modem. That is, the packet transmission time required means the time from the completion of the modem transmission processing of the sending node to the start of the modem reception processing of the receiving node for the given packet size and modem transmission speed.

그림 17에서 실시간 패킷의 2홉 통신을 위한 전송 제한 시간 범위를 결정하는 방법은 다음과 같다. 그림 17에서의 가정은 2홉 통신에 필요한 3개의 노드만 존재하고, MAC 백오프 지연은 1번만 발생하며, 실시간 패킷만 전송한다는 가정이다. 송신 노드에서 버퍼링 완료된 후, 실시간 데이터 패킷이 2홉 통신하는데 걸리는 시간은 2번의 MAC 백오프 지연과 송신처리 지연, 2번의 패킷 전송 시간을 더한 시간이다. 이전에 보내진 실시간 패킷이 목적지 노드(2홉)에서 수신한 후에 다음 패킷 전송한다고 가정하면 중계 노드가 실시간 패킷을 수신 후 송신이 완료된 후에 송신노드가 MAC 백오프 지연 후 송신을 해야 한다. 따라서, 실시간 데이터 버퍼링 시간 후, MAC 백오프 지연 후 송신을 해야 중계 노드에서의 송신과 충돌하지 않는다. 이러한 사항을 고려하면, 실시간 데이터 패킷이 2홉 통신하는데 걸리는 시간이 실시간 데이터 버퍼링 시간과 송신 노드에서의 MAC 백오프 지연 시간을 더한 시간이 보다 작아야 목적지 노드가 실시간 데이터를 연속적으로 재생할 수 있다. 도 17에서 T_REF는 실시간 2 홉 통신을 위한 전송 제한 시간 범위를 도시한 것이다. 앞에서 설명한 가정 하에서 실시간 데이터의 2홉 통신이 가능하기 위한 전송 제한 시간은 아래의 수학식 1과 같다.In Figure 17, the method to determine the transmission timeout range for two-hop communication of real-time packets is as follows. The assumption in Figure 17 is that there are only three nodes needed for two-hop communication, the MAC backoff delay occurs only once, and only real-time packets are sent. After buffering is completed at the transmitting node, the time taken for real-time data packets to communicate two hops is two times of MAC backoff delay, transmission processing delay, and two packet transmission times. Assuming that the previously sent real-time packet is received by the destination node (2 hops) and then transmits the next packet, the transmitting node should transmit after the MAC backoff delay after transmission is completed after receiving the real-time packet. Therefore, after real time data buffering time, transmission after MAC backoff delay does not conflict with transmission at the relay node. Considering this, the destination node can continuously play the real-time data only when the time taken for the two-hop communication of the real-time data packet is less than the real-time data buffering time plus the MAC backoff delay time at the transmitting node. In FIG. 17, T_REF shows a transmission timeout range for real-time two hop communication. Under the assumptions described above, a transmission time limit for enabling two-hop communication of real-time data is shown in Equation 1 below.

[수학식 1][Equation 1]

Figure 112010080331426-pat00001
Figure 112010080331426-pat00001

앞에서의 가정을 현실적인 가정으로 변경하면, 2홉 통신에 개입하는 3개 노드 외에 다른 노드들도 존재하여 채널 점유 경쟁이 필요하며, 이에 MAC 백오프 지연 횟수가 평균 b번 발생하며, 실시간 패킷 통신 중에 다른 일반 데이터 패킷도 동시에 송수신 가능하기 위해서 다른 실시간 패킷이 아닌 일반 패킷이 채널을 점유하여 전송 하는 시간을 반영하여 실시간 패킷 전송 시간의 a배의 시간이 필요하다는 현실적인 가정으로 변경한다.If the previous assumption is changed to a realistic assumption, in addition to the three nodes involved in the two-hop communication, there are other nodes that require channel occupancy competition, which causes the average number of MAC backoff delays to occur b times. In order to be able to send and receive other general data packets at the same time, it is changed to a realistic assumption that a time that is a times of the real time packet transmission time is needed to reflect the time that the general packet occupies the channel and not the other real time packet.

이러한 가정 하에 실시간 데이터의 2홉 통신이 가능하기 위한 전송 제한 시간을 만족하기 위한 조건은 아래의 수학식 2와 같다. Under this assumption, a condition for satisfying a transmission time limit for enabling two-hop communication of real-time data is shown in Equation 2 below.

[수학식 2][Equation 2]

Figure 112010080331426-pat00002
Figure 112010080331426-pat00002

같은 방식으로 동일한 가정 하에 3홉 이상 실시간 데이터 통신이 가능하기 위한 전송 제한 시간을 만족하기 위한 조건은 아래의 수학식 3과 같다.In the same manner, a condition for satisfying a transmission time limit for enabling real-time data communication for at least three hops under the same assumption is expressed by Equation 3 below.

[수학식 3]&Quot; (3) "

Figure 112010080331426-pat00003
Figure 112010080331426-pat00003

따라서, 실시간 단위 데이터 개수인 u, 패킷 내의 헤더 오버헤드 크기 s, MAC 지연 평균 시간과 네트워크 망이 운용되는 상황에 따라 실시간 패킷 전송되는 동안 얼마나 많은 일반 패킷을 수용할 수 있는지를 정하는 인자인 a와 네트워크 망의 노드 밀집도를 고려하는 인자인 b가 정해지면, 전송 속도 s인자에 변경된 전송 속도를 대입하여 위 부등식을 만족하는지에 따라 변경된 전송속도에서의 경로가 사용가능한지 결정될 수 있다.Accordingly, a and u, which determine the number of real-time unit data, the header overhead size s in the packet, the average delay time of the MAC, and the number of normal packets that can be accommodated during the real-time packet transmission according to the network operating conditions, When b, a factor that considers node density in a network, is determined, it is determined whether the path at the changed transmission rate is available according to whether the above inequality is satisfied by substituting the changed transmission rate into the transmission rate s factor.

이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, optimal embodiments have been disclosed in the drawings and the specification. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

Claims (20)

N 홉(N은 자연수) 내 모든 노드에 대한 전송 속도별 최소 비용 경로를 라우팅 테이블에 저장하는 단계;
상기 라우팅 테이블에 전송 경로가 존재하는 경우, 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로들을 추출하고, 송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하며, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계;
상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하는 단계; 및
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계;
상기 전송 제한 시간은 일반 패킷이 채널을 통하여 전송하는 시간, MAC 백오프 지연 시간 및 MAC 백오프 지연 횟수를 고려하여 결정되는 시간으로, 상기 전송 제한 시간은 실시간 데이터 버퍼링 시간을 초과하지 않는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
Storing the least cost paths per transmission rate for all nodes in N hops (N is a natural number) in a routing table;
If there is a transmission path in the routing table, the minimum cost paths corresponding to the transmission path and higher than a reference quality are extracted using the routing table, and if the transmission packet is a real-time packet, among the extracted minimum cost paths. The final path satisfies a transmission time limit and has the minimum path cost, and determines the final path as the final path. When the transmission packet is not the real-time packet, the final path is one of the extracted paths. Determining to;
Generating a minimum cost path for each transmission rate corresponding to the transmission path using the received at least one path response packet when the transmission path does not exist or the path above the reference quality does not exist in the routing table; And
Determining the final path among the generated least cost paths that is equal to or greater than the reference quality and the path cost is minimum;
The transmission time limit is a time determined by considering a time that a normal packet is transmitted through a channel, a MAC backoff delay time, and a MAC backoff delay number, and the transmission time limit does not exceed a real time data buffering time. Routing method in an ad hoc network.
삭제delete 삭제delete 삭제delete 삭제delete 제1항에 있어서, 상기 전송 속도별 최소 비용 경로를 생성하는 단계는,
상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 1 노드에서 경로 요청 패킷을 브로드 캐스트하는 단계;
목적지까지의 경로를 알고 있는 적어도 하나의 제 2 노드가 상기 경로 요청 패킷을 수신한 경우, 상기 적어도 하나의 제 2 노드는 상기 목적지까지의 경로를 포함하는 적어도 하나의 상기 적어도 하나의 경로 응답 패킷을 생성하여 상기 제 1 노드로 송신하는 단계; 및
상기 제 1 노드에서 상기 적어도 하나의 경로 응답 패킷을 수신하고, 상기 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 속도별 최소 비용 경로를 생성하는 단계를 구비하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
The method of claim 1, wherein the generating of the least cost path for each transmission rate comprises:
Broadcasting a route request packet at a first node when there is no route above the reference route or the reference quality in the routing table;
When at least one second node that knows a route to a destination has received the route request packet, the at least one second node sends at least one of the at least one route response packet including a route to the destination. Generating and transmitting to the first node; And
Receiving the at least one path response packet at the first node and generating the least cost path for each transmission rate using the at least one path response packet. .
제1항에 있어서, 상기 생성된 최소 비용 경로들 중 상기 최종 경로를 결정하는 단계는,
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하는 단계;
송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계; 및
상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계를 구비하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
The method of claim 1, wherein determining the final one of the generated least cost paths comprises:
Extracting the least cost paths that are above the reference quality of the generated least cost paths;
If the transmission packet is a real-time packet, determining a final path that satisfies a transmission time limit among the extracted minimum cost paths and has the minimum path cost; And
And if the transmission packet is not the real time packet, determining the final path among the extracted paths with the lowest path cost as the final path.
삭제delete 제1항에 있어서, 상기 생성된 최소 비용 경로들 중 상기 최종 경로를 결정하는 단계는,
(a) 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하는지 판단하는 단계;
(b) 상기 기준 품질 이상인 최소 비용 경로가 존재하고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하는 단계;
(c) 상기 기준 품질 이상인 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하는 단계; 및
(d) 상기 변경된 전송 속도를 기준으로 상기 (a) 단계 내지 상기 (c) 단계를 수행하는 단계를 구비하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
The method of claim 1, wherein determining the final one of the generated least cost paths comprises:
(a) determining whether there is the least cost path that is above the reference quality among the generated least cost paths;
(b) if there is a minimum cost path that is equal to or greater than the reference quality and the path cost of the minimum cost path is less than the path cost of the final path, determining the minimum cost path corresponding to the current transmission rate as the final path;
(c) changing the current transmission rate if there is no minimum cost path above the reference quality or if the path cost of the minimum cost path is greater than the path cost of the final path; And
and (d) performing steps (a) to (c) based on the changed transmission rate.
제1항에 있어서, 상기 생성된 최소 비용 경로들 중 상기 최종 경로를 결정하는 단계는,
(a) 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하는지 판단하는 단계;
(b) 상기 기준 품질 이상인 최소 비용 경로가 존재하는 경우 상기 송신 패킷이 실시간성 패킷인지 판단하는 단계;
(c) 상기 송신 패킷이 실시간성 패킷이고 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하며 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하는 단계;
(d) 상기 송신 패킷이 실시간성 패킷이 아니고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하는 단계;
(e) 상기 기준 품질 이상인 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하는 단계; 및
(f) 상기 변경된 전송 속도를 기준으로 상기 (a) 단계 내지 상기 (e) 단계를 수행하는 단계를 구비하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
The method of claim 1, wherein determining the final one of the generated least cost paths comprises:
(a) determining whether there is the least cost path that is above the reference quality among the generated least cost paths;
(b) determining whether the transmission packet is a real-time packet when there is a minimum cost path that is greater than or equal to the reference quality;
(c) if the transmission packet is a real-time packet and the transmission time of the minimum cost path satisfies a transmission time limit and the path cost of the minimum cost path is less than the path cost of the final path, corresponding to the current transmission rate. Determining a minimum cost path as the final path;
(d) if the transmission packet is not a real-time packet and the path cost of the minimum cost path is less than the path cost of the final path, determining the minimum cost path corresponding to the current transmission rate as the final path;
(e) the current transmission rate if there is no minimum cost path above the reference quality, or if the transmission time of the minimum cost path does not meet a transmission time limit or if the path cost of the minimum cost path is greater than or equal to the path cost of the final path; Changing the; And
(f) performing the steps (a) to (e) on the basis of the changed transmission rate.
N 홉(N은 자연수) 내 모든 노드에 대한 전송 속도별 최소 비용 경로가 저장된 라우팅 테이블에 전송 경로가 존재하는 경우, 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하고, 송신 패킷이 실시간성 패킷인 경우 상기 추출된 최소 비용 경로들 중 상기 기준 품질 이상이고 전송 제한 시간을 만족하며 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하고, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 상기 추출된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 제 1 라우팅 모듈; 및
상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하고, 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 제 2 라우팅 모듈;
상기 전송 제한 시간은 일반 패킷이 채널을 통하여 전송하는 시간, MAC 백오프 지연 시간 및 MAC 백오프 지연 횟수를 고려하여 결정되는 시간으로, 상기 전송 제한 시간은 실시간 데이터 버퍼링 시간을 초과하지 않는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.
When a transmission path exists in a routing table in which a minimum cost path for each node in every N hops (N is a natural number) is stored, the minimum cost path corresponding to the transmission path using the routing table and above the reference quality. If the transmission packet is a real-time packet, and determines that the final path of the extracted minimum cost paths are greater than the reference quality and satisfies the transmission time limit and the path cost is the minimum path, and the transmission packet is A first routing module for determining, as not the real-time packet, the final path that has a path quality equal to or greater than the reference quality among the extracted minimum cost paths and has a minimum path cost; And
When the transmission path does not exist in the routing table or there is no path higher than the reference quality, a minimum cost path for each transmission rate corresponding to the transmission path is generated using the received at least one path response packet, and A second routing module that determines, as the final path, a path having a minimum or higher path quality among the generated minimum cost paths;
The transmission time limit is a time determined by considering a time that a normal packet is transmitted through a channel, a MAC backoff delay time, and a MAC backoff delay number, and the transmission time limit does not exceed a real time data buffering time. Routing system in an ad hoc network.
삭제delete 삭제delete 삭제delete 삭제delete 제11항에 있어서, 상기 제 2 라우팅 모듈은,
상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 1 노드에서 경로 요청 패킷을 브로드 캐스트하고 목적지까지의 경로를 알고 있는 적어도 하나의 제 2 노드가 생성하여 송신한 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 속도별 최소 비용 경로를 생성하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.
The method of claim 11, wherein the second routing module,
At least one generated and transmitted by at least one second node that broadcasts a route request packet at a first node and knows a route to a destination when there is no route in the routing table that is greater than the transmission path or the reference quality. The routing system in the ad hoc network, characterized in that for generating the minimum cost path for each transmission rate using the path response packet of the.
제11항에 있어서, 상기 제 2 라우팅 모듈은,
송신 패킷이 실시간성 패킷인 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 전송 제한 시간을 만족하며 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하고, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.
The method of claim 11, wherein the second routing module,
When the transmission packet is a real-time packet, a path having the minimum quality path that is greater than or equal to the reference quality and satisfies a transmission time limit and whose path cost is minimum is determined as the final path, and the transmission packet is the real-time packet. If not, the routing system in the ad hoc network, characterized in that the final path of the minimum cost paths generated above the reference quality and the path cost is the minimum.
삭제delete 제11항에 있어서, 상기 제 2 라우팅 모듈은,
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하고,
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하여 상기 최종 경로를 결정하기 위한 동작을 다시 수행하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.
The method of claim 11, wherein the second routing module,
If there is the least cost path that is greater than or equal to the reference quality among the generated least cost paths and the path cost of the minimum cost path is less than the path cost of the final path, the final least cost path corresponding to the current transmission rate is determined. Determined by the path,
Determining the final path by changing the current transmission rate when the minimum cost path that is greater than or equal to the reference quality among the generated minimum cost paths does not exist or the path cost of the minimum cost path is greater than or equal to the path cost of the final path. Routing method in an ad hoc network, characterized in that for performing the operation again.
제11항에 있어서, 상기 제 2 라우팅 모듈은,
현재 전송 속도를 기준으로 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하는 경우 상기 송신 패킷이 실시간성 패킷인지 판단하고,
상기 송신 패킷이 실시간성 패킷이고 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하며 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하고,
상기 송신 패킷이 실시간성 패킷이 아니고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하며,
상기 현재 전송 속도를 기준으로 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.
The method of claim 11, wherein the second routing module,
Determining whether the transmission packet is a real-time packet when there is the minimum cost path that is equal to or greater than the reference quality among the generated minimum cost paths based on a current transmission rate,
If the transmission packet is a real-time packet and the transmission time of the minimum cost path satisfies a transmission time limit and the path cost of the minimum cost path is less than the path cost of the final path, the minimum cost path corresponding to the current transmission rate Is determined as the final path,
If the transmission packet is not a real-time packet and the path cost of the minimum cost path is less than the path cost of the final path, the minimum cost path corresponding to the current transmission rate is determined as the final path,
Based on the current transmission rate, the minimum cost path that is greater than or equal to the reference quality among the generated minimum cost paths does not exist, or the transmission time of the minimum cost path does not satisfy a transmission time limit or the path cost of the minimum cost path is If the path cost of the final path is greater than or equal to, changing the current transmission rate.
KR1020100123831A 2010-12-06 2010-12-06 Routing method and system in ad-hoc network considering transmission speed KR101049081B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100123831A KR101049081B1 (en) 2010-12-06 2010-12-06 Routing method and system in ad-hoc network considering transmission speed

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100123831A KR101049081B1 (en) 2010-12-06 2010-12-06 Routing method and system in ad-hoc network considering transmission speed

Publications (1)

Publication Number Publication Date
KR101049081B1 true KR101049081B1 (en) 2011-07-15

Family

ID=44923572

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100123831A KR101049081B1 (en) 2010-12-06 2010-12-06 Routing method and system in ad-hoc network considering transmission speed

Country Status (1)

Country Link
KR (1) KR101049081B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190135808A (en) * 2018-05-29 2019-12-09 국방과학연구소 Method of routing for a node using a single wireless interface in a multi-channel ad-hoc network and apparatus therefor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070081228A (en) * 2006-02-10 2007-08-16 삼성전자주식회사 Method and apparatus for forwarding station informaion in wireless mesh network
KR20080067254A (en) * 2007-01-15 2008-07-18 엘지전자 주식회사 Communication method in a wireless network, communication method of a mesh point in a wireless network, and a mesh point
US7706340B2 (en) 2006-04-13 2010-04-27 The Mitre Corporation Reliable neighbor node discovery

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070081228A (en) * 2006-02-10 2007-08-16 삼성전자주식회사 Method and apparatus for forwarding station informaion in wireless mesh network
US7706340B2 (en) 2006-04-13 2010-04-27 The Mitre Corporation Reliable neighbor node discovery
KR20080067254A (en) * 2007-01-15 2008-07-18 엘지전자 주식회사 Communication method in a wireless network, communication method of a mesh point in a wireless network, and a mesh point

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190135808A (en) * 2018-05-29 2019-12-09 국방과학연구소 Method of routing for a node using a single wireless interface in a multi-channel ad-hoc network and apparatus therefor
KR102075720B1 (en) 2018-05-29 2020-02-10 국방과학연구소 Method of routing for a node using a single wireless interface in a multi-channel ad-hoc network and apparatus therefor

Similar Documents

Publication Publication Date Title
Teo et al. Interference-minimized multipath routing with congestion control in wireless sensor network for high-rate streaming
JP4714274B2 (en) System and method for increasing the capacity of a wireless communication network using multiple radios
JP4505454B2 (en) System and method for improving overall performance of a wireless communication network
KR100830364B1 (en) System and method for selecting stable routes in wireless networks
US7751332B2 (en) Data routing method and apparatus
US9380513B2 (en) Reducing broadcast duplication in hybrid wireless mesh protocol routing
JP2006526937A (en) Optimal routing in ad hoc wireless communication networks
US20060239207A1 (en) Combined load balancing for overlay and ad hoc networks
WO2017020619A1 (en) Routing method and device
MX2009002655A (en) Selecting a leader node for an ad hoc network based on services.
WO2010133023A1 (en) Method, base station and terminal for sending packet data
WO2007140698A1 (en) A method for transmitting data and an apparatus, a system there of
JP2009081854A (en) Adaptive gateway discovery method and gateway
EP3229528B1 (en) Method, device and system for establishing on-demand route
CN110831006B (en) Ad hoc network system and data transmission method thereof
Kim et al. An ad-hoc routing protocol with minimum contention time and load balancing
Lemmon et al. Geographic forwarding and routing for ad-hoc wireless network: A survey
JP2009260720A (en) Route control method, communication system and communication apparatus
Miao et al. Study on research challenges and optimization for internetworking of hybrid MANET and satellite networks
KR101049081B1 (en) Routing method and system in ad-hoc network considering transmission speed
KR102026641B1 (en) Communication system via the satellite communications network
Abolhasan et al. LPAR: an adaptive routing strategy for MANETs
Junnarkar et al. Novel quality of service (qos) improvement routing protocol for manet using ant colony optimization
KR101049082B1 (en) Routing method and system in ad-hoc network considering mac collision
JP2005252496A (en) Path control method, and packet transmission device utilizing the same

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20140421

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150522

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160615

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180515

Year of fee payment: 8