JP5357752B2 - データ伝送システムおよびその方法 - Google Patents

データ伝送システムおよびその方法 Download PDF

Info

Publication number
JP5357752B2
JP5357752B2 JP2009509213A JP2009509213A JP5357752B2 JP 5357752 B2 JP5357752 B2 JP 5357752B2 JP 2009509213 A JP2009509213 A JP 2009509213A JP 2009509213 A JP2009509213 A JP 2009509213A JP 5357752 B2 JP5357752 B2 JP 5357752B2
Authority
JP
Japan
Prior art keywords
data
transmission
transmission data
estimated
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009509213A
Other languages
English (en)
Other versions
JPWO2008126701A1 (ja
Inventor
チョン・ジーン
崇 阪本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to JP2009509213A priority Critical patent/JP5357752B2/ja
Publication of JPWO2008126701A1 publication Critical patent/JPWO2008126701A1/ja
Application granted granted Critical
Publication of JP5357752B2 publication Critical patent/JP5357752B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/332Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using wireless networks, e.g. cellular phone networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/534Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

本発明は、周期的に生成される伝送データを伝送するデータ伝送システムおよびその方法に関する。
多数のクライアントコンピュータのユーザが、ネットワークを介してゲームサーバコンピュータに接続し、実時間的にゲームを楽しむネットワークゲームシステムが稼働している。
このようなネットワークゲームの例として、ユーザ(プレーヤ)がゲーム内で用いる人物の画像(アバタ(avatar))が、プレーヤの操作に従って、実時間的に、ゲームの仮想世界内を自在に移動し、出会った他のプレーヤのアバタと戦ったり、銃を撃ち合ったりするファーストパーソンシューティングゲーム(first person shooting game)を挙げることができる。
このようなネットワークゲームにおいては、クライアントコンピュータそれぞれに、表示されうる範囲にある全てのアバタが表示されなければならない。
上述のようなネットワークゲームの実現のためには、アバタのゲーム仮想世界における位置などが、遅延および伝送データの欠落を生じさせるネットワークを介して、クライアントコンピュータとゲームサーバとの間で、短い周期で、実時間的に伝送される必要がある。
"bzflag,"http://wwsv.bzffag.org. "sauerbraten,"http://sauerbraten.org. G. Arrnitage, M. Claypool, and P. Branch, Networking and Online Games: Understanding and Engineering Multiplayer Internet Games, John Wiley and Sons Ltd, 2006. L. Pantel and L. Wolf, "On the suitability ofdead reckoning schemes for games:' in ACMSIGCOMMNetGames, Braunschweig, Germany, April 2002. S Aggarwal H Banavar and A Khandelwal "Accuracy in dead-reckoning based distributed multi-player games:' in ACM SIGCOMM NetGames, Portland, OR, August 2004. M. Mauve, "How to keep a dead man from shooting," in Interactive Distributed Multimedia Systems and Telecommunication Se,vices, 2000 , pp. 1 99-204. W. Press, S. Teukolsky, W. Vetterling, and B. Flaunery, Eds., Numerical Recipes in C+ +. Cambridge University Press, 2002. M. Hayes, Statistical Digital Signal Processing and Modeling, John Wiley and Son Ltd, 2005.
本発明は、上述のような背景からなされたものであって、実時間性が重要とされ、周期的に発生するデータを、遅延および伝送データの欠落を生じさせるネットワークを介して伝送するために改良されたデータ伝送システムおよびその方法を提供することを目的とする。
上記目的を達成するために、本発明にかかるデータ伝送システムは、所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送システムであって、前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、前記送信装置は、前記伝送データを生成する伝送データ生成手段と、前記推定データを生成する推定データ生成手段と、前記生成された伝送データを送信し、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信する送信手段とを有し、前記受信装置は、前記送信された伝送データと推定データとを受信する受信手段と、前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する復元・推定手段とを有する。
好適には、前記受信装置は、前記ネットワークにおいて伝送データに生じた遅延を補償する遅延補償手段をさらに有する。
好適には、前記送信装置は、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分と、前記生成された推定データの送信に必要な帯域幅とに基づいて、前記推定データが送信可能か否かを判断する送信可能性判断手段をさらに有し、前記送信手段は、前記推定データが送信可能と判断されたときに、前記推定データを送信する。
好適には、前記送信可能性判断手段は、前記推定データを送信しても、前記送信された推定データの帯域幅が、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分を超えないように、トークンバケット(token bucket)方式により、前記推定データが送信可能か否かを判断する。
好適には、前記送信装置は、前記伝送データの送信から、この伝送データを用いた推定のために用いられる推定データの送信までの時間差が、所定の閾値(Δ)よりも短いか否かを判断する送信時間判断手段をさらに有し、前記送信手段は、前記推定データの送信までの時間差が、前記所定の閾値よりも短いときに、前記推定データを送信する。
好適には、前記受信装置は、前記伝送データの受信から所定の閾値(δ)以内の時間差で次の周期の前記伝送データが受信されたか否かを判断する受信時間判断手段をさらに有し、前記推定手段は、前記次の周期の前記伝送データが前記所定の閾値以内の時間差で受信されなかったときに、前記受信された伝送データの次の伝送データの推定を行う。
好適には、前記受信装置は、前記受信された伝送データおよび前記推定された伝送データまたはこれらのいずれかに基づいて、将来、受信されるべき伝送データを予測する予測手段をさらに有する。
好適には、前記伝送データは、移動物の位置を、前記周期ごとに示す。
前記伝送データは、1つ以上のアバタ(avatar)を移動させて行うネットワークゲームにおける前記アバタそれぞれの位置を、前記周期ごとに示す。
また、本発明にかかるデータ伝送方法は、所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送方法であって、前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、前記送信装置は、前記伝送データを生成し、前記推定データを生成し、前記生成された伝送データを送信し、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信し、 前記受信装置は、前記送信された伝送データと推定データとを受信し、前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する。
また、本発明にかかるデータ伝送プログラムは、所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送プログラムであって、前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、前記送信装置において、前記伝送データを生成する伝送データ生成ステップと、前記推定データを生成する推定データ生成ステップと、前記生成された伝送データを送信し、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信する送信ステップとをコンピュータに実行させ、前記受信装置において、前記送信された伝送データと推定データとを受信する受信ステップと、前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する復元・推定ステップとをコンピュータに実行させる。
本発明にかかるデータ伝送システムおよびその方法によれば、実時間性が重要とされ、周期的に発生するデータを、遅延および伝送データの欠落を生じさせるネットワークを介して、良好に伝送することができる。
本発明にかかるデータ伝送方法が適用されるネットワークゲームシステムの構成を例示する図である。 図1に示したゲームサーバおよびゲームクライアントコンピュータのハードウエア構成を例示する図である。 図1,図2に示したゲームサーバ上で実行されるサーバソフトウエア、および、ゲームクライアントコンピュータ上で実行されるクライアントソフトウエアのソフトウエア構成を示す図である。 ネットワークゲームの仮想空間を移動する各プレーヤのアバタを例示する図である。 図3に示した位置推定情報作成部が作成する位置推定情報y[m]を示す図である。 位置推定情報y[n+1]の機能を例示する図であって、(A)は、位置更新情報x[1]〜x[3]の内、位置更新情報x[3]が欠落したときの位置推定情報y[4]の機能を示し、(B)は、位置更新情報x[2]が欠落したときの位置推定情報y[4]の機能を示し、(C)は、位置更新情報x[2],x[3]が欠落したときの位置推定情報y[4]の機能を示し、(D)は、位置更新情報x[4]が欠落したときの位置推定情報y[4]の機能を示す。 ネットワークの伝送可能帯域Bと、位置更新情報x[n]の伝送のために使用される帯域Rとの関係を示す図である。 図8は、図3に示したトークン制御部により行われるトークンバケット方式による位置推定情報y[m]の伝送制御を示す図である。 図3に示した遅延制御部により行われる位置推定情報y[m]の伝送制御を例示する図である。 図10は、図9に示した位置推定情報y[m]の伝送制御で用いられる閾値とひずみ(ここでは実際の位置と推定位置の間の差分)の関係を例示する図である。 上述の待ち時間閾値δとひずみ(実際の位置と推定位置の間の差分)の関係を例示する図である。
[ネットワークゲームシステム1]
以下、本発明の実施形態を説明する。
図1は、本発明にかかるデータ伝送方法が適用されるネットワークゲームシステム1の構成を例示する図である。
図1に示すように、ネットワークゲームシステム1は、1台以上のゲームサーバ2と、複数のゲームクライアントコンピュータ3−1〜3−n(n≧2)とが、インターネットなどのネットワーク100を介して接続されて構成される。
なお、以下、各図においては、実質的に同じ構成部分には同じ符号が付され、ゲームクライアントコンピュータ3−1〜3−nなど、複数ありうる構成部分のいずれかを特定せずに示すときには、単にゲームクライアントコンピュータ3と記載する。
また、ゲームサーバ2およびゲームクライアントコンピュータ3を総称して、ノードと記載することがある。
[ハードウエア構成]
図2は、図1に示したゲームサーバ2およびゲームクライアントコンピュータ3のハードウエア構成を例示する図である。
図2に示すように、ゲームサーバ2およびゲームクライアントコンピュータ3は、CPU122およびメモリ124などを含む本体120、ディスプレー装置およびキーボードなどを含む入出力装置126、他のノードとの通信を行う通信装置128およびCD装置・HDD装置などの記録装置132から構成される。
つまり、ゲームサーバ2およびゲームクライアントコンピュータ3は、ネットワーク100を介して他のノードと通信可能なコンピュータとしてのハードウエア資源を有している。
[ソフトウエア構成]
図3は、図1,図2に示したゲームサーバ2上で実行されるサーバソフトウエア20、および、ゲームクライアントコンピュータ3上で実行されるクライアントソフトウエア30のソフトウエア構成を示す図である。
サーバソフトウエア20およびクライアントソフトウエア30は、例えば、記憶媒体134(図2)を介してこれらに供給され、ネットワークゲームシステム124にロードされ、OS(図示せず)を介して、ゲームサーバ2およびゲームクライアントコンピュータ3のハードウエア資源を具体的に利用して実行される。
なお、図3には、ゲームサーバ2からゲームクライアントコンピュータ3に対して、各プレーヤのアバタの位置が伝送される場合が例示されており、これ以外の構成部分は省略されている。
図3に示すように、サーバソフトウエア20は、サーバ側ゲームソフトウエア200およびサーバ側インターフェース(IF)ソフトウエア204から構成される。
サーバ側ゲームソフトウエア200は、アバタ位置処理部202を含む。
サーバ側インターフェースソフトウエア204は、位置推定情報作成部208、送信部210、トークン制御部212および遅延制御部214を含む。
クライアントソフトウエア30は、クライアント側インターフェースソフトウエア300、アバタ位置補正処理ソフトウエア310およびクライアント側ゲームソフトウエア312から構成される。
クライアント側インターフェースソフトウエア300は、遅延制御部302、受信部304および復元・推定部306を含む。
サーバソフトウエア20およびクライアントソフトウエア30は、これらの構成部分により、プレーヤによるゲームクライアントコンピュータ3に対する操作を受け入れて、ゲームクライアントコンピュータ3の入出力装置126(図2)に、実時間的に各プレーヤのアバタを移動させて表示する。
つまり、サーバソフトウエア20およびクライアントソフトウエア30は、ファーストパーソンシューティングゲームなどの実時間性が重要とされるネットワークゲームを進行させるための機能を、プレーヤに提供する。
[サーバソフトウエア20]
図4は、ネットワークゲームの仮想空間を移動する各プレーヤのアバタを例示する図である。
サーバ側ゲームソフトウエア200は、ゲームクライアントコンピュータ3のプレーヤからの操作に応じて、ネットワークゲームを進行させる。
サーバ側ゲームソフトウエア200において、アバタ位置処理部202は、ネットワークゲームの仮想空間における各ユーザのアバタの位置を示す位置更新情報x[n]を、一定の周期T(例えば1/10秒)ごとに作成し、サーバ側インターフェースソフトウエア204に対して出力する。
[サーバ側インターフェースソフトウエア204]
図5は、図3に示した位置推定情報作成部208が作成する位置推定情報y[m]を示す図である。
サーバ側インターフェースソフトウエア204において、位置推定情報作成部208は、図5に斜線を付した円で示すように、アバタ位置処理部202から入力され、各時点(0〜3T)におけるアバタの位置を示す位置更新情報x[n]から、図5に白い円で示すように、次の時点(T4)アバタの位置を推定して示す位置推定情報y[n+1]を作成する。
次の時点の位置推定情報y[n+1]と、その時点までの位置更新情報x[n],x[n−1],・・・,x[n−k](k≧1)との関係は、
y[n+1]=f(x[n],x[n−1],・・・,x[n−k])
と表すことができる。
図6は、位置推定情報y[n+1]の機能を例示する図であって、(A)は、位置更新情報x[1]〜x[3]の内、位置更新情報x[3]が欠落したときの位置推定情報y[4]の機能を示し、(B)は、位置更新情報x[2]が欠落したときの位置推定情報y[4]の機能を示し、(C)は、位置更新情報x[2],x[3]が欠落したときの位置推定情報y[4]の機能を示し、(D)は、位置更新情報x[4]が欠落したときの位置推定情報y[4]の機能を示す。
図6(A)〜(D)に示すように、位置推定情報y[n+1]には、以下の(1)〜(3)の機能がある。
位置推定情報y[n+1]には、以下の(1)〜(3)の機能がある。
(機能1)図6(A),(B)に示すように、位置更新情報x[n],x[n−1],・・・,x[n−k]の内のいずれか1つが、ネットワーク100において欠落したときには、位置推定情報y[n+1]は、欠落した位置更新情報を完全に復元することができるパリティとして用いられる。
(機能2)図6(C)に示すように、位置更新情報x[n],x[n−1],・・・,x[n−k]の内の2つ以上がネットワーク100において欠落したときには、位置推定情報y[n+1]は、欠落した位置更新情報を推定するために用いられる。
(機能3)図6(D)に示すように、位置推定情報y[n+1]が生成された後に、位置更新情報x[n+1]が、ネットワーク100において欠落したときには、位置推定情報y[n+1]は、位置更新情報x[n+1]の推定値として用いられ得る。
位置推定情報y[n+1]を求めるためには、以下の(1)〜(4)の方法がある。
位置推定情報作成部208は、下記(1)〜(4)のいずれかの方法により、位置推定情報y[m]を求める。
(方法1)0次保持:
位置更新情報x[n]を、そのまま位置推定情報y[n+1](y[n+1]=x[n])とする。
この方法によれば、位置更新情報x[n]が、ネットワーク100において欠落したときに、位置推定情報y[n+1]から、位置更新情報x[n]を完全に復元できる。
また、ネットワーク100においてバーストエラーが生じ、位置更新情報x[n],x[n−1],・・・,x[n−k]が欠落したときには、位置推定情報y[n+1]と、位置更新情報x[n−k−1]とにより、位置更新情報x[n],x[n−1],・・・,x[n−k]を補間することができる。
さらに、位置更新情報x[n+1]が、ネットワーク100において欠落したときに、位置推定情報y[n+1]から、位置更新情報x[n+1]を推定できる。
(方法2)線形補間:
位置推定情報y[n+1]を、2つの位置更新情報x[n],x[n−1]を用いて求める。
位置更新情報x[n],x[n−1]が、それぞれnT,(n−1)T(=t,tn−1)の時点で得られ、x[n],x[n−1]をx,xn−1と記載すると、tの時点の位置推定情報y(t)は、
y(t)=Axn−1+Bx
A=(t−t)/(t−tn−1),
B=1−A=(t−tn−1)/(t−tn−1
により得ることができる。
この方法によれば、x[n]またはx[n−1]が欠落した場合は、y[n+1]と届いたx[n]かx[n−1]かを使って、欠落したx[n]かx[n−1]かを完全に復元できる。
ただし、x[n],x[n−1]の両方が欠落したときには、これらを完全には復元できない。
また、ネットワーク100においてバーストエラーが生じ、位置更新情報x[n],x[n−1],・・・,x[n−k]が欠落したときには、位置推定情報y[n+1]と、位置更新情報x[n−k−1]とにより、位置更新情報x[n],x[n−1],・・・,x[n−k]を補間することができる。
また、位置更新情報x[n+1]が、ネットワーク100において欠落したときに、位置推定情報y[n+1]から、位置更新情報x[n+1]を推定できる。
(方法3)キュービックスプライン補間:
補間により得られる位置推定情報y(t)が描く曲線をなめらかにして、位置推定情報y(t)を求めるためには、下式が用いられる。
y(t)=Axn−1+Bx+Cx"n−1+Dx"
ただし、
x"n−1,x"は、y(t)のtn−1,tにおける2次微係数であり、
C=(1/6)(A−A)(t−tn−1
D=(1/6)(B−B)(t−tn−1
である。
(方法4)線形予測:
位置推定情報y[n+1]は、下式1により得ることができる。
Figure 0005357752
ただし、式1のfは、A,dを下式2として、ATAf=Adを解くことにより得られ、Aの擬似的な逆行列をA+とすると、f=A+dにより求められる(詳細は非特許文献8に説明されているので、参照されたい)。
Figure 0005357752
図7は、ネットワーク100の伝送可能帯域Bと、位置更新情報x[n]の伝送のために使用される帯域Rとの関係を示す図である。
図8は、図3に示したトークン制御部212により行われるトークンバケット方式による位置推定情報y[m]の伝送制御を示す図である。
図7に示すように、ネットワーク100の伝送可能帯域Bは、位置更新情報x[n]の伝送のために使用される帯域R(R<B)に対して、十分な余裕がある。
トークン制御部212は、図7に示した位置更新情報x[n]をネットワーク100を介して伝送した残りの帯域B−Rを用いて、送信部210を制御し、位置推定情報y[m]を、ネットワーク100を介してネットワーク100に送らせる。
位置推定情報y[m]のネットワーク100を介した伝送には、位置推定情報y[m]の伝送のために使用される帯域が、B−R未満でなければならないという条件がある。
図8に示すように、トークンバケットを設け、これに、ri(bps)=B−Rのトークンが連続的に流入する。
通常はトークンバケットはソフトウエア的に実現されるため、それに直接対応するハードウエアは存在しなくてもよい。
トークン制御部212は、トークンバケットに溜まったトークンの量が、位置推定情報作成部208が作成する位置推定情報y[m]のデータ量に到達したときに、位置推定情報y[m]が送信可能であると判断し、トークンバケットをクリアするとともに、送信部210を制御して、この位置推定情報y[m]を送信させるように送信部210を制御する。
上の説明から判るように、このトークンバケットの容量は原理的には位置推定情報y[m]のデータ量と同じとしてよい。
図9は、図3に示した遅延制御部214により行われる位置推定情報y[m]の伝送制御を例示する図である。
図9に示すように、位置更新情報x[n]は、T(秒)間隔でゲームサーバ2からゲームクライアントコンピュータ3に対して送信される。
例えば、トークン制御部212が、位置更新情報x[1]が送信されてからu(u<T)秒後、T+uの時点で、位置更新情報x[0],x[1]から得られた位置推定情報y[2]を送信可能であると判断する。
しかしながら、直前の位置更新情報送信時点からの時間オフセットuがTに十分に近い場合、つまり、次回の位置更新情報送信時点(2T)の直前になっている場合は、直ちに位置推定情報y[2]を送信する代わりに、2Tの時点で次回の位置更新情報x[2]を送信するまで待ってから、位置推定情報y[3]を送信する方が有利である。
この理由は、すぐに陳腐化してしまう情報である位置推定情報y[2]を直ちに送る代わりに、わずかの待ち時間の増加で1段階先の位置についての情報である位置推定情報y[3]を送ることができるので、利用可能な帯域を有効に活用できるからである。
遅延制御部214は、位置更新情報x[n]を送信後、トークン制御部212により位置推定情報y[n+1]が送信可能であると判断されるまでの時間オフセットuと閾値Δとを比較し、時間オフセットuが閾値Δ未満であるときには、作成された位置推定情報y[n+1]を送信し、時間オフセットuが閾値Δ以上であるときには、次に位置更新情報x[n+1]を送信するタイミングまで待ってx[n+1]を先ず送信し、その後に位置推定情報y[n+2]を送信するように、送信部210を制御する。
図10は、図9に示した位置推定情報y[m]の伝送制御で用いられる閾値とひずみ(ここでは実際の位置と推定位置の間の差分)の関係を例示する図である。
横軸は閾値Δをミリ秒で表したものであり、縦軸はある基準値に対するひずみの大きさの相対値である。
このひずみは、より具体的に表現すれば、送信側の実アバタの位置と、位置更新情報を待ち時間閾値内に受信することによって受信側が獲得し、あるいは、位置推定情報y[m](EPP)を使って、受信側が復元・推定したアバタの位置との差分の平均値であるが、注意すべきことは、アバタは、物理的な世界ではなくゲームなどの仮想世界に存在するため、その位置にはメートルなどの物理的な単位は通常は与えられていない点である。
したがって、図10においても縦軸に長さの単位はない。
なお、上記関係は、ネットワーク100の構成、遅延およびパケットの欠落率などによって決まる。
図10のグラフは実験的に求められたものであり、Δ=10msとしたときに最良の結果が得られた。
なお、このグラフを求めるための実験の条件は、以下に示す(1)〜(4)のとおりである。
(1)位置推定情報y[m]の実際のオンラインゲームにおける有効性を試験するために、人気あるファースト・パーソン・シューティングゲーム(FPS)の"bzflag[1]"および"sauerbraten[2]"を10分間プレイするために必要とされるゲームの更新情報が集められた。
2人のクライアントが、低損失で低遅延のLANを介して、FPSに活発に参加した。
client2からの周期的な位置更新情報x[n]が、client1に届いたときに、フィルタが用いられてゲームの更新情報が取得された。
(2)所与の取得されたゲームの更新情報に対して、予め開発されたネットワークシミュレータを用いてネットワークのシミュレーションを行った。
ネットワークにおける遅延については、独立同一配信遅延モデル(iid; independent and identically distributed delay model)が用いられている。
各パケットには、(κ,α,λ)=(40ms,3,0.1)のシフトガンマ配信(shifted-Gamma distribution)iidパラメータで、ネットワーク遅延が与えられた。
この結果、平均伝送遅延は70msとなった。
ネットワーク損失については、下記2つの損失モデルが用いられた。
i)損失率0.1のiid損失モデル、および、
ii)損失率0.1およびバースト損失長2.22の2状態のマルコフ損失モデル(Gilbertモデル)
(3)ゲーム更新情報は、仮想世界のアバタのx、yは、送信者から受信者に対して100msごとに送られ、各更新情報は90バイトと仮定され、エンド・ツー・エンドの帯域幅の変化は、12kbpsから15kbpsと仮定され、定常的な位置更新情報x[n]の伝送で余る帯域幅は、位置推定情報y[m]のために用いられた。
(4)受信側では、アバタ位置推定部310は、現在のアバタの位置を予想する。
送信側で予想された位置と、送信側の実際の位置とのユークリッド距離が、評価の尺度となる。
送信部210は、アバタ位置処理部202から入力された位置更新情報x[n]をパケットに格納し、UDPに従って、ネットワーク100を介してゲームクライアントコンピュータ3に対して送信する。
送信部210は、位置推定情報作成部208から入力される位置推定情報y[m]をパケットに格納し、上述したトークン制御部212および遅延制御部214の制御に応じて、UDPに従って、ネットワーク100を介してゲームクライアントコンピュータ3に対して送信する。
[クライアントソフトウエア30]
クライアントソフトウエア30において、受信部304は、ゲームサーバ2からネットワーク100を介して伝送され、遅延およびパケットの欠落が生じた一連の位置更新情報x'[n]および位置推定情報y'[m]を受信する。
図9に示したように、位置更新情報x[n]は、T(秒)間隔でゲームサーバ2からゲームクライアントコンピュータ3に対して送信される。
遅延制御部302は、位置更新情報x'[n]を受信後、次の位置更新情報x'[n+1]を待ち時間閾値δの間だけ待つ。
ただし、これまでに受信できた一連の位置更新情報と位置推定情報を使えばまだ受信されていない次の位置更新情報x'[n+1]を正確に復元できるようになった場合には、次の位置更新情報x'[n+1]の受信を待つことなく復元・推定部306を付勢して次の位置更新情報x'[n+1]を求めるようにしてもよい。
待ち時間閾値δの間待ってもx'[n+1]を受信できなかった場合には、既に受信している位置推定情報y'[m]や過去の位置更新情報を使用して次の位置を復元・推定できるようにするため、次の位置更新情報x'[n+1]が時間内に受信できなかったことを復元・推定部306に対して通知する。
上述のような、直前の位置更新情報受信時点からの待ち時間によって、次の位置更新情報を使用するのか、それとも次の位置更新情報はネットワーク上で失われたものと判断して復元・推定を行うかの場合分けを行うのは、以下のような理由からである。
前回受信した位置更新情報x'[1]から次の位置更新情報x'[2]の受信までの待ち時間vをTに比べて大きく取ってよいとする場合、その時点までに受信できた一連の位置更新情報とvがTより大きくなっても(つまりパケットの遅延がないのであればx'[2]が受信されているべき時点を越えても)直ちにパケットの欠落だと判定する代わりに、許される限り(例えば2T付近まで)待つようにしてもよい。
このようにTを越えて待っている待ち時間の間に次の位置更新情報x'[2]を受信できた場合には、推定した値を使う代わりに誤差のない「本当の」値を得ることができるという点で有利である。
ただし、この待ち時間があまり長くなると、受信側で受け取ったところの更新された(しばらく前には正しかった)位置と送信側の現在位置との差が大きくなる。
従って、これ以上は次の位置更新情報を待ってはいけないという、上述の場合分けのための待ち時間閾値が存在するのである。
図11は、上述の待ち時間閾値δとひずみ(ここでは実際の位置と推定位置の間の差分)の関係を例示する図である。
横軸は待ち時間閾値δをミリ秒で表したものであり、縦軸はある基準値に対するひずみの大きさの相対値である。
このひずみは、より具体的に表現すれば、送信側の実アバタの位置と、位置更新情報を待ち時間閾値内に受信することによって受信側が獲得し、あるいは、位置推定情報y[m](EPP)を使って、受信側が復元・推定したアバタの位置との差分の平均値であるが、注意すべきことは、図10について説明したように、アバタは物理的な世界ではなくゲームなどの仮想世界に存在するため、アバタ位置は物理的な単位を通常は持っておらず、したがって、図11においても縦軸は長さの単位を持っていない点である。
上記関係は、ネットワーク100の構成、遅延およびパケットの欠落率などによって決まる。
図11のグラフは実験的に求められたものであり、図10の場合と同じ条件を採用している。
図11に示す例では、待ち時間閾値δ=195msとすることで、実際の位置と推定位置の間の差分を最小にすることができた。
復元・推定部306は、受信部304から入力された位置更新情報x'[n]および位置推定情報y'[m]を用いて、図6に示したようなデータの復元および推定を行い、各時点でゲームクライアントコンピュータ3の入出力装置126(図2)に表示すべき各アバタの位置情報z[n]を求め、アバタ位置補正処理ソフトウエア310に対して出力する。
アバタ位置補正処理ソフトウエア310は、位置情報z[n]に対してネットワーク100における遅延時間γの補正を行い、位置情報x"[n+γ]として、クライアント側ゲームソフトウエア312に対して出力する。
クライアント側ゲームソフトウエア312は、入力された位置情報"[n+γ]を用いて、入出力装置126に、各プレーヤのアバタを表示する。
[ネットワークゲームシステム1の全体的動作]
以下、図1に示したネットワークゲームシステム1の全体的な動作を説明する。
ゲームサーバ2側において、サーバ側ゲームソフトウエア200(図3)は、ゲームクライアントコンピュータ3のプレーヤからの操作に応じて、ネットワークゲームを進行させ、アバタ位置処理部202は、ネットワークゲームの仮想空間における各ユーザのアバタの位置を示す位置更新情報x[n]を作成する。
位置推定情報作成部208は、図5を参照して説明したように、位置更新情報x[n]から、位置推定情報y[m]を作成する。
トークン制御部212は、図8を参照して説明したように送信部210を制御し、トークンバケット方式により位置推定情報y[m]の送信制御を行う。
遅延制御部214は、図9,図10を参照して説明したように、位置更新情報x[n]を送信後、トークン制御部212により位置推定情報y[n+1]が送信可能であると判断されるまでの時間uと、閾値Δとを比較し、時間uが閾値Δ未満であるときには、作成された位置推定情報y[n+1]を送信し、時間uが閾値Δ以上であるときには、次に位置更新情報x[n+1]を送信するタイミングまで待って、この位置更新情報x[n+1]を送信し、その後に次の時点における位置推定情報y[n+2]を送信するように、送信部210を制御する。
送信部210は、位置更新情報x[n]および位置推定情報y[m]をパケットに格納し、トークン制御部212および遅延制御部214の制御に応じて、ゲームクライアントコンピュータ3に対して送信する。
ゲームクライアントコンピュータ3側において、受信部304(図3)は、ゲームサーバ2からネットワーク100を介して伝送されてきた位置更新情報x'[n]および位置推定情報y'[m]を受信する。
遅延制御部302は、図9および図11を参照して説明したように、位置更新情報x'[n]を受信後、待ち時間閾値δが経過するまで次の位置更新情報x'[n+1]が受信されるのを待ち、待ち時間閾値δだけの時間が経過しても位置更新情報x'[n+1]が受信できなかった場合には、この情報の欠落が起こったと判断して復元・推定を行うように復元・推定部306を制御する。
また、遅延制御部302は、受信部304が待ち時間閾値δ以内に次の位置更新情報x'[n+1]を受信できた場合には、この受信した情報を復元・推定部306に対して出力するように、受信部304を制御する。
復元・推定部306は、図6を参照して説明したように、受信部304から入力された位置更新情報x'[n]および位置推定情報y'[m]を用いて、データの復元および推定を行い、位置情報z[n]として出力する。
アバタ位置補正処理ソフトウエア310は、位置情報z[n]に対してネットワーク100における遅延時間γの補正を行い、位置情報x"[n+γ]として出力する。
クライアント側ゲームソフトウエア312は、入力された位置情報"[n+γ]を用いて、入出力装置126に、各プレーヤのアバタを表示する。
符号の説明
1・・・ネットワークゲームシステム,
100・・・ネットワーク,
2・・・ゲームサーバ,
120・・・本体,
122・・・CPU,
124・・・メモリ,
126・・・入出力装置,
128・・・通信装置,
132・・・記録装置,
134・・・記録媒体,
20・・・サーバソフトウエア,
200・・・サーバ側ゲームソフトウエア,
202・・・アバタ位置処理部,
204・・・サーバ側インターフェースソフトウエア,
208・・・位置推定情報作成部,
210・・・送信部,
212・・・トークン制御部,
214・・・遅延制御部,
3・・・ゲームクライアントコンピュータ,
30・・・クライアントソフトウエア,
300・・・クライアント側インターフェースソフトウエア,
302・・・遅延制御部,
304・・・受信部,
310・・・アバタ位置補正処理ソフトウエア,
312・・・クライアント側ゲームソフトウエア,
本発明は、ネットワークゲームのデータなど、遅延やパケットの欠落などが生じるネットワークを介して、実時間性が重要とされるデータの伝送に利用可能である。

Claims (10)

  1. 所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送システムであって、
    前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、
    前記送信装置は、
    前記伝送データを生成する伝送データ生成手段と、
    前記推定データを生成する推定データ生成手段と、
    前記伝送データの送信から、この伝送データを用いた推定のために用いられる推定データの送信までの時間差が、所定の閾値よりも短いか否かを判断する送信時間判断手段と、
    前記生成された伝送データを送信し、前記推定データの送信までの時間差が、前記所定の閾値よりも短いときに、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信する送信手段と
    を有し、
    前記受信装置は、
    前記送信された伝送データと推定データとを受信する受信手段と、
    前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する復元・推定手段と
    を有する
    データ伝送システム。
  2. 前記受信装置は、前記ネットワークにおいて伝送データに生じた遅延を補償する遅延補償手段
    をさらに有する請求項1に記載のデータ伝送システム。
  3. 前記送信装置は、
    前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分と、前記生成された推定データの送信に必要な帯域幅とに基づいて、前記推定データが送信可能か否かを判断する送信可能性判断手段
    をさらに有し、
    前記送信手段は、前記推定データが送信可能と判断されたときに、前記推定データを送信する
    請求項1または2に記載のデータ伝送システム。
  4. 前記送信可能性判断手段は、前記推定データを送信しても、前記送信された推定データの帯域幅が、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分を超えないように、トークンバケット(token bucket)方式により、前記推定データが送信可能か否かを判断する
    請求項3に記載のデータ伝送システム。
  5. 前記受信装置は、
    前記伝送データの受信から所定の閾値以内の時間差で次の周期の前記伝送データが受信されたか否かを判断する受信時間判断手段
    をさらに有し、
    前記推定手段は、前記次の周期の前記伝送データが前記所定の閾値以内の時間差で受信されなかったときに、前記受信された伝送データの次の伝送データの推定を行う
    請求項1〜のいずれかに記載のデータ伝送システム。
  6. 前記受信装置は、
    前記受信された伝送データおよび前記推定された伝送データまたはこれらのいずれかに基づいて、将来、受信されるべき伝送データを予測する予測手段
    をさらに有する
    請求項1〜のいずれかに記載のデータ伝送システム。
  7. 前記伝送データは、移動物の位置を、前記周期ごとに示す
    請求項1〜のいずれかに記載のデータ伝送システム。
  8. 前記伝送データは、1つ以上のアバタ(avatar)を移動させて行うネットワークゲームにおける前記アバタそれぞれの位置を、前記周期ごとに示す
    請求項1〜のいずれかに記載のデータ伝送システム。
  9. 所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送方法であって、
    前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、
    前記送信装置は、
    前記伝送データを生成し、
    前記推定データを生成し、
    前記伝送データの送信から、この伝送データを用いた推定のために用いられる推定データの送信までの時間差が、所定の閾値よりも短いか否かを判断し、
    前記生成された伝送データを送信し、前記推定データの送信までの時間差が、前記所定の閾値よりも短いときに、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信し、
    前記受信装置は、
    前記送信された伝送データと推定データとを受信し、
    前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する
    データ伝送方法。
  10. 所定の周期ごとに生成される伝送データと、前記伝送データの1つ以上に基づいて、これらよりも先の周期における伝送データを推定する推定データとを、送信装置から、ネットワークを介して、受信装置に対して伝送するデータ伝送プログラムであって、
    前記ネットワークは前記伝送データに対して遅延と欠落とを生じさせ、
    前記送信装置において、
    前記伝送データを生成する伝送データ生成ステップと、
    前記推定データを生成する推定データ生成ステップと、
    前記伝送データの送信から、この伝送データを用いた推定のために用いられる推定データの送信までの時間差が、所定の閾値よりも短いか否かを判断する送信時間判断ステップと、
    前記生成された伝送データを送信し、前記推定データの送信までの時間差が、前記所定の閾値よりも短いときに、前記ネットワーク上で割り当てられた帯域幅と前記伝送データの帯域幅との差分の帯域幅を用いて、前記生成された推定データを送信する送信ステップと
    をコンピュータに実行させ、
    前記受信装置において、
    前記送信された伝送データと推定データとを受信する受信ステップと、
    前記伝送データが欠落したときに、前記欠落した伝送データを、前記受信された伝送データと前記推定データとを用いて復元または推定する復元・推定ステップと
    をコンピュータに実行させる
    データ伝送プログラム。
JP2009509213A 2007-04-05 2008-03-28 データ伝送システムおよびその方法 Expired - Fee Related JP5357752B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009509213A JP5357752B2 (ja) 2007-04-05 2008-03-28 データ伝送システムおよびその方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2007099016 2007-04-05
JP2007099016 2007-04-05
PCT/JP2008/056091 WO2008126701A1 (ja) 2007-04-05 2008-03-28 データ伝送システムおよびその方法
JP2009509213A JP5357752B2 (ja) 2007-04-05 2008-03-28 データ伝送システムおよびその方法

Publications (2)

Publication Number Publication Date
JPWO2008126701A1 JPWO2008126701A1 (ja) 2010-07-22
JP5357752B2 true JP5357752B2 (ja) 2013-12-04

Family

ID=39863808

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009509213A Expired - Fee Related JP5357752B2 (ja) 2007-04-05 2008-03-28 データ伝送システムおよびその方法

Country Status (5)

Country Link
US (1) US20100325255A1 (ja)
JP (1) JP5357752B2 (ja)
KR (1) KR101513315B1 (ja)
DE (1) DE112008000858T5 (ja)
WO (1) WO2008126701A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9789397B2 (en) 2014-03-07 2017-10-17 Square Enix Co., Ltd. Game system, information processing apparatus, control method, and recording medium

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8823701B2 (en) * 2011-05-03 2014-09-02 Bungie, Inc. Apparatus and method for improved presentation of objects in a distributed interactive simulation
JP6298432B2 (ja) 2015-10-19 2018-03-20 株式会社コロプラ 画像生成装置、画像生成方法、及び画像生成プログラム
US10423674B1 (en) * 2015-12-30 2019-09-24 Google Llc Serving multiple content items responsive to a single request
TWI672930B (zh) * 2018-02-12 2019-09-21 瑞昱半導體股份有限公司 網路資料預測方法、網路資料處理裝置及網路資料處理方法
CN114337930A (zh) * 2018-02-14 2022-04-12 瑞昱半导体股份有限公司 网络数据预测方法
JP6748281B1 (ja) * 2019-12-10 2020-08-26 株式会社Cygames サーバ、処理システム、処理方法及びプログラム
CN115212580B (zh) * 2022-09-21 2022-11-25 深圳市人马互动科技有限公司 基于电话交互更新游戏数据的方法及相关装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07177148A (ja) * 1993-12-16 1995-07-14 Toshiba Corp 通信システムの呼設定方法及び呼設定制御装置
JPH09191314A (ja) * 1996-01-10 1997-07-22 Mitsubishi Electric Corp 連続データ伝送方法および連続データ伝送装置
JP2003333577A (ja) * 2002-03-06 2003-11-21 Hewlett Packard Co <Hp> メディア・ストリーミング配信システム
JP2004105671A (ja) * 2002-09-16 2004-04-08 Genki Kk 空間位置共有システム、データ共有システム、ネットワークゲームシステム及びネットワークゲーム用クライアント
JP2004180302A (ja) * 2002-11-27 2004-06-24 Alcatel Canada Inc 通信装置のためにデータトラフィックフローをスケジュールするシステムおよび方法
JP2004193992A (ja) * 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
JP2004280507A (ja) * 2003-03-17 2004-10-07 Connect Technologies Corp 遅延データ予測プログラム
WO2006057185A1 (ja) * 2004-11-26 2006-06-01 Kabushiki Kaisha Sega Doing Business As Sega Corporation 情報処理装置、データ処理方法、プログラム及び記録媒体

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3235655B2 (ja) * 1997-12-01 2001-12-04 日本電気株式会社 バースト性をもつ低速汎用データの固定長パケット多重装置
GB2347824B (en) * 1999-03-05 2004-03-03 Internat Mobile Satellite Orga Communication methods and apparatus
US7006616B1 (en) * 1999-05-21 2006-02-28 Terayon Communication Systems, Inc. Teleconferencing bridge with EdgePoint mixing
US20060067500A1 (en) * 2000-05-15 2006-03-30 Christofferson Frank C Teleconferencing bridge with edgepoint mixing
US20010044835A1 (en) * 2000-05-17 2001-11-22 Schober Joseph Frank Selecting content to be communicated based on automatic detection of communication bandwidth
JP4644939B2 (ja) * 2001-01-17 2011-03-09 日本電気株式会社 動画像符号化装置および動画像符号化方法
WO2002087099A1 (en) * 2001-04-18 2002-10-31 Bae Systems Information And Electronic Systems Integration Inc. Bandwidth-efficient wireless network modem
US7463890B2 (en) * 2002-07-24 2008-12-09 Herz Frederick S M Method and apparatus for establishing ad hoc communications pathways between source and destination nodes in a communications network
US7305464B2 (en) * 2002-09-03 2007-12-04 End Ii End Communications, Inc. Systems and methods for broadband network optimization
JP2004100967A (ja) * 2002-09-04 2004-04-02 Sumitomo Metal Ind Ltd 粉体燃焼用バーナ、粉体燃焼方法および焼却炉
US8176154B2 (en) * 2002-09-30 2012-05-08 Avaya Inc. Instantaneous user initiation voice quality feedback
JP3769752B2 (ja) * 2002-12-24 2006-04-26 ソニー株式会社 情報処理装置および情報処理方法、データ通信システム、並びに、プログラム
US8824553B2 (en) * 2003-05-12 2014-09-02 Google Inc. Video compression method
FR2857198B1 (fr) * 2003-07-03 2005-08-26 Canon Kk Optimisation de qualite de service dans la distribution de flux de donnees numeriques
US7551555B2 (en) * 2003-08-13 2009-06-23 Nortel Networks Limited Method, system and program product for regulating data messaging by mobile stations in a wireless network
US7475129B2 (en) * 2003-12-12 2009-01-06 International Business Machines Corporation Estimating bandwidth of client-ISP link
US20050144309A1 (en) * 2003-12-16 2005-06-30 Intel Corporation, A Delaware Corporation Systems and methods for controlling congestion using a time-stamp
EP1548972A3 (en) * 2003-12-26 2006-12-27 NTT DoCoMo, Inc. Transmitter device and relay device for performing data transmission control
US7477621B1 (en) * 2004-09-07 2009-01-13 Marvell International Ltd. System and method for estimating bandwidth requirements of and allocating bandwidth to communication devices operating in a network
US7426304B2 (en) * 2004-09-15 2008-09-16 Hewlett-Packard Development Company, L.P. Method and device for three-dimensional graphics to two-dimensional video encoding
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
KR100643760B1 (ko) * 2004-12-31 2006-11-10 삼성전자주식회사 타임-슬롯 광 버스트 스위칭 시스템 및 스위칭방법
JP4690453B2 (ja) * 2005-04-15 2011-06-01 ニュー ジャージー インスティチュート オブ テクノロジー ブロードバンドパッシブ光ネットワークのための動的帯域幅割当及びサービス区別
US8599945B2 (en) * 2005-06-16 2013-12-03 Qualcomm Incorporated Robust rank prediction for a MIMO system
US7950042B2 (en) * 2005-12-16 2011-05-24 Newport Media, Inc. Fast switching between time division multiplexed (TDM) channels
US9544602B2 (en) * 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
JP4808054B2 (ja) * 2006-03-17 2011-11-02 富士通株式会社 データ転送方法及び,これを適用する通信システム及びプログラム
WO2007115224A2 (en) * 2006-03-30 2007-10-11 Sri International Method and apparatus for annotating media streams
US7729347B2 (en) * 2006-05-31 2010-06-01 Zvi Rosberg Method and apparatus for fair flow control and congestion avoidance supporting multiple QoS class requirements
US7627632B2 (en) * 2006-11-13 2009-12-01 Microsoft Corporation Reducing bandwidth requirements for peer-to-peer gaming based on importance of remote objects to a local player
US7883419B2 (en) * 2007-01-31 2011-02-08 Hewlett-Packard Development Company, L.P. Proxy device to packetize data to send to a wireless network
US7856501B2 (en) * 2007-12-04 2010-12-21 Sony Computer Entertainment Inc. Network traffic prioritization

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07177148A (ja) * 1993-12-16 1995-07-14 Toshiba Corp 通信システムの呼設定方法及び呼設定制御装置
JPH09191314A (ja) * 1996-01-10 1997-07-22 Mitsubishi Electric Corp 連続データ伝送方法および連続データ伝送装置
JP2003333577A (ja) * 2002-03-06 2003-11-21 Hewlett Packard Co <Hp> メディア・ストリーミング配信システム
JP2004105671A (ja) * 2002-09-16 2004-04-08 Genki Kk 空間位置共有システム、データ共有システム、ネットワークゲームシステム及びネットワークゲーム用クライアント
JP2004180302A (ja) * 2002-11-27 2004-06-24 Alcatel Canada Inc 通信装置のためにデータトラフィックフローをスケジュールするシステムおよび方法
JP2004193992A (ja) * 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
JP2004280507A (ja) * 2003-03-17 2004-10-07 Connect Technologies Corp 遅延データ予測プログラム
WO2006057185A1 (ja) * 2004-11-26 2006-06-01 Kabushiki Kaisha Sega Doing Business As Sega Corporation 情報処理装置、データ処理方法、プログラム及び記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9789397B2 (en) 2014-03-07 2017-10-17 Square Enix Co., Ltd. Game system, information processing apparatus, control method, and recording medium

Also Published As

Publication number Publication date
KR20100014739A (ko) 2010-02-10
JPWO2008126701A1 (ja) 2010-07-22
DE112008000858T5 (de) 2010-02-04
US20100325255A1 (en) 2010-12-23
KR101513315B1 (ko) 2015-04-17
WO2008126701A1 (ja) 2008-10-23

Similar Documents

Publication Publication Date Title
JP5357752B2 (ja) データ伝送システムおよびその方法
US20090055471A1 (en) Media streaming with online caching and peer-to-peer forwarding
JP2022553617A (ja) 途絶の間のアプリケーションへの自動ユーザ入力の提供
Chakareski Wireless streaming of interactive multi-view video via network compression and path diversity
JP5804060B2 (ja) パラメータ推定装置、パラメータ推定方法、及び、パラメータ推定プログラム
Sun et al. Optimal strategies for live video streaming in the low-latency regime
CN104145253B (zh) 图像发送方法、以及装置
Chen et al. Qoe-aware dynamic video rate adaptation
EP4013006A1 (en) Method for playing on a player of a client device a content streamed in a network
Xu et al. Consistent synchronization of action order with least noticeable delays in fast-paced multiplayer online games
JP2023515003A (ja) ネットワークでストリーミングされたコンテンツをクライアントデバイスのプレーヤで再生する方法
US20230415034A1 (en) Streaming channel personalization
Shi et al. Dead reckoning using play patterns in a simple 2D multiplayer online game
US7490158B2 (en) Multicast transfer rate probe
JP5987798B2 (ja) 情報処理システム、情報処理装置及びプログラム
Roberts et al. Bounding inconsistency using a novel threshold metric for dead reckoning update packet generation
JP2008085826A (ja) 情報送信装置、通信端末装置、情報送信プログラム及び情報通信プログラム
EP3886451A1 (en) Method for playing on a player of a client device a content streamed in a network
Crowle et al. Dynamic adaptive mesh streaming for real-time 3d teleimmersion
US11167211B2 (en) Spectating simulation
KR100868775B1 (ko) 햅틱 기반 협업 가상 환경에서의 햅틱 이벤트 전송 방법 및그 시스템
Roberts Communication infrastructures for inhabited information spaces
Lee et al. Intra-media synchronization scheme for haptic interactions in distributed virtual environments
Pelayo Bandwidth prediction for adaptive video streaming
CN113422740B (zh) 一种分组包调度方法、装置、终端及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130306

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130805

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130830

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350