Mit welchen Tools kann ich ein WAN für HTTP-Verkehr simulieren?


13

Manchmal muss ich eine WAN-Umgebung zwischen meinem Client und meinem Server simulieren. Ich meine konkret vom Wichtigsten zum Wenigsten:

  • Gesamtbandbreitenlimit
  • Gelegentlich lange (viele zehn Sekunden) Verzögerungen
  • Jitter

Vorzugsweise könnte der WAN-Simulator als Proxy fungieren - ich weise meinen Client auf den WAN-Simulator und der WAN-Simulator spricht mit dem Server. Ich habe viel Zeit damit verbracht, zu googeln, um etwas zu finden, das dies bewirkt, und habe sehr, sehr wenig gefunden.

Natürlich weiß ich, dass ich verschiedene Lösungen implementieren kann, indem ich die Netzwerktopologie steuere und Geräte in die Mitte einfüge, aber die IT kontrolliert das Netzwerk. Ich bin nur ein Entwickler.

Welche kostenlosen oder kostengünstigen Tools können Ihnen dabei helfen, ein WAN zu simulieren?


In welcher Umgebung arbeiten Sie? Es gibt verschiedene Dinge, die Sie mit dem Netzwerk-Stack tun können, wenn Sie Linux verwenden ...
Hamish Downer

Antworten:


6

http://communities.vmware.com/blogs/Knorrhane/2008/01/23/how-to-simulate-wan-connections-in-your-own-test-lab-for-free


In dem Artikel wird erwähnt, dass Tmurgent auch die Latenz für Tests einführt. Das ist der Schlüssel. Wir haben mit unserer internen App festgestellt, dass Bandbreite nicht das Hauptproblem ist, sondern die Latenz. Wir müssen beim Erstellen unserer Objekte auf dem Client sehr vorsichtig sein, da sich alle SQL-Aufrufe in einer WAN-Umgebung mit Latenz zu realen Kosten summieren können.
Aaron

7

Wenn Sie Linux verwenden, können Sie tc - das Verkehrssteuerungsprogramm - verwenden. Es sollte Standard in Ihrer Distribution sein. So legen Sie beispielsweise die maximale Upload-Geschwindigkeit fest (in diesem Fall 100 kbit pro Sekunde):

$ sudo tc qdisc add dev eth1 root tbf rate 100kbit latency 600ms burst 1540   

So legen Sie die maximale Download-Geschwindigkeit fest (in diesem Fall 500 kbit pro Sekunde):

$ sudo tc qdisc add dev eth0 root tbf rate 500kbit latency 600ms burst 1540

tc kann noch viel mehr. Ich kann die Referenz momentan nicht finden, aber Sie können Pakete usw. mit tc ablegen. Weitere Informationen finden Sie in der Anleitung zur Verkehrssteuerung .

Alternativ können Sie sich mit tcng - Traffic Control Next Generation - befassen. Dabei wird tc auf einer niedrigen Ebene verwendet, es wird jedoch eine etwas schönere Sprache verwendet, um anzugeben, was Sie tun. Ich habe es nicht benutzt, aber es gibt ein tcng howto und ein tcng manual .


3

Es gibt eine Firma namens Shunra , die sich auf dieses Zeug spezialisiert hat. Ich habe keine Erfahrung mit ihnen, aber sie sind schon eine Weile da.


2

DummyNet ist eine kostenlose Software, mit der verschiedene Netzwerkbedingungen simuliert werden können. Wenn Sie eine Ersatzmaschine haben, installieren Sie FreeBSD und DummyNet und fügen Sie sie zwischen Client und Server ein. Sie können dann DummyNet optimieren, um die Latenz, den Jitter und den Verlust zu variieren, die bei Ihnen auftreten.

BEARBEITEN: Lesen Sie die Frage erneut und stellen Sie fest, dass Ihnen Ihr Netzwerk nicht gehört. Konfigurieren Sie in diesem Fall DummyNet auf einem Computer mit zwei Netzwerkkarten und verwandeln Sie ihn in einen Router, der auf der einen Seite Ihr Unternehmens-WAN und auf der anderen Seite Ihre Arbeitsstation hat. Sprechen Sie einfach zuerst mit Ihrer IT-Abteilung, um sicherzustellen, dass Sie dabei keine Probleme haben!



1

Ich wette, Sie könnten ein Fiddler- Plugin erstellen , um so etwas zu simulieren, aber ich kenne keine sofort einsatzbereite Lösung.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.