Split the Clean Session flag into a Clean Start flag which indicates that the session should start without using an existing session, and a Session Expiry interval which says how long to retain the session after a disconnect. The session expiry interval can be modified at disconnect. Setting of Clean Start to 1 and Session Expiry Interval to 0 is equivalent in MQTT v3.1.1 of setting Clean Session to 1.
branch: develop_mqtt5.0
FYI:https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html