2017-01-25 50 views
1

我需要創建一個監視器,它將使用ZeroMQ ipc記錄有關數據包丟失的信息。其實我並不是很瞭解它的一切,因爲還有一些LINX,TIPS協議。你能解釋我說的並回答主要問題嗎?IPC在Linux中保證消息順序嗎?

回答

1

通過在每個消息結構中包含消息序列號,可以使應用程序自我監視。消息發送者跟蹤它最後發送的序列號,並在每次發送消息時增加它。

接收方應該接收到嵌入不斷增加的消息序列號的消息。如果此次跳躍次數超過2次,則消息丟失。

IPC不像網絡那樣有損 - 輸入的字節出現在另一端。 TCP也不是有損的,只要兩端仍在運行並且網絡本身沒有失敗。但是,根據所使用的ZMQ模式以及它如何設置,整個消息可能無法傳送(例如,如果收件人尚未連接等)。如果這就是「丟失數據包」的含義,則會通過包含遞增的消息序列號來顯示。