SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
Left 4 Dead2のサーバサイドの
       ネットワーク解析


         @hogemaru_


                       1
自己紹介
■@hogemaru_
■×自 厺備
■ 自 ネットワーク ンジ ア
         完全に一致




                  2
Left 4 Dead2とは?
製作元
Valve Software
特徴
CO-OP重視型のFPS
売上:290万本以上
  日本:2.9万本
発売日:2009 11月


                       3
目的:L4D2のサーバの解析をする

■Linuxでサーバを   てることができる
 ■サーバの負荷などを解析できるのでは?
■解析ツール
 ■帯域計測
   ■bmon
 ■遅延とロスの変動
   ■tc
■解析項目
 ■ゲーム中のトラフィックの推移
 ■遅延/パケロスが起きたときのゲームの状況

                         4
環境構成
■Left 4 Dead 2 Server
  ■UDP 27015番のみ使用
  ■非同期型
  ■ステージ固定
     ■Dead Center
■匵        ン
  ■Hitachi Prius
     ■CPU celeron M 1GHz
     ■Memory 500MByte
     ■OS: Debian squeeze

                           5
サーバの準備
■Left 4 Dead 2 wikiを参考
 ■http://l4d2.ngnl.org/
■ネットワークの厍 の変
 ■遅延
   ■tc qdisc change dev ** root netem delay 100msec

 ■ロス
   ■tc qdisc change dev ** root netem delay 30%




                                                      6
サーバの起動
$ sudo ./srcds_run -console -game left4dead2

WARNING: No map specified! Defaulting to c1m1_hotel
Server will auto-restart if there is a crash.
#Using breakpad minidump system
Using breakpad crash handler
#
#Console initialized.
#Game.dll loaded for "Left 4 Dead 2"
Server is hibernating
ConVarRef test_progression_loop doesn't point to an existing ConVar
[S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.dll.
Parent cvar in server.dll not allowed (spit_scaling_min_scale)
Game supporting (2) split screen players
maxplayers set to 18
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit
Installing breakpad exception handler for appid(0)/version(4490)
Unknown command "mat_bloom_scalefactor_scalar"
Network: IP 127.0.0.1, mode MP, dedicated Yes, ports 27015 SV / 0 CL
---- Host_NewGame ----
Host_NewGame on map c1m1_hotel
ConVarRef room_type doesn't point to an existing ConVar
Executing dedicated server config file

                                                                                                                 7
ローカルサーバ
          1人プレイ プレイ時間1分

                      Max 2.8KBps



Min 0.9KBps
                       Max 8.4KBps

Min 2.8KBps




                              8
インターネット公開サーバ
     4人プレイ プレイ時間30分


        10.8KBps



       33.7 KBps             1.8KBps



                              5.6 KBps
■ 徐々に参加人数が増えて4人で30分間遊んだ
■ 受信 MAX 10 KBps, 送信 MAX 33 KBps
  ■ 人数に发 して増加
                                         9
  ■ 送信のほうが受信よりもレートが大きい
帯域幅の計測による考察
■ プレイ人数に发 してトラフィックは 増している
 ■ サーバで厦中
■ サーバ→クライアントのトラフィック> クライアント→
  サーバのトラフィック
 ■ 約3 のトラフィック
 ■ クライアントは自分だけの情報をアップロードし、サーバから
   他のユーザも含めたゲーム全体の情報をダウンロードしてい
   る?




                              10
delayの変化による評価

遅延0ms→500ms
 ■敵の位置がワープする
 ■攻撃が当たり難い
                      クリア時間(分)
 ■1名は接続が途中では            7

  じかれた                  6



 ■クリア時間
                        5

                        4


   ■4分から6分に増加           3

                        2

   ■Kill数 47から37に低下     1

                        0
                                 0           500


                                     遅延時間(msec)

                                                   11
lossの変化による評価
■0%ロス→30%ロス
 ■クリア時間:3分
 ■Kill数:20
 ■ゲーム勺 にあまり影響がない
  ■おそらくロスしたパケットは補完されている
■70%ロス
 ■ゲーム勺 勘參
 ■  に接続と卲友が り   される

                          12
遅延とロスの変化に対する考察
■遅延やロスが 化してもゲームごと叉 るよう
 なことはない
■ロスは遅延よりも影響が小さいようになってい
 る
 ■遅延は補完できないがロスは対処しやすい
■遅延は500msec, ロスは30%   は感覚的に
 えられた
 ■人による感覚の差はある
■評価匦   は 中厾のほうが   かった
 ■クリア時間はこのゲームではバラつきがある
 ■ゲームの定 的な評価は難しい

                              13
おしまい
■ご清聴ありがとうございました




                  14

Mais conteúdo relacionado

Mais procurados

BHyVe: The BSD Hypervisor
BHyVe: The BSD HypervisorBHyVe: The BSD Hypervisor
BHyVe: The BSD HypervisorTakuya ASADA
 
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -Go Saito
 
Bhyve code reading
Bhyve code readingBhyve code reading
Bhyve code readingTakuya ASADA
 
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜Takuya ASADA
 
Lxc cf201207-presen
Lxc cf201207-presenLxc cf201207-presen
Lxc cf201207-presenKouhei Maeda
 
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08Nobuto Murata
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動Takashi Takizawa
 
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12Nobuto Murata
 
Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Sho Shimizu
 
ガイアが黒い画面にもっと輝けと囁いている
ガイアが黒い画面にもっと輝けと囁いているガイアが黒い画面にもっと輝けと囁いている
ガイアが黒い画面にもっと輝けと囁いているAya Komuro
 
Trema での Open vSwitch
Trema での Open vSwitchTrema での Open vSwitch
Trema での Open vSwitchkazuyas
 
A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0Satoshi Kume
 
謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)shimadah
 

Mais procurados (20)

BHyVe: The BSD Hypervisor
BHyVe: The BSD HypervisorBHyVe: The BSD Hypervisor
BHyVe: The BSD Hypervisor
 
Bhyve Internals
Bhyve InternalsBhyve Internals
Bhyve Internals
 
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -
 
Maatkitの紹介
Maatkitの紹介Maatkitの紹介
Maatkitの紹介
 
Bhyve code reading
Bhyve code readingBhyve code reading
Bhyve code reading
 
Gpu第4世代 商品案内
Gpu第4世代 商品案内Gpu第4世代 商品案内
Gpu第4世代 商品案内
 
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜
BHyVeでOSvを起動したい
〜BIOSがなくてもこの先生きのこるには〜
 
Lxc cf201207-presen
Lxc cf201207-presenLxc cf201207-presen
Lxc cf201207-presen
 
boot2docker upgrade
boot2docker upgradeboot2docker upgrade
boot2docker upgrade
 
Open VZ
Open VZOpen VZ
Open VZ
 
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動
 
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
 
Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像 Open vSwitchソースコードの全体像
Open vSwitchソースコードの全体像
 
ガイアが黒い画面にもっと輝けと囁いている
ガイアが黒い画面にもっと輝けと囁いているガイアが黒い画面にもっと輝けと囁いている
ガイアが黒い画面にもっと輝けと囁いている
 
Trema での Open vSwitch
Trema での Open vSwitchTrema での Open vSwitch
Trema での Open vSwitch
 
Unixアレコレ調べたい2
Unixアレコレ調べたい2Unixアレコレ調べたい2
Unixアレコレ調べたい2
 
A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0A_road_to_AMBER_simulations_ver_1.0
A_road_to_AMBER_simulations_ver_1.0
 
謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)謎PCとの付き合い方(LILO東海道 2015/5発表分)
謎PCとの付き合い方(LILO東海道 2015/5発表分)
 
20110205.linux 0.01
20110205.linux 0.0120110205.linux 0.01
20110205.linux 0.01
 

Destaque

Redação_Publicitária_004
Redação_Publicitária_004Redação_Publicitária_004
Redação_Publicitária_004Rafael Naruto
 
Tics en el mundo educativo
Tics en el mundo educativoTics en el mundo educativo
Tics en el mundo educativojohnscamargo
 
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015Fábio Fernandes
 
Informativo IAB Chile Octubre 2009
Informativo IAB Chile Octubre 2009Informativo IAB Chile Octubre 2009
Informativo IAB Chile Octubre 2009IAB Chile
 
Aula15 Administração de Marketing
Aula15 Administração de MarketingAula15 Administração de Marketing
Aula15 Administração de MarketingRafael Naruto
 
Slide uca aracynascimento
Slide uca aracynascimentoSlide uca aracynascimento
Slide uca aracynascimentopaulo.tarso
 
2 lideranca a administracao do sentido
2 lideranca   a administracao do sentido2 lideranca   a administracao do sentido
2 lideranca a administracao do sentidosergiorrm2
 
Exportar objeto como bitmap
Exportar objeto como bitmapExportar objeto como bitmap
Exportar objeto como bitmapLooye
 
Jornal das Escolas de Cabedelo PB
Jornal das Escolas de Cabedelo PBJornal das Escolas de Cabedelo PB
Jornal das Escolas de Cabedelo PBFábio Fernandes
 
Presentación pp
Presentación ppPresentación pp
Presentación ppmanuelzl
 
Informativo IAB Chile Agosto 2012
Informativo IAB Chile Agosto 2012Informativo IAB Chile Agosto 2012
Informativo IAB Chile Agosto 2012IAB Chile
 
4sexualidade carlette
4sexualidade   carlette4sexualidade   carlette
4sexualidade carlettefcolpani
 
Practica 1
Practica 1Practica 1
Practica 1Looye
 
Catálogo exposição bela criação final 2011
Catálogo exposição bela criação final 2011Catálogo exposição bela criação final 2011
Catálogo exposição bela criação final 2011Projeto Oficina de Pintura
 

Destaque (20)

Ccias politicas 4
Ccias politicas 4Ccias politicas 4
Ccias politicas 4
 
Pop projeto oficina de pintura
Pop projeto oficina de pinturaPop projeto oficina de pintura
Pop projeto oficina de pintura
 
Saludo de navidad
Saludo de navidadSaludo de navidad
Saludo de navidad
 
Redação_Publicitária_004
Redação_Publicitária_004Redação_Publicitária_004
Redação_Publicitária_004
 
Tics en el mundo educativo
Tics en el mundo educativoTics en el mundo educativo
Tics en el mundo educativo
 
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015
Educação Sexual: Precisamos falar sobre Romeo - Nova Escola - Fev. 2015
 
Informativo IAB Chile Octubre 2009
Informativo IAB Chile Octubre 2009Informativo IAB Chile Octubre 2009
Informativo IAB Chile Octubre 2009
 
Aula15 Administração de Marketing
Aula15 Administração de MarketingAula15 Administração de Marketing
Aula15 Administração de Marketing
 
Slide uca aracynascimento
Slide uca aracynascimentoSlide uca aracynascimento
Slide uca aracynascimento
 
2 lideranca a administracao do sentido
2 lideranca   a administracao do sentido2 lideranca   a administracao do sentido
2 lideranca a administracao do sentido
 
Exportar objeto como bitmap
Exportar objeto como bitmapExportar objeto como bitmap
Exportar objeto como bitmap
 
Jornal das Escolas de Cabedelo PB
Jornal das Escolas de Cabedelo PBJornal das Escolas de Cabedelo PB
Jornal das Escolas de Cabedelo PB
 
ylj
yljylj
ylj
 
Presentación pp
Presentación ppPresentación pp
Presentación pp
 
Informativo IAB Chile Agosto 2012
Informativo IAB Chile Agosto 2012Informativo IAB Chile Agosto 2012
Informativo IAB Chile Agosto 2012
 
4sexualidade carlette
4sexualidade   carlette4sexualidade   carlette
4sexualidade carlette
 
Practica 1
Practica 1Practica 1
Practica 1
 
Presentación
PresentaciónPresentación
Presentación
 
Catálogo exposição bela criação final 2011
Catálogo exposição bela criação final 2011Catálogo exposição bela criação final 2011
Catálogo exposição bela criação final 2011
 
Angra dos Reis
Angra dos ReisAngra dos Reis
Angra dos Reis
 

Semelhante a L4d2_serverside_analyze

オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫Yuta Imai
 
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかえむ ばーど
 
自宅スケーラブル・ファイルシステムのご紹介
自宅スケーラブル・ファイルシステムのご紹介自宅スケーラブル・ファイルシステムのご紹介
自宅スケーラブル・ファイルシステムのご紹介Kentaro Mitsuyasu
 
シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議Shinra_Technologies
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設Minoru Nakamura
 
Spectre/Meltdownとその派生
Spectre/Meltdownとその派生Spectre/Meltdownとその派生
Spectre/Meltdownとその派生MITSUNARI Shigeo
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設Minoru Nakamura
 
ゆるふわLinux-HA 〜PostgreSQL編〜
ゆるふわLinux-HA 〜PostgreSQL編〜ゆるふわLinux-HA 〜PostgreSQL編〜
ゆるふわLinux-HA 〜PostgreSQL編〜Taro Matsuzawa
 
Nodeで対戦型シューティング
Nodeで対戦型シューティングNodeで対戦型シューティング
Nodeで対戦型シューティングUnty PocaPoca
 
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft AzureDaisuke Masubuchi
 
Richard high performance fuzzing ja
Richard  high performance fuzzing jaRichard  high performance fuzzing ja
Richard high performance fuzzing jaPacSecJP
 
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門Takashi Takizawa
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るTsubasa Nomura
 
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみたGPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみたRyo Sakamoto
 
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!UnityTechnologiesJapan002
 
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタDRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ株式会社サードウェア
 
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~Daisuke Masubuchi
 
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~日本マイクロソフト株式会社
 

Semelhante a L4d2_serverside_analyze (20)

オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
 
コンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのかコンテナ型仮想化とはなんだったのか
コンテナ型仮想化とはなんだったのか
 
自宅スケーラブル・ファイルシステムのご紹介
自宅スケーラブル・ファイルシステムのご紹介自宅スケーラブル・ファイルシステムのご紹介
自宅スケーラブル・ファイルシステムのご紹介
 
シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議シンラ・テクノロジー第2回クラウドゲーム開発者会議
シンラ・テクノロジー第2回クラウドゲーム開発者会議
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設
 
Spectre/Meltdownとその派生
Spectre/Meltdownとその派生Spectre/Meltdownとその派生
Spectre/Meltdownとその派生
 
x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設x86-64/Linuxに独自メモリ空間を勝手増設
x86-64/Linuxに独自メモリ空間を勝手増設
 
ゆるふわLinux-HA 〜PostgreSQL編〜
ゆるふわLinux-HA 〜PostgreSQL編〜ゆるふわLinux-HA 〜PostgreSQL編〜
ゆるふわLinux-HA 〜PostgreSQL編〜
 
about Tcpreplay
about Tcpreplayabout Tcpreplay
about Tcpreplay
 
Nodeで対戦型シューティング
Nodeで対戦型シューティングNodeで対戦型シューティング
Nodeで対戦型シューティング
 
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure
"No Man’s Sky" から"Forza Horizon 5" まで。 国内外の成功タイトルが使う Microsoft Azure
 
Richard high performance fuzzing ja
Richard  high performance fuzzing jaRichard  high performance fuzzing ja
Richard high performance fuzzing ja
 
#pakeana 14
#pakeana 14#pakeana 14
#pakeana 14
 
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門
 
Pacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作るPacemaker+DRBDでHAクラスタを作る
Pacemaker+DRBDでHAクラスタを作る
 
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみたGPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみた
 
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
【Unite Tokyo 2019】「禍つヴァールハイト」Timelineだから可能だった!モバイルに最適化されたリアルタイム3D演出!
 
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタDRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ
DRBD/Heartbeat/Pacemakerで作るKVM仮想化クラスタ
 
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
 
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
【de:code 2020】 2020 年も最高のゲームをつくろう! Game Stack でゲーム開発をしよう! ~ マルチプレイサーバー編 ~
 

Último

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 

Último (8)

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 

L4d2_serverside_analyze

  • 1. Left 4 Dead2のサーバサイドの ネットワーク解析 @hogemaru_ 1
  • 2. 自己紹介 ■@hogemaru_ ■×自 厺備 ■ 自 ネットワーク ンジ ア 完全に一致 2
  • 3. Left 4 Dead2とは? 製作元 Valve Software 特徴 CO-OP重視型のFPS 売上:290万本以上 日本:2.9万本 発売日:2009 11月 3
  • 4. 目的:L4D2のサーバの解析をする ■Linuxでサーバを てることができる ■サーバの負荷などを解析できるのでは? ■解析ツール ■帯域計測 ■bmon ■遅延とロスの変動 ■tc ■解析項目 ■ゲーム中のトラフィックの推移 ■遅延/パケロスが起きたときのゲームの状況 4
  • 5. 環境構成 ■Left 4 Dead 2 Server ■UDP 27015番のみ使用 ■非同期型 ■ステージ固定 ■Dead Center ■匵 ン ■Hitachi Prius ■CPU celeron M 1GHz ■Memory 500MByte ■OS: Debian squeeze 5
  • 6. サーバの準備 ■Left 4 Dead 2 wikiを参考 ■http://l4d2.ngnl.org/ ■ネットワークの厍 の変 ■遅延 ■tc qdisc change dev ** root netem delay 100msec ■ロス ■tc qdisc change dev ** root netem delay 30% 6
  • 7. サーバの起動 $ sudo ./srcds_run -console -game left4dead2 WARNING: No map specified! Defaulting to c1m1_hotel Server will auto-restart if there is a crash. #Using breakpad minidump system Using breakpad crash handler # #Console initialized. #Game.dll loaded for "Left 4 Dead 2" Server is hibernating ConVarRef test_progression_loop doesn't point to an existing ConVar [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.dll. Parent cvar in server.dll not allowed (spit_scaling_min_scale) Game supporting (2) split screen players maxplayers set to 18 Looking up breakpad interfaces from steamclient Calling BreakpadMiniDumpSystemInit Installing breakpad exception handler for appid(0)/version(4490) Unknown command "mat_bloom_scalefactor_scalar" Network: IP 127.0.0.1, mode MP, dedicated Yes, ports 27015 SV / 0 CL ---- Host_NewGame ---- Host_NewGame on map c1m1_hotel ConVarRef room_type doesn't point to an existing ConVar Executing dedicated server config file 7
  • 8. ローカルサーバ 1人プレイ プレイ時間1分 Max 2.8KBps Min 0.9KBps Max 8.4KBps Min 2.8KBps 8
  • 9. インターネット公開サーバ 4人プレイ プレイ時間30分 10.8KBps 33.7 KBps 1.8KBps 5.6 KBps ■ 徐々に参加人数が増えて4人で30分間遊んだ ■ 受信 MAX 10 KBps, 送信 MAX 33 KBps ■ 人数に发 して増加 9 ■ 送信のほうが受信よりもレートが大きい
  • 10. 帯域幅の計測による考察 ■ プレイ人数に发 してトラフィックは 増している ■ サーバで厦中 ■ サーバ→クライアントのトラフィック> クライアント→ サーバのトラフィック ■ 約3 のトラフィック ■ クライアントは自分だけの情報をアップロードし、サーバから 他のユーザも含めたゲーム全体の情報をダウンロードしてい る? 10
  • 11. delayの変化による評価 遅延0ms→500ms ■敵の位置がワープする ■攻撃が当たり難い クリア時間(分) ■1名は接続が途中では 7 じかれた 6 ■クリア時間 5 4 ■4分から6分に増加 3 2 ■Kill数 47から37に低下 1 0 0 500 遅延時間(msec) 11
  • 12. lossの変化による評価 ■0%ロス→30%ロス ■クリア時間:3分 ■Kill数:20 ■ゲーム勺 にあまり影響がない ■おそらくロスしたパケットは補完されている ■70%ロス ■ゲーム勺 勘參 ■ に接続と卲友が り される 12
  • 13. 遅延とロスの変化に対する考察 ■遅延やロスが 化してもゲームごと叉 るよう なことはない ■ロスは遅延よりも影響が小さいようになってい る ■遅延は補完できないがロスは対処しやすい ■遅延は500msec, ロスは30% は感覚的に えられた ■人による感覚の差はある ■評価匦 は 中厾のほうが かった ■クリア時間はこのゲームではバラつきがある ■ゲームの定 的な評価は難しい 13