О сетевых задержках в игре

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

Первое из этих сообщений касается нововведения патча 4.0.6: теперь игроки могут любоваться на два лагометра вместо одного.



перевод с американского варкрафт/катаклизм форума (источник)
В патче 4.0.6 мы разделили измерение задержки соединения игрока на два разных пункта: «локальную» и «глобальную».

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

«Локальная» задержка показывает пинг до вашего игрового мира. Через это соединение передаются данные чата, аукциона, некоторые данные аддонов и другие вещи. Это соединение требует довольно узкого канала.

«Глобальная» задержка относится к соединению, через которое передается гораздо больше данных – данные боя, данные о людях вокруг вас (специализации, вещи, энчанты и так далее), данные об NPC и очень много чего еще. Если вы зонитесь в место, где находится много народу, к вам начинает передаваться большое количество информации, что может поднять задержку вашего соединения.

До патча 4.0.6 лагометр показывал только «глобальную» задержку, что иногда приводило к непониманию игроков, которые могли нормально чатиться, но никаких действий в игровом мире совершить не могли и в конце концов вылетали в оффлайн. Мы надеемся, что теперь, когда лагометра два, вы сможете яснее представлять себе, что происходит.

Как вы могли понять, два вышеописанных соединения используются неравномерно, и поэтому числа в лагометрах могут отличаться.


Ну хорошо, - скажете вы, и что мне со всего этого?
:cut:
перевод с американского варкрафт/катаклизм форума (источник)
В общем-то ничего, но я хотел сфокусировать ваше внимание на том, как различные факторы влияют на цифры в лагометрах.

Вот список того, что наиболее часто вызывает высокий пинг у наших игроков:
1)   Беспроводное подключение
2)   Потеря пакетов
3)   Недостаточная ширина широкополосного соединения*
4)   Аддоны
5)   Фаерволы
6)   Неверно настроенные или сломанные домашние роутеры
7)   QoS и системы учета трафика, приводящие к тому, что пакеты проходят лишнюю очередь
8 )   Перегрузка канала (не обязательно канала вашего провайдера, это возможно в любом месте между вами и Близзард)

*на июль 2010, «официальное» определение широкополосного интернет-соединения (FCC) требует 4 мегабит на скачивание и 1 мегабита на отдачу. Все, что меньше – не является «официальным» широкополосным соединением.

Понижение видеонастроек (особенно дистанции обзора) снижает количество данных, которые требуется передавать по интернет-каналу, и поэтому может считаться приемлемым шагом в поиске неисправности.

Если ваша «локальная» задержка маленькая, а «глобальная» большая, то чаще всего это означает, что на вашем соединении наличествует некая QoS-перегрузка, на микро-уровне (LAN) или макро-уровне (WAN). Симптомом этого служит случай, когда вы можете чатиться, но не можете кастовать.

Если же обе задержки большие, это означает что ваше соединение в целом не тащит.

Второе сообщение еще интереснее. Оно обещает игрокам с нормальным интернет-соединением скорое и драматическое снижение пинга в инстансах.


перевод с американского варкрафт/катаклизм форума (источник)
В патче 4.0.6 мы внесли несколько изменений в наши сервера инстансов. Эти изменения были направлены на то, чтобы снизить задержку соединения клиента с сервером. К сожалению, такие шаги повлекли за собой увеличение использования интернет-канала (трафика). Исходя из отзывов, которые мы получили, нам пришлось временно откатить эти нововведения назад.

Не могли бы вы рассказать об этом поподробнее, на пальцах?

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

В чем нет сомнений, так это в том, что проблемы с пропускной способностью не связаны с нашей собственной сетью. Мы никогда даже не приближались к ее техническим ограничениям. Самый большой когда-либо случившийся пик занял где-то 1/5 нашего максимального канала.

Во время технического обслуживания в день релиза 4.0.6 на сервера инстансов (BG/арена/подземелья) были внесены изменения. В результате одного из этих изменений пинг для огромного количества наших пользователей (около 99%) драматически снизился. Для меня лично пинг упал с обычных 120-150 до 12 миллисекунд. Я не шучу. 12 миллисекунд из дома! Я был просто в восторге. Рейдить было просто здорово. Огромный процент игроков испытывал те же самые чувства.

Но! У меня дома очень хорошее кабельное соединение с интернетом и хорошо спроектированная внутренняя сеть. У меня не было проблем с тем, чтобы потянуть увеличившийся трафик. Вы понимаете, одной из причин того, что пинг упал, было увеличившееся количество пакетов от клиента к серверу. В некоторых случаях трафик вырастал втрое. И для тех игроков, чье подключение было далеко от идеального.. все стало очень печально. Нам пришлось отключить это изменение до той поры, пока мы не сможем выборочно задействовать его для тех игроков, которые смогут им воспользоваться. К сожалению, такой функционал требует выхода дополнительного патча, поэтому нам придется немного подождать.

Да, мы действительно пошли на это из-за того, что 1% наших пользователей испытывали проблемы. Нам часто приходится поступать подобным образом.

Мы понимаем, что не все игроки могут себе позволить то, что имеется у других. Мы в курсе, что некоторые играют на компьютерах, выпущенных 8-10 лет назад (а иногда и больше). Мы знаем о том, что кто-то сидит на 3G или спутниковом соединении, даже учитывая тот факт, что такие способы подключения не удовлетворяют минимальным требованиям игры. Не все могут себе позволить апгрейд компьютера и не во всех регионах есть возможность получить более широкий интернет-канал. Мы постоянно видим игроков, чьи соединения режутся их провайдерами из-за стоимости передачи трафика по трансатлантическим кабелям. К сожалению, не всегда возможно помочь людям в ситуации, которая не находится под вашим контролем.

[..] Честно говоря, требования World of Warcraft к интернет-соединению игроков не такие уж и высокие. Обычный игрок не потребляет больше чем несколько сот мегабайт в месяц. Но что важно, так это «честная» ширина вашего канала – может ли он пропустить через себя «всплески» данных, которые время от времени посылаются. Все вы знаете такие критичные моменты, они наступают во время боя с рейдовыми боссами или в момент, когда вы грузитесь в столице вашей фракции. [..]