KR20080025095A - 무선 네트워크를 통한 통신 - Google Patents

무선 네트워크를 통한 통신 Download PDF

Info

Publication number
KR20080025095A
KR20080025095A KR1020077030859A KR20077030859A KR20080025095A KR 20080025095 A KR20080025095 A KR 20080025095A KR 1020077030859 A KR1020077030859 A KR 1020077030859A KR 20077030859 A KR20077030859 A KR 20077030859A KR 20080025095 A KR20080025095 A KR 20080025095A
Authority
KR
South Korea
Prior art keywords
data
preamble
wireless network
node
frequencies
Prior art date
Application number
KR1020077030859A
Other languages
English (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 KR20080025095A publication Critical patent/KR20080025095A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/713Spread spectrum techniques using frequency hopping
    • H04B1/7156Arrangements for sequence synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • H04W52/0216Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave using a pre-established activity schedule, e.g. traffic indication frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • H04W52/0219Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave where the power saving management affects multiple terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • H04W52/0229Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is a wanted signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/713Spread spectrum techniques using frequency hopping
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

제1 장치는 미리 정의된 활성화 시간 동안에 활성이고 활성이 아닐 때 적어도 부분적으로 휴면 상태(dormant)인 노드를 포함하는 무선 네트워크와 통신을 한다. 이 통신 방법은 인자 N(단, N은 적어도 무선 네트워크 상의 주파수의 최대수임)만큼 무선 네트워크 상의 노드의 최대 활성화 시간을 초과하는 메시지를 통해 통신의 시작을 식별하는 단계, 및 제1 장치의 전송 범위 내에 있는 무선 네트워크 상의 노드를 포함하는 제2 장치와 정보(이 정보는 상기 메시지 이후에 교환되고 제2 장치에 대한 주파수 호핑 데이터를 포함함)를 교환하는 단계를 포함한다.
무선 네트워크, 주파수 호핑, 애드혹 네트워크,

Description

무선 네트워크를 통한 통신{COMMUNICATING OVER A WIRELESS NETWORK}
본 출원은 2005년 6월 1일자로 출원된 미국 가특허출원 제60/686,127호 및 2005년 10월 6일자로 출원된 미국 가특허출원 제60/724,343호를 우선권 주장한다. 미국 가특허출원 제60/686,127호 및 미국 가특허출원 제60/724,343호는 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함된다.
본 출원은 일반적으로 무선 네트워크를 통한 통신에 관한 것으로서, 보다 상세하게는 주파수 호핑을 사용하는 무선 네트워크를 통한 통신에 관한 것이다.
애드혹 무선 네트워크(메쉬 네트워크)는 네트워크 장치들 자체가 서로 통신 링크를 설정하는 자체-구성 네트워크(self-organizing network)이다. 무선 네트워크는 서로 다른 환경에서 사용될 수 있다. 예를 들어, 무선 네트워크는 모니터링 및 제어 장치와 호스트 컴퓨터 사이에 설정될 수 있다.
일례에서, 네트워크 장치는 빌딩 조명 시스템 또는 화재 경보 시스템 등의 전기 시스템을 모니터링 및 제어한다. 이 장치는 그의 모니터링된 시스템으로부터의 상태 정보를 호스트 컴퓨터로 보고한다. 그에 응답하여, 호스트 컴퓨터는 제어 명령을 전송하고, 그 장치는 이 제어 명령을 사용하여 전기 시스템을 제어한다.
전력 소모 및 네트워크 혼잡을 비롯하여 무선 네트워크를 설정 및 유지하는 것에 관여된 수많은 문제들이 있다. 무선 네트워크 상의 네트워크 장치는 일반적으로 배터리로 동작하며, 이 배터리는 주기적으로 점검 및 교환되어야만 한다. 배터리를 빈번히 교환하는 일은 불편할 수 있다. 게다가, 무선 네트워크가 더 커짐에 따라, 그 네트워크를 통해 전송되는 데이터의 양이 증가되며, 그 결과 데이터 패킷 충돌이 일어날 수 있고, 따라서 서비스 품질(QoS)의 열화가 발생할 수 있다.
무선 네트워크 상의 노드들(예를 들어, 장치들)은 주파수 호핑이라고 하는 프로세스를 사용하여 통신을 할 수 있다. 주파수 호핑은 노드들이 서로 다른 주파수 채널을 사용하여 통신을 할 수 있게 해준다. 네트워크 상의 노드들은 일반적으로 서로 다른 주파수 채널들을 순환하며, 그 동안에 통신들이 다른 노드로 전송되고 그로부터 수신될 수 있다. 통신을 하지 않을 때, 노드들은 일반적으로 전력을 절감하기 위해 저전력 상태(low-power state)에 들어간다. 지금까지는, 메쉬 네트워크 상에서의 주파수 호핑이 네트워크의 모든 장치들을 동기화함으로써 구현되었다. 즉, 각각의 장치는 동일한 주파수 시퀀스를 따랐으며, 동시에 또 동일한 기간 동안 그의 통신 모드에 들어갔었다. 이 구성은 유지 보수가 어려우며, 대규모 네트워크에 대해 특히 그러한 것으로 밝혀졌다.
본 특허 출원은 무선 네트워크를 거쳐 통신하는, 컴퓨터 프로그램 제품을 포함하는 방법 및 장치에 대해 기술한다.
일반적으로, 한 측면에서, 본 출원은 미리 정의된 활성화 시간 동안 활성이고 활성이 아닐 때 적어도 부분적으로 휴면 상태에 있는 노드들로 이루어진 무선 네트워크와 통신을 하는 제1 장치에 관한 것이다. 이 통신 방법은, 상기 무선 네트워크 상의 노드들의 최대 활성화 시간을 인자 N(단, N은 적어도 상기 무선 네트워크 상의 주파수들의 최대수와 같음)만큼 초과하는 메시지를 통해 통신의 시작을 식별하는 단계, 및 상기 제1 장치의 전송 범위 내에 있는 상기 무선 네트워크 상의 노드를 포함하는 제2 장치와 정보를 교환하는 단계 - 상기 정보는 상기 메시지 이후에 교환되고 상기 제2 장치에 대한 주파수 호핑 데이터를 포함함 - 를 포함한다. 이 측면은 또한 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 메시지 이후에 교환되는 상기 정보는 상기 제1 장치에 대한 주파수 호핑 데이터를 포함할 수 있다. 상기 정보는 다수의 주파수를 거쳐 교환될 수 있으며, 상기 메시지 이후에 상기 제1 장치가 이들 주파수를 통해 호핑한다. 상기 다수의 주파수는 상기 메시지 이후에 정의될 수 있다.
일반적으로, 다른 측면에서, 본 출원은 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 관한 것이다. 상기 제1 장치는 상기 무선 네트워크로 프리앰블을 출력하고 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 -, 상기 프리앰블에 뒤따라오는 상기 제1 장치의 하나 이상의 리스닝 주파수를 식별한다(예를 들어, 출력하거나 다른 방식으로 나타낸다) - 상기 하나 이상의 리스닝 주파수는 상기 제1 장치가 활성화되는 하나 이상의 주파수 대역을 포함함 -. 상기 제1 장치는 상기 무선 네트워크 내의 제2 장치로부터 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 수신한다 - 상기 시퀀스 데이터는 상기 제2 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하고, 상기 웨이크-업 데이터는 상기 제2 장치가 활성화되는 시간에 대응하며, 상기 듀티 사이클 데이터는 상기 제2 장치가 활성화되는 시간의 지속기간에 기초함 -. 상기 제1 장치는 상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 (예를 들어, 메모리에) 저장한다. 본 출원의 이 측면은 또한 이하의 특징들 중 하나 이상을 포함할 수 있다.
상기 제1 장치는 검색 패킷을 상기 제2 장치로 출력할 수 있다. 상기 검색 패킷은 상기 프리앰블 이후에 상기 제2 장치로부터 상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 수신하기 이전에 출력될 수 있다. 상기 검색 패킷은 상기 제1 장치를 식별하고 상기 제1 장치에 대한 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 포함할 수 있다. 상기 무선 네트워크는 상기 제2 장치를 포함하는 N(N>2)개의 장치를 포함할 수 있으며, 상기 N개의 장치 각각은 일련의 M(M>1)개의 주파수 내의 주파수에서 활성화하도록 구성되어 있다. 상기 N개의 장치는 시간 구간 동안 활성화될 수 있으며, 상기 N개의 장치 중 하나는 T의 최대 활성화 시간 구간을 가질 수 있고, 상기 프리앰블은 적어도 M*T의 곱인 시간 지속기간을 가질 수 있다.
상기 하나 이상의 리스닝 주파수는 단일의 리스닝 주파수를 포함할 수 있다. 상기 단일의 리스닝 주파수는 상기 프리앰블이 출력되는 동일한 주파수일 수 있다. 상기 하나 이상의 리스닝 주파수는 다수의 리스닝 주파수를 포함할 수 있다. 상기 검색 패킷은 상기 다수의 리스닝 주파수에 대한 시퀀스 데이터 및 듀티 사이클 데이터를 식별할 수 있다. 상기 시퀀스 데이터는 단일의 숫자를 포함할 수 있다. 상기 제1 장치는 미리 정의된 알고리즘을 사용하여 상기 단일의 숫자를 처리함으로써 상기 제2 장치가 활성화되는 일련의 주파수들을 발생할 수 있다.
상기 제1 장치는 제2 시퀀스 데이터, 제2 웨이크-업 데이터, 및 제2 듀티 사이클 데이터를 상기 무선 네트워크 내의 제3 장치로부터 수신할 수 있다. 상기 제2 시퀀스 데이터는 상기 제3 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능할 수 있다. 상기 제2 웨이크-업 데이터는 상기 제3 장치가 활성화되는 시간들에 대응하며, 상기 제2 듀티 사이클 데이터는 상기 제3 장치가 활성화되는 시간의 지속기간에 기초할 수 있다. 상기 제1 시퀀스 데이터, 상기 제1 웨이크-업 데이터, 및 상기 제1 듀티 사이클 데이터(상기 제2 장치로부터 상기 제1 장치에 의해 수신됨)는 상기 프리앰블에 뒤이어서 동일한 리스닝 주파수로, 그렇지만 상기 제2 시퀀스 데이터, 상기 제2 웨이크-업 데이터 및 상기 제2 듀티 사이클 데이터와 다른 시간에 수신될 수 있다.
상기 제1 장치는 상기 무선 네트워크 내의 제3 장치에 대한 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 상기 제2 장치로부터 상기 하나 이상의 리스닝 주파수로 수신할 수 있다. 상기 제3 장치는 상기 제1 장치의 무선 전송 범위 내에 있지 않을 수 있다. 상기 제1 장치는 상기 제2 장치로부터 수신된 상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 사용하여 상기 제2 장치로 통신을 전송할 수 있다. 상기 전송하는 프로세스는, (i) 제2 프리앰블을 전송하는 단계 - 상기 제2 프리앰블은 상기 시퀀스 데이터에 지정된 주파수로, 대략 상기 웨이크-업 데이터에 지정된 시간에 또 상기 듀티 사이클 데이터에 지정된 지속기간을 초과하는 지속기간 동안 전송됨 -, (ii) 상기 제2 프리앰블에 응답하여 상기 제2 장치로부터 확인 응답 신호(acknowledgement signal)를 수신하는 단계, 및 (iii) 상기 제2 프리앰블에 뒤이어서 상기 확인 응답 신호에 응답하여 상기 통신에 대한 정보를 전송하는 단계를 포함할 수 있다. 상기 정보는 상기 제2 프리앰블과 동일한 주파수로 전송될 수 있다. 상기 프리앰블은 순서대로 전송되는 일련의 데이터 패킷을 포함할 수 있고, 상기 데이터 패킷은 시간 데이터 - 이 시간 데이터로부터 상기 프리앰블의 상기 지속기간이 결정될 수 있음 - 를 포함할 수 있다.
일반적으로, 다른 측면에서, 본 출원은 실행가능한 명령어를 저장하도록 구성되어 있는 메모리, 및 무선 네트워크를 거쳐 통신하기 위해 활성화 모드에 들어가고, 주기적으로 휴면 상태 모드에 들어가기 위해 상기 명령어를 실행하도록 구성되어 있는 적어도 하나의 프로세서를 포함하는 장치에 관한 것이며, 상기 적어도 하나의 프로세서는 상기 활성화 모드에서보다 상기 휴면 상태 모드에서 더 적은 작업을 수행한다. 상기 무선 네트워크를 거쳐 통신 또는 브로드캐스트하도록 상기 장치를 구성하기 위해, 상기 적어도 하나의 프로세서는, 상기 무선 네트워크로 프리앰블을 출력하고 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 -, 상기 프리앰블에 뒤따라오는 상기 장치의 하나 이상의 리스닝 주파수를 식별하는 명령어를 실행한다. 상기 하나 이상의 리스닝 주파수는 상기 장치가 상기 프리앰블에 뒤이어서 상기 활성화 모드에 들어가는 하나 이상의 주파수 대역을 포함한다. 상기 적어도 하나의 프로세서는 또한 상기 무선 네트워크 내의 노드로부터 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 수신하는 명령어를 실행하고, 상기 시퀀스 데이터는 상기 노드가 활성화되는 일련의 주파수를 획득하는 데 사용가능하며, 상기 웨이크-업 데이터는 상기 노드가 활성화되는 시간들에 대응하고, 상기 듀티 사이클 데이터는 상기 노드가 활성화되는 시간의 지속기간에 기초한다. 상기 적어도 하나의 프로세서는 또한 상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 저장하는 명령어를 실행한다.
일반적으로, 다른 측면에서, 본 출원은 무선 네트워크 내의 노드에 관한 것으로서, 상기 노드는, 장치로부터 프리앰블을 수신하고 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 -, 상기 프리앰블에 뒤따라오는 상기 장치의 하나 이상의 리스닝 주파수를 식별하도록 - 상기 하나 이상의 리스닝 주파수는 상기 장치가 활성화되는 하나 이상의 주파수 대역을 포함함 - 구성되어 있다. 상기 노드는 또한 상기 장치로 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 전송하도록 구성되어 있고, 상기 시퀀스 데이터는 상기 노드가 활성화되는 일련의 주파수를 획득하는 데 사용가능하고, 상기 웨이크-업 데이터는 상기 노드가 활성화되는 시간에 대응하며, 상기 듀티 사이클 데이터는 상기 노드가 활성화되는 시간의 지속기간에 기초한다. 상기 시퀀스 데이터, 상기 웨이크-업 데이터, 및 상기 듀티 사이클 데이터는 상기 프리앰블에 뒤이어서 상기 장치로 데이터를 전송하는 다른 노드들과 충돌을 감소시키기 위해 획득되는 시간에 전송될 수 있다.
일반적으로, 다른 측면에서, 본 출원은 복수의 노드를 포함하는 무선 네트워크를 포함하는 시스템에 관한 것으로서, 상기 노드들 중 적어도 어떤 노드들은 활성화 시간을 가지며, 이 활성화 시간 동안에 상기 적어도 어떤 노드들이 활성이다. 이 시스템은 상기 무선 네트워크 상의 노드들의 최대 활성화 시간을 인자 N(단, N은 적어도 상기 무선 네트워크 상의 주파수들의 최대수와 같음)만큼 초과하는 메시지를 통해 통신의 시작을 식별하도록 구성되어 있는 제1 장치, 및 상기 무선 네트워크 상의 노드를 포함하는 제2 장치를 포함한다. 상기 제2 장치는 상기 메시지에 대해 주파수 호핑 데이터로 응답하도록 구성되어 있다. 상기 제2 장치로부터의 상기 주파수 호핑 데이터는 상기 제2 장치가 데이터를 수신하기 위해 주파수 호핑을 어떻게 수행하는지를 식별해준다. 이 측면은 또한 이하의 특징들 중 하나 이상을 포함할 수 있다.
상기 메시지는 상기 메시지에 뒤따라오는 하나 이상의 주파수를 식별할 수 있다. 상기 제2 장치는 상기 하나 이상의 주파수로 상기 메시지에 응답하도록 구성될 수 있다. 상기 제2 장치에 의한 상기 메시지에 대한 응답은 상기 무선 네트워크 상의 다른 장치들로부터의 있을 수 있는 메시지와의 충돌을 감소시키도록 타이밍 조절될 수 있다. 상기 메시지는 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함하는 프리앰블을 포함할 수 있다. 상기 제1 장치는 상기 프리앰블을 뒤따라오는 상기 제1 장치의 하나 이상의 리스닝 주파수를 식별할 수 있다. 상기 하나 이상의 리스닝 주파수는 상기 제1 장치가 활성화되는 하나 이상의 주파수 대역을 포함할 수 있다. 상기 제2 장치는 상기 하나 이상의 리스닝 주파수로 상기 메시지에 응답하도록 구성될 수 있다. 상기 주파수 호핑 데이터는 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 포함하고, 상기 시퀀스 데이터는 상기 제2 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하며, 상기 웨이크-업 데이터는 상기 제2 장치가 활성화되는 시간에 대응하고, 상기 듀티 사이클 데이터는 상기 제2 장치가 활성화되는 시간의 지속기간에 기초한다.
이상의 측면들 및 특징들 각각이 방법, 하나 이상의 장치, 하나 이상의 시스템, 및/또는 하나 이상의 기계 판독가능 매체 상에 저장되는 실행가능 명령어로 이루어진 하나 이상의 컴퓨터 프로그램 제품을 통해 구현될 수 있다. 게다가, 이상의 측면들 및 특징들은 임의의 방식으로 결합될 수 있다.
하나 이상의 예들에 대한 상세한 내용이 첨부 도면 및 이하의 상세한 설명에 기술된다. 추가의 특징, 측면 및 이점들이 상세한 설명, 도면, 청구의 범위로부터 명백하게 될 것이다.
도 1은 무선 네트워크의 블록도.
도 2는 도 1의 네트워크의 일부분을 포함하는 무선 네트워크의 블록도.
도 3은 도 1 및 도 2의 무선 네트워크 등의 무선 네트워크 상의 수신 장치에 대한 주파수 호핑 시퀀스 및 타이밍을 나타낸 타이밍도.
도 4는 주파수 호핑 프로토콜을 나타낸 흐름도.
도 5는 도 5a 및 도 5b로 이루어져 있고, 장치들 간의 정보의 교환에서 사용되는 전송측 장치의 타이밍 및 수신측 장치의 타이밍을 포함하는 주파수 호핑 프로 토콜의 동작을 나타낸 타이밍도.
도 6은 수신측 장치의 정상 동작 모드와 관련하여 주파수 호핑 프로토콜에서 사용되는 프리앰블의 개개의 단위를 나타낸 타이밍도.
도 7은 이웃하는 노드들이 전송측 노드에 의해 전송된 검색 패킷에 대해, 서로 다른 때에, 어떻게 응답하는지를 나타낸 타이밍도.
도 8은 2개의 네트워크 노드의 정상 동작 과정 동안에, 특히 장치의 수신 기간이 짧은 경우에 프리앰블의 사용을 나타낸 타이밍도.
도 9a 내지 도 9c는 주파수 호핑 프로토콜을 구현할 수 있는 도 1 또는 도 2의 무선 네트워크 상의 장치들의 일례를 나타낸 도면.
서로 다른 도면들에서의 유사한 참조 번호는 유사한 구성요소를 나타낸다.
주파수 호핑을 사용하여 무선 네트워크를 통해 통신하기 위해 장치가 사용하는 프로세스에 대해 본 명세서에 기술되어 있다. 도 1은 이 프로세스가 구현될 수 있는 예시적인 무선 네트워크(10)를 나타낸 것이다. 이 프로세스에 따르면, 네트워크 상의 장치 또는 네트워크에 들어가는 장치는 하나 이상의 주파수 채널을 통해 통신을 할 수 있다. 이러한 통신을 가능하게 해주기 위해, 장치가 네트워크에 들어갈 때 장치들 간에 주파수 호핑 데이터가 교환된다. 이하에 기술되는 바와 같이, 주파수 호핑 데이터는 각각의 장치가 주파수 호핑을 사용하여 어떻게 통신을 하는지를 기술하며, 그에 의해 그 장치들이 적절한 주파수, 시간 및 기간에 대한 통신을 스케쥴링할 수 있게 해준다. 주파수 호핑은, 본 명세서에서 사용되는 바와 같 이, 네트워크의 용량을 향상시키는데, 그 이유는 주파수 호핑이 충돌 및 패킷 손실을 그다지 증가시키지 않고 네트워크 통신들이 중복될 수 있게 해주기 때문이다.
주파수 호핑이 무선 네트워크에서 어떻게 사용되는지에 대해 기술하기 이전에, 먼저 무선 네트워크의 일례 및 그 무선 네트워크가 어떻게 설정되는지에 대해 기술한다.
무선 네트워크
무선 네트워크(10)는 이질적인 네트워크(heterogeneous network)인데, 그 이유는 무선 네트워크(10) 상의 장치들이 동일한 기능을 수행할 필요가 없기 때문이다. 무선 네트워크(10)는 종단점 장치(endpoint device)(12, 14), 중간 장치(15 내지 22), 및 기지국(24 내지 26)을 포함한다. 종단점 장치(12, 14) 및 중간 장치(15 내지 22)는 무선 주파수(RF) 링크를 통해 통신을 할 수 있다. RF 링크는 점선으로 도시되어 있다. 기지국(24 내지 26)은 RF 링크를 거쳐 중간 장치들과 통신을 할 수 있고, 고속 백본(high-speed backbone, 29)에 유선 연결(wire)되어 있으며, 이 고속 백본을 통해 기지국(24 내지 26)은 비교적 높은 속도로 호스트 컴퓨터(30)와 통신을 한다. 고속 백본(29)은 이더넷 또는 WiFi(wireless fidelity) 등의 임의의 유형의 유선 또는 무선 매체일 수 있다.
종단점 장치(12, 14), 중간 장치(15 내지 22), 및 기지국(24 내지 26) 각각이 무선 네트워크(10)의 노드를 정의한다. 이들 장치 각각은 실행가능한 명령어를 저장하는 메모리(도시 생략) 및 본 명세서에 기술된 기능들을 수행하는 명령어를 실행하는 하나 이상의 프로세서(이 하나 이상의 프로세서는 처리 시스템(도시 생 략)을 정의함)를 포함한다. 이 구현에서, 종단점 장치(12, 14)의 구조는 중간 장치(15 내지 22)의 구조와 동일할 수 있고, 각각의 기지국(24 내지 26)의 구조는 동일하다. 이것은 다른 구현에서는 그렇지 않을지도 모른다. 각각의 장치는 적절한 기능으로 프로그램되어 있다.
무선 네트워크(10)의 각각의 노드는, 무선 네트워크(10)을 통해 통신을 하지 않을 때, 저전력, 즉 "휴면 상태" 모드에 들어갈 수 있다. 이 저전력 모드 동안에, 노드는 어떤 저전력 동작을 유지할 수 있지만, 전력을 절감하기 위해 주요 처리 기능이 중단된다. 저전력 모드 이후에, 노드는 "웨이크업(wake-up)"한다, 즉 그의 정상 동작 모드를 활성화시켜 그 모드에 들어간다. 정상 동작 모드 동안에, 그 노드는 다시 무선 네트워크(10)를 통해 데이터를 전송/수신할 수 있다.
네트워크 노드가 무선 네트워크를 통해 통신을 하고 있지 않을 때마다 네트워크 노드는 항상 저전력 모드에 들어갈 수 있거나, 무선 네트워크를 통한 통신이 없는 어떤 기간 동안에 네트워크 노드는 그의 정상 동작 모드를 유지할 수 있다. 네트워크 노드에 대한 전력 소모 감소는 유익한데, 그 이유는 네트워크 노드가 종종 리튬 코인 셀 배터리(lithium coin cell battery) 등의 저용량, 소형 배터리에 의해 전원을 공급받기 때문이다. 이러한 유형의 배터리에 대한 긴 수명은 일반적으로 원격 단말(예를 들어, 무선 네트워크의 노드)의 평균 전력 소모가 비교적 낮을 때 달성될 수 있다. 본 명세서에 기술되는 배터리 호핑 프로토콜은 네트워크 노드가 비교적 긴 기간 동안 저전력 모드에 있게 해줄 수 있으며, 그에 의해 그 노드에 의해 소모되는 전력의 양을 더욱 감소시킬 수 있다.
상기한 기지국, 중간 장치, 및 종단점 장치는 워크 스테이션, 퍼스널 컴퓨터, 서버, 휴대용 컴퓨터 장치(예를 들어, PDA(personal digital assistant)), 셀룰러 전화, 또는 명령어를 실행하고 네트워크에 연결될 수 있는 임의의 다른 유형의 다른 지능형 장치와 같은 컴퓨팅 장치일 수 있다. 기지국, 중간 장치, 및 종단점 장치는 네트워크 상에서 사용하기 위한 데이터 패킷을 발생, 수신 및 전송하도록 구성되어 있는 애플리케이션을 비롯한 임의의 수의 컴퓨터 프로그램을 실행할 수 있다.
2004년 6월 4일자로 출원되고 본 명세서에 참조 문헌으로 포함되어 있는 미국 특허 출원 제10/860,935호에 기술되어 있는 바와 같이, 네트워크(10)에 들어가는 장치는 미리 정의된 기준에 기초하여 필요한 경우 중간 장치(예를 들어, 라우터(router) 또는 리피터(repeater))로서 동작하도록 그 자신을 구성할 수 있다. 이러한 장치는 또한 이하에 기술되는 종단점 장치의 기능(및 구성)을 가질 수 있다.
종단점 장치는 네트워크 데이터의 발신지(source) 또는 목적지(destination)일 수 있다. 이 구현에서, 하나 이상의 감지 장치(sensing device)가 종단점 장치에 연결되어 있을 수 있고, 다른 구현은 감지 장치를 갖지 않는 종단점 장치를 포함할 수 있다. 감지 장치(들)는 처리 공장(prossing plant) 등의 물리적 시스템 및 온도 등의 변수를 모니터링하는 데 사용될 수 있다. 종단점 장치는 감지 장치(들)로부터 아날로그 및/또는 디지털 신호를 획득하여 이들 신호를 무선 네트워크(10)를 통해 기지국으로 전송할 수 있다. 전송을 실시하기 위해 안테나(도시 생략)가 각각의 종단점 장치 상에 포함되어 있을 수 있다. 안테나는 또한 네트워크 내의 다 른 무선 장치들 상에 포함되어 있을 수도 있다.
이 구현에서 하나 이상의 작동기(actuator)도 역시 종단점 장치에 연결되어 있을 수 있다. 종단점 장치는 아날로그 또는 디지털 명령 신호를 사용하여 작동기(들)에 명령을 할 수 있다. 이들 명령 신호는 종단점 장치에서 또는 호스트 컴퓨터(30)에서 발신된 것일 수 있다. 후자의 경우에, 이러한 명령 신호는, 직접적으로 또는 무선 네트워크(10) 내의 하나 이상의 중간 장치를 통해, 호스트 컴퓨터(30)로부터 기지국으로, 이어서 종단점 장치로 전송될 수 있다.
중간 장치(intermediary device)는 종단점 장치, 기타 중간 장치, 및/또는 기지국에 의해 전송된 데이터를 전달(forward)하기 위해 라우터 또는 리피터로서 기능하는 무선 네트워크(10)의 중간 노드(intermediate node)이다. 중간 장치는 일반적으로 데이터가 수신되는 포맷으로, 그리고 데이터가 수신되는 것과 동일한 레이트(rate)로 데이터를 전송한다. 각각의 종단점 장치는, 상기한 바와 같이, 중간 장치로서 동작하도록 그 자신을 구성할 수 있고, 그 역도 마찬가지이다. 중간 장치는 또한 데이터 패킷의 의도된 목적지로의 네트워크 경로를 따라 있는 그 다음 홉(hop) 및 회신 경로(return path) 상의 홉 등의 라우팅 정보를 저장한다.
기지국은 고속 백본(29)에 연결될 수 있는 무선 네트워크의 노드이다. 기지국은 무선 네트워크(10)와 백본(29) 간의 중개자로서 기능하여, 이 둘 간의 데이터 교환을 가능하게 해주는 데 필요한 임의의 데이터 및 프로토콜 변환을 수행한다. 백본(29)에 연결되지 않은 기지국들도 네트워크(10) 내에 통합되어 있을 수 있다. 이러한 기지국(도 1에 도시되어 있지 않음)은 호스트 장치와 인터페이스할 수 있으 며, 무선 링크를 거쳐, 예를 들어, Wi-Fi(wireless fidelty) 접속을 통해 기타 호스트 장치들에 또는 백본에 연결될 수 있다.
호스트 컴퓨터(30)도 역시 고속 백본(29)에 연결될 수 있다. 호스트 컴퓨터(30)는 무선 네트워크(10)를 감독하고 종단점 장치에 의해 발생된 데이터를 수신, 처리 및 저장하는 일, 그리고 종단점 장치들에 대한 명령 신호를 발행하는 일을 비롯한 작업들을 수행한다. 호스트 컴퓨터(30)는 또한 본 명세서에 기술된 무선 네트워크를 구현하기 위해 종단점 장치 및/또는 중간 장치를 재구성하는 데도 사용될 수 있다.
무선 네트워크(10)를 형성하는 데 있어서의 유일한 요구사항은 모든 종단점 장치가 기지국 또는 중간 장치의 RF 전송 범위 내에 있어야만 하고, 모든 중간 장치가 기지국 또는 다른 중간 장치의 RF 전송 범위 내에 있어야만 한다는 것이다. RF 전송 범위 밖의 장치들은 일반적으로 무선 네트워크(10)를 통해 서로 직접적으로 통신을 할 수 없다.
무선 네트워크(10)의 전체적인 토폴로지는, 종단점 장치들이 잎으로서 기능하고, 중간 장치들이 가지로서 기능하며, 기지국들이 뿌리로서 기능하는 펼쳐진 숲을 닮았다. 나무들이 겹쳐져 있을 수 있는 빽빽한 숲에서와 같이, 중간 장치들 간의 통신 링크는 엉켜서 거미줄 같은 구조를 형성하며, 이에 의해 종단점 장치들(잎) 및 중간 장치들(가지)이 다수의 기지국들(뿌리)과 통신을 할 수 있다.
다수의 네트워크가 동일한 물리적 공간을 차지할 수 있다. 이러한 네트워크에 대한 데이터 패킷은 네트워크 그룹 식별자(ID)에 의해 구분된다. 따라서, 네트 워크들은 동일한 물리적 공간을 차지하고는 있지만 논리적으로는 분리된 채로 있다. 이러한 네트워크들은 심지어 동일한 장치를 동일한 역할로 또는 서로 다른 역할로 사용할 수 있다. 예를 들어, 장치(24)는 한 네트워크에 대해서는 라우터로서 또 다른 네트워크에 대해서는 기지국으로서 기능할 수 있고, 장치(17)는 한 네트워크에 대해서는 종단점 장치로서 또 다른 네트워크에 대해서는 기지국으로서 동작할 수 있다. 이러한 서로 다른 네트워크에서의 장치들의 동작은 본 명세서에 기술된 바와 같다. 장치들은 한 네트워크에서 그 네트워크의 그룹 ID 및 그 그룹 ID에 대한 장치의 기능성을 지정함으로써 기지국, 라우터 또는 종단점 장치로서 동작하도록 프로그램될 수 있다. 호스트 컴퓨터는 여러가지 장치들의 프로그래밍을 개시/제어할 수 있거나, 장치들이 장치들 자체 상에서 직접 프로그램될 수 있다. 네트워크 데이터 패킷은 일반적으로 그의 대응하는 네트워크에 대한 네트워크 그룹 ID를 포함한다.
네트워크(10) 등의 네트워크에서, 기지국들 전부가 호스트 컴퓨터(30)에 연결될 수 있다. 이 경우에, 데이터 패킷은 호스트 컴퓨터(30)에 의해 저장 및 구성(organize)될 수 있다. 이러한 네트워크 등의 네트워크에서, 호스트 컴퓨터(30)는 하나 이상의 종단점 장치들로부터의 패킷들로 이루어진 중앙 데이터베이스(central database)를 유지한다. 다른 네트워크들에서, 기지국은 전부 동일한 호스트 컴퓨터에 연결되어 있는 것은 아니다. 이러한 유형의 네트워크에서, 서로 다른 기지국은 종단점 장치의 한번의 전송으로부터 발생되는 패킷을 수신할 수 있다. 각각의 기지국은 그가 수신하는 패킷의 별도의 데이터베이스를 유지한다. 다양한 기지국이 그의 데이터베이스를 주기적으로 동기화시킬 수 있다. 동기화는 무선 접속을 통해 또는 (다양한 데이터베이스들 간에 유선 접속이 존재하는 경우) 이더넷 등의 유선 접속을 통해 행해질 수 있다. 이 동기화의 결과, 각각의 기지국은 네트워크 내의 기지국들에 도달하는 모든 패킷의 전체적인 데이터베이스(complete database)를 갖게 된다. 이들 데이터베이스 등의 중복하는 데이터베이스는 특히 유익한데, 그 이유는 네트워크 상의 기지국의 고장의 경우에 이들 데이터베이스가 백업을 제공하기 때문이다.
무선 네트워크의 설정
2002년 11월 26일자로 출원된 미국 특허 출원 제10/304,528호(여기에 인용함으로써 그 전체 내용이 본 명세서에 포함됨)에 기술된 바와 같이, 예를 들어, "헬로 메시지(hello message)"를 전송함으로써 적어도 하나의 종단점 장치가 통신을 개시할 때까지 무선 네트워크의 장치들 간의 연결성(connectivity)이 없다. 이 프로세스는 여기에서 "단말-개시 폴링(terminal-initiated polling)"이라고 한다. 종단점 장치(12) 등의 종단점 장치가 처음으로 활성화될 때 통신이 개시될 수 있다. 즉, 종단점 장치(12)가 처음으로 활성화될 때, 종단점 장치(12)는 그의 주변상황을 조사하기 위해 헬로 메시지를 브로드캐스트한다. "브로드캐스트"라는 용어는 하나 이상의 다른 네트워크 장치로 전송(또는 송신)하는 것을 의미한다.
헬로 메시지는 특수 데이터 패킷(specialized data packet)이며, 따라서 "검색 패킷(search packet)"이라고 한다. 이 검색 패킷은 종단점 장치의 식별자 및 무선 네트워크에 들어가고자 하는 요청 등의 정보를 포함할 수 있다. 종단점 장치의 RF 전송 범위(일반적으로, 30 내지 100 피트이지만, 이 값에 한정되지 않음) 내의 모든 중간 장치(예를 들어, 라우터 또는 리피터)는 그 각자의 RF 전송 범위 내의 기지국들 또는 기타 중간 장치들과의 접속을 탐색(seek)하기 위해 검색 패킷을 재브로드캐스트(re-broadcast)한다. 중간 장치들은 검색 패킷이 모든 기지국(24 내지 26)에 도달할 때까지 검색 패킷을 재브로드캐스트한다. 네트워크를 통해 검색 패킷을 전파하는 이 기법은 네트워크의 "플러딩(flooding)"이라고 한다.
기지국이 검색 패킷을 수신할 때, 기지국은 확인 패킷(confirmation packet)을 발생 및 브로드캐스트함으로써 응답을 한다. 확인 패킷은 또한 네트워크를 플러딩함으로써 전체 무선 네트워크(10)에 걸쳐 전파된다. 최종적으로, 확인 패킷은 헬로 메시지를 개시한 종단점 장치에 도달한다. 이 시점에, 네트워크 노드들 간의 통신이 가능하다.
확인 패킷이 무선 네트워크(10)를 통해 이리저리 지나가는 경로를 따라, 중간 장치는 어느 노드가 그 중간 장치로 확인 패킷을 전송했는지, 즉 그 경로를 따라 바로 이전의 네트워크 노드를 추적한다. 각각의 중간 장치는 이 노드를 가리키는 포인터를 메모리에 저장한다. 이들 포인터는 중간 장치가 데이터 패킷을 기지국에 더 가까이 전송(transport)하는 데 사용될 수 있는 이웃하는 노드들을 식별할 수 있게 해준다. 이들 이웃하는 노드는 마스터 노드(master node)라고 하며, 간단히 "마스터(master)"라고 한다. 마스터는 그의 종속 노드(dependent node), 즉 "슬레이브" 노드(slave node)로부터의 데이터의 1차 수신자(primary recipient)로서 기능한다.
단말-개시 폴링(terminal-initiated polling)의 한 이점은 종단점 장치가 무선 네트워크에 가입(join)하기를 기다릴 필요가 없다는 것이다. 즉, 종단점 장치가 무선 네트워크에의 진입을 개시하기 때문에, 종단점 장치는 언제 무선 네트워크에 존재를 확립해야 하는지를 제어한다. 종단점 장치는 무선 네트워크에 가입하기 이전에 기지국으로부터 주기적인 비이컨 신호(periodic beacon signal)를 기다릴 필요가 없다.
무선 네트워크에의 가입
엄격하게 규정된 계층 구조 없이 이질적인 네트워크(heterogeneous network)가 형성된다. 상세하게는, 무선 네트워크(10) 내의 모든 노드가 종단점 장치 또는 중간 장치의 역할을 떠맡을 수 있고 사용자에 의해 지정된 기준에 기초하여 동적으로 변할 수 있다. 기본적으로, 무선 네트워크는 동질적인 네트워크(homogeneous network)의 유연성 및 이질적인 네트워크의 전력 효율을 이용한다. 무선 네트워크(10)에 가입하는 프로세스에 대해 도 2와 관련하여 기술한다.
도 2는 무선 네트워크(10)의 일부일 수 있는 무선 네트워크(31)를 나타낸 것이다. 도 2의 장치(40) 등의 타겟 장치(target device)가 제1 시간 동안 활성화되고 네트워크(31)에 가입하고자 할 때, 장치(40)가 그의 이웃에서 중간 장치 또는 기지국 등의 패킷 전달 장치(packet forwarding device)를 찾아내려고 시도한다. 장치(40)는, 이전의 섹션 및 이후의 섹션에서 기술하는 바와 같이, 검색 패킷을 네트워크로 브로드캐스트함으로써 이것을 한다. 한 구현에서, 네트워크 이웃은 장치(40)가 직접적인 RF 링크를 갖는 모든 장치를 포함하지만, 이 응용은 이러한 "이 웃"의 정의에 한정되지 않는다.
장치(40)는 그의 이웃(들)으로부터 그의 검색 패킷에 대한 응답(들)을 수신한다. 장치(40)는 그 응답들을 사용하여, 예를 들어, 하나 이상의 중간 장치가 그의 네트워크 이웃 내에 있는지(장치(40)가 이러한 장치에의 RF 링크를 설정할 수 있음을 의미함)를 판정한다. 그러한 경우, 장치(40)는 미리 정의된 기준을 만족시키는 중간 장치를 선택하고 그 장치를 그의 1차 마스터로서(적용가능한 경우, 다른 장치들을 2차, 3차 마스터, 기타 등등으로서) 지명한다. 장치(40)는 이어서 낮은 듀티 사이클(low duty cycle)을 갖는 종단점 장치로서 네트워크에 가입한다. 장치(40)가 그의 이웃에서 기지국을 식별하는 경우 동일한 프로세스가 행해진다.
1차 마스터를 선택하는 기준은 기지국(또는 게이트웨이)까지의 거리, 중간 장치로의 통신 링크의 품질, 및 중간 장치의 배터리 용량을 포함할 수 있지만, 이에 한정되는 것은 아니다. 예를 들어, 장치(40)는 기지국 또는 종단점 장치까지 어떤 수보다 작은 홉(hop)을 갖는 1차 마스터 노드를 선택할 수 있다. 그에 부가하여, 이 구현에서, 장치(40)는 다른 기준에도(또는 다른 기준에만) 기초하여 1차 마스터를 선택할 수 있다. 예를 들어, 장치(40)는 낮은 노이즈량을 갖는 링크를 갖는 및/또는 큰 배터리 용량을 갖는(그에 의해 1차 마스터의 더욱 신뢰성있는 동작을 보장해주는) 노드를 선택할 수 있다.
장치(40)가 그의 네트워크 이웃에서 어떤 중간 장치(또는 기지국)도 발견할 수 없는 경우, 장치(40)는 중간 장치(예를 들어, 라우터)로서 동작하기 시작한다. 장치(40) 내에 프로그램된 코드는 라우터로서 그의 동작을 개시하며, 이 동작은 데 이터 패킷을 전달하는 것, 라우팅 정보를 유지하는 것을 포함하며, 그 중에서도 특히 저전력 모드에 덜 자주 들어갈 수 있다. 라우터로서의 그의 동작 동안에, 장치(40)는 노드(43) 등의 이웃하는 장치들로부터의 전송을 "리스닝(listen to)"한다. 노드(43)는, 이 경우에, 종단점 장치인데, 그 이유는 노드(43)가 중간 장치도 기지국도 아니기 때문이다(노드(43)가 중간 장치 또는 기지국인 경우, 장치(40)는 장치(40)가 네트워크에 진입하려는 최초 시도에 응답하여 그 노드를 그 자체로서 인식할 것이다). 장치(40)는 검색 패킷 전송이 아니라 노드(43)로부터의 데이터 전송이 있는지 "리스닝(listen for)"한다. 이러한 이유는 검색 패킷의 전송이 노드(43)가 네트워크(10)에 접속을 하려고 하고 있다는 것을 암시하기 때문이다. 반면에, 데이터 전송은 노드(43)가 이미 네트워크(10)에 연결되어 있음을 암시한다.
장치(40)가 노드(43)로부터의 데이터 전송을 검출한 후에, 장치(40)는 노드(43)가 네트워크(10)에 연결되어 있는지를 판정하려고 시도한다. 이것을 하기 위해, 장치(40)는 동일한 데이터 패킷의 재전송이 있는지 리스닝할 수 있다. 동일한 데이터 패킷의 재전송은 노드(43)가 네트워크에 연결되어 있지 않음을 암시한다. 장치(40)는 최초의 전송에 응답하여 확인 응답(즉, "ack") 패킷이 있는지 리스닝할 수 있다. ack 패킷은 네트워크 상에 있는 다른 노드(예를 들어, 노드(42))에 의해 전송된다. 그렇지만, 항상 이렇게 되는 것은 아닐 수도 있는데, 그 이유는 장치(40)가, 예를 들어, ack 패킷을 전송하는 노드로부터의 거리로 인해, ack 패킷을 수신할 수 없을 수 있기 때문이다. 장치(40)는 그의 연결성을 판정하기 위해 노드(43)로 패킷을 전송할 수 있다. 이 패킷은 노드(43)에 장치(40)의 존재를 알려줄 수 있으며, 노드(43)가 네트워크에 연결되어 있는지 여부를 노드(43)에 질문한다.
장치(40)가 노드(43)가 네트워크에 연결되어 있음을 확인할 수 있다고 가정하면, 장치(40)는 노드(43)으로 데이터 패킷을 전송하여 노드(43)(이 노드(43)는, 상기한 바와 같이, 종단 장치임)에 대해 그 자신을 장치(40)에 대한 라우터로서 재구성하도록 요청한다. 노드(43)는, 예를 들어, 그의 성능, 가용 대역폭, 네트워크 액세스, 기타 등등에 기초하여 그 자신을 라우터로서 구성할지 여부를 결정한다. 노드(43)가 그 자신을 라우터로서 구성하는 것으로 가정하면, 장치(40)는 그 자신을 노드(43)를 통해 통신을 라우팅하는 종단점 장치가 되도록 재구성한다. 장치(40)는 노드(43)를 그 자신의 1차 마스터 노드가 되도록 선택한다. 노드(43)가 네트워크에 연결되어 있지 않고 장치(40)에 대한 라우터로서 동작할 수 있는 다른 노드가 없는 경우, 어떤 기간 후에 장치(40)는 그 자신을 종단점 장치로서 구성할 수 있다.
장치(40)는 미리 정해진 시간, 예를 들어, 1시간, 1시간 이상 또는 이하 동안 라우터로서 동작한 후에 그 자신을 종단점 장치로서 재구성하도록 프로그램될 수 있다. 임의의 기간이 사용될 수 있다. 상기한 바와 같이, 장치(40)는 주기적으로 저전력 모드에 들어갈 수 있다. 저전력 모드로부터 빠져나올 때(어웨이크닝(awakening)할 때), 장치(40)는, 상기한 바와 같이, 종단점 장치로서 네트워크에의 접속을 설정하려고 다시 시도할 수 있다. 그것이 성공하지 못하는 경우, 장치(40)는 상기한 방식으로, 즉 그 자신을 라우터로서 구성하는 것, 비검색 패킷 전송이 있는지 리스닝하는 것, 기타 등등에 의해 라우터로서 네트워크에의 접속을 설 정하려고 시도할 수 있다.
장치(40)가 라우터로서 구성된 채로 있는 시간이 장치(40) 내에 프로그램될 수 있다. 다른 대안으로서, 이 시간은 장치(40) 근방에서의 네트워크 트래픽(예를 들어, 검색 패킷)에 의해 좌우될 수 있다. 예를 들어, 많은 수의 검색 패킷이 장치(40) 근방에서 검출되는 것은 (아마도 아직 네트워크에 연결되어 있지 않을 뿐인) 장치들이 이웃에 있다는 것을 나타낸다. 이와 반대로, 장치(40) 근방에서 검색 패킷이 거의 검출되지 않는 것은 이웃에 장치들이 거의 없을 수 있다는 것(아마도 장치(40)가 고립되어 있다는 것)을 나타낸다. 따라서, 장치(40)의 근방에서 많은 수의 데이터 패킷이 검출되는 경우, 장치(40)는 오랜 기간 동안 그 자신을 라우터로서 구성한다(왜냐하면 장치들이 더 있다는 것이 네트워크 접속을 달성할 가능성이 더 높다는 것을 암시하기 때문이다). 장치(40)의 근방에서 데이터 패킷이 거의 검출되지 않는 경우, 장치(40)는 비교적 긴 기간 동안 저전력 모드에 들어갈 수 있는 종단점 장치로서 그 자신을 구성한다. 이 경우에, 장치(40)는 저전력 모드로부터 덜 빈빈하게 "어웨이크닝"하는데, 그 이유는 네트워크 접속을 달성할 가능성이 더 적기 때문이다.
장치(40)는 네트워크(31) 상의 하나 이상의 다른 장치들에 대한 중간 노드로서 동작할 수 있다. 장치(40)가 마스터 중간 장치로의 링크를 갖는 것으로 가정하면, 장치(40)는 이웃하는 종단점 장치들에 대한 중간 장치로 남아 있어야 하는지를 결정할 수 있다. 이웃하는 종단점 장치들에 의해 보고되는 중간 장치 ID(식별자)로부터, 장치(40)는 이웃하는 종단점 장치들 중 임의의 하나가 그의 유일한 중간 장 치로서 장치(40)에 의존하는지를 식별할 수 있다. 예를 들어, 장치(40)는 라우팅 정보를 얻기 위해 다른 중간 장치들에 질의를 할 수 있다. 적어도 하나의 장치가 장치(40)에만 의존하는 경우, 장치(40)는 중간 장치로 남아 있으며, 그렇지 않은 경우, 장치(40)는 그 자신을 종단점 장치로서 구성한다.
장치(40)가 미리 정의된 시간 동안 그의 이웃하는 노드들(종단점 장치들 또는 중간 장치들)로부터 데이터 또는 중간 장치 요청을 수신하지 않는 경우, 장치(40)는 그 자신을 종단점 장치로서 구성할 수 있다. 미리 정해진 시간은 장치 내에 프로그램될 수 있거나 하나 이상의 파라미터에 기초하여 선택될 수 있다. 이러한 파라미터의 일례는 종속 종단점 장치가 중간 장치와 통신하는 빈도수이다, 즉 종단점 장치로부터의 통신의 빈도수가 적을수록, 장치(40)가 그 자신을 종단점 장치로서 구성하는 경우가 더 많다.
중간 장치가 많은 수의 노드의 마스터 중간 장치가 될 때, 상당량의 트래픽이 중간 장치로 들어갈 수 있다. 이 결과 데이터 혼잡이 생길 수 있으며, 아마도 데이터 패킷 충돌이 빈번해질 수 있다. 과부하의 중간 장치를 위해 이웃에 있는 종단점 장치들 중에서 새로운 중간 장치를 획득함으로써 과도한 트래픽이 전환(divert)될 수 있다. 이 상황에서, 중간 장치는 라우터 선정 요청(router election request)을 발행하여 그의 이웃하는 종단점 장치들로 브로드캐스트할 수 있다. 이 라우터 선정 요청을 수신할 시에, 종단점 장치는, 그와 통신을 하고 있는 중간 장치의 ID, 그의 데이터 발생 레이트, 그의 잔여 배터리 충전, 기타 등등을 포함할 수 있는 그의 동작 상태를 나타내는 메시지로 응답한다.
모든 이웃하는 종단점 장치들로부터 응답을 수신한 후에, 중간 장치는 어떤 기준에 기초하여 새로운 중간 장치를 선택한다. 예를 들어, 대다수의 중간 장치와 통신을 하는 종단점 장치는 나머지 네트워크와의 더 높은 연결성을 제공할 수 있으며, 비교적 낮은 데이터 발생 레이트를 갖는 종단점 장치는 다른 노드들에 대한 데이터를 라우팅하기 위한 더 많은 대역폭을 제공할 수 있고, 가장 많은 배터리 충전을 갖는 종단점 장치가 높은 듀티 사이클로 동작할 수 있다. 중간 장치는 선택된 노드에 그 자신을 라우터로서 구성하도록 지시한다. 이웃하는 종단점 장치들 중 하나에 라우터가 되도록 지시하는 한가지 목적은 트래픽을 전환(divert)시키기 위한 것이다. 새로운 라우터가 선정되면, 중간 장치는 이 새로운 라우터를 그 자신의 1차 마스터로서 선택할 필요가 없다. 과부하된 중간 장치는, 과부하된 중간 장치를 통한 트래픽 혼잡이 완화될 수 있도록, 단지 이웃에 있는 중간 장치의 수를 증가시키기 위해서 새로운 라우터를 선정한다.
네트워크 내의 모든 노드는 상기한 방식으로 계속하여 더 나은 1차 마스터 중간 장치를 탐색할 수 있다. 대부분의 경우에, 노드는 그의 1차 마스터에 부가하여 하나 또는 다수의 대안의 마스터를 가질 수 있다. 그 자체로서, 새로운 1차 마스터가 대안의 마스터들 중에서 선택될 수 있다. 그렇지만, 노드가 그의 마스터 중간 장치 전부가 신뢰할만하지 않음을 발견할 수 있는 상황이 있다. 이 경우에, 노드는 라우터 선정 요청을 그의 이웃하는 노드들로 브로드캐스트할 수 있다. 라우터 선정 요청을 수신할 시에, 이웃하는 노드, 즉 종단점 장치, 중간 장치 또는 기지국은 그의 동작 상태로 응답을 한다. 모든 응답을 검토한 후에, 요청측 노드는 이웃 하는 노드들 중에서 새로운 1차 마스터를 선택한다. 선택된 노드가 이미 중간 장치인 경우, 그 노드가 요청측 노드의 새로운 1차 마스터로서 인식되기만 한다. 노드가 종단점 장치인 경우, 요청측 노드는 종단점 장치에 중간 장치는 물론 요청측 노드의 1차 마스터가 되어달라고 요청하는 메시지를 발행한다. 종단점 장치는, 예를 들어, 그의 성능 및 네트워크에의 접속에 기초하여 중간 장치가 될지를 결정한다. 종단점 장치가 중간 장치로 되는 경우, 종단점 장치는 요청측 노드에 통지를 한다.
모든 노드는 종단점 장치로서 동작하려고 할 수 있다. 노드가 그의 이웃에서 이용가능한 중간 장치가 없거나 모든 이웃하는 중간 장치가, 예를 들어, 과도한 트래픽 또는 무선 링크 문제로 인해 신뢰성있는 연결성을 제공할 수 없는 것으로 인식할 때, 노드는 중간 장치로서 기능한다.
궁극적으로, 무선 네트워크에 가입하는 프로세스는 네트워크 연결성을 유지하는 데 필요한 미리 정해진 기준에 기초하여 비교적 적은 수의 중간 장치 노드를 선정하게 할 수 있다. 이 기준은 기지국까지의 홉의 수, 통신 링크의 신뢰성, 및 남은 배터리 수명 등의 상기한 인자들 중 하나 이상을 포함할 수 있지만, 이에 한정되는 것은 아니다. 종단점 장치가 중간 장치가 될 확률은 이들 인자를 조정함으로써 조절될 수 있다. 이들 인자는, 예를 들어, 호스트 컴퓨터(30)를 통해 및/또는 적절한 네트워크 장치에 직접 액세스하여 적절한 값을 프로그램함으로써 조정될 수 있다.
무선 네트워크에서의 주파수 호핑
이하에 기술되는 주파수 호핑 프로토콜은 무선 네트워크(10) 등의 이질적인 네트워크와 관련하여 기술된다. 그렇지만, 주파수 호핑 프로토콜은 이질적인 네트워크에서의 사용에 한정되지 않고, 오히려 동질적인 네트워크, 예를 들어, 모든 장치들이 동일한 구조 및/또는 기능을 갖는 네트워크에서도 사용될 수 있다. 예를 들어, 라우터만을 포함하는 무선 네트워크는 주파수 호핑 프로토콜로부터 이득을 볼 수 있는데, 그 이유는 주파수 호핑 프로토콜이 라우터가 감소된 듀티 사이클(이하에서 기술함)로 동작할 수 있게 해주기 때문이다. 그 결과, 라우터에 전원을 공급하는 배터리는 덜 빠르게 전력을 사용한다.
게다가, 주파수 호핑 프로토콜은 무선 네트워크 전체에 걸쳐 공통의 시간축(common time base)을 필요로 하지 않는다. 즉, 무선 네트워크의 노드들은 이웃하는 노드들의 웨이크-업 시간(wake-up time), 웨이크-업 지속기간(wake-up duration), 및/또는 채널 시퀀스(이하에 기술됨)에 대한 지식에 기초하여 그의 이웃하는 노드들과 통신을 한다. 이 프로세스의 한가지 이점은 이 프로세스에 의해 노드들이 더 빈번하게 웨이크-업할 수 있으며, 그 때마다 비교적 짧은 지속기간으로 그렇게 한다는 것이다. 노드들이 더 빈번하게 웨이크-업하기 때문에, 패킷들이 네트워크를 통해 비교적 빠르게 전파할 수 있다. 그 결과, 무선 네트워크는 증가된 안정성(사전 대책적인 채널 스위칭), 비교적 높은 대역폭, 비교적 낮은 전력 소모, 및 비교적 낮은 지연시간으로 동작할 수 있다.
이제부터 일례를 참조하면, 무선 네트워크(10)(31)의 하나 이상의 노드(예를 들어, 모든 노드)가 주파수 호핑을 사용하여 통신을 할 수 있다. 무선 네트워크와 관련하여, 주파수 호핑은 윈도우 - 이 윈도우 동안에 네트워크 노드들이 다른 노드 들로부터 통신을 수신할 수 있음 - 를 제공함으로써 구현될 수 있다. 도 3을 참조하면, 수신측 노드는 통신을 수신하게 되는 노드이다. 수신측 노드가 웨이크(wake)하며, 이는 그 노드가 활성화되어 미리 정의된 지속기간 동안의 시간에(45, 46, 기타) 그의 정상 동작 모드에서 동작한다는 것을 의미한다. 이들 지속기간은 MN_RX_time으로 표시되어 있으며, 여기서 "MN"은 "Mesh Node(메쉬 노드)"를 나타내고, "RX"는 "receive(수신)"을 나타낸다("TX"는 "transmit(전송)"을 나타낸다). MN_RX_time은 또한 네트워크 상태에 따라 동작 중에 변경될 수 있으며, 각각의 노드는 서로 다른 MN_RX_time을 가질 수 있다. 수신측 노드는 Ch7, Ch11, 기타 등등으로 표시되어 있는 미리 정의된 주파수 채널에서 웨이크된다. 다른 시간(47, 49, 기타)에, 수신측 노드는 MN_sleep_time으로 표시되어 있는 저전력 또는 휴면 상태 모드에 있을 수 있다.
우리는 노드(15)(도 1)를 초기 예로서 사용한다. 그의 정상 동작 모드 동안에, 수신측 노드(여기서, 노드(15))는 지정된 주파수 채널에서만 통신을 수신할 수 있다. 예를 들어, 시간(46)에서, 노드(15)는 200 ㎲(마이크로초)의 지속기간 동안 채널(Ch) 11에서 웨이크-업한다. 무선 네트워크 상의 또하나의 노드가 노드(15)로 통신을 전송하고자 하는 경우, 다른쪽 노드는 Ch 11 내에서 200㎲ 지속기간 내에 그렇게 해야만 하며, 그렇지 않은 경우 노드(15)가 (예를 들어, 10 ms(밀리초) 더 후에) 다시 웨이크-업할 때까지 기다려야만 한다. 그렇지만, 노드(15)가 다시 웨이크할 때, 노드(15)는 다른 주파수 채널(Ch2)에서 웨이크할 수 있지만, 이는 일반적으로 동일한 지속기간 동안 웨이크한다(그렇지만, 꼭 그럴 필요는 없다). 노드(15) 와 통신을 하고자 하는 노드는 따라서 (노드(15)와 통신을 하고자 하는 노드가 노드(15)로 통신을 전송해야 하는 채널을 결정할 수 있도록) 노드(15)가 웨이크하는 시간, 노드(15)가 어웨이크하고 있는 지속기간, 및 노드(15)에 대한 채널 시퀀스를 알아야만 한다.
상황을 악화시키기 위해, 네트워크(10)에서, 노드들이 동일한 웨이크-업 시간, 웨이크-업 지속기간, 또는 채널 시퀀스를 가질 필요가 없다. 예를 들어, 노드(15)는 200㎲ 동안 매 10ms마다 한번씩 웨이크업할 수 있고, 노드(16)는 200㎲ 동안 매 2초마다 한번씩 웨이크업할 수 있으며, 노드(17)는 50㎲ 동안 매 1/2초마다 한번씩 웨이크업할 수 있다. 이와 마찬가지로, 노드(15)는 7, 11, 2, 10...12의 랜덤 채널 시퀀스를 따를 수 있으며, 노드(16)는 16, 15, 14, 13...1의 채널 시퀀스를 따를 수 있고, 노드(17)는 1, 2, 3, 4...16의 채널 시퀀스를 따를 수 있다. 채널 시퀀스는 각각의 노드 상의 메모리에 있는 주파수 호핑 리스트에 저장될 수 있다. 각각의 노드가 서로 다른 채널 시퀀스를 따를 수 있지만, 각각의 노드는 일반적으로(꼭 그럴 필요는 없음) 그의 동일한 시퀀스를 유지한다. 즉, 노드(15)는 그의 시퀀스 7, 11, 2, 10...12를 주기적으로 반복하고, 노드(16)는 그의 시퀀스 16, 15, 14, 13...1을 주기적으로 반복하며, 노드(17)는 그의 시퀀스 1, 2, 3, 4...16을 주기적으로 반복한다. 이 구현(2.4GHz RF 동작)에서는, 각각의 노드가 16개의 채널에 걸쳐 통신을 하지만, 다른 구현에서는, 어떤 노드가 본 명세서에서 지정된 16개보다 적은 또는 그보다 많은 채널을 통해 통신을 할 수 있다. 예를 들어, 900MHz RF 동작에서, 50개의 주파수 채널이 있을 수 있다.
전송측 노드(즉, 통신을 전송해야 하는 노드)는, 따라서, 통신이 수신되도록 하기 위해 언제 그 통신을 전송해야 하는지를 판정하기 위해 수신측 노드의 주파수 시퀀스, 웨이크-업 시간, 및 듀티 사이클을 알고 있어야만 한다. 전송측 노드는 일반적으로 웨이크(wake)하여 그 자신의 수신 주파수 채널 시퀀스 및 타이밍에 상관없이 임의의 채널로 통신을 전송할 수 있다. 수신측 노드는 일반적으로 통신의 수신을 확인 응답하기 위해 ack 패킷을 전송측 노드로 다시 전송한다. 전송측 노드가 통신에 응답하여 적절한 ack 패킷을 수신하지 않는 경우, 전송측 노드는 수신측 노드에 대한 차후의 시간 및 주파수 채널(현재의 시간 및 주파수 바로 다음에 오는 시간 및 주파수일 수도 아닐 수도 있음)에서 그 통신을 재전송할 수 있다. 예를 들어, 전송측 노드는 랜덤한 차후의 시간에 통신을 재시도하도록 프로그램될 수 있으며, 그에 의해 다른 전송측 노드들과의 충돌 가능성을 감소시킬 수 있다. 전송측 노드가 수신측 노드로부터 ack 패킷을 수신할 때까지 이 프로세스가 반복될 수 있다.
이 구현에서, 각각의 노드는 통신 경로에서 업스트림 및 다운스트림 둘다에 있는 그의 이웃하는 노드들의 클록을 저장 및 추적한다. 검색 응답 패킷은 타임 스탬프를 포함하며, ack 패킷을 전송하는 노드의 채널 시퀀스를 포함할 수 있다. 검색 응답 패킷이 이웃하는 노드로부터 수신될 때마다, 수신측 장치는 그의 이웃 데이터베이스 내의 이웃의 클록을 수신된 시간으로 조정한다. 예로서, 2개의 업스트림 노드(1차 및 2차) 및 30개의 다운스트림 노드에 대해, 노드는 적어도 32개의 독립적인 클록(또는 다른 그 다음 웨이크-업 시간(next-time-to-wake-up) 정보)을 그 의 이웃 데이터베이스에 저장해야만 한다. 각각의 클록은 적어도 2 바이트(65536 클록 틱(clock tick)을 저장할 수 있음)를 포함할 수 있다. 따라서, 1ms(클록 틱)의 증분으로, 클록은 65초까지의 그 다음 웨이크-업 시간 정보를 포함할 수 있다. 이것은 검색 응답 패킷만이 아니라 모든 통신에 대해 행해질 수 있다.
새로운 노드가 무선 네트워크에 들어가는 것에 대한 한가지 문제점은 새로운 노드가 그의 이웃하는 노드들의 주파수 시퀀스, 웨이크-업 시간, 및 듀티 사이클을 모른다는 것이다. 따라서, 장치가 이웃하는 네트워크 노드들이 어떻게 주파수 호핑을 수행하는지를 발견할 수 있게 해주는, 예를 들어, 그의 주파수 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 발견할 수 있게 해주는 프로토콜(본 명세서에서 "주파수 호핑 프로토콜"이라고 함)이 제공된다. 이와 관련하여, 주파수 시퀀스 데이터(또는 간단히 시퀀스 데이터)는 이웃하는 노드가 활성화되는 주파수들의 시퀀스를 획득하는 데 사용가능하며, 웨이크-업 데이터는 이웃하는 노드가 활성화되는 시간에 대응하고, 듀티 사이클 데이터는 이웃하는 노드가 활성화되는 지속기간에 대응한다.
무선 네트워크에 가입 및 그를 설정하는 상기한 프로세스와 관련하여, 헬로 메시지(예를 들어, 검색 패킷)가 주파수 호핑 프로토콜에서 사용되는 프리앰블(이하에서 기술됨)과 프리앰블에 뒤따라오는 리스닝 주파수(들) 사이에서 전송된다. 주파수 호핑 프로토콜은 또한, 이하에 기술하는 바와 같이, 무선 네트워크를 통해 브로드캐스트하는 데 사용된다.
도 4 및 도 5를 참조하면, 무선 네트워크에 들어가는 전송측 장치(예를 들 어, 도 2의 장치(40))는 프리앰블(51)을 출력한다(단계 50). 한 구현에서, 이 프리앰블은 장치로부터 출력되는 패킷의 시퀀스이다. 데이터 패킷들은 IEEE802.15.4 데이터 패킷일 수 있으며, 각각의 패킷은, 예를 들어, 1ms(~25 바이트)일 수 있다. 프리앰블은 기본적으로 장치에 이웃하는 노드들의 관심을 끌도록 설계되어 있다. 비-IEEE802.15.4와 관련하여, 프리앰블은 특정의 데이터 패턴, 예를 들어, "01010101...."을 나타낼 수 있다. 프리앰블은 장치(40)와 그의 이웃들 중 하나 이상 간의 통신의 시작을 식별해준다. 이와 관련하여, 장치에 이웃하는 노드는 무선 네트워크의 일부임과 동시에 장치의 무선 전송 범위 내에 있는 임의의 노드이다. 모든 이웃하는 노드가 프리앰블을 식별하도록 하기 위해, 프리앰블은 하나의 주파수 채널(예를 들어, 도 5의 Ch8)로 전송되며, 무선 네트워크 상의 모든 노드의 최대 활성화 시간을 인자 N(단, N은 적어도 무선 네트워크 상의 주파수의 최대수와 같음)만큼 초과하도록 구성되어 있다. 이것은 장치(40)의 이웃하는 노드들 전부가 프리앰블의 주파수 채널에서 웨이크하고 그에 의해 그의 활성화 사이클 동안에 적어도 한번 프리앰블을 수신하도록 보장해준다.
예로서, 무선 네트워크 상의 임의의 노드에 대한 활성화들 간의 최대 시간이 5s(단, "s"는 초를 나타냄)이고 네트워크가 16개의 주파수 채널을 인식하는 경우, 프리앰블은 적어도 80s(16x5s)가 된다. 다른 예에서, 활성화 간의 시간(노드의 슬립 사이클(sleep cycle)이라고도 함)은 10.2ms이고 총 50개의 채널이 있으며, 그 결과 510ms의 프리앰블이 얻어진다. 또다른 예에서, 프리앰블은 약 3.2s일 수 있따. 유의할 점은, 어떤 상황(이하에 기술됨)에서, 400ms보다 큰 프리앰블은 FCC(Federal Communications Commission) 규정에 따라 다수의 주파수 채널들 간에 분할될 필요가 있을 수 있다.
도 6을 참조하면, 수신기가 주파수 채널에서 통신이 있는지를 리스닝하는 동안인 지속기간(52)(MN_RX_time)이 프리앰블 패킷 단위(54)의 길이의 적어도 2배이어야만 한다. 이것은 적어도 하나의 전체 프리앰블 패킷(또는 "프리앰블 단위")이 수신기에 의해 인식되도록 하기 위해 행해진다. 프레임 구분자의 시작(start of frame delimiter, SFD)이 프리앰블을 검출하는 데 사용되는 경우, MN_RX_time이 프리앰블 단위보다 약간 더 길기만 하면 된다.
프리앰블의 지속기간은 다음과 같이 수학적으로 표현될 수 있다. 각각의 프리앰블 단위는 (프리앰블 패킷 단위를 수신하는 임의의 이웃하는 노드가 검색 패킷을 수신하기 위해 언제 프리앰블 채널로 복귀하는지를 알도록) 말단까지의 시간(time-to-tail end) 값을 포함한다. 프리앰블 패킷 단위의 길이(단위: 밀리초)가 L_pu라고 가정하자. 이 경우에,
MN_RX_time = 2*L_pu
MN_cycle_time은 네트워크 노드의 듀티 사이클이고, M_ps*2*L_pu와 같으며, 여기서 M_ps는 미리 정의된 전력 절감 곱셈기이다. 노드가 그의 저전력 또는 휴면 상태 사이클에 있는 시간인 MN_sleep_time은 다음과 같이 정의된다.
MN_sleep_time = MN_cycle_time - MN_RX_time
전력 절감 곱셈기 M_ps는 기본적으로 MN_RX_time에 대한 MN_cycle_time의 비이다. 더 높은 M_ps는 활성화 시간에 대한 슬립 시간의 비가 더 높음을 의미하며, 그 결과 더 많은 전력 절감이 얻어진다.
프리앰블의 전체 길이는 따라서 다음과 같이 구해진다.
preamble_length = CN_hop * MN_cycle_time = CN_hop * M_ps*2*L_pu
여기서, CN_hop는 최대 MN_sleep_time을 갖는 네트워크 상의 노드의 호핑 시퀀스에서의 채널의 최대수이다.
일반적으로, CSMA(Carrier Sense Multiple Access) 리스닝은 동일한 주파수 채널에 현재 다른 프리앰블이 없도록 하기 위해 프리앰블이 출력되기 이전에 수행된다. 그 주파수 채널이 이미 프리앰블이 있는 경우, 노드는 진행 중인 검색 프로세스가 끝나거나 진행 중인 검색 프로세스가 없는 다른 주파수 채널로 점프할 때까지 기다리기로 결정할 수 있으며,그 다른 주파수 채널에서 즉각 그의 검색 프로세스를 시작할 수 있다, 즉 그 다른 주파수에서 프리앰블을 송출(send out)할 수 있다.
프리앰블은 타이밍 정보를 포함할 수 있다. 보다 구체적으로는, 프리앰블에 뒤이어서, 이웃하는 노드들은 그의 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 장치(40)로 전송한다. 따라서, 이웃하는 노드들은 전송을 시작할 수 있도록 언제 프리앰블이 끝나는지를 알 필요가 있다. 따라서, 프리앰블은 프리앰블의 말단을 식별해주는 타이밍 데이터를 포함할 수 있다. 예를 들어, 한 구현에서, 프리앰블은 스트림으로 전송되는 데이터 패킷들의 시퀀스이다. 각각의 데이터 패킷은 프리앰블의 남은 길이를 나타내는 카운트다운 시간을 포함할 수 있다. 다른 구현에서, 선택 데이터 패킷(select data packet)만이 카운트다운 시간을 포함할 수 있다.
프리앰블에 뒤이어서, 장치(40)는 58a에서 그의 검색(즉, 헬로) 패킷(57)을 전송한다(단계 56). 검색 패킷은 장치(40)에 대한 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 포함한다. 즉, 검색 패킷은 장치(40)가 통신이 있는지 리스닝하는 주파수들의 시퀀스, 장치(40)가 그 주파수들에서 리스닝하는 시간, 및 리스닝 지속기간을 포함한다. 이 정보는 이웃하는 노드들에 있는 주파수 호핑 리스트(들)에 저장되고, 그 노드들이 장치(40)로 통신을 전송할 수 있게 해준다.
검색 패킷의 전송 이후에, 장치(40)는 그의 이웃하는 노드들로부터의 통신, 구체적으로는 이웃하는 노드들(예를 들어, 노드(42, 43), 이 예에서, 노드(43)가 이미 네트워크의 멤버이고 노드(40)의 전송 범위 내에 있는 것으로 가정함)에 대한 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터가 있는지 58b에서 하나 이상의 주파수에서 리스닝한다(단계 59). 즉, 송신기는 수신 모드에 들어가고 검색 응답을 수신하기를 기다린다(브로드캐스트 패킷을 전송하는 경우, 송신기는 그의 슬립/웨이크 사이클(sleep/wake cycle)을 재개한다). 장치(40)로 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터 등의 주파수 호핑 데이터를 전송하기 위해, 이웃하는 노드들은 장치(40)가 프리앰블에 뒤이어서 리스닝하게 되는 주파수(들)를 알 필요가 있다. 이 점에서, 장치(40)는 단일의 주파수로 또는 다수의 주파수로 리스닝할 수 있다. 환언하면, 장치(40)는 프리앰블 이후의 리스닝 단계(59) 동안에 주파수 호핑할 수 있다. 어쨋든, 장치(40)가 리스닝하게 될 주파수(들)는 이웃하는 노드들에게 알려져 있다.
한 구현에서, 장치(40)는 프리앰블이 전송되었던 동일한 주파수 채널에서 리스닝한다. 따라서, 이웃하는 노드는 프리앰블의 주파수로 장치(40)의 리스닝 주파수(들)를 식별한다(즉, 그 둘이 동일하다는 것을 사전에 알고 있다). 이 경우에, 도 5에 나타낸 바와 같이, 이웃하는 노드(예를 들어, 노드(42))는 프리앰블이 검출된 이후에 그 채널(도 5에서, 63에서의 채널(Ch)8)에 로크(lock)되고, 그 채널에 계속 웨이크되어 있다. 그렇지만, 그 시퀀스가 결코 중단되지 않은 것처럼 (그의 주파수 호핑 데이터를 장치(40)로 전송한 이후에) 노드가 58c에서 그의 주파수 호핑 시퀀스(60)를 재개할 수 있도록 노드의 내부 채널 호핑 클록이 계속 동작하고 있음에 유의한다.
다른 구현에서, 이웃하는 노드들은 장치(40)로의 통신을 스케쥴링하기 위해 프리앰블에서 타이밍 데이터를 사용한다. 즉, 이웃하는 노드는 프리앰블에 남은 시간을 추적하고, 프리앰블 이후에, 프리앰블과 동일한 주파수 채널로 그의 주파수 호핑 데이터를 장치(40)로 전송한다. 그의 주파수 호핑 데이터를 전송하기 이전에(예를 들어, 시간 61), 노드는 주파수를 호핑하고 그의 통상의 스케쥴에 따라 전송 및 수신 동작을 수행한다.
또다른 실시예에서, 장치(40)는 타이밍 데이터 없이 동일한 프리앰블 패킷을 전송하고, 프리앰블 주기의 끝에 가까이 있을 때, 장치(40)는 프리앰블 패킷에 프리앰블의 다가오는 말단(때때로 그의 "테일"이라고 함)을 나타내는 플래그를 설정한다. 이웃하는 노드들은 프리앰블이 그의 말단에 가까이 있는지를 판정하기 위해 웨이크-업 시간들 간에 점검을 한다. 이 이전에, 노드는 주파수를 호핑하고, 그의 통상의 스케쥴에 따라 전송 및 수신 동작을 수행한다. 이 구현에서, 프리앰블은 프리앰블이 그의 말단에 가까이 있음을 나타내는 타이밍 데이터 등의 데이터를 포함할 수 있다. 이 경우에, 노드가 프리앰블이 그의 말단에 가까이 있는 것으로(예를 들어, 미리 정의된 그의 말단의 시간 내에 있는 것으로) 판정할 때, 노드는 프리앰블이 전송되는 채널에 로크하고 그 채널에서만 웨이크한다. 그렇지만, 유의할 점은 그 시퀀스가 결코 중단되지 않은 것처럼 (그의 주파수 호핑 데이터를 장치(40)로 전송한 후에) 노드가 그의 주파수 호핑 시퀀스를 재개할 수 있도록 노드의 내부 채널 호핑 클록이 계속 동작한다는 것이다.
장치(40)가 다수의 주파수에 리스닝하는 경우, 장치(40)는 이웃하는 노드들에 리스닝 기간에 대한 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 제공한다. 이 정보는 프리앰블 이후에 프리앰블과 동일한 채널로, 그렇지만 리스닝 기간 이전에, 브로드캐스트되는 검색 패킷으로 제공될 수 있다(그에 의해 이웃하는 노드들이 검색 패킷을 수신하도록 보장함). 다른 대안으로서, 이 정보는 프리앰블 자체로 제공될 수 있다.
장치(40)의 리스닝 기간(59) 동안에, 이웃하는 노드들은 그의 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터 등의 그의 주파수 호핑 데이터를 장치(40)로 전송한다. 장치(40)는 각각의 노드에 대한 주파수 호핑 데이터를 수신하고(단계 62), 그 데이터를 노드 식별자 및 노드에 대한 클록과 관련하여 메모리에 저장한다. 따라서, 장치(40)는 그의 이웃하는 노드들에 대한 주파수 호핑 데이터를 알고 있으며, 그 역도 마찬가지이다. 장치(40)는 따라서 그의 이웃하는 노드들 전 부의 현재 주파수 채널, 웨이크-업 시간, 및 듀티 사이클을 추적할 수 있으며, 이웃하는 노드들은 장치(40)에 대해 동일한 것을 할 수 있다.
리스닝 모드 동안에, 다수의 이웃하는 노드들이 주파수 호핑 데이터를 장치(40)로 전송하려고 시도할 수 있다. 예를 들어, 제1, 제2, 제3, 기타 이웃들 전부는 그의 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 장치(40)로 전송하려고 시도할 수 있다. 모든 장치가 동시에 전송하려고 시도하는 경우, 이 결과 데이터 충돌이 일어날 수 있으며, 요구되는 데이터가 장치(40)에 도달하지 않을 수 있다. 따라서, 장치(40)의 리스닝 모드는 수많은 노드들이 그의 데이터를 서로 다른 때에 전송할 수 있도록 충분히 길게 구성되어 있다. 예를 들어, 리스닝 모드는 100ms, 500ms 또는 더 길 수 있다.
한 구현에서, 네트워크(10)의 노드들 각각은 장치(40)의 리스닝 모드 동안에 랜덤한 시간에 그의 주파수 호핑 데이터를 전송하도록 프로그램되어 있다. 예를 들어, 각각의 이웃하는 노드는 그의 주파수 호핑 데이터를 전송하기 위해 리스닝 모드 동안에 랜덤한 시간을 선택하는 알고리즘을 포함할 수 있다. 랜덤한 시간에 데이터를 전송하는 것은 서로 다른 노드로부터의 주파수 호핑 데이터 간의 충돌 가능성을 감소시킨다. 충돌의 경우에, 노드는 장치(40)로부터 다시 ack 데이터를 수신하지 않는다. 이 경우에, 노드는 그의 주파수 호핑 데이터를 서로 다른 때에 재전송한다. 장치(40)가 리스닝 모드 동안에 주파수 호핑하고 있는 경우, 그의 이웃하는 노드들은 그의 주파수 호핑 데이터를 전송할 때 이것도 고려해야만 한다. 이러한 사태가 도 7에 도시되어 있으며, 여기서 노드(42)는 제1 시간(64)에 채널 6으로 그의 주파수 호핑 데이터를 전송하고, 노드(43)는 제2 시간(65)에 채널 1로 그의 주파수 호핑 데이터를 전송한다.
유의할 점은 모든 노드가 동일한 호핑 시퀀스, 웨이크-업 시간 및/또는 듀티 사이클을 사용하는 경우, 모든 주파수 호핑 데이터가 노드들 간에 전송될 필요가 없다는 것이다. 예를 들어, 네트워크 상의 모든 노드들이 동일한 듀티 사이클을 갖는 경우(또한 모든 노드 또는 잠재적인 노드가 이것을 알고 있는 경우), 노드들 간에 듀티 사이클 데이터를 전송할 필요가 없다.
장치(40)와 그의 이웃들 간에 교환되는 정보의 양을 감소시키기 위해, 장치(40) 및 그의 이웃하는 노드들 각각은 단일의 "씨드" 번호를 수신하고 그 씨드 번호를 처리하여 주파수 호핑 시퀀스를 발생하는 알고리즘을 저장할 수 있다. 예를 들어, 장치(40)는 이웃하는 노드(42)로부터 씨드 번호를 수신하고 그 씨드 번호를 처리하여 노드(42)가 데이터를 수신하기 위해 호핑하는 주파수들의 시퀀스를 결정할 수 있다. 그 결과, 전체 시퀀스 대신에 단일의 번호만이 전송되고, 그에 의해 네트워크 트래픽을 감소시킨다.
이 점에서, 평균적으로 장치가 각각의 채널 상에서 거의 동일한 시간을 소비하도록 주파수 호핑 채널이 지정된 일련의 채널들로부터 균일한 분포로 가능한 한 랜덤하게 선택되어야만 한다. 각각의 반복으로부터 새로운 난수를 생성하기 위해 계산이 반복적으로 수행될 수 있다. 씨드 번호는 제1 주파수 채널에 대응하는 제1 난수를 발생한다. 이 제1 난수는 새로운 씨드 번호로서 계산에 피드되고, 이는 이어서 제2 주파수 채널에 대응하는 제2 난수를 발생한다. 이 프로세스는 주파수 호 핑 동안에 새로운 채널을 계속 무한히 선택할 수 있다. 한 구현에서, 이 계산은 이진 표현으로 32-비트 길이인 난수를 발생하는 데 사용된다. 이 구현에서, 1과 16 사이의 단일의 수가 발생되고, 이 32-비트 난수 중 마지막 4 비트만이 사용된다. (십진 표현에서, 32-비트 길이의 수는 16으로 나누어질 수 있고 나머지가 사용될 수 있다 - 모듈러스(modulus) 연산.) 랜덤 시퀀스(random sequence)가 주기적으로 될 가능성이 더 적어지도록, 32-비트 길이 난수가 매 반복마다 새로운 씨드 번호 I로서 사용된다.
씨드 번호에 기초하여 난수의 시퀀스를 생성하기 위해 수많은 프로세스가 사용될 수 있다. 이하의 코드는 씨드 번호로부터 시퀀스를 발생하는 Kernighan 및 Ritchie의 저서 "The C Programming Language"로부터의 예이다.
int rand()
{
random_seed = random_seed * 1103515245 + 12345;
return (unsigned int) (random_seed / 65536) % 32768;
}
이 함수는 씨드 번호에 따라 0과 32767 사이의 난수를 반환한다. 채널의 총수가 16인 경우, 0과 15 사이의 난수를 발생하기 위해 최하위 4 비트를 사용할 수 있다. 상기한 바와 같이, 씨드 번호로부터 획득한 제1 난수는 이전의 프로세스에서의 씨드 번호를 대체할 수 있으며, 이 제1 난수는 이어서 그 다음 난수를 발생하는 데 사용된다. 이 방법을 통해, 하나의 씨드 번호를 사용하여 16개 채널의 전체 주 파수 호핑 시퀀스를 발생할 수 있다.
다수의 노드가 정확히 동시에 전원이 켜지는 상황이 있을 수 있다. 예를 들어, 노드들이 회선-전원 공급되고(line-powered), 정전 이후에 회선 전원(line power)이 복구되는 경우, 동일한 회선 전원에 연결되어 있는 모든 노드들이 동시에 켜지게 된다. 이 경우, 모든 노드에 대해 웨이크-업 시간 및 주파수 채널이 정확히 동일하게 될 가능성이 있다. 이 시나리오가 어떤 응용에 타당할 수 있지만, 이것은 일반적으로 바람직하지 않은데, 그 이유는 제안된 주파수 호핑 프로토콜의 비동기적 거동을 방해하여 네트워크의 전체적인 통신 용량을 증가시키기 때문이다. 따라서, 노드의 전원이 켜질 때마다, 노드는 동작(running)을 시작하기 이전에 어떤 랜덤한 "데드 타임(dead time)"을 가질 수 있다. 이와 같이, 많은 노드들이 동일한 웨이크-업 스케쥴 및 주파수 채널을 공유할 가능성이 없다.
주파수 호핑 동안에 모든 이웃하는 노드들이 서로 다른 타이밍 슬롯을 차지하면 유리하다. 예를 들어, 이웃하는 노드들의 다수의 리스닝 슬롯(listening slot)이 가까이 있을 때 주파수 호핑이 더 어려워질 수 있다. 이러한 이유는 패킷을 한 노드로 전송하는 데 어떤 사전-처리(pre-processing) 시간 및 사후-처리(post-processing) 시간이 필요할 수 있기 때문이다. 예를 들어, 노드 A의 웨이크-업 스케쥴이 노드 B의 스케쥴에 너무 가까운 경우, 이웃하는 노드가 데이터 패킷을 노드 A 및 B 둘다로 전송하는 데 어려움을 겪을 수 있다. 이웃하는 노드(예를 들어, 노드 C)가 데이터 패킷을 노드 A로 전송한 후에, 이웃하는 노드는 전송을 완료하고 노드 B로 전송할 그 다음 데이터 패킷을 준비할 처리 시간을 필요로 할 수 있다. 노드 A 및 노드 B의 리스닝 슬롯이 시간 상으로 너무 가까운 경우, 노드 C는 노드 B로의 데이터 전송을 준비할 충분한 시간을 가질 수 없다. 게다가, 2개의 리스닝 슬롯이 서로 너무 가까운 경우, 노드 C가 그의 휴면 상태 모드에 들어간 다음에 슬롯들 사이에서 짧은 시간 후에 다시 웨이크업하는 것이 적절하지 않을 수 있다. 이 경우에, 노드 C가 데이터 패킷을 노드 A로 전송한 후에 어웨이크된 채로 있고 어웨이크되어 있는 동안에 노드 B의 리스닝 슬롯을 기다리는 것이 더 나을 수 있다.
다수의 이웃하는 노드들의 리스닝 슬롯들이 아주 근접해 있는 것으로 인해 야기되는 충돌을 감소시키는 한가지 방법은 그 노드들의 활성화(전원 켜짐) 이후에 그 노드들의 초기 웨이크-업 스케쥴을 조정하는 것이다. 예를 들어, 노드의 전원이 켜질 때, 그 노드는 검색 패킷을 전송하고 웨이크-업 시간, 웨이크-업 지속기간, 및 채널 시퀀스 등의 그의 이웃하는 노드들에 관한 정보를 수집한다. 그에 따라, 네트워크에 들어가고 있는 노드는 이웃하는 노드들로부터 정보를 수집한 후에 그 자신의 웨이크-업 시간을 선택하고 이웃하는 노드들과의 충돌을 감소(예를 들어, 최소화)시키는 웨이크-업 시간을 선택할 수 있다.
장치가 그의 프리앰블의 길이로 인해 비교적 많은 양의 전력을 소비할 수 있다. 그 결과, 장치가 프리앰블을 사용하여 통신을 개시해야만 하는 횟수를 감소시키는 것이 유리하다. 이것을 하는 한가지 방법은 노드 주파수 호핑(및 기타) 데이터를 "피기백(piggy-back)"하는 것이다. 도 2를 참조하면, 노드(42)는 노드(28) 등의 장치(40)의 전송 범위 밖에 있는 이웃들을 비롯한 그의 이웃들에 대한 주파수 호핑 데이터를 저장한다. 그에 따라, 장치(40)의 리스닝 모드 동안에 그의 주파수 호핑 데이터를 전송할 때, 노드(42)는, 노드(28)의 ID와 함께, 노드(28)의 주파수 호핑 데이터도 장치(40)로 전송할 수 있다(이어서 장치(40)는 이들을 메모리에 저장한다). 따라서, 장치(40)는 노드(28)의 주파수 호핑 데이터도 수신한다. 이것은 장치(40) 또는 노드(28)가 서로의 전송 범위 내에 들어올 수 있는 경우에(예를 들어, 하나 또는 둘다가 모바일인 경우) 특히 유리하다. 이 개념은 확장될 수 있다. 예를 들어, 노드(28)는 노드(26) 등의 노드(42)의 전송 범위 밖에 있는 이웃들을 비롯한 그의 이웃들에 대한 주파수 호핑 데이터를 저장한다. 노드(28)는, 그 자신의 주파수 호핑 데이터와 함께, 이 주파수 호핑 데이터를 노드(42)로 전송할 수 있다. 노드(42)는 이어서 2개의 다른 노드(이들 중 하나(노드(26))는 노드(42)의 전송 범위 밖에 있음)의 주파수 호핑 데이터를 장치(40)로 전송할 수 있다.
프리앰블의 사용은 (예를 들어, 노드의 웨이크 지속기간(waking duration)을 증가시킴으로써) 네트워크 노드의 듀티 사이클을 증가시키기 위해 정상 노드 통신으로 확장될 수 있다. 도 1 및 도 8을 참조하면, 수신측 노드(예를 들어, 노드(15))가 비교적 짧은 웨이크 지속기간을 갖는 경우, 전송측 노드(예를 들어, 노드(12))가 그의 전송을 그 짧은 웨이크 지속기간에 일치시키는 것이 어려울 수 있다. 예를 들어, 전송측 노드의 내부 클럭에서의 비교적 짧은 시간 천이는 (수신측 노드의 웨이크 지속기간이 충분히 짧은 경우) 전송측 노드가 수신측 노드와 통신하는 것을 효과적으로 방지할 수 있다. 이 문제를 해결하기 위해, 전송측 노드는 수신측 노드의 예상된 웨이크 지속기간에 앞서 적절한 채널로 비교적 짧은 프리앰블 (예를 들어, 5ms 또는 10ms)을 출력할 수 있다.
도 8에 도시된 예에서, 전송측 노드는 채널 10에서의 수신기의 웨이크 시간(waking time) 이후에 채널 6으로 프리앰블(70)을 출력한다. 수신측 노드는 채널 6에서 그의 수신 지속기간 동안에 프리앰블을 검출하고, 도시된 바와 같이, 그의 수신 지속기간(71)을 연장한다. 이 연장된 수신 지속기간 동안에, 전송측 노드(12)는 채널(Ch) 6에서 수신측 노드로 데이터 패킷(72)을 전송한다. 수신측 노드가 데이터 패킷에서 "프레임 끝(end-of-frame)" 표시를 검출할 때, 수신측 노드는 68a에서 연장된 수신 지속기간(71)을 끝낸다. 그 후에, 전송측 노드는 수신 모드(74)로 들어가 수신측 장치로부터 ack 패킷(75)을 수신한다. 그렇지만, 유의할 점은 그 시퀀스가 결코 중단되지 않은 것처럼 장치가 (연장된 수신 지속기간 이후에) 그의 주파수 호핑 시퀀스(76)를 재개할 수 있도록 양 장치의 내부 채널 호핑 클록이 계속 동작하고 있다는 것이다.
도 8에 도시된 타이밍의 대안은 전체 데이터 패킷을 수신측 장치의 단일의 MN_sleep_time에 들어맞도록 하는 것이다. 따라서, 프리앰블은 MN_RX_time에 걸치도록 충분히 길다. 따라서, 주파수 호핑 시퀀스가 방해될 필요가 없다.
상기한 바와 같이, 900 MHz 무선 동작에서, FCC는 협대역 무선기(narrow-band radio)에서 단일 채널에서의 통신을 400ms로 제한하고 있다. DSSS(Direct Sequence Spread Spectrum)이 사용되는 경우, 단일 채널에서의 연속적인 통신의 지속기간에 제한이 없다. 그렇지만, 이 성능을 갖는 900MHz 상용 무선기가 거의 없다. 이와 반대로, 2.4GHz 동작에서는, DSSS 성능을 갖는 많은 표준-기반의 무선기 (예를 들어, IEEE802.15.4)가 이용가능하다. 따라서, 900MHz 동작 동안에 프리앰블이 400ms보다 길어야 하는 경우, 프리앰블은 다수의 주파수로 전송될 수 있다. 이것을 본 명세서에서 "채널 그룹화(channel grouping)"라고 한다.
상기한 바와 같이, 다중-채널 협대역(예를 들어, 900MHz) 무선기가 FHSS(Frequency Hopping Spread Spectrum, 주파수 호핑 확산 스펙트럼)를 사용하여 400ms보다 길게 하나의 주파수 채널에 머무르는 것을 금지하는 FCC 규정이 있다. 그에 따라, 이 제한된 상황에서, 프리앰블이 400ms 이상 동안 하나의 채널에 머무르는 것이 적법하지 않다. 이 문제를 처리하기 위해, 400ms보다 긴 프리앰블이 다수의 섹션으로 분할되어 900MHz 스펙트럼 내의 서로 다른 주파수 채널로 전송될 수 있다. 예를 들어, 1.5s 프리앰블은 4개의(또는 그 이상의) 세그먼트(길이가 동일하거나 동일하지 않을 수 있음)로 분할될 수 있다. 프리앰블의 한 세그먼트가 제1 주파수 채널에서 전송을 완료할 때, 프리앰블을 전송하는 노드는 주파수 채널을 바꾸고 새로운 주파수 채널에서 프리앰블의 전송을 계속한다. 이것은 FCC 규정을 위반하지 않고 전체 1.5s 프리앰블이 전송될 때까지 행해진다.
이상에서 설명한 이유들로 인해, 프리앰블이 다수의 채널로 전송되고 있더라도, 각각의 이웃하는 노드의 적어도 하나의 리스닝 슬롯이 프리앰블에 의해 커버되어야만 한다. 이것을 달성하기 위해, "채널 그룹화"라고 하는 프로세스가 사용될 수 있다.
예로서, 각각의 채널이 단지 400ms의 프리앰블을 포함하도록 프리앰블이 N개의 서로 다른 채널로 전송될 수 있다. 이 경우에, 기존의 주파수 채널이 N개의 그 룹으로 분할될 수 있다. 예를 들어, 프리앰블이 1.4s인 경우, 그 프리앰블은 4개의 세그먼트로 분할될 수 있다. 이 경우에, N = 4이다. 16개의 채널이 이용가능한 경우, 채널들은 그룹당 4개의 채널을 갖는 4개의 그룹으로 분할될 수 있다. 다른 예에서, 프리앰블이 700ms인 경우, 프리앰블은 2개의 세그먼트로 분할될 수 있고 그룹당 2개의 채널이 있을 수 있다(8개의 채널이 이용가능하다고 가정함).
노드가 통신이 있는지 리스닝하기 위해 주파수 채널들을 호핑하고 있는 동안에, 노드의 채널 시퀀스는 그룹 순서를 따른다. 환언하면, 노드가 제1 그룹(그룹 1)에 있는 채널에서 호핑을 시작하면, 그 다음 호핑 채널은 그룹 1의 채널이 다 사용될 때까지 동일한 그룹 1에서 선택될 수 있다. 노드가 그룹 1 내의 모든 채널을 거쳐 호핑한 후에, 노드는 제2 그룹(그룹 2) 내의 채널들 간을 호핑하기 시작하며, 이하 마찬가지이다. 예를 들어, 그룹 1은 채널 1 내지 채널 10을 포함할 수 있으며, 그룹 2는 채널 11 내지 채널 20을 포함할 수 있다. 이 경우에, 이 시퀀스는 채널 1 내지 채널 10이 먼저 선택되고 이어서 채널 11 내지 채널 20이 선택되도록 정의되어야만 한다.
그렇지만, 프리앰블은 하나의 그룹 내에서만 호핑을 한다. 예를 들어, 프리앰블을 전송하는 노드가 그룹 2를 선택하는 경우, 프리앰블은 그룹 2 내에서만(예를 들어, 채널 11 내지 20 사이에서만) 호핑을 해야 한다. 프리앰블이 N개의 세그먼트를 포함하기 때문에, 각각의 그룹은 적어도 N개의 채널을 포함해야만 한다. 이것은 이용가능한 RF 채널의 총수가 NxN보다 커야만 한다는 것을 의미한다. 이러한 이유는 N개의 세그먼트를 갖는 프리앰블이 N개의 채널 그룹을 필요로 하고 각각의 그룹이 최소 N개의 채널을 포함할 필요가 있기 때문이다.
이상의 프로세스를 사용하면, 프리앰블이, 비록 다수의 채널로 전송되지만, 이웃하는 노드의 적어도 하나의 리스닝 채널에 의해 포착될 가능성이 많다. 그렇지만, 하나 이상의 이웃하는 노드가 프리앰블을 놓쳐버릴 가능성이 무시할 수 없을 정도이다(대략 (N-1)/총 채널 수). 하지만, 이웃하는 노드가 프리앰블을 포착하지 못할 확률은 채널의 총수가 증가함에 따라 감소한다. 예를 들어, 프리앰블이 적어도 1.5s인 경우, 프리앰블은 각각의 채널이 단지 400ms만 점유되도록 적어도 4개의 채널(N=4)을 통해 호핑하게 된다. 따라서, 이용가능한 채널의 총수가 16(NxN = 4x4 = 16)보다 크거나 같아야만 한다. 물론, 이것은 각각의 채널이 협대역(예를 들어, 900MHz) 채널일 때에만 적용될 수 있다. IEEE802.15.4 표준-기반의 무선기 등의 2.4GHz DSSS 무선기의 경우, 채널 그룹화가 필요하지 않지만 채널 그룹화도 사용될 수는 있다.
주파수 호핑 프로토콜의 한 예시적인 구현은 Chipcon Products의 CC2420 송수신기를 사용한다. Chipcon Products 웹 사이트에 기술된 바와 같이, "CC2420은 2.4GHz 비인가 ISM 대역에서 저전력, 저전압 RF 응용에 맞게 특별히 설계된 저렴한 송수신기이다." 이 예에서, 전체 패킷(단지 1 바이트는 아님)은 프리앰블의 단위를 구성한다. 이 경우에, 각각의 프리앰블 단위는 대략 1ms이다. 그에 따라, MN_RX_time는 프리앰블 단위 크기의 대략 2배, 즉 2ms이다. 100배 전력 절감을 달성하기 위해, MN_sleep_time은 대략 200ms이어야만 한다. CC2420은 16개의 채널을 제공한다. 16개 채널 전부를 포괄할 수 있는 최소 프리앰블 길이는 3.2s(200ms * 16 채널)이다. CC2420이 DSSS 기능을 사용하여 2.4GHz 범위에서 동작하기 때문에, CC2420가 한 채널에 머무를 수 있는 최대 시간에 대한 제한이 없다. 따라서, 프리앰블은 임의의 시간 길이 동안 동일한 채널에 머무를 수 있다. 다른 대안으로서, 프리앰블은 2개 또는 4개의 채널 간에 분할될 수 있다. 즉, 프리앰블은 서로 다른 주파수 채널로 전송될 수 있다.
통상의 패킷 전송에 있어서, 하나의 알려진 패킷 목적지가 있는 경우, 시간 동기화가 충분히 정확하다면(~1ms의 정확도), 데이터 패킷의 시작이 수신측 장치의 MN_RX_time(~2ms) 윈도우 내에 들어맞을 수 있다. MN_RX_time이 만료되기 이전에 수신측 장치에 의해 SFD가 검출되고, 패킷 수신이 완료될 때까지 MN_RX_time이 연장된다. 시간 동기화가 덜 정확하거나 SFD가 무선기로부터 이용가능하지 않은 경우, 몇개의 짧은 프리앰블 패킷(예를 들어, IEEE802.15.4 패킷)이 실제 데이터 패킷보다 앞에 올 수 있다. 이러한 짧은 프리앰블 패킷의 스트림은 5개 내지 10개의 짧은 IEEE802.15.4 패킷(~1ms/패킷)을 포함할 수 있다. 그 결과가 약 10ms의 프리앰블이며, 이에 의해, ±5ms 클록 드리프트가 있더라도, 2ms MN_RX_time 윈도우가 적어도 하나의 프리앰블을 포착할 수 있게 된다. 수신기가 MN_RX_time 윈도우에서 프리앰블 패킷(들)을 식별하면, 수신기는 실제(즉, 비프리앰블) 데이터 패킷을 수신하기 위해 (상기한 바와 같이) 동일한 주파수 채널로 계속 리스닝한다. 이 예에서, ack 패킷은 정규의 패킷 전송 이후에 그 다음 홉 채널 상으로 전송된다. 다른 대안으로서, ack 패킷은 동일한 채널 상으로 정규의 데이터 패킷 전송으로서 전송될 수 있다.
패킷 교환들 간의 간격이 너무 길어지는 경우 클록 드리프트가 문제될 수 있다. 클록 드리프트를 완화시키기 위해, 무선 네트워크의 각각의 노드는 주어진 구간에서 로컬 "박동 패킷(heartbeat packet)"을 그의 부모 노드들(1차, 2차, 기타 등등) 각각으로 전송한다. 예를 들어, 드리프트를 타당한 범위 내에 유지하기 위해 이웃하는 노드들의 클록이 매 40초마다 조정되어야만 하는 경우, 적어도 매 40초마다 로컬 박동이 발생되어 각각의 부모 노드로 전송될 수 있다. 데이터 패킷이 부모 노드로 송출되는 경우, 그 데이터 패킷이 로컬 박동 패킷에 대한 대체물로서 기능할 수 있다.
장치가 네트워크에 들어갈 때 또 장치가 네트워크를 통해 브로드캐스트할 때, 주파수 호핑 프로토콜이 사용될 수 있다. 즉, 브로드캐스트 동안에, 장치는 그의 이웃들 전부의 주목을 받을 필요가 있다. 이웃들이 서로 다른 주파수에 있을 수 있기 때문에, 프리앰블을 전송하고 상기한 방식으로 처리하는 것에 의해 장치가 그의 이웃들에게 정보를 브로드캐스트할 수 있으며, 그 이웃들은 이어서 주파수 호핑 프로토콜을 사용하여 그 정보를 그의 이웃들에게 전파할 수 있고, 네트워크 상의 모든 노드가 정보를 수신할 때까지 이하 마찬가지이다.
네트워크 장치
무선 네트워크(10)의 노드로서 사용될 수 있고 또 본 명세서에 기술된 프로세스를 구현할 수 있는 네트워크 장치의 일례가 2004년 10월 12일자로 특허된 미국 특허 제6,804,790호에 기술되어 있으며, 이는 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함된다. 도 9a 내지 도 9c는 본 명세서에 기술된 프로세스들을 구현 할 수 있는 네트워크 장치(80)의 일례의 블록도를 나타낸 것이다.
네트워크 장치(80)는 완비된 소형 컴퓨터(self-contained, miniaturized computer)이다. 도 9a 및 도 9b에 도시한 바와 같이, 네트워크 장치(80)는 제1 처리 장치(82), RF 송수신기(84), 제2 처리 장치(86), 저클록 주파수 수정(low clock frequency crystal)(88), 고클록 주파수 수정(high clock frequency crystal)(90), 및 I/O 커넥터(92)를 포함하며, 이들 모두는 회로 기판(94) 상에 탑재되어 있다. 도 9c에 도시되어 있는 바와 같이, 배터리 등의 전원(96)이 회로 기판(94)의 배면에 부착되어 있을 수 있다. 각각의 처리 장치에 의해 실행될 명령어를 포함하는 메모리가 각각의 처리 장치 내부에 포함될 수 있거나, 하나 이상의 이러한 메모리(도시 생략)가 회로 기판(94) 상에 탑재될 수 있다.
네트워크 장치(80)의 작은 크기 및 저전력 소모는 네트워크 장치(80)가 배터리(90)로 동작할 수 있게 해준다. 이 구현에서, 제1 처리 장치(82)는 32kHz의 클록 주파수로 동작하고, 제2 처리 장치(86)는 4MHz의 클록 주파수로 동작한다. 네트워크 장치(80)가 향상된 전력 효율로 신호 처리 및 RF 전송을 수행할 수 있도록 조정 프로토콜(coordinating protocol)이 동작한다.
조정 프로토콜은 주어진 기능 작업을 수행하는 데 요구되는 속도에 기초하여 처리 장치에 작업 및 동작을 할당함으로써 네트워크 장치(80)의 동작을 제어하는 데 사용된다. 조정 프로토콜은 다양한 처리 장치에 작업을 할당하도록 설계되어 있으며, 그 결과 네트워크 장치(12) 상에서의 전력 효율이 향상된다. 예를 들어, 조정 프로토콜은 처리 장치의 클록 주파수 및 작업 또는 동작의 속도 요건에 기초하 여 CPU(82)가 주어진 작업 또는 동작(무선 네트워크(10)에 가입하는 것 또는 그 네트워크 내에 존재를 확립하는 것 등)을 그 자신에 또는 CPU(86)에 할당할 수 있게 해준다. 낮은 클록 주파수를 필요로 하는 작업 및 동작은 낮은 클록 주파수를 갖는 CPU(86)에 할당된다. CPU(86)가 낮은 클록 주파수에서 동작하기 때문에, 전체로서의 시스템의 전력 효율이 향상된다. 시스템의 작업 부하가 충분히 낮을 때, 시스템의 전력 효율을 더욱 향상시키기 위해 CPU가 정지되거나 저전력 모드에 들어갈 수 있다.
기타 구현들
주파수 호핑 프로토콜(이에 한정되지 않음)을 비롯하여 본 명세서에 기술된 프로세스(이후부터 총칭하여 "프로세스"라고 함)는 임의의 컴퓨팅 또는 처리 환경에서 응용 분야를 찾을 수 있다. 이 프로세스는 하드웨어, 소프트웨어 또는 이들의 조합을 사용하여 구현될 수 있다. 이 프로세스는 본 명세서에 기술된 하드웨어 및 소프트웨어에서의 사용으로 한정되지 않으며, 임의의 컴퓨팅, 처리 또는 네트워킹 환경에서 및 기계-판독가능 명령어를 실행할 수 있는 임의의 유형의 기계에서 응용 분야를 찾을 수 있다.
이 프로세스는 디지털 전자 회로를 사용하여 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다. 이 프로세스는 컴퓨터 프로그램 제품, 즉 정보 캐리어에, 예를 들어, 하나 이상의 기계-판독가능 저장 장치/매체에 또는 전파된 신호에 유형으로 구현된 컴퓨터 프로그램(하나 이상의 처리 장치, 예를 들어, 프로그램가능 프로세서, 컴퓨터 또는 다중 컴퓨터에 의해 실행되거 나 그의 동작을 제어함)을 통해 구현될 수 있다. 컴퓨터 프로그램은, 컴파일된 또는 인터프리트된 언어를 비롯한, 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 컴퓨팅 환경에서 사용하기에 적합한 독립형 프로그램, 또는 모듈, 컴포넌트, 서브루틴 또는 기타 유닛을 비롯한 임의의 형태로 배포될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에서 또는 한 곳에 있거나 다수의 장소에 걸쳐 분산되어 통신 네트워크에 의해 상호 연결되어 있는 다수의 컴퓨터 상에서 실행되도록 설치될 수 있다.
이 프로세스에 의해 수행되는 동작들은 이 프로세스의 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램가능한 프로세서에 의해 수행될 수 있다. 특수 목적의 논리 회로, 예를 들어, 하나 이상의 FPGA(field programmable gate array) 또는 ASIC(application-specific integrated circuit)에 의해 이들 동작이 수행될 수 있고 그를 통해 이 프로세스가 구현될 수 있다.
컴퓨터 프로그램을 실행하기에 적합한 프로세서는, 예를 들어, 범용 및 특수 목적의 마이크로프로세서 둘다, 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘다로부터 명령어 및 데이터를 수신한다. 컴퓨터의 구성요소들은 명령어를 실행하는 프로세서 및 명령어 및 데이터를 저장하는 하나 이상의 메모리 장치를 포함한다. 일반적으로, 컴퓨터는 또한 데이터를 저장하는 하나 이상의 대용량 저장 장치, 예를 들어, 자기, 자기-광 디스크, 또는 광 디스크를 포함하거 나, 또는 이들 저장 장치로부터 데이터를 수신하거나 그에게로 데이터를 전송하도록 연결되어 동작한다. 컴퓨터 프로그램 명령어 및 데이터를 구현하기에 적합한 정보 캐리어는, 예로서, 반도체 메모리 장치, 예를 들어, EPROM, EEPROM, 및 플래쉬 메모리 장치, 자기 디스크, 예를 들어, 내장형 하드 디스크 또는 이동식 디스크, 자기-광 디스크, 및 CD-ROM 및 DVD-ROM 디스크를 비롯한, 모든 형태의 비휘발성 메모리를 포함한다. 프로세서 및 메모리는 특수 목적의 논리 회로에 의해 보조되거나 그 안에 포함될 수 있다.
이 프로세스는 하나 이상의 백엔드 컴포넌트(back-end component), 예를 들어, 데이터 서버를 포함하거나 하나 이상의 미들웨어 컴포넌트(middleware component), 예를 들어, 애플리케이션 서버를 포함하거나, 또는 하나 이상의 프론트-엔드 컴포넌트(front-end component), 예를 들어, 클라이언트 컴퓨터를 포함하는 컴퓨팅 시스템을 통해 구현될 수 있다. 시스템의 컴포넌트들은 임의의 디지털 데이터 통신 형태 또는 매체, 예를 들어, 통신 네트워크에 의해 상호연결될 수 있다. 통신 네트워크의 예들은 근거리 통신망(LAN) 및 원거리 통신망(WAN), 예를 들어, 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로로부터 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는 각자의 컴퓨터 상에서 실행되고 서로에 대해 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 생긴다.
이 프로세스는 기술된 구현들에 제한되지 않는다. 예를 들어, 이 프로세스는 도 9a 내지 도 9c에 도시된 것들 이외의 네트워크 장치에서 사용될 수 있다. 임의의 컴퓨터, 라우터, 서버, 무선 장치, 또는 유사한 기계가 이 프로세스를 구현할 수 있다. 이 프로세스는 동질적인 네트워크에서도 사용될 수 있다. 이 프로세스는, 유선 부분 및 무선 부분 둘다를 갖는 네트워크를 비롯한, 도 1 및 도 2에 도시된 것들 이외의 구성들을 갖는 네트워크에서 사용될 수 있다. 이 프로세스는 본 명세서에 기술된 프로토콜 및 데이터 전송 방법에서의 사용으로 한정되지 않으며 오히려 어디에나 적용가능하다.
본 명세서에 기술된 프로세싱은 다른 순서로 수행될 수 있고 및/또는 그의 일부분이 생략될 수 있다. 그 자체로서, 프로세스의 진행을 위해 수행되는 동작들이 본 명세서에 기술된 흐름에 한정되지 않는다.
다른 구현의 요소들이 이상에서 구체적으로 기술되지 않은 다른 구현을 형성하기 위해 결합될 수 있다. 본 명세서에 구체적으로 기술되지 않은 다른 구현들도 이하의 청구항의 범위 내에 속한다.

Claims (20)

  1. 제1 장치에 의해 수행되는, 미리 정의된 활성화 시간 동안 활성이고 활성이 아닐 때 적어도 부분적으로 휴면 상태에 있는 노드들로 이루어진 무선 네트워크와 통신을 하는 방법으로서,
    상기 무선 네트워크 상의 노드들의 최대 활성화 시간을 인자 N(단, N은 적어도 상기 무선 네트워크 상의 주파수들의 최대수와 같음)만큼 초과하는 메시지를 통해 통신의 시작을 식별하는 단계와;
    상기 제1 장치의 전송 범위 내에 있는 상기 무선 네트워크 상의 노드를 포함하는 제2 장치와 정보를 교환하는 단계 - 상기 정보는 상기 메시지 이후에 교환되고 상기 제2 장치에 대한 주파수 호핑 데이터를 포함함 -
    를 포함하는 무선 네트워크와의 통신 방법.
  2. 제1항에 있어서, 상기 메시지 이후에 교환되는 상기 정보는 상기 제1 장치에 대한 주파수 호핑 데이터를 포함하는 것인, 무선 네트워크와의 통신 방법.
  3. 제1항에 있어서, 상기 정보는 다수의 주파수를 거쳐 교환되며, 상기 메시지 이후에 상기 제1 장치가 이들 주파수를 통해 호핑하고, 상기 다수의 주파수는 상기 메시지 이후에 있는 것인, 무선 네트워크와의 통신 방법.
  4. 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법으로서,
    상기 무선 네트워크로 프리앰블을 출력하는 단계 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 - 와;
    상기 프리앰블에 뒤따라오는 상기 제1 장치의 하나 이상의 리스닝 주파수를 식별하는 단계 - 상기 하나 이상의 리스닝 주파수는 상기 제1 장치가 활성화되는 하나 이상의 주파수 대역을 포함함 - 와;
    상기 무선 네트워크 내의 제2 장치로부터 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 수신하는 단계 - 상기 시퀀스 데이터는 상기 제2 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하고, 상기 웨이크-업 데이터는 상기 제2 장치가 활성화되는 시간에 대응하며, 상기 듀티 사이클 데이터는 상기 제2 장치가 활성화되는 시간의 지속기간에 기초함 - 와;
    상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 저장하는 단계
    를 포함하는 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  5. 제4항에 있어서, 검색 패킷을 상기 제2 장치로 출력하는 단계 - 상기 검색 패킷은 상기 프리앰블 이후에 상기 제2 장치로부터 상기 시퀀스 데이터, 상기 웨이 크-업 데이터 및 상기 듀티 사이클 데이터를 수신하기 이전에 출력되고, 상기 검색 패킷은 상기 제1 장치를 식별하고 상기 제1 장치에 대한 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 포함함 -, 를 더 포함하는, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  6. 제4항에 있어서, 상기 무선 네트워크는 상기 제2 장치를 포함하는 N(N>2)개의 장치를 포함하며,
    상기 N개의 장치 각각은 일련의 M(M>1)개의 주파수 내의 주파수에서 활성화하도록 구성되어 있고,
    상기 N개의 장치는 시간 구간 동안 활성화되며,
    상기 N개의 장치 중 하나는 T의 최대 활성화 시간 구간을 가지고,
    상기 프리앰블은 적어도 M*T의 곱인 시간 지속기간을 갖는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  7. 제4항에 있어서, 상기 하나 이상의 리스닝 주파수는 단일의 리스닝 주파수를 포함하며,
    상기 단일의 리스닝 주파수는 상기 프리앰블이 출력되는 동일한 주파수인 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  8. 제4항에 있어서, 상기 하나 이상의 리스닝 주파수는 다수의 리스닝 주파수를 포함하고,
    상기 검색 패킷은 상기 다수의 리스닝 주파수에 대한 시퀀스 데이터 및 듀티 사이클 데이터를 식별해주는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  9. 제4항에 있어서, 상기 시퀀스 데이터는 단일의 숫자를 포함하며,
    상기 제1 장치는 미리 정의된 알고리즘을 사용하여 상기 단일의 숫자를 처리함으로써 상기 제2 장치가 활성화되는 일련의 주파수들을 발생하는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  10. 제4항에 있어서, 상기 시퀀스 데이터는 제1 시퀀스 데이터이고,
    상기 웨이크-업 데이터는 제1 웨이크-업 데이터이며,
    상기 듀티 사이클 데이터는 제1 듀티 사이클 데이터이고,
    상기 방법은,
    제2 시퀀스 데이터, 제2 웨이크-업 데이터, 및 제2 듀티 사이클 데이터를 상기 무선 네트워크 내의 제3 장치로부터 수신하는 단계 - 상기 제2 시퀀스 데이터는 상기 제3 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하고, 상기 제2 웨이크-업 데이터는 상기 제3 장치가 활성화되는 시간들에 대응하며, 상기 제2 듀티 사이클 데이터는 상기 제3 장치가 활성화되는 시간의 지속기간에 기초함 - 를 더 포함하며,
    상기 제1 시퀀스 데이터, 상기 제1 웨이크-업 데이터, 및 상기 제1 듀티 사이클 데이터는 상기 프리앰블에 뒤이어서 동일한 리스닝 주파수로, 그렇지만 상기 제2 시퀀스 데이터, 상기 제2 웨이크-업 데이터 및 상기 제2 듀티 사이클 데이터와 다른 시간에 수신되는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  11. 제4항에 있어서, 상기 무선 네트워크 내의 제3 장치에 대한 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 상기 제2 장치로부터 상기 하나 이상의 리스닝 주파수로 수신하는 단계를 더 포함하고, 상기 제3 장치는 상기 제1 장치의 무선 전송 범위 내에 있지 않은 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  12. 제4항에 있어서, 상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 사용하여 상기 제2 장치로 통신을 전송하는 단계를 더 포함하며,
    상기 통신을 전송하는 단계는,
    제2 프리앰블을 전송하는 단계 - 상기 제2 프리앰블은 상기 시퀀스 데이터에 지정된 주파수로, 대략 상기 웨이크-업 데이터에 지정된 시간에 또 상기 듀티 사이클 데이터에 지정된 지속기간을 초과하는 지속기간 동안 전송됨 - 와;
    상기 제2 프리앰블에 응답하여 상기 제2 장치로부터 확인 응답 신호(acknowledgement signal)를 수신하는 단계와;
    상기 제2 프리앰블에 뒤이어서 상기 확인 응답 신호에 응답하여 상기 통신에 대한 정보를 전송하는 단계 - 상기 정보는 상기 제2 프리앰블과 동일한 주파수로 전송됨 - 를 포함하는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  13. 제4항에 있어서, 상기 프리앰블은 순서대로 전송되는 일련의 데이터 패킷을 포함하고,
    상기 데이터 패킷은 시간 데이터 - 이 시간 데이터로부터 상기 프리앰블의 상기 지속기간이 결정될 수 있음 - 를 포함하는 것인, 무선 네트워크와 관련하여 사용하기 위한 제1 장치에 의해 수행되는 방법.
  14. 실행가능한 명령어를 저장하도록 구성되어 있는 메모리, 및
    무선 네트워크를 거쳐 통신하기 위해 활성화 모드에 들어가고,
    주기적으로 휴면 상태 모드에 들어가기 위해
    상기 명령어를 실행하도록 구성되어 있는 적어도 하나의 프로세서를 포함하며,
    상기 적어도 하나의 프로세서는 상기 활성화 모드에서보다 상기 휴면 상태 모드에서 더 적은 작업을 수행하고,
    상기 무선 네트워크를 거쳐 통신 또는 브로드캐스트하도록 상기 장치를 구성하기 위해, 상기 적어도 하나의 프로세서는,
    상기 무선 네트워크로 프리앰블을 출력하고 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 -,
    상기 프리앰블에 뒤따라오는 상기 장치의 하나 이상의 리스닝 주파수를 식별하며 - 상기 하나 이상의 리스닝 주파수는 상기 장치가 상기 프리앰블에 뒤이어서 상기 활성화 모드에 들어가는 하나 이상의 주파수 대역을 포함함 -,
    상기 무선 네트워크 내의 노드로부터 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 수신하고 - 상기 시퀀스 데이터는 상기 노드가 활성화되는 일련의 주파수를 획득하는 데 사용가능하며, 상기 웨이크-업 데이터는 상기 노드가 활성화되는 시간들에 대응하고, 상기 듀티 사이클 데이터는 상기 노드가 활성화되는 시간의 지속기간에 기초함 -,
    상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 저장하는
    명령어를 실행하도록 구성되어 있는 것인 장치.
  15. 무선 네트워크에서 사용하기 위한 제1 장치에 의해 실행가능한 명령어를 저장하는 하나 이상의 기계 판독가능 매체로서,
    상기 명령어는,
    상기 무선 네트워크로 프리앰블을 출력하고 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 -,
    상기 프리앰블에 뒤따라오는 상기 제1 장치의 하나 이상의 리스닝 주파수를 식별하며 - 상기 하나 이상의 리스닝 주파수는 상기 제1 장치가 활성화되는 하나 이상의 주파수 대역을 포함함 -,
    상기 무선 네트워크 내의 제2 장치로부터 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 수신하고 - 상기 시퀀스 데이터는 상기 제2 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하며, 상기 웨이크-업 데이터는 상기 제2 장치가 활성화되는 시간들에 대응하고, 상기 듀티 사이클 데이터는 상기 제2 장치가 활성화되는 시간의 지속기간에 기초함 -,
    상기 시퀀스 데이터, 상기 웨이크-업 데이터 및 상기 듀티 사이클 데이터를 저장하는 명령어인 것인, 무선 네트워크에서 사용하기 위한 제1 장치에 의해 실행가능한 명령어를 저장하는 하나 이상의 기계 판독가능 매체.
  16. 무선 네트워크에서 노드에 의해 수행되는 방법으로서,
    장치로부터 프리앰블을 수신하는 단계 - 상기 프리앰블은 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함함 - 와;
    상기 프리앰블에 뒤따라오는 상기 장치의 하나 이상의 리스닝 주파수를 식별하는 단계 - 상기 하나 이상의 리스닝 주파수는 상기 장치가 활성화되는 하나 이상의 주파수 대역을 포함함 - 와;
    상기 장치로 상기 하나 이상의 리스닝 주파수로, 시퀀스 데이터, 웨이크-업 데이터, 및 듀티 사이클 데이터를 전송하는 단계 - 상기 시퀀스 데이터는 상기 노 드가 활성화되는 일련의 주파수를 획득하는 데 사용가능하고, 상기 웨이크-업 데이터는 상기 노드가 활성화되는 시간에 대응하며, 상기 듀티 사이클 데이터는 상기 노드가 활성화되는 시간의 지속기간에 기초함 -
    를 포함하는 무선 네트워크에서 노드에 의해 수행되는 방법.
  17. 제16항에 있어서, 상기 시퀀스 데이터, 상기 웨이크-업 데이터, 및 상기 듀티 사이클 데이터는 상기 프리앰블에 뒤이어서 상기 장치로 데이터를 전송하는 다른 노드들과 충돌을 감소시키기 위해 획득되는 시간에 전송되는 것인, 무선 네트워크에서 노드에 의해 수행되는 방법.
  18. 복수의 노드로 이루어진 무선 네트워크 - 상기 노드들 중 적어도 어떤 노드들은 활성화 시간을 가지며, 이 활성화 시간 동안에 상기 적어도 어떤 노드들이 활성임 - 와;
    상기 무선 네트워크 상의 노드들의 최대 활성화 시간을 인자 N(단, N은 적어도 상기 무선 네트워크 상의 주파수들의 최대수와 같음)만큼 초과하는 메시지를 통해 통신의 시작을 식별하도록 구성되어 있는 제1 장치와;
    상기 무선 네트워크 상의 노드를 포함하는 제2 장치 - 상기 제2 장치는 상기 메시지에 대해 주파수 호핑 데이터로 응답하도록 구성되어 있으며, 상기 주파수 호핑 데이터는 상기 제2 장치가 데이터를 수신하기 위해 주파수 호핑을 어떻게 수행하는지를 식별해줌 - 를 포함하는 시스템.
  19. 제18항에 있어서, 상기 제1 장치는 상기 메시지에 뒤따라오는 하나 이상의 주파수를 식별하고,
    상기 제2 장치는 상기 하나 이상의 주파수로 상기 메시지에 응답하도록 구성되어 있으며,
    상기 제2 장치에 의한 상기 메시지에 대한 응답은 상기 무선 네트워크 상의 다른 장치들로부터의 있을 수 있는 메시지와의 충돌을 감소시키도록 타이밍 조절되는 것인 시스템.
  20. 제18항에 있어서, 상기 메시지는 상기 프리앰블의 지속기간에 대응하는 시간 데이터를 포함하는 프리앰블을 포함하고,
    상기 제1 장치의 하나 이상의 리스닝 주파수가 상기 프리앰블을 뒤따라오며,
    상기 하나 이상의 리스닝 주파수는 상기 제1 장치가 활성화되는 하나 이상의 주파수 대역을 포함하고,
    상기 제2 장치는 상기 하나 이상의 리스닝 주파수로 상기 메시지에 응답하도록 구성되어 있으며,
    상기 주파수 호핑 데이터는 시퀀스 데이터, 웨이크-업 데이터 및 듀티 사이클 데이터를 포함하고,
    상기 시퀀스 데이터는 상기 제2 장치가 활성화되는 일련의 주파수를 획득하는 데 사용가능하며, 상기 웨이크-업 데이터는 상기 제2 장치가 활성화되는 시간에 대응하고, 상기 듀티 사이클 데이터는 상기 제2 장치가 활성화되는 시간의 지속기간에 기초하는 것인 시스템.
KR1020077030859A 2005-06-01 2006-05-31 무선 네트워크를 통한 통신 KR20080025095A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US68612705P 2005-06-01 2005-06-01
US60/686,127 2005-06-01
US72434305P 2005-10-06 2005-10-06
US60/724,343 2005-10-06

Publications (1)

Publication Number Publication Date
KR20080025095A true KR20080025095A (ko) 2008-03-19

Family

ID=37482254

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077030859A KR20080025095A (ko) 2005-06-01 2006-05-31 무선 네트워크를 통한 통신

Country Status (5)

Country Link
US (3) US7844308B2 (ko)
EP (2) EP1886415B1 (ko)
KR (1) KR20080025095A (ko)
CN (1) CN101461151B (ko)
WO (1) WO2006130662A2 (ko)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101135517B1 (ko) * 2010-07-13 2012-04-13 고려대학교 산학협력단 무선 센서 네트워크의 에너지 효율 향상방법
WO2014112721A1 (ko) * 2013-01-21 2014-07-24 서울대학교산학협력단 무선 네트워크에서 네트워크 가입 방법
US8829821B2 (en) 2012-12-18 2014-09-09 Cree, Inc. Auto commissioning lighting fixture
US8975827B2 (en) 2012-07-01 2015-03-10 Cree, Inc. Lighting fixture for distributed control
USD744669S1 (en) 2013-04-22 2015-12-01 Cree, Inc. Module for a lighting fixture
US9456482B1 (en) 2015-04-08 2016-09-27 Cree, Inc. Daylighting for different groups of lighting fixtures
US9549448B2 (en) 2014-05-30 2017-01-17 Cree, Inc. Wall controller controlling CCT
US9572226B2 (en) 2012-07-01 2017-02-14 Cree, Inc. Master/slave arrangement for lighting fixture modules
US9622321B2 (en) 2013-10-11 2017-04-11 Cree, Inc. Systems, devices and methods for controlling one or more lights
USRE46430E1 (en) 2007-04-20 2017-06-06 Cree, Inc. Illumination control network
US9706617B2 (en) 2012-07-01 2017-07-11 Cree, Inc. Handheld device that is capable of interacting with a lighting fixture
US9723680B2 (en) 2014-05-30 2017-08-01 Cree, Inc. Digitally controlled driver for lighting fixture
US9872367B2 (en) 2012-07-01 2018-01-16 Cree, Inc. Handheld device for grouping a plurality of lighting fixtures
US9913348B2 (en) 2012-12-19 2018-03-06 Cree, Inc. Light fixtures, systems for controlling light fixtures, and methods of controlling fixtures and methods of controlling lighting control systems
US9967944B2 (en) 2016-06-22 2018-05-08 Cree, Inc. Dimming control for LED-based luminaires
US9980350B2 (en) 2012-07-01 2018-05-22 Cree, Inc. Removable module for a lighting fixture
US10154569B2 (en) 2014-01-06 2018-12-11 Cree, Inc. Power over ethernet lighting fixture
US10595380B2 (en) 2016-09-27 2020-03-17 Ideal Industries Lighting Llc Lighting wall control with virtual assistant

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7522563B2 (en) 2001-11-28 2009-04-21 Millennial Net, Inc. Network protocol
US7844308B2 (en) * 2005-06-01 2010-11-30 Millennial Net, Inc. Communicating over a wireless network
JP4662353B2 (ja) * 2005-08-12 2011-03-30 キヤノン株式会社 通信システム、通信装置、通信制御デバイス、制御プログラムおよび制御方法
GB0609426D0 (en) * 2006-05-12 2006-06-21 Univ Edinburgh A low power media access control protocol
WO2008004099A2 (en) * 2006-06-30 2008-01-10 Nokia Corporation Sleep mode for a wireless relay in ieee 802.16 networks ( ieee project 802.16j)
US20080020801A1 (en) * 2006-07-20 2008-01-24 Nestor Alexis Fesas Managing Wireless Base Stations Using A Distributed Virtual Base Station Manager
US8107458B1 (en) * 2006-08-01 2012-01-31 Hewlett-Packard Development Company, L.P. Power-based networking path allocation
US8098658B1 (en) * 2006-08-01 2012-01-17 Hewett-Packard Development Company, L.P. Power-based networking resource allocation
US7962786B2 (en) * 2006-11-17 2011-06-14 Nokia Corporation Security features in interconnect centric architectures
EP1936853B1 (en) * 2006-12-20 2018-11-21 Panasonic Intellectual Property Corporation of America Avoidance of feedback collision in mobile communications
US8316158B1 (en) 2007-03-12 2012-11-20 Cypress Semiconductor Corporation Configuration of programmable device using a DMA controller
US8060661B1 (en) 2007-03-27 2011-11-15 Cypress Semiconductor Corporation Interface circuit and method for programming or communicating with an integrated circuit via a power supply pin
US8107511B2 (en) 2007-04-30 2012-01-31 Honeywell International Inc. Apparatus and method for intelligent frequency-hopping discovery and synchronization
EP3654538B1 (en) 2007-05-02 2021-09-29 Tyco Fire & Security GmbH Wireless communication system
US8218519B1 (en) * 2008-01-23 2012-07-10 Rockwell Collins, Inc. Transmit ID within an ad hoc wireless communications network
US20100169937A1 (en) * 2008-04-04 2010-07-01 Peter Atwal Wireless ad hoc networking for set top boxes
US20110164527A1 (en) * 2008-04-04 2011-07-07 Mishra Rajesh K Enhanced wireless ad hoc communication techniques
US20100150027A1 (en) * 2008-04-04 2010-06-17 Peter Atwal Systems and methods of planning and deploying an ad hoc mobile wireless network
JP4518183B2 (ja) * 2008-04-28 2010-08-04 ソニー株式会社 無線通信システム、無線通信装置、無線通信方法及びプログラム
US8731622B2 (en) * 2008-05-23 2014-05-20 Qualcomm Incorporated Method and apparatus for system acquisition while maintaining a defined battery life span
MX2011000860A (es) * 2008-07-22 2011-03-15 Powerwave Cognition Inc Comunicaciones inalambricas ad hoc mejoradas.
US8208373B2 (en) * 2008-07-31 2012-06-26 Motorola Solutions, Inc. Method for multi-band communication routing within a wireless communication system
US20100058424A1 (en) * 2008-08-26 2010-03-04 Comcast Cable Holdings, Llc System and method for controlling signal traffic peaks on a video interactive network
US20110164546A1 (en) * 2008-09-04 2011-07-07 Mishra Rajesh K Vehicular mobility vector based routing
US8576760B2 (en) * 2008-09-12 2013-11-05 Qualcomm Incorporated Apparatus and methods for controlling an idle mode in a wireless device
JP4647011B2 (ja) * 2009-01-30 2011-03-09 株式会社バッファロー ルータ装置
EP3206443B1 (en) 2009-02-13 2019-09-04 Telefonaktiebolaget LM Ericsson (publ) Controlling energy consumption of a wireless network node
WO2010119370A1 (en) * 2009-04-15 2010-10-21 Koninklijke Philips Electronics N.V. Energy efficient transmission in a network
GB0912737D0 (en) * 2009-07-22 2009-08-26 Texecom Ltd A network arrangement of low powered monitored devices
JP5464960B2 (ja) * 2009-10-05 2014-04-09 キヤノン株式会社 通信装置及び通信装置の通信方法並びにプログラム
KR101042600B1 (ko) * 2009-12-04 2011-06-20 한국전자통신연구원 반―선형 센서 네트워크에서 저전력 매체 접근 제어 방법
CN102792741B (zh) * 2009-12-14 2015-12-16 法国电信 改进的传输通信信号的方法
RU2596879C2 (ru) 2010-11-08 2016-09-10 Конинклейке Филипс Электроникс Н.В. Система и способ обмена информацией о рабочем цикле в беспроводных сетях
US8504889B2 (en) * 2010-11-12 2013-08-06 Qualcomm Incorporated Sleep clock error recovery scheme
US8780953B2 (en) * 2010-12-17 2014-07-15 Cisco Technology, Inc. Dynamic assignment of frequency hopping sequences in a communication network
FR2969436A1 (fr) * 2010-12-21 2012-06-22 France Telecom Protection contre la detection de signaux d alerte
FR2971662B1 (fr) * 2011-02-10 2013-03-15 Commissariat Energie Atomique Methode de communication asynchrone pour reseau de capteurs sans fil
JP5190568B2 (ja) * 2011-02-23 2013-04-24 株式会社国際電気通信基礎技術研究所 無線基地局およびそれを用いた無線通信システム
US8908621B2 (en) * 2011-07-22 2014-12-09 Cisco Technology, Inc. Dynamic common broadcast schedule parameters for overlaying an independent unicast schedule
US9197467B2 (en) * 2011-10-21 2015-11-24 Itron, Inc. Multiple protocol receiver
US8913543B2 (en) * 2012-03-01 2014-12-16 Telefonaktiebolaget L M Ericsson (Publ) Cooperative relaying and network coding in a cellular communications system
FR2988972A1 (fr) * 2012-03-29 2013-10-04 France Telecom Procede de traitement de la reception d'un signal de communication par voie radio, procede de traitement de l'emission, dispositifs et programmes d'ordinateur associes
US10721808B2 (en) 2012-07-01 2020-07-21 Ideal Industries Lighting Llc Light fixture control
US8909424B2 (en) 2012-10-11 2014-12-09 Sram, Llc Electronic shifting systems and methods
US9802669B2 (en) 2012-10-11 2017-10-31 Sram, Llc Electronic shifting systems and methods
US9246845B2 (en) 2013-06-19 2016-01-26 Cisco Technology, Inc. Overlaying receive schedules for energy-constrained devices in channel-hopping networks
US9888081B1 (en) * 2014-02-18 2018-02-06 Smart Farm Systems, Inc. Automation apparatuses, systems and methods
GB2515853B (en) 2014-02-25 2015-08-19 Cambridge Silicon Radio Ltd Latency mitigation
GB2512502B (en) 2014-02-25 2015-03-11 Cambridge Silicon Radio Ltd Device authentication
US10050865B2 (en) 2014-02-28 2018-08-14 Tyco Fire & Security Gmbh Maintaining routing information
US9513364B2 (en) 2014-04-02 2016-12-06 Tyco Fire & Security Gmbh Personnel authentication and tracking system
KR102282467B1 (ko) * 2015-03-27 2021-07-27 한화테크윈 주식회사 호핑 대상 채널들을 선정하는 방법 및 장치
US11770798B2 (en) 2015-03-27 2023-09-26 Hanwha Techwin Co., Ltd. Surveillance method and apparatus
US10457350B2 (en) 2015-04-27 2019-10-29 Shimano Inc. Bicycle control system
US9616964B2 (en) 2015-04-27 2017-04-11 Shimano Inc. Bicycle wireless control system
US10481666B2 (en) * 2015-04-30 2019-11-19 Samsung Electronics Co., Ltd. Method and system for optimizing communication in a heterogeneous network
US9820246B2 (en) 2015-05-29 2017-11-14 Gainspan Corporation Synchronizing active window boundaries used for data transmission between pairs of nodes of a wireless network
CN107820698A (zh) * 2015-07-24 2018-03-20 哈里伯顿能源服务公司 用于进行信道映射和均衡器初始化的跳频探测器信号
JP7011579B2 (ja) * 2015-08-27 2022-01-26 シグニファイ ホールディング ビー ヴィ メッシュネットワークノード
CN106714282A (zh) * 2015-11-18 2017-05-24 博世科智能股份有限公司 无线网络系统
US10491265B2 (en) 2016-04-26 2019-11-26 Texas Instruments Incorporated Sleepy device operation in asynchronous channel hopping networks
EP3497975B1 (en) * 2016-08-10 2020-03-04 Telefonaktiebolaget LM Ericsson (publ) Packet forwarding in a wireless mesh network
DE102016220883A1 (de) * 2016-10-24 2018-04-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Optimierte Kombination aus Präambel und Datenfeldern für Sensornetzwerke mit geringem Stromverbrauch auf Basis des Telegram Splitting Verfahrens
US10362374B2 (en) 2016-10-27 2019-07-23 Itron, Inc. Discovery mechanism for communication in wireless networks
US10554369B2 (en) 2016-12-30 2020-02-04 Itron, Inc. Group acknowledgement message efficiency
MX2019012995A (es) * 2017-05-02 2020-07-28 Interdigital Patent Holdings Inc Codificación de forma de onda con modulación para transmisiones de usuario único y de usuarios múltiples.
US9979435B1 (en) * 2017-05-05 2018-05-22 David R. Hall System and device for evened frequency emission impact distribution using a preamble-based DSS communication link
US10251193B2 (en) * 2017-06-02 2019-04-02 Hall Labs Llc System and devices using a preamble-based DSS communication link and spectrum-impact-smoothed channel sets implementing channel resynchronization
US10248087B2 (en) * 2017-07-12 2019-04-02 Hall Labs Llc System and device using spectrum-impact-smoothed channel sequencing and deferred acknowledgments
US10608697B2 (en) 2018-01-12 2020-03-31 At&T Intellectual Property I, L.P. Facilitating improvements to the uplink performance of 5G or other next generation networks
US11044679B2 (en) * 2019-03-27 2021-06-22 Cypress Semiconductor Corporation Devices, systems and methods for extending the range of a wireless communication system
US10523549B1 (en) * 2019-06-02 2019-12-31 Cybertoka Ltd Method and system for detecting and classifying networked devices
CN112118588A (zh) * 2019-06-20 2020-12-22 无锡士康通讯技术有限公司 一种无线网络外终端与无线网络内设备的异频通信方法
US10560322B1 (en) * 2019-07-11 2020-02-11 Synap Technologies Ltd. Network protocol for mesh capability in narrow-band wireless networks
US11945533B2 (en) 2021-07-12 2024-04-02 Sram, Llc Bicycle component control
CN113709770B (zh) * 2021-08-19 2023-02-17 珠海格力电器股份有限公司 一种设备的控制方法、装置、设备及存储介质
TWI791312B (zh) * 2021-10-28 2023-02-01 佳世達科技股份有限公司 提供多台裝置同時連網功能或多台裝置喚醒功能之電子系統和相關方法

Family Cites Families (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4358823A (en) 1977-03-25 1982-11-09 Trw, Inc. Double redundant processor
JPS5836379B2 (ja) 1980-11-21 1983-08-09 沖電気工業株式会社 マルチプロセツサ制御方式
US5355371A (en) 1982-06-18 1994-10-11 International Business Machines Corp. Multicast communication tree creation and control method and apparatus
US5428636A (en) 1993-05-03 1995-06-27 Norand Corporation Radio frequency local area network
US5815811A (en) * 1989-06-29 1998-09-29 Symbol Technologies, Inc. Preemptive roaming in a cellular local area wireless network
GB2238147B (en) 1989-11-16 1993-04-21 Gen Electric Co Plc Radio telemetry systems
US5128928A (en) 1990-10-31 1992-07-07 Rose Communications, Inc. Digital radio telephone system
US5257372A (en) 1990-12-19 1993-10-26 Cray Research, Inc. Methods for efficient distribution of parallel tasks to slave processes in a multiprocessing system
GB9304638D0 (en) * 1993-03-06 1993-04-21 Ncr Int Inc Wireless data communication system having power saving function
WO1995001020A1 (en) 1993-06-25 1995-01-05 Xircom, Incorporated Virtual carrier detection for wireless local area network with distributed control
NL9301428A (nl) 1993-08-18 1995-03-16 Nederland Ptt Routeerwerkwijze voor een hiërarchisch communicatienetwerk.
GB9321657D0 (en) 1993-10-20 1993-12-08 Ncr Int Inc Power management system for a wireless network
US5442659A (en) * 1993-10-22 1995-08-15 International Business Machines Corporation Radio communications system with fault tolerant frequency hopping synchronization
US6292508B1 (en) * 1994-03-03 2001-09-18 Proxim, Inc. Method and apparatus for managing power in a frequency hopping medium access control protocol
CA2129200C (en) 1994-07-29 1999-08-10 Murray C. Baker Access point switching for mobile wireless network node
US5491787A (en) 1994-08-25 1996-02-13 Unisys Corporation Fault tolerant digital computer system having two processors which periodically alternate as master and slave
US5608721A (en) 1995-04-03 1997-03-04 Motorola, Inc. Communications network and method which implement diversified routing
JP2937813B2 (ja) 1995-06-15 1999-08-23 日本電気株式会社 自動ルーティング方法及びシステム
JP3445435B2 (ja) 1995-09-11 2003-09-08 株式会社東芝 連続データサーバ装置の制御装置及び制御方法
US5815692A (en) 1995-12-15 1998-09-29 National Semiconductor Corporation Distributed clock generator
US6275477B1 (en) 1996-05-03 2001-08-14 Telxon Corporation Campus area pager system
US6088591A (en) * 1996-06-28 2000-07-11 Aironet Wireless Communications, Inc. Cellular system hand-off protocol
US5854994A (en) 1996-08-23 1998-12-29 Csi Technology, Inc. Vibration monitor and transmission system
US5923659A (en) 1996-09-20 1999-07-13 Bell Atlantic Network Services, Inc. Telecommunications network
US5790817A (en) 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US5940431A (en) * 1996-12-23 1999-08-17 Telefonaktiebolaget Lm Ericsson Access technique of channel hopping communications system
JP3097581B2 (ja) 1996-12-27 2000-10-10 日本電気株式会社 アドホックローカルエリアネットワークの構成方法、通信方法及び端末
US6028857A (en) 1997-07-25 2000-02-22 Massachusetts Institute Of Technology Self-organizing network
US6751196B1 (en) 1997-08-27 2004-06-15 Philips Electronics North America Corp. Apparatus and method for peer-to-peer link monitoring of a wireless network with centralized control
GB9721008D0 (en) 1997-10-03 1997-12-03 Hewlett Packard Co Power management method foruse in a wireless local area network (LAN)
KR100232881B1 (ko) * 1997-10-08 1999-12-01 윤종용 리시버 전원제어방법과 그에 따른 무선호출 수신기
US6058106A (en) 1997-10-20 2000-05-02 Motorola, Inc. Network protocol method, access point device and peripheral devices for providing for an efficient centrally coordinated peer-to-peer wireless communications network
US6078819A (en) * 1997-11-01 2000-06-20 Lucent Technologies Inc. Apparatus and method for prolonging battery life in a portable telephone having first and second deactivating conditions
US6272537B1 (en) 1997-11-17 2001-08-07 Fujitsu Limited Method for building element manager for a computer network element using a visual element manager builder process
US6426959B1 (en) 1998-01-20 2002-07-30 Innovative Communications Technologies, Inc. System and method for facilitating component management in a multiple vendor satellite communications network
US6381250B1 (en) 1998-01-23 2002-04-30 Innovative Communications Technologies, Inc. Capacity allocation system using semi-autonomous network elements to implement and control a transmission schedule
US6437692B1 (en) 1998-06-22 2002-08-20 Statsignal Systems, Inc. System and method for monitoring and controlling remote devices
US6208247B1 (en) 1998-08-18 2001-03-27 Rockwell Science Center, Llc Wireless integrated sensor network using multiple relayed communications
US6285892B1 (en) * 1998-11-24 2001-09-04 Philips Electronics North America Corp. Data transmission system for reducing terminal power consumption in a wireless network
JP2000181890A (ja) 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
US6414955B1 (en) 1999-03-23 2002-07-02 Innovative Technology Licensing, Llc Distributed topology learning method and apparatus for wireless networks
US7075903B1 (en) 1999-04-14 2006-07-11 Adc Telecommunications, Inc. Reduced power consumption in a communication device
EP1107512A1 (en) 1999-12-03 2001-06-13 Sony International (Europe) GmbH Communication device and software for operating multimedia applications
US6845091B2 (en) 2000-03-16 2005-01-18 Sri International Mobile ad hoc extensions for the internet
US7653030B2 (en) 2000-04-12 2010-01-26 Nokia Corporation Generation broadband wireless internet, and associated method, therefor
US6829222B2 (en) 2000-04-25 2004-12-07 Board Of Regents The University Of Texas System Clusterhead selection in wireless ad hoc networks
EP1156623B1 (en) 2000-05-19 2006-03-08 Lucent Technologies Inc. Wireless lan with load balancing
WO2001099345A2 (en) 2000-06-16 2001-12-27 The Regents Of The University Of California Bandwidth efficient source tracing (best) routing protocol for wireless networks
AU2001263472A1 (en) 2000-06-28 2002-01-08 Broadcom Corporation Multi-mode controller
US6427066B1 (en) 2000-06-30 2002-07-30 Motorola, Inc. Apparatus and method for effecting communications among a plurality of remote stations
WO2002015485A1 (en) 2000-08-11 2002-02-21 The Regents Of The University Of California Receiver-initiated multiple access for ad-hoc networks (rima)
US20020061001A1 (en) 2000-08-25 2002-05-23 The Regents Of The University Of California Dynamic source tracing (DST) routing protocol for wireless networks
WO2002028020A2 (en) 2000-09-29 2002-04-04 The Regents Of The University Of California Ad hoc network accessing using distributed election of a shared transmission schedule
US7035227B2 (en) 2000-10-10 2006-04-25 The Regents Of The University Of California On-demand loop-free multipath routing (ROAM)
US7194269B2 (en) 2000-10-30 2007-03-20 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Method and wireless communication hub for data communications
ATE492840T1 (de) 2000-10-31 2011-01-15 Millennial Net Inc Vernetztes verarbeitungssystem mit optimiertem leistungswirkungsgrad
US6735448B1 (en) * 2000-11-07 2004-05-11 Hrl Laboratories, Llc Power management for throughput enhancement in wireless ad-hoc networks
US6807165B2 (en) 2000-11-08 2004-10-19 Meshnetworks, Inc. Time division protocol for an ad-hoc, peer-to-peer radio network having coordinating channel access to shared parallel data channels with separate reservation channel
US7016336B2 (en) 2000-11-22 2006-03-21 Telefonaktiebolaget L M Ericsson (Publ) Administrative domains for personal area networks
US6920171B2 (en) 2000-12-14 2005-07-19 Motorola, Inc. Multiple access frequency hopping network with interference anticipation
US6754250B2 (en) * 2000-12-15 2004-06-22 Telefonaktiebolaget Lm Ericsson (Publ) Networking in uncoordinated frequency hopping piconets
US7209771B2 (en) * 2000-12-22 2007-04-24 Terahop Networks, Inc. Battery powered wireless transceiver having LPRF component and second wake up receiver
US6973023B1 (en) * 2000-12-30 2005-12-06 Cisco Technology, Inc. Method for routing information over a network employing centralized control
US7142527B2 (en) 2001-02-28 2006-11-28 Nokia Inc. System and method for transmission scheduling using network membership information and neighborhood information
US6816493B2 (en) * 2001-03-09 2004-11-09 Motorola, Inc. Method and apparatus employing a mediation device to facilitate communication among devices in an asynchronous communications network
FI20010484A (fi) * 2001-03-09 2002-09-10 Nokia Corp Tiedonsiirtojärjestelmä, tiedonsiirtolaite ja menetelmä tiedonsiirron suorittamiseksi
WO2002089419A1 (fr) * 2001-04-27 2002-11-07 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Appareil de communication multiplex destine a un vehicule
CN1559106A (zh) * 2001-11-16 2004-12-29 ��˹��ŵ�� 用于在射频(rf)接收机中节省功率的方法和rf接收机
US7417971B2 (en) * 2002-10-04 2008-08-26 Ntt Docomo, Inc. Method and apparatus for dormant mode support with paging
US7072697B2 (en) * 2002-10-22 2006-07-04 Nokia Corporation Method and device for transponder aided wake-up of a low power radio device by a wake-up event
KR100457537B1 (ko) * 2002-12-02 2004-11-17 삼성전자주식회사 애드-혹 네트워크에서의 전력 소모 감소 장치 및 방법
CN1228940C (zh) * 2002-12-31 2005-11-23 北京信威通信技术股份有限公司 同步码分多址终端省电的方法及实现该方法的通信系统
US20060194564A1 (en) * 2003-07-30 2006-08-31 Takehiro Hokimoto Radio transmitting/receiving apparatus and intermittent transmission/reception control method of radio transmitting/receiving apparatus
KR100830164B1 (ko) * 2003-09-04 2008-05-20 삼성전자주식회사 통신 시스템에서 슬립 모드와 어웨이크 모드간 천이 방법
US7295827B2 (en) * 2004-03-31 2007-11-13 Intel Corporation Mobile station dynamic power saving control
JP4628162B2 (ja) * 2004-04-16 2011-02-09 株式会社ソニー・コンピュータエンタテインメント 通信端末装置、通信システムおよび電力制御方法
US7844308B2 (en) * 2005-06-01 2010-11-30 Millennial Net, Inc. Communicating over a wireless network
US7573865B2 (en) * 2005-09-20 2009-08-11 Freescale Semiconductor, Inc. Method of synchronizing a wireless device using an external clock

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE46430E1 (en) 2007-04-20 2017-06-06 Cree, Inc. Illumination control network
KR101135517B1 (ko) * 2010-07-13 2012-04-13 고려대학교 산학협력단 무선 센서 네트워크의 에너지 효율 향상방법
US9980350B2 (en) 2012-07-01 2018-05-22 Cree, Inc. Removable module for a lighting fixture
US9706617B2 (en) 2012-07-01 2017-07-11 Cree, Inc. Handheld device that is capable of interacting with a lighting fixture
US9872367B2 (en) 2012-07-01 2018-01-16 Cree, Inc. Handheld device for grouping a plurality of lighting fixtures
US8975827B2 (en) 2012-07-01 2015-03-10 Cree, Inc. Lighting fixture for distributed control
US9795016B2 (en) 2012-07-01 2017-10-17 Cree, Inc. Master/slave arrangement for lighting fixture modules
US9723696B2 (en) 2012-07-01 2017-08-01 Cree, Inc. Handheld device for controlling settings of a lighting fixture
US9723673B2 (en) 2012-07-01 2017-08-01 Cree, Inc. Handheld device for merging groups of lighting fixtures
US10624182B2 (en) 2012-07-01 2020-04-14 Ideal Industries Lighting Llc Master/slave arrangement for lighting fixture modules
US10342105B2 (en) 2012-07-01 2019-07-02 Cree, Inc. Relay device with automatic grouping function
US10206270B2 (en) 2012-07-01 2019-02-12 Cree, Inc. Switch module for controlling lighting fixtures in a lighting network
US9572226B2 (en) 2012-07-01 2017-02-14 Cree, Inc. Master/slave arrangement for lighting fixture modules
US10172218B2 (en) 2012-07-01 2019-01-01 Cree, Inc. Master/slave arrangement for lighting fixture modules
US9717125B2 (en) 2012-07-01 2017-07-25 Cree, Inc. Enhanced lighting fixture
US11849512B2 (en) 2012-07-01 2023-12-19 Ideal Industries Lighting Llc Lighting fixture that transmits switch module information to form lighting networks
US8829821B2 (en) 2012-12-18 2014-09-09 Cree, Inc. Auto commissioning lighting fixture
US9433061B2 (en) 2012-12-18 2016-08-30 Cree, Inc. Handheld device for communicating with lighting fixtures
US9155166B2 (en) 2012-12-18 2015-10-06 Cree, Inc. Efficient routing tables for lighting networks
US9155165B2 (en) 2012-12-18 2015-10-06 Cree, Inc. Lighting fixture for automated grouping
US8912735B2 (en) 2012-12-18 2014-12-16 Cree, Inc. Commissioning for a lighting network
US9913348B2 (en) 2012-12-19 2018-03-06 Cree, Inc. Light fixtures, systems for controlling light fixtures, and methods of controlling fixtures and methods of controlling lighting control systems
KR101454991B1 (ko) * 2013-01-21 2014-11-04 서울대학교산학협력단 무선 네트워크에서 네트워크 가입 방법
WO2014112721A1 (ko) * 2013-01-21 2014-07-24 서울대학교산학협력단 무선 네트워크에서 네트워크 가입 방법
US10374881B2 (en) 2013-01-21 2019-08-06 Hybee, Inc. Method of network subscription in a wireless network
USD744669S1 (en) 2013-04-22 2015-12-01 Cree, Inc. Module for a lighting fixture
US9622321B2 (en) 2013-10-11 2017-04-11 Cree, Inc. Systems, devices and methods for controlling one or more lights
US10154569B2 (en) 2014-01-06 2018-12-11 Cree, Inc. Power over ethernet lighting fixture
US9549448B2 (en) 2014-05-30 2017-01-17 Cree, Inc. Wall controller controlling CCT
US10278250B2 (en) 2014-05-30 2019-04-30 Cree, Inc. Lighting fixture providing variable CCT
US9723680B2 (en) 2014-05-30 2017-08-01 Cree, Inc. Digitally controlled driver for lighting fixture
US9456482B1 (en) 2015-04-08 2016-09-27 Cree, Inc. Daylighting for different groups of lighting fixtures
US9967944B2 (en) 2016-06-22 2018-05-08 Cree, Inc. Dimming control for LED-based luminaires
US10595380B2 (en) 2016-09-27 2020-03-17 Ideal Industries Lighting Llc Lighting wall control with virtual assistant

Also Published As

Publication number Publication date
EP1886415B1 (en) 2016-01-20
CN101461151B (zh) 2013-01-02
US20060285579A1 (en) 2006-12-21
CN101461151A (zh) 2009-06-17
WO2006130662A2 (en) 2006-12-07
US7844308B2 (en) 2010-11-30
EP1886415A2 (en) 2008-02-13
US20120087290A1 (en) 2012-04-12
EP3021494B1 (en) 2017-10-04
US8271058B2 (en) 2012-09-18
WO2006130662A3 (en) 2009-02-26
EP1886415A4 (en) 2011-05-11
EP3021494A1 (en) 2016-05-18
US20110045875A1 (en) 2011-02-24

Similar Documents

Publication Publication Date Title
US7844308B2 (en) Communicating over a wireless network
EP1461907B1 (en) Network protocol for an ad hoc wireless network
US7715352B2 (en) Method and apparatus for a node to determine a proper duty cycle within an ad-hoc network
US7193986B2 (en) Wireless network medium access control protocol
EP2232777B1 (en) Apparatus and method for adaptive channel hopping in mesh networks
US7496059B2 (en) Energy-efficient medium access control protocol and system for sensor networks
EP2115965B1 (en) Low-power wireless multi-hop networks
CN107483396B (zh) 根据多个通信协议配置无线通信和广告事件
US20090122733A1 (en) Coordinator in wireless sensor network and method of operating the coordinator
WO2004109966A2 (en) Protocol for configuring a wireless network
KR100873483B1 (ko) 무선 센서 네트워크에서의 멀티채널 운용 방법
Crystal et al. A new MAC protocol for improving energy efficiency and reducing end-to-end packet delay in wireless sensor networks
Lee et al. Schedule unifying algorithm extending network lifetime in S-MAC-based wireless sensor networks
Fahmy et al. Energy Management Techniques for WSNs (1): Duty-Cycling Approach
Amutha et al. ECOSENSE: an energy consumption protocol for wireless sensor networks
Younis et al. Energy-Efficient Medium Access Control Protocols for Wireless Sensor Networks
r Nadeem Energy-Efficient Medium
Kumar et al. MAC Protocols for Wireless Sensor Networks–A comparative study

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid