[go: up one dir, main page]

KR100970386B1 - Timing scheduling method and device between sensor nodes in wireless sensor network - Google Patents

Timing scheduling method and device between sensor nodes in wireless sensor network Download PDF

Info

Publication number
KR100970386B1
KR100970386B1 KR1020080068663A KR20080068663A KR100970386B1 KR 100970386 B1 KR100970386 B1 KR 100970386B1 KR 1020080068663 A KR1020080068663 A KR 1020080068663A KR 20080068663 A KR20080068663 A KR 20080068663A KR 100970386 B1 KR100970386 B1 KR 100970386B1
Authority
KR
South Korea
Prior art keywords
nodes
sensor nodes
sensor
node
time slot
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020080068663A
Other languages
Korean (ko)
Other versions
KR20090078298A (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 한국전자통신연구원
Priority to US12/353,596 priority Critical patent/US20090207769A1/en
Publication of KR20090078298A publication Critical patent/KR20090078298A/en
Application granted granted Critical
Publication of KR100970386B1 publication Critical patent/KR100970386B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • H04W72/044Wireless resource allocation based on the type of the allocated resource
    • H04W72/0446Resources in time domain, e.g. slots or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access
    • H04W74/04Scheduled access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명에 따른 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법은 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하고, 상기 분류된 그룹들마다 각각의 타임 슬롯을 할당하며, 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행함으로써, 센서노드들 간의 충돌을 방지하도록 하고, 센서노드는 자신의 타임슬롯에 해당되지 않는 기간에는 슬립모드(sleep mode)로 동작함으로써, 센서노드의 전력소비를 최소화할 수 있다.The timing scheduling method between sensor nodes in a wireless sensor network according to the present invention classifies a plurality of sensor nodes in a cluster into a plurality of groups, allocates each time slot to each of the classified groups, and assigns the time slots to the allocated time slots. By performing data communication accordingly, collision between sensor nodes can be prevented, and the sensor node can operate in a sleep mode during a period not corresponding to its time slot, thereby minimizing power consumption of the sensor node. .

Description

무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법 및 장치{Method and apparatus for scheduling timing between sensor nodes of the Wireless Sensor Network}Timing and apparatus for scheduling timing between sensor nodes of the Wireless Sensor Network}

본 제안발명은 무선 센서 네트워크(wireless sensor network) 시스템에 있어서, 센서노드들을 여러 개의 그룹(group)으로 분류하고 이렇게 분류된 그룹마다에는 그 그룹만의 타임슬롯(time slot)을 할당하는 이러한 일련의 타이밍 스케쥴링에 의해 각각의 센서노드들이 상호 통신하도록 함으로써, 센서노드들 간의 충돌을 방지하도록 하는 것을 목적으로 한다.The present invention proposes a series of such methods in which a wireless sensor network system classifies sensor nodes into groups and assigns time slots to the groups. An object of the present invention is to prevent collisions between sensor nodes by allowing each sensor node to communicate with each other by timing scheduling.

무선 네트워크들에서 지향성 안테나의 사용은 당해 분야에서 널리 논의되어왔다. 그러나, 대부분의 논의는 지향성 안테나를 애드 혹(ad hoc) 무선 네트워크와 함께 사용하는 데 집중되어 있다. 이 접근방법의 문제는 전력 소비이다. IEEE 802.11 같은 CSMA 기반의 MAC 프로토콜은 높은 전력 소비 때문에 무선 센서 네트워크에 사용되기에는 실용적이지 않다. 이것은 캐리어를 센싱하는 대부분의 시간 동안 노드들이 활성화되어야 하기 때문이다. 나아가, 지향성 안테나를 애드 혹 무선 네트워크에 사용하는 것은 deafness나 directional hidden terminals 같은 새로운 통신 문제를 야기한다. The use of directional antennas in wireless networks has been widely discussed in the art. However, most of the discussion has focused on using directional antennas with ad hoc wireless networks. The problem with this approach is power consumption. CSMA-based MAC protocols, such as IEEE 802.11, are not practical for wireless sensor networks because of their high power consumption. This is because the nodes must be active most of the time for sensing the carrier. Furthermore, the use of directional antennas in ad hoc wireless networks introduces new communication problems such as deafness and directional hidden terminals.

Directional Hidden Terminal은 기존의 Omnidirectional 환경에서 A,B,C 세 노드가 나란히 있을 때, A-B, B-C는 서로 통신을 할 수 있는 거리에 있고, A-C는 서로 통신을 할 수 없는 거리에 있을 때, A, C 모두 B와 통신할 수 있다고 생각하고 동시에 B에게 데이터를 보내면 B는 Collision이 생겨서 두 가지 모두 받지 못하는 상태를 의미한다. Deafness는 A라는 노드가 Directional 안테나를 이용해 어느 한 특정 방향을 주시하고 있을 때, 다른 방향에서 A와 마주하고 있는 B라는 노드는 A가 B의 방향으로 안테나를 재설정하기 전까지는 A와 통신을 할 수 없는 상태를 의미한다. In the existing omnidirectional environment, Directional Hidden Terminal has A, B, and C nodes side by side, AB and BC are at a distance that can communicate with each other, and AC is at a distance that cannot communicate with each other. If C thinks it can communicate with B and sends data to B at the same time, B means that a collision has occurred and neither is received. Deafness means that when node A is looking at a certain direction using a directional antenna, node B facing A in the other direction can communicate with A until A resets the antenna in direction B. It means no state.

이 문제들은 무선 센서 네트워크에서와 같이 노드들의 숫자가 많을수록 그 영향력이 커진다. 노드들 간의 경합을 피하기 위해, 타임 스케줄 MAC이 제시되었다. 상기 타임 스케줄 MAC의 사용으로 네트워크 수명이 증가되고 노드들간의 경합이 제거된다. 그러나, 무선 센서 네트워크 내에서와 같이 많은 수의 노드들이 있을 특별한 경우의 타임 스케줄 계산은 복잡하고 비용이 많이 드는 작업이다. 요약하면, 기존 채널 접근 방법들을 사용하는 무선 센서 네트워크에서의 지향성 안테나의 사용은 높은 전력 소비, 높은 경합률 및 복잡한 스케줄 계산이라는 문제를 발생한다. These problems are more influential as the number of nodes increases, as in wireless sensor networks. In order to avoid contention between nodes, a time schedule MAC has been presented. The use of the time schedule MAC increases network life and eliminates contention between nodes. However, calculating a time schedule in a special case where there are a large number of nodes, such as in a wireless sensor network, is a complex and expensive task. In summary, the use of directional antennas in wireless sensor networks using existing channel approaches presents problems with high power consumption, high contention rate and complex schedule calculation.

본 발명이 해결하고자 하는 기술적 과제는 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하여, 각각의 할당된 타임 슬롯에 따라 데이터 통신을 수행하도록 하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법 및 장치에 관한 것이다.The technical problem to be solved by the present invention is to classify a plurality of sensor nodes in a cluster into a plurality of groups, to perform data communication according to each assigned time slot, the timing between sensor nodes in a wireless sensor network A scheduling method and apparatus.

상기의 과제를 이루기 위해, 본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법은 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계; 상기 분류된 그룹들마다 각각의 타임 슬롯을 할당하는 단계; 및 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계를 포함한다. In order to achieve the above object, a timing scheduling method between sensor nodes in a wireless sensor network according to the present invention comprises the steps of: classifying a plurality of sensor nodes in a cluster into a plurality of groups; Assigning each time slot to each of the classified groups; And performing data communication according to the allocated time slot.

상기 다수의 센서 노드들을 상기 복수의 그룹으로 분류하는 단계는 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계정보를 수집하는 단계; 및 상기 수집된 이웃 관계정보를 사용해, 최단 경로 트리에 따라 상기 센서 노드들의 그룹을 지정하는 단계를 포함한다.The classifying the plurality of sensor nodes into the plurality of groups may include collecting neighbor relationship information of neighboring nodes neighboring the sensor nodes; And specifying the group of sensor nodes according to the shortest path tree using the collected neighbor relationship information.

상기 분류된 그룹들마다 각각의 타임슬롯을 할당하는 단계는 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계 정보 및 상기 이웃 관계 정보에 따른 각 이웃 노드들의 충돌 관계를 고려하여 각각의 타임 슬롯을 할당하는 것을 특징으로 한다.The step of assigning each time slot to each of the classified groups allocates each time slot in consideration of the neighbor relationship information of neighboring nodes neighboring the sensor nodes and the collision relationship of each neighbor node according to the neighbor relationship information. Characterized in that.

상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계는 상기 센서 노 드들은 자신의 타임 슬롯에 해당하지 않는 기간에는 슬립모드로 전환되는 것을 특징으로 한다.The step of performing data communication according to the allocated time slot is characterized in that the sensor nodes are switched to the sleep mode in a period not corresponding to their time slot.

상기의 과제를 이루기 위해, 본 발명에 의한 컴퓨터로 읽을 수 있는 기록매체는 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계; 상기 분류된 그룹들마다 각각의 타임 슬롯을 할당하는 단계; 및 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계를 실행하기 위한 프로그램을 기록하고 있다.In order to achieve the above object, the computer-readable recording medium according to the present invention comprises the steps of: classifying a plurality of sensor nodes in a cluster into a plurality of groups; Assigning each time slot to each of the classified groups; And a program for executing the step of performing data communication in accordance with the allocated time slot.

상기의 과제를 이루기 위해, 본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 장치는 클러스터 내의 다수의 센서 노드들; 및 상기 다수의 센서 노드들을 복수의 그룹으로 분류하고, 상기 분류된 그룹들마다 각각의 타임 슬롯을 할당하는 클러스터 헤드 노드를 포함하고, 상기 할당된 타임 슬롯에 따라 상기 센서 노드들과 상기 클러스터 헤드 노드 사이의 데이터 통신을 수행하는 것을 특징으로 한다. In order to achieve the above object, a timing scheduling apparatus between sensor nodes in a wireless sensor network according to the present invention includes a plurality of sensor nodes in a cluster; And a cluster head node for classifying the plurality of sensor nodes into a plurality of groups and allocating respective time slots to the classified groups, wherein the sensor nodes and the cluster head node are allocated according to the allocated time slots. It is characterized in that to perform data communication between.

상기 다수의 센서 노드들은 각각 전 방향에 대해 신호를 수신하고 특정 영역으로 신호를 송신하는 다중 영역 안테나 및 통신을 컨트롤하는 트랜시버를 포함한다.The plurality of sensor nodes each include a multi-domain antenna for receiving signals in all directions and transmitting signals to a specific area and a transceiver for controlling communication.

상기 클러스터 헤드 노드는 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계정보를 수집하고, 상기 수집된 이웃 관계정보를 사용해, 최단 경로 트리에 따라 상기 센서 노드들의 그룹을 지정하는 것을 특징으로 한다.The cluster head node collects neighbor relationship information of neighboring nodes adjacent to the sensor nodes, and designates a group of the sensor nodes according to the shortest path tree using the collected neighbor relationship information.

상기 클러스터 헤드 노드는 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계 정보 및 상기 이웃 관계 정보에 따른 각 이웃 노드들의 충돌 관계를 고려 하여 각각의 타임 슬롯을 할당하는 것을 특징으로 한다.The cluster head node allocates each time slot in consideration of the neighbor relationship information of neighbor nodes neighboring the sensor nodes and the collision relationship of each neighbor node according to the neighbor relationship information.

상기 센서 노드들은 자신의 타임 슬롯에 해당하지 않는 기간에는 슬립 모드로 전환되는 것을 특징으로 한다.The sensor nodes may be switched to a sleep mode in a period not corresponding to their time slot.

본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법 및 장치는 센서노드들을 여러 개의 그룹(group)으로 분류하고 이렇게 분류된 그룹마다에는 그 그룹만의 타임슬롯(time slot)을 할당하는 이러한 일련의 타이밍 스케쥴링에 의해 각각의 센서노드들이 상호 통신하도록 함으로써, 센서노드들 간의 충돌을 방지하도록 하고, 센서노드의 전력소비가 최소화되도록 하며, 센서 노드의 수명을 오래 유지할 수 있도록 하는 효과가 있다.The method and apparatus for scheduling timing between sensor nodes in a wireless sensor network according to the present invention classify sensor nodes into a plurality of groups and assign a time slot of only the group to each classified group. By allowing each of the sensor nodes to communicate with each other by a series of timing scheduling, it is possible to prevent collisions between the sensor nodes, to minimize the power consumption of the sensor nodes, and to maintain the life of the sensor node for a long time.

이하, 본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법을 첨부된 도면을 참조하여 상세히 설명한다. Hereinafter, a timing scheduling method between sensor nodes in a wireless sensor network according to the present invention will be described in detail with reference to the accompanying drawings.

검토중인 무선 센서 네트워크(WSN) 어플리케이션들에 있어, 무선 센서 네트워크 구조는 계층적(hierarchical)이며 각 클러스터마다 하나의 클러스터 헤드를 갖는 센서들의 클러스터들로 구성되어 있다. 하나의 클러스터 내에서 센서 노드들에 의해 수집된 데이터는 다수의 홉을 거쳐 상기 클러스터 헤드로 포워딩된다. 그 후, 클러스터 헤드를 향해 생성된 하류 트래픽(downstream traffic)은 상급의 (upper-tier) 게이트웨이 노드로, 궁극적으로는 명령 & 제어 센터와 같은 단일의 네트워크 위치로 전달된다. 게다가, 이 중심 위치에서 생성된 메시지들은 반대 방 향의 센서 노드들에 전달되어야 한다. 네트워크가 다수의 개별적인(disjoint) 클러스터들로 나뉘어져 있기 때문에, 각각의 클러스터에서 프로토콜의 각 경우가 실행된다. 본 발명에 있어서 이하에서는 SAMAC(Sectored Antenna-Based Medium Access Control) 프로토콜은 하나의 클러스터에 대해서 설명한다.In wireless sensor network (WSN) applications under consideration, the wireless sensor network architecture is hierarchical and consists of clusters of sensors with one cluster head for each cluster. Data collected by sensor nodes in one cluster is forwarded to the cluster head via a number of hops. The downstream traffic generated towards the cluster head is then directed to an upper-tier gateway node, ultimately to a single network location such as a command & control center. In addition, messages generated at this central location must be forwarded to sensor nodes in the opposite direction. Since the network is divided into a number of disjoint clusters, each case of the protocol is executed in each cluster. In the present invention, the Sectored Antenna-Based Medium Access Control (SAMA) protocol will be described below with respect to one cluster.

데이터의 중요성 때문에 메시지 전달의 신뢰성은 네트워크 동작의 최우선적인 사항이다. 이 조건에 부합하기 위해, 패킷 손실률(packet loss rate)은 최소화되어야 한다. 무선통신 매체가 공유되기 때문에, 동시 패킷 전송에 의한 패킷 충돌도 또한 회피되어야 한다. 또한, 무선 센서 네트워크의 지향성(directional) 안테나를 사용한 통신은 제한된 리소스에 더해서 Directional Hidden Terminal 과 Deafness 문제와 같은 해결해야 할 주요 문제 등을 가지고 있다. 따라서, SAMAC에는 다음과 같은 세 가지 목표가 있다. 첫째, 공유된 무선 통신 매체에서 채널 경합(contention)과 패킷 충돌을 최소화함으로써 높은 패킷 전달률을 얻는 것이다. 둘째, 지향성 안테나의 공간적인 재활용 능력을 활용함으로써 센서 네트워크의 작업 처리량 특성을 향상시키는 것이다. 셋째, 전력 소비를 최소화함으로써 센서 배터리의 수명을 연장시키는 것이다. 상기 SAMAC 프로토콜은 시간분할 다중접근(TDMA)과 패킷 교환을 통한 4방향 신호 변경(handshake), 즉 IEEE 802.11에서와 같은 RTS-CTS-DATA-ACK 시퀀스를 이용하는 채널 경합의 조합으로 설명될 수 있다. 이 메커니즘은 프로토콜 운용 시간을 TDMA 식으로 개별적인 타임 슬롯으로 나누는 것을 바탕으로 한다. 각각의 타임 슬롯 동안, 하나 또는 그 이상의 노드 그룹들은 다른 짝(pair)에 영향을 주지 않고 통신할 수 있다. 잠정적으로 경합될 짝들은 각 기 다른 타임 슬롯에 통신하도록 스케줄링된다. 상기 SAMAC 프로토콜은 센서들이 효과적으로 일정 타임 슬롯에서 통신을 할 수 있도록 한다. 그 외의 시간에는 센서들은 전력 절약을 위한 슬립(sleep) 모드로 작동하여 전력 소비를 최소화하기 위해 자신들의 안테나를 끈다. 센서 안테나들은 해당 센서가 통신하도록 예정된 타임 슬롯 동안 켜진다. 이를 위해서, 모든 노드들은 각각 타임 스케줄을 필요로 한다. 타임 스케줄들의 계산은 리소스가 풍부한 클러스터 헤드에 의해 수행되고 그 후에 한 클러스터 내의 센서들에게 분배된다. 스케줄 계산을 수행하기 위해, 상기 클러스터 헤드는 해당 클러스터 내의 모든 센서들로부터 취득한 완전한 이웃관계 정보(neighborhood relation information)를 필요로 한다.Because of the importance of data, reliability of message delivery is a top priority for network operation. To meet this condition, the packet loss rate should be minimized. Since the wireless communication medium is shared, packet collisions due to simultaneous packet transmission should also be avoided. In addition, communication using directional antennas of wireless sensor networks has major problems to be solved, such as Directional Hidden Terminal and Deafness, in addition to limited resources. Therefore, SAMAC has three goals. First, high packet forwarding rates are achieved by minimizing channel contention and packet collisions in a shared wireless communication medium. Second, by utilizing the spatial recycling capabilities of the directional antenna, the throughput characteristics of the sensor network are improved. Third, the life of the sensor battery is extended by minimizing power consumption. The SAMAC protocol can be described as a combination of time division multiple access (TDMA) and four-way signal handshake via packet exchange, ie channel contention using the RTS-CTS-DATA-ACK sequence as in IEEE 802.11. This mechanism is based on dividing the protocol operating time into individual time slots in TDMA fashion. During each time slot, one or more node groups can communicate without affecting other pairs. Pairs that are potentially contended are scheduled to communicate in different time slots. The SAMAC protocol allows the sensors to communicate effectively in certain time slots. At other times, the sensors operate in sleep mode to save power, turning off their antennas to minimize power consumption. Sensor antennas are turned on during the time slot in which the sensor is scheduled to communicate. To this end, all nodes need a time schedule, respectively. The calculation of time schedules is performed by a resource-rich cluster head and then distributed to sensors in one cluster. In order to perform a schedule calculation, the cluster head needs complete neighborhood relation information obtained from all the sensors in that cluster.

본원 발명은 무선 센서 네트워크(wireless sensor network) 시스템에 있어서, 센서노드들을 여러 개의 그룹(group)으로 분류하고 이렇게 분류된 그룹마다에는 그 그룹만의 타임슬롯(time slot)을 할당하는 이러한 일련의 타이밍 스케쥴링에 의해 각각의 센서노드들이 상호 통신하도록 한다. 이를 위해, 센서 노드들 각각은 전 방향에 대해서 신호를 수신하고 특정 영역(sector)으로 신호를 송신하는 다중 영역 안테나 및 통신을 컨트롤하는 트랜시버를 포함하여 이루어진다. 다중 영역 안테나는 각(angular) 송신 총 영역이 전방향 360도 전 영역을 포함한다. 정보 전송은 영역을 선택함으로써 실시된다. 수신에 있어서는, 활성 영역은 지연없이 바로 정보를 수신해서 통신 스택에서 보다 높은 층으로 전달한다. 상기한 타임슬롯 할당에는 센서노드들 간의 이웃관계(neighborhood relations)와 이웃노드들의 각 섹터간의 충돌관계(conflict relations)가 고려된다. 또한, 센서노드는 자신의 타임슬 롯에 해당되지 않는 기간에는 슬립모드(sleep mode)로 전환된다. In the wireless sensor network system, the present invention classifies sensor nodes into a plurality of groups, and assigns a time slot of the group to each of these classified groups. Scheduling allows each sensor node to communicate with each other. To this end, each of the sensor nodes comprises a multi-zone antenna that receives signals in all directions and transmits signals to a particular sector and a transceiver that controls communication. In the multi-domain antenna, the angular transmission total area includes an omnidirectional 360 degree full area. Information transmission is carried out by selecting an area. In reception, the active area immediately receives the information without delay and passes it to the higher layers in the communication stack. The time slot assignment takes into account neighbor relations between sensor nodes and conflict relations between each sector of neighbor nodes. In addition, the sensor node is switched to the sleep mode in a period not corresponding to its time slot.

도 1은 본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법을 설명하기 위한 일 실시예의 플로차트이다.1 is a flowchart of an embodiment for explaining a timing scheduling method between sensor nodes in a wireless sensor network according to the present invention.

먼저, 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류한다(제10 단계). 센서 노드들은 미리 로드된 이웃 관계정보를 전혀 갖고 있지 않다. 따라서, 각 노드는 네트워크 동작이 시작될 때 모든 이웃 노드들에 그 정보를 클러스터 헤드 노드로 전송한다. First, a plurality of sensor nodes in a cluster are classified into a plurality of groups (step 10). Sensor nodes do not have any preloaded neighbor relationship information. Thus, each node sends its information to the cluster head node to all neighbor nodes when network operation begins.

도 2는 도 1의 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계를 설명하기 위한 일 실시예의 플로차트이다.FIG. 2 is a flowchart of an exemplary embodiment for explaining a step of classifying a plurality of sensor nodes in a cluster of FIG. 1 into a plurality of groups.

센서 노드들에 이웃하는 이웃 노드들의 이웃 관계정보를 수집한다(제20 단계). 두 개의 노드가 무선링크를 통한 단일 송신에서 서로의 패킷을 수신할 수 있다면 서로 이웃에 해당된다. 따라서, 다중 영역의 안테나를 구비한 두 노드간의 이웃관계는 이 노드들이 통신할 수 있는 개별 영역들의 ID를 포함한다. 예를 들면, 노드A가 영역 2를 통해 패킷을 전송하고 수신하며 노드 B는 노드A와 통신하기 위해 영역 4를 사용한다면, 노드-영역 쌍 (A, 2) 및 (B, 4)은 서로 이웃에 해당된다. 이웃 관계들이 각 센서 노드들에 의해서 발견된 후에, 이러한 관계는 상기 클러스터 헤드 노드에 전달된다. SAMAC 프로토콜은 네트워크 동작의 시작시점에 클러스터 헤드 노드에서 이웃정보의 수집을 실시한다. Collecting neighbor relationship information of neighbor nodes neighboring the sensor nodes (step 20). If two nodes can receive each other's packets in a single transmission over a radio link, they are neighbors. Thus, the neighbor relationship between two nodes having a multi-zone antenna includes the IDs of the individual zones through which these nodes can communicate. For example, if node A sends and receives packets through area 2 and node B uses area 4 to communicate with node A, node-area pairs (A, 2) and (B, 4) are neighbors to each other. Corresponds to After neighbor relationships are discovered by each sensor node, these relationships are passed to the cluster head node. The SAMAC protocol collects neighbor information at the cluster head node at the beginning of network operation.

제20 단계 후에, 수집된 이웃 관계정보를 사용해, 최단 경로 트리에 따라 센서 노드들의 그룹을 지정한다(제22 단계).After the twentieth step, the group of sensor nodes is designated according to the shortest path tree using the collected neighbor relationship information (step 22).

상기 SAMAC 프로토콜은 하나의 클러스터 내의 센서 노드들을 단일 타임 슬롯에 할당될 수 있는 그룹들로 불리는 작은 세트들로 나누기 위해서 노드 그룹을 형성한다. SAMAC 그룹에는 정확히 하나의 부모노드가 있고, 다른 모든 센서들은 자녀노드들이다.The SAMAC protocol forms a group of nodes to divide sensor nodes in a cluster into smaller sets called groups that can be assigned to a single time slot. There is exactly one parent node in the SAMAC group, and all other sensors are child nodes.

하나의 클러스터 내에 그룹 형성은 이웃관계를 이용하여 클러스터 헤드 노드 에 의해서 이루어진다. 그룹 형성 공정은 클러스터 헤드에서 출발하여 립(leaf) 노드로 진행된다. 첫째, 상기 클러스터 헤드 노드의 각 영역은 다른 그룹과 관련된다. 이 그룹들의 멤버들은 해당하는 영역에서의 클러스터 헤드 노드의 자녀 노드이다. 둘째, 상기 클러스터 헤드 노드의 자녀 노드들의 영역들은 새로운 그룹을 형성하는데 고려된다. 예를 들면, 상기 클러스터 헤드 노드의 자녀 노드A를 가정하면, 노드A가 최단 경로 트리상에 자녀 노드를 갖는다면, 노드A와 함께 그 영역의 노드들은 단일 그룹으로 간주된다. Group formation in a cluster is performed by cluster head nodes using neighbor relationships. The group forming process starts at the cluster head and proceeds to the leaf nodes. First, each area of the cluster head node is associated with a different group. Members of these groups are child nodes of the cluster head node in the corresponding area. Second, the areas of child nodes of the cluster head node are considered to form a new group. For example, assuming child node A of the cluster head node, if node A has child nodes on the shortest path tree, then nodes in that area together with node A are considered to be a single group.

도 3은 노드A에 대한 그룹을 지정하는 과정을 예시한 도면이다. 노드 A의 영역 2는 이미 그룹내에 포함되어 있기 때문에, 다른 영역들이 다른 추가적인 그룹을 형성하는데 사용될 수 있다. 최단 경로 트리에서 부모 노드에서 그 자녀 노드로 반복함으로써, 이 공정은 모든 노드가 고려될 때까지 립 노드 쪽으로 계속된다.3 is a diagram illustrating a process of designating a group for node A. Because region A of node A is already included in the group, other regions can be used to form another additional group. By repeating from the parent node to its child nodes in the shortest path tree, this process continues toward the lip node until all nodes are considered.

제10 단계 후에, 분류된 그룹들마다 각각의 타임 슬롯을 할당한다(제12 단계). 클러스터 내의 그룹들과 각 그룹의 멤버가 정해진 후에, 타임 슬롯이 각 그룹에 할당될 수 있다. 타임 슬롯을 각 그룹에 할당하기 전에, 클러스터 헤드 노드는 발생 가능한 공통 노드 충돌 및 공통 인터페이스 충돌을 위한 각 그룹 쌍을 이웃 관계를 사용하여 확인한다. After step 10, each time slot is allocated to each classified group (step 12). After the groups in the cluster and the members of each group have been determined, a time slot can be assigned to each group. Before assigning time slots to each group, the cluster head node identifies each group pair for possible common node collisions and common interface conflicts using neighbor relationships.

클러스터 헤드 노드에서 수집된 이웃관계정보는 동시 전송의 경우에 잠정적으로 경합하는 무선링크를 결정하는데 사용된다. 이러한 경합하는 무선링크는 충돌이라고 불린다. Neighbor information collected at the cluster head node is used to determine potentially competing radio links in case of simultaneous transmission. These competing radio links are called collisions.

도 4는 서로 다른 유형의 발생 가능한 충돌의 유형을 나타낸다. 4 shows different types of possible collisions.

도 4(a)에서, 센서 A 및 B는 이웃하는 노드들이다. 마찬가지로, 센서 C및 D는 이웃하는 노드들이다. 따라서, 노드 A 및 B간의 통신을 가능하게 하기 위해서, 이 노드들은 각각 영역 2 및 4을 걸쳐서 동일한 타임 슬롯에 스케줄링되어야 한다. 그러나, 노드 A의 영역 2로부터 전송은 노드 D의 영역 3에서 수신된다. 따라서, 노드 C 및 D간의 통신 및 노드 A 및 B간의 통신은 동일한 타임 슬롯에 스케줄링된다면, 패킷 충돌이 이 두 전송 간에 일어날 수 있다. 따라서, 이 두 개의 송신 쌍은 가능하면 다른 타임슬롯에 스케줄링되어야 한다. 이런 유형의 충돌은 공통 인터페이스 충돌이라고 불린다. 한편, 공통 노드 충돌이라 불리는 다른 유형의 충돌은 도 4 (b) 및 (c)에 도시된다. 도 4(b)에서, 두 개의 통신 노드 쌍, 즉, A 및 B그리고 A 및 C가 존재한다. 노드 B 및 C는 노드A의 다른 영역 상에서 노드 A와 통신한다. 하나의 노드가 하나 이상의 영역 상에서의 동시 전송은 하드웨어 제한으로 인해서 불가능하므로, 노드 A는 노드 B 및 C와 동시에 통신할 수 없다. 따라서, 이러한 두 개의 통신 쌍은 다른 타임 슬롯으로 예정되어야 한다. 도 4(c)에서, 노드 B 및 C는 노드A 의 동일한 영역 상에서 노드 A와 통신한다. 이러한 경우에 노드 간의 충돌은 경합 기반의 접근 메커니즘을 이용하여 회피될 수 있다.In Fig. 4A, sensors A and B are neighboring nodes. Likewise, sensors C and D are neighboring nodes. Thus, to enable communication between nodes A and B, these nodes must be scheduled in the same time slots across regions 2 and 4, respectively. However, the transmission from area 2 of node A is received in area 3 of node D. Thus, if the communication between nodes C and D and the communication between nodes A and B are scheduled in the same time slot, a packet collision can occur between these two transmissions. Therefore, these two transmission pairs should be scheduled in different timeslots if possible. This type of collision is called a common interface collision. On the other hand, another type of collision, called common node collision, is shown in Figs. 4B and 4C. In Figure 4 (b) there are two communication node pairs, A and B and A and C. Nodes B and C communicate with node A on another area of node A. Node A cannot communicate with Nodes B and C at the same time since one node is not capable of simultaneous transmission over more than one area due to hardware limitations. Thus, these two communication pairs must be scheduled in different time slots. In Figure 4 (c), nodes B and C communicate with node A on the same area of node A. In this case, collisions between nodes can be avoided using contention based access mechanisms.

SAMAC 프로토콜의 스케줄 할당에 있어서, 각 그룹에는 그룹 내의 센서 노드가 패킷을 서로에게 전송할 수 있는 하나 또는 그 이상의 타임 기간이 할당된다. 동일한 타임 기간의 할당으로 인해 그룹이 서로 충돌하는 것을 피하기 위해서, 스케줄 계산시 패킷 충돌이 발생하지 않도록 타임 기간 할당이 고려된다. 동일한 그룹내의 노드간 충돌은 전술한 바와 같이 경합 기반의 접근제어에 의해 처리된다. 각 그룹에 타임 기간을 할당하는 것은 가장 먼 그룹에서 시작하여 클러스터 헤드로의 컬러링 알고리즘에 의해 수행된다. 이 알고리즘의 단계들은 다음과 같이 설명될 수 있다. 먼저, 각 그룹의 부모 노드의 클러스터 헤드 노드로의 홉(hop) 거리가 결정된다. 이 홉 거리 값은 클러스터 헤드 노드로의 그룹거리를 가리킨다. 그런 후에, 그룹들은 클러스터 헤드 노드로의 거리에 따라서 내림차순으로 정렬된다. 만일 두 개의 그룹이 동일한 거리값을 갖는다면, 상대적으로 더 많은 노드를 갖는 그룹이 먼저 고려된다. 그 후, 할당된 스케줄이 없는 제 1그룹이 발견될 때까지 그룹의 목록이 순차적으로 스캔 된다. 이러한 그룹은 최단 경로 트리에 의해 정의된 그룹들의 멀티 홉 경로에서 타임 기간을 나타내는 색상이 할당된다. 색상은 정수로 표현된다. 선택된 그룹은 타임 기간 세트에서 우선적으로 이용 가능한 타임 기간이 할당된다. 동일한 타임 기간에 할당된 다른 그룹과의 충돌관계가 있다면 이 타임 기간은 이용 가능하지 않다. 만약 충돌이 있다면, 색상 인덱스는 증가되고 새로운 타임 기간은 발생 가능한 할당을 위해 확인된다. 색상 인덱스가 증가하여 최대 색상 인덱스에 도달된다면, 최대 색상 인덱스는 그 그룹에 할당된다. 타임 기간이 립(leaf) 그룹에 할당된 후에, 알고리즘은 그룹별로 반복된다. 각 그룹에 있어서, 이용 가능한 색상 인덱스는 가장 최근에 할당된 색상값에서 시작하여 하나씩 오름차순으로 할당된다. 이전 할당과의 충돌이 없는 타임 기간이 발견된다면, 이 타임 기간은 할당을 위해 사용된다. 그렇지 않으면, 최대 색상 인덱스는 초과되고 색상인덱스는 타임 기간 세트 내의 제1 타임 기간으로 돌아가고, 모든 타임 기간은 립 그룹의 타임 기간이 도달될 때까지 시도된다. 이 경우에는, 최대 색상지수는 증가되고 새로운 색상이 그룹에 할당된다. 이런 그룹 분기 (branch)상의 모든 그룹에는 색상이 할당되고 클러스터 헤드 노드가 도달되면, 다음 그룹은 색상이 할당되지 않은 그룹의 목록에서 제1그룹으로서 선택된다. 이 새로운 그룹은 다음으로 가장 큰 클러스터 헤드로의 홉 거리를 갖는 그룹에 해당한다. 색상 할당 알고리즘은 모든 그룹이 색상 할당이 예정되어있을 때 종료된다.In the schedule assignment of the SAMAC protocol, each group is assigned one or more time periods in which sensor nodes in the group can send packets to each other. In order to avoid group collisions with each other due to allocation of the same time period, time period assignment is considered so that no packet collision occurs in the schedule calculation. Conflicts between nodes in the same group are handled by contention based access control as described above. Allocating a time period to each group is performed by a coloring algorithm starting from the furthest group to the cluster head. The steps of this algorithm can be described as follows. First, the hop distance from the parent node of each group to the cluster head node is determined. This hop distance value indicates the group distance to the cluster head node. The groups are then sorted in descending order according to the distance to the cluster head node. If two groups have the same distance value, the group with more nodes is considered first. The list of groups is then sequentially scanned until a first group without an assigned schedule is found. These groups are assigned colors representing time periods in the multi-hop paths of the groups defined by the shortest path tree. Colors are represented by integers. The selected group is assigned a time period that is preferentially available in the time period set. This time period is not available if there is a conflict with other groups assigned to the same time period. If there is a conflict, the color index is incremented and a new time period is checked for possible allocations. If the color index is increased and the maximum color index is reached, then the maximum color index is assigned to that group. After the time period is assigned to a leaf group, the algorithm is repeated group by group. For each group, the available color indices are assigned in ascending order, starting with the most recently assigned color value. If a time period is found that does not conflict with the previous allocation, this time period is used for allocation. Otherwise, the maximum color index is exceeded and the color index returns to the first time period in the time period set, and all time periods are attempted until the time period of the lip group is reached. In this case, the maximum color index is increased and a new color is assigned to the group. When all groups on this group branch are assigned a color and the cluster head node is reached, the next group is selected as the first group in the list of unassigned groups. This new group corresponds to the group with the hop distance to the next largest cluster head. The color assignment algorithm ends when all groups are scheduled for color assignment.

도 5(a)는 타임 슬롯 할당을 도시하고, 도 5(b)는 각 활성 타임 슬롯에서 사용된 영역들을 도시한다. X는 노드가 타임 슬롯에서 활성화되어 있지 않음을 의미한다.Fig. 5 (a) shows time slot allocation, and Fig. 5 (b) shows the regions used in each active time slot. X means the node is not active in the time slot.

제12 단계 후에, 할당된 타임 슬롯에 따라 데이터 통신을 수행한다(제14 단계). 네트워크 동작의 처음에는, 센서 노드는 BASIC 모드로 작동된다. BASIC 모드에서는, 노드는 어떠한 스케줄 정보도 갖지 않고 영역간의 차별화가 없다. BASIC 모드 중에는 노드들은 그 이웃에 대한 정보를 수집하고 이 정보를 클러스터 헤드에 전달한다. 타임스케줄을 계산한 후에 클러스터 헤드 노드는 SCHEDULE 패킷에 채워서 스케줄 정보를 그의 클러스터에 분배한다. 상기 SCHEDULE 패킷은 상기 클러스터 내의 모든 노드들의 활성 타임 슬롯 할당에 대한 정보를 포함한다. SCHEDULE 패킷의 수신 시에, 센서 노드는 상기 스케줄 정보를 추출하고, 그 이웃에 상기 SCHEDULE 패킷을 전달하고, 그 구성을 초기화하고, ADVANCE 모드로 들어간다. 결국에는, 상기 클러스터내의 모든 노드는 SCHEDULE 패킷을 수신한다. SCHEDULE 패킷을 수신하지 않는 센서노드는 SAMAC 프로토콜과 클러스터 내의 데이터 이송에 관여할 수 없다.After the twelfth step, data communication is performed according to the allocated time slot (step 14). At the beginning of network operation, the sensor node is operated in BASIC mode. In BASIC mode, the node does not have any schedule information and there is no differentiation between regions. In BASIC mode, nodes collect information about their neighbors and pass this information to the cluster head. After calculating the time schedule, the cluster head node fills the SCHEDULE packet and distributes the schedule information to its cluster. The SCHEDULE packet includes information on active time slot allocation of all nodes in the cluster. Upon receipt of the SCHEDULE packet, the sensor node extracts the schedule information, delivers the SCHEDULE packet to its neighbors, initializes its configuration, and enters the ADVANCE mode. Eventually, every node in the cluster receives a SCHEDULE packet. Sensor nodes that do not receive SCHEDULE packets cannot participate in the SAMAC protocol and data transfer within the cluster.

ADVANCE 모드 상태인 동안에는, 각 타임 슬롯마다, 센서노드들은 파워 (슬립모드)를 절약하기 위해서 그들의 안테나를 끄거나 또는 통신 이벤트에 관여하기 위해서 그 안테나를 계속 유지시킨다. SLEEP 모드로의 결정은 SCHEDULE 패킷으로부터 수신되는 센서의 타임 스케줄에 의해 이루어진다. 노드A의 예시적인 스케줄정보는 표1에 도시된다. While in ADVANCE mode, for each time slot, sensor nodes either turn off their antennas to save power (sleep mode) or keep them in order to engage in communication events. The determination to sleep mode is made by the sensor's time schedule received from the SCHEDULE packet. Exemplary schedule information of Node A is shown in Table 1.

활성화Activation 타임 슬롯Time slot 활성 영역Active area TrueTrue 00 22 TrueTrue 1One 1One TrueTrue 22 33 FalseFalse 33 XX

이 표에서는, 슈퍼 프레임은 4개의 타임 슬롯으로 구성된다. 슬롯 3에서는, 노드A가 활성화되어 있지 않아서, SLEEP 모드에서는 특정된 영역번호를 갖고 있지 않다. 이러한 스케줄에 따라서, 센서 노드가 활성화될 때, 주어진 타임 슬롯에서 그 영역들 중에 오직 하나의 영역을 통해서 통신할 수 있다. 예를 들면, 표 1에서, 노 드A는 타임 슬롯 2에서 제3 영역 상의 이웃들과 통신할 수 있다. 따라서, 노드 A는 채널에 패킷을 전송하고 타임슬롯 2에서 제 3 영역 상의 프로토콜 스택에 수신된 패킷을 전달할 수 있다. 그러나, 노드 A는 다른 영역으로는 패킷을 전송할 수 없다. 게다가, 다른 영역으로부터 수신된 패킷은 물리층에 저장되고 SAMAC이 이 패킷을 처리할 필요가 있기 전에는 SAMAC로 전달되지 않는다. In this table, a super frame consists of four time slots. In slot 3, node A is not active, and thus does not have a specified area number in SLEEP mode. According to this schedule, when a sensor node is activated, it can communicate through only one of its regions in a given time slot. For example, in Table 1, node A may communicate with neighbors on the third region in time slot 2. Thus, Node A may send a packet on the channel and deliver the received packet to the protocol stack on the third region in timeslot 2. However, Node A cannot send packets to other areas. In addition, packets received from other areas are stored at the physical layer and are not forwarded to SAMAC until SAMAC needs to process these packets.

도 6은 SAMAC에서 타임슬롯 구조를 예시한 것이다. 각 타임 슬롯에 시작시점에서, 노드들은 자신들이 타임슬롯에서 활성화되어 있는지 아닌지를 판단하기 위해서 그들의 스케줄 정보를 확인한다. 노드가 타임슬롯에서 활성화되어 있으면, 이 노드는 통신이벤트에 참여할 수 있다. 이 이벤트 참여는 데이터 송신 (TX) 또는 데이터 수신 (RX)일 수 있다. 처리되어야 할 다른 노드와의 통신이 있는지를 판단하기 위해 할당된 MIN AWAKE TIME으로 불리는 일정분량의 시간이 존재한다. 6 illustrates a timeslot structure in SAMAC. At the beginning of each time slot, nodes check their schedule information to determine if they are active in the time slot. If a node is active in a timeslot, it can participate in communication events. This event participation may be data transmission (TX) or data reception (RX). There is a certain amount of time, called MIN AWAKE TIME, allocated to determine if there is communication with other nodes that need to be processed.

도 7은 슬립 모드 메커니즘을 설명하기 위한 도면이다. 이 노드가 송신할 데이터가 없고 이 MIN AWAKE TIME 시간 동안에 데이터 수신이 없다면, 도 7(a)에 도시된 바와 같이 노드는 SLEEP 모드로 들어갈 것을 결정을 한다. 이 상태에서, 모든 안테나는 파워를 절약하기 위해서 전원을 끈다. 따라서, 노드가 그의 안테나를 켤 때까지 채널과의 상호작용이 없다. 한편, 통신 이벤트 (TX/RX)가 있다면, 이 이벤트는 즉시 처리된다.7 is a diagram for explaining a sleep mode mechanism. If this node has no data to transmit and there is no data reception during this MIN AWAKE TIME time, the node decides to enter the SLEEP mode as shown in FIG. In this state, all antennas are turned off to save power. Thus, there is no interaction with the channel until the node turns on its antenna. On the other hand, if there is a communication event (TX / RX), this event is processed immediately.

각 통신 (TX/RX) 기간의 마지막 시점에서, 노드들은 수행될 필요가 있는 새로운 송신/수신이 존재하는지 아닌지를 판단하기 위해서 다른 MIN AWAKE TIME를 기다린다. 만약 MIN AWAKE TIME에 대한 트래픽(traffic)이 없다면, 도 7(b)에 도시된 바와 같이 노드는 즉시 SLEEP 모드로 들어가고, 그렇지 않으면 트래픽이 처리된다. At the end of each communication (TX / RX) period, the nodes wait for another MIN AWAKE TIME to determine whether there is a new transmit / receive that needs to be performed. If there is no traffic for MIN AWAKE TIME, the node immediately enters the SLEEP mode as shown in FIG. 7 (b), otherwise the traffic is processed.

도 6에서, MIN AWAKE TIME은 노드가 하나의 타임 슬롯에서 활성화될 수 있는 최대 기간을 의미한다. 슬롯 시작 시간으로부터 MIN AWAKE TIME후에 노드는 도 8에 도시된 바와 같이 자신의 상태에 상관없이 슬립모드에 들어간다. MIN AWAKE TIME은 구성 파라미터이고 ADVANCE 모드에서 의무 주기 (duty cycle)을 나타낸다.In FIG. 6, MIN AWAKE TIME means the maximum period of time during which a node can be active in one time slot. After MIN AWAKE TIME from the slot start time, the node enters the sleep mode regardless of its state as shown in FIG. MIN AWAKE TIME is a configuration parameter and represents a duty cycle in ADVANCE mode.

노드가 활성 슬롯에서 전송되어야 하는 패킷을 갖는다면, 통신 채널은 수신자 노드와의 4-방향 RTS/CTS/DATA/ACK 신호변경(handshake)을 이용하여 예약되어야 한다. 이 신호변경 메커니즘은 동일한 그룹에서 노드 간에 발생하는 모든 충돌을 제거하기 위해 사용된다. 이 공정을 초기화하기 위해서 RTS 패킷을 송신하기 전에, 노드는 일정한 분량의 시간 동안에 채널 액세스로부터 백오프(BACKOFF)할 필요가 있다.If a node has a packet that must be sent in an active slot, the communication channel must be reserved using a four-way RTS / CTS / DATA / ACK handshake with the recipient node. This signal change mechanism is used to eliminate all conflicts between nodes in the same group. Before transmitting the RTS packet to initiate this process, the node needs to back off from channel access for a certain amount of time.

백오프 동안에, 노드가 채널이 바쁜 걸로 감지하면, 노드는 그 백오프를 중단하고 채널이 다시 한가해질 때까지 기다린다. 채널이 일단 한가해지면, 노드는 그 백오프 기간을 계속할 수 있다. 백오프 기간이 완료되면, 노드는 RTS/CTS/DATA/ACK 순서를 이용하여 통신을 시작한다. 노드가 MIN AWAKE TIME에 슬립(sleep)할 필요가 있다면, 백오프 카운터는 중단되어 나머지 백오프 기간이 다음 슈퍼 프레임에서 동일한 슬롯 타임 동안 사용되기 위해 절약된다.During the backoff, if the node detects that the channel is busy, the node stops the backoff and waits for the channel to become idle again. Once the channel is free, the node can continue its backoff period. Once the backoff period is complete, the node starts communicating using the RTS / CTS / DATA / ACK order. If the node needs to sleep at MIN AWAKE TIME, the backoff counter is aborted to save the remaining backoff period to be used for the same slot time in the next super frame.

SAMAC는 각 활성 슬롯 타임에 대한 개별적인 백오프 값을 갖는다. 예를 들면, 노드가 타임슬롯1의 끝부분에서 나머지 백오프 타임을 가질 때, 이 값은 다음 슈퍼프레임의 타임슬롯 1에서 사용될 것이다. 모드의 다른 영역에서의 통신 활동은 다를 수 있기 때문에 이것이 필요하다. 따라서, SAMAC는 개별적 타임슬롯에서 RTS/CTS/DATA/ACK 프레임 순서를 갖고 종래의 백오프 절차를 이용하고, 다음 슈퍼프레임의 동일한 타임 슬롯에서 사용하기 위해 백오프 상태를 저장한다. 각 타임 슬롯은 노드의 다른 영역과 연관되어있기 때문에, SAMAC는 다른 영역들에서의 다른 트래픽간의 차이를 효과적으로 구별시킨다. SAMAC는 두 개의 트래픽 방향을 다룬다. 클러스터 헤드로의 트래픽은 상류 트랙픽으로 불린다. 한편 클러스터 헤드로부터의 트래픽은 하류 트래픽으로 불린다. SAMAC는 백오프 절차에서 상류 및 하류 트래픽을 다르게 처리한다. 상류 트래픽은 센서로부터 클러스터 헤드로 전파되고 급한 데이터를 전달하기 때문에, 상류 RTS 프레임을 전송하기 위한 백오프 윈도우는 하류 트래픽의 백오프 윈도우보다 작다. 불완전한 백오프 기간에 의한 채널 예약의 각 실패 후에 백오프 윈도우는 상한에 도달할 때까지 선형적으로 증가한다.SAMAC has a separate backoff value for each active slot time. For example, when a node has the remaining backoff time at the end of timeslot 1, this value will be used in timeslot 1 of the next superframe. This is necessary because communication activity in different areas of the mode may be different. Thus, SAMAC uses the conventional backoff procedure with the RTS / CTS / DATA / ACK frame order in separate timeslots and stores the backoff state for use in the same time slot of the next superframe. Because each time slot is associated with a different area of the node, SAMAC effectively distinguishes between different traffic in different areas. SAMAC handles two traffic directions. Traffic to the cluster head is called upstream traffic. Meanwhile, traffic from the cluster head is called downstream traffic. SAMAC handles upstream and downstream traffic differently in the backoff procedure. Since the upstream traffic propagates from the sensor to the cluster head and carries urgent data, the backoff window for transmitting the upstream RTS frame is smaller than the backoff window of the downstream traffic. After each failure of the channel reservation due to an incomplete backoff period, the backoff window increases linearly until the upper limit is reached.

SAMAC를 이용하여 송신되어야 하는 패킷은 내부 SAMAC열 내부에 저장된다. SAMAC에는 각 타임 슬롯에 대해서 별도의 열이 존재한다. 일단 패킷이 MAC층에 도착했을 때, 다음 홉이 결정된다. 상기 패킷이 상류 패킷인 경우에는, 다음 홉은 현재 노드의 부모이다. 따라서, 상기 노드는 그의 부모와 통신하고 패킷을 지정된 슬롯 열에 삽입할 수 있는 슬롯 타임을 찾는다. 패킷 삽입은 열의 끝에서 실행되고, 패킷들은 열의 선단으로부터 POP된다. 패킷은 타임 슬롯에서 전송될 수 없고 재전송 한계치를 넘지 않는다면, 이 패킷은 열의 상부로 밀리고, 다음 슈퍼프레임에서 처리된다. 도 9는 내부 SAMAC 열들을 도시한 것이다.Packets that need to be sent using SAMAC are stored inside an internal SAMAC column. SAMAC has a separate column for each time slot. Once the packet arrives at the MAC layer, the next hop is determined. If the packet is an upstream packet, the next hop is the parent of the current node. Thus, the node finds a slot time at which it can communicate with its parent and insert a packet into a designated slot row. Packet insertion is performed at the end of the row and packets are POPed from the end of the row. If a packet cannot be transmitted in the time slot and does not exceed the retransmission limit, it is pushed to the top of the row and processed in the next superframe. 9 illustrates internal SAMAC columns.

한편, 상술한 본 발명의 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법 발명은 컴퓨터에서 읽을 수 있는 코드/명령들(instructions)/프로그램으로 구현될 수 있다. 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계; 상기 분류된 그룹들마다 각각의 타임 슬롯을 할당하는 단계; 및 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계를 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 본원발명의 또 다른 특징이 된다.Meanwhile, the above-described timing scheduling method between sensor nodes in the wireless sensor network of the present invention may be implemented by computer-readable codes / instructions / programs. Classifying the plurality of sensor nodes in the cluster into a plurality of groups; Assigning each time slot to each of the classified groups; And a computer readable recording medium having recorded thereon a program for executing data communication according to the allocated time slots.

예를 들면, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 코드/명령들/프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크, 마그네틱 테이프 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장 매체를 포함한다. 또한, 본 발명의 실시예들은 컴퓨터로 읽을 수 있는 코드를 내장하는 매체(들)로서 구현되어, 네트워크를 통해 연결된 다수개의 컴퓨터 시스템들이 분배되어 처리 동작하도록 할 수 있다. 본 발명을 실현하는 기능적인 프로그램들, 코드들 및 코드 세그먼트(segment)들은 본 발명이 속하는 기술 분야의 프로그래머들에 의해 쉽게 추론될 수 있다.For example, it may be implemented in a general-purpose digital computer for operating the code / instructions / program using a computer-readable recording medium. The computer-readable recording medium may include a magnetic storage medium (eg, ROM, floppy disk, hard disk, magnetic tape, etc.), an optical reading medium (eg, CD-ROM, DVD, etc.) and a carrier wave (eg Storage media, such as through the Internet). In addition, embodiments of the present invention may be implemented as a medium (s) containing computer readable code, such that a plurality of computer systems connected through a network may be distributed and processed. Functional programs, codes and code segments for realizing the present invention can be easily inferred by programmers in the art to which the present invention belongs.

이러한 본원 발명인 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법 및 장치는 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.The timing scheduling method between the sensor nodes in the wireless sensor network of the present invention has been described with reference to the embodiment shown in the drawings for clarity, but this is merely illustrative, and those skilled in the art may It will be understood that various modifications and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention will be defined by the appended claims.

도 1은 본 발명에 의한 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법을 설명하기 위한 일 실시예의 플로차트이다.1 is a flowchart of an embodiment for explaining a timing scheduling method between sensor nodes in a wireless sensor network according to the present invention.

도 2는 도 1의 클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계를 설명하기 위한 일 실시예의 플로차트이다.FIG. 2 is a flowchart of an exemplary embodiment for explaining a step of classifying a plurality of sensor nodes in a cluster of FIG. 1 into a plurality of groups.

도 3은 노드A에 대한 그룹을 지정하는 과정을 예시한 도면이다.3 is a diagram illustrating a process of designating a group for node A.

도 4는 서로 다른 유형의 발생 가능한 충돌의 유형을 나타낸다. 4 shows different types of possible collisions.

도 5는 타임 슬롯 할당을 예시한 도면이다.5 is a diagram illustrating time slot allocation.

도 6은 SAMAC에서 타임슬롯 구조를 예시한 도면이다. 6 illustrates a time slot structure in SAMAC.

도 7은 슬립 모드 메커니즘을 설명하기 위한 도면이다. 7 is a diagram for explaining a sleep mode mechanism.

도 8은 MIN AWAKE TIME 시간 후에 슬립 모드로 들어가는 것을 설명하기 위한 도면이다.8 is a diagram for explaining entering a sleep mode after a MIN AWAKE TIME time.

도 9는 내부 SAMAC 열들을 예시한 도면이다.9 illustrates internal SAMAC columns.

Claims (9)

클러스터 내의 다수의 센서 노드들을 복수의 그룹으로 분류하는 단계; Classifying the plurality of sensor nodes in the cluster into a plurality of groups; 상기 분류된 그룹들마다 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계 정보 및 상기 이웃 관계 정보에 따른 각 이웃 노드들의 충돌 관계를 고려하여 각각의 타임 슬롯을 할당하는 단계; 및Allocating each time slot in consideration of collision relations of neighboring nodes according to neighbor relation information of neighboring nodes neighboring the sensor nodes for each of the classified groups; And 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계를 포함하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법.And performing data communication in accordance with the allocated time slot. 제1항에 있어서, 상기 센서 노드들을 상기 복수의 그룹으로 분류하는 단계는The method of claim 1, wherein classifying the sensor nodes into the plurality of groups comprises: 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계정보를 수집하는 단계; 및Collecting neighbor relationship information of neighbor nodes neighboring the sensor nodes; And 상기 수집된 이웃 관계정보를 사용해, 최단 경로 트리에 따라 상기 센서 노드들의 그룹을 지정하는 단계를 포함하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법.Designating a group of the sensor nodes according to the shortest path tree using the collected neighbor relationship information. 삭제delete 제1항에 있어서, 상기 할당된 타임 슬롯에 따라 데이터 통신을 수행하는 단계는The method of claim 1, wherein performing data communication according to the allocated time slot 상기 센서 노드들은 자신의 타임 슬롯에 해당하지 않는 기간에는 슬립모드로 전환되는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 방법.And the sensor nodes transition to a sleep mode in a period not corresponding to their time slot. 클러스터 내의 다수의 센서 노드들; 및Multiple sensor nodes in the cluster; And 상기 센서 노드들을 복수의 그룹으로 분류하고, 상기 분류된 그룹들마다 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계 정보 및 상기 이웃 관계 정보에 따른 각 이웃 노드들의 충돌 관계를 고려하여 각각의 타임 슬롯을 할당하는 클러스터 헤드 노드를 포함하고,The sensor nodes are classified into a plurality of groups, and each time slot is considered in consideration of collision relations of neighbor nodes according to neighbor relation information of neighbor nodes adjacent to the sensor nodes and the neighbor relation information for each classified group. Includes a cluster head node that assigns 상기 할당된 타임 슬롯에 따라 상기 센서 노드들과 상기 클러스터 헤드 노드 사이의 데이터 통신을 수행하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 장치.And data communication between the sensor nodes and the cluster head node according to the allocated time slot. 제5항에 있어서, 상기 센서 노드들은 The method of claim 5, wherein the sensor nodes 각각 전 방향에 대해 신호를 수신하고 특정 영역으로 신호를 송신하는 다중 영역 안테나 및 통신을 컨트롤하는 트랜시버를 포함하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 장치.2. A timing scheduling apparatus between sensor nodes in a wireless sensor network, comprising: a multi-domain antenna for receiving signals in all directions and transmitting signals to a specific area and a transceiver for controlling communication. 제5항에 있어서, 상기 클러스터 헤드 노드는 The method of claim 5, wherein the cluster head node 상기 센서 노드들에 이웃하는 이웃 노드들의 이웃 관계정보를 수집하고, 상기 수집된 이웃 관계정보를 사용해, 최단 경로 트리에 따라 상기 센서 노드들의 그룹을 지정하는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 장치.Sensor node in the wireless sensor network, characterized in that for collecting the neighbor relationship information of neighboring nodes neighboring the sensor nodes, and using the collected neighbor relationship information, the group of the sensor nodes according to the shortest path tree. Timing scheduling device between. 삭제delete 제5항에 있어서, The method of claim 5, 상기 센서 노드들은 자신의 타임 슬롯에 해당하지 않는 기간에는 슬립모드로 전환되는 것을 특징으로 하는 무선 센서 네트워크에서의 센서 노드 간의 타이밍 스케줄링 장치.And the sensor nodes transition to a sleep mode in a period not corresponding to their time slot.
KR1020080068663A 2008-01-14 2008-07-15 Timing scheduling method and device between sensor nodes in wireless sensor network Expired - Fee Related KR100970386B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/353,596 US20090207769A1 (en) 2008-01-14 2009-01-14 Method and apparatus for scheduling timing for communication between sensor nodes in wireless sensor network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US2085808P 2008-01-14 2008-01-14
US61/020,858 2008-01-14

Publications (2)

Publication Number Publication Date
KR20090078298A KR20090078298A (en) 2009-07-17
KR100970386B1 true KR100970386B1 (en) 2010-07-15

Family

ID=41336461

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080068663A Expired - Fee Related KR100970386B1 (en) 2008-01-14 2008-07-15 Timing scheduling method and device between sensor nodes in wireless sensor network

Country Status (1)

Country Link
KR (1) KR100970386B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101293160B1 (en) 2011-09-26 2013-08-12 성균관대학교산학협력단 An efficient scheduling method and apparatus according to a change of traffic amount in wireless sensor network
KR101729128B1 (en) 2015-10-13 2017-04-21 성균관대학교산학협력단 Data transmission method in multichannel wireless sensor network including plurality of nodes and data transmission apparatus using ths same

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101039815B1 (en) * 2009-09-29 2011-06-09 강릉원주대학교산학협력단 How to Share Node's Time Schedule Information in Sensor Network
KR101112032B1 (en) * 2010-03-29 2012-02-24 주식회사 씨엔피테크 Power Saving Sensor Node
KR101901183B1 (en) 2011-12-19 2018-09-27 삼성전자주식회사 Low power wireless communication apparatus and method thereof
KR101533037B1 (en) * 2015-02-26 2015-07-01 성균관대학교산학협력단 Apparatus and method for scheduling of wireless sensor network
KR101931370B1 (en) * 2016-11-07 2019-03-13 한림대학교 산학협력단 Method and apparatus for controlling group based concurrent transmission in visible light communication system
KR101988107B1 (en) * 2016-11-17 2019-06-12 숭실대학교산학협력단 System for beacon-based indoor wireless positiong and method for interference avoidance using the same
KR102168576B1 (en) * 2018-06-04 2020-10-21 성균관대학교산학협력단 Edge-assisted Cluster-based Media Access Control Protocol for Safe Driving in Highway

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002094448A (en) 2000-09-19 2002-03-29 Hitachi Ltd Method and apparatus for controlling directional antenna
KR20060052383A (en) * 2004-11-01 2006-05-19 한국전자통신연구원 Wireless communication system, wireless communication device, and method for ultra-wideband impulse communication
KR20060064485A (en) * 2004-12-08 2006-06-13 한국전자통신연구원 Multicast communication method and apparatus thereof using grouping of wireless sensor networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002094448A (en) 2000-09-19 2002-03-29 Hitachi Ltd Method and apparatus for controlling directional antenna
KR20060052383A (en) * 2004-11-01 2006-05-19 한국전자통신연구원 Wireless communication system, wireless communication device, and method for ultra-wideband impulse communication
KR20060064485A (en) * 2004-12-08 2006-06-13 한국전자통신연구원 Multicast communication method and apparatus thereof using grouping of wireless sensor networks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101293160B1 (en) 2011-09-26 2013-08-12 성균관대학교산학협력단 An efficient scheduling method and apparatus according to a change of traffic amount in wireless sensor network
KR101729128B1 (en) 2015-10-13 2017-04-21 성균관대학교산학협력단 Data transmission method in multichannel wireless sensor network including plurality of nodes and data transmission apparatus using ths same

Also Published As

Publication number Publication date
KR20090078298A (en) 2009-07-17

Similar Documents

Publication Publication Date Title
US20090207769A1 (en) Method and apparatus for scheduling timing for communication between sensor nodes in wireless sensor network
KR100970386B1 (en) Timing scheduling method and device between sensor nodes in wireless sensor network
US9351301B2 (en) Maintenance of time slot usage indicators and self-organizing networking
Demirkol et al. MAC protocols for wireless sensor networks: a survey
Rajandekar et al. A survey of MAC layer issues and protocols for machine-to-machine communications
Shi et al. Starvation mitigation through multi-channel coordination in CSMA multi-hop wireless networks
Tang et al. A protocol for topology-dependent transmission scheduling in wireless networks
AU2002313823B2 (en) System and method for collision-free transmission scheduling using neighborhood information and advertised transmission times
US7046639B2 (en) System and method for ad hoc network access employing the distributed election of a shared transmission schedule
US7948939B2 (en) Method and apparatus to perform synchronization in an AD-HOC network
US8331311B2 (en) Distributed channel hopping method in wireless ad-hoc network
US6590928B1 (en) Frequency hopping piconets in an uncoordinated wireless multi-user system
CN1665208B (en) Wireless communication system, wireless communication device, wireless communication method
JP4449588B2 (en) Wireless communication system, wireless communication apparatus, wireless communication method, and computer program
US8248989B2 (en) Wireless network system using cyclic frame
CN110809324B (en) MAC transmission method and wireless self-organizing network system based on distributed TDMA
Huang et al. RC-MAC: A receiver-centric MAC protocol for event-driven wireless sensor networks
WO2005041487A1 (en) Radio communication system, radio communication apparatus, radio communication method, and computer program
KR20150002682A (en) Scalable protocol for large wsns having low duty cycle end nodes
Chlamtac et al. An adaptive medium access control (MAC) protocol for reliable broadcast in wireless networks
EP2683200A1 (en) Method for constructing a cluster tree topology in a personal area network
EP1371183B1 (en) System and method for transmission scheduling using network membership information and neighborhood information
KR20120011541A (en) Apparatus and method for data communication between sensor nodes in a wireless sensor network
KR101674182B1 (en) Broadcasting method in wireless sensor networks
Chatterjee et al. A cross-layer distributed TDMA scheduling for data gathering with minimum latency in wireless sensor networks

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20130709

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20130709

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000