dotnet / MQTTnet

MQTTnet is a high performance .NET library for MQTT based communication. It provides a MQTT client and a MQTT server (broker). The implementation is based on the documentation from http://mqtt.org/.
MIT License
4.38k stars 1.05k forks source link

MQTT over QUIC #1195

Open geffzhang opened 3 years ago

geffzhang commented 3 years ago

Describe the feature request

.NET 6 supports Http3, and MQTT can support running on HTTP3, reference And QUIC meets IoT: performance assessment of MQTT over QUIC

Which project is your feature request related to?

Describe the solution you'd like

The underlying network of MQTT changes from TCP to Quic's UDP to improve network performance

chkr1011 commented 2 years ago

This would require a QUIC implementation for C# first. I saw some projects but they are sometimes only prototypes or do not support encryption etc. If there is a suitable library out there please reopen the ticket.

dynamiquel commented 1 year ago

This would require a QUIC implementation for C# first. I saw some projects but they are sometimes only prototypes or do not support encryption etc. If there is a suitable library out there please reopen the ticket.

Does MsQuic not fulfil these requirements?

chkr1011 commented 1 year ago

Thanks for the update. I will have a look.

geffzhang commented 1 year ago

MQTT over QUIC: Next-Generation IoT Standard Protoco

chkr1011 commented 1 year ago

Does anyone know a public broker which supports QUIC so that we can test the implementation easily?

SeppPenner commented 1 year ago

EMQX supports it, but not sure if the public broker does: https://www.emqx.com/en/blog/mqtt-over-quic

geffzhang commented 1 year ago

emqx 5.0 support mqtt over quic https://www.emqx.com/en/blog/mqtt-over-quic#mqtt-over-quic-implementation-of-emqx-5-0