2017-01-25 4 views
1

Ich muss einen Monitor erstellen, der Informationen über fehlende Pakete mit ZeroMQ ipc protokolliert. Eigentlich verstehe ich nicht wirklich alles darüber, da es auch einige LINX-, TIPS-Protokolle gibt. Kannst du mir das bitte erklären und die Hauptfrage beantworten?Gewährleistet IPC die Reihenfolge der Nachrichten in Linux?

Antwort

1

Sie könnten die Anwendung selbst überwachen, indem Sie in jede Nachrichtenstruktur eine Nachrichtenseriennummer aufnehmen. Der Absender der Nachricht verfolgt die Seriennummer, die er zuletzt gesendet hat, und erhöht sie jedes Mal, wenn er eine Nachricht sendet.

Der Empfänger sollte dann Nachrichten mit immer zunehmenden Nachrichtenseriennummern erhalten. Wenn das jemals um 2 oder mehr springt, ist eine Nachricht verschwunden.

IPC ist nicht verlustbehaftet wie ein Netzwerk sein kann - die Bytes kommen am anderen Ende heraus. TCP ist auch nicht verlustbehaftet, vorausgesetzt beide Enden laufen noch und das Netzwerk selbst ist nicht ausgefallen. Je nach verwendetem ZMQ-Muster und wie es eingerichtet wird, können jedoch ganze Nachrichten nicht zugestellt werden (z. B. wenn der Empfänger noch nicht verbunden ist usw.). Wenn Sie das mit "Paket fehlt" meinen, wird dies durch eine inkrementierende Nachrichtenseriennummer angezeigt.

Verwandte Themen