Skip to main content

2. Application-Layer Protocol Negotiation (ALPN) IDs

2. Application-Layer Protocol Negotiation (ALPN) IDs

For CoAP over TLS, [RFC8323] defines the ALPN ID "coap". Reusing the same ALPN ID for a different transport layer is not advisable, so this document registers an ALPN ID for CoAP over DTLS.

ALPN ID values have variable length. For CoAP over DTLS, the short value "co" is allocated because it can help avoid fragmentation of ClientHello and ServerHello messages in constrained networks with link-layer fragmentation, such as 6LoWPAN [RFC4944].

To discover CoAP services secured with TLS or DTLS, the ALPN IDs "coap" and "co" can be used respectively, following the general service-discovery behavior described in [RFC9460]. Discovery for CoAP services that use other security mechanisms is outside this document's scope.