Einzelnen Beitrag anzeigen

romber

Registriert seit: 15. Apr 2004
Ort: Köln
1.163 Beiträge
 
Delphi 10 Seattle Professional
 
#1

IdUDPServer: Daten von vielen verschiedenen Clients empangen?

  Alt 17. Apr 2016, 08:48
Hallo!

Ich habe einen TIdUDPServer, der extrem zeitkritische Sonsorendaten von über zwei Dutzend Clients gleichzeitig empfangen soll. Angesichts der Tatsache, dass mehrere Pakete von unterschiedlichen Clients im Puffer landen können und dazu möglicherweise noch fragmentiert, frage ich mich wie ich die Pakete am besten auseinander halten und auslesen soll, damit so viele Daten wie möglich sicher empfangen werden. Ich bin über die Nachteile von UDP informiert und mir durchaus bewusst, dass möglicherweise nicht alle Pakete richtig ankommen werden und nehme das auch in Kauf. Es handelt sich um einen Flut von Daten, wobei ein oder anderer Paket ruhig mal verloren gehen kann, ohne den gesamten Datenbild wesentlich zu beeinträchtigen. Damit das auch nicht passiert, müssen aber etwa 80% der Daten sicher ankommen. Mein Ziel ist also so schnell wie möglich so viele Datenpakete wie möglich sicher zu empfangen. Performance ist dabei von sehr großer Bedeutung!

- Wie halte ich die Datenpakete von verschieden Clients am besten auseinander?
- Wie vermeide ich die Fragmentierung der Datenpakete?
- Falls die Fragmentierung nicht ganz zu vermeiden ist, wie füge ich die fragmentierten Pakete am besten zusammen?

Ich muss auch erwähnen, dass die einzelnen Pakete unterschiedlich groß sein können, die Durchschnittsgröße bei etwa 5 Kb.

Danke für jeden Tipp!
  Mit Zitat antworten Zitat