최근 다양한 산업에서 주요 흐름으로까지 부상하고 있는 IoT(사물인터넷)는 많은 제품과 서비스에 사용되고 있다. 그러나 IoT라는 용어가 널리 사용되는 만큼 해석 또한 다양해지고 있다. 연결된 기기는 무조건 IoT 솔루션이라고 부르는가 하면, 제품에서 빅 데이터를 분석하는 기능만 IoT라고 하기도 한다. 여기서는 우선 IoT의 개념에 대해 짚어 보고, IoT 시스템과 주요 장점, 구성 요소에 대해서도 살펴본다.
IoT란?
그림 1. 인터넷 트래픽 분포
IoT란 정확히 무엇을 의미하는가? 우리가 알고 있고 매일 사용하는 인터넷과는 어떻게 다른가? ‘사물’ 인터넷이라는 것이 다른 인터넷과 대치된다는 것이 사실인가? 그렇지 않다면 왜 시작부터 차이가 있는 것일까? 어째서 사물이라는 말을 붙여서 나타낼까?
우선 우리가 매일 사용하는 기본적인 인터넷도 해를 거듭하면서 큰 변화를 겪고 있다는 사실을 인지할 필요가 있다. 거대한 지식 공유 시스템에서 서비스 지향적 인프라로 설명할 수 있는 현 상태가 된 것이다. 요즘 웹 트래픽의 대부분은 이미 인적 활동에 의존하지 않고 있으며 막대한 컨텐츠가 동적으로 생산되고 있다.
스마트폰과 휴대 기기의 혁명에 의해 온라인 서비스가 폭발적으로 성장하면서, 이와 같은 서비스에 보다 쉽게 접근할 수 있게 되었으며, 기계 간(M2M) 통신 기술에 대한 수요도 생겼다. 제품에 연결성을 추가하는 비용도 감소했다.
저장 용량을 늘려 주는 클라우드 컴퓨팅의 혁명도 효과적이며, 그에 따라 비용 효율적으로 저장할 수 있는 데이터의 양이 증가했다. 그러나 정기적으로 대량의 데이터를 생산하고 수집하는 기기가 현실화되는 것은 또 다른 문제이다.
이 데이터를 처리, 분석 및 압축하여 의미 있는 시각을 이끌어 내고 이러한 시각을 바탕으로 구분할 수 있어야 한다. 이 모든 데이터를 이해하는 과정을 일반적으로 빅 데이터 분석이라고 한다. 하지만 앞서 말한 것이 실현되더라도 사람과 인터넷, 기계와 인터넷을 어디까지 혼합할 수 있을지는 미지수이다. 양쪽이 같은 인프라를 공유하지만, 상호작용 수준은 완전히 제한되어 있다. 실제 이 부분이 처음에 말했던 질문의 핵심이다. 바꿔 말하면, 인터넷이 어느 정도 규모인지 이해하는 것이 중요하다. 우리의 관점에서는 실제로 모든 기능을 담당하는 하나의 단일 인터넷으로 수렴될 것이라 보고 있다. 이와 같은 현실화는 기계에서 나온 정보가 침투하는 데 있어서 중요하다.
우리는 하루에도 여러 가지 장비를 사용하며 다양한 장소에서 IoT 패러다임을 만날 수 있다. 개인망 영역에서는 건강과 복지를 향상시켜 주는 웨어러블 기기를 만날 수 있다. 그리고 가정에서는 점점 더 많아지는 가전제품, 멀티미디어 기기, 다른 소비자 제품에 둘러싸여 있다. 끊임없이 활동하는 동안에도 자가용이나 대중교통 차량 및 기반시설을 이용하여 이동성을 높인다. 산업 분야에서는 생산 효율, 정비, 고장 관리 분야에 센서가 도입되어 있다. 대도시 차원에서는 원격 관리, 지속적인 정비, 자산 추적을 위한 스마트 건물 관리 시스템과 기반시설을 예로 들 수 있다.
IoT는 특정 제품이나 전자기기, 가전제품 영역에만 국한된 것이 아니다. 심지어 일반 제품의 형태를 다시 설계할 수도 있다
(일례로, 연결된 화장실이라는 기이한 사례가 최근 일반화되고 있다). 이와 같은 체제는 항상 켜져 있어야 하는데, 그 가용성은 인터넷 가용성에 의존할 수 없다. 네트워크 연결 장애 시 일부 기능은 쓸 수 없게 되는 것이 사실이지만, 전체적인 경험이나 간섭성, 일관성은 유지되어야 한다.
어디서나, 누구나, 무엇이든
1. 어디서나
어떤 개념적인 무선 연결 체제가 있다고 했을 때 그 프레임은 지리적으로, 그리고 네트워크 지형적으로 어느 위치에서든 가동할 수 있어야 한다. 전자를 인터넷 기반 유비쿼티라고 하며, 후자는 인터넷 접속이 제한적이거나 접속이 금지된 인트라넷 환경으로 프레임을 복사하는 능력이라고 한다. IoT 패러다임을 확장하기 위해서는 인터넷 공공 도메인 그 이상의 인터넷 구조를 이해해야 한다.
그림 2. IoT 환경의 에너지 분배 기회
2. 누구나
현재는 IoT에 모든 것이 연결되어 있지는 않다. 그러나 사용이 간편하고 보안이 우수한 IoT 환경을 구축하는 것이 그리 먼 미래의 이야기는 아니다. 그 때가 되면 누구나 IoT에 접속할 수 있다. 누구나 자신의 제품을 인터넷에 연결하고, 개인 사용 환경을 자신에게 맞게 설정할 수 있게 될 것이다.
3. 무엇이든
실제로 어떠한 장치, 기기, 독립체를 사용해도 인터넷에 매끄럽게 연결할 수 있다. 연결성은 디바이스의 주요 기능이 아닌, 디바이스의 능력을 확장해 준다.
‘사물’이라는 문제
그림 3. 각 윈도우 크기별 TCP 처리량 대 데이터 왕복시간(RTT) 함수 관계
이름에서 알 수 있듯이, 앞에서 말한 방식을 따르면 IoT 시스템은 사물과 인터넷이 관련되어 있다. 이와 같은 사물에는 인터넷에 연결할 수 있는 장치가 있고 대부분 무선 방식이며, 게이트웨이를 통해 네트워크 라우터에 연결되는 Wi-Fi나 다른 무선 기술을 이용한다. 아직은 유선 연결도 유효한 방식이다.
‘사물’이 훌륭한 IoT 솔루션으로 되려면 몇 가지 기본 기능을 갖추고 있어야 한다. 그 중에서도 가장 중요한 것이 에너지 효율, 보안, 데이터 처리, 간결성이다.
그림 4. IoT의 구성 요소
1. 전력
에너지 보존에 대한 인식이 높아지면서 에너지 보급과 효율도 그 중요성이 더해지고 있다. 배터리로 작동되는 솔루션의 경우가 특히 그렇다.
앞에서 말한 어디서나-누구나-무엇이든이라는 전망의 기틀을 만들고 막대한 수의 사물이 연결된다고 가정했을 때, 에너지 절약의 중요성은 간과할 수 없다. 또한 에너지 절약은 확장성도 보장한다. 장치의 수가 늘어날수록 아주 작은 에너지도 낭비할 수 없을 것이다.
에너지 문제에서 봤을 때, 인터넷에 연결되는 사물이 늘어도 에너지 공급에는 변화가 없다는 것이 문제이다. 즉, 현재 충당할 수 있는 에너지 범위여야 한다는 것이다.
에너지 관리와 직접 연관 있는 또 하나의 속성은, 통신 자체가 부담을 준다는 점이다. 기존의 애플리케이션을 살펴보면 대부분 전체 전파 비트 수에 비해 전송되는 정보량이 현저히 줄어들었다.
가장 까다로운 부분은 결과적으로 시스템 전반에 걸쳐 전력 균형을 고르게 맞춰야 한다는 것이다. 노드 연결로 얻은 이득이 처리에서 소모하는 전력을 능가하도록 하는 방법이 필요하다. 노드 수가 많은 IoT 토폴로지의 속성상 개별 노드의 전원 관리만 제대로 이루어진다면 기회는 충분히 늘어날 수 있다. 그림 2와 같이, 노드 수가 늘어날수록 전 노드 간 전력이 공평하게 배분된다. 이렇게 되면 각 노드 별 전력 공급량을 줄여 실질적으로 노드당 비용과 전력 소비량을 낮출 수도 있다.
일례로 온수기에 대해 생각해 보자. 이 시스템에 조합 온도 센서와 가열 횟수 대비 실제 온수 사용을 비교하는 빅 데이터 분석 시스템이 있다고 했을 때, 이 시스템은 필요 없는 가열 사이클을 피하고 에너지를 절약함으로써 시스템 요소 간 정보 통신보다 더 가치 있는 곳에 전력을 쓰도록 할 수 있을 것이다.
2. 보안
데이터망에서 항상 어렵게 느껴지는 부분이 보안이다. 단순하게 생각해도 이 문제는 접근 지점이 많아 침투 지점도 많은 IoT가 더 심하다고 할 수 있다. 이렇게 시스템 취약성이 커지면 보안 전쟁은 불가피하다.
IoT 솔루션에서는 단순히 데이터만 위험한 것이 아니므로 위험의 차원이 다르며, IoT의 잠재 피해도가 훨씬 높다(즉, 원격지에서 문을 열고 도난경보기를 끌 수도 있다). 더 확실하게 보안하기 위한 노력은 끝이 없을 것이다. 노드가 여러 개이므로 중복성과 분산 접근성이라는 문제도 대두된다. 어떤 경우이든 최신 보안 체제를 먼저 갖춰야 한다. 구체적으로는 업계에서 입증된 보안 체계로 연방 체제와 전자상거래에서 효과를 보는 구조가 좋은 사례라고 할 수 있다.
3. 데이터 처리
종단점이 대량 배치되어 있어 노드 밀도가 높다. 때문에 처리력도 더 높아야 한다. 나아가 대량의 데이터가 만들어지므로 이 데이터를 저장할 공간도 필요하다. 또한 실제 네트워크의 잠재성 때문에 그림 3과 같은 리소스 시스템으로는 한계가 생긴다.
이와 같은 한계를 고려하여 애플리케이션을 설계하면 성능 문제를 막을 수 있을 것이다. 주로 개발자와 관련된 문제이며, 네트워크 엔진을 제대로 설계한다면 트래픽을 조절하여 이러한 문제를 많이 해소할 수 있을 것이다.
좋은 설계란, 네트워크 엑세스와 엑세스당 데이터 전송량이 균형을 이루는 시스템이다. 가능하면 데이터를 하나로 집합하는 방식이 처리력을 높일 수 있다. 반면에 대기력과 반응 시간이 중요하다면 데이터 집합체는 좋은 해결책이 아닐 수도 있다.
4. 간결성
제품을 인터넷에 연결하기 쉬울수록 채택 가능성도 높아진다. 간결성이란, 주관적인 용어이며 다양한 모습과 형식으로 나타낼 수 있다. 여기서는 제품 수명 주기 전 단계를 포괄하는 관점에서 본 간결성을 말한다. 제품 수명 주기 전 단계를 포괄하는 흐름에 맞춰 관련 단계의 필요성과 기대치를 제대로 이해하는 것이 중요하다. 조기 평가, 제품 분석, 원형 제작, 현장 시험, 대량 생산, 채택이 이러한 단계이다. 각 단계마다 간결성과 이용 편의성을 극대화하려면 솔루션의 각기 다른 측면에 초점을 맞춰야 한다.
이 경우 가장 큰 과제가 주관적인 방법을 평가와 비교가 가능한 객관적인 방식으로 전환하는 것이다. 이 단계가 완성되면 간결성을 평가하고 개선하는 것도 훨씬 쉬워진다. 이 기준에 해당하는 것으로 신규 프로토콜 도입에 걸리는 시간, 네트워크 연결 관련 코드의 복잡성, 버그 개수, 장치 연결 시 보고된 문제 수 등을 들 수 있다.
IoT를 이루는 요소
그림 5. 조명 스위치
지금까지 전천후 단일 인터넷을 이론적으로 살펴보았다. 다음에는 앞으로 도입될 새로운 노드의 주요 특성을 파악하여 IoT라는 세상을 좀 더 넒은 시각에서 살펴본다. 이를 위해 먼저 핵심 구성 요소부터 파악한다. 여기서는 사용자, 사물, 서비스라는 세 개의 클러스터로 구분했다.
1. 사용자
서비스를 이용하며 완제품을 갖고 있는 사람을 말하며, 대부분 정보를 소비하고 프로파일 설정과 의사 결정을 실행한다.
2. 사물
데이터 소스나 데이터 싱크 등 물리적이거나 가상 공간의 엔드포인트로, 인터넷을 통해 정보를 주거나 소비한다. 흔히 ‘클라우드’라고 부르는 그것이다.
3. 서비스
서비스는 정보 집합체이며 다양한 방식으로 데이터를 분석하는 툴이 될 수 있다. 경우에 따라서는 사용자나 사물 클라이언트의 요청을 처리할 수도 있다.
확대, 개조, 혁신
표 1. 제품 수명 주기 전반의 문제를 해결하는 SimpleLink Wi-Fi 솔루션
이제 ‘왜?’ 라는 근본적인 부분에 대해 질문해 보자. 인터넷에 사물을 연결하는 것, 아니면 언제나 연결될 수 있게 하는 것이 왜 문제인가? 새로운 시대로 접어드는 것이 왜 진화인가?
여기에 답하기 위해 간단한 조명 스위치를 예로 든다. 조명 스위치를 연결하고 물리적 위치를 확장하면 먼 곳에서도 제어와 모니터링이 가능하다. 이는 동시에 존재하는 어떤 제어 지점이든 스위치를 설치할 수 있다는 새로운 가능성을 열었다.
또한 스위치에 다른 기능도 도입할 수 있다. 예를 들면 조명을 제어하는 스위치가 네트워크상에서 일어나는 다양한 활동의 피드백 경로 역할도 할 수 있다. 사용자의 개인 선호도를 고려하여 메시지가 들어올 때다 조명이 깜빡이게 할 수도 있다. 이러한 기능은 우리가 알고 있던 스위치의 개념을 바꿔 놓는다.
이와 같은 장치가 일반화되어 안정되고 상호 운용성을 갖게 되면 세계의 생태를 바꿔 놓을 수도 있다. 조명 스위치의 연결성이 집을 짓고 배선하는 방식에 어떤 영감을 줄 수도 있는 것이다. 즉 조명마다 스위치를 달 필요도 없고 물리적으로 지정된 경로를 따라 조명을 달 필요도 없다. 나아가 주택 어디서든 스위치를 부착하지 않고 동적으로 설치하여 마음대로, 한 번 혹은 따로따로 조명을 제어하도록 프로그램할 수도 있게 된다.
IoT로 가는 문을 여는 SimpleLink 제품군
그림 6. 날씨가 표시되는 탁상 시계
점점 높아지는 IoT의 요구에 의해, 텍사스 인스트루먼트(TI)는 SimpleLinkTM 솔루션 제품군을 탄생시켰다. 정확히 IoT 노드나 게이트웨이의 문제를 해결하기 위한 솔루션이다. SimpleLink Wi-Fi® CC3100과 CC3200 플랫폼에는 앞서 말했던 필요 기능이 모두 구현되어 있으므로 솔루션 사용자는 IoT를 탐사해 혁신을 이룰 수 있게 되었다.
이러한 디바이스로는 필요한 소프트웨어 요소를 모두 애플리케이션 레이어에 집적한 Wi-Fi 네트워크 엔진이 있다. 다른 모든 일은 네트워크 엔진이 알아서 하므로 사용자는 자신의 애플리케이션에만 집중하면 된다. Wi-Fi로 제품을 쉽게 연결할 수 있는 다양한 아이디어가 디바이스에 담겨 있다.
앞에서 말한 것과 같이 장치는 두 종류가 있다. CC3100 Wi-Fi 무선 네트워크 프로세서는 외부 마이크로컨트롤러(MCU)용이다. MCU는 사용자가 선택할 수 있다. CC3200도 네트워크 핵심 요소는 CC3100과 같지만, 내장형 프로그래머블 ARM® Cortex®-M4 MCU를 넣어 하나의 IC로 개발할 수 있도록 했다.
1. 사용 편이성
SimpleLink Wi-Fi 제품군은 사용 편이성의 새로운 기준이다. 이 솔루션은 빠른 개발 주기에 맞춰 설계되었으며, 포장만 풀면 바로 인터넷에 연결할 수 있어 진정한 IoT를 경험할 수 있다. 개발 키트에 함께 들어 있는 에뮬레이션 라이브러리로 최종 제품에서 사용하게 되는 MCU와 상관없이 PC를 이용해 최종 제품의 네트워크 연결 부분을 개발할 수 있다.
또한 정밀 설계로, 기기가 갖춰야 할 다양한 기능에 접근하는 가벼운 API를 만들 수 있다. API는 저장고에 체계적으로 들어가 직관적으로 탐색하고 이해할 수 있다. 개발자는 저장고에서 네트워크 레이어의 인터페이스를 이루는 소켓 저장고(사일로)를 찾을 수 있다. 소켓은 용도가 광범위한 BSD 소켓을 선택했으므로, SimpleLink Wi-Fi 솔루션에서 네트워크 코드를 빠르게 돌려볼 수 있다.
업체 관점에서 봤을 때 제조력은 솔루션에서 가장 중요한 부분이다. SimpleLink Wi-Fi 제품군의 경우, 모든 구성 요소가 통합되어 있으므로 생산 라인을 별도로 조정할 필요가 없다. 때문에 업체의 부담도 줄어든다.
또한 디바이스의 포장이 매우 일반적이며 특수 PCB 제약을 받지 않아 사용도 간편하다. 기준 설계품은 무료로 구할 수 있어 이산 레이아웃을 만들고자 하는 사람에게 특히 도움이 될 것이다.
SimpleLink Wi-Fi 제품군은 최종 사용자에게 최초 연결을 위한 온칩 디바이스뿐만 아니라 디바이스 진단과 모니터링 기능도 함께 제공한다. 이 모든 기능이 MCU와는 무관하게 지원된다.
2. 보안
앞서 말한 것처럼 보안은 기본적인 부분이고, 보안 없는 인터넷 솔루션은 살아남을 수 없다. 오늘날 인터넷을 통해 이루어지는 거의 모든 거래가 전송 레이어의 보안으로 처리된다. SimpleLink Wi-Fi 솔루션의 네트워크 엔진은 링크 레이어와 전송 레이어를 은닉했다. 사용자는 필요한 정보를 전달하면 보안 채널을 구축할 수 있다.
링크 레이어에서는 로컬 네트워크상의 네트워크 연결 시 은닉화를 이용한다(일반적으로 AP 이용). 전송 레이어에서는 원격지 대상 서버와 이루어지는 모든 협상을 이렇게 은닉해서 처리하므로, 구축한 채널상에서 보안 상태로 정보를 전송할 수 있다.
오늘날 거의 모든 인터넷 서비스에서는 보안 통신 채널을 요구하며, 또 그렇게 되는 것이 당연하다. 대부분의 경우, 네트워크를 통해 민감한 정보가 이동된다. 여기에는 사용자 특정 정보, 증명서, 개인 정보가 포함되므로 실제 서비스에 연결된 장치에는 보안 레이어가 들어간다. 호스트 플랫폼의 부담을 없애, 인터넷 서비스와 상호 작용하는 솔루션 개발 노력을 덜어준다.
3. 저전력
배터리식 제품의 경우, 특정 조치로 다른 기능보다 배터리 수명에 도움을 줄 수 있다. 이 경우 원하는 결과가 나오도록 시스템을 어느 정도 유도하는 것이 중요하다. SimpleLink Wi-Fi 장치는 엄청나게 복잡한 수많은 내부 노드에 노출되지 않도록, 정책 기반의 접근 방식을 사용한다.
정책 기반의 방법은 내부 시스템 다이얼을 직접 조작하지 않고도 전력 거래에 맞춰 시스템을 유도하는 기능이 있다. 이 방법은 간결성과 함께 보호 기능까지 갖추고 있다. 개발자가 실제 선택할 수 있는 정책은 제한되어 있으며 나머지는 내부적으로 처리한다. 정책을 선택하면 정책별 특정 정보로 선택한 정책에 맞춰 행동을 정확히 조정할 수 있다.
예를 들어 단순 센서 노드는 데이터 전송이 훨씬 쉬우며, 경우에 따라 반응할 필요도 없다. 이 경우 저전력 모드로 즉시 전환하도록 하는 것이 기기의 수명을 연장하는 데 도움이 된다. 한편, 낮은 대기전력 정책에는 원격 제어가 유리할 수도 있다.
SimpleLink Wi-Fi로 모든 기능 집적
그림 7. 간단한 SimpleLink CC3100 코드
마지막으로 이 모든 것을 종합하여, 인터넷 서비스에 연결하기만 해도 정보를 검색해서 보여주고 자동으로 꺼지는 장치에 대해 살펴 보자. 그림 6은 날씨 정보가 표시되는 배터리식 탁상 시계다. 이 시계는 인터넷에 연결될 경우 날씨 정보(시간까지)를 자동으로 보여주는 멋진 아이디어가 활용된 것이다.
그림 7은 작업을 처리하는 간단한 SimpleLink CC3100 코드이다. CC3100과 CC3200 SDK에서 처리할 수 있다. 이 코드는 특정 도시의 날씨 관련 정보를 보안 검색하는 인터넷 서비스를 실시한 후 차단된다.
소프트웨어 개발에 익숙하지 않은 독자에게는 이와 같은 말이 큰 의미가 없지만, 작업에 비해 코드 길이가 많이 짧다는 것은 인지할 수 있을 것이다.
SimpleLink CC3100 소프트웨어 개발 키트(SDK)에서 정확한 사례를 찾을 수 있다. 보안 면에서 보안 전송 레이어를 통해 서버 연결이 이루어진다는 데 주목하자. 업데이트 시간이 합당하다면 전력 소비량은 무시해도 될 것이다(즉, 제품 수명에는 영향을 주지 않는다). AA 배터리 4개가 들어가는 이 시계는 2년 동안 연속해서 사용할 수 있다. 30분마다 정보를 갱신하는 Wi-Fi 기반 연결 요소를 추가해도 1∼2년 정도는 쓸 수 있다.
마지막으로 온칩 웹 서버를 잠깐 언급하자면, 코드 한 줄 바꾸지 않고 원격에서 제품을 구성할 수 있어 새로운 기능을 추가할 수 있다.
☆
IoT가 앞으로 대변혁을 가져올 것이라는 데에는 의심의 여지가 없다. TI는 IoT 완제품을 개발하는 데 필요한 솔루션을 만들었다. 이 솔루션으로 더 많은 것을 연결하면 꿈을 현실로 만들 수 있다.
SimpleLink Wi-Fi CC3100과 CC3200 플랫폼의 다양한 기능에 대해서는 www.ti.com/simplelinkwifi에서 확인하자.
IoT는 매우 광범위하므로 여기서 모든 것을 설명할 수는 없다. 여기서는 빙산의 일각에 불과한 보안성이나 정책 관리 등 IoT와 SimpleLink Wi-Fi 솔루션의 중요한 특징만 간단히 알아보았다.
Avi Baum Texas Instruments Inc.