Forum: PC-Programmierung Übertragungsgeschwindigkeit messen


von Christian H. (armand)


Lesenswert?

Hallo,

ich hab folgendes Problem. Ich habs jetzt geschafft ein Programm zu
schreiben das mein PC als Server und meine FPGA als Client fungieren,
das ganze auf Gigabit-Ethernet. Ich habe es auch geschafft ein Ping
Responderprogramm zu schreiben so das ich das FPGA-Board anpingen kann.
Nun wird von mir verlangt das ich beweisen soll das die Übertragungsrate
auch wirklich im Gigabitbereich ist. Nun meine Frage gibt es für Ping
ein Schalter das ich die Übertragungsrate messen kann, oder ein
Programm so wie unter Linux "bing"? Danke im Vorraus

MfG
Christian

von Wolfram (Gast)


Lesenswert?

>Nun wird von mir verlangt das ich beweisen soll das die
>Übertragungsrate auch wirklich im Gigabitbereich ist
und derjenige der das von sich gegeben hat ,hat Ahnung von der
Materie?

Mit ping wird das wohl nichts. Wenn du maximale Übertragungsraten
erreichen willst, solltest du die Maximale Paketgrösse anstreben.
Ich weiss nicht ob du Jumboframes unterstützt.
Zum anderen solltest du nicht Protokolle benutzen, die die Bestätigung
abwarten und dann erst das nächste Paket senden.
Bessere Switches geben dir auch die Datenrate an.
Evt. geht es doch mit Pings mit grossen Paketen wenn du es von mehreren
Rechnern gleichzeitig machst.

von Christian H. (armand)


Lesenswert?

Denke schon das er Ahnung hat, wäre ja schlimm als Professor. Gut ich
weiß das sagt nicht immer was, aber bei dem schon. Aber ich bin jetzt
schon dabei ein Programm zu schreiben

von Christian H. (armand)


Lesenswert?

nach dem connect lass ich nen timer laufen und wenn der buffer eine
gewisse größe erreicht hat stop ich den timer, und leite mir da die
übertragungsrate ab. Hoffe es funktioniert. Wobei ich mir nicht ganz
sicher bin ob ich nach dem connect es schon machen soll, obwohl ich
auch vom client schon ab connect anfange zu sende, müsste eigentlich
stimmen oder?

von Wolfram (Gast)


Lesenswert?

Wenn du mit TCP/IP arbeitest kannst du alles >10MB als Gigabit ansehen.
Dein Pufferansatz ist nicht schlecht, wenn nur eine Seite sendet und
die andere empfängt ohne Handshake.

von Christian H. (armand)


Lesenswert?

Aber größer als 10Mb ist doch nicht automatisch Gigabit, Gigabit ist ja
bei 1000. Ich bin zwar nicht im Netzwerkbereich Zuhause, sondern eher
im embedded bereich, nur bringt ne fpga leider nix alleine die braucht
ne verbindung nach draußen. Aber ich kenne schon ein paar boards die 10
und 100 haben, selbst das borad das ich gerade benutze das ML403 von
Xilinx hat 3 modes 10,100 und eben 1000Mb

von Wolfram (Gast)


Lesenswert?

Mit 10MB meinte ich 10Megabyte /s die in deinen Puffer reinkommen.
Das ist bei 100Mbit mit Protokoll so ziemlich das obere Limit.
Einfachster Test der mir einfiele, wenn du nicht auf Ethernetpaketebene
arbeitest, du öffnest von PC seite einen Port und liest blockweise.
Die Aufgabe des FPGA für diesen Port ist jeweils 0 oder irgendeinen
anderen Wert in den Paketen zu senden. Das ganze als UDP IP Pakete.

von Wolfram (Gast)


Lesenswert?

Oder frag deinen Prof nochmal was er mit Übertragungsrate genau meint.
Sollte er nicht den Datendurchsatz sondern nur die
Übertragungsgeschwindigkeit/Bittiming meinen, so könntest du dies schon
mit der 1000Mbit LED am Switch/Netzwerkkarte beweisen ;-)

von Christian H. (armand)


Lesenswert?

selbst mit faktor 8 ist es nicht automatisch eins, ich dachte Du hättest
dich verschrieben weil byte als einheit eher untypisch ist für die
übertragungsrate. Die LED alleine bringt mir nicht viel es geht um die
reelle Übertragungsgeschwindigkeit. Was die FPGA zu tun hat weiß ich
schon, es funktioniert ja auch alles, es ist auch keine Erstsemestler
Aufgabe.

von Roland P. (pram)


Lesenswert?

Kennst du das Tool pathchar, das ermittelt die Bandbreite irgendwie über
Ping-Pakete. Vllt hilft dir das weiter.

Gruß
Roland

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.