Точная стратегия для измерения производительности соединения точка-точка?


12

У меня есть требование предоставить точные средства для демонстрации производительности линии по двухточечной Ethernet-схеме 1Gb с плоским слоем2, на расстоянии около 100 миль, которая, по-видимому, проходит через несколько скачков на расстоянии.

Бизнес-требования должны будут продемонстрировать производительность с точностью не менее 8 мс. По каналу будет передаваться голосовой трафик и трафик данных, при этом SLA службы должен гарантировать пропускную способность 1000 МБ.

Каковы известные точные методы измерения производительности с учетом этих требований?
Мне известно о количестве доступных метрик, которые могли бы сформировать стратегию тестирования, но, имея в Google множество информации, она может оказаться ошеломляющей, и я не уверен, следует ли использовать такое программное обеспечение, как iPerth, каковы критерии для этого сценария и т. Д.?


Этот вопрос очень неясен. Что вы подразумеваете под «измерением производительности по этому типу соединения»? Как вы упомянули, существует ряд показателей производительности, которые вы можете измерить ... (например, задержка в сети, дрожание, пропускная способность, частота ошибок по битам). Вам необходимо уточнить, какие показатели нужно тестировать с человеком, который дал вам требование измерять производительность.
Майк Пеннингтон

1
Я думаю, что это правильный вопрос. Это не так, как будто есть 1000 способов выяснить, работает ли ссылка так, как должна. Есть набор метрик, которые дадут вам здоровье ссылки.
bigmstone

Майк - я думаю, что это достаточно ясно, хотя я и согласен с согласованными показателями. Я хотел получить ответы на некоторые вопросы, касающиеся их опыта в отношении того, какие стратегии они успешно использовали, и у них уже есть отличная информация, спасибо всем Рад редактировать, если вы хотите предложить что-то более краткое?
MattE

@ MattEarp, я говорю, что вы задаете вопрос, на который мы не можем ответить (самый точный способ измерить производительность) ... выполнив значительное сетевое тестирование в моей карьере, мы не знаем достаточно, чтобы действительно помочь, если вы скажем ... «Эта схема будет нести финансовый торговый трафик. Как я могу проверить производительность без потерь и измерить задержку с точностью до 1 мс», тогда нам есть над чем поработать. Основываясь на потребностях исходного запросчика и параметров SLA схемы, мы можем помочь построить стратегию тестирования ... но сейчас недостаточно информации. Пожалуйста, определите сценарий использования, метрики и требования к точности
Майк Пеннингтон,

@MikePennington - я отредактировал вопрос с пониманием того, что нужно измерять с точки зрения минимальной задержки, и, надеюсь, вы сможете лучше ответить.
MattE

Ответы:


8

Если вы пытаетесь проверить 1xGE No Drop Rate и измерить задержку цепи в течение 8 мс, я бы использовал nuttcp для проверки пропускной способности и iperf2 / mtr для проверки задержки.

Я бы сделал следующее ...

  1. Если возможно, найдите два настольных ПК Linux (ноутбуки иногда приемлемы, но у вас могут возникнуть проблемы с производительностью чипсета или шины на скоростях 1GE). Вы можете загрузиться с компакт-диска с инструментарием Performance Sonar , если вам не нужна постоянная установка Linux на этих компьютерах
  2. Выберите размеры пакета для вашего теста. Так как вам нужна голосовая поддержка на схеме, вы должны тестировать потоки с меньшими кадрами, такими как 128-байтовые кадры Ethernet. Если бы я выполнял тест, я бы выбрал кадры Ethernet на 128, 256, 768 и 1514 байт.
  3. Протестируйте пропускную способность Nutcp UDP по пропускной способности ваших компьютеров Linux, подключенных друг к другу, перед отправкой одного из них в 100 милях. Вы хотите убедиться, что вы можете измерять 1000 Мбит / с при разных размерах пакетов. Обязательно учитывайте межкадровый разрыв при расчете ожидаемой пропускной способности ... например, наилучшая возможная пропускная способность, которую вы можете ожидать в не тегированном GIG-канале при среднем размере кадра Ethernet 128 байт, составляет 864,9 Мбит / с.
  4. Используйте iperf2 или mtr для проверки задержки цепи ...
  5. Выберите тестовое окно. Я думаю, что лучше всего тестировать каналы непрерывно, по крайней мере, в течение дня ... предпочтительнее от двух дней до недели, если вам необходимо определить потенциальную переподписку в сети вашего оператора.
  6. Отправьте один из ПК на удаленный сайт, предварительно настроенный для IP-адресации, которая вам нужна по ссылке.

Разные мысли

Другие ответы предлагали использовать только iperf2 ; однако он не имеет параметров CLI для настройки размера пакета UDP. Он также демонстрирует слабую производительность на высоких скоростях под MS Windows.

Этот документ Metro Ethernet Forum, посвященный тестированию несущих сетей Ethernet , поможет в общих чертах понять некоторые из компромиссов, которые вы принимаете при тестировании цепей.


iperf фактически перешел на v3 на новом сайте - code.google.com/p/iperf - или вы намеренно ссылались на v2?
Пауска

Я тестировал с v3, но v2 кажется более стабильным в моем опыте
Майк Пеннингтон

Отличный пункт при тестировании спина к спине перед отправкой.
generalnetworkerror

6

Iperf может сделать эту работу. Просто убедитесь, что вы сначала тестируете свои устройства вплотную, чтобы знать их возможности.

Конечно, есть и более профессиональные инструменты.

Это хороший RFC для изучения правильной методологии: http://www.ietf.org/rfc/rfc2544.txt


6

Если у вас есть ПК на обоих концах, вы можете запустить xjperf , Qcheck из Ixia или другие инструменты. Вы можете получить разные результаты в зависимости от того, используете ли вы UDP или TCP и количество сеансов.

Для расстояния более 100 миль вы видите минимальный RTT 1,6 мс со скоростью света в волокне / меди. Таким образом, ваш RTT должен быть очень низким, может быть, только пару мс. Скажите, что у вас RTT 6 мс. С настройками размера окна по умолчанию в Windows вы можете получить пропускную способность всего около 85 Мбит / с. Вам понадобится размер окна не менее 768 Кбайт для отправки трафика на гигабайт.

Вы можете использовать Throughput Calculator TCP для выполнения собственных расчетов.

У Ixia есть более дорогие инструменты, но они стоят денег, которых нет у вышеупомянутых инструментов.


+1 за xjperf / iperf. Чрезвычайно удобно в этих ситуациях.
Пауска


2

Так как вы хотите измерить схему уровня 2, я бы бесстыдно выдвинул какое-то бесплатное программное обеспечение, которое я писал. Это все еще в бета-версии, но делает именно то, что вы хотите, основываясь на информации в вашем вопросе.

В отличие от nuttcp, iPerf, jPerf и др., Etherate работает непосредственно над уровнем 2, разработанным специально для тестирования Ethernet. Как и все остальные, ноутбук на каждом - это все, что требуется, и мой ноутбук Intel i3 может с легкостью использовать канал.

Поскольку он находится на стадии бета-тестирования, более сложные функции, такие как тестирование MPLS, еще не готовы, но реализованы тестирование пропускной способности, задержки и MTU (все непосредственно на уровне Ethernet 2).

https://github.com/jwbensley/etherate


1

Чтобы получить полный «профиль здоровья» ссылки, вам необходимо учитывать несколько различных показателей.

  • Задержка
  • дрожание
  • пропускная способность
  • потеря

Лучший способ точно измерить эти показатели - использовать устройство, предназначенное для тестирования. Exfo, JDSU и Fluke - несколько крупных компаний, которые производят подобные устройства.

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

iperf будет измерять пропускную способность, но больше не будет измерять. Пинг будет измерять время задержки, но не дрожание. Также эхо ICMP действительно очень точно с точностью до 1 мс. Если вы пытаетесь получить фактическое измерение задержки, вам нужно решить, достаточно ли 1 мс детализации для вас / ваших приложений.


1

Iperf и MTR, чтобы сделать конкретный тест. И курить, чтобы иметь простую историю производительности соединения, используя зонд fping.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.