(57)【要約】【課題】  電子装置による通信の効率を向上させることを実現する。【解決手段】  電子装置について開示しており、本電子装置は、プロセッサおよびこのプロセッサと電子通信するメモリとを備えている。なお、メモリには、このオブジェクト配信方法を実行する為の指示がプログラムされている。ここで、オブジェクト配信方法は、オブジェクト（３１０）をサーバ電子装置（３２２）から受信するステップを含んでいる。また、転送待ち行列（３２６）を、サーバ電子装置（３２２）から受信するステップをさらに含んでいる。なお、転送待ち行列（３２２）には、第１クライアント電子装置（３２０）が含まれている。そしてこのオブジェクト配信方法は、オブジェクト（３１０）を第１クライアント電子装置（３２０）に伝送（３２８）するステップをさらに含んでいる。【選択図】  図３
2004194332.tif 000002
【特許請求の範囲】
【請求項１】
サーバ電子装置からオブジェクトを受信するステップと、
第１クライアント電子装置を含む転送待ち行列を、サーバ電子装置から受信するステップと、
第１クライアント電子装置に前記オブジェクトを伝送するステップとを含む電子装置の制御方法。
【請求項２】
前記転送待ち行列が、複数のクライアント電子装置を含んでおり、
この複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、
第１クライアント電子存置はこの序列の最高位に位置付けられている請求項１に記載の電子装置の制御方法。
【請求項３】
前記序列が、オブジェクトの伝送を完了させるために必要と推定される期間に基づかれている請求項２に記載の電子装置の制御方法。
【請求項４】
前記転送待ち行列が、複数のクライアント電子装置を含んでおり、
転送待ち行列と前記サーバ電子装置に保持されているサーバ転送待ち行列との間で、複数のクライアント電子装置を分配することについて、前記サーバ電子装置と通信するステップをさらに含んでいる請求項１に記載の電子装置の制御方法。
【請求項５】
自装置またはサーバ電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、前記転送待ち行列と前記サーバ転送待ち行列との間で複数のクライアント電子装置を分配する請求項４に記載の電子装置の制御方法。
【請求項６】
前記転送待ち行列を第１クライアント電子装置に伝送するステップをさらに含む請求項１に記載の電子装置の制御方法。
【請求項７】
前記オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、前記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含む請求項６に記載の電子装置の制御方法。
【請求項８】
前記オブジェクトをサーバ電子装置から検索するステップと、
オブジェクトをサーバ電子装置において見つけ出すステップと、
オブジェクトの取り出し要求を、サーバ電子装置に対して行うステップとをさらに含む請求項１に記載の電子装置の制御方法。
【請求項９】
オブジェクトの取り出し要求を第２クライアント電子装置から受信するステップと、
前記第２クライアント電子装置を転送待ち行列に加えるステップと、
オブジェクトを第２クライアント電子装置に対して伝送するステップとをさらに含む請求項１に記載の電子装置の制御方法。
【請求項１０】
前記第２クライアント電子装置が、転送待ち行列において第１クライアント電子装置よりも上位に序列されており、
第１クライアント電子装置に対するオブジェクトの伝送を停止するステップと、
第２クライアント電子装置に対してオブジェクトが伝送された後、第１クライアント電子装置へのオブジェクトの伝送を再開するステップとをさらに含む請求項８に記載の電子装置の制御方法。
【請求項１１】
前記オブジェクトを第１クライアント電子装置に対して伝送するステップには、第１クライアント電子装置に対するオブジェクトの伝送を終了するステップを含んでいる請求項１に記載の電子装置の制御方法。
【請求項１２】
前記自装置が、単一の通信インターフェースを備えている請求項１に記載の電子装置の制御方法。
【請求項１３】
自装置がオブジェクトを保持しており、
前記オブジェクトを、転送待ち行列に関連付けるステップと、
オブジェクトの取り出し要求を、複数のクライアント電子装置から受信するステップと、
複数のクライアント電子装置を、転送待ち行列に加えるステップと、
オブジェクトおよび転送待ち行列を、複数のクライアント電子装置のうちの第１クライアント電子装置に伝送するステップとを含む電子装置の制御方法。
【請求項１４】
前記複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、
前記第１クライアント電子装置が、前記序列の最高位に位置付けられている請求項１３に記載の電子装置の制御方法。
【請求項１５】
前記序列が、オブジェクトの伝送を完了するために必要と推定される期間に基づいている請求項１４に記載の電子装置の制御方法。
【請求項１６】
自装置が保持している転送待ち行列と前記第１クライアント電子装置が保持している転送待ち行列との間で複数のクライアント電子装置を分配することについて、第１クライアント電子装置と通信するステップをさらに含む請求項１３に記載の電子装置の制御方法。
【請求項１７】
自装置または前記第１クライアント電子装置のどちらがオブジェクトを最も効率的に伝送できるかに基づいて、自装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で前記複数のクライアント電子装置を分配する請求項１６に記載の電子装置の制御方法。
【請求項１８】
前記オブジェクトが第１クライアント電子装置に伝送された後で、かつ、転送待ち行列が第１クライアント電子装置に伝送される前に、前記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含む請求項１３に記載の電子装置の制御方法。
【請求項１９】
自装置が、単一の通信インターフェースを備えている請求項１３に記載の電子装置の制御方法。
【請求項２０】
プロセッサと、
当該プロセッサと電子通信しているメモリとを備え、
前記メモリには、
オブジェクトをサーバ電子装置から受信するステップと、
第１クライアント電子装置を含む転送待ち行列をサーバ電子装置から受信するステップと、
第１クライアント電子装置にオブジェクトを伝送するステップとを含む方法を実行する為の指示がプログラムされている電子装置。
【請求項２１】
前記転送待ち行列が、複数のクライアント電子装置を含んでおり、
前記複数のクライアント電子装置のうちの各クライアント電子装置には序列が付けられており、
第１クライアント電子装置は、前記序列の最高位に位置付けられている請求項２０に記載の電子装置。
【請求項２２】
前記序列が、オブジェクトの伝送を完了する為に必要と推定される期間に基づいている請求項２１に記載の装置。
【請求項２３】
前記転送待ち行列には、複数のクライアント電子装置が含まれており、
前記方法が、複数のクライアント電子装置を、前記転送待ち行列とサーバ電子装置が保持しているサーバ転送待ち行列との間で分配することについて、サーバ電子装置と通信するステップをさらに含む請求項２０に記載の電子装置。
【請求項２４】
自装置または前記サーバ電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、前記転送待ち行列と前記サーバ転送待ち行列との間で前記複数のクライアント電子装置を分配する請求項２３に記載の電子装置。
【請求項２５】
前記方法が、前記転送待ち行列を、第１クライアント電子装置に伝送するステップをさらに含んでいる請求項２０に記載の電子装置。
【請求項２６】
前記方法は、
オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、前記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいる請求項２５に記載の電子装置。
【請求項２７】
前記方法は、
オブジェクトをサーバ電子装置から検索するステップと、
オブジェクトをサーバ電子装置において見つけ出すステップと、
オブジェクトの取り出し要求を、サーバ電子装置に対して行うステップをさらに含んでいる請求項２０に記載の電子装置。
【請求項２８】
前記方法は、
オブジェクトの取り出し要求を、第２クライアント電子装置から受信するステップと、
第２クライアント電子装置を、転送待ち行列に加えるステップと、
オブジェクトを、第２クライアント電子装置に伝送するステップとをさらに含んでいる請求項２０に記載の電子装置。
【請求項２９】
前記第２クライアント電子装置が、転送待ち行列において第１クライアント電子装置よりも上位に序列されており、
前記方法は、第１クライアント電子装置に対するオブジェクトの伝送を停止するステップと、
第２クライアント電子装置に対してオブジェクトが伝送された後に、第１クライアント電子装置へのオブジェクトの伝送を再開するステップとをさらに含んでいる請求項２８に記載の電子装置。
【請求項３０】
前記オブジェクトを前記第１クライアント電子装置に伝送するステップには、当該第１クライアント電子装置に対するオブジェクトの伝送を終了するステップを含んでいる請求項２０に記載の電子装置。
【請求項３１】
単一の通信インターフェースをさらに備えている請求項２０に記載の装置。
【請求項３２】
プロセッサと、
前記プロセッサと電子通信しているメモリとを備えており、
オブジェクトを、転送待ち行列と関連付けるステップと、
オブジェクトの取り出し要求を、複数のクライアント電子装置から受信するステップと、
複数のクライアント電子装置を、前記転送待ち行列に加えるステップと、
前記オブジェクトおよび前記転送待ち行列を、複数のクライアント電子装置のうちの第１クライアント電子装置に伝送するステップとを含む方法を実行する為の指示が前記メモリにプログラムされている電子装置。
【請求項３３】
複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、
前記第１クライアント電子装置が序列の最高位に位置付けられている請求項３２に記載の電子装置。
【請求項３４】
前記序列が、オブジェクトの伝送を完了する為に必要と推定される期間に基づいている請求項３３に記載の電子装置。
【請求項３５】
前記方法は、自装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で複数のクライアント電子装置を分配することについて、第１クライアント通信装置と通信するステップをさらに含む請求項３２に記載の電子装置。
【請求項３６】
自装置または第１クライアント電子装置のどちらがオブジェクトを最も効率的に伝送できるかに基づいて、自装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で前記複数のクライアント電子装置を分配する請求項３５に記載の電子装置。
【請求項３７】
前記方法が、オブジェクトが第１クライアント電子装置に対して伝送された後でかつ、転送待ち行列が第１クライアント電子装置に対して伝送される前に、前記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいる請求項３２に記載の電子装置。
【請求項３８】
単一の通信インターフェースをさらに備えている請求項３２に記載の電子装置。
【請求項３９】
請求項２０〜３８の何れか１項に記載の電子装置を制御するためのプログラムであって、プロセッサを上記各ステップとして機能させるための電子装置制御プログラム。
【請求項４０】
請求項３９に記載の電子装置制御プログラムが記録されたコンピュータの読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、通信システムに関するものである。より具体的には、本発明は、通信システムでのオブジェクト配信の為のシステムと方法とに関するものである。
【背景技術】
【０００２】
コンピュータおよび通信技術は、急速に進歩し続けており、人々の日常生活において様々に関与するようになっている。例えば、ユーザが現在使用している大抵の装置は、装置内に小型コンピュータが組み込まれており、これら小型コンピュータのサイズや複雑さは様々である。つまり、小型コンピュータの複雑さは、１つのマイクロコントローラから十分な機能性のある完全なコンピュータシステムまで様々である。そして、小型コンピュータの例としては、マイクロコントローラなどの単一チップコンピュータ、コントローラなどのワンボード型(one-board type)コンピュータ、例えばＩＢＭ（登録商標）−ＰＣと互換性のある一般的なデスクトップコンピュータなどがあげられる。
【０００３】
また、コンピュータは、概して１つ以上のプロセッサを備えている。このプロセッサは、通常、様々な外部入力部と出力部とに相互接続されており、特定のコンピュータまたは装置を管理する役割を果たす。例えば、サーモスタットに備えられたプロセッサは、温度設定を選択するために操作ボタンに接続されていてもよいし、温度を変更させるために暖房機または空気調節機に接続されていてもよい。また、現在の温度を読み出し、表示装置にて表示させるために温度感知器に接続されていてもよい。
【０００４】
また、大抵の電気製品、装置などは、１つ以上の小型コンピュータを備えている。例えば、温度調節器、暖房機、空気調節システム、冷蔵庫、電話機、タイプライター、自動車、自動販売機など今日では概して多くの様々な種類の工業製品が、その内部に、小型コンピュータまたはプロセッサを備えている。なお、コンピュータソフトウエアが、これらコンピュータのプロセッサを実行させ、特定のタスクを実現させるために何をすべきかをこのプロセッサに伝える。例えば、サーモスタットにおいて実行しているコンピュータソフトウエアは、特定の温度に達すると空気調節装置の運転を停止させる、あるいは、必要に応じてヒータのスイッチを入れる。
【０００５】
装置、電気製品、工作機械などの一部である、このような種類の小型コンピュータは、大抵、埋め込み型システムと呼ばれる。「埋め込み型システム」という用語は、通常、より大きなシステムの一部であるコンピュータハードウエアおよびソフトウエアのことである。埋め込み型システムは、キーボード、マウス、および／または、モニタなどの典型的な入力出力装置を備えていなくてもよい。ただし、通常、各埋め込み型システムの中心部には、１つ以上のプロセッサがある。
【０００６】
また、電子装置および埋め込み型システムの使用が増え、また情報交換の必要性が増すにつれて、現在では、より多くの装置が自装置の周辺にある装置を検知でき、これら装置と電子通信を確立できる。例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）の仕様では、装置が短距離無線信号を介して相互に通信できるような１つの規格を規定している。このように様々な種類の装置が、使用者を介さなくても他の装置と接続できるようになっている。なお、例えば、プリンタ、ＰＤＡ（Personal Digital Assistants）、デジタルカメラ、電話機、ラップトップコンピュータ、ビデオモニタ、電子カレンダ、デスクトップ、ファクシミリ装置、キーボード、ジョイスティックなども、自装置と他の装置との間の接続を確立する短距離無線システムの一部を担っている。また、このような短距離無線システムは、各装置間での通信が可能となる。この種の通信が可能となることによって、既存のネットワークに対してブリッジが提供され、固定されたネットワークインフラから離れたところに、接続された装置同士の小さな私設の臨時グループを形成する。また、このような短距離無線システムにおいて、これらの装置が互いを検知し合うことができるため、装置同士のネットワークがすぐに形成される。
【０００７】
上記したような、各装置間におけるデータ通信を利用したシステムとして、例えば特許文献１では、データネットワークにおけるマルチキャスト伝送および同期化の方法が開示されている。特に、この発明は、データファイルを、シングルソースから複数の受信者に、広域ネットワークにおいてマルチキャスト伝送を使用して、効果的かつ確実に配信するメカニズムを含むものである。
【０００８】
また、特許文献２は、ファイル配信システムが開示されている。このシステムでは、情報管理ユニットがターゲット端末のデータファイルのバージョン情報を、端末のハードウエアタイプの情報と共に受信し、これを直接参照しながら、ファイルのバージョンと、端末のハードウエアタイプを判断している。そして、情報管理ユニットが行った判断結果に基づいて、ファイル抽出ユニットは、配信ファイルから参照された配信ファイルを選択的に抽出している。
【０００９】
また、特許文献３は、電子ファイルの電子証明書を作成するために、信頼された第３者を使用するプロセスが開示されている。なお、上記電子証明書は、ファイルを整備しファイルの作成者の識別を認証するために使用できるものである。
【００１０】
また、特許文献４は、アイテムを複数のパケットとしてパッケージ化し、ヘッダに格納されているインデックスにより各パケットに番号を付けることによって、大きなアイテムをダウンロードするための方法および装置が開示されている。
【００１１】
特許文献５は、ダウンロード方法が開示されている。この方法は、ダウンロード要求を他の端末から受信し、自身の端末からの全ての要求が、他の端末からの要求に含まれている場合にダウンロードを開始し、要求管理テーブルの登録が削除される。一方、自身の端末の要求が、他の端末の要求には含まれていない場合、他の端末の要求が、要求管理テーブルに付加的に登録される。そして、情報サーバからのパケット伝送が終了したことを知らせる終了情報を受信した際に、全てのパケットの受信が完了していたら、プロセスは終了される。
【特許文献１】米国特許第６２６９０８０号明細書（２００１年０７月３１日）
【特許文献２】米国特許第６２０５４４５号明細書（２００１年０３月２０日）
【特許文献３】米国特許第５６３８４４６号明細書（１９９７年０６月１０日）
【特許文献４】米国特許第６２８９０１２号明細書（２００１年０９月１１日）
【特許文献５】特開平１１−７３３８０号公報（１９９９年０３月１６日）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、複数の電子装置から構成される通信システムでは、１つ以上の電子装置から同一システムにある他の電子装置全体に対する通信が遅延したり、あるいは、妨げられたりして非効率となるという問題が生じる。例えば、これらの電子装置を含む通信システムは、ある条件下では、ある装置から多数の他の装置にオブジェクト（例えば、ファイル、文書、画像、プログラムなど）を伝送させることが困難となる。特許文献２〜５は、ある装置から他の装置にオブジェクトを効率的に伝送させることに関しては開示されていない。
【００１３】
また、特許文献１は、マルチキャスト伝送によるソース（オブジェクト）の伝送について開示されており、マルチキャスト伝送を行える装置にしか適用できない。
【００１４】
従って、本発明は、上記の問題点に鑑みてなされたものであり、その目的は、より効率的な通信技術を提供するさらなるシステムおよび方法によって、電子装置間における通信の効率を向上させることを実現することにある。
【課題を解決するための手段】
【００１５】
本発明に係る電子装置の制御方法は、サーバ電子装置からオブジェクトを受信するステップと、第１クライアント電子装置を含む転送待ち行列を、サーバ電子装置から受信するステップと、第１クライアント電子装置にこのオブジェクトを伝送するステップとを含んでいることを特徴としている。
【００１６】
また、本発明に係る電子装置の制御方法は、上記方法において、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、この複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、第１クライアント電子存置はこの序列の最高位に位置付けられていてもよい。
【００１７】
また、本発明に係る電子装置の制御方法は、上記方法において、上記序列が、オブジェクトの伝送を完了させるために必要と推定される期間に基づかれていることが好ましい。
【００１８】
また、本発明に係る電子装置の制御方法は、上記方法において、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、転送待ち行列と上記サーバ電子装置に保持されているサーバ転送待ち行列との間で、複数のクライアント電子装置を分配することについて、上記サーバ電子装置と通信するステップをさらに含んでいることを特徴とする。
【００１９】
また、本発明に係る電子装置の制御方法では、複数のクライアント電子装置が、上記電子装置またはサーバ電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、上記転送待ち行列と上記サーバ転送待ち行列との間で分配される。
【００２０】
また、本発明に係る電子装置の制御方法は、上記転送待ち行列を第１クライアント電子装置に伝送するステップをさらに含むことを特徴とする。
【００２１】
また、本発明に係る電子装置の制御方法は、上記オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含むことを特徴としている。
【００２２】
また、本発明に係る電子装置の制御方法は、上記オブジェクトをサーバ電子装置から検索するステップと、オブジェクトをサーバ電子装置において見つけ出すステップと、オブジェクトの取り出し要求を、サーバ電子装置に対して行うステップとをさらに含むことを特徴としている。
【００２３】
また、本発明に係る電子装置の制御方法は、オブジェクトの取り出し要求を第２クライアント電子装置から受信するステップと、上記第２クライアント電子装置を転送待ち行列に加えるステップと、オブジェクトを第２クライアント電子装置に対して伝送するステップとをさらに含むことを特徴としている。
【００２４】
また、本発明に係る電子装置の制御方法では、上記第２クライアント電子装置が、転送待ち行列において第１クライアント電子装置よりも上位に序列されている。そして、この電子装置の制御方法は、第１クライアント電子装置に対するオブジェクトの伝送を停止するステップと、第２クライアント電子装置に対してオブジェクトが伝送された後、第１クライアント電子装置へのオブジェクトの伝送を再開するステップとをさらに含むことを特徴としている。
【００２５】
上記オブジェクトを第１クライアント電子装置に対して伝送するステップには、第１クライアント電子装置に対するオブジェクトの伝送を終了するステップを含んでいることが好ましい。
【００２６】
また、本発明に係る電子装置の制御方法において、自装置が、単一の通信インターフェースを備えていることを特徴としている。
【００２７】
また、本発明に係る電子装置の制御方法では、自装置がオブジェクトを保持しており、上記オブジェクトを、転送待ち行列に関連付けるステップと、オブジェクトの取り出し要求を、複数のクライアント電子装置から受信するステップと、複数のクライアント電子装置を、転送待ち行列に加えるステップと、オブジェクトおよび転送待ち行列を、複数のクライアント電子装置のうちの第１クライアント電子装置に伝送するステップとを含んでいることを特徴としている。
【００２８】
また、上記方法において上記複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、上記第１クライアント電子装置が、この序列の最高位に位置付けられている。
【００２９】
また、上記序列が、オブジェクトの伝送を完了するために必要と推定される期間に基づいている。
【００３０】
また、本発明に係る電子装置の制御方法は、自装置が保持している転送待ち行列と上記第１クライアント電子装置が保持している転送待ち行列との間で複数のクライアント電子装置を分配することについて、第１クライアント電子装置と通信するステップをさらに含むことを特徴としている。
【００３１】
なお、自装置または上記第１クライアント電子装置のどちらがオブジェクトを最も効率的に伝送できるかに基づいて、電子装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で上記複数のクライアント電子装置を分配することが好ましい。
【００３２】
さらにまた、本発明に係る電子装置の制御方法は、上記オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含むことを特徴としている。
【００３３】
また、本発明に係る電子装置の制御方法において、自装置が、単一の通信インターフェースを備えていることを特徴としている。
【００３４】
本発明に係る電子装置は、プロセッサと、当該プロセッサと電子通信しているメモリとを備えており、上記メモリには、オブジェクトをサーバ電子装置から受信するステップと、第１クライアント電子装置を含む転送待ち行列をサーバ電子装置から受信するステップと、第１クライアント電子装置にオブジェクトを伝送するステップとを含む方法を実行する為の指示がプログラムされていることを特徴としている。
【００３５】
また、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、この複数のクライアント電子装置のうちの各クライアント電子装置には序列が付けられており、第１クライアント電子装置は、この序列の最高位に位置付けられていてもよい。
【００３６】
また、上記序列が、オブジェクトの伝送を完了する為に必要と推定される期間に基づいていることが好ましい。
【００３７】
また、本発明に係る電子装置は、上記転送待ち行列には、複数のクライアント電子装置が含まれており、上記方法が、複数のクライアント電子装置を、上記転送待ち行列とサーバ電子装置が保持しているサーバ転送待ち行列との間で分配することについて、サーバ電子装置と通信するステップをさらに含むことを特徴としている。
【００３８】
また、自装置または上記サーバ電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、上記転送待ち行列と上記サーバ転送待ち行列との間で上記複数のクライアント電子装置を分配することが好ましい。
【００３９】
また、本発明に係る電子装置は、上記方法において、上記転送待ち行列を、第１クライアント電子装置に伝送するステップをさらに含んでいることを特徴としている。
【００４０】
さらにまた、本発明にかかる電子装置は、上記方法において、オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいることを特徴とする。
【００４１】
また、本発明に係る電子装置は、上記方法において、オブジェクトをサーバ電子装置から検索するステップと、オブジェクトをサーバ電子装置において見つけ出すステップと、オブジェクトの取り出し要求を、サーバ電子装置に対して行うステップをさらに含んでいることを特徴としている。
【００４２】
また、本発明に係る電子装置は、上記方法において、オブジェクトの取り出し要求を、第２クライアント電子装置から受信するステップと、第２クライアント電子装置を、転送待ち行列に加えるステップと、オブジェクトを、第２クライアント電子装置に伝送するステップとをさらに含んでいることを特徴としている。
【００４３】
また、本発明に係る電子装置は、上記第２クライアント電子装置が、転送待ち行列において第１クライアント電子装置よりも上位に序列されており、上記方法において、第１クライアント電子装置に対するオブジェクトの伝送を停止するステップと、第２クライアント電子装置に対してオブジェクトが伝送された後に、第１クライアント電子装置へのオブジェクトの伝送を再開するステップとをさらに含んでいることを特徴としている。
【００４４】
上記オブジェクトを上記第１クライアント電子装置に伝送するステップには、当該第１クライアント電子装置に対するオブジェクトの伝送を終了するステップを含んでいることを特徴とする。
【００４５】
また、本発明に係る電子装置は、単一の通信インターフェースをさらに備えていることを特徴としている。
【００４６】
本発明に係る電子装置は、プロセッサと、上記プロセッサと電子通信しているメモリとを備えており、オブジェクトを、転送待ち行列と関連付けるステップと、オブジェクトの取り出し要求を、複数のクライアント電子装置から受信するステップと、複数のクライアント電子装置を、上記転送待ち行列に加えるステップと、上記オブジェクトおよび上記転送待ち行列を、複数のクライアント電子装置のうちの第１クライアント電子装置に伝送するステップとを含む方法を実行する為の指示が上記メモリにプログラムされていることを特徴とする。
【００４７】
また、上記電子装置において、上記複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、上記第１クライアント電子装置がこの序列の最高位に位置付けられていてもよい。
【００４８】
また、上記電子装置において、上記序列が、オブジェクトの伝送を完了する為に必要と推定される期間に基づいていてもよい。
【００４９】
また、本発明に係る電子装置は、上記方法において、自装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で複数のクライアント電子装置を分配することについて、第１クライアント通信装置と通信するステップをさらに含むことを特徴とする。
【００５０】
また、上記電子装置において、自装置または第１クライアント電子装置のどちらがオブジェクトを最も効率的に伝送できるかに基づいて、自装置が保持している転送待ち行列と第１クライアント電子装置が保持している転送待ち行列との間で上記複数のクライアント電子装置を分配するように構成されていてもよい。
【００５１】
また、本発明に係る電子装置は、上記方法において、ブジェクトが第１クライアント電子装置に対して伝送された後でかつ、転送待ち行列が第１クライアント電子装置に対して伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいることを特徴としている。
【００５２】
また、本発明に係る電子装置は、単一の通信インターフェースをさらに備えていることを特徴としている。
【００５３】
また、本発明に係る電子装置制御プログラムは、上記電子装置を制御するためのプログラムであって、プロセッサを上記各ステップとして機能させるためのプログラムであることを特徴としている。
【００５４】
また、本発明に係る記録媒体は、電子装置制御プログラムが記録されたコンピュータの読み取り可能な記録媒体である。
【発明の効果】
【００５５】
本発明に係る電子装置の制御方法は、当該電子装置がサーバ電子装置からオブジェクトを受信するステップと、第１クライアント電子装置を含む転送待ち行列をサーバ電子装置から受信ステップと、第１クライアント電子装置にこのオブジェクトを伝送するステップとを含んでいる。
また、本発明に係る電子装置は、プロセッサとメモリを備えており、メモリには上記した電子装置の制御方法を実行するための指示がプログラムされている。
【００５６】
このため、本発明にかかる電子装置およびこの電子装置の制御方法では、サーバ電子装置から受信したオブジェクトを、転送待ち行列を参照して第１クライアント電子装置に確実に送信することができるという効果を奏する。
【００５７】
なお、このサーバ電子装置とは、自装置内にオブジェクトを保持しており、自装置以外の電子装置にこのオブジェクトを伝送させることができる電子装置である。また、クライアント電子装置とは、上記サーバ電子装置からオブジェクトを受信可能な電子装置である。そして、第１のクライアント電子装置とは、クライアント電子装置のうち、当該電子装置がオブジェクトを伝送すべき所定の電子装置である。なお、オブジェクトとは、例えば、ファイル、文書、画像、プログラムなど各電子装置の間で通信網を介して送受信可能なデータである。
【００５８】
また、転送待ち行列とは、オブジェクトの配信先であるクライアント電子装置に関する情報が記録されているものである。
【００５９】
すなわち、電子装置は、サーバ電子装置からオブジェクトと転送待ち行列とを受信することによって、クライアント電子装置に対するサーバ電子装置になる。そして、この電子装置は、転送待ち行列を参照することで、サーバ電子装置から受信したオブジェクトをどのクライアント装置に転送すべきか知ることができる。
【００６０】
したがって、この電子装置は、受信したオブジェクトをさらに受信した転送待ち行列の情報に基づいて、次のオブジェクトの伝送相手である第１クライアント電子装置を指定して送信することができる。
【００６１】
本発明に係る電子装置およびこの電子装置の制御方法では、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、この複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、第１クライアント電子存置はこの序列の最高位に位置付けられている。
【００６２】
このため、電子装置は、複数のクライアント装置のうち第１クライアント装置を優先してオブジェクトを伝送することができるという効果を奏する。
【００６３】
すなわち、転送待ち行列に複数のクライアント電子装置に関する情報が存在する場合、この複数のクライアント電子装置の情報それぞれには序列がつけられている。このため、各クライアント電子装置の情報は、この序列に従って転送待ち行列に格納されていくことになる。そして、電子装置はクライアント電子装置の情報が格納されている順番に、自装置に保持するオブジェクトを伝送する。
【００６４】
ところで、第１クライアント電子装置は、この序列において最高位に位置付けられているため、電子装置は、複数のクライアント電子装置の中で最も優先的にオブジェクトを第１クライアント装置に送信する。
【００６５】
したがって、電子装置は、転送待ち行列において複数のクライアント電子装置の情報が含まれている場合であっても、第１クライアント電子装置を優先させて、オブジェクトを送信することができる。
【００６６】
本発明に係る電子装置およびこの電子装置の制御方法では、転送待ち行列に記録されているクライアント電子装置の序列を、オブジェクトを伝送するために必要となる期間に基づいて決定している。
【００６７】
このため、この電子装置は、例えばオブジェクトの伝送期間が短いクライアント電子装置から順に転送するなど、転送にかかる時間を考慮に入れてオブジェクトをクライアント電子装置に対して伝送することができるという効果を奏する。
【００６８】
本発明に係る電子装置およびこの電子装置の制御方法では、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、上記方法において、転送待ち行列と上記サーバ電子装置に保持されているサーバ転送待ち行列との間で、複数のクライアント電子装置を分配することについて、上記サーバ電子装置と通信するステップをさらに含んでいる。
【００６９】
このため、サーバ電子装置と当該電子装置とは、転送待ち行列に格納されているクライアント電子装置をそれぞれで分配することができる。
【００７０】
したがって、電子装置およびサーバ電子装置それぞれが、オブジェクトを配信すべきクライアント電子装置を分配して減らすことができるため、より効率的にオブジェクトをクライアント電子装置に対して伝送することができるという効果を奏する。
【００７１】
本発明に係る電子装置およびこの電子装置の制御方法では、複数のクライアント電子装置は、自装置またはサーバ電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、上記転送待ち行列と上記サーバ転送待ち行列との間で分配される。
【００７２】
このため、本発明に係る電子装置とサーバ電子装置との間で、各装置がクライアント電子装置に対してオブジェクトをより効率的に伝送可能とする能力に応じて、双方の転送待ち行列に格納されているクライアント電子装置の情報を分配することができる。すなわち、例えば、オブジェクトの伝送能力が低い方にオブジェクトを送信する必要があるクライアント電子装置の数が多くなったりすることを防ぐことができる。
【００７３】
したがって、本発明に係る電子装置は、効率的にオブジェクトをクライアント電子装置に送信することができるという効果を奏する。
【００７４】
本発明に係る電子装置およびこの電子装置の制御方法では、上記転送待ち行列を第１クライアント電子装置に伝送するステップをさらに含んでいる。
【００７５】
このため、電子装置は、オブジェクトだけでなく、転送待ち行列も第１クライアント電子装置に対して伝送するため、この第１クライアント電子装置もその他のクライアント電子装置に対するサーバ電子装置となることができる。
【００７６】
したがって、サーバ電子装置および電子装置だけではなく、オブジェクトと転送待ち行列を受信した第１クライアント電子装置によってもオブジェクトを他のクライアント電子装置に対して送信することができるため、オブジェクトを効率的に配信することができるという効果を奏する。
【００７７】
本発明に係る電子装置およびこの電子装置の制御方法では、上記オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいる。
【００７８】
このため、転送待ち行列が第１クライアント電子装置に伝送された時点では、この転送待ち行列には第１クライアント装置に関する情報が削除されている。
【００７９】
したがって、一度オブジェクトが送信された第１クライアント装置に再度同じオブジェクトを送ることを防ぐことができる。すなわち、オブジェクトが二回以上同じクライアント電子装置に送信されることがないため効率的にオブジェクトを伝送することができるという効果を奏する。
【００８０】
本発明に係る電子装置およびこの電子装置の制御方法では、上記方法において、さらに上記オブジェクトをサーバ電子装置から検索するステップと、オブジェクトをサーバ電子装置において見つけ出すステップと、オブジェクトの取り出し要求を、サーバ電子装置に対して行うステップとを含んでいる。
【００８１】
このため、本発明に係る電子装置は、所望するオブジェクトをサーバ電子装置から検索し、見つけ出すことができる。さらにこの電子装置は、この見つけ出したオブジェクトをサーバ電子装置から取り出して、自装置に対して送信するように要求することができる。
【００８２】
したがって、本発明に係る電子装置では、当該電子装置が所望する特定のオブジェクトのみだけを要求するため、所望しない余分なオブジェクトまでもが伝送されることがないため効率的にオブジェクトが伝送されるという効果を奏する。
【００８３】
本発明にかかる電子装置およびこの電子装置の制御方法では、上記方法において、さらにオブジェクトの取り出し要求を第２クライアント電子装置から受信するステップと、上記第２クライアント電子装置を転送待ち行列に加えるステップと、オブジェクトを第２クライアント電子装置に対して伝送するステップとを含んでいる。
【００８４】
このため、本発明に係る電子装置は、第１クライアント装置以外の第２クライアント装置からの取り出し要求を受けることができる。また、電子装置はこの要求に応じて、当該第２クライアント電子装置に関する情報を転送待ち行列に加え、この転送待ち行列を参照して所定の順番に従ってオブジェクトを第２クライアント装置に伝送することができる。
【００８５】
したがって、本発明に係る電子装置は、複数のクライアント電子装置に対して転送待ち行列を参照して、所定の順番で適切にオブジェクトを伝送することができるという効果を奏する。
【００８６】
本発明に係る電子装置およびこの電子装置の制御方法では、上記第２クライアント電子装置が、転送待ち行列において第１クライアント電子装置よりも上位に序列されており、上記方法においてさらに、第１クライアント電子装置に対するオブジェクトの伝送を停止するステップと、第２クライアント電子装置に対してオブジェクトが伝送された後、第１クライアント電子装置へのオブジェクトの伝送を再開するステップとを含んでいる。
【００８７】
ここで、転送待ち行列において第１クライアント電子装置よりも第２クライアント電子装置の方が上位に序列されているため、第１クライアント電子装置よりも第２クライアント電子装置の方が優先的にオブジェクトが伝送されるクライアント電子装置ということになる。
【００８８】
また、本発明に係る電子装置は、第１クライアント電子装置に対するオブジェクトの伝送を停止し、第２クライアント電子装置に対してオブジェクトが伝送された後、第１クライアント電子装置へのオブジェクトの伝送を再開することができる構成である。
【００８９】
このため、第１クライアント電子装置に対して既にオブジェクトの伝送が行われている最中であっても、第１クライアント電子装置よりもオブジェクトの伝送の優先度が高い第２クライアント電子装置に対して先に伝送することができる。
【００９０】
したがって、本発明に係る電子装置は、転送待ち行列に格納されているクライアント情報の序列に応じて効率的にオブジェクトを伝送することができるという効果を奏する。
【００９１】
本発明に係る電子装置およびこの電子装置の制御方法では、上記オブジェクトを第１クライアント電子装置に対して伝送するステップには、第１クライアント電子装置に対するオブジェクトの伝送を終了するステップを含んでいる。
【００９２】
例えば、本発明に係る電子装置が第１クライアント電子装置に対してオブジェクトの伝送を開始する際に、第１クライアント装置に対して他のサーバ電子装置からも同じオブジェクトが伝送されている最中である場合がある。
【００９３】
なお、このような場合、本発明に係る電子装置は、第１クライアント電子装置に対するオブジェクトの伝送を停止することができるため、第１クライアント電子装置に対して同じオブジェクトを電子装置とサーバ電子装置とがかち合って伝送させることを防ぐことができる。
【００９４】
本発明に係る電子装置およびこの電子装置の制御方法は、自装置が、単一の通信インターフェースを備えている。
【００９５】
このため、電子装置は、例えば複数の通信インターフェースを備える等複雑な構成の通信装置を備えていなくても、オブジェクトを効率的にサーバ電子装置から受信し、クライアント電子装置に伝送させることができるという効果を奏する。
【００９６】
本発明に係る電子装置の制御方法は、自装置に保持しているオブジェクトを転送待ち行列に関連付けるステップと、オブジェクトの取り出し要求を複数のクライアント電子装置から受信するステップと、複数のクライアント電子装置を転送待ち行列に加えるステップと、オブジェクトおよび転送待ち行列を複数のクライアント電子装置のうちの第１クライアント電子装置に伝送するステップとを含んでいる。
【００９７】
また、本発明に係る電子装置はプロセッサと、このプロセッサと電子通信しているメモリとを備えており、上記電子装置の制御方法を実行するための指示が上記メモリにプログラムされている。
【００９８】
すなわち、本発明に係る電子装置およびこの電子装置の制御方法では、オブジェクトとこのオブジェクトに関連付けた転送待ち行列を備えているため、サーバ電子装置からオブジェクトおよび第１クライアント装置を含む転送待ち行列を受信しなくても、クライアント装置に対するサーバ電子装置になることができる。また、本発明に係る電子装置は、第１クライアント電子装置に対して、自装置にオブジェクトの取り出し要求を行った他のクライアント電子装置の情報と自装置が保持するオブジェクトとを伝送することができる。すなわち、第１クライアント装置も、本発明に係る電子装置と同様に、他のクライアント装置に対するサーバ電子装置になることができる。
【００９９】
このため、本発明に係る電子装置は、自装置に対してオブジェクトの取り出しを要求する他のクライアント電子装置に対して、第１クライアント電子装置からもオブジェクトを伝送させることができる。
【０１００】
したがって、電子装置は、クライアント装置からオブジェクトの取り出し要求を受けた場合、第１クライアント電子装置からもこのクライアント電子装置に対してオブジェクトを伝送させることができるため、効率的にオブジェクトをクライアント電子装置に送信することができるという効果を奏する。
【０１０１】
本発明に係る電子装置およびこの電子装置の制御方法では、上記複数のクライアント電子装置の各クライアント電子装置には序列が付けられており、上記第１クライアント電子装置がこの序列の最高位に位置付けられている。なお、この序列は、オブジェクトを伝送させるクライアント電子装置の優先順位を示すものである。
【０１０２】
このため、電子装置は、転送待ち行列を参照して、当該転送待ち行列において最高位に位置付けられている第１クライアント装置に対して、オブジェクトおよび転送待ち行列を伝送させることができる。
【０１０３】
したがって、この電子装置は、転送待ち行列におけるクライアント電子装置の序列に応じて、オブジェクトを伝送することができるという効果を奏する。
【０１０４】
本発明に係る電子装置およびこの電子装置の制御方法では、転送待ち行列に記録されているクライアント電子装置の序列を、オブジェクトを伝送するために必要となる期間に基づいて決定している。
【０１０５】
ここで、第１クライアント装置は、序列において最高位に位置しているため、電子装置から第１クライアント装置に対して必要と推定されるオブジェクトの伝送を完了するまでの期間が他のクライアント装置の中で最も短いまたは最も長いものとなる。
【０１０６】
したがって、この電子装置は、例えばオブジェクトの伝送期間が短いクライアント電子装置から順に転送するなど、転送にかかる時間を考慮に入れてオブジェクトを第１クライアント電子装置に対して伝送することができるという効果を奏する。
【０１０７】
本発明に係る電子装置およびこの電子装置の制御方法では、上記転送待ち行列が、複数のクライアント電子装置を含んでおり、上記方法において、転送待ち行列と上記サーバ電子装置に保持されているサーバ転送待ち行列との間で、複数のクライアント電子装置を分配することについて、上記サーバ電子装置と通信するステップをさらに含んでいる。
【０１０８】
このため、サーバ電子装置と電子装置とは、転送待ち行列に格納されているクライアント電子装置をそれぞれで分配することができる。
【０１０９】
したがって、本発明にかかる電子装置およびサーバ電子装置それぞれが、オブジェクトを配信すべきクライアント電子装置を分配して減らすことができるため、より効率的にオブジェクトをクライアント電子装置に対して伝送することができるという効果を奏する。
【０１１０】
本発明に係る電子装置およびこの電子装置の制御方法では、複数のクライアント電子装置は、自装置または上記第１クライアント電子装置のどちらがオブジェクトを最も効率的に伝送可能であるかに基づいて、自装置が保持している転送待ち行列と上記第１クライアント電子装置が保持している転送待ち行列との間で分配される。
【０１１１】
このため、本発明に係る電子装置と第１クライアント電子装置との間で、各装置がオブジェクトをその他のクライアント電子装置に対して伝送させることが可能な能力に応じて、双方の転送待ち行列に格納されているその他のクライアント電子装置の情報を分配することができる。すなわち、例えば、オブジェクトの伝送能力が低い方にオブジェクトを送信する必要があるその他のクライアント電子装置の数が多くなったりすることを防ぐことができる。
【０１１２】
したがって、本発明に係る電子装置は、効率的にオブジェクトをその他のクライアント電子装置に送信することができるという効果を奏する。
【０１１３】
本発明に係る電子装置およびこの電子装置の制御方法では、上記オブジェクトが第１クライアント電子装置に伝送された後でかつ、転送待ち行列が第１クライアント電子装置に伝送される前に、上記第１クライアント電子装置を当該転送待ち行列から削除するステップをさらに含んでいる。
【０１１４】
このため、転送待ち行列が第１クライアント電子装置に伝送された時点では、この転送待ち行列には第１クライアント装置に関する情報が削除されている。
【０１１５】
したがって、一度オブジェクトが送信された第１クライアント装置に再度同じオブジェクトを送ることを防ぐことができる。すなわち、オブジェクトが二回以上同じクライアント電子装置に送信されることがないため効率的にオブジェクトを伝送することができるという効果を奏する。
【発明を実施するための最良の形態】
【０１１６】
本発明の一実施形態について図１ないし図２１に基づいて説明すると以下の通りである。なお、ここで、図面にて説明および記載されているような実施の形態にかかる部材は、広範囲の様々な構成において配置され、設計されるものである。従って、これらの図面にて示されるような、本発明のシステムおよび方法に関する実施形態の以下のより詳細な説明は、特許請求の範囲のように本発明の範囲を制限するものではなく、単に本発明の代表的な実施形態を示すものである。
【０１１７】
また、本発明は、添付の図を参照することによって、詳細な説明および添付の特許請求の範囲がより明確になる。ただし、これら図面は、単に典型的な実施形態を示しているものであり、本発明の範囲を制限しないものである。そして、この実施形態について、これら図面を用いてさらに具体的に詳細に説明する。
【０１１８】
図１は、通信システム１００を示す図であり、この通信システム１００では、ここで記載されるいくつかの実施例が実行される。また、このシステム１００は、複数の電子装置１０２から構成されている。この電子装置１０２のいくつかの例としては、コンピュータ、自動販売機、電話機、ドアロック、温度感知器、駆動機、スイッチ、照明、プリンタ、ファクシミリ装置、冷蔵庫、健康管理装置（ヘルスモニタ）、エレベーターおよび／またはエスカレーター、複写機、スキャナ、製造装置、工業製品、コンピュータ設備機器および周辺機器、セキュリティシステム、監視装置、サーモスタットなどが挙げられる。
【０１１９】
図１に示される例では、各装置１０２が、システム１００において他の装置１０２それぞれと通信するための通信チャネル１０４を保持している。そして、各通信チャネル１０４は、個々に確立され、システム１００における他の通信チャネル１０４と著しく干渉し合うことはない。しかしながら、各装置１０２は、単一の通信インターフェース１０６のみを備えているため、各装置１０２が一度に通信できる他の装置１０２は、１つだけとなる。また、図１に示されるように、装置１０２それぞれの通信インターフェース１０６は、ある通信チャネル１０４から他の通信チャネル１０４へと切り替えて通信することができる。従って、各装置１０２は、複数の他の装置１０２と、時分割多重化方式により通信可能となる。
【０１２０】
また、通信システム１００では、オブジェクト（例えば、ファイル、文書、画像、プログラムなど）を、１つの装置１０２から複数の他の装置１０２に伝送することが望ましい。そこで、図２では、通信システム１００でのオブジェクト２１０を配信する為のオブジェクト配信方法２００の一例を示す。
【０１２１】
ここで、上記オブジェクト配信方法２００を明確に説明するため、オブジェクト２１０を他の装置２０２に伝送する装置２０２は、オブジェクト２１０の「サーバ」とし、オブジェクト２１０を他の装置２０２から受信する装置２０２は、「クライアント」とする。すなわち、図示したように、オブジェクト２１０を受信する各クライアントは、そのオブジェクト２１０のサーバにもなり得る。
【０１２２】
図２は、時間的に連続して行われる上記オブジェクト配信方法２００における異なる段階を示す図である。そしてこの異なる段階は、図２において破線によって区分されている。第１段階では、予めオブジェクト２１０が装置Ａ２０２ａに格納されている。このため、装置Ａ２０２ａは、オブジェクト２１０のサーバとなる。そして、装置Ａ２０２ａは、オブジェクト２１０を、クライアント、すなわち、装置Ｂ２０２ｂに伝送する。
【０１２３】
第２段階では、装置Ｂ２０２ｂは、オブジェクト２１０を既に受信している。従って、装置Ｂ２０２ｂは、オブジェクト２１０のサーバとなる。そして、この段階では、装置Ａ２０２ａは、オブジェクト２１０を、他のクライアント、すなわち、装置Ｃ２０２ｃに伝送する。また、装置Ｂ２０２ｂも、オブジェクト２１０を、クライアント、すなち、装置Ｄ２０２ｄに伝送する。
【０１２４】
第３段階では、装置Ｃ２０２ｃおよび装置Ｄ２０２ｄは、オブジェクト２１０を既に受信している。従って、装置Ｃ２０２ｃおよび装置Ｄ２０２ｄは、オブジェクト２１０のサーバとなる。この段階では、装置Ａ２０２ａは、オブジェクト２１０を、他のクライアント、すなわち、装置Ｅ２０２ｅに伝送する。また、装置Ｂ２０２ｂは、オブジェクト２１０を、クライアント、すなわち、装置Ｆ２０２ｆに伝送する。さらに装置Ｃ２０２ｃも、オブジェクト２１０を、クライアント、すなわち、装置Ｇ２０２ｇに伝送する。装置Ｄ２０２ｄも、オブジェクト２１０を、クライアント、すなわち、装置Ｈ２０２ｈに伝送する。装置Ｅ２０２ｅ、装置Ｆ２０２ｆ、装置Ｇ２０２ｇ、および、装置Ｈ２０２ｈが、オブジェクト２１０を受信すると、これら装置は、オブジェクト２１０のサーバとなる。このようにして、この処理は、システム１００の全ての装置２０２それぞれが、オブジェクト２１０を受信するまで繰り返される。
【０１２５】
図３（ａ）〜（ｃ）は、クライアント３２０とサーバ３２２との間で実行可能ないくつかのやりとりを示す図である。これらのやりとりは、図２に示した上記オブジェクト配信方法２００に基づいて、オブジェクト３１０が配信される間中行われる。なお、既に説明したように、このサーバ３２２は、オブジェクト３１０を別のサーバ２０１に伝送する装置１０２であって、クライアント３２０は、別の装置１０２からオブジェクト３１０を受信する装置１０２である。
【０１２６】
また、図３（ａ）に示すように、クライアント３２０は、オブジェクト３１０をサーバ３２２から取り出すために、取り出し要求３２４を行う。なお、この要求されるオブジェクト３１０は、転送待ち行列３２６と関連付けられている。なお、以下により詳しく説明するように、転送待ち行列３２６とは、サーバ３２２がオブジェクト３１０の取り出し要求３２４を行ったクライアント３２０の情報を管理するために使用するものである。この転送待ち行列３２６では、オブジェクトの取り出し要求を行ったクライアント３２０に関する情報が記録される。このクライアント３２０に関する情報は、例えばクライアント３２０との通信を管理しているポートの情報などである。このため、この転送待ち行列３２６には、サーバ３２２からオブジェクト３１０に対する取り出し要求３２４を行っている１つ以上の装置（クライアント３２０）に関する情報を含んでいる。次に、図３（ｂ）に示すように、サーバ３２２が、クライアント３２０から取り出し要求３２４を受信する場合、サーバ３２２は、このクライアント３２０に関する情報を転送待ち行列３２６に加える。
【０１２７】
次に、クライアント３２０に関する情報が、転送待ち行列３２６に加えられた後、サーバ３２２は、クライアント３２０に対してオブジェクト３１０の伝送３２８を開始する。一般的に、サーバ３２２の通信が有効である場合、サーバ３２２は、オブジェクト３１０の伝送３２８を始める。このように、オブジェクト３１０の伝送３２８は、すぐには始まらないのである。
【０１２８】
ところである場合では、クライアント３２０は、オブジェクト３１０の伝送３２８を拒否することがある。例えば、オブジェクト３１０が、既に他のサーバ３２２からクライアント３２０に伝送されている場合、クライアント３２０は、オブジェクト３１０の伝送３２８を拒否する。クライアント３２０が、オブジェクト３１０の伝送３２８を拒否する場合、このクライアント３２０に関する情報は、転送待ち行列３２６から削除される。
【０１２９】
また、サーバ３２２がクライアント３２０に対してオブジェクト３１０の伝送３２８を開始する際に、クライアント３２０は、他のサーバ３２２からのオブジェクト３１０の伝送３２８を既に受信している最中の場合がある。このような状況の場合、クライアント３２０は、どちらのサーバ３２２からの伝送３２８を終了させるかを選択する。なお、この選択は、クライアント３２０が転送待ち行列３２６に登録されているクライアント３２０の数が最も少ないサーバ３２２を選択することで実現される。
【０１３０】
図３（ｂ）に示すように、オブジェクト３１０の伝送３２８が完了すると、オブジェクトの伝送が完了したクライアント３２０は、転送待ち行列３２６から削除される。そして次に、通常は転送待ち行列３２６が、クライアント３２０に伝送され、クライアント３２０は、オブジェクト３１０のサーバ３２２となる。しかしながら、一部のクライアント３２０は、サーバ３２２になることができないことがある。この場合、転送待ち行列３２６は、このようなクライアント３２０には伝送されない。
【０１３１】
図３（ａ）〜（ｃ）に示すやりとりは、様々な状況において生じる。例えば、クライアント３２０は、特定のオブジェクト３１０、あるいは検索条件を満たす全てのオブジェクト３１０を、１つ以上のサーバ３２２から検索する。そして、クライアント３２０のユーザは、特定のサーバ３２２にある特定のオブジェクト３１０を選択するのである。それから、クライアント３２０は、選択したサーバ３２２から選択したオブジェクト３１０に対する取り出し要求３２４を行う。なお、このオブジェクト３１０を検索し、取り出すための１つの方法は、本発明の特許譲受人へ譲渡された関連先行出願である米国特許出願番号０９／９１０，６５０（U.S. Patent Application Serial No. 09/910,650）、発明の名称「アドホックなデータ通信システムのオブジェクト検索および取り出しシステム（Object Search and Retrieval System for an Ad Hoc Data Communication System）」に記載されており、本特許は、その出願内容を含むものである。
【０１３２】
また、場合によっては、所望のオブジェクト３１０が、複数のサーバ３２２において検出されることがある。このような場合、クライアント３２０は、オブジェクト３１０の伝送能力に基づいて各サーバ３２２それぞれを序列する。つまり、様々なサーバ３２２についての序列は、この様々なサーバ３２２の通信能力と、各通信チャネル１０４の推定される伝送率とに応じている。次に、クライアント３２０は、サーバ３２２が伝送３２８を開始するまで、あるいは、各サーバ３２２に対して取り出し要求３２４がなされてしまうまで、様々なサーバ３２２に対して、その序列の順に取り出し要求３２４を連続的に行う。
【０１３３】
ある実施例では、任意のサーバ３２２に対して、オブジェクト３１０の取り出し要求３２４を行った後、クライアント３２０は、さらなる他のサーバ３２２からもオブジェクト３１０を検索し続ける。このような場合、サーバ３２２が、オブジェクト３１０の伝送３２８をクライアント３２０に対して開始すると、このクライアント３２０は、継続中である同じオブジェクト３１０の検索を全て中断する。
【０１３４】
なお、この明細書に記載している実施例では、必ずしも伝送を要求するオブジェクト３１０の検索を含んでいる必要はない。例えば、あるの実施例では、クライアント３２０のユーザが、予め決まっているサーバ３２２にある、予め決められたオブジェクト３１０を受信することを所望する構成であってもよい。その場合、クライアント３２０が、取り出し要求３２４を行えるように、ユーザがクライアント３２０に、オブジェクト３１０およびサーバ３２２についての情報を提供する。なお、この情報の提供は、例えば、クライアント３２０に備えられている操作ボタン等の外部入力手段（不図示）を利用することで実現できる。
【０１３５】
図４（ａ）に示すように、サーバ４２２が、転送待ち行列４２６をクライアント４２０に伝送する際、転送待ち行列４２６が空いていないことがある。このような場合には、転送待ち行列４２６にある装置４０２に関するそれぞれの情報は、クライアント４２０とサーバ４２２との間で分配される。
【０１３６】
ここで、図４（ｂ）は、転送待ち行列４２６にある装置４０２に関する情報が、クライアント４２０とサーバ４２２との間で分配される１つの方法を示す図である。図４（ｂ）に示すように、各装置４０２それぞれに関する情報は、クライアント４２０に格納されている転送待ち行列４２６またはサーバ４２２に格納されている転送待ち行列４２６のどちらかに含まれており、その両方には含まれないように分配処理されている。
【０１３７】
転送待ち行列４２６にある装置４０２に関する情報は、どの装置４０２がオブジェクト２１０を最も迅速に伝送できるかということに基づいて、クライアント４２０とサーバ４２２との間で分配される。例えば、クライアント４２０およびサーバ４２２が、転送待ち行列４２６に記録されている各装置４０２に対して、オブジェクト２１０を伝送するために必要となる時間をそれぞれ推定する。つまり、クライアント４２０が、転送待ち行列４２６にある特定の装置４０２に関して、クライアント４２０にある装置４０２に対するオブジェクト２１０の伝送の方が、サーバ４２２にある装置４０２に対するオブジェクト２１０の伝送よりも伝送時間が短いと推定された場合、この装置４０２に関する情報は、クライアント４２０に格納されている転送待ち行列４２６に残され、一方、サーバ４２２に格納されている転送待ち行列４２６からは削除される。その反対に、サーバ４２２が、転送待ち行列４２６にある特定の装置４０２に関して、サーバ４２２にある装置４０２の方が、クライアント４２０にある装置４０２よりもオブジェクト２１０の転送時間がより短いと推定される場合は、この装置４０２に関する情報は、サーバ４２２に格納されている転送待ち行列４２６に残され、一方、クライアント４２０に格納されている転送待ち行列４２６から削除される。また、クライアント４２０とサーバ４２２との待ち行列４２６に記録されている装置４０２それぞれに対して、オブジェクト２１０を伝送する時間がほぼ同じであると推定された場合は、これらの装置４０２は、クライアント４２０とサーバ４２２との間でほぼ同数となるように分配される。このようにして、クライアント４２０とサーバ４２２との間において、各転送待ち行列４２６に記録されている装置４０２について調整が行われる。したがって、オブジェクト２１０を転送待ち行列４２６に記録されている全ての装置４０２に対して、オブジェクト２１０を伝送するために必要とされる合計時間はほぼ同じとなる。
【０１３８】
図５は、転送待ち行列５２６の一例を示すブロック図である。図示したように、転送待ち行列５２６は、オブジェクト２１０に対する取り出し要求３２４を行ったクライアント５２０に関する情報を含んでいない、あるいは複数のクライアント５２０を含んでいること場合がある。なお、上記オブジェクト２１０は、転送待ち行列５２６に関連付けられているオブジェクトである。
【０１３９】
また、既に説明したようにサーバ３２２は、転送待ち行列３２６と関連付けられているオブジェクト２１０を、転送待ち行列５２６にある各クライアント５２０に伝送するように構成されている。しかし、サーバ３２２がオブジェクト２１０を一度に伝送できるクライアント５２０は１つだけである。
【０１４０】
ところで、図５に示すように、各クライアント５２０は、序列５３０によって関連付けられている。このため、サーバ３２２が、オブジェクト２１０を一度に伝送できるクライアント５２０が１つだけである場合、サーバ３２２は、通常オブジェクト２１０を受信するクライアント５２０として、序列５３０の最高位にあるクライアント５２０を選択する。
【０１４１】
なお、この序列５３０は、いくつかの判断基準に基づかれて決定される。つまり、クライアント３２０の序列５３０を決定するために考慮される要素としては、クライアント３２０が、オブジェクト２１０に関してサーバ３２２としての役割を果たせるかどうか、サーバ３２２とクライアント５２０との間の通信チャンネル１０４の特性、クライアント５２０に、オブジェクト２１０の一部が既に伝送されているかどうか、オブジェクト２１０の伝送３２８を完了するまでに必要とされる推定の期間、クライアント５２０の有する通信能力などが挙げられる。
【０１４２】
次に、図６は、サーバ６２２の一例を示すブロック図である。図示したように、サーバ６２２は、複数のオブジェクト６１０を含んでいる。このような一例では、各オブジェクト６１０が、転送待ち行列６２６と関連付けられている。
【０１４３】
クライアント３２０は、サーバ６２２に格納されているいずれかのオブジェクト６１０についての取り出し要求３２４を行う。なお、サーバ６２２が一度に１つだけのオブジェクト６１０だけを伝送可能とする場合は、取り出し要求３２４の最も多いオブジェクト６１０が優先される。
【０１４４】
図７〜図１９は、図１に示すようなシステム１００でのオブジェクト７１０を配信する方法の一例を示す図である。なお、ここでは、システム１００が装置Ａ７０２ａから装置Ｈ７０２ｈまでの８つの装置７０２によって構成されている。
【０１４５】
このシステム１００における各装置７０２は、ほとんどが配信されるオブジェクト７１０のサーバ３２２およびクライアント３２０として機能できるものである。しかしながら、装置Ｂ７０２ｂだけは、クライアント３２０としてのみしか機能しないものである。
【０１４６】
また、このシステム１００における異なる装置７０２間での通信速度は、概してほぼ同じ速度である。しかしながら、以下のような例外がある。すなわち、装置Ａ７０２ａと装置Ｇ７０２ｇとの間の通信速度は、装置Ｄ７０２ｄと装置Ｇ７０２ｇとの間の通信速度よりも速い。さらに、装置Ｃ７０２ｃと、システム１００におけるその他の装置７０２との間の通信速度は、システム１００におけるその他の装置７０２間での通信速度よりも遅い。
【０１４７】
また、図７に示すように、オブジェクト７１０は、装置Ａ７０２ａにおいて利用できるようになっている。したがって、装置Ａ７０２ａは、オブジェクト７１０のサーバ３２２となる。ここで、装置Ａ７０２ａでは、転送待ち行列７２６がこのオブジェクト７１０用に生成され、そして、この装置Ａ７０２ａに格納される。次に、装置Ｂ７０２ｂが、装置Ａ２０２ａからオブジェクト７１０を取り出すために、取り出し要求７２４を行う。
【０１４８】
装置Ａ７０２ａが装置Ｂ７０２ｂからの取り出し要求７２４を受信すると、装置Ｂ７０２ｂに関する情報がオブジェクト７１０の転送待ち行列７２６に加えられる。ここで、図８に示すように、装置Ｂ７０２ｂは、転送待ち行列７２６にある唯一の装置７０２であるため、装置Ａ７０２ａは、装置Ｂ７０２ｂに対してオブジェクト７１０の伝送７２８を開始する。
【０１４９】
次に、図９に示すように、装置Ｃ７０２ｃが装置Ａ７０２ａからオブジェクト７１０を取り出すために、取り出し要求７２４を行う。この装置Ｃ７０２ｃの取り出し要求は、装置Ａ７０２ａが装置Ｂ７０２ｂに対してオブジェクト７１０の伝送７２８を継続している間に行われる。
【０１５０】
そして、装置Ａ７０２ａは、装置Ｃ７０２ｃから取り出し要求７２４を受信し、図１０に示すように、装置Ｃ７０２ｃが転送待ち行列７２６に加えられる。なお、装置Ｃ７０２ｃは、サーバ３２２として機能できるが、一方、装置Ｂ７０２ｂはクライアント３２０としてのみしか機能しないため、装置Ｃ７０２ｃは転送待ち行列７２６において、装置Ｂ７０２ｂよりもオブジェクト７１０を伝送する優先順位が上に序列される。なお、図１０において、転送待ち行列７２６では、優先順位が高い装置の順にその装置名を上から示している。これ以降の図面においても、転送待ち行列７２６では優先順位の高い装置の順で上から装置名を示すものとする。そして、この装置Ｃ７０２ｃは、現在、転送待ち行列７２６においてオブジェクト７１０を伝送する優先順位が一位に序列されているため、装置Ａ７０２ａは、装置Ｂ７０２ｂへのオブジェクト７１０の伝送７２８を停止し、装置Ｃ７０２ｃへのオブジェクト７１０の伝送７２８を開始する。
【０１５１】
また次に、図１１に示すように、装置Ｄ７０２ｄ、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆそれぞれは、装置Ａ７０２ａからオブジェクト７１０を取り出すために、取り出し要求７２４を行う。装置Ｄ７０２ｄ、装置Ｅ７０２ｅ、および装置Ｆ７０２ｆそれぞれからのこの取り出し要求は、装置Ａ７０２ａが、装置Ｃ７０２ｃに対するオブジェクト７１０の伝送７２８を継続している間に行われる。なお、装置Ｄ７０２ｄは、装置Ｅ７０２ｅが取り出し要求７２４を行うより以前に、その取り出し要求７２４を行っている。また、装置Ｅ７０２ｅは、装置Ｆ７０２ｆが取り出し要求７２４を行うより以前に、その取り出し要求７２４を行っている。
【０１５２】
このように装置Ａ７０２ａが、装置Ｄ７０２ｄ、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆから、取り出し要求７２４を受信すると、装置Ｄ７０２ｄ、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆそれぞれに関する情報は、図１２に示すように、転送待ち行列７２６に加えられる。そして、装置７０２と装置Ａ７０２ａとの間の通信速度が、装置Ｃ７０２ｃと装置Ａ７０２ａとの間の通信速度よりも速いため、これら装置Ｄ７０２ｄ、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆは、それぞれ、転送待ち行列７２６において装置Ｃ７０２ｃよりも上に序列されている。また、装置Ｄ７０２ｄは、転送待ち行列７２６において、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆよりも上に序列されている。なぜなら、装置Ｄ７０２ｄは、装置Ｅ７０２ｅおよび装置７０２ｆが取り出し要求７２４を行うより以前に、この取り出し要求７２４を行っていたからである。同じく、装置Ｅ７０２ｅは、転送待ち行列７２６において、装置Ｆ７０２ｆよりも上に序列されている。つまり、装置Ｅ７０２ｅは、装置Ｆ７９２ｆが取り出し要求７２４を行う前に、その取り出し要求７２４を行っていたからである。このように、この場合では装置Ｄ７０２ｄは、転送待ち行列７２６の一位に序列されるため、装置Ａ７０２ａは、装置Ｃ７０２ｃに対するオブジェクト７１０の伝送７２８を停止し、装置Ｄ７０２ｄに対するオブジェクト７１０の伝送７２８を開始する。
【０１５３】
そして、装置Ａ７０２ａは、装置Ｄ７０２ｄに対するオブジェクト７１０の伝送７２８を完了させる。また一方、オブジェクト７１０の転送待ち行列７２６が、装置Ａ７０２ａから装置Ｄ７０２ｄに伝送される。そして次に、装置Ｄ７０２ｄが、オブジェクト７１０のサーバ３２２となる。それから、装置Ａ７０１ａと装置Ｄ７０１ｄとは、転送待ち行列７２６における装置７０２の分配について相互に連絡を取る。ここで、装置Ａ７０２ａと装置Ｄ７０２ｄとは、転送待ち行列７２６の各装置７０２に対して、データを伝送する能力が同じであるため、転送待ち行列７２６のこの装置７０２が、装置Ａ７０２ａと装置Ｄ７０２ｄとの間でほぼ同数に分配される。このため、例えば装置Ｃ７０２ｃと装置Ｂ７０２ｂとは、装置Ａ７０２ａに格納されている転送待ち行列７２６から削除されるが、装置Ｄ７０２ｄに格納されている転送待ち行列７２６には残っている。また同様に、装置Ｅ７０２ｅと装置Ｆ７０２ｆとは、装置Ｄ７０２ｄに格納されている転送待ち行列７２６から削除されるが、装置Ａ７０２ａに格納されている転送待ち行列７２６には残っている。次に、図７（Ｇ）は、上記したこの処理が完了した後の装置Ａ７０２ａおよび装置Ｄ７０２ｄを示す図である。ここで装置Ｅ７０２ｅが装置Ａ７０２ａに格納されている転送待ち行列７２６の一位に序列されているため、装置Ａ７０２ａは、装置Ｅ７０２ｅに対してオブジェクト７１０の伝送７２８を開始する。また、装置Ｃ７０２ｃが装置Ｄ７０２ｄに格納されている転送待ち行列７２６の一位に序列されているため、装置Ｄ７０２ｄは、装置Ａ７０２ａにより先に部分的にオブジェクト７１０の伝送が完了した、装置Ｃ７０２ｃに対してオブジェクト７１０の伝送７２８を継続する。
【０１５４】
それから、装置Ｇ７０２ｇが、装置Ａ７０２ａおよび装置Ｄ７０２ｄにあるオブジェクト７１０を見つける。ここで、装置Ｇ７０２ｇは、装置Ａ７０２ａおよび装置Ｄ７０２ｄを、通信能力と通信速度とに基づいて序列する。なお、装置Ａ７０２ａと装置Ｄ７０２ｄとの双方は、他の装置７０２へのオブジェクト７１０の伝送を現在行っているため、容量に関してはこの序列の決定に影響しないものとする。したがって、装置Ａ７０２ａと装置Ｇ７０２ｇとの間の通信速度は、装置Ｄ７０２ｄと装置Ｇ７０２ｇとの間の通信速度よりも速いため、装置Ａ７０２ａは、装置Ｄ７０２ｄよりも上に序列されることとなる。これにより、装置Ｇ７０２ｇは、まず、装置Ａ７０２ａに対して取り出し要求７２４を行う。この取り出し要求７２４は、装置Ａ７０２ａが、装置Ｅ７０２ｅに対してオブジェクト７１０の伝送を継続している間に行われている。そして次に、装置Ｇ７０２ｇが、装置Ｄ７０２ｄに対して取り出し要求７２４を行う。この取り出し要求７２４も、装置Ｄ７０２ｄが、装置Ｃ７０２ｃに対してオブジェクト７１０の伝送を継続している間に行われている。図７（Ｈ）では、装置Ａ７０２ａと装置Ｄ７０２ｄとの双方に対して取り出し要請７２４を行っている装置Ｇ７０２ｇを示している。
【０１５５】
次に、装置Ａ７０２ａは、装置Ｇ７０２ｇから取り出し要求７２４を受信すると、装置Ｇ７０２ｇが装置Ａ７０２ａに格納されている転送待ち行列７２６に加えられる。装置Ｇ７０２ｇは、装置Ａ７０２ａに格納されている転送待ち行列７２６において、装置Ｅ７０２ｅ，装置Ｆ７０２ｆの後に序列される。なぜならば、装置Ｅ７０２ｅおよび装置Ｆ７０２ｆは、装置Ｇ７０２ｇがオブジェクト７１０の取り出し要求７２４を行うより前に、オブジェクト７１０の取り出し要求７２４を行っているからである。さらに、装置Ｄ７０２ｄもまた、装置Ｇ７０２ｇからの取り出し要求７２４を受信すると、装置Ｇ７０２ｇが、装置Ｄ７０２ｄに格納されている転送待ち行列７２６に加えられる。装置Ｇ７０２ｇは、装置Ｄ７０２ｄに格納されている転送待ち行列７２６において、一位に序列される。すなわち、装置Ｇ７０２ｇは、装置Ｄ７０２ｄと装置Ｇ７０２ｇとの間の通信速度が装置Ｄ７０２ｄと装置Ｃ７０２ｃとの間の通信速度よりも速いため、装置Ｃ７０２ｃの前に序列される。また、装置Ｇ７０２ｇはサーバ３２２として機能できるが、一方、装置Ｂ７０２ｂは、クライアント３２０としてのみ機能できるため、装置Ｇ７０２ｇは、装置Ｂ７０２ｂよりも上に序列される。このように、装置Ｇ７０２ｇが装置Ｄ７０２ｄに格納されている転送待ち行列７２６において、一位に序列されているため、装置Ｄ７０２ｄは、装置Ｃ７０２ｃへのオブジェクト７１０の伝送７２８を停止し、図７（Ｉ）に示すように、装置Ｇ７０２ｇへのオブジェクト７１０の伝送７２８を開始する。
【０１５６】
次に、装置Ａ７０２ａが、装置Ｅ７０２ｅに対するオブジェクト７１０の伝送７２８を完了すると、装置Ａ７０２ａに格納されている転送待ち行列７２６もまた、装置Ｅ７０２ｅに対して伝送される。このため、装置Ｅ７０２ｅは、オブジェクト７１０のサーバ３２２となる。そして、装置Ａ７０２ａと装置Ｅ７０２ｅとは、転送待ち行列７２６における装置７０２を分配する。装置Ａ７０２ａと装置Ｅ７０２ｅとは、転送待ち行列７２６にある各装置７０２に対して、データを伝送できる能力がほぼ同じであるため、転送待ち行列７２６における装置７０２は、装置Ａ７０２ａと装置Ｅ７０２ｅとの間で、ほぼ同数に分配される。つまり、例えば装置Ｇ７０２ｇが、装置Ａ７０２ａに格納されている転送待ち行列７２６から削除されるが、一方、装置Ｅ７０２ｅに格納されている転送待ち行列７２６には残っている。同様に、装置Ｆ７０２ｆが、装置Ｅ７０２ｅに格納されている転送待ち行列７２６からは削除されるが、一方、装置Ａ７０２ａに格納されている転送待ち行列７２６には残っている。図７（Ｊ）は、この処理が完了した後の装置Ａ７０２ａおよび装置Ｅ７０２ｅを示す図である。ここで、図７（Ｊ）に示すように、装置Ｆ７０２ｆは、装置Ａ７０２ａに格納されている転送待ち行列７２６に現在ある唯一つの装置７０２であるため、装置Ａ７０２ａは、装置Ｆ７０２ｆに対するオブジェクト７１０の伝送７２８を開始する。また、装置Ｇ７０２ｇは、装置Ｅ７０２ｅに格納されている転送待ち行列７２６にある唯１つの装置７０２であるため、装置Ｅ７０２ｅは、装置Ｇ７０２ｇに対してオブジェクト７１０の伝送７２８を開始する。このため、装置Ｄ７０２ｄは、装置Ｇ７０２ｇに対するオブジェクト７１０の伝送７２８を中止し、装置Ｇ７０２ｇを装置Ｄ７０２ｄに格納されている転送待ち行列７２６から削除する。ここで装置Ｃ７０２ｃが、装置Ｄ７０２ｄに格納されている転送待ち行列７２６において、一位に序列されているため、装置７０２ｄは、装置Ｃ７０２ｃに対するオブジェクト７１０の伝送７２８を継続する。既に説明したように、装置Ｃ７０２ｃは、装置Ａ７０２ａからオブジェクト７１０の一部を先に受信しており、オブジェクト７１０の残りの部分を装置Ｄ７０２ｄから受信することになる。なお、この場合、装置Ｄ７０２ｄは、以前に、オブジェクト７１０の伝送を停止した時点から伝送７２８を簡単に継続できる。
【０１５７】
装置Ｄ７０２ｄが、装置Ｃ７０２ｃに対してオブジェクト７１０の伝送７２８を完了する際、装置Ｄ７０２ｄに格納されている転送待ち行列７２６もまた、装置Ｃ７０２ｃに対して伝送される。そして、装置Ｃ７０２ｃが、オブジェクト７１０のサーバ３２２となる。それから、装置Ｄ７０２ｄと装置Ｃ７０２ｃとは、転送待ち行列７２６に装置７０２を分配することについて、相互に連絡をとる。ここで、装置Ｄ７０２ｄと装置Ｃ７０２ｃとは、装置Ｂ７０３ｂ（転送待ち行列７２６における唯一つの装置７０２）に対してデータを伝送する能力がほぼ同じであるため、装置Ｄ７０２ｄが、任意に選択される。従って、装置Ｂ７０２ｂは、装置Ｃ７０２ｃに格納されている転送待ち行列７２６からは削除されるが、装置Ｄ７０２ｄに格納されている転送待ち行列７２６には残っている。装置Ｃ７０２ｃに格納されている転送待ち行列７２６は、このとき、空きとなる。図７（Ｋ）は、この処理が完了した後の装置Ｃ７０２ｃと装置Ｄ７０２ｄとを示す図である。
【０１５８】
次に、装置Ｈ７０２ｈが、オブジェクト７１０を、装置Ａ７０２ａ、装置Ｅ７０２ｅ、装置Ｄ７０２ｄ、および装置Ｃ７０２ｃから見つける。そして、ここでは装置Ｃ７０２ｃが、装置Ｈ７０２ｈに対してオブジェクト７１０の伝送７２８をすぐに開始できるため、装置Ｈ７０２ｈは、装置Ｃ７０２ｃに対して取り出し要求７２４を行う。図７（Ｋ）では、装置Ｃ７０２ｃに対して取り出し要求７２４を行っている装置Ｈ７０２ｈを示している。
【０１５９】
装置Ｃ７０２ｃが装置Ｈ７０２ｈからの取り出し要求７２４を受信すると、装置Ｈ７０２ｈは、装置Ｃ７０２ｃに格納されている転送待ち行列７２６に加えられる。次に、装置Ｃ７０２ｃは、装置Ｈ７０２ｈに対してオブジェクト７１０の伝送７２８を開始する。なぜならば、ここでは装置Ｈ７０２ｈが、装置Ｃ７０２ｃに格納されている転送待ち行列７２６における唯１つの装置７０２となるからである。図７（Ｌ）では、装置Ｈ７０２ｈに対するオブジェクト７１０の伝送７２８を開始している装置Ｃ７０２ｃを示している。
【０１６０】
図７（Ｍ）に記載のように、装置Ａ７０２ａは、装置Ｆ７０２ｆに対してオブジェクト７１０の伝送７２８を完了しており、装置Ｅ７０２ｅは、装置Ｇ７０２ｇに対してオブジェクト７１０の伝送７２８を完了している。また、装置Ｄ７０２ｄは、装置Ｂ７０２ｂに対するオブジェクト７１０の伝送７２８を完了しており（この伝送７２８は、上記したように、装置Ａ７０２ａによって部分的に完了していた）、装置Ｃ７０２ｃは、装置Ｈ７０２ｈに対してオブジェクト７１０の伝送７２８を完了している。その結果、装置Ａ７０２ａ、装置Ｇ７０２ｇ、装置Ｄ７０２ｄ、装置Ｃ７０２ｃに格納されている転送待ち行列７２６が空きになる。装置Ａ７０２ａに格納されている空きの転送待ち行列７２６は、装置Ａ７０２ａから装置Ｆ７０２ｆに伝送され、装置Ｅ７０２ｅに格納されている空きの転送待ち行列７２６は、装置Ｅ７０２ｅから装置Ｇ７０２ｇに伝送され、そして、装置Ｃ７０２ｃに格納されている空きの転送待ち行列７２６は、装置Ｃ７０２ｃから装置Ｈ７０２ｈに伝送される。このため、装置Ｆ７０２ｆ、装置Ｇ７０２ｇ、装置Ｈ７０２ｈは、オブジェクト７１０のサーバ３２２となる。しかし、この時点で、システム１００における各装置７０２が、オブジェクト７１０を既に受信してしまっているため、伝送７２８はこれ以上行われない。
【０１６１】
図８は、通信システム１００でのオブジェクト２１０を配信するオブジェクト配信方法８００の一例を説明するフローチャートである。このオブジェクト配信方法８００は、クライアント３２０が、サーバ３２２に対してオブジェクト２１０の取り出し要求３２４を行うステップ（ステップＳ８０２、以下Ｓ８０２のように称する）から始まる。すなわち、クライアント３２０がサーバに対してオブジェクト２１０の取り出し要求３２４を行うと、次に、クライアント３２０は、オブジェクト２１０を、サーバ３２２から受信する（Ｓ８０４）。そして、クライアント３２０は、転送待ち行列４３６を、サーバ３２２から受信する（Ｓ８０６）。
【０１６２】
さらに、このオブジェクト配信方法８００では、サーバ３２２が転送待ち行列３２６において最上位に序列されているクライアント３２０を選択し（Ｓ８０８）、ステップＳ８０８において選択されたクライアント３２０に対して、オブジェクト２１０を伝送するステップ（Ｓ８１０）を含んでいる。次に、このサーバ３２２は、上記クライアント３２０を、転送待ち行列３２６から削除する（Ｓ８１２）。それから、この転送待ち行列３２６を、上記クライアント３２０に対して伝送する（Ｓ８１４）。さらに、このオブジェクト配信方法８００では、転送待ち行列３２６を分配することについて、サーバ３２２が上記クライアント３２０と相互に連絡しあうステップ（Ｓ８１６）を含んでいる。
【０１６３】
また、図９は、電子装置９０２において一般的に使用されているハードウエアの主要な構成要素を示すブロック図である。電子装置９０２は、概して、入力構成要素すなわち入力部９０４、および／または、出力構成要素すなわち出力部９０６と電子通信しているプロセッサ９０３を備えている。このプロセッサ９０３は、プロセッサ９０３と電子通信可能な入力部９０４および／または出力部９０６を動作可能とするように接続されている。すなわち、これらの部材は、電気的な信号方式で入力および／または出力可能となっている。なお、装置９０２の一例では、入力部９０４、出力部９０６、およびプロセッサ９０３が、同じ物理的構造内、または別々の筐体内あるいは構造内に備えていてもよい。
【０１６４】
さらに、電子装置９０２は、メモリ９０８を備えている。メモリ９０８は、プロセッサ９０３とは別に設けられていてもよく、あるいは、プロセッサ９０３として同じ部分に備えられているオンボードメモリ９０８でもよい。例えば、マイクロコントローラは、大抵、一定容量のオンボードメモリを備えている。
【０１６５】
また、上記プロセッサ９０３は、通信インターフェース９１０と電子通信を確立している。この通信インターフェース９１０は、他の装置９０２と通信するために用いることができるものである。このため、様々な電子装置９０２の通信インターフェース９１０は、それぞれの電子装置９０２の間で相互に通信をして、信号またはメッセージを送信するように設計されている。
【０１６６】
また、本実施形態に係る電子装置のプロセッサ９０３は、例えばＣＰＵ（Central Processing Unit）が、上記サーバ３２２に対してオブジェクト２１０の取り出し要求を行うステップ、オブジェクト２１０を、サーバ３２２から受信するステップ、転送待ち行列４３６をサーバ３２２から受信するステップなどの各ステップにおける処理動作を実現するためのプログラムを実行することによって実現することができる。
【０１６７】
また、これらのプログラムは、例えばハードディスクなどの読み書き可能な不揮発性記録媒体に記憶されており、必要時にプロセッサ９０３が備えるＲＡＭなどのメモリ９０８に読み出されてＣＰＵによって実行されることになる。
【０１６８】
また、各種リムーバブルメディアに上記プログラムが記憶されており、必要時にこのリムーバブルメディアからプログラムが読み出されることによって実行される形態でもよい。
また、上記プログラムは、通信ネットワークを介して外部からダウンロードされて実行されるようになっていてもよい。
【０１６９】
また、上記電子装置９０２は、さらに他の通信ポート９１２を備えていてもよい。さらにまた、上記電子装置９０２は、他の部品９１４を備えた構成であってもよい。
【０１７０】
当然、当業者は、明細書の実施例に用いた様々な装置には複数の種類があることを理解している。それゆえ、図９のブロック図は、単に、電子装置９０２の一般的な構成要素を示すものであって、明細書に開示する実施例の範囲を制限するものではない。
【０１７１】
この明細書に記載した実施形態にかかるアプリケーションの一例としては、Ｂｌｕｅｔｏｏｔｈの規格や、Ｂｌｕｅｔｏｏｔｈに関する関連パーソナルエリアネットワーク（ＰＡＮ）技術を有するものがあげられる。このＢｌｕｅｔｏｏｔｈの規格はＢｌｕｅｔｏｏｔｈシステムの仕様書に記載されていおり、この明細書はその内容を含むものである。また、当然、当業者には、この明細書にて開示した実施例と発明の本質とがパーソナルエリアネットワーク技術および／またはＢｌｕｅｔｏｏｔｈによるネットワークに制限されるものではないことが明らかである。すなわち、この明細書の本発明の本質は、相互に通信する電子装置１０２を含む様々な種類の通信システムに適用できる。
【０１７２】
本発明に関する特定の実施例および適用について図示および記載してきたが、本発明が、この明細書において開示した構成および構成部材に厳密に制限されるものではない。本発明の精神および範囲に反することなく、この明細書にて開示した本発明の方法とシステムとの配置、操作、および細部において、当業者にとって認められる様々な修正、変更、および変形がなされ得る。
【産業上の利用可能性】
【０１７３】
電子装置による通信の効率を向上させることができるため、携帯電話、ＰＤＡ、デジタルカメラ、ＭＤ（mini disc）プレーヤ、腕時計等のモバイル端末を相互に接続してワイヤレスネットワーク化をする用途にも適用できる。
【図面の簡単な説明】
【０１７４】
【図１】本発明の実施形態に係る通信システムを示す図である。
【図２】通信システムにおけるオブジェクトを配信する方法の一例を示す図である。
【図３】同図（ａ）〜（ｃ）は、クライアントとサーバとの間で可能ないくつかのやりとりを示す図である。
【図４】同図（ａ）〜（ｂ）は、転送待ち行列における装置に関する情報を、クライアントとサーバとの間で分割する方法の一例を示す図である。
【図５】本発明の実施の形態に係る転送待ち行列の一例を示すブロック図である。
【図６】本発明の実施の形態に係るサーバの一例を示すブロック図である。
【図７】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図８】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図９】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１０】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１１】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１２】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１３】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１４】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１５】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１６】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１７】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１８】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図１９】通信システムにおけるオブジェクトを配信する方法の実施例を示す図である。
【図２０】通信システムにおけるオブジェクトを配信する方法の実施例を示すフローチャートである。
【図２１】電子装置において一般的に使用されている主要なハードウエア構成部材を示すブロック図である。
【符号の説明】
【０１７５】
３１０    オブジェクト
３２０    クライアント
３２２    サーバ
３２４    取り出し要求
３２６    転送待ち行列
３２８    伝送
５３０    序列
９０２    電子装置
９０３    プロセッサ
９０８    メモリ
【図１】
2004194332.tif 000003
【図２】
2004194332.tif 000004
【図３】
2004194332.tif 000005
【図４】
2004194332.tif 000006
【図５】
2004194332.tif 000007
【図６】
2004194332.tif 000008
【図７】
2004194332.tif 000009
【図８】
2004194332.tif 000010
【図９】
2004194332.tif 000011
【図１０】
2004194332.tif 000012
【図１１】
2004194332.tif 000013
【図１２】
2004194332.tif 000014
【図１３】
2004194332.tif 000015
【図１４】
2004194332.tif 000016
【図１５】
2004194332.tif 000017
【図１６】
2004194332.tif 000018
【図１７】
2004194332.tif 000019
【図１８】
2004194332.tif 000020
【図１９】
2004194332.tif 000021
【図２０】
2004194332.tif 000022
【図２１】
2004194332.tif 000023