핵심 개념
- 프로토콜 기반
- 전송 계층: CoAP(Constrained Application Protocol) 기반 (UDP/DTLS 사용)
- 보안: DTLS(PSK, RPK, X.509 인증서)
- 경량화: 제한된 리소스를 가진 IoT 디바이스에서도 동작 가능
- 아키텍처
- LwM2M Client: IoT 장치 (센서, 게이트웨이, 디바이스 등)
- LwM2M Server: 장치를 관리하는 서버 (등록, 모니터링, 제어)
- Bootstrap Server: 초기 보안·네트워크 설정을 제공하는 서버
- 데이터 모델
- Object / Instance / Resource 구조
- Object: 장치 기능 단위 (예: 3번 Object = Device Info)
- Instance: Object의 특정 인스턴스
- Resource: 실제 값/속성 (예: manufacturer, battery level)
서버의 역할
1. Bootstrap Server (초기 설정 서버)
- 장치 최초 기동 시 보안 파라미터 / LwM2M Server 주소 / 펌웨어 서버 주소 등을 내려줌.
2. LwM2M Server (관리 서버)
- 장치 등록(Register), 상태 모니터링(Update/Observe), 일반적인 리소스 관리(Read/Write/Execute)를 담당.
- OTA 관련해서는 “펌웨어 업데이트 Object (ID: 5)”의 트리거 역할만 수행.
- 예:
"다운로드 시작"
명령만 내림
- 실제 바이너리 전송은 펌웨어 서버가 담당
3. Firmware Management Server (펌웨어 서버, 확장 구조)
- 펌웨어 파일(바이너리) 을 실제로 호스팅/전송하는 서버
- 역할:
- 최신 펌웨어 이미지 저장소 관리 (버전, 해시값, 릴리즈 노트 포함)
- 장치가 /5/0/Package URI 같은 리소스를 통해 접근할 수 있는 다운로드 URL 제공
- 대규모 장치에 대해 CDN 같은 분산 전송 구조 적용 가능
- 장치는 LwM2M Server로부터 “펌웨어 다운로드 명령”을 받은 후, 실제 다운로드는 Firmware Server에서 수행
주요 동작 (Operations)
- 장치

활용 예시
- 스마트 미터기: 전력/가스/수도 사용량 수집 + 원격 펌웨어 업데이트
- 스마트 팩토리: 센서 모니터링, 장치 관리, 알람/이벤트 수집
- 스마트 시티: 가로등, 교통 신호기, 환경 센서의 원격 제어 및 관리
장점
- 경량성: CoAP + UDP 기반 → HTTP/MQTT보다 리소스 소모 적음
- 표준화: OMA SpecWorks에서 관리 → 상호운용성 보장
- 보안 지원: DTLS + 다양한 인증 방식
- 디바이스 관리 기능 내장: 펌웨어 업데이트, 설정 변경 등