Knobelaufgabe zu Berechnung von Laufzeiten

Hallo,

wir haben in der Schule eine "Knobelaufgabe bekommen, und wollte mal fragen ob meine Berechnung soweit richtig ist:

Aufgabe:
Zwischen Erde und einer Mondsonde ist eine Leitung mit 100Mb/s eingerichtet.Die Entfernung zwischen Erde und Mond beträgt ungefähr 385000km, die Ausbreitungsgeschwindigkeit entspricht der Lichtgeschwindigkeit (300000KM/s). Bitte beachten sie:
1Mbit/s = 1000Kbit/s aber 1 MByte= 1024 KByte bzw.
1Kbit/s = 1000 bit/s aber 1 Kbyte = 1024 Byte.

a) Berechnen sie die minimale Zeit die eine Nachricht vom Mond zur Erde und zurück benötigt.

Meine Lösung:

385000 / 300000 = 1,28 Sekunden
1,28 Sekunden * 2 (Rückweg) = 2,56 Sekunden

b) Berechnen sie die Anzahl der Bytes, die sich auf der Leitung befinden, wenn Daten vom Mond zur Erde übertragen werden.

Meine Lösung:
100 Mb = 100000000 bit /8 = 12.500.000 Byte
12.500.000 Byte = 12,5 Mb
12,5 Mb * 1,28 Sekunden = 16Mb/s
Somit befinden sich 16Mb/s in der Leitung

c) Eine auf dem Mond installierte Kamera nimmt Bilder auf und speichert sie als 16MB große datei ab.Wie lange dauert es mindstens von der Anforderung des Bildes(auf der Erde) bis zum Ende der Übertragung? Wie hoch ist der tatsächlich erreichte DurchsatzGeschwindigkeit in Mbyte/s) ?

Meine Lösung:

Auf dem Mond befindet sich das 16MB File. Es wird eine leere Nachricht von der Erde zur Sonde geschickt die Dauer beträgt 1,28 s. Dann wir das File an die Erde geschickt. Der erste Byte kommt nach 1,28 s, das letzte Byte nach weiteren 1,28 s.
3 * 1,28 Sekunden = 3,84 Sekunden
Es wird eine Geschwindigkeit von 100 MB/s erreicht.

Ist meine Berechnung soweit richtig ? Normalerweise müsste man ja Overhead usw. berücksichtigen usw richtig ? Was noch ?

Hallo Fragewurm,

Ist meine Berechnung soweit richtig ?

Habe ich nur überflogen, sieht aber richtig aus,

Normalerweise müsste man
ja Overhead usw. berücksichtigen usw richtig ? Was noch ?

Bei einem Blockprotokoll muss immer zuerst ein ganzer Block empfangen werden, bevor er neu verpackt und gesendet werden kann.

Bei einfachen Protokollen muss jeder Empfangene Block mit ACK oder NAK bestätigt werden, bevor der Sender den nächsten Block senden, bzw. den gestörten wiederholen darf. In diesen Falle würde dies die effektive Datenrate enorm ausbremsen.

Bei z.B. TCP/IP spielt RWIN, also die maximal zulässige Anzahl unbestätigte Pakete, eine grosse Rolle, auf die nutzbare Datenrate.

Timeouts müssen entsprechen gross gewählt werden sonst wird ein Block schon erneut gesendet bevor die Bestätigung überhaupt eingetroffen sein kann. In deinem Fall also minimal 2.56s + mindestens 2 x die Übertragungszeit für den grössten möglichen Block + Zeit für die Verarbeitung eines Blocks.
2x Grösster Block deshalb, weil sich gerade ein ganzer Block im Ausgabepuffer befinden kann, wenn der Empfänger sein ACK/NAK erzeugt hat. Dies reicht aber nur, wenn der EMpfänger so konstruiert ist, dass ACK/NAK vor anderen wartenden Blöcken in die Sendequeue eingefügt werden kann. Sonst muss man mehr zugeben.

Bei der Blockgrösse muss die Störrate berücksichtigt werden.
Wird die Blockgrösse zu klein gewählt sinkt der Durchsatz durch den Protokolloverhead. Ist die Übertragungszeit für einen Block grösser als die Zeit zwischen zwei Störungen können gar keine Blöcke fehlerfrei übertragen werden.
Die alten Füchse kennen das Problem noch aus den Zeiten als man Daten per Modem über das Telefonnetz übertragen hat. Damals gab es Protokolle welche die Blockgrösse aus diesem Grund dynamisch angepasst haben.

MfG Peter(TOO)

Aufgabe:
Zwischen Erde und einer Mondsonde ist eine Leitung mit 100Mb/s
eingerichtet.Die Entfernung zwischen Erde und Mond beträgt
ungefähr 385000km, die Ausbreitungsgeschwindigkeit entspricht
der Lichtgeschwindigkeit (300000KM/s). Bitte beachten sie:
1Mbit/s = 1000Kbit/s aber 1 MByte= 1024 KByte bzw.
1Kbit/s = 1000 bit/s aber 1 Kbyte = 1024 Byte.

a) Berechnen sie die minimale Zeit die eine Nachricht vom Mond
zur Erde und zurück benötigt.

Meine Lösung:

385000 / 300000 = 1,28 Sekunden
1,28 Sekunden * 2 (Rückweg) = 2,56 Sekunden

OK, kann man so stehen lassen.

b) Berechnen sie die Anzahl der Bytes, die sich auf der
Leitung befinden, wenn Daten vom Mond zur Erde übertragen
werden.

Meine Lösung:
100 Mbit/s = 100.000.000 bit/s = 12.500.000 Byte/s

Bitte verschluddere keine Einheiten!

12.500.000 Byte = 12,5 Mbyte

Falsch.

„Bitte beachten Sie…“

Überleg noch mal!

12,5 Mb * 1,28 Sekunden = 16Mb/s
Somit befinden sich 16Mb/s in der Leitung

Wieder hast du mit den EInheiten geschluddert!
Mb/s ist keine Datenmenge, sondern eine Datenrate!

c) Eine auf dem Mond installierte Kamera nimmt Bilder auf und
speichert sie als 16MB große datei ab.Wie lange dauert es
mindstens von der Anforderung des Bildes(auf der Erde) bis zum
Ende der Übertragung? Wie hoch ist der tatsächlich erreichte
DurchsatzGeschwindigkeit in Mbyte/s) ?

Meine Lösung:

Auf dem Mond befindet sich das 16MB File. Es wird eine leere
Nachricht von der Erde zur Sonde geschickt die Dauer beträgt
1,28 s. Dann wir das File an die Erde geschickt. Der erste
Byte kommt nach 1,28 s, das letzte Byte nach weiteren 1,28 s.
3 * 1,28 Sekunden = 3,84 Sekunden
Es wird eine Geschwindigkeit von 100 MB/s erreicht.

Gefragt war nach Mbyte/s.

Ist meine Berechnung soweit richtig ? Normalerweise müsste man
ja Overhead usw. berücksichtigen usw richtig ? Was noch ?

Neben dem Overhead, den ich nicht beziffern kann, hast du bei TCP/IP noch das Problem, dass für Pakete auch Quittungen erwartet vom Empfänger erwartet werden. Aber es stand ja kein zu verwendendes Protokoll dabei, demnach denke ich, dass die Aufgabe Overhead und notwendige Empfangsbestätigungen einfach mal vernachlässigt.

Hallo,

Wieder hast du mit den EInheiten geschluddert!
Mb/s ist keine Datenmenge, sondern eine Datenrate!

komplett off topic, aber da fiel mir wieder das göttliche Paper von Michal Zalewski ein: Juggling with packets: floating data storage.

Gruß,

Sebastian