Keep Alive and Session Expiry Interval controls - (session leak)

    • Type: Improvement
    • Resolution: Applied
    • Priority: Major
    • None
    • Affects Version/s: None
    • Component/s: MQTT-SN
    • None
    • Hide

      We could look to bind the session expiry close to the last seen time of the client instead of the "Network Connection" thus the gateway has a reasonable place to start the close counting.

      We must mandate that the session expiry interval is > keep alive else you could have a situation where sessions are cleared up whilst the device still APPEARS to be ACTIVE.

      The KeepAlive 0 rule AND the session expiry interval 0xFFFFFFFFF meaning keep forever seems like an unwise choice for gateway devices.

      Show
      We could look to bind the session expiry close to the last seen time of the client instead of the "Network Connection" thus the gateway has a reasonable place to start the close counting. We must mandate that the session expiry interval is > keep alive else you could have a situation where sessions are cleared up whilst the device still APPEARS to be ACTIVE. The KeepAlive 0 rule AND the session expiry interval 0xFFFFFFFFF meaning keep forever seems like an unwise choice for gateway devices.

      The "Keep Alive" and "Session Expiry Interval" behaviour defined in MQTT 5 applied "as-is" in MQTT-SN would be dangerous. Since the "Network Connection" cannot be used as a control vector to start session expiry clocks, this is a session memory leak.

            Assignee:
            thesii
            Reporter:
            simon.johnson1
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: