KR100620831B1 - 디바이스들 간의 접속 확립 방법 및 장치 - Google Patents

디바이스들 간의 접속 확립 방법 및 장치 Download PDF

Info

Publication number
KR100620831B1
KR100620831B1 KR1020037008519A KR20037008519A KR100620831B1 KR 100620831 B1 KR100620831 B1 KR 100620831B1 KR 1020037008519 A KR1020037008519 A KR 1020037008519A KR 20037008519 A KR20037008519 A KR 20037008519A KR 100620831 B1 KR100620831 B1 KR 100620831B1
Authority
KR
South Korea
Prior art keywords
state
connection
devices
unit
delete delete
Prior art date
Application number
KR1020037008519A
Other languages
English (en)
Other versions
KR20030065568A (ko
Inventor
살론이디스데오도로스
바그와트프라빈
라마이레리차드오
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20030065568A publication Critical patent/KR20030065568A/ko
Application granted granted Critical
Publication of KR100620831B1 publication Critical patent/KR100620831B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

무선 통신 채널을 통해 하나 이상의 디바이스들을 서로 접속시키는 방법이 제공된다. 일 실시예에서, 제 1 디바이스를 제 2 디바이스로 접속시키는 방법은, 두 개의 가능한 상태 중 하나를 각 디바이스에 임의적으로 할당하는 단계━두 개의 가능한 상태 중 제 1 상태에서 한 디바이스는 다른 디바이스와의 접속을 확립하고자 하며, 제 2 상태에서는 상기 디바이스는 상기 다른 디바이스와의 접속을 위해서 자신이 접속 시에 이용될 수 있도록 하게 함━와, 사전결정된 타임아웃 기간이 만료되거나 상기 디바이스 간의 접속이 확립될 때까지 확률 분포에 따라서 상기 제 1 상태와 상기 제 2 상태 간에서 상기 각 디바이스의 현 상태를 교대로 전환하는 단계━상기 각 디바이스가 상기 제 1 상태 및 상기 제 2 상태로 존재하는 기간은 상기 확률 분포에 의해 제어됨━를 포함한다. 제 2 실시예에서, 애드 호크 무선 통신 네트워크에서 다수의 디바이스들 또는 노드들 간의 스캐터넷을 형성하는 방법이 제공된다.

Description

디바이스들 간의 접속 확립 방법 및 장치{METHOD AND APPARATUS FOR CONNECTING DEVICES VIA AN AD HOC WIRELESS COMMUNICATION NETWORK}
본 발명은 전반적으로 통신 네트워크에 관한 것이며, 특히 에드 호크 무선 통신 네트워크(an ad hoc wireless communication network)에서 두 개 이상의 디바이스를 접속시키는 방법에 관한 것이다.
블루투스(Bluetooth)는 셀 폰, 헤드셋, PDA, 랩탑 컴퓨터와 같은 휴대용 소비자 전자 제품을 링크시키기 위한 단거리(약 10 미터) 무선 케이블 대체 기술로써 개발된 새로운 기술이지만, 상기 블루투스 기술은 팩스 머신, 프린터, 완구류, 디지털 카메라, 가정용 제품 및 사실상 임의의 다른 디지털 소비자 제품 또는 애플리케이션에 대해서도 사용될 수 있다. 이 기술은, 에드 호크에 기초하여 블루투스 장착 디바이스들 간에 소형 무선 네트워크를 형성하는 메카니즘을 필수적으로 제공한다. 또한, 상기 기술은 기존의 데이터 네트워크에 대한 무선 통신 브리지(a wireless communication bridge)로써 작용할 수 있다. 현재의 블루투스 구현 노력은 가령, 다이얼업 네트워킹 프로파일(dialup networking profile), 헤드셋 프로파일 및 근거리 네트워크(LAN) 액세스 포인트 프로파일(블루투스 사양 버전 1.0)과 같은 지점간 클라이언트 서버 애플리케이션(point to point client-server application)에 집중되어 있다. 이러한 통상적인 구현에서는, 블루투스 기능을 갖춘 디바이스들(Bluetooth-enabled devices)이 자동적으로 서로 간을 추적하며, 대체적으로 두 개의 노드만으로 구성된 네트워크내에 참여시킨다.
"Baseband Specification" Bluetooth Specifiation Version 1.OB, Core, 1 December 1999, pages 33 - 190, XP002214950에는 조회 프로시저가 개시되는데, 이 조회 프로시저는 목적지의 디바이스 어드레스가 소스에게 알려지지 않는 애플리케이션에서 이용된다. LAN에 대한 액세스 지점 또는 프린터 또는 팩시밀리 기계와 같은 공용 설비를 생각할 수 있다. 대안적으로, 조회 프로시저는 어느 해당 범위 내에 포함된 다른 블루투스 유닛을 발견하는데 사용될 수 있다. 조회 서브상태 동안, 발견 유닛은 조회 메시지에 응답하는 모든 유닛의 블루투스 디바이스 어드레스 및 클록을 수집한다. 이어서, 필요하다면, 발견 유닛은 상술한 페이징 프로시저를 통해 유닛들 중 임의의 하나에 접속할 수 있다. 소스에 의한 조회 메시지 방송은 소스에 대한 어떤 정보도 포함하지 않는다. 그러나, 상기 조회 메시지는 어느 클래스의 디바이스가 응답해야 하는지를 나타낸다. 임의의 블루투스 디바이스를 조회하기 위한 하나의 범용 조회 액세스 코드(GIAC)와 특정 유형의 디바이스만을 조회하기 위한 다수의 전용 조회 액세스 코드(DIAC)가 있다. 조회 액세스 코드는 예비된 블루투스 디바이스 어드레스로부터 도출된다. 다른 블루투스 유닛을 발견하기를 원하는 유닛은 조회 서브상태로 진입한다. 이러한 조회 서브상태에서는, 상기 유닛은 상이한 홉(hop) 주파수로 (ID 패킷인) 조회 메시지를 연속적으로 전송한다. 조회 홉 시퀀스는 항상 GIAC의 LAP로부터 도출된다. 따라서, 심지어 DIAC가 사용될 때에도, 사용된 호핑 시퀀스는 GIAC LAP로부터 생성된다. 자신이 발견될 수 있도록 하는 유닛은 규칙적으로 조회 스캔 서브 상태로 진입하여 조회 메시지에 응답한다.
현재의 사양(가령, PAN 워킹 그룹에 의해 개발된 IEEE 802.15 Personal Area Network(PAN)) 하에서는, 8 개 까지의 블루투스 기능을 갖춘 디바이스들이 자신들을 자동적으로 "피코넷(piconet)" 내부로 배치시킬수 있다. 각 피코넷은 슬레이브로서 기능하는 디바이스 또는 노드의 나머지에 주파수 호핑 패턴(a frequency hopping pattern)을 부여하는 지정된 마스터를 갖는다. 피코넷은 그의 고유 주파수 호핑 시퀀스에 의해 근방의 다른 유사한 넷들(nets)과 구별된다. 각 피코넷이 상이한 주파수 호핑 시퀀스를 사용하기 때문에, 다수의 피코넷들이 공통 구역에 공존할 수 있다.
피코넷들은 또한 브리지 노드를 통해 상호접속되어, 스캐터넷(scatternet)(다수의 독립적인 비동기화 피코넷들)이라고 하는 보다 대형의 애드 호크 네트워크를 형성한다. 브리지 노드는 일반적으로 다수의 피코넷들 간에 시간을 공유할 수 있고 하나의 피코넷으로부터의 데이터를 수신하여 다른 피코넷으로의 전송을 할 수 있다. 브리지 노드가 참여하는 각 피코넷에서 그 브리지 노드가 담당하는 역할에 대해서는 어떠한 제약도 없다. 가령, 브리지는 한 피코넷에서는 마스터로, 다른 피코넷에서는 슬레이브로 기능할 수 있으며, 또는 자신이 참여한 모든 피코넷에서 슬레이브로 될 수 있다. 이러한 방식에서는, 몇몇 피코넷들이 확립되어 에드 호크 스캐터넷에서 서로 접속되어 연속적으로 가변하는 구성들 간에 가요적인 통신을 지원할 수 있다.
J. Haartsen에 의해 제안된, 본 명세서에서 참조로서 인용되는 "Bluetooth Baseband Specification" 버전 1.0 은 블루투스 지점간 접속 확립을 두 단계의 프로시저(procedure)로 정의한다. 블루투스 유닛이 이웃하는 유닛들에 대한 어떠한 정보도 가지고 있지 않을 때, 상기 유닛들은 이웃하는 유닛의 정보(가령, 노드 식별부 및 동기화 정보)를 발견하기 위해 초기에 조회 프로시저(an inquiry procedure)를 수행해야 한다. 일단 이웃하는 유닛의 정보가 이용가능하게 되면, 피어들(peers) 간의 실제 접속을 확립하기 위해 페이징 프로시저(paging procedure)가 이어서 사용된다.
조회 프로시저 및 페이징 프로시저는 필수적으로 다음과 같은 두 유형의 유닛을 포함하는 비대칭 링크 확립 프로토콜을 포함한다.
1. 이웃하는 유닛에 대한 정보를 발견하고 상기 유닛으로 접속되는 조회 유닛(inquiring units),
2. 조회 유닛에 접속되어 자신들이 발견되는데 이용될 수 있도록 하는 피조회 유닛(inquired units).
블루투스 기저대역 층은 이웃하는 유닛 발견 및 접속 확립을 위해 다음과 같은 기본적인 상태들을 지원한다.
- 조회 : 이 조회 상태는 특정 동작 범위 내의 블루투스 디바이스의 식별부를 판별하는데 사용된다. 발견 유닛 또는 디바이스는 조회 메시지에 응답하는 모든 유닛의 클록 및 블루투스 디바이스 어드레스를 수집한다.
- 조회 스캔 : 이 조회 스캔 상태에서, 블루투스 디바이스는 다른 디바이스로부터의 조회를 청취한다. 스캔 디바이스는 범용 조회 액세스 코드(GIAC) 또는 전용 조회 액세스 코드(DIAC)를 청취할 수 있다.
- 페이지 : 이 페이지 상태는 조회 프로시저를 통해 다른 디바이스를 발견한 조회 유닛 또는 디바이스에 의해 사용된다. 조회 유닛은 상이한 홉 채널(in different hop channels)의 피조회 유닛의 디바이스 액세스 코드(DAC)를 전송함으로써 페이지 메시지를 전송한다.
- 페이지 스캔 : 이 상태에서는, 유닛이 스캔 윈도우 기간 동안 그 자신의 디바이스 액세스 코드(DAC)를 청취한다. 상기 유닛은 이 스캔 윈도우 내의 (그의 페이지 호핑 시퀀스로부터 도출된) 단일 홉 주파수에서 청취한다.
- 접속 : 이 접속 상태가 확립되면, 하나의 유닛이 마스터가 되고 다른 유닛이 슬레이브가 된다. 이 상태에서, 유닛들은 채널 (마스터) 액세스 코드 및 마스터 블루투스 클록에 의해 결정된 채널 호핑 시퀀스를 사용하여 패킷들을 교환할 수 있다.
- 대기(standby) : 대기 상태는 블루투스 유닛에서 디폴트 저 전력 상태(a default low power state)이다. 오직 원시 클록(native clock)만이 동작하며 임의의 다른 디바이스와의 상호작용은 없다.
또한, 몇몇 중간 상태, 즉 조회 응답 상태, 슬레이브 응답 상태 및 마스터 응답 상태가 존재한다. 이러한 상태들은, 이하에서 블루투스 접속 확립 프로토콜의 설명과 관련하여 보다 상세하게 설명될 것이다.
도 1은 두 개의 블루투스 기능을 갖춘 디바이스, 즉 조회 유닛(101)과 피조회 유닛(102) 간의 통상적인 지점간 접속 확립 프로시저를 도시한 논리 흐름도(100)이다. 두 유닛은 조회 호핑 시퀀스(an inquiry hopping sequence)라고 하는 범용 주파수 호핑 세트를 사용한다. 상기 표준 접속 확립 프로세스에 수반되는 단계들은 다음과 같다.
1. 조회 유닛(101)이 먼저 조회 상태(120)로 진입하여 범용 조회 호핑 시퀀스에 따라서 3200 홉/초의 레이트로 조회 액세스 코드(IAC) 패킷(111)을 신속하게 전송하고 전송 간의 응답을 청취함으로써 해당 범위 내에 존재하는 디바이스를 발견하려고 시도한다.
2. 피조회 유닛(102)은 조회 스캔 상태(130)에서 시작하며, 근방의 조회 유닛에 의해 자신이 발견되도록 한다. 피조회 유닛(102)은 가능한 조회 유닛(101)이 특정 반송 주파수 상에 조회 메시지를 전송하는 것을 주파수 반송파상에서 청취하기 시작한다. 1.28 초 마다, 유닛은 범용 조회 호핑 시퀀스에 따라 (주파수 채널 내의) 자신이 청취한 반송파를 한 홉 앞으로 이동시킨다. 조회 유닛(101) 및 피조회 유닛(102)이 동일 주파수 채널에 동기화될 때까지 관련 주파수 동기화 지연이 존재한다.
3. 일단 조회 유닛(101) 및 피조회 유닛(102)이 동일한 주파수 상에서 통신하게 되면, 피조회 유닛(102)은 조회 유닛(101)으로부터 IAC 패킷(111)을 수신한다. 조회 메시지를 수신하면, 피조회 유닛(102)은 대기 상태(140)로 진행하며 0과 639 밀리초 사이에서 일정하게 분포된 사전결정된 시간 R 동안 휴면 상태가 된다(sleep).
4. 피조회 유닛(102)은 휴면 상태에서 깨어나서 자신이 휴면 상태가 되기 전에 청취했던 홉으로부터 주파수 호핑을 시작함으로써 다시 조회 응답 상태(150)에서 청취를 시작한다.
5. 제 2 IAC 패킷(112)이 수신되고 피조회 유닛(102)은 주파수 호핑 시퀀스(FHS) 패킷(113)을 조회 유닛(101)으로 반송시킨다. FHS 패킷(113)은 피조회 유닛의 블루투스 어드레스 및 클록 값을 포함하는데 그들은 조회 유닛(101)에 대한 귀중한 동기화 정보로써, 후속하는 페이징 프로세스(paging process)의 속도를 증가시킬 것으로 고려된다. FHS 패킷(113)으로 응답한 직후에, 피조회 유닛(102)은 페이지 스캔 상태(160)로 진입하며 그 자신의 페이지 호핑 시퀀스에 따른 호핑에 의해 자신의 디바이스 액세스 코드(DAC)를 청취하기 시작한다.
6. 조회 유닛 측에서, 조회 유닛(101)은 피조회 유닛(102)의 DAC 및 페이지 호핑 시퀀스를 결정하는데 사용되는 정보와 함께 피조회 유닛(102)으로부터 FHS 패킷(113)을 수신한다. 이 시점부터 페이징 프로시저가 개시된다. 조회 유닛(101)은 페이지 상태(170)로 진입하여 피 조회 유닛(102)의 페이지 호프 시퀀스에 따라 DAC 패킷(114)을 전송함으로써, 페이징을 시작한다.
7. 피조회 유닛(102)은 DAC 패킷(114)을 수신하며, 이어서 DAC 패킷(115)을 전송함으로써 응답하며 슬레이브 응답 서브상태(180)로 진입한다.
8. 조회 유닛(101)은 피조회 유닛(102)에 의해 전송된 DAC 패킷(115)을 수신하며 마스터 응답 서브상태(190)로 진입하며, 그 다음 그의 어드레스 및 클록 정보를 포함하는 FHS 패킷(16)을 피 조회 유닛(102)으로 전송한다.
9. 피조회 유닛(102)은 조회 유닛(101)에 의해 전송된 FHS 패킷(116)을 수신하고 FHS 패킷(116)으로 수신된 바와 같은 조회 유닛(101)의 채널 액세스 코드 및 클록으로 변경한다. 피조회 유닛(102)은 FHS 패킷(116)의 수신에 대한 긍정 응답으로서 DAC 패킷(117)을 전송하며 이러한 지점간 접속에서 슬레이브 역할을 하는 접속 상태(198)로 진입한다.
10. 조회 유닛(101)은 피조회 유닛(102)으로부터 DAC 패킷(117)을 수신하면 접속 상태(199)로 진입하며 지점간 접속의 마스터로 된다.
상술한 통상적인 블루투스 프로토콜에 따라, 두 개의 블루투스 기능을 갖춘 디바이스들 간의 접속이 확립될 수 있으며, 후속하여 디바이스들은 임의의 원하는 양의 정보를 교환할 수 있다.
블루투스가 유망한 새로운 기술이지만, 통상적인 접속 확립 프로시저 또는 프로토콜 고유의 단점이 얼마간 존재한다. 상술한 바와 같이, 블루투스는 피어 투 피어(peer to peer), 애드 호크 무선 접속을 지원한다. 즉, 인접한 두 디바이스는 서로 발견할 수 있으며 그들 간의 통신 링크를 형성할 수 있다. 블루투스가 지점간 접속 및 지점 대 다중 지점 접속을 지원하기 위해 주파수 호핑 확산 스펙트럼 기술(frequency-hopping spread-spectrum technology)을 사용하기 때문에, 디바이스들이 주파수 호핑 패턴을 동기화하고 한 후에만 서로 간에 통신할 수 있게 된다. 이것은, 호스트들이 그들의 주파수 호핑 패턴을 동기화함으로써 서로를 이전에 발견하지 않았다면 호스트들이 통신할 수 없음을 의미한다. 심지어, 모든 노드가 서로의 직접 통신 범위 내에 존재할지라도, 네트워크 내에서 개별 링크를 형성하는 동안 랜덤 동기화 지연(random synchronization delays)이 도입된다. 동기화 프로세스 (또는 블루투스 용어로는 조회 프로세스)는 시간 소모적이며 비대칭적인 프로세스이다(즉, 두 개의 노드가 상이한 초기 상태로 존재할 것을 요구함). 따라서, 두 개의 블루투스 디바이스에 전력이 인가되면, 이들 디바이스들 간의 링크를 확립하는데 몇 초가 소요된다.
발명의 개요
본 발명의 방법 및 장치는, 종래의 접속 확립 방법에 비해 크게 개선된, 두 개 이상의 디바이스들, 바람직하게는 블루투스 기능을 갖춘 디바이스들 간의 발견 및 링크 확립을 위한 프로토콜을 제공한다. 본 발명에서, 다수의 블루투스 기능을 갖춘 디바이스는 서로 탐색하여 종래의 구현보다 복잡한 네트워크 구조내에 자신들을 자동적으로 배치시킨다. 본 발명의 비동기 분산형 프로토콜(asynchronous distributed protocol)은 그들 주변에 대한 어떤 정보도 가지지 않는 노드로 시작하지만 최종적으로는 블루투스 기술 또는 유사한 디바이스 접속 기술에 의해 부여되는 구조적 접속 제약을 만족시키는 네트워크를 형성한다.
본 발명의 일 실시예에서 따르면, 무선 통신 채널을 통해 두 개 이상의 디바이스들 간의 대칭적 접속을 형성하는 방법은 사전결정된 확률 분포를 선택하는 단계와, 상기 확률 분포와 관련된 하나 이상의 파라미터를 조절하는 단계와, 상기 사전결정된 확률 분포에 따라 두 개의 가능한 상태들 간에 참여 디바이스 노드들을 교번시키는 단계를 포함한다. 이러한 방식에 있어서, 링크 또는 접속 확립은 상기 관련된 디바이스 노드들에게 초기 상태를 명확하게 할당하지 않고도 발생한다.
본 발명의 제 2 실시예에 따라, 신규한 교번 상태 기술이 사용되어 애드 호크 무선 통신 네트워크에서 다수의 디바이스 또는 노드 간의 스캐터넷을 형성한다. 제 1 페이즈(phase) 동안, 두 노드 간에 지점간 접속을 형성하고 승리 노드(a winning node)를 결정함으로써 코디네이터 노드(coordinator node)가 선택된다. 하나의 승리 코디네이터 노드가 남게 될까지 연속적인 "일대일 다툼(one-to-one battles)"이 실행된다. 코디네이터 노드는 네트워크의 각각의 참여 디바이스/노드에 대한 정보를 결정하고 저장할 것이다. 제 2 페이즈 동안, 코디네이터 노드는 네트워크 내의 각 디바이스에 역할들을 할당하는데, 예를 들어 어떤 노드는 마스터가 되며 어떤 노드는 슬레이브 또는 브리지 노드가 된다. 제 3 페이즈 동안, 무선 네트워크는 상기 코디네이터에 의해 할당된 역할에 따라 접속된다.
본 발명의 이러한 목적 및 특징 및 장점과 다른 목적 및 특징 및 장점이 첨부 도면을 참조하여 기술되는 다음의 본 발명의 상세한 설명 부분으로부터 분명하게 이해될 것이며, 상기 도면에서는 유사 요소는 동일한 참조 부호에 의해 표시된다.
도 1은 두 개의 블루투스 기능을 갖춘 디바이스들 간의 통상적인 비대칭 접속 확립 프로토콜을 설명하는 논리적 흐름도,
도 2는 본 발명의 일 실시예에 따라 형성된, 사전 역할 할당 없이 대칭형 지점간 접속 확립 프로토콜을 제공하는 집합적 교번 상태(aggregate ALTERNATE state)를 설명하는 논리적 흐름도,
도 3은 도 2에 도시된 대칭형 지점간 접속 확립 프로토콜을 도시하는 논리적 타이밍 도면,
도 4는 본 발명의 일 실시예에 따른, 네트워크 형성 프로토콜의 선택 프로세스(페이즈 I) 동안 각 노드에 의해 취해진 동작 및 상태 트랜잭션(state transactions)을 설명하는 논리적 흐름도,
도 5는 본 발명의 일 실시예에 따른, 네트워크 형성 프로토콜의 역할 할당 페이즈(페이즈 II) 동안 코디네이터 노드에 의해 취해진 동작을 설명하는 논리적 흐름도,
도 6은 본 발명의 일 실시예에 따른, 네트워크 형성 프로토콜의 역할 할당 페이즈(페이즈 II) 및 접속 확립 페이즈(페이즈 III) 동안 슬레이브 노드에 의해 취해진 동작을 설명하는 논리적 흐름도,
도 7은 본 발명의 일 실시예에 따른, 네트워크 형성 프로토콜의 접속 확립 페이즈(페이즈 III) 동안 지정된 마스터 노드에 의해 취해진 동작을 설명하는 논리적 흐름도,
도 8은 프로세서 및 관련 구성 요소를 포함하는 통상적인 블루투스 기능을 갖춘 디바이스의 블록도.
본 발명은 두 개의 블루투스 기능을 갖춘 디바이스 또는 노드가 서로 간의 지점간 통신 접속을 자동적으로 확립하는 것을 시도하는 실용적 애플리케이션과 과련하여 기술될 것이다. 그러나, 본 발명은 이러한 특정 통신 접속 애플리케이션에 국한되는 것은 아니다. 이보다는, 본 발명의 방법 및 장치는 본 명세서에서 제안된 원리에 따라, 애드 호크 무선 네트워크에서 사실상 무한정의 디바이스들 및/또는 노드들을 접속시키는데 광범위하게 사용된다.
본 발명의 일 측면에 따라, 도 2는 종래에 실행된 임의의 사전 역할 할당을 채용하지 않고 대칭 접속 확립 프로토콜을 제공하기 위해 바람직하게 사용되는 집합적 교번 상태(an aggregate ALTERNATE state)(200)을 도시한 도면이다. 교번 상태(200)는 가령 본 명세서에서 참조로서 인용되는 K. Fleming의 "Bluetooth Host Controller Interface[HCI]" 버전 1.0 에서 정의된 프로그램 명령 및/또는 루틴을 사용하여 본 기술의 당업자에 의해 구현될 수 있다. 본 발명의 프로토콜은 하드웨어에 있어서 이와 유사하게 구현될 수 있다.
가령, 엔드 사용자가 간단하게 시작 버튼을 활성화시키고 자동적으로 확립될 접속을 대기함에 의해 개시되는 시동시(startup)에, 바람직하게 각 블루투스 유닛은 시작 타임 아웃 타이머(a start timeout timer)(203)를 초기화하고 이어서 제 1 상태(201)로 진입한다. 바람직하게 시작 타임아웃 타이머(203)는 경과 시간을 추적하며 가령 본 기술의 당업자에게 잘 알려진 표준 카운터로서 구현될 수 있다. 상태(201)는 조회 또는 조회 스캔 상태 중 임의적으로 선택될 수 있음을 이해하는 것이 중요하다. 또한, 바람직하게 조회 상태 및 조회 스캔 상태는 종래의 접속 확립 방법에서처럼, 엔드 유저에게는 투명하지만 사전결정되는 것은 아님을 알아야 한다. 도 2의 예시를 참조하면, 상태(201)는 조회 상태로 선택된다.
바람직하게, 블루투스 유닛은 기간 R1 동안, 본질적으로 "휴면" 또는 대기 모드(211)로 기능하는 조회 상태(201)로 존재하는데, 이 모드에서는 실질적으로 어떠한 디바이스 상호작용도 발생하지 않는다. 바람직하게, 유저에 의해 선택된 사전 정의된 확률 분포는 유닛이 조회 상태 또는 조회 스캔 상태로 존재하게 되는 기간을 제어하는데 사용된다. 이러한 확률 분포는 가령 램던 분포(a random distribution)가 되도록 선택된다. 분포와 관련된 하나 이상의 파라미터를 수정함으로써, 유저는 교번 상태 시퀀스에 영향을 줄 수 있으며, 그에 의해 요구되는 디바이스 접속 확립 시간을 최적화할 수 있다.
유닛이 기간 R1 동안 상태(201)로 유지된 후에, 바람직하게 사전 정의된 고정 시간 간격 ALT_TIMEOUT(220)이 초과되었는지의 여부를 판정하기 위해 경과 시간이 측정된다(213). 간격 ALT_TIMEOUT가 초과되었다면, 블루투스 유닛은 바람직하게는 교번 상태(200)를 벗어난다(217). 교번 상태(200)를 벗어난 때, 바람직하게 유닛은 사전 정의된 타임 아웃 기간 내에 어떤 접속도 확립되지 않았음을 나타내는 플래그 또는 유사한 표시 수단을 설정함으로써, 타임 아웃 통지를 발생할 수 있다. 만일 기간 ALT_TIMEOUT가 초과되지 않았다면, 유닛은 제 2 상태(202)로 진행하는데, 제 2 상태는 제 1 상태로써 임의 선택되었던 두 초기 상태(조회 상태 또는 조회 스캔 상태) 중 남아있는 한 상태이다. 도 2의 예시에 있어서, 제 2 상태(202)는 조회 스캔 상태인데, 그 이유는 제 1 상태(201)가 조회 상태로 임의 선택되었기 때문이다. 다음에, 유닛은 제 2 기간 R2 동안 상태(202)로 남게 되고 본질적으로 "휴면" 모드(212)로 기능한다. 제 1 기간 R1에 대하여, 바람직하게 사전 정의된 확률 분포는 유닛이 그의 현 상태(202)를 유지하는 기간 R2의 길이를 제어하도록 선택된다. 기간 R2를 결정하는데 사용되는 분포는 기간 R1를 제어하는데 사용되는 분포와는 다르다. 다시 한번, 이어서 타임 아웃 만료 체크(213)가 바람직하게는 위에서 상술된 바와 같이 본 발명에 따라 수행된다.
접속을 확립하기 위한 동작 범위 근방에 다른 블루투스 유닛이 존재하지 않는다고 가정하면, 상태 스위칭 프로시저(200)(즉, 조회 상태와 조회 스캔 상태 간에서 교번적으로 스위칭하는 프로시저)는 바람직하게는 일단 사전 정의된 고정 타임 아웃 기간 ALT_TIMEOUT(220)이 초과되면 정지될 것이다. 동작 범위내에 다른 블루투스 기능을 갖춘 유닛이 존재하면, 바람직하게 두 유닛은 교번 상태 프로토콜(200)을 사용함에 의해 시작하고 특정 유닛이 조회 상태(201)인지 또는 조회 스캔 상태(202)인지에 따라서, 각 유닛은 후속하여 접속 상태(205)로 진입하여 각기 마스터 유닛 또는 슬레이브 유닛으로 작용할 것이다. 유효한 접속이 두 블루투스 유닛 간에 확립되도록 하기 위해서는, 두 유닛은 상보 상태(가령, 조회 상태 및 조회 스캔 상태)이어야 한다. 접속 상태(205)로 진입되었으면, 바람직하게 상기 교번 상태(200)로 부터 벗어난다.
예를 들어, 두 개의 블루투스 기능을 갖춘 디바이스, 즉, 유닛 A(360)와 유닛 B(370)를 수반하는 시나리오를 고려해보자(도 3 참조). 여기서, 각 유닛은 서로 간에 접속을 확립하고자 할 때에 본 발명의 교번 상태 프로시저(200)(도 2 참조)를 사용한다. 도 3은 본 발명의 교번 상태 프로시저를 실행하면서 각 유닛(360,370)에 의해 수행되는 예시적인 상태 스위칭 시퀀스를 나타내는 논리적 타이밍 도면(300)이다. 도 3을 참조하면, 두 블루투스 유닛(360,370)에 대한 상태 스위칭 기능이 설명을 편이성을 위해서 공통 시간 축 상에서 중첩되는 병합 스케줄(Merged Schedule)(330)과 함께 도시된다. I로 표시된 간격(301)은 유닛이 조회 상태가 되는 기간에 대응하며, S로 표시된 간격(302)은 유닛이 조회 스캔 상태가 되는 기간에 대응한다. 조회 상태 및 조회 스캔 상태는 도 2에 도시된 교번 상태 프로시저와 관련하여 상기에서 설명하였다.
도 3의 예시는 유닛 A(360)가 이미 교번 상태 프로토콜을 개시하여, 임의의 초기 시점 t0 (320) 이전의 결정되지 않은 기간 동안 다른 블루투스 디바이스와의 통신 링크를 확립하려고 시도하고 있고, 그에 따라 조회 상태와 조회 스캔 상태 간에서 교번하고 있음을 전제로 한다. 초기 시점 t0 (320)은 바람직하게는 유닛 B(370)에 대한 시작점이 되도록 임의로 선택되며, 여기서 유닛 B는 마찬가지로 본 발명에 의해 정의된 교번 상태 프로시저에 따라 조회 상태 및 조회 스캔 상태 간에서 교번하기 시작한다.
바람직하게 병합 스케줄(330)은 다수의 "온-오프" 간격 Xi 에 의해 특성화되는 두 유닛(360,370)에 대해 결합된 상태 스위칭 시퀀스를 디스플레이 한다. 바람직하게는, 간격 Xi 는 하나 또는 두 블루투스 유닛(360,370)의 상태 변경들 간의 기간으로서 정의된다. 임의의 간격 Xi 의 지속 기간은 랜덤한데, 그 이유는 유닛이 임의의 특정 상태(가령, 조회 상태 또는 조회 스캔 상태)로 유지되는 시간이 상술한 바와 같이 랜덤하기 때문이다. 따라서, 간격 Xi 는 일반적으로 서로에 대해 균일하게 이격되어 있지 않지만, 간격 Xi 가 균일하게 이격될 수 있는 통계적 확률은 존재한다.
본 발명의 바람직한 실시예에 따라서, 두 유닛(360,370)은 이들이 상보성 상태(가령, 유닛(360)은 상태(301)로 존재하며, 유닛(370)은 상태(302)로 존재함)로 존재하는 시간 간격 동안에만 서로의 위치를 파악하거나 서로를 발견할 수 있는 기회를 갖는다. 본질적으로, 이는 배타적 논리합 함수에 해당하며, 이로써 병합된 스케줄(330)은 두 개의 유닛(360,370)이 동일한 상태로 존재하지 않을 때마다 로직 "1"(온) 출력을 표시한다. 이러한 "온" 간격은 311,312,313,314,315,316이며, 이는 각기 간격 X1,X3,X5,X7,X9,X11에 대응한다.
도 3에서, 제 1 "온" 간격 X1 (311)의 시작에서, 유닛(360,370)은 바람직하게는 가령 도 1과 함께 이전에 설명된 단계들을 사용하여, 통상적인 방식으로 접속 확립 프로시저를 개시한다. 이러한 접속 확립 프로세스는 일반적으로 주파수 동기화 지연 및 피조회 유닛의 대기 또는 백오프 지연(backoff delay)(140)(도 1 참조)을 포함하는 랜덤한 유한 시간량 T(340)를 취할 것이다. 접속 프로세스를 완료하기 위한 시간량 T(340)가 "온" 간격(가령, 316)의 기간보다 작다면, 도 1의 접속 프로시저를 실행한 후에, 바람직하게 두 유닛(360,370)은 도 2의 접속 상태(205)로 진입한다. 이렇게 접속 상태(205)로 진입한 후에, 상기 두 유닛은 바람직하게는 유효한 접속이 확립되었음을 알리는 출력 통지 또는 이와 등가인 적합한 출력에 따라 교번 상태 프로시저(200)를 나간다(도 2 참조). 그러나, 두 유닛 중 하나가 도 1에 도시된 접속 프로시저를 완료하기 이전에 상태를 변경한다면(가령, 조회 상태(301)에서 조회 스캔 상태(302)로의 변경)(가령, 완료 시간 T(340)이 각각의 "온" 간격보다 크다면), 어떠한 유효한 접속도 확립되지 않으며 유닛(360,370)은 다음의 후속하는 "온" 간격(가령 간격 X3(312))까지 접속 프로시저가 다시 시도되기까지 대기해야 한다. 유닛이 다음의 유효한 간격(312) 동안 접속을 실패하면, 접속은 다음 "온" 간격(313,314) 동안 계속적으로 시도되며 접속이 확립될 때까지 또는 사전결정된 접속 타임 아웃 기간이 만료될 때까지 상기와 같은 양상이 계속된다. 접속 확립 시간 Tc(321)는 바람직하게는 초기 시간 t0 (320)에서 시작하고 본 발명의 교번성 접속 프로시저를 사용하여 접속을 확립하는데 필요한 충분한 시간 동안 두 블루투스 유닛(360,370)이 상보성 상태로 존재하게 되는 시점 tn(322)에서 종료되는 기간으로서 정의된다.
도 2 및 도 3에 도시된 본 발명의 신규한 "교번 상태(alternating states)" 기술은 두 블루투스 유닛 간의 애드 호크 지점간 접속을 확립하는 메카니즘이다. 두 개 이상의 디바이스가 존재하고 그들이 "분주하게 동작하는(on the fly)" 스캐터넷(a scatternet)을 형성하기를 원한다면, 본 발명은 제 2 실시예에 따라서 상술된 "교번 상태" 메카니즘을 포함하는 독특한 프로토콜을 제공하여 그에 따른 네트워크가 블루투스 스캐터넷의 요건 및 아키텍쳐를 충족 및 완성하는 것을 보장한다.
블루투스 기능을 갖춘 디바이스를 사용하여 애드 호크 네트워크를 형성하고자 하는 몇 명의 유저(또는, 유사하게는, 다수의 블루투스 기능을 갖춘 디바이스들을 사용하는 단일 유저)가 룸(room)내에 존재하는 예시적인 애플리케이션을 고려해보자. 각 유저는 바람직하게는 "시작" 버튼을 눌러서 접속 프로시저를 개시하거나 유사한 프로세스를 실행하고, 이어서 가령 짧은 시간 후에 "네트워크 접속 확립됨"이라는 문구를 디스플레이함으로써 접속이 확립되었음을 디바이스가 긍정 응답하는 것을 대기한다. 이러한 긍정 응답 후에, 유저는 그 룸 내의 다른 유저 또는 다른 디바이스와 정보를 교환할 수 있을 것이다. 이러한 실례의 경우, 접속에 참여하는 모든 디바이스들이 서로의 동작 범위 내에 존재한다고 가정되는데, 이러한 가정은 단일 룸에서 수 많은 무선 디바이스들을 네트워킹하기 위한 논리적 가정이다.
이와 같은 시나리오는 실제로 다음과 같은 여러 요소의 성공적인 접속 확립 프로토콜의 요소를 포함한다.
1. 네트워크 접속 확립은 실질적으로 분산 방식으로 수행되어야 한다. 이는 각 디바이스가 바람직하게는 그 자신에 대한 동작을 비동기적으로 시작하고 초기에는 룸 내의 노드의 수 또는 식별부에 대한 어떠한 정보도 가지지 않음을 의미한다.
2. 성공적인 접속 완료 후에, 프로토콜은 접속된 스캐터넷을 보장해야 한다. 네트워크 내의 임의의 두 노드 간에 적어도 하나의 경로가 존재해야 한다(타당성).
3. 네트워크는 엔드 유저가 허용할 수 있는 적당한 시간 내에 접속되어야 한다(효율성).
본 발명의 바람직한 실시예에 따르면, 블루투스 스캐터넷의 최종 형태에 대한 필수적으로 어떠한 제약도 존재하지 않는다. 유일한 요건 또는 가이드라인은 다음과 같다.
1. 하나의 마스터 및 7 미만의 슬레이브(이들 중 몇 개는 브리지임)를 구비한 피코넷들이 존재해야 한다.
2. 피코넷들은 브리지 노드를 통해 상호 접속되어야 한다.
3. 모든 노드는 최종 완성된 네트워크를 통해 모든 다른 노드에 도달할 수 있어야 한다(즉, 네트워크는 완전하게 접속되어 있어야 한다).
위와 같은 자유로운 상태가 주어진다고 가정하면, 보다 신속한 프로토콜을 설계하기 위해서, 본 발명은 바람직한 실시예에 따라서 다음과 같은 구조적 제약을 부과한다.
1. 하나의 브리지 노드는 오직 두 개의 피코넷만을 접속시킬 수 있다(브리지 정도 제한). 브리지는 시분할 방식으로 그의 작업을 여러 부분으로 분할해야 한다. 각 휴대용 디바이스가 제한된 처리 능력을 가진다면, 2라는 최대 브리지 등급을 부여하는 것은 다수의 발신 데이터 전송을 위한 교차로드(crossroad)인 노드를 원조할 수 있게 한다.
2. 두 개의 피코넷은 오직 하나의 브리지를 공유한다(피코넷 중첩 제한). 이러한 조건은 바람직하게는 접속 확립 프로토콜을 보다 신속하게 종결하는 수단을 제공하기 위해 부여된다. 두 개의 마스터가 나중에 그들 간에 다른 브리지를 공유하기를 원한다면, 예를 들어, 그들은 종래의 브리지 협상 프로토콜에 의해 그렇게 할 수 있다.
본 발명의 바람직한 실시예에 따르면, 스캐터넷 내의 블루투스 디바이스들을 접속하기 위한 프로토콜 또는 메카니즘이 제공된다. 프로토콜은 바람직하게는 적어도 부분적으로 리더 선정 알고리즘(a leader election algorithm) 또는 프로세스를 기초로 한다. 당업자라면 알 수 있는 바와 같이, 선정된 리더는 자신이 선정되었음을 알고 다른 노드들은 자신들이 선정되지 않았음을 안다는 의미로 리더 선정은 유일한 리더 노드를 선택하는 문제를 처리한다. 리더 선정의 개념은 분산형 시스템에서 대칭성을 파괴하는데 사용될 수 있는 중요한 툴(tool)이다. 노드가 비동기적으로 그리고 참가 노드의 총 수를 전혀 알지 못한채 시작하기 때문에, 리더는 네트워크 확립을 제어할 수 있다.
본 발명의 네트워크 확립 프로시저는 바람직하게 3 개의 개별적인 페이즈, 즉, 코디네이터 선정 페이즈(페이즈 I), 역할 결정 페이즈(페이즈 II), 접속 확립 페이즈(페이즈 III)를 포함한다. 이들 각 페이즈는 이하에서 상세하게 설명될 것이다.
페이즈 I : 코디네이터 선정
코디네이터 선정 페이즈 동안, 바람직하게는 네트워크 구성에 있어서 각 참여 노드의 수와, 어드레스 및 클록 정보를 최종적으로 결정하고 저장할 코디네이터 노드의 비동기적 분산형 선정이 존재한다. 상기 코디네이터 노드는 참여 노드들 중 어떤 노드가 네트워크의 마스터가 되며 어떤 노드가 네트워크의 슬레이브 및 브리지(상기 슬레이브는 바람직하게는 두 개 이상의 마스터를 위해 봉사함)가 될지를 결정하는 책임을 맡는다.
몇몇 변수 및 이와 관련된 함수가 바람직하게는, 본 발명과 함께 사용되기 위해 정의된다. 페이즈 I 동안, 각 유닛 또는 노드 x는 바람직하게는 임의로 사용할 수 있는 다음과 같은 변수를 갖는다.
1. MY_VOTES: 이 변수는 특정 노드가 지금까지 수신하였던 보트(votes)의 수를 결정하는데 사용된다.
2. OTHER_VOTES: 지점간 접속 동안, 이 변수는 다른 피어 노드(other peer node)의 MY_VOTES 값으로서 정의된다.
3. MY_ID : 이 변수는 유닛 x의 블루투스 어드레스를 보유한다.
4. OTHER_ID : 지점간 접속 동안, 이 변수는 다른 피어 노드의 MY_ID 로서 정의된다.
5. MY_FHS_LIST : 어레이로서 구현될 수 있는 이 변수는 유닛 x가 자신을 포함하여 지금까지 경험한 노드의 파일 계층 시스템(file hierarchy system)(FHS) 패킷의 현 리스트를 보유한다. 이 리스트는 가령 다음 유형의 엔트리를 포함한다.
typedef struct FHSListInfo_type
{
unsigned int address;
unsigned int clock;
}FHSInfo;
6. OTHER_FHS_LIST : 지점간 접속 동안, 어레이로서 구현될 수 있는 상기 변수는 다른 피어 노드의 MY_FHS_LIST 로서 정의된다. 이 리스트도 또한 상기한 바와 같이 유형 FHSInfo의 요소를 포함한다.
도 4는 본 발명에 따라, 페이즈 I의 예시적 실례 동안 각 노드에 의해서 발생하는 동작 및 상태 전이를 도시하는 논리적 흐름도(400)이다. 도 4에서, 각 노드는, 바람직하게, 변수 MY_VOTES = 1를 설정함으로써 초기화 상태(410)에서 시작한다(411). 초기화 상태(410)에서, FHSInfo 엔트리는, 바람직하게, 특정 노드에 대한 블루투스 어드레스 및 클록 정보를 포함하는 어레이 MY_FHS_LIST(412)에 부가된다. 리스트 엔트리 M_FHS_LIST[0]은, 바람직하게, 노드 x의 블루투스 어드레스와 클록 정보를 포함한다. 또한, 노드 x는 바람직하게는 MY_ID = M_FHS_LIST[0].address를 설정한다(413). 초기화 상태(410)를 벗어나기 전에, 교번 상태 프로시저에서 사용된 시작 타임 아웃 타이머(도 2에서 203)가, 바람직하게, 시작되고 이어서 도 2를 참조하여 설명된 집합적 교번 상태(200)로 들어간다.
도 4를 참조하면, 서로를 발견하는 임의의 두 노드 x,y는, 바람직하게, 지점간 접속을 형성하며, 둘 다 출력 또는 출구 지점(exit point)(216)을 통해 교번 상태(200)를 벗어난다. 접속 형성시, 두 노드 x,y는, 바람직하게, 일 대 일 다툼으로 진입하여 두 노드 중 어느 노드가 "승자(winner)"로서 간주될 지를 결정한다. 가령, 그 다툼은 두 노드 x,y 간에 변수 MY_VOTES 및 MY_ID 에 대한 정보를 교환하는 것을 포함한다(420,422,423). 그 다음 각 유닛은 자신의 MY_VOTES 변수를 자신의 OTHER_VOTES 변수(이 변수는 다시 다른 유닛의 MY_VOTES 변수와 동일하다고 생각된다)와 비교한다(430). 만일 두 변수가 동일하면(431), 다른 비교(440)가, 바람직하게, 두 노드의 MY_ID 변수에 대해서 수행되는데, 보다 긴 ID를 갖는 노드가 승자가 된다. 이와 달리, MY_VOTES 변수 및 OTHER_VOTES 변수가 동일하지 않으면(432), 후속하는 비교 단계(450)가, 바람직하게, 수행되는데, 보다 큰 수의 보트(votes)를 갖는 유닛이 승자가 된다(451).
도 4의 예시에서 유닛 x가 우세한 유닛으로 결정된다고 가정한다. 패배한 유닛 y(442,452)은, 바람직하게, 페이지 스캔 상태(380)로 진입하기 전에 특정 중간 작업(460)을 수행한다. 이 중간 작업(460)은 자신의 MY_FHS_LIST 변수를 승리한 유닛 x에 전송하는 단계(461)와, MASTER_COUNT 변수 = 0을 설정하는 단계(462)와, 유닛 x로부터 접속 해제되는 단계(463)를 포함한다. 페이지 스캔 단계(480)로 진입한 후, 패배한 유닛 y는 조회 메시지에 응답할 수 없으며 오직 자신에 대해 알고 차후에 자신을 페이징할 노드로부터의 페이지 메시지에 대해서만 응답할 것이다. 본질적으로, 이는 그 노드를 코디네이터 선정 프로세스로 부터의 경합에서 제외시키며 본 발명의 신규한 블루투스 네트워크 형성 프로토콜의 페이즈 II를 위해 상기 노드를 준비하는 효과를 가진다.
승리한 유닛 x(441 또는 451)은 바람직하게는 국부 변수 OTHER_FHS_LIST 내의 패배한 유닛의 MY_FHS_LIST를 수신하는 단계(471)와 그의 현 MY_FHS_LIST에 이 리스트를 부가하는 단계(472)를 포함하는 특정 작업(470)을 수행한다. 승리한 유닛 x는, 바람직하게, OTHER_VOTES 값과 동일한 양까지 자신의 현 MY_VOTES 값을 증가시키고, 이후 패배한 유닛 y과의 접속을 최종적으로 종결하고(473) 시작 타임 아웃 타이머(474)를 재시작한다. 그 다음 승자 유닛 x는, 바람직하게, 교번 상태(200)로 진입하여 네트워크에 모든 참여 노드가 최종적으로 알려질때까지 프로세스(400)를 계속 반복한다. 그러므로, 페이즈 I의 종료 시에는, 교번 상태(200)의 오직 하나의 유닛만이 존재할 것이며 타임 아웃 ALT_TIMEOUT가 초과되었을 때(이는 발견될 어떤 노드도 더 이상 존재하지 않음을 나타냄) 최종적으로 남은 유닛은 출력 지점(217)을 통해 상기 상태를 벗어날 것이다. 이 시점에서, 최종적으로 남은 유닛이 선정된 코디네이터 유닛이 되며 이로써 리더 상태(490)로 진입함으로써 페이즈 II를 개시할 것이다. 타임 아웃 간격 ALT_TIMEOUT(도 2에서 220)은 오직 하나의 노드만이 최종적으로 코디네이터 노드로서 선정되도록 하는 것을 보장하도록 선택되어야 한다.
페이즈 II : 역할 결정
페이즈 I의 종료 시에, 전체 경쟁에서의 승자가 코디네이터가 되며, 나머지 노드들은, 바람직하게, 페이지 스캔 상태(480)로 머무르면서 페이징되기를 대기한다. 페이지 스캔 상태(480)의 코디네이터 노드 및 다른 노드들은 일반적으로 상이한 동작들을 수행한다.
몇몇 변수 및 이와 관련된 기능들이 본 발명에 따라 사용하기 위해 정의된다. 코디네이터 노드에 의해 페이즈 II에서 사용되는 변수들은 바람직하게는 다음과 같은 변수를 포함한다.
1. N : 이 변수는 페이즈 I에서 나타난 노드의 수를 나타낸다.
2. P : 이 변수는 최종적으로 완성된 스캐터넷이 포함하는 마스터의 수를 나타낸다.
3. BRIDGELIST(i) 및 SLAVELIST(i) : 최종적으로 완성된 피코넷의 각 마스터 i에 대해, 깊이 i의 어레이로 구현될 수 있는 BRIDGELIST(i) 및 SLAVELIST(i)의 리스트 쌍은, 바람직하게, 마스터 노드 i에 할당된 브리지 노드 및 슬레이브 노드의 식별부를 각기 저장한다.
4. MASTERS : 이 변수는 크기 P의 리스트이며, 바람직하게는 유형 FHSInfo의 엔트리를 저장하고 코디네이터에 의해 선택되었던 마스터를 포함한다.
5. HeadPacket : 이는 각 접속 확립 프로시저의 시작시에 마스터 노드에서 슬레이브 노드로, 바람직하게, 항상 전송되는 데이터 패킷이다. 바람직한 실시예에서, 이 패킷은 다음과 같은 두 개의 비트에 의해 명시된대로 슬레이브 노드가 행동하도록 지시한다.
5.1 HeadPacket.Mbit : 이 비트가 1 이면, 이는 HeadPacket를 수신하는 노드가 최종적인 스캐터넷에서 마스터 노드로 될 코디네이터에 의해 할당됨을 명시한다.
5.2 HeadPacket.Bbit : 이 비트가 1 이면, 이는 HeadPacket를 수신하는 노드가 최종적인 스캐터넷에서 브리지 노드로 될 코디네이터에 의해 할당되었음을 명시한다.
도 5는 본 발명의 블루투스 네트워크 확립 프로토콜의 페이즈 II 동안 코디네이터 노드에 의해 취해지는 동작들을 도시하는 논리적 흐름도(500)이다. 또한, 도 6은 페이즈 I의 종료 시에 페이즈 스캔 상태(480)로 진입했던 노드에 의해 취해지는 동작들을 설명하는 논리적 흐름도(600)이다. 이하에서 페이즈 II 및 페이즈 III을 설명할 때 도 6을 교차 참조할 것이다.
도 5에서, 마스터 또는 리더는, 바람직하게, 변수 MY_VOTES와 동일하게 되도록 초기에 노드의 개수 N을 할당한다(490). 이어서, 코디네이터는 값 N이 8보다 작은지를 판정한다(520). 만일 그러하다면(521), 오직 하나의 피코넷만이 마스터로서 동작하는 코디네이터와 함께 요구되며, 이로써 다른 피코넷으로의 브리지 노드에 대한 필요성이 제거된다.
단일 피코넷의 경우에(즉, N이 8 이하인 경우에), 코디네이터는, 바람직하게, 페이징을 행하고 페이즈 II 프로시저를 최종적으로 종결(550)하기 전에 페이지 스캔 상태인 모든 N 개의 노드로의 접속을 수행한다(530). 초기에, 1로 설정된(525) 반복 간격 j 동안, 코디네이터는, 바람직하게, 페이징을 행하고 어드레스 MY_FHS_LIST(j).address에 대응하는 슬레이브 유닛으로의 접속을 수행하고(530), 데이터 패킷 HeadPacket의 Mbit 비트 및 Bbit 비트 모두를 제로로 설정하며(541,542), 이 패킷을 제 1 데이터 패킷으로서 슬레이브에 전송한다(543). 그 다음 반복 포인터는 1 만큼 증가되고(544) 다음 반복 간격 j가 노드 수 N 보다 작은지의 여부를 판정하기 위해 측정된다(510). 초기화 단계(530,540)에서의 페이징/접속 및 패킷은, 바람직하게, 반복 간격 j가 N 보다 작다면 반복된다(511). 일단 반복 간격 j가 노드 수 N 보다 크거나 같다면(512)(즉, 리스트 MY_FHS_LIST 내의 모든 유닛이 코디네이터에 의해 액세스되었다면), 코디네이터는 마스터 종결 상태(Master Terminate state)(550)로 진입하며 이로써 페이즈 II 접속 확립 프로토콜(500)을 종결한다. 이후에, 코디네이터는 접속 상태에서 마스터로서 동작한다. 본 발명의 프로시저에 따라서, 코디네이터가 마스터로서 기능하고 모든 다른 노드들은 슬레이브로서 기능함에 의해 피코넷이 형성될 수 있다.
도 5를 참조하면, 노드 수 N이 8보다 클 경우(522), 코디네이터가 네트워크를 전체적으로 관측하기 때문에, 코디네이터는 최종 스캐터넷에서 각 노드가 가질 역할을 결정할 수 있다. 역할 결정은 블루투스 스캐터넷을 형성하기 위한 기준과 밀접하게 결합된다. 가령, 다른 애플리케이션에서는 동일한 노드가 마스터 또는 슬레이브로서 동작하도록 할 수 있다. 또한, 노드는 그 자신의 특성으로 인해 보다 제한된 등급 제약을 가질 수 있다. 가령, 팜 파일럿(Pam Pilot)은, 피코넷 내의 잔여하는 노드들이 팜 파일럿보다 작은 처리 능력을 가지지 않는다면, 7-슬레이브 피코넷의 마스터가 되는데 필요한 처리 능력을 거의 가지고 있지 않을 가능성이 높다. 이러한 제약은 선정 프로세스 동안 리더 또는 코디네이터로 통신될 수 있으며 최종 스캐터넷에 있어서 참여 노드의 역할을 결정하는데 코디네이터에 도움을 줄 수 있다. 추가적인 (또는 임의의) 제약이 존재하지 않을 시에, 다음과 같은 디폴트 역할 선택 기술이 구현될 수 있다.
1. 참여 노드의 수 N이 주어지면, 최종적으로 완성된 스캐터넷은 가능한한 최소 개수의 피코넷(및 마스터)을 포함해야 한다.
2. 최종적으로 완성된 스캐터넷은 완전하게 접속될 수 있어야 한다. 이는 모든 마스터가, 바람직하게, 브리지 노드를 통해 모든 다른 마스터에 접속되어야 함을 의미한다.
이와 같은 디폴트 역할 선택 기준은 단지 예시적이며 본 발명에 따라 수정될 수도 있다.
최종적으로 완성된 블루투스 스캐터넷이 완전하게 접속되기 위해서는 마스터 노드 또는 피코넷의 최소한의 수 P가 다음 관계식에 의해 계산될 수 있다(561).
Figure 112003022320950-pct00001
이 관계식에서 볼 수 있듯이, 디폴트 기술은 피코넷의 접속도 및 최소 수의 피코넷 요건에 기인하여 0보다 크거나 같고 36 보다 작거나 같은 다수의 노드 N에 대해 유효하다. 보다 많은 수의 노드는 완전한 스캐터넷 접속도를 이루지 못하는 디폴트 기술을 초래하게 된다.
도 5를 참조하면, 본 발명의 페이즈 II 프로토콜은, 바람직하게, 어느 노드가 마스터가 되고 어느 노드가 브리지 노드 및 슬레이브 노드가 되는지를 결정한다(560). P 를 계산한 후에(561), 코디네이터는 (자신을 포함하지 않은) P-1 개의 노드가 마스터 노드(562)(이 마스터 노드는, 바람직하게, 변수 MASTERS에 저장됨)가 되고 P(P-1)/2 개의 다른 노드가 네트워크의 브리지 노드가 되도록 선택한다. 코디네이터는, 바람직하게, 블록(580)에서 마스터들에게, 그들의 "순수한" 슬레이브가 될 잔여 노드들을 균등하게 배분한다. 마스터, 브리지 및 슬레이브에 대한 결정을 한 후에, 코디네이터는, 바람직하게, BRIDGE_LIST(0) 및 SLAVES_LIST(0)을 생성하여 자신에게 할당하는데(563), 그 이유는 자신이 현 프로토콜의 페이즈 III 에서 마스터로서 동작할 것이기 때문이다. 이어서, 반복 간격 포인터 또는 카운터 j는, 바람직하게, 단계(564)에서 j를 1로 설정함으로써 초기화된다.
각 반복 간격 j 동안, 후속적으로 코디네이터는 페이징을 수행하고 어드레스 MASTERS(j).address에 의해 표현되는 유닛으로 접속을 수행한다. 페이즈 I의 종료 시에, 모든 잔여하는 노드들은 페이지 스캔 상태(480)로 존재하였음을(도 4 참조) 상기해 주기 바란다. 반복 간격 j 동안, 코디네이터는, 보다 바람직하게, BRIDGE_LIST(j) 및 SLAVES_LIST(j)을 계산하며(581) 데이터 패킷 HeadPacket의 Mbit 비트 및 Bbit 비트를 각기 1 및 0으로 설정한다(582,583). 이어서, 상기 패킷은 제 1 패킷으로서 유닛 MASTERS(j).address로 전송된다(584). BRIDGE_LIST(j) 및 SLAVES_LIST(j)는, 또한, 바람직하게, 상기 유닛으로부터 자신을 접속 해제하기 전에 유닛 MASTERS(j).address로 전송된다(586).
코디네이터는 자신을 유닛 MASTERS(j).address로부터 접속 해제시킨 후에, 바람직하게, 반복 간격 j를 1 증가시키고(587), 그 다음 반복 카운트가 초과되었는지의 여부(가령, j가 P-1 이상인지의 여부)를 결정하는 것을 체크한다(590). 만약 카운트가 초과되었다면(591)(이러한 초과는 MASTERS 리스트 내의 모든 유닛이 액세스되었음을 표시함), 코디네이터는, 바람직하게, 마스터 시작 상태에서 페이즈 III로 진입한다(599). 만약 반복 카운트 j가 초과되지 않았다면, 페이징/접속 프로세스(570) 및 이에 대응하는 패킷 및 리스트 전송(580)이 다음의 반복 간격(즉, j + 1) 동안 수행되는데, 이는 조건(j 〈 P -1 )이 더 이상 만족되지 않을 때까지 계속된다.
도 6을 참조하면, 반복 간격 j 동안, 어드레스 MY_FHS_LIST(j).address에 대응하는 유닛 x은, 바람직하게, 페이징되고(480) 슬레이브로서 코디네이터에 접속된다(601). 접속이 확립된 후에, 코디네이터는, 바람직하게, 그의 전송(543)으로부터 발생된 HeadPacket을 유닛 x로부터 수신할 것이다(605)(도 5 참조). 이어서, 유닛 MY_FHS_LIST(j).address로부터의 패킷 HeadPacket은 Mbit 비트 값을 결정하기 위해 체크된다(610). 이 비트가 초기화 단계(541)에서 0으로 설정되었기 때문에(도 5 참조), 제어 경로(612)에 의해, 바람직하게, 코디네이터는 Bbit 비트 값을 체크한다(620). 다시, 초기화 단계 동안(542) Bbit 비트가 제로로 설정되었기 때문에(도 5 참조), 제어 경로(621)에 의해, 바람직하게, 유닛 x는 슬레이브 종결 상태(630)로 진입할 것이며, 여기서 유닛은 접속 확립 프로토콜의 실행을 종결시켰으며 현재는 슬레이브로서 동작하는 접속 상태에 있다.
마스터 유닛 측에서는, 반복 간격 j 동안 어드레스 MASTERS(j).address에 대응하는 유닛 x는, 바람직하게, 페이징되며(480) 슬레이브로서 코디네이터에 접속된다(601). 접속이 확립된 후에, 코디네이터는, 바람직하게, 그의 전송 단계(584)으로부터 발생된 HeadPacket을 유닛 x로부터 수신할 것이다(605)(도 5 참조). 이어서 유닛 x(즉, MASTERS(j).address)로부터의 패킷 HeadPacket은 Mbit 비트 값을 결정하기 위해 체크된다(610). 이 비트가 초기화 단계(582)에서 1로 설정되었기 때문에(도 5 참조), 제어 경로(611)에 의해, 바람직하게, 코디네이터는 유닛 x로부터 국부 리스트 변수 MY_BRIDGE_LIST 및 MY_SLAVES_LIST을 수신하는데(681), 이때 국부 리스트 변수는 단계(584) 동안 코디네이터에 의해 전송되었던 것이다(도 5 참조). 코디네이터에 의해 개시된 접속 종결(682)시에, 유닛 x는, 바람직하게, 마스터 시작 상태(690)에서 페이즈 III으로 진입한다.
페이즈 III : 실제 접속 확립
페이즈 III 동안, P 개의 마스터 노드는, 바람직하게, 페이징을 시작하고 역할 할당 페이즈(페이즈 II) 동안 코디네이터 노드에 의해 자신들에게 할당되었던 슬레이브 노드 및 브리지 노드로의 접속을 수행하기 시작한다. 도 7의 예시적인 논리적 흐름도(700)에 도시된 바처럼, 마스터 노드의 동작은 시작 마스터 상태(702)에서 시작하며, 이는 단계(599 또는 690)와 동일하다(도 5 및 도 6 참조). 본 발명의 바람직한 실시예에 따르면, 마스터 유닛은, 먼저 그의 순수 슬레이브 유닛에 접속되고, 이어서 마스터 유닛은 바람직하게는 그의 브리지 유닛에 접속된다. 예시적인 접속 프로토콜이 이하에서 보다 상세하게 설명될 것이다.
도 7에서, 초기에 1로 설정된 반복 간격 j 동안(710), 마스터 유닛은, 바람직하게, 페이징을 수행하고 어드레스 MY_SLAVES_LIST(j).address 에 의해 표현되는 유닛으로 접속을 수행한다. 접속이 확립된 후에, 마스터는, 바람직하게, 데이터 패킷 HeadPacket의 Mbit의 비트 및 Bbit의 비트를 각각 0으로 설정하고(731,732), 이 데이터 패킷을 유닛 MY_SLAVES_LIST(j).address 으로 전송한다(733). 데이터 패킷을 전송한 후에, 반복 포인터 j 가 바람직하게는 1 만큼 증가되며(734) 그 값이 MY_SLAVES_LIST 리스트의 길이보다 작은지의 여부를 결정하기 위해 체크된다. 반복 카운트가 MY_SLAVES_LIST 리스트의 길이보다 작다면, 페이징/접속 프로시저(720) 및 패킷 초기화/전송 프로시저(730)가 바람직하게는 다음의 후속하는 반복 간격 동안 반복된다(742).
각 반복 간격 j 동안, 유닛 MY_SLAVES_LIST(j).address 가 도 6을 참조하여 설명한 바와 유사하게 페이징되고(480) 코디네이터로 접속되며(601) 코디네이터의 전송 단계(733)로부터 HeadPacket을 수신할 것이다(605). 이어서. 유닛 MY_SLAVES_LIST(j).address 는 제어 경로(610,620,621)를 따를 것이며(Mbit 및 Bbit의 비트가 이전에 0으로 설정되었기 때문임), 슬레이브 종결 상태(630)로 진입할 것인데, 슬레이브 종결 상태는 유닛이 접속 확립 프로토콜의 실행을 종결하였고 현재는 접속 상태에서 슬레이브로 동작하고 있음을 나타낸다.
일단 반복 카운트 j가 MY_SLAVES_LIST 리스트의 길이 이상이면(741)(이러한 경우는 마스터가 모든 참여 슬레이브 노드로 접속되었음을 의미함), 마스터는, 바람직하게, 유사한 방식으로 그의 브리지 노드에 대한 접속을 시작한다. 구체적으로 말하자면, 초기에 1 로 설정된 반복 간격 j 동안(745), 마스터 유닛은, 바람직하게, 페이징을 수행하고 어드레스 MY_BRIDGES_LIST(j).address에 대응하는 유닛으로 접속을 수행하며, 데이터 패킷 HeadPacket의 Mbit의 비트 및 Bbit의 비트를 각기 0 및 1 로 설정하고(761,762), 이 설정된 패킷을 제 1 데이터 패킷으로서 유닛 MY_BRIDGES_LIST(j).address 로 전송한다(763). 반복 포인터 j는, 바람직하게, 1 만큼 증가되고(764), 반복 카운트가 MY_BRIDGES_LIST 리스트의 길이를 초과하였는지의 여부를 결정하기 위해 체크된다(770). 상기 반복 카운트 j가 MY_BRIDGES_LIST 리스트의 길이와 동일하거나 초과할 때까지(이러한 경우는 마스터가 모든 참여 브리지 노드로 접속되었음을 의미함), 페이징/접속 프로시저(750) 및 패킷 초기화/전송 프로시저(760)가 반복된다(772).
마스터 유닛이 MY_BRIDGES_LIST 리스트 내의 모든 유닛에 접속되었으면(771), 마스터는, 바람직하게, 리스트 내의 모든 유닛들이 2와 동일한 MASTER_COUNT 값을 전송할 때까지 대기한다(780). 이러한 상태가 일단 발생하면, 코디네이터는, 바람직하게, 마스터 종결 상태(790)로 진입하는데, 이 상태에서는 유닛이 접속 확립 프로토콜의 실행을 종결시켰으며 현재에는 접속 상태에서 마스터로서 동작하고 있는 중이다.
도 6에서, 각 반복 간격 j 동안, 유닛 MY_BRIDGES_LIST(j).address는 페이징되고(480), 접속되며(601), 도 7에서의 코디네이터의 전송 단계(763)로부터 HeadPacket을 수신할 것이다(605). 유닛 MY_BRIDGES_LIST(j).address는, 바람직하게, 제어 경로(610,612,620,622)를 따르는데, 그 이유는 HeadPacket 내에서 Mbit의 비트가 0으로 설정되고(761) Bbit의 비트는 1로 설정되기 때문이다(762)(도 7 참조). 초기에 제로로 설정된 변수 MASTER_COUNT의 값(도 4의 462 단계)이, 바람직하게, 1 증가되고(641) 마스터 유닛은 코디네이터의 MY_MASTER_LIST 리스트에 부가될 것이다(640). 만약 변수 MASTER_COUNT를 체크함으로써(650) 유닛이 슬레이브 유닛에 접속되는 제 1 마스터로 결정되면(652), 제 2 마스터로 접속되기 위해 페이지 스캔 상태(480)가 다시 시작된다. 이와 달리, 유닛이 슬레이브 유닛이 접속되었던 제 2 마스터이면(가령, MASTER_COUNT = 2), 유닛 MY_BRIDGES_LIST(j).address는 바람직하게는 현재에는 2로 설정되어 있어야 하는 변수 MASTERS_COUNT를 그의 MY_MASTERS 리스트 내에 존재하는 두 마스터로 전송한다(660). 이는 먼저 변수 MASTERS_COUNT를 유닛 x로 전송하고(661), 피코넷을 스위칭하며(662), 변수 MASTERS_COUNT를 유닛 MY_MASTERS(0)로 전송(663)함으로써 성취될 수 있다. 최종적으로, 유닛 MY_BRIDGES_LIST(j).address는 브리지 종결 상태(670)로 진입갈 것이며, 이 상태에서는 유닛이 접속 확립 프로토콜의 실행을 종결시켰으며 현재에는 접속 상태에서 브리지 노드로 동작하는 중이다.
프로토콜 종결 : 모든 마스터가 이들에게 할당된 모든 브리지로부터 MASTER_COUNT = 2 메시지를 수신할 경우, P 피코넷들이 완전하게 서로 접속된 스캐터넷이 형성되었음을 본질적으로 보장받으며 상술한 바와 같이 본 발명의 프로토콜이 종결된다. 이 때에, 각 노드는, 바람직하게, 접속 상태에서 각기 마스터, 슬레이브 또는 브리지로서 동작한다.
도 8은 본 명세서 및 도면에서 도시된 무선 디바이스 접속 프로토콜의 다양한 기능적인 구성 요소/모듈을 구현하는 통상적인 블루투스 기능을 갖춘 디바이스(800)의 일반화된 하드웨어 아키텍쳐를 도시한다. 도시된 바처럼, 디바이스(800)는 프로세서(802), 메모리(804), 입력/출력(I/O) 다비이스(806)에 따라 구현된다. 용어 "프로세서"는 가령 CPU(중앙 처리 장치) 및/또는 중앙 처리 회로를 포함하는 임의의 처리 디바이스(가령, 디지털 신호 프로세서, 마이크로제어기 등)를 포함한다. 용어 "메모리"는 가령 RAM, ROM, 고정 메모리 디바이스(가령, 하드 드라이브, 이동식 메모리 디바이스(가령, 디스켓), 플래시 메모리 등과 같은, 상기 CPU 또는 프로세서와 연결된 메모리를 포함한다. 또한, 용어 "I/O 디바이스"는 가령 데이터를 상기 처리 유닛으로 입력하는 하나 이상의 입력 디바이스(가령, 마우스, 키보드 등) 및/또는 상기 처리 유닛과 관련된 결과를 제공하는 하나 이상의 출력 디바이스(CRT 디스플레이, 프린트 등)를 포함한다. 용어 "프로세서"는 또한 하나 이상의 처리 디바이스를 지칭할 수 있으며 하나의 처리 디바이스와 연결된 다양한 요소들이 다른 처리 디바이스들과 공유될 수 있다.
따라서, 상술한 바와 같이 본 발명의 방법을 수행하는 인스트럭션 또는 코드를 포함하는 소프트웨어 구성 요소는 하나 이상의 연결된 메모리 디바이스(가령, ROM, 고정 또는 이동식 메모리) 내에 저장될 수 있으며 사용되어야 할 때에는 그의 전체가 또는 부분이 (가령 RAM 내부로) 로딩되어 CPU에 의해 실행된다.
본 발명의 예시적 실시예들은 첨부 도면을 참조하여 설명되었지만, 본 발명은 상기의 실시예들로 한정되는 것은 아니며, 다양한 변경 및 수정이 본 발명의 정신 및 범위 내에서 본 기술의 당업자에게 가능하다.

Claims (20)

  1. 적어도 하나의 무선 통신 채널을 통해 다수의 디바이스들 간의 접속을 확립하는 방법에 있어서,
    제 1 상태와 제 2 상태 중 하나를 상기 다수의 디바이스들 각각에 임의적으로 할당하는 단계;━상기 제 1 상태에서는 상기 각 디바이스는 다른 디바이스를 발견하여 그와 접속을 확립하고자 시도하며, 상기 제 2 상태에서는 상기 각 디바이스는 다른 디바이스에게 발견되어 그와 접속을 확립하기 위해 자신을 이용할 수 있도록 함━ 및
    사전결정된 타임아웃 기간이 만료되거나 상기 디바이스들 간의 접속이 확립될 때까지, 상기 각 디바이스의 현 상태를 상기 제 1 상태와 상기 제 2 상태간에 교번시키는 단계━상기 각 디바이스가 그의 현 상태로 존재하는 시간 길이는 하나 이상의 사전 정의된 확률 분포에 의해 적어도 부분적으로 결정됨━를 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  2. 제 1 항에 있어서,
    상기 각 디바이스는 자신이 그의 현재 상태로 유지되는 시간 기간을 개별적으로 제어하는, 자신과 관련된 확률 분포를 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  3. 제 1 항에 있어서,
    상기 다수의 디바이스로부터 선택된 디바이스이면서 상기 각 디바이스에 대응하는 정보를 저장하는 코디네이터를 선정하는 단계와,
    상기 각 디바이스들에 대해 마스터 역할, 슬레이브 역할 및 브리지 역할 중 하나의 역할을 할당하는 단계━상기 역할들은 사전 정의된 규칙에 따라서 상기 코디네이터에 의해서 할당됨━와,
    상기 각 디바이스에 대한 역할 할당에 따라서 상기 디바이스들을 서로 접속시켜서 무선 네트워크를 형성하는 단계를 더 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  4. 제 3 항에 있어서,
    상기 코디네이터를 선정하는 단계는
    두 디바이스들 간의 지점간 접속(point to point connection)을 확립하는 단계와,
    사전결정된 기준에 따라서 승자 디바이스와 패자 디바이스를 결정하는 단계와,
    상기 패자 디바이스로부터, 상기 패자 디바이스에 대한 정보 및 상기 패자 디바이스가 이전에 접속을 확립했던 임의의 디바이스에 대한 정보를 수신하는 단계와,
    모든 디바이스가 액세스될 때까지 상기 코디네이터 선정 단계를 반복하는 단계를 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  5. 제 4 항에 있어서,
    상기 패자 디바이스에 대한 정보 및 상기 패자 디바이스가 이전에 액세스했던 임의의 디바이스들에 대한 정보를 수신한 후에는, 상기 패자 디바이스가 상기 코디네이터 선정 프로세스에는 더 이상 참여하지 못하게 하는 단계를 더 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  6. 제 4 항에 있어서,
    상기 승자 디바이스를 결정하는 단계는 상기 다수의 디바이스들 각각에 대한 정보들을 비교하는 단계를 더 포함하는
    다수의 디바이스들 간의 접속 확립 방법.
  7. 적어도 하나의 무선 통신 채널을 통해 다수의 디바이스들 간의 접속을 확립하는 장치에 있어서,
    제 1 항 내지 제 6 항 중 어느 한 항에 따른 방법을 수행하는 적어도 하나의 프로세서를 포함하는 접속 확립 장치.
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020037008519A 2000-12-29 2001-11-09 디바이스들 간의 접속 확립 방법 및 장치 KR100620831B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/750,999 US6865371B2 (en) 2000-12-29 2000-12-29 Method and apparatus for connecting devices via an ad hoc wireless communication network
US09/750,999 2000-12-29
PCT/EP2001/012964 WO2002054790A2 (en) 2000-12-29 2001-11-09 Method and apparatus for connecting devices via an ad hoc wireless communication network

Publications (2)

Publication Number Publication Date
KR20030065568A KR20030065568A (ko) 2003-08-06
KR100620831B1 true KR100620831B1 (ko) 2006-09-13

Family

ID=25020018

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037008519A KR100620831B1 (ko) 2000-12-29 2001-11-09 디바이스들 간의 접속 확립 방법 및 장치

Country Status (10)

Country Link
US (1) US6865371B2 (ko)
EP (1) EP1346522B1 (ko)
JP (1) JP3759107B2 (ko)
KR (1) KR100620831B1 (ko)
CN (1) CN1303787C (ko)
AT (1) ATE276614T1 (ko)
AU (1) AU2002227911A1 (ko)
DE (1) DE60105643T2 (ko)
HK (1) HK1071253A1 (ko)
WO (1) WO2002054790A2 (ko)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019836B2 (en) 2002-01-02 2011-09-13 Mesh Comm, Llc Wireless communication enabled meter and network
US7092368B2 (en) * 2001-02-16 2006-08-15 International Business Machines Corporation Reduction of device discovery delays in frequency hopping-based ad-hoc networks
SE0101019D0 (sv) * 2001-03-21 2001-03-21 Ericsson Telefon Ab L M Improvements in, or relating to, fixed wireless access system
DE10122044A1 (de) * 2001-05-07 2002-11-14 Philips Corp Intellectual Pty Netzwerk mit über Brücken-Terminals verbindbaren Sub-Netzwerken
US20050063313A1 (en) * 2001-07-03 2005-03-24 International Business Machines Corporation Optimal clustering of master-slave ad-hoc wireless network
US7215923B2 (en) * 2001-08-06 2007-05-08 Broadcom Corporation System and method for establishing a connection between wireless devices
US7720045B2 (en) * 2003-05-02 2010-05-18 Microsoft Corporation Method to enable simultaneous connections to multiple wireless networks using a single radio
US20030069989A1 (en) * 2001-10-05 2003-04-10 Silvester Kelan C. Extending bluetooth personal area networks
US7123877B2 (en) * 2001-11-08 2006-10-17 Broadcom Corporation Baseband controller in a wireless local area network
AU2003234738A1 (en) * 2002-04-15 2003-11-03 America Online, Inc. Dynamically managing and reconfiguring wireless mesh networks
US8780770B2 (en) * 2002-05-13 2014-07-15 Misonimo Chi Acquisition L.L.C. Systems and methods for voice and video communication over a wireless network
US7835372B2 (en) * 2002-05-13 2010-11-16 Weilin Wang System and method for transparent wireless bridging of communication channel segments
US20050201346A1 (en) * 2003-05-13 2005-09-15 Weilin Wang Systems and methods for broadband data communication in a wireless mesh network
US7852796B2 (en) * 2002-05-13 2010-12-14 Xudong Wang Distributed multichannel wireless communication
US7069483B2 (en) * 2002-05-13 2006-06-27 Kiyon, Inc. System and method for identifying nodes in a wireless mesh network
US7941149B2 (en) * 2002-05-13 2011-05-10 Misonimo Chi Acquistion L.L.C. Multi-hop ultra wide band wireless network communication
US7957356B2 (en) 2002-05-13 2011-06-07 Misomino Chi Acquisitions L.L.C. Scalable media access control for multi-hop high bandwidth communications
FI113123B (fi) * 2002-06-03 2004-02-27 Nokia Corp Menetelmä ja laite hajautettujen verkkojen muodostamiseksi tilapäisissä verkoissa
JP3928489B2 (ja) * 2002-06-07 2007-06-13 ソニー株式会社 通信方法、通信システム及び通信機器
JP3862073B2 (ja) * 2002-06-07 2006-12-27 ソニー株式会社 無線通信装置および無線通信方法、記録媒体、並びにプログラム
US7933293B2 (en) 2002-06-12 2011-04-26 Xocyst Transfer Ag L.L.C. Link margin notification using return frame
US8787988B2 (en) 2003-01-29 2014-07-22 Intellectual Ventures I Llc Power management for wireless direct link
US7948951B2 (en) * 2002-06-12 2011-05-24 Xocyst Transfer Ag L.L.C. Automatic peer discovery
US8050360B2 (en) 2002-06-12 2011-11-01 Intellectual Ventures I Llc Direct link relay in a wireless network
USRE43127E1 (en) 2002-06-12 2012-01-24 Intellectual Ventures I Llc Event-based multichannel direct link
US7339484B2 (en) * 2002-06-27 2008-03-04 Hewlett-Packard Development Company, L.P. Event-driven discovery method and apparatus
US20040203617A1 (en) * 2002-09-11 2004-10-14 Knauerhase Robert C. Communicating between devices within a mobile ad hoc network
GB2396775B (en) * 2002-12-23 2005-04-13 Motorola Inc Method and apparatus for establishing direct communication for mobiles in a radio communication system
US7545771B2 (en) * 2003-01-29 2009-06-09 Xocyst Transfer Ag L.L.C. Independent direct link protocol
JP4329388B2 (ja) * 2003-04-22 2009-09-09 ソニー株式会社 データ通信システム、データ通信装置及びデータ通信方法、並びにコンピュータ・プログラム
KR100490429B1 (ko) * 2003-04-25 2005-05-17 삼성전자주식회사 피코넷에 대한 디바이스의 결합을 관리하는 시스템 및 방법
US8050212B2 (en) 2003-05-02 2011-11-01 Microsoft Corporation Opportunistic use of wireless network stations as repeaters
US20050037818A1 (en) * 2003-05-28 2005-02-17 Nambirajan Seshadri Providing a universal wireless headset
US8204435B2 (en) * 2003-05-28 2012-06-19 Broadcom Corporation Wireless headset supporting enhanced call functions
EP1482715A3 (en) * 2003-05-28 2010-11-17 Broadcom Corporation Modular wireless headset and/or headphones
US20050136958A1 (en) * 2003-05-28 2005-06-23 Nambirajan Seshadri Universal wireless multimedia device
US20050136839A1 (en) * 2003-05-28 2005-06-23 Nambirajan Seshadri Modular wireless multimedia device
US20040252637A1 (en) * 2003-06-12 2004-12-16 Laberteaux Kenneth P. Robust, low-delay, fast reconfiguring wireless system
KR100574944B1 (ko) * 2003-06-18 2006-04-28 삼성전자주식회사 비메모리형으로 프로그램되는 기기 고유 어드레스에 의한블루투스 통신을 지원하는 응용기기, 및 응용기기의 통신방법
US7362724B2 (en) * 2003-07-09 2008-04-22 Motorola, Inc. Method for rigid body discovery and peer-to-peer ranging in a scatternet and communications node
US20080253315A1 (en) * 2003-09-16 2008-10-16 Koninklijke Philips Electronics N.V. Communication Network and a Communication Element and Method of Operation Thereof
US20050130647A1 (en) * 2003-10-22 2005-06-16 Brother Kogyo Kabushiki Kaisha Wireless lan system, communication terminal and communication program
US7716273B2 (en) * 2003-10-24 2010-05-11 Microsoft Corporation Systems and methods for projecting content from computing devices
JP4396416B2 (ja) 2003-10-24 2010-01-13 ソニー株式会社 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
US20050130634A1 (en) * 2003-10-31 2005-06-16 Globespanvirata, Inc. Location awareness in wireless networks
JP4329500B2 (ja) * 2003-11-07 2009-09-09 ソニー株式会社 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
JP3686415B2 (ja) * 2003-11-10 2005-08-24 コナミ株式会社 ゲーム装置、ゲーム方法、及びゲームプログラム
WO2005050930A1 (de) * 2003-11-24 2005-06-02 Siemens Aktiengesellschaft Verfahren und vorrichtung zum verbinden von geräten über ein drahtloses ad-hoc-kommunikationsnetzwerk
KR100640327B1 (ko) * 2003-11-24 2006-10-30 삼성전자주식회사 고속 개인용 무선 네트워크에서의 브릿지 동작을 위한새로운 프레임 구조와 데이터 전송 방법
KR100547849B1 (ko) * 2003-12-05 2006-01-31 삼성전자주식회사 고속 개인용 무선 네트워크에서의 브릿지 디바이스를선정하기 위한 프레임 구조와 그에 따른 선정 방법
US8959187B2 (en) * 2004-02-23 2015-02-17 Apple Inc. Method and system for proximity-based information retrieval and exchange in ad hoc networks
US20050276253A1 (en) * 2004-06-14 2005-12-15 Samsung Electronics Co., Ltd. Method and system for transmitting image data in ad-hoc mode of a wireless communication network
TWI260137B (en) * 2004-06-23 2006-08-11 High Tech Comp Corp Method for wireless network establishment between devices and apparatus thereof
US20060003785A1 (en) * 2004-07-01 2006-01-05 Vocollect, Inc. Method and system for wireless device association
CN100396038C (zh) * 2004-07-07 2008-06-18 宏达国际电子股份有限公司 装置间的无线网络建置方法及其装置
US20060031429A1 (en) * 2004-08-06 2006-02-09 Sharp Laboratories Of America, Inc. Central coordinator selection in ad hoc network
US20060088042A1 (en) * 2004-10-25 2006-04-27 Nimrod Borosh El Al. Method, system and devices for creating spontaneous electronic information propagation and retrieval
US20060166717A1 (en) * 2005-01-24 2006-07-27 Nambirajan Seshadri Managing access of modular wireless earpiece/microphone (HEADSET) to public/private servicing base station
US7778601B2 (en) * 2005-01-24 2010-08-17 Broadcom Corporation Pairing modular wireless earpiece/microphone (HEADSET) to a serviced base portion and subsequent access thereto
EP1686807A1 (fr) 2005-01-27 2006-08-02 Nagra France Sarl Méthode de répartition de la charge d'un centre de gestion transmettant des informations à un grand nombre d'unités d'utilisateur
JP4250611B2 (ja) * 2005-04-27 2009-04-08 キヤノン株式会社 通信装置、通信パラメータ設定方法及び通信方法
JP4656637B2 (ja) 2005-04-27 2011-03-23 キヤノン株式会社 通信装置及び通信システムとその通信パラメータ設定方法
EP1768434A1 (en) * 2005-09-21 2007-03-28 Thomson Telecom Belgium Method and a device to suspend the access to a service
GB0526272D0 (en) * 2005-12-23 2006-02-01 Nokia Corp Efficient use of the radio spectrum
US20070197164A1 (en) * 2006-02-23 2007-08-23 Arnold Sheynman Method and device for automatic bluetooth pairing
US7925765B2 (en) * 2006-04-07 2011-04-12 Microsoft Corporation Cooperative diagnosis in a wireless LAN
WO2007132547A1 (ja) * 2006-05-16 2007-11-22 Fujitsu Limited 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置
US9596585B2 (en) * 2006-08-04 2017-03-14 Microsoft Technology Licensing, Llc Managing associations in ad hoc networks
US7860038B2 (en) * 2006-08-04 2010-12-28 Microsoft Corporation Wireless support for portable media player devices
US8175613B2 (en) * 2006-08-04 2012-05-08 Misonimo Chi Acquisitions L.L.C. Systems and methods for determining location of devices within a wireless network
US20080031208A1 (en) * 2006-08-04 2008-02-07 Microsoft Corporation Synchronization between wireless devices while saving power
US7826366B2 (en) 2006-11-07 2010-11-02 Microsoft Corporation Joint channel assignment and routing in wireless networks
US7680089B2 (en) * 2006-11-16 2010-03-16 Microsoft Corporation Dynamic channel assignment and connectivity maintenance in wireless networks
WO2008070871A2 (en) * 2006-12-07 2008-06-12 Misonimo Chi Acquisition L.L.C. System and method for timeslot and channel allocation
US8019340B2 (en) * 2007-03-07 2011-09-13 Motorola Mobility, Inc. Reduced scanning within a uniform period in out-of-service conditions
US8521194B2 (en) * 2007-07-10 2013-08-27 Qualcomm Incorporated Performing paging in a wireless peer-to-peer network
WO2009018212A1 (en) * 2007-07-30 2009-02-05 Innovative Wireless Technologies, Inc. Distributed ad hoc network protocol using synchronous shared beacon signaling
US8145264B1 (en) 2008-04-30 2012-03-27 Qualcomm Atheros, Inc. Method and system for message transmission and reception
JP4660829B2 (ja) * 2009-03-16 2011-03-30 Necカシオモバイルコミュニケーションズ株式会社 モバイル通信端末及びモバイル通信システム
CN101621852B (zh) * 2009-08-07 2012-04-18 杭州华三通信技术有限公司 Mesh网络无线接入点重接入方法及无线接入点设备
US8842525B2 (en) * 2009-10-08 2014-09-23 Clearwire Ip Holdings Llc System and method for extending a wireless communication coverage area of a cellular base transceiver station (BTS)
KR20120072381A (ko) * 2009-10-19 2012-07-03 비덱스 에이/에스 로스트 파트너 기능을 구비한 보청기 시스템
WO2011069782A1 (en) * 2009-12-10 2011-06-16 International Business Machines Corporation A method and a system for plug and play support of computer architectures
US20110267641A1 (en) * 2010-04-29 2011-11-03 Stacy Raymond C Reprographic System Having Bluetooth Support for Offline Finishing Devices and DFA Devices
EP2400812B1 (en) * 2010-06-24 2019-11-27 9Solutions Oy Bluetooth networking
EP2405650A1 (en) 2010-07-09 2012-01-11 Nagravision S.A. A method for secure transfer of messages
US8842712B2 (en) * 2011-03-24 2014-09-23 Gregory C. Hancock Methods and apparatuses for reception of frequency-hopping spread spectrum radio transmissions
US8855010B2 (en) * 2011-05-20 2014-10-07 International Business Machines Corporation Assigning gateways for heterogeneous wireless mobile networks
KR20130044908A (ko) * 2011-10-25 2013-05-03 삼성전자주식회사 휴대단말기의 디바이스 검색 장치 및 방법
US9367778B2 (en) 2013-01-17 2016-06-14 Xerox Corporation Document finishing architecture (DFA) master controller
CN105210417B (zh) * 2013-05-10 2019-05-03 华为技术有限公司 用于控制网络外设备到设备通信的系统和方法
WO2015034253A1 (en) * 2013-09-03 2015-03-12 Samsung Electronics Co., Ltd. Method of controlling short-range wireless communication and apparatus supporting the same
DE102014104658B4 (de) * 2014-04-02 2016-11-24 Eaton Electrical Ip Gmbh & Co. Kg Mit einer drahtlosen Schnittstelle ausgestattete Anzeigevorrichtung für den Betriebszustand einer Schaltvorrichtung
ES2751694T3 (es) * 2014-09-29 2020-04-01 Cardo Systems Ltd Red de comunicación ad-hoc y método de comunicación
CN104378768A (zh) * 2014-11-13 2015-02-25 郑年怀 一种利用闲置网络资源构建公共WiFi无线网的方法
US9420465B2 (en) 2014-12-31 2016-08-16 Motorola Solutions, Inc Method and apparatus for device collaboration via a hybrid network
US9609541B2 (en) 2014-12-31 2017-03-28 Motorola Solutions, Inc. Method and apparatus for device collaboration via a hybrid network
US9301087B1 (en) * 2015-02-09 2016-03-29 Motorola Solutions, Inc. Method and apparatus for connecting a bluetooth device
US10654339B2 (en) * 2016-06-24 2020-05-19 Thermo King Corporation Method of pairing a sensor node for a transport refrigeration system using an assisting device, an assisting device for pairing a sensor node and a pairing system for a transport refrigeration system
WO2018177766A1 (en) * 2017-03-28 2018-10-04 Philips Lighting Holding B.V. Apparatus for a luminaire and a method of operating a luminaire
US10797895B2 (en) 2017-06-08 2020-10-06 Cisco Technology, Inc. Onboarding devices for use in conference room
US10149340B1 (en) 2017-07-18 2018-12-04 Thales Avionics, Inc. Slave bluetooth device switching between active bluetooth connections with different master bluetooth devices
US10595363B2 (en) * 2018-05-11 2020-03-17 At&T Intellectual Property I, L.P. Autonomous topology management for wireless radio user equipment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6459704B1 (en) * 1997-08-12 2002-10-01 Spectrum Tracking Systems, Inc. Method and system for radio-location determination
US6026297A (en) * 1997-09-17 2000-02-15 Telefonaktiebolaget Lm Ericsson Contemporaneous connectivity to multiple piconets
US6480476B1 (en) * 1998-10-15 2002-11-12 Telefonaktiebolaget Lm Ericsson (Publ) Variable sleep mode for mobile stations in a mobile communications
EP1022876B1 (en) * 1999-01-25 2006-04-19 International Business Machines Corporation Service advertisements in wireless local networks

Also Published As

Publication number Publication date
WO2002054790A3 (en) 2003-01-09
US20030096576A1 (en) 2003-05-22
WO2002054790A2 (en) 2002-07-11
JP2004517570A (ja) 2004-06-10
US6865371B2 (en) 2005-03-08
JP3759107B2 (ja) 2006-03-22
DE60105643D1 (de) 2004-10-21
DE60105643T2 (de) 2005-09-29
ATE276614T1 (de) 2004-10-15
HK1071253A1 (en) 2005-07-08
EP1346522B1 (en) 2004-09-15
AU2002227911A1 (en) 2002-07-16
CN1575567A (zh) 2005-02-02
KR20030065568A (ko) 2003-08-06
CN1303787C (zh) 2007-03-07
EP1346522A2 (en) 2003-09-24

Similar Documents

Publication Publication Date Title
KR100620831B1 (ko) 디바이스들 간의 접속 확립 방법 및 장치
KR100917680B1 (ko) 통신 장치, 통신 디바이스, 및 통신 장치를 작동시키는 방법
Salonidis et al. Distributed topology construction of Bluetooth personal area networks
US6876643B1 (en) Clustering in wireless ad hoc networks
Salonidis et al. Distributed topology construction of Bluetooth wireless personal area networks
Petrioli et al. Configuring BlueStars: Multihop scatternet formation for Bluetooth networks
EP2115965B1 (en) Low-power wireless multi-hop networks
Tan et al. An efficient scatternet formation algorithm for dynamic environments
US20060089119A1 (en) Method and a device for scatternet formation in ad hoc networks
JP2002044003A (ja) 通信方法、無線アドホックネットワーク、通信端末、およびブルートゥース端末
KR20080075806A (ko) 무선 개인 통신 네트워크에서 비컨 테이블을 이용한 비컨슬롯 결정 방법 및 무선 근거리 개인 통신 기기
JP2003158525A (ja) Bluetooth通信を確立するシステムと方法、マスター機器、問い合わせ機器
WO2007014182A1 (en) Neighbor based tdma slot assignment
KR20040028742A (ko) 블루투스 피코넷의 무-마스터 슬레이브/마스터 롤 전환
US7904534B2 (en) Network topology aware configuration of network addresses in wireless personal area networks
JP2005518702A (ja) ディスカバリー手続きを有する無線通信装置
US7450553B2 (en) System and method for selecting beacon transmission starting point in communication system
US20030092386A1 (en) Predictable communication establishment in ad-hoc wireless network
Salonidis et al. Proximity awareness and ad hoc network establishment in Bluetooth
WO2005067162A1 (en) A method for reducing radio interference in a frequency-hopping radio network
US7092368B2 (en) Reduction of device discovery delays in frequency hopping-based ad-hoc networks
Kawamoto et al. A two-phase scatternet formation protocol for Bluetooth wireless personal area networks
CN114040471A (zh) 基于蓝牙网络的分布式拓扑控制方法及终端
JP3996920B2 (ja) 通信システムにおけるビーコンスケジューリングシステムおよびその方法
Luo et al. A fast Bluetooth symmetric link formation protocol-SF/CAI (Scan first/collision avoidance inquire)

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120808

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130812

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140721

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150720

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160520

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180620

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190722

Year of fee payment: 14