OMA LWM2M
OMA Lightweight M2M(LwM2M)은 M2M 또는 IoT 장치 관리[1] 및 서비스 구현을 위한 오픈 모바일 연합(OMA)의 프로토콜이다. LwM2M 표준은 IoT 장치에 있는 LwM2M[2] 클라이언트와 LwM2M 서버 간의 응용 프로그램 계층 통신 프로토콜을 정의한다. 이 표준을 통해 IoT 장치 관리를 위한 접근이 가능하며 다양한 제조업체의 장치 및 시스템이 IoT 생태계에서 공존할 수 있다. LwM2M은 원래 CoAP에 기반하고 있었으나 최신 LwM2M 버전에서는 추가적인 전송 프로토콜도 지원하고 있다.
LwM2M의 장치 관리 기능은 원격 보안 자격 증명 제공, 펌웨어 업데이트, 셀룰러 및 WiFi용 연결 관리, 원격 장치 진단 및 문제 해결과 같은 기능을 제공한다.
LwM2M의 서비스 구현 기능은 호스트 장치의 센서 및 계기 검침, 원격 작동, 구성 등의 기능을 제공한다.
LwM2M 프로토콜과 결합 시 LwM2M 데이터 모델("LwM2M 객체")은 다양한 LwM2M 사용 사례를 지원하게 된다. 이 데이터 모델은 확장이 가능하며 다양한 산업의 응용 프로그램을 지원할 수 있다.
버전
2018년에 IPSO Alliance는 OMA(Open Mobile Alliance)와 합병하여 OMA SpecWorks를 설립했다. LwM2M의 유지 관리 및 추가 개발에 대한 책임은 OMASpecWorks가 가지고 있으며 지금까지 제작된 LwM2M 버전은 다음과 같다.
OMA LwM2M 1.0
Lightweight M2M 1.0은 2017년 2월에 출시되었으며 초기 출시 당시 다음과 같은 기능이 도입되었다.
- 단순한 객체 기반 리소스 모델
- 리소스 생성/검색/업데이트/삭제/구성 조작
- 리소스 관측/알림
- TLV/JSON/일반 텍스트/불명확한 데이터 형식
- UDP 및 SMS 전송
- DTLS 기반 보안
- 절전 모드 장치 등을 위한 대기 모드
- 다수의 LwM2M 서버 지원
- 핵심 LwM2M 객체: LwM2M 보안, LwM2M 서버, 액세스 제어, 장치, 연결 모니터링, 펌웨어 업데이트, 위치, 연결 통계
OMA LwM2M 1.1
Lightweight M2M 1.1은 2018년 6월에 출시되었으며 다음과 같은 기능이 도입되었다.
- 증분 업그레이드를 위한 LwM2M 부트스트랩 기능 향상
- 공개키 인증 체계(PKI) 배포를 위한 지원 성능 개선
- LwM2M 클라이언트에서 LwM2M 서버로의 향상된 등록 순서 기법 도입
- TCP/TLS를 통한 LwM2M 지원
- OSCORE 기반 LwM2M을 위한 응용 프로그램 계층 보안 지원
- 절전형 WAN을 통한 LwM2M 지원 성능 개선(3GPP LTE-M 및 NB-IoT/LoRaWAN 포함)
- 리소스 인스턴스 수준 액세스를 위한 LwM2M 작업 확장
- 여러 객체의 리소스 검색 및 업데이트를 위한 성능 향상
- 고효율 전송 방식의 압축 페이로드를 위해 CBOR 직렬화가 적용된 SenML을 사용하여 JSON 지원
- 신규 데이터 형식 추가
OMA LwM2M 1.2
Lightweight M2M 1.2는 2020년 10월에 출시될 예정이다. 해당 버전에는 다음과 같은 기능이 도입된다.
- LwM2M을 위한 신규 전송 방식 도입(이를 통해 LwM2M 메시지가 MQTT와 HTTP를 통해 전달될 수 있음)[3]
- 부트스트랩 인터페이스에 대한 최적화(부트스트랩 교환 과정 중에 전송되는 데이터 양과 메세지 수 감소)
- 등록 인터페이스에 대한 최적화(등록 교환 과정 중에 전송되는 데이터 양 감소)
- 정보 보고 인터페이스에 대한 최적화(관측 특성을 관측 작업에 포함할 수 있음)
- LwM2M 게이트웨이 기능을 위한 지원(이를 통해 게이트웨이 뒤에 있는 LwM2M 장치뿐만 아니라 비LwM2M IoT 장치도 LwM2M 생태계에 연결하고 장치를 원격으로 관리 가능)
- LwM2M CBOR이라 불리는 CBOR 기반의 고도로 최적화된 새로운 인코딩 형식
- 펌웨어 업데이트를 위한 향상된 기능
- 신규 알림 특성의 정의(엣지, 확인 가능한 알림, 최대 기록 대기열). 엣지를 통해 상승 엣지 및 하강 엣지에 대한 알림 트리거. 확인 가능한 알림을 통해 신뢰할 수 있는 알림 전송 제어 가능. 기록 대기열을 최대로 확장하여 시계열 데이터 사용 제어 가능
- TLS, DTLS 1.3(연결 ID 사용 포함) 및 관련 구성에 기반한 최신 통신 보안 프로토콜을 사용하도록 업데이트
- 5G-NR 관련 장치 구성을 위한 신규 객체
구현
이름 | 프로그래밍 언어 | LwM2M 버전 | 클라이언트/서버 | 라이선스 | 링크 |
AVSystem Anjay | C | 1.0 및 1.1 | 클라이언트 | 아파치 2.0 | https://www.avsystem.com/products/anjay/ |
AVSystem Coiote IoT Device Management | 자바 | 1.0 및 1.1 | 서버 | 상업용 | https://www.avsystem.com/products/coiote-iot-dm/ |
Awa LightweightM2M | C | 1.0 | 클라이언트 및 서버 | BSD 3-Clause | https://github.com/FlowM2M/AwaLWM2M |
Eclipse Leshan | 자바 | 1.0 | 클라이언트 및 서버 | EPL 및 EDL | http://projects.eclipse.org/projects/iot.leshan |
Eclipse Wakaama | C | 1.0 | 클라이언트 및 서버 | EPL 및 EDL | http://projects.eclipse.org/projects/iot.wakaama |
같이 보기
- CoAP
- 오픈 모바일 연합