habrahabr

Борьба за пинг в танках WoT в Хабаровске, Красноярске и Владивостоке

  • суббота, 20 декабря 2014 г. в 02:11:46
http://habrahabr.ru/company/beeline/blog/246111/

image
Слева пинг курильщика, провал справа – после запуска нашего пирингового стыка

Есть такая компания Wargaming, инфраструктура которой разбита по всему миру. Сервера компании присутствуют в РФ, СНГ, США, Европе и Китае. Главный продукт – виртуальные танки, которые хорошо и технично ездят в Москве, более-менее нормально – в центре России, прилично – на части ЮФО, но с большим пингом на Дальнем Востоке.

Трафик от игрока в Красноярске до игровых серверов Wargaming спокойно может накрутить петлю через Москву. Это означает пинг 210-250 мс, что, довольно сильно сказывается как на точности стрельбы, так и вообще на реакции на разные события в игре.

Как было раньше


Трафик до серверов WoT ходил через стыки в Москве. Выстрел по чужому танку в соседнем районе для абонента Дальнего востока летел по следующему маршруту:
  1. Ваш компьютер – узел ШПД или мобильная БС.
  2. Прыжок в нашу городскую сеть.
  3. Прыжок в магистраль.
  4. N коммутаторов (и, если не повезёт – магистралей других провайдеров) до площадки Wargaming в Москве.
  5. Танковый сервер.
  6. Обратный путь до нашей магистрали.
  7. Обратный путь до городской сети.
  8. Обратный прыжок к узлу танкиста.
  9. Ура, трафик у него!


Что можно делать в такой ситуации и что было сделано?


К сожалению, законы физики при оптимизации значений задержки мы преодолеть не можем. Конечно, в мире есть попытки отыграть задержку путем спрямления каналов и больших инвестиций в строительство в трудно доступных местах. Да, это имеет смысл для работы с биржами, но выигрыш 10-15 мс для онлайновых игр в условиях нашей необъятной страны будет в таких случаях незначительным.

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

Мы взяли и построили локальные линки от своего сетевого оборудования до серверов Wargaming в Сибири, плюс настроили маршрутизацию так, чтобы трафик не выбегал за пределы сети, если это не требуется. Теперь путь куда короче, и трафик не покидает пределы городской сети:



Проще говоря, если вы живёте Красноярске, Владивостоке или Хабаровске, у вас, грубо говоря, только что появился в локальной сети сервер с танками. По факту же — возможность достучаться до сервера RU-8 по короткому маршруту с отличным результатом пинга.

Что, если чужой танкист на другом операторе?
На тестах в идеальных условиях до введения пиринговой маршрутизации пинг по Новосибирску составлял, к примеру, 198-224 мс. После – около 60 мс. Если у оператора нет аналогично пиринга то просто ваш пинг – 60 мс, а пинг других игроков – 210 мс.

Пиринг доступен абонентам мобильной сети?
Да, наш сетевой узел на городском кольце, поэтому и абонентам ШПД (домашнего интернета) и мобильным абонентам он будет доступен. Естественно, задержка «по воздуху» будет выше, там другое оборудования и своя, особая физика процесса. Но всё равно она станет чуть меньше, что приятно.

Только танки?
Любой ассортимент Wargaming. Ещё корабли и самолёты.

А можно так со Steam?
Технических ограничений по реализации нет, возможно не только для Steam. Реализация зависит от нескольких факторов: наличия соответствующей локальной инфраструктуры у сервиса, его популярности. Теоретически – да, но для этого необходимо наличие региональной инфраструктуры у сервиса, популярности сервиса у пользователей и проработанного проекта по реализации линка со стороны оператора связи.

А какие ещё плюшки для WoT?
Скоро будет приятный сюрприз при закачивании обновлений. Это можно будет делать быстрее — будет реализован пиринг до серверов с обновлениями.

А другие операторы?
Да, небольшие операторы могут быстрее решать вопросы, касающиеся изменений на локальном уровене. Но и у больших есть свои преимущества – совместные инфраструктурные проекты по приближению сервиса ближе к абоненту. Например, совместная установка кеширующих решение для сервисов Google.

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