Если коротко: пинг в играх — это время, за которое пакет данных добегает от вашего компьютера до игрового сервера и обратно, в миллисекундах. Это задержка, а не скорость. Тариф в 300 Мбит/с отвечает за то, сколько данных пролезает в трубу за секунду, а пинг — за то, насколько эта труба длинная и где в ней пробки. Поэтому быстрый интернет и лаги в шутере прекрасно уживаются вместе.
Я веду «Во что поиграть» и чаще всего слышу от читателей одну и ту же жалобу: «провайдер обещал гигабит, а в матче меня убивают за стеной». Разберёмся, откуда физически берутся эти миллисекунды, какие из них можно убрать, а какие — нет, и что игра делает, чтобы задержку спрятать.
Пинг в играх — это что: задержка, а не скорость
Слово пришло из утилиты ping, которая отправляет на адрес маленький служебный пакет и засекает, когда придёт ответ. В играх под пингом понимают то же самое — время «туда и обратно», по-английски round-trip time. В документации сетевого движка Source Valve так и пишет: время между отправкой команды игрока, ответом сервера и получением этого ответа называется задержкой, или пингом.
Удобная аналогия — водопровод. Скорость тарифа — это диаметр трубы: чем он шире, тем больше воды проходит за секунду. Пинг — это длина трубы: сколько ждать, пока первая капля доберётся до крана. Скачивание игры на 100 ГБ упирается в диаметр. А игровой трафик — это поток крошечных пакетов: по той же документации Valve, клиент и сервер обмениваются небольшими пакетами с частотой порядка 20–30 в секунду. Им ширина трубы почти не нужна, им нужно, чтобы каждая капля долетала быстро и вовремя.
Отсюда главный вывод, который развенчивает миф «быстрый тариф = низкий пинг»: переход со 100 на 500 Мбит/с расширяет трубу, но не укорачивает её. Если до сервера 2000 км, пакет пройдёт эти 2000 км на любом тарифе.
Физический потолок: скорость света в стекле
Самая неустранимая часть пинга — расстояние. Сигнал в оптоволокне идёт не со скоростью света в вакууме: по данным исследования в Nature Photonics, в кварцевом стекле свет распространяется примерно на 31% медленнее, чем в пустоте. Это около 200 000 км/с, или 200 км за миллисекунду.
Посчитаем Москву и Франкфурт, где стоят серверы многих европейских игр. По дуге земного шара между городами около 2020 км. Туда и обратно — 4040 км. Делим на 204 000 км/с и получаем примерно 20 мс. Это абсолютный минимум: даже идеальный кабель, проложенный строго по прямой и без единого маршрутизатора, не даст из Москвы во Франкфурт пинг меньше 20 мс.
Для других направлений:
Санкт-Петербург → 634 км → не меньше 6 мс
Стокгольм → 1227 км → не меньше 12 мс
Франкфурт → 2021 км → не меньше 20 мс
Новосибирск → 2813 км → не меньше 28 мс
Владивосток → 6415 км → не меньше 63 мс
На практике цифры выходят заметно выше: кабели тянутся вдоль дорог и границ, трафик заходит в точки обмена в других городах. Поэтому 35–45 мс до Франкфурта — нормальный результат, а не неисправность. Riot Games, разработчик Valorant, рассказывая о сетевом коде своей игры, ставит цель обеспечить пинг 35 мс для 70% игроков — и ради этого строит собственную магистральную сеть и сервера по всему миру. Если даже издатель не может обойти физику без своих кабелей, никакая настройка дома этого тоже не сделает.

Откуда берутся лишние миллисекунды
Поверх физики накладываются ещё три слоя задержки. Именно они отличают пинг 25 мс от пинга 120 мс до того же сервера.
Маршрутизация
Пакет проходит через десяток-другой маршрутизаторов: домашний роутер, оборудование провайдера, магистраль, дата-центр. Каждый тратит на пакет доли миллисекунды, но важнее другое — маршрут. Провайдер может отправить трафик до соседнего города через узел обмена в другом регионе, и путь вырастает на сотни километров. Это не лечится ни тарифом, ни роутером: маршрут решают провайдер и игровой сервис.
Очереди и bufferbloat
Самый коварный источник лагов живёт у вас дома. У любого сетевого устройства есть буфер — очередь пакетов, которые ждут отправки. Когда кто-то в квартире качает торрент, заливает видео в облако или смотрит 4K, канал забивается, и ваш игровой пакет встаёт в конец очереди за тысячами чужих. Пока очередь не разберётся, он стоит.
Это явление называется bufferbloat — «раздутые буферы». Джим Геттис, один из тех, кто дал ему имя, описал в статье в ACM Queue собственный домашний случай: путь до MIT без нагрузки давал задержку меньше 10 мс, а во время выгрузки большого архива — больше 1,2 секунды, с потерями пакетов. Ширина канала при этом никуда не делась. Просто огромный буфер в модеме послушно копил пакеты вместо того, чтобы дать сигнал «притормози».
Отсюда типичная картина: «днём играю нормально, вечером лагает». Часто дело не в провайдере, а в том, что вечером дома кто-то загружает канал, а роутер держит слишком длинную очередь.
Wi-Fi
Беспроводная сеть — общий эфир: в один момент передавать может только одно устройство, остальные ждут своей очереди. Помехи от соседских сетей, стены, микроволновка заставляют пакеты пересылать повторно. В среднем Wi-Fi может работать прилично, но игре важны не средние, а выбросы: один пакет пришёл через 3 мс, следующий — через 40. Подробно о том, почему домашний Wi-Fi ведёт себя так нестабильно, — в нашем разборе.
Джиттер и потеря пакетов: почему ровный пинг важнее низкого
Число в углу экрана — это обычно среднее значение. Но игра страдает от двух других вещей.
Джиттер — разброс задержки от пакета к пакету. В инженерных документах IETF его называют вариацией задержки пакетов и определяют в RFC 3393 как разницу задержек соседних пакетов одного потока. Стабильные 50 мс игре переварить проще, чем скачки от 20 до 90: под ровную задержку клиент подстраивает буфер, а под скачущую — нет, и противники начинают дёргаться.
Потеря пакетов — когда пакет не дошёл вовсе. Чаще всего это Wi-Fi, перегруженный буфер, который начал выбрасывать лишнее, или плохой участок у провайдера. Потеря одного пакета игра скрывает, серия потерь превращается в «телепорты»: персонаж стоит на месте, а потом прыгает на несколько метров.
Как сервер «прощает» задержку: тикрейт, интерполяция и компенсация лагов
Самое интересное начинается, когда понимаешь, что игра не просто терпит пинг, а активно его маскирует. Лучше всего это описано в той самой документации Valve.
Тикрейт
Сервер просчитывает мир не непрерывно, а шагами — тиками. В движке Source по умолчанию шаг 15 мс, то есть около 66 тиков в секунду; в Counter-Strike 2, по той же документации, 64 тика с технологией sub-tick, а Valorant, по данным Riot, работает на 128 тиках. Тикрейт — это частота, с которой сервер «смотрит» на мир. Чем она выше, тем меньше лишнего ожидания добавляется к вашему пингу внутри самого сервера.
Интерполяция
Если рисовать противников только в те точки, о которых пришли обновления, они будут двигаться рывками. Поэтому клиент специально показывает мир немного в прошлом и плавно рисует движение между двумя последними полученными снимками. В Source эта задержка по умолчанию — 100 мс (переменная cl_interp 0.1): тогда даже при потере одного снимка остаётся два, между которыми можно интерполировать. То есть вы всегда видите соперника там, где он был долю секунды назад, — даже при пинге 5 мс.
Предсказание своих действий
Своего персонажа клиент двигает сразу, не дожидаясь сервера: он выполняет тот же код, что и сервер, и угадывает результат. Если сервер потом говорит «на самом деле ты здесь», клиент поправляет позицию — те самые резкие откаты назад при плохой связи.
Компенсация лагов и «убили за стеной»
А теперь «ага»-момент. Стрелок видит вас с задержкой (пинг плюс интерполяция), прицеливается и стреляет. Пока выстрел летит до сервера, вы уже успели шагнуть за угол. Если бы сервер проверял попадание по текущей позиции, стрелок промахивался бы всегда и по всем, кто двигается.
Поэтому сервер, как пишет Valve, хранит историю позиций всех игроков за последнюю секунду. Получив выстрел, он вычисляет, когда стрелок его сделал: текущее время сервера минус задержка пакета минус интерполяция клиента. Затем «отматывает» всех игроков в этот момент, проверяет попадание и возвращает их обратно. Valve прямо называет следствие парадоксом: вас может поразить противник, которого вы уже не видите, потому что спрятались, — сервер вернул ваш хитбокс туда, где вы ещё были открыты.
Это не баг и не читер. Это осознанная плата за то, чтобы стрелку с пингом 80 мс не приходилось целиться с упреждением. Решить парадокс полностью нельзя, пока пакеты летят медленнее, чем свет до глаз. Его зеркальная сторона называется peeker's advantage: тот, кто выглядывает из-за угла, видит обороняющегося раньше, чем тот видит его. Riot в своём разборе пишет, что за счёт снижения задержек и оптимизации серверов срезала это преимущество примерно на 40 мс, или на 28%.

Кстати, в общую задержку «нажал — увидел» входит не только сеть, но и железо: монитор и мышь добавляют свои миллисекунды. Про экран мы разбирали отдельно.
Почему пинг в играх высокий и что реально помогает
Когда понятен механизм, советы выстраиваются сами — по слоям, с которых мы начинали.
Расстояние — выбрать ближний сервер. Это единственный способ уменьшить физическую часть. Регион в настройках матчмейкинга важнее любого тарифа: Франкфурт вместо Северной Америки — это разница в 100 с лишним миллисекунд, и никакой роутер её не отыграет.
Wi-Fi — заменить кабелем. Провод убирает общий эфир, повторные передачи и выбросы задержки. Если тянуть кабель невозможно, хотя бы перейдите на диапазон 5 ГГц и поставьте компьютер ближе к роутеру — но это компромисс, а не решение.
Очереди — бороться с bufferbloat. Здесь помогают механизмы активного управления очередью (AQM). IETF в RFC 7567 рекомендует применять AQM в сетевом оборудовании, а в RFC 8290 описан алгоритм FQ-CoDel, который держит очереди короткими и разделяет потоки, чтобы торрент не стоял впереди игрового пакета. В прошивках роутеров это обычно называется SQM (Smart Queue Management) или QoS. Хитрость в том, что ограничение ставят чуть ниже реальной скорости тарифа — тогда очередь копится в роутере, где ею управляет умный алгоритм, а не в модеме провайдера.
Чего не делать. «Программы для снижения пинга» не могут ни укоротить кабель, ни ускорить свет. Повышение тарифа тоже не поможет, если проблема в Wi-Fi или в очередях. Проверить, где именно теряется время, можно простым замером: пинг по кабелю в тишине, затем во время загрузки большого файла. Если во втором случае задержка взлетает в разы — у вас bufferbloat, и лечится он настройкой очередей, а не деньгами.
Какой пинг считать нормальным
Жёстких норм нет, но порядок цифр такой. До 30–40 мс — комфортно для любых жанров, включая соревновательные шутеры. 50–80 мс — играть можно, но в дуэлях на реакцию вы начнёте чаще проигрывать «на угле». За 100 мс становятся заметны откаты и «убийства за стеной». Для стратегий, MMO и кооператива планка мягче: там решает стабильность, а не каждая миллисекунда. И ещё раз: важнее не одно число, а его ровность — джиттер и потери говорят о качестве связи больше, чем среднее.
Коротко
• Пинг — это задержка «туда и обратно», а не скорость. Тариф расширяет трубу, но не укорачивает её.
• Нижний предел задаёт физика: около 1 мс на каждые 100 км расстояния до сервера (туда и обратно). Из Москвы во Франкфурт меньше 20 мс не бывает.
• Сверху добавляются маршрутизация, очереди (bufferbloat) и Wi-Fi — именно их можно и нужно убирать.
• Джиттер и потеря пакетов вредят игре сильнее, чем просто высокий, но ровный пинг.
• «Убили за стеной» — работа компенсации лагов: сервер отматывает время к моменту, который видел стрелок.
• Что помогает: ближний сервер, кабель вместо Wi-Fi, SQM/QoS против раздутых очередей.


Пока нет комментариев