Интервью с разработчиком игры "Танки Онлайн" Дмитрием Амелиным "про DDos-атаки"
Так как в последнее время произошел ряд событий, заставивших игроков (да и разработчиков я думаю тоже) понервничать и поволноваться, было решено взять интервью у одной из самых значимых фигур среди разработчиков проекта. Имя этого человека, я думаю, знакомо многим - это Дмитрий Амелин (танкист amelin на игровом пространстве).
Под термином «события» больше всего подразумеваются DDos-атаки месячной давности, падения (крахи) флэш-плагина, лаги и все другое. Судя по постам на форуме, данная тема интересует сейчас довольно многих игроков «Танков Онлайн». Этим интервью хочется уменьшить возрастающее недовольство, поток слухов и кривотолков.
Итак, начнем:
На главном сайте «Альтернативы», в разделе «О компании», мы можем найти о Вас такую информацию: «Программист широкого профиля. Сейчас работает над ядром серверной части проекта.» Насколько верно это отражает суть вещей и не могли бы вы более подробно разъяснить, чем конкретно вы занимаетесь?
На момент создания сайта alternativaplatform.com так и было. Сейчас же, с легкостью, можно исправить на «Программист и администратор широкого профиля.» Сейчас занимаюсь созданием административного интерфейса к новой версии платформы.
Также я администрирую всё, что можно администрировать - 15 серверов, около 30 десктопов и прочее железо/сервисы. К счастью, половина офисных машин работают под линуксом, а с ним меньше всего проблем. Да и коллектив IT -грамотный, глупых вопросов не бывает.
Как давно вы являетесь сотрудником Альтернативы и разработчиком проекта «Танки Онлайн»?
С момента создания.
Кто Вы по образованию и как вообще попали в игровой мир (является ли проект «Танки Онлайн» для Вас первым подобного рода проектом)?
Поступал на «Математическое моделировани систем и процессов» при ПГТУ, но не закончил. Были мысли доучиться, но получение диплома о ВО не оправдывает затраченного времени. Проект безусловно первый. Много ли «realtime action игр» на флеше?
Насколько Вы за время работы в «Альтернативе» выросли как профессионал и много ли дало Вам участие в разработке такого нелегкого продукта, как браузерная многопользовательская игра (MMOG)?
Насколько я вырос - не мне судить, но бОльшую часть знаний я приобрел за время работы в «Альтернативе».
Ходят слухи о том, что вы являетесь 1-м официально зарегистрировавшимся игроком «Танков Онлайн». Насколько эти слухи соответствуют действительности? Если это правда, расскажите немного поподробнее о данном интересном факте.
Нет, первым был Алексей Квиринг, я вторым. А интересного тут мало: сделали форму регистрации, разработчики сразу же зарегистрировались.
Играете ли вы сейчас (хоть изредка) в «Танки Онлайн» на основных серверах? Если да, как бы охарактеризовали игру со стороны рядового игрока?
Играю часто. Почти год ник виртуала держу в секрете, уже подполковник. Со стороны рядового игрока охарактеризовать тяжело, ибо я не совсем рядовой игрок. Нет, у меня нет убер-пушки и помножения опыта на 100
Вы разрабатываете серверную часть проекта. Это значит что Вы как никто другой должны быть в курсе всего, что твориться с той частью игры, которая происходит НЕ на стороне клиента. Если можно, хотелось бы получить более подробную информацию об этом. Как я понимаю, все подсчеты ведутся именно на сервере, за что же тогда отвечает клиентская часть? Только лишь за нажатие клавиш или на неё возложена какая-то большая функциональность?
Воздержусь от ответа на этот вопрос. Предлагаю вам взять интервью у Алексея Квиринга, он владеет наиболее полной информацией по игровому серверу.
Из постов на форуме (посты годичной давности) видно, что раньше вы также занимались проблемами, возникавшими при донате (не дошедшие до игрока кри и т.д.) . Было ли это как-то связано с архитектурой самого проекта, или проблемы возникали зачастую на стороне агрегаторов?
Я релизовал биллинг-сервер, который принимал платежи от агрегаторов и бережно их хранил. Поэтому я отвечал на вопросы пользователей, т.к. только я знал как это все работает и имел прямые контакты с агрегаторами.
В «Танках Онлайн» мы видим очень широкий выбор способов закидывания реала. Насколько вообще сложно в проектах такой величины и сложности осуществить/внедрить коммерческую часть, чтобы она была достаточно защищена и функционировала правильно?
Как правило, все агрегаторы работают по единому алгоритму, отличается лишь реализация. Реализовать не сложно, главное - предусмотреть все варианты, даже те, которых не может быть по протоколу агрегатора.
Совсем недавно было введено 2 дополнительных сервера. Поэтому, на данный момент, мы имеем 8 полноценных серверов. Справляются ли они с нагрузкой в должной мере?
Нет. Но мы работаем на этим. Позавчера с Алексеем Квирингом и Федором Куликовым была проведена очередная оперативка по оптимизации. Результат простой - оптимизации быть! По нашим прогнозам, лаги должны существенно сократиться, время старта сервера также сократится. Обновление выйдет в течении следующей недели.
Как было заявлено, в версии 2.0 будет использована кластерная система, и поэтому сервера, как таковые, перестанут существовать. Насколько сложно это будет с функциональной точки зрения и не приведет ли к каким-либо серьезным проблемам?
На самом деле, кластерная система и сейчас есть, но «прикручена сбоку». В версии «ТО» 2.0 кластер заложен изначально, поэтому сложность не сильно повышается. Да и проблем будет меньше.
С чем связаны ежедневные запланированные рестарты серверов в 16:20 и в 5:00 по мск.?
С накоплением мусора в оперативной памяти. Сборщик мусора по некоторым причинам не может почистить неиспользуемые объекты, они захламляют память.
Меньше, чем месяц назад, проект был подвергнут серьезной DDos-атаке со стороны злоумышленников. Вы одним из первых отписались на форуме по данной теме, постарались успокоить пользователей (за что Вам отдельная благодарность со стороны игроков). Поэтому можно считать вас наиболее компетентным лицом по данному вопросу. Не могли бы Вы еще раз поподробнее рассказать, что же случилось и как данная проблема была решена?
Извиняюсь! Не отписался подробно, хотя обещал...
В среду (25 августа) вечером началась атака на сайт tankionline.com. Я даже не сразу понял, в чем дело - просто увидел большую нагрузку на сервер. Когда пришло понимание, началась небольшая паника, ибо раньше с DDos-атаками не сталкивался.
В первую очередь пытались разобраться своими силами. Не получилось. Обратились к нашему датацентру - они предоставили фильтр*. Как только сайт начал открываться атака переместилась на s.tankionline.com**. Был запрошен второй фильтр. И опять - как только фильтр начал справляться, боты добрались до alternativaplatform.com***. Третий фильтр датацентр не смог предоставить.
На ~18000 ботов фильтры перестали справляться...
На удачу позвонил в highloadlab.ru. Почему на удачу? Да потому что сайт не внушал доверия Как оказалось - зря! Они быстро отреагировали, и через 15 минут был предоставлен фильтр для alternativaplatform.com***. После 30 минут обучения фильтра форум начал отвечать. Мы быстро перенастроили DNS «Танков» и спустя час игра была доступна.
К сожалению, у highloadlab.ru пару раз возникали проблемы, но они достаточно быстро их устраняли, за что им огромное спасибо! Мы доставили им немного головной боли, но не из-за объема атаки, а из-за специфичности игры. Им было интересно. Объем атаки для них был небольшой - 25 000 ботов.
Атака пошла на спад в воскресенье (29 августа) 19:00 по мск.
* фильтрует запросы от ботов, добавляет в бан-лист.
** на тот момент три сервера, отдающих ресурсы для игры (библиотеки, звуки, картинки, ...)
*** сам сайт, наши служебные ресурсы, forum.tankionline.com
Осуществляются ли DDos-атаки до сих пор, или их волна уже стихла и не представляет более опсности? Какие средства защиты от подобного рода проблем помогут в будущем не попасть в ситуацию месячной давности?
Нет, сейчас «Танки» не атакуются. Хоть мы и ждали второй волны, ее к счастью не было. Защита простая - взаимодейстовать с организациями, специализующимися на этом.
Насколько большой урон был произведен DDos-атаками и в чем это больше всего выразилось?
Как мне кажется, наибольший урон - паника среди пользователей и распространение ложной информации.
В последнее время, во время битвы, участилось падение плагина Adobe Flash Player (будь то Mozilla Firefox или Google Chrome). Лично я сталкивался с данной проблемой по многу раз на дню. Суть и возможные решения проблемы описаны здесь. Как лично Вы прокомментировали бы данную проблему? Ведется ли какая то работа по её решению со стороны «Альтернативы»?
Да, работа ведется. К сожалению, в лабораторных условиях не удалось воспрозвести. Как только получится - будем знать, что делать дальше. Когда я услышал описание "падение/крах флеша", то для меня это означало только одно: завершение процесса плагина/плеера. Причина может быть одна - ошибка в плеере. Но, как оказалось, дело совершенно в другом - плеер продолжает работать (воспроизводит звук), но ничего не отрисоввывается.
Я тоже пару раз сталкивался с такой проблемой, но списывал это на глюки линуксовского плеера (а он, увы, далек от идеала).
Разберемся!
Наряду с проблемой падения плагина, в последнее время мы также имеем дело с довольно серьезными лагами. Подобные лаги зачастую могут закончится табличкой «... connection to server ... lost», после которой игрок уже не может восстановиться в битве и теряет все заработанные очки и т.д. С чем это может быть связано? Не с новой ли системой шифрования пакетов, которая была введена против читеров? Получается, пришлось пожертвовать количеством лагов ради безопазности траффика?
Про лаги я написал выше, ждем обновления. Также заказан дополнительный сервер. Он тоже поможет сократить лаги в игре и увеличит скорость работы форума. Шифрование в данном случае не причем.
На форуме периодически создаются темы, где пользователи описывают возникающие у них проблемы, а также пытаются общими (иногда своими) усилиями решить данные проблемы. Получаете ли вы информацию об этих постах и опираетесь ли на данные, полученные со стороны игроков, в решении описанных в постах проблем?
Да, получаем. На основе предоставленной информации пытаемся воспроизвести проблему.
Напоследок хотелось бы услышать пожелания лично от Вас нашим читателям и игрокам «Танков Онлайн».
Желаю меньше волноваться. Это не всегда видно, но мы всегда помним о пользователях и много работаем над проектом.
Оставайтесь с нами!
источник:
сайт игры: