Оптимизируем сервер. Нет лагам! - 9 Января 2012 - Блог - Московский сервер
 
Помним

 
 
Меню

 
 
cs 1.6

 
 
Мастерская

 
 
Всё для ucoz

 
 
Статьи

 
 
Пользов

Статистика сайта www.russia-server.ru/

Материалов всего [?]: 103 +
Пользователей всего: 55
PR-CY.ru

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Гости сайта Пользователи

Пользователи онлайн: Сегодня посетили


 
 
Реклама

регистрация доменов
домен RU - 99 руб
домен РФ - 99 руб
Зарегистрируй себе домен! имя:
зона:

2domains.ru
 
Главная » 2012 » Январь » 9 » Оптимизируем сервер. Нет лагам!
11:18
Оптимизируем сервер. Нет лагам!
Итак вы создали свой сервер CS 1.6, но вот ведь проблема, сервер периодически зависает или падает, у игроков жутко скачет пинг...
Как избавиться или же свести к минимуму риск возникновения подобных неприятностей:

1. Требования к "железу" и подключению 

Одна из причин лагов на сервере - недостаточная мощность компьютера или недостаточная скорость и надежность сетевого соединения.
На самом деле ознакомиться с этим пунктом желательно еще до того как вы решите создавать сервер. 

Рассмотрим подробнее системные требования HLDS сервера. Внимание, все требования приведены с учетом того, что компьютер используется только для обеспечения работы сервера, если есть еще и параллельные задачи(например вы хотите поиграть на сервере с того же компьютера где он и установлен), требования необходимо повысить.

- Оперативная память

Наиболее важное системное требование. Зависит в первую очередь от числа слотов на сервере. Также зависит от модов и плагинов, но в меньшей степени. Во время работы HLDS сервер потребляет в среднем 8-12Мб на 1 игровой слот, но поскольку это значение может достаточно сильно варьироваться, то рекомендуемым значением является 20Мб на слот. 

Таким образом при определении необходимого размера памяти под сервер руководствуйтесь требованиями:


10 слотов на сервере = 200Мб RAM
12 слотов на сервере = 240Мб RAM
16 слотов на сервере = 320Мб RAM
20 слотов на сервере = 400Мб RAM
24 слота на сервере = 480Мб RAM
и т. д.

- Процессор
Нагрузка на процессор во многом зависит от того будут ли на сервер установлены моды, и если да то какие. например сервер с Zombie-модом будет расходовать ресурсы CPU раза в 2 больше чем простой паблик. Также многое тут зависит от числа слотов, от требуемого FPS сервера. В общем для примерной оценки можно сказать что для нормальной работы паблика на 20 слотов с последней версией AMXX без дополнительных модов подойдет любой процессор Intel/AMD с частотой 2Ггц.
Если вы собираетесь поднимать более одного сервера, то желательно(но не обязательно) чтобы и ядер в процессоре было больше одного.

Остальные параметры железа играют незначительную роль и рассматривать их подробно не будем.

- Сетевое соединение (Если вы создаете сервер только для локалки, вам этот пункт не нужен)


Требование к скорости соединения с интернетом зависит в первую очередь от числа слотов, а также, в меньшей степени от плагинов. Наиболее требователен HLDS сервер к исходящей скорости (скорости отдачи), с этим нужно быть внимательнее, поскольку многие провайдеры делают в своих безлимитных тарифах исходящую скорость (скорость отдачи) заметно ниже, чем входящую скорость (скорость закачки).
Необходимая исходящая скорость на 1 слот примерно 15 кбайт/сек (120 кбит/сек)
Необходимая входящая скорость на 1 слот примерно 2 кбайт/сек (16 кбит/сек)
Заметим, что реально средний потребляемый трафик, будет несколько ниже приведенных значений, но скорость сильно меняется в процессе работы сервера, поэтому нужно руководствоваться максимальными значениями.
Умножаем эти значения на число слотов на сервере и получаем требование к скорости.

2. FPS сервера 

FPS сервера означает скорость работы сервера. Не стоит путать его с клиентским FPS, которые означают число кадров в секунду на мониторе клиента.
Latency игроков зависит в том числе и от того, насколько быстро сервер обрабатывает полученные от клиентов пакеты данных и формирует отправляемые пакеты клиентам. То есть чем больше FPS сервера, тем быстрее он работает и тем ниже пинг игроков. Но высокое значение FPS потребует большей нагрузки сервера на процессор.
Методы повышения FPS:
Linux
На линуксе все очень просто: добавляем в параметры командной строки -pingboost 3 для обеспечивания максимальной нагрузки на CPU и максимального FPS. Если нагрузку надо снизить то понижаем значение до -pingboost 2 или -pingboost 1.

Windows
Тут все несколько сложнее. По-умолчанию в Windows установлена слишком низкая частота MMTimer(мультимедиа таймер), в следствии чего HLDS сервер обрабатывает пакеты с низкой частотой, из-за этого fps сервера не будет больше 64, что хорошему пингу не способствует. Есть 2 пути решения этой проблемы:

- Увеличение частоты mmtimer. 
Самый простой способ - запуск любого приложения Windows, который увеличивает частоту mmtimer, например Windows Media Player. Просто запускаете WMP в фоновом режиме и FPS увеличивается до 500 а возможно и до 1000. Во время работы сервера в зависимости от нагрузки на процессор FPS изменяется в диапазоне от 150 до 500 или до 1000.
Также можно использовать Booster 1.7 (я юзаю этот, можно 2.40) - плагин к Metamod. 
Действует он таким же образом, изменяя mmtimer для обеспечения заданного FPS.
Вот настройки Booster 1.70 по-умолчанию: (добавлять в server.cfg)
booster_show_connmsg 1
booster_autofps 150
booster_minsleepms 3
booster_force_systicrate 0
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_mminc 2
Из всех этих настроек наиболее важны booster_autofps и booster_minsleepms, первая означает каким FPS должен быть в среднем, вторая ограничивает максимум FPS следующим образом, например:
booster_autofps 150 означает, в среднем FPS сервера будет около 150 fps
booster_minsleepms 3 означает, что максимум FPS сервера = 1000/3 = 333 fps
Настраивать их нужно по своему усмотрению, в зависимости от нагрузки сервера на ваш процессор. Помните, что не всегда имеет смысл гнаться за слишком высоким FPS, иногда лучше снизить нагрузку. Отличия в пинге игроков и нагрузке на CPU между серверами работающие допустим на 200 и на 500 FPS достаточно небольшие. Эти же самые различия для серверов к примеру на 64 и на 200 FPS гораздо больше. То есть пинг не будет снижаться пропорционально увеличению FPS. 
Важно, если вы используете Booster - никаких других приложений, увеличивающих частоту mmtimer не должно быть запущено, иначе контроль максимума fps booster_minsleepms теряет смысл.
Функция мониторинга нагрузки CPU - booster_cpu_enabled 1 работает только на английской версии Windows и только для одноядерных процессоров.
Есть еще один плагин схожий по функциям, но шире по настройкам и возможностям, чем Booster. Это ALX Lowping
-Более совершенные и надежные функции autofps
-Новые мониторинги
-Встроенный HELP
-Ведет логи
-Отимизирован под разные OS Win
-Не дает утечек памяти(Это значит, то что сервер не будет падать из-за этого мода, проще говоря вычищает память от ненужной информации)
-Может восстановить сервер от падения
-Дополнительные команды ускорения
-Более совершенная оптимизация под metamod
-Связь с АМХX
-Лучше работает 
-Меньше потребляет ресурсов
-Оптимизирует настройки каждого клиента
-Подгрузка дополнитеельного дампа игры
-Оптимизация моделей оружия в игре (пинг в игре менее скачет при выстрелах, взрывах и т.д.)
-CPU понижение
-Улучшена работа с FPS
-Встроеный HPK(отдельный плагин под амхх, его можно выключать)


Для работы обязательно:
-Metamod
-Amxmodx
-Microsooft .NET FrameWork не Ниже 3.0, а лучше сразу 3.5 


HELP:
Цитата:! НЕ переименовывайте название dll, Не удалляйте папку logs, и не изменяйте имя конфигов и деррикторий. Она всегда должна быть
addons/alx_lowping/dlls/
addons/alx_lowping/logs/
addons/alx_lowping/configs/ 

Конфиги:
-debug.cfg: 
Цитата:Это конфиг отладки 1 уровня, менять в нём ничего ненадо. 

-engine.cfg: 
Цитата:Файл engine LowPing'a. Не менять. 

-testing.cfg: 
Цитата:Файл ПОЛНОЙ внутренней проверки. LowPing внутри себя проверяет каждую функцию. Это требуется только в случае если происходит серьезный сбой. Но 90% на то что сбоев не будет. 

-strengthening_on.cfg: 
Цитата:В этом конфиге расположены команды для ускорения сервера. Оптимизации работы для каждого клиента на сервере. 

-lowping.ini: 
Цитата:Параметры запуска всех функций LowPing'a. Задаются значения и параметры для кажой функции. Ничего трогать ненадо. Все оптимизировано. 

-lowping.cfg: 
Цитата:Главный файл конфигурации. 
!Настраивать всем. 

Незабудте прочитать файл README.txt.
Не рекомендуется менять системные конфиги Мода во избежания проблем с сервером.


Команды:
*Без значений
Цитата:alx_fps - FPS сервера.
alx_ticrate - ticrate сервера
alx_lowping_helpme - Показывает информацию о всех коммандах на English
alx_lowping_about -О моде.
alx_lowping_version - Версия 

*С значениями

-Общие:
Цитата:alx_lowping_autofps - Автоматичекская установка FPS сервера. МАКС 1200. 
ВНИМАНИЕ: Зависит от команды alx_lowping_sleepm
и НЕ ВБИВАЙТЕ САМЫЙ МАКСИМУМ ЭТО ВАМ НЕ БУСТЕР. Используйте значение в районе 500-750. 

alx_lowping_sleepm - Оптимизиррует выше указанную команду autofps:
1 - значит можно ставить autofps от 600 до 1200
2 - от 400 до 500
3 - от 300 до 400
4 - от 200 до 300
5 - от 150 до 250
6 и до 10 - и так далее снижается. 
alx_lowping_join_msg - Сообщение, которое отображается в консоли игрока, при заходе на сервер.
0-OFF. 
1-Стррочное соообщение. 
2-Сообщение табличкой.

CPU
alx_lowping_cpu - Включение выключение контроля CPU. 
1-ON 
0-OFF.

alx_lowping_cpu_mspike - В какое количество шагов будет сброшен дамп процессора. После пересечения значения level.

alx_lowping_cpu_level - Левел нагрузка на процессор

alx_lowping_cpu_timer -Таймер, время в которое будет сброшен CPU 


LowPing
alx_lowping_strengthening - Усиление ,ускорение работы. Оптимизация команд соединения для каждого клиента персонально для добывания самого низкого значения пинга.

alx_lowping_proc_mdl - Сттабилицаия оружия моделей выстрелов. 

alx_lowping_premonitor_win -Тип premonitor 
0-Win Xp 
1-Win Vista

Код HTML:
alx_lowping_test 
alx_lowping_debug
Отладка Тип 2 (полная)

Отладка Тип 1 (частичная)

HPK (High Ping Kicker)

alx_lowping_hpk - Включение выключение HPK. 
1-ON 
0-OFF.

alx_lowping_hpk_mping - Максимальный пинг игрока при превышении которого он будет удален с сервера.  ЭТО ПРОПИШИТЕ В AMXX.CFG !!!

alx_lowping_hpk_tests - Колиичествво тестов пинга

alx_lowping_hpk_checks - Количесттво проверок

alx_lowping_engine_test - Проверки engine под вашь сервер.
Автоматичское значение.

Цитата:alx_lowping_engine_sepd - Автоматически изменяемые значения 

alx_lowping_engine_xepd - Автоматически изменяемые значения нетрогайте

alx_lowping_engine_yepd - Автоматически изменяемые значения нетрогайте

alx_lowping_engine_zepd - Автоматически изменяемые значения 
alx_lowping_engine_fepd - Автоматически изменяемые значения 
Не Изменяйте эти значения! 


PS: Так-как система LowPing'a довольно тяжелая и сложная, мод после запуска сервера требует 1-2 минуты на самостабилизацию, точнее чтобы разогнать сервер.

Для нормальной работы не забутьте дописать в metamod/plugins.ini:

win32 addons/alx_lowping/dlls/ALX_LowPing.dll


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

- Обработка пакетов HLDS в необходимое время.
При этом способе сервер HLDS обрабатывает пакеты только в то время, когда это необходимо, то есть, когда приходит пакет от клиента. FPS сервера будет увеличен ровно настолько, насколько это нужно для обработки пакета. Поскольку этот способ не требует увеличения частоты mmtimer, то он может неплохо сэкономить ресурсы CPU. Для этого нужно установить плагин Booster Lite
Настройки Booster Lite по умолчанию:
sys_ticrate 10000
booster_lite_mode 0 //контролирует степень нагрузки на CPU (от 0 до 3) 0 - самый высокий уровень, наиболее эффективно понижает пинг, 3 - самый низкий уровень, фактически отключает Booster-Lite
booster_lite_extra_sleep_frequency 10
Использование Booster-Lite позволяет добиться такого же, а возможно даже и лучшего результата, чем при использовании Booster. И при этом к тому же нагрузка на процессор будет существенно меньшей даже если ставить booster_lite_mode 0. 
Есть лишь один минус - при использовании Booster-Lite нельзя запускать никакие приложения, повышающие частоту mmtimer (Windows Media Player, Winamp, QIP и т.д.). Иначе последствия будут непредсказуемыми, начиная от ускорения игрового времени на сервере и заканчивая вылетом сервера с ошибкой.

Какой из двух методов повышения FPS выбрать решать вам. Можно еще использовать Booster версии выше чем 2.0
Установка:
Распакуйте архив в папку ....addonsbooster
Допишите в ....addonsmetamodplugins.ini
win32 addons\booster\booster_mm.dll


Данные настройки скопируйте в server.cfg:
booster_show_connmsg 2
booster_autofps 150
booster_minsleepms 5
booster_force_systicrate 0
booster_cpu_enabled 0
booster_cpu_spikemax 3
booster_cpu_spikelevel 75
booster_cpu_floor 50
booster_cpu_mminc 2
booster_cpu_quiettime 300
booster_cpu_mmmin 3
booster_cpu_mmmax 8
booster_lite_mode 3
booster_lite_extra_sleep_frequency 0

Настройки сделаны оптимально.

Не совмещайте Booster and Booster-Lite!, там объединены функции Booster 1.7 и Booster-Lite

Мод для снижения пинга!

Снижает пинг в 2-4 раза 

лучше чем простой бустер. 

Если раньше пинг прыгал от 5 до 40, 

то теперь выше 8 не будет!

Установка:

Если у вас стоит любой другой бустер удалите его перед установкой!
1)В папке addons создайте папку boosterlite .
2)В папку boosterlite закиньте все имеющиеся файлы , кроме txt. файлов.
3)Зайдите в папку addons/metamod и откройте файл plugins.ini .
4)Добавтье в plugins.ini строку
win32 addons/boosterlite/booster_lite_mm.dll
5)Закройте , сохраните!
Всё установка окончена!!!
!!!ВНИМАНМЕ!!! 
1)Что бы бустер работал в server.cfg должно быть пропасано
booster_lite_mode 0 
sys_ticrate 10000 
2)Что бы бустер работал сервер надо запускать с командой -noipx
но его использование повышает риск падения сервера. 
Если у вас несколько серверов и многоядерный процессор и вы хотите распределить разные сервера(нагрузку) по разным ядрам, не используйте Booster 1.70 или ALX LowPing, поскольку несмотря на заданное соответствие (Affinity), нагрузка всех серверов всегда будет ложиться только на 1 ядро.

3. Защита от атак 

Сервер может сильно лагать или даже зависнуть в случае успешно проведенной DDos атаки. Для защиты от атак и эксплоитов рекомендуется использовать программу Anti CSDoS.
Ставим защиту от хакерских атак на свой сервер 

В этой статье я расскажу Вам как обезопасить свой сервер от DOS атак. Итак, приступим.

1) для начала скачиваем программу AntiCSDos:

2) распаковываем архив и запускаем приложение AntiCSDoS.exe, устанавливаем программу... после установки, запускаем приложение Anti CSDoS by Shocker
Примечание: желательно, чтобы ваш cs 1.6 сервер был включен до того, как вы запустите AntiCSDos.

3) перед нами появляется окно, далее мы ставим галочку напротив нашего сервера и жмем кнопку Patch HLDS. Должно высветиться следующее:

Готово. Теперь Ваш сервер защищен от хакерских атак ^^ Если же Вы захотите снять защиту, то нажмите кнопку Unpatch HLDS. Теперь можно просто скрыть эту программу и она окажется у Вас в правой нижней части окна))

Пояснение некоторых функций и кнопок:

Full process list
- полный список процессор на твоем компьютере

Refresh process list - обновление списка процессов

Patch HLDS
- установка защиты на ваш сервер

Unpatch HLDS
- снятие защиты

Custom message - сообщение, которое будет показано хакеру в момент атаки

Timestamp - дата/время включения защиты

Action - действия с вашими серверами

Save log to file - сохранить лог защиты в файл

Autostart on Windows Startup - автоматический запуск программы AntiCSDos при включении компьютера

Autopatch all HLDS.exe processes on start - автоматическая установка защиты на все процессы hlds.exe при включении программы

Autocheck & Autopatch all HLDS.processes every 3 minutes - автоматическое нахождение всех процессов hlds.exe и установка на них защиты (так же автоматически)

Все что от вас требуется это запустить программу, нажать кнопку "Patch HLDS" и оставить в фоновом режиме. Последняя версия Anti CSDoS 3.2 защищает от всех известных атак практически любую версию сервера.

4. HLDS совместно с другими программами 

Что делать, если вы хотите поиграть на собственном сервере, но как только на него заходите, он начинает ужасно лагать? Тут все дело в расстановке соответствий и приоритетов. Заходите в диспетчер задач (Ctrl+Alt+Del) находите в списке "Процессы" hlds.exe правая кнопка -> приоритет - выше среднего. На процесс hl.exe приоритет ставьте ниже среднего, но если это приведет к падению FPS(клиента), то лучше оставить средним.
Всего комментариев: 0

Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
 
Сервера

 
 
Мини-чат

 
 
опрос

 
 
PROFIL

Гость

Сообщения:

Группа:
Гости
Время:07:32

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Забыл пароль · Регистрация
 
 
счётчик

Рейтинг SIMPLETOP.NET Яндекс.Метрика
Рейтинг игровых сайтов BestTOP.de - Die beste Topliste ПетербургПетербург Рейтинг Counter-Strike сайтов. TOP.MY-CS.RU
 
 
мониторинг

Сервера CS 1.6, Source, Counter-Strike мониторинг Мониторинг серверов CS 1.6 сервера cs 1.6 Сервера CS 1.6 мониторинг Мониторинг серверов CS 1.6, СSS, Condition Zero - http://pro-cs.ru Мониторинг серверов CS 1.6
сервера кс 1.6 Сервера cs 1.6 CS Мониторинг серверов CS 1.6 Мониторинг серверов Мониторинг серверов cs 1.6
Сервера cs 1.6 Монитор cs серверов Сервера CS 1.6
Сервера КС
сервера cs Мониторинг серверов CS 1.6 сервера cs 1.6
мониторинг серверов cs 1.6
 
 
Рейтинг сервера

 
Реклама
Реклама
Реклама