Подтвердить что ты не робот

Как смоделировать среду с низкой пропускной способностью и высокой задержкой?

Мне нужно смоделировать соединение с низкой пропускной способностью и высокой задержкой для сервера, чтобы эмулировать условия VPN на удаленном сайте. Полоса пропускания и латентность должны быть улучшены, поэтому я могу найти наилучшую комбинацию для запуска нашего программного пакета.

4b9b3361

Ответ 1

Для macOS существует Network Link Conditioner, который имитирует настраиваемые полосы пропускания, задержки и потери пакетов. Он содержится в Hardware IO Tools для Xcode. Screenshot

Ответ 2

Отличная запись о создании машины FreeBSD для этого - возьмите свой стандартный старый рабочий стол, подбросьте в дополнительный сетевой адаптер и создайте.

Запись доступна в http://www.freebsd.org/doc/en/articles/filtering-bridges/article.html.

На шаге 5 приведенных выше инструкций вы включаете брандмауэр. Для простого моделирования другого IP-соединения вы можете (например) сделать следующее:

Создайте файл /etc/rc.firewall.56k, который содержит следующее:

ipfw add pipe 1 ip from any to any out
ipfw add pipe 2 ip from any to any in    
ipfw pipe 1 config bw 56Kbit/s   
ipfw pipe 2 config bw 56Kbit/s

И измените /etc/rc.conf... замените строку

firewall_type="open"

с

firewall_type="/etc/rc.firewall.56k"

перезагрузитесь, и у вас есть мост 56K!

Если вы работаете с Macintosh, эта ОС по умолчанию встроена в ipfw. Я сделал то же самое, маршрутизируя сетевой трафик через аэропорт и через ethernet, настраивая его так, чтобы все, что прибывало в аэропорт, имело те же характеристики, что и я, я пытаюсь подражать. Вы можете вызывать команды ipfw непосредственно с терминала и получать одинаковые эффекты.

Ответ 3

В прошлом я использовал мост, используя функциональность Linux Netem (Network Emulation). Он очень настраиваемый, что позволяет вводить задержки (первый пример для WAN), потерю пакетов, повреждение и т.д.

EDIT: для управления настройками также существует веб-интерфейс MasterShaper.

Я отмечаю, что Netem очень хорошо работал для моих приложений, но я также несколько раз использовал WANem. Предоставленные загрузочные ISO (и изображения виртуального устройства) сделали его весьма удобным.

Ответ 4

Чарльз

Я наткнулся на Charles прокси-приложение для веб-отладки и имел большой успех в эмуляции латентности сети. Он работает на Windows, Mac и Linux.

Charles on Mac

Пропускная способность дроссельной заслонки/симулятор пропускной способности

Чарльз может использоваться для настройки полосы пропускания и латентности вашего интернет-соединения. Это позволяет вам моделировать условия модема с помощью высокоскоростного соединения.

Полоса пропускания может быть ограничена любыми произвольными байтами в секунду. Это позволяет моделировать любую скорость соединения.

Задержка также может быть установлена ​​на любое произвольное количество миллисекунд. Задержка задержки отображает задержку, наблюдаемую при более медленных соединениях, то есть задержку между запросом и запросом, полученным с другого конца.

DUMMYNET

Вы также можете использовать vmware для запуска BSD или Linux и попробовать эту статью (DummyNet) или этот.

Ответ 5

Попробуйте WANem

WANem - это эмулятор глобальной сети, предназначенный для обеспечения реального опыта работы в глобальной сети/Интернете при разработке/тестировании приложений в локальной сети.

Ответ 6

В Windows вы можете использовать это приложение: http://www.softperfect.com/products/connectionemulator/

WAN Connection Emulator для Windows 2000, XP, 2003, Vista, Seven и 2008.

Возможно, единственный доступный для Windows.

Ответ 7

Я нашел эту небольшую опрятную программу clumsy. Это своего рода альфа-статус, но, похоже, он отлично работает для меня, и он с открытым исходным кодом.

Изменить: другие заметили, что вы не можете ограничить пропускную способность неуклюжим, и это правда. Вы можете добавить только Латентность и пару других сетевых ошибок. Это будет дисквалифицировать этот ответ в качестве действительного ответа на вопрос, однако, поскольку у меня было хорошее использование для него, когда я хотел имитировать плохую сеть, поэтому я оставлю ее здесь, если у нее есть 0 голосов или что-то подобное.

Ответ 8

Я бы попытался использовать netem в linux. С его помощью вы можете имитировать дополнительную задержку, повреждение, потерю пакетов и дублирование. Он работает даже на устройстве loopback.

Ответ 9

Другая клиентская программа (только для Windows) - NetLimiter - http://www.netlimiter.com

Ответ 10

Я использую NetBalancer на своей машине Windows.

http://seriousbit.com/netbalancer/

Обновления на 2017-10-07. Последняя бесплатная версия NetBalancer - это 9.2.7. Программа имеет жестко установленную дату истечения срока действия. Перед запуском службы NetBalancer вам необходимо вернуть системные часы до 2016-10-18. Подробнее см. в этой статье.

Ответ 12

Я думаю, tc мог бы выполнить эту работу на платформе на базе UNIX.

tc используется для настройки управления трафиком в ядре Linux

http://lartc.org/manpages/tc.txt

Ответ 13

Чтобы имитировать соединение с низкой пропускной способностью для тестирования веб-сайтов, используйте Google Chrome, вы можете перейти на вкладку "Сеть" в "Инструменты F12" и выбрать уровень полосы пропускания для имитации или создания пользовательской пропускной способности для имитации.

Ответ 15

Если вы работаете в Linux, я нахожу Traffic Control, чтобы помочь вам в этом.

Ответ 16

Существует продукт http://www.shunra.com, который называется VE Desktop, который может использоваться для имитации различных условий сети. Это позволяет вам настроить латентность, пропускную способность и пакетный сбой с помощью простого пользовательского интерфейса. Только оговорка - это не бесплатно. Надеюсь, это поможет.

Ответ 17

Я искал простой в использовании инструмент для этого типа тестирования какое-то время. Я натолкнулся на это на днях: Симулятор задержки сети

Если вы используете Windows, вы должны проверить это. Было очень легко настроить и начать работу, и, похоже, она работает очень хорошо. Он позволяет определять пропускную способность, задержку и потерю пакетов в каждом направлении. Другим действительно приятным является то, что вы можете определить "Условия соответствия потоку", чтобы он влиял только на трафик, который вы хотите. О да, и это бесплатно.

Ответ 18

Я думаю, что нашел то, что мне нужно. возможно, вы можете использовать charles proxy или slowy. надеюсь, что это поможет.

Ответ 19

Мы использовали это программное обеспечение один раз внутри виртуальной машины, чтобы провести некоторое тестирование масштаба полосы:

http://www.softinengines.com/index.php?section=download&langu=en

Это не бесплатно, но имеет 30-дневную пробную версию.

Ответ 20

Взгляните на сетевой эмулятор NE-ONE, который позволяет вам настроить пропускную способность, задержку, потерю пакетов, переупорядочение пакетов, дублирование пакетов, фрагментацию пакетов, перегрузку сети и многие другие нарушения, чтобы вы могли создавать сетевые условия в реальном мире в лаборатории. Разные нарушения могут быть настроены для восходящей и нисходящей линии связи, поэтому у вас может быть действительно хорошая восходящая линия связи, но очень плохая работа в нисходящем канале, отлично подходит для того, чтобы увидеть, как приложение обрабатывает TCP-очередность, потому что они не возвращаются своевременно и общая латентность поэтому увеличивается!

Вот обзорное видео здесь http://www.youtube.com/watch?v=DwtqlE7LcrQ, специально предназначенное для разработчиков игр, но оно показывает, о чем это. NE-ONE настроен с использованием веб-браузера, поэтому очень легко установить и настроить - вам не нужно быть сетевым гуру:-)

Там версия аппаратного обеспечения - http://www.itrinegy.com/index.php/products/network-emulators/ne-one - или вы можете загрузить версию Virtual Appliance (программное обеспечение), которая работает под сервером VMware ESXi. Виртуальное устройство можно загрузить с VMware Solution Exchange - solutionexchange.vmware.com/store/products/ne-one-flex-network-emulator

Ответ 21

LANforge ICE является сетевым эмулятором с акцентом на виртуальную маршрутизацию, джиттер, коррупцию и задержку. Проекты использовали его для эмуляции спутниковой связи, кабельных и модемных соединений и высокоскоростной (10 Гбит) эмуляции. Вы можете использовать графический интерфейс Java для создания своих виртуальных сетей и создания очень подробных отчетов о потоке трафика. Продукты LANforge также обеспечивают функции генерации трафика: фрейм, ethernet, слой-3 и поток с отслеживанием состояния (NFS, http). Недавние выпуски для LANforge также имеют сложные функции тестирования WiFi.