FÜR ROOTED DEVICE
(kopiert von Mansours Antwort auf diesen Beitrag )
Kasse BradyBound . Es ist ein systemweiter Shaper / Limiter für die Download-Geschwindigkeit. Einige Dinge zu beachten:
- Die App benötigt Root-Zugriff.
- Es funktioniert, indem Pakete mit verworfen werden
iptables
. Dies verschwendet etwas Verkehr - wie viel hängt von der Art des Verkehrs ab (z. B. lang laufender Download, Surfen im Internet).
- Die Ratenmessung erfolgt nach Anzahl der Pakete anstelle von Bytes, sodass die Geschwindigkeitsbegrenzung nicht genau ist.
- Dies begrenzt nur den TCP-Verkehr (es macht keinen Sinn, UDP-Pakete zu verwerfen).
Beachten Sie auch, dass ich der Autor dieser App bin.
Edit # 1:
Erläuterung:
Daten werden in kleine Teile unterteilt, die als Pakete bezeichnet werden und über das Netzwerk übertragen werden sollen.
Es kann mit TCP (Transmission Control Protocol) oder UDP (User Datagram Protocol) übertragen werden.
Nehmen wir ein Beispiel:
Angenommen, Sie sind der Server und ich bin der Host, und ich möchte eine Datei herunterladen. Daher sende ich Ihnen zuerst eine Anfrage, die Sie bearbeiten. Statt die gesamte Datei zu senden, teilen Sie die große Datei in auf kleine Pakete.
Jetzt enthält jedes erstellte Paket Informationen wie die Quell-IP (Ihre) und die Ziel-IP (meine) sowie einige zusätzliche Daten (Sequenznummer, Datengröße, Lebensdauer usw.).
Sie werden diese Pakete senden und sie können mich über Router erreichen.
Es ist nicht erforderlich, dass alle Pakete auf demselben Weg zu mir kommen. Sie können über verschiedene verfügbare Routen zu mir kommen.
Wenn sie mich erreichen, kommt TCP / UDP ins Bild.
Wenn Sie TCP für die Übertragung verwendet haben und ein Paket mich erreicht, wird eine Bestätigung an Sie zurückgesendet, dass das Paket mich erreicht hat.
Diese Funktion fehlt in UDP. Wenn Sie im Gegensatz zu TCP UDP verwendet haben, werden Ihnen keine Bestätigungen gesendet. Das bedeutet, dass Sie als Server keine Ahnung haben, ob Pakete mich erreichen oder nicht. Falls es bei der Übertragung verloren geht, ist es für immer verloren.
Pakete verwerfen
Das Verwerfen von Paketen bedeutet das Verwerfen von Paketen. Wenn ich also das von Ihnen gesendete Paket verwerfe, wird Ihnen (im Fall von TCP) eine Bestätigung gesendet, dass das Paket bei der Übertragung verloren gegangen ist, sodass Sie es erneut senden müssen.
Auf diese Weise wird Datenverkehr verschwendet und die Geschwindigkeit begrenzt, während ich die gesamte Datei erhalte.
Wenn ich UDP-Pakete verwerfe, erhalte ich nicht die gesamte Datei. Aus diesem Grund steuert die App den UDP-Verkehr nicht.
Und ja, Root-Rechte sind ein Muss, da auf iptable nur mit Superuser-Zugriff zugegriffen werden kann.