42
Сетевая диагностика: новый взгляд сквозь старые щели Евгений Усков Qrator Labs

RootConf 2015

Embed Size (px)

Citation preview

Сетевая диагностика: новый взгляд сквозь старые щелиЕвгений УсковQrator Labs

Постановка задачи

Кто виноват?

Проблемы в самом приложении (frontend/backend)

Причина

Кто виноват?

Проблемы в самом приложении (frontend/backend)

Сетевые аномалии➢ большие задержки➢ потери пакетов➢ разрывы TCP-соединений

Причина

Кто виноват?

Проблемы в самом приложении (frontend/backend)

Сетевые аномалии➢ большие задержки➢ потери пакетов➢ разрывы TCP-соединений

Причина

Первая помощь: ping

Отправляем ICMP Echo Request …

… получаем ICMP Echo Reply

Первая помощь: ping

Отправляем ICMP Echo Request …

… получаем ICMP Echo Reply

… или не получаем

Первая помощь: hping

ICMP-пакеты часто фильтруются

Можно попробовать другие протоколы:

hping ya.ru -1 ICMPhping ya.ru -S -p 80 TCP SYNhping ya.ru -1 -a 1.2.3.4 указать 1.2.3.4 в

качестве source адреса

tracerouteПостроение маршрута до заданного хоста:➢ последовательно отправляем пакеты с TTL = 1, 2, …➢ принимаем ICMP TTL Exceed от промежуточных узлов

SRC R1 R1 DSTTTL=1 TTL=2 TTL=3

TTL ExceedTTL Exceed

Response

Может использовать различные протоколы:ICMP, UDP, TCP (tcptraceroute)

Лучше: mtrТрассировка в реальном времени!

Преимущества traceroute/mtr:➢ сразу строит полный маршрут➢ показывает задержки и потери пакетов➢ сразу видно проблемный участок

Лучше: mtrТрассировка в реальном времени!

Преимущества traceroute/mtr:➢ сразу строит полный маршрут➢ показывает задержки и потери пакетов➢ сразу видно проблемный участок

Однако так ли все просто?

Диагностика 1Задача: есть ли проблемы на данном участке маршрута?

Host Loss% ... 3. te1-1.ar2.DCA3.gblx.net 0.0% 4. te1-2-10g.ar3.DCA3.gblx.net 0.0% 5. sl-st21-ash-8-0-0.sprintlink.net 87.9% 6. 144.232.20.149 0.0% 7. sl-bb20-dc-15-0-0.sprintlink.net 0.0%

Диагностика 1Задача: есть ли проблемы на данном участке маршрута?

Host Loss% ... 3. te1-1.ar2.DCA3.gblx.net 0.0% 4. te1-2-10g.ar3.DCA3.gblx.net 0.0% 5. sl-st21-ash-8-0-0.sprintlink.net 87.9% 6. 144.232.20.149 0.0% 7. sl-bb20-dc-15-0-0.sprintlink.net 0.0%

Нет! Это всего-лишь деприоритезация!

Диагностика 2Задача: определить проблемный стык

Host Loss% ... 3. te1-1.ar2.DCA3.gblx.net 0.0% 4. te1-2-10g.ar3.DCA3.gblx.net 0.0% 5. sl-st21-ash-8-0-0.sprintlink.net 70.9% 6. 144.232.20.149 72.3% 7. sl-bb20-dc-15-0-0.sprintlink.net 72.8%

Диагностика 2Задача: определить проблемный стык

Host Loss% ... 3. te1-1.ar2.DCA3.gblx.net 0.0% 4. te1-2-10g.ar3.DCA3.gblx.net 0.0% 5. sl-st21-ash-8-0-0.sprintlink.net 70.9% 6. 144.232.20.149 72.3% 7. sl-bb20-dc-15-0-0.sprintlink.net 72.8%

Типичный ответ: GBLX - Sprint

Диагностика 2Типичный ответ: GBLX – Sprint

Правильный ответ:

Диагностика 2Типичный ответ: GBLX – Sprint

Правильный ответ:

Где может быть проблема

? ??

BGP

Автономная система (AS) — система IP-сетей и маршрутизаторов, управляемых одним или несколькими операторами, имеющими единую политику маршрутизации с Интернетом

AS2 AS1

AS3

AS4

BGP

AS2 AS1

AS3

AS4

Протокол BGP:➢ автономные системы обмениваются информацией о

доступности сетей➢ на основе полученной информации принимается

решение о маршрутизации

BGPЧем определяется принимаемое решение?

BGPЧем определяется принимаемое решение?

BGP

Процент асимметричных путей для некоторых АС

MTS (8359) 52.9%ReTN (9002) 31.8%TATA (6453) 31.1%Level3 (3356) 27.5%

Экономические отношенияне симметричны

Пути такжене симметричны

Обратный путьЗадача: определить обратный путь

➢ ping + Record Route➢ Looking Glasses➢ RIPE Atlas➢ NLNOG Ring➢ Planetlab➢ Reverse Looking Glass (Qrator Radar)

Снова ping ...… с опцией Record Route!

ping -R R4

1. R12. R23. R44. R45. R36. R1

R1

R2

R4

R3

Снова ping ...… с опцией Record Route!

ping -R R4

1. R12. R23. R44. R45. R36. R1

R1

R2

R4

R3

Обратный путь

Record RoutePros:

➢ полнота: можно отправить пакет любому хосту

Cons:

➢ можно сохранить только 9 адресов ...

➢ … путь в одну сторону обычно содержит от 8 до 30 хопов

➢ данные часто далеки от идеала

Looking glassЕсть у многих операторов

Типичный LG позволяет запускать:➢ ping➢ traceroute➢ show BGP route

Looking glassКакой будет путь из Мегафона до msu.ru?

Looking glassКакой будет путь из Мегафона до msu.ru?

188.44.32.0/19 (2 entries, 1 announced) *BGP Preference: 170/-281 ... Local AS: 31133 Peer AS: 3267 ... AS path: 3267 2848 I AS path: Recorded ...

RIPE Atlas

RIPE AtlasPros:

➢ Хорошее покрытие:➢ >8000 точек мониторинга➢ почти 3000 IPv4 АС, около 1000 IPv6 АС➢ 172 страны

➢ чтобы получить доступ, достаточно установить точку мониторинга

➢ наличие API

Cons:➢ ограниченный набор

запросов: ping, traceroute, DNS, NTP, SSL

➢ каждый запрос тратит credits

RIPE AtlasВизуализация инцидента с AMS-IX:

NLNOG RingPros:

➢ (почти) произвольные запросы➢ Looking Glass для нескольких узлов

Cons:➢ для получения доступа

нужно установить полноценный узел

➢ покрытие: 366 узлов, 326 АС, 48 стран

Planetlab

PlanetlabОсобенности:

➢ похож на NLNOG Ring

➢ есть платный доступ

➢ покрытие: 1336 узлов, около 250 АС

Активная диагностикаПозволяет получить полноценный обратный путь …

… но только для некоторых АС

Недостатки:➢ недостаточная полнота➢ сложность установки

Как быть, если для АС нет Looking Glass и она не входит в покрытие описанных ранее средств?

Reverse LG (Qrator)Что умеет:

➢ определять обратный путь от произвольной АС➢ определять альтернативные пути

В основе – математическая модель логических отношений между АС

Reverse LG (Qrator)Пример: определение путей от AS8331 до AS-QRATOR (AS197068):

Active Paths:197068 x1 9002 x1 8331

Alternative Paths:197068 x1 9002 x1 12714 x1 8331197068 x1 9002 x1 42632 x1 8331...

Reverse LG (Qrator)Пример: определение путей от TeliaSonera (AS1299) до AS-QRATOR (AS197068):

Reverse LG (Qrator)Пример: определение путей от TeliaSonera (AS1299) до AS-QRATOR (AS197068):

Active Paths:197068 x2 6453 x1 1299197068 x2 6461 x1 1299197068 x1 9002 x1 2914 x1 1299197068 x1 20485 x1 3549 x1 1299197068 x1 20485 x1 6453 x1 1299197068 x1 50304 x1 174 x1 1299

Alternative Paths:197068 x2 2828 x1 1299

Reverse LG (Qrator)Позволяет определить:

➢ обратный путь от произвольной АС➢ альтернативные пути

Для получения доступа необходимо:➢ подтвердить доступ к своей АС➢ установить BGP-сессию с AS-QRATOR

Спасибо!

Вопросы?