SlideShare a Scribd company logo
1 of 21
Download to read offline
Использование FPGA для генерации
и анализа Ethernet-трафика на
высоких скоростях (10G, 40G, 100G)
Шевчук Иван
НТЦ Метротек
Шевчук Иван, НТЦ Метротек, 2015
План
● Генератор и анализатор трафика: краткий
обзор требований
● Проблемы программной реализации
● Преимущества использования FPGA
● Наш опыт: комплекс Metrotek B100
2
Шевчук Иван, НТЦ Метротек, 2015
Параметры генерации трафика
● Заголовок
● Полезные данные
● Скорость генерации (создаваемая
нагрузка)
3
Шевчук Иван, НТЦ Метротек, 2015
Профили нагрузки тестов
4
Шевчук Иван, НТЦ Метротек, 2015
Как регулируется нагрузка?
Preamble
MAC
Destination
MAC
Source
Type/
Length
Data
Payload
FCS IFG
● Расстояние от одного до другого пакета определяется IFG
● Регулируя IFG, можно создавать различные профили трафика
● “Точность” выставления IFG и определяет качество генерации
трафика
● Для обеспечения максимальной нагрузки требуется
выставление минимального IFG (12 байт)
5
Шевчук Иван, НТЦ Метротек, 2015
Где регулируется нагрузка?
6
Шевчук Иван, НТЦ Метротек, 2015
Что делает анализатор трафика?
● Просматривает данные на приёме
○ Анализирует целостность и корректность
доставки
● Фиксирует время приёма пакета
○ Чем точнее будет вычислено время приёма, тем
лучше. (Для измерения задержки и джиттера)
● Увеличивает различные счётчики
(принятые пакеты/байты, и.т.д.)
7
Шевчук Иван, НТЦ Метротек, 2015
Программная реализация
8
Шевчук Иван, НТЦ Метротек, 2015
Программная реализация
● При отправке пакета данные проходят
через различные слои операционной
системы:
○ IFG определятся на самом низком уровне:
итоговая точность выставления может оказаться
неприемлемой
9
Шевчук Иван, НТЦ Метротек, 2015
Программная реализация
● Архитектура современных компьютеров
не позволяет прокачивать через систему
значительный объем трафика
(необходимо обработать до 200 Гбит/c в
случае 100G)
10
Шевчук Иван, НТЦ Метротек, 2015
Решение проблемы
● Отказ от использования операционной
системы и традиционных процессоров
● Необходимо максимально приблизиться к
физическому уровню, используя
интегральные схемы, аналогичные тем,
что применяются в сетевых картах
11
Шевчук Иван, НТЦ Метротек, 2015
Интегральные схемы
● ASIC
○ Дешевые в большой партии
○ НЕ перепрограммируемые
■ Могут быть настроены или
“заалгоритмизированы”
● FPGA
○ Перепрограммируемые на уровне примитивных
блоков (триггеры, счетчики, логические элементы)
12
Шевчук Иван, НТЦ Метротек, 2015
Особенности использования FPGA
● Низкоуровневые оптимизации для конкретной
задачи
● Возможность реконфигурации - ошибки не
страшны!
● Многие блоки (“части” схемы) уже готовы
● Интуитивный параллелизм операций
13
Шевчук Иван, НТЦ Метротек, 2015
Особенности использования FPGA
● Управление данными с точностью до такта
● Свободный выбор необходимой архитектуры
(например, ширина используемого “слова”)
● Отсутствие дебага в виде привычного printf, gdb,
valgrind - значительное усложнение разработки
● Другой подход к разработке: необходимо
использовать специальные симуляторы
14
Шевчук Иван, НТЦ Метротек, 2015
Генератор на FPGA
● Рассчитывается требуемый IFG в виде
количества тактов
● Происходит передача пакета
● Генератор ждет необходимое количество
тактов
15
Шевчук Иван, НТЦ Метротек, 2015
Анализатор на FPGA
● Время приема пакета проставляется с
точностью десятков наносекунд
максимально близко к PHY
● Пакет хранится только во внутренней
памяти чипа: не используется внешняя
память (типа DDR)
● Все счётчики тоже хранятся внутри чипа
16
Шевчук Иван, НТЦ Метротек, 2015
Разрядность имеет значение
● Чаще всего обработка происходит не по
байтам, а словами:
○ 10G - 8 байт ( 64 бит )
○ 100G - 64 байта ( 512 бит )
● Это вытекает из-за ограничений
интегральных схем по максимальной
частоте
17
Шевчук Иван, НТЦ Метротек, 2015
Как мы применили FPGA?
18
Шевчук Иван, НТЦ Метротек, 2015
Metrotek B100
19
Шевчук Иван, НТЦ Метротек, 2015
Возможности
● Генерация и анализ тестового трафика на
скоростях 10G/40G/100G на
максимальной нагрузке
● Тесты:
○ RFC2544
○ Y.1564
○ BERT
20
Шевчук Иван, НТЦ Метротек, 2015
Спасибо за внимание!
Вопросы?
support@metrotek.spb.ru
21

More Related Content

Similar to Test traffic 100G generator and analyzer

Ethernet on fpga
Ethernet on fpgaEthernet on fpga
Ethernet on fpgaeucariot
 
Linkmeup v076(2019-06).3
Linkmeup v076(2019-06).3Linkmeup v076(2019-06).3
Linkmeup v076(2019-06).3eucariot
 
Параллельное программирование на современных видеокартах
Параллельное программирование на современных видеокартахПараллельное программирование на современных видеокартах
Параллельное программирование на современных видеокартахAlex Tutubalin
 
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...Программно-аппаратная разработка с использованием FPGA на примере поддержки п...
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...CEE-SEC(R)
 
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктуры
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктурыГидродинамическое моделирование: возможности оптимизации ИТ-инфраструктуры
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктурыVsevolod Shabad
 
Measuring ethernet traffic parameters
Measuring ethernet traffic parametersMeasuring ethernet traffic parameters
Measuring ethernet traffic parametersPavel Kurochkin
 
NG automate yourself
NG automate yourselfNG automate yourself
NG automate yourselfkulibin
 
измерительное оборудование Ethernet
измерительное оборудование Ethernetизмерительное оборудование Ethernet
измерительное оборудование Etherneteucariot
 
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...Cisco Russia
 
решения по построению сетей передачи данных фнс полигон 2015
решения по построению сетей передачи данных фнс   полигон 2015решения по построению сетей передачи данных фнс   полигон 2015
решения по построению сетей передачи данных фнс полигон 2015eucariot
 
Метрооблако
МетрооблакоМетрооблако
МетрооблакоIgor Baklanov
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)Ontico
 
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиАндрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиIBS
 
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Ontico
 
Hpc 2.26.03.2013.
Hpc 2.26.03.2013.Hpc 2.26.03.2013.
Hpc 2.26.03.2013.Boris Kizko
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on itPavel Kurochkin
 
Методики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиМетодики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиCisco Russia
 
20111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture320111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture3Computer Science Club
 

Similar to Test traffic 100G generator and analyzer (20)

Ethernet on fpga
Ethernet on fpgaEthernet on fpga
Ethernet on fpga
 
StackLight (aka LMA)
StackLight (aka LMA)StackLight (aka LMA)
StackLight (aka LMA)
 
Linkmeup v076(2019-06).3
Linkmeup v076(2019-06).3Linkmeup v076(2019-06).3
Linkmeup v076(2019-06).3
 
Параллельное программирование на современных видеокартах
Параллельное программирование на современных видеокартахПараллельное программирование на современных видеокартах
Параллельное программирование на современных видеокартах
 
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...Программно-аппаратная разработка с использованием FPGA на примере поддержки п...
Программно-аппаратная разработка с использованием FPGA на примере поддержки п...
 
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктуры
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктурыГидродинамическое моделирование: возможности оптимизации ИТ-инфраструктуры
Гидродинамическое моделирование: возможности оптимизации ИТ-инфраструктуры
 
Measuring ethernet traffic parameters
Measuring ethernet traffic parametersMeasuring ethernet traffic parameters
Measuring ethernet traffic parameters
 
NG automate yourself
NG automate yourselfNG automate yourself
NG automate yourself
 
измерительное оборудование Ethernet
измерительное оборудование Ethernetизмерительное оборудование Ethernet
измерительное оборудование Ethernet
 
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...
Планирование и оптимизация сети оператора связи IP/MPLS с Cisco WAN Orchestra...
 
решения по построению сетей передачи данных фнс полигон 2015
решения по построению сетей передачи данных фнс   полигон 2015решения по построению сетей передачи данных фнс   полигон 2015
решения по построению сетей передачи данных фнс полигон 2015
 
Метрооблако
МетрооблакоМетрооблако
Метрооблако
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
 
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиАндрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
 
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
 
Hpc 2.26.03.2013.
Hpc 2.26.03.2013.Hpc 2.26.03.2013.
Hpc 2.26.03.2013.
 
Sama5d3: how to run linux on it
Sama5d3: how to run linux on itSama5d3: how to run linux on it
Sama5d3: how to run linux on it
 
3
33
3
 
Методики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сетиМетодики и инструменты для самостоятельного решения проблем в сети
Методики и инструменты для самостоятельного решения проблем в сети
 
20111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture320111002 information retrieval raskovalov_lecture3
20111002 information retrieval raskovalov_lecture3
 

Test traffic 100G generator and analyzer

  • 1. Использование FPGA для генерации и анализа Ethernet-трафика на высоких скоростях (10G, 40G, 100G) Шевчук Иван НТЦ Метротек
  • 2. Шевчук Иван, НТЦ Метротек, 2015 План ● Генератор и анализатор трафика: краткий обзор требований ● Проблемы программной реализации ● Преимущества использования FPGA ● Наш опыт: комплекс Metrotek B100 2
  • 3. Шевчук Иван, НТЦ Метротек, 2015 Параметры генерации трафика ● Заголовок ● Полезные данные ● Скорость генерации (создаваемая нагрузка) 3
  • 4. Шевчук Иван, НТЦ Метротек, 2015 Профили нагрузки тестов 4
  • 5. Шевчук Иван, НТЦ Метротек, 2015 Как регулируется нагрузка? Preamble MAC Destination MAC Source Type/ Length Data Payload FCS IFG ● Расстояние от одного до другого пакета определяется IFG ● Регулируя IFG, можно создавать различные профили трафика ● “Точность” выставления IFG и определяет качество генерации трафика ● Для обеспечения максимальной нагрузки требуется выставление минимального IFG (12 байт) 5
  • 6. Шевчук Иван, НТЦ Метротек, 2015 Где регулируется нагрузка? 6
  • 7. Шевчук Иван, НТЦ Метротек, 2015 Что делает анализатор трафика? ● Просматривает данные на приёме ○ Анализирует целостность и корректность доставки ● Фиксирует время приёма пакета ○ Чем точнее будет вычислено время приёма, тем лучше. (Для измерения задержки и джиттера) ● Увеличивает различные счётчики (принятые пакеты/байты, и.т.д.) 7
  • 8. Шевчук Иван, НТЦ Метротек, 2015 Программная реализация 8
  • 9. Шевчук Иван, НТЦ Метротек, 2015 Программная реализация ● При отправке пакета данные проходят через различные слои операционной системы: ○ IFG определятся на самом низком уровне: итоговая точность выставления может оказаться неприемлемой 9
  • 10. Шевчук Иван, НТЦ Метротек, 2015 Программная реализация ● Архитектура современных компьютеров не позволяет прокачивать через систему значительный объем трафика (необходимо обработать до 200 Гбит/c в случае 100G) 10
  • 11. Шевчук Иван, НТЦ Метротек, 2015 Решение проблемы ● Отказ от использования операционной системы и традиционных процессоров ● Необходимо максимально приблизиться к физическому уровню, используя интегральные схемы, аналогичные тем, что применяются в сетевых картах 11
  • 12. Шевчук Иван, НТЦ Метротек, 2015 Интегральные схемы ● ASIC ○ Дешевые в большой партии ○ НЕ перепрограммируемые ■ Могут быть настроены или “заалгоритмизированы” ● FPGA ○ Перепрограммируемые на уровне примитивных блоков (триггеры, счетчики, логические элементы) 12
  • 13. Шевчук Иван, НТЦ Метротек, 2015 Особенности использования FPGA ● Низкоуровневые оптимизации для конкретной задачи ● Возможность реконфигурации - ошибки не страшны! ● Многие блоки (“части” схемы) уже готовы ● Интуитивный параллелизм операций 13
  • 14. Шевчук Иван, НТЦ Метротек, 2015 Особенности использования FPGA ● Управление данными с точностью до такта ● Свободный выбор необходимой архитектуры (например, ширина используемого “слова”) ● Отсутствие дебага в виде привычного printf, gdb, valgrind - значительное усложнение разработки ● Другой подход к разработке: необходимо использовать специальные симуляторы 14
  • 15. Шевчук Иван, НТЦ Метротек, 2015 Генератор на FPGA ● Рассчитывается требуемый IFG в виде количества тактов ● Происходит передача пакета ● Генератор ждет необходимое количество тактов 15
  • 16. Шевчук Иван, НТЦ Метротек, 2015 Анализатор на FPGA ● Время приема пакета проставляется с точностью десятков наносекунд максимально близко к PHY ● Пакет хранится только во внутренней памяти чипа: не используется внешняя память (типа DDR) ● Все счётчики тоже хранятся внутри чипа 16
  • 17. Шевчук Иван, НТЦ Метротек, 2015 Разрядность имеет значение ● Чаще всего обработка происходит не по байтам, а словами: ○ 10G - 8 байт ( 64 бит ) ○ 100G - 64 байта ( 512 бит ) ● Это вытекает из-за ограничений интегральных схем по максимальной частоте 17
  • 18. Шевчук Иван, НТЦ Метротек, 2015 Как мы применили FPGA? 18
  • 19. Шевчук Иван, НТЦ Метротек, 2015 Metrotek B100 19
  • 20. Шевчук Иван, НТЦ Метротек, 2015 Возможности ● Генерация и анализ тестового трафика на скоростях 10G/40G/100G на максимальной нагрузке ● Тесты: ○ RFC2544 ○ Y.1564 ○ BERT 20
  • 21. Шевчук Иван, НТЦ Метротек, 2015 Спасибо за внимание! Вопросы? support@metrotek.spb.ru 21