Packet Drop in bursty up events on MQTT

A similar problem In the topic is discussed and solved with a parameter change in the code, which is also changed in the release.

However, now chirpstack uses different mqtt library for rust. And I have a problem with sending bursty messages from mqtt event up for the gateway.

Here is some experimental results.

Event: up

  • 500 packets received from MQTT broker, 134 packets processed at the application server side.
  • 500 packets received from MQTT broker, 141 packets processed at the application server side.
  • 500 packets received from MQTT broker, 133 packets processed at the application server side.
  • 500 packets received from MQTT broker, 139 packets processed at the application server side.
  • 1000 packets received from MQTT broker, 283 packets processed at the application server side.
  • 1000 packets received from MQTT broker, 285 packets processed at the application server side.

Tried all the suggestions that are given in the topic I shared above, just cannot change the library part. I run the chirpstack on docker.

I wish to receive all packets on the application side that I sent from the MQTT Broker.

If I put a delay between two consecutive packets about 350ms, I can receive all the event:up packets without any problem.

Is it possible to send all of them without putting any delay?

Thank you

On my local machine I have no issues with 1200 gateway uplink events per second using the simulator (which reflects to 400 messages per sec after deduplication). Are you sure MQTT is the bottleneck?

I have no problem on publishing 500 burst up event to eu868/gateway/{gatewayId}/event/up gateway topic. MQTT can handle it.

however chirpstack cannot progress it as it seems. How do you think I can fix this problem ?

MicrosoftTeams-image