Hi – I’m trying to create a jmeter test plan to make an mqtt call to AWS Iot Core on port 443.
Background: Jmeter has excellent facilities for support of the TLS extension ALPN ( to support protocol negotiations like HTTP ). There are many examples on blog sites for configuring jmeter TLS negotiations with ALPN extensions (for example like http 2.0 protocol. ). Yet, there is very little on mqtt using TLS with ALPN extensions. I have a requirement to send the ALPN extension value as MQTT (along with SNI extension ) to establish a connection with AWS IoT Core ( see https://docs.aws.amazon.com/iot/latest/developerguide/custom-auth.html#custom-auth-mqtt .) I have chosen the jetty 11.0.12 framework for ALPN support (https://xy2401.com/local-docs/java/jetty.9.4.24.v20191120/alpn-chapter.html#alpn-openjdk8 .) I’m using openjdk 1.8.0_302 with jmeter 5.5. I copied the following libraries to ../lib/ext of the jmeter installation home: jetty-alpn-client-11.0.12.jar jetty-http-11.0.12.jar jetty-util-11.0.12.jar jetty-client-11.0.12.jar jetty-io-11.0.12.jar Amazon Web Service for IoT Core requires that I set the ALPLN value to “mqtt” and SNI as the host of the IoT core endpoint when I make a connect request on port 443 (https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html) . I don’t see anywhere in the “MQTT Connect” sampler to set this as a key and value (within the GUI) and was wondering if this is even a possibility. I’m still researching if this can be set by invoking jmeter via CLI. Any guidance or insight would be greatly appreciated ( especially if what I’m trying to do is not yet possible for mqtt protocol.) Thank you very much.