상기한 기술적 과제를 달성하기 위하여, 데이터를 송수신하기 위한 네트워크에서 조정자 능력을 갖는 기기로서, 조정자가 되기 위한 우선 순위가 기록되어 있는 기기 우선 순위 리스트; 상기 기기 우선 순위 리스트를 참조하여 선택된 기기에 핸드오버를 요청하는 핸드오버 제어부; 및 상기 핸드오버에 따라 네트워크 정보를 상기 기기에 전송하는 송수신부를 포함한다.
상기한 기술적 과제를 달성하기 위하여, 데이터를 송수신하기 위한 네트워크 에서 조정자 역할을 핸드오버하는 방법으로서, 조정자가 되기 위한 우선 순위가 기록되어 있는 기기 우선 순위 리스트를 참조하여 기기를 선택하는 단계; 상기 선택된 기기에 핸드오버를 요청하는 단계; 및 상기 핸드오버에 따라 네트워크 정보를 상기 기기에 전송하는 단계를 포함한다.
상기한 기술적 과제를 달성하기 위하여, 데이터를 송수신하기 위한 네트워크에서 조정자 역할을 인수하는 방법으로서, 기기 우선 순위에 기초하여 백업 조정자로 지정되는 단계; 비콘이 수신되지 않은 채로 소정 회수 이상의 비콘 기간이 경과되었음을 감지하는 단계; 및 새로운 조정자로서 상기 네트워크 상의 기기들에게 비콘을 전송하는 단계를 포함한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하 첨부된 도면들을 참조하여 본 발명의 일 실시예를 상세히 설명한다.
본 발명은 고주파 대역 무선 통신에서 네트워크의 조정자에 관한 핸드오버 방법에 관한 것이다. 이를 위하여, 본 발명에서는 기기들의 기기 우선 순위를 정하는 기준과, 조정자의 핸드오버를 촉발(triggering)하는 원인에 대해 정의하고, 구 체적인 핸드오버 과정에 대하여 기술하고자 한다.
기기 우선 순위 리스트
IEEE 802.15.3 규격에 따른 무선 PAN 표준에서는, 네트워크 상의 기기의 다양한 기능들을 종합적으로 판단하여 최적의 조정자를 판단하는 것으로 되어 있다. 그러나, 고주파 대역을 통하여 대용량의 데이터를 전송하는 환경에서는, 이와 같은 종래의 판단 기준은 적합하지 않으며, 기기의 특성에 따른 일괄적인 기준이 필요하다. 따라서, 본 발명에서 조정자 핸드오버는 "기기 우선 순위"에 따라 일률적으로 조정자가 될 수 있는 기기 우선 순위가 주어진다. 물론, 어떤 기기가 조정자가 되기 위해서는, 상기 기기의 전원이 켜져 있어야 하고, 조정자로서 동작하기 위한 기능 즉, 조정자 능력(coordinator capability)를 가지고 있음이 전제되어야 한다.
이러한 기기 우선 순위에 따라서 최초 네트워크 형성시에 조정자가 결정되며, 이 후 기존의 조정자가 셧 다운(shut down)되거나 네트워크를 이탈하는 경우에도 상기 기기 우선 순위에 따라 그 다음 조정자로서 동작할 기기가 결정된다. 또한, 기존의 조정자보다 기기 우선 순위가 더 높은 기기가 네트워크에 참여(join)하게 되면 상기 기기가 새로운 조정자가 될 수 있다.
구체적으로, 기기 우선 순위는 대용량 AV 데이터의 송수신에 있어, 소스 기기로 동작할 수 있는 기기가 더 높은 기기 우선 순위를 갖는다. 조정자는 네트워크 상의 기기들의 요청에 의해 상기 기기들이 데이터를 전송할 수 있는 기간(period) 즉, 시간 슬롯(time slot)을 할당하는데, 기기들은 네트워크 상황에 따라서는 시간 슬롯을 할당 받지 못하거나, 시간 슬롯을 할당 받는다고 하여도 그것이 충분하지 못한 경우가 있을 수 있다. 따라서, 대용량 AV 데이터를 전송할 소스 기기가 조정자가 된다면, 상기 시간 슬롯을 자신에게 충분하게 할당할 수 있으므로, 지속적이고도 안정적으로 대용량 AV 데이터를 전송할 수가 있는 것이다.
물론, 소스 기기로 동작할 수 있는 기기가 여러 가지가 있는 경우에는, 그 하드웨어 성능이 높은 기기가 더 높은 기기 우선 순위를 가진다. 다음의 표 1은 이와 같은 기기 우선 순위를 리스트로 작성한 예를 보여 준다. 상기 리스트에는 조정자가 되기 위한 기기 우선 순위가 기기 종류를 기초로 기록되어 있다.
기기 우선 순위
|
기기 종류
|
1 |
디지털 TV |
2 |
셋톱 박스 |
3 |
PC |
4 |
DVD 레코더 |
5 |
DVD 플레이어 |
6 |
A/V 리시버 |
7 |
게임 콘솔 |
예를 들어, 현재 네트워크에 디지털 TV, 셋톱 박스, DVD 레코더가 존재하고, 셋톱 박스를 제외하고는 모두가 조정자 능력을 가지고 있다고 하면, 표 1의 기기 우선 순위에 따라 현재 네트워크에서는 디지털 TV가 조정자로서 동작한다. 다만, 디지털 TV가 네트워크를 이탈하는 경우에 대비하여, 상기 기기 우선 순위에 따라 DVD 레코더가 백업 조정자로 미리 선정된다. 그 후, 디지털 TV가 갑자기 셧 다운되는 경우에는, DVD 레코더가 네트워크 상에서 조정자로 동작하게 된다.
이 때, 조정자 능력이 있는 PC가 상기 네트워크에 참여하게 되면, DVD 레코더는 다시 기기 우선 순위를 확인하고, 상기 PC에 조정자 역할을 핸드오버한다.
그런데, 조정자가 어떤 기기를 백업 조정자를 선정하기 위해서는, 상기 기기의 정보를 알아야 한다. 모든 기기는 네트워크에 참여할 때, 자신의 정보를 제공하면서 참여를 요청하는 결합 요청 프레임(association request frame)을 조정자에게 전송한다.
도 3은 본 발명의 일 실시예에 따른 결합 요청 프레임(20)의 구성을 보여주는 도면이다.
Coordinator Capable 필드(21)는 네트워크에 참여하는 기기가 조정자 역할을 할 수 있는지 여부를 표시하는 필드이다. Device Type 필드(22)는 네트워크에 참여하는 기기의 종류를 나타내는 필드이다. 장치의 종류에 따라서 미리 식별 번호를 부여하여 두면, 이 필드(22)에는 상기 식별 번호만을 기재하면 된다.
Hardware Information 필드(23)는 네트워크에 참여하는 기기의 하드웨어 성능을 나타내는 필드이다. 하드웨어 성능이란 프로세서의 성능, 메모리의 용량, 전송 전력 레벨, 전송률 등을 포괄하는 의미이다.
MAC Address 필드(24)는 네트워크에 참여하는 기기의 MAC 주소를 기재하는 필드이다. 이러한 MAC 주소는 해당 기기가 갖는 고유의 주소로서, 이를 기초로 조정자는 네트워크 내에서 통용되는 식별자, 즉 기기 ID(device ID)를 할당할 수 있다.
도시되어 있지는 않지만, 결합 요청 프레임(20)는 해당 프레임의 인덱스 번호(index number)를 기록하는 필드, 길이(length)를 기록하는 필드 등을 더 포함할 수 있다.
핸드오버
촉발(
handover
trigger
)
조정자의 핸드오버가 촉발되는 원인은 여러 가지가 있을 수 있다. 그 원인으로는, 예를 들어, 현재의 조정자가 갑자기 파워 오프(power-off)되었을 경우, 현재의 조정자가 셧 다운(shut down)될 예정인 경우, 현재의 조정자와 네트워크 상의 다른 기기들과의 연결 상태가 불량한 경우, 네트워크 내에 더 높은 기기 우선 순위를 갖는 기기가 가입하는 경우 등이 있다.
핸드오버
과정(
handover
process
)
본 발명에서, 핸드오버는 예정된 핸드오버와 예정되지 않은 핸드오버로 분류된다.
도 4는 본 발명의 일 실시예에 따른 예정된 핸드오버 과정을 나타내는 흐름도이다.
예정된 핸드오버는, 조정자 스스로 조정자 역할을 포기하거나 네트워크 내에 더 높은 기기 우선 순위를 가지며 조정자 능력이 있는 기기가 참여할 때에 발생한다.
먼저, 조정자(30)는 기기 우선 순위 리스트를 참조하여 네트워크 상의 기기들(31, 32) 중에서 기기 1(31)을 백업 조정자로 지정한다(S10).
핸드오버를 예정한 경우, 조정자(30)는 다른 기기들(31, 32)의 시간 슬롯 요청을 제한한다(S11). 구체적으로, 조정자(30)는 기기들(31, 32)로부터 시간 슬롯 요청을 수신하면, 이에 대한 응답으로 거절(rejection)을 상기 기기들(31, 32)에 통지한다.
그 다음, 조정자(30)는 기기 우선 순위 리스트를 참조하여 백업 조정자를 선택한다. 만약, 기기 1(31)이 백업 조정자로 선택되었다고 하면, 조정자(30)는 기기 1(31)에 핸드오버를 요청하는 프레임을 전송한다(S12). 그리고, 이어서 조정자(30)는 기존에 가지고 있던 네트워크 정보를 기기 1(31)에 전송한다. 보다 구체적으로, 조정자(30)는 네트워크 상에 존재하는 기기들의 정보를 기기 1(31)에 전송하고(S13), 현재까지 예약된 시간 슬롯에 관한 정보(시간 슬롯 예약 정보)를 기기 1(31)에 전송한다(S14).
핸드오버를 요청하는 프레임을 수신한 기기 1(31)은 소정의 타임 아웃 시간 내에, 조정자(30)에 핸드오버에 응답하는 프레임을 전송할 수 있다(S15). 이 때, 상기 응답하는 프레임에는 핸드오버에 대한 수락 또는 거절이 포함된다. 만약, 타임 아웃 시간 내에, 조정자(30)가 핸드오버에 응답하는 프레임을 수신하지 못하면, 핸드오버 요청은 거절된 것으로 간주된다.
기기 1(31)이 상기 핸드오버에 요청을 수락하는 경우에는, 조정자(30)는 핸드오버 IE(information element)를 포함하는 비콘을 네트워크 내의 기기들(31, 32)에 방송한다. 이를 통하여 네트워크 내의 기기들(31, 32)는 기기1 (31)이 새로운 조정자가 될 것이라는 것을 알 수 있다.
그 후, 기기 1(31)은 새로운 조정자로서 동작하고, 조정자(30)는 기기 2(32)와 마찬가지로 일반적인 기기로서 동작한다.
도 5는 본 발명의 일 실시예에 따른 예정되지 않은 핸드오버 과정을 나타내는 흐름도이다.
조정자(30)가 예정된 핸드오버 과정을 수행하는 경우도 있을 수 있지만, 조정자(30)가 갑자기 조정자 역할을 수행할 수 없게 된 경우, 예정되지 않은 핸드오버 과정이 수행될 수도 있다.
이러한 경우를 대비하여, 조정자(30)는 기기 우선 순위 리스트를 참조하여 네트워크 상의 기기들(31, 32) 중에서 기기 1(31)을 백업 조정자로 지정한다(S21). 이 후, 조정자(30)가 어떠한 이유로 하여, 갑자기 파워 오프된다(S22).
그러면, 소정 주기로 방송되는 비콘을 기다리는 기기들(31, 32)은 연속하여 비콘을 놓치게 된다(S23, S14). 백업 조정자로 지정되어 있는 기기 1(31)은 상기 비콘을 연속하여 소정 회수 이상 놓치게 되면, 조정자(30)가 조정자 역할을 더 이상 수행할 수 없는 것으로 간주하여, 자신이 조정자 역할을 인수하게 된다.
이 후, 기기 1(31)은 네트워크 내의 다른 기기들(32)에 주기적으로 비콘을 방송함으로써 새로운 조정자 역할을 시작한다(S25). 이 때, 새로운 조정자인 기기 1(31)은 동적 CTB(dynamic channel time block) 동안의 트래픽을 관찰함으로써 다른 기기들(32)의 상태를 알 수 있다.
도 6은 본 발명의 일 실시예에 따른 무선 기기(100)의 구성을 도시하는 블록도이다. 상기 무선 기기(100)는 네트워크 조정자로서 동작하기 위한 기능 즉, 조정자 능력을 가지고 있어서, 상황에 따라 조정자가 되기도 하고 조정자 역할을 수행하지 않는 일반 무선 기기가 되기도 한다.
무선 기기(100)는 CPU(110), 메모리(120), MAC 유닛(140), PHY 유닛(150), 핸드오버 제어부(141), 컨트롤 프레임 생성부(142), 및 안테나(153)를 포함하여 구성될 수 있다. 이중에서, MAC 유닛(140), PHY 유닛(150) 및 안테나(153)를 포괄하여 송수신부(160)라고 정의할 수 있다.
CPU(110)는 버스(130)에 연결되어 있는 다른 구성 요소들을 제어하며, MAC 층의 상위 층에서의 처리를 담당한다. 따라서, CPU(110)는 MAC 유닛(140)으로부터 제공되는 수신 데이터(수신 MSDU; MAC Service Data Unit)를 처리하거나 전송할 비압축 AV 데이터(전송 MSDU)를 생성하여 MAC 유닛(140)에 제공한다.
메모리(120)는 상기 처리된 수신 데이터를 저장하거나 상기 생성된 전송 데이터를 임시 저장한다. 상기 메모리는 롬(ROM), 피롬(PROM), 이피롬(EPROM), 이이피롬(EEPROM), 플래시 메모리와 같은 비휘발성 메모리 소자 또는 램(RAM)과 같은 휘발성 메모리 소자, 하드 디스크, 광 디스크와 같은 저장 매체, 또는 기타 해당 분야에서 알려져 있는 임의의 다른 형태로 구현될 수 있다.
MAC 유닛(140)은 CPU(110) 로부터 제공된 비압축 AV 데이터 또는 컨트롤 프레임 생성부(142)에서 생성되는 컨트롤 프레임에 MAC 헤더를 부가하여 MPDU(MAC Protocol Data Unit)을 생성한다. 생성된 MPDU는 PHY 유닛(150)을 통하여 전송된다.
PHY 유닛(150)은 MAC 유닛(140)으로부터 제공된 MPDU에 시그널 필드 및 프리앰블을 부가하여 PPDU를 생성하고 생성된 PPDU, 즉 데이터 프레임을 무선 신호로 변환하여 안테나(153)를 통해 전송한다. PHY 유닛(150)은 기저 대역 신호를 처리하는 베이스밴드 프로세서(base band processor; 151)와 상기 처리된 기저 대역 신호로부터 실제 무선 신호를 생성하고 안테나(153)를 통하여 공중(air)으로 전송하는 RF(radio frequency) 유닛(152)로 세분화 될 수 있다.
구체적으로, 기저대역 프로세서(151)는 프레임 포맷팅(frame formatting), 채널 코딩(channel coding) 등을 수행하고, RF 유닛(152)은 아날로그 파 증폭, 아날로그/디지털 신호 변환, 변조 등의 동작을 수행한다.
컨트롤 프레임 생성부(142)는 네트워크 내의 통신을 제어하기 위한 컨트롤 프레임을 생성하여 MAC 유닛(140)에 제공한다. 상기 컨트롤 프레임으로는, 주기적으로 네트워크 내에 방송되는 비콘 프레임, 시간 슬롯 요청에 대하여 응답하는 프레임, 핸드 오버를 요청하는 프레임, 네트워크 정보를 백업 조정자에게 전송하는 프레임 등이 있다.
기기 우선 순위 리스트(143)에는 조정자가 되기 위한 우선 순위, 즉 기기 우선 순위가 기기 종류를 기초로 기록되어 있다. 기기 우선 순위 리스트(143)는 메모리(120)에 저장될 수 있다.
핸드오버 제어부(141)는 상기 기기 우선 순위 리스트를 참조하여 상기 네트워크 속하는 다른 무선 기기들 중에서 백업 조정자로 될 무선 기기를 선택하고, 특정 조건이 만족되면 상기 선택된 무선 기기에 핸드오버를 요청한다. 핸드오버 요청시, 핸드 오버 제어부(141)는 컨트롤 프레임 생성부(142)로 하여금 핸드오버를 요청하는 프레임을 생성하게 한다.
또한, 핸드오버 제어부(141)는 상기 핸드오버의 요청이 있은 이후에, 무선 기기(100)가 가지고 있던 네트워크 정보를 송수신부(160)를 통하여 상기 선택된 무선 기기에게 전송한다. 상기 네트워크 정보는 네트워크 상의 다른 무선 기기에 관한 기기 정보 및 기 요청된 시간 슬롯 예약 정보를 포함한다.
이 후, 핸드오버 제어부(141)는 송수신부(160)를 통하여, 상기 선택된 무선 기기로부터 핸드오버 요청에 대한 응답을 수신하는데, 그 응답이 수락인 경우 정상적인 핸드오버가 이루어진 것이 되므로, 핸드오버 IE를 포함하는 비콘 프레임을 네트워크 상에 방송한다. 그러나, 그 응답이 거절인 경우에는 기기 우선 순위 리스트를 다시 참조하여 다음 순위의 무선 기기를 대상으로 핸드오버를 수행할 수 있다.
지금까지 도 6의 각 구성요소들은 메모리 상의 소정 영역에서 수행되는 태스크, 클래스, 서브 루틴, 프로세스, 오브젝트, 실행 쓰레드, 프로그램과 같은 소프트웨어(software)나, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)로 구현될 수 있으며, 또한 상기 소프트웨어 및 하드웨어의 조합으로 이루어질 수도 있다. 상기 구성요소들은 컴퓨터로 판독 가능한 저장 매체에 포함되어 있을 수도 있고, 복수의 컴퓨터에 그 일부가 분산되어 분포될 수도 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야 한다.