Тестирование производительности алгоритма Управления перегрузкой в FreeBSD

Я бы написал:

increment_date() {
    local current=$(grep -oP 'PROCESS DATE =\K.+' file)
    local next=$(date -d "$current + 1 day" +%F)
    sed -i "/PROCESS DATE =/s/$current/$next/" file
}

cat file
increment_date
cat file
increment_date
cat file
PROCESS DATE =2012-02-28
PROCESS DATE =2012-02-29
PROCESS DATE =2012-03-01

Это предполагает, что строка PROCESS DATE встречается в файле только один раз, и она находится в строке сама по себе.

1
21.04.2015, 16:55
2 ответа

Поскольку на этом форуме не было ответа на мой вопрос, я написал в группу рассылки freebsd-net с аналогичным вопросом и получил рекомендации использовать два инструмента IMUNES http://imunes.tel.fer.hr / и TEACUP http://caia.swin.edu.au/tools/teacup/

Я тестировал IMUNES в течение нескольких дней, но я все еще не тестировал TEACUP, поэтому я предоставлю краткое описание о нем.

IMUNES позволяет создать виртуальную сеть, в которой вы можете настроить все, от интерфейсов узлов до протоколов маршрутизации в маршрутизаторах, а также параметры канала, такие как скорость, коэффициент битовых ошибок, задержки и процент дублирования пакетов. Когда эксперимент начинается, каждый виртуализированный узел имеет свою собственную файловую систему, которая создается из файлов в папке / var / imunes / vroot / , что позволяет вам изменять настройки для всех устройств одновременно.

Есть некоторые вещи, которые поначалу не столь очевидны (по крайней мере, для меня):

  1. Не поддерживается в FreeBSD-10.1-RELEASE, но работает в FreeBSD-9.3-RELEASE
  2. При запуске эксперимента дважды -Щелкните узел, чтобы получить доступ к узлам терминала. Вы можете открывать столько окон, сколько захотите;
  3. Системные настройки, которые не установлены глобально, должны быть установлены индивидуально на каждом узле;
  4. Когда эксперимент завершен, все файлы и настройки создаются / редактируются в виртуальном узле уничтожаются , однако к файлам можно получить доступ во время эксперимента в папке / var / imunes / [i *****] , где создается папка для каждого виртуального узла.Вы, конечно, можете использовать команду find , чтобы найти файл, который вы ищете;
  5. Если вам нужно добавить программу к виртуальным узлам, вы должны использовать pkg_add_imunes [settings] [name] ;
  6. Хотя вы можете установить BER для ссылки, это не то же самое, что коэффициент потери пакетов. Чтобы установить коэффициент потери пакетов, загрузите модуль ядра dummynet с помощью команды kldload dummynet и используйте ipfw для настройки параметров связи между узлами.

Я обновлю список, если есть что добавить к нему.

1
27.01.2020, 23:50

@KarlisL Если вы пропустили это, IMUNES недавно добавил поддержку Linux http://imunes.net . Он использует Docker для узлов L3 (Quagga в маршрутизаторах) и Open vSwitch для узлов L2, поэтому в основном вы получаете «настоящие» машины Linux, связанные с «настоящими» коммутаторами. Однако есть некоторые проблемы с настройкой BER и т. Д. Через графический интерфейс, поэтому вы должны сделать это вручную внутри экземпляра узла.

0
27.01.2020, 23:50

Теги

Похожие вопросы