발신자는 MQTT를 통해 QoS ( Quality of Service ) 레벨 을 설정할 수 있으며 , 이는 메시지 수신 여부 및 중복 허용 여부에 대한 특정 보증을 제공합니다. HiveMQ 의이 기사 는 다운 그레이드 문제를 강조합니다. QoS 수준이 낮은 클라이언트는 발신자가 요청한 것을 보장하는 메시지를받지 않습니다.
이미 언급했듯이, 게시 클라이언트와 구독 클라이언트 간의 QoS 흐름은 QoS가 다를 수있을뿐만 아니라 서로 다른 두 가지입니다. 즉, QoS 수준은 메시지를 게시하는 클라이언트 A와 게시 된 메시지를받는 클라이언트 B와 다를 수 있습니다. 발신자와 브로커간에 QoS는 발신자가 정의합니다. 브로커가 모든 가입자에게 메시지를 보낼 때 클라이언트 B의 가입 QoS가 사용됩니다.
MQTT는이 다운 그레이드가 허용되지 않으며 원래 발신자의 요청한 QoS를 사용하여 메시지 를 전달 해야 함 을 표시하는 방법을 제공합니까 ? 메시지 를 전송 하기 전에 발신자와 수신자 모두 원하는 QoS 설정을 갖도록하는 유일한 옵션 입니까?