Upload
pavel-kurochkin
View
39
Download
3
Embed Size (px)
Citation preview
НТЦ Метротек, 2015 Курочкин Павел
Разработка измерительных устройств
измеряем характеристики Ethernet
1
Курочкин Павел, НТЦ Метротек
План
● классификация измерений● первичные и производные параметры ● архитектура оборудования● измерение первичных параметров на
аппаратном уровне● 10M/100М/1G/10G/100G - что меняется?
2
Курочкин Павел, НТЦ Метротек
По назначению
● паспортизация, SLA● troubleshooting● ввод в эксплуатацию, Turn Up Testing● демаркация● мониторинг
3
Курочкин Павел, НТЦ Метротек
По времени выполнения
● Краткосрочные/Долгосрочные - подключился, измерил, отключился
● Периодические - подключился, периодически измеряем
● Мониторинг - постоянные 365/7/24
4
Курочкин Павел, НТЦ Метротек
По топологии
● Двусторонние измерения
● Односторонние измерения
5
Измеритель Шлейф
Измеритель
Сеть
Шлейф/Измеритель
ТрафикУправление Сеть
Курочкин Павел, НТЦ Метротек
Топология мониторинга
6
24/7
24/7
Курочкин Павел, НТЦ Метротек
По уровням
● 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
Курочкин Павел, НТЦ Метротек
L1, Физика
● медная рефлектометрия: расстояние до обрыва, замыкания
● оптическая рефлектометрия: обрывы, сварки, соединения, потери мощности
● BERT (bit error rate test)● skew - временная дистанция между lane’ами или
витыми парами● коммутация lane’ов и витых пар
8
Курочкин Павел, НТЦ Метротек
L2: MAC
● RFC2544 - нагрузочное тестирование● OAM - управляемый шлейф для тестирования● BERT - ПСП упаковывается в Ethernet-фрейм
9
● Коммутаторы отбрасывают битые пакеты
● Далеко не все коммутаторы выдерживают пиковые нагрузки
● Есть оборудование, которое имеет L2 стык, а за ним идёт другая среда (РРЛС, TDM)
Курочкин Павел, НТЦ Метротек
L3/L4 - IP/UDP
● RFC2544 - нагрузочное тестирование● Y.1564 - тестирование сервисов на SLA● BERT - ПСП упаковывается в IP/UDP payload
● TWAMP/OWAMP - определяет формат управления и тестового трафика
10
Курочкин Павел, НТЦ Метротек
Шлейф, он же loopback
● “отражает” трафик● меняет поля местами● ведёт статистику● может измерять задержку (OWAMP)
● работает в паре с тестером● может дифференцировать трафик● управляется, как правило, дистанционно
11
Курочкин Павел, НТЦ Метротек
Тестовые пакеты
● Со специальной сигнатурой● С заданным портом
● С псевдо-случайным содержимым● C фиксированным содержимым
● Фиксированного размера● Случайного размера
12
Курочкин Павел, НТЦ Метротек
Нагрузка
● равномерная● нарастающая● burst-ная
13
Курочкин Павел, НТЦ Метротек
Информационная скорость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 байт
Курочкин Павел, НТЦ Метротек
Как работает BERT?
15
Генератор ПСП
канал Приёмник ПСП
...01101010100... ...01101110100...
+
+
=
Курочкин Павел, НТЦ Метротек
Как работает RFC2544
● Throughput○ ищет ту нагрузку, на которой не теряются пакеты
● Latency○ измеряет задержку по кадрам выборочно
● Frame Loss○ промеряет зависимость потерь от нагрузки
● Back-To-Back○ измеряет длительность работы при заданной
нагрузке
16
Курочкин Павел, НТЦ Метротек
Как работает Y.1564
● Проверка конфигурации○ проверяет корректность настройки сервисов
● Тест производительности, одновременно для всех сервисов:○ измеряет гарантированную проп. способность○ измеряет, на сколько она может быть превышена○ задержку○ джиттер
17
Курочкин Павел, НТЦ Метротек
Y.1564 vs RFC2544: Fight!
18
Y.1564 RFC2544
Измерение нескольких параметров
Параллельно Последовательно
Длительность Меньше Больше
Вероятность ошибки при настройке
Исключается тестом конфигурации
не исключена
Классификация теста SLA Benchmarking
Джиттер да нет
Задержка да, по всем пакетам! да, по выборочным пакетам
Пропускная способность по факту по отсутствию потерь
Курочкин Павел, НТЦ Метротек
ХВАТИТ ТЕОРИИ!
19
Курочкин Павел, НТЦ Метротек
На чём “держатся” измерения?
● Генерация пакетов с заданной нагрузкой● Приём и подсчёт пакетов● Задержка● Джиттер● Битовые ошибки
20
Это первичные параметры!
Курочкин Павел, НТЦ Метротек
Что влияет на точность?
● Буферизация ○ создаётся burst’ность, увеличивается задержка
● Часы○ увеличивается задержка, джиттер
● Скорость обработки○ могут быть потери, burst’ность, задержка
● scheduling ○ может быть неточная нагрузка
21
Курочкин Павел, НТЦ Метротек
Архитектура
22
CPU/MCU FPGA Transceiver PHY Cable
third-partythird-partyIntellectual property
Intellectual Property,Open Source
Курочкин Павел, НТЦ Метротек
Что уже готово, а что нужно сделать?
● “из коробки” нам достаются:○ трансивер○ трансформаторы○ SERDES
● Всё остальное ручками:○ MAC-контроллер○ Генератор○ Анализатор○ Иногда PTP○ плюс всё железо (PCB, корпус, etc…)
23
MAC
Трансивер
Генератор Анализатор
PTP
PTP
Курочкин Павел, НТЦ Метротек
Как измеряется нагрузка
24
Генераторпакета
size = x
Счётчик
x + IFG
● Вычисляется IFG по формуле 1 (см. 14 слайд)● Планировщик считает байты
MAC
● Каждый x+IFG байт генератору даётся строб “огонь!”● Пакет уходит в мак-контроллер и далее - в среду и сеть
Метод даёт абсолютную точность! Собственный джиттер минимален!
Курочкин Павел, НТЦ Метротек
Как измеряется 2-way задержка● Тактовый генератор отсчитывает время● “снимаются” показания и попадают в пакет● На приёме достаются из пакета и сравниваются с
показаниями
25
Генераторпакета
MACСеть
Приёмникпакета
Курочкин Павел, НТЦ Метротек
Как измеряется 1-way задержка● нужна точная синхронизация времени (PTP/NTP)● PTP: высокие требования к сети и к измерительному оборудованию
26
Генераторпакета MAC Приёмник
пакетаMAC
PTP Master
Курочкин Павел, НТЦ Метротек
Как измеряется джиттер● относительная вариация задержки = d(i) - d(i-1)● абсолютная вариация задержки = d(i) - d(0)● алгоритм не требует синхронизации времени!
27
Должно быть
T = const
real lifeT = variable
t
t
Курочкин Павел, НТЦ Метротек
Уточняем архитектуру
28
CPU/MCU FPGA Transceiver PHY Cable
third-partythird-partyIntellectual property
Intellectual Property,Open Source
рефлектометрия,skew, пары
линк, синхронизация,auto-negotiation
Первичные параметры,передача и приём пакетов
RFC2544Y.1564BERT
UI/GUI/CLI
Курочкин Павел, НТЦ Метротек
Разные скорости (10M-100G)
Меняется:● тактовая частота● время на обработку ● разрядность
Неизменно:● точность нагрузки
29
Курочкин Павел, НТЦ Метротек
Таблица для разных 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 нс
Курочкин Павел, НТЦ Метротек
Ссылки● 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