Frage

Wir fordern alle Anfragen für Downloads einen gültigen Login haben (nicht http) und wir erzeugen Transaktionstickets für jeden Download. Wenn Sie auf eine der Download-Links zu gehen waren und versuchen, die Transaktion zu „replay“, verwenden wir HTTP-Codes Sie weiterleiten eine neue Transaktion Ticket zu bekommen. Dies funktioniert für eine Mehrheit der Nutzer in Ordnung. Es gibt eine kleine Teilmenge, aber die Download-Beschleuniger verwenden, die einfach versuchen, die Transaktion Ticket mehrmals zu wiederholen.

Also, um zu bestimmen, ob wir oder sogar wollen können Unterstützung Download-Beschleuniger oder nicht, wir versuchen zu verstehen, wie sie funktionieren.

Wie funktioniert eine zweite, dritte oder sogar vierte gleichzeitige Verbindung zum Web-Server einer statischen Datei Geschwindigkeit des Download-Prozess liefern?

Was ist das Beschleunigungsprogramm tun?

War es hilfreich?

Lösung

Sie werden einen umfassenderen Überblick über die Download-Beschleuniger unter wikipedia .

Beschleunigung ist vielschichtig

Erste

Ein wesentlicher Vorteil von Managed / beschleunigtem Downloads ist das Werkzeug in Frage Start / Stop-Offsets übertragen erinnert und verwendet „teilweise“ und ‚Reichweite‘ Header Teile der Datei statt allem zu beantragen.

Das bedeutet, wenn etwas mid Transaktion stirbt (dh: TCP Time-out). Es schließt wieder genau dort, wo er aufgehört hat, und Sie müssen nicht bei Null anfangen

Wenn Sie also eine intermittierende Verbindung haben, wird das Aggregat Transferzeit stark verringert wird.

Zweite

Download-Beschleuniger wie eine einzige Übertragung in mehrere kleinere Segmente gleicher Größe zu brechen, die gleichen Start-Range-Stop-Mechanik mit und führen sie parallel, die stark Transferzeit über langsame Netzwerke verbessert.

Es ist das Ärgerliche genannt Bandbreite-Verzögerung-Produkt, bei dem die Größe des TCP-Puffers an jedem Ende einige mathematische Sache mit Ping-Zeit in Verbindung tun, um die tatsächliche erfahrene Geschwindigkeit zu erhalten, und dies in der Praxis bedeutet, große Ping-Zeiten werden beschränken Sie Ihre Geschwindigkeit unabhängig davon, wie viele Megabit / sec alle Zwischenverbindungen haben.

Allerdings scheint diese Beschränkung „pro Verbindung“, so dass mehrere TCP-Verbindungen zu einem einzigen Server zu sein, können die Performance-Einbußen der hohen Latenz Ping-Zeit helfen zu verringern.

Damit Menschen, die in der Nähe leben sind nicht so wahrscheinlich eine segmentierte Übertragung tun müssen, sondern Menschen, die leben weit weg Orte sind eher von verrückt mit ihrer Segmentierung profitieren zu können.

Drittens

In einigen Fällen ist es möglich, mehrere Server zu finden, die die gleiche Ressource liefern, manchmal eine einzige DNS-Adresse Rund Rotkehlchen auf mehrere IP-Adressen oder ein Server Teil eines Spiegels Netz irgendeiner Art ist. Und Download-Manager / Beschleuniger können dies erkennen und die segmentierte Übertragungstechnik über mehrere Server hinweg anwenden, so dass der Downloader mehr kollektive Bandbreite an sie geliefert bekommen.

Support

Unterstützung bei der ersten Art der Beschleunigung ist, was ich persönlich als „Minimum“ vorschlagen für die Unterstützung. Meistens, weil es macht einen Benutzer das Leben leicht, und es reduziert die Menge der aggregierten Datenübertragung Sie aufgrund Benutzer zur Verfügung stellen müssen nicht immer wieder den gleichen Inhalt holen zu müssen.

Und dies zu erleichtern, seine empfohlen, dass Sie berechnen, wie viel sie übertragen haben und verfallen nicht das Ticket bis sie „fertig“ aussehen (während Bindung Verkehr auf die erste IP, der das Ticket verwendet) oder eine ‚angemessene gegeben "Zeit zum Download vergangen ist. dh: geben sie ein Fenster der Gnade, bevor sie erfordern ein neues Ticket zu bekommen.

Unterstützung bei der zweiten und dritten Sie Bonuspunkte geben, und die Benutzer es in der Regel zumindest die zweite Wunsch, vor allem, weil internationale Kunden mögen es nicht als Kunden zweiter Klasse behandelt zu werden, nur weil der größere Ping-Zeit, und es funktioniert nicht objektiv mehr Bandbreite in jedem Sinne verbrauchen, was zählt. Das Schlimmste, was geschieht, ist, dass sie Ihr Gesamtdurchsatz unerwünscht sein verursachen könnten, wie Sie Ihren Dienst tätig ist.

Es ist ziemlich geradlinig die erste Art von Nutzen zu liefern, ohne die zweiten einfach ermöglicht, indem die Anzahl der gleichzeitigen Übertragungen von einem einzigen Flugticket zu beschränken.

Andere Tipps

Ich glaube, die Idee ist, dass viele Server beschränken oder gleichmäßig Bandbreite über Verbindungen verteilen. Durch mehrere Verbindungen mit, sind Sie, dass das System zu betrügen und mehr als eine „faire“ Anteil der Bandbreite zu bekommen.

Es ist alles über Littles Gesetz . Insbesondere jeder Strom auf den Webserver wird eine bestimmte Menge an TCP-Latenz zu sehen, und so wird nur so viele Daten tragen. Tricks wie die TCP-Fenstergröße zu erhöhen und selektive acks Hilfe Umsetzung aber schlecht umgesetzt und verursachen in der Regel mehr Probleme als sie lösen.

mehrere Streams bedeutet, dass die Latenzzeit von jedem Strom zu sehen, ist weniger wichtig als die globale Durchsatz steigt insgesamt.

Ein weiterer wichtiger Vorteil mit einem Download-Beschleuniger, auch wenn ein einzelner Thread ist, dass es in Download-Tool im Allgemeinen besser ist gebaut, um die Web-Browser als verwenden. Zum Beispiel, wenn der Web-Browser entscheidet das Download-Tool, um zu sterben wird fortgesetzt. Und das Download-Tool Funktionalität unterstützen kann wie Anhalten / Fortsetzen, dass die eingebaute in Brower nicht.

Mein Verständnis ist, dass ein Verfahren Download-Beschleuniger verwendet wird viele parallelen TCP-Verbindungen durch Öffnen -. Jede TCP-Verbindung nur so schnell gehen kann, und wird oft auf der Serverseite begrenzt

TCP implementiert, so dass, wenn ein Timeout auftritt, wird die Timeout-Periode erhöht. Dies ist sehr effektiv bei Netzüberlastungen zu verhindern, auf Kosten der Geschwindigkeit auf einzelnen TCP-Verbindungen.

Download-Beschleuniger können dies umgehen, indem Dutzende von TCP-Verbindungen und fallen diejenigen, die langsam unter einer bestimmten Schwelle, dann neue Öffnung zu ersetzen, die langsamen Verbindungen zu öffnen.

Während wirksam für einen einzelnen Benutzer, ich glaube, es schlechte Etikette im Allgemeinen.

Sie sehen die Download-Beschleuniger erneut authentifizieren versuchen, das gleiche Transaktion Ticket mit -. Ich würde empfehlen, diese Anfragen zu ignorieren

Von: http://askville.amazon.com/download-accelerator-protocol-work-advantages-benefits-application-area-scope-plz-suggest-URLs/AnswerViewer.do?requestId=9337813

Zitat: Der häufigste Weg, Downloads zu beschleunigen ist parllel Downloads zu öffnen. Viele Server begrenzen die Bandbreite einer Verbindung so Öffnung mehr parallel erhöht die Rate. Dies funktioniert, indem eine Offset eines Download-Angabe sollte beginnen, die für HTTP und FTP gleichermaßen unterstützt wird.

Natürlich die Beschleunigung auf diese Weise recht „unsozial“. Die Begrenzung der Bandbreite implementiert, die Lage sein, eine höhere Anzahl von Kunden zu dienen, so mit dieser Technik die maximale Anzahl von Peers senkt die in der Lage ist, zum Download bereit. Das ist der Grund, warum viele Server die Anzahl der Parallelschaltung (erkannt durch IP) zu begrenzen, z.B. viele FTP-Server tun dies, damit Sie Probleme, wenn Sie eine Datei herunterladen und laden Sie die Seite weiter zu blättern verwenden. Technisch sind diese zwei parallele Verbindungen.

Eine andere Technik, die Download-Rate zu erhöhen, ist ein Peer-to-Peer-Netzwerk, in dem verschiedene Quellen z.B. von Asynchron DSL auf der Upload-Seite begrenzt sind zum Download verwendet.

Die meisten Download ‚Beschleuniger‘ wirklich beschleunigen gar nichts auf. Was sie sind gut zu tun, ist der Netzwerkverkehr stauen Hämmern Sie Ihren Server, und brechen benutzerdefinierte Skripts wie Sie gesehen haben. Im Grunde genommen, wie es funktioniert ist, dass anstelle eine Anfrage machen und das Herunterladen die Datei vom Anfang bis zum Ende, es vier Anfragen sagen macht ... die ersten Downloads von 0-25%, die zweite von 25-50%, und so weiter, und es macht sich alle zur gleichen Zeit. Der einzige Fall, wo dies jeden hilft, ist, wenn sie ISP oder Firewall eine Art von Verkehr tut Gestaltung, so dass eine individuelle Download-Geschwindigkeit auf weniger als ihre gesamte Download-Geschwindigkeit begrenzt ist.

Persönlich, wenn es Sie Probleme verursacht, würde ich sagen, nur einen weiteren Hinweis, dass Download-Beschleuniger nicht unterstützt werden, und haben die Benutzer herunterladen sie normalerweise, oder nur einen einzigen Thread verwendet wird.

Sie tun es nicht, in der Regel.

, um den Inhalt Ihrer Frage zu beantworten, ist die Annahme, dass der Server geschwindigkeitsbestimmend Downloads auf einer pro Verbindung, so gleichzeitig mehrere Stücke Download wird dem Benutzer ermöglichen, die den größten Teil der Bandbreite an ihrem Ende zur Verfügung zu stellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top