RE:NODE

Сеть11 мин чтения

Пинг игрового сервера из Германии по регионам

Типичный пинг из разных частей мира до игрового сервера в Германии, как он ощущается в шутерах, выживалках и гонках и как честно его измерить.

0 прочтений

Игровой сервер в Германии даёт игрокам в Центральной и Западной Европе время приёма-передачи примерно 5-30 мс, большей части остальной Европы - 20-60 мс, Турции, Кавказу, Израилю и Северной Африке - около 55-95 мс, восточному побережью США - 85-110 мс, а любой точке Азии, Южной Америки или Океании - далеко за 150 мс. Эти диапазоны решают, кто во что может играть. В выживалке или строительной игре комфортно примерно до 120 мс; в соревновательном шутере игра начинает казаться нечестной для дальнего игрока где-то после 60-70. Остальная часть статьи - подробности за этими цифрами: таблица по регионам, как каждый диапазон ощущается в разных жанрах, почему число в таблице счёта редко совпадает с тестом пинга и что можно и чего нельзя сделать для игрока, который далеко.

О физике задержки и о том, как выбрать место для сервера под группу, читайте в статье где должен стоять ваш игровой сервер - там есть таблица по городам до Франкфурта. Эта статья смотрит с другой стороны: сервер уже в Германии, и вопрос в том, что получит каждый игрок.

Пинг до Германии по регионам#

Германия - удобная точка для измерений, потому что во Франкфурте находится DE-CIX, одна из крупнейших точек обмена трафиком в мире, и большинство европейских сетей либо обмениваются трафиком там, либо проходят через неё. Цифры ниже - типичное время приёма-передачи с домашних подключений по кабелю, вечером, до хорошо подключённого дата-центра в Германии. У ваших игроков цифры будут отличаться в зависимости от провайдера, города и времени суток; считайте таблицу ожиданием, с которым можно сверяться, а не обещанием.

РегионТипичное время приёма-передачиПримечания
Германия, Нидерланды, Бельгия, Люксембург5-15 msКороткие пути, плотный пиринг
Швейцария, Австрия, Чехия, Дания8-20 ms
Франция, Великобритания, Ирландия, Польша, Северная Италия10-30 msИрландия и запад Франции - у верхней границы
Северные страны, Прибалтика, Венгрия, Словения, Хорватия20-40 msСевер Финляндии и Норвегия - выше
Испания, Португалия, Южная Италия, Сербия, Словакия25-50 msПиренеи сильно зависят от провайдера
Греция, Румыния, Болгария, Украина, Молдова35-60 msКачество маршрутизации сильно различается
Турция, Кипр45-70 msЧасто через Софию или Вену
Грузия, Армения, Азербайджан60-90 msПути делают крюк через Стамбул или дальше
Израиль, Египет, Марокко, Тунис55-90 msПодводные маршруты через Средиземное море
Страны Персидского залива100-140 msДольше, чем подсказывает расстояние
Восток США и Канады85-110 msТрансатлантические кабели короткие и прямые
Центр и запад США110-170 msПрибавляйте примерно 1 мс на 100 км по континенту
Индия120-170 ms
ЮАР160-200 ms
Южная Америка190-240 msОбычно маршрут идёт через США или Португалию
Восточная и Юго-Восточная Азия160-280 msЯпония и Сингапур - у нижней границы
Австралия и Новая Зеландия250-320 ms

Стоит обратить внимание на две вещи. Расстояние задаёт нижнюю границу - примерно 1 мс времени приёма-передачи на каждые 100 км оптоволокна, - но насколько выше неё окажется игрок, решает маршрутизация. Именно поэтому Тбилиси, примерно в 3000 км, может показывать результат хуже, чем Нью-Йорк, который более чем вдвое дальше. И переход от «Европы» ко «всем остальным» не плавный. На краю континента есть ступенька, где путь перестаёт быть прямым, и большая часть мира находится по ту её сторону.

Как эти цифры ощущаются в разных жанрах#

Пинг сам по себе не хороший и не плохой. Он хорош или плох для определённого типа игр, потому что игры прячут задержку по-разному.

ЖанрКомфортноИграбельноМучительно
Соревновательные шутеры (CS2, TF2)до 40 мс40-80 мсболее 100 мс
Тактика и милсим (Arma 3, Squad, Insurgency)до 60 мс60-120 мсболее 150 мс
Выживание и кооператив (Valheim, Palworld, 7 Days to Die)до 80 мс80-150 мсболее 200 мс
Строительство и песочницы (Minecraft, Terraria)до 100 мс100-180 мсболее 250 мс
Заводы и lockstep-игры (Factorio)до 80 мс80-150 мсболее 200 мс
Ролевые (FiveM, RedM)до 80 мс80-150 мсболее 200 мс
Симрейсинг (Assetto Corsa, BeamMP)до 50 мс50-100 мсболее 120 мс

Шутеры строже всех, потому что сервер должен решать, кто в кого попал. Игры на движке Source используют компенсацию лагов: чтобы проверить попадание, сервер откатывает позиции других игроков назад на величину задержки стрелявшего. Работает это хорошо, но побочный эффект растёт вместе с пингом - игрока с низким пингом подстреливают уже за укрытием, потому что стрелок с высоким пингом видел его на открытом месте. При 30 мс этого никто не замечает; при 120 мс замечают все, и жалуются как раз игроки с низким пингом.

Выживалки и строительные игры прощают больше, потому что большинство действий не оспаривается в реальном времени. Поставить блок или срубить дерево при 150 мс - нормально. Бой ощущается хуже, чем должен, а у Valheim есть своя особенность: каждую область симулирует первый вошедший в неё игрок, поэтому далёкий игрок может заставить монстров дёргаться для всех, кто стоит рядом с ним. Подробнее - в статье производительность и лаги сервера Valheim.

Lockstep-игры вроде Factorio выполняют симуляцию у всех клиентов синхронно. Игра прячет задержку для собственного движения игрока, но действия с миром - поставить, добыть, открыть сундук - срабатывают после полного круга приёма-передачи. Игрок с 200 мс в мегабазе Factorio играть может, но заметно вяло, а игрок с плохим подключением может тормозить догоняющую синхронизацию у всех.

Гонки беспощадны по-другому. Машины между обновлениями предсказываются, поэтому при высоком пинге чужие машины телепортируются, а контакт становится нечестным. Именно поэтому лиги часто ставят ограничение по пингу.

Почему число в игре отличается от теста пинга#

Игроки называют число из таблицы счёта, а вы измеряете другое с помощью ping. Правы могут быть оба.

  • ICMP-пинг измеряет сетевое время приёма-передачи до машины. Его обрабатывает операционная система, поэтому загруженность игры он не учитывает.
  • Число в игре игра измеряет по собственному протоколу, и обычно в него входят ожидание следующего тика сервера, время в очереди клиента и в некоторых играх намеренное окно усреднения. На сервере с 64 тиками одно только ожидание следующего тика может добавить до 15 мс.
  • Некоторые игры показывают вообще другое. Полоски сигнала в Minecraft - это корзины, а не миллисекунды, и измеряются они keep-alive-пакетами, которые отправляются раз в несколько секунд. Valheim пинг вообще не показывает, пока не откроешь консоль и не введёшь ping.

Разница в 10-30 мс между ними нормальна. Большая разница - тест пинга 40 мс, а в таблице счёта 150 - указывает на что-то, кроме расстояния: на перегруженный сервер, который опаздывает с ответами, на клиент, теряющий кадры, или на потерю пакетов, вызывающую повторные передачи в игре со своим уровнем надёжности. Серверная сторона описана в статье что на самом деле означает tick rate, а как отличать эти три вещи друг от друга - в статье задержка, джиттер и потеря пакетов.

Заметки по регионам#

Центральная и Западная Европа. Простой случай. Пути короткие, и почти каждый провайдер обменивается трафиком во Франкфурте или Амстердаме. Если игрок отсюда сообщает о 60 мс, почти всегда дело в его собственном подключении - Wi-Fi, перегруженный исходящий канал или VPN, который он забыл выключить, - а не в маршруте.

Северные страны, Прибалтика и Пиренеи. Начинает сказываться расстояние, а с ним и провайдер. Два игрока в одном городе у разных провайдеров могут отличаться на 15 мс, потому что один из провайдеров отдаёт трафик транзитному оператору с более длинным маршрутом. Прежде чем винить расположение сервера, сравните двух игроков из одного района.

Восточная Европа и Балканы. Самый большой разброс в Европе. Хорошие провайдеры маршрутизируют напрямую через Вену или Франкфурт и попадают в 30 с чем-то; другие идут через региональный узел и получают 60. Особенно сильно по провайдерам различаются Украина и Молдова.

Турция, Кавказ и Ближний Восток. Эти маршруты часто идут длинной дорогой. Трафик с Кавказа нередко проходит через Стамбул или другой узел, прежде чем дойти до Западной Европы, поэтому физическое расстояние недооценивает пинг. Для группы в Грузии или Армении Германия обычно всё равно один из лучших вариантов в Европе - 60-90 мс: достаточно для выживания, песочниц и ролевых серверов, на грани для соревновательных шутеров.

Северная Америка. Восточное побережье получает 85-110 мс, что удивляет людей: на практике до Германии ближе, чем из большей части Ближнего Востока. Смешанная группа европейцев и американцев с восточного побережья вполне комфортно разделит кооперативный сервер в Германии. Игроки с западного побережья при 150-170 мс могут вместе играть в выживалку, но в шутере им будет плохо.

Все остальные. Из Азии, Южной Америки и Океании сервер в Германии очень далеко. Это работает для неспешных игр и для игроков, которые привыкли, и на этом всё.

Как измерять честно#

Попросите каждого постоянного игрока провести один и тот же тест в один и тот же день и прислать цифры, а не впечатления.

bash
# Windows - 50 pings, then look at the minimum, average and maximumping -n 50 203.0.113.10# Linux or macOSping -c 50 203.0.113.10# The route, with loss per hop, over 100 samplesmtr -rwc 100 203.0.113.10

В Windows работу mtr выполняет pathping или WinMTR. Четыре правила делают результаты честными:

  1. Кабель, а не Wi-Fi. Wi-Fi добавляет от 2 до 50 мс и выдаёт джиттер за расстояние.
  2. Вечер, а не утро. Тестируйте в тот час, когда действительно играете. Домашние сети медленнее всего, когда все дома.
  3. Смотрите на минимум и разброс. Минимум - это маршрут; разница между минимумом и максимумом - это подключение игрока и его очереди.
  4. Используйте адрес сервера. Некоторые хостинги блокируют ICMP к игровым узлам; если пинг не получает ответа, проверяйте собственным запросом игры или подключением. Проверка в одну строку есть в статье query-порты и A2S.

Если цифры одного игрока намного хуже, чем у всех остальных в том же регионе, статья как читать traceroute и MTR объясняет, как отличить настоящую проблему маршрутизации от безобидных потерь, которые роутеры показывают на промежуточных хопах.

VPN и «игровые ускорители»#

Игроки с плохим маршрутом иногда спрашивают, снизит ли пинг VPN или платный игровой ускоритель. Честный ответ: изредка, а обычно нет.

VPN не может заставить свет идти быстрее. Он заменяет маршрут провайдера игрока маршрутом до сервера VPN плюс дальнейшим маршрутом VPN-провайдера и добавляет немного накладных расходов на шифрование. Если собственный провайдер игрока отправляет трафик в Германию живописным объездом - обычные случаи это Кавказ и часть Восточной Европы, - а у VPN-провайдера есть прямой путь, в сумме может выйти меньше. Если маршрут провайдера и так был разумным, что верно для большей части Европы, VPN добавляет 5-30 мс и немного джиттера.

Проверка дешёвая. Пусть игрок проведёт тот же тест на 50 пингов с VPN и без него, в один и тот же час, и сравнит минимум и разброс. Если VPN выигрывает с явным отрывом, его стоит оставить; иначе - отказаться. О двух побочных эффектах стоит предупредить: некоторые игры и античиты относятся к адресам VPN с подозрением, а игрок, у которого адрес меняется каждую сессию, будет спотыкаться о любые баны или белые списки, привязанные к IP-адресам.

Как помочь далёкому игроку#

Расстояние уменьшить нельзя, но несколько вещей помогают игроку с высоким пингом не страдать больше необходимого.

  • Следите за здоровьем сервера. Сервер, пропускающий тики, добавляет собственную задержку поверх сетевой. Её чувствуют все игроки, но первым за предел выталкивает далёкого. Прежде всего проверьте запас по CPU.
  • Не выключайте компенсацию лагов. В играх на Source sv_maxunlag задаёт в секундах, насколько далеко назад сервер будет откатывать время для проверки попадания. Значение по умолчанию щедрое; снижение его, чтобы наказать игроков с высоким пингом, в основном наказывает регистрацию попаданий у всех.
  • Не снижайте tick rate, чтобы им помочь. Меньше обновлений в секунду - значит, больше ожидания между ними, что добавляет задержку всем.
  • Ставьте ограничение по пингу там, где важна честность. Для соревновательных матчей и гоночных лиг кик выше порога гуманнее матча, исход которого решила география. Такое ограничение есть в большинстве админ-фреймворков.
  • Исправьте последнюю милю самого игрока. Кабель, роутер с умным управлением очередями и закрытие всего, что что-то выгружает в фоне, регулярно снимают с плохого подключения 20-50 мс.

Кому подходит сервер в Германии#

Если коротко: немецкий сервер отлично подходит игрокам в любой точке Центральной и Западной Европы, хорошо - остальной Европе, приемлемо - Турции, Кавказу, Восточному Средиземноморью и восточному побережью США, а для всех остальных это компромисс. RE:NODE работает в одной локации, в Германии, на железе, которое мы обслуживаем сами, поэтому эта таблица описывает каждый наш сервер - выбора регионов мы не предлагаем и делать вид, что предлагаем, не будем. Если ваша группа живёт в Европе или вокруг её границ, эта локация близка к её середине. Если ваша группа в основном в Азии или Америке, им лучше подойдёт хостинг рядом с ними, а о том, что ещё сравнивать, - статья как выбрать хостинг игровых серверов.

FAQ#

Какой пинг будет из Великобритании до сервера в Германии?

Обычно 12-25 мс по кабелю, в зависимости от провайдера и того, насколько далеко вы от Лондона. Это комфортно для любого жанра, включая соревновательные шутеры.

Можно ли играть с пингом 100 мс?

В выживалки, строительные, ролевые и кооперативные игры - да, большинство игроков почти ничего не заметит, кроме чуть запаздывающего боя. Для соревновательных шутеров и симрейсинга 100 мс - явный недостаток, раздражающий игроков по другую сторону каждой схватки.

Могут ли американцы играть на европейском сервере?

Игроки с восточного побережья обычно видят до Германии 85-110 мс, чего хватает для кооперативных игр и выживалок. Игроки с западного побережья видят 150 мс и больше: для неспешных игр это работает, для чего-либо соревновательного - плохо.

Почему мой пинг до Германии выше, чем у друга в том же городе?

Разные провайдеры маршрутизируют трафик по-разному. Один может обмениваться трафиком напрямую на европейской точке обмена, а другой - отправлять его через транзитного оператора по более длинному пути. Запустите mtr с обоих подключений и сравните, где появляются лишние миллисекунды.

Снижает ли пинг более дорогой тариф?

Нет. Пинг определяется расстоянием и маршрутизацией, а не памятью или CPU. Слишком маленький тариф может добавлять задержку, пропуская тики под нагрузкой, но когда у сервера есть запас, тариф побольше ничего не меняет в задержке.


Комментарии

Полностью анонимно: без аккаунта, без почты, без cookie. Мы храним имя, которое вы ввели, текст и время - больше ничего. Количество ссылок ограничено, разметка не отображается.

0/2000