Skip to content

MQTT SubscriptionID clash mitigation #23

@paasovaara

Description

@paasovaara

Subscription ID's to MQTT need to be unique. Otherwise connection is refused (or even worse, app might go into limbo, incident in Feb 7th?)

One option could be to randomize the clientId on startup but that could also lead to a situation where the broker is responsible of maintaining these sessions (depends on broker implementation). If the app starts restarting for some reason then we could in theory stress the broker with a brand new session every time and possibly DoS the broker(?)(TODO check how our broker handles this!).
We can of course limit the number of randomization f.ex by using the date as suffix, but that won't solve the problem.

See part persistent sessions:
https://www.hivemq.com/blog/mqtt-essentials-part-7-persistent-session-queuing-messages/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions