oneM2M은 나라별, 지역별로 진행되어 오던 M2M 기술 표준화 작업을 하나로 통합하여 글로벌 M2M 플랫폼을 만들어보자는 취지에서 비롯됐다. oneM2M은 2년 반 기간을 거쳐 표준화 작업을 마치고 2015년 2월에 릴리스 1을 공개했다. 지금은 릴리스 1에 대한 유지보수와 새로운 기능들을 넣기 위한 작업이 진행 중이며, 올해 8월쯤 릴리스 2를 공개할 예정이다. 사물인터넷 서비스 플랫폼 표준화 동향에 대해 전자부품연구원 최성찬 선임연구원이 ‘스마트공장 표준 세미나’에서 발표한 강연 내용을 정리했다.
▲ 최성찬 전자부품연구원 선임연구원
oneM2M 조직은
oneM2M은 전 세계 정보통신 관련 표준화 기구가 모여 공식 서명함으로써 2012년 7월에 설립됐다. oneM2M은 한국의 TTA를 비롯해 유럽의 ETSI, 북미의 ATIS와 TIA, 일본의 TTC와 ARIB, 중국의 CCSA, 인도의 TSDSI가 참여하고 있으며, M2M 서비스 계층의 공통 아키텍처 및 인터페이스 프로토콜 관련 국제 표준을 개발하여 서비스 플랫폼 간 상호 연동 및 운용이 가능한 M2M/IoT 서비스 개발을 가능하게 함으로써 M2M/IoT 시장 확대와 활성화를 도모하기 위한 목적을 가지고 표준 개발을 추진하고 있다.
그 결과 2015년 1월에 oneM2M 릴리스 1 버전이 개발 완료됐고 2016년 8월 목표로 릴리스 2 버전 개발이 진행 중이다. 표준화기구에는 통신, 솔루션, 장비 관련 200여 개의 다양한 회사들이 표준화를 위해 활동하고 있다.
oneM2M 조직은 운영위원회 아래에 기술위원회가 있으며, 기술위원회 산하에 M2M 기술 영역 별로 6개 작업반(WG)으로 구성되어 있다. WG1에서는 유스케이스 및 요구사항 개발, WG2는 공통 서비스 기능 아키텍처, WG3는 서비스 레이어 프로토콜 및 바인딩(HTTP, CoAP, MQTT), WG4는 보안 규격, WG5은 OMA 장치 관리 및 BBF TR-069 관리 기술 연동 규격과 시맨틱 규격, 그리고 2014년 말에 신설된 WG6에서는 테스트 규격 개발을 담당하고 있다.
oneM2M 레이어 아키텍처
oneM2M 레이어 아키텍처를 보면 IoT/M2M 환경에서 공통적으로 사용할 수 있는 서비스 기능을 제공하고 있음을 알 수 있다. 표준화 플랫폼을 위해 여러 애플리케이션 도메인 요구사항들을 반영한 IoT 공통 플랫폼을 추진하고 있다.
그 표준화를 위해 레이어 관점에서 본다면 맨 아래 커넥티브가 있는 네트워크 레이어, 그 위에 IoT 서비스를 담당하는 미들웨어 계층의 서비스 레이어, 그리고 서비스 관점에서부터 버티컬 서비스를 지원하기 위해 다양한 IoT 애플리케이션이 올라갈 수 있는 애플리케이션 레이어로 다른 표준화와 유사하게 접근하고 있다. 그중 oneM2M은 서비스 레이어 플랫폼에 집중해서 표준화를 진행하고 있다.
IoT 애플리케이션에는 다양한 버티컬 도메인들이 많은데, 그 유스 케이스를 취합했을 때 50여 개가 모였고, 거기에서 필요한 요구사항들을 뽑아내니 200여 개가 되었다. 그리고 그 뽑아낸 요구사항들을 카테고리화 해서 각각 분류해 보니 oneM2M에서 제공해야 할 공통 서비스는 12개로 정리할 수 있었다.
가장 기본적인 것으로, 데이터를 수집하고 가공하고 저장하고 공유할 수 있는 데이터 관리 기능, 데이터에 저장되어 있는 것을 탐색하고 통지할 수 있는 기능, 보안 기능, 통신 네트워크 연동 기능, 위치 정보 제공 및 관리 기능, 애플리케이션 및 장치 등록 기능, 다수 장치 일괄 관리 및 제어 기능, 서비스 관리 기능, 메시지 전달 관리 기능, 서비스 과금 기능 등이 도출되어 표준화가 진행되었다.
표준 아키텍처를 살펴보면, 공통 서비스 레이어가 위치하고 있는 부분이 중간에 있는 서비스 레이어 도메인이다. 서비스 레이어에는 CSE(Common Services Entity)가 있는데, 이 CSE가 oneM2M의 핵심 레이어 아키텍처이다. CSE는 IoT/M2M 환경에서 공통적으로 사용할 수 있는 12개의 서비스 기능을 제공한다.
그리고 애플리케이션 레이어에 있는 AE (Application Entity)는 엔드-투-엔드 M2M 솔루션을 위한 응용을 제공하며, 네트워크 레이어에 있는 NSE(Net-work Services Entity)에서는 데이터 전송 외에 CSE에 필요한 서비스를 제공한다.
이 아키텍처를 바탕으로 개발이 이루어졌을 때 위의 12개 서비스 기능들을 어떤 식으로 모델링할 것인가에 대한 많은 의견들이 있었다. 현재로는 ROA(Resource-oriented Architec-ture) 방식으로 개발되었다.
ROA는 플랫폼이 제공하는 다양한 서비스들을 하나의 리소스, 즉 URI를 기반으로 웹에 접근했을 때 해당 페이지가 보이는 것과 같이 oneM2M이 제공하는 다양한 기능들은 URI 형태로 제공되고, URI 기반으로 외부에서 간단한 CRUD (Create, Read, Update, Delete) 통해서 접근한다면 모든 플랫폼 서비스를 제공해줄 수 있고 인터페이스가 간단하다는 장점이 있다.
다음은 서비스 레벨의 메시지 프로토콜이다. oneM2M에서는 이 프로토콜들을 재사용해서 바인딩하고 있다. 현재 애플리케이션 프로토콜 레이어에서 HTTP, CaAP, MQTT의 3개 표준 규격을 제공하고 있다.
보안 쪽은 현재 CSE 간의 데이터를 주고받을 때 인증을 제공하는 부분에 대해서 Hop by Hop 보안 기능을 제공하고 있다. 그리고 oneM2M 아키텍처는 리소스 기반의 서비스 모델로 접근을 했는데, 접근 제어 정책으로는 누가 리소스에 접근할 수 있는가, 어떤 오퍼레이션을 허용하는가, 그리고 어떤 콘텍스트 기반의 접근을 허용하는가에 대한 정의를 보안 관점에서 하고 있다.
다음은 장치 관리 쪽이다. 장치 관리란 디바이스에 대한 펌웨어나 모니터링, 배터리 모니터링, 메모리 모니터링 등 다양한 모니터링 기능이 있을 수 있고, 진단 기능도 있을 수 있다. 그 분야의 oneM2M 표준화는 수년간 진행해온 기관들이 있기 때문에 굳이 one-M2M에서는 장치 관리를 위한 별도의 프로토콜을 표준화하지 않겠다는 입장이다.
그래서 oneM2M에서는 리소스 기반의 웹으로 오픈할 수 있는 인터페이스와 리소스만 표준화했다. 또한oneM2M 리소스와 있는 OMA DM, OMA Lightweight M2M, 그리고 BBF TR-069 프로토콜과 해당되는 메시지 흐름의 사용을 정의하고 있다.
앞으로 과제
oneM2M이 2년 반 기간을 거쳐 표준화 작업을 마치고 2015년 2월에 릴리스 1을 공개했다. 그 결과물로는 요구사항, 기능적인 아키텍처, 용어에 대한 정의, 서비스 레이어 코어 프로토콜, HTTP·CoAP·MQTT 프로토콜 바인딩, 보안 솔루션, 장치 관리 기반의 OMA·BBF 바인딩, 서비스 구성 요소 등 11개의 표준 규격을 진행했다.
지금은 릴리스 1에 대한 유지보수와 새로운 기능들을 넣기 위한 작업이 진행 중이다. 올해 8월 쯤에 공개될 릴리스 2를 위한 23개 테크니컬 스펙이 개발되고 있다. 이미 릴리스 2를 위한 신규 요구사항에 대한 정의가 끝난 상태다.
릴리스 2의 특징은 다음과 같다. oneM2M은 공통 기능을 제공하고자 하는 관점에서 출발했다. 그리고 다양한 버티컬 솔루션들이 요구하는 특화된 기능을 oneM2M 표준 플랫폼에서 제공해주었으면 좋겠다는 요구사항이 있었다. 그래서 홈 도메인 인에이블먼트(Home domatin enablement)라는 새로운 워크 아이템이 발굴되었다.
또한, Hop by Hop 보안으로 제공되는 oneM2M 보안에 대한 확장 기능도 넣기 위해 작업 중이다. 그 외 oneM2M 기반으로 OIC, OMA LightWeight M2M, 3GPP Rel.13 네트워크 기능 등 여러 표준화 개발 모델과 인터워킹하는 것을 진행하고 있다.
정리 : 임근난 기자 (fa@hellot.net)