코어MQTT 라이브러리 - 무료RTOS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

코어MQTT 라이브러리

참고

이 페이지의 콘텐츠는 가 아닐 수 있습니다 up-to-date. 최신 업데이트는 무료 RTOS.org 라이브러리 페이지를 참조하세요.

소개

코어MQTT 라이브러리는 MQTT (Message Queue Telemetry Transport) 표준의 클라이언트 구현입니다. 이 MQTT 표준은 /IP를 기반으로 실행되며 기계 대 기계(M2MPubSub) 및 사물 인터넷(IoT) 사용 사례에 자주 사용되는 경량 게시TCP/구독(또는 ) 메시징 프로토콜을 제공합니다.IoT

코어MQTT 라이브러리는 MQTT 3.1.1 프로토콜 표준을 준수합니다. 이 라이브러리는 메모리 사용량을 줄이도록 최적화되었습니다. 이 라이브러리의 설계에는 QoS 0 MQTT PUBLISH 메시지만 사용하는 리소스 제한 플랫폼부터 TLS (전송 계층 보안) 연결을 MQTT PUBLISH 통한 QoS 2를 사용하는 리소스가 풍부한 플랫폼에 이르기까지 다양한 사용 사례가 포함됩니다. 이 라이브러리는 특정 사용 사례의 요구 사항에 정확히 맞도록 선택 및 결합할 수 있는 구성 가능한 함수 메뉴를 제공합니다.

라이브러리는 C로 작성되며 CISOC90MISRA:2012를 준수하도록 설계되었습니다. 이 MQTT 라이브러리는 다음을 제외하고 추가 라이브러리에 대한 종속성이 없습니다.

  • 표준 C 라이브러리

  • 고객이 구현한 네트워크 전송 인터페이스

  • (선택 사항) 사용자가 구현한 플랫폼 시간 함수

이 라이브러리는 간단한 송수신 전송 인터페이스 사양을 제공하여 기본 네트워크 드라이버와 분리됩니다. 애플리케이션 작성자는 기존 전송 인터페이스를 선택하거나 해당 애플리케이션에 맞게 자체 전송 인터페이스를 구현할 수 있습니다.

라이브러리는 MQTT브로커에 API 연결하고, 주제를 구독/구독 취소하고, 주제에 메시지를 게시하고, 수신 메시지를 수신할 수 있는 높은 수준을 제공합니다. 이렇게 API하면 위에 설명된 전송 인터페이스가 파라미터로 인식되고 이를 사용하여 MQTT브로커와 메시지를 주고 받습니다.

라이브러리는 하위 수준 직렬화기/디시리얼라이저 도 노출합니다API. 이는 다른 오버헤드 없이 필요한 MQTT 기능 하위 집합으로만 구성된 간단한 IoT 애플리케이션을 구축하는 데 사용할 API 수 있습니다. 직렬화기/디시리얼라이저는 소켓API과 같은 사용 가능한 전송 계층 과 함께 사용하여 브로커와 메시지를 주고 받을 API 수 있습니다.

IoT 애플리케이션에서 MQTT 연결을 사용할 때는 TLS 프로토콜을 사용하는 것과 같은 보안 전송 인터페이스를 사용하는 것이 좋습니다.

이 MQTT 라이브러리에는 스레딩 또는 동기화와 같은 플랫폼 종속성이 없습니다. 이 라이브러리에는 안전한 메모리 사용과 힙 할당 없음을 보여주는 증거가 있어 IoT 마이크로컨트롤러에 적합할 뿐만 아니라 다른 플랫폼으로도 완벽하게 이식할 수 있습니다. 자유롭게 사용할 수 있으며 MIT 오픈 소스 라이선스 에 따라 배포됩니다.

코어MQTT의 코드 크기(ARMCortex-M에 GCC 대해 를 사용하여 생성된 예)
파일 -O1 최적화 -Os 최적화
core_mqtt.c 4.0K 3.4K
core_mqtt_state.c 1.7K 1.3K
core_mqtt_serializer.c 2.8K 2.2K
총 추정치 8.5K 6.9K