Datenmenge, Übertragungsbudget und tatsächliche Bestätigungen getrennt darstellen.
Eine Laufzeitschätzung teilt Datenmenge durch angenommenen Durchsatz. Sie ist eine Planungszahl und kein Fortschrittsbeweis. Achte auf Einheiten: Bit und Byte unterscheiden sich um den Faktor acht; dezimale und binäre Präfixe sind ebenfalls nicht identisch. Verbindungsaufbau, kleine Objekte, Metadaten und Wiederholungen verlängern den Lauf. Als Fortschritt zählst du bestätigte Arbeitseinheiten, nicht nur gelesene Bytes. Für einen unterbrochenen Lauf musst du später unterscheiden können, was am Ziel bestätigt, nur versucht oder noch offen ist.
Ein Beispiel
Für 600 MiB bei angenommenen 6 MiB/s ergibt die ideale Rechnung 100 Sekunden. Nach 60 Sekunden sind aber erst 240 MiB bestätigt. Die Oberfläche zeigt die bestätigten 40 Prozent und beschreibt die ursprünglichen 100 Sekunden als Schätzung.
Python 3.11 · Lehrbeispiel
gesamt_mib = 600
bestaetigt_mib = 240
print(round(100 * bestaetigt_mib / gesamt_mib))
Erwartete Ausgabe
40