ネットワーク関連メモ

ネットワーク関連メモ

ゲームに関連するネットワークプログラミングの技術メモです。
言語はCを予定。

基本編

01:とりあえず通信

winsock2を使ってTCPでつないでみる。
ネットワーク01-サーバー
ネットワーク02-クライアント

簡単なチャットクライアントを作ってみる。

簡単なHTTPクライアントを作ってみる。


発展編


■ラグの問題

遅延
応答速度 ping
LAN 1~2ms
WAN 10~50ms

帯域
回線の太さ
LAN 100M~1Gbps
WAN 1M~50Mbps
3G 200~500kbps

パケットロス
回線の品質、データの信頼性


■通信の種類
UDP 速いが信頼できない
TCP 信頼できるが遅い

なのでReliableUDPというのを使う
パケットに番号が振ってあり、抜けがある場合は再送される


■格闘ゲームの同期
入力をUDPでやりとりすることで画面を完全に同期する

ウェイトフレームを設定
2F,3Fならば(40~50ms程度)先行入力などで快適に動作できる

パケットには10Fの入力が入ってるので、パケットロスが発生した場合は次のフレームでリカバリする。

10F以上のバーストエラーに対しては
RUDPで1秒に一回60F分のデータをやり取りしてリカバリを可能にする。


無線通信などの場合、2Fに一度2Fずつデータを渡したりすることで帯域の節約をする。
その分ウェイトは大きくなる。
上の例だと4F(80ms程度)

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2010年11月24日 23:51
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。