일반적으로 사물인터넷을 구성하는 단말은 크게 3개의 계층으로 분류를 할 수 있는데, 센서나 액츄에이터 등의 사물인터넷의 신경계인 Things 단말, Things 단말들의 데이터를 수집하여 인터넷으로 전송하는 게이트웨이급 단말과 그리고 수집된 대규모 데이터를 분석 및 처리를 담당하는 서버급 단말로 구성된다. (그림 1)은 사물인터넷을 구성하는 단말의 계층을 간략하게 나타내고 있다.
Things 단말들은 자율적으로 네트워크를 구성하고 상호연동하여 데이터 수집이 가능하게 하는 저사양/저전력 기반 기술을, 게이트웨이급 단말은 Things 단말에서 오는 데이터를 수집하고 Things 단말 간 네트워크를 관리 및 이종 네트워크를 연동하는 기술을, 고성능의 서버급 단말은 데이터가 인터넷을 통해 전달되면 이를 분석하고 예측하고 대응할 수 있는 클라우드 기반 빅데이터기술을 포함한다.
Gartner에 따르면 2020년에 260억개의 사물이 인터넷에 연결되며, 사물인터넷 시장의 대부분을 Things 단말이 차지하는 것으로 예측하고 있다. 뿐만 아니라, 단기간에 적용가능 Things 기기로는 도로 가로등과 같이 국가 인프라 성격의 LED(Light-Emitting Diode) 전등과 소비자 수요 지향의 댁내 LED 조명이 가장 큰 부분을 차지하며, 스마트 그리드의 스마트 미터와 디지털 사이니지 등의 미디어 관련 기기들이 다음을 차지할 것으로 예측하고 있다[2]. 따라서, 미래 ICT(Information Communication Technology) 먹거리인 사물인터넷 서비스 시장에서 글로벌 경쟁력을 확보하기 위해서는 Things 단말 플랫폼에 보다 집중할 필요성이 있다.
2. 주요 게이트웨이급 단말 플랫폼동향
게이트웨이급 단말은 많은 데이터를 수집하고 처리하기 위해서 고성능의 프로세서와 고용량의 메모리 및 다중 통신 모듈을 탑재하고 있으며, 이를 구동하고 제어하는 운영체제도 하드웨어 사양에 맞게 안드로이드나 리눅스 등의 고급 운영체제를 탑재하고 있다.
가. 저가형 컴퓨터인 라즈베리파이 플랫폼[3]
영국의 라즈베리파이 재단이 학교에서 기초 컴퓨터 과학교육을 증진시키기 위한 저가형 싱글보드 컴퓨터로 브로트컴 BCM2835 단일 칩 시스템을 사용하고 있다. ARM11JZF 700MHz의 CPU와 비디오 코어 IV GPU(Graphic Processing Unit), 256MB RAM로 구성된 고사양의 보드에 SD(Secure Digital) 카드를 외부 기억장치로 사용하며, 데비안, 아치 리눅스 및 QtonPi 등의 리눅스 배포판을 제공하고 있다. 현재 이 플랫폼의 설계도가 공개되어 있어 개발자가 원하는 대로 수정하여 자신의 제품을 개발할 수 있다. (그림 2 (a))는 현재 시판 중인 라즈베리파이의 모델B로 이더넷과 USB 2.0을 지원하고 있다.
나. 인텔의 웨어러블 기기용 에디슨 플랫폼[4]
WiFi, 블루투스 등 통신을 지원하는 SD 크기의 소형 및 초저전력 지원 개발 플랫폼으로, PC 및 스마트폰 뿐만 아니라 의자, 커피메이커 등의 제품을 대상으로 개발되었다. 이 HW 플랫폼은 22nm 400MHz의 듀얼 코어 SoC(System on Chip)인 인텔 쿼크 프로세서를 탑재하고, 응용에 따라 메모리는 2GB까지 확장 가능하며, 센서와 같은 경량 단말인 아두이노와 연동 가능한 IA(Intel Architecture) 지원 Galileo 개발보드를 아마존에서 시판 중이다. 뿐만 아니라, 아두이노 연동 개발보드와 개발환경(IDE: Integrated Development Environments)을 50,000여 개 대학에 배포할 예정이며, 공개 지원 커뮤니티를 통해 제품의 개발 활성화를 추진 중에 있다. (그림 2 (b))는 SD 크기의 에디슨보드로 현재 웨어러블 단말에 적용되고 있다.
다. 퀄컴의 통신 및 서비스 지향 단말 플랫폼[5]
2G 통신모뎀부터 통신의 강점을 가진 퀄컴은 자신의 칩 셋 기반으로 약 100종 이상의 휴대폰과 IoE(Internet of Everythings) 에코시스템을 위한 연결 솔루션을 출시하고 있다. 자동차 인포테인먼트와 디지털신호 응용을 위한 Snapdragon MSM8960, 텔레메틱스를 위한 MDM6600 및 스마트 미터링, 산업자동화 등을 위한 QSC6270 등 다양한 칩 셋을 제공하고 있다. 개발환경으로 IoE SW/HW Development Platform을 통하여 IoE/M2M(Machine to Machine) 단말과 3G/4G infra 네트워크와 연동 관련 개발을 쉽게 할 수 있도록 지원하고 있다. 또한, IoE 단말 간의 seamless 연결을 위한 AllJoyn 서비스 플랫폼을 AllSeen Alliance 프로젝트를 통해 공개하고 있으며, 모든 사람에게 무선 오디오를 지원하기 위해 AllPlay 서비스를 개발 및 제공하고 있다. (그림 2 (c))는 퀄컴에서 제공하는 HW플랫폼으로 다양한 통신방식과 서비스 프레임워크를 검증할 수 있다.
이렇듯 게이트웨이급 단말 플랫폼에서는 고성능의 통신 및 프로세서를 기반으로 개발자가 자원의 제한없이 응용을 손쉽게 개발할 수 있도록 HW 및 SW의 개발환경을 지원하고 있다.
3. Smart Things 단말 플랫폼동향
가. ARM Mbed 프로젝트[6]
모바일 CPU 시장의 강자인 ARM에서 만든 공개 프로젝트로, ARM Cortex-M 계열의 저전력 MCU(Micro Controller Unit)를 이용한 사용자 친화형 개발환경을 제공하고 있으며, 보드를 구성하는 MCU 및 부품들의 위치, 핀 번호 연결 등의 정보를 제공하고 다른 부품들을 손쉽게 추가하거나 교체할 수 있도록 정보를 공개하고 있다. 이는 ARM사가 독자적으로 제공하는 프로젝트가 아니라, Cortex-M을 마이크로 컨트롤러로 사용하여 제어모듈을 생산하는 Freescale, STMicro, TI 및 NXP 등 경량단말을 위한 칩 제공업체들이 HW 플랫폼을 공개하고 협력하는 체계로 구축되어 있다.
이 프로젝트는 클라우드 서버에 컴파일러, 디버거 등의 개발 SW를 제공하고, 사용자는 관련 응용을 설치하지 않고도 바로 웹 기반으로 프로젝트를 생성하고 소스에 대한 실행파일을 얻도록 손쉬운 개발 툴 제공하고 있다. 또한, 사용자/개발자는 자신이 개발한 기능을 공개 라이브러리 형식으로 제공이 가능하다. 프로젝트의 확산을 위해서 ARM사는 HDK(Hardware Development Kit)와 SDK(Software Development Kit)를 공개하고 있으며, 관련업체에서는 자사의 개발보드를 공개하여 개발자의 자발적인 참여를 유도하고 있다.
(그림 3)은 ARM Mbed 프로젝트에서 제공하는 SW 개발도구 및 협력업체에서 제공하는 HW 공개 기반의 설계도를 가지고 자신의 단말을 생성할 수 있도록 기능을 제공해 주는 HDK이다.
나. Arduino 플랫폼[7]
오픈소스 기반으로 한 단일보드 마이크로 컨트롤러로 SW 개발환경(IDE)을 제공하며, 센서, LED, 모터 등의 외부 전자장치를 통제하는 제품을 개발할 수 있는 환경을 함께 제공하고 있다. 기본적으로 Atmel사의 AVR 기반으로 단일보드를 제공하였으나 현재는 Cortex-M을 이용한 제품도 많이 출시되고 있다.
이 플랫폼은 기존에는 번거로운 과정(컴파일> 업로드 등)을 거쳐야 하지만, 컴파일된 펌 웨어를 USB(Universal Serial Bus)를 통해 쉽게 업로드 후 검증할 수 있도록 손쉬운 개발환경을 지원한다. 뿐만 아니라, 샘플보드의 회로도가 공개되어 있어, 누구나 직접 보드를 만들고 수정할 수 있어 나만의 보드를 개발할 수 있는 환경을 구축하고 있다. 일례로, 장난감 회사 레고는 로봇 장난감과 아두이노를 활용한 로봇 교육프로그램을 운영하고 있으며, 자동차 회사 포드는 차량용 HW와 SW를 만들어 차량과 상호작용할 수 있는 OpenXC 프로그램을 제공하고 있다.
다. Freescale 단말 플랫폼[8]
개방형 개발 플랫폼인 이클립스 상에서 자사가 개발한 다양한 MCU와 연동하여 구동되는 CodeWarrior SDK와 개발보드가 준비되기 전에 응용 SW를 개발하고 성능을 점검하기 위한 HDK를 제공하고 있다. 특히, 아두이노 보드와 연동 가능한 센서(MMA8652 가속센서, FXAS21000 자이로센서, MAG3110 3축 자기센서, MPL3115A2 압력센서, FXOS8700 6축 센서 등)를 확장하여 개발할 수 있는 Freedom Development Platform 환경을 제공하고 있다.
라. TI 단말 플랫폼[9]
TI(Texas Instruments)는 16/32비트 MCU를 기반으로 에너지, 의료, 센서, 공장자동화, 물류자동화 등의 다양한 분야에 자사의 칩 판매를 확대하고 있다. 특히, 초저전력 스마트 그리드 단말을 위한 MSP430, 산업 자동화/공정 제어 및 정보 가전/포터플 전자장치를 위한 Hercules Safety Cortex-M MCU 관련 저전력 MCU보드를 제공하고 있다.
관련 분야에서 시장확장을 위해서 개발자를 위한 CCS(Code Composer Studio)를 제공하며, 이 개발환경에는 기본적으로 컴파일러, 툴 체인 및 IDE(주변장치 설정 및 드라이버 라이브러리, TI RTOS) 등이 포함되어 있다.
마. 국내 단말 플랫폼[10]
국내에서도 M2M 단말을 위한 개방형 플랫폼을 KETI와 SKT에서 개발하고 있으나, 단말 플랫폼보다는 서비스 플랫폼에 집중을 하고 있는 실정이다. 뿐만 아니라, 단말을 구성하는 SW 플랫폼이나 관련 디바이스를 공개된 기술을 바탕으로 개발하고 있다.
한편, ETRI에서는 Things 단말을 위한 경량운영체제를 개발하였으며, IPv6(Internet Protocol version 6) 기술 및 ZigBee IP 기술을 보유하고 있어 사물인터넷을 대비하는 SW 플랫폼을 확보하고 있다.
4. IoT 단말 간 비교
<표 1>은 IoT 단말 플랫폼에 따른 사용되는 SW개발 환경인 운영체제, 프로세서의 성능, 메모리 용량 및 소모전류를 비교하였다. 앞서 서론에서 언급한 IoT 서비스에서 필요한 핵심기술에 의하면 Things 단말이 저전력/저사양의 프로세서를 이용한 단말의 특성에 가깝다는 것을 쉽게 유추할 수 있다.
IoT 단말 플랫폼별 운영체제, 프로세서, 메모리 및 소모전류 비교
사물인터넷 시장자료에 의하면 향후 미래 서비스를 위해서는 얼마나 많은 사물이 인터넷에 연결되느냐가 큰 관심사항인데, 현재 우리나라의 게이트웨이급 IoT 단말인 M2M 단말의 회선은 200만대 정도로 이 정도의 사물이 현 시장에 설치된 것으로 파악되고 있다. 따라서, 2020년 260억개의 단말이 인터넷에 연결된다고 하는 보고자료는 Things 단말이 시장예측 단말의 대부분을 차지할 것이며, 이 단말에 필요한 것은 저전력과 저가격을 위한 낮은 사양의 프로세서 및 경량 운영체제이다. 한편, 게이트웨이급 단말은 상대적으로 고성능/고용량을 지원하고 있어, 고부가가치가 있는 단말에 집중될 것이다.
단말의 생태계 구축 측면에서 보자면, 게이트웨트급 단말의 주도적 기업들은 퀄컴, 인텔과 브로드컴 등의 대형 메이저 업체로, 이미 각 분야에 강점을 유지하면서 개방적인 플랫폼을 제공하고 있다. 또한, 고성능의 단말시장에서는 이미 가치있는 시장인 M2M 단말의 보급이 포화 상태이며, 3G/4G망 연동 등의 인프라망 위주의 칩셋 시장이 활성화되어 중소기업 진출의 어려움이 존재한다.
하지만, IoT 시대에서는 공공 인프라 성격이 강하며, 중소기업 중심으로 작은 부품 위주의 간단한 단말 공급으로 통신 SoC, 통신모듈 및 창의적 응용 SW 개발이 가능하여 소량 다품종 시대에 적합한 Things 단말의 근본적인 접근이 가능하다.
III. IoT 단말 플랫폼을 위한 IPv6 기술
우리가 접하는 사물들이 인터넷이라는 공간에 접속하여 의미있는 데이터를 주고 받으려면, 각각의 사물들을 인식할 수 있는 주소체계가 필요하다. 이를 대비하기 위해서 기존의 IPv4에서 차세대 네트워크 주소체계인 IPv6가 국제 인터넷 표준화 기구인 IETF(Internet Engineering Task Force)에서 20년 전에 마련되었다. 하지만, 그동안 망 사업자들의 관심 부족과 외면으로 인해 IP 주소 고갈에도 불구하고 IPv4에서 IPv6로 전환되지 못하고 있는 상황이다. 이런 상황에서 사물인터넷의 등장으로 정부에서도 3월부터 IPv6 지원 장비를 도입한 기업에게 세액공제와 자금지원을 해주는 지원책을 실시하는 등 IPv6 보급에 직접 나서고 있다.
사물인터넷 시대를 맞아 실제 사물에도 IPv6를 적극적으로 도입하려는 환경 속에서 ETRI에서는 사물인터넷 기술에 사용될 수 있는 초소형 임베디드 운영체제인 나노큐플러스(NanoQplus)와 경량 IPv6 네트워크 스택을 개발하였다. (그림 4)은 현재 개발된 네트워크 스택의 구성요소를 보여주는 것으로 대부분의 기능이 완성되었다. 그리고, 2014년 3월 4일 IPv6 Forum에서 주관하는 IPv6 Ready Phase-2 Gold Logo 인증을 획득하였다.
ZigBee IP 스택 및 IPv6 국제 인증
센서노드 운영체제의 IPv6 네트워크 스택을 인증받은 사례는 SICS(Swedish Institute of Computer Science)의 Contiki와 Cisco PhyNet에 이어 세계 3번째이며, 국내로는 최초이다.
IPv6 Ready Phase-2는 IETF IPv6 표준들의 ‘MUST’와 ‘SHOULD’ 항목들을 포함하는 약 450가지의 시험항목들을 갖추고 있다. 2011년 종료된 Phase-1과 달리 Phase-2는 호환성 시험과 함께 4개의 서로 다른 IPv6 제품들과 함께 상호 운용성 시험도 통과해야 하므로 훨씬 더 까다로운 인증절차이다. Phase-2 시험의 통과는 다른 장비와 문제없이 연동 가능하다는 최적의 적합성을 인증한다는 의미이다.
사실 IPv4에 비해 IPv6는 주소 길이가 길어, 오버헤드도 크기 때문에 IPv6를 탑재하여 SW를 경량화시킨다는 것은 쉬운 일이 아니다. 경량 임베디드 SW는 32비트 프로세서뿐만 아니라 컴퓨팅 자원이 제한적인 8, 16비트 마이크로컨트롤러 등에서 동작할 수 있도록 경량화 되어야 하기 때문에 IPv6의 탑재는 SW 경량화에 매우 큰 어려움을 준다.
하지만, NanoQplus는 사물인터넷을 구성하는 실제 사물에 들어갈 수 있는 초경량급 운영체제로, 이번에 인증을 받은 IPv6 네트워크 스택과 OS 커널을 모두 합쳐도 약 50KB 미만의 규모로 저사양/저전력을 요구하는 Things 단말 플랫폼에 적합하다.
NanoQplus는 이번 IPv6 Ready Logo 획득에 이어 올해 안에 ZigBee Alliance에서 주관하는 ZigBee IP 호환 플랫폼 인증도 받는 것을 목표로 하고 있다. ZigBee IP는 ZigBee 스마트 에너지 프로파일 2.0을 위한 기반 표준으로 IEEE 802.15.4 저전력 무선 메쉬 네트워크에서 IPv6, 6LoWPAN(Low-power Wireless Personal Area Network), RPL(IPv6 Routing Protocol for Low-power Lossy Networks), TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)와 보안, 인증 기능, 그리고 웹 프로토콜(http(HyperText Transfer Protocol), CoAP(Constrained Application Protocol) 등 IETF 표준들의 집합을 말한다.
대부분 사물들이 저전력 무선으로 연결될 것을 예상해본다면, ZigBee IP 호환 플랫폼 인증까지 받는 것은 사물인터넷 시대에 적극 대응할 수 있는 SW 플랫폼을 제공하는 것을 의미한다. 이를 통해 부족하다고 평가받는 국내 사물인터넷 분야의 SW 부분의 공백을 메우는 역할을 할 수 있다.