v(olks)Server4000 & CoD4

  • Moin,


    ich habe momentan mit derben Lags zu kämpfen.
    Zu meinem System:
    - v(olks)Server4000
    - Image: Debian Lenny 64Bit
    - Es laufen ausschließlich CoD4-Gameserver (Mod: PromodLive204 bzw 211)
    - (kein Teamspeak, kein Webserver)


    Anfangs hatte ich auch auf diesem VServer einen Webserver und anderen Misst am Laufen und da konnte ich mir die Lags erklären und nachvollziehen.


    Frisches Image und ein CoD4-Gameserver:
    Manchmal sind es kleine "mini-lags" und das stört mich kaum, doch sporadisch hängt sich der Server bis zu 5 Sekunden auf und das meist zwei- bis dreimal hintereinander.


    Zu 99,9% hat der Nutzer Schuld :> Also, mach ich irgendwas falsch? Kennt jemand diesem Problem? Hab nur ich mit diesem Problem zu kämpfen? Ein Fall für den Support (ich will den Support nicht unbedingt mit jedem Misst bejammern^^)?

  • Bei solchen Dingen muss man immer folgenden Fragenkatalog durchgehen. Natürlich kann es auch mehr Ursachen geben, hier nur mal eine allgemeine Liste.



    • Was wurde geändert bevor die Probleme auftraten?
    • Wo genau tritt das Problem auf? 1 Client, 3 Clients oder alle Clients?
    • Welche Netzwerkwerte gibt das Game aus? (Ping, Choke, Loss, etc)
    • Was sagt ein Traceroute zum Routing?
    • An welchem Hop treten ggf. Loss / Probleme auf?
    • Tritt das gleiche Problem an einem anderen Rechner mit anderem Anschluss auf?
    • Tritt das Problem dauerhaft oder nur zu speziellen Zeiten auf?
    • Was sagen die Auslastungswerte des vServers zu dieser Zeit? (CPU, MEM, etc.)
    • Reicht die gebuchte Leistung des vServers definitiv für die Anzahl Gameserver / Slots aus?
    • Tritt das Problem weiterhin auf wenn nur eine Instanz des Gameservers läuft? (falls mehrere laufen)
    • Besteht das Problem weiterhin wenn der Voiceserver (falls vorhanden) gestoppt wird?
    • Laufen auf dem Gameserver Module / Plugins / "Hacks" von Drittherstellern?
    • Besteht das Problem weiterhin wenn man diese vollständig deaktiviert?


    Die Liste kann man je nach Spiel und Konfiguration ändern / erweitern. Oftmals gibt es z.B. auch Probleme mit selbstgemachten Maps. Da reicht es wenn diese irgendwo eine "Lücke" haben oder ein Fehler besteht, dann sind dies oftmals hohe Lasten für Gameserver, dies ist z.B. bei SourceEngined Spielen ein großes Problem. Ähnlich sieht es dabei auch mit Modulen / Mods / Plugins / Hacks usw. aus.

  • Was mir in Kurzform aufgefallen ist:
    Auslastung 1 (1 Spieler): http://krazey.de/files/srv/normal.png
    Auslastung 2 (1 Spieler - bei einem "normalen" Lag): http://krazey.de/files/srv/lag.png
    Auslastung 3 (10 Spieler - 5vs5): http://krazey.de/files/srv/10.png (diesmal sogar eine Stunde ohne Lag, bzw das komplette Match ohne Lag)


    Das Problem besteht "dauerhaft" und gab es von Anfang an. Es gibt keine speziellen Zeiten an denen Lags auftreten. Mal passiert es, mal passiert es nicht. Es ist auch egal ob nur eine Person drauf ist oder 10. Mal läuft es eine komplette Stunde, mal nicht.
    Die Lags tretten auch nicht nur bei einer Person ein. Wenn der Server seine 5 Sekunden hat, dann hat jeder einen Lag.


    Es läuft momentan nur ein einziger CoD4-Server mit promodlive211 (Match-Mod).

  • Ich denke es liegt an deiner Konfiguration (Habe selber Server auf einem 4000 ohne Lags mit custom Promod)


    Zitat
    • Was sagt ein Traceroute zum Routing?
    • An welchem Hop treten ggf. Loss / Probleme auf?


    ;)

  • Traceroute zum Routing sieht in Ordnung aus.


    Nur wenn die CPU-Last aus unerklärlichen Gründen hochschnalzt (siehe Bilder) gibt es einen Lag, wovon dies kommt? ...keine Ahnung.


    EDIT: Zum Thema CPU-Last: Auch nach frischem Aufspielen eines Image und ohne Installation von irgendwelchen Programmen oder Gameservern gibt es momente (die jetztigen Lagzeiten bei einem Gameserver), dass die CPU-Last über 40% liegt.


    Momentane Serverlast, auch nach reboot (ohne Gameserver): http://krazey.de/files/srv/ms.png


    Was ist das?^^


    EDIT2: Prozessorgarantie 8000Mhz, wie kommt man auf diese Zahl bzw aus welchen Faktoren setzt sich diese Zusammen?
    Durch "cat /proc/cpuinfo" bekomm ich diese Info: Intel(R) Xeon(R) CPU E5520 @ 2.27GHz
    Laut Intel ein 4-Kern Prozessor mit 8 Threads. Hab ich einen Kernanspruch oder Leistungsanspruch von 8000Mhz?
    Kleine Aufklärung würde nicht schaden^^

  • kraZey: Du weißt schon, dass man die top Ausgabe auch in Textform mittels Copy & Paste veröffentlichen kann? Da braucht es nicht immer einen Screenshot :)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Zitat von kraZey;32677

    EDIT2: Prozessorgarantie 8000Mhz, wie kommt man auf diese Zahl bzw aus welchen Faktoren setzt sich diese Zusammen?
    Durch "cat /proc/cpuinfo" bekomm ich diese Info: Intel(R) Xeon(R) CPU E5520 @ 2.27GHz
    Laut Intel ein 4-Kern Prozessor mit 8 Threads. Hab ich einen Kernanspruch oder Leistungsanspruch von 8000Mhz?
    Kleine Aufklärung würde nicht schaden^^


    Mathematik für die man dir auf die Finger hauen würde:
    2 CPUs * 4 Kerne * 2 Threads (HT) * 2.27 GHz = 36 GHz


    also so ist meine Vermutung wie gerechnet wird, denn "reale 8 GHz" wären für den Preis einfach unhaltbar, dann müsste man eine ganze CPU alleine nutzen dürfen, denn HT bringt speedtechnisch einfach nichts, sind gerade mal ~5% Performancegewinn.


    So genau kann man aber auch keine MHz zuteilen, dass weiß aber auch jeder, man kann einfach dem Scheduler Prioritäten geben, so dass er versucht diese Rahmenbedingung einzuhalten.


    Aber mit der CPU hast du auf all deinen Bildern absolut keine Probleme, da sind ja noch mehr als die Hälfte des Servers idle. Ich tippe eher auf IO-Bottlenecks.

  • Zitat von ice-breaker;32688

    Mathematik für die man dir auf die Finger hauen würde:
    2 CPUs * 4 Kerne * 2 Threads (HT) * 2.27 GHz = 36 GHz


    *hüstel*
    Ich wollte wissen, ob ich 2 Kerne (4 Threads) "8Ghz" habe oder alles vor sich hin gauckelt und auf 4 Kerne (8 Threads) Zugriff habe und davon "8Ghz" nutzen darf (bzw 50%).
    Denn es macht einen Unterschied ob ich etwas nutzen darf oder getrennte Kerne zugewiesen bekomme, zumindestens im Punkto Gameserverbetrieb.

  • Das kann dir niemand sagen, dass sind Netcups Firmengeheimnisse ;)
    Aber einzelne Cores hast du bestimmt nicht, das würde dann etwas das Scheduling ad absurdum führen.
    Du hast ein x-tel dieses Servers, genauer kann man da keine Aussage treffen.


    Aber wie gesagt: Auf all deinen Screenshots hast du keine CPU-Probleme da der ganze Server idlet, und du dessen Leistung mitbenutzen könntest, wenn sie niemand benötigt.

  • Sicher sicher, es ist genügend da, ..nur Laggen tut es trotzdem wenn die CPU-Last "hochschnalzt". Wenn ein Server läuft und dieser mit 10 Mann besetzt ist, liegt die Auslastung ca bei 12%. Geht die Last kurz auf über 40% bzw steigt aus unerklärlichen Gründen an (nicht vom Gameserverprozess ausgehend und auch nicht ersichtlich, was da überhaupt aufpoppt) und fällt wieder zur normalen Last runter gibt es einen Lag ...und das nicht nur bei mir, das merkt dann jeder.


    Zum Vergleich: Wenn ich CoD4 spiele und meine 250FPS habe und Firefox im Hintergrund meint mal wieder abkacken zu müssen (oder irgendein anderes Programm kurz mal aufpoppt), dann hab ich einen FPS-Einbruch (also einen Lag) obwohl ich noch reichlich Leistung zur Verfügung habe.


    Es geht ja nicht darum, wie viel Leistung noch über bleibt sondern darum, dass irgendwas den normalen Betrieb stört. Die schwankende CPU-Last kann ich auch ohne einen Gameserver beobachten.


    EDIT: Nochmal zu den Bildern meiner Konsole, vorallem dieses hier: http://krazey.de/files/srv/lag.png
    Meine Einzellasten meiner Prozesse liegt maximal bei 8,8% [Einzellasten mit 0% --> max. 0,4% * 11 = 4,4%; Einzellast mit 4% --> max 4,4%; insgesamt 8,8% ...und der Rest zu den angezeigten 24,1% sind somit 15,3%, die nur kurz aufpoppen und ein Lagen verursachen]


    EDIT2: http://krazey.de/files/srv/galileo_mystery.png - Erklärung siehe Bild.

  • Ich will mich natürlich nicht beschweren, ich bin völlig zufrieden nur möchte ich gerne wissen an was diese sporadischen Lags in Verbindung mit den schlagartigen Steigerung der CPU-Last liegen.
    Solange es sich um kleine Lags handelt werde ich mich bei 20 euro im Monat für drei/vier Gameserver die vollbesetzt sein können nicht beschwerden (getestet habe ich drei Gameserver, die jeweils mit 10 Mann belegt waren - diese hatten auch nur Lags bei der schlahartigen Steigerung der CPU-Last, Mapwechsel und anderes führten zu keinen Lags).

  • Was wurde geändert bevor die Probleme auftraten?
    Das Problem besteht schon "immer", bzw auch ein frisches Image hilft da nicht aus.


    Wo genau tritt das Problem auf? 1 Client, 3 Clients oder alle Clients?
    Das Problem hat jeder Client.


    Welche Netzwerkwerte gibt das Game aus? (Ping, Choke, Loss, etc)
    Das Game gibt einen Ping aus, der aber an sich nichts zu sagen hat, da bei einem Lag nicht der Ping wegen Routingproblemen steigt sondern eher der Server sich aufhängt bzw gestört wird. Der Ping ist ein Zusammenspiel mit Rechnerleistung, Serverleistung und Anbindung. Der CoD4-Lagometer zeigt folgendes an: Im Normalfall sieht man zwei Linien, eine grüne Linie, die für den Ping steht (diese Linie wird Rot, wenn keine Verbindung mehr besteht bzw bei Loss) und eine blaue Linie, die sich auf den eigenen Rechner bzw auf den Server bezieht (diese wird gelb, wenn der Rechner oder Server Probleme hat oder zu wenig Leistung hat). Bei einem Lag wird aus der dünnen grünen Linie eine bis zum Rand gefüllter Balken - immer noch grün, steht für den "maximalen" Ping von 999 und der andere Bereich sieht genauso aus und ist Gelb. Das kann jetzt heißen, dass der Rechner oder der Gameserver schlapp macht. Man kann es aber mit 100%iger Sicherheit auf den Gameserver schieben, da es bei jedem zu der gleichen Zeit genauso aussieht.


    Was sagt ein Traceroute zum Routing? An welchem Hop treten ggf. Loss / Probleme auf?
    Wie kann man dies langfristig und aussagekräftig logen lassen? Denn im Normalfall sieht man keine Probleme. Ich sehe nichts ungewöhnliches, kein Loss etc.


    Tritt das gleiche Problem an einem anderen Rechner mit anderem Anschluss auf?
    Kurz und knapp, jawohl.


    Tritt das Problem dauerhaft oder nur zu speziellen Zeiten auf?
    Die Probleme treten sporadisch auf.


    Was sagen die Auslastungswerte des vServers zu dieser Zeit? (CPU, MEM, etc.)
    Dazu hab ich einige Bilder gepostet und mir persönlich ist nur eines aufgefallen: Die CPU-Last poppt kurzzeitig aus unerklärlichen Gründen auf - nicht von dem Gameserver ausgehend - und genau zu diesem Zeitpunkt gibt es den schon oft erwähnten Lag. Der Lag sieht in CoD4 genauso aus, als wäre der Server kurzzeitig down.


    Reicht die gebuchte Leistung des vServers definitiv für die Anzahl Gameserver / Slots aus?
    Ich denke schon?


    Tritt das Problem weiterhin auf wenn nur eine Instanz des Gameservers läuft? (falls mehrere laufen)
    Es macht keinen Unterschied ob ein oder drei Server laufen.


    Besteht das Problem weiterhin wenn der Voiceserver (falls vorhanden) gestoppt wird?
    Kein Voiceserver vorhanden, es wurden jediglich die Gameserver draufgepackt (kein Webserver ...)


    Laufen auf dem Gameserver Module / Plugins / "Hacks" von Drittherstellern?
    Jawohl, PromodLive211 bzw 204


    Besteht das Problem weiterhin wenn man diese vollständig deaktiviert?
    Auch ein Server ohne Modifikationen leidet an den sporadischen Lags. Auch wenn kein Gameserver gestartet ist, kann man man das sporadische aufpoppen der CPU-Last beobachten. Das kann sogar dazu führen, das bei einem normalen anpingen die Pakete verzögert werden, doch das habe ich nur zweimalig getestet und mitbekommen.

  • Mir ist noch etwas aufgefallen:
    Nachts (also genau ab 0:00 Uhr) tritt dieses "CPU-Phänomen" extremer auf, dementsprechend auch mehr Lags. Die CPU-Last ist ungewöhnlich hoch und springt von ca 10% bis 90% und schwankt so ca 30-40 Minuten, dann ist wieder Ruhe (auche ohne Gameserverprozess kann man dies beobachten).
    Auf dem Gameserver wirkt das sich mit regelmäßigen Lags aus.

  • Zitat von kraZey;33160

    Haja aber was bringt mir eine zugesicherte Leistung wenn ich auch ohne eine einzige Belastung an die 80% CPU-Last habe (schwankend)? Ich find das merkwürdig.


    Du siehst bei der hier verwendetetn Virtualisierung die Auslastung aller Kerne des gesammten Servers ;)