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 PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/026—Details of "hello" or keep-alive messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-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
Description
본 발명은 라우팅(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
네트워크 스택(210)은 계층별 패킷화, 경로 결정 기능, 전송 충돌 회피 기능을 이용하여 데이터를 송수신할 수 있다. 라우팅 패킷 송수신 모듈(270) 또는 응용계층에서 데이터 전송 요청 시 네트워크 스택(210)은 패킷화를 하고, 라우팅 관리 모듈(260)에서 전송 경로 설정 요청을 하면 네트워크 스택(210)은 라우팅 경로를 설정하여 이웃 노드로 전달한다. 패킷 수신 시 네트워크 스택(210)은 목적지에 따라 수신 또는 중계를 한다. 만약, 네트워크 스택(210)의 IP 주소가 목적지인 경우에는, 패킷이 라우팅 업데이트 패킷이면 네트워크 스택(210)은 라우팅 패킷 송수신 모듈(270)로 라우팅 업데이트 패킷을 전달하고, 패킷이 일반 패킷이면 네트워크 스택(210)은 응용계층으로 일반 패킷을 전달한다. The
신호 품질 계산 모듈(220)은 주기적으로 수신되는 헬로우(Hello) 패킷을 이용하여 이웃 노드의 신호 품질을 측정할 수 있다. 예를 들어, 상기 신호 품질은 수신된 헬로우 패킷에 대한 신호 품질로써 신호대잡음비(Signal-to-Noise Ratio ; SNR)를 의미할 수 있다. 일반적으로 상기 신호 품질이 높을수록 링크 품질인 비트에러율(Bit Error Rate ; BER)이 낮아지고 전송 성공 확률이 높아지며, 상기 신호 품질이 낮을수록 상기 비트에러율이 높아지며 상기 전송 성공 확률이 낮아진다. 신호 품질 계산 모듈(220)에서 측정된 상기 신호 품질은 인접 노드 관리 모듈(230)로 전달되고, 최종적으로 라우팅 모듈(240)에서의 위상 테이블에 업데이트되며, 이 정보는 라우팅 관리 모듈(250)의 전송 속도별 라우팅 테이블에 저장되는 최소 비용 경로 계산 시에 이용된다.The signal
인접 노드 관리 모듈(230)은 헬로우 패킷의 주기적인 송신과 이웃 노드가 발송한 헬로우 패킷의 수신을 통하여 이웃 노드와의 송수신 신호 품질 정보를 인접 노드 테이블에 갱신한다. 구체적으로는 헬로우 패킷 수신시 신호 품질 계산 모듈(220)에서 측정된 이웃 노드로부터의 수신 신호 품질 정보와 헬로우 패킷 내에 포함된 이웃 노드에서 측정된 자신의 송신 신호 품질 정보를 인접 노드 테이블에 갱신한다. 헬로우 패킷 수신 시 인접 노드 테이블이 갱신된 후, 인접 노드 테이블 내 이웃 노드와의 송수신 신호 품질 정보를 헬로우 패킷에 포함하여 주기적으로 이웃 노드에 1홉 브로드캐스트한다. 인접 노드 관리 모듈은 이러한 헬로우 패킷의 송수신 과정에 의하여 이웃 노드간의 신호 품질 변화를 공유한다.The neighbor
제 1 라우팅 모듈(240)은 인접노드 관리 모듈(230)이 관리하는 인접노드 테이블을 참조하여 이웃 노드와의 송수신 신호 품질 정보를 포함하는 라우팅 업데이트 패킷을 생성한 후 라우팅 패킷 송수신 모듈(270)에 전달하고 라우팅 패킷 송수신 모듈(270)이 네트워크 스택(210)에 송신 요청을 함으로써, 프로액티브(Proactive) 라우팅 영역으로 설정된 N 홉(N은 자연수) 반경 내의 노드들에 주기적으로 브로드캐스트한다. 상기 라우팅 업데이트 패킷 수신 시 제 1 라우팅 모듈(240)은 라우팅 테이블 내의 위상 테이블을 갱신한다. 상기 N홉 반경 내의 모든 노드가 주기적으로 브로드캐스트함으로써 각 노드의 제 1 라우팅 모듈(240)은 N 홉 반경 내의 모든 노드에 대한 송수신 신호 품질 변화를 공유하게 된다. 제 1 라우팅 모듈(240)에서 관리되는 위상 테이블이 갱신될 때마다, 라우팅 관리 모듈(260)은 프로액티브 라우팅 영역 내 모든 노드에 대하여 전송 속도별 최소 경로를 계산하여 상기 라우팅 테이블을 갱신한다. The
패킷 송신 시 패킷의 목적지 노드가 라우팅 테이블에 존재하지 않는 경우, 즉 목적지 노드까지의 홉수가 송신 노드로부터 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
상기 목적지 노드 또는 상기 목적지 노드의 경로 정보를 알고 있는 노드는 상기 경로 응답 패킷을 상기 경로 요청 패킷을 발송한 노드로 전달하여야 하나, 비대칭 링크에서는 상기 경로 요청 패킷이 전송된 경로의 역방향으로 유니캐스트 경로가 존재한다고 가정할 수 없기 때문에, 상기 경로 요청 패킷을 발송한 노드가 상기 프로액티브 라우팅 영역 밖에 있는 경우 상기 경로 응답 패킷을 브로드캐스트로 전송해야 한다. 상기 경로 요청 패킷을 발송한 노드가 상기 프로액티브 라우팅 영역 안에 존재하고, 상기 경로 요청 패킷을 발송한 노드까지의 라우팅 정보를 알고 있는 노드가 브로드캐스트된 상기 경로 응답 패킷을 최초 수신하면, 상기 라우팅 테이블을 참조하여 상기 경로 응답 패킷을 상기 경로 요청 패킷의 송신 노드를 목적지로 하여 유니캐스트 전송을 한다.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
라우팅 관리 모듈(260)은 패킷 송신 시 네트워크 스택(210)으로부터 송신 패킷에 대한 경로 설정 요청 패킷을 받으면, 프로액티브(Proactive) 라우팅 방식에 의해 관리되는 상기 라우팅 테이블 내에 송신 요구 패킷의 목적지까지 경로가 존재하는지 검색한다. 검색 결과 존재하면 상기 라우팅 테이블에서 송신 비용이 가장 작은 경로를 네트워크 스택(210)에 전달한다. 만약 라우팅 테이블에 목적지까지의 경로가 존재하지 않으면, 제 2 라우팅 모듈(250)에 경로 요청을 한다. 제 2 라우팅 모듈(250)은 상기 경로 요청 패킷을 송신하고, 이후 상기 경로 응답 패킷을 수신하여 패킷 내의목적지 노드까지의 경로 정보를 라우팅 관리 모듈(260)로 전달한다. 라우팅 관리 모듈(260)은 상기 제 2 라우팅 모듈(250)로부터 전달받은 라우팅 정보들 중에서 송신 비용이 가장 작은 경로를 네트워크 스택(210)에 전달한다.When the
라우팅 패킷 송수신 모듈(270)은 라우팅 제어 패킷들의 네트워크 스택(210)으로의 송신 요청 및 네트워크 스택(210)으로부터 라우팅 제어 패킷의 수신 처리를 담당한다. 인접 노드 관리 모듈(230)로부터 상기 헬로우 패킷, 제 1 라우팅 모듈(240)로부터 라우팅 업데이트 패킷, 제 2 라우팅 모듈(250)로부터 상기 경로 요청 패킷과 상기 경로 응답 패킷을 전달받아 네트워크 스택(210)에 송신 요청을 수행한다. 반대로 네트워크 스택(210)으로부터 상기 라우팅 제어 패킷을 수신하여 상기 라우팅 제어 패킷 종류에 따라 인접 노드 관리 모듈(230), 제 1 라우팅 모듈(240) 또는 제 2 라우팅 모듈(250)로 전달한다.The routing packet transmit / receive
도 3은 도 2의 라우팅 관리 모듈(260)을 구체적으로 도시한 블록도이다.3 is a block diagram illustrating in detail the
도 2 및 도 3을 참조하면, 라우팅 관리 모듈(260)은 경로 요청 처리 부모듈(310), 전송속도 결정 부모듈(320), MAC 연동 부모듈(330), 제 1 연동 부모듈(340) 및 제 2 연동 부모듈(350)을 구비할 수 있다.2 and 3, the
경로 요청 처리 부모듈(310)은 네트워크 스택(210)으로부터 경로 설정 요청시 목적지 노드의 경로 정보가 상기 라우팅 테이블에 존재하는지 검사한다. 검사 결과 라우팅 정보가 존재하는 경우 프로액티브 라우팅 정보를 이용하여 경로를 결정하고, 검사 결과 라우팅 정보가 존재하지 않는 경우 리액티브 라우팅 정보에 의하여 경로를 결정한다. 상기 라우팅 테이블에 포함된 정보인 상기 프로액티브 라우팅 정보 또는 상기 경로 응답 패킷에 포함된 상기 리액티브 라우팅 정보를 전달받으면, 전송 속도 결정 부모듈(320)에 전송 속도를 고려하여 최적 경로를 계산하여 결정할 것을 요청한다. 전송 속도 결정 부모듈(320)로부터 결정된 최적 경로를 전달 받으면, 결정된 라우팅 정보를 네트워크 스택(210)에 전달하고, 최적 경로 결정시 설정된 전송 속도를 MAC 연동 부모듈(330)에 전달하여 물리계층(예를 들어, 모뎀)의 전송속도를 제어하도록 요청한다. The route
전송 속도 결정 부모듈(320)은 상기 리액티브 라우팅 정보 또는 상기 프로액티브 라우팅 정보를 이용하여 목적지까지 전송 속도를 고려한 최적 경로를 결정하고 결과를 경로 요청 처리 부모듈(310)로 전달한다. 프로액티브 라우팅 연동 부모듈(340)은 제 1 라우팅 모듈(240)에서 위상 정보를 참조하여 만들어진 전송 속도별 라우팅 테이블 정보를 상기 프로액티브 라우팅 정보로써 경로 요청 처리 부모듈(310)로 전달한다. 또한, 제 2 연동 부모듈(260)은 제 2 라우팅 모듈(250)에서 경로 요청 패킷 송신 및 경로 응답 패킷 수신에 의하여 생성된 목적지까지의 신호 품질 기반 경로 정보를 이용하여 만들어진 전송 속도별 경로 정보를 상기 리액티브 라우팅 정보로써 경로 요청 처리 부모듈(310)로 전달한다. The transmission
MAC 연동 부모듈(330)은 최적 경로 결정시 설정된 전송 속도를 물리계층에 반영하기 위하여 물리계층 제어를 담당하는 MAC 계층에 전달한다. The
도 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
내부 영역 라우팅과 외부 영역 라우팅의 구분은 사용자에 의해서 설정된 홉 수에 의해 결정될 수 있다. 사용자는 망 운용 개념 또는 망 구성 시나리오를 토대로 노드들의 밀집도를 고려하여 내부와 외부 라우팅 영역을 구분하는 홉 수를 결정한다. 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
도 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
도 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
도 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
이후 주기적인 라우팅 업데이트 패킷 송수신 과정을 통하여 각 노드는 자신을 중심으로 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
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
도 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
만약, 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
도 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
상기 현재 전송 속도보다 낮은 전송 속도가 더 이상 존재하지 않는 경우, 제 1 라우팅 모듈(240)은 S1140 단계에서 저장된 최소 비용 경로들 중 경로 비용이 최소인 경로를 최종 경로로 결정하고(S1170), 상기 결정된 최종 경로에 대응하는 전송 속도를 최종 전송 속도로 결정할 수 있다(S1180).If a transmission rate lower than the current transmission rate no longer exists, the
만약, S1170 단계를 수행하려고 하는데 저장된 최소 비용 경로가 없는 경우, 제 1 라우팅 모듈(240)은 도 9의 S940 단계 및 S950 단계를 수행할 수도 있고 경로 설정을 실패한 것으로 판단하여 네트워크 스택(210) 내 상기 IP 계층으로 결로 설정 실패 패킷을 전달할 수도 있다.If there is no stored minimum cost path, the
도 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
제 2 라우팅 모듈(250)은 상기 생성된 최소 비용 경로들 중 기준 품질 이상인 최소 비용 경로들을 추출할 수 있다(S1240). 제 2 라우팅 모듈(250)은 송신 패킷이 실시간성 패킷(예를 들어, VoIP 음성 패킷)인지 판단하여(S1250), 상기 송신 패킷이 상기 실시간성 패킷인 경우 제 2 라우팅 모듈(250)은 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1260). 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 제 2 라우팅 모듈(250)은 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정할 수 있다(S1270). S1240 단계 내지 S1270 단계는 도 9의 S950 단계에 대응될 수 있다.The
만약, 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
도 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
상기 현재 전송 속도보다 낮은 전송 속도가 더 이상 존재하지 않는 경우, 제 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
만약, S1393 단계를 수행하려고 하는데 저장된 최소 비용 경로가 없는 경우, 제 2 라우팅 모듈(250)은 수신된 다른 경로 응답 패킷이 존재하는지 확인한다. 상기 다른 경로 응답 패킷이 존재하면, 제 2 라우팅 모듈(250)은 상기 다른 경로 응답 패킷에 대하여 S1330 단계부터 다시 수행할 수 있다. 만약, 상기 다른 경로 응답 패킷이 존재하지 않는 경우, 제 2 라우팅 모듈(250)은 경로 설정 실패로 판단하고 경로 설정 요청을 한 네트워크 스택(210)의 IP 계층으로 경로 설정 실패를 알리는 패킷을 전달할 수 있다.If there is no stored minimum cost path, the
도 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
이러한 가정을 바탕으로 본 발명의 실시 예에 대하여 설명한다. 본 발명에서는 전송 속도별로 일정 수준 이하의 링크품질을 갖는 링크를 네트워크 토폴로지에 포함하지 않는다. 즉, 특정 링크의 신호품질에 대한 전송속도 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
노드 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
만약 전송하고자 하는 패킷이 전송 제한 시간이 존재하는 실시간성 패킷이라면, 전송속도 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
도 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
노드 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
[수학식 1][Equation 1]
앞에서의 가정을 현실적인 가정으로 변경하면, 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
[수학식 2][Equation 2]
같은 방식으로 동일한 가정 하에 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
[수학식 3]&Quot; (3) "
따라서, 실시간 단위 데이터 개수인 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)
상기 라우팅 테이블에 전송 경로가 존재하는 경우, 상기 라우팅 테이블을 이용하여 상기 전송 경로에 대응하고 기준 품질 이상인 최소 비용 경로들을 추출하고, 송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하며, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계;
상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하는 단계; 및
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계;
상기 전송 제한 시간은 일반 패킷이 채널을 통하여 전송하는 시간, 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.
상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 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. .
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로들을 추출하는 단계;
송신 패킷이 실시간성 패킷인 경우, 상기 추출된 최소 비용 경로들 중 전송 제한 시간을 만족하고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계; 및
상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우, 상기 추출된 경로들 중 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 단계를 구비하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.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.
(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.
(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.
상기 라우팅 테이블에 상기 전송 경로가 존재하지 않거나 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 수신된 적어도 하나의 경로 응답 패킷을 이용하여 상기 전송 경로에 대응하는 전송 속도별 최소 비용 경로를 생성하고, 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 제 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.
상기 라우팅 테이블에 상기 전송 경로 또는 상기 기준 품질 이상의 경로가 존재하지 않는 경우, 제 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.
송신 패킷이 실시간성 패킷인 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 전송 제한 시간을 만족하며 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하고, 상기 송신 패킷이 상기 실시간성 패킷이 아닌 경우 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상이고 상기 경로 비용이 최소인 경로를 상기 최종 경로로 결정하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.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.
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하고,
상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하여 상기 최종 경로를 결정하기 위한 동작을 다시 수행하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 방법.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.
현재 전송 속도를 기준으로 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하는 경우 상기 송신 패킷이 실시간성 패킷인지 판단하고,
상기 송신 패킷이 실시간성 패킷이고 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하며 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하고,
상기 송신 패킷이 실시간성 패킷이 아니고 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용보다 작은 경우, 상기 현재 전송 속도에 대응하는 최소 비용 경로를 상기 최종 경로로 결정하며,
상기 현재 전송 속도를 기준으로 상기 생성된 최소 비용 경로들 중 상기 기준 품질 이상인 상기 최소 비용 경로가 존재하지 않거나 상기 최소 비용 경로의 전송 시간이 전송 제한 시간을 만족하지 않거나 상기 최소 비용 경로의 경로 비용이 상기 최종 경로의 경로 비용 이상인 경우, 상기 현재 전송 속도를 변경하는 것을 특징으로 하는 애드혹 네트워크에서의 라우팅 시스템.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.
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)
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)
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 |
-
2010
- 2010-12-06 KR KR1020100123831A patent/KR101049081B1/en active IP Right Grant
Patent Citations (3)
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)
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 |