Намаляваме ping и забавяния на сървъра - Моите статии - Каталог на статиите - Gorodetsky Server ® № 1
SOBR*
--> --> -->--> -->Мини чат --> |
--> --> |
--> -->Нашето проучване --> |
--> |
Така че вие сте създали свой собствен CS 1.6 сървър, но тук е проблемът, сървърът периодично замръзва или се срива, пингът на играчите скача ужасно. Как да се отървете или да намалите риска от такива проблеми:
1. Изисквания за хардуер и свързаност
10 сървърни слота = 200MB RAM 12 сървърни слота = 240MB RAM 16 сървърни слота = 320MB RAM 20 сървърни слота = 400MB RAM 24 сървърни слота = 480MB RAM и т.н.
- Процесор Натоварването на процесора до голяма степен зависи от това дали на сървъра са инсталирани модификации и ако е така, какви. например сървър с Zombie mod ще консумира 2 пъти повече процесорни ресурси от обикновен публичен. Освен това тук много зависи от броя на слотовете, от необходимия FPS сървър. Като цяло, за груба оценка, можем да кажем, че за нормалната работа на 20-слотов публичен с най-новата версия на AMXX без допълнителни модификации, всеки процесор Intel / AMD с честота 2 GHz ще свърши работа. Ако ще вдигате повече от един сървър, тогава е желателно (но не е необходимо) процесорът да има повече от едно ядро.
Останалите параметри на желязото играят незначителна роля и няма да ги разглеждаме подробно.
- Мрежова връзка (Ако създавате сървър само за LAN, нямате нужда от този елемент) Изискването за скорост на интернет връзката зависи основно от броя на слотовете, а също и в по-малка степен от добавките. Най-взискателният HLDS сървър е по отношение на изходящата скорост (скорост на качване), трябва да сте по-внимателни с това, тъй като много доставчици го правят в своитеПри неограничени тарифи изходящата скорост (скорост на качване) е значително по-ниска от входящата скорост (скорост на изтегляне). Необходимата изходяща скорост за 1 слот е около 15 kbps (120 kbps) Необходимата скорост на възходящ поток за 1 слот е около 2 kbps (16 kbps) Имайте предвид, че действителният среден трафик ще бъде малко по-нисък от дадените стойности, но скоростта v варира значително по време на работа на сървъра, така че трябва да използвате максималните стойности като ръководство. Ние умножаваме тези стойности по броя на слотовете на сървъра и получаваме изискването за скорост.
FPS на сървъра се отнася до скоростта на сървъра. Не трябва да се бърка с FPS на клиента, което означава броя на кадрите в секунда на монитора на клиента. Забавянето на плейъра също зависи от това колко бързо сървърът обработва пакети с данни, получени от клиенти, и генерира пакети, изпратени до клиенти. Тоест, колкото повече FPS има сървърът, толкова по-бързо работи и толкова по-нисък е пингът на играчите. Но висока стойност на FPS ще изисква повече натоварване на процесора на сървъра. Методи за увеличаване на FPS: Linux В Linux всичко е много просто: добавете -pingboost 3 към параметрите на командния ред, за да осигурите максимално натоварване на процесора и максимален FPS. Ако натоварването трябва да се намали, намалете стойността до -pingboost 2 или -pingboost 1.
Windows Това е малко по-сложно. По подразбиране честотата на MMTimer (мултимедиен таймер) е зададена твърде ниска в Windows, в резултат на което HLDS сървърът обработва пакети с ниска честота, поради което fps на сървъра няма да надвишава 64, което не допринася за добър ping. Има 2 начина за решаване на този проблем:
- Увеличете честотата на mmtimer. Най-лесният начин е да стартирате всяко приложение на Windows, което увеличава честотата на mmtimer, като Windows Media Player. Простопуснете WMP във фонов режим и FPS се увеличава до 500 и евентуално до 1000. Докато сървърът работи, в зависимост от натоварването на процесора, FPS варира в диапазона от 150 до 500 или до 1000. Можете да използвате и Booster 1.70 (аз използвам този, може би по-нов) - плъгин за Metamod. Прави същото, като променя mmtimer, за да осигури определен FPS. Ето настройките по подразбиране на Booster 1.70: (добавете към server.cfg) booster_show_connmsg 1 booster_autofps 150 booster_minsleepms 3 booster_force_systicrate 0 booster _c pu_enabled 1 booster_cpu_spikemax 3 booster_cpu_spikelevel 75 booster_cpu_mminc 2 От всички тези настройки, booster_autofps и booster_minsleepms са най-важни, първото означава колко FPS трябва да бъде средно, второто ограничава максималния FPS, както следва, например: bo oster_autofps 150 означава, че средният FPS на сървъра ще бъде около 150 кадъра в секунда booster_minsleepms 3 означава, че максималния FPS на сървъра = 1000/3 = 333 кадъра в секунда Трябва да ги конфигурирате по свое усмотрение, в зависимост от натоварването на сървъра на вашия процесор. Не забравяйте, че не винаги има смисъл да преследвате твърде висок FPS, понякога е по-добре да намалите натоварването. Разликите в ping на играчите и натоварването на процесора между сървърите, работещи на 200 и 500 FPS, са доста малки. Същите разлики при сървърите, например при 64 и при 200 FPS са много по-големи. Тоест пингът няма да намалее пропорционално на увеличението на FPS. Важно е, ако използвате Booster - не трябва да работят други приложения, които увеличават честотата на mmtimer, в противен случай контролът на максималните fps booster_minsleepms е безсмислен. Функцията за наблюдение на натоварването на процесора - booster_cpu_enabled 1 работи само на английската версия на Windows и само за едноядрени процесори. Има още един плъгинподобни по функции, но по-широки по настройки и възможности от Booster. Това е ALX Lowping. Можете да го използвате по свое усмотрение, но в момента плъгинът е доста "суров" и съдържа грешки.
- Обработка на HLDS пакети в точното време. При този метод HLDS сървърът обработва пакети само в момента, в който е необходимо, тоест когато пакетът пристигне от клиента. FPS на сървъра ще бъде увеличен точно толкова, колкото е необходимо за обработка на пакета. Тъй като този метод не изисква увеличаване на честотата на mmtimer, той може да спести ресурси на процесора доста добре. За да направите това, инсталирайте плъгина Booster Lite Настройки на Booster Lite по подразбиране: sys_ticrate 10000 booster_lite_mode 0 //контролира степента на натоварване на процесора (от 0 до 3) 0 - най-високото ниво, най-ефективно намалява ping, 3 - най-ниското ниво, всъщност деактивира Booster-Lite със същия и може би дори по-добър резултат, отколкото при използване на Bo остер. И в същото време натоварването на процесора ще бъде значително по-малко, дори ако booster_lite_mode е настроен на 0. Има само един недостатък - когато използвате Booster-Lite, не можете да стартирате приложения, които увеличават честотата на mmtimer (Windows Media Player, Winamp, QIP и др.). В противен случай последствията ще бъдат непредвидими, вариращи от ускоряване на времето за игра на сървъра и завършващи със срив на сървъра с грешка.
Кой от двата метода за увеличаване на FPS да изберете зависи от вас. Все още можете да използвате версии на Booster, по-високи от 2.0, функциите на Booster 1.7 и Booster-Lite са комбинирани там, но използването му увеличава риска от срив на сървъра. Ако имате няколко сървъра и многоядрен процесор и искате да разпределите различни сървъри (натоварване) на различниядра, не използвайте Booster 1.70 или ALX LowPing, защото въпреки посочения афинитет (Affinity), натоварването на всички сървъри винаги ще пада само върху 1 ядро.