P2P네트워크를 위한 WirelessUSBTM P2P 프로토콜(WP2P) P2P네트워크를 위한 WirelessUSBTM P2P 프로토콜(WP2P)
최혜진 2008-01-29 15:36:57

토폴로지와 프로토콜은 무선 네트워크를 구축할 때 고려되어야 할 2가지 중요한 요소이다. 각 토폴로지는 그 자체의 장단점을 가지고 있지만, 간단한 가정용 혹은 산업용 네트워크를 구축하게 될 때 Peer-to-Peer 네트워크는 최적이다. 허브가 없는 네트워크의 기본 성격은 정보를 공유하고 하나의 노드가 오류를 낼 때에도 네트워크가 작동할 수 있도록 쉽게 만들어 준다.

글│Aravind Nagarajan, Cypress Semiconductor


네트워크 기술은 디바이스가 접속되는 방식이다. 네트워크 토폴로지의 상단에 내장된 무선 프로토콜은 이들 디바이스들이 서로 어떻게 커뮤니케이션 하는지를 결정한다.

오늘날 무선 세계에서 폭넓게 사용되고 있는 보편적인 네트워킹 토폴로지는 Star와 Mesh 구성이며, 그 돌파구는 Peer-to-Peer(P2P) 토폴로지이다. P2P 네트워크는 한 사람의 매스터에 집중하는 것 보다는 관계된 것들의 파워와 대역폭에 의존한다. P2P는 대형 노드(Nodes) 시스템이 가상으로 상호 작용할 수 있도록 해 주면서 최소한의 재구성으로 네트워크에 노드의 수를 확장할 수 있도록 해 준다. 시스템상의 Node Arrive와 Demand가 증가함에 따라 시스템의 전체 용량 역시 증가한다.

WirelessUSB를 기반으로 한 Wire-lessUSB Peer-to-Peer(WP2P)는 P2P 네트워크의 견고함과 방해 면역을 돕는다. P2P 네트워크와 지원하는 WP2P가 어떤 애플리케이션에서 어떻게 더 잘 작용하는지를 이해하기 위해 현재 사용되고 있는 다른 보편적인 무선 네트워킹 토폴로지를 들여다 보는 것은 중요한 일이다.


무선 네트워크 토폴로지

Mesh와 Star 네트워크 토폴로지는 홈 오토메이션 애플리케이션 뿐만 아니라 산업 분야에서도 수용되어 왔다. 무선 네트워크에서 애플리케이션 지원과 노드가 성장함에 따라 새로운 네트워크 토폴로지가 기존의 무선 네트워크 토폴로지에 더해지고 있다. 이들 중 일부는 Star와 Mesh 토폴로지 혹은 하이브리드를 기반으로 한다.


Mesh 네트워크

Mesh 네크워크 토폴로지에서 모든 노드는 Multi-Hopping Scheme을 이용하는 네트워크에서 다른 노드들과 Base Station이나 허브와 동일하게 커뮤니케이션 한다. 일반적으로, Mesh 네트워크는 전체(Full) Mesh 토폴로지나 부분(Partial) Mesh 토폴로지 모두를 채용한다. 전체 Mesh 토폴로지에서 각각의 노드는 개개의 다른 노드에 직접 연결된다. 또한 그림 1에서 보여주는 것과 같이 부분 Mesh 토폴로지는 다른 노드 모두가 아닌 오직 일부에만 연결된다.


현재 Mesh 네트워크 상에서 데이터 전송을 위한 70개 이상의 프로토콜이 경쟁하고 있으며, 그 중 일부는 CGSR (Clusterhead Gateway Switch Routing Protocol), ARA(Ant-based Routing Algorithm for Mobile Ad-Hoc Networks), CBRP(Cluster Based Routing Protocol)이다. IEEE는 또한 Mesh 네트워킹에서 데이터 전송 프로토콜을 규명하기 위해 802.11s 하에 일련의 표준을 개발하고 있다.

무선 Mesh 네트워크의 중앙집중화 되지 않은 구조는 토폴로지에 있는 싱글 노드의 오류가 네트워크 다운을 초래하지 않기 때문에 견고하게 만들어 준다. 다른 노드들은 오류가 난 노드를 지나침으로써 계속 작동한다. 무선 Mesh 네트워크의 또 다른 장점은 무선 Mesh 네트워크가 필요한 만큼 추가 노드를 더함으로써 보다 쉽게 확장할 수 있다는 것이다. 네트워크의 나머지는 최소한의 구성으로 새로운 노드를 인식한다. 산업용 세팅에서 Mesh 네트워크를 위한 전형적인 애플리케이션은 서로 커뮤니케이션 하고 허브에 데이터를 공급하는 일군의 센서들이다. 이들 센서들로 온도, 압력, 밝기 수준 등을 모니터링 할 수 있다.

Mesh 네트워크가 많은 이점을 가지고 있음에도 불구하고 네트워크가 성장함에 따라 대역폭 저하, 방해 및 레이턴시 등의 문제점도 가지고 있다. 이와 함께, 더 많은 메모리 공간을 필요로 하는 지그비(Zigbee)와 같은 진정한 Mesh 네트워크를 지원하는 프로토콜 오버헤드 도 있다. 지그비 프로토콜을 지원하는 디바이스는 최소 32KB의 ROM 스페이스를 필요로 한다.


Star 네트워크

Star 네트워크는 다른 주변기기에 메시지를 전달하는 싱글 허브 혹은 매스터를 가지고 있어 Single-Hop 시스템을 만들어 준다. 노드는 중앙 허브를 통해서만 서로 커뮤니케이션 한다. Star 네트워크의 구성은 그림 2에서 보는 것과 같다.


사용중인 보편적인 Star 프로토콜은 IEEE 802.5를 기반으로 한 것이며 Basic Star 프로토콜과 Priority Star 프로토콜을 포함하고 있다. Basic Star 프로토콜에서 모든 노드는 동일한 우선순위를 가진다. 허브는 노드에 메시지를 전달하고 가능한 경우 노드로 부터 데이터를 수신한다. Basic Star 프로토콜의 그와 같은 하나의 구현은 최대 65,000 노드를 지원할 수 있는 싸이프레스의 WirelessUSB N:1 프로토콜이다. Priority Star 프로토콜에서 노드는 우선순위를 할당하며, 데이터는 노드로 부터 사전 할당된 명령을 수신하게 된다. 하나의 Star 프로토콜은 구현하기 쉬우며 간편한 네트워크 토폴로지로 인해 Mesh 네트워크 보다 더 적은 전력을 소모한다.

Star 네트워크와 관련한 하나의 사례는 포도밭의 온도 감지 애플리케이션을 들 수 있다. 포도밭의 온도 센서는 중앙 허브와 커뮤니케이션 함에 따라 포도밭의 섹션을 선택적으로 식히기 위해 스프링클러 시스템을 켜준다.


P2P(Peer-to-Peer) 네트워크

무선 세계에서의 P2P(Peer-to-Peer) 네트워킹이 상대적으로 새로운 것임에도 불구하고 이는 냅스터(Napster)와 같은 인터넷 상에서 전통적인 파일 공유 시스템을 통한 네트워킹의 세계에서 아주 일정시간 동안 있어왔다. P2P 토폴로지는 고정 노드와 허브의 컨셉이 없는 그와 같은 방식에서 작용한다. 허브는 언제나 노드가 될 수 있으며, 노드는 데이터를 전송하기 위해 허브로 그 자체를 변경시킬 수 있다. P2P 네트워크에서의 커뮤니케이션은 Single-Hop 혹은 Multi-Hop을 통할 수 있다. Single-Hop P2P 네트워크는 그림 3에서 보여주고 있다.

싸이프레스가 제공하는 Wireless-USB Peer-to-Peer(WP2P) 프로토콜은 P2P 토폴로지에서 커뮤니케이션 하기 위해 특별히 개발된 최초의 무선 프로토콜 중 하나이다.


WirelessUSB Peer-to-Peer (WP2P) 프로토콜

WirelessUSB Peer-to-Peer(WP2P)는 최대 8192 노드를 포함하고 있는 P2P 시스템을 위한 중추로서 개발되었다. WP2P는 디바이스의 완전 접속 네트워크를 만들기 위해 WirelessUSB LP 네트워크 프로토콜의 Dual Role와 Multi-Master 모드를 활용한다.


초기화

각각의 디바이스는 노드가 보낼 데이터를 가질 때까지 매스터 노드로서 작용한다. 보낼 데이터가 있을 때, 디바이스는 슬레이브 모드로 바꾸고 목표로 하는 수취인에 의해 사용된 올바른 채널, PN(Pseduo Noise) 코드, CRC(Cyclic Redundancy Checker) Seed로 바뀐다. 데이터가 보내지고 어떠한 반응이 수신된 후 디바이스는 매스터 모드로 다시 바뀌고 원래의 채널, PN 코드, CRC Seed로 변경된다. 이 방식은 다중 채널상에서 네트워크를 전파시킨다.

하나의 새로운 디바이스가 구성될 때, 이 디바이스는 하나의 네트워크 ID로 할당된다. 네트워크 ID는 디바이스로 프로그램 되거나 혹은 `Wand`를 사용함으로써 할당될 수도 있다.

Wand는 Key FOB와 같은 간단한 디바이스일 수 있다. 하나의 Wand가 사용될 경우 이는 디바이스와 함께 KISSBindTM를 실행하고 디바이스에 네트워크 구성 패킷을 보낸다. 초기화 후 디바이스는 네트워크 레이어에서 채널 선택 모드로 들어간다.

일단 채널이 데이터 전송을 위해 선택되면 채널은 KISSBind를 통해 가까운 다른 디바이스를 찾는다. 이 네트워크에 속한 다른 디바이스를 찾을 수 없을 경우 새로운 디바이스는 매스터 모드로 들어가고 네트워크에 들어가기 위해 다른 디바이스를 기다린다. 원하는 네트워크에서 기존의 디바이스를 찾았을 경우 새로운 디바이스는 Device ID를 구하기 위해 `Join Network` 요청 패킷을 보낸다.

Device ID를 구한 후 새로운 디바이스는 네트워크에서 다른 디바이스에 대한 것을 배우기 위해 기존의 디바이스에 `Device List Query`를 보낸다. 기존의 디바이스는 요청한 디바이스에 대한 정보가 담긴 Device List로 되돌아온다. 그럼으로써 새로운 디바이스는 Device List에 있는 각각의 디바이스를 연결하며 자체의 정보를 포함하고 있는 Device List Response를 보낸다.

데이터 모드

디바이스가 보낼 데이터를 가질 때 이 디바이스는 슬레이브 모드로 바뀌며, 채널, PN 코드, CRC Seed를 맞추며, 그럼으로써 디바이스는 타겟 디바이스에 데이터를 전송한다. 데이터가 전송된 후 디바이스는 자체 세팅으로 채널, PN 코드, CRC Seed를 되돌리며 매스터 모드로 바꾼다.

WP2의 핵심은 네트워크 상의 디바이스를 견고하고 방해 면역성이 강한 것으로 만드는데 도움을 주는 Wireless-USB 기술을 기반으로 한 것이다. 네트워크에서 가정이나 산업용으로 설정된 디바이스는 Wi-Fi나 블루투스 기술에 의해 가능한 것과 같은 다른 무선 디바이스에서 조차 무리 없이 계속 작동한다.

P2P 네트워크에서 커뮤니케이션을 가능하게 하기 위해 WP2를 이용하는 것은 수 많은 애플리케이션 시나리오를 전개하는 것이다. 이와 같은 하나의 가능성은 그림 4에 표현된 것과 같은 간단한 홈 오토메이션 시나리오를 들 수 있다.

토폴로지와 프로토콜은 무선 네트워크를 구축할 때 고려되어야 할 2가지 중요한 요소이다. 각 토폴로지는 그 자체의 장단점을 가지고 있지만, 간단한 가정용 혹은 산업용 네트워크를 구축하게 될 때 Peer-to-Peer 네트워크는 최적이다. 허브가 없는 네트워크의 기본 성격은 정보를 공유하고 하나의 노드가 오류를 낼 때에도 네트워크가 작동할 수 있도록 쉽게 만들어 준다. WP2P의 프로토콜 레이어 추가와 함께 더 높은 수준의 신뢰성과 확장성을 달성할 수 있게 된 반면 견고한 네트워크는 유지할 수 있게 되었다.

<자료제공: 월간 반도체네트워크 2006년 12월호>

디지털여기에 news@yeogie.com <저작권자 @ 여기에. 무단전재 - 재배포금지>