KR100659614B1 - ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof - Google Patents

ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof Download PDF

Info

Publication number
KR100659614B1
KR100659614B1 KR1020050031554A KR20050031554A KR100659614B1 KR 100659614 B1 KR100659614 B1 KR 100659614B1 KR 1020050031554 A KR1020050031554 A KR 1020050031554A KR 20050031554 A KR20050031554 A KR 20050031554A KR 100659614 B1 KR100659614 B1 KR 100659614B1
Authority
KR
South Korea
Prior art keywords
address
address block
level
branch
predetermined
Prior art date
Application number
KR1020050031554A
Other languages
Korean (ko)
Other versions
KR20060045776A (en
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 삼성전자주식회사
Publication of KR20060045776A publication Critical patent/KR20060045776A/en
Application granted granted Critical
Publication of KR100659614B1 publication Critical patent/KR100659614B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5053Lease time; Renewal aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Abstract

복수개의 디바이스를 포함한 지그비 네트워크 환경에서의 어드레스 할당 방법이 개시된다. 본 어드레스 할당 방법은, (a) 복수개의 디바이스가 클러스터-트리 구조로 연결되는 단계, (b) 클러스터 트리 구조의 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 최하위 레벨부터 차상위 레벨 순서대로, 자신이 사용하고자 하는 소정 크기의 어드레스 블럭을 자신의 상위 디바이스로 각각 요청하는 단계, 및, (c) 클러스터 트리 구조의 최상위 레벨 내지 차하위 레벨에 속하는 각 디바이스가, 최상위 레벨부터 차하위 레벨 순서대로, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 하위 디바이스로 할당하는 단계를 포함한다. 이에 따라, 전체 어드레스를 효율적으로 사용할 수 있게 된다.Disclosed is a method of address allocation in a Zigbee network environment including a plurality of devices. The address allocation method includes (a) connecting a plurality of devices in a cluster-tree structure, and (b) each device belonging to the lowest level to the next highest level of the cluster tree structure, in order from the lowest level to the next highest level, itself. Requesting each of the higher-order devices of an address block of a predetermined size to be used, and (c) each device belonging to the highest level to the next level of the cluster tree structure, in order from the highest level to the next level, Allocating an address block of a size requested by a lower device of the lower device to the lower device. As a result, the entire address can be efficiently used.

지그비 네트워크, 클러스터-트리, 어드레스, 디바이스 ZigBee Network, Cluster-Tree, Address, Device

Description

클러스터-트리 구조로 연결된 이후에 어드레스를 할당하는 지그비 네트워크 디바이스, 그 어드레스 할당 방법, 및, 라우팅 방법 { ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof }ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method approx, and, routing method kind}

도 1은 종래 방법에 따라 어드레스가 할당된 클러스터-트리 구조의 지그비 네트워크 환경 구성을 나타내는 모식도,1 is a schematic diagram showing the configuration of a Zigbee network environment in which a cluster-tree structure is assigned an address according to a conventional method;

도 2는 본 발명의 일 실시 예에 따른 지그비 네트워크 환경의 어드레스 할당 방법을 설명하기 위한 흐름도,2 is a flowchart illustrating an address allocation method in a Zigbee network environment according to an embodiment of the present invention;

도 3 내지 도 6은 본 발명의 일 실시 예에 따라 어드레스가 할당된 클러스터-트리 구조의 지그비 네트워크 환경 구성을 나타내는 모식도,3 to 6 are schematic diagrams illustrating a ZigBee network environment configuration of an address-allocated cluster-tree structure according to an embodiment of the present invention;

도 7은 본 지그비 네트워크 환경을 구성하는 디바이스간의 연결이 끊어진 경우에 복구하는 방법을 설명하기 위한 흐름도, 7 is a flowchart illustrating a method of recovering when a connection between devices configuring the Zigbee network environment is lost;

도 8은 본 지그비 네트워크 환경을 구성하는 디바이스간의 연결이 끊어진 경우에 복구하는 과정을 설명하기 위한 모식도,8 is a schematic diagram for explaining a process of recovering when a connection between devices configuring the Zigbee network environment is lost;

도 9는 매쉬 구조로 변환된 지그비 네트워크 환경 구성을 나타내는 모식도,9 is a schematic diagram illustrating a ZigBee network environment configuration converted to a mesh structure;

도 10은 본 발명의 일 실시 예에 따른 지그비 네트워크 디바이스의 구성을 나타내는 블럭도, 그리고,10 is a block diagram showing a configuration of a Zigbee network device according to an embodiment of the present invention;

도 11은 본 발명의 일 실시 예에 따른 지그비 네트워크 환경의 라우팅 방법을 설명하기 위한 흐름도이다. 11 is a flowchart illustrating a routing method of a Zigbee network environment according to an embodiment of the present invention.

* 도면 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawing

110 : 통신부 120 : 제어부110: communication unit 120: control unit

130 : 어드레스 블럭 산정부 140 : 어드레스 블럭 할당부130: address block calculation unit 140: address block allocation unit

150 : 연산부 160 : 메모리부150: calculator 160: memory

본 발명은 지그비 네트워크 환경을 구성하는 지그비 네트워크 디바이스, 지그비 네트워크 환경에서의 어드레스 할당 방법, 및 라우팅 방법에 관한 것으로, 보다 상세하게는, 클러스터 트리 구조가 연결된 후, 각 하위 디바이스의 연결순서에 따라 순차적으로 어드레스를 할당하는 지그비 네트워크 환경을 구성하는 지그비 네트워크 디바이스, 지그비 네트워크 환경에서의 어드레스 할당 방법, 및 이를 이용한 라우팅 방법에 관한 것이다. The present invention relates to a ZigBee network device constituting a ZigBee network environment, an address allocation method in a ZigBee network environment, and a routing method. More specifically, after the cluster tree structure is connected, the present invention sequentially processes the connection order of each subordinate device. The present invention relates to a Zigbee network device constituting a Zigbee network environment for allocating an address, a method for allocating addresses in a Zigbee network environment, and a routing method using the same.

지그비(Zigbee)란 블루투스(bluetooth)에 비해 저전력으로 구현가능하며, 소프트웨어, 관련부품들의 크기를 최소화하여 원가가 블루투스의 2분의 1에 그치는 등 제어와 센서를 기본으로 하는 홈 네트워크에 적합한 무선 통신 기술이다. Zigbee can be implemented with lower power than Bluetooth. Wireless communication is suitable for home network based on control and sensor. It costs less than 1/2 of Bluetooth by minimizing the size of software and related components. Technology.

지그비에 관한 네트워크 표준 규격 v0.85[1]은 PAN(Personal Area Network) 내의 모든 디바이스를 규합하는 클러스터 트리 구조(Cluster tree structure)에 대 하여 정의하고 있다. 이러한 클러스터 트리 구조에 편입(join)하는 모든 디바이스는 트리 구조에 따른 어드레스를 할당받게 된다. 할당된 어드레스는 지그비 네트워크 환경에서의 라우팅 시에 사용되게 된다.The ZigBee Network Standard Specification v0.85 [1] defines a cluster tree structure that aggregates all devices in a personal area network (PAN). All devices joining the cluster tree structure are assigned an address according to the tree structure. The assigned address will be used in routing in a Zigbee network environment.

어드레스 할당을 위해서는, 지그비 코디네이터(ZigBee coordinator)는 네트워크의 전체 크기를 고려하여, 두 개의 네트워크 파라미터, 즉, Cm 및 Lm을 정의한다. Cm이란 각 디바이스에 연결될 수 있는 디바이스(이하, 하위 디바이스)의 최대 개수, Lm은 트리 구조의 최대 레벨 깊이(depth)를 의미한다. For address assignment, the ZigBee coordinator defines two network parameters, Cm and Lm, taking into account the overall size of the network. Cm is the maximum number of devices (hereinafter, referred to as lower devices) that can be connected to each device, and Lm is the maximum level depth of the tree structure.

지그비 네트워크 환경에서의 종래의 어드레스 할당 방법에 따르면, 각 디바이스에 대하여 어드레스를 할당한다. 이 경우, 지그비 코디네이터는 각 디바이스의 하위 디바이스가 연결될 개연성까지 고려하여 어드레스를 할당한다. 즉, 지그비 코디네이터는 자신의 어드레스가 s인 경우, 최초 연결된 디바이스의 어드레스는 s+1로 할당한다. 두번째로 연결된 디바이스의 어드레스는 s+1+CskipLs 로 할당한다. 다음 연결되는 디바이스의 어드레스는 s+1+2*CskipLs 로 할당한다. 즉, Cm번째 연결되는 디바이스의 어드레스는 s+1+(Cm-1)*CskipLs이 된다. 여기서, CskipLs은 아래의 수식으로 표현될 수 있다.According to the conventional address assignment method in a Zigbee network environment, an address is assigned to each device. In this case, the Zigbee coordinator allocates an address considering the probability that the lower device of each device will be connected. That is, the Zigbee coordinator assigns the address of the first connected device to s + 1 when its address is s. The address of the second connected device is s + 1 + Cskip Ls To be assigned. The address of the next connected device is assigned as s + 1 + 2 * Cskip Ls . That is, the address of the Cmth connected device is s + 1 + (Cm-1) * Cskip Ls . Here, Cskip Ls may be represented by the following equation.

Figure 112005019776492-pat00001
Figure 112005019776492-pat00001

수학식 1에서 BL은 전체 네트워크의 어드레스 크기, Ls는 어드레스 s를 가지는 지그비 코디네이터의 레벨 넘버를 의미한다. BL은 Cm 및 Lm을 이용하여 아래의 수식을 통해 연산될 수 있다. In Equation 1, B L denotes the address size of the entire network, and L s denotes the level number of the Zigbee coordinator having the address s. B L may be calculated using the following equation using Cm and Lm.

Figure 112005019776492-pat00002
Figure 112005019776492-pat00002

지그비 코디네이터는 자신이 정의한 Cm 및 Lm을 각 디바이스로 전달한다. 이에 따라, 각 디바이스도 자신의 하위 디바이스에 대하여 상술한 방식으로 어드레스를 할당한다.  The ZigBee Coordinator delivers its defined Cm and Lm to each device. Accordingly, each device also assigns an address to its subordinate device in the manner described above.

도 1은 상술한 방식으로 어드레스가 할당된 종래의 지그비 네트워크 환경을 나타내는 모식도이다. 도 1에 따르면, 디바이스 A가 최종 지그비 코디네이터가 된다. 디바이스 A의 어드레스는 0이 되고, Cm 및 Lm은 각각 4로 정의된다. 한편, 디바이스 A에는 하위 디바이스 B, C, D가 연결된다. 수학식 2에 따르면, 최종 지그비 코디네이터에서 사용가능한 전체 어드레스 크기 BL은 341로 계산된다. 이를 이용하여 수학식 1에 따른 연산을 수행하면, 최종 지그비 코디네이터의 Cskip은 85로 연산된다. 이에 따라, 하위 디바이스 B, C, D 각각의 어드레스는 85의 간격을 가지게 된다. 구체적으로는, 최초 연결된 디바이스 B의 어드레스는 1이 되고, 두번째 연결된 디바이스 C는 86, 디바이스 D는 171의 어드레스가 할당된다. 한편, 수학식 2를 이용하여, 최초 레벨(Ls=1)에 속하는 디바이스 B, C, D의 Cskip을 연산하면, 21이 된다. 이에 따라, 두번째 레벨(Ls)에 속하는 디바이스 E~ J 각각의 어드레스는 21의 간격을 가지게 된다. 1 is a schematic diagram showing a conventional Zigbee network environment in which an address is assigned in the above-described manner. According to FIG. 1, device A becomes the final Zigbee coordinator. The address of device A is zero, and Cm and Lm are each defined as four. On the other hand, the lower devices B, C, and D are connected to the device A. According to Equation 2, the total address size B L usable in the final Zigbee coordinator is calculated to be 341. By performing the calculation according to Equation 1 using this, the final Zigbee coordinator Cskip is calculated to 85. Accordingly, the addresses of the lower devices B, C, and D have an interval of 85 degrees. Specifically, the address of the first connected device B is 1, the address of the second connected device C is 86 and the device D is assigned 171. On the other hand, if Cskip of the devices B, C, and D belonging to the initial level (Ls = 1) is calculated using Equation 2, 21 is obtained. Accordingly, the addresses of the devices E to J belonging to the second level Ls have an interval of 21.

도 1의 어드레스 할당 방식에 따르면, 전체 지그비 네트워크의 각 디바이스는 일률적으로 고정된 Cm 및 Lm을 사용하여 어드레스를 할당한다. 즉, 각 디바이스는 자신의 상위 디바이스로부터 Cm 및 Lm을 수신한 후, 상술한 수학식 1, 2를 이용하여 자신의 하위 디바이스의 어드레스를 할당하게 된다. According to the address assignment scheme of FIG. 1, each device in the entire Zigbee network is assigned an address using fixedly fixed Cm and Lm. That is, each device receives Cm and Lm from its upper device, and then assigns an address of its lower device using Equations 1 and 2 described above.

한편, 하위 디바이스가 연결될 수 없는 종단 디바이스가 지그비 클러스터 트리의 중간 레벨에 연결될 수 있다. 이러한 종단 디바이스에도 동일한 방식으로 어드레스가 할당되면, 어드레스 자원을 낭비하게 된다는 문제점이 있었다. 즉, 도 1에서 E가 종단 디바이스라면, E의 하위 디바이스를 대비한 어드레스 블록 {3 ~ 28}은 어떠한 디바이스에 의해서도 사용되지 못한다. 따라서, 어드레스를 낭비하여, 효율적으로 사용하지 못한다는 문제점이 있었다.Meanwhile, an end device to which a lower device cannot be connected may be connected to an intermediate level of the Zigbee cluster tree. If an address is assigned to the end device in the same manner, there is a problem in that an address resource is wasted. That is, if E is an end device in Fig. 1, the address blocks {3 to 28} for the lower device of E cannot be used by any device. Therefore, there is a problem that the address is wasted and it cannot be used efficiently.

또한, 하나의 디바이스의 연결이 끊어졌다가 다시 연결되는 경우, 그에 대한 효율적으로 복구 알고리즘이 없다는 문제점이 있었다. 특히, 이전에 연결되었던 디바이스와 다른 디바이스에 연결된 경우, 그에 대한 어드레스를 새로이 할당하여야 한다는 문제점도 있었다.In addition, when one device is disconnected and then connected again, there is a problem in that there is no recovery algorithm. In particular, when connected to a device different from the previously connected device, there is a problem that a new address for it has to be allocated.

본 발명은 상술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은, 클러스터-트리 구조를 형성한 후, 최상위 레벨에 속하는 디바이스로부터 순차적으로 하위 디바이스가 요청한 크기의 어드레스 블럭을 할당함으로써, 어드레스 낭비를 방 지하며, 연결 실패시에 기존에 할당받은 어드레스를 그대로 이용하여 재연결될 수 있는 지그비 네트워크 디바이스, 그 어드레스 할당 방법 및 라우팅 방법을 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problem, and an object of the present invention is to form a cluster-tree structure, and then allocate address blocks of a size requested by lower devices sequentially from devices belonging to the highest level, thereby eliminating address waste. The present invention provides a Zigbee network device, an address allocation method, and a routing method that can be reconnected by using an existing address as it is when a connection fails.

이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따르면, 복수개의 디바이스를 포함한 네트워크 환경에서의 어드레스 할당 방법은, (a) 상기 복수개의 디바이스가 클러스터-트리 구조로 연결되는 단계, (b) 상기 클러스터 트리 구조의 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 자신이 사용하고자 하는 소정 크기의 어드레스 블럭을 자신의 상위 디바이스로 각각 순차적으로 요청하는 단계, 및, (c) 상기 클러스터 트리 구조의 최상위 레벨 내지 차하위 레벨에 속하는 각 디바이스가, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 상기 하위 디바이스로 순차적으로 할당하는 단계를 포함한다.According to an embodiment of the present invention for achieving the above object, the address allocation method in a network environment including a plurality of devices, (a) the plurality of devices are connected in a cluster-tree structure, (b (C) sequentially requesting each of the devices belonging to the lowest level or the next higher level of the cluster tree structure to an upper level device with an address block of a predetermined size to be used by the device, and (c) the cluster tree structure Each device belonging to the highest level or the next lower level sequentially allocates an address block of a size requested by its lower device to the lower device.

이 경우, 상기 (c)단계는, 소정 레벨에 속하는 디바이스가 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 각 하위 디바이스의 연결 순서대로 순차적으로 할당하는 방식으로 이루어진다.In this case, step (c) is performed in such a way that a device belonging to a predetermined level sequentially allocates an address block having a size requested by its lower device in order of connection of each lower device.

바람직하게는, 상기 최상위 레벨 내지 상기 차하위 레벨에 속하는 각 디바이스는, 자신에게 연결된 하위 디바이스의 개수, 상기 하위 디바이스 각각의 연결순서에 따라 순차적으로 부여되는 브랜치 ID 및 상기 하위 디바이스 각각에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블을 저장하는 단계를 더 포함할 수 있다.Preferably, each device belonging to the highest level to the next lower level is assigned to each of the lower devices and a branch ID sequentially assigned according to the number of lower devices connected to the lower device, a connection order of each of the lower devices. The method may further include storing a routing table in which the address block is recorded.

보다 바람직하게는, 소정의 제1디바이스 및 상기 클러스터 트리 구조를 연결하는 브랜치가 끊어지는 단계, 상기 제1디바이스가 주변 디바이스 중 소정의 제2디바이스에 연결되는 단계, 상기 제1디바이스가 자신의 라우팅 테이블에 저장된 정보를 상기 제2디바이스로 전송하는 단계, 상기 제2디바이스가 상기 제1디바이스에 대하여 소정의 브랜치 ID를 부여한 후, 부여된 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계, 상기 제2디바이스의 상위레벨 내지 최상위레벨에 이르기까지의 각 상위 디바이스가 상기 정보를 수신하는 단계, 및, 상기 제2디바이스의 상위레벨 내지 최상위레벨에 이르기까지의 각 상위 디바이스가 상기 수신된 정보에 대하여 가상 브랜치 ID를 부여한 후, 상기 가상 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계를 더 포함할 수 있다.More preferably, a branch connecting a predetermined first device and the cluster tree structure is disconnected, the first device is connected to a predetermined second device among peripheral devices, and the first device has its own routing. Transmitting the information stored in the table to the second device, the second device assigning a predetermined branch ID to the first device, and then recording the assigned branch ID and the information in its routing table; Receiving the information by each higher level device from the upper level to the highest level of the second device, and each higher level device from the upper level to the highest level of the second device is connected to the received information. After assigning a virtual branch ID to the virtual branch ID and the information in its own routing table The step of the lock may further include.

또한 바람직하게는, 상기 제1디바이스의 하위 디바이스 중 소정의 제3디바이스가, 상기 클러스터-트리 구조에 속하는 소정의 제4디바이스에 연결되는 단계, 상기 제1디바이스가 자신의 라우팅 테이블에 저장된 제1정보를 상기 제3디바이스로 전송하는 단계, 상기 제3디바이스가, 상기 제1디바이스로부터 수신된 제1정보를 자신의 라우팅 테이블에 저장하는 단계, 상기 제3디바이스가 자신의 라우팅 테이블에 저장된 정보를 상기 제4디바이스로 전송하는 단계, 상기 제4디바이스가 상기 제3 디바이스에 대하여 소정의 브랜치 ID를 부여한 후, 부여된 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계, 상기 제4디바이스의 상위레벨 내지 최상위 레벨에 이르기까지의 각 상위 디바이스가 각각 상기 정보를 수신하는 단계, 및, 상기 제4디바이스의 상위레벨 내지 최상위 레벨에 이르기까지의 각 상위 디바 이스가 각각 상기 정보에 대하여 가상 브랜치 ID를 부여한 후, 상기 가상 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계를 더 포함할 수 있다.Also preferably, a predetermined third device of the lower devices of the first device is connected to a predetermined fourth device belonging to the cluster-tree structure, wherein the first device is stored in its own routing table. Transmitting information to the third device, storing, by the third device, first information received from the first device in its routing table, and storing information stored in the routing table of the third device. Transmitting to the fourth device, the fourth device assigning a predetermined branch ID to the third device, and then recording the assigned branch ID and the information in its routing table; Receiving each of the higher level devices from the upper level to the highest level, respectively, and the fourth device; The method may further include recording the virtual branch ID and the information in its own routing table after each upper device from the upper level to the highest level assigns a virtual branch ID to the information.

또는, 상기 클러스터 트리 구조 상에서 동일한 레벨에 속하는 복수개의 디바이스가 상호 연결되어 매쉬 구조를 형성하는 단계, 동일 레벨에 속하는 타 디바이스가 연결되면, 연결된 타 디바이스에 대하여 소정의 브랜치 ID를 부여하는 단계, 상기 타 디바이스의 라우팅 테이블에 저장된 정보를 수신하는 단계, 및, 상기 타 디바이스에 대하여 부여한 브랜치 ID 및 상기 타 디바이스로부터 수신된 정보를 자신의 라우팅 테이블에 저장하는 단계를 더 포함할 수 있다.Or forming a mesh structure by connecting a plurality of devices belonging to the same level on the cluster tree structure, and when another device belonging to the same level is connected, granting a predetermined branch ID to the connected other devices. Receiving information stored in the routing table of the other device, and storing the branch ID assigned to the other device and the information received from the other device in its own routing table.

바람직하게는, 상기 (a)단계는, 상기 복수개의 디바이스가 각각 소정의 연결 등급을 자체적으로 설정하는 단계, 소정의 제5디바이스가, 적어도 하나의 주변 디바이스로부터 각각의 연결등급이 표시된 접속 요청 메시지를 수신하는 단계, 상기 제5디바이스가 상기 접속 요청 메시지에 표시된 연결등급에 따라, 소정 디바이스를 선택하는 단계, 및, 상기 제5디바이스가 상기 선택된 디바이스에 대하여 응답 메시지를 전송하여, 상기 선택된 디바이스와 연결되는 단계를 포함할 수 있다.Preferably, in step (a), each of the plurality of devices sets a predetermined connection level by itself, and the connection request message in which the predetermined fifth device displays each connection class from at least one peripheral device is displayed. Receiving a message; selecting, by the fifth device, a predetermined device according to the connection level indicated in the connection request message; and sending, by the fifth device, a response message to the selected device, It may include the step of being connected.

한편, 본 발명의 일 실시 예에 따른 라우팅 방법은, (a) 복수개의 디바이스가 클러스터-트리 구조로 연결되는 단계, (b) 상기 클러스터 트리 구조의 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 자신이 사용하고자 하는 어드레스 블럭의 크기를 자신의 상위 디바이스로 각각 순차적으로 요청하는 단계, (c) 상기 클러스터 트리 구조의 최상위 레벨 내지 차하위 레벨에 속하는 각 디바이스가, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 상기 하위 디바이스로 순차 적으로 할당하는 단계, (d) 상기 최상위 레벨 내지 상기 차하위 레벨에 속하는 각 디바이스는, 자신에게 연결된 하위 디바이스의 개수, 상기 하위 디바이스 각각에 대한 브랜치 ID 및 각 하위 디바이스에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블을 저장하는 단계, 및, (e) 상기 클러스터 트리 구조에 속하는 소정의 제1디바이스가 소정 패킷을 수신하면, 상기 패킷의 목적지 어드레스를 확인한 후, 상기 목적지 어드레스를 포함하는 어드레스 블럭이 할당된 소정 디바이스로 상기 패킷을 라우팅하는 단계를 포함한다.On the other hand, the routing method according to an embodiment of the present invention, (a) connecting a plurality of devices in a cluster-tree structure, (b) each device belonging to the lowest level or the next higher level of the cluster tree structure, (C) sequentially requesting the size of the address block to be used from its upper device, (c) an address having a size requested by its lower device by each device belonging to the highest level or the lower level of the cluster tree structure; Sequentially assigning blocks to the lower device, (d) each device belonging to the highest level to the next lower level includes a number of lower devices connected to the branch, a branch ID for each of the lower devices, and each lower device Stores a routing table in which the allocated address blocks for And (e) when a predetermined first device belonging to the cluster tree structure receives the predetermined packet, checks the destination address of the packet, and then sends the packet to a predetermined device to which an address block including the destination address is allocated. Routing.

바람직하게는, 상기 (e)단계는, 상기 제1디바이스가, 상기 패킷의 목적지 어드레스를 확인하는 단계, 상기 제1디바이스가 상기 목적지 어드레스가 자신의 하위 디바이스에 할당된 어드레스 블럭 내에 속하는지 여부를 판단하는 단계, 상기 어드레스 블럭 내에 속한다고 판단되면, 해당 어드레스 블럭이 할당된 하위 디바이스로 상기 패킷을 전송하는 단계, 및, 상기 어드레스 블럭 내에 속하지 않는다고 판단되면, 상기 제1디바이스가 상위 디바이스로 상기 패킷을 전송하는 단계를 포함한다.Preferably, the step (e) comprises the steps of: the first device checking the destination address of the packet, and whether the first device belongs to an address block assigned to the lower device of the destination address. Determining, in the case where it is determined to belong to the address block, transmitting the packet to a lower device to which the corresponding address block is allocated, and, if it is determined that the address block does not belong to the address block, the first device sends the packet to a higher device. Transmitting a step.

한편, 본 발명의 일 실시 예에 따른 네트워크 환경을 구성하는 디바이스의 어드레스 할당 방법은, (a) 적어도 하나의 하위 디바이스가 클러스터-트리 구조로 연결되는 단계, (b) 상기 적어도 하나의 하위 디바이스로부터 소정 크기의 어드레스 블럭을 요청받는 단계, (c) 상기 적어도 하나의 하위 디바이스 각각으로부터 요청받은 어드레스 블럭 크기를 조합하여, 소정 크기의 어드레스 블럭을 상위 디바이스로 요청하는 단계, (d) 상기 상위 디바이스에 대하여 요청한 크기의 어드레스 블럭을 할당받는 단계, 및, (e) 상기 할당받은 어드레스 블럭 중 상기 적어도 하나의 하위 디바이스 각각이 요청한 크기의 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스의 연결 순서에 따라 할당하는 단계를 포함한다.On the other hand, address allocation method of a device constituting a network environment according to an embodiment of the present invention, (a) at least one sub-device is connected in a cluster-tree structure, (b) from the at least one sub-device Requesting an address block of a predetermined size, (c) combining an address block size requested from each of the at least one lower device, and requesting an address block of a predetermined size to an upper device; and (d) asking the upper device. (B) allocating an address block of a size requested by each of the at least one lower device among the allocated address blocks according to a connection order of the at least one lower device. Steps.

바람직하게는, 상기 상위 디바이스가 존재하지 않는 경우, 전체 어드레스 블럭 중 상기 적어도 하나의 하위 디바이스 각각이 요청한 크기의 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스의 연결 순서에 따라 할당하는 단계를 더 포함할 수 있다.Preferably, if the upper device does not exist, further comprising the step of assigning an address block of the size requested by each of the at least one lower device of the entire address block according to the connection order of the at least one lower device; Can be.

또한 바람직하게는, 상기 하위 디바이스가 존재하지 않는 경우, 자신이 사용하고자 하는 소정 크기의 어드레스 블럭을 상기 상위 디바이스로 요청하는 단계를 더 포함할 수 있다.Also preferably, when the lower device does not exist, the method may further include requesting the upper device for an address block having a predetermined size to be used by the lower device.

한편, 본 발명의 일 실시 예에 따르면, 클러스터-트리 구조로 연결된 네트워크 환경에 속하는 네트워크 디바이스는, 상기 클러스터-트리 구조 상에서 소정의 상위 디바이스 및 적어도 하나의 하위 디바이스와 연결되어 통신을 수행하는 통신부, 상기 적어도 하나의 하위 디바이스 각각으로부터 소정 크기의 어드레스 블럭이 요청되면, 상기 요청된 어드레스 블럭의 크기를 조합하여, 사용하고자 하는 어드레스 블록의 크기를 산정하는 어드레스 블럭 산정부, 상기 어드레스 블럭 산정부에서 산정한 크기의 어드레스 블록을 상기 상위 디바이스로 요청하도록 상기 통신부를 제어하는 제어부, 및, 상기 상위 디바이스로부터 상기 산정한 크기의 어드레스 블록을 할당받으면, 상기 적어도 하나의 하위 디바이스 각각에 대하여 그 연결 순서에 따라, 상기 요청된 크기의 어드레스 블럭을 할당하는 어드레스 블럭 할당부를 포함한다.Meanwhile, according to an embodiment of the present disclosure, a network device belonging to a network environment connected in a cluster-tree structure may include a communication unit connected to a predetermined upper device and at least one lower device on the cluster-tree structure to perform communication; When an address block of a predetermined size is requested from each of the at least one lower device, an address block calculation unit for calculating the size of the address block to be used by combining the sizes of the requested address blocks, and the address block calculation unit A control unit for controlling the communication unit to request an address block of one size from the upper device; and when the address block of the calculated size is allocated from the upper device, each of the at least one lower device according to the connection order thereof. , Request It includes an address block allocation portion for allocating the address of the block size.

바람직하게는, 상기 통신부가 상기 상위 디바이스에 연결되지 않은 경우, 소정의 네트워크 파라미터를 이용하여 전체 어드레스 블럭을 산정하는 연산부를 더 포함할 수 있다. Preferably, when the communication unit is not connected to the upper device, it may further include an operation unit for calculating the entire address block using a predetermined network parameter.

보다 바람직하게는, 상기 어드레스 블럭 할당부는, 상기 연산부에서 산정한 전체 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스 각각의 연결 순서에 따라 분할하여, 상기 적어도 하나의 하위 디바이스 각각에 할당할 수 있다.More preferably, the address block allocating unit may divide the entire address block calculated by the calculating unit according to the connection order of each of the at least one lower device and allocate the same to each of the at least one lower device.

또한 바람직하게는, 상기 적어도 하나의 하위 디바이스의 개수, 상기 하위 디바이스 각각의 연결순서에 따라 순차적으로 부여되는 브랜치 ID 및 상기 하위 디바이스 각각에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블이 저장되는 메모리부를 더 포함할 수 있다.Preferably, the memory unit may store a routing table in which the number of the at least one lower device, the branch IDs sequentially assigned according to the connection order of the lower devices, and the address blocks allocated to the lower devices are stored. It may further include.

한편, 상기 제어부는, 상기 통신부를 통해 소정의 패킷이 수신되면, 상기 패킷의 목적지 어드레스를 확인한 후, 상기 메모리부에 저장된 라우팅 테이블을 이용하여 상기 목적지 어드레스가 포함된 어드레스 블럭이 할당된 하위 디바이스를 탐색하고, 상기 하위 디바이스가 탐색되면, 상기 통신부를 제어하여 상기 패킷을 상기 탐색된 하위 디바이스로 라우팅할 수 있다. On the other hand, when a predetermined packet is received through the communication unit, the controller checks a destination address of the packet, and then uses a routing table stored in the memory unit to determine a lower device to which the address block including the destination address is allocated. When the lower device is found, the communication unit may be controlled to route the packet to the found lower device.

이 경우, 상기 제어부는, 상기 하위 디바이스가 탐색되지 않으면, 상기 상위 디바이스로 상기 패킷을 라우팅하도록 상기 통신부를 제어할 수 있다.In this case, if the lower device is not found, the controller may control the communication unit to route the packet to the upper device.

보다 바람직하게는, 상기 제어부는, 소정의 제1디바이스가 상기 통신부에 연결되어 상기 제1디바이스의 라우팅 테이블에 저장된 정보가 수신되면, 상기 제1 디바이스에 대하여 브랜치 ID를 부여한 후, 상기 브랜치 ID 및 상기 수신된 정보를 상기 메모리부의 라우팅 테이블에 기록할 수 있다.More preferably, when a predetermined first device is connected to the communication unit and information stored in the routing table of the first device is received, the control unit assigns a branch ID to the first device, and then the branch ID and The received information may be recorded in the routing table of the memory unit.

이하에서, 첨부된 도면을 참조하여 본 발명에 대하여 자세하게 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail with respect to the present invention.

도 2는 본 발명의 일 실시 예에 따른 지그비 네트워크 환경에서의 어드레스 할당 방법을 설명하기 위한 흐름도이다. 도 2에 따르면, 먼저 초기화 단계로써, 복수개의 디바이스가 서로 연결되어 클러스터-트리 구조를 형성한다(S210). 구체적으로는, 최종 지그비 코디네이터인 디바이스 A에서 연결이 개시되면, 주변 디바이스가 디바이스 A에 대하여 접속 요청(association request) 메시지를 전송한다. 디바이스 A는 접속 요청을 전송한 디바이스와 연결되고자 하는 경우, 응답 메시지를 전송한다. 이에 따라, 디바이스 A와 각 디바이스 간의 연결이 이루어진다. 각 디바이스에 대해서도 동일한 방식으로 하위 디바이스가 연결될 수 있다. 2 is a flowchart illustrating an address allocation method in a Zigbee network environment according to an embodiment of the present invention. Referring to FIG. 2, first, as a initialization step, a plurality of devices are connected to each other to form a cluster-tree structure (S210). Specifically, when a connection is initiated in device A, which is the final Zigbee coordinator, the peripheral device transmits an association request message to device A. If the device A wants to be connected with the device that sent the connection request, the device A transmits a response message. Accordingly, the connection between the device A and each device is made. The lower device may be connected in the same manner to each device.

한편, 각 디바이스는 자신의 성능을 고려하여, 소정의 연결 등급을 설정할 수 있다. 구체적으로는, 예약 없이 바로 연결될 수 있는 3등급, 예약 후에 연결될 수 있는 2등급, 마지못해 연결될 수 있는 1등급, 연결 불능 상태인 0등급 등으로 설정할 수 있다. 연결 등급이 설정되면, 주변 디바이스에 대하여 접속 요청 메시지를 전송할 때, 자신의 연결 등급을 함께 전송한다. 이에 따라, 복수개의 접속 요청 메시지를 수신한 디바이스는, 각 접속 요청 메시지 중 연결 등급이 높은 디바이스를 선택하여, 응답 메시지를 전송한다. 이에 따라, 디바이스 간의 연결이 쉽게 이루어질 수 있도록 할 수 있다.Meanwhile, each device may set a predetermined connection class in consideration of its performance. Specifically, it can be set as a third level that can be connected immediately without reservation, a second level that can be connected after a reservation, a first level that can be reluctantly connected, and a zero level that cannot be connected. When the connection class is set, when the connection request message is transmitted to the peripheral device, the connection class is also transmitted. Accordingly, the device receiving the plurality of connection request messages selects a device having a high connection level from each connection request message and transmits a response message. Accordingly, the connection between the devices can be easily made.

이러한 방식으로 클러스터 트리 구조가 형성되면, 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 최하위 레벨부터 차상위 레벨 순서대로, 자신의 상 위 디바이스에 대하여 소정 크기의 어드레스 블럭을 요청한다(S220). 즉, 각 디바이스에는 현재 연결된 하위 디바이스 이외에 추가적으로 하위 디바이스가 연결될 수 있다. 이를 대비하여 각 디바이스는 자신의 어드레스 이외에 추가적인 어드레스를 더 필요로 한다. 이에 따라, 최하위 레벨에 속하는 각 디바이스는 자신의 상위 디바이스(즉, 두번째 최하위 레벨에 속하는 디바이스)로 자신이 필요로 하는 어드레스 블럭의 크기를 통지한다. When the cluster tree structure is formed in this manner, each device belonging to the lowest level to the next higher level requests an address block having a predetermined size from its upper device in order from the lowest level to the next higher level (S220). That is, the lower device may be additionally connected to each device in addition to the currently connected lower device. In contrast, each device needs an additional address in addition to its own address. Accordingly, each device belonging to the lowest level notifies its upper device (i.e., the device belonging to the second lowest level) to notify the size of the address block that it needs.

한편, 어드레스 블럭 크기를 통지받은 디바이스는 자신의 최상위 레벨에 속하는 지 여부를 판단하여(S230), 최상위 레벨에 속하지 않는다면 다시 자신의 상위 디바이스에 대하여 자신이 사용하고자 하는 어드레스 블럭 크기를 통지한다(S240). 이 경우, 자신의 하위 디바이스로부터 요청된 크기 및 자신이 필요로 하는 어드레스 블럭 크기를 조합한 크기를 통지한다. 이러한 방식으로 각 레벨의 디바이스가 자신이 필요로 하는 어드레스 블럭 크기를 상위 레벨로 요청함으로써, 최상위 레벨에 속하는 최종 지그비 코디네이터는 각 브랜치에서 필요로 하는 어드레스 블럭의 크기를 알 수 있게 된다. Meanwhile, the device notified of the address block size determines whether it belongs to its highest level (S230), and if it does not belong to the highest level, it notifies the upper level device of its own address block size (S240). ). In this case, the size of the combination of the size requested by the subordinate device and the address block size required by the subordinate device is notified. In this way, the device of each level requests the address block size required by the upper level, so that the final ZigBee coordinator belonging to the highest level can know the size of the address block required in each branch.

최종 지그비 코디네이터는 각 브랜치에 대하여 요청된 크기의 어드레스 블럭을 할당한다(S250). 이 경우, 각 브랜치에 대응되는 하위 디바이스의 연결 순서에 따라 순차적으로 할당한다. 각 하위 디바이스는 자신이 최하위 레벨에 속하지 않는 이상(S260), 자신이 할당받은 어드레스 블럭을 자신의 하위 디바이스에 대하여 다시 할당한다(S270). 이 경우, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 순차적으로 할당한다. 이에 따라, 최하위 레벨에 속하는 각 디바이스까지 어 드레스가 할당될 수 있게 된다. 결과적으로, 각 디바이스는 자신에게 할당된 어드레스를 이용하여 라우팅 테이블, 즉 ARTT(Adaptive Robust Tree Table)을 작성한 후, 이에 따라 라우팅 동작을 수행하게 된다. 이에 대한 구체적인 설명은 후술한다.The final Zigbee coordinator allocates an address block of the requested size for each branch (S250). In this case, the allocation is sequentially performed according to the connection order of the lower devices corresponding to each branch. Each lower device does not belong to the lowest level (S260), and reassigns its assigned address block to its lower device (S270). In this case, its lower device sequentially allocates an address block of the size requested. Accordingly, an address can be allocated to each device belonging to the lowest level. As a result, each device creates a routing table, that is, an adaptive robust tree table (ARTT) using an address assigned to the device, and then performs a routing operation accordingly. Detailed description thereof will be described later.

도 3 내지 도 6은 본 발명의 일 실시 예에 따른 어드레스 할당 방법에 따라 어드레스가 할당된 클러스터-트리 구조의 지그비 네트워크 환경 구성을 나타내는 모식도이다. 3 to 6 are schematic diagrams illustrating a ZigBee network environment configuration of a cluster-tree structure in which an address is assigned according to an address allocation method according to an embodiment of the present invention.

먼저, 도 3은 초기화 단계로써, 복수개의 디바이스가 클러스터 트리 구조를 형성하는 과정을 나타낸다. 각 디바이스는 자신의 MAC 어드레스를 이용하여 타 디바이스와 연결될 수 있다. 클러스터 트리 구조의 최상위 레벨에 속하는 최종 지그비 코디네이터인 디바이스 A는 두 개의 하위 디바이스와 각각 연결된다. 각 레벨 간의 연결상태는 브랜치(branch)로 명명한다. 즉, 디바이스 A는 두 번째 최상위 레벨에 속하는 디바이스 B, 디바이스 J와 각각 연결된 두 개의 브랜치를 가진다. 한편, 도 3에서 각 디바이스 주변에 기재된 []안의 숫자는 각 브랜치의 하위 디바이스의 총 개수를 의미한다. 즉, 디바이스 A의 첫번째 브랜치에 속하는 하위 디바이스의 총 개수는 8, 두번째 브랜치에 속하는 하위 디바이스의 총 개수는 6이다. First, FIG. 3 illustrates an initialization step in which a plurality of devices form a cluster tree structure. Each device can be connected to another device using its MAC address. Device A, the final Zigbee coordinator belonging to the top level of the cluster tree structure, is connected to two subordinate devices, respectively. The connection between each level is called a branch. That is, device A has two branches each connected to device B and device J belonging to the second highest level. In FIG. 3, the numbers in [] around each device mean the total number of lower devices in each branch. That is, the total number of lower devices belonging to the first branch of device A is 8 and the total number of lower devices belonging to the second branch is 6.

도 4는 최하위 디바이스부터 자신이 필요로 하는 어드레스 블럭의 크기를 상위 디바이스로 통지하는 과정을 나타내는 모식도이다. 도 4에 따르면, 최하위 레벨에 속하는 디바이스 F, M, N은 각각 3, 2, 1 크기의 어드레스 블럭을 자신의 상위 디바이스로 각각 요청한다. 즉, 디바이스 F의 경우, 상위 디바이스 E에 대하여 자 신이 사용할 어드레스 하나 이외에 차후에 연결가능한 하위 디바이스를 대비한 어드레스 2개를 더 요청하고 있다. 반면에, 디바이스 N의 경우에는 자신이 사용할 어드레스 하나만을 요청하고 있다. 이러한 어드레스 블럭의 크기는 각 디바이스의 성능에 따라 달라 질 수 있다. 즉, 라우팅 기능이 없는 디바이스의 경우, 하위 디바이스가 연결될 여지가 없으므로 어드레스 하나만을 요청하는 것이 바람직하다. 또는, 각 디바이스의 전력 용량에 따라 어드레스 블럭의 크기를 상이하게 설정할 수 있다. 즉, 콘센트 전원이 아닌 배터리 전원을 사용하는 경우, 사용가능한 전력 용량이 제한적이므로 많은 수의 하위 디바이스가 연결될 여지가 없다. 따라서, 이러한 경우에는 어드레스 블럭의 크기를 작게 설정한다. 반면, 콘센트 전원의 경우에는 상대적으로 많은 어드레스(즉, 큰 어드레스 블럭)를 요청할 수 있다. 4 is a schematic diagram illustrating a process of notifying the upper level device of the size of an address block required by the lowest level device from its lowest device. According to FIG. 4, devices F, M, and N belonging to the lowest level each request address blocks having sizes 3, 2, and 1 to their upper devices, respectively. That is, in the case of the device F, the upper device E is requested two more addresses for the lower device that can be connected in addition to the one to be used by the upper device E. On the other hand, the device N requests only one address to use. The size of such an address block may vary depending on the performance of each device. That is, in the case of a device without a routing function, it is preferable to request only one address because the lower device cannot be connected. Alternatively, the size of the address block can be set differently according to the power capacity of each device. In other words, when using a battery power source rather than an outlet power source, the available power capacity is limited so that a large number of sub-devices cannot be connected. Therefore, in this case, the size of the address block is set small. On the other hand, in the case of an outlet power source, a relatively large number of addresses (ie, large address blocks) may be requested.

상위 디바이스 들은 자신의 하위 디바이스가 요청한 크기 이외에 자신이 별도로 사용할 어드레스 블럭의 크기를 더 추가하여, 자신의 상위 디바이스에 대하여 어드레스 블럭을 요청한다. 이러한 방식으로, 최상위 레벨에 속하는 디바이스 A까지 어드레스 블럭이 요청된다. 즉, 디바이스 A는 첫번째 브랜치에서 사용하고자 하는 어드레스 블럭의 크기가 18, 두번째 브랜치에서 사용하고자 하는 어드레스 블럭의 크기가 16임을 알 수 있다. The upper devices request the address block for their upper device by adding the size of the address block to be used separately, in addition to the size requested by the lower device. In this way, an address block is requested up to device A belonging to the highest level. That is, the device A can know that the size of the address block to be used in the first branch is 18 and the size of the address block to be used in the second branch is 16.

도 5는 하위 디바이스의 요청에 따라 소정 크기의 어드레스 블럭을 할당하는 과정을 나타내는 모식도이다. 도 5에 따르면, 디바이스 A는 자신의 하위 디바이스의 연결 순서에 따라, 어드레스 블럭을 할당한다. 즉, 디바이스 B가 먼저 연결되었다면, 디바이스 A 자신의 어드레스 0 다음에 위치하는 어드레스 블럭 [1~18]을 할 당한다. 디바이스 B는 이 중 첫번째 어드레스인 1을 자신의 어드레스로 사용한다. 그리고, 자신의 하위 디바이스인 C, H에 대하여 그 연결 순서에 따라 어드레스 블럭 [2~11], [12~17]을 각각 할당한다. 디바이스 B가 할당받은 어드레스 블럭은 [1~18]이므로, 어드레스 18이 남게 된다. 잔존하는 어드레스는 차후에 연결가능한 디바이스를 대비하여 추가로 할당받은 어드레스이다. 한편, 디바이스 C,H도 자신의 하위 디바이스에 대하여 각각이 요청한 크기의 어드레스 블럭을 할당하게 된다. 이러한 방식으로, 최하위 레벨에 속하는 디바이스까지 어드레스가 할당되게 된다.5 is a schematic diagram illustrating a process of allocating an address block having a predetermined size according to a request of a lower device. According to FIG. 5, the device A allocates an address block according to a connection order of its lower devices. That is, if device B is connected first, it allocates address blocks [1 to 18] which are located after address 0 of device A itself. Device B uses its first address, 1, as its address. Then, address blocks [2 to 11] and [12 to 17] are allocated to their lower devices C and H according to their connection order. Since address B allocated to device B is [1 to 18], address 18 remains. The remaining address is an additionally allocated address in preparation for a later connectable device. On the other hand, devices C and H also allocate address blocks of their requested sizes to their lower devices. In this way, an address is allocated up to the device belonging to the lowest level.

마찬가지로 두번째 브랜치에 속하는 디바이스 J에 대해서도 [19~36]이 할당된다. 디바이스 J는 할당받은 어드레스 블럭을 다시 자신의 하위 디바이스에 대하여 그 연결 순서에 따라 할당하게 된다. 한편, 도 5에 따르면, 디바이스 A가 사용할 수 있는 전체 어드레스 블럭은 [0~40]와 같다. 따라서, 디바이스 A는 어드레스 할당 이후에도 [37~40]까지의 어드레스를 사용할 수 있다. 잔존하는 어드레스는 차후에 연결될 예비 하위 디바이스를 대비하기 위한 것이다.Similarly, [19 ~ 36] is allocated to device J belonging to the second branch. The device J allocates the allocated address block to its lower device again according to the connection order. On the other hand, according to Figure 5, the entire address block that can be used by the device A is the same as [0 ~ 40]. Therefore, device A can use the addresses [37 to 40] even after address assignment. The remaining address is to prepare for a spare lower device to be connected later.

도 6은 최종적으로 어드레스가 할당된 각 디바이스를 포함하는 클러스터 트리 구조를 나타내는 모식도이다. 도 6에 따르면, 디바이스 A, B, C, D, E, F, G, H, I, J, K, L, M, N, O에 할당된 어드레스는 각각 0, 1, 2, 3, 4, 5, 9, 12, 13, 19, 20, 21, 22, 24, 26과 같다.6 is a schematic diagram showing a cluster tree structure including each device finally assigned an address. According to Figure 6, the addresses assigned to the devices A, B, C, D, E, F, G, H, I, J, K, L, M, N, O are 0, 1, 2, 3, 4, respectively. , 5, 9, 12, 13, 19, 20, 21, 22, 24, 26.

각 디바이스는 자신에게 연결된 각 하위 디바이스에 대하여 브랜치 ID를 부여하고, 그 브랜치에 대하여 할당한 어드레스 블럭을 기록한 라우팅 테이블을 제작하여 저장한다. 이에 따라, 어드레스 할당 후에 라우팅 동작을 수행할 수 있게 된 다. 구체적으로, 디바이스 A에 저장된 라우팅 테이블은 다음 표로 나타낼 수 있다.Each device assigns a branch ID to each lower device connected to the device, and prepares and stores a routing table that records the allocated address blocks for the branch. Accordingly, the routing operation can be performed after the address assignment. Specifically, the routing table stored in the device A may be represented by the following table.

브랜치 IDBranch ID 최초 어드레스First address 최후 어드레스Last address 1One 1One 1818 22 1919 3636

표 1에 따르면, 라우팅 테이블에는 각 하위 디바이스의 연결 순서에 따라 순차적으로 부여된 브랜치 ID, 각 브랜치 별로 할당된 어드레스 블럭의 최초 어드레스 및 최후 어드레스가 기록된다. 이에 따라, 디바이스 A의 브랜치 1에는 [1~18], 브랜치 2에는 [19~36]사이의 어드레스가 할당되었음을 알 수 있다. According to Table 1, branch IDs sequentially assigned according to the connection order of the lower devices, first addresses and last addresses of address blocks allocated to each branch are recorded in the routing table. Accordingly, it can be seen that branch 1 of device A is assigned an address between [1-18] and branch 2 [19-36].

또 다른 예로, 디바이스 H에 저장된 라우팅 테이블은 다음과 같이 저장될 수 있다. As another example, the routing table stored in the device H may be stored as follows.

브랜치 IDBranch ID 최초 어드레스First address 최후 어드레스Last address 1One 1313 1515

표 1, 2에서는 표시되고 있지 않으나, 총 브랜치 개수도 라우팅 테이블에 추가될 수 있다.Although not shown in Tables 1 and 2, the total number of branches can also be added to the routing table.

도 7은 도 3 내지 도 6과 같이 어드레스가 할당된 지그비 네트워크 환경에서, 디바이스 간의 연결이 끊어진 후 복구될 때의 어드레스 할당 방법을 설명하기 위한 흐름도이다. 도 7에 따르면, 클러스터 트리 구조의 지그비 네트워크 환경에 속하는 소정의 제1 디바이스의 연결 상태가 끊어진 후(S310), 클러스터 트리 구조의 소정 레벨에 속하는 제2 디바이스와 연결되면(S320), 제1 디바이스가 자신이 사용하는 어드레스 블럭 정보를 제2 디바이스로 전송한다(S340). FIG. 7 is a flowchart illustrating an address allocation method when a device is disconnected and then recovered after disconnection between devices in an Zigbee network environment in which an address is allocated as shown in FIGS. 3 to 6. According to FIG. 7, after a connection state of a predetermined first device belonging to a Zigbee network environment of a cluster tree structure is disconnected (S310), and connected to a second device belonging to a predetermined level of the cluster tree structure (S320), the first device The master transmits the address block information used by the second device to the second device (S340).

이 경우, 제1 디바이스가 이전에 연결되어 있던 디바이스가 제2 디바이스가 아니라고 가정하면, 제2 디바이스는 제1 디바이스가 연결된 브랜치에 대하여 새로운 브랜치 ID를 부여한다(S350). 이에 따라, 제1 디바이스로부터 전송된 어드레스 블럭 정보를 이용하여 최초 어드레스, 최후 어드레스 및 부여된 브랜치 ID를 라우팅 테이블에 기록한다(S350). 만약 제1 디바이스가 이전에 연결되어 있던 디바이스가 제2 디바이스라면, 제2 디바이스는 제1 디바이스로부터 별도로 정보를 수신할 필요가 없으므로, 자신의 라우팅 테이블에 기존에 저장되어 있던 정보를 그대로 사용한다.In this case, if it is assumed that the device to which the first device was previously connected is not the second device, the second device grants a new branch ID to the branch to which the first device is connected (S350). Accordingly, the first address, the last address, and the assigned branch ID are recorded in the routing table using the address block information transmitted from the first device (S350). If the device to which the first device was previously connected is the second device, since the second device does not need to receive information from the first device separately, the second device uses the information previously stored in its routing table.

한편, 제1 디바이스의 연결 실패가 일어난 경우, 제1 디바이스의 하위 디바이스가 직접 클러스터 트리 구조에 연결될 수도 있다. 이에 따라, 제1 디바이스의 하위 디바이스인 제3 디바이스가 제2 디바이스에 연결되었다면(S330), 제1 디바이스 및 제3 디바이스 간의 레벨 순위가 바뀌게 된다. 즉, 제1 디바이스가 제3 디바이스의 하위 디바이스로써 동작하게 된다. 이 경우, 제1 디바이스는 자신이 사용하고 있는 어드레스 블럭 정보를 제3 디바이스로 전송하여 준다(S360). 제3 디바이스는 제1 디바이스에 대하여 새로운 브랜치 ID를 부여한 후, 제1 디바이스로부터 수신된 어드레스 블럭 중 자신이 사용하는 어드레스 블럭을 제외한 나머지 어드레스 블럭 정보(즉, 최초 및 최후 어드레스) 및 브랜치 ID를 자신의 라우팅 테이블에 저장한다(S360). Meanwhile, when a connection failure of the first device occurs, the lower device of the first device may be directly connected to the cluster tree structure. Accordingly, when the third device, which is a lower device of the first device, is connected to the second device (S330), the level rank between the first device and the third device is changed. That is, the first device operates as a lower device of the third device. In this case, the first device transmits the address block information used by the first device to the third device (S360). The third device assigns a new branch ID to the first device, and then, among the address blocks received from the first device, retains the remaining address block information (ie, the first and last address) and the branch ID except for the address block used by the third device. It is stored in the routing table (S360).

다음으로, 제3 디바이스는 제1 디바이스로부터 수신된 정보를 제2 디바이스로 전송하여 준다(S370). 제2 디바이스는 제3 디바이스에 대하여 새로운 브랜치 ID를 부여한 후, 수신된 정보와 함께 자신의 라우팅 테이블에 기록하게 된다(S350).Next, the third device transmits the information received from the first device to the second device (S370). After assigning a new branch ID to the third device, the second device records the received branch information in its routing table together with the received information (S350).

한편, 제2 디바이스가 최상위 디바이스가 아니라면(S380), 제2 디바이스는 제1 디바이스로부터 전송받은 정보를 자신의 상위 디바이스로 전송한다(S390). 이 경우, 해당 정보를 수신한 상위 디바이스는 자신에게 새로운 브랜치가 연결된 것이 아니므로, 수신된 정보에 대하여 가상 브랜치 ID(virtual branch ID)를 부여한다. 그리고 나서, 가상 브랜치 ID 및 수신된 정보(즉, 최초 어드레스, 최후 어드레스)를 자신의 라우팅 테이블에 기록한다(S390). 이러한 방식으로, 최종 지그비 코디네이터까지 자신의 라우팅 테이블을 업데이트한다. 결과적으로, 지그비 네트워크 환경의 각 디바이스는, 기존에 사용하고 있던 어드레스를 그대로 유지하면서, 연결을 복구할 수 있게 된다.On the other hand, if the second device is not the top device (S380), the second device transmits the information received from the first device to its own upper device (S390). In this case, the upper device receiving the information does not have a new branch connected to itself, and thus, gives a virtual branch ID to the received information. Then, the virtual branch ID and the received information (that is, the first address and the last address) are recorded in its routing table (S390). In this way, it updates its routing table up to the final ZigBee coordinator. As a result, each device in the Zigbee network environment can recover the connection while maintaining the existing address.

도 8은 도 7의 방법을 보다 효율적으로 설명하기 위한 모식도이다. 도 8에 따르면, 디바이스 J 및 디바이스 K 간의 연결이 끊어진 경우를 나타낸다. 이 경우, 디바이스 K는 주변 디바이스로 접속 요청 메시지를 전송하여 접속을 시도한다. FIG. 8 is a schematic diagram for explaining the method of FIG. 7 more efficiently. According to FIG. 8, the connection between the device J and the device K is broken. In this case, the device K attempts to connect by sending a connection request message to the peripheral device.

먼저, 디바이스 K가 디바이스 H와 연결되는 (a)경우를 예로 들어 설명한다. 디바이스 K는 자신이 사용하는 어드레스 블럭 정보 [20~36]을 디바이스 H로 전송한다. 디바이스 H는 디바이스 K와의 사이에서 새로운 브랜치 ID를 부여한 후, 수신된 정보를 라우팅 테이블에 기록한다. 이에 따라, 표 2는 다음과 같이 업데이트된다.First, a case in which device K is connected to device H will be described as an example. The device K transmits the address block information [20 to 36] used by the device K to the device H. Device H assigns a new branch ID with device K and writes the received information to the routing table. Accordingly, Table 2 is updated as follows.

브랜치 IDBranch ID 최초 어드레스First address 최후 어드레스Last address 1One 1313 1515 22 2020 3636

다음으로, 디바이스 H는 디바이스 K로부터 수신된 정보를 자신의 상위 디바이스인 디바이스 B로 전송한다. 디바이스 B는 수신된 정보에 대해 가상 브랜치 ID를 부여한 후, 라우팅 테이블에 저장한다. 디바이스 B의 라우팅 테이블은 아래 표와 같이 표시된다.Next, the device H transmits the information received from the device K to the device B, which is its upper device. Device B assigns a virtual branch ID to the received information and stores it in the routing table. The routing table for device B is shown in the table below.

브랜치 IDBranch ID 최초 어드레스First address 최후 어드레스Last address 1One 22 1111 22 1212 1717 -2-2 2020 3636

표 4에서 가상 브랜치 ID는 기존 브랜치 ID에 대하여 (-)부호를 붙인 것으로 표시된다. 즉, 가상 브랜치 ID -2는, 2번째 브랜치의 하위 레벨에서 새로운 디바이스가 연결되었음을 표시하게 된다. In Table 4, the virtual branch ID is indicated by attaching a negative sign to the existing branch ID. That is, the virtual branch ID -2 indicates that a new device is connected at a lower level of the second branch.

디바이스 B는 디바이스 H로부터 수신된 정보를 자신의 상위 디바이스인 디바이스 A로 전송한다. 디바이스 A의 입장에서는 첫번째 브랜치를 통해 정보가 수신되므로, 수신된 정보에 대하여 가상 브랜치 ID -1을 부여한 후, 자신의 라우팅 테이블에 기록하게 된다.The device B transmits the information received from the device H to device A, which is its upper device. Since the device A receives information through the first branch, the virtual branch ID -1 is assigned to the received information, and the information is recorded in its own routing table.

한편, 종래에 디바이스 K와 연결되어 있던 디바이스 J는 디바이스 K와 연결이 끊어지게 되면, 정상적인 라우팅 동작을 수행하기 위해서 자신의 라우팅 테이블을 업데이트 시켜야 한다. 즉, 디바이스 K가 더 이상 자신의 하위 디바이스가 아님을 기록하여야 한다. 이를 위해, 디바이스 J는 디바이스 K가 사용하는 어드레스 블럭 정보에 대하여, 가상 브랜치 ID 0을 부여하여, 자신의 라우팅 테이블에 추가할 수 있다. 가상 브랜치 ID 0이란 자신의 상위 디바이스로 해당 패킷을 라우팅할 것을 지정하기 위한 ID이다. 이상과 같은 라우팅 테이블을 이용한 라우팅 동작에 대해서는 후술한다.On the other hand, when the device J, which is conventionally connected to the device K, is disconnected from the device K, it needs to update its routing table to perform a normal routing operation. In other words, it should be noted that device K is no longer its subordinate device. To this end, the device J may add a virtual branch ID 0 to the address block information used by the device K and add it to its routing table. The virtual branch ID 0 is an ID for designating that the corresponding packet should be routed to its upper device. The routing operation using the routing table as described above will be described later.

다음으로 디바이스 K의 하위 디바이스인 디바이스 L이 디바이스 I와 연결되는 (b)경우를 예로 들어 설명한다. 이 경우, 디바이스 K는 디바이스 L의 하위 디바이스로써 동작하게 된다. 이에 따라, 디바이스 L은 디바이스 K에 대하여 새로운 브랜치 ID를 부여한다. 디바이스 K는 디바이스 L에 대하여 자신이 사용하는 어드레스 블럭 정보를 전송한다. 디바이스 L은 수신된 어드레스 블럭 정보 중 자신이 사용하는 어드레스 블럭을 제외한 나머지 어드레스 블럭 정보 및 부여된 브랜치 ID를 자신의 라우팅 테이블에 기록한다.Next, a case in which device L, which is a lower device of device K, is connected to device I will be described as an example. In this case, device K operates as a lower device of device L. Accordingly, device L assigns a new branch ID to device K. The device K transmits the address block information used by the device K to the device L. The device L records the remaining address block information except the address block used by the device L and the assigned branch ID among the received address block information in its routing table.

즉, 디바이스 L의 라우팅 테이블은 아래의 표와 같이 표현될 수 있다.That is, the routing table of the device L may be expressed as shown in the table below.

브랜치 IDBranch ID 최초 어드레스First address 최후 어드레스Last address 1One 2222 2323 22 2424 2424 33 2626 3636

표 5에서 브랜치 ID 3은 디바이스 K에 대하여 부여된 것이다. In Table 5, branch ID 3 is assigned for device K.

한편, 디바이스 I는 디바이스 L에 대하여 브랜치 ID 1을 부여하고, 디바이스 L로부터 제공되는 어드레스 정보에 따라 최초 및 최후 어드레스를 기록한다. 디바이스 I의 상위 디바이스인 H, B, A도 각각 디바이스 L로부터 제공되는 어드레스 정보에 따라 라우팅 테이블에 가상 브랜치 ID를 추가하게 된다. 그 방법은 상술한 (a)경우와 유사하므로, 더 이상의 설명은 생략한다. On the other hand, device I assigns branch ID 1 to device L, and records the first and last addresses according to the address information provided from device L. The upper devices H, B, and A of the device I also add virtual branch IDs to the routing table according to the address information provided from the device L, respectively. Since the method is similar to the case (a) described above, further description is omitted.

도 9는 매쉬 구조로 연결된 지그비 네트워크 환경 구성을 나타내는 모식도이다. 매쉬 구조의 지그비 네트워크 환경에서는, 각 디바이스가 상위 디바이스를 경유하지 않고 동일 레벨의 디바이스로 직접 패킷을 전송할 수 있게 된다. 도 9에 따르면, 클러스터 트리 구조상에서 각 디바이스가 자신과 동일 레벨에 위치하는 주변 디바이스 등과 연결되어, 매쉬 구조를 형성하게 된다. 이 경우, 각 디바이스는 연결된 새로운 디바이스를 자신의 하위 디바이스로 인식하여 라우팅 테이블에 기록하게 된다. 이에 따라, 상위 레벨의 디바이스를 경유하지 않고, 직접적으로 패킷을 라우팅할 수 있게 된다. 예를 들어, 디바이스 E가 디바이스 H를 목적지로 하는 패킷을 전송한 경우, 패킷 라우팅 경로는 E-C-B-H가 아니라 E-C-H가 된다. 9 is a schematic diagram showing the configuration of a Zigbee network environment connected by a mesh structure. In a ZigBee network environment having a mesh structure, each device can directly transmit a packet to a device of the same level without passing through an upper device. According to FIG. 9, each device is connected to a peripheral device located at the same level as itself in the cluster tree structure to form a mesh structure. In this case, each device recognizes the new connected device as its subordinate device and records it in the routing table. Accordingly, the packet can be directly routed without passing through a higher level device. For example, when device E transmits a packet destined for device H, the packet routing path becomes E-C-H rather than E-C-B-H.

도 10은 본 발명의 일 실시 예에 따라 클러스터-트리 구조로 연결된 디바이스의 구성을 나타내는 블럭도이다. 도 10에 따르면, 본 디바이스는 통신부(110), 제어부(120), 어드레스 블럭 산정부(130), 어드레스 블럭 할당부(140), 연산부(150), 메모리부(160)를 포함한다.10 is a block diagram illustrating a configuration of a device connected in a cluster-tree structure according to an embodiment of the present invention. According to FIG. 10, the device includes a communication unit 110, a control unit 120, an address block calculation unit 130, an address block allocation unit 140, an operation unit 150, and a memory unit 160.

통신부(110)는 클러스터-트리 구조 상에서 소정의 상위 디바이스 및 하위 디바이스와 연결되어 통신을 수행하는 역할을 한다. 또한, 통신부(110)는 클러스터-트리 구조를 형성하기 위해서, 주변 디바이스와의 사이에서 접속요청메시지 및 응답메시지 등을 송수신한다. 접속요청메시지에는 상술한 연결등급 0~3 중 하나를 표시하여 줄 수 있다. The communication unit 110 is connected to a predetermined upper device and lower device in a cluster-tree structure to perform communication. In addition, the communication unit 110 transmits / receives a connection request message and a response message with a peripheral device in order to form a cluster-tree structure. In the connection request message, one of the aforementioned connection classes 0 to 3 may be displayed.

제어부(120)는 통신부(110)를 통해 복수개의 하위 디바이스로부터 접속요청메시지가 수신되면, 연결등급이 높은 순서대로 선택하여 접속을 허락한다. 즉, 선택된 하위 디바이스로 응답메시지를 전송하도록 통신부(110)를 제어한다.When the connection request message is received from the plurality of lower devices through the communication unit 110, the control unit 120 selects the connection level in order of high and allows the connection. That is, the communication unit 110 is controlled to transmit the response message to the selected lower device.

어드레스 블럭 산정부(130), 어드레스 블럭 할당부(140), 연산부(150)는 클러스터-트리 구조 형성 이후에 어드레스를 할당하기 위한 수단이다. The address block calculator 130, the address block allocator 140, and the calculator 150 are means for assigning an address after the cluster-tree structure is formed.

즉, 어드레스 블럭 산정부(130)는 통신부(110)를 통해 연결된 하위 디바이스로부터 소정 크기의 어드레스 블럭이 요청되면, 본 디바이스가 상위 디바이스로부터 할당받아 사용할 어드레스 블럭의 크기를 산정하는 역할을 한다. 즉, 복수개의 하위 디바이스가 연결된 경우, 각 하위 디바이스가 요청한 어드레스 블럭 크기를 합산한 후, 추후 연결 가능한 하위 디바이스를 대비하여 별도의 어드레스 블럭 크기를 추가하여, 사용할 어드레스 블럭 크기를 산정한다. That is, when an address block having a predetermined size is requested from a lower device connected through the communication unit 110, the address block calculator 130 calculates the size of an address block to be used by the device. That is, when a plurality of lower devices are connected, the address block size requested by each lower device is added, and an additional address block size is added in preparation for a connectable lower device in order to calculate an address block size to be used.

제어부(120)는 어드레스 블럭 산정부(130)에서 산정한 크기의 어드레스 블록을 본 디바이스의 상위 디바이스로 요청하도록 통신부(110)를 제어한다.The control unit 120 controls the communication unit 110 to request an address block having a size calculated by the address block calculation unit 130 to an upper device of the present device.

어드레스 블럭 할당부(140)는 상위 디바이스로부터 어드레스 블록을 할당받으면, 본 디바이스에 연결된 하위 디바이스 각각에 대하여, 그 연결 순서에 따라 각 하위 디바이스가 요청한 크기의 어드레스 블럭을 할당한다. When an address block is allocated from an upper device, the address block allocator 140 allocates an address block having a size requested by each lower device according to the connection order to each lower device connected to the device.

한편, 본 디바이스가 클러스터-트리 구조의 최상위 레벨에 속하는 경우, 최종 지그비 코디네이터로써 동작하게 된다. 이 경우, 상위 디바이스가 존재하지 않기 때문에, 연산부(150)를 제어하여 사용가능한 전체 어드레스 블럭의 크기를 산정한다. 연산부(150)는 소정의 네트워크 파라미터를 아래 수식에 대입하여 전체 어드레스 블럭을 산정할 수 있다.On the other hand, when the device belongs to the highest level of the cluster-tree structure, the device operates as the final Zigbee coordinator. In this case, since there is no higher level device, the operation unit 150 is controlled to calculate the size of all available address blocks. The calculation unit 150 may calculate the entire address block by substituting a predetermined network parameter into the following equation.

Figure 112005019776492-pat00003
Figure 112005019776492-pat00003

Figure 112005019776492-pat00004
Figure 112005019776492-pat00004

수학식 3에서, S는 전체 어드레스 블럭, s는 본 디바이스의 어드레스, BL은 전체 어드레스 블럭의 크기, Cm은 연결가능한 하위 디바이스의 최대 개수를 나타내는 네트워크 파라미터, 그리고, Lm은 클러스터-트리 구조의 최대 레벨 깊이를 나타내는 네트워크 파라미터를 의미한다.In Equation 3, S is the entire address block, s is the address of the device, B L is the size of the entire address block, Cm is a network parameter representing the maximum number of connectable lower devices, and Lm is a cluster-tree structure. Means a network parameter representing the maximum level depth.

이에 따라, 연산부(150)에서 전체 어드레스 블럭을 산정하면, 어드레스 블럭 할당부(140)는 각 하위 디바이스의 연결 순서에 따라 어드레스 블럭을 분할하여, 할당한다.Accordingly, when the calculation unit 150 calculates the entire address block, the address block allocation unit 140 divides and allocates the address blocks according to the connection order of the respective lower devices.

한편, 메모리부(160)에는 본 디바이스에 연결된 하위 디바이스의 개수, 각 하위 디바이스의 연결순서에 따라 순차적으로 부여되는 브랜치 ID 및 각 하위 디바이스에 할당된 어드레스 블럭 정보 등이 기록된 라우팅 테이블이 저장된다. 통신부(110)를 통해서 패킷이 수신되면, 제어부(120)는 메모리부(160)에 저장된 라우팅 테이블을 참고하여 패킷 목적지가 속한 클러스터로 라우팅하게 된다.Meanwhile, the memory unit 160 stores a routing table in which the number of lower devices connected to the device, branch IDs sequentially assigned according to the connection order of each lower device, and address block information allocated to each lower device are recorded. . When the packet is received through the communication unit 110, the controller 120 refers to the routing table stored in the memory unit 160 to route to the cluster to which the packet destination belongs.

한편, 제어부(120)는 통신부(110) 및 상위 디바이스 간의 연결이 끊어진 후, 타 디바이스와 연결되면, 메모리부(160)에 저장된 라우팅 정보를 새로이 연결된 타 디바이스로 제공한다. 이에 따라, 타 디바이스가 본 디바이스의 어드레스 정보를 자신의 라우팅 테이블에 기록할 수 있도록 한다. On the other hand, when the connection between the communication unit 110 and the upper device is disconnected and connected to another device, the controller 120 provides routing information stored in the memory unit 160 to another newly connected device. This allows other devices to record the address information of this device in their routing tables.

또는, 기존에 타 디바이스에 연결되어 있던 디바이스의 연결이 종료된 후 통 신부(110)로 연결되면, 제어부(120)는 타 디바이스에 대하여 브랜치 ID 또는 가상 브랜치 ID를 부여하고, 타 디바이스의 어드레스 정보를 메모리부(160)에 기록한다. 이에 따라, 연결 복구시에도 어드레스를 재할당하지 않고, 기존 어드레스를 그대로 사용하여 라우팅할 수 있게 된다.Alternatively, when the connection of the device previously connected to another device is terminated and connected to the communication unit 110, the controller 120 assigns a branch ID or a virtual branch ID to the other device, and provides address information of the other device. In the memory unit 160. As a result, even when the connection is restored, the existing address can be used as it is without being reassigned.

도 11은 본 발명의 일 실시 예에 따른 디바이스의 라우팅 방법을 설명하기 위한 흐름도이다. 도 11에 따르면, 클러스터-트리 구조가 형성되면(S410), 클러스터-트리 구조에 속하는 각 디바이스에 대하여 어드레스가 할당된다(S420). 어드레스 할당 방법은 도 2에 대한 설명 부분에서 기재하였으므로, 더 이상의 설명은 생략한다. 11 is a flowchart illustrating a routing method of a device according to an embodiment of the present invention. According to FIG. 11, when the cluster-tree structure is formed (S410), an address is allocated to each device belonging to the cluster-tree structure (S420). Since the address allocation method has been described in the description of FIG. 2, further description thereof will be omitted.

이러한 상태에서, 본 디바이스는 소정 디바이스를 목적지로 지정한 패킷을 수신하면(S430), 본 디바이스가 목적지인지 확인한다. 즉, 패킷의 목적지 어드레스가 본 디바이스의 자체 어드레스와 동일한지를 확인한다(S440). 이에 따라, 동일하다면 해당 패킷의 바디(body)에 기록된 내용을 독출하여, 대응되는 동작을 수행한다.In this state, when the device receives a packet designated as a destination (S430), the device checks whether the device is a destination. In other words, it is checked whether the destination address of the packet is the same as its own address (S440). Accordingly, if identical, the contents recorded in the body of the corresponding packet are read and the corresponding operation is performed.

반면에, 동일하지 않다면, 메모리부(160)에 저장된 라우팅 테이블을 참고한다(S450). 이에 따라, 패킷의 목적지 어드레스가 속한 어드레스 블럭 정보가 라우팅 테이블에 기록되어 있는지 확인한다(S460). On the other hand, if it is not the same, it refers to the routing table stored in the memory unit 160 (S450). Accordingly, it is checked whether the address block information to which the destination address of the packet belongs is recorded in the routing table (S460).

라우팅 테이블에 기록되어 있다면, 해당 어드레스 블럭이 할당된 브랜치로 해당 패킷을 라우팅한다(S480). 이에 따라, 라우팅된 패킷을 수신한 하위 디바이스도 자신이 목적지 디바이스인지 확인한다. 확인 결과, 목적지 디바이스가 아니라면 라우팅 테이블을 참고하여 해당 어드레스 블럭이 할당된 브랜치로 패킷을 라우팅한다. If it is recorded in the routing table, the corresponding packet is routed to the branch to which the corresponding address block is allocated (S480). Accordingly, the lower device that receives the routed packet also checks whether it is the destination device. As a result, if it is not the destination device, the packet is routed to the branch to which the corresponding address block is assigned by referring to the routing table.

한편, 본 디바이스는, 목적지 어드레스가 자신의 라우팅 테이블에 기록되어 있지 않다면, 해당 패킷을 상위 디바이스로 라우팅하게 된다(S490). 상위 디바이스도 자신의 라우팅 테이블을 확인하여, 목적지 어드레스가 포함된 어드레스 블럭 정보가 기록되어 있는지 확인한다. 이러한 방식으로 목적지 디바이스까지 패킷을 라우팅 시켜 줄 수 있게 된다.On the other hand, if the destination address is not recorded in its routing table, the device routes the packet to the higher level device (S490). The upper device also checks its routing table to see if address block information including the destination address is recorded. In this way, packets can be routed to the destination device.

이상 설명한 바와 같이, 본 발명에 따르면, 지그비 네트워크 환경에서의 각 디바이스가 클러스터-트리 구조로 연결된 이후에, 어드레스를 새로이 할당한다. 이에 따라, 전체 어드레스 블럭을 효율적으로 사용할 수 있게 된다. 또한, 클러스터 트리 구조 상에서의 연결이 끊어진 후에 다시 복구되거나, 새로운 디바이스가 연결된 경우, 기존 어드레스를 그대로 이용할 수 있게 된다. 따라서, 어드레스 재할당으로 인한 시간 및 전력 낭비를 방지할 수 있게 된다.As described above, according to the present invention, after each device in a Zigbee network environment is connected in a cluster-tree structure, an address is newly assigned. As a result, the entire address block can be efficiently used. In addition, when the connection on the cluster tree structure is disconnected or restored again, or when a new device is connected, the existing address can be used as it is. Thus, time and power waste due to address reallocation can be prevented.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어 져서는 안될 것이다. In addition, although the preferred embodiment of the present invention has been shown and described above, the present invention is not limited to the specific embodiments described above, but the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or the prospect of the present invention.

Claims (23)

복수개의 디바이스를 포함한 네트워크 환경에서의 어드레스 할당 방법에 있어서,In the address assignment method in a network environment including a plurality of devices, (a) 상기 복수개의 디바이스가 클러스터-트리 구조로 연결되는 단계; (a) connecting the plurality of devices in a cluster-tree structure; (b) 상기 클러스터 트리 구조의 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 자신이 사용하고자 하는 소정 크기의 어드레스 블럭을 자신의 상위 디바이스로 순차적으로 요청하는 단계; 및,(b) sequentially requesting, by each device belonging to the lowest level to the next higher level of the cluster tree structure, an address block having a predetermined size to be used by the higher level device; And, (c) 상기 클러스터 트리 구조의 최상위 레벨 내지 차하위 레벨에 속하는 각 디바이스가, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 상기 하위 디바이스로 할당하는 단계;를 포함하는 것을 특징으로 하는 어드레스 할당 방법.(c) assigning, by each device belonging to the highest level or the next lower level of the cluster tree structure, an address block having a size requested by its lower device to the lower device. 제1항에 있어서,The method of claim 1, 상기 (c)단계는,Step (c) is, 소정 레벨에 속하는 디바이스는, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 각 하위 디바이스의 연결 순서대로 순차적으로 할당하는 것을 특징으로 하는 어드레스 할당 방법.A device belonging to a predetermined level sequentially allocates an address block of a size requested by its lower device in order of connection of each lower device. 제2항에 있어서,The method of claim 2, 상기 최상위 레벨 내지 상기 차하위 레벨에 속하는 각 디바이스는, 자신에게 연결된 하위 디바이스의 개수, 상기 하위 디바이스 각각의 연결순서에 따라 순차적으로 부여되는 브랜치 ID 및 상기 하위 디바이스 각각에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블을 저장하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법. Each device belonging to the highest level to the next lower level has a number of lower devices connected thereto, a branch ID sequentially assigned according to the connection order of the lower devices, and an address block allocated to each of the lower devices. Storing the routing table further comprising: an address assignment method. 제3항에 있어서,The method of claim 3, 소정의 제1디바이스 및 상기 클러스터 트리 구조를 연결하는 브랜치가 끊어지는 단계;Disconnecting a branch connecting the predetermined first device and the cluster tree structure; 상기 제1디바이스가 주변 디바이스 중 소정의 제2디바이스에 연결되는 단계;Connecting the first device to a predetermined second device among peripheral devices; 상기 제1디바이스가 자신의 라우팅 테이블에 저장된 정보를 상기 제2디바이스로 전송하는 단계;Transmitting, by the first device, information stored in its routing table to the second device; 상기 제2디바이스가 상기 제1디바이스에 대하여 소정의 브랜치 ID를 부여한 후, 부여된 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계; The second device assigning a predetermined branch ID to the first device, and then recording the assigned branch ID and the information in its routing table; 상기 제2디바이스의 상위레벨 내지 최상위레벨에 이르기까지의 각 상위 디바이스가 상기 정보를 수신하는 단계; 및Receiving each of the higher level devices from the upper level to the highest level of the second device by receiving the information; And 상기 제2디바이스의 상위레벨 내지 최상위레벨에 이르기까지의 각 상위 디바이스가 상기 수신된 정보에 대하여 가상 브랜치 ID를 부여한 후, 상기 가상 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법.Assigning a virtual branch ID to the received information by each higher level device from the upper level to the highest level of the second device, and then recording the virtual branch ID and the information in its own routing table. Addressing method comprising a. 제4항에 있어서,The method of claim 4, wherein 상기 제1디바이스의 하위 디바이스 중 소정의 제3디바이스가, 상기 클러스터-트리 구조에 속하는 소정의 제4디바이스에 연결되는 단계;Connecting a predetermined third device of the lower devices of the first device to a predetermined fourth device belonging to the cluster-tree structure; 상기 제1디바이스가 자신의 라우팅 테이블에 저장된 제1정보를 상기 제3디바이스로 전송하는 단계;Transmitting, by the first device, first information stored in its routing table to the third device; 상기 제3디바이스가, 상기 제1디바이스로부터 수신된 제1정보를 자신의 라우팅 테이블에 저장하는 단계;Storing, by the third device, first information received from the first device in its routing table; 상기 제3디바이스가 자신의 라우팅 테이블에 저장된 정보를 상기 제4디바이스로 전송하는 단계;Transmitting, by the third device, information stored in its routing table to the fourth device; 상기 제4디바이스가 상기 제3 디바이스에 대하여 소정의 브랜치 ID를 부여한 후, 부여된 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계; The fourth device assigning a predetermined branch ID to the third device, and then recording the assigned branch ID and the information in its routing table; 상기 제4디바이스의 상위레벨 내지 최상위 레벨에 이르기까지의 각 상위 디바이스가 각각 상기 정보를 수신하는 단계; 및,Receiving each of the higher level devices from the upper level to the highest level of the fourth device by receiving the information; And, 상기 제4디바이스의 상위레벨 내지 최상위 레벨에 이르기까지의 각 상위 디바이스가 각각 상기 정보에 대하여 가상 브랜치 ID를 부여한 후, 상기 가상 브랜치 ID 및 상기 정보를 자신의 라우팅 테이블에 기록하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법.And assigning a virtual branch ID to the information by each higher level device from the upper level to the highest level of the fourth device, and then recording the virtual branch ID and the information in its routing table. And an address assignment method. 제2항에 있어서,The method of claim 2, 상기 클러스터 트리 구조 상에서 동일한 레벨에 속하는 복수개의 디바이스가 상호 연결되어 매쉬 구조를 형성하는 단계; Interconnecting a plurality of devices belonging to the same level on the cluster tree structure to form a mesh structure; 동일 레벨에 속하는 타 디바이스가 연결되면, 연결된 타 디바이스에 대하여 소정의 브랜치 ID를 부여하는 단계;If another device belonging to the same level is connected, assigning a predetermined branch ID to the connected other device; 상기 타 디바이스의 라우팅 테이블에 저장된 정보를 수신하는 단계; 및,Receiving information stored in a routing table of the other device; And, 상기 타 디바이스에 대하여 부여한 브랜치 ID 및 상기 타 디바이스로부터 수신된 정보를 자신의 라우팅 테이블에 저장하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법.And storing the branch ID assigned to the other device and the information received from the other device in its routing table. 제1항에 있어서,The method of claim 1, 상기 (a)단계는,In step (a), 상기 복수개의 디바이스가 각각 소정의 연결 등급을 자체적으로 설정하는 단계;Each of the plurality of devices setting a predetermined connection level by itself; 소정의 제5디바이스가, 적어도 하나의 주변 디바이스로부터 각각의 연결등급이 표시된 접속 요청 메시지를 수신하는 단계;Receiving, by a predetermined fifth device, a connection request message indicating each connection class from at least one peripheral device; 상기 제5디바이스가 상기 접속 요청 메시지에 표시된 연결등급에 따라, 소정 디바이스를 선택하는 단계; 및,Selecting, by the fifth device, a predetermined device according to the connection class indicated in the connection request message; And, 상기 제5디바이스가 상기 선택된 디바이스에 대하여 응답 메시지를 전송하여, 상기 선택된 디바이스와 연결되는 단계;를 포함하는 것을 특징으로 하는 어드레스 할당 방법.And transmitting, by the fifth device, a response message to the selected device, and connecting to the selected device. (a) 복수개의 디바이스가 클러스터-트리 구조로 연결되는 단계;(a) connecting a plurality of devices in a cluster-tree structure; (b) 상기 클러스터 트리 구조의 최하위 레벨 내지 차상위 레벨에 속하는 각 디바이스가, 자신이 사용하고자 하는 어드레스 블럭의 크기를 자신의 상위 디바이스로 각각 순차적으로 요청하는 단계;(b) sequentially requesting, by each of the devices belonging to the lowest level to the next higher level of the cluster tree structure, to the higher level device of its own address block size; (c) 상기 클러스터 트리 구조의 최상위 레벨 내지 차하위 레벨에 속하는 각 디바이스가, 자신의 하위 디바이스가 요청한 크기의 어드레스 블럭을 상기 하위 디바이스로 순차적으로 할당하는 단계;(c) sequentially assigning, by the lower level device to the lower level of the cluster tree structure, an address block having a size requested by the lower device to the lower device; (d) 상기 최상위 레벨 내지 상기 차하위 레벨에 속하는 각 디바이스는, 자신에게 연결된 하위 디바이스의 개수, 상기 하위 디바이스 각각에 대한 브랜치 ID 및 각 하위 디바이스에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블을 저장하는 단계; 및,(d) Each device belonging to the highest level to the next lower level stores a routing table in which the number of lower devices connected thereto, the branch ID for each of the lower devices, and the address block allocated for each lower device are recorded. Doing; And, (e) 상기 클러스터 트리 구조에 속하는 소정의 제1디바이스가 소정 패킷을 수신하면, 상기 패킷의 목적지 어드레스를 확인한 후, 상기 목적지 어드레스를 포함하는 어드레스 블럭이 할당된 소정 디바이스로 상기 패킷을 라우팅하는 단계;를 포함하는 것을 특징으로 하는 네트워크 환경에서의 라우팅 방법.(e) if a predetermined first device belonging to the cluster tree structure receives the predetermined packet, checking the destination address of the packet, and then routing the packet to a predetermined device to which an address block including the destination address is allocated. Routing method in a network environment comprising a. 제8항에 있어서,The method of claim 8, 상기 (e)단계는,In step (e), 상기 제1디바이스가, 상기 패킷의 목적지 어드레스를 확인하는 단계;Verifying, by the first device, a destination address of the packet; 상기 제1디바이스가 상기 목적지 어드레스가 자신의 하위 디바이스에 할당된 어드레스 블럭 내에 속하는지 여부를 판단하는 단계;Determining, by the first device, whether the destination address belongs to an address block allocated to its lower device; 상기 어드레스 블럭 내에 속한다고 판단되면, 해당 어드레스 블럭이 할당된 하위 디바이스로 상기 패킷을 전송하는 단계; 및,If it is determined to belong to the address block, transmitting the packet to a lower device to which the address block is allocated; And, 상기 어드레스 블럭 내에 속하지 않는다고 판단되면, 상기 제1디바이스가 상위 디바이스로 상기 패킷을 전송하는 단계;를 포함하는 것을 특징으로 하는 라우팅 방법.If it is determined that it does not belong to the address block, transmitting the packet to a higher device by the first device. 네트워크 환경을 구성하는 디바이스의 어드레스 할당 방법에 있어서,In the address assignment method of the device constituting the network environment, (a) 적어도 하나의 하위 디바이스가 클러스터-트리 구조로 연결되는 단계;(a) at least one subordinate device being connected in a cluster-tree structure; (b) 상기 적어도 하나의 하위 디바이스로부터 소정 크기의 어드레스 블럭을 요청받는 단계;(b) receiving an address block of a predetermined size from the at least one lower device; (c) 상기 적어도 하나의 하위 디바이스 각각으로부터 요청받은 어드레스 블럭 크기를 조합하여, 소정 크기의 어드레스 블럭을 상위 디바이스로 요청하는 단계;(c) combining an address block size requested from each of the at least one lower device, and requesting an upper level device for an address block having a predetermined size; (d) 상기 상위 디바이스에 대하여 요청한 크기의 어드레스 블럭을 할당받는 단계; 및,(d) assigning an address block of a requested size to the upper device; And, (e) 상기 할당받은 어드레스 블럭 중 상기 적어도 하나의 하위 디바이스 각각이 요청한 크기의 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스의 연결 순서에 따라 할당하는 단계;를 포함하는 것을 특징으로 하는 어드레스 할당 방법.(e) allocating an address block of a size requested by each of the at least one lower device among the allocated address blocks according to the connection order of the at least one lower device. 제10항에 있어서,The method of claim 10, 상기 상위 디바이스가 존재하지 않는 경우, 전체 어드레스 블럭 중 상기 적어도 하나의 하위 디바이스 각각이 요청한 크기의 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스의 연결 순서에 따라 할당하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법.Allocating an address block having a size requested by each of the at least one lower device among all address blocks according to the connection order of the at least one lower device when the upper device does not exist. Address allocation method. 제11항에 있어서,The method of claim 11, 상기 하위 디바이스가 존재하지 않는 경우, 자신이 사용하고자 하는 소정 크기의 어드레스 블럭을 상기 상위 디바이스로 요청하는 단계;를 더 포함하는 것을 특징으로 하는 어드레스 할당 방법.And requesting, by the upper device, an address block of a predetermined size to be used by the lower device when the lower device does not exist. 클러스터-트리 구조로 연결된 네트워크 환경에 속하는 네트워크 디바이스에 있어서,In a network device belonging to a network environment connected by a cluster-tree structure, 상기 클러스터-트리 구조 상에서 소정의 상위 디바이스 및 적어도 하나의 하위 디바이스와 연결되어 통신을 수행하는 통신부;A communication unit connected to a predetermined upper device and at least one lower device on the cluster-tree structure to perform communication; 상기 적어도 하나의 하위 디바이스 각각으로부터 소정 크기의 어드레스 블럭이 요청되면, 상기 요청된 어드레스 블럭의 크기를 조합하여, 사용하고자 하는 어드레스 블록의 크기를 산정하는 어드레스 블럭 산정부;An address block calculation unit for calculating a size of an address block to be used by combining sizes of the requested address blocks when an address block having a predetermined size is requested from each of the at least one lower device; 상기 어드레스 블럭 산정부에서 산정한 크기의 어드레스 블록을 상기 상위 디바이스로 요청하도록 상기 통신부를 제어하는 제어부; 및,A control unit which controls the communication unit to request the upper device to an address block having a size calculated by the address block calculator; And, 상기 상위 디바이스로부터 상기 산정한 크기의 어드레스 블록을 할당받으면, 상기 적어도 하나의 하위 디바이스 각각에 대하여 그 연결 순서에 따라, 상기 요청된 크기의 어드레스 블럭을 할당하는 어드레스 블럭 할당부;를 포함하는 것을 특징으로 하는 네트워크 디바이스.And an address block allocator for allocating an address block of the requested size to each of the at least one lower device according to the connection order when the address block of the calculated size is allocated from the upper device. Network device. 제13항에 있어서,The method of claim 13, 상기 통신부가 상기 상위 디바이스에 연결되지 않은 경우, 소정의 네트워크 파라미터를 이용하여 전체 어드레스 블럭을 산정하는 연산부;를 더 포함하는 것을 특징으로 하는 네트워크 디바이스.And a computing unit calculating the total address block using a predetermined network parameter when the communication unit is not connected to the upper device. 제14항에 있어서,The method of claim 14, 상기 연산부는, 아래 수식을 이용하여 상기 전체 어드레스 블럭을 산정하는 것을 특징으로 하는 네트워크 디바이스 : The computing unit may calculate the entire address block by using the following equation:
Figure 112006041520439-pat00005
Figure 112006041520439-pat00005
Figure 112006041520439-pat00006
Figure 112006041520439-pat00006
상기 수식에서, S는 전체 어드레스 블럭, s는 자체 어드레스, BL은 상기 전체 어드레스 블럭의 크기, Cm은 연결가능한 하위 디바이스의 최대 개수를 나타내는 네트워크 파라미터, 그리고, Lm은 상기 클러스터-트리 구조의 최대 레벨 깊이를 나타내는 네트워크 파라미터.In the above equation, S is a global address block, s is its own address, B L is the size of the global address block, Cm is a network parameter representing the maximum number of connectable lower devices, and Lm is the maximum of the cluster-tree structure. Network parameter representing level depth.
제14항에 있어서,The method of claim 14, 상기 어드레스 블럭 할당부는,The address block assignment unit, 상기 연산부에서 산정한 전체 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스 각각의 연결 순서에 따라 분할하여, 상기 적어도 하나의 하위 디바이스 각각에 할당하는 것을 특징으로 하는 네트워크 디바이스.And dividing the entire address block calculated by the calculating unit according to the connection order of each of the at least one lower device, and assigning the total address block to each of the at least one lower device. 제16항에 있어서,The method of claim 16, 상기 적어도 하나의 하위 디바이스의 개수, 상기 하위 디바이스 각각의 연결순서에 따라 순차적으로 부여되는 브랜치 ID 및 상기 하위 디바이스 각각에 대하여 할당된 어드레스 블럭이 기록된 라우팅 테이블이 저장되는 메모리부;를 더 포함하는 것을 특징으로 하는 네트워크 디바이스.And a memory unit configured to store a routing table in which the number of the at least one lower device, a branch ID sequentially assigned according to the connection order of each of the lower devices, and an address block allocated to each of the lower devices are stored. Network device, characterized in that. 제17항에 있어서,The method of claim 17, 상기 제어부는,The control unit, 상기 통신부를 통해 소정의 패킷이 수신되면, 상기 패킷의 목적지 어드레스를 확인한 후, 상기 메모리부에 저장된 라우팅 테이블을 이용하여 상기 목적지 어드레스가 포함된 어드레스 블럭이 할당된 하위 디바이스를 탐색하고, 상기 하위 디바이스가 탐색되면 상기 통신부를 제어하여 상기 패킷을 상기 탐색된 하위 디바이스로 라우팅하는 것을 특징으로 하는 네트워크 디바이스.When a predetermined packet is received through the communication unit, after checking a destination address of the packet, a lower device to which an address block including the destination address is allocated is searched using a routing table stored in the memory unit, and the lower device If is found, the network device controls the communication unit to route the packet to the discovered lower device. 제18항에 있어서,The method of claim 18, 상기 제어부는, The control unit, 상기 하위 디바이스가 탐색되지 않으면, 상기 상위 디바이스로 상기 패킷을 라우팅하도록 상기 통신부를 제어하는 것을 특징으로 하는 네트워크 디바이스.And if the lower device is not found, controlling the communication unit to route the packet to the upper device. 제18항에 있어서,The method of claim 18, 상기 제어부는,The control unit, 소정의 제1디바이스가 상기 통신부에 연결되어 상기 제1디바이스의 라우팅 테이블에 저장된 정보가 수신되면, 상기 제1 디바이스에 대하여 브랜치 ID를 부여한 후, 상기 브랜치 ID 및 상기 수신된 정보를 상기 메모리부의 라우팅 테이블에 기록하는 것을 특징으로 하는 네트워크 디바이스.When a predetermined first device is connected to the communication unit and information stored in the routing table of the first device is received, a branch ID is assigned to the first device, and then the branch ID and the received information are routed to the memory unit. Network device characterized in that the writing to the table. 노드가 보유한 브랜치별로 할당된 어드레스 블럭이 기록된 테이블을, 상기 노드가 보유하는 단계;Maintaining, by the node, a table in which address blocks allocated for each branch held by a node are recorded; 패킷을 수신하면, 상기 노드는 상기 테이블을 참고하여 상기 수신한 패킷의 목적지 주소가 속한 어드레스 블럭이 상기 테이블에 기록되어 있는지 확인하는 단계;Upon receipt of a packet, the node referring to the table to determine whether an address block to which a destination address of the received packet belongs is recorded in the table; 기록된 것으로 확인되면, 상기 노드는 상기 패킷의 목적지 주소가 속한 어드레스 블럭이 할당된 브랜치로 상기 패킷을 라우팅하는 단계; 및If it is verified that the node has been written, routing the packet to a branch to which an address block to which the destination address of the packet belongs is assigned; And 미기록된 것으로 확인되면, 상기 노드는 상기 패킷을 상기 노드의 상위노드로 라우팅하는 단계;를 포함하는 것을 특징으로 하는 라우팅 방법. If the node is found to be unrecorded, routing the packet to a higher node of the node . 적어도 하나의 하위 디바이스가 트리로 연결되는 단계;At least one lower device connected to a tree; 상기 적어도 하나의 하위 디바이스로부터 소정 크기의 어드레스 블럭을 요청받는 단계;Receiving an address block of a predetermined size from the at least one lower device; 상기 적어도 하나의 하위 디바이스 각각으로부터 요청받은 어드레스 블럭 크기들을 합한 크기를 상위 디바이스로 요청하는 단계;Requesting, by the upper device, the sum of the address block sizes requested from each of the at least one lower device; 상기 상위 디바이스에 대하여 요청한 크기의 어드레스 블럭을 할당받는 단계; 및Receiving an address block of a size requested for the upper device; And 상기 할당받은 어드레스 블럭 중 상기 적어도 하나의 하위 디바이스 각각이 요청한 크기의 어드레스 블럭을, 상기 적어도 하나의 하위 디바이스에 할당하는 단계;를 포함하는 것을 특징으로 하는 어드레스 할당방법.Each of the at least one lower device among the allocated address blocks Allocating an address block of a requested size to the at least one lower device. 노드들과 트리로 연결하는 단계;Connecting to nodes and trees; 상기 트리로 연결되지 않은 1홉 내의 이웃 노드와 연결하는 단계; 및Connecting with neighboring nodes within one hop not connected to the tree; And 상기 이웃 노드를 테이블에 기록하는 단계;를 포함하는 것을 특징으로 하는 무선네트워크 형성방법.And recording the neighbor node in a table.
KR1020050031554A 2004-08-06 2005-04-15 ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof KR100659614B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US59905604P 2004-08-06 2004-08-06
US60/599,056 2004-08-06

Publications (2)

Publication Number Publication Date
KR20060045776A KR20060045776A (en) 2006-05-17
KR100659614B1 true KR100659614B1 (en) 2006-12-21

Family

ID=37149366

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050031554A KR100659614B1 (en) 2004-08-06 2005-04-15 ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof

Country Status (1)

Country Link
KR (1) KR100659614B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100886822B1 (en) 2006-12-04 2009-03-05 한국전자통신연구원 Beacon scehduling method in wireless sensor network

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100870088B1 (en) * 2006-12-22 2008-11-25 강원대학교산학협력단 ZigBee mesh routing protocol based on cluster label
KR100846189B1 (en) * 2006-12-27 2008-07-14 강원대학교산학협력단 Best Packet Time-To-Live for Route Discovery in ZigBee Mesh Networks
KR100870651B1 (en) * 2007-02-03 2008-11-26 김기형 Method for Hierarchically Assigning Address in Sensor Network
KR101410619B1 (en) * 2007-09-28 2014-06-23 삼성전자주식회사 Zigbee network system and method for assigning ip address of client device in zigbee network system
KR102364431B1 (en) * 2013-10-21 2022-02-18 삼성전자주식회사 Connection establishing method and apparatus in a wireless communication system
WO2015060597A1 (en) * 2013-10-21 2015-04-30 삼성전자주식회사 Method and device for configuring connection of wireless communication system
CN103781144A (en) * 2014-02-28 2014-05-07 东南大学 Zigbee network tree-shaped routing method for neighbor table mode interaction

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05153148A (en) * 1991-11-28 1993-06-18 Fujitsu Ltd Routing system and communication controller
US6216168B1 (en) 1997-03-17 2001-04-10 Cabletron Systems, Inc. Perspective-based shared scope address resolution method and apparatus
KR20030056378A (en) * 2001-12-28 2003-07-04 엘지전자 주식회사 Alarm reporting software system and method for network connecting managemant
US20040052251A1 (en) 2002-09-16 2004-03-18 North Carolina State University Methods and systems for fast binary network address lookups using parent node information stored in routing table entries
KR20060010989A (en) * 2004-07-29 2006-02-03 삼성전자주식회사 Method for adaptively reassigning addresses of nodes according to changes in volumn of wireless network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05153148A (en) * 1991-11-28 1993-06-18 Fujitsu Ltd Routing system and communication controller
US6216168B1 (en) 1997-03-17 2001-04-10 Cabletron Systems, Inc. Perspective-based shared scope address resolution method and apparatus
KR20030056378A (en) * 2001-12-28 2003-07-04 엘지전자 주식회사 Alarm reporting software system and method for network connecting managemant
US20040052251A1 (en) 2002-09-16 2004-03-18 North Carolina State University Methods and systems for fast binary network address lookups using parent node information stored in routing table entries
KR20060010989A (en) * 2004-07-29 2006-02-03 삼성전자주식회사 Method for adaptively reassigning addresses of nodes according to changes in volumn of wireless network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100886822B1 (en) 2006-12-04 2009-03-05 한국전자통신연구원 Beacon scehduling method in wireless sensor network

Also Published As

Publication number Publication date
KR20060045776A (en) 2006-05-17

Similar Documents

Publication Publication Date Title
KR100659614B1 (en) ZigBee network device for assigning address to his childrens after constructing cluster-tree structure, address assigning method thereof, and, routing method thereof
JP5145360B2 (en) Efficient address assignment method in wireless personal communication network and wireless short-range personal communication device
CN102693209B (en) Information processing system
KR101255857B1 (en) Tree-guided distributed link state routing method
JP4077833B2 (en) Adaptive address reconfiguration method due to changes in wireless network standards
CN106031116B (en) A kind of correlating method, the apparatus and system of NS and VNF
US20060029002A1 (en) ZigBee network device for assigning addresses to child nodes after constructing cluster-tree structure, address assigning method and routing method
CN1708962A (en) Arrangement for topology update between mobile routers
US10652090B2 (en) Method for self-constructing a multi-hop structured wireless communication network
JP2009514263A (en) Method for assigning addresses to nodes in a wireless network
JP2013522997A (en) Method and apparatus for relocating address space
CN104202420A (en) Method and device for supporting expansion of internet-of-things middleware cluster
JP2006005928A (en) Zigbee network device and address assignment method
CN107864092B (en) Cloud content distribution method and device based on multicast technology
KR100825735B1 (en) Method for Address Space Management about nodes incapable of communication over ZigBee Network
CN102438050A (en) IPv6 (Internet Protocol Version 6) address configuration method and sensor nodes
KR100921631B1 (en) Method and system for connecting low nodes one another to increace scalability
CN105793838A (en) Reusable zone
Taghiloo et al. New approach for address auto-configuration in manet based on virtual address space mapping (vasm)
WO2012132180A1 (en) Transfer control device, integrated circuit thereof, transfer control method, and transfer control system
CN103581362B (en) Method that sensor network nodes migrates to another sensor network and network gateway
JP4339286B2 (en) Inter-node information sharing system
EP1398919A1 (en) Method for parent election of a wireless transparent bridge in a "parent-child" hierarchical network
CN115515126B (en) Self-organizing network establishment method and intelligent system based on self-organizing network
KR101104961B1 (en) Routing method and network address allocation method in Zigbee 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: 20121130

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 8