KR101208400B1 - Node apparatus for mixed mode routing in rpl routing protocol and method thereof - Google Patents

Node apparatus for mixed mode routing in rpl routing protocol and method thereof Download PDF

Info

Publication number
KR101208400B1
KR101208400B1 KR1020110111561A KR20110111561A KR101208400B1 KR 101208400 B1 KR101208400 B1 KR 101208400B1 KR 1020110111561 A KR1020110111561 A KR 1020110111561A KR 20110111561 A KR20110111561 A KR 20110111561A KR 101208400 B1 KR101208400 B1 KR 101208400B1
Authority
KR
South Korea
Prior art keywords
routing
mode
node
address
message
Prior art date
Application number
KR1020110111561A
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 KR1020110111561A priority Critical patent/KR101208400B1/en
Application granted granted Critical
Publication of KR101208400B1 publication Critical patent/KR101208400B1/en

Links

Images

Classifications

    • 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/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PURPOSE: A mixed mode routing node in an RPL(routing protocol for low power lossy networks) routing protocol and method thereof are provided to construct an effective and flexible network according to a surrounding environment by embodying a mixed mode within a storing mode or a non-storing mode. CONSTITUTION: A DIO(data information object) message processing unit(108) converts the set downward routing mode according to the set downward routing mode conversion condition and the downward routing mode setting information of a DIO message. A DAO(data access object) message processing unit(110) updates a routing table or converts a parent address of a transit information option of the DAO message according to the target prefix of an RPL target option, a transmission address, and the downward routing mode. A data packet processing unit(112) transmits the data packet to a next node according to routing information. [Reference numerals] (102) Setting unit; (104) Packet creation unit; (106) Packet transmission and reception unit; (108) DIO message processing unit; (110) DAO message processing unit; (112) Data packet processing unit

Description

RPL 라우팅 프로토콜에서의 혼합 모드 라우팅 노드 및 방법{NODE APPARATUS FOR MIXED MODE ROUTING IN RPL ROUTING PROTOCOL AND METHOD THEREOF}Mixed Mode Routing Nodes and Methods in the RPC Routing Protocols {NODE APPARATUS FOR MIXED MODE ROUTING IN RPL ROUTING PROTOCOL AND METHOD THEREOF}

본 발명은 저전력 고손실 네트워크를 위한 RPL(IPv6 Routing Protocol for Low power and Lossy Networks) 라우팅 프로토콜에서 저장 모드(storing mode) 및 비저장 모드(non-storing mode)를 동시에 사용하기 위한 기술과 관련된다.
The present invention relates to a technique for simultaneously using a storage mode and a non-storing mode in an IPv6 Routing Protocol for Low Power and Lossy Networks (RPL) routing protocol for low power, high loss networks.

국제 표준화 기구 IETF(Internet Engineering Task Force)의 워킹 그룹(working group) 중 하나인 ROLL(Routing Over Low power and Lossy networks)에서는 저전력 고손실 네트워크(LLN; Low power and Lossy Network) 영역에서의 라우팅 알고리즘에 대해 연구하고, 표준화를 진행하고 있다.Routing Over Low Power and Lossy networks (ROLLs), one of the working groups of the International Organization for Standardization Internet Engineering Task Force (IETF), are involved in routing algorithms in the area of low power and lossy networks (LLNs). Research and standardization.

LLN 영역은 다수의 노드들로 구성되고 있으며, 이 노드들은 제한된 프로세스 파워, 메모리 용량 및 배터리로 운용되는 특성을 지니고 있다. 그래서 노드간의 연결(link)은 불안정하고, 낮은 대역폭을 갖는다(IEEE 802.15.4 참고). 또한 노드에 TCP/IP 스택(stack)이 올라가고, IPv6 주소체계를 도입함에 따라(IETF 6lowpan working group, RFC-4919, RFC 4944참고), IPv6 주소체계로 이루어진 LLN 노드를 위한 새로운 라우팅 프로토콜이 필요하게 되었다. 이에 ROLL 워킹 그룹에서는 저전력 고손실 네트워크를 위한 IPv6 라우팅 프로토콜인 RPL(IPv6 Routing Protocol for Low power and Lossy Networks)을 제안하였으며, 이에 대한 표준화를 진행 중이다.The LLN region consists of multiple nodes, which have limited process power, memory capacity, and battery operation. Thus the link between nodes is unstable and has low bandwidth (see IEEE 802.15.4). In addition, as the TCP / IP stack rises on nodes and the introduction of IPv6 addressing (see IETF 6lowpan working group, RFC-4919, RFC 4944), new routing protocols for LLN nodes with IPv6 addressing are needed. It became. The ROLL Working Group has proposed IPv6 Routing Protocol for Low Power and Lossy Networks (RPL), an IPv6 routing protocol for low power, high loss networks.

RPL은 ICMPv6 RPL 콘트롤 메시지(Control Message)를 이용하여 LLN 영역에 있는 노드들로 DODAG(Destination Oriented Directed Acyclic Graph)를 형성한다. DODAG 내부에서는 DODAG 루트(root)를 기준으로 상향 경로(Upward route) 및 하향 경로(Downward route)가 생성/갱신되며 목적지 주소(destination address)까지의 원활한 라우팅 경로(routing path)를 제공해준다. (ICMPv6 RPL 콘트롤 메시지에는 DODAG Information Object(DIO), DODAG Information Solicitation(DIS), Destination Advertisement Object(DAO), Destination Advertisement Object Acknowledgement(DAO-ACK)이 있다.)RPL uses the ICMPv6 RPL Control Message to form the Destination Oriented Directed Acyclic Graph (DODAG) with nodes in the LLN region. Inside DODAG, up and down routes are created / updated based on the DODAG root and provide a smooth routing path to the destination address. (ICMPv6 RPL control messages include DODAG Information Object (DIO), DODAG Information Solicitation (DIS), Destination Advertisement Object (DAO), and Destination Advertisement Object Acknowledgement (DAO-ACK).)

Downward route를 생성/갱신하는 방법에는 저장 모드(storing mode)와 비저장 모드(non-storing mode)가 있다. 저장 모드는 리프 노드를 제외한 모든 노드들이 라우팅 테이블을 지니고 있는 형태로, LLN 안의 일부 노드가 메모리 용량이 적고 프로세싱 파워가 약할 경우, 배터리의 조기소진 및 메모리 문제 등을 야기할 수 있다. 비저장 모드는 DODAG 루트만 라우팅 테이블을 지니고 있고, 하향 데이터 패킷(downward data packet)을 전송할때는 목적지 주소(destination address)까지 이르는 모든 경로를 헤더에 추가/삽입한다. 이 경우 최종목적지까지 이르는 멀티홉 수에 비례하여 패킷의 길이가 증가한다는 문제가 있다. 예를 들면, 목적지까지의 거리가 20홉이라면, 중간에 경유해야 하는 19개의 주소를 헤더에 입력해야 하기 때문에 패킷의 낭비가 심하다. There are two methods for creating / updating a downstream route: storage mode and non-storing mode. The storage mode is a form in which all nodes except the leaf node have a routing table. When some nodes in the LLN have low memory capacity and low processing power, it may cause early battery drain and memory problems. In the non-storage mode, only the DODAG route has a routing table. When transmitting a downlink data packet, all paths up to the destination address are added / inserted into the header. In this case, there is a problem that the length of the packet increases in proportion to the number of multihops leading up to the final destination. For example, if the distance to the destination is 20 hops, the packet is wasted because 19 addresses must be entered in the header.

따라서, 이를 해결하기 위해 하나의 LLN 내에서 필요에 따라 storing mode와 non-storing mode를 적절히 혼합하여 사용하기 위한 혼합 모드(mixed mode)가 필요하게 되었다.
Therefore, in order to solve this problem, a mixed mode for properly mixing and using a storage mode and a non-storing mode in one LLN is required.

- RPL: IPv6 Routing Protocol for Low power and Lossy Networks(draft-ietf-roll-rpl-19, http://datatracker.ietf.org/doc/draft-ietf-roll-rpl/)RPL: IPv6 Routing Protocol for Low power and Lossy Networks (draft-ietf-roll-rpl-19, http://datatracker.ietf.org/doc/draft-ietf-roll-rpl/)  - Terminology in Low power And Loosy Networks(draft-ietf-roll-terminology-05, http://datatracker.ietf.org/doc/draft-ietf-roll-terminology/)Terminology in Low power And Loosy Networks (draft-ietf-roll-terminology-05, http://datatracker.ietf.org/doc/draft-ietf-roll-terminology/)  - RPL Objective Function Zero(draft-ietf-roll-of0-20, http://datatracker.ietf.org/doc/draft-ietf-roll-of0/)RPL Objective Function Zero (draft-ietf-roll-of0-20, http://datatracker.ietf.org/doc/draft-ietf-roll-of0/)  - An IPv6 Routing Header for Source Routes with RPL(draft-ietf-6man-rpl-routing-header-03, http://datatracker.ietf.org/doc/draft-ietf-6man-rpl-routing-header/)An IPv6 Routing Header for Source Routes with RPL (draft-ietf-6man-rpl-routing-header-03, http://datatracker.ietf.org/doc/draft-ietf-6man-rpl-routing-header/)

본 발명은 저장 모드와 비저장 모드를 하나의 네트워크 내에서 혼합하여 사용함으로써 주위 환경에 따라 유연하고 효율적인 네트워크를 구성하는 데 그 목적이 있다.
An object of the present invention is to configure a flexible and efficient network according to the surrounding environment by using a mixed storage mode and non-storage mode in one network.

상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 저전력 고손실 네트워크를 위한 라우팅 프로토콜인 RPL 라우팅 프로토콜에서의 혼합 모드 라우팅 노드는, DIO 메시지를 수신하고, 수신된 상기 DIO 메시지에 포함된 하향 라우팅 모드 설정 정보 및 기 설정된 라우팅 모드 변경 조건에 따라 상기 라우팅 노드의 하향 라우팅 모드를 설정하거나 기 설정된 하향 라우팅 모드를 변경하는 DIO 메시지 처리부; DAO 메시지를 수신하고, 수신된 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(target prefix), 상기 DAO 메시지를 송신한 송신 주소 및 상기 라우팅 노드의 하향 라우팅 모드에 따라 상기 DAO 메시지의 트랜짓 인포메이션 옵션(Transit Information Option)의 페어런트 어드레스(parent address)를 변경하거나 라우팅 테이블을 업데이트하는 DAO 메시지 처리부; 및 데이터 패킷을 수신하고, 상기 데이터 패킷에 포함된 소스 라우트 헤더(SRH)로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하며, 상기 다음 노드 주소를 이웃 테이블 또는 라우팅 테이블에서 검색한 결과에 따라 상기 데이터 패킷을 송신하는 데이터 패킷 처리부를 포함한다.
The mixed mode routing node in the RPL routing protocol, which is a routing protocol for a low power high loss network, according to an embodiment of the present invention for solving the above problems, receives a DIO message, and routes the downlink included in the received DIO message. A DIO message processor configured to set a down routing mode of the routing node or change a preset down routing mode according to mode setting information and a preset routing mode change condition; Receive a DAO message, and according to the target prefix of the RPL target option (RPL Target Option) of the received DAO message, the transmission address that transmitted the DAO message and the downlink routing mode of the routing node of the DAO message A DAO message processing unit for changing a parent address of a Transit Information Option or updating a routing table; And receiving a data packet, obtaining a next address to transmit the data packet from a source route header (SRH) included in the data packet, and searching for the next node address in a neighbor table or a routing table. And a data packet processor for transmitting the data packet according to the result.

한편, 상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 RPL 라우팅 프로토콜에서의 혼합 모드 라우팅 방법은, DIO 메시지를 수신하고, 수신된 상기 DIO 메시지에 포함된 하향 라우팅 모드 설정 정보 및 기 설정된 라우팅 모드 변경 조건에 따라 상기 라우팅 노드의 하향 라우팅 모드를 설정하거나 기 설정된 하향 라우팅 모드를 변경하는 제1단계; DAO 메시지를 수신하고, 수신된 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(target prefix), 상기 DAO 메시지를 송신한 송신 주소 및 상기 라우팅 노드의 하향 라우팅 모드에 따라 상기 DAO 메시지의 트랜짓 인포메이션 옵션(Transit Information Option)의 페어런트 어드레스(parent address)를 변경하거나 라우팅 테이블을 업데이트하는 제2단계; 및 데이터 패킷을 수신하고, 상기 데이터 패킷에 포함된 소스 라우트 헤더(SRH, An IPv6 Routing Header for Source Routes with RPL)로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하며, 상기 다음 노드 주소를 이웃 테이블 또는 라우팅 테이블에서 검색한 결과에 따라 상기 데이터 패킷을 다음 노드로 송신하는 제3단계를 포함한다.
On the other hand, the mixed mode routing method in the RPL routing protocol according to an embodiment of the present invention for solving the above problems, receiving a DIO message, downlink routing mode configuration information included in the received DIO message and the predetermined routing Setting a downlink routing mode of the routing node or changing a preset downlink routing mode according to a mode change condition; Receive a DAO message, and according to the target prefix of the RPL target option (RPL Target Option) of the received DAO message, the transmission address that transmitted the DAO message and the downlink routing mode of the routing node of the DAO message A second step of changing a parent address of a Transit Information Option or updating a routing table; And receiving a data packet, obtaining a next address to transmit the data packet from an IPv6 Routing Header for Source Routes with RPL included in the data packet, and receiving the next node. And transmitting the data packet to a next node according to a result of retrieving an address from a neighbor table or a routing table.

본 발명의 실시예들에 따를 경우, 저장 모드와 비저장 모드를 하나의 네트워크 내에서 혼합한 혼합 모드를 구현함으로써 주위 환경에 따라 유연하고 효율적인 네트워크를 구성할 수 있다.
According to embodiments of the present invention, by implementing a mixed mode in which the storage mode and the non-storage mode are mixed in one network, a flexible and efficient network may be configured according to the surrounding environment.

도 1은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 노드의 구성을 설명하기 위한 블록도이다.
도 2는 RPL에서 사용되는 DIO 메시지의 구조를 나타낸 도면이다.
도 3은 RPL에서 사용되는 DAO 메시지의 구조를 나타낸 도면이다.
도 4는 DAO 메시지의 옵션 필드에 부가되는 RPL Target Option의 구조를 나타낸 도면이다.
도 5는 DAO 메시지의 옵션 필드에 부가되는 Transit Information Option의 구조를 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중, DODAG 루트에서의 DIO 메시지 생성 및 송신 과정을 도시한 순서도이다.
도 7은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중 DIO 메시지 처리 방법을 도시한 순서도이다.
도 8은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중 DAO 메시지 처리 방법을 도시한 순서도이다.
도 9는 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중 하향 데이터 패킷 처리 방법을 도시한 순서도이다.
도 10은 DODAG 및 상향 라우트 경로를 설정하는 일례를 설명하기 위한 예시도이다.
도 11은 도 10에 설정된 DODAG에서, 하향 라우팅 모드가 저장 모드일 경우, DODAG 루트 및 2번 노드의 하향 라우팅 테이블의 형성예를 나타낸 도면이다.
도 12는 도 10에 설정된 DODAG에서, 하향 라우팅 모드가 비저장 모드 일 경우, 하향 라우트 경로를 설정하기 위한 DAO 메시지의 흐름(점선)을 표현한 도면이다.
도 13은 도 10에 설정된 DODAG에서, 하향 라우팅 모드가 비저장 모드일 경우, DODAG 루트의 하향 라우팅 테이블의 형성예를 나타낸 도면이다.
도 14는 하향 라우팅 모드가 혼합 모드로 구성된 DODAG 및 상향 라우팅 경로(실선)와 하향 라우팅 경로를 설정하기 위한 DAO 메시지의 흐름(점선)을 표현한 도면이다.
도 15는 도 14에 도시된 혼합 모드의 DODAG에서 DODAG 루트 및 10번 노드의 하향 라우팅 테이블의 형성예를 나타낸 도면이다.
1 is a block diagram illustrating a configuration of a mixed mode routing node according to an embodiment of the present invention.
2 is a diagram illustrating a structure of a DIO message used in an RPL.
3 is a diagram illustrating a structure of a DAO message used in an RPL.
4 is a diagram illustrating a structure of an RPL Target Option added to an option field of a DAO message.
5 is a diagram illustrating the structure of a Transit Information Option added to an option field of a DAO message.
6 is a flowchart illustrating a process of generating and transmitting a DIO message in a DODAG route in a mixed mode routing method according to an embodiment of the present invention.
7 is a flowchart illustrating a method of processing a DIO message in a mixed mode routing method according to an embodiment of the present invention.
8 is a flowchart illustrating a DAO message processing method in a mixed mode routing method according to an embodiment of the present invention.
9 is a flowchart illustrating a downlink data packet processing method in a mixed mode routing method according to an embodiment of the present invention.
10 is an exemplary diagram for explaining an example of setting a DODAG and an upstream route path.
FIG. 11 is a diagram illustrating an example of forming a down routing table of a DODAG route and node 2 when the down routing mode is a storage mode in the DODAG set in FIG. 10.
FIG. 12 is a diagram illustrating the flow (dotted line) of a DAO message for establishing a downlink route path when the downlink routing mode is a non-storage mode in the DODAG set in FIG. 10.
FIG. 13 is a diagram illustrating an example of forming a down routing table of a DODAG route when the down routing mode is a non-storage mode in the DODAG set in FIG. 10.
FIG. 14 is a diagram illustrating a DODAG configured with a mixed down mode in a mixed mode, an uplink path (solid line), and a flow of DAO messages (dashed lines) for establishing a downlink path.
FIG. 15 is a diagram illustrating an example of forming a down routing table of a DODAG route and node 10 in the DODAG in the mixed mode shown in FIG. 14.

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. However, this is merely an example and the present invention is not limited thereto.

본 발명을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. In the following description, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intention or custom of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하의 실시예는 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
The technical idea of the present invention is determined by the claims, and the following embodiments are merely a means for effectively explaining the technical idea of the present invention to a person having ordinary skill in the art to which the present invention belongs.

본 발명을 설명하기에 앞서, RPL에서 upward route 및 downward route를 구성하는 과정을 간단히 설명한다.Prior to describing the present invention, a process of configuring an upward route and a downward route in RPL will be briefly described.

먼저, RPL에서 upward route는 DIO 메시지가 다른 노드로 전파되면서, DIO 메시지안의 랭크(RANK)값을 통해 만들어진다. RANK는 일종의 노드간의 링크 퀄리티(link quality)로서, 그 측정 매트릭스는 홉(hop)수, ETX(the Expected transmission count)등이 될 수 있다. 노드 간 RANK값 계산방법, 측정치, 부모 노드 선정기준 등은 오브젝트 함수(Object Function)에서 결정하며, 이에 대해서는 ietf-roll-of0에 상세히 기술되어 있다. DIO 메시지를 수신한 노드는 DIO 메시지 안의 RANK 필드 값으로 자기 노드의 부모 노드(parent)를 선정하고(일반적으로 최하위 RANK값이 담긴 DIO 메시지를 송신한 노드를 parent로 선정), RANK값을 누적 계산하며, 계산된 RANK 결과값을 업데이트하여 DIO 메시지를 주위 노드들에게 재송신한다. 이를 통해 DODAG 루트를 최상위로 하는 일종의 트리구조로 된 LLN 토폴로지가 형성되며, upward route가 만들어진다. 또한 DODAG 루트는 타이머를 통해 주기적으로 DIO 메시지를 재송신함으로서, 노드의 추가/삭제/변경 등에 따른 토폴로지/라우팅 정보 변경에 유연하게 대처한다.First, in RPL, an upward route is created through the rank value in the DIO message as the DIO message is propagated to other nodes. RANK is a kind of link quality between nodes, and the measurement matrix may be the number of hops, the Expected transmission count (ETX), or the like. The method of calculating the RANK value between nodes, measurement values, and parent node selection criteria are determined by an object function, which is described in detail in ietf-roll-of0. The node receiving the DIO message selects the parent node of its own node as the RANK field value in the DIO message (generally, selects the node that sent the DIO message containing the lowest RANK value as the parent) and accumulates the RANK value. The DIO message is resent to neighboring nodes by updating the calculated RANK result. This creates a tree-structured LLN topology with the DODAG route at the top, creating an upward route. The DODAG route also resends the DIO message periodically through a timer, which flexibly copes with topology / routing information changes due to node addition, deletion, and change.

다음으로, downward route를 생성/업데이트 하는 방법에는 크게 저장 모드(Storing mode)와 비저장 모드(Non-storing mode)가 있으며, 각각의 모드는 DIO 메시지의 MOP(mode of operation)필드에 기재된 값에 따라 결정된다. 즉, DIO 메시지의 전파 시 포함된 MOP값에 따라, 노드들의 하향 라우팅 모드가 결정된다. 모드에 따라 DAO 메시지의 송신대상이 달라지고, 하향 라우팅 정보는 수신한 DAO 메시지로부터 수집된다.Next, there are two methods of creating / updating a downward route, a storage mode and a non-storing mode, each of which is based on a value described in a mode of operation (MOP) field of a DIO message. Is determined accordingly. That is, the down routing mode of the nodes is determined according to the MOP value included in the propagation of the DIO message. The transmission destination of the DAO message varies depending on the mode, and the downlink routing information is collected from the received DAO message.

저장 모드의 경우, 리프 노드를 제외한 모든 노드들이 개별적으로 자신의 하위 노드들에 대한 라우팅 테이블(routing table)을 생성/유지한다. 각각의 노드에서는 DAO 메시지가 생성되어 자신의 부모 노드로 송신된다. 이때, DAO 메시지의 RPL Target Option의 Target Prefix는 DAO를 최초 생성하는 노드의 주소가 입력되고, Transit Information Option의 parent address는 생략된다. 이렇게 생성된 DAO 메시지는 자신의 parent로 전송/재전송된다. DAO 메시지를 수신받은 노드들은 DAO 메시지를 송신한 노드의 주소와 RPL Target Option의 Target prefix에 기록된 최초 DAO 생성 노드의 주소를 이용하여 라우팅 테이블을 생성/업데이트 한다. 라우팅 테이블에는 목적지 주소(destination address)와 목적지 주소에 도착하기 위해 전송해야 하는 다음 주소(next address) 항목 등이 있다(자세한 항목은 ietf-roll-rpl참조).In storage mode, all nodes except the leaf node individually create / maintain a routing table for their subnodes. At each node, a DAO message is generated and sent to its parent node. In this case, as the target prefix of the RPL Target Option of the DAO message, the address of the node that first generates the DAO is input, and the parent address of the Transit Information Option is omitted. The generated DAO message is sent / retransmitted to its parent. Nodes receiving the DAO message create / update the routing table using the address of the node that sent the DAO message and the address of the first DAO generating node recorded in the Target prefix of the RPL Target Option. The routing table contains a destination address and a next address entry that must be sent to arrive at the destination address (see ietf-roll-rpl for details).

한편, 비저장 모드의 경우 DODAG 루트만 DODAG안의 노드들에 대한 라우팅 테이블을 생성/유지한다. 비저장 모드 의 각 노드들은 DAO 메시지를 다음과 같이 생성한다. RPL Target Option의 Target Prefix는 DAO를 최초 생성하는 노드의 주소가 입력되고, Transit Information Option의 parent address에는 자신의 최적의 부모 노드(best parent)의 주소가 입력된다. 이때 best parent는 전술한 오브젝트 함수에 의하여 결정될 수 있으며, 예를 들어 상향 경로를 통한 메시지 전달 홉(hop) 수가 최소가 되도록 best parent를 결정할 수 있다. 생성된 DAO 메시지는 DODAG 루트를 목적지로 하여 전송된다. DAO 메시지를 수신 받은 DODOA 루트는 DAO 메시지의 RPL Target Option의 Target prefix에 담겨진 최초 DAO 생성 노드의 주소 및 부모 노드 주소가 담겨진 Transit Information Option의 parent address를 이용하여 라우팅 테이블을 생성/업데이트한다.On the other hand, in non-storage mode, only the DODAG root creates / maintains the routing table for the nodes in the DODAG. Each node in non-storage mode generates DAO message as follows. In the Target Prefix of the RPL Target Option, the address of the node that first generates the DAO is input. In the parent address of the Transit Information Option, the address of its best parent is input. In this case, the best parent may be determined by the above-described object function. For example, the best parent may be determined such that the number of message transfer hops through the uplink is minimized. The generated DAO message is sent with the DODAG route as the destination. The DODOA route receiving the DAO message creates / updates a routing table using the parent address of the Transit Information Option containing the address of the first DAO creation node and the parent node address contained in the target prefix of the RPL Target Option of the DAO message.

하향 패킷 전송시, DODAG 루트는 위와 같이 생성된 라우팅 테이블에서 destination address까지 이르는 소스 라우팅 경로(source routing path)를 검색하여, SRH(source route header, ietf-6man-rpl-routing-header참조)를 생성한다. SRH는 하향 패킷에 삽입되고, SRH가 포함된 하향데이터 패킷을 수신한 노드들은 SRH를 처리하여, 해당 패킷을 전송할 타겟 주소를 얻은 뒤 얻어진 타겟으로 패킷을 전송한다. 이러한 SRH 처리를 통해서 해당 패킷은 source route path를 따라 최종 목적지까지 전송된다.
When transmitting a downlink packet, the DODAG route searches the source routing path from the routing table created above to the destination address and generates a source route header (see ietf-6man-rpl-routing-header). do. The SRH is inserted into the downlink packet, and the nodes receiving the downlink data packet including the SRH process the SRH, obtain a target address to transmit the packet, and transmit the packet to the obtained target. Through such SRH processing, the packet is transmitted to the final destination along the source route path.

도 1은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 노드(100)의 구성을 설명하기 위한 블록도이다. 본 발명에서 혼합 모드 라우팅 노드(100)는 저전력 고손실 네트워크(Low power and lossy network)를 구성하는 장치로서, 복수 개의 혼합 모드 라우팅 노드(100)가 RPL을 이용하여 트리 구조의 네트워크를 구성하도록 구성된다.1 is a block diagram illustrating a configuration of a mixed mode routing node 100 according to an embodiment of the present invention. In the present invention, the mixed mode routing node 100 is a device for constructing a low power and lossy network, and the plurality of mixed mode routing nodes 100 are configured to configure a tree structured network using RPL. do.

도시된 바와 같이, 본 발명의 일 실시예에 따른 혼합 모드 라우팅 노드(100)는 설정부(102), 패킷 생성부(104), 패킷 송수신부(106), DIO 메시지 처리부(108), DAO 메시지 처리부(110) 및 데이터 패킷 처리부(112)를 포함한다.As shown, the mixed mode routing node 100 according to an embodiment of the present invention is the setting unit 102, packet generation unit 104, packet transmission and reception unit 106, DIO message processing unit 108, DAO message The processor 110 and the data packet processor 112 are included.

설정부(102)는 혼합 모드 라우팅 노드(100)의 초기 하향 라우팅 모드(downward routing mode), 혼합 모드(mixed mode) 활성화 여부, 혼합 모드 활성화 시 하향 라우팅 모드의 변경 조건 등을 설정한다. 상술한 설정값들은 예를 들어 네트워크의 관리자 등에 의하여 설정부(102)에 입력될 수 있으며, 이를 위하여 설정부(102)는 적절한 입력 인터페이스를 포함할 수 있다.The setting unit 102 sets an initial down routing mode of the mixed mode routing node 100, whether a mixed mode is activated, a condition for changing the down routing mode when the mixed mode is activated, and the like. The above-described setting values may be input to the setting unit 102 by, for example, an administrator of the network, and for this purpose, the setting unit 102 may include an appropriate input interface.

전술한 바와 같이, 하향 라우팅 모드는 저장 모드(Storing mode)와 비저장 모드(Non-storing mode)로 구별되며, 상기 초기 하향 라우팅 모드는 최초 실행시 혼합 모드 라우팅 노드(100)가 어떤 모드로 실행될 지의 여부에 대한 설정값이다. 혼합 모드 활성화 여부 값은 혼합 모드 라우팅 노드(100)가 필요에 따라 하향 라우팅 모드를 변경하는 혼합 모드로 동작할 것인지의 여부를 결정하기 위한 값으로서, 예를 들어 1일 경우 혼합 모드로 동작하고, 0일 경우 기존 RPL모드인 저장 모드 또는 비저장 모드 중 어느 하나로 동작하도록 구성될 수 있다. 하향 라우팅 모드의 변경 조건은 혼합 모드에서 하향 라우팅 모드를 변경하기 위한 조건에 대한 정보로서, 예를 들어 LLN에 속한 노드들이 DODAG 루트 노드부터 특정 홉 마다, 또는 특정 랭크에 도달할 때 마다, 일정 배터리 이하, 또는 특정 노드의 주소일 경우 하향 라우팅 모드를 변경하도록 구성될 수 있다. 다만 이는 하나의 예시일 뿐이며, 관리자 등은 이 외에도 필요에 따라 적절한 변경 조건을 설정할 수 있으며, 각 혼합 모드 라우팅 노드(100)는 설정된 변경 조건에 따라 하향 라우팅 모드를 저장 모드에서 비저장 모드로, 또는 비저장 모드에서 저장 모드로 변경할 수 있다.As described above, the down routing mode is divided into a storage mode and a non-storing mode, and the initial down routing mode is executed in a mode in which the mixed mode routing node 100 is executed in the first execution. The setting value for whether or not. The mixed mode activation value is a value for determining whether the mixed mode routing node 100 operates in a mixed mode in which the downlink routing mode is changed as needed. For example, when the mixed mode routing node 100 operates in the mixed mode, If 0, it may be configured to operate in any of the existing RPL mode stored mode or non-save mode. The condition for changing the down routing mode is information about the condition for changing the down routing mode in the mixed mode, for example, when a node belonging to the LLN reaches a certain rank or a certain rank from the DODAG root node. Hereinafter, or in the case of an address of a specific node, it may be configured to change the downlink routing mode. However, this is only one example, and the administrator may set an appropriate change condition as necessary, and each mixed mode routing node 100 may change the down routing mode from the storage mode to the non-save mode according to the set change condition. Alternatively, you can change from save mode to save mode.

패킷 생성부(104)는 ICMPv6 RPL 콘트롤 메시지(DIO, DIS, DAO, DAO-ACK)와 소스 라우트 헤더(Source Routes Header, 이하 SRH로 표현)를 생성한다. 도 2는 DIO 메시지의 구조를 나타낸 도면이다. 도시된 상기 DIO 메시지의 각 필드 중 MOP(Mode of operation) 필드의 값은 설정부(102)에서 설정한 초기 하향 라우팅 모드를 참조하여 설정된다. 또한, 혼합 모드 플래그(Mixed mode flag)는 DIO의 미사용 Flag 또는 Reserved 필드 중에서 1bit를 선정하여 기록하며, 상기 값은 설정부(102)의 혼합 모드 활성화 여부 설정값을 참고한다.The packet generator 104 generates an ICMPv6 RPL control message (DIO, DIS, DAO, DAO-ACK) and a source route header (hereinafter referred to as SRH). 2 is a diagram illustrating a structure of a DIO message. A value of a mode of operation (MOP) field of each field of the illustrated DIO message is set with reference to the initial downlink routing mode set by the setting unit 102. In addition, the mixed mode flag selects and records 1 bit among unused Flag or Reserved fields of the DIO, and the value refers to a mixed mode activation setting value of the setting unit 102.

도 3은 DAO 메시지의 구조를 나타낸 도면이다. DAO 메시지의 경우 RPL 타겟(RPL target), 트랜짓 인포메이션(Transit Information) 등 여러 옵션 헤더(Option header)를 추가할 수 있다.3 is a diagram illustrating the structure of a DAO message. In the case of a DAO message, various option headers, such as an RPL target and a Transit Information, may be added.

도 4는 DAO 메시지의 옵션 필드에 부가되는 RPL Target Option의 구조를 나타낸 도면이다. RPL Target Option의 Target Prefix에는 DAO 메시지를 최초 생성하는 노드(라우팅 노드)의 주소가 입력된다. 또한 도 5는 DAO 메시지의 옵션 필드에 부가되는 Transit Information Option의 구조를 나타낸 도면으로서, Transit Information Option의 Parent Address 필드에는 Non-storing mode의 경우 자신의 부모 노드의 주소를 입력하고, storing mode의 경우 생략한다.4 is a diagram illustrating a structure of an RPL Target Option added to an option field of a DAO message. In the Target Prefix of the RPL Target Option, the address of the node (routing node) that initially generates the DAO message is entered. FIG. 5 is a diagram illustrating the structure of a Transit Information Option added to an option field of a DAO message. In the Parent Address field of the Transit Information Option, an address of a parent node of a non-storing mode is input. Omit.

SRH는 non-storing mode일 때, 하향 패킷(downward packet)이 목적지 주소(destination address)까지 원활히 전송될 수 있도록 경로 정보가 포함된다. 기존 RPL 규약에서는 non-storing mode일 경우에 한하여 데이터 패킷 헤더에 SRH가 추가되도록 구성된다. 그러나 본 발명의 경우 하나의 DODAG안에 storing/non-storing mode가 혼재되어 있으므로, mode에 관계없이 데이터 패킷 헤더에 SRH가 추가된다. 이때 SRH 생성 알고리즘은 종래의 알고리즘(ietf-6man-rpl-routing-header, An IPv6 Routing Header for Source Routes with RPL)을 따른다. When the SRH is in the non-storing mode, path information is included so that a downlink packet can be smoothly transmitted to a destination address. In the existing RPL protocol, SRH is added to the data packet header only in the non-storing mode. However, in the present invention, since the storing / non-storing mode is mixed in one DODAG, SRH is added to the data packet header regardless of the mode. In this case, the SRH generation algorithm follows a conventional algorithm (ietf-6man-rpl-routing-header, An IPv6 Routing Header for Source Routes with RPL).

또한, 상기 DIO 메시지, DAO 메시지 및 SRH에 있어 본 명세서에서 특별히 언급되지 않은 부분들도 기존의 알고리즘을 그대로 따름을 유의한다.In addition, it is noted that parts not specifically mentioned in the DIO message, the DAO message, and the SRH follow the existing algorithm as it is.

패킷 송수신부(106)는 패킷을 송신하고, 수신하는 역할을 수행한다. 이 때 송신 시기는 타이머(미도시)에 의해 결정된다. 타이머 운용방법은 RPL에서 사용중인 트리클(Trickle) 알고리즘(자세한 사항은 RFC 6206 참조)을 그대로 따른다.The packet transceiver 106 transmits and receives a packet. At this time, the transmission timing is determined by a timer (not shown). The timer operation follows the trickle algorithm used by RPL (see RFC 6206 for details).

DIO 메시지 처리부(108)는 DIO 메시지를 수신하고, 수신된 상기 DIO메시지의 정보를 이용하여 자신의 DODAG정보(MOP-하향 라우팅 모드, DODAG ID 등)를 생성/갱신한다. 또한, 수신된 상기 DIO 메시지에 포함된 하향 라우팅 모드 설정 정보 및 기 설정된 라우팅 모드 변경 조건에 따라 기 설정된 하향 라우팅 모드를 변경한다.The DIO message processor 108 receives the DIO message and generates / updates its own DODAG information (MOP-downward routing mode, DODAG ID, etc.) using the received DIO message information. The preset downlink routing mode is changed according to the downlink routing mode setting information included in the received DIO message and a preset routing mode change condition.

구체적으로, DIO 메시지 처리부(108)는 수신된 상기 DIO 메시지의 MOP가 하향 라우트를 지원하는 모드로 설정되고 (예를 들어 MOP의 값이 0일 경우 RPL에서 downward route는 지원하지 않음), 혼합 모드 플래그가 활성화되어 있는지의 여부를 판단한다. 수신된 상기 DIO 메시지의 하향 라우팅 모드 설정 여부는 상기 DIO 메시지의 MOP 필드에 기록된 값으로부터 판단될 수 있으며, 또한 수신된 상기 DIO 메시지의 혼합 모드 플래그 활성화 여부는, 상기 DIO 메시지의 미사용 플래그 또는 리저브드 필드(Reserved Field) 중 패킷 생성부(104)에 의하여 혼합 모드 플래그로 설정된 비트로부터 알 수 있다.Specifically, the DIO message processing unit 108 is set to a mode in which the MOP of the received DIO message supports a downward route (for example, when the MOP value is 0, the downward route is not supported in the RPL), and the mixed mode It is determined whether the flag is activated. Whether to set the down routing mode of the received DIO message may be determined from a value recorded in the MOP field of the DIO message. Also, whether the mixed mode flag of the received DIO message is activated is an unused flag or a reserve of the DIO message. It can be known from the bit set by the packet generation unit 104 in the reserved field as the mixed mode flag.

만약 하향 라우팅 모드가 설정되고, 혼합 모드 플래그가 활성화되어 있는 경우, DIO 메시지 처리부(108)는 설정부(102)에 설정된 설정된 하향 라우팅 모드 변경 조건을 만족하는지의 여부를 판단하고, 변경 조건을 만족하는 경우 기 설정된 하향 라우팅 모드를 변경한다. 즉, 기 설정된 하향 라우팅 모드가 저장 모드(storing mode)인 경우 비저장 모드(non-storing mode)로 변경하고, 기 설정된 하향 라우팅 모드가 비저장 모드인 경우 저장 모드로 변경한다. 이로써 본 발명에 따를 경우 DIO 메시지의 설정값 및 변경 조건에 따라 종래와는 달리 하나의 DODAG안에 non-storing mode와 storing mode가 혼재된 상태가 된다.If the down routing mode is set and the mixed mode flag is activated, the DIO message processing unit 108 determines whether the down routing mode change condition set in the setting unit 102 is satisfied, and the change condition is satisfied. In this case, the preset downlink routing mode is changed. That is, when the preset downlink routing mode is a storage mode, it is changed to a non-storing mode, and when the preset downlink routing mode is a non-storage mode, it is changed to a storage mode. Accordingly, according to the present invention, unlike the conventional method, the non-storing mode and the storing mode are mixed in one DODAG according to the setting value and the change condition of the DIO message.

DAO 메시지 처리부(110)는 DAO 메시지를 수신하고, 수신된 상기 DAO 메시지의 타겟 프리픽스(target prefix), 상기 DAO 메시지를 송신한 송신 주소 및 상기 라우팅 노드의 하향 라우팅 모드에 따라 상기 DAO 메시지의 Transit Information Option의 Parent Address를 변경하거나 라우팅 테이블을 업데이트한다.The DAO message processing unit 110 receives the DAO message, and transmits the DAO message according to a target prefix of the received DAO message, a transmission address for transmitting the DAO message, and a downlink routing mode of the routing node. Change the parent address of the option or update the routing table.

구체적으로, DAO 메시지 처리부(110)는 DAO 메시지 수신 시 자신이 DODAG 루트 노드인지의 여부를 판단한다. 이때, 상기 DAO 메시지를 수신한 노드(라우팅 노드)가 DODAG 루트인 경우, DAO 메시지 처리부(110)는 수신한 DAO 메시지의 Transit Information Option(TIO)의 parent address가 비어 있는지의 여부를 판단한다. 만약 상기 parent address가 비어 있는 경우, DAO 메시지 처리부(110)는 Storing 모드일 때의 라우팅 테이블을 생성하거나 또는 기 존재하는 라우팅 테이블을 업데이트하는 방법으로 라우팅 테이블을 생성/업데이트 한다. (라우팅 테이블의 구체적인 사항에 대해서는 draft-ietf-roll-rpl 참고) 즉, 상기 라우팅 테이블의 next address에는 상기 DAO 메시지를 송신한 송신 노드의 주소가 기록되고, destination address에는 RPL Target Option의 Target Prefix에 기록된 주소가 기록된다. 이와 달리 상기 parent address가 비어 있지 않은 경우, DAO 메시지 처리부(110)는 Non-storing 모드일 때의 라우팅 테이블을 생성하거나 또는 기 존재하는 라우팅 테이블을 업데이트하는 방법으로 라우팅 테이블을 생성/업데이트 한다. 즉 상기 라우팅 테이블의 next address에는 Transit Information Option의 parent address가 저장되며, destination address에는 RPL Target Option의 Target Prefix에 기록된 주소가 기록된다.In detail, the DAO message processor 110 determines whether the DAO message processor 110 is a DODAG root node when receiving a DAO message. At this time, when the node (routing node) receiving the DAO message is a DODAG route, the DAO message processing unit 110 determines whether the parent address of the Transit Information Option (TIO) of the received DAO message is empty. If the parent address is empty, the DAO message processing unit 110 generates / updates the routing table by generating a routing table in the Storing mode or updating an existing routing table. (Refer to draft-ietf-roll-rpl for the details of the routing table.) That is, the address of the transmitting node that sent the DAO message is recorded in the next address of the routing table, and in the destination prefix of the RPL Target Option in the destination address. The recorded address is recorded. On the contrary, when the parent address is not empty, the DAO message processing unit 110 generates / updates the routing table by creating a routing table in the non-storing mode or updating an existing routing table. That is, the parent address of the Transit Information Option is stored in the next address of the routing table, and the address recorded in the Target Prefix of the RPL Target Option is recorded in the destination address.

만약, DAO 메시지 수신한 노드가 DODAG 루트 노드가 아닌 경우에는 다음과 같이 처리된다. 먼저, 상기 DAO 메시지를 수신한 노드의 하향 라우팅 모드가 비저장 모드이고, 상기 DAO 메시지의 RPL Target Option의 Target Prefix 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하는 경우, DAO 메시지 처리부(110)는 상기 DAO 메시지의 TIO의 Parent Address에 자신의(즉, 상기 DAO 수신 노드의) 주소를 입력하고, 입력된 상기 DAO 메시지를 DODAG 루트로 송신한다.If the node receiving the DAO message is not the DODAG root node, it is processed as follows. First, when the down routing mode of the node that receives the DAO message is the non-storage mode, and the target prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that transmits the DAO message match, the DAO message processing unit ( 110 inputs its own address (ie, the DAO receiving node) to the Parent Address of the TIO of the DAO message, and transmits the input DAO message to the DODAG root.

이와 달리, 상기 DAO 메시지의 RPL Target Option의 Target Prefix 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하지 않는 경우, DAO 메시지 처리부(110)는 DAO 메시지의 Transit Information Option의 Parent Address에 상기 DAO 메시지를 송신한 송신 노드의 주소를 입력하고, 입력된 상기 DAO 메시지를 DODAG 루트로 송신한다.On the contrary, when the target prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that transmits the DAO message do not match, the DAO message processing unit 110 may transmit the DAO to the Parent Address of the Transit Information Option of the DAO message. Enter the address of the sending node that sent the message, and send the entered DAO message to the DODAG route.

한편, 상기 DAO 메시지를 수신한 라우팅 노드(100)의 하향 라우팅 모드가 저장 모드(storing)인 경우, DAO 메시지 처리부(110)는 수신된 상기 DAO 메시지의 RPL Target Option 및 상기 DAO 송신 노드의 주소 정보를 이용하여 상기 라우팅 노드의 라우팅 테이블을 업데이트하고, 수신된 상기 DAO 메시지를 상위 노드로 송신한다. 이때 상기 라우팅 테이블의 next address에는 상기 DAO 메시지를 송신한 송신 노드의 주소가, destination address에는 RPL Target Option에 저장된 노드의 주소가 각각 기록된다.On the other hand, when the downlink routing mode of the routing node 100 receiving the DAO message is a storage mode, the DAO message processing unit 110 receives the RPL Target Option of the received DAO message and the address information of the DAO transmitting node. Update the routing table of the routing node by using, and transmit the received DAO message to a higher node. At this time, the address of the transmitting node that has transmitted the DAO message is recorded in the next address of the routing table, and the address of the node stored in the RPL Target Option is recorded in the destination address.

데이터 패킷 처리부(112)는 데이터 패킷을 수신하고, 상기 데이터 패킷에 포함된 소스 라우트 헤더(SRH)로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하며, 상기 라우팅 노드의 하향 라우팅 모드에 따라 이웃 테이블 또는 라우팅 테이블에서 상기 다음 노드 주소에 대응하는 라우팅 정보를 획득하고, 획득된 상기 라우팅 정보에 따라 상기 데이터 패킷을 다음 노드로 송신한다.The data packet processing unit 112 receives a data packet, obtains a next address (next address) to transmit the data packet from a source route header (SRH) included in the data packet, and a downlink routing mode of the routing node. In accordance with the method, obtain routing information corresponding to the next node address from a neighbor table or a routing table, and transmit the data packet to the next node according to the obtained routing information.

데이터 패킷이 수신되면, 데이터 패킷 처리부(112)는 먼저 수신된 상기 데이터 패킷의 SRH로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득한다(SRH로부터 next address를 획득하는 과정에 대해서는 ietf-6man-rpl-routing-header 참고). 종래의 non-storing 모드의 경우 SRH에 포함된 source route path는 최종 목적지까지의 경로의 주소가 모두 표현되어 있으므로, 해당 정보만으로 패킷 전달이 가능하다. 하지만 mixed mode의 경우 non-storing mode와 storing mode가 혼재되어 있어 SRH의 source route path만 따라가서는 최종목적지까지 도달하지 못하게 되므로, 다음과 같은 과정을 거쳐 라우팅을 수행하게 된다.When the data packet is received, the data packet processing unit 112 first obtains a next address to transmit the data packet from the SRH of the received data packet (ie ietf for a process of obtaining a next address from SRH). -6man-rpl-routing-header). In the conventional non-storing mode, since the source route path included in the SRH includes all the addresses of the route to the final destination, the packet can be delivered only with the corresponding information. However, in the mixed mode, the non-storing mode and the storing mode are mixed so that only the source route path of the SRH cannot be reached to reach the final destination, so routing is performed through the following process.

먼저, 데이터 패킷 처리부(112)는 SRH로부터 획득된 상기 다음 노드 주소를 이웃 테이블(neighbor table)에서 검색하여 상기 다음 노드 주소가 1-홉 주변에 존재하는지를 판단한다. 상기 이웃 테이블은 패킷을 수신한 라우팅 노드(100)에서 1-홉에 도달할 수 있는 주변 노드들의 정보를 기록한 테이블이다. 만약 상기 이웃 테이블에 상기 다음 노드 주소가 존재하는 경우, 데이터 패킷 처리부(112)는 상기 데이터 패킷을 다음 노드로 송신한다.First, the data packet processing unit 112 searches the neighbor table for the next node address obtained from the SRH to determine whether the next node address exists around 1-hop. The neighbor table is a table that records information of neighboring nodes that can reach 1-hop in the routing node 100 receiving the packet. If the next node address exists in the neighbor table, the data packet processor 112 transmits the data packet to the next node.

만약 상기 다음 노드 주소가 상기 이웃 테이블에 존재하지 않는 경우, 데이터 패킷 처리부(112)는 다음으로 상기 다음 노드 주소를 자신의 라우팅 테이블에서 검색한다. 만약 상기 다음 노드 주소에 대응하는 라우팅 정보가 라우팅 테이블에 저장되어 있는 경우, 데이터 패킷 처리부(112)는 라우팅 테이블로부터 획득된 상기 라우팅 정보에 따라 상기 데이터 패킷을 송신한다.If the next node address does not exist in the neighbor table, the data packet processing unit 112 next searches the next node address in its routing table. If routing information corresponding to the next node address is stored in a routing table, the data packet processor 112 transmits the data packet according to the routing information obtained from the routing table.

그러나 만약 상기 다음 노드 주소가 상기 라우팅 테이블에도 존재하지 않거나 또는 상기 라우팅 테이블 자체가 존재하지 않는 경우(해당 노드가 non-storing 모드인 경우), 데이터 패킷 처리부(112)는 수신된 상기 데이터 패킷을 폐기(drop)하고 다음 패킷의 수신을 대기한다.
However, if the next node address does not exist in the routing table or the routing table itself does not exist (if the node is in a non-storing mode), the data packet processor 112 discards the received data packet. (drop) and wait for the next packet to be received.

도 6은 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중, DODAG 루트에서의 DIO 메시지 생성 및 송신 과정(600)을 도시한 순서도이다.6 is a flowchart illustrating a process of generating and transmitting a DIO message at a DODAG route 600 in a mixed mode routing method according to an embodiment of the present invention.

먼저, DODAG 루트 노드의 설정부(102)는, 혼합 모드 라우팅 노드(100)의 초기 하향 라우팅 모드(downward routing mode), 혼합 모드(mixed mode) 활성화 여부 및 혼합 모드 활성화 시 하향 라우팅 모드의 변경 조건을 설정한다(S602), 이후, 패킷 생성부(104)는 설정부(102)의 설정값을 참조하여 DIO 메시지를 생성한다(S604). 마지막으로 패킷 송수신부(106)는 패킷 생성부(104)에서 생성된 DIO 메시지를 주위 노드들로 송신한다(S606).
First, the setting unit 102 of the DODAG root node, the initial downward routing mode (mixed mode) of the mixed mode routing node 100, whether the mixed mode (mixed mode) activation and the conditions for changing the down routing mode when the mixed mode is activated Next, the packet generation unit 104 generates a DIO message with reference to the setting value of the setting unit 102 (S604). Finally, the packet transmitter / receiver 106 transmits the DIO message generated by the packet generator 104 to surrounding nodes (S606).

도 7은 본 발명의 일 실시예에 따른 일 실시예에 따른 혼합 모드 라우팅 방법 중 DIO 메시지 처리 방법을 도시한 순서도이다.7 is a flowchart illustrating a method of processing a DIO message in a mixed mode routing method according to an embodiment of the present invention.

라우팅 노드(100)에서 DIO 메시지를 수신하면(S702), 라우팅 노드(100)는 먼저 수신된 DIO 메시지의 버전 번호와 자신이 보유한 버전 번호를 비교한다(S704). 만약 상기 S704 단계의 비교 결과 수신한 DIO 메시지의 버전 번호가 자신이 보유한 버전 번호보다 작을 경우에는 해당 메시지를 버리고, 다른 DIO 메시지 수신을 기다린다(S706).When the routing node 100 receives the DIO message (S702), the routing node 100 first compares the version number of the received DIO message with its own version number (S704). If the version number of the received DIO message is smaller than the version number owned by the comparison result of step S704, the message is discarded and the other DIO message is waited for to be received (S706).

만약 상기 S704 단계의 비교 결과 수신한 DIO 메시지의 버전 번호가 자신이 보유한 버전 번호보다 클 경우에는 수신된 DIO 메시지를 이용하여 자신의 DODAG 정보(MOP, DODAG ID, RPL InstanceID 등)를 생성 및 갱신하고(자세한 항목은 ietf-roll-rpl 참조), 오브젝트 함수를 이용하여 노드 간 랭크 값을 계산하며, 계산된 랭크 값을 기준으로 자신의 best parent를 결정한다(S708).If the version number of the received DIO message is greater than the owned version number as a result of the comparison of step S704, the DODAG information (MOP, DODAG ID, RPL InstanceID, etc.) is generated and updated by using the received DIO message. (For more information, refer to ietf-roll-rpl.) The rank value between nodes is calculated using an object function, and its best parent is determined based on the calculated rank value (S708).

이후, 라우팅 노드(100)는 수신된 DIO 메시지의 하향 라우팅 모드(downward routing mode)가 저장 모드 또는 비저장 모드로 설정되고(즉, MOP 값이 0이 아니고), 혼합 모드(mixed mode) 플래그가 활성화되어 있는지의 여부를 판단한다(S710).Thereafter, the routing node 100 sets the downward routing mode of the received DIO message to the storage mode or the non-storage mode (ie, the MOP value is not 0), and the mixed mode flag is set. It is determined whether or not it is activated (S710).

만약 상기 S710 단계의 판단 결과 하향 라우팅 모드가 저장 모드 또는 비저장 모드로 설정되고, 혼합 모드 플래그가 활성화되어 있는 경우에는 다음으로 자신의 기 설정된 하향 라우팅 모드 변경 조건을 만족하는지 여부를 판단하고(S712), 라우팅 모드 변경 조건을 만족하는 경우, 기 설정된 하향 라우팅 모드를 변경한다(S714). 구체적으로 수신된 상기 DIO 메시지의 MOP 필드에 의하여 설정된 하향 라우팅 모드가 저장 모드(storing mode)인 경우 비저장 모드(non-storing mode)로 변경하고, 비저장 모드인 경우 저장 모드로 변경하게 된다. 다만, 본 단계에서 하향 라우팅 모드가 변경되더라도, 수신된 상기 DIO 메시지의 MOP 필드에 기록된 하향 라우팅 모드가 변경되는 것은 아님에 유의한다. 즉, 후술할 S718 단계에서 송신되는 DIO 메시지는 애초에 기록된 MOP를 그대로 유지하며, 랭크 값이 업데이트되어 송신된다.If it is determined in step S710 that the downlink routing mode is set to a storage mode or a non-save mode, and the mixed mode flag is activated, it is next determined whether a preset downlink routing mode change condition is satisfied (S712). If the routing mode change condition is satisfied, the preset downlink routing mode is changed (S714). In more detail, when the downlink routing mode set by the received MOP field of the DIO message is a storage mode, it is changed to a non-storing mode, and when the non-storage mode is a storage mode. However, it is noted that even if the down routing mode is changed in this step, the down routing mode recorded in the MOP field of the received DIO message is not changed. That is, the DIO message transmitted in step S718 to be described later maintains the MOP originally recorded, and the rank value is updated and transmitted.

이후, 라우팅 노드(100)는 수신된 상기 DIO 메시지의 랭크 값을 업데이트하고(S716). 상기 DIO 메시지를 주위 노드로 송신한다(S718).
Thereafter, the routing node 100 updates the rank value of the received DIO message (S716). The DIO message is transmitted to surrounding nodes (S718).

도 8은 본 발명의 일 실시예에 따른 일 실시예에 따른 혼합 모드 라우팅 방법 중 DAO 메시지 처리 방법을 도시한 순서도이다.8 is a flowchart illustrating a DAO message processing method in a mixed mode routing method according to an embodiment of the present invention.

전술한 바와 같이, DAO 메시지는 각 노드의 패킷 생성부에서 생성된다. 생성되는 DAO의 RPL Target Option의 Target Prefix는 DAO 메시지를 최초 생성하는 노드의 주소가 입력된다. 그리고 만약 상기 DAO 메시지를 생성하는 노드가 Non-storing mode인 경우, 생성되는 DAO의 Transit Information Option에는 DODAG parent address가 삽입되며, storing mode의 경우, DAO의 Transit Information Option의 parent address는 생략된다.As described above, the DAO message is generated in the packet generator of each node. The target prefix of the RPL Target Option of the generated DAO is inputted with the address of the node that first generates the DAO message. If the node generating the DAO message is in the non-storing mode, the DODAG parent address is inserted into the generated Transit Information Option of the DAO. In the storing mode, the parent address of the Transit Information Option of the DAO is omitted.

상기와 같이 생성된 DAO 메시지가 수신되면(S802) 라우팅 노드(100)는 먼저 자신이 DODAG 루트 노드인지의 여부를 판단한다(S804). 만약 상기 판단 결과 자신이 DODAG 루트가 아닌 경우, 다음으로 자신의 하향 라우팅 모드를 판별한다(S806).When the DAO message generated as described above is received (S802), the routing node 100 first determines whether it is a DODAG root node (S804). If it is determined that the self is not the DODAG route, it determines next to its downlink routing mode (S806).

만약 상기 S806 단계의 판별 결과 자신의 하향 라우팅 모드가 non-storing 모드인 경우, 다음으로 상기 DAO 메시지의 RPL Target Option의 Target Prefix 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하는지의 여부를 판단한다(S808).If it is determined in step S806 that the downlink routing mode is a non-storing mode, next, whether the target prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that transmitted the DAO message match; It is determined (S808).

만약 상기 S808 단계의 판단 결과 상기 DAO 메시지의 RPL Target Option의 Target Prefix 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하는 경우, 라우팅 노드(100)는 상기 DAO 메시지의 Transit Information Option의 Parent Address에 상기 라우팅 노드의 주소를 입력하고(S810), 상기 DAO 메시지를 DODAG 루트로 송신한다(S812).If it is determined in step S808 that the Target Prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that has transmitted the DAO message match, the routing node 100 determines the Parent Address of the Transit Information Option of the DAO message. The routing node enters the address of the routing node (S810), and transmits the DAO message to the DODAG route (S812).

만약 상기 S808 단계의 판단 결과 상기 DAO 메시지의 RPL Target Option의 Target Prefix 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하지 않는 경우에는, 상기 DAO 메시지의 Transit Information Option의 Parent Address에 상기 DAO 메시지를 송신한 송신 노드의 주소를 입력하고(S814), 상기 DAO 메시지를 DODAG 루트로 송신한다(S812).If it is determined in step S808 that the target prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that has transmitted the DAO message do not match, the DAO message is set to the Parent Address of the Transit Information Option of the DAO message. Input the address of the transmitting node that has transmitted the data (S814), and transmit the DAO message to the DODAG route (S812).

한편, 만약 상기 S806 단계의 판별 결과 상기 라우팅 노드의 하향 라우팅 모드가 storing mode인 경우에는, 수신된 상기 DAO 메시지의 RPL Target Option 및 상기 송신 노드의 주소 정보를 이용하여 상기 라우팅 노드의 라우팅 테이블을 업데이트한다(S816). 즉, 상기 라우팅 테이블의 next address에는 상기 DAO 메시지를 송신한 송신 노드의 주소가 기록되고, destination address에는 RPL Target Option의 Target Prefix에 기록된 주소가 기록된다. 그 후 상기 DAO 메시지를 자신의 DAO parent로 송신한다(S812). DAO parent는 일반적으로 자신의 parent를 의미한다.On the other hand, if it is determined in step S806 that the downlink routing mode of the routing node is storing mode, the routing table of the routing node is updated using the RPL Target Option of the received DAO message and the address information of the transmitting node. (S816). That is, the address of the transmitting node that has transmitted the DAO message is recorded in the next address of the routing table, and the address recorded in the Target Prefix of the RPL Target Option is recorded in the destination address. Thereafter, the DAO message is transmitted to its DAO parent (S812). A DAO parent generally means its parent.

한편, 상기 S804 단계의 판단 결과 자신이 DODAG 루트인 경우에는, 상기 DAO 메시지의 Transit Information Option의 값이 비어 있는지의 여부를 판단한다(S818). 만약 상기 값이 비어 있는 경우에는 수신된 상기 DAO 메시지의 RPL Target Option 및 상기 DAO 송신 노드의 주소 정보를 이용하여 storing mode 일 때의 라우팅 테이블을 생성 또는 업데이트 방법으로 라우팅 테이블을 생성/업데이트한다(S820). 즉, 상기 라우팅 테이블의 next address에는 상기 DAO 메시지를 송신한 송신 노드의 주소가 기록되고, destination address에는 RPL Target Option의 Target Prefix에 기록된 주소가 기록된다. 그렇지 않은 경우에는 수신한 DAO 메시지의 RPL Target Option의 target prefix와 Transit Information Option의 parent address를 이용하여 non-storing mode 일 때의 방법으로 라우팅 테이블을 생성 또는 수정한다(S822). 즉 상기 라우팅 테이블의 next address에는 TIO의 parent address가 저장되며, destination address에는 RPL Target Option의 Target Prefix에 기록된 주소가 기록된다.
On the other hand, when the determination result of step S804, if the root of the DODAG itself, it is determined whether the value of the Transit Information Option of the DAO message is empty (S818). If the value is empty, a routing table is generated / updated by a method of generating or updating a routing table in a storing mode using the RPL Target Option of the received DAO message and address information of the DAO transmitting node (S820). ). That is, the address of the transmitting node that has transmitted the DAO message is recorded in the next address of the routing table, and the address recorded in the Target Prefix of the RPL Target Option is recorded in the destination address. Otherwise, the routing table is created or modified in the non-storing mode using the target prefix of the RPL Target Option and the parent address of the Transit Information Option of the received DAO message (S822). That is, the parent address of the TIO is stored in the next address of the routing table, and the address recorded in the Target Prefix of the RPL Target Option is recorded in the destination address.

도 9는 본 발명의 일 실시예에 따른 혼합 모드 라우팅 방법 중 하향 데이터 패킷 처리 방법을 도시한 순서도이다.9 is a flowchart illustrating a downlink data packet processing method in a mixed mode routing method according to an embodiment of the present invention.

RPL border router(주로 DODAG 루트)가 LLN 내/외부에서 하향 패킷(downward packet)을 수신하면, DODAG 루트는 최종 목적지까지 이르는 경로 정보를 SRH(source router header)에 삽입하고 이 경로를 따라 데이터 패킷을 전송한다. 하지만, 본 발명에 따른 혼합 모드의 경우 storing mode와 non-storing mode가 혼재된 상태로, 일부 storing mode인 노드들에 대한 경로 정보는 SRH에 담겨있지 않다. 따라서 이를 해결하기 위하여 다음과 같은 방법을 따르게 된다.When an RPL border router (usually a DODAG route) receives a downlink packet inside / outside the LLN, the DODAG route inserts route information to the source router header (SRH) leading to the final destination and sends data packets along this route. send. However, in the mixed mode according to the present invention, the storing mode and the non-storing mode are mixed, and the path information about the nodes in some storing modes is not contained in the SRH. Therefore, to solve this problem, the following method is followed.

도시된 바와 같이, 상기 하향 데이터 패킷 처리 방법은 패킷을 수신한 라우팅 노드(100)가 DODAG 루트(RPL border router)인지의 여부에 따라 달라진다.As shown, the downlink data packet processing method depends on whether the routing node 100 receiving the packet is a DODAG route (RPL border router).

먼저, DODAG 루트로 데이터 패킷이 수신된 경우(S902, S904, 즉 LLN 내/외부로부터 하향 패킷을 수신한 경우), 라우팅 노드(100)는 최종 목적지까지 이르는 경로 정보를 SRH(source router header)에 삽입하고(S906), 상기 SRH를 프로세싱하여 데이터 패킷을 송신할 다음 노드(next address)를 계산한다(S908).First, when a data packet is received through the DODAG route (S902, S904, i.e., when a downlink packet is received from inside / outside the LLN), the routing node 100 sends the route information to the final destination in the source router header (SRH). In step S906, the SRH is processed to calculate a next address to transmit a data packet (S908).

만약 패킷을 수신한 노드가 DODAG 루트가 아닌 경우, 라우팅 노드(100)는 먼저 수신된 데이터 패킷의 목적지 주소로부터 해당 데이터 패킷이 자신을 최종 목적지로 하는지의 여부를 판단한다(S910). 만약 자신이 수신된 데이터 패킷의 최종 목적지일 경우에는 데이터 패킷이 원하는 최종 목적지에 정상적으로 도착을 완료한 경우이므로 알고리즘은 종료된다. 만약 자신이 데이터 패킷의 최종 목적지가 아닐 경우에는, 다음으로 데이터 패킷의 next address와 자신의 주소가 일치하는 지의 여부를 판단한다(S912). 판단 결과 만약 데이터 패킷의 next address와 자신의 주소가 일치하는 경우에는 최종 목적지에 도달할 수 있는 새로운 next address가 필요하므로 상기 데이터 패킷 헤더의 SRH를 프로세싱하여 새로운 next address를 계산한다(S908). 처리하는 방법은 기존 방법(An IPv6 Routing Header for Source Routes with RPL)과 동일하므로, 이에 대해서는 상세한 설명을 생략하기로 한다.If the node receiving the packet is not the DODAG route, the routing node 100 first determines whether the corresponding data packet is the final destination from the destination address of the received data packet (S910). If it is the final destination of the received data packet, the algorithm is terminated because the data packet has successfully arrived at the desired final destination. If it is not the final destination of the data packet, it is next determined whether the next address of the data packet and its address match (S912). As a result of determination, if the next address of the data packet matches its own address, a new next address for reaching the final destination is required, and the new next address is calculated by processing the SRH of the data packet header (S908). Since the processing method is the same as the existing method (An IPv6 Routing Header for Source Routes with RPL), a detailed description thereof will be omitted.

다음으로, 라우팅 노드(100)는 자신의 이웃 테이블을 검색하여 next address가 1 홉 기준 주위에 존재하는지 확인한다(S914). 만약 상기 S914 단계의 판단 결과, 상기 next address가 상기 이웃 테이블에 존재하는 경우에는, 자신의 주변에 next address가 존재하므로, 상기 데이터 패킷을 next address로 송신한다(S920). Next, the routing node 100 searches its neighbor table and checks whether a next address exists around a 1 hop criterion (S914). If it is determined in step S914 that the next address exists in the neighbor table, since the next address exists in the periphery thereof, the data packet is transmitted to the next address (S920).

만약 상기 S914 단계의 판단 결과, 상기 next address가 상기 이웃 테이블에 존재하지 않는 경우에는, 다음으로 혼합 모드가 활성화되어 있는지의 여부를 판단하고(S916), 혼합 모드가 활성화된 경우에는 다음으로 상기 next address가 라우팅 테이블에 존재하는지 여부를 판단한다(S918).If it is determined in step S914 that the next address does not exist in the neighbor table, it is determined whether a mixed mode is activated next (S916). It is determined whether the address exists in the routing table (S918).

상기 S918 단계의 판단 결과, 상기 next address가 상기 라우팅 테이블에 존재하는 경우에는, 상기 라우팅 테이블에서 상기 next address에 대응하는 라우팅 정보를 획득하고, 상기 데이터 패킷을 획득한 상기 라우팅 정보에 따른 노드로 송신한다(S920).As a result of the determination in step S918, when the next address exists in the routing table, routing information corresponding to the next address is obtained from the routing table, and the data packet is transmitted to a node according to the obtained routing information. (S920).

한편, 상기 S912 단계의 판단 결과 혼합 모드가 활성화되어 있지 않거나, 또는 상기 S914 단계의 판단 결과, 상기 다음 노드 주소가 상기 라우팅 테이블에 존재하지 않거나 또는 상기 라우팅 테이블 자체가 존재하지 않는 경우에는, 수신된 상기 데이터 패킷을 폐기(drop)하고 처음으로 돌아가 다음 데이터 패킷을 수신 대기한다.
On the other hand, if the mixed mode is not activated as a result of the determination in step S912, or if the next node address does not exist in the routing table or the routing table itself does not exist, as a result of the determination in step S914, Drop the data packet and return to the beginning waiting for the next data packet.

도 10 내지 15는 본 발명에 따른 저장 모드, 비저장 모드 및 혼합 모드의 하향 라우팅 방법의 차이를 설명하기 위한 예시도이다. 각각의 도면에서 각 노드의 주소는 원래 IPv6 주소 체계를 가지나, 여기서는 설명의 편의를 위하여 각 노드에 부여된 번호로 각 노드의 주소를 대신함을 유의한다. 또한 각각의 도면에서 DODAG 루트는 1번 노드이며, 노드 간 화살표(실선)는 DIO에 의하여 형성된 상향 라우트 경로를 나타낸다.10 to 15 are exemplary diagrams for explaining the difference between the down routing method of the storage mode, non-storage mode and mixed mode according to the present invention. In each of the drawings, the address of each node originally has an IPv6 addressing system, but for convenience of description, it is noted that the address assigned to each node replaces the address of each node. Also, in each figure, the DODAG route is node 1, and the inter-node arrows (solid lines) indicate upward route paths formed by the DIO.

먼저, 도 10은 저장/비저장 모드에서 하향 라우팅 방법의 차이를 설명하기 위한, DODAG 및 상향 라우트 경로가 설정된 일례의 예시도이다. First, FIG. 10 is an exemplary diagram illustrating an example in which a DODAG and an upstream route path are set to explain a difference in a downlink routing method in a storage / non-storage mode.

도 11은 도10에 설정된 DODAG에서 하향 라우팅모드가 저장모드의 경우, DODAG 루트 및 2번 노드의 하향 라우팅 테이블의 형성예를 나타낸 도면이다. 하향 저장 모드의 경우 각 노드에서 형성된 DAO 메시지는 자신의 부모 노드를 타겟으로 하여 송신된다. 또한, 라우팅 테이블은 리프 노드를 제외한 모든 노드들이 가지게 되며, 본 예에서는 3, 4, 8, 14를 제외한 모든 노드에 라우팅 테이블이 형성된다. 이 중 DODAG 루트 및 2번 노드의 라우팅 테이블의 형성예를 도 11에 도시하였다. RPL border router(주로 DODAG 루트)가 LLN 내/외부에서 하향 패킷(downward packet)을 수신하면 각 노드의 라우팅 테이블을 참조하여 최종 목적지까지 도달하게 된다.FIG. 11 is a diagram illustrating an example of forming a down routing table of a DODAG route and node 2 when the down routing mode is a storage mode in the DODAG set in FIG. 10. In the downlink storage mode, a DAO message formed at each node is transmitted targeting its own parent node. In addition, the routing table has all nodes except the leaf node, and in this example, the routing table is formed in all nodes except 3, 4, 8, and 14. 11 shows an example of the routing table of the DODAG route and node 2. When an RPL border router (usually a DODAG route) receives a downlink packet inside / outside the LLN, it refers to the routing table of each node to reach its final destination.

도 12는 도 10에 설정된 DODAG에서 하향 라우팅 모드가 비저장 모드일경우, 하향 라우트 경로를 설정하기 위한 DAO메시지의 흐름(점선)을 표현한 도면이다. 비저장 모드의 경우 각 노드에서 형성된 DAO 메시지는 모두 DODAG 루트를 타겟으로 하여 송신된다. 이에 따라 라우팅 테이블은 DODAG 루트에서만 생성되며, 이를 도 13에 나타내었다. 이때, 만약 DODAG 루트에서 노드 13으로 패킷을 전송할 경우, SRH에 포함되는 경로는 다음과 같다.
FIG. 12 is a diagram illustrating a flow (dotted line) of a DAO message for establishing a downlink route path when the downlink routing mode is a non-storage mode in the DODAG set in FIG. 10. In the non-storage mode, all DAO messages formed at each node are sent with the target of the DODAG route. Accordingly, the routing table is generated only in the DODAG root, which is shown in FIG. At this time, if a packet is transmitted from the DODAG root to the node 13, the path included in the SRH is as follows.

2->5->6->7->9->10->11->12->13
2->5->6->7->9->10->11->12-> 13

RPL border router(주로 DODAG 루트)가 LLN 내/외부에서 하향 패킷(downward packet)을 수신하면 SRH에 포함된 경로를 따라 최종 목적지까지 도달하게 된다.When an RPL border router (usually a DODAG route) receives a downlink packet inside / outside the LLN, it reaches the final destination along the path included in the SRH.

도 14는 하향 라우팅 모드가 혼합 모드로 구성된 DODAG 및 상향 라우팅 경로(실선)와 하향 라우팅 경로를 설정하기 위한 DAO 메시지의 흐름(점선)을 표현한 예시도로서, 최초 하향 라우팅 모드가 저장 모드이고, (RANK/3) mode 2의 결과가 1일 때(RANK=홉수라 가정)마다, 혹은 node의 주소가 6,7,8,9,13,14 일 경우 하향 라우팅 모드를 변경하도록 변경 조건을 설정한 경우를 나타낸 것이다. 이에 따라 도면에서 저장 모드 노드는 1, 2, 3, 4, 5, 10, 11, 12가 되며, 비저장 모드 노드는 6, 7, 8, 9, 13, 14가 된다. 이 때, 하향 라우팅 테이블을 지닌 노드는 1,2,10,11이다. 이에 따라 점선 화살표로 도시된 바와 같이 저장 모드의 노드는 자신의 부모 노드로 DAO 메시지를 전송하고, 비저장 모드의 노드는 DODAG 루트 노드로 DAO 메시지를 전송한다.FIG. 14 is an exemplary diagram representing a DODAG configured with a mixed down mode in a mixed mode, an uplink path (solid line), and a flow of a DAO message (dashed line) for establishing the downlink path, wherein the initial down routing mode is a storage mode, and FIG. RANK / 3) A change condition is set to change the down-routing mode whenever the result of mode 2 is 1 (assuming RANK = hop count) or when the node address is 6,7,8,9,13,14. The case is shown. Accordingly, in the drawing, the storage mode nodes are 1, 2, 3, 4, 5, 10, 11, and 12, and the non-storage mode nodes are 6, 7, 8, 9, 13, and 14. At this time, the nodes having the downlink routing table are 1,2,10,11. Accordingly, as shown by the dotted arrow, the node in the storage mode transmits the DAO message to its parent node, and the node in the non-storage mode transmits the DAO message to the DODAG root node.

전술한 바와 같이, DAO 메시지의 경우 RPL Target Option의 Target Prefix에는 DAO 메시지를 최초 생성하는 노드의 주소가 입력되며, Transit Information Option의 Parent Address 필드에는 비저장 모드의 경우 자신의 부모 노드의 주소를 입력하고, 저장 모드의 경우 생략한다.As described above, in the case of the DAO message, the address of the node that first generates the DAO message is input in the Target Prefix of the RPL Target Option, and in the Parent Address field of the Transit Information Option, the address of its parent node is input in the non-storage mode. The storage mode is omitted.

예를 들어 노드 14의 경우 비저장 모드이므로, 다음과 같이 입력된다.
For example, since node 14 is in the non-storage mode, it is input as follows.

RPL Target Option의 Target prefix = 14Target prefix of RPL Target Option = 14

TIO의 Parent Address = 13
Parent Address of TIO = 13

노드 12의 경우 저장 모드이므로 최초 DAO 메시지는 다음과 같이 생성된다.
Since node 12 is in storage mode, the first DAO message is generated as follows.

RPL Target Option의 Target prefix = 12Target prefix of RPL Target Option = 12

TIO의 Parent Address = NULL
Parent Address of TIO = NULL

상기 노드 12에서 생성된 DAO 메시지가 노드 9에 도달한 경우, 노드 9는 자신이 비저장 모드이고, DAO 메시지를 송신한 노드(노드 10)와 RPL Target Option의 Target Prefix(노드 12)가 일치하지 않으므로, Transit Information Option의 Parent Address에 상기 DAO 메시지를 송신한 노드의 주소를 입력한다. 즉, 다음과 같다.
When the DAO message generated at the node 12 reaches node 9, the node 9 is in a non-storage mode, and the node (node 10) that sent the DAO message and the target prefix of the RPL target option (node 12) do not match. Therefore, the address of the node that transmitted the DAO message is entered in the Parent Address of the Transit Information Option. That is as follows.

RPL Target Option의 Target prefix = 12Target prefix of RPL Target Option = 12

TIO의 Parent Address = NULL -> 10
Parent Address of TIO = NULL-> 10

한편, 노드 10의 경우 저장 모드이므로 최초 DAO 메시지는 다음과 같이 생성된다.
Meanwhile, in the case of node 10, since the storage mode, the first DAO message is generated as follows.

RPL Target Option의 Target prefix = 10Target prefix of RPL Target Option = 10

TIO의 Parent Address = NULL
Parent Address of TIO = NULL

상기 노드 10에서 생성된 DAO 메시지가 노드 9에 도달한 경우, 노드 9는 자신이 비저장 모드이고, DAO 메시지를 송신한 노드(노드 10)와 RPL Target Option의 Target Prefix(노드 10)가 일치하므로, Transit Information Option의 Parent Address에 자신의 주소를 입력한다. 즉, 다음과 같다.
When the DAO message generated at the node 10 reaches node 9, the node 9 is in the non-storage mode, and the node (node 10) that transmits the DAO message and the target prefix of the RPL target option (node 10) match. Enter your own address in Parent Address of Transit Information Option. That is as follows.

RPL Target Option의 Target prefix = 12Target prefix of RPL Target Option = 12

TIO의 Parent Address = NULL -> 9
Parent Address of TIO = NULL-> 9

이와 동일한 과정으로, 도 8에 도시한 알고리즘을 통하여 각각의 노드로부터 DAO 메시지가 송신되면, 이를 바탕으로 라우팅 테이블이 생성된다. 도 14에 도시된 예에서, 라우팅 테이블은 DODAG 루트인 1번 노드와, 저장 모드 노드 중 리프 노드가 아닌 2, 10, 11번 노드에 생성된다. 즉, 혼합 모드의 경우 저장 모드에 비해 라우팅 테이블 보유 노드의 개수가 감소하는 것을 알 수 있다. 이 중 DODAG 루트와 10번 노드에 생성되는 라우팅 테이블의 예를 도 15에 도시하였다.In the same process, when a DAO message is transmitted from each node through the algorithm shown in FIG. 8, a routing table is generated based on this. In the example shown in FIG. 14, a routing table is created at node 1, which is a DODAG route, and at nodes 2, 10, and 11, which are not leaf nodes among storage mode nodes. In other words, it can be seen that the number of routing table holding nodes is reduced in the mixed mode compared to the storage mode. An example of the routing table generated at the DODAG route and node 10 is shown in FIG. 15.

한편, 이 경우 DODAG 루트에서 노드 13으로 데이터 패킷을 송신할 경우의 SRH 경로는 다음과 같다.
On the other hand, in this case, the SRH path when transmitting a data packet from the DODAG root to the node 13 is as follows.

2->5->6->7->9->10->12->13
2->5->6->7->9->10->12-> 13

즉, 혼합 모드의 경우 비저장 모드에 비해 SRH의 크기가 감소하는 것을 알 수 있다. 또한 저장 모드에 비해 라우팅 테이블을 지닌 노드의 개수가 줄어들게 된다.
That is, it can be seen that the size of the SRH is reduced in the mixed mode compared to the non-storage mode. In addition, the number of nodes with routing tables is reduced compared to the storage mode.

다음으로, 도 14와 같이 혼합 모드로 형성된 DODAG일 경우, DODAG 루트에서 수신된 패킷을 SRH에 따라 노드 13으로 전송하는 과정을 설명한다.Next, in the case of the DODAG formed in the mixed mode as shown in FIG. 14, a process of transmitting a packet received at the DODAG root to the node 13 according to SRH will be described.

먼저, 데이터 패킷을 수신한 DODAG 루트(노드 1)는 노드 13을 목적지로 하는 SRH를 생성하고, 상기 SRH에서 next address(노드 2)를 추출한다. 상기 노드 2는 노드 1의 이웃 테이블에 저장되어 있으므로, 노드 1은 상기 데이터 패킷을 노드 2로 전송한다.First, the DODAG route (node 1) receiving the data packet generates an SRH destined for node 13, and extracts a next address (node 2) from the SRH. Since node 2 is stored in the neighbor table of node 1, node 1 transmits the data packet to node 2.

노드 2는 수신된 패킷의 SRH로부터 새로운 next address(노드 5)를 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 5로 송신한다.Node 2 extracts a new next address (node 5) from the SRH of the received packet and sends the data packet to node 5 with reference to the neighbor node table.

노드 5는 수신된 패킷의 SRH로부터 새로운 next address(노드 6)를 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 6으로 송신한다.Node 5 extracts the new next address (node 6) from the SRH of the received packet and sends the data packet to node 6 with reference to the neighbor node table.

노드 6은 수신된 패킷의 SRH로부터 새로운 next address(노드 7)를 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 7로 송신한다.Node 6 extracts a new next address (node 7) from the SRH of the received packet and sends the data packet to node 7 with reference to the neighbor node table.

노드 7은 수신된 패킷의 SRH로부터 새로운 next address(노드 9)를 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 9로 송신한다.Node 7 extracts the new next address (node 9) from the SRH of the received packet and sends the data packet to node 9 with reference to the neighbor node table.

노드 9는 수신된 패킷의 SRH로부터 새로운 next address(노드 10)를 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 10으로 송신한다.Node 9 extracts a new next address (node 10) from the SRH of the received packet and sends the data packet to node 10 with reference to the neighbor node table.

노드 10은 수신된 패킷의 SRH로부터 새로운 next address(노드 12)를 추출한다. 그리고 상기 데이터 패킷을 송신하기 위하여 먼저 이웃 테이블을 참조하나, 노드 12는 노드 10의 이웃 테이블에 존재하지 않으므로 다음으로 자신의 라우팅 테이블을 참조한다. 도 15에 도시된 바와 같이, 노드 10의 라우팅 테이블에서 노드 12로 패킷을 송신하기 위한 next address는 노드 11이므로, 노드 10은 상기 데이터 패킷을 노드 11로 송신한다.Node 10 extracts a new next address (node 12) from the SRH of the received packet. In order to transmit the data packet, a neighbor table is first referred to. However, since node 12 does not exist in the neighbor table of node 10, it next refers to its own routing table. As shown in FIG. 15, node 10 transmits the data packet to node 11 since the next address for transmitting the packet to node 12 in node 10's routing table is node 11.

노드 11은 수신된 패킷의 next address가 노드 12이므로(즉, 자신이 목적지가 아니므로 SRH에서 새로운 next address를 추출하지 않고), 이웃 테이블을 검색하고, 상기 이웃 테이블에 노드 12의 정보가 포함되어 있으므로, 상기 패킷을 노드 12로 송신한다.Node 11 retrieves the neighbor table because the next address of the received packet is node 12 (that is, without extracting the new next address from SRH because it is not the destination), and the neighbor table contains the node 12 information. Therefore, the packet is transmitted to the node 12.

노드 12는 수신된 패킷의 SRH로부터 새로운 next address(노드 13)을 추출하고, 이웃 노드 테이블을 참조하여 상기 데이터 패킷을 노드 13으로 송신한다. 노드 13은 상기 데이터 패킷의 최종 목적지 주소이므로, 상기 데이터 패킷의 전송 과정은 종료된다.
Node 12 extracts the new next address (node 13) from the SRH of the received packet and sends the data packet to node 13 with reference to the neighbor node table. Since node 13 is the final destination address of the data packet, the transmission process of the data packet is terminated.

한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야에서 통상의 지식을 가진 자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
On the other hand, an embodiment of the present invention may include a computer-readable recording medium including a program for performing the methods described herein on a computer. The computer-readable recording medium may include a program command, a local data file, a local data structure, or the like, alone or in combination. The media may be those specially designed and constructed for the present invention or may be known and available to those of ordinary skill in the computer software arts. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floppy disks, and magnetic media such as ROMs, And hardware devices specifically configured to store and execute program instructions. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like.

이상에서 대표적인 실시예를 통하여 본 발명에 대하여 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be construed as limiting the scope of the present invention. I will understand.

그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
Therefore, the scope of the present invention should not be limited to the above-described embodiments, but should be determined by equivalents to the appended claims, as well as the appended claims.

100: 혼합 모드 라우팅 노드
102: 설정부
104: 패킷 생성부
106: 패킷 송수신부
108: DIO 메시지 처리부
110: DAO 메시지 처리부
112: 데이터 패킷 처리부
100: mixed-mode routing node
102: setting unit
104: packet generator
106: packet transceiver
108: DIO message processing unit
110: DAO message processing unit
112: data packet processing unit

Claims (13)

DIO 메시지를 수신하고, 수신된 상기 DIO 메시지에 포함된 하향 라우팅 모드 설정 정보 및 기 설정된 하향 라우팅 모드 변경 조건에 따라 상기 라우팅 노드의 하향 라우팅 모드를 설정하거나 기 설정된 하향 라우팅 모드를 변경하는 DIO 메시지 처리부;
DAO 메시지를 수신하고, 수신된 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(target prefix), 상기 DAO 메시지를 송신한 송신 주소 및 상기 라우팅 노드의 하향 라우팅 모드에 따라 상기 DAO 메시지의 트랜짓 인포메이션 옵션(Transit Information Option)의 페어런트 어드레스(parent address)를 변경하거나 라우팅 테이블을 업데이트하는 DAO 메시지 처리부; 및
데이터 패킷을 수신하고, 상기 데이터 패킷에 포함된 소스 라우트 헤더(SRH)로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하며, 상기 다음 노드 주소를 이웃 테이블 또는 라우팅 테이블에서 검색한 결과에 따라 상기 데이터 패킷을 송신하는 데이터 패킷 처리부를 포함하는 RPL 라우팅 프로토콜에서의 혼합 모드 라우팅 노드.
A DIO message processing unit for receiving a DIO message and setting the down routing mode of the routing node or changing the preset down routing mode according to the down routing mode setting information included in the received DIO message and a preset down routing mode change condition. ;
Receive a DAO message, and according to the target prefix of the RPL target option (RPL Target Option) of the received DAO message, the transmission address that transmitted the DAO message and the downlink routing mode of the routing node of the DAO message A DAO message processing unit for changing a parent address of a Transit Information Option or updating a routing table; And
Receiving a data packet, obtaining a next address to transmit the data packet from a source route header (SRH) included in the data packet, and searching for the next node address in a neighbor table or a routing table And a data packet processor for transmitting the data packet according to the RPL routing protocol.
청구항 1에 있어서,
상기 DIO 메시지 처리부는, 수신된 상기 DIO 메시지의 하향 라우팅 모드 및 혼합 모드 플래그가 설정되어 있는 경우, 상기 하향 라우팅 모드 변경 조건을 만족하는지 여부를 판단하여 만족하는 경우 기 설정된 하향 라우팅 모드를 변경하는, 혼합 모드 라우팅 노드.
The method according to claim 1,
The DIO message processing unit, when the down-routing mode and mixed mode flag of the received DIO message is set, determines whether the down-routing mode change condition is satisfied, and if it is satisfied to change the preset down-routing mode, Mixed mode routing node.
청구항 2에 있어서,
상기 혼합 모드 플래그는, 수신된 상기 DIO 메시지의 미사용 플래그 또는 리저브드 필드(Reserved Field) 중 기 설정된 비트로부터 획득되는, 혼합 모드 라우팅 노드.
The method according to claim 2,
The mixed mode flag is obtained from a predetermined bit of an unused flag or a reserved field of the received DIO message.
청구항 1에 있어서,
상기 DAO 메시지 처리부는, 상기 라우팅 노드의 하향 라우팅 모드가 비저장 모드이고, 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(Target Prefix) 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하는 경우, 상기 DAO 메시지의 Transit Information Option의 parent address 필드에 상기 라우팅 노드의 주소를 입력하고 입력된 상기 DAO 메시지를 송신하는, 혼합 모드 라우팅 노드.
The method according to claim 1,
The DAO message processing unit, wherein the downlink routing mode of the routing node is a non-storage mode, a target prefix address of an RPL target option of the DAO message, and an address of a transmitting node that has transmitted the DAO message. Matches, enters the address of the routing node in the parent address field of the Transit Information Option of the DAO message and transmits the input DAO message.
청구항 4에 있어서,
상기 DAO 메시지 처리부는, 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(Target Prefix) 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하지 않는 경우, 상기 DAO 메시지의 Transit Information Option의 parent address 필드에 상기 DAO 송신 노드의 주소를 입력하고, 입력된 상기 DAO 메시지를 송신하는 혼합 모드 라우팅 노드.
The method of claim 4,
The DAO message processing unit, when the target prefix address of the RPL Target Option of the DAO message and the address of the transmitting node that sent the DAO message does not match, Transit Information Option of the DAO message Mixed mode routing node for inputting the address of the DAO transmitting node in the parent address field of the, and transmitting the input DAO message.
청구항 1에 있어서,
상기 데이터 패킷 처리부는, 상기 다음 노드 주소가 상기 이웃 테이블에 존재하는 경우 상기 데이터 패킷을 상기 다음 노드로 송신하며,
상기 이웃 테이블에 존재하지 않는 경우 획득된 상기 다음 노드 주소를 라우팅 테이블에서 검색하여 상기 다음 노드 주소에 대응하는 라우팅 정보를 획득하고, 획득된 상기 라우팅 정보에 따라 상기 데이터 패킷을 송신하는, 혼합 모드 라우팅 노드.
The method according to claim 1,
The data packet processing unit transmits the data packet to the next node when the next node address exists in the neighbor table.
Mixed mode routing in which the next node address obtained when not present in the neighbor table is searched in a routing table to obtain routing information corresponding to the next node address, and the data packet is transmitted according to the obtained routing information. Node.
혼합 모드 라우팅 노드에서 수행되는 RPL 라우팅 프로토콜에서의 혼합 모드 라우팅 방법으로서,
DIO 메시지를 수신하고, 수신된 상기 DIO 메시지에 포함된 하향 라우팅 모드 설정 정보 및 기 설정된 하향 라우팅 모드 변경 조건에 따라 상기 라우팅 노드의 하향 라우팅 모드를 설정하거나 기 설정된 하향 라우팅 모드를 변경하는 제1단계;
DAO 메시지를 수신하고, 수신된 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(target prefix), 상기 DAO 메시지를 송신한 송신 주소 및 상기 라우팅 노드의 하향 라우팅 모드에 따라 상기 DAO 메시지의 트랜짓 인포메이션 옵션(Transit Information Option)의 페어런트 어드레스(parent address)를 변경하거나 라우팅 테이블을 업데이트하는 제2단계; 및
데이터 패킷을 수신하고, 상기 데이터 패킷에 포함된 소스 라우트 헤더(SRH)로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하며, 상기 다음 노드 주소를 이웃 테이블 또는 라우팅 테이블에서 검색한 결과에 따라 상기 데이터 패킷을 다음 노드로 송신하는 제3단계를 포함하는 RPL IPv6 라우팅 프로토콜에서의 혼합 모드 라우팅 방법.
A mixed mode routing method in an RPL routing protocol performed in a mixed mode routing node,
A first step of receiving a DIO message and setting the down routing mode of the routing node or changing the preset down routing mode according to the down routing mode setting information included in the received DIO message and a preset down routing mode change condition; ;
Receive a DAO message, and according to the target prefix of the RPL target option (RPL Target Option) of the received DAO message, the transmission address that transmitted the DAO message and the downlink routing mode of the routing node of the DAO message A second step of changing a parent address of a Transit Information Option or updating a routing table; And
Receiving a data packet, obtaining a next address to transmit the data packet from a source route header (SRH) included in the data packet, and searching for the next node address in a neighbor table or a routing table And a third step of transmitting the data packet to a next node according to the RPL IPv6 routing protocol.
청구항 7에 있어서,
상기 제1단계는, 수신된 상기 DIO 메시지의 하향 라우팅 모드(downward routing mode)가 설정되고, 혼합 모드(mixed mode) 플래그가 활성화되어 있는지의 여부를 판단하는 제1-1단계;
상기 제1-1단계의 판단 결과 하향 라우팅 모드가 설정되고, 혼합 모드 플래그가 활성화되어 있는 경우, 기 설정된 하향 라우팅 모드 변경 조건을 만족하는지 여부를 판단하는 제1-2단계; 및
상기 제1-2단계의 판단 결과 하향 라우팅 모드 변경 조건을 만족하는 경우, 기 설정된 하향 라우팅 모드가 저장 모드(storing mode)인 경우 비저장 모드(non-storing mode)로 변경하고, 기 설정된 하향 라우팅 모드가 비저장 모드인 경우 저장 모드로 변경하는 제1-3단계를 더 포함하는 혼합 모드 라우팅 방법.
The method of claim 7,
The first step may include: a first-first step of determining whether a downward routing mode of the received DIO message is set and a mixed mode flag is activated;
Determining whether the downlink routing mode change condition is satisfied when the downlink routing mode is set and the mixed mode flag is activated; And
When the downlink routing mode change condition is satisfied as a result of the determination in step 1-2, when the preset downlink routing mode is the storage mode, the mode is changed to a non-storing mode, and the preset downlink routing is performed. If the mode is a non-save mode, mixed mode routing method further comprises steps 1-3.
청구항 8에 있어서,
수신된 상기 DIO 메시지의 혼합 모드 플래그는, 상기 DIO 메시지의 미사용 플래그 또는 리저브드 필드(Reserved Field) 중 기 설정된 비트로부터 획득되는, 혼합 모드 라우팅 방법.
The method according to claim 8,
The mixed mode flag of the received DIO message is obtained from a predetermined bit among an unused flag or a reserved field of the DIO message.
청구항 7에 있어서,
상기 제2단계는, 상기 라우팅 노드의 하향 라우팅 모드를 판별하는 제2-1단계;
상기 제2-1단계의 판별 결과 상기 라우팅 노드의 하향 라우팅 모드가 비저장 모드인 경우, 상기 DAO 메시지의 RPL 타겟 옵션(RPL Target Option)의 타겟 프리픽스(Target Prefix) 주소와 상기 DAO 메시지를 송신한 송신 노드의 주소가 일치하는지의 여부를 판단하는 제2-2단계;
상기 제2-2단계의 판단 결과 일치하는 경우, 상기 DAO 메시지의 Transit Information Option의 parent address 필드에 상기 라우팅 노드의 주소를 입력하는 제2-3단계; 및
상기 DAO 메시지를 송신하는 제2-4단계를 더 포함하는 혼합 모드 라우팅 방법.
The method of claim 7,
The second step may include a step 2-1 of determining a downlink routing mode of the routing node;
As a result of the determination in step 2-1, when the downlink routing mode of the routing node is the non-storage mode, a target prefix address of the RPL target option of the DAO message and the DAO message are transmitted. Step 2-2 of determining whether the addresses of the transmitting nodes match;
A second to third step of inputting an address of the routing node in a parent address field of a Transit Information Option of the DAO message when the determination result of the step 2-2 is matched; And
Mixed mode routing method further comprising the step 2-4 of transmitting the DAO message.
청구항 10에 있어서,
상기 제2-3단계는, 상기 제2-2단계의 판단 결과 일치하지 않는 경우 상기 DAO 메시지의 Transit Information Option의 parent address 필드에 상기 DAO 송신 노드의 주소를 입력하는 단계를 더 포함하는, 혼합 모드 라우팅 방법.
The method of claim 10,
Step 2-3 further includes the step of inputting the address of the DAO transmitting node in the parent address field of the Transit Information Option of the DAO message if the determination of step 2-2 does not match. Routing method.
청구항 11에 있어서,
상기 제3단계는, 수신된 상기 데이터 패킷의 소스 라우트 헤더로부터 상기 데이터 패킷을 송신할 다음 노드 주소(next address)를 획득하는 제3-1단계;
상기 제3-1단계에서 획득된 상기 다음 노드 주소가 이웃 테이블(neighbor table)에 존재하는지 여부를 판단하는 제3-2단계;
상기 제3-2단계의 판단 결과, 상기 다음 노드 주소가 상기 이웃 테이블에 존재하는 경우 상기 데이터 패킷을 상기 다음 노드로 송신하고, 상기 이웃 테이블에 존재하지 않는 경우 상기 다음 노드 주소를 상기 라우팅 테이블에서 검색하여 상기 다음 노드 주소에 대응하는 라우팅 정보를 획득하고, 획득된 상기 라우팅 정보에 따라 상기 데이터 패킷을 다음 노드로 송신하는 제3-3단계를 더 포함하는, 혼합 모드 라우팅 방법.
The method of claim 11,
The third step includes: obtaining a next address (next address) to transmit the data packet from the received source route header of the data packet;
Step 3-2 of determining whether the next node address obtained in step 3-1 exists in a neighbor table;
As a result of the determination in step 3-2, if the next node address exists in the neighbor table, the data packet is transmitted to the next node. If the next node address does not exist in the neighbor table, the next node address is transmitted in the routing table. And searching for and obtaining routing information corresponding to the next node address, and transmitting the data packet to a next node according to the obtained routing information.
청구항 7 내지 12 중 어느 한 항에 기록된 방법을 컴퓨터상에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for performing the method according to any one of claims 7 to 12 on a computer.
KR1020110111561A 2011-10-28 2011-10-28 Node apparatus for mixed mode routing in rpl routing protocol and method thereof KR101208400B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110111561A KR101208400B1 (en) 2011-10-28 2011-10-28 Node apparatus for mixed mode routing in rpl routing protocol and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110111561A KR101208400B1 (en) 2011-10-28 2011-10-28 Node apparatus for mixed mode routing in rpl routing protocol and method thereof

Publications (1)

Publication Number Publication Date
KR101208400B1 true KR101208400B1 (en) 2012-12-05

Family

ID=47906915

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110111561A KR101208400B1 (en) 2011-10-28 2011-10-28 Node apparatus for mixed mode routing in rpl routing protocol and method thereof

Country Status (1)

Country Link
KR (1) KR101208400B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338493A (en) * 2013-05-31 2013-10-02 同济大学 Adaptive multi-path route method based on RPL
KR101678954B1 (en) 2015-09-21 2016-11-23 부산대학교 산학협력단 Routing Apparatus for Considering Bottleneck Node Lifetime and Route Link Quality in RPL-based IoT Wireless Network and Method of the Same
KR101755596B1 (en) 2016-05-09 2017-07-07 부산대학교 산학협력단 Apparatus for reducing sub tree routing overhead and recovering method in RPL based IoT Wireless Network
KR20170103248A (en) * 2016-03-03 2017-09-13 한국전자통신연구원 Network device and communication method of the same
KR20180045590A (en) 2016-10-26 2018-05-04 부산대학교 산학협력단 System and Method for scheduling in TSCH and RPL based Industrial IoT Networks
KR20180066386A (en) * 2016-12-08 2018-06-19 전북대학교산학협력단 Backpressure Routing Method and Apparatus Usng DODAG Structure
KR20200004580A (en) 2018-07-04 2020-01-14 부산대학교 산학협력단 System and Method for Supporting Improved Mobility for Downward Traffic in RPL
KR20210103628A (en) 2020-02-13 2021-08-24 대구대학교 산학협력단 Routing Method for Improving Energy Efficiency and Packet Transmission / Reception in RPL-based Wireless Networks
JP2022022277A (en) * 2015-08-28 2022-02-03 テキサス インスツルメンツ インコーポレイテッド Network address assignment and reclamation for hierarchical based rpl networks
US11265796B2 (en) 2019-08-08 2022-03-01 Cisco Technology, Inc. Overlapping subdags in a RPL network
KR20220094058A (en) 2020-12-28 2022-07-05 부산대학교 산학협력단 System and Method for Increasing the Reliability of Downstream Traffic to Mobile Devices in an RPL Environment
CN116016336A (en) * 2022-12-30 2023-04-25 郑州中科集成电路与系统应用研究院 HRPL-based high-efficiency inter-node communication method

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338493A (en) * 2013-05-31 2013-10-02 同济大学 Adaptive multi-path route method based on RPL
CN103338493B (en) * 2013-05-31 2016-07-13 同济大学 Adaptive multi-path method for routing based on RPL
JP7249720B2 (en) 2015-08-28 2023-03-31 テキサス インスツルメンツ インコーポレイテッド Allocation and Reuse of Network Addresses for Hierarchy-Based RPL Networks
JP2022022277A (en) * 2015-08-28 2022-02-03 テキサス インスツルメンツ インコーポレイテッド Network address assignment and reclamation for hierarchical based rpl networks
KR101678954B1 (en) 2015-09-21 2016-11-23 부산대학교 산학협력단 Routing Apparatus for Considering Bottleneck Node Lifetime and Route Link Quality in RPL-based IoT Wireless Network and Method of the Same
KR101940753B1 (en) 2016-03-03 2019-01-22 한국전자통신연구원 Network device and communication method of the same
KR20170103248A (en) * 2016-03-03 2017-09-13 한국전자통신연구원 Network device and communication method of the same
KR101755596B1 (en) 2016-05-09 2017-07-07 부산대학교 산학협력단 Apparatus for reducing sub tree routing overhead and recovering method in RPL based IoT Wireless Network
KR20180045590A (en) 2016-10-26 2018-05-04 부산대학교 산학협력단 System and Method for scheduling in TSCH and RPL based Industrial IoT Networks
KR101892262B1 (en) * 2016-12-08 2018-08-29 서울대학교산학협력단 Backpressure Routing Method and Apparatus Usng DODAG Structure
KR20180066386A (en) * 2016-12-08 2018-06-19 전북대학교산학협력단 Backpressure Routing Method and Apparatus Usng DODAG Structure
KR20200004580A (en) 2018-07-04 2020-01-14 부산대학교 산학협력단 System and Method for Supporting Improved Mobility for Downward Traffic in RPL
US11265796B2 (en) 2019-08-08 2022-03-01 Cisco Technology, Inc. Overlapping subdags in a RPL network
US11622312B2 (en) 2019-08-08 2023-04-04 Cisco Technology, Inc. Overlapping subdags in a RPL network
KR20210103628A (en) 2020-02-13 2021-08-24 대구대학교 산학협력단 Routing Method for Improving Energy Efficiency and Packet Transmission / Reception in RPL-based Wireless Networks
KR20220094058A (en) 2020-12-28 2022-07-05 부산대학교 산학협력단 System and Method for Increasing the Reliability of Downstream Traffic to Mobile Devices in an RPL Environment
US11431622B2 (en) 2020-12-28 2022-08-30 Pusan National University Industry-University Cooperation Foundation Device and method for increasing reliability of downlink traffic to mobile devices in RPL environment
CN116016336A (en) * 2022-12-30 2023-04-25 郑州中科集成电路与系统应用研究院 HRPL-based high-efficiency inter-node communication method
CN116016336B (en) * 2022-12-30 2024-04-23 郑州中科集成电路与系统应用研究院 HRPL-based efficient inter-node communication method

Similar Documents

Publication Publication Date Title
KR101208400B1 (en) Node apparatus for mixed mode routing in rpl routing protocol and method thereof
US7366111B2 (en) Arrangement for providing optimized connections between peer routers in a tree-based ad hoc mobile network
US7860025B2 (en) Directed acyclic graph discovery and network prefix information distribution relative to a clusterhead in an ad hoc mobile network
EP1966961B1 (en) Method and system for improving a wireless communication route
US9154407B2 (en) Maintained message delivery during routing domain migration
KR101986929B1 (en) A method for routing packets, a multi-hop wireless network, and a node that routes packets
EP2381722A2 (en) Arrangement for providing network prefix information from attached mobile routers to a clusterhead in a tree-based ad hoc mobile network
JP5800019B2 (en) Communication path control system, path control device, communication path control method, and path control program
US20030142679A1 (en) Packet switching system, packet switching method, routing apparatus, structure of packet, and packet generating method
US20090196227A1 (en) Method and network node for routing data packets in communication networks
JP2007142612A (en) Wireless multi-hop network, communication terminal and resource reservation communication method for use therein
US10938707B2 (en) Peer-to-peer optimization in existing tree-based topology based on generating locally-optimized tree using confined advertisements
Clausen et al. Rfc7181: The optimized link state routing protocol version 2
JP4927658B2 (en) Routing method and node device
Hussein et al. Proactive algorithm dynamic mobile structure of Routing protocols of ad hoc networks
US20140376409A1 (en) Routing method and apparatus
CN110881006B (en) Method for sending message, network equipment and computer storage medium
CN108965122B (en) Routing method, device and computer readable storage medium
Dash et al. Flooding control in named data networking
JP4124099B2 (en) Communication terminal and communication network
KR101022532B1 (en) Method for routing paket in wireless communication system
KR100943638B1 (en) Method and device for reactive routing in low power sensor network
JP4687292B2 (en) Communication device and method for disconnecting unnecessary wireless link in network
Sakthi Ganesh et al. Demand on temporary parallel route recovery for frequent link failure in VANET
CN115242703A (en) Routing communication method and system suitable for private network

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150930

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee