Задержка распространения (физическое расстояние) Propagation delay
ID причины isp-distance · Основной ответственный Команда инфраструктуры · Серверная инфраструктура · Совместно Команда инфраструктуры · Сетевая инфраструктура, Команда разработки · Разработка сервера
Даже свет в оптоволокне проходит всего около 200 000 km в секунду. Если сервер далеко, задержка будет большой, каким бы хорошим он ни был.
Почему Сервер далеко (зарубежный сервер, другой континент) → Следствие Время пути туда и обратно растёт с расстоянием (не меньше 10 ms на каждые 1 000 km) → На экране Постоянная задержка ввода на каждое действие, невыгодное положение при проверке попаданий
Основной ответственный Команда инфраструктуры · Серверная инфраструктура · Совместно Команда инфраструктуры · Сетевая инфраструктура, Команда разработки · Разработка сервера
Команда разработки: задачи
Законы физики кодом не исправить, можно только смягчить последствия: дать игроку выбрать ближайший региональный сервер, компенсацией задержки (отмоткой времени назад) уменьшить невыгодное положение при проверке попаданий.
Команда инфраструктуры: задачи
Серверы и ОС: ставить региональные серверы там, где много игроков. Сеть: размещать точки подключения (edge) ближе к игрокам, выбирать линии и маршруты с минимальными обходами.
Цифры для ориентира
Сеул–Токио около 30 ms, Сеул–Сингапур около 75 ms, Сеул–запад США около 140 ms, Сеул–Европа около 230–270 ms (туда и обратно, по реальным маршрутам). Вдоль прямой до Европы почти нет крупных кабелей, и трафик идёт через Юго-Восточную Азию и Суэц или через США, поэтому задержка намного больше, чем следует из расстояния.
На графике
Высоко с самого начала · RTT (по странам и регионам)
Где смотреть
Определить страну по IP подключения и посмотреть распределение RTT по странам, измерить ping и traceroute до сервера с VM в ближайшем к этой стране облачном регионе или с зондов RIPE Atlas (их выбирают по стране и ASN)
Подтверждает
RTT для далёких стран высокий в любое время суток и близок к минимальной задержке по расстоянию (10 ms туда и обратно на 1 000 km) и к публичной статистике задержек
Опровергает
Если RTT намного выше, чем объясняет расстояние, это «Неоптимальная маршрутизация», если растёт только по вечерам, это «Перегрузка пиринга в часы пик»
ITU-T G.114: One-way transmission timeITU Значение для планирования: задержка распространения по оптоволокну 5 µs/km (около 200 000 km в секунду, 10 ms туда и обратно на 1 000 km)
Azure network round-trip latency statisticsMicrosoft Azure Медианы измеренного времени туда и обратно от Сеула (Korea Central): Токио 30 ms, Сингапур 68 ms, запад США 124–136 ms, Европа 234–244 ms
Probe Selection (RIPE Atlas REST API)RIPE NCC Зонды для измерений RIPE Atlas выбирают по стране, региону, ASN или диапазону адресов и запускают с них ping и traceroute