O que acontece quando não há nenhum assinante para um tópico no MQTT?


12

A situação é a seguinte:

Há um cliente, um editor, ele não está inscrito em nenhum tópico. Esse cliente tem um único tópico próprio e publica dados regularmente. Mas não há outros clientes inscritos neste tópico.

Portanto, esse cliente pobre e solitário pode ser considerado anormal ( Capítulo 5.4.8 ).

As implementações do servidor podem monitorar o comportamento do cliente para detectar possíveis incidentes de segurança. Por exemplo:

  • [...]

  • Enviando mensagens não entregues (sem assinantes dos tópicos)

Não tem idéia de quantos clientes se inscreveram no seu tópico. Portanto, ele não sabe que pode ser considerado um cliente com comportamento anormal.

Então, o que acontece com esse cliente dependerá da implementação do servidor? Quais são as práticas que devem ser simplesmente desconectadas, mas não tentarão se reconectar então?

Respostas:


9

Como você diz, isso depende da implementação do servidor, especialmente da QoS da mensagem transmitida, se for "pelo menos uma vez".

O IMHO MQTT é um sistema de transmissão, não um protocolo de ponta a ponta entre duas máquinas, por isso não precisamos absolutamente de um assinante toda vez que criamos um assunto.

Posso postar qualquer coisa (temperatura, ...) e, dois meses depois, implementar algo que o leia ou até removê-lo e pensar em outra coisa enquanto meu sensor ainda publica dados.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.