OMA LWM2M
1. 개요
OMA LwM2M은 Open Mobile Alliance(OMA) SpecWorks에서 유지 관리 및 개발하는 사물 인터넷(IoT) 기기 관리 프로토콜이다. 단순 객체 기반 리소스 모델, 리소스 관리 기능, 다양한 데이터 형식 지원, 보안 기능 등을 제공하며, 1.0, 1.1, 1.2 버전으로 발전해왔다. 1.0 버전은 기본적인 M2M 기능을 제공하며, 1.1 버전은 부트스트랩 기능, 보안, 전송 방식 등을 개선했다. 1.2 버전은 MQTT, HTTP 전송 방식, LwM2M 게이트웨이 기능, CBOR 인코딩 등을 추가했다. 다양한 프로그래밍 언어로 구현된 클라이언트 및 서버 라이브러리가 존재한다.
| 이름 | 경량 M2M |
|---|---|
| 원래 이름 | Lightweight M2M |
| 약자 | LwM2M |
| 개발 | 오픈 모바일 얼라이언스 (OMA) |
| 용도 | M2M 또는 사물 인터넷 장치 관리 |
| 특징 | 장치 관리 프로토콜 |
|---|---|
| 주요 기능 | 장치 관리 서비스 활성화 정보 보고 |
| 장점 | 배터리 전력 소모 감소 장치와 플랫폼 간 상호 운용성 향상 향상된 보안 |
| 보안 | ENISA의 IoT를 위한 보안 공급망 V1.0에 포함 |
-
이동 통신 표준 -
고속 패킷 접속
고속 패킷 접속(HSPA)은 3세대 이동통신(3G)의 데이터 전송 속도를 높이는 기술 집합체로, 고속 하향/상향 패킷 접속(HSDPA/HSUPA)을 통해 속도를 개선하고 다중 안테나, 고차 변조, 다중 주파수 대역 활용 등의 기술로 진화했으나, LTE 및 5G 기술 발전으로 현재는 상용 서비스가 중단되었다. -
이동 통신 표준 -
노르딕 모바일 텔레폰
2. 버전
2018년에 IPSO 얼라이언스는 OMA(Open Mobile Alliance)와 합병하여 OMA SpecWorks를 설립했다. OMA SpecWorks는 LwM2M의 유지 관리 및 추가 개발을 담당하고 있다.
2.1. OMA LwM2M 1.0
OMA LwM2M 1.0은 2017년 2월에 출시되었으며, 초기 버전에는 다음과 같은 기능이 포함되었다.
* 단순한 객체 기반 리소스 모델
* 리소스 생성, 검색, 업데이트, 삭제, 구성 조작
* 리소스 관측 및 알림
* TLV, JSON, 일반 텍스트, 불명확한 데이터 형식 지원
* UDP 및 SMS 전송
* DTLS 기반 보안
* 절전 모드 장치 등을 위한 대기 모드
* 다수의 LwM2M 서버 지원
* 핵심 LwM2M 객체: LwM2M 보안, LwM2M 서버, 액세스 제어, 장치, 연결 모니터링, 펌웨어 업데이트, 위치, 연결 통계
2.2. 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 지원
* 신규 데이터 형식 추가
2.3. OMA LwM2M 1.2
Lightweight M2M 1.2는 2020년 10월에 출시되었다. 주요 기능은 다음과 같다.
* LwM2M을 위한 새로운 전송 방식 도입: MQTT와 HTTP를 통해 LwM2M 메시지를 전달할 수 있다.
* 부트스트랩 인터페이스 최적화: 부트스트랩 교환 과정 중에 전송되는 데이터 양과 메시지 수를 줄인다.
* 등록 인터페이스 최적화: 등록 교환 과정 중에 전송되는 데이터 양을 줄인다.
* 정보 보고 인터페이스 최적화: 관측 특성을 관측 작업에 포함할 수 있다.
* LwM2M 게이트웨이 기능 지원: 게이트웨이 뒤에 있는 LwM2M 장치뿐만 아니라 비LwM2M IoT 장치도 LwM2M 생태계에 연결하고 장치를 원격으로 관리할 수 있다.
* LwM2M CBOR: CBOR 기반의 고도로 최적화된 새로운 인코딩 형식이다.
* 펌웨어 업데이트 기능 향상
* 신규 알림 특성 정의: 엣지(상승 엣지 및 하강 엣지에 대한 알림 트리거), 확인 가능한 알림(신뢰할 수 있는 알림 전송 제어), 최대 기록 대기열(시계열 데이터 사용 제어)
* 최신 통신 보안 프로토콜 사용: TLS, DTLS 1.3(연결 ID 사용 포함) 및 관련 구성에 기반한다.
* 5G-NR 관련 장치 구성을 위한 신규 객체
3. 구현
| 명칭 | 프로그래밍 언어 | LwM2M 버전 | 클라이언트/서버 | 라이선스 | 링크 |
|---|---|---|---|---|---|
| AVSystem Anjay | C | 1.0 및 1.1 | 클라이언트 | Apache 2.0 | [https://www.avsystem.com/products/anjay/ AVSystem Anjay] |
| AVSystem Coiote IoT Device Management | Java | 1.0 및 1.1 | 서버 | 상업용 | [https://www.avsystem.com/products/coiote-iot-dm/ AVSystem Coiote IoT Device Management] |
| Awa LightweightM2M | C | 1.0 | 클라이언트 및 서버 | BSD 3-clause | [https://github.com/FlowM2M/AwaLWM2M Awa LightweightM2M] |
| Eclipse Leshan | Java | 1.0 | 클라이언트 및 서버 | EPL 및 EDL | [http://projects.eclipse.org/projects/iot.leshan Eclipse Leshan] |
| Eclipse Wakaama | C | 1.0 | 클라이언트 및 서버 | EPL 및 EDL | [http://projects.eclipse.org/projects/iot.wakaama Eclipse Wakaama] |