31
НТЦ Метротек, 2015 Курочкин Павел Разработка измерительных устройств измеряем характеристики Ethernet 1

Measuring ethernet traffic parameters

Embed Size (px)

Citation preview

Page 1: Measuring ethernet traffic parameters

НТЦ Метротек, 2015 Курочкин Павел

Разработка измерительных устройств

измеряем характеристики Ethernet

1

Page 2: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

План

● классификация измерений● первичные и производные параметры ● архитектура оборудования● измерение первичных параметров на

аппаратном уровне● 10M/100М/1G/10G/100G - что меняется?

2

Page 3: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

По назначению

● паспортизация, SLA● troubleshooting● ввод в эксплуатацию, Turn Up Testing● демаркация● мониторинг

3

Page 4: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

По времени выполнения

● Краткосрочные/Долгосрочные - подключился, измерил, отключился

● Периодические - подключился, периодически измеряем

● Мониторинг - постоянные 365/7/24

4

Page 5: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

По топологии

● Двусторонние измерения

● Односторонние измерения

5

Измеритель Шлейф

Измеритель

Сеть

Шлейф/Измеритель

ТрафикУправление Сеть

Page 6: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Топология мониторинга

6

24/7

24/7

Page 7: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

По уровням

● L1 - BERT, Рефлектометрия, skew, комм. пар● L2 - RFC2544, OAM, Шлейф● IP/UDP - RFC2544● UDP - Y.1564, TWAMP, OWAMP● UDP/TCP - iperf● Application layer - RTP/RTCP, etc...

Ну и куда же без ping и traceroute?

7

Page 8: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

L1, Физика

● медная рефлектометрия: расстояние до обрыва, замыкания

● оптическая рефлектометрия: обрывы, сварки, соединения, потери мощности

● BERT (bit error rate test)● skew - временная дистанция между lane’ами или

витыми парами● коммутация lane’ов и витых пар

8

Page 9: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

L2: MAC

● RFC2544 - нагрузочное тестирование● OAM - управляемый шлейф для тестирования● BERT - ПСП упаковывается в Ethernet-фрейм

9

● Коммутаторы отбрасывают битые пакеты

● Далеко не все коммутаторы выдерживают пиковые нагрузки

● Есть оборудование, которое имеет L2 стык, а за ним идёт другая среда (РРЛС, TDM)

Page 10: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

L3/L4 - IP/UDP

● RFC2544 - нагрузочное тестирование● Y.1564 - тестирование сервисов на SLA● BERT - ПСП упаковывается в IP/UDP payload

● TWAMP/OWAMP - определяет формат управления и тестового трафика

10

Page 11: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Шлейф, он же loopback

● “отражает” трафик● меняет поля местами● ведёт статистику● может измерять задержку (OWAMP)

● работает в паре с тестером● может дифференцировать трафик● управляется, как правило, дистанционно

11

Page 12: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Тестовые пакеты

● Со специальной сигнатурой● С заданным портом

● С псевдо-случайным содержимым● C фиксированным содержимым

● Фиксированного размера● Случайного размера

12

Page 13: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Нагрузка

● равномерная● нарастающая● burst-ная

13

Page 14: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Информационная скоростьinf_rate = line_rate * (L2_frame_size - overhead_size ) / ( L2_frame_size + IFG ) (1)

IFG = 20 Байт

14

Уровень overhead_size

L2 0 байт

L3 14 байт

L4 14 + 20 байт

Page 15: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как работает BERT?

15

Генератор ПСП

канал Приёмник ПСП

...01101010100... ...01101110100...

+

+

=

Page 16: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как работает RFC2544

● Throughput○ ищет ту нагрузку, на которой не теряются пакеты

● Latency○ измеряет задержку по кадрам выборочно

● Frame Loss○ промеряет зависимость потерь от нагрузки

● Back-To-Back○ измеряет длительность работы при заданной

нагрузке

16

Page 17: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как работает Y.1564

● Проверка конфигурации○ проверяет корректность настройки сервисов

● Тест производительности, одновременно для всех сервисов:○ измеряет гарантированную проп. способность○ измеряет, на сколько она может быть превышена○ задержку○ джиттер

17

Page 18: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Y.1564 vs RFC2544: Fight!

18

Y.1564 RFC2544

Измерение нескольких параметров

Параллельно Последовательно

Длительность Меньше Больше

Вероятность ошибки при настройке

Исключается тестом конфигурации

не исключена

Классификация теста SLA Benchmarking

Джиттер да нет

Задержка да, по всем пакетам! да, по выборочным пакетам

Пропускная способность по факту по отсутствию потерь

Page 19: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

ХВАТИТ ТЕОРИИ!

19

Page 20: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

На чём “держатся” измерения?

● Генерация пакетов с заданной нагрузкой● Приём и подсчёт пакетов● Задержка● Джиттер● Битовые ошибки

20

Это первичные параметры!

Page 21: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Что влияет на точность?

● Буферизация ○ создаётся burst’ность, увеличивается задержка

● Часы○ увеличивается задержка, джиттер

● Скорость обработки○ могут быть потери, burst’ность, задержка

● scheduling ○ может быть неточная нагрузка

21

Page 22: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Архитектура

22

CPU/MCU FPGA Transceiver PHY Cable

third-partythird-partyIntellectual property

Intellectual Property,Open Source

Page 23: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Что уже готово, а что нужно сделать?

● “из коробки” нам достаются:○ трансивер○ трансформаторы○ SERDES

● Всё остальное ручками:○ MAC-контроллер○ Генератор○ Анализатор○ Иногда PTP○ плюс всё железо (PCB, корпус, etc…)

23

MAC

Трансивер

Генератор Анализатор

PTP

PTP

Page 24: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как измеряется нагрузка

24

Генераторпакета

size = x

Счётчик

x + IFG

● Вычисляется IFG по формуле 1 (см. 14 слайд)● Планировщик считает байты

MAC

● Каждый x+IFG байт генератору даётся строб “огонь!”● Пакет уходит в мак-контроллер и далее - в среду и сеть

Метод даёт абсолютную точность! Собственный джиттер минимален!

Page 25: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как измеряется 2-way задержка● Тактовый генератор отсчитывает время● “снимаются” показания и попадают в пакет● На приёме достаются из пакета и сравниваются с

показаниями

25

Генераторпакета

MACСеть

Приёмникпакета

Page 26: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как измеряется 1-way задержка● нужна точная синхронизация времени (PTP/NTP)● PTP: высокие требования к сети и к измерительному оборудованию

26

Генераторпакета MAC Приёмник

пакетаMAC

PTP Master

Page 27: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Как измеряется джиттер● относительная вариация задержки = d(i) - d(i-1)● абсолютная вариация задержки = d(i) - d(0)● алгоритм не требует синхронизации времени!

27

Должно быть

T = const

real lifeT = variable

t

t

Page 28: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Уточняем архитектуру

28

CPU/MCU FPGA Transceiver PHY Cable

third-partythird-partyIntellectual property

Intellectual Property,Open Source

рефлектометрия,skew, пары

линк, синхронизация,auto-negotiation

Первичные параметры,передача и приём пакетов

RFC2544Y.1564BERT

UI/GUI/CLI

Page 29: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Разные скорости (10M-100G)

Меняется:● тактовая частота● время на обработку ● разрядность

Неизменно:● точность нагрузки

29

Page 30: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Таблица для разных linerate

30

10M 100M 1G 10G 100G

Тактовая частота(внутри FPGA)

125 МГц 125 МГц 125 МГц 156.25 МГц 315 МГц

Разрядность(FPGA)

8 бит 8 бит 8 бит 64 бит 512 бит

Тактовая частота(трансивер)

2.5 МГц 25 МГц 125 МГц 4 x 3.125 ГГц

10 x 10.3125 ГГц

Время прихода пакета, минимум

67 мкс 6.72 мкс 672 нс 67.2 нс 6.72 нс

Page 31: Measuring ethernet traffic parameters

Курочкин Павел, НТЦ Метротек

Ссылки● http://wiki.metrotek.spb.ru/wiki/BERT_и_пакетные_сети

● http://metrotek.spb.ru/y1564.html -- сравнение Y.1564 и RFC2544

● https://www.ietf.org/rfc/rfc2544.txt -- RFC2544 в оригинале

● https://www.itu.int/rec/T-REC-Y.1564/en -- рекомендация Y.1564

31