2016-07-11 7 views
2

Я пишу сценарий для имитации плохих сетевых подключений для устройства Android с использованием Busybox. В Bash я использую tc и netem для имитации потери пакетов, особых латентностей и т. Д., Но они недоступны в Busybox. Я знаю, что у Busybox есть iptables, но он не предлагает столько функциональности, как netem. У меня есть несколько вопросов:Имитация плохих сетевых подключений в Busybox

  1. Как вы предлагаете моделировать плохие сетевые подключения в Busybox? Я провел немало исследований и не нашел никого, кто пытался тестировать медленные соединения с устройством с Busybox.
  2. Есть ли способ скомпилировать netem для Busybox, и не могли бы вы указать мне в правильном направлении, чтобы начать с этого, если это возможно?
  3. Есть ли способ имитировать определенные задержки, потерю пакетов, повреждение и дублирование с помощью iptables, как это возможно с netem?

Спасибо.

+0

Этот вопрос не имеет ничего общего с bash –

+0

Я пытаюсь найти эквивалентную функцию 'netem' для использования в Busybox, которая доступна в bash. Сценарий, который я пишу, находится в bash, и я хотел бы переместить его на другое устройство –

+0

, чтобы удалить тег bash, чтобы удовлетворить пуристов ;-). Вы прочитали документ BusyBox? Что вам нужно (в увеличенной картинке) - добавить 'tc' и/или' netem' в качестве приложения BusyBox. Неспецифические инструкции здесь, но кажутся выполнимыми: https://busybox.net/FAQ.html#adding. Я также нашел эту страницу хорошим обзором того, как построены дистрибутивы BusyBox: https://busybox.net/downloads/BusyBox.html. Удачи. – shellter

ответ

2

tc (и другие сетевые утилиты) busybox/networking.

Проверить https://github.com/mozilla-b2g/busybox/blob/master/networking/tc.c

Это не ясно сформировать свой вопрос, если вы делаете это на андроид устройстве или на другом устройстве. В любом случае вам может потребоваться перекомпилировать busybox для вашей цели, если tc не включен.