MQTT and QUIC

MQTT vs. QUIC: Which protocol is better for IoT applications?

Communication protocols play a crucial role in the world of Internet of Things (IoT) applications. They determine how efficiently, quickly and reliably data is transferred between devices and servers. Two of the most promising protocols in this area are MQTT (Message Queuing Telemetry Transport) and QUIC (Quick UDP Internet Connections).

Both have their own strengths and areas of application, but which is better suited to IoT? In the following, we compare both protocols in detail. But first things first: It should actually be called MQTT over QUIC, but you can find that out in the article ...

1 MQTT and QUIC - where do they come from?

MQTT was originally developed by IBM in 1999, specifically for scenarios where low bandwidth and high latency are an issue. It has quickly established itself as the standard in IoT applications, particularly due to its light weight and ability to function in resource-constrained environments.
QUIC, on the other hand, is a relatively new protocol that was developed by Google from 2012. It is based on UDP and is intended to compensate for the weaknesses of TCP (particularly in terms of latency and connection setup). It has been optimized for modern web applications and streaming, but also offers interesting features for IoT applications.

2. architecture and functionality of both protocols

MQTT: A broker-based protocol

MQTT is a publish/subscribe protocol. This means that devices (clients) send messages to a central broker, which then forwards these messages to the relevant subscribers. This architecture minimizes direct traffic between devices and ensures efficient use of bandwidth.

Advantages:

  • Low overhead costs: MQTT uses small messages and is therefore ideal for low bandwidth.
  • Reliability: It offers three QoS (Quality of Service) levels to ensure that messages are delivered according to requirements.
  • Conserving resources: Ideal for appliances with limited energy and storage.

Disadvantages:

  • Dependence on a broker: The central broker is a potential single point of failure.
  • Delays: MQTT can cause delays in message forwarding if the network load is high.

QUIC: A modern protocol based on UDP

QUIC relies on UDP instead of TCP to reduce latency. It was developed for web applications and offers interesting advantages for IoT, especially due to its built-in encryption and the ability to establish and maintain connections quickly.

Advantages:

  • Fast connection setup: By dispensing with the three-stage handshake of TCP, QUIC significantly reduces latency.
  • Integrated security: QUIC uses TLS for encryption by default, eliminating the need for additional layers of security.
  • Multiplexing: QUIC allows multiple data streams simultaneously over a single connection, which is particularly advantageous in networks with variable quality.

Disadvantages:

  • Higher resource consumption: Due to the encryption and the more complex structure, QUIC is more resource-intensive than MQTT.
  • Novelty: QUIC is still relatively new compared to MQTT and has so far been used less in IoT scenarios.
IoT ad banner

3. performance comparison of MQTT and QUIC

Data transmission

  • MQTT has been optimized for low bandwidth applications. It reduces the overhead of message transmission and is therefore ideal for environments where network utilization or poor connections are a problem.
  • QUIC is aimed at low latency and offers better performance in modern, complex networks. In networks with many connections and high loads, QUIC can offer greater efficiency thanks to its multiplexing capabilities.

Connection stability

  • With its QoS levels, MQTT offers a solid way of compensating for connection interruptions and ensuring the integrity of messages.
  • QUIC is more robust in terms of connection interruptions. It can quickly re-establish connections and seamlessly continue a session even when networks change.

Security

  • MQTT does not offer native encryption. It is often used together with SSL/TLS to secure communication, but this means additional effort.
  • QUIC, on the other hand, uses TLS 1.3 as standard, which guarantees security from the outset. This saves additional configuration work and offers modern, standardized security.

4. use cases of MQTT and QUIC

MQTT:

  • IoT devices: MQTT is often used in sensor networks, smart home devices and other low-resource IoT devices.
  • Energy-efficient communication: As MQTT works in a resource-saving manner, it is well suited for battery-powered devices that need to send data over long periods of time.

QUIC:

  • Real-time applications: QUIC is ideal for applications where latency is crucial, such as video streaming or real-time monitoring.
  • Mobile devices: Because QUIC supports seamless connection changes, it is ideal for mobile devices that switch between different networks.

QUIC in Azure

As Microsoft has also recently made adjustments to its Front Door Services, I would like to discuss a possible integration with Azure Services.

  1. Integration and support:
    Azure provides support for QUIC through services such as Azure Front Door and Azure CDN. These services use QUIC to minimize latency and improve the user experience.
  2. Advantages for IoT applications:
    With the implementation of QUIC in Azure, IoT applications can benefit from fast connection establishment and robust connection recovery, which is particularly beneficial for applications with varying network conditions. QUIC's built-in security through TLS 1.3 ensures that data transmission between IoT devices and Azure services is secure.
  3. Optimization of resources:
    By using QUIC in Azure, developers can increase the efficiency of their applications by making optimal use of network resources while minimizing latency and required bandwidth.

Conclusion MQTT and QUIC: When is the best time to choose which protocol for IoT?

The choice between MQTT and QUIC depends heavily on the specific requirements of the application:

  • MQTT is the best choice when it comes to energy-efficient, reliable communication in resource-constrained environments. It is ideal for IoT devices that regularly need to send small amounts of data over long distances.
  • QUIC scores where speed, low latency and security are paramount. It is particularly suitable for real-time applications and mobile scenarios in which connection quality and performance vary.

The most important differences between MQTT and QUIC in compact form

FeatureMQTTQUIC
Protocol typeMessaging protocolTransport protocol
UseIoT applications, client-server modelWeb applications, peer-to-peer communication
TransportationBased on TCPBased on UDP
ArchitectureBroker-based (client-broker)Peer-to-peer
Message modelPublish-subscribe modelData streams without an integrated model
Target applicationsSensors, smart home devicesReal-time applications, mobile devices
Connection stabilitySolid QoS levels for recoveryFast recovery in the event of interruptions
SecurityNo native encryption (requires SSL/TLS)TLS 1.3 by default
Resource consumptionLow (ideal for resource-constrained devices)Higher (more complex structure)
LatencyMay exhibit delays under high network loadLower latency thanks to fast connection setup

Both protocols have their strengths, and the choice should be tailored to the specific application. In a world that is becoming increasingly networked, a combination of both technologies can make a lot of sense: MQTT for resource-saving communication and QUIC for fast and secure transmissions. There are already initial approaches in which a few MQTT brokers enable implementation, although this is not yet mature enough. However, advantages would be conceivable, at least for networks with high latencies.

 

#IoT #MQTT #QUIC #Technology #Protocols #Innovation #doubleslash

 

Vincenzo Crimi

About ME

Vincenzo Crimi (Diplom-Informatiker, FH) has been working for doubleSlash since 2012 as a certified software architect in the areas of technology consulting and development, software testing and solution design, among others. He has several years of experience in IT projects and has worked for our customers BMW AG, Bundesdruckerei GmbH and Deutsche Telekom AG, among others. Vincenzo Crimi has extensive Technological expertise in the front- and baking end area. He also carries out integration work to adapt machines to the world of IoT-platforms.

All contributions from Vincenzo Crimi

Learn more

Further information on our website and in our newsletter

Arrow up