Gibt es eine optimale Größe in byte für das senden von Daten über ein Netzwerk?

Ich nehme 100 bytes ist zu klein und kann verlangsamen größere Datei überträgt-mit all den schreibt, aber so etwas wie 1MB scheint, wie es kann zu viel sein. Hat jemand irgendwelche Vorschläge für eine optimale chunk bytes pro schreiben für das senden von Daten über ein Netzwerk?

Zu erarbeiten, ein bisschen mehr, ich bin Implementierung von etwas, das sendet Daten über eine Netzwerkverbindung und zeigt den Fortschritt an, dass Daten gesendet werden. Ich habe gemerkt, wenn ich das senden von großen Dateien über 100 bytes zu schreiben, ist es extrem langsam, aber die Fortschritt-bar arbeitet heraus, sehr schön. Allerdings, wenn ich bei sagen wir 1M pro schreiben, es ist viel schneller, aber die progress bar funktioniert nicht so gut wegen der größeren Brocken gesendet wird.

  • wäre es nicht angewiesen auf die senden-Protokoll?
  • Ein byte-Größe von 0 optimieren Sie Ihre pro-Paket-speed, aber wäre suboptimal für die gesamte Zeit übertragen.
  • Ich Stimme mit Mitch Weizen - wenn Sie mit TCP, dann, sofern du Sie aktiviert hast NODELAY oder flush, werden die Pakete gesendet werden, indem die Stapel entsprechen nicht auf Ihre Anrufe zu senden, sowieso. Überprüfen Sie für ioctls in Bezug auf die Ausgabe-Puffer - vielleicht sind Sie in der Lage zu verbessern, den Fortschritt-bar, oder schreiben in den buffer-Größe Brocken.
InformationsquelleAutor intargc | 2008-11-20
Schreibe einen Kommentar