Clarifying The Meaning and Behaviour of Topics and Aliases

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major
    • None
    • Affects Version/s: None
    • Component/s: MQTT-SN
    • None
    • Hide
      • Short topic names MUST be treated exactly the same as a Long Topic Name with a length of 2
      • A Session Topic alias and a Predefined Topic Alias with the same numerical value MUST map to different Topics
      • A Session Topic alias MUST NOT be created mapping the same Topic as a Predefined Topic Alias. The Predefined Topic Alias MUST be returned instead.
      • The pool of Topic Aliases for Session and Predefined are independent of each other.
      • The only reason for the existence of Topic Aliases and Short Names is to reduce packet size. Therefore, a Topic Alias is transformed to its mapped Topic Name when received by a Client or Server before any further processing.
      • A subscription contains a Topic Filter, which is a Topic Name that is allowed to include wild cards. It does not contain any Topic Aliases, and a Topic Short Name is just a Topic Name with a length of 2.
      • A subscribe to a Topic Alias is converted to its mapped Topic Name before being added to the subscription table.
      • As a result of the above 2 points, a subscription to # will receive all messages published to the gateway, whether they use Topic Aliases, Long or Short Names, as in MQTT.
      Show
      Short topic names MUST be treated exactly the same as a Long Topic Name with a length of 2 A Session Topic alias and a Predefined Topic Alias with the same numerical value MUST map to different Topics A Session Topic alias MUST NOT be created mapping the same Topic as a Predefined Topic Alias. The Predefined Topic Alias MUST be returned instead. The pool of Topic Aliases for Session and Predefined are independent of each other. The only reason for the existence of Topic Aliases and Short Names is to reduce packet size. Therefore, a Topic Alias is transformed to its mapped Topic Name when received by a Client or Server before any further processing. A subscription contains a Topic Filter, which is a Topic Name that is allowed to include wild cards. It does not contain any Topic Aliases, and a Topic Short Name is just a Topic Name with a length of 2. A subscribe to a Topic Alias is converted to its mapped Topic Name before being added to the subscription table. As a result of the above 2 points, a subscription to # will receive all messages published to the gateway, whether they use Topic Aliases, Long or Short Names, as in MQTT.

      On reading the sections and comments on Topic Aliases, Filters and Short Names in the working draft it seems there is no clarity. I have a proposal which I hope will be clear and answer all the questions.

            Assignee:
            Unassigned
            Reporter:
            ian.craggs
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: