Est-il possible de provoquer une perte artificielle de packages réseau ou une latence?

J'essaie de reproduire certains problèmes sur une application déployée où le server et le client MSSQL fonctionnent dans deux machines distinctes. Je pense qu'il peut y avoir des problèmes de réseau entre les deux machines, alors j'aimerais essayer de reproduire ces conditions sur deux machines virtuelles Hyper-V (sur le même server virtuel). Bien sûr, le réseau de ces machines virtuelles est «local», donc c'est loin des conditions dans un environnement en direct.

Y at-il un programme que je peux exécuter sur une machine virtuelle qui dégradera les performances du réseau? Ou peut-être tout autre travail autour? Par exemple, une façon de reproduire les conditions peut être d'exécuter les machines virtuelles sur des servers Hyper-V distincts dans des locations géographiquement dispersés (de sorte que le trafic SQL dépasse VPN ou quelque chose) – mais c'est un peu long, je crois. Il doit y avoir un moyen plus simple.

6 Solutions collect form web for “Est-il possible de provoquer une perte artificielle de packages réseau ou une latence?”

Sur Linux, vous utiliserez netem, sur FreeBSD, vous utiliserez dummynet.

Aucune de ces solutions ne fonctionnerait sur une seule machine Windows utilisant Hyper-V. J'ai cherché, et je ne peux pas localiser d'émulateurs de réseau compatibles Windows Hyper-V.

Vous pouvez mettre deux machines virtuelles sur deux machines physiques différentes, avec une boîte Linux ou FreeBSD entre elles. Mais il ne semble pas qu'il y ait une solution qui va faire exactement ce que vous voulez sur un seul hôte VM.

Mon ami a configuré quelque chose en utilisant dummynet et FreeBSD dans ESX. Je sais que ce n'est pas Hyper-V, mais vous pourriez peut-être le modifier pour fonctionner. http://apocryph.org/2009/05/15/simulating-slow-wan-links-with-dummynet-and-vmware-esx/

Dummynet devrait travailler pour vous: http://info.iet.unipi.it/~luigi/dummynet/

Il installe un service sur la NIC, puis, à travers la command line, vous définissez vos parameters.

Je l'ai utilisé pour tester l'access au site Web sur un lien à haute latence ou à faible bande passante sur Windows XP, et ça marche très bien.

On dirait que tu as besoin de Netem

Vous pouvez insert une perte de packages, une latence, une gigue, etc.

S'il s'agit simplement de retarder les packages, sur Linux, vous pouvez simplement utiliser les disciplines de files d'attente tc et daisy-chain (p. Ex. HTB ):

[…] HTB comme enfant d'un HTB n'est PAS le même que la class dans une autre class dans le même HTB. C'est parce que lorsque la class dans HTB peut l'envoyer, elle enverra dès que l'équipement matériel pourra. Donc, le retard de la class de sous-limite n'est limité que par l'équipement et non par les ancêtres. Dans HTB sous cas HTB, le HTB externe simule de nouveaux équipements matériels avec toutes les conséquences (plus grand timeout)

Des pertes peuvent également être introduites avec iptables et le module random :

 # for randomly dropping 10% of incoming packets: iptables -A INPUT -m statistic --mode random --probability 0.1 -j DROP # and for dropping 10% of outgoing packets: iptables -A OUTPUT -m statistic --mode random --probability 0.1 -j DROP 

Une méthode supplémentaire est le Network Onulator Toolkit autonome (NEWT) qui, malgré son âge, est tout à fait capable et fonctionne pour les systèmes d'exploitation Windows x86 et x64.

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

En utilisant les templates XML inclus avec le programme d'installation, vous pouvez rapidement démarrer et exécuter sur la simulation de la latence, de la bande passante, de la gigue et d'autres variables de réseau.

J'ai testé et utilisé cette application sur toutes les versions de Windows depuis XP -> Windows 10.

entrez la description de l'image ici

  • Réseau privé entre deux machines virtuelles KVM
  • sauvegarder un server linux existant sur une machine virtuelle de virtualbox
  • Impossible de communiquer entre deux machines virtuelles sur la même machine physique en utilisant NAT IP Addressing
  • La modification de l'adresse MAC dans un file de configuration libvirt xml permet de briser la connectivité réseau pour l'invité
  • Accès au port 8000 sur ubuntu dans vmware fusion
  • Lecteur VMWare: hôte Ubuntu 10.04 sur Win 7 hôte - réseau ne fonctionne pas
  • Les systèmes d'exploitation hôte de 32 bits peuvent-ils répondre à des invités de 64 bits?
  • Sauvegarde des invités KVM lors de l'utilisation de files de disque qcow2
  • Acheter une licence Windows utilisée. Comment puis-je savoir si elles sont encore actives?
  • Comment exporter VMware ESXi 5 VM dans un file pour le restaurer plus tard?
  • Il n'existe actuellement aucune carte réseau avec optimization réseau disponible
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.