Bernd: Optimale Paketgrösse

Hallo,

Ich plane, ein Programm zur Datenübertragung zu schreiben. Vorher muss ich aber wissen, was die optimale Paketgrösse ist, um optimalen Speed zu gewährleisten. 1024kb/pro Packet und Dateiteil, mehr, weniger?

Danke für die Hilfe!
Grüße, Bernd

  1. Hi,

    Ich plane, ein Programm zur Datenübertragung zu schreiben. Vorher muss ich aber wissen, was die optimale Paketgrösse ist, um optimalen Speed zu gewährleisten. 1024kb/pro Packet und Dateiteil, mehr, weniger?

    Ich meinte natürlich 1024bytes

    Gruß, Bernd

  2. Hi!

    Ich plane, ein Programm zur Datenübertragung zu schreiben. Vorher muss ich aber wissen, was die optimale Paketgrösse ist, um optimalen Speed zu gewährleisten. 1024kb/pro Packet und Dateiteil, mehr, weniger?

    Auf welchem Übertragungs-Protokoll soll Dein Programm aufbauen? Was versprichst Du Dir von den Paket? Wieso willst Du die Daten in Pakete aufspalten? Wenn Du TCP verwendest sollte das alles automatisch funktionieren, das heißt Du schreibst nur einen Datenstrom in den TCP-Stack, von da aus wird dieser Datenstrom dann in einzelnde Pakete unterteilt und verschickt...
    Nur wenn Du UDP verwendest musst Du Dich selbst um die zuverlässige Ankunft der Daten auf der Gegenseite kümmern.

    Grüße
    Andreas

    1. Hi!

      Auf welchem Übertragungs-Protokoll soll Dein Programm aufbauen? Was versprichst Du Dir von den Paket? Wieso willst Du die Daten in Pakete aufspalten? Wenn Du TCP verwendest sollte das alles automatisch funktionieren, das heißt Du schreibst nur einen Datenstrom in den TCP-Stack, von da aus wird dieser Datenstrom dann in einzelnde Pakete unterteilt und verschickt...
      Nur wenn Du UDP verwendest musst Du Dich selbst um die zuverlässige Ankunft der Daten auf der Gegenseite kümmern.

      Tcp benutze ich, nur muss ich ne Progressbar machen, um den Status anzeigen zu lassen...Und wenn ich alles aufs mal losschicken will kann ich ihn nicht anzeigen, genausowenig wie die KB/s...

      Kannst Du mir meine Frage trotzdem beantworten, oder gibts noch einen Weg, den Status anzuzeigen auf deiner Basis?

      Grüße, Bernd

      1. Hi!

        Tcp benutze ich, nur muss ich ne Progressbar machen, um den Status anzeigen zu lassen...Und wenn ich alles aufs mal losschicken will kann ich ihn nicht anzeigen, genausowenig wie die KB/s...

        Ich könnte mir vorstellen dass man über die TCP-Schnittstelle an so einige Informationen diessbezüglich kommen könnte, aber ich weiß es nicht wirklich. Und Sonst, würde ich mal behaupten je mehr Pakete Du machst desto Langsamer wird das ganze, den TCP ist derjenige der die eigentlichen Pakete zusammenstellt, darauf hast Du gnicht direkt Einfluss, also wird es wohl immer schlechter sein die Informationen langsamer an TCP zu übergeben(und nichts anderes machst Du mit einer Unterteilung) Daher ist es ziemlich egal. Vielleicht teilst Du den gesamten datenstrom einfach in 10 gleich große Pakete auf und übergibst die nach und nach an TCP, un dkannst jedesmal daraus rückschlüsse auf den Status ziehen. Schön ist das nicht, habe keine Ahnung wie andere Programmierer solche Statusbars machen, vielleicht solltest Du diese Frage mal in einem Forum stellen wo es um die Programmiersprache geht die Du verwendest!

        Grüße
        Andreas

        1. Hi!

          Vielleicht teilst Du den gesamten datenstrom einfach in 10 gleich große Pakete auf und übergibst die nach und nach an TCP, un dkannst jedesmal daraus rückschlüsse auf den Status ziehen.

          Wär schön, aber stimmt bestimmt nicht, denn dann hätte die Statusbar nur 10 Teile...Wenn ich mir dann ICQ so anschaue...ich glaube, die haben eher eine fixe Paketgrösse. Da hilft nur probieren.
          Danke trotzdem, Bernd

      2. Hi Bernd,

        Tcp benutze ich, nur muss ich ne Progressbar machen, um den Status anzeigen zu lassen...

        dann gibt es keine 'optimale' Paketgröße.
        Du willst zwei Dinge gleichzeitig optimieren, die einander fundamental widersprechen.

        Viele Grüße
              Michael

        --
        T'Pol: I apologize if I acted inappropriately.
        V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
        (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
        Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.