2012-05-05 59 views
3

由於MQTT協議在TCP上傳輸,因此三個QoS級別之間的差異非常微妙。在正常情況下,TCP將確保交付並防止重複。MQTT:不是可靠的傳輸而不是TCP

我打算使用MQTT將實時數據發送到移動設備,但我不需要可靠的交付。儘可能降低電池消耗非常重要,所以避免發送不必要的消息(TCP的確認)會很好。

是否有可能通過UDP或其他不可靠傳輸層協議實現MQTT?有沒有現成的圖書館這樣做?

回答

3

MQTT-S可以通過UDP運行,但目前還沒有任何公開可用的庫。你確定電池的使用是一個很大的問題?有一些在Android上的MQTT電源使用情況下完成的實驗運行結果在http://stephendnicholas.com/archives/219

我認爲MQTT本身確實使用TCP傳輸和訂購保證。我相信要保證它在UDP上工作是非常困難的。

+0

謝謝,我知道MQTT-S,但它不完全是我需要的。移動設備將以非常高的速度接收信息,因此每一項改進都會對其自主性產生相當大的影響。 我認爲你所談論的實驗可能是[這些](http://stephendnicholas.com/archives/219)。 –

+0

是的,這是我將它包含在答案中的鏈接。 – ralight