Re: [Tls-reg-review] [UNVERIFIED SENDER] Re: Request to Register Value in TLS ALPN Registry

"Thakar, Eeshan" <> Fri, 18 October 2019 17:30 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 5062F120120 for <>; Fri, 18 Oct 2019 10:30:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -11.799
X-Spam-Status: No, score=-11.799 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id p-f7vekNWaiu for <>; Fri, 18 Oct 2019 10:30:43 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 6C9B2120897 for <>; Fri, 18 Oct 2019 10:30:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;;; q=dns/txt; s=amazon201209; t=1571419839; x=1602955839; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=P8NCVC0cJCo8dsH0JlU+974OcomSeodeBTrEmdENHdA=; b=ITPnuoyCwOyp40XcBeM58qPKlIObCiKUVz71HzcvradYeRhEh7KjKn0y kjqyUyxH0kZCxD0cE7+y/QmG4NnS5LJ90+0BLoflepNooJyd047gjAg6Z xbUpJYF8iIXFlF8GzAttIZJ/5AXTRwibWha23ITkPQnZhVAqYl3YoImhX M=;
X-IronPort-AV: E=Sophos;i="5.67,312,1566864000"; d="scan'208,217";a="430684182"
Received: from (HELO ([]) by with ESMTP; 18 Oct 2019 17:30:36 +0000
Received: from ( []) by (Postfix) with ESMTPS id CBD76A23B4; Fri, 18 Oct 2019 17:30:36 +0000 (UTC)
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 18 Oct 2019 17:30:34 +0000
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.0.1367.3; Fri, 18 Oct 2019 17:30:34 +0000
Received: from ([]) by ([]) with mapi id 15.00.1367.000; Fri, 18 Oct 2019 17:30:34 +0000
From: "Thakar, Eeshan" <>
To: Yoav Nir <>
CC: "" <>, "Lee, Alexandra" <>, "Sharfin, Jared" <>, "Gochenaur, Drew" <>
Thread-Topic: [UNVERIFIED SENDER] Re: [Tls-reg-review] Request to Register Value in TLS ALPN Registry
Thread-Index: AQHVTvNp07s5hq458kCx7r8BLIaHW6b0GCUAgGyIGQA=
Date: Fri, 18 Oct 2019 17:30:34 +0000
Message-ID: <>
References: <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/10.1b.0.190715
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_50D9DBC72A06447990D5D3CEA2BD857Famazoncom_"
MIME-Version: 1.0
Archived-At: <>
X-Mailman-Approved-At: Fri, 18 Oct 2019 10:34:57 -0700
Subject: Re: [Tls-reg-review] [UNVERIFIED SENDER] Re: Request to Register Value in TLS ALPN Registry
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TLS REVIEW <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 18 Oct 2019 17:30:45 -0000


Did you get a chance to review the application with the added context from my email?



From: Thakar, Eeshan <<>>
Sent: Monday, August 12, 2019 5:13 PM
To: Yoav Nir <<>>
Cc:<>; Lee, Alexandra <<>>; Sharfin, Jared <<>>; Gochenaur, Drew <<>>
Subject: Re: [UNVERIFIED SENDER] Re: [Tls-reg-review] Request to Register Value in TLS ALPN Registry

Hi Yoav,

Thanks for taking a look through the request. The current implementation for the AWS IoT Gateway endpoint does support HTTP/1.1 and MQTT (3.1 and 3.1.1) on the same port (443) using ALPN (with a custom ALPN protocol id).
It also supports MQTT on the IANA registered port (8883), but allows ALPN based MQTT connections on 443 to work around standard firewall configurations [1].

The goal with getting the “mqtt” protocol id registered was to have a common basis for all implementers of gateways that support HTTP and MQTT (multiple cloud IoT services do so today, albeit not on the same port) to have a way to accept MQTT traffic on port 443. This is similar to how CoAP has both an ALPN registered string (“coap”) and a registered port (5684 for CoAP with TCP/TLS).




From: Yoav Nir <>
Date: Saturday, August 10, 2019 at 2:08 AM
To: "Thakar, Eeshan" <>
Cc: "" <>rg>, "Lee, Alexandra" <>om>, "Sharfin, Jared" <>om>, "Gochenaur, Drew" <>
Subject: [UNVERIFIED SENDER] Re: [Tls-reg-review] Request to Register Value in TLS ALPN Registry

On 9 Aug 2019, at 23:45, Thakar, Eeshan <<>> wrote:

Type of Assignment:
Registration of “mqtt” token

Application Layer Protocol Negotiation (ALPN) Protocol ID

The mqtt protocol has the protocol version written into the first message on a connection. The mqtt server implementations typically understand the protocol version based on the fixed header on the first message (connect).

Adding this protocol id to the registry will help the community since clients wanting to request mqtt as the protocol would have an appropriate specification reference to use.

Additional Info:
[1] MQTT 3.1 Specification:
[2] MQTT 3.1.1 Specification:
[3] MQTT 5.0 Specification:

Hi, Eeshan.

I’ve looked through the linked specifications, especially the third one because it says it replaces the others.

It says that TCP port 8883 is registered with IANA for MQTT over TLS, and the IANA registry confirms it.  If you have your own port, why do you need ALPN?

ALPN is used to negotiate a particular service (such as HTTP) over a single port, typically 443.

So if you were using a server listening on port 443 and serving both MQTT and HTTP/2 you would need that to distinguish clients that need MQTT from web browsers that need HTTP/2.

The linked document does not make any mention of such a server.  Is this described elsewhere?