Outils réseau qui simulent une connexion réseau lente [fermé]


243

Je voudrais évaluer visuellement le temps de réponse des pages Web pour plusieurs types de connexions Internet (DSL, câble, T1, accès à distance, etc.) alors que mon navigateur et mon serveur Web sont sur le même LAN ou même sur la même machine. Existe-t-il des outils réseau simples ou des plug-ins de navigateur qui ralentissent la bande passante du réseau pour simuler différents scénarios de connexion réels.

J'apprécie toute contribution à ce sujet.


2
Juste une note, vous pouvez poster ceci sur serverfault.com.
JP Alioto

5
Les utilisateurs d'OSX Mountain Lion peuvent utiliser Network Link Conditioner - stackoverflow.com/questions/11699805/… .
Joe Masilotti


Réponses:


23

essayez Traffic Shaper XP, vous pouvez facilement limiter la vitesse d'IE ou d'un autre navigateur avec cette application et son freeware


2
kaspersky signale que le téléchargement à partir de ce site contient un programme de téléchargement de chevaux de Troie.
Bob Moore

20
Ne semble pas fonctionner sous Windows 7.
Znarkus

1
Je ne pouvais pas faire fonctionner ça. Prend-il en charge le trafic vers l'adresse localhost ou 127.0.0.1?
Anderson

1
@Anderson, probablement pas. Pour autant que je m'en souvienne, Windows n'a pas de pile réseau interne pour les connexions locales comme * nix le fait habituellement.
Matthew Scharley

4
J'utilise Clumsy ( jagt.github.io/clumsy/index.html ) moi-même.
simongus

266

Sur Linux, voir netem : le noyau contient déjà la prise en charge de la mise en forme du trafic et peut simuler une latence élevée, une faible bande passante, des pertes de paquets et toutes sortes d'autres conditions défavorables, même sur un périphérique de bouclage (vous n'avez donc pas besoin d'un vrai, réseau physique à tester).


49
+1 à cela. Impressionnant. Avec une seule commande, je peux faire en sorte que "localhost" se comporte comme un service Internet public sur le café wifi: sudo tc qdisc add dev lo root netem delay 500ms
Sam Stokes


44
Super cool. Je veux juste ajouter comment supprimer à nouveau l'émulation. Pour ajouter: sudo tc qdisc add dev lo root netem delay 100msPour supprimer:sudo tc qdisc del dev lo root netem delay 100ms
freeall

14
Vous pouvez réinitialiser complètement toutes les règles de tc pour réalimentation avec la commande unique sudo tc qdisc del dev lo root- changement lode eth0si vous utilisez une connexion filaire etc
Hamish Downer

6
Les versions récentes de soutien netem limitant la bande passante trop en utilisant l'option de taux: tc qdisc add dev lo root handle 1:0 netem delay 10ms rate 1mbit limit 1000. Notez que pour certains appareils, tels que le dispositif de réalimentation, vous devez également le mettre à une longueur de file d' attente non nulle pour l'option de taux au travail: ifconfig lo txqueuelen 1000. Voir serverfault.com/a/394949/76090
z0r

77

Je ressuscite ce fil parce que j'ai le même besoin récemment. Étonnamment, j'ai découvert que Fiddler peut être utilisé pour cela en personnalisant les règles et en ajoutant cette ligne oSession["response-trickle-delay"] = "150";dans la section OnBeforeResponse. Le violoneux est vraiment incroyable


35
Dans les versions récentes de Fiddler, il vous suffit d'activer Simulate Modem Speedssous Rules -> Performance.
Znarkus

4
+1 Fiddler est un outil exceptionnel, peut-être exagéré pour cela, mais qui vaut vraiment la peine d'avoir autour. Vous pouvez facilement faire en sorte que Fiddler ne joue qu'avec un seul programme en utilisant le filtre de processus, aucune configuration de proxy dans votre programme n'est nécessaire!
Deebster

J'étais déjà un amoureux de Fiddler mais maintenant je ne peux plus vivre sans. Je ne savais pas que l'outil dont j'avais besoin vivait avec moi tous les jours :)
Ignacio Soler Garcia

5
Notez qu'il s'agit d'une solution uniquement pour Windows, sauf si vous êtes prêt à jouer avec des hacks et des solutions de contournement.
crazy2be

19

Essayez le NEWT de Microsoft, cela a fonctionné parfaitement pour moi. Il fournit une latence personnalisée, des techniques de suppression de paquets et plus :)

http://blog.mrpol.nl/2010/01/14/network-emulator-toolkit/

Mise à jour 1:

Voici un bon didacticiel vidéo pour NEWT - Tutoriel de l' émulateur de réseau pour Windows Toolkit (crédits à Jimmery)


2
Oui, je pense que cela fonctionne au niveau du pilote.
Eran Betzalel

1
Je l'ai essayé, mais je n'ai pas pu le comprendre - y a-t-il un fichier d'aide quelque part?
UpTheCreek

1
Je connais les concepts de base du réseautage - mais je n'ai pas réussi à faire quoi que ce soit.
UpTheCreek

1
Utilisez le bouton de trace (ressemble à un pied jaune) pour voir si vos filtres sont pertinents pour les paquets réseau. Essayez des trucs simples, comme la suppression de chaque paquet pour le port 80 (HTTP).
Eran Betzalel

3
Je n'ai pas eu la connaissance du réseau de vous les gars, mais j'ai obtenu NEWT pour travailler après avoir regardé cette vidéo youtube: youtube.com/watch?v=s5o_GnYOloA - J'espère que cela aide
Jimmery

17

Mon travail utilise cet outil, et il semble assez bon: http://www.dallaway.com/sloppy/

Bonne chance.


1
+1 basé sur Java, il fonctionne donc très bien sur OSX (je ne l'ai pas encore essayé sur Windows ou Linux) - facile à installer et à exécuter, fonctionne de manière transparente et ne laisse pas de gâchis par la suite!
Richard Inglis

oui, excellent outil, jnlp basé sur le Web (aucune installation nécessaire, lancez-le simplement), il crée un proxy sur localhost, le port est configurable, la vitesse peut être modifiée dynamiquement +32;)
jobwat

J'ai déjà utilisé sloppy et je l'adore, mais malheureusement, il ne prend pas en charge https: groups.google.com/forum/#!topic/sloppy-discuss/tOyCx7igfkw
Jess

ne simule cependant pas la perte de paquets des réseaux de merde.
catbadger

13

J'ai utilisé avec succès TMnetSim (en bas de la page, sous «Autres outils» - le lien indique quelque chose comme «ZIP: TMnetSim Network Simulator version 2.4 32 bits (600 Ko)»

Ce n'est pas seulement pour les sites Web - vous pouvez ralentir les connexions à n'importe quel port TCP. Je l'utilisais pour simuler un serveur SQL lent (port 1433).


Quel système d'exploitation utilisiez-vous? Je ne pouvais pas du tout le faire fonctionner sous Windows 7 32 bits ...
GuyBehindtheGuy

@GuyBehindtheGuy: avez-vous déjà eu de la chance? J'ai le même besoin et le même système d'exploitation ...
RedFilter

2
J'ai fini par utiliser DummyNet. Il y a une version Windows ici: info.iet.unipi.it/~luigi/dummynet
GuyBehindtheGuy

1
+1 Celui-ci a fait exactement ce dont j'avais besoin avec le minimum de fuzz. Merci pour le conseil!
wasatz

La version actuelle fonctionne très bien sur Windows 8.1 64 bits.
Jaime Hablutzel

6

J'adore Charles .

La version gratuite fonctionne bien pour moi.

La limitation, le réexamen, les points d'arrêt sont tous des fonctionnalités impressionnantes.


2
Ouais, ça marche bien pendant 30 jours ...: - /
BrainSlugs83

1
Pour moi, cela fonctionne bien également après les 30 jours, il suffit d'attendre un peu plus longtemps et il redémarre après 30 minutes. Mais vous pouvez toujours obtenir la licence.
Roland Keesom

Version 3.7? Le site Web semble impliquer qu'après 30 jours, vous devez l'acheter pour continuer à l'utiliser.
BrainSlugs83

1
Votre hypothèse est fausse. Dans les 30 premiers jours, vous pouvez l'utiliser sans délais. Après cela, il y a de petits retards et il redémarre après 30 minutes.
Roland Keesom

4
De leur site Web:After 30 days if you decide to continue using Charles you must purchase a license
Florian Fida

6

DummyNet

Essayez cette image VMWare basée sur FreeBSD. Il a également un excellent mode d'emploi, purement gratuit et se lève en 20 minutes.

Mise à jour: DummyNet prend désormais en charge Linux, OSX et Windows


1
Merci pour l'astuce à ce sujet. Il s'avère qu'il existe maintenant une version native de Windows disponible, que j'ai utilisée avec succès.
GuyBehindtheGuy

Je suis allé de cette façon. Mais la configuration m'a pris environ 4 heures. J'aurais dû savoir remplacer "192.168.0". à "192.168.196". (le sous-réseau) à travers tous les rc.conf et rc.firewall.
bohdan_trotsenko

5

Pour Linux ou OSX, vous pouvez utiliser ipfw.

Depuis Quora ( http://www.quora.com/What-is-the-best-tool-to-simulate-a-slow-internet-connection-on-a-Mac )

Utiliser essentiellement un pare-feu pour limiter toutes les données du réseau:

Définissez une règle qui utilise un canal pour rediriger tout le trafic depuis n'importe quelle adresse source vers n'importe quelle adresse de destination, exécutez la commande suivante (en tant que root ou en utilisant sudo):

$ ipfw add pipe 1 all from any to any

Pour configurer cette règle pour limiter la bande passante à 300 Kbit / s et imposer 200 ms de latence dans chaque sens:

$ ipfw pipe 1 config bw 300Kbit/s delay 200ms

Pour supprimer toutes les règles et récupérer votre connexion réseau d'origine:

$ ipfw flush


4

Si vous utilisez Apache, vous pouvez utiliser mod_bandwith.

Voir ici pour les paramètres de configuration.



2

Si vous souhaitez une solution matérielle, Netgear propose une série de commutateurs bon marché (environ 50 $) qui limitent la bande passante. Netgear Prosafe GS105E et les commutateurs similaires méritent d'être étudiés.


2

Vous pouvez également essayer WANem qui est un émulateur de réseau étendu open source. Vous pouvez télécharger l'image (ISO, CD live Knoppix) ou les appliances virtuelles VMWare.



1

Vous pouvez utiliser dummynet ofcourse, Il existe une extension de dummynet appelée KauNet . qui peut fournir un contrôle encore plus précis des conditions du réseau. Il peut supprimer / retarder / réorganiser des paquets spécifiques (de cette façon, vous pouvez effectuer une analyse plus approfondie de la suppression des paquets clés comme la négociation TCP pour voir comment vos pages Web les digèrent). Il fonctionne également dans le domaine temporel. Habituellement, la plupart des émulateurs sont réglés pour fonctionner dans le domaine des données. Dans le domaine temporel, vous pouvez spécifier à partir de quelle heure à quelle heure vous pouvez modifier les conditions du réseau.


0

Si vous devez simuler la qualité de la connexion réseau lors du développement pour Windows Phone, vous pouvez essayer un outil intégré à Visual Studio appelé Tableau de bord de simulation (plus de détails ici http://msdn.microsoft.com/en-us/library /windowsphone/develop/jj206952(v=vs.105).aspx ):

Vous pouvez utiliser le tableau de bord de simulation dans Visual Studio pour tester votre application pour ces problèmes de connexion et pour empêcher les utilisateurs de rencontrer des scénarios tels que les suivants:

  • La musique ou les vidéos haute résolution bégayent ou se figent lors de la diffusion, ou prennent beaucoup de temps à télécharger via une connexion à faible bande passante.
  • Les appels à un service Web échouent avec un délai d'attente.
  • L'application se bloque quand aucun réseau n'est disponible.
  • Le transfert de données ne reprend pas lorsque la connexion réseau est perdue puis restaurée.
  • La batterie de l'utilisateur est épuisée par une application de streaming qui utilise le réseau de manière inefficace.
  • Le mappage de l'itinéraire de l'utilisateur est interrompu dans une application de navigation.

...

Dans Visual Studio, dans le menu Outils , ouvrez le tableau de bord de simulation . Recherchez la section de simulation de réseau du tableau de bord et cochez la case Activer la simulation de réseau .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.