OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

mqtt message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: [OASIS Issue Tracker] (MQTT-502) Handling version 3.x clients

    [ https://issues.oasis-open.org/browse/MQTT-502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=67568#comment-67568 ] 

Ken Borgendale commented on MQTT-502:

This was discussed at the MQTT TC on 2017-09-21.  The conclusion again was that we do not want to put into this spec how to support multiple versions of MQTT or indeed multiple protocols.  We do reference in the normative text that we expect some clients and servers to do so.. 

If the CONNECT packet validly claims to be MQTTv5, then the server processes it according to this spec.  If the server supports some other protocol and gets a valid initial packet, it should support that protocol.  If the server knows about another protocol but does not support it, it is perhaps best to respond correctly for that protocol, or to simple close the connection.  It it gets unknown initial packet contents, I would strongly suggest that the server just close the connection.

However, none of this is in the scope of this spec, except that if the initial packet is a valid MQTTv5 CONNECT packet, it is processed according to this spec.

We have also discussed in the past how servers forward messages between clients of different versions of MQTT, or indeed different protocols.  Again this is out of the scope of this spec.

> Handling version 3.x clients
> ----------------------------
>                 Key: MQTT-502
>                 URL: https://issues.oasis-open.org/browse/MQTT-502
>             Project: OASIS Message Queuing Telemetry Transport (MQTT) TC
>          Issue Type: Bug
>          Components: edits
>    Affects Versions: 5, CSD01
>            Reporter: Ken Borgendale
>            Assignee: Ken Borgendale
> Could you add a sort of non normative comments about handling version
> 3.x clients for backward compatibility?
> For example:
> What reason code should the broker send with CONNACK for protocol
> error before determining the client version ?
> (Version 3.x clients expect 0x01, while version 5 do 0x81 or 0x82.)
> The broker cannot determine clients version immediately because
> version 5 CONNECT magic word "MQTT" is as same as version 3.1.1.
> How should the broker convert the messages between version 3.x clients
> and version 5 ?
> (Add or delete properties obviously. Anything else to concern ?)
> Regards,
> Tatsuzo Osawa

This message was sent by Atlassian JIRA

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]