Uploaded image for project: 'OASIS Message Queuing Telemetry Transport (MQTT) TC'
  1. OASIS Message Queuing Telemetry Transport (MQTT) TC
  2. MQTT-38

Malformed QoS for topics in SUBSCRIBE packet

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.1.1
    • Fix Version/s: 3.1.1
    • Component/s: core
    • Labels:
      None
    • Proposal:
      Hide

      Section 2.2.2 now says:
      The remaining bits[3-0] of byte 1 in the fixed header contain flags specific to each MQTT Control Packet type as detailed in the table below. Where a bit is unused, it must be set to zero and is reserved for future use. If invalid flags are received, the receiver MUST disconnect the TCP connection.

      So, in the case of SUBSCRIBE the server will disconnect the client's TCP connection if Qos is not 1.
      It will also disconnect the clients tcp connection if Bit 0 (Reseved) in not 0.

      if the requested Qos for any Topic is not 0, or 1, or 2, the clients TCP connection is disconnected..

      Show
      Section 2.2.2 now says: The remaining bits [3-0] of byte 1 in the fixed header contain flags specific to each MQTT Control Packet type as detailed in the table below. Where a bit is unused, it must be set to zero and is reserved for future use. If invalid flags are received, the receiver MUST disconnect the TCP connection. So, in the case of SUBSCRIBE the server will disconnect the client's TCP connection if Qos is not 1. It will also disconnect the clients tcp connection if Bit 0 (Reseved) in not 0. if the requested Qos for any Topic is not 0, or 1, or 2, the clients TCP connection is disconnected..

      Description

      In current specification for SUBSCRIBE packet, QoS could be set per topic subscription request, the current document states that:

      "The upper 6 bits of this byte are not used in the current version of the protocol. They are reserved for future use.
      A request with both QoS level bits set SHOULD be considered an invalid packet and the connection closed. "

      I am opening this JIRA issue for two things.

      a) to get clarity in the sentence, for consideration of invalid packet
      b) what should be done by the MQTT server, when it receives the SUBSCRIBE packet with malformed QoS section

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              ragupta2 Rahul Gupta
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: