ettrends banner

오승훈 (Oh S.H.) 관제디바이스연구실 선임연구원
고석갑 (Ko S.K.) 관제디바이스연구실 선임연구원
손승철 (Son S.C.) 관제디바이스연구실 선임연구원
이병탁 (Lee B.T.) 관제디바이스연구실 실장
김영선 (Kim Y.S.) 호남권연구센터 센터장

I. 서론

최근 차세대 성장동력으로 사물인터넷(IoT: Internet of Things)을 내세울 정도로 IoT에 대한 관심이 고조되고 있다. 이를 증명하듯이 Machina Research에서는 관련 산업을 2천억 달러 시장(2013년 기준) 규모에서 2022년에는 1조 2천억 달러의 시장규모로 성장할 것으로 예측하고 있다[1]. 이러한 시장 흐름에 발 맞추어, 국내외 표준화 단체들도 모든 사물이 연결되는 '초연결사회'의 도래를 예측하고 동시에 그 중요성을 인식하고 사물인터넷에 대한 기술을 준비해 오고 있다[2]-[4].

ETSI에서는 M2M(Machine-to-Machine)이라는 용어로, 3G PP에서는 MTC(Machine Type Communication) 기술이, 그리고 ITU-T에서는 네트워크 참조 모델 및 서비스 시나리오에 대한 표준작업을 각각 진행하였다[3]. 인터넷 프로토콜 측면에서는 IETF에서 진행되었으며, PAN 영역에서는 IEEE 802.16 그룹에서 진행되었고, 웹 관련해서는 W3C에서 진행되어 왔다[3]. 그 중 이동통신분야의 표준이 가장 활발하게 진행되었고 어느 정도 완성되어 시장을 선도해가고 있다.

이동통신 기반 IoT 표준은 3GPP와 ETSI가 대표적으로 표준작업을 진행하고 있다. 3GPP와 ETSI에서는 사물통신을 지원하기 위한 시스템 측면과 네트워크 측면에서 향상시켜야 할 사항들에 대해서 요구사항을 발굴하고 구조를 정의하는 등의 표준 성과를 내었다. 특히, 3GPP에서는 사람들 간 통신과 다른 패턴과 특성을 갖는 사물통신을 효율적으로 지원할 수 있는 무선 기술에 대해서 표준화를 진행하였다. 그러나, 지역별로 기술분야별로 각기 다른 표준화 기관이 따로 표준을 만들다 보니, 표준들 간 통일성이 떨어지고, 오히려 사물통신 산업 성장에 걸림돌로 작용한다는 점을 인식하고 ATIS, ETSI, TTA 등 지역 7개 표준기관들이 2012년 1월에 oneM2M이라는 국제 표준협의체를 구성하였다. 이 협의체를 구성함으로써 각 표준기구에서는 자신들의 표준을 이관하여 oneM2M에서 공동의 표준을 작성하는 것으로 합의하였다. 이 이관처리 조항에 따라서 이후에는 개별적으로 표준화하는 것을 중단하도록 하였다[5]. 그러므로 3GPP에서 진행한 무선 2계층 표준영역을 제외한 서비스, 네트워크 구조, 인터페이스, 프로토콜, 보안 등 모든 부분에 있어서 사실상 oneM2M이 주도하고 있다.

이동통신 기반의 사물인터넷은 연결된 수많은 사물들이 얼마나 효율적으로 관리될 수 있는지가 매우 중요한 이슈이다. 사물인터넷의 두 가지 가장 큰 특징은 모든 사물이 연결되는 초연결성이라는 점과 연산 능력, 메모리, 배터리 등에 많은 한계를 갖는 제약 많은(Con-strained) 장치가 대상이라는 점이다. 즉 통신의 주체가 제약 많은 장치이기 때문에 장치관리 표준 기술이 가볍고 단순해야 한다. 또한 사물의 수가 기하급수적으로 증가하고 있어서 기존의 장치관리 표준들을 적용하는 데에는 기술적으로 한계를 가지고 있다.

본고에서는 이러한 기술적 이슈들을 해결하면서 IoT 장치들을 효율적으로 관리하기 위해 등장한 CoAP 기반의 LWM2M(Lightweight M2M) 표준 기술을 소개하고자 한다. 본고의 Ⅱ장에서는 이동통신 기반의 IoT 표준 기구에 대해서 간략하게 소개하고, Ⅲ장에서는 one M2M에서의 장치관리 표준을 소개한다. Ⅳ장에서 one M2M 장치관리 표준에 새롭게 포함된 LWM2M 표준을 소개하고 앞서 소개한 기존의 것과 서로 비교하고, Ⅴ장에서 결론을 맺도록 한다.

Ⅱ. 이동통신 기반 IoT 표준화기구 현황

1. 3GPP

2005년부터 M2M을 위한 타당성 연구가 먼저 시작되었으며, 2008년에는 MTC이라는 이름으로 3GPP 네트워크와 시스템을 향상시키는 표준 제정이 시작되었다. 표준화 범위는 M2M/IoT 장치에서부터 무선 구간(RAN: Radio Access Network), 코어네트워크(CN: Core Network)로 구성되는 이동 네트워크 구간까지이며 4개의 TSG(Technical Specification Group(SA: Service & System Aspects, CT: CN and Terminal, RAN, GERAN: GSM EDGE Radio Access Network))에서 각각 표준을 제정하였다 ((그림1) 참조)[6][7].

(그림 1)
사물인터넷 표준기관별 표준범위

2. ETSI

2009년 1월에 TC M2M이 결성되고, 사물통신 서비스 Use case들을 기반으로 표준화가 시작되었다. 사용자부터 서비스 제공자까지 단대단(end-to-end) 전 영역에 걸쳐서 표준이 진행되었으며, 특히 이동통신 관련 M2M 표준은 3GPP와 연계하여 진행되었다. 2011년에 Rel. 1의 핵심이 마무리되었고 2013년에 Rel. 2이 마무리 되었다. Rel. 2에서는 주로 과금 이벤트를 추적하고 기록할 수 있는 구조의 Framework을 정의하였고, 서비스 플랫폼 간 연동을 위한 플랫폼들 사이의 인터페이스를 정의하였다. Rel. 1 규격에서 제약 많은 장치 지원이 게이트웨이를 통해서만 가능하였지만 Rel. 2 규격에서 비로소 플랫폼에 직접 연결된 형태에서 지원하도록 하였다[8].

3. oneM2M

oneM2M에는 2012년 7월에 설립되어 국내 표준화 기구인 TTA와 미국의 TIA, ATIS, 유럽의 ETSI, 중국의 CCSA, 일본의 TTC, ARIB까지 7개의 지역 표준단체들과 전 세계의 주요 회사들이 각 표준단체를 통해서 함께 참여하고 있다. oneM2M은 스마트홈, 스마트카, 헬스케어 등 다양한 IoT 응용 서비스를 지원할 수 있는 공통 플랫폼, 즉 (그림2) 에서 제시되는 CSE(Common Ser-vices Entities)를 정의하는 것이 주된 역할이다. CSE의 하부 네트워크 기술을 3GPP, 802.11, DOCSIS 등 각각의 기술 표준에서 담당하고, 그들과의 인터페이스에 대하여 정의하고 있다. 프로토콜 측면에서 MQTT(Message Queue Telemetry Transport), CoAP(Constrained Ap-plication Protocol), XMPP(eXtensible Messaging and Presence Protocol), HTTP, Websockets 등 다양한 전송기술들을 고려하였는데 최근 배포된 Rel. 1 규격에는 CoAP, HTTP만이 포함되었다.

(그림 2)
oneM2M의 IoT 표준 시스템 구조

2014년 8월에는 Rel. 1이 승인되었으며, 오는 12월에는 oneM2M 홍보를 위해 ETSI가 주관하는 oneM2M 워크숍과 함께 Launch Event를 개최하여 oneM2M 구현물 간 연동 시연을 전시함으로써 기술 홍보를 추진하고 있다. 2015년 초에는 1.1 버전이 배포될 예정이며, 최근 부산에서 개최된 TP#15 미팅에 의하면 Rel. 2 표준은 2016년 초에 완성될 것으로 기대되고 있다.

Ⅲ. oneM2M 장치관리 표준

oneM2M의 장치관리 표준은 ETSI TC M2M 규약에서 정한 BBF TR-069와 OMA(Open Mobile Alli-ance)-DM(Device Management) 표준을 그대로 승계하였고, 더 나아가 제약 많은 IoT 장치를 위한 OMA LWM2M까지 새롭게 포함하고 있다.

1. oneM2M 장치관리 표준 연동 구조

oneM2M에서는 장치관리 표준들을 독립적으로 지원하기 위해서 장치관리 기능(서비스)을 CSE 내 정의한다. 상위 응용으로는 통일된 관리 인터페이스(Mca)를 제공하고 각 장치관리 표준별로 Mcn 인터페이스를 통해서 연동된다((그림3) 참조)[9]. oneM2M Rel. 1에서는 펌웨어/소프트웨어 관리, 배터리/메모리/장치 정보 모티터링, 장치 제어, 리부팅, 이벤트로그 등의 DM 서비스를 정의하고 있다. 본 장에서는 TR-069와 OMA-DB에 대해서 간략하게 살펴보고, LWM2M는 다음 중에서 좀 더 자세히 소개한다.

2. BBF TR-069

BBF(Broadband Forum)에서 케이블망과 같은 유선의 광대역망에서의 셋톱박스, 게이트웨이 등을 관리하기 위해 만든 표준으로 무선 네트워크에 적용하는데 한계를 갖고 있다. 자동 설정, 소프트웨어 및 펌웨어 이미지관리, 상태 및 성능 모니터링, 진단 등의 기능을 제공한다. 전송 계층으로는 TCP 기반의 HTTP를 사용하고, SOAP(Simple Object Access Protocol)를 통한 RPC 방식의 장치관리 기능을 제공하고 보안은 SSL/TLS(Trans-port Layer Security)를 사용한다.

(그림 3)
oneM2M DM 표준 연동 구조

3. OMA-DM

초기 셋업, 펌웨어 및 소프트웨어 관리, 원격 제어, 진단 및 모니터링 등을 위한 국제 표준 장치관리 기술로써, 스마트폰 등 단말을 대상으로 관리 서비스를 제공하는 것으로 구체적으로 단말에 존재하는 관리 객체(MO: Management Object)를 서버가 명령으로 보내서 장치를 관리하는 방식으로 수행된다. 대표적인 MO로는 FUMO(Firmware Update MO)와 SCOMO(Software Component MO)가 있다. 전송 기술로는 HTTP를 주로 사용하고 XML 기반의 메시지 형식을 따르고 있다. 원격에서 명령 실행을 트리거링 할 수 있는 기능이 제공되며, 2012년에는 DM 2.0을 개발하여 IoT 장치를 더 효율적으로 지원할 수 있게 되었다.[10].

Ⅳ. LWM2M 프로토콜 개요

1. 구조

LWM2M의 구조는 (그림 4)와 같이 클라이언트라는 개별 장치들과 이를 관리하는 서버로 구성된다.

LWM2M은 효율적인 페이로드를 지향하고, CoAP 프로토콜과 DTLS(Datagram TLS) 보안을 사용하며, UDP 또는 SMS를 통해 전달된다. 서버와 클라이언트 사이에는 (그림 5)와 같이 장치관리를 위한 4개의 인터페이스가 정의되어 있다. 클라이언트들은 관리하고자 하는 객체(Object)를 가지고 있으며, 각 객체는 실제적인 데이터가 있는 리소스(Resource)를 가진다. 하나의 객체는 여러 개의 객체 인스턴스로 구분하여 관리될 수 있다. 리소스는 그 하부 리소스를 가질 수 있으며 리소스 인스턴스로 구분되어 관리된다[11].

(그림 4)
LWM2M 구조
(그림 5)
LWM2M 인터페이스

2. 인터페이스

부트스트랩(Bootstrap) 인터페이스는 클라이언트가 서버 정보와 보안키 등을 얻는 과정에서 사용된다. 클라이언트는 시작 시 스마트카드 또는 내장 메모리, 부트스트랩서버를 통하여 LWM2M 서버 정보 및 보안키 정보를 얻는다.

클라이언트 등록(Registration) 인터페이스는 서버에 클라이언트 및 그 리소스를 등록할 때 사용한다. 이 인터페이스는 RFC6690 CoRE 링크포맷(Link format) 기반의 리소스 디렉토리를 이용한다. 클라이언트는 End-point명 및 유효시간(Lifetime), 큐 모드(Queue mode)와 클라이언트가 지원하는 객체(Object) 정보 및 인스턴스 등을 서버에 등록한다. 등록 요청 메시지를 받은 서버는 클라이언트의 IP 주소 및 포트를 저장한다. LWM2M은 복수 개의 서버를 지원하므로, 클라이언트는 각 서버에 등록을 수행하고 액세스 객체를 관리한다. 클라이언트가 가지고 있는 객체는 서버 및 액세스 제어, 장치, 연결모니터링, 펌웨어 등이 정의되어 있다.

디바이스 관리 및 서비스(Device Management & Service Enablement) 인터페이스는 서버가 클라이언트의 객체 인스턴스 및 자원을 모니터링 하거나 제어할 때 사용된다. 여기서 정의된 동작(Operation)은 Create, Read, Write, Delete, Write Attributes, Execute Dis-cover가 있으며, 리소스별로 가능한 동작은 객체 템플릿에 정의되어 있다. Read는 객체, 객체 인스턴스, 리소스, 리소스 인스턴스값을 얻을 때 사용된다. Discover는 객체가 어떤 리소스로 구성되어 있는지 알아낼 때 사용되며, 링크포맷 형태로 응답한다. Write는 리소스의 값을 변경할 때 사용된다. Write Attribute는 정보 관찰(Observe) 동작 중에 사용되는 속성을 변경할 때 사용된다. 예를 들면, 리소스의 값이 얼마 이상일 경우에 통지(Notify) 메시지를 보내도록 하려면 `GreaterThan` 속성을 변경하면 된다. 또한, 정보 관찰을 취소할 때도 사용된다. Execute는 리소스가 어떤 동작을 수행하도록 할 때 사용된다. Create는 객체 인스턴스 생성할 때 사용되며, 서버가 객체를 관리할 때 사용된다. Delete는 객체 인스턴스를 없앨 때 사용된다.

정보 보고 인터페이스(Information Reporting)는 클라이언트의 객체 인스턴스 또는 리소스로부터 새 데이터를 받기를 원할 때 사용된다. 이는 비동기 통지 형태로 동작한다. 서버는 클라이언트의 어떤 리소스 변화를 관찰하고자 할 때 Observe 동작을 수행하며, Cancel Observation 동작을 통해 종료된다. Notify 동작은 클라이언트가 Observe 중인 서버에게 새 데이터를 보내는 데 사용된다.

3. CoAP 트랜스포트 바인딩

LWM2M은 CoAP 또는 SMS를 통해 실제 메시지를 전달한다. <표 1>은 디바이스 관리 및 서비스의 동작에 따른 CoAP 매핑을 나타낸다. LWM2M의 Object ID, Object Instance ID, Resource ID는 CoAP Path에 차례대로 들어간다. Write Attribute 동작의 파라미터들은 CoAP의 URI Query 파라미터로 들어간다.

<표 1>
CoAP 메소드 매핑

4. OMA LWM2M 객체

OMA LWM2M 1.0에서는 장치관리를 위한 8개의 객체들을 정의하고 객체 ID 0번부터 7번까지 할당하였다. LWM2M Security 객체는 서버 URI, 부트스트랩서버 여부, 보안모드, 클라이언트 공용키, 서버 공용키, 비밀키, SMS 보안 모드, SMS 바인딩 파라미터 및 비밀키, 서버 SMS 번호, Short 서버 ID, 부트스트랩 지속시간의 리소스를 포함한다. LWM2M Server 객체는 Short 서버 ID, 유효시간, 기본 Observe 주기, 비활성화 동작 등을 포함한다. Access Control 객체는 서버가 가지는 읽기, 쓰기, 실행, 삭제, 생성 권한에 관한 리소스를 포함한다. Device 객체는 제조사, 모델번호, 시리얼 번호, 펌웨어 버전, 재부팅, 공장초기화, 전원 종류, 전원 전압, 전류, 배터리 수준, 메모리 수준, 에러코드, 현재시간 등을 포함한다. Connectivity Monitoring 객체는 네트워크 종류, 라디오 신호 세기, 링크 품질, IP 주소, 라우터 IP, 링크 사용량, APN, Cell ID, SMNC, SMCC 등을 포함한다. Firmware 객체는 펌웨어 업데이트에 관한 리소스를 포함한다. Location 객체는 위도, 경도, 고도, 속도 등의 리소스를 포함한다. Connectivity Sta-tistics 객체는 SMS 카운터, Tx/Rx Data, 최대/평균 메시지 크기 등을 포함한다.

5. OMA LWM2M TestFest Event

TestFest Event는 OMA의 IOP(Interoperability Pro-cess)로써, 주된 목적은 OMA의 표준의 완성도를 높이고, 제조사(벤더)들의 구현물(제품)의 호환성을 높이는데 있다. 벤더들과 연계하여 OMA에서 개최하며 오직 OMA 규격을 제품화한 회사들만 참가를 허락하는 등 엄격한 참여 조건을 내세우고 있다. 모든 OMA TestFest은 긴밀한 행사로 열린다. 참석하는 모든 멤버는 NDA 서명을 해야 하며 테스트 정보 및 결과를 TestFest 이벤트 외부에 배포하거나 토론하는 것을 금지하고 있다. 일반적으로 테스트에 앞서 시험하고자 하는 제품에 대한 EICS(Enabler Implementation Conformance Statement) 문서를 미리 제출해야 한다. 더불어 Conformance Test Tool를 제공하는 경우는 해당 Report를 적어도 2주 전에는 제출해야 한다.

시험은 미리 제공된 시험 스케줄에 의해 진행된다. 시험 중에는 모든 세션에 대해서 P(pass)/F(Fail)/I(In-conclusive)/NA(Not Applicable)를 표시하는 TSR(Test Session Report)을 작성해야 한다. 이 보고서는 참석한 회사들에게 긴밀하게 유지되며, 해당 세션에 참석한 다른 회사의 허락 없이는 밖으로 회람되는 것을 금지하고 있다. 시험이 완료되면 PTR(Product Test Report)와 ETR(Enabler Test Report) 두 가지 보고서가 만들어진다. PTR은 회사 입장에서 함께 시험한 것들에 결과를 포함하고 있어 이 결과를 회람하고 배포하는 것은 그 회사의 결정에 달려 있고, ETR은 규약의 완성도 및 구현물의 품질에 관한 것을 담고 있어 모든 OMA 멤버들에게 공개된다[12].

6. LWM2M과 비교

OMA-DM은 태생적으로 이동통신망에서 연산 및 메모리 능력이 그리 나쁘지 않은 장치를 대상으로 고안되어 HTTP와 XML 기반으로 규정되어 있어 센서 단말에 사용할 만큼 가볍지 않다. TR-069 표준 역시 케이블망과 같은 광대역망에서의 모뎀, 게이트웨이 관리 목적으로 고안되어, 센서 등과 같은 장치에 활용하기에는 한계가 있다. 두 표준의 전달 기술로는 대부분 TCP를 기반으로 하는 HTTP, XMPP, MQTT를 활용하고 있다. 이런 표준들은 공통적으로 정보를 전달하는 것 그 자체이기 때문에 장치관리에 대한 보안, 보안 lifecycle 관리, 데이터 형식, 데이터 정의, 호환 가능한 시스템 인터페이스 등을 제공하고 있지 않다. 이에 반해 <표 2>에서 확인할 수 있듯이 LWM2M은 제약 많은 장치를 위한 메시지 규약인 CoAP 프로토콜을 기반으로 동작하고 있어, 태생적으로 가볍고 보안에 대한 이슈 또한 해결하고 있다. 이외에도 LWM2M은 장치관리뿐만 아니라 응용 데이터까지 전달할 수 있다는 장점을 가지고 있다.

<표 2>
장치관리 표준 비교

IV. 결론

이동통신 기반 IoT 관련 표준들은 oneM2M이라는 국제적 협의체가 구성되면서부터는, oneM2M 단체가 IoT 표준을 사실상 주도하고 있다. 2020년에는 21억개의 사물들이 동시에 통신 연결될 것으로 예상되고 있고, 사물들의 연산 능력 등 많은 부분에서 제약이 많아 기존의 장치관리 표준으로는 대응하는 데 한계가 있어 최근 oneM2M에서는 CoAP 기반의 LWM2M 표준을 채택하였다. 기술적으로도 LWM2M 표준은 OMA-DM과 TR-069 표준에 비해 가볍고 확장성이 좋으며 단말장치뿐만 아니라 응용데이터 처리까지 가능한 장점을 갖고 있다. 뿐만 아니라 표준의 완성도를 더욱 높이기 위해서 OMA에서 TestFest 이벤트를 2015년에 개최하여 LWM2M 표준의 활성화를 유도할 것으로 보인다. 이렇게 IoT 장치를 효율적인 기술로 관리할 수 있는 표준이 마련됨에 따라 수많은 사물들이 연결되는 초연결사회가 도래되는 시기다 더욱 앞당겨질 것으로 예상된다.

용어해설

LWM2M(Lightweight Machine to Machine) OMA 표준화 단체에서 제정함. 전송방법으로 CoAP를 사용하였고, DTLS 기반 보안 기술을 채택하였음. 장치에 정의되어 있는 Object와 리소스를 관리하는 체계로 장치를 관리하는 기술임. oneM2M 표준기관에서 다수의 장치를 효율적으로 관리할 수 있는 기술로 채택되었음.

약어 정리

AE

Application Entities

APN

Access Point Code

BBF

Broadband Forum

CN

Core Network

CoAP

Constrained Application Protocol

CSE

Common Services Entities

CT

CN and Terminal

DOCSIC

Data Over Cable Service Interface Specification

DM

Device Management

DTLS

Datagram TLS

EICS

Enabler Implementation Conformance Statement

ETR

Enabler Test Report

FUMO

Firmware Update MO

GERAN

GSM EDGE Radio Access Network

IOP

Interoperability Process

IoT

Internet of Things

LWM2M

Lightweight M2M

M2M

Machine to Machine

MO

Management Object

MQTT

Message Queue Telemetry Transport

MTC

Machine Type Communication

OMA

Open Mobile Alliance

PTR

Product Test Report

RAN

Radio Access Network

SA

Service & System Aspects

SCOMO

Software Component MO

SOAP

Simple Object Access Protocol

SMCC

Serving Mobile Country Code

SMNC

Serving Mobile Network Code

TLS

Transport Layer Security

TSG

Technical Specification Group

TSR

Test Session Report

XMPP

eXtensible Messaging and Presence Protocol

References

[1] 전성태, “사물인터넷 시장 및 산업 전망,” 기술과 경영, 2014. 4.
[2] 김형준, “M2M/IoT 기술 표준화 현황 및 전망,”U-City World Forum 2012.
[3] 김경수, “IoT/M2M 표준,” KRNET2014 발표자료
[4] 유상근 외, “이동통신 기반의 사물지능 통신 기술 및 표준화 동향,” TTA Journal, vol. 134, 2011.
[5] 미래창조부과학부 보도자료, “사물인터넷(M2M/IoT) 국제표준화 대한민국이 주도한다! - 원엠투엠(oneM2M) 국제표준 기술총회 개최-,” 2013. 6. 17.
[6] 오동성, 김일규, “3GPP MTC 표준화 동향-RAN1 중심으로,” 전자통신동향분석, vol. 27, no. 3, 2012. 6.
[7] 신재승, 박애순, “3GPP의 Machine Type Communications 표준화 동향,” 전자통신동향분석, vol. 27, no. 2, 2012. 4.
[8] E. Scarrone, “ETSI M2M Release 2,” ETSI M2M workshop 2013, Nov. 2013.
[9] 김성윤, “oneM2M Rel-1 장치관리 표준규격,”oneM2M 표준기술세미나, 2014. 9. 4.
[10] OMA Device Management Working Group, http://ope nmobilealliance.org/about-oma/work-program/devic e-management/
[11] OMA, “Lightweight Machine to Machine Technical Specification Candidate version 1.0,”
[12] OMA TestFest Overview, http://technical.openmobile alliance.org/Technical/testfest-overview

(그림 1)

f001

사물인터넷 표준기관별 표준범위

(그림 2)

f002

oneM2M의 IoT 표준 시스템 구조

(그림 3)

f003

oneM2M DM 표준 연동 구조

(그림 4)

f004

LWM2M 구조

(그림 5)

f005

LWM2M 인터페이스

<표 1>

t001

CoAP 메소드 매핑

<표 2>

t002

장치관리 표준 비교