UDP Socket - Elendig langsam?
-
Hallo Leute,
ich programmiere grade an ein NetzwerkSpiel welches über UDP und Server-Client Prinzip funktioniert.
Nun bin ich grade an dem Punkt angekommen, wo ich schnell Pakete hin und her schicken muss damit alles synchron läuft.in meinem Test Netzwerk hier hab ich einen Ping von <1ms und garantiert keinen Packetloss. Trotzdem läuft es absolut nicht synchron, er ruft einfach die Pakete nicht schnell genug ab / sendet zu langsam, sodass z.B. noch Pakete empfangen und ausgewertet werden, wenn keine mehr kommen dürften.
Ich hab beim Server eine Schleife die immer am Anfang den Socket auf neue Nachrichten überprüft und dann auswertet.
Beim Client läuft ein neuer Thread der die ganze Zeit den Socket überwacht...Hab ich irgendeinen Denkfehler da drinne, oder sind die sockets unter C# latency-mäßig einfach nur grottenschlecht implentiert?
MfG, Rodney
-
Ich hab grade rausgefunden, dass der zeitliche Abstand noch halbwegs i.O. ist, er aber einfach nicht soviele Pakete auf einmal senden/empfangen kann
Die Anzahl liegt zurzeit bei ca 40 Paketen / s zu je ein paar (max 20) Bytes
Und das bei einer 100mbit LAN-Verbindung
-
Es lag gar nicht an den Sockets,
ich habe einfach die Performance von einer Windows-Routine extrem überschätzt...
Zu Logzwecken habe ich in eine Textbox geschrieben, was sehr lange gedauert hat