















【0001】
【発明の属する技術分野】
本発明は、データ送信装置、データ送信方法およびプログラムに関し、特に、デジタルカメラ等で取得した画像情報等を他の端末装置に無線通信にて送信する際に用いて好適なものである。
【0002】
【従来の技術】
家庭内ネットワークを利用して家庭内機器を監視・制御する、いわゆるネットワーク家電システムの構築が進みつつある。このシステムは、家庭内ネットワーク網とインターネット等の外部ネットワーク網とを、ホームゲートウエイ等のサーバ(ホームサーバ)によって媒介し、PDA(Personal Digital Assistants)等の携帯端末装置によって家庭内機器を遠隔制御するものである。また、このホームサーバを介して外部配信サーバからの情報を家庭内機器に適宜取り込むものである。
【0003】
ここで、ホームサーバと家庭内機器との通信は、電源供給線を利用した方式やIEEE802.11b無線LAN、ブルートゥース等の無線通信を利用した方式等、種々の通信方式を採用し得る。また、通信対象となる家庭内機器は、冷蔵庫、電子レンジ等の家電機器の他、デジタルビデオやデジタルカメラ等の携帯型AV機器も含まれ得る。
【0004】
また、ホームサーバには、家庭内機器の制御機能のみならず、ホームページの作成・提供機能や電子メールの送受信機能、外部サーバから提供されるホームページの閲覧機能等も配備され得る。これにより、たとえばユーザは、自己のホームページをホームサーバ上に作成し、デジタルカメラで撮影した画像情報を無線・有線の家庭内ネットワークを介してホームサーバに送信することにより、当該画像情報をホームページ上に取り込むことができる。
【0005】
撮影した画像情報を無線通信によりホームサーバに送信する場合、デジタルカメラの移動によって、ホームサーバとの間の通信状態が変化する。通信状態が劣悪となったときには、ホームサーバ側において送信データが正常に受信されない場合が起こり得る。このような場合には、未受信データがデジタルカメラからホームサーバに再送される。かかる再送は、通常、データ送信から一定期間経過までの間に、ホームサーバ側から受信確認が送信されなかったときに実行される。
【0006】
上記送信と再送信は、画像情報を一定長のパケットに分割し、このパケットを一ずつ順番に送信することにより行われる。すなわち、先頭のパケットをホームサーバに送信し、その受信確認が一定期間内になければ、この先頭パケットを再度1回だけ送信する。かかる再送を繰り返し、先頭パケットの受信が正常になされると、次のパケットがホームサーバ側に1回だけ送信される。
【0007】
しかしながら、デジタルカメラのような携帯性のある機器との通信においては、機器の移動に伴って、無線通信路の状態が時々刻々と変化する。このため、上記のように一定間隔にて送信・再送を1回のみ繰り返す方法を採用した場合には、通信経路の状態が良好なタイミングとパケット通信のタイミングとをマッチングさせることが困難となる。このため、一つのパケットを正常に送信するまでに長時間を要することとなり、未送信画像情報の累積を引き起こす結果となる。
【0008】
なお、以下の特許文献1には、通信回線の品質に応じてパケット長を変化させる技術が記載されている。
【0009】
【特許文献1】
特開2001−156795号公報
【0010】
【発明が解決しようとする課題】
そこで、本発明は、無線通信においても確実にデータを送信し得るデータ送信装置を提供することを課題とする。
より限定的には、通信経路の状態が良好なタイミングとデータ通信のタイミングとがマッチングする割合を向上させ得るデータ送信装置を提供することを課題とする。
【0011】
【課題を解決するための手段】
上記課題に鑑み本発明は、以下の特徴を有する。
【0012】
請求項1の発明に係るデータ送信装置は、データをパケットに分割して送信パケットを生成するパケット生成手段と、生成されたパケットを送信する送信手段とを備え、前記送信手段は、前記パケットを一度に複数回送信することを特徴とする。
【0013】
請求項2の発明は、請求項1に係るデータ送信装置において、送信されたパケットが正常に受信されたかを判別する判別手段をさらに備え、前記送信手段は、前記判別手段によりパケットが正常に受信されなかったと判別されたとき、正常に受信されなかったパケットを再送信する際の送信回数を、前記判別手段の判別結果に基づいて変化させることを特徴とする。
【0014】
請求項3の発明は、請求項2に係るデータ送信装置において、前記判別手段によりパケットが正常に受信されなかったと判別されたとき、正常に受信されなかったパケットを次に再送信する際の送信回数を、当該パケットの一回前の送信回数よりも所定回数だけ増加させることを特徴とする。
【0015】
請求項4の発明は、請求項2または3に係るデータ送信装置において、前記再送信によってパケットが正常に送信されたと判別されたとき、前記送信手段は、次のパケットを送信すると共に、通常送信の際の送信回数を、前記判別手段の判別結果に基づいて変化させることを特徴とする。
【0016】
請求項5の発明は、請求項4に係るデータ送信装置において、前記再送信によってパケットが正常に送信されたと判別されたとき、次のパケットの送信回数を、初期設定回数に復帰させることを特徴とする。
【0017】
請求項6の発明は、請求項4に係るデータ送信装置において、前記再送信によってパケットが正常に送信されたと判別されたとき、次のパケットの送信回数を、所定回数だけ減少させることを特徴とする。
【0018】
請求項7の発明は、請求項4または5に係るデータ送信装置において、前記再送信によってパケットが正常に送信された際に送信先から返信された受信確認の数が所定の閾値を越えたとき、次のパケットの送信回数を、初期設定回数に復帰させ、または、所定回数だけ減少させることを特徴とする。
【0019】
請求項8の発明に係るデータ送信方法は、データをパケットに分割して送信パケットを生成するステップと、生成されたパケットを送信する送信ステップとを備え、前記送信ステップは、前記パケットを一度に複数回送信することを特徴とする。
【0020】
請求項9の発明は、請求項8に記載のデータ送信方法において、送信されたパケットが正常に受信されたかを判別する判別ステップをさらに備え、前記送信手段は、前記判別手段によりパケットが正常に受信されなかったと判別されたとき、正常に受信されなかったパケットを再送信する際の送信回数を、前記判別手段の判別結果に基づいて変化させることを特徴とする。
【0021】
ここで、正常に受信されなかったパケットを次に再送信する際の送信回数は、たとえば、当該パケットの一回前の送信回数よりも所定回数だけ増加させるようにすると良い。
【0022】
また、前記再送信によってパケットが正常に送信されたと判別されたとき、前記送信ステップは、次のパケットを送信すると共に、その後に実行する通常送信の際の送信回数を、前記判別手段の判別結果に基づいて変化させるようにしても良い。
【0023】
ここで、通常送信の際の送信回数は、たとえば初期設定された回数に復帰させるようにすると良い。
このように、通常送信および再送信の際のパケット送信回数を適宜変更することにより、その時々の通信状態に応じた効率的な通信制御を実行することができるようになる。
【0024】
請求項10の発明は、請求項8および9の処理ステップを実行する機能をコンピュータに付与するプログラムである。
【0025】
なお、上記請求項に係る発明は、無線通信方式と有線通信方式の何れにも適用できるが、好ましくは、通信状態が不安定且つ大きく変動し得る無線通信方式に適用されるものである。よって、通信装置が無線通信方式による通信系と有線通信方式による通信系の両方を備えている場合、上記発明は、無線通信系の方に適用し、有線通信系の方には、一度に複数回パケット送信しない通常の通信技術を適用すればよい。
【0026】
また、上記請求項において、通常送信または再送信の際のパケット送信回数を「前記判別手段の判別結果に基づいて変化させる」とは、判別結果に応じて直ちに送信回数を変化させる場合の他、同様の判別結果が所定回数継続したときに、送信回数を変化させる場合等を広く含むものである。
【0027】
本発明の特徴は、以下に示す実施の形態の説明により更に明らかとなろう。
【0028】
ただし、以下の実施の形態は、あくまでも、本発明の一つの実施形態であって、本発明ないし各構成要件の用語の意義は、以下の実施の形態に記載されたものに制限されるものではない。
【0029】
【発明の実施の形態】
以下、本発明の実施の形態につき図面を参照して説明する。
【0030】
図1に、実施の形態に係る画像閲覧システムの構成を示す。本システムは、デジタルカメラ100とホームサーバ200から構成されている。
【0031】
デジタルカメラ100で撮影された画像情報は、随時、ホームサーバ200に送信される。ホームサーバ200は、受信した画像情報をハードディスク等に記憶する。この際、各画像情報には、例えば「非公開」、「全公開」、「自己のみ公開」、「○○さんのみ公開」といった公開対象情報が、ユーザにより個別に設定される。ここで、「自己のみ公開」または「○○さんのみ公開」については、たとえば公開先ユーザのユーザIDを各画像情報に対応付けることにより設定される。
【0032】
公衆ネットワーク網を介して他のユーザ端末301〜303からホームページにアクセスがなされると、ホームサーバ200は、当該他のユーザ端末のユーザIDと上記公開対象情報を比較し、当該ユーザに対し閲覧が許容されている画像情報を検索する。そして、検索された画像情報をホームページに組み込んでページ情報を作成し、これを当該ユーザ端末に送信する。これにより、許容された画像のみを組み込んだホームページが、当該ユーザ端末による閲覧に供される。
【0033】
宅内の端末装置401からホームサーバ200にアクセスして、画像情報を閲覧することもできる。この場合、閲覧に先立って、端末装置401からホームサーバ200に対し、ユーザIDが送信される。ホームサーバ200は、受信したユーザIDと上記公開対象情報を比較し、当該ユーザに対し閲覧が許容されている画像情報を検索する。そして、検索された画像情報のみを端末装置401に送信する。これにより、許容された画像のみが、端末装置401による閲覧に供される。
【0034】
デジタルカメラ100は、制御部101と、画像入力部102と、表示部103と、情報記憶部104と、情報入力部105と、通信制御部106と、通信インタフェース107とから構成されている。
【0035】
制御部101は、内蔵プログラムに従って各部を制御する。画像入力部102は、カメラ、CCD(Charge Coupled Device)等の撮影手段および画像情報作成手段を備える。表示部103は、液晶モニタ等の表示手段を備え、撮影時および撮影後の被写体や、機能情報(文字)等を表示する。情報記憶部104は、着脱可能な固体半導体メモリ等の記憶手段を備え、撮影により取得した画像情報等を記憶する。情報入力部105は、機能設定ボタン等の各種入力手段を備える。
【0036】
通信制御部106は、撮影画像の画像情報をパケットに分割してホームサーバ200に送信すると共に、制御部101からの各種制御情報をホームサーバ200に送信する。また、ホームサーバ200からの受信情報を制御部101に送る。通信インタフェース107は、通信モジュール108を装着するための手段を備え、通信モジュール108と通信制御部106との間のデータ授受を媒介する。
【0037】
なお、通信インタフェース107には、無線通信用と有線通信用の2種類の通信モジュール108が装着され得る。装着された通信モジュール108が何れのタイプであるかは、通信モジュール108から通信制御部106に提供されるID情報によって識別される。
【0038】
無線通信用の通信モジュールが装着された場合、ホームサーバ200側のアンテナ205および無線処理部204を介して、画像情報等の情報がホームサーバ200に送信される。また、有線通信用の通信モジュールが装着された場合、ホームサーバ200側のローカルネットワーク通信部208を介して、画像情報等の情報がホームサーバ200に送信される。
【0039】
無線用通信モジュール108には、ホームサーバ200からの通信波の電界強度を検出する手段が備えられている。この電界強度に関する情報は、通信インタフェース107を介して、通信制御部106に供給される。
【0040】
なお、通信制御部106は、図2に示す如く、無線通信用の通信制御系1061と有線通信用の通信制御系1062の2つの通信制御系を備えている。同図において、通信モジュール判別部1063は、上述したモジュールIDをもとに、通信モジュール108の種別を判別し、この判別結果をスイッチング部1064に出力する。かかる判別結果に応じてスイッチング部1064は何れか一方の通信制御系を選択する。これにより、通信モジュールの種別に対応した通信制御系が選択される。
【0041】
図1に戻り、ホームサーバ200は、制御部201と、表示部202と、情報記憶部203と、無線処理部204と、アンテナ205と、画像変換部206と、インタフェース207と、ローカルネットワーク通信部208と、HP作成部209と、情報入力部210と、ネットワーク通信部211とから構成されている。
【0042】
制御部201は、内蔵プログラムに従って各部を制御する。表示部202は、液晶モニタ等の表示手段を備え、デジタルカメラ100から受信した画像情報や、この画像情報を縮小したサムネイル画像等を表示する。情報記憶部203は、ハードディスク等の記憶手段を備え、デジタルカメラ100から受信した画像情報や、ユーザにより設定される各画像情報の公開対象情報等を記憶する。
【0043】
無線処理部204は、アンテナ205を介して通信モジュール108から受信した無線通信波を処理して、通信制御情報や画像情報等を生成し、これを制御部201に出力する。また、制御部201から受け取った通信制御情報等を無線通信波に変換し、これをアンテナ205から出力する。
【0044】
たとえば、無線処理部204は、制御部201から一定間隔で供給されるパイロット信号(ホームサーバを識別するための信号)を無線通信波に変換し出力する。また、後述する画像情報の自動転送モードにおいて、デジタルカメラ100側からの画像情報送信要求に応答して、要求確認のための通信制御情報を無線通信波に変換し出力する。
【0045】
なお、無線処理部204における通信方式としては、IEEE802.11b、11g等を採用し得る。
【0046】
画像変換部206は、デジタルカメラ100から受信した画像情報をサムネイル情報に変換する。インタフェース207は、制御部201とローカルネットワーク通信部208との間のデータ授受を媒介する。ローカルネットワーク通信部208は、有線通信用の通信モジュール108のデータ入出力端子が接続されるジャックを備え、この通信モジュール108との間の通信制御を行う。なお、ここでの通信は、たとえばイーサーネット等の通信プロトコルを用いて行われる。
【0047】
HP作成部209は、情報入力部210からの入力に従いホームページ情報を作成する。作成されたホームページ情報は情報記憶部203に記憶される。このホームページには、画像閲覧のためのページまたは画像閲覧のための領域が含まれている。HP作成部209は、他のユーザ端末からホームページにアクセスがなされたとき、このユーザ端末に提供が許容される画像情報を情報記憶部203から選択し、これを画像閲覧のためのページまたは画像閲覧のための領域に組み込む。
【0048】
すなわち、アクセス元ユーザ端末のユーザIDと情報記憶部203中の公開対象情報を比較し、当該ユーザに対し閲覧が許容されている画像情報を検索する。そして、検索した画像情報の画像IDを、上記作成・記憶済みのホームページ上の画像閲覧ページまたは画像閲覧領域に対応したホームページ情報中の記述箇所に、その表示命令と共に記述する。
【0049】
情報入力部210は、キーボードやペンタッチパネル等の入力手段を備える。ネットワーク通信部211は、公衆ネットワーク網との間の通信制御を行う。
【0050】
図3に、デジタルカメラ100からホームサーバ200に画像情報を自動転送(無線通信)する際のデジタルカメラ100側の処理フローを示す。
【0051】
写真撮影がなされると(S101)、撮影写真の画像情報が画像入力部102にて生成され、情報記憶部104に記憶される(S102)。そして、この画像情報の送信フラグが0にセットされる(S103)。かかる画像情報の記憶と送信フラグのセットは、写真撮影がなされる度に実行される。これにより、情報記憶部104には未送信状態の画像情報が蓄積されていく。
【0052】
たとえば、宅外から宅内への移動により、通信制御部106がホームサーバ200からのパイロット信号を受信しホームサーバ200側との通信が可能となったときに(S104)、未送信状態の画像情報が蓄積されていると(S105)、未送信の画像情報が情報記憶部104から読み出され、通信制御部106にて送信パケットに分割される。分割された各パケットは、無線用通信モジュール108からホームサーバ200側へ順次出力される(S106)。そして、一つの未送信画像情報に対する全てのパケットがホームサーバ200に送信され、これら全てのパケットに対する受信確認をホームサーバ200から受信すると、制御部101は、当該画像情報に対する送信フラグを1に変更する。これにより、当該画像情報は送信済みにセットされる(S107)。
【0053】
かかる画像情報の送信は、S105にて、全ての未送信画像情報がホームサーバ200側に送信されるまで実行される。その間、新たな写真撮影がなされると、S101〜S103の処理にて、撮影された写真の画像情報が順次情報記憶部104に蓄積される。
【0054】
図4に、デジタルカメラ100から受信した画像情報に閲覧レベル(公開対象情報)を設定する際のホームサーバ200における処理フローを示す。
【0055】
デジタルカメラ100から画像情報を受信すると(S201)、制御部201は、受信した画像情報を情報記憶部203に格納し(S202)、当該画像情報のレベル設定フラグを0にセットする(S203)。かかる画像情報の記憶とレベル設定フラグのセットは、画像情報の受信がなされる度に実行される。これにより、情報記憶部203には閲覧レベル未設定の画像情報が蓄積されていく。
【0056】
このようにしてレベル未設定の画像情報が情報記憶部203に蓄積されると(S204)、制御部201は、レベル未設定の画像情報を順次画像変換部206に送る。画像変換部206は、受け取った画像情報からサムネイル画像用の画像情報(サムネイル画像情報)を生成する。生成されたサムネイル画像情報は、制御部201を介して表示部202に送られる。これにより、レベル未設定のサムネイル画像が順次表示部202上に表示される(S205)。
【0057】
このようにして表示されたサムネイル画像の中からユーザが所定の画像を選択し、さらに当該画像に対し所定の閲覧レベルを設定すると(S206)、この閲覧レベルに応じた公開対象情報が、当該画像の画像情報に対応付けられて、情報記憶部203に記憶される(S207)。
【0058】
たとえば、ユーザが所定のサムネイル画像を選択すると、表示部202上に「非公開」、「全公開」、「自己のみ公開」、「公開先設定」の4つの選択肢が表示される。このうち、ユーザが「全公開」を選択すると、当該画像情報の公開先に「All」が設定される。また、「自己のみ公開」を選択すると、当該画像情報の公開先に、予め登録済みの「自己のユーザID」が設定される。さらに、「公開先設定」を選択すると、公開先ユーザのユーザIDの入力欄が表示され、ユーザがこの入力欄に所望の公開先ユーザIDを入力すると、当該画像情報の公開先に当該公開先ユーザIDが設定される。
【0059】
しかして、画像情報に対するレベル設定がなされると、制御部201は、当該画像情報のレベル設定フラグを1に変更する。これにより、当該画像情報はレベル設定済みにセットされる(S208)。このようにして、レベル設定フラグが1に変更された画像情報のサムネイル画像は、表示部202から消去される。表示部202には、レベル未設定のサムネイル画像のみが表示され続ける。
【0060】
図5に、レベル設定テーブルの一例を示す。同図において、画像IDは、情報記憶部203に記憶済みの画像情報に付された識別符号である。また、図中「MEaaaaa」は「自己のユーザID」であり、「FRbbbbb」は公開先として設定されたユーザIDである。
【0061】
図6に、公衆ネットワーク網を介して他のユーザ端末がホームサーバ200のホームページにアクセスした際のホームサーバ200における処理フローを示す。
【0062】
他のユーザ端末301〜303からホームページにアクセスがなされると(S301)、制御部201はネットワーク通信部211を介して、当該アクセス元のユーザ端末に対し、ユーザIDとパスワードの送信を要求する。この要求を受け、アクセス元ユーザ端末から適正なユーザIDとパスワードが返信されると(S302)、ホームページ提供処理に移行する。
【0063】
まず、制御部201は、HP作成部209に対し、ホームページ情報作成指令と共に、アクセス元ユーザ端末のユーザIDを送る。この指令を受け、HP作成部209は、作成済みのホームページ情報を情報記憶部203から読み出す(S303)。また、アクセス元ユーザ端末のユーザIDと情報記憶部203中の公開対象情報(図5のレベル設定テーブル)を比較し、当該ユーザに対し閲覧が許容されている画像情報を検索する(S304)。具体的には、公開先が「ALL」となっている画像と、当該アクセス元のユーザIDが公開先として設定されている画像を検索する。そして、検索した画像の画像IDを上記作成・記憶済みのホームページ上の画像閲覧ページまたは画像閲覧領域に対応したホームページ情報中の記述箇所に、その表示命令と共に記述する。
【0064】
このようにして作成された当該ユーザ用のホームページ情報は、検索された画像情報と共に、当該アクセス元ユーザ端末に送信される(S305)。これにより、当該ユーザに対して閲覧が許容された画像情報のみが閲覧に供されるようになる。
【0065】
なお、上記S302にてアクセス元ユーザ端末から適正なユーザIDとパスワードが返信されなかった場合、たとえば、一定期間にユーザIDとパスワードが一切送信されなかった場合あるいは受信したユーザIDとパスワードが未登録であるような場合には、ホームページの提供が中止される。あるいは、公開先が「ALL」となっている画像を検索し、これをホームページに組み込んで、アクセス元ユーザ端末に提供するようにしても良い。
【0066】
図7に、上記自動転送処理フロー(図3)における画像情報送信処理ステップ(S106)の詳細を示す。ここで、画像情報は、上述の如く、一定長のパケットに分割されて送信される。また、通信プロトコルとして、たとえば、TCP/IP(Transmission Control Protocol / Internet Protocol)を用いる。
【0067】
通信モジュール(無線用)108がホームサーバ200からのパイロット信号を受信し、ホームサーバ200との通信が可能となると(図3のS104)、通信制御部106は、通信モジュール108を介して、パケット送信要求をホームサーバ200に送信する。これに応答して、ホームサーバ200からパケット送信要求の確認が送信され、これが通信制御部106により受信されるとコネクション確立となり(S401)、通信制御部106は、送信対象の画像情報を順次パケットに分割し(S402)、変数Nを1にセットする(S403)。そして、先頭(N=1)のパケットをあらかじめ設定された複数回(たとえば2回)だけホームサーバ200に送信する(S404)。
【0068】
かかる送信の後、通信制御部106は、ホームサーバ200からの受信確認を待つ。そして、たとえば無線通信路上の通信品質が悪い場合等、一定期間内に受信確認がなされなければ(S405のNO)、先頭(N=1)のパケットを再度上記設定された複数回(たとえば2回)だけ送信する。かかる再送は、当該パケットの受信確認をホームサーバ200側から受信するまで繰り返される(S405、S404)。
【0069】
ここで、再送回数が所定の回数(たとえば50回)を越えたとき、送信エラーとして処理を中止するようにしても良い。
【0070】
他方、一定期間内に受信確認を受け取ったとき(S405のYES)、通信制御部106は、当該画像情報の未送信パケットが残っているかを判別する(S406)。そして、未送信パケットが残っていれば、変数Nを1だけカウントアップし(S407)、次のパケットを上記設定された複数回(たとえば2回)だけ送信する(S404)。
【0071】
上記送信・再送信は、当該画像情報を分割した全てのパケットが送信されるまで繰り返し実行される(S406)。そして、全てのパケットの送信が終了すると、当該画像情報の送信処理を終了する。
【0072】
図9に、上記図7の処理フローに従った場合のデジタルカメラ100とホームサーバ200との間の送受信シーケンスを示す。
【0073】
通信モジュール(無線用)108がホームサーバ200からのパイロット信号を受信し、ホームサーバ200との通信が可能となると、デジタルカメラ100からホームサーバ200に対し、パケット送信要求が送信される。これを受けて、ホームサーバ200から送信要求確認が送信され、これがデジタルカメラ200によって受信されると、デジタルカメラ100からホームサーバ200に対し、パケット1が、たとえば2回送信される。
【0074】
送信された2つのパケットが、たとえば無線通信路上の通信品質の悪化(かかる通信品質の悪化は、デジタルカメラ100とホームサーバ200の間の距離変動や、外部要因によるノイズ等に起因する)によってホームサーバ200に到達せず、よって、一定期間T内にホームサーバ200からの受信確認を受信しなかった場合、デジタルカメラ100は、再度、パケット1を2回送信する。
【0075】
この再送において送信された2つのパケット1のうち、1つがホームサーバ200に到達し正常にパケット処理がなされると、受信確認がホームサーバ200からデジタルカメラ100に送信される。しかし、この受信確認がデジタルカメラ100に到達しなかった場合、デジタルカメラ100は、再度パケット1を2回送信する。再送された2つのパケット1がホームサーバ200にて正常に受信されると、ホームサーバ200からパケット1の受信確認が2回送信される。
【0076】
かかる受信確認がデジタルカメラ100にて受信されると、デジタルカメラ100は、次のパケットであるパケット2を2回送信する。以後、上記と同様にして、後続パケットの送受信が実行される。
【0077】
かかる送信処理に従えば、送信・再送信において同時に2回パケットが送信されるので、一つのパケットを1回だけ送信する場合に比べ、一度の送信によりパケットがホームサーバ200に到達し易くなる。特に、デジタルカメラ100のような携帯性のある機器においては、機器の移動に伴って、無線通信路の状態が時々刻々と変化するため、通信経路の状態が良好なタイミングとパケット通信のタイミングとをマッチングさせることが、通信処理において重要な要素となる。
【0078】
上記送信処理に従えば、送信・再送信時にパケットが同時に2回送信されるので、通信経路の状態が良好なタイミングにてパケット通信が行われ易くなる。よって、通信の確実性・信頼性を向上させることができる。
【0079】
なお、上記送信処理においては、同一パケットが複数回ホームサーバ200に到達する場合が起こり得る。たとえば、図9のシーケンスでは、パケット1が3回ホームサーバ200に到達している。かかる場合、ホームサーバ200の制御部201は、パケットに付されたTCPヘッダ(図8)内のシーケンス番号を参照し、受信パケットの同一性を判別する。そして、一つのパケットについて正常に受信した後、再度同一パケットを正常に受信した場合には、最初に正常に受信したパケットのみを採用する。
【0080】
ところで、上記処理例では、一度に送信するパケットの送信回数を多くするほど通信の確実性が向上する。しかし、送信回数を多くすると、同一パケットが重ねて受信される割合も高くなり、無駄な送信が増加する。無駄な送信は、デジタルカメラ100側の処理遅延とバッテリー浪費の原因となる。よって、送信回数を複数回にするとしても、無駄な送信を極力抑制できる程度の回数に抑える必要もある。
【0081】
図10に、上記画像送信処理ステップにおける他の処理例を示す。この処理フローは、上記図7の処理フローに比べ、S410〜S412が追加されている。かかるステップの追加により、ホームサーバ200からの受信確認を受信しなかったときの再送回数を、徐々に引き上げるものである。
【0082】
すなわち、S410にて変数Mをj(たとえば2)にセットする。そして、1回目の送信時には、当該パケットをM(M=j)回送信する(S411)。この送信に対しホームサーバ200からの受信確認を受信しなかった場合(S405)、変数Mがk(たとえば1)だけカウントアップされる(S412)。そして、再送時においては、当該パケットが、カウントアップされた後の変数M(M=j+k)回、送信される(S411)。かかる再送によって当該パケットが正常に受信されると(S405のYES)、次のパケットの送信に移行する(S406、S407)。このときの送信回数は、j回に戻される(S410)。
【0083】
図11に、上記図10の処理フローに従った場合のデジタルカメラ100とホームサーバ200との間の送受信シーケンスを示す。
【0084】
ホームサーバ200との通信が可能となると、デジタルカメラ100からホームサーバ200に対し、パケット送信要求が送信される。これを受けて、ホームサーバ200から送信要求確認が送信され、これがデジタルカメラ200によって受信されると、デジタルカメラ100からホームサーバ200に対し、パケット1が、たとえば2回送信される。
【0085】
送信された2つのパケットがホームサーバ200に到達せず、よって、一定期間T内にホームサーバ200からの受信確認を受信しなかった場合、デジタルカメラ100は、再送時の送信回数を1カウントアップし、パケット1を3回送信する。
【0086】
この再送において送信された3つのパケット1のうち、2つがホームサーバ200に正常に受信されると、受信確認がホームサーバ200からデジタルカメラ100に送信される。かかる受信確認がデジタルカメラ100にて受信されると、デジタルカメラ100は、送信回数を初期設定回数の2回に戻し、次のパケットであるパケット2を2回だけ送信する。以後、上記と同様にして、後続パケットの送受信が実行される。
【0087】
かかる送信処理に従えば、再送信時の送信回数を引き上げることにより、ホームサーバ200に対するパケットの受信確率をさらに向上させることができる。また、再送状態から通常送信状態に復帰することにより、送信回数が初期設定回数に戻されるので、無駄な送信を極力抑制することができる。これにより、デジタルカメラ100側の処理遅延とバッテリー浪費を抑制することができる。
【0088】
図12に、上記画像送信処理ステップにおける他の処理例を示す。この処理フローは、上記図10の処理フローに比べ、S420が追加されている。上記図10の処理フローでは、再送が正常になされると、次のパケットの送信は、初期設定回数(M=j)だけ実行されるものであった。図12の処理フローでは、S420を追加することで、再送が正常になされても、再送されたパケット全てについて受信確認(Ack)を受信しない限り、先の再送時に修正された送信回数にて次のパケットの送信が実行される。
【0089】
すなわち、通常の送信時にホームサーバ200からの受信確認を受信しなかった場合(S405)、変数Mがk(たとえば1)だけカウントアップされる(S412)。そして、再送時においては、当該パケットが、カウントアップされた後の変数M(M=j+k)回、送信される(S411)。
【0090】
かかる再送によって当該パケットが正常に受信されると(S405のYES)、次のパケットの送信に移行する(S406、S407)。このとき、先の送信時に受信した受信確認の数がパケットの送信回数に一致するかが判別される(S420)。ここで、一致すると判別されると、S410に戻り、次のパケットの送信回数は、j回に戻される。他方、一致しないと判別されると、変数MはM=j+kに維持され、次のパケットの送信回数はM=j+k回とされる(S411)。
【0091】
図13に、上記図12の処理フローに従った場合のデジタルカメラ100とホームサーバ200との間の送受信シーケンスを示す。
【0092】
たとえば再送により、パケット9が3回送信され、そのうち最後の一つがホームサーバ200によって正常に受信されると、ホームサーバ200からは、受信確認が1回だけ送信される。この場合、パケット9を3回送信したにもかかわらず、受信確認は1回しか受信しないため、次のパケットであるパケット10の送信時には、パケット9の再送時に設定された送信回数がそのまま適用される。よって、パケット10は3回送信される。
【0093】
このようにして3回送信されたパケット10が全て正常に受信され、ホームサーバ200から受信確認が3回送信されると、送信回数が3から初期設定回数(j=2)にリセットされる。これにより、次のパケットであるパケット11は、2回だけ送信される。以後、同様にして、後続パケットの送受信が実行される。
【0094】
かかる送信処理に従えば、再送が正常に行われたことに応じて直ちに初期設定回数にリセットせず、ホームサーバ200からの受信確認が全ての送信パケットに対し行われる程度にまで通信状態が良好になったタイミングで、初期設定回数にリセットするものであるから、上記図10の処理フローに比べ、更に、無線通信路の状態に応じたパケット送信回数を設定できる。
【0095】
なお、通信回数を初期設定回数にリセットするための閾値は、上記のように送信回数をそのまま採用する方法の他、送信回数よりも少しだけ小さな回数を採用するようにしてもよい。
【0096】
図14に、上記画像送信処理ステップにおける他の処理例を示す。この処理フローは、上記図12の処理フローに比べ、S421とS422が追加されている。上記図12の処理フローでは、受信確認の数と送信回数とが一致すると、次のパケットの送信回数を初期設定回数(M=j)にリセットするものであった。これに対し、図14の処理フローでは、S421とS422を追加することで、受信確認の数と送信回数とが一致した場合に、次のパケットの送信回数を初期設定回数(M=j)にリセットせず、再送時の送信回数をkだけ減じた回数を次のパケットの送信回数とするものである。
【0097】
ここで、受信確認の数と送信回数との一致が、初期設定回数(M=j)による送信の際に発生する場合もあり得る。この場合、送信回数をさらにkだけ減じると、送信回数が初期設定回数を下回ってしまうこととなる。このような事態を回避するためにS421が特に準備されており、送信回数Mが初期設定回数jであるときは、送信回数Mをkだけ減じることなく、送信回数Mをそのまま次のパケットの送信回数として用いる。
【0098】
なお、次のパケットの送信回数Mが初期設定回数jを下回ったとしも問題が生じない場合、送信回数Mが初期設定回数に達していても、さらにKだけ減じた送信回数を次パケットの送信回数として適用しても良い。
【0099】
図15に、上記図14の処理フローに従った場合のデジタルカメラ100とホームサーバ200との間の送受信シーケンスを示す。なお、このシーケンスでは、初期設定回数jはj=2とされており、また、回数増減因子kかk=2とされている。
【0100】
たとえば再送により、パケット10が4回送信され、これら全てがホームサーバ200によって正常に受信されると、ホームサーバ200からは、受信確認が4回送信される。よって、次のパケットの送信回数はk=2回だけ減じられ、その結果、パケット11はM=2回送信される。
【0101】
このようにして2回送信されたパケット11が全て正常に受信され、ホームサーバ200から受信確認が2回送信されると、送信回数Mが初期設定回数jに一致するかが判別される。ここでは、M=2回であるので、送信回数は既に初期設定回数となっていると判断され、その結果、次のパケットの送信回数として、M=2回がそのまま適用される。よって、次のパケットであるパケット12は、2回だけ送信される。
【0102】
かかる送信処理に従えば、上記図12の処理フローと同様、ホームサーバ200からの受信確認が全ての送信パケットに対し行われる程度にまで通信状態が良好になったタイミングで、通信回数が減じられるものであるから、無線通信路の状態に応じたパケット送信回数を設定できる。この際、通信回数は、上記図12の処理フローのように直ちに初期設定値にリセットされず、k回だけ減じて徐々に初期設定値に近づけるものであるから、より無線通信路の変化に則した送信回数を設定できる。
【0103】
なお、通信回数を減じるための閾値は、上記のように送信回数をそのまま採用する方法の他、送信回数よりも少しだけ小さな回数を採用するようにしてもよい。
【0104】
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態に限定されるものではない。
【0105】
たとえば、上記実施の形態では、送信回数の初期設定回数jを固定としたが、たとえば図16に示すような通信履歴を情報記憶部104に保持せしめ、この通信履歴に基づいて初期設定回数jを適宜変更するようにしても良い。たとえば、受信良否がOKである場合の送信回数をサンプル値とし、かかるサンプル値を一定期間経過毎に平均化し、この平均値(自然数)を当該一定期間経過時点の初期設定回数jとするようにしても良い。また、かかる平均化処理において、受信確認回数(ACK回数)を重み付け値として取り込むようにしても良い。
【0106】
また、上記実施の形態では、サーバ装置からの受信確認を一定期間内に受信しない場合に、直ちに送信回数を増加させるようにしたが、たとえば、受信確認を受信できない状態が所定回数継続したときに、送信回数を増加させるようにしても良い。同様に、上記図10の処理フローでは、受信確認を受信した場合に直ちに送信回数を初期設定回数に復帰させるようにしたが、たとえば、受信確認を受信した状態が所定回数継続したときに、送信回数を初期設定回数に復帰させるようにしても良い。さらに同様に、上記図図12および図14の処理フローにいても、受信確認の数が送信回数Mに一致すると直ちに送信回数を初期設定回数に復帰させ、あるいは、k回だけ減じるようにしたが、たとえば、受信確認の数が送信回数Mに一致した状態が所定回数継続したときに、送信回数を変更するようにしても良い。
【0107】
また、上記実施の形態では、デジタルカメラで撮影した写真画像をホームページに組み込む構成を例示したが、動画、音声等の他のコンテンツをホームページに組み込むようにしても良い。また、デジタルカメラとホームサーバ間の通信に限らず、様々な機器間の通信に採用可能である。
【0108】
また、図1では、機能毎に各部を区分してデジタルカメラ100とホームサーバ200の構成を示したが、同図に示す各ブロックはハードウエアとして独立している必要はなく、単一のハードウエア構成によりソフトウエア的に各機能が実現されるようにすることも勿論可能である。たとえば、上記処理フローを実行する制御プログラムをデジタルカメラ100とホームサーバ200に適宜ダウンロードすることにより、これらの機能をデジタルカメラ100とホームサーバ200に付与するようにしてもよい。
【0109】
この他、本発明の実施の形態は、本発明の技術的思想の範囲内において、適宜、種々の変更が可能である。
【0110】
【発明の効果】
以上、本発明によれば、複数のパケットを同時に送信することにより、通信経路の状態が良好なタイミングとデータ通信のタイミングとをマッチングさせる割合を向上させることができ、もって、より確実なデータ通信を実現できる。
【図面の簡単な説明】
【図1】実施の形態に係る画像閲覧システムの構成を示す図
【図2】実施の形態に係る通信制御部106の構成を示す図
【図3】実施の形態に係る画像情報の自動転送処理フローを示す図
【図4】実施の形態に係る閲覧レベル設定処理フローを示す図
【図5】実施の形態に係るレベル設定テーブルの構成例を示す図
【図6】実施の形態に係るホームページ閲覧処理フローを示す図
【図7】実施の形態に係る第1のパケット送信フローを示す図
【図8】実施の形態に係る通信プロトコルの一例を示す図
【図9】実施の形態に係るパケット送受信シーケンスを示す図
【図10】実施の形態に係るパケット送信フローの変更例を示す図
【図11】実施の形態に係るパケット送受信シーケンスを示す図
【図12】実施の形態に係るパケット送信フローの変更例を示す図
【図13】実施の形態に係るパケット送受信シーケンスを示す図
【図14】実施の形態に係るパケット送信フローの変更例を示す図
【図15】実施の形態に係るパケット送受信シーケンスを示す図
【図16】実施の形態に係る送信履歴の構成例を示す図
【符号の説明】
100 デジタルカメラ
101 制御部
104 情報記憶部
106 通信制御部
107 通信インタフェース
108 通信モジュール[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data transmission device, a data transmission method, and a program, and is particularly suitable for use in transmitting image information or the like acquired by a digital camera or the like to another terminal device by wireless communication.
[0002]
[Prior art]
The construction of a so-called network home electric appliance system for monitoring and controlling home appliances using a home network is progressing. In this system, a home network and an external network such as the Internet are mediated by a server (home server) such as a home gateway, and home devices are remotely controlled by a portable terminal device such as a PDA (Personal Digital Assistants). Things. In addition, information from an external distribution server is taken into home devices as needed via the home server.
[0003]
Here, the communication between the home server and the home device may employ various communication methods such as a method using a power supply line and a method using wireless communication such as IEEE802.11b wireless LAN and Bluetooth. In addition, home devices to be communicated with may include not only home appliances such as refrigerators and microwave ovens, but also portable AV devices such as digital videos and digital cameras.
[0004]
In addition, the home server may be provided with not only a home device control function but also a homepage creation / providing function, an e-mail transmission / reception function, a homepage browsing function provided from an external server, and the like. Thus, for example, the user creates his / her own homepage on the home server, and transmits image information captured by the digital camera to the home server via a wireless / wired home network, thereby transmitting the image information on the home server. Can be captured.
[0005]
When transmitting captured image information to a home server by wireless communication, the state of communication with the home server changes due to movement of the digital camera. When the communication state becomes poor, a case where transmission data is not normally received on the home server side may occur. In such a case, the unreceived data is retransmitted from the digital camera to the home server. Such retransmission is usually performed when no acknowledgment has been transmitted from the home server during a period from the data transmission until a predetermined period has elapsed.
[0006]
The transmission and retransmission are performed by dividing the image information into packets of a fixed length and transmitting these packets one by one in order. That is, the first packet is transmitted to the home server, and if the acknowledgment is not received within a predetermined period, the first packet is transmitted once again. Such retransmission is repeated, and when the first packet is normally received, the next packet is transmitted to the home server only once.
[0007]
However, in communication with a portable device such as a digital camera, the state of the wireless communication path changes every moment as the device moves. For this reason, when the method of repeating transmission / retransmission only once at a constant interval as described above is employed, it becomes difficult to match the timing of a good communication path state with the timing of packet communication. Therefore, it takes a long time until one packet is transmitted normally, which results in accumulation of untransmitted image information.
[0008]
[0009]
[Patent Document 1]
JP 2001-15695 A
[Problems to be solved by the invention]
Therefore, an object of the present invention is to provide a data transmission device capable of reliably transmitting data even in wireless communication.
More specifically, it is an object of the present invention to provide a data transmission device capable of improving a ratio of matching between a timing at which a state of a communication path is good and a timing of data communication.
[0011]
[Means for Solving the Problems]
In view of the above problems, the present invention has the following features.
[0012]
The data transmitting apparatus according to the first aspect of the present invention includes: a packet generating unit that divides data into packets to generate a transmission packet; and a transmitting unit that transmits the generated packet. It is characterized by being transmitted a plurality of times at a time.
[0013]
According to a second aspect of the present invention, in the data transmitting apparatus according to the first aspect, the data transmitting apparatus further includes a determining unit for determining whether the transmitted packet has been normally received, and the transmitting unit receives the packet normally by the determining unit. When it is determined that the packet has not been received, the number of transmissions when retransmitting a packet that has not been normally received is changed based on the determination result of the determination unit.
[0014]
According to a third aspect of the present invention, in the data transmission apparatus according to the second aspect, when the determination unit determines that the packet has not been normally received, the packet transmitted when the packet was not normally received is retransmitted next time. The number of times is increased by a predetermined number of times from the number of transmissions one time before the packet.
[0015]
According to a fourth aspect of the present invention, in the data transmitting apparatus according to the second or third aspect, when it is determined that the packet has been normally transmitted by the retransmission, the transmitting unit transmits the next packet and transmits the packet normally. In this case, the number of transmissions at the time of (i) is changed based on the determination result of the determination means.
[0016]
According to a fifth aspect of the present invention, in the data transmitting apparatus according to the fourth aspect, when it is determined that the packet has been normally transmitted by the retransmission, the number of transmissions of the next packet is returned to the initially set number. And
[0017]
According to a sixth aspect of the present invention, in the data transmitting apparatus according to the fourth aspect, when it is determined that the packet has been normally transmitted by the retransmission, the number of transmissions of the next packet is reduced by a predetermined number. I do.
[0018]
According to a seventh aspect of the present invention, in the data transmitting apparatus according to the fourth or fifth aspect, when the number of acknowledgments returned from the transmission destination when the packet is normally transmitted by the retransmission exceeds a predetermined threshold value The number of transmissions of the next packet is returned to the initially set number or reduced by a predetermined number.
[0019]
A data transmission method according to the invention of claim 8 includes a step of generating a transmission packet by dividing data into packets, and a transmission step of transmitting the generated packet, wherein the transmission step includes transmitting the packet at once. It is characterized by being transmitted a plurality of times.
[0020]
According to a ninth aspect of the present invention, in the data transmitting method according to the eighth aspect, the data transmitting method further comprises a determining step of determining whether the transmitted packet has been normally received. When it is determined that the packet has not been received, the number of transmissions when retransmitting a packet that has not been normally received is changed based on the determination result of the determination unit.
[0021]
Here, the number of transmissions at the time of next retransmission of a packet that has not been received normally may be increased, for example, by a predetermined number of times from the number of transmissions immediately before the packet.
[0022]
When it is determined that the packet has been transmitted normally by the retransmission, the transmitting step transmits the next packet, and determines the number of transmissions at the time of normal transmission to be executed thereafter, by the determination result of the determination unit. May be changed on the basis of.
[0023]
Here, the number of transmissions at the time of normal transmission may be returned to, for example, an initially set number.
As described above, by appropriately changing the number of packet transmissions during normal transmission and retransmission, efficient communication control according to the communication state at each time can be performed.
[0024]
A tenth aspect of the present invention is a program for providing a computer with a function of executing the processing steps of the eighth and ninth aspects.
[0025]
The invention according to the above-mentioned claims can be applied to any of a wireless communication system and a wired communication system, but is preferably applied to a wireless communication system in which the communication state is unstable and greatly fluctuates. Therefore, when the communication device includes both a communication system using a wireless communication system and a communication system using a wired communication system, the present invention is applied to the wireless communication system, and the wired communication system includes a plurality of communication systems at once. A normal communication technique that does not transmit packets twice may be applied.
[0026]
Further, in the above claims, "to change the number of times of packet transmission at the time of normal transmission or retransmission based on the determination result of the determination means", in addition to the case of immediately changing the number of transmission according to the determination result, This includes a case where the number of transmissions is changed when the same determination result is continued a predetermined number of times.
[0027]
The features of the present invention will become more apparent from the following description of embodiments.
[0028]
However, the following embodiments are merely one embodiment of the present invention, and the meanings of the terms of the present invention and each component are not limited to those described in the following embodiments. Absent.
[0029]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0030]
FIG. 1 shows a configuration of an image browsing system according to the embodiment. This system includes a digital camera 100 and a home server 200.
[0031]
Image information captured by the digital camera 100 is transmitted to the home server 200 as needed. Home server 200 stores the received image information on a hard disk or the like. At this time, for each piece of image information, the disclosure target information such as, for example, “non-public”, “all public”, “only self-public”, and “only ○” is set by the user. In this case, “disclose only to yourself” or “disclose only to Mr. XX” is set, for example, by associating the user ID of the destination user with each image information.
[0032]
When the homepage is accessed from another
[0033]
It is also possible to access the home server 200 from the
[0034]
The digital camera 100 includes a
[0035]
The
[0036]
The
[0037]
The
[0038]
When a communication module for wireless communication is mounted, information such as image information is transmitted to the home server 200 via the
[0039]
The
[0040]
The
[0041]
Returning to FIG. 1, the home server 200 includes a
[0042]
The
[0043]
The
[0044]
For example, the
[0045]
Note that as a communication method in the
[0046]
The
[0047]
[0048]
That is, the user ID of the access source user terminal is compared with the disclosure target information in the
[0049]
The
[0050]
FIG. 3 shows a processing flow on the digital camera 100 side when image information is automatically transferred (wireless communication) from the digital camera 100 to the home server 200.
[0051]
When a photograph is taken (S101), image information of the taken photograph is generated by the
[0052]
For example, when the
[0053]
The transmission of the image information is executed until all the untransmitted image information is transmitted to the home server 200 in S105. In the meantime, if a new photograph is taken, the image information of the photographed photograph is sequentially stored in the
[0054]
FIG. 4 shows a processing flow in the home server 200 when setting a browsing level (information to be disclosed) in image information received from the digital camera 100.
[0055]
When receiving the image information from the digital camera 100 (S201), the
[0056]
When the unleveled image information is thus stored in the information storage unit 203 (S204), the
[0057]
When the user selects a predetermined image from the thumbnail images displayed in this way and sets a predetermined browsing level for the image (S206), the disclosure target information corresponding to the browsing level is displayed in the image. Is stored in the
[0058]
For example, when the user selects a predetermined thumbnail image, four options of “non-public”, “all public”, “public only”, and “public setting” are displayed on the
[0059]
Thus, when the level setting for the image information is performed, the
[0060]
FIG. 5 shows an example of the level setting table. In the figure, the image ID is an identification code given to the image information stored in the
[0061]
FIG. 6 shows a processing flow in the home server 200 when another user terminal accesses the home page of the home server 200 via the public network.
[0062]
When the homepage is accessed from the
[0063]
First, the
[0064]
The home page information for the user thus created is transmitted to the access source user terminal together with the searched image information (S305). As a result, only the image information permitted to be viewed by the user is provided for browsing.
[0065]
If the access source user terminal does not return a proper user ID and password in S302, for example, if no user ID and password are transmitted for a certain period of time, or if the received user ID and password are not registered In such a case, the provision of the homepage is stopped. Alternatively, an image whose release destination is “ALL” may be searched, incorporated into a homepage, and provided to the access source user terminal.
[0066]
FIG. 7 shows details of the image information transmission processing step (S106) in the automatic transfer processing flow (FIG. 3). Here, as described above, the image information is divided into packets of a fixed length and transmitted. As a communication protocol, for example, TCP / IP (Transmission Control Protocol / Internet Protocol) is used.
[0067]
When the communication module (for wireless) 108 receives the pilot signal from the home server 200 and becomes able to communicate with the home server 200 (S104 in FIG. 3), the
[0068]
After the transmission, the
[0069]
Here, when the number of retransmissions exceeds a predetermined number (for example, 50), the processing may be stopped as a transmission error.
[0070]
On the other hand, when the reception confirmation is received within a certain period (YES in S405), the
[0071]
The transmission / retransmission is repeatedly performed until all the packets obtained by dividing the image information are transmitted (S406). When the transmission of all the packets is completed, the transmission process of the image information is completed.
[0072]
FIG. 9 shows a transmission / reception sequence between the digital camera 100 and the home server 200 when the processing flow of FIG. 7 is followed.
[0073]
When the communication module (for wireless) 108 receives the pilot signal from the home server 200 and becomes able to communicate with the home server 200, a packet transmission request is transmitted from the digital camera 100 to the home server 200. In response to this, a transmission request confirmation is transmitted from the home server 200. When the transmission request confirmation is received by the digital camera 200, the
[0074]
The two transmitted packets are transmitted to the home due to, for example, deterioration of communication quality on a wireless communication path (the deterioration of communication quality is caused by a change in distance between the digital camera 100 and the home server 200 or noise due to external factors). When the digital camera 100 does not reach the server 200 and thus does not receive the reception confirmation from the home server 200 within the predetermined period T, the digital camera 100 transmits the
[0075]
When one of the two
[0076]
When the reception confirmation is received by the digital camera 100, the digital camera 100 transmits the next packet,
[0077]
According to such a transmission process, packets are transmitted twice at the same time in transmission and retransmission, so that the packets can easily reach the home server 200 by one transmission as compared with the case where one packet is transmitted only once. In particular, in a portable device such as the digital camera 100, the state of the wireless communication path changes every moment as the device moves, so that the timing of the communication path is good and the timing of packet communication is not. Is an important factor in communication processing.
[0078]
According to the above transmission processing, packets are transmitted twice at the same time during transmission and retransmission, so that packet communication is easily performed at a timing when the state of the communication path is good. Thus, the reliability and reliability of communication can be improved.
[0079]
In the transmission process, the same packet may reach the home server 200 a plurality of times. For example, in the sequence of FIG. 9,
[0080]
By the way, in the above processing example, the reliability of communication improves as the number of times of transmission of a packet transmitted at a time increases. However, when the number of times of transmission is increased, the rate at which the same packet is repeatedly received increases, and wasteful transmission increases. Useless transmission causes processing delay on the digital camera 100 side and battery consumption. Therefore, even if the number of times of transmission is set to a plurality of times, it is necessary to suppress the number of times of useless transmission as much as possible.
[0081]
FIG. 10 shows another processing example in the image transmission processing step. This processing flow is different from the processing flow of FIG. 7 in that S410 to S412 are added. By adding such a step, the number of retransmissions when a reception confirmation is not received from the home server 200 is gradually increased.
[0082]
That is, the variable M is set to j (for example, 2) in S410. Then, at the time of the first transmission, the packet is transmitted M (M = j) times (S411). If no acknowledgment has been received from the home server 200 for this transmission (S405), the variable M is counted up by k (for example, 1) (S412). Then, at the time of retransmission, the packet is transmitted the variable M (M = j + k) times after being counted up (S411). When the packet is normally received by the retransmission (YES in S405), the process shifts to transmission of the next packet (S406, S407). The number of transmissions at this time is returned to j times (S410).
[0083]
FIG. 11 shows a transmission / reception sequence between the digital camera 100 and the home server 200 when the processing flow of FIG. 10 is followed.
[0084]
When communication with the home server 200 becomes possible, a packet transmission request is transmitted from the digital camera 100 to the home server 200. In response to this, a transmission request confirmation is transmitted from the home server 200. When the transmission request confirmation is received by the digital camera 200, the
[0085]
If the two transmitted packets do not reach the home server 200, and thus do not receive the acknowledgment from the home server 200 within a certain period T, the digital camera 100 increments the number of retransmissions by one. Then,
[0086]
When two of the three
[0087]
According to such transmission processing, the probability of receiving a packet to the home server 200 can be further improved by increasing the number of transmissions at the time of retransmission. Further, by returning from the retransmission state to the normal transmission state, the number of transmissions is returned to the initially set number, so that useless transmission can be suppressed as much as possible. Thus, it is possible to suppress processing delay and battery waste on the digital camera 100 side.
[0088]
FIG. 12 shows another processing example in the image transmission processing step. This processing flow is different from the processing flow of FIG. 10 in that S420 is added. In the processing flow of FIG. 10 described above, when the retransmission is normally performed, the next packet is transmitted for the initial set number of times (M = j). In the processing flow of FIG. 12, by adding S420, even if retransmission is normally performed, unless the acknowledgment (Ack) is received for all of the retransmitted packets, the next transmission number corrected at the previous retransmission is used. Is transmitted.
[0089]
That is, if no acknowledgment has been received from the home server 200 during normal transmission (S405), the variable M is counted up by k (for example, 1) (S412). Then, at the time of retransmission, the packet is transmitted the variable M (M = j + k) times after being counted up (S411).
[0090]
When the packet is normally received by the retransmission (YES in S405), the process shifts to transmission of the next packet (S406, S407). At this time, it is determined whether the number of acknowledgments received at the time of the previous transmission matches the number of packet transmissions (S420). If it is determined that they match, the process returns to S410, and the number of transmissions of the next packet is returned to j times. On the other hand, if it is determined that they do not match, the variable M is maintained at M = j + k, and the number of transmissions of the next packet is set to M = j + k (S411).
[0091]
FIG. 13 shows a transmission / reception sequence between the digital camera 100 and the home server 200 according to the processing flow of FIG.
[0092]
For example, by retransmission, the packet 9 is transmitted three times, and when the last one is normally received by the home server 200, the home server 200 transmits a reception confirmation only once. In this case, even though the packet 9 has been transmitted three times, the acknowledgment is received only once. Therefore, when transmitting the next packet 10, the number of transmissions set at the time of retransmitting the packet 9 is applied as it is. You. Therefore, the packet 10 is transmitted three times.
[0093]
When all of the packets 10 transmitted three times in this way are normally received and three acknowledgments are transmitted from the home server 200, the number of transmissions is reset from three to the initially set number (j = 2). Thus, the next packet, packet 11, is transmitted only twice. Thereafter, transmission and reception of subsequent packets are performed in a similar manner.
[0094]
According to this transmission processing, the communication state is not reset to the initial set number immediately after the retransmission is performed normally, and the communication state is good enough to confirm reception from the home server 200 for all transmission packets. At this timing, the number of packet transmissions is reset to the initially set number, so that the number of packet transmissions according to the state of the wireless communication path can be further set as compared with the processing flow of FIG.
[0095]
As the threshold value for resetting the number of times of communication to the initially set number of times, the number of times of transmission may be employed as it is, or a number of times slightly smaller than the number of times of transmission may be employed.
[0096]
FIG. 14 shows another processing example in the image transmission processing step. This processing flow is different from the processing flow of FIG. 12 in that S421 and S422 are added. In the processing flow of FIG. 12, when the number of acknowledgments matches the number of transmissions, the number of transmissions of the next packet is reset to the initially set number (M = j). On the other hand, in the processing flow of FIG. 14, by adding S421 and S422, when the number of acknowledgments matches the number of transmissions, the number of transmissions of the next packet is set to the initially set number (M = j). Without resetting, the number of transmissions at the time of retransmission is reduced by k to be the number of transmissions of the next packet.
[0097]
Here, the coincidence between the number of acknowledgments and the number of transmissions may occur at the time of transmission with the initially set number of times (M = j). In this case, if the number of transmissions is further reduced by k, the number of transmissions will be less than the initially set number of times. In order to avoid such a situation, S421 is particularly prepared, and when the number of transmissions M is the initially set number of times j, the number of transmissions M is not reduced by k, and the number of transmissions M is directly transmitted to the next packet. Used as a count.
[0098]
If there is no problem even if the number of transmissions M of the next packet is less than the initially set number of times j, even if the number of transmissions M has reached the initially set number of times, the number of transmissions is further reduced by K and the number of transmissions of the next packet is reduced. It may be applied as the number of times.
[0099]
FIG. 15 shows a transmission / reception sequence between the digital camera 100 and the home server 200 when the processing flow of FIG. 14 is followed. In this sequence, the initially set number j is set to j = 2, and the number k of increase / decrease factors is set to k or k = 2.
[0100]
For example, due to retransmission, the packet 10 is transmitted four times, and when all of them are normally received by the home server 200, a reception confirmation is transmitted from the home server 200 four times. Therefore, the number of transmissions of the next packet is reduced by k = 2 times, and as a result, the packet 11 is transmitted M = 2 times.
[0101]
When all the packets 11 transmitted twice in this manner are normally received and the acknowledgment is transmitted twice from the home server 200, it is determined whether the number of transmissions M matches the initially set number of times j. Here, since M = 2 times, it is determined that the number of transmissions is already the initial set number, and as a result, M = 2 is applied as it is as the number of transmissions of the next packet. Therefore, the next packet, packet 12, is transmitted only twice.
[0102]
According to such transmission processing, as in the processing flow of FIG. 12, the number of times of communication is reduced at a timing when the communication state becomes good enough to confirm reception from the home server 200 for all transmission packets. Therefore, the number of packet transmissions according to the state of the wireless communication path can be set. At this time, the number of times of communication is not immediately reset to the initial set value as in the processing flow of FIG. 12 described above, but is reduced by k times to gradually approach the initial set value. You can set the number of transmissions.
[0103]
As the threshold for reducing the number of times of communication, the number of times of transmission may be used as it is, or a number of times slightly smaller than the number of times of transmission may be used.
[0104]
The embodiments of the present invention have been described above, but the present invention is not limited to the above embodiments.
[0105]
For example, in the above-described embodiment, the initial setting number j of the number of transmissions is fixed. However, for example, a communication history as shown in FIG. 16 is stored in the
[0106]
Further, in the above embodiment, when the reception confirmation from the server device is not received within a certain period, the number of transmissions is immediately increased. For example, when the reception confirmation cannot be received for a predetermined number of times. Alternatively, the number of transmissions may be increased. Similarly, in the processing flow of FIG. 10 described above, the number of transmissions is immediately returned to the initially set number when a reception confirmation is received. For example, when the reception confirmation is continued for a predetermined number of times, the transmission The number may be returned to the initially set number. Similarly, in the processing flow of FIGS. 12 and 14 as well, as soon as the number of reception confirmations matches the number of transmissions M, the number of transmissions is returned to the initially set number or reduced by k times. For example, the number of transmissions may be changed when the state in which the number of reception confirmations matches the number of transmissions M continues for a predetermined number of times.
[0107]
Further, in the above-described embodiment, the configuration in which the photographic image photographed by the digital camera is incorporated in the homepage is illustrated, but other contents such as a moving image and a sound may be incorporated in the homepage. Further, the present invention is not limited to communication between a digital camera and a home server, but can be used for communication between various devices.
[0108]
Also, FIG. 1 shows the configuration of the digital camera 100 and the home server 200 by dividing each unit for each function. However, each block shown in FIG. Of course, it is also possible to realize each function by software by a software configuration. For example, these functions may be provided to the digital camera 100 and the home server 200 by appropriately downloading a control program for executing the above processing flow to the digital camera 100 and the home server 200.
[0109]
In addition, various changes can be made to the embodiments of the present invention as appropriate within the scope of the technical idea of the present invention.
[0110]
【The invention's effect】
As described above, according to the present invention, by transmitting a plurality of packets at the same time, it is possible to improve the ratio of matching the timing of the good communication path to the timing of the data communication, and thus to achieve more reliable data communication. Can be realized.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a configuration of an image browsing system according to an embodiment; FIG. 2 is a diagram illustrating a configuration of a
REFERENCE SIGNS LIST 100
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003050160AJP2004260633A (en) | 2003-02-26 | 2003-02-26 | Data transmitter, method for transmitting data, and program |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003050160AJP2004260633A (en) | 2003-02-26 | 2003-02-26 | Data transmitter, method for transmitting data, and program |
| Publication Number | Publication Date |
|---|---|
| JP2004260633Atrue JP2004260633A (en) | 2004-09-16 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003050160APendingJP2004260633A (en) | 2003-02-26 | 2003-02-26 | Data transmitter, method for transmitting data, and program |
| Country | Link |
|---|---|
| JP (1) | JP2004260633A (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007324700A (en)* | 2006-05-30 | 2007-12-13 | Mitsubishi Electric Corp | Transmission control method |
| JP2008098901A (en)* | 2006-10-11 | 2008-04-24 | Denso Corp | Data communication system |
| JP2010177850A (en)* | 2009-01-28 | 2010-08-12 | Nec Access Technica Ltd | Facsimile machine and facsimile communication method |
| JP2011523304A (en)* | 2008-06-05 | 2011-08-04 | クゥアルコム・インコーポレイテッド | In-band modem system and method for data communication over a digital wireless communication network |
| JP2011523303A (en)* | 2008-06-05 | 2011-08-04 | クゥアルコム・インコーポレイテッド | In-band modem system and method for data communication over a digital wireless communication network |
| US8364482B2 (en) | 2008-06-05 | 2013-01-29 | Qualcomm Incorporated | System and method for obtaining a message type identifier through an in-band modem |
| US8503517B2 (en) | 2008-06-05 | 2013-08-06 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| US8725502B2 (en) | 2008-06-05 | 2014-05-13 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| US8743864B2 (en) | 2009-06-16 | 2014-06-03 | Qualcomm Incorporated | System and method for supporting higher-layer protocol messaging in an in-band modem |
| US8855100B2 (en) | 2009-06-16 | 2014-10-07 | Qualcomm Incorporated | System and method for supporting higher-layer protocol messaging in an in-band modem |
| US9083521B2 (en) | 2008-06-05 | 2015-07-14 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| WO2019021588A1 (en)* | 2017-07-27 | 2019-01-31 | ソニー株式会社 | Wireless lan communication device and wireless lan communication method |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007324700A (en)* | 2006-05-30 | 2007-12-13 | Mitsubishi Electric Corp | Transmission control method |
| JP2008098901A (en)* | 2006-10-11 | 2008-04-24 | Denso Corp | Data communication system |
| US8503517B2 (en) | 2008-06-05 | 2013-08-06 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| JP2011523304A (en)* | 2008-06-05 | 2011-08-04 | クゥアルコム・インコーポレイテッド | In-band modem system and method for data communication over a digital wireless communication network |
| JP2011523303A (en)* | 2008-06-05 | 2011-08-04 | クゥアルコム・インコーポレイテッド | In-band modem system and method for data communication over a digital wireless communication network |
| US8364482B2 (en) | 2008-06-05 | 2013-01-29 | Qualcomm Incorporated | System and method for obtaining a message type identifier through an in-band modem |
| JP2015046900A (en)* | 2008-06-05 | 2015-03-12 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | System and method of in-band modem for data communications over digital wireless communication networks |
| US8725502B2 (en) | 2008-06-05 | 2014-05-13 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| US9083521B2 (en) | 2008-06-05 | 2015-07-14 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| US8825480B2 (en) | 2008-06-05 | 2014-09-02 | Qualcomm Incorporated | Apparatus and method of obtaining non-speech data embedded in vocoder packet |
| US8958441B2 (en) | 2008-06-05 | 2015-02-17 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| US8964788B2 (en) | 2008-06-05 | 2015-02-24 | Qualcomm Incorporated | System and method of an in-band modem for data communications over digital wireless communication networks |
| JP2010177850A (en)* | 2009-01-28 | 2010-08-12 | Nec Access Technica Ltd | Facsimile machine and facsimile communication method |
| US8855100B2 (en) | 2009-06-16 | 2014-10-07 | Qualcomm Incorporated | System and method for supporting higher-layer protocol messaging in an in-band modem |
| US8743864B2 (en) | 2009-06-16 | 2014-06-03 | Qualcomm Incorporated | System and method for supporting higher-layer protocol messaging in an in-band modem |
| WO2019021588A1 (en)* | 2017-07-27 | 2019-01-31 | ソニー株式会社 | Wireless lan communication device and wireless lan communication method |
| CN110945811A (en)* | 2017-07-27 | 2020-03-31 | 索尼公司 | Wireless LAN communication device and wireless LAN communication method |
| JPWO2019021588A1 (en)* | 2017-07-27 | 2020-05-28 | ソニー株式会社 | Wireless LAN communication device and wireless LAN communication method |
| US11206110B2 (en) | 2017-07-27 | 2021-12-21 | Sony Corporation | Wireless LAN communication device and wireless LAN communication method |
| JP7238775B2 (en) | 2017-07-27 | 2023-03-14 | ソニーグループ株式会社 | Wireless LAN communication device and wireless LAN communication method |
| US12113627B2 (en) | 2017-07-27 | 2024-10-08 | Sony Group Corporation | Wireless LAN communication device and wireless LAN communication method |
| Publication | Publication Date | Title |
|---|---|---|
| CN104854836B (en) | Method and system for increasing data stream transmission | |
| JP2004260633A (en) | Data transmitter, method for transmitting data, and program | |
| JP2009112041A (en) | Enhanced polling method to avoid deadlock in wireless communication systems | |
| JP2004297742A (en) | Communication device, communication control method, and program | |
| CN114024914A (en) | Video data transmission method and device and electronic equipment | |
| CN107087292B (en) | Method for adaptively transmitting data by mobile terminal | |
| CN110505039B (en) | Data transmission control method, device, equipment and medium | |
| JP6335430B2 (en) | COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, PROGRAM | |
| JP2004260634A (en) | Data transmitter, and method and program for transmitting data | |
| EP1892928B1 (en) | Remote management apparatus and method of setting IP address | |
| TWI486030B (en) | Method and apparatus for polling transmission status in a wireless communications system | |
| US12294459B2 (en) | Retransmission feedback with HARQ in Wi-Fi | |
| CN113348695B (en) | Generating status report, setting timer, information configuration method and device | |
| US7269660B1 (en) | Limited TCP/IP implementation using minimal resources | |
| CN100405759C (en) | Server system for performing communication via wireless network and communication method thereof | |
| EP1427127A2 (en) | Communication control method, communication system and communication apparatus that can improve throughput | |
| CN116097632A (en) | Method and device for transmitting data packet, electronic equipment and readable storage medium | |
| US10425371B2 (en) | Method for fragmented messaging between network devices | |
| JP2004088242A (en) | Camera device and image transmission method | |
| JP2005117301A (en) | Communication apparatus | |
| US20110216768A1 (en) | Communication terminal, network device, communication system and communication method | |
| US20170366645A1 (en) | Method of processing upgoing and downgoing application messages originating from or destined for an electronic unit for control of a home automation installation by a server | |
| EP2262155A2 (en) | TCP data throughout enhancement for WLAN clients on a wireless LAN router | |
| JP2002281106A (en) | Data communication method and system | |
| JP4966238B2 (en) | Timer control device, timer control system, timer control method, and timer control program |
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination | Free format text:JAPANESE INTERMEDIATE CODE: A621 Effective date:20051215 | |
| A977 | Report on retrieval | Free format text:JAPANESE INTERMEDIATE CODE: A971007 Effective date:20080215 | |
| A131 | Notification of reasons for refusal | Free format text:JAPANESE INTERMEDIATE CODE: A131 Effective date:20080513 | |
| A02 | Decision of refusal | Free format text:JAPANESE INTERMEDIATE CODE: A02 Effective date:20080916 |