(57)【要約】  送信側端末１０は、ネットワークの状態を予測するネットワーク状態予測部１１と、ネットワークの通信状況の劣化に対応するためのデータである事前対応データを受信側端末に送信する事前対応データ送信部１３と、利用可能帯域に応じて操作共有コマンドを間引きする操作加工部１５と、操作共有コマンドを受信側端末に冗長セッションで送信する送信部１６とを含み、受信側端末は、事前対応データを保存する事前対応データ記憶装置２６と、事前対応データと直前に送信された操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する操作共有コマンド補完部２３とを含む。
2013183212.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された送信側端末および受信側端末を備え、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御システムであって、
前記送信側端末は、
前記ネットワークの状態を予測するネットワーク状態予測部と、
前記ネットワークの通信状況の劣化により、前記ネットワークの利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、前記ネットワークの通信状況の劣化に対応するためのデータである事前対応データを前記受信側端末に送信する事前対応データ送信部と、
前記利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて前記操作共有コマンドを間引きする操作加工部と、
前記操作共有コマンドを前記受信側端末に送信し、前記ネットワークの遅延の変動が大きい場合、前記操作共有コマンドを前記受信側端末に冗長セッションで送信する送信部と
を含み、
前記受信側端末は、
前記事前対応データを保存する事前対応データ記憶装置と、
前記事前対応データと直前に送信された前記操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する操作共有コマンド補完部と
を含む
ことを特徴とする操作共有コマンド通信制御システム。
【請求項２】
事前対応データは、送信側端末の周辺写真を含み、
受信側端末は、ネットワークの通信状況が劣化したときに直前に送信された前記周辺写真を表示する
請求項１記載の操作共有コマンド通信制御システム。
【請求項３】
送信側端末は、手書きのストロークを操作共有コマンドとして送付するときに、当該送信側端末の状況を含む事前対応データを送信し、
受信側端末は、ネットワークの通信状況が劣化した場合、直前に送信された前記送信側端末の状況に基づいて補完された操作共有コマンドを生成する
請求項１または請求項２記載の操作共有コマンド通信制御システム。
【請求項４】
送信側端末は、利用可能帯域の変動が予め定められた値より少なく、遅延の変動が予め定められた値より大きくなると予測された場合、複数のセッションで操作共有データを冗長送信する
請求項１から請求項３のうちのいずれか１項に記載の操作共有コマンド通信制御システム。
【請求項５】
状態予測部によるネットワークの利用可能帯域の変動および遅延の変動の予測結果は、所定の幅を有する値である
請求項１から請求項４のうちのいずれか１項に記載の操作共有コマンド通信制御システム。
【請求項６】
ネットワークを介して接続された送信側端末および受信側端末を用い、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御方法であって、
前記送信側端末は、前記ネットワークの状態を予測し、
前記送信側端末は、前記ネットワークの通信状況の劣化により、前記ネットワークの利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、前記ネットワークの通信状況の劣化に対応するためのデータである事前対応データを前記受信側端末に送信し、
前記送信側端末は、前記利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて前記操作共有コマンドを間引きし、
前記送信側端末は、前記操作共有コマンドを前記受信側端末に送信し、前記ネットワークの遅延の変動が大きい場合、前記操作共有コマンドを前記受信側端末に冗長セッションで送信し、
前記受信側端末は、前記事前対応データを保存し、
前記受信側端末は、前記事前対応データと直前に送信された前記操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する
ことを特徴とする操作共有コマンド通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スマートフォンなどの携帯端末またはＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などがインターネットや無線ネットワークなどの利用可能帯域や遅延が変動するネットワークで結ばれているコミュニケーションシステムに用いられる操作共有コマンド通信制御システムおよび操作共有コマンド通信制御方法に関する。
【背景技術】
【０００２】
携帯端末またはＰＣ等の情報端末を用いて、利用可能帯域や遅延が変動するインターネットや無線ネットワーク等を介して相手とコミュニケーションを行うには、情報端末は、ネットワークの変動に応じてデータを加工し、ネットワークの特性に即した送り方をする必要がある。情報端末は、多くの場合、ネットワークの変動を計測し、計測したネットワークの変動を元にフィードバック型の制御することで、緩やかなネットワークの変動に対応することができる。しかし、情報端末は、ネットワークの変動が激しい場合には変動に追随することができず、品質の劣化が発生してしまう。【０００３】
特に、３Ｇ（３ｒｄ．  Ｇｅｎｅｒａｔｉｏｎ）やＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）などに代表されるモバイルデータ通信においては、多数の情報端末が、基地局の電波帯域を共有し、かつ、電波強度の変動の影響を受ける。そのため、多数の情報端末が集中する都市部などでは、ネットワークの利用可能帯域の変動および遅延の変動が激しいので、情報端末は、フィードバック型の技術だけでこれらの変動に対処することは難しい。【０００４】
そこで、特許文献１には、ネットワークの帯域の変動を予測して、制御するフィードフォワード型で制御する方法が開示されている。この方法は、移動する端末のネットワークの状態の変化を予測して、予測結果に応じて映像配信のビットレート制御を実施し、ネットワークの通信状況が劣化しそうになったときには、予めビットレートを下げるなどの対応をする方法である。これにより、端末の使用者は、常に安定した映像コミュニケーションをとることが可能である。【０００５】
また、非特許文献１および非特許文献２に開示されているように、遠隔にいる使用者同士が、ネットワークに接続された携帯端末またはＰＣ等を用いて、操作共有コマンドを送信することで画面やアプリケーションを共有することができる操作共有サービスが利用されている。操作共有コマンドとは、操作を共有する相手に対する指令であり、タッチパネルやマウスなどの入力操作による書き込み等を示すデータである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１７３９７３号公報
【非特許文献】
【０００７】
【非特許文献１】“コミュニケーションドア／Ｗｅｂ会議”、[online]、日本電気株式会社、[2012年6月4日検索]、インターネット<URL：http://www.nec.co.jp/middle/commdoor/products/kaigi/kinou.html>
【非特許文献２】“ＴＳ−１０１５  ＲＣＳＳＰｈａｓｅ３Ｓｔａｇｅ１仕様書  コンテンツシェアリングの拡張（静止画共有時の操作共有サービス、動画共有時の操作共有サービス）”、[online]、2010年11月19日、社団法人  情報通信技術委員会、[2012年6月4日検索]、インターネット<URL：http://www.ttc.or.jp/jp/document_list/pdf/j/TS/TS-1015v1.pdf>
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１等に記載された技術では、予測結果に基づいて映像のビットレートを変更する。例えば、映像音声の通信については、映像の解像度や音声品質を変えるビットレート制御をすることで品質を落とすことにより、逆にネットワークの遅延を抑制することが可能である。映像音声の場合は、一瞬で流れ去るものなのでビットレート制御で一時的に欠落しても後には影響しないからである。【０００９】
しかし、非特許文献１および非特許文献２に示したような操作共有サービスに用いられる操作共有コマンドは、通信するデータの一つでも欠けると、送信側の端末と受信側の端末とでデータの不整合が発生してしまう。つまり、操作共有コマンドの場合は、欠落がその後のデータの不整合につながるので、特許文献１に記載されているビットレート制御を用いた品質のコントロールができない。よって、操作共有サービスにおいて、ネットワークの通信状況が劣化した場合、コミュニケーションの品質が劣化してしまう。【００１０】
そこで、本発明は、操作共有サービスにおいてネットワークの通信状況が劣化した場合に、コミュニケーションの品質劣化を低減することができる操作共有コマンド通信制御システムおよび操作共有コマンド通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
ネットワークを介して接続された送信側端末および受信側端末を備え、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御システムであって、前記送信側端末は、前記ネットワークの状態を予測するネットワーク状態予測部と、前記ネットワークの通信状況の劣化により、前記ネットワークの利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、前記ネットワークの通信状況の劣化に対応するためのデータである事前対応データを前記受信側端末に送信する事前対応データ送信部と、前記利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて前記操作共有コマンドを間引きする操作加工部と、前記操作共有コマンドを前記受信側端末に送信し、前記ネットワークの遅延の変動が大きい場合、前記操作共有コマンドを前記受信側端末に冗長セッションで送信する送信部とを含み、前記受信側端末は、前記事前対応データを保存する事前対応データ記憶装置と、前記事前対応データと直前に送信された前記操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する操作共有コマンド補完部とを含むことを特徴とする操作共有コマンド通信制御システム。【００１２】
ネットワークを介して接続された送信側端末および受信側端末を用い、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御方法であって、前記送信側端末は、前記ネットワークの状態を予測し、前記送信側端末は、前記ネットワークの通信状況の劣化により、前記ネットワークの利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、前記ネットワークの通信状況の劣化に対応するためのデータである事前対応データを前記受信側端末に送信し、前記送信側端末は、前記利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて前記操作共有コマンドを間引きし、前記送信側端末は、前記操作共有コマンドを前記受信側端末に送信し、前記ネットワークの遅延の変動が大きい場合、前記操作共有コマンドを前記受信側端末に冗長セッションで送信し、前記受信側端末は、前記事前対応データを保存し、前記受信側端末は、前記事前対応データと直前に送信された前記操作共有コマンドとに基づいて、補完された操作共有コマンドを生成することを特徴とする操作共有コマンド通信制御方法。
【発明の効果】
【００１３】
本発明によれば、操作共有サービスにおいてネットワークの通信状況が劣化した場合に、コミュニケーションの品質劣化を低減することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明による操作共有コマンド通信制御システムの実施形態の構成を示す説明図である。
【図２】事前対応データのデータ構造を示す説明図である。
【図３】送信側端末の動作を示すフローチャートである。
【図４】受信側端末の動作を示すフローチャートである。
【図５】本発明による操作共有コマンド通信制御システムの主要部の構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
次に、本発明による操作共有コマンド通信制御システムの実施形態を、図面を参照して詳細に説明する。
【００１６】
図１は、本発明による操作共有コマンド通信制御システムの実施形態の構成を示す説明図である。図１に示すように、本実施形態の操作共有コマンド通信制御システムは、送信側端末１０、受信側端末２０、および状態が変動するネットワーク１００を備える。なお、送信側端末１０と受信側端末２０の間に、中継サーバが、ネットワーク１００内の装置と同等に介在していてもよいが、図１では説明を簡略化するために省かれている。
【００１７】
ネットワーク１００は、例えば、インターネット、無線ネットワーク等により構成され、多数のルータ、多数の回線等を含み、送信側端末１０と受信側端末２０とを接続する。後述するネットワーク状態の予測は、送信側端末１０と受信側端末２０との間の状態が予測される。
【００１８】
送信側端末１０は、ユーザにより操作され、受信側端末２０に操作共有コマンドを送信する。また、送信側端末１０および受信側端末２０が、それぞれの同等の機能を具備し、双方向で操作共有コマンドを送りあう構成としてもよい。
【００１９】
受信側端末２０は、操作共有コマンドなどを受け取り、表示することで、受信者側のユーザに操作結果を通知する。
【００２０】
次に送信側端末１０の構成を説明する。送信側端末１０は、ＮＷ（Ｎｅｔｗｏｒｋ）状態予測部１１と、状態判定部１２と、事前対応データ送信部１３と、操作発生部１４と、操作加工部１５と、送信部１６とを含む。
【００２１】
ＮＷ状態予測部１１は、送信部１６を監視し、ネットワーク状態の変化を察知する。ネットワーク状態とは、利用可能帯域と遅延の変動であり、ＮＷ状態予測部１１は、送受信されるデータの転送時間を集計する。ＮＷ状態予測部１１は、予測のために、送信部１６が計測したデータを転送するときの送信開始時間、送信終了時間を取得し、後述する受信側端末２０の受信部２１が計測した受信開始時間、受信終了時間を取得する。
【００２２】
現在の利用可能帯域は、送信したデータ量を送信開始時間と受信終了時間の差で割った値とする。現在の遅延は、送信開始時間と受信開始時間の差を示す値とする。ＮＷ状態予測部１１は、これらの値を、一定時間集計し、利用可能帯域のばらつきが大きくなる傾向にある場合には、今後も利用可能帯域の変動がより大きくなると予測する。また、ＮＷ状態予測部１１は、遅延の変動が大きくなる傾向にある場合は、今後も遅延の変動がより大きくなると予測する。また、利用可能帯域および遅延の変動の予測結果は、所定の幅があってもよい。例えば、利用可能帯域の変動は「○○Ｍｂｐｓから××Ｍｂｐｓ」と表され、遅延の変動は、「△△ｍｓから□□Ｍｍｓの間」と表される。ネットワークの変動を正確に予測することは困難だからである。
【００２３】
状態判定部１２は、ＮＷ状態予測部１１に予測されたネットワーク状態を元に、今後、どのような処理をするべきかを判定する。状態判定部１２は、利用可能帯域の変動または遅延の変動が一定値よりも大きくなると予測され、想定した伝達時間を満たせない可能性がある場合には、事前対応データ送信部１３に事前対応データを送信するよう依頼する。
【００２４】
そして、状態判定部１２は、操作共有コマンドが送信されるときの動作を決定する。利用可能帯域の変動が予め定めた規定値よりも上まわると予測された場合には、間引き可能な操作共有コマンドを予測される利用可能帯域の上限に応じて間引くように、操作加工部１５に通知する。この処理によって、利用可能帯域が不足して操作共有のコマンドの伝達が遅延することをあらかじめ防止することできる。
【００２５】
また、状態判定部１２は、利用可能帯域の変動が規定値を下回るが、遅延変動が規定値を上回ると予測された場合には、送信部１６に対して冗長セッションで送付するように指示を出す。冗長セッションの数は予測された利用可能帯域を操作共有コマンドの送信帯域（送信データ量÷送信希望時間）で割った数（端数切り捨て）を上限とする。これによって、利用可能な帯域内で、可能な限り冗長にデータが送信されるようになり、いずれかのセッションで遅延が発生したとしても、そのほかのセッションでは低遅延で遅れる可能性があるので、操作共有コマンドの到達時間が短縮できる。
【００２６】
事前対応データ送信部１３は、事前対応データを、送信部１６を介して受信側端末２０に送信する。事前対応データ送信部１３は、後述する操作共有コマンドが送受信されるかどうかにかかわらず、ネットワークの状態が予め定めた所定の程度劣化する可能性があると予測された段階で、ネットワークが安定している時間帯に事前対応データを送信する。
【００２７】
図２は、事前対応データのデータ構造を示す説明図である。事前対応データＤ１０は、送信側端末状況Ｄ２０と劣化時の対処法Ｄ３０とを備える。送信側端末状況Ｄ２０には、予測された時点での送信側端末１０の内部および周辺の状況が記録されている。具体的には、送信側端末状況Ｄ２０は、タッチ操作の速度、長さＤ２１、送信側端末の傾きＤ２２、直近の周辺写真Ｄ２３などを含む。劣化時の対処法Ｄ３０は、ネットワーク劣化時の対処法として、間引き方Ｄ３１と、送信の冗長度Ｄ３２と、劣化中の代替表示手段Ｄ３３と、劣化中の代替効果音Ｄ３４とを含む。
【００２８】
タッチ操作の速度、長さＤ２１は操作共有コマンドに変換する前の、タッチパネルやマウスなどの入力デバイスレベルの情報である。タッチ操作の速度、長さＤ２１が受信側端末２０に送付されることで、受信側端末２０が、ある程度、ユーザの書き癖を予測して、操作共有コマンドの保管に利用できるようになる。送信側端末１０の傾きＤ２２は、端末の持ち方や変動しているかを累積したデータである。送信側端末１０の傾きＤ２２を参照することで、例えば、傾きの変動がない場合は机上に置いて安定して使っているが、傾きの変動が激しい場合は、片手で持っていることが推定される。推定された結果は、受信側端末２０が、間引きされた操作共有コマンドを補完するときに、ブレ幅をどのくらいに設定するのかに利用される。
【００２９】
例えば、受信側端末２０は、手書きのストロークを操作共有コマンドとして受信した場合、傾きの変動が激しいときには、幅を持たせて推定値としてある程度ストロークを太くして手書きを表示する。また、例えば、受信側端末２０は、傾きの変動が少ない場合には単純にスプライン補完して手書きストロークを描画する。また、ネットワークの通信状況が劣化し、例えばどうしても通信できない瞬断状況に陥ったときには、送信側端末１０は、直近の周辺写真Ｄ２３を、受信側端末２０に送信して表示させて、送信側端末１０の周辺状況を受信側端末２０の使用者に見せる。受信側端末２０の使用者は、通信が瞬断した間の相手の直前の様子を見て、現在の様子を推察することができる。そのため、送信側端末１０は、事前対応データＤ１０を送付するときには、カメラを使って周辺の状況を撮影して画像データとして送信する。
【００３０】
操作発生部１４は、ユーザの入力操作に基づいて操作共有コマンドを生成する。ユーザの入力操作とは、例えば、資料に対する手書きストロークの書き込み、スクロール、拡大縮小、文字入力、ボタンの押下などである。これら入力操作の例のうち、間引き可能な操作は、手書きストロークの書き込み、スクロール、拡大縮小などの連続操作であり、途中の操作は間引き可能であるが、最終結果は間引くことができない特性がある。
【００３１】
操作加工部１５は、状態判定部１２で指定された間引き方式にしたがって操作共有コマンドの間引きを実施する。上述したように、連続操作は間引きが可能な場合があり、手書きストロークの書き込み、スクロール、拡大縮小などの連続操作において、途中の操作は間引き可能である。よって、操作加工部１５は、状態判定部１２から指定された帯域の上限にしたがって、操作共有コマンドのデータサイズおよび到達希望時間から間引き率を算出し、間引けるデータは間引きを行う。なお、間引いた結果によって操作共有対象が送信側と受信側でずれるので、最終結果をまとめて送信する。
【００３２】
送信部１６は、操作加工部１５から受け取った操作共有コマンド、および、事前対応データ送信部から受け取った事前対応データを受信側端末２０に送信する。そのとき、送信部１６は、状態判定部１２からの指示に基づいて、複数のセッションで冗長送信する場合がある。ここでいうセッションは、ＴＣＰ／ＩＰのコネクションで確立したセッション、または、ＵＤＰの待ち受けポートごとに個別に送信できる仮想的なセッションである。冗長セッションの数は、予測された利用可能帯域を操作共有コマンドの送信帯域（送信データ量÷送信希望時間）で割った数（端数切り捨て）を上限とする。これによって、送信部１６は、利用可能な帯域内で、可能な限り冗長にデータを送信できるようなり、いずれかのセッションで遅延が発生したとしても、そのほかのセッションでは低遅延で遅れる可能性があるので、操作共有コマンドの到達時間が短縮できる。
【００３３】
次に、受信側端末２０の構成を説明する。受信側端末２０は、受信部２１と、事前対応データ保存部２２と、操作共有コマンド補完部２３と、操作反映部２４と、事前対応データ記憶装置２６と、操作共有コマンド記憶装置２５とを備える。
【００３４】
受信部２１は、送信側端末１０から事前対応データＤ１０および操作共有コマンドを受信する。そして、受信部２１は、事前対応データＤ１０を事前対応データ保存部２２に渡し、操作共有コマンドを操作共有コマンド補完部２３に渡す。受信部２１は、複数のセッションを経由して転送された操作共有コマンドを受信した場合、同一の操作共有コマンドについては最初に到達したものだけを操作共有コマンド補完部２３に送り、後から遅れて到達した操作共有コマンドは廃棄する。ただし、複数の操作共有コマンドが連続して送られてくる場合は、順序が入れ替わらないように、最初に到達した場合でも、それよりも前に送信された操作共有コマンドがある場合には、前に送信された操作共有コマンドが受信されるまで、受信部２１は、待機する。
【００３５】
事前対応データ保存部２２は、受け取った事前対応データＤ１０を事前対応データが保管された事前対応データ記憶装置２６に転送し、事前対応データ記憶装置２６が、操作共有コマンドを受信して処理するまで待機する。
【００３６】
操作共有コマンド補完部２３は、事前対応データ記憶装置２６に記憶された事前対応データＤ１０、受信部２１から送られた最新の操作共有コマンド、および操作共有コマンド記憶装置２５に格納された過去の操作共有コマンドに基づいて操作共有コマンドを補完し、生成する。
【００３７】
操作共有コマンド補完部２３が、連続操作の操作共有コマンドを複数、決められた間隔で受信した場合の処理を説明する。まず、最初に、操作共有コマンド補完部２３が、操作共有コマンドを受信したときには、そのまま操作共有コマンドを操作反映部２４に送信する。次に、操作共有コマンドが間引かれていて決められた間隔では受信しないことが明らかな場合、および、遅延の増加で決められ間隔内に操作共有コマンドが到達しない場合、補完を行う。
【００３８】
操作共有コマンド補完部２３の補完の方法を説明する。操作共有コマンド補完部２３は、事前対応データＤ１０の送信側端末状況Ｄ２０および劣化時の対処法Ｄ３０を利用して、推定される人間の操作の動きにしたがって操作共有コマンドを自動生成する。例えば、操作が手書きのストロークである場合、最初の書きだしは操作共有コマンド通りに始まるが、次の点でストロークを描画するべきタイミングで操作共有コマンドがないことがある。そのような場合、操作共有コマンド補完部２３は、操作共有コマンド記憶装置２５に蓄積された操作共有コマンド内にある筆跡の方向、事前対応データＤ１０内のタッチ操作の速度、長さＤ２１に基づいて適切な距離の点を補完データとして生成し、送信側端末１０の傾きＤ２２に基づいて線の太さを決定する。そして、操作共有コマンド補完部２３は、補完された操作共有コマンドを操作反映部２４に送信して、前の点と次の点との間を指定された太さの線で描画する。
【００３９】
操作共有コマンド補完部２３は、全ストロークデータがストローク入力後に送られたときに補完された操作共有コマンドを修正する。また、操作共有コマンド補完部２３は、ネットワークの通信状況の劣化が激しく、連続した操作共有コマンドが長期間到達しない場合、劣化中の代替表示手段Ｄ３３および劣化中の代替効果音Ｄ３４にしたがって、代替手段としての操作共有コマンドを生成する。劣化中の代替表示手段Ｄ３３において直近の周辺写真Ｄ２３が指定されている場合には、送信側端末１０のカメラで撮影した周辺写真を、データを表示している領域のバックグラウンドまたは周辺に表示するための操作共有コマンドを生成する。
【００４０】
操作反映部２４は、操作共有コマンド補完部２３から送られてきた操作共有コマンドに基づいて、操作共有を実行する。そして、操作共有コマンドを操作共有コマンド記憶装置２５に格納し、次の補完に備える。
【００４１】
次に、本実施形態の操作共有コマンド通信制御システムの動作を詳細に説明する。図３は、送信側端末の動作を示すフローチャートである。
【００４２】
まず、ステップＳ１０において、ＮＷ状態予測部１１は、ＮＷ状態予測を実施する。具体的には、ＮＷ状態予測部１１は、送信部１６を監視し、ネットワーク状態の変化を察知する。ネットワーク状態とは利用可能帯域と遅延の変動状況であり、ＮＷ状態予測部１１は、送受信しているデータの転送時間を集計している。そして、ＮＷ状態予測部１１は、予測のために、送信部１６が計測したデータを転送するときの送信開始時間、送信終了時間を取得し、受信部２１が計測した受信開始時間、受信終了時間を取得する。
【００４３】
現在の利用可能帯域は、送信したデータ量を送信開始時間と受信終了時間の差で割った値とする。現在の遅延は、送信開始時間と受信開始時間の差を算出した値とする。ＮＷ状態予測部１１は、これらの値を、一定時間集計し、利用可能帯域のばらつきが大きくなる傾向にある場合には、今後も利用可能帯域の変動がより大きくなると予測する。また、ＮＷ状態予測部１１は、遅延の変動が大きくなる傾向にある場合は、今後も遅延の変動がより大きくなると予測する。
【００４４】
次に、ステップＳ１１において、状態判定部１２は、ＮＷ遅延および帯域判定を実施する。状態判定部１２は、ＮＷ状態予測部１１で予測されたネットワーク状態を元に、今後、どのような処理をするべきかを判定する。状態判定部１２は、利用可能帯域の変動または遅延の変動が所定値よりも大きくなると予測され、想定した伝達時間を満たせない可能性がある場合には、事前対応データ送信部１３に事前対応データを送信するよう依頼する。事前対応データ送信部１３は、操作共有コマンドが送受信されるかどかにかかわらず、ネットワークの状態が予め定めた所定の程度劣化する可能性があると予測された段階で、事前対応データを、ネットワークが安定している時間帯に送付する。
【００４５】
そして、ステップＳ１２において、事前対応データ送信部１３は、事前対応データＤ１０を送信する。事前対応データＤ１０は、送信側端末状況Ｄ２０と（ネットワークの）劣化時の対処法Ｄ３０とを備える。送信側端末状況Ｄ２０には、予測された時点での送信側端末１０の内部および周辺の状況を含む。送信側端末状況Ｄ２０は、タッチ操作の速度、長さＤ２１、送信側端末の傾きＤ２２、直近の周辺写真などを含む。劣化時の対処法Ｄ３０は、ネットワーク劣化時の対処法として、間引き方Ｄ３１と、送信の冗長度Ｄ３２と、劣化中の代替表示手段Ｄ３３と、劣化中の代替効果音Ｄ３４とを含む。
【００４６】
タッチ操作の速度、長さＤ２１は、操作共有コマンドに変換する前の、タッチパネルやマウスなどの入力デバイスレベルの情報である。タッチ操作の速度、長さＤ２１が受信側端末２０に送付されることで、受信側端末２０が、ある程度、ユーザの書き癖を予測して、操作共有コマンドの保管に利用できるようになる。送信側端末の傾きＤ２２は端末の持ち方や変動しているかを累積したデータである。送信側端末１０の傾きＤ２２を参照することで、例えば、傾きの変動がない場合は机上に置いて安定して使っているが、傾きの変動が激しい場合は、片手で持っていることが推定される。推定された結果は、受信側端末２０が、受信側で間引きされた操作共有コマンドを補完するときに、ブレ幅をどのくらいに設定するのかに利用される。
【００４７】
例えば、受信側端末２０は、手書きのストロークを操作共有コマンドとして受信した場合、傾きの変動が激しいときには、幅を持たせて推定値としてある程度ストロールを太くして手書きを表示する。また、例えば、受信側端末２０は、傾きの変動が少ない場合には単純にスプライン補完して手書きストロールを描画する。また、ネットワークの通信状況が劣化し、例えばどうしても通信できない瞬断状況に陥ったときには、送信側端末１０は、直近の周辺写真Ｄ２３を、受信側端末２０に送信して表示させて、送信側端末１０の周辺状況を受信側端末２０の使用者に見せる。受信側端末２０の使用者は、通信が瞬断した間の相手の直前の様子を見て、現在の様子を推察することができる。そのため、送信側端末１０は、事前対応データＤ１０を送付するときには、カメラを使って周辺の状況を撮影して画像データとして送信する。
【００４８】
その後、ＮＷ状態予測部１１は、ユーザの操作が発生するまではＮＷ状態予測を繰り返す。ネットワークの変動が激しくなりそうであることが予測されたら、事前対応データ送信部１３は、ネットワークの変動が少なく、帯域が広く使えるときにだけ、事前対応データが何度も送信する。
【００４９】
次に、ステップＳ２０において、送信側端末１０に対しユーザの操作が開始される。操作発生部１４は、ユーザの入力操作に応じて操作共有コマンドを生成する。ユーザの入力操作は、例えば、資料に対する手書きストロークの書き込み、スクロール、拡大縮小、文字入力、ボタンの押下、などである。これら入力操作の例のうち、間引き可能なものは、手書きストロークの書き込み、スクロール、拡大縮小などの連続操作であり、途中の操作は間引き可能であるが、最終結果は間引くことができない特性がある。
【００５０】
そして、ステップＳ２１において、状態判定部１２は、ＮＷ状態予測部１１の予測と実測に基づいてＮＷ帯域の判定を行う。利用可能帯域の変動が規定値よりも上まわると予測または実測された場合には、ステップＳ２２に制御が移行する。そうでない場合は、ステップＳ２３に制御が移行する。
【００５１】
ステップＳ２２において、状態判定部１２は、間引き可能な操作共有コマンドを予測される利用可能帯域の上限に応じて間引くように、操作加工部１５に通知する。ステップＳ２２の処理によって、利用可能帯域が不足して操作共有のコマンドの伝達が遅延することをあらかじめ防止することができる。
【００５２】
ステップＳ２３において、状態判定部１２は、ＮＷ遅延を判定する。状態判定部１２は、利用可能帯域の変動が規定値を下回るものの、遅延変動が規定値を上回ると予測された場合には、送信部１６に対して冗長セッションで送付するように指示を出し、ステップＳ２４に制御が移行する。
【００５３】
ステップＳ２４では、送信部１６は、冗長セッションで送信するように設定する。冗長セッションの数は予測された利用可能帯域を操作共有コマンドの送信帯域（送信データ量÷送信希望時間）で割った数（端数切り捨て）を上限とする。これによって、利用可能な帯域内で、可能な限り冗長にデータを送信できるようなり、いずれかのセッションで遅延が発生したとしても、そのほかのセッションでは低遅延で遅れる可能性があるので、操作共有コマンドの到達時間が短縮できる。
【００５４】
そして、ステップＳ２５における送信の前に、操作加工部１５は、状態判定部１２が指定した間引き方式にしたがって操作共有コマンドの間引きを実施する。上述したように、連続操作は間引きが可能な場合があり、手書きストロークの書き込み、スクロール、拡大縮小などの連続操作であり、途中の操作は間引き可能である。よって、操作加工部１５は、状態判定部１２から指定された帯域の上限にしたがって、操作共有コマンドのデータサイズと到達希望時間から間引き率を算出し、間引けるデータは間引きを行う。なお、間引いた結果によって操作共有対象が送信側と受信側でずれるので、最終結果はまとめて送信する。
【００５５】
ステップＳ２５において、送信部１６は、操作加工部１５から受け取った操作共有コマンド、および、事前対応データを受信側端末２０に送信する。そのとき、送信部１６は、状態判定部１２からの指示に基づいて、複数のセッションで冗長送信する場合がある。ここでいうセッションとは、ＴＣＰ／ＩＰのコネクションで確立したセッション、または、ＵＤＰの待ち受けポートごとに個別に送信できる仮想的なセッションである。冗長セッションの数は、予測された利用可能帯域を操作共有コマンドの送信帯域（送信データ量÷送信希望時間）で割った数（端数切り捨て）を上限とする。これによって、利用可能な帯域内で、可能な限り冗長にデータを送信できるようなり、いずれかのセッションで遅延が発生したとしても、そのほかのセッションでは低遅延で遅れる可能性があるので、操作共有コマンドの到達時間が短縮できる。
【００５６】
次に、受信側端末２０の動作を説明する。図４は、受信側端末の動作を示すフローチャートである。
【００５７】
まず、ステップＳ３０において、受信部２１は、送信側端末１０から送信された事前対応データＤ１０を受信する。そしてステップＳ３１において、受信部２１は、事前対応データＤ１０を事前対応データ保存部２２に渡して、データが格納される。
【００５８】
そして、ステップＳ４０において、受信部２１は、送信側端末１０から送信された操作共有コマンドを受信する。受信部２１は、操作共有コマンドが複数のセッションを経由して転送されて受信する場合には、同一の操作共有コマンドについては最初に到達したものだけを操作共有コマンド補完部２３に送り、後から遅れて到達した操作共有コマンドは廃棄する。ただし、受信部２１は、複数の操作共有コマンドが連続して送られてくる場合は、順序が入れ替わらないように、最初に到達した場合でも、それよりも前に送信された操作共有コマンドがある場合には、前に送信された操作共有コマンドが受信されるまで、待機する。
【００５９】
次に、ステップＳ４１において、操作共有コマンドの反映を行う。操作反映部２４では、操作共有コマンド補完部２３から送られてきた操作共有コマンドに基づいて、操作共有を実行する。
【００６０】
そして直ちに、ステップＳ４２において、操作共有コマンド補完部２３は、操作共有コマンドを操作共有コマンド記憶装置２５に格納し、次の補完に備える。
【００６１】
次に、ステップＳ４３において、操作共有コマンド補完部２３は、事前対応データＤ１０と過去のコマンドを使った補完を行う。具体的には、操作共有コマンド補完部２３は、事前対応データ記憶装置２６に記憶された事前対応データＤ１０、受信部２１から送られた最新の操作共有コマンド、および操作共有コマンド記憶装置２５に格納された過去の操作共有コマンドに基づいて、操作共有コマンドを補完、生成する。
【００６２】
操作共有コマンド補完部２３が、連続操作の操作共有コマンドを複数、決められた間隔で受信する場合の処理を説明する。まず、最初に、操作共有コマンド補完部２３は、操作共有コマンドを受信したときには、そのまま操作共有コマンドを操作反映部２４に送信する。次に、操作共有コマンド補完部２３は、間引かれて決められた間隔では受信しないことが明らかな場合、および、遅延の増加で決められ間隔内に操作共有コマンドが到達しない場合、補完を行う。
【００６３】
操作共有コマンド補完部２３の補完の方法を説明する。操作共有コマンド補完部２３は、事前対応データＤ１０の送信側端末状況Ｄ２０および劣化時の対処法Ｄ３０を利用して、推定される人間の操作の動きにしたがって操作共有コマンドを自動生成する。例えば、操作が手書きのストロークである場合、最初の書きだしは操作共有コマンド通りに始まるが、次の点でストロークを描画するべきタイミングで操作共有コマンドがないことがある。そのような場合、操作共有コマンド補完部２３は、操作共有コマンド記憶装置２５に蓄積された操作共有コマンド内にある筆跡の方向、事前対応データのタッチ操作の速度、長さＤ２１に基づいて適切な距離の点を補完データとして生成し、送信側端末の傾きＤ２２に基づいて線の太さを決定し、操作反映部２４に送信して、前の点と次の点との間を指定された太さの線で描画する。
【００６４】
操作共有コマンド補完部２３は、全ストロークデータがストローク入力後に送られた時に補完された操作共有コマンドを修正する。また、操作共有コマンド補完部２３は、ネットワークの通信状況の劣化が激しく、連続した操作共有コマンドが長期間到達しない場合には、劣化中の代替表示手段Ｄ３３および劣化中の代替効果音Ｄ３４にしたがって、代替手段としての操作共有コマンドを生成する。劣化中の代替表示手段Ｄ３３において直近の周辺写真Ｄ２３が指定されている場合には、操作共有コマンド補完部２３は、送信側端末１０のカメラで撮影した周辺写真を、データを表示している領域のバックグラウンドまたは周辺に表示する操作共有コマンドを生成する。
【００６５】
最後に、ステップＳ４４において、操作反映部２４は、補完された操作共有コマンドの反映を行う。操作反映部２４は、操作共有コマンド補完部２３から送られてきた操作共有コマンドに基づいて、操作共有を実行する。そして、次の操作共有コマンドが間引かれており、決められた間隔では送信されないことが明らかな場合、および、遅延の増加で決められ間隔内に操作共有コマンドが到達しない場合は、再度、ステップＳ４３の動作が繰り返される。
【００６６】
本実施形態の操作共有コマンド通信制御システムは、ネットワークの現在の流量の変化を元にネットワークの帯域変動および遅延変動がどのくらい発生するのかを予測し、送信側端末１０が、ネットワークの変動が激しくなることが予測できた場合に、状態が悪くなる前に事前対応データを送付する。また、送信側端末１０が、操作共有コマンドが発生するときに、遅延変動が激しくなる場合には複数のセッションで冗長送信を行い、帯域変動が激しくなる場合には間引きし送付するなどの制御を行う。また、受信側端末２０は、事前対応データにしたがって、ネットワーク状態が劣化したときに操作共有コマンドを補完し、または事前対応データに内包された代替手段を利用する。
【００６７】
したがって、本実施形態の操作共有コマンド通信制御システムによれば、ネットワーク変動による共有データに対する操作共有コマンドを用いたコミュニケーションの品質劣化を最小化することができる。よって、受信端末の利用者が、操作結果の遅延等のネットワークの通信状況の劣化の影響を感じることを最小限にとどめることができるので、操作共有サービスの信頼性向上および操作性向上を達成することができる。
【００６８】
図５は、本発明による操作共有コマンド通信制御システムの主要部の構成を示すブロック図である。本発明による操作共有コマンド通信制御システムは、主要な構成として、ネットワーク１００を介して接続された送信側端末１０および受信側端末２０を備え、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御システムであって、前記送信側端末１０は、前記ネットワーク１００の状態を予測するネットワーク状態予測部１１と、前記ネットワーク１００の通信状況の劣化により、前記ネットワーク１００の利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、前記ネットワーク１００の通信状況の劣化に対応するためのデータである事前対応データを前記受信側端末２０に送信する事前対応データ送信部１３と、利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて前記操作共有コマンドを間引きする操作加工部１５と、前記操作共有コマンドを前記受信側端末２０に送信し、前記ネットワーク１００の遅延の変動が大きい場合、前記操作共有コマンドを前記受信側端末２０に冗長セッションで送信する送信部１６とを含み、前記受信側端末２０は、前記事前対応データを保存する事前対応データ記憶装置２６と、前記事前対応データと直前に送信された前記操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する操作共有コマンド補完部２３とを含む。
【００６９】
また、上記の実施形態には、以下の（１）〜（５）に示すような操作共有コマンド通信制御システムも開示されている。
【００７０】
（１）ネットワーク（例えば、ネットワーク１００）を介して接続された送信側端末（例えば、送信側端末１０）および受信側端末（例えば、受信側端末２０）を備え、操作共有サービスにおける操作共有コマンドの転送および補完を行う操作共有コマンド通信制御システムであって、送信側端末は、ネットワークの状態を予測するネットワーク状態予測部（例えば、ＮＷ状態予測部１１）と、ネットワークの通信状況の劣化により、ネットワークの利用可能帯域の変動または遅延の変動が予め定められた値より大きいネットワーク状態になると予測された場合、当該ネットワーク状態になる前に、ネットワークの通信状況の劣化に対応するためのデータである事前対応データを受信側端末に送信する事前対応データ送信部（例えば、事前対応データ送信部１３）と、利用可能帯域の変動が予め定められた値より大きい場合、当該利用可能帯域に応じて操作共有コマンドを間引きする操作加工部（例えば、操作加工部１５）と、操作共有コマンドを受信側端末に送信し、ネットワークの遅延の変動が大きい場合、操作共有コマンドを受信側端末に冗長セッションで送信する送信部（例えば、送信部１６）とを含み、受信側端末は、事前対応データを保存する事前対応データ記憶装置（例えば、事前対応データ記憶装置２６）と、事前対応データと直前に送信された操作共有コマンドとに基づいて、補完された操作共有コマンドを生成する操作共有コマンド補完部（例えば、操作共有コマンド補完部２３）とを含むことを特徴とする操作共有コマンド通信制御システム。
【００７１】
（２）操作共有コマンド通信制御システムは、事前対応データが、送信側端末の周辺写真を含み、受信側端末が、ネットワークの通信状況が劣化したときに直前に送信された周辺写真を表示するように構成されていてもよい。このような操作共有コマンド通信制御システムによれば、受信側端末の使用者が、通信が瞬断した間の相手の直前の様子を見て、現在の様子を推察することができる。
【００７２】
（３）操作共有コマンド通信制御システムは、送信側端末が、手書きのストロークを操作共有コマンドとして送付するときに、送信側端末の状況を含む事前対応データを送信し、受信側端末が、ネットワークの通信状況が劣化した場合、直前に送信された送信側端末の状況に基づいて補完された操作共有コマンドを生成するように構成されていてもよい。このような操作共有コマンド通信制御システムによれば、利用可能帯域の変動が予め定めた規定値よりも上まわる場合であっても、利用可能帯域が不足して操作共有のコマンドの伝達が遅延することをあらかじめ防止することできる。
【００７３】
（４）操作共有コマンド通信制御システムは、送信側端末が、利用可能帯域の変動が予め定められた値より少なく、遅延の変動が予め定められた値より大きくなると予測された場合、複数のセッションで操作共有データを冗長送信するように構成されていてもよい。このような操作共有コマンド通信制御システムによれば、利用可能な帯域内で、可能な限り冗長にデータが送信されるようになり、いずれかのセッションで遅延が発生したとしても、そのほかのセッションでは低遅延で遅れる可能性があるので、操作共有コマンドの到達時間が短縮できる。
【００７４】
（５）状態予測部によるネットワークの利用可能帯域の変動および遅延の変動の予測結果は、所定の幅を有する値であるように構成されていてもよい。このような操作共有コマンド通信制御システムによれば、利用可能帯域の変動および遅延の変動の正確な予測を必要とせずにコミュニケーションの品質劣化を低減することができる。
【００７５】
この出願は、２０１２年６月７日に出願された日本出願特願２０１２−１２９７４３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【００７６】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用の可能性】
【００７７】
本発明は、ネットワークに接続されたスマートフォン等の携帯端末、またはＰＣ等を用いた操作共有サービスに適用できる。
【符号の説明】
【００７８】
１０  送信側端末
１１  状態予測部
１１  ＮＷ状態予測部
１２  状態判定部
１３  事前対応データ送信部
１４  操作発生部
１５  操作加工部
１６  送信部
２０  受信側端末
２１  受信部
２２  事前対応データ保存部
２３  操作共有コマンド補完部
２４  操作反映部
２５  操作共有コマンド記憶装置
２６  事前対応データ記憶装置
１００  ネットワーク
【図１】
2013183212.tif 000003
【図２】
2013183212.tif 000004
【図３】
2013183212.tif 000005
【図４】
2013183212.tif 000006
【図５】
2013183212.tif 000007
【国際調査報告】
2013183212.tif 000008
2013183212.tif 000009