4. 사물인터넷(Internet of Things)이란?
네트워크(Internet)에 연결된
고유하게 식별 가능한 사물들(Things)이
인간의 명시적 개입 없이
상호 정보를 주고받으며
인간 중심적인 서비스를 제공할 수 있는 기반 인프라 기술
사물인터넷(Internet of Things) 시대의 공개SW, 정명훈, 2014
5. IoT 현황
인터넷에 연결된 사물들의 수가 전세계 인구 초과 IoT 시작
2020년, 인구 수는 향후 70억까지 증가 예상 vs 연결된 사물의 수 500
억 개 예상
실제로 보면 가정 당 1 PC 개인 당 1 스마트폰 태블릿, 스마트 TV,
개임 콘솔, 프린터, 셋탑박스 각종 가전 제품
사물인터넷(Internet of Things) 시대의 공개SW, 정명훈, 2014
7. 머신
(센서 등)
모듈
(임베디드)
네트워크
데이터
처리
서비스
응용
데이터 수집 데이터 전송 통신 데이터 분석 활용
IoT의 요소 기술
센서
실제 데이터를 수집
하는 최 접점
임베디드 단말
수집된 정보를 취합
및 전송
네트워크
근거리: 주로 센서와 임베디드 단말 통신
원거리: 단말과 서버 사이의 통신
보안
데이터 유출, 외부 침입, 사생활 침해 등 방지
클라우드 컴퓨팅
효율적인 End-to-End IoT 플랫폼 구축
미들웨어
Event Processing:
대량 데이터에 대한 1
차 패턴 분석
Messaging: 데이터
의 전송 보장
데이터 처리 및
분석
빅데이터: 센서에서
수집된 비정형, 대량
데이터 처리
DW/BI: 데이터로
부터 유의미한 정보
추출
8. IoT의 요소 기술(계속)
센서 및 임베디드 단말(HW)
데이터 소스로부터 직접 데이터를 수집하는 센서, 수집된 데이터를 모아 1차 가공 역할을 하는 임베디
드 단말 부분을 담당할 하드웨어 (예: NFC 센서, 모바일폰)
전력, 네트워크, CPU 등의 리소스가 충분하지 않은 제한된 환경에서 동작해야 하기 때문에 가볍고(lilght)
단순 (simple)해야 하며 환경에 맞게 쉽게 Customization이 가능해야 하기 때문에 기술이 오픈된 Open
Hardware(공개SW 하드웨어) 형식이 적합
오픈소스 기술: Open Source Hardware (Raspberry PI, Arduino)
네트워크(Communications)
근거리 통신: 수 많은 센서와 거기에서 나오는 임베디드 단말 사이에 원활한 데이터 송수신을 가능케 하
는 프로 토콜. 대체로 경량이어야 하고 특히 전력 소비가 적어야 함. Bluetooth, Zigbee, Beacon 등의 기
술
원거리 통신: 센서에서 수집된 데이터를 임베디드 단말에서 바로 처리하는 경우도 있지만 대부분의 경
우는 백 엔드에 있는 분석 및 응용 시스템으로 보내야 하며 이 때 사용되는 통신. 근거리 만큼은 아니어
도 역시 저전력, 경량 프로토콜이 필요하며 데이터에 대한 전송 보장(QoS)도 필요. 기본적인 통신은
TCP/UDP 레이어를 사용하 고 그 위에 프로토콜로는 HTTP와 함께 최근 MQTT 관심 큼
오픈소스 기술: USB, Bluetooth(btstack, SmallTooth), Zigbee(Open ZB), MQTT(RabbitMQ, mosquitto)
Event Processing 미들웨어
센서에서 나오는 엄청난 양의 데이터를 모두 서버로 보내기에는 과도한 네트워크 트래픽과 CPU 자원,
스토리 지 등의 자원을 소모하기 때문에 사전에 정해진 이벤트 패턴을 감지하여 1차 가공하여 요약된
결과를 보내는 목적. 필요에 따라 임베디드 단말에서 동작할 수도 있고 데이터 처리 서버에서 동작할 수
도 있음
특정 데이터(이벤트) 패턴을 감지하는데 효과적인 CEP(Complex Event Processing) 기술 적용
오픈소스 기술: Complex Event Processing(Esper), Stream Processing(Storm, S4)
9. IoT의 요소 기술(계속)
Messaging 미들웨어
직접 센서에서 나온 혹은 Event Processing 미들웨어에 의해 1차 가공된 데이터를 적절한 데이터 처리
서버로 보내거나(Routing), 기존 정보과 결합(Enrichment. 예: 회원 정보)하는 등의 메시지 가공 과정이
필요함
메시지 라우팅, 가공(Enrichment, Transformation) 등의 종합적인 기능을 수행할 수 있는 ESB 솔루션과
라우팅 기능에 초점을 맞춘 Queue 솔루션으로 구분이 됨
오픈소스 기술: ESB(Jboss ESB, WSO2 ESB, Open ESB, Mule), Queue(ActiveMQ, RabbitMQ)
데이터 처리(Processing) 및 분석(Analytics)
수집된 데이터에서 비즈니스적으로 의미 있는 결과 정보를 뽑아내고, 그것을 시각화하여 비 IT 전문가
들이 쉽 게 활용할 수 있도록 하는 과정
대량 데이터를 저장하고 다룰 수 있는 BigData 솔루션과 데이터에서 패턴을 찾아내는 Data Mining, 가
공하는 ETL(Extract Transformation and Load), 시각화하는 BI(Business Intelligence) 등의 분야를 모두
포함하는 BI/DW 솔루션이 있음
오픈소스 기술: BigData(Hadoop, Hive, HDFS), DW/BI(Pentaho, QlikView, SpangoBI)
보안(Security)
센서와 임베디드 단말, 그리고 백엔드 서버간 송수신 되는 데이터를 암호화하는 Encryption 기술
각 주체(센서, 임베디드 단말, 백엔드 서버) 간에 서로 상대방을 식별하는 Authentication, 각 주체가 자신
을 식 별할 수 있는 증명 정보(예: ID)를 관리하는 Identity Management, 각 주체들에게 허용되는 권한을
관리하는 Access Control 등의 기술이 있음
오픈소스 기술: Encryption(오픈소스 다수), Authentication, Access Control(Open IDM/AM, OpenIAM)
24. Security
MQTT
Broker
MQTT
• MQTT spec doesn’t define security model
aside from username/password
authorization on connection
• Brokers *can* implement support for
SSL/TLS and policies for connection and
messaging