| 【発明の名称】 |
ファイル転送装置およびファイル転送方法および記録媒体 |
| 【発明者】 |
【氏名】岡 順一
【氏名】川島 正久
【氏名】秋葉 淳哉
【氏名】安部 剛
|
| 【要約】 |
【課題】利用者が転送ファイルに対して要求する転送品質を反映した転送ファイルの受け付けおよび決定を行なう。
【解決手段】発信装置からの転送すベきファイルのサイズを含む発信ファイル情報と、転送待ち合わせテーブルに記述されている既に受け付けた転送ファイルのファイルサイズを含むファイル情報とを元に、転送ファイルが当該転送ファイルに要求されている転送品質で搬送可能であるかを判断する。転送ファイルを受け付けた時刻、もしくは待ち合わせ時刻を当該ファイルの待ち時間情報として転送待ち合わせテーブルに記述することとし、転送ファイルに要求されている転送品質と待ち時間情報を元に当該転送ファイルの優先度を算出する。 |
【特許請求の範囲】
【請求項1】 着信装置宛てに転送するファイルを発信する発信装置と、当該ファイル転送を中継する中継装置と、当該ファイルを受信する着信装置とを備えたファイル転送装置において、前記発信装置は、転送すべきファイルのサイズを含む発信ファイル情報を前記中継装置に対して送信して前記中継装置から当該ファイル転送の可否を含む応答を受信するファイル発信要求手段と、許可されたファイル転送の転送すべきファイルのデータを前記中継装置へ送信する発信ファイル送信手段とを備え、前記中継装置は、既に受け付けたファイル転送それぞれについて当該ファイル転送の転送ファイルサイズを含む発信ファイル情報を記憶する転送待ちファイルテーブルと、既に受け付けたファイル転送の転送すべきファイルのデータを蓄積するファイル蓄積手段と、前記発信装置から前記発信ファイル情報を受信するファイル発信受付手段と、前記転送待ちファイルテーブルに記憶されている転送ファイル情報と前記発信ファイル情報に含まれている転送すべきファイルのサイズとに基づき当該発信ファイル情報が示すファイル転送の可否を決定する受付判断手段と、前記受付判断手段がファイル転送の可否を可と決定した場合に当該発信ファイル情報が示すファイル転送を前記転送待ちファイルテーブルに登録する受付ファイル登録手段と、前記発信装置から転送すべきファイルのデータを受信して前記ファイル蓄積手段に保存する発信ファイル受信手段と、前記転送待ちファイルテーブルに記憶されている転送ファイル情報を参照して転送すべきファイルを決定する転送ファイル決定手段と、前記転送ファイル決定手段によって決定された転送すべきファイルのデータを前記ファイル蓄積手段から取得して前記着信装置または他の中継装置へ転送するファイル転送手段と、前記ファイル転送手段により転送が終了したファイル転送に基づき前記転送待ちファイルテーブルを更新する転送終了ファイル更新手段とを備え、前記中継装置の前記ファイル発信受付手段は前記受付判断手段によるファイル転送の可否判断を含む応答を当該発信ファイル情報を送信した前記発信装置に送信する手段を含むことを特徴としたファイル転送装置。 【請求項2】 あるファイル転送の受け付け時刻または待ち時間を当該ファイル転送の待ち時間情報とし、前記中継装置は、あるファイルに要求されている品質クラスと当該ファイルの前記待ち時間情報とを入力として当該ファイル転送の優先度を算出する優先度算出手段を備え、前記発信ファイル情報は当該ファイル転送の品質クラスを含み、前記転送待ちファイルテーブルに記憶されている各ファイルの発信ファイル情報には、当該ファイルのファイル転送の品質クラスと当該ファイル転送の待ち時間情報とを含み、前記受付判断手段は、前記発信ファイル情報が示す転送ファイルに対する第一の優先度を前記優先度算出手段により算出する手段と、前記発信ファイル情報のうち前記優先度算出手段により算出される優先度が前記第一の優先度以上であるファイル転送について転送ファイルサイズの総和を算出する手段と、前記転送ファイルサイズの総和と前記発信ファイル情報が示す転送すべきファイルのサイズとの和を用いて前記ファイル転送の可否を決定する手段とを含み、前記転送ファイル決定手段は、前記優先度算出手段によって算出される優先度に基づき転送すべきファイルを決定する手段を含む請求項1記載のファイル転送装置。 【請求項3】 前記受付ファイル登録手段は、転送ファイルの発信ファイル情報を前記転送持ちファイルテーブルに登録する際に、あらかじめ決定されている閾値以上のファイルサイズを持つ転送ファイルに関しては前記閾値を用いて当該転送ファイルサイズを分割し、複数個に分割した転送ファイルを各々転送ブロックとして定義し、前記転送ブロックを転送するファイルとみなし、前記転送ブロック情報を発信ファイル情報として前記転送待ちファイルテーブルに登録する手段を含む請求項1記載のファイル転送装置。 【請求項4】 前記中継装置は、前記転送持ちファイルテーブルを参照して自拠点に蓄積されている転送ファイルのファイルサイズの総和がある閾値を越えているかどうかを判断する手段と、他の装置に対して前記判断結果を自拠点の混雑状態として送信する手段と、他の装置から他の装置の混雑状態を受信する手段と、他の装置の混雑状態を表す転送状況テーブルを保持して当該転送状況テーブルに基づき他の装置の混雑状態を登録する手段と、転送すべき転送ファイルの決定の際に前記転送状態テーブルに基づき他の装置の混雑状態が輻輳である場合には当該装置向けへのファイル転送を転送すべき転送ファイルの候補から除外する手段と、他の装置から転送されてきた転送ファイルを受信する折に自拠点の蓄積容量が足りないため受信不可能である場合には前記転送ファイルを転送してきた装置に対して自拠点の混雑状態を通知する手段と、他の装置に対して転送した転送ファイルが他の装置が輻輳状態であるため転送されず他の装置の混雑状態が返却されて来た場合には前記他の装置の混雑状態を前記転送状況テーブルに登録する手段とを含む請求項1記載のファイル転送装置。 【請求項5】 全ての装置の混雑状況を管理する手段を備えた輻輳管理装置が設けられ、前記混雑状況を管理する手段は、ある装置から当該装置の混雑状態を受信する手段と、ある装置向けの転送ファイルおよびファイルサイズを前記装置以外の装置に対して問い合わせる手段と、前記問い合わせ結果に基づき前記装置以外の装置に対して前記装置向けの転送を許可する時間帯を算出する手段と、前記算出結果を前記装置以外の装置に送信する手段とを含む請求項1記載のファイル転送装置。 【請求項6】 前記中継装置は、前記輻輳管理装置から指定された他の装置向けの転送ファイルのファイルサイズの総和を算出する手段と、この算出結果および当該転送ファイルのファイルサイズの総和がある閾値を超えているかどうかの判断結果を前記輻輳管理装置に対して送信する手段と、前記輻輳管理装置から他の装置の混雑状況および指定された装置への通信を許可された時間帯を受信する手段と、前記他の装置の混雑状況と許可された時間帯を要素とする転送状況テーブルを保持して当該転送状況テーブルに他の装置の輻輳状態を記録する手段とを備えた請求項5記載のファイル転送装置。 【請求項7】 前記中継装置は、ファイル蓄積および転送を担う部分と、転送ファイル受け付けおよび決定を担う部分とから構成され、前記ファイル蓄積および転送を担う部分は、前記ファイル蓄積手段と、前記ファイル発信受付手段と、前記発信ファイル受信手段と、前記ファイル転送手段と、前記発信装置からファイルサイズを含む発信ファイル情報を前記ファイル受け付けおよび決定を担う部分に送信する手段と、前記転送ファイル受け付けおよび決定を担う部分の前記受付判断手段によって決定された転送すべきファイルを示すファイル情報およびファイル転送の可否判断の結果を受信する手段と、前記可否判断の結果を含む応答を前記発信装置に送信する手段とを備え、前記ファイル転送手段は、前記転送すべきファイルを示すファイル情報を受信する手段で得られたファイルを前記着信装置または他の前記中継装置に転送するファイル転送手段を含み、前記転送ファイル受け付けおよび決定を担う部分は、前記転送待ちファイルテーブルと、前記ファイル蓄積および転送を担う部分からファイルサイズを含む発信ファイル情報を受信する手段と、前記発信ファイル情報に基き当該ファイルを受け付けるか否かを判断する受付判断手段と、前記受付ファイル登録手段と、前記転送ファイル決定手段と、前記転送終了ファイル更新手段と、前記転送ファイル決定手段により決定された転送すべきファイルを前記ファイル蓄積および転送を担う部分に対して指定する手段とを含む請求項1記載のファイル転送装置。 【請求項8】 前記転送待ちファイルテーブルの要素には転送ファイルの受け付け時間を含み、前記転送ファイル決定手段は、前記転送ファイル受け付け時間を元に前記待ち時間情報を算出する待ち時間情報算出手段を含む請求項2記載のファイル転送装置。 【請求項9】 前記転送待ちファイルテーブルの要素には転送ファイルの累積待ち時間を含み、前記転送ファイル決定手段は、前記転送ファイル累積待ち時間を元に前記待ち時間情報を算出する待ち時間情報算出手段を含む請求項2記載のファイル転送装置。 【請求項10】 前記ファイル転送手段は、転送すべきファイルの転送が終了した際に実際に転送を行なったファイルのサイズを含む転送完了通知を転送終了ファイル更新手段に送信する手段を含み、前記転送終了ファイル更新手段は、前記ファイルサイズに基づいて前記転送待ちテーブルを更新する手段を含む請求項1記載のファイル転送装置。 【請求項11】 前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送許可サイズを決定する手段を含む請求項1記載のファイル転送装置。 【請求項12】 前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送帯域を決定する手段を含む請求項1記載のファイル転送装置。 【請求項13】 前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送継続時間を決定する手段を含む請求項1記載のファイル転送装置。 【請求項14】 発信装置により発信された着信装置宛てのファイルを中継装置により中継して着信装置に転送するファイル転送方法において、前記発信装置は、転送すべきファイルのサイズを含む発信ファイル情報を前記中継装置に対して送信して前記中継装置から当該ファイル転送の可否を含む応答を受信し、許可されたファイル転送の転送すべきファイルのデータを前記中継装置へ送信し、前記中継装置は、既に受け付けたファイル転送それぞれについて当該ファイル転送の転送ファイルサイズを含む発信ファイル情報を転送待ちファイルテーブルに記憶し、既に受け付けたファイル転送の転送すべきファイルのデータを蓄積し、前記発信装置から前記発信ファイル情報を受信し、前記転送待ちファイルテーブルに記憶されている転送ファイル情報と前記発信ファイル情報に含まれている転送すべきファイルのサイズとに基づき当該発信ファイル情報が示すファイル転送の可否を決定し、このときにファイル転送の可否を可と決定した場合に当該発信ファイル情報が示すファイル転送を前記転送待ちファイルテーブルに登録し、前記ファイル発信装置から転送すべきファイルのデータを受信して保存し、前記転送待ちファイルテーブルに記憶されている転送ファイル情報を参照して転送すべきファイルを決定し、このときに決定された転送すべきファイルのデータを前記着信装置または他の中継装置へ転送し、転送が終了したファイル転送に基づき前記転送待ちファイルテーブルを更新し、前記中継装置はファイル転送の可否判断を含む応答を当該発信ファイル情報を送信した前記発信装置に送信することを特徴としたファイル転送方法。 【請求項15】 あるファイル転送の受け付け時刻または待ち時間を当該ファイル転送の待ち時間情報とし、前記中継装置は、あるファイルに要求されている品質クラスと当該ファイルの前記待ち時間情報とを入力として当該ファイル転送の優先度を算出し、前記発信ファイル情報は当該ファイル転送の品質クラスを含み、前記転送待ちファイルテーブルに記憶されている各ファイルの発信ファイル情報には、当該ファイルのファイル転送の品質クラスと当該ファイル転送の待ち時間情報とを含み、前記中継装置は、前記発信ファイル情報が示す転送ファイルに対する第一の優先度を算出し、前記発信ファイル情報のうち算出された優先度が前記第一の優先度以上であるファイル転送について転送ファイルサイズの総和を算出し、前記転送ファイルサイズの総和と前記発信ファイル情報が示す転送すべきファイルのサイズとの和を用いて前記ファイル転送の可否を決定し、算出された優先度に基づき転送すべきファイルを決定する請求項14記載のファイル転送方法。 【請求項16】 前記中継装置は、転送ファイルの発信ファイル情報を前記転送持ちファイルテーブルに登録する際に、あらかじめ決定されている閾値以上のファイルサイズを持つ転送ファイルに関しては前記閾値を用いて当該転送ファイルサイズを分割し、複数個に分割した転送ファイルを各々転送ブロックとして定義し、前記転送ブロックを転送するファイルとみなし、前記転送ブロック情報を発信ファイル情報として前記転送待ちファイルテーブルに登録する請求項14記載のファイル転送方法。 【請求項17】 前記中継装置は、前記転送持ちファイルテーブルを参照して自拠点に蓄積されている転送ファイルのファイルサイズの総和がある閾値を越えているかどうかを判断し、他の装置に対して前記判断結果を自拠点の混雑状態として送信し、他の装置から他の装置の混雑状態を受信し、他の装置の混雑状態を表す転送状況テーブルを保持して当該転送状況テーブルに基づき他の装置の混雑状態を登録し、転送すべき転送ファイルの決定の際に前記転送状態テーブルに基づき他の装置の混雑状態が輻輳である場合には当該装置向けへのファイル転送を転送すべき転送ファイルの候補から除外し、他の装置から転送されてきた転送ファイルを受信する折に自拠点の蓄積容量が足りないため受信不可能である場合には前記転送ファイルを転送してきた装置に対して自拠点の混雑状態を通知し、他の装置に対して転送した転送ファイルが他の装置が輻輳状態であるため転送されず他の装置の混雑状態が返却されて来た場合には前記他の装置の混雑状態を前記転送状況テーブルに登録する請求項14記載のファイル転送方法。 【請求項18】 全ての装置の混雑状況を一括管理する輻輳管理機能を設け、この輻輳管理機能により、ある装置から当該装置の混雑状態を受信し、ある装置向けの転送ファイルおよびファイルサイズを前記装置以外の装置に対して問い合わせ、前記問い合わせ結果に基づき前記装置以外の装置に対して前記装置向けの転送を許可する時間帯を算出し、前記算出結果を前記装置以外の装置に送信する請求項14記載のファイル転送方法。 【請求項19】 前記中継装置は、前記輻輳管理機能から指定された他の装置向けの転送ファイルのファイルサイズの総和を算出し、この算出結果および当該転送ファイルのファイルサイズの総和がある閾値を超えているかどうかの判断結果を前記輻輳管理機能に対して送信し、前記輻輳管理機能から他の装置の混雑状況および指定された装置への通信を許可された時間帯を受信し、前記他の装置の混雑状況と許可された時間帯を要素とする転送状況テーブルを保持して当該転送状況テーブルに他の装置の輻輳状態を記録する請求項18記載のファイル転送方法。 【請求項20】 前記中継装置の機能をファイル蓄積および転送を担う機能と転送ファイル受け付けおよび決定を担う機能とに分け、前記ファイル蓄積および転送を担う機能は、ファイル蓄積と、ファイル発信受け付けと、発信ファイル受信と、ファイル転送と、前記発信装置から到来するファイルサイズを含む発信ファイル情報の前記ファイル受け付けおよび決定を担う機能への送信と、前記転送ファイル受け付けおよび決定を担う機能の受け付け判断によって決定された転送すべきファイルを示すファイル情報およびファイル転送の可否判断の結果の受信と、前記可否判断の結果を含む応答の前記発信装置への送信とを行い、このファイル転送では、前記転送すべきファイルを示すファイル情報に基づき得られたファイルを前記着信装置または他の前記中継装置に転送し、前記転送ファイル受け付けおよび決定を担う機能は、前記ファイル蓄積および転送を担う機能から到来するファイルサイズを含む発信ファイル情報の受信と、前記発信ファイル情報に基き当該ファイルを受け付けるか否かの判断と、受け付けファイルの登録と、転送ファイルの決定と、前記転送待ちファイルテーブルの更新と、前記ファイル蓄積および転送を担う機能に対して決定された転送すべきファイルの指定とを行なう請求項14記載のファイル転送方法。 【請求項21】 前記転送待ちファイルテーブルの要素には転送ファイルの受け付け時間を含み、前記転送ファイル受け付け時間を元に前記待ち時間情報を算出する請求項15記載のファイル転送方法。 【請求項22】 前記転送待ちファイルテーブルの要素には転送ファイルの累積待ち時間を含み、前記転送ファイル累積待ち時間を元に前記待ち時間情報を算出する請求項15記載のファイル転送方法。 【請求項23】 転送すべきファイルの転送が終了した際に実際に転送を行なったファイルのサイズに基づいて前記転送待ちテーブルを更新する請求項14記載のファイル転送方法。 【請求項24】 転送すべきファイルの決定と共に転送すべきファイルに許可する転送許可サイズを決定する請求項14記載のファイル転送方法。 【請求項25】 転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送帯域を決定する請求項14記載のファイル転送方法。 【請求項26】 転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送継続時間を決定する請求項14記載のファイル転送方法。 【請求項27】 所定のハードウェアと、このハードウェアにインストールされた所定の基本ソフトウェアとを備えたコンピュータ装置に、さらにインストールすることによりそのコンピュータ装置を請求項1ないし13のいずれかに記載のファイル転送装置に相応する装置とするソフトウェアが記録された記録媒体。 【請求項28】 所定のハードウェアと、このハードウェアにインストールされた所定の基本ソフトウェアとを備えコンピュータ装置に、さらにインストールすることによりそのコンピュータ装置に請求項14ないし26のいずれかに記載のファイル転送方法を実行させるソフトウェアが記録された記録媒体。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、ファイル転送装置に関し、より詳細には、転送ファイルに付与された転送品質と各転送ファイルの待ち時間情報を元に転送優先度を算出し、前記転送優先度により転送すべきファイルを決定する装置に関する。 【0002】 【従来の技術】ネットワークを用いて、ある発信装置から着信装置へファイルを転送する装置をファイル転送装置と呼ぶ。従来のファイル転送装置の一実現形態として、発信装置から着信装置にファイルを転送する形態がある。別の実現形態として、FTP(File Transfer Protocol) サーバやHTTP(Hyper Text Transfer Protocol)サーバなどのファイルを蓄積し、端末からの要求に応じて蓄積されているファイルを端末に配信する共有サーバを設け、発信装置が共有サーバにファイルを蓄積し、着信装置が共有サーバからファイルを受信する形態がある。また、さらに別の実現形態として、E−mailのようにファイルが複数の中継装置間を経由しながら転送されていく形態がある。 【0003】(公知例1)ファイル転送を行なう従来技術としては、インターネットのメールシステムがある。 【0004】(公知例2)ファイルの送信者と受信者の双方がアクセス可能なFTPサーバやHTTPサーバなどの共有サーバを設け、ファイル転送を実現することが可能である。この場合には、送信者は、共有サーバにファイルを蓄積し、受信者は共有サーバに蓄積されている当該ファイルを受信する。 【0005】公知例1、公知例2の特徴を以下に整理する。 【0006】特徴1:公知例1、公知例2のどちらにおいても、ファイル転送を受け付けた順序にしたがい、転送を実行している。ある拠点に1台のファイル転送サーバが存在している場合には、当該ファイル転送サーバに蓄積されている転送ファイルが転送される順序は、当該転送ファイルが受け付けられた順序にしたがう。また、ある拠点に複数個のファイル転送サーバが存在する場合には、負荷分散を考慮して、ラウンドロビン方式や、リソース量を考慮したアルゴリズムに基づいて転送ファイルが蓄積されるファイル転送サーバが決定されることになるが、当該転送ファイルが転送される順序は、各々の転送サーバに受け付けられた順序にしたがう。 【0007】特徴2:公知例1、公知例2のどちらにおいても転送するファイルを受け付けるときに考慮しているのは、要求されている転送ファイルのサイズを転送サーバに蓄積可能であるか否かだけである。つまり、転送するファイルのファイルサイズが確保できない場合にのみ、当該ファイル転送要求が棄却される。 【0008】特徴3:公知例1、公知例2のどちらにおいても転送を制御する最小の単位は、転送ファイル単位である。つまり、転送ファイルのファイルサイズを用いた転送制御は行っていない。 【0009】 【発明が解決しようとする課題】1点目の問題点を以下に示す。 【0010】転送するファイルには、転送品質として、転送要求者が即座に転送を実行してほしいと要求する転送ファイル(優先ファイル)や、即座には転送しなくてもよいと要求する転送ファイル(非優先ファイル)が存在するが、公知例1、公知例2のどちらにおいても、ファイルの転送品質を全く考慮していないため、各々の転送品質に対応した転送保障時間を設けたファイル転送サービスを実現することができない。 【0011】2点目の問題点を以下に示す。 【0012】公知例1、公知例2のどちらにおいても、制御対象は転送ファイル単位であり、当該転送ファイルのファイルサイズを考慮していないため、ある転送ファイルのファイルサイズが大容量である場合には、他の転送ファイルの転送待ち合わせ時間が長くなってしまうことがある。つまり、他の転送ファイルの実行状況により、同じファイルサイズの転送ファイルの実行時間が異なってしまい、転送品質の均一性を保つことができない。 【0013】3点目の問題点を以下に示す。 【0014】公知例1、公知例2のどちらにおいても、転送ファイルを受け付ける際に考慮しているのは、当該ファイルが蓄積される転送サーバに当該転送ファイルのファイルサイズが確保できるかどうかしか確認していないため、転送ファイルを受け付ける際に、利用者の転送品質を満たしたファイル転送を行なうには、当該転送ファイルの受け付け判断時に当該要求に対して棄却を行なわねばならないが、その棄却を行なうことができない。また、当該転送ファイルが転送サーバの蓄積状況により、同じファイルサイズの転送ファイルの実行時間が異なってしまい、転送品質の均一性を保つことができない。 【0015】4点目の問題点を以下に示す。 【0016】公知例1、公知例2のどちらにおいても、ファイル転送サーバが複数台設置されている場合には、各々のファイル転送サーバが何らかのポリシに基づいて転送すべきファイルを決定することになる。しかし、選択された転送ファイルは、あくまでも各々のファイル転送サーバにおいて決定された転送ファイルであるため、第1のサーバで選択された転送ファイルと第2のサーバで選択されなかった転送ファイルとを比較した場合に、第2のサーバで選択されなかった転送ファイルを転送すべきであるという可能性がある。従来技術として存在するメールサーバのように全てのファイルを一元的に管理することで、前記可能性が起きることを防ぐ形態が考えられるが、前記形態は、メールのように転送ファイルのサイズが小さい場合には有効である手段であり、転送ファイルのファイルサイズが大きい場合には、サーバにかかる負荷を無視できない。 【0017】本発明は、以上の従来技術の問題点を解決し、利用者が転送ファイルに対して要求する転送品質を反映した転送ファイルの受け付けおよび決定を行なうことができるファイル転送装置およびファイル転送方法を提供することを目的とする。 【0018】 【課題を解決するための手段】第一の発明は、中継装置が転送待ち合わせテーブルを保持し、転送ファイルを受け付けるか否かの判断のときに、発信装置からの転送すベきファイルのサイズを含む発信ファイル情報と、前記転送待ち合わせテーブルに記述されている既に受け付けた転送ファイルのファイルサイズを含むファイル情報とを元に、前記転送ファイルが当該転送ファイルに要求されている転送品質で搬送可能であるかを判断することとし、転送可能である場合には、前記転送ファイルを転送待ち合わせテーブルに追記し、可能でない場合には発信装置に対して棄却のメッセージを返却することとした。これにより、既に転送を受け付けられているがアップロードが完了していない転送ファイルの存在が考慮されるため、ファイル転送要求の順序にしたがった公平性を得ることが可能となる。 【0019】第二の発明は、転送ファイルを受け付けた時刻、もしくは待ち合わせ時刻を当該ファイルの待ち時間情報として前記転送待ち合わせテーブルに記述することとし、前記転送ファイルに要求されている転送品質と前記待ち時間情報を元に当該転送ファイルの優先度を算出することにした。これにより前記転送待ち合わせテーブルに記述されている各転送ファイルには優先度が付与されることになる。各々の転送品質で転送ファイルが受け付けられたときに付与される基準値(優先度の初期値)には差を設け、待ち合わせ時間に対応して前記優先度が更新されていくこととした。この優先度を元に転送するファイルを決定することで、転送品質の高い転送ファイルが優先的に選択され、かつ、転送品質の低い転送ファイルが永遠に待ち合わせ状態となることがなくなる。同時に、ファイル転送受け付け判断時には、前記転送待ち合わせテーブルに記述されている既に受け付け済みの転送ファイルのうちで、転送要求されている転送ファイルに求められている転送品質の基準値(優先度の初期値)を超えている転送ファイルを抽出し、前記転送ファイルのファイルサイズの総和をとり、要求されているファイルサイズを前記ファイルサイズの和と加算することで、前記要求ファイルが要求されている転送品質で転送可能であるかの判断を行なうことが可能となり、受け付けた転送ファイルの転送品質を保証したファイル転送を行なうことが可能となる。 【0020】第三の発明は、転送するファイルのサイズを考慮して、転送ファイルをある基準値を使用して複数個のブロックに分割し、その各々のブロックを転送待ち合わせテーブルに記述することとした。転送するファイル毎に転送許可を与える方式では、転送するファイルのサイズは転送ファイル毎にサイズが大きいものもあれば小さいものも存在するため、ある転送ファイルのサイズが非常に大きい場合には、前記サイズの大きい転送ファイルの転送時間が非常に長くなるため、待ち合わせ状態にある他の転送ファイルの待ち合わせ時間が大きくなってしまう問題があったが、本発明により、前記問題点を解決することができる。 【0021】また、転送するファイル毎に転送許可を与える方式では、転送ファイルが全てアップロードされないと転送許可を与えることができないが、本発明では、転送ファイルを分割したブロック単位に転送許可を与えることができるため、転送ファイルが全てアップロードされていない場合においても、転送を開始することができる。 【0022】第四の発明は、自拠点に転送待ち合わせしている転送ファイルの総転送ファイルサイズがある基準値を超えた場合には、他の中継装置への転送実行に専念し、他の中継装置からの転送受け付けと、発信装置からの転送受け付けを中止するために、他の中継装置に対して輻輳状態である旨を通知することとした。これにより、各中継装置は、自拠点の転送待ち合わせファイルの情報と自拠点の転送状況しか把握していない第一の中継装置から第二の中継装置へのファイル転送を行なう場合に、第一中継装置がファイルの転送を決定しても、第二の中継装置では、前記ファイルを受信できないということが回避され、前記転送ファイルに決定した回線帯域が無駄になってしまうことを防ぐことが可能となる。 【0023】第五の発明は、自拠点に転送待ち合わせしている転送ファイルの総転送ファイルサイズがある基準値を超えた場合には、輻輳管理装置に対して、自拠点が輻輳状態である旨を通知することとし、その通知を受けた輻輳管理装置は、前記通知を出した中継装置以外の中継装置に対して、前記中継装置が輻輳状態であることを通知し、前記中継装置以外の中継装置に対して前記中継装置向けの転送ファイルのファイルサイズの蓄積量を問い合わせ、前記中継装置以外の中継装置に問い合わせた結果を用いて、各中継装置が前記中継装置に対してファイル転送を試みて良い時間を決定して、通知することとした。輻輳管理装置から前記通知内容を受けた各中継装置は、輻輳している中継装置へのファイル転送を許可されている時間帯にしか行なおうとしないため、許可されている時間帯以外は、輻輳している中継装置向けのファイル転送を転送ファイル選択の候補から除外して転送するファイルを選択することになる。 【0024】また、各中継装置に許可されている時間帯は、他の中継装置と重ならないように、輻輳管理装置が設定しているため、輻輳している中継装置向けの転送を行なう中継装置は、ただ1つの中継装置となる。本発明により、輻輳している中継装置に対して実行されるファイル転送を全体として制限することが可能となり、当該中継装置向けの転送ファイルが選択されることによる無駄を防ぐことが可能となる。 【0025】第六の発明は、ファイル蓄積および転送部分と、転送ファイル選択部分とを切り分けた構成を持つファイル転送装置とすることとした。同一拠点内に複数の中継装置が存在しており、ファイル蓄積および転送部分と転送ファイル選択部分とを切り分けた構成でない中継装置である場合は、転送待ち合わせテーブルは各中継装置毎に保持されることになるため、各中継装置がファイル選択手段により選択した転送ファイルは、前記同一拠点内に蓄積されている全ての転送ファイルからファイル選択手段により選択した転送ファイルと同一でない可能性があるという問題が存在する。前述のようにファイル蓄積および転送部分と転送ファイル選択部分とを切り分けた構成を中継装置とすると、転送ファイル選択部分は、同一拠点内に蓄積されている全ての転送ファイルの情報を待ち合わせテーブルに保持しているため、前記問題点を解決することができる。 【0026】第七の発明は、転送するファイルを決定するために必要な各ファイルの待ち時間情報を算出するために、転送待ちファイルテーブルの要素には各転送ファイルの受け付け時刻を含むこととした。各転送ファイルの受け付け時刻と転送ファイル決定手段が実行された時の時刻の差分をとることで、各転送ファイルの待ち時間情報を容易に算出することができる。 【0027】第八の発明は、転送するファイルを決定するために必要な各ファイルの待ち時間情報を算出するために、転送待ちファイルテーブルの要素には各転送ファイルの累積待ち合わせ時間を含むこととした。前記各転送ファイルの累積待ち合わせ時間が各転送ファイルの待ち時間情報となるため、待ち時間晴報を取得する際の時間短縮を図ることができる。 【0028】第九の発明は、転送ファイル決定手段により転送を許可されたファイルがファイル転送手段により転送され、転送が終了したときには、実際に転送を行なったファイルサイズを転送終了ファイル更新手段に通知することとし、前記通知された転送済みファイルサイズに基づいて転送待ち合わせテーブルの当該ファイルのサイズを更新することとした。このことにより、受信側のファイル転送装置の蓄積容量不足による転送未完了または、ネットワーク異常による転送未完了である場合においても、当該転送ファイルの情報を正確に把握することが可能となる。 【0029】第十の発明は、転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送許可サイズを与えることとした。これにより、転送すべきファイルが複数個存在した場合に、定められた通信回線の帯域を各転送ファイルに割り当てられた結果、各転送ファイルの転送帯域が小さくなってしまい、各々の転送ファイルの通信継続時間が長くなってしまうことによる他の待ち合わせ中の転送ファイルの待ち合わせ時間が長くなってしまうことを防ぐことが可能となる。 【0030】第十一の発明は、転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送帯域を与えることとした。これにより、定められた通信回線の帯域を転送優先度にしたがって割り当てることが可能となり、転送ファイル決定手段で選択された複数個の転送ファイルの中で、転送優先度が高い転送ファイルには通信回線の帯域を多く割り当てる処理が可能となる。 【0031】第十二の発明は、転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送継続時間を与えることとした。これにより、許可された転送ファイルが、受信側のファイル転送装置の異常または、ネットワーク異常などによる転送未完了状態に陥った結果、転送終了ファイル更新手段に転送完了通知を出さないまま、継続的に転送を実行しようとすることを防ぐことができ、その結果、前記転送ファイルが使用していた通信回線を他の転送可能な拠点に対する転送に使用できることとなる。 【0032】すなわち、本発明の第一の観点は、着信装置宛てに転送するファイルを発信する発信装置と、当該ファイル転送を中継する中継装置と、当該ファイルを受信する着信装置とを備えたファイル転送装置である。 【0033】ここで、本発明の特徴とするところは、前記発信装置は、転送すべきファイルのサイズを含む発信ファイル情報を前記中継装置に対して送信して前記中継装置から当該ファイル転送の可否を含む応答を受信するファイル発信要求手段と、許可されたファイル転送の転送すべきファイルのデータを前記中継装置へ送信する発信ファイル送信手段とを備え、前記中継装置は、既に受け付けたファイル転送それぞれについて当該ファイル転送の転送ファイルサイズを含む発信ファイル情報を記憶する転送待ちファイルテーブルと、既に受け付けたファイル転送の転送すべきファイルのデータを蓄積するファイル蓄積手段と、前記発信装置から前記発信ファイル情報を受信するファイル発信受付手段と、前記転送待ちファイルテーブルに記憶されている転送ファイル情報と前記発信ファイル情報に含まれている転送すべきファイルのサイズとに基づき当該発信ファイル情報が示すファイル転送の可否を決定する受付判断手段と、前記受付判断手段がファイル転送の可否を可と決定した場合に当該発信ファイル情報が示すファイル転送を前記転送待ちファイルテーブルに登録する受付ファイル登録手段と、前記発信装置から転送すべきファイルのデータを受信して前記ファイル蓄積手段に保存する発信ファイル受信手段と、前記転送待ちファイルテーブルに記憶されている転送ファイル情報を参照して転送すべきファイルを決定する転送ファイル決定手段と、前記転送ファイル決定手段によって決定された転送すべきファイルのデータを前記ファイル蓄積手段から取得して前記着信装置または他の中継装置へ転送するファイル転送手段と、前記ファイル転送手段により転送が終了したファイル転送に基づき前記転送待ちファイルテーブルを更新する転送終了ファイル更新手段とを備え、前記中継装置の前記ファイル発信受付手段は前記受付判断手段によるファイル転送の可否判断を含む応答を当該発信ファイル情報を送信した前記発信装置に送信する手段を含むところにある。 【0034】あるファイル転送の受け付け時刻または待ち時間を当該ファイル転送の待ち時間情報とし、前記中継装置は、あるファイルに要求されている品質クラスと当該ファイルの前記待ち時間情報とを入力として当該ファイル転送の優先度を算出する優先度算出手段を備え、前記発信ファイル情報は当該ファイル転送の品質クラスを含み、前記転送待ちファイルテーブルに記憶されている各ファイルの発信ファイル情報には、当該ファイルのファイル転送の品質クラスと当該ファイル転送の待ち時間情報とを含み、前記受付判断手段は、前記発信ファイル情報が示す転送ファイルに対する第一の優先度を前記優先度算出手段により算出する手段と、前記発信ファイル情報のうち前記優先度算出手段により算出される優先度が前記第一の優先度以上であるファイル転送について転送ファイルサイズの総和を算出する手段と、前記転送ファイルサイズの総和と前記発信ファイル情報が示す転送すべきファイルのサイズとの和を用いて前記ファイル転送の可否を決定する手段とを含み、前記転送ファイル決定手段は、前記優先度算出手段によって算出される優先度に基づき転送すべきファイルを決定する手段を含む構成とすることもできる。 【0035】前記受付ファイル登録手段は、転送ファイルの発信ファイル情報を前記転送持ちファイルテーブルに登録する際に、あらかじめ決定されている閾値以上のファイルサイズを持つ転送ファイルに関しては前記閾値を用いて当該転送ファイルサイズを分割し、複数個に分割した転送ファイルを各々転送ブロックとして定義し、前記転送ブロックを転送するファイルとみなし、前記転送ブロック情報を発信ファイル情報として前記転送待ちファイルテーブルに登録する手段を含む構成とすることもできる。 【0036】前記中継装置は、前記転送持ちファイルテーブルを参照して自拠点に蓄積されている転送ファイルのファイルサイズの総和がある閾値を越えているかどうかを判断する手段と、他の装置に対して前記判断結果を自拠点の混雑状態として送信する手段と、他の装置から他の装置の混雑状態を受信する手段と、他の装置の混雑状態を表す転送状況テーブルを保持して当該転送状況テーブルに基づき他の装置の混雑状態を登録する手段と、転送すべき転送ファイルの決定の際に前記転送状態テーブルに基づき他の装置の混雑状態が輻輳である場合には当該装置向けへのファイル転送を転送すべき転送ファイルの候補から除外する手段と、他の装置から転送されてきた転送ファイルを受信する折に自拠点の蓄積容量が足りないため受信不可能である場合には前記転送ファイルを転送してきた装置に対して自拠点の混雑状態を通知する手段と、他の装置に対して転送した転送ファイルが他の装置が輻輳状態であるため転送されず他の装置の混雑状態が返却されて来た場合には前記他の装置の混雑状態を前記転送状況テーブルに登録する手段とを含む構成とすることもできる。 【0037】全ての装置の混雑状況を管理する手段を備えた輻輳管理装置が設けられ、前記混雑状況を管理する手段は、ある装置から当該装置の混雑状態を受信する手段と、ある装置向けの転送ファイルおよびファイルサイズを前記装置以外の装置に対して問い合わせる手段と、前記問い合わせ結果に基づき前記装置以外の装置に対して前記装置向けの転送を許可する時間帯を算出する手段と、前記算出結果を前記装置以外の装置に送信する手段とを含む構成とすることもできる。 【0038】前記中継装置は、前記輻輳管理装置から指定された他の装置向けの転送ファイルのファイルサイズの総和を算出する手段と、この算出結果および当該転送ファイルのファイルサイズの総和がある閾値を超えているかどうかの判断結果を前記輻輳管理装置に対して送信する手段と、前記輻輳管理装置から他の装置の混雑状況および指定された装置への通信を許可された時間帯を受信する手段と、前記他の装置の混雑状況と許可された時間帯を要素とする転送状況テーブルを保持して当該転送状況テーブルに他の装置の輻輳状態を記録する手段とを備えた構成とすることもできる。 【0039】前記中継装置は、ファイル蓄積および転送を担う部分と、転送ファイル受け付けおよび決定を担う部分とから構成され、前記ファイル蓄積および転送を担う部分は、前記ファイル蓄積手段と、前記ファイル発信受付手段と、前記発信ファイル受信手段と、前記ファイル転送手段と、前記発信装置からファイルサイズを含む発信ファイル情報を前記ファイル受け付けおよび決定を担う部分に送信する手段と、前記転送ファイル受け付けおよび決定を担う部分の前記受付判断手段によって決定された転送すべきファイルを示すファイル情報およびファイル転送の可否判断の結果を受信する手段と、前記可否判断の結果を含む応答を前記発信装置に送信する手段とを備え、前記ファイル転送手段は、前記転送すべきファイルを示すファイル情報を受信する手段で得られたファイルを前記着信装置または他の前記中継装置に転送するファイル転送手段を含み、前記転送ファイル受け付けおよび決定を担う部分は、前記転送待ちファイルテーブルと、前記ファイル蓄積および転送を担う部分からファイルサイズを含む発信ファイル情報を受信する手段と、前記発信ファイル情報に基き当該ファイルを受け付けるか否かを判断する受付判断手段と、前記受付ファイル登録手段と、前記転送ファイル決定手段と、前記転送終了ファイル更新手段と、前記転送ファイル決定手段により決定された転送すべきファイルを前記ファイル蓄積および転送を担う部分に対して指定する手段とを含む構成とすることもできる。 【0040】前記転送待ちファイルテーブルの要素には転送ファイルの受け付け時間を含み、前記転送ファイル決定手段は、前記転送ファイル受け付け時間を元に前記待ち時間情報を算出する待ち時間情報算出手段を含む構成とすることもできる。 【0041】前記転送待ちファイルテーブルの要素には転送ファイルの累積待ち時間を含み、前記転送ファイル決定手段は、前記転送ファイル累積待ち時間を元に前記待ち時間情報を算出する待ち時間情報算出手段を含む構成とすることもできる。 【0042】前記ファイル転送手段は、転送すべきファイルの転送が終了した際に実際に転送を行なったファイルのサイズを含む転送完了通知を転送終了ファイル更新手段に送信する手段を含み、前記転送終了ファイル更新手段は、前記ファイルサイズに基づいて前記転送待ちテーブルを更新する手段を含む構成とすることもできる。 【0043】前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送許可サイズを決定する手段を含む構成とすることもできる。前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送帯域を決定する手段を含む構成とすることもできる。前記転送ファイル決定手段は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送継続時間を決定する手段を含む構成とすることもできる。 【0044】本発明の第二の観点は、発信装置により発信された着信装置宛てのファイルを中継装置により中継して着信装置に転送するファイル転送方法である。 【0045】ここで、本発明の特徴とするところは、前記発信装置は、転送すべきファイルのサイズを含む発信ファイル情報を前記中継装置に対して送信して前記中継装置から当該ファイル転送の可否を含む応答を受信し、許可されたファイル転送の転送すべきファイルのデータを前記中継装置へ送信し、前記中継装置は、既に受け付けたファイル転送それぞれについて当該ファイル転送の転送ファイルサイズを含む発信ファイル情報を転送待ちファイルテーブルに記憶し、既に受け付けたファイル転送の転送すべきファイルのデータを蓄積し、前記発信装置から前記発信ファイル情報を受信し、前記転送待ちファイルテーブルに記憶されている転送ファイル情報と前記発信ファイル情報に含まれている転送すべきファイルのサイズとに基づき当該発信ファイル情報が示すファイル転送の可否を決定し、このときにファイル転送の可否を可と決定した場合に当該発信ファイル情報が示すファイル転送を前記転送待ちファイルテーブルに登録し、前記ファイル発信装置から転送すべきファイルのデータを受信して保存し、前記転送待ちファイルテーブルに記憶されている転送ファイル情報を参照して転送すべきファイルを決定し、このときに決定された転送すべきファイルのデータを前記着信装置または他の中継装置へ転送し、転送が終了したファイル転送に基づき前記転送待ちファイルテーブルを更新し、前記中継装置はファイル転送の可否判断を含む応答を当該発信ファイル情報を送信した前記発信装置に送信するところにある。 【0046】あるファイル転送の受け付け時刻または待ち時間を当該ファイル転送の待ち時間情報とし、前記中継装置は、あるファイルに要求されている品質クラスと当該ファイルの前記待ち時間情報とを入力として当該ファイル転送の優先度を算出し、前記発信ファイル情報は当該ファイル転送の品質クラスを含み、前記転送待ちファイルテーブルに記憶されている各ファイルの発信ファイル情報には、当該ファイルのファイル転送の品質クラスと当該ファイル転送の待ち時間情報とを含み、前記中継装置は、前記発信ファイル情報が示す転送ファイルに対する第一の優先度を算出し、前記発信ファイル情報のうち算出された優先度が前記第一の優先度以上であるファイル転送について転送ファイルサイズの総和を算出し、前記転送ファイルサイズの総和と前記発信ファイル情報が示す転送すべきファイルのサイズとの和を用いて前記ファイル転送の可否を決定し、算出された優先度に基づき転送すべきファイルを決定することもできる。 【0047】前記中継装置は、転送ファイルの発信ファイル情報を前記転送持ちファイルテーブルに登録する際に、あらかじめ決定されている閾値以上のファイルサイズを持つ転送ファイルに関しては前記閾値を用いて当該転送ファイルサイズを分割し、複数個に分割した転送ファイルを各々転送ブロックとして定義し、前記転送ブロックを転送するファイルとみなし、前記転送ブロック情報を発信ファイル情報として前記転送待ちファイルテーブルに登録することもできる。 【0048】前記中継装置は、前記転送持ちファイルテーブルを参照して自拠点に蓄積されている転送ファイルのファイルサイズの総和がある閾値を越えているかどうかを判断し、他の装置に対して前記判断結果を自拠点の混雑状態として送信し、他の装置から他の装置の混雑状態を受信し、他の装置の混雑状態を表す転送状況テーブルを保持して当該転送状況テーブルに基づき他の装置の混雑状態を登録し、転送すべき転送ファイルの決定の際に前記転送状態テーブルに基づき他の装置の混雑状態が輻輳である場合には当該装置向けへのファイル転送を転送すべき転送ファイルの候補から除外し、他の装置から転送されてきた転送ファイルを受信する折に自拠点の蓄積容量が足りないため受信不可能である場合には前記転送ファイルを転送してきた装置に対して自拠点の混雑状態を通知し、他の装置に対して転送した転送ファイルが他の装置が輻輳状態であるため転送されず他の装置の混雑状態が返却されて来た場合には前記他の装置の混雑状態を前記転送状況テーブルに登録することもできる。 【0049】全ての装置の混雑状況を一括管理する輻輳管理機能を設け、この輻輳管理機能により、ある装置から当該装置の混雑状態を受信し、ある装置向けの転送ファイルおよびファイルサイズを前記装置以外の装置に対して問い合わせ、前記問い合わせ結果に基づき前記装置以外の装置に対して前記装置向けの転送を許可する時間帯を算出し、前記算出結果を前記装置以外の装置に送信することもできる。 【0050】前記中継装置は、前記輻輳管理機能から指定された他の装置向けの転送ファイルのファイルサイズの総和を算出し、この算出結果および当該転送ファイルのファイルサイズの総和がある閾値を超えているかどうかの判断結果を前記輻輳管理機能に対して送信し、前記輻輳管理機能から他の装置の混雑状況および指定された装置への通信を許可された時間帯を受信し、前記他の装置の混雑状況と許可された時間帯を要素とする転送状況テーブルを保持して当該転送状況テーブルに他の装置の輻輳状態を記録することもできる。 【0051】前記中継装置の機能をファイル蓄積および転送を担う機能と転送ファイル受け付けおよび決定を担う機能とに分け、前記ファイル蓄積および転送を担う機能は、ファイル蓄積と、ファイル発信受け付けと、発信ファイル受信と、ファイル転送と、前記発信装置から到来するファイルサイズを含む発信ファイル情報の前記ファイル受け付けおよび決定を担う機能への送信と、前記転送ファイル受け付けおよび決定を担う機能の受け付け判断によって決定された転送すべきファイルを示すファイル情報およびファイル転送の可否判断の結果の受信と、前記可否判断の結果を含む応答の前記発信装置への送信とを行い、このファイル転送では、前記転送すべきファイルを示すファイル情報に基づき得られたファイルを前記着信装置または他の前記中継装置に転送し、前記転送ファイル受け付けおよび決定を担う機能は、前記ファイル蓄積および転送を担う機能から到来するファイルサイズを含む発信ファイル情報の受信と、前記発信ファイル情報に基き当該ファイルを受け付けるか否かの判断と、受け付けファイルの登録と、転送ファイルの決定と、前記転送待ちファイルテーブルの更新と、前記ファイル転送およびファイル蓄積を担う機能に対して決定された転送すべきファイルの指定とを行なうこともできる。 【0052】前記転送待ちファイルテーブルの要素には転送ファイルの受け付け時間を含み、前記転送ファイル受け付け時間を元に前記待ち時間情報を算出することもできる。 【0053】前記転送待ちファイルテーブルの要素には転送ファイルの累積待ち時間を含み、前記転送ファイル累積待ち時間を元に前記待ち時間情報を算出することもできる。 【0054】転送すべきファイルの転送が終了した際に実際に転送を行なったファイルのサイズに基づいて前記転送待ちテーブルを更新することもできる。 【0055】転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送許可サイズを決定することもできる。転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送帯域を決定することもできる。転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送継続時間を決定することもできる。 【0056】本発明の第三の観点は、所定のハードウェアと、このハードウェアにインストールされた所定の基本ソフトウェアとを備えたコンピュータ装置に、さらにインストールすることによりそのコンピュータ装置を本発明のファイル転送装置に相応する装置とするソフトウェアが記録された記録媒体である。あるいは、所定のハードウェアと、このハードウェアにインストールされた所定の基本ソフトウェアとを備えコンピュータ装置に、さらにインストールすることによりそのコンピュータ装置に本発明のファイル転送方法を実行させるソフトウェアが記録された記録媒体である。 【0057】 【発明の実施の形態】本発明実施例のファイル転送装置の構成を図1および図9を参照して説明する。図1は本発明第一実施例のファイル転送装置のブロック構成図である。図9は本発明第二実施例のファイル転送装置のブロック構成図である。 【0058】本発明は、図1に示すように、着信装置(図示せず)宛てに転送するファイルを発信する発信装置1と、当該ファイル転送を中継する中継装置2と、当該ファイルを受信する着信装置とを備えたファイル転送装置である。 【0059】ここで、本発明の特徴とするところは、発信装置1は、転送すべきファイルのサイズを含む発信ファイル情報を中継装置2に対して送信して中継装置2から当該ファイル転送の可否を含む応答を受信するファイル発信要求手段3と、許可されたファイル転送の転送すべきファイルのデータを中継装置2へ送信する発信ファイル送信手段4とを備え、中継装置2は、既に受け付けたファイル転送それぞれについて当該ファイル転送の転送ファイルサイズを含む発信ファイル情報を記憶する転送待ちファイルテーブル14と、既に受け付けたファイル転送の転送すべきファイルのデータを蓄積するファイル蓄積手段5と、発信装置1から前記発信ファイル情報を受信するファイル発信受付手段6と、転送待ちファイルテーブル14に記憶されている転送ファイル情報と前記発信ファイル情報に含まれている転送すべきファイルのサイズとに基づき当該発信ファイル情報が示すファイル転送の可否を決定する受付判断手段7と、受付判断手段7がファイル転送の可否を可と決定した場合に当該発信ファイル情報が示すファイル転送を転送待ちファイルテーブル14に登録する受付ファイル登録手段8と、発信装置1から転送すべきファイルのデータを受信してファイル蓄積手段5に保存する発信ファイル受信手段9と、転送待ちファイルテーブル14に記憶されている転送ファイル情報を参照して転送すべきファイルを決定する転送ファイル決定手段10と、転送ファイル決定手段10によって決定された転送すべきファイルのデータをファイル蓄積手段5から取得して前記着信装置または他の中継装置へ転送するファイル転送手段11と、ファイル転送手段11により転送が終了したファイル転送に基づき転送待ちファイルテーブル14を更新する転送終了ファイル更新手段12とを備え、中継装置2のファイル発信受付手段6は受付判断手段7によるファイル転送の可否判断を含む応答を当該発信ファイル情報を送信した発信装置1に送信するところにある。 【0060】さらに、あるファイル転送の受け付け時刻または待ち時間を当該ファイル転送の待ち時間情報とし、中継装置2は、あるファイルに要求されている品質クラスと当該ファイルの前記待ち時間情報とを入力として当該ファイル転送の優先度を算出する優先度算出手段13を備え、前記発信ファイル情報は当該ファイル転送の品質クラスを含み、転送待ちファイルテーブル14に記憶されている各ファイルの発信ファイル情報には、当該ファイルのファイル転送の品質クラスと当該ファイル転送の待ち時間情報とを含み、受付判断手段7は、前記発信ファイル情報が示す転送ファイルに対する第一の優先度を優先度算出手段13により算出し、前記発信ファイル情報のうち優先度算出手段13により算出される優先度が前記第一の優先度以上であるファイル転送について転送ファイルサイズの総和を算出し、前記転送ファイルサイズの総和と前記発信ファイル情報が示す転送すべきファイルのサイズとの和を用いて前記ファイル転送の可否を決定し、転送ファイル決定手段10は、優先度算出手段13によって算出される優先度に基づき転送すべきファイルを決定するところにある。算出された優先度は、転送待ちテーブル4に優先度更新手段15により記録更新される。 【0061】さらに、受付ファイル登録手段8は、転送ファイルの発信ファイル情報を転送持ちファイルテーブル14に登録する際に、あらかじめ決定されている閾値以上のファイルサイズを持つ転送ファイルに関しては前記閾値を用いて当該転送ファイルサイズを分割し、複数個に分割した転送ファイルを各々転送ブロックとして定義し、前記転送ブロックを転送するファイルとみなし、前記転送ブロック情報を発信ファイル情報として転送待ちファイルテーブル14に登録する。 【0062】さらに、中継装置2の受付判断手段7は、転送持ちファイルテーブル14を参照して自拠点に蓄積されている転送ファイルのファイルサイズの総和がある閾値を越えているかどうかを判断し、他の装置に対して前記判断結果を自拠点の混雑状態として送信し、他の装置から他の装置の混雑状態を受信し、他の装置の混雑状態を表す転送状況テーブルを保持して当該転送状況テーブルに基づき他の装置の混雑状態を登録し、転送すべき転送ファイルの決定の際に前記転送状態テーブルに基づき他の装置の混雑状態が輻輳である場合には当該装置向けへのファイル転送を転送すべき転送ファイルの候補から除外し、他の装置から転送されてきた転送ファイルを受信する折に自拠点の蓄積容量が足りないため受信不可能である場合には前記転送ファイルを転送してきた装置に対して自拠点の混雑状態を通知し、他の装置に対して転送した転送ファイルが他の装置が輻輳状態であるため転送されず他の装置の混雑状態が返却されて来た場合には前記他の装置の混雑状態を前記転送状況テーブルに登録する。この説明で受付判断手段7に設けた機能をファイル転送装置の外部に設けることもできる。すなわち、全ての装置の混雑状況を管理する輻輳管理装置をファイル転送装置の外部に設ける。 【0063】この輻輳管理装置は、ある装置から当該装置の混雑状態を受信し、ある装置向けの転送ファイルおよびファイルサイズを前記装置以外の装置に対して問い合わせ、前記問い合わせ結果に基づき前記装置以外の装置に対して前記装置向けの転送を許可する時間帯を算出し、前記算出結果を前記装置以外の装置に送信する。このとき中継装置2の受付判断手段7は、輻輳管理装置から指定された他の装置向けの転送ファイルのファイルサイズの総和を算出し、この算出結果および当該転送ファイルのファイルサイズの総和がある閾値を超えているかどうかの判断結果を輻輳管理装置に対して送信し、輻輳管理装置から他の装置の混雑状況および指定された装置への通信を許可された時間帯を受信し、前記他の装置の混雑状況と許可された時間帯を要素とする転送状況テーブルを保持して当該転送状況テーブルに他の装置の輻輳状態を記録する。 【0064】第二実施例は、図9に示すように、中継装置2は、ファイル蓄積および転送を担うファイル蓄積および転送部分17と、転送ファイル受け付けおよび決定を担う転送ファイル選択部分16とから構成され、ファイル蓄積および転送部分17は、ファイル蓄積手段5と、ファイル発信受付手段6と、発信ファイル受信手段9と、ファイル転送手段11とを備え、発信装置1からファイルサイズを含む発信ファイル情報を転送ファイル選択部分16に送信し、転送ファイル選択部分16の受付判断手段7によって決定された転送すべきファイルを示すファイル情報およびファイル転送の可否判断の結果を受信し、前記可否判断の結果を含む応答を前記発信装置に送信し、ファイル転送手段11は、前記転送すべきファイルを示すファイル情報に基づき得られたファイルを前記着信装置または他の中継装置に転送し、転送ファイル選択部分16は、転送待ちファイルテーブル14を備え、ファイル蓄積および転送部分17からファイルサイズを含む発信ファイル情報を受信し、この発信ファイル情報に基き当該ファイルを受け付けるか否かを判断する受付判断手段7と、受付ファイル登録手段8と、転送ファイル決定手段10と、転送終了ファイル更新手段12とを備え、転送ファイル選択部分16により決定された転送すべきファイルをファイル蓄積および転送部分17に対して指定する。 【0065】転送待ちファイルテーブル14の要素には転送ファイルの受け付け時間を含み、転送ファイル決定手段10は、前記転送ファイル受け付け時間を元に前記待ち時間情報を算出する。 【0066】あるいは、転送待ちファイルテーブル14の要素には転送ファイルの累積待ち時間を含み、転送ファイル決定手段10は、前記転送ファイル累積待ち時間を元に前記待ち時間情報を算出する。 【0067】ファイル転送手段11は、転送すべきファイルの転送が終了した際に実際に転送を行なったファイルのサイズを含む転送完了通知を転送終了ファイル更新手段12に送信し、転送終了ファイル更新手段12は、前記ファイルサイズに基づいて転送待ちファイルテーブル14を更新する。 【0068】転送ファイル決定手段10は、転送すべきファイルの決定と共に当該転送すべきファイルに許可する転送許可サイズおよび転送帯域および転送継続時間を決定する。 【0069】本発明のファイル転送装置は、所定のハードウェアと、このハードウェアにインストールされた所定の基本ソフトウェアとを備えたコンピュータ装置に、さらにインストールすることによりそのコンピュータ装置を本発明のファイル転送装置を構成する発信装置、中継装置、着信装置に相応する装置とするソフトウェアが記録された記録媒体を用いてコンピュータ装置に当該ソフトウェアをインストールすることにより実現できる。これにより、当該コンピュータ装置は、本発明のファイル転送方法を実行することができる。 【0070】以下では、本発明実施例をさらに詳細に説明する。 【0071】(第一実施例)第一実施例を以下に示す。発信装置、中継装置、着信装置のそれぞれは、ネットワークインターフェースを備えたコンピュータ装置上に下記に示す実現方法に基づくプログラムを起動することにより実現される。また、中継装置は複数台存在する。 【0072】中継装置は、HTTPサーパブロセスを起動し、あるURL(Uniform Resource Locator)に対するHTTP POSTメソッドで中継装置プログラムが起動するようにする。前記URLは、発信装置、着信装置の双方にあらかじめ教えておく。また、中継装置のファイル蓄積手段部においては、RDBMS(RelationalDatabase Management System)を起動し、ファイル識別子とファイルパスとファイルサイズと宛先IP(Internet Protocol)アドレスの組を蓄積するためのファイルテーブルを保持し、前記ファイルテーブルと実際に転送ファイルが保存されるディスク領域を蓄積する。また、中継装置は、転送を受け付けた転送ファイルの状況、転送を許可した転送ファイルの転送状況、転送待ち合わせしている転送ファイルの状況、新規転送要求ファイルの受け付け判断、転送を許可する転送ファイルの決定を行なうために、転送持ちファイルテーブルを中継装置のメモリ上、もしくはデータベース上に保持する。さらに、中継装置には、IPアドレスのネットワーク部と転送先中継装置のURLの組みを蓄積するためのデータベースのテーブルを保持する。このテーブルをルーティングテーブルと呼ぶ。 【0073】本実施例のファイル転送装置のモデル図を図1に、実施形態を図2に示す。図中の記号を説明すると、Fi:ファイル識別子iのファイル情報(コンテナ便識別子iのコンテナ便情報)、t:受け付け時刻、c:サービスクラス={H|L}、s:ファイルサイズ、p:優先度、w:待ち時間(=現在時刻−t)、A:発信ファイルのファイル情報、m:発信ファイルに対して割当てられたファイル識別子、Di:ファイル識別子iのファイルの主データ、a:受け付け可否判断結果1または0である。 【0074】本実施例における一連の処理の流れを以下に示す。まず、転送ファイルの受け付け判断および転送ファイルの蓄積までを示し、その処理フローを図3および図4に示す。 【0075】発信装置は、あらかじめ教えられているURLに対して、HTTPリクエストのPOSTメソッドのエンティティボディに、発信ファイル情報として、「発信ファイル情報送信」、「発信ファイルサイズ」、「宛先IPアドレス群」、「発信するファイルに希望する転送品質」を表す文字列を、改行で区切りながら格納して、中継装置に送信する。 【0076】HTTPサーバにより起動された中継装置プログラムは、前記HTTPリクエストのPOSTメソッドのエンティティボディの1行目が、「中継ファイル情報送信」を表す文字列である場合には、発信ファイル受け付けを実行し、次行に続く「発信するファイルサイズ」、「宛先IPアドレス群」、「転送するファイルに希望する転送品質」を表す文字列を読み取り、当該転送要求ファイルに対して、時刻情報を元にしたユニークな値を持つファイル識別子を割り当てる。 【0077】また、当該中継装置は、各宛先のIPアドレスをルーティングテーブルのネットワーク部と照らし合わせ、マッチした場合には、該当する転送先中継装置のURLを取得する。次に、当該URLに対して、HTTPリクエストのエンティティボディに、「中継ファイル情報送信」、当該「ファイル識別子」、当該「ファイルサイズ」、当該中継装置を経由する「宛先IPアドレス群」を表す文字列を改行で区切って格納して送信する。 【0078】HTTPサーバによって起動された送信先の中継装置プログラムは、POSTメソッドのエンティティボディの1行目が「中継ファイル情報送信」を表す文字列である場合に、続く「ファイル識別子」、「ファイルサイズ」、「宛先IPアドレス群」を読み取る。また、当該ファイル識別子をもとに、当該ファイルの保存先となるファイルパスを決定し、ファイルテーブルに当該ファイル識別子と、当該ファイルパス、当該ファイルサイズを当該宛先IPアドレス群を登録する。 【0079】さらに、各宛先IPアドレスをルーティングテーブルのネットワーク部を照らし合わせ、マッチした場合には該当する転送先中継装置のURLを取得する。次に当該URL群に対して、HTTPリクエストのエンティティボディに、「中継ファイル情報送信」、当該「ファイル識別子」、当該「ファイルサイズ」、当該中継装置を経由する「宛先IPアドレス群」を表す文字列を改行で区切って格納し、送信する。このようにして、ファイル情報は最終的には、各宛先アドレスを担当する着信装置最寄の中継装置に到達する。 【0080】前記「中継ファイル情報送信」の返り値がOKで返却されたことを確認した発信装置最寄りの中継装置は、当該転送要求ファイルを要求されている転送品質で受け付け可能であるか否かの判断を行なうため、「ファイル識別子」、「発信するファイルサイズ」、「宛先IPアドレス群」、「発信するファイルに希望する転送品質」を表す文字列を「転送ファイル受け付け要求」として、受付判断手段のスレッドに対して通知する。前記「転送ファイル受け付け要求」を受けた受付判断手段は、転送待ちファイルテーブルを参照し、既に受け付けられている転送ファイルの状況を把握し、当該転送ファイルに要求されている「発信するファイルサイズ」、「発信するファイルに希望する転送品質」を満たし、転送可能であるかを数式1により判断する。 【0081】 【数1】
数式1により、当該転送ファイルを受け付け可能であると判断した場合には、受付ファイル登録手段により、「発信するファイルに希望する転送品質」毎に分けられた転送待ちファイルテーブルに、受け付けたファイル情報として「ファイル識別子」、「発信するファイルサイズ」、「宛先IPアドレス群」を登録し、発信ファイル受付手段に対して当該転送要求が受け付けられたことを示すメッセージを返却する。なお、転送待ちファイルテーブルの形態は、表1に示すとおりである。 【0082】 【表1】
【0083】前記メッセージを受けた発信ファイル受付手段は、当該「ファイル識別子」を表す文字列をHTTPレスポンスのエンティテイボディに含めて発信装置に通知する。 【0084】数式1により、当該転送ファイルを受け付け可能でないと判断した場合には、各宛先のIPアドレスをルーテイングテーブルのネットワーク部と照らし合わせ、マッチした場合には該当する転送先中継装置のURLに対して、HTTPリクエストのPOSTメソッドエンティティボディに「ファイル情報削除送信」、「ファイル識別子」、「宛先IPアドレス群」を表す文字列を、改行で区切りながら格納して送信する。 【0085】HTTPサーバによって起動された中継装置プログラムは、POSTメソッドのエンティティボディの1行目が「ファイル情報削除送信」を表す文字列である場合には、続く「ファイル識別子」、「宛先IPアドレス群」を読み取る。また、当該ファイル識別子をもとに、ファイルテーブルのファイル情報を削除する。 【0086】さらに、各宛先IPアドレスをルーテイングテーブルのネットワーク部を照らし合わせ、マッチした場合には該当する転送先中継装置のURLを取得する。次に、当該URL群に対して、HTTPリクエストのエンティティボディに、「ファイル情報削除送信」、当該「ファイル識別子」、当該中継装置を経由する「宛先IPアドレス群」を表す文字列を改行で区切って格納して送信する。このようにして、最終的には、各宛先アドレスを担当する着信装置最寄りの中継装置に到達し、当該ファイル情報は削除される。 【0087】全てのファイル情報を削除した後、受付ファイル登録手段は、当該転送要求が受け付けられないことを示すメッセージを発信ファイル受付手段に対して返却し、その通知を受けたファイル受付手段は、「受け付け不可能」を示す文字列をHTTPレスポンスのエンティティボディに含めて発信装置に通知する。 【0088】発信装置は、HTTPレスポンスのエンティティボディから、当該「ファイル識別子」を読み取り、転送が受け付けられたと判断した場合には、HTTPリクエストのPOSTメソッドのエンティティボディに「発信ファイル送信」、当該「ファイル識別子」を表す文字列を改行で区切って格納した後、当該転送ファイルの「ファイルデータ(主情報)」のバイナリ列を格納して中継装置に送信を開始する。 【0089】HTTPサーバによって起動された中継装置プログラムは、前記HTTPリクエストのPOSTメソッドのエンティティボディの1行目が、「発信ファイル送信」を表す文字列の場合には、発信ファイルの受信を実行し、次行の当該「ファイル識別子」を読み取り、ファイルテーブルから当該「ファイル識別子」と組で登録されているファイルパスを取得し、HTTPリクエストのエンティティボディの「ファイルデータ」を読み取り、当該ファイルパスに蓄積を開始する。前記ファイルデータの蓄積が終了した場合には、HTTPレスポンスのエンティティボディに当該ファイル受信完了を示す文字列を含めて発信装置に通知すると同時に、ファイルがアップロードされたことを通知し、その通知を受けた受付ファイル登録手段は、転送待ち合わせテーブルの当該ファイル識別子と一致するファイル情報に、当該ファイルデータが蓄積を完了した「受け付け時刻」と、「当該転送ファイルの転送品質に対応した転送優先度の初期値」と、「当該転送ファイルの転送状況」を追加登録する。また、当該ファイルを蓄積した中継装置は、自装置の蓄積容量に、発信された転送ファイルのファイルサイズ分を加算する。 【0090】図5に優先度算出関数P(待ち時間w,サービスクラスc)を示す。横軸に時間をとり、縦軸にサービスクラスをとる。図5の例では、転送品質が高いものは、4時間以内に転送を開始し、転送品質が低いものは、12時間以内に転送を開始する。前期初期値とは、前記関数の待ち時間が0のことを指す。その待ち合わせテーブルの形態を表2、表3に示す。 【0091】 【表2】
【0092】 【表3】
【0093】本実施例の場合は、「受け付け時刻」を用いているが、待ち時間情報として、待ち合わせテーブルで各々の転送ファイルの待ち時間を随時算出しておく「累積待ち合わせ時間」を利用することも可能である。 【0094】次に、受け付けられた転送ファイルの中から転送すべきファイルを決定し、転送を実行するまでを示し、その処理フローを図6および図7に示す。各転送ファイルの優先度は、転送待ち合わせテーブルに登録されている各転送ファイルの待ち時間情報(受け付け時刻もしくは累積待ち合わせ時間)と、図5に示す優先度算出関数とを用いて逐次更新される。転送すべき転送ファイルを決定する際には、転送ファイル決定手段を用いて、前記優先度が高い順に転送ファイルを選択することとする。この際、決定された転送ファイルの個数と転送実行中の転送ファイル個数の和が、あらかじめ決定されている同時に転送可能である転送ファイルの個数の上限値以内となるように、転送すべき転送ファイルの個数を決定する。転送すべきと決定された転送ファイルには、「ファイル識別子」、「転送に許可する通信回線の帯域」、「転送を許可するファイルサイズ」、「転送を許可する転送継続時間」が指定され、ファイル転送手段に対して通知される。 【0095】前記通知を受けたファイル転送手段は、前記「ファイル識別子」と、ファイルテーブルのファイル識別子が一致する転送ファイルを検索し、ファイルテーブルの「宛先IPアドレス群」と、各々中継装置が保持するIPアドレスと転送先中継装置のURLの組を格納しているルーティングテーブルの中から前記「宛先IPアドレス群」に相当する転送先URLを取得し、そのURLが示す中継装置に向けて、HTTPリクエストのPOSTメソッドのエンティティボディに、「中継ファイル送信」、「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」を表す文字列を改行で区切りながら格納し送信する。 【0096】HTTPサーバにより起動された転送先の中継装置のファイル受信部分は、POSTメソッドのエンティティボディの1行目が「中継ファイル送信」を表す文字列の場合には、続く、「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」を読み取り、自装置のファイル受付手段に対して、当該転送ファイルのサイズと待ち合わせテーブル上に記述されている全転送ファイルのサイズとの和が自装置の蓄積容量の範囲内であるかどうか、現在使用中の通信回線の帯域と、当該「転送する通信回線の帯域」の和があらかじめ設定されている自装置の通信回線帯域の範囲内であるかどうかの受け付け判断を行なう。 【0097】前記転送先の受付判断手段が、受け付け可と判断した場合には、自装置に蓄積されている蓄積容量に、当該転送ファイルサイズ分の蓄積容量を加算し、自装置の使用中の通信回線の帯域に当該ファイル転送に使用する通信回線の帯域を加算した後、HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列を格納し、転送元の中継装置に送信する。 【0098】転送先の中継装置から、HTTPレスポンスを受け取った転送元の中継装置は、HTTPレスポンスのエンティティボディの1行目が「受け付け可能」を表す文字列の場合に、待ち合わせテーブルの転送状況の項に当該転送ファイルが「転送実行中」であるフラグを立てると同時に、前記当該転送ファイルに許可した「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」をファイル転送実行テーブルに追加する。ファイル転送実行テーブルを表4に示す。 【0099】 【表4】
【0100】前記転送先の受付判断手段が、受け付け不可と判断した場合には、HTTPレスポンスのエンティティボディに「受け付け不可能」を表す文字列を格納し、転送元の中継装置に転送する。 【0101】転送先の中継装置から、HTTPレスポンスを受け取った転送元の中継装置は、HTTPレスポンスのエンティティボディの1行目が「受け付け不可能」を表す文字列の場合に、当該転送先の中継装置と前記レスポンスを受け取った時刻をメモリ上、もしくはデータベースに登録し、ある一定期間、当該転送先中継装置への転送ファイルを転送すべき転送ファイルの候補から除外する。 【0102】一方、「中継ファイル送信」の文字列を受けた転送先の中継装置は、前記HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列を格納した場合には、POSTメソッドのエンティティボディに「中継ファイル要求」、当該「ファイル識別子」、「受信済みバイト数(初回は0)」を表す文字列を改行で区切って格納し、転送元の中継装置に送信する。 【0103】HTTPサーバによって起動された転送元の中継装置の中継装置プログラムは、POSTメソッドのエンティティボディの1行目が「中継ファイル要求」を表す文字列である場合には、続く「ファイル識別子」、「受信済みバイト数(初回は0)」を読み取り、ファイルテーブルから当該「ファイル識別子」と組で登録されているファイルパスを取得し、前記「受信済みバイト数」以降の「転送を許可するファイルサイズ」分のファイルデータを、HTTPレスポンスのエンティティボディに格納して、当該中継装置に「転送に許可する通信回線の帯域」の帯域で転送する。 【0104】転送先の中継装置は、前記「転送を許可されたファイルサイズ」分のファイルデータを受信終了した場合、もしくは、「転送に許可する転送継続時間」を迎えた場合には、転送元の中継装置に対してのHTTPコネクションを終了する。転送先の中継装置は、実際に転送を行なったファイルサイズが、前記中継ファイル送信時に通知されたファイルサイズに満たない場合は、自拠点の蓄積容量から、前記ファイルサイズの差分を減ずる。 【0105】前記HTTPコネクションが切られたことを認識した転送元の中継装置は、「ファイル識別子」と組で登録されているファイルパス内のファイルデータの残りを算出し、「実際に転送が完了したファイルサイズ」を算出する。その後、「ファイル識別子」と当該「実際に転送が完了したファイルサイズ」を転送終了ファイル更新手段に通知し、その通知を受けた転送終了ファイル更新手段は、当該「ファイル識別子」の残りファイル容量を「実際に転送した転送ファイルサイズ」を用いて算出し、残りファイル容量が0である場合には、転送待ちファイルテーブルから当該ファイル情報を削除する。前記残りファイル容量が0でない場合には、ファイル情報のファイルサイズの項を前記残りファイル容量に更新し、また転送状況を転送待ちに更新する。さらに、ファイル転送実行テーブルから当該「ファイル識別子」に対応した実行中ファイル情報を削除する。 【0106】また、転送元の中継装置は、実際に転送を行なったファイルサイズを自装置の蓄積容量から減ずる。このようにして、転送ファイルは、着信装置最寄の中継装置に転送される。 【0107】次に、着信装置が転送ファイルを受信するまでを示し、その処理フローを図8に示す。着信装置は、あらかじめ教えられているURLに対してHTTPリクエストのPOSTメソッドのエンティティボディに、「着信ファイル情報要求」を表す文字列を格納し送信する。HTTPサーバによって起動された中継装置のプログラムは、POSTメソッドのエンティティボディの1行目が「着信ファイル情報要求」で表される文字列である場合に、HTTPにより通知されるHTTPクライアントのIPアドレスを取得し、ファイルテーブルから当該IPアドレスと組で登録されているファイル識別子と、ファイルサイズの組の集合を検索し、HTTPレスポンスのエンティティボディに当該ファイル識別子と当該ファイルサイズの組を改行で区切りながら格納し、当該着信装置に返送する。 【0108】着信装置は、HTTPレスポンスのエンティティボディからファイル識別子とファイルサイズの組の集合を読み取り、各々のファイル識別子について、当該ファイル識別子より当該ファイルの保存先となるファイルパスを決定し、当該ファイル識別子、当該ファイルサイズ、当該ファイルパスを構造体として持つ配列をしてメモリ上に保存する。 【0109】次に着信装置は、各々のファイル識別子について、HTTPのPOSTメソッドのエンティティボディに、「着信ファイル要求」、当該「ファイル識別子」、「受信済みバイト数(初回は0)」を表す文字列を改行で区切って、中継装置へ送信する。HTTPサーバにより起動された中継装置プログラムは、HTTPリクエストのPOSTメソッドのエンティティボディの1行目が「着信ファイル要求」である場合に、続く「ファイル識別子」、「受信済みバイト数」を読み取り、ファイルテーブルから当該ファイル識別子と組で登録されているファイルパスを取得し、当該ファイルパスの当該受信済みバイト数以降のファイルデータをHTTPレスポンスのエンティティボディに格納して、着信装置に返信する。 【0110】前記ファイルデータを着信装置に対して返信し終わった中継装置は、ファイルテーブルの当該ファイル識別子と組で格納されているファイルサイズを取得し、そのファイルサイズ分の蓄積容量を自装置の蓄積容量から減ずる。 【0111】当該HTTPレスポンスを受け取った着信装置は、メモリ上に保存されている当該ファイルのファイルパスを取得し、当該ファイルパスに蓄積されているデータの続きに当該HTTPレスポンスのエンティティボディの内容を蓄積する。このようにして、転送ファイルは、着信装置に伝送される。 【0112】また、転送ファイルが大容量である場合を考慮して、アップロードされた転送ファイルを複数個に分割して転送待ち合わせテーブルに追加し、前記複数個に分割された転送ファイル毎に転送許可を与えることも可能である。その場合と上記実施例との相違点を以下に示す。 【0113】発信装置から中継装置に対して「発信ファイル情報」が転送先の中継装置に送信される過程は、上記実施例と同様であり、また、要求されている転送ファイルが受け付け可能であるかどうかの判断も同様である。 【0114】転送が受け付け可能である場合には、受付ファイル登録手段により、転送持ちファイルテーブルに受け付けたファイル情報を登録する際には、「発信するファイルサイズ」をあらかじめ決められている閾値を超える毎に分割し、その分割した各々のファイル情報にブロック識別子と呼ばれる1つのファイルの中で連続している値を付与し、そのブロック識別子に対応したファイルサイズ(閾値もしくは、閾値以下の値)を算出する。その後、転送持ちファイルテーブルに、ファイル情報として「ファイル識別子」、「ブロック識別子」、「ファイルサイズ」、「宛先IPアドレス群」を登録する。前記転送待ちファイルテーブルを表5に示す。 【0115】 【表5】
【0116】受付ファイル登録手段は、前記ファイル情報を登録すると同時に、発信ファイル受付手段に対して、当該転送要求が受け付けられたことを示すメッセージを返却する。前記メッセージを受けた発信ファイル受付手段は、当該「ファイル識別子」を表す文字列をHTTPレスポンスのエンティティボディに含めて発信装置に通知する。転送が受け付け不可能である場合には、上記実施例と同様である。 【0117】発信装置がHTTPレスポンスのエンティティボディから、当該「ファイル識別子」を読み取り、転送が受け付けられたと判断した場合には、当該転送ファイルの「ファイルデータ(主情報)」中継装置に送信する過程は上記実施例と同様である。 【0118】HTTPサーバによって起動された中継装置プログラムは、上記実施例と同様に当該ファイルの蓄積を開始するが、エンティティボディの「ファイルデータ」が、前記閾値分蓄積される毎に、ブロックの識別子を算出し、転送待ちファイルテーブルのファイル識別子とブロック識別子が一致したファイル情報に、当該転送ファイルの待ち時間情報として、ファイルデータが蓄積された「受け付け時刻」と、「当該転送ファイルの転送品質に対応した転送優先度の初期値」、「当該転送ファイルの転送状況」を追加登録する。前記転送待ちファイルテーブルを表6に示す。 【0119】 【表6】
【0120】上記実施例と同様に待ち時間情報として、転送待ち合わせテーブルで各々の転送ファイルの待ち時間を随時算出しておく「累積待ち合わせ時間」を使用することも可能である。 【0121】転送すべき転送ファイルを決定して、転送を実行し、着信装置が当該転送ファイルを取得する過程は、上記実施例と同様である。 【0122】(第二実施例)第二実施例を以下示す。第二実施例は、第一実施例の発信装置、中継装置、着信装置が備える特徴を全て備えるが、中継装置のファイル蓄積および転送部分と、転送ファイルの受け付け判断および転送ファイルの決定を行なう転送ファイル選択部分とが装置として切り分けられている点が異なる。また、ある拠点の中継装置のファイル蓄積および転送部分は複数台存在する。本実施例のファイル転送装置のモデル図を図9に、実施形態を図10に示す。 【0123】まず、転送ファイルの受け付け判断および転送ファイルの蓄積までを示し、その処理フローを図11および図12に示す。発信装置から最寄の中継装置への発信ファイル情報送信、最寄り中継装置から、着信装置最寄りの中継装置までの中継ファイル情報送信の過程は、第一実施例と同様であり、発信装置から要求されているファイル情報は、各宛先アドレスを担当する着信装置最寄の中継装置に到達する。 【0124】前記「中継ファイル情報送信」の返り値がOKで返却されたことを確認した発信装置最寄の中継装置内のファイル蓄積および転送部分は、当該転送要求ファイルを要求されている転送品質で受け付け可能であるか否かの判断を行なうため、HTTPリクエストのPOSTメソッドのエンティティボディに「転送ファイル受け付け要求」、「ファイル識別子」、「発信するファイルサイズ」、「宛先IPアドレス群」、「発信するファイルに希望する転送品質」、「当該要求を通知したファイル蓄積および転送部分の識別子」を表す文字列を改行で区切って格納して転送ファイル選択部分に対して送信する。 【0125】HTTPサーバによって起動された転送ファイル選択部分のプログラムは、POSTメソッドのエンティティボディの1行目が「転送ファイル受け付け要求」を表す文字列である場合には、続く「ファイル識別子」、「発信するファイルサイズ」、「宛先IPアドレス群」、「発信するファイルに希望する転送品質」、「当該要求を通知したファイル蓄積および転送部分の識別子」を読み取り、それらの情報を用いて、第一実施例と同様に当該転送ファイルを受け付けるかの判断を行なう。 【0126】数式1により、当該転送ファイルを受け付け可能であると判断した場合には、HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列を格納し、ファイル蓄積および転送部分に対して返却し、同時に、「ファイル識別子」、「発信するファイルサイズ」、「宛先IPアドレス識別子」、「発信するファイルに希望する転送品質」、「当該要求を通知したファイル蓄積および転送部分の識別子」を転送ファイルのファイル情報として、転送待ちファイルテーブルに追加する。前記転送持ちファイルテーブルの形態を表7に示す。 【0127】 【表7】
【0128】HTTPレスポンスのエンティティボディから、「受け付け可能」を表す文字列を受けたファイル蓄積および転送部分は、HTTPレスポンスのエンティティボディに、「当該ファイル識別子」を表す文字列を格納して発信装置に通知する。 【0129】数式1により、当該転送ファイルを受け付け可能でないと判断した場合には、転送ファイル選択部分は、HTTPレスポンスのエンティティボディに「受け付け不可能」を表す文字列を格納し、ファイル蓄積および転送部分に対して返却し、前記HTTPレスポンスのエンティティボディから「受け付け不可能」を表す文字列を受け取ったファイル蓄積および転送部分は、第一実施例と同様にファイル情報削除送信を行ない、各宛先アドレスを担当する着信装置最寄りの中継装置のファイル情報が削除される。 【0130】全てのファイル情報を削除した後、ファイル蓄積および転送部分は、「受け付け不可能」を示す文字列をHTTPレスポンスのエンティティイボディに含めて発信装置に対して通知する。 【0131】発信装置が、HTTPレスポンスのエンティティボディから、当該「ファイル識別子」を読み取り、転送要求が受け付けられたと判断した場合には、HTTPリクエストのPOSTメソッドのエンティティボディに「発信ファイル送信」、当該「ファイル識別子」を表す文字列を改行で区切って格納した後、当該転送ファイルの「ファイルデータ(主情報)」のバイナリ列を格納して中継装置内のファイル蓄積および転送部分に対して送信を開始する。 【0132】HTTPサーバによって起動された中継装置内のファイル蓄積および転送部分のプログラムは、第一実施例と同様に、前記HTTPリクエストのPOSTメソッドのエンティティボディの1行目が、「発信ファイル送信」を表す文字列の場合には、発信ファイルの受信を実行し、次行の当該「ファイル識別子」を読み取り、ファイルテーブルから当該「ファイル識別子」と組で登録されているファイルパスを取得し、エンティティボディの「ファイルデータ」を読み取り、前記ファイルパスに蓄積を開始する。 【0133】前記ファイルデータの蓄積が終了した場合には、ファイル蓄積および転送部分は、HTTPレスポンスのエンティティボディに「発信ファイル受信完了」を示す文字列を含めて発信装置に通知すると同時に、HTTPリクエストのPOSTメソッドのエンティティボディに、「ファイル受信完了」、「ファイル識別子」、「ファイル受付時間」を表す文字列を改行で区切って格納し、転送ファイル選択部分に対して通知する。前記HTTPリクエストのエンティティボディの1行目が「ファイル受信完了」を表す文字列である場合は、転送ファイル選択部分は第一実施例と同様に、転送待ち合わせテーブルに当該転送ファイルの待ち時間情報として、「受け付け時刻」と、「当該転送ファイルの転送品質に対応した転送優先度の初期値」、「当該転送ファイルの転送状況」を追加登録する。前記転送待ち合わせテーブルの形態を表8、表9に示す。 【0134】 【表8】
【0135】 【表9】
【0136】また、ファイル蓄積および転送部分が、自装置の蓄積容量に発信されたファイルデータのファイルサイズ分を加えることは、第一実施例と同様である。 【0137】次に、受け付けられた転送ファイルの中から転送すべきファイルを決定し、転送を実行するまでを示し、その処理フローを図13および図14に示す。 【0138】転送ファイル選択部分は、第一実施例の同様の方法で、「転送に許可する通信回線の帯域」、「転送を許可するファイルサイズ」、「転送を許可する転送継続時間」を特定した後、HTTPリクエストのPOSTメソッドのエンティティボディに、「ファイル転送許可」、「ファイル識別子」、「送信する転送ファイルサイズ」、「転送する通信回線の帯域」、「転送継続時間」を改行で区切りながら格納し、「当該要求を通知したファイル蓄積および転送部分の識別子」に対応したファイル蓄積および転送部分に対して送信する。 【0139】HTTPサーバにより起動されたファイル蓄積および転送部分のプログラムは、POSTメソッドのエンティティボディの1行目が「ファイル転送許可」を表す文字列である場合には、続く、「ファイル識別子」、「送信する転送ファイルサイズ」、「転送する通信回線の帯域」、「転送継続時間」を読み取り、ファイルテーブルの当該ファイル識別子と組で格納されている宛先が示す中継装置に対して、中継ファイル送信メッセージを第一実施例と同様に送信する。 【0140】HTTPサーバにより起動された転送先の中継装置のファイル蓄積および転送部分は、POSTメソッドのエンティティボディの1行目が「中継ファイル送信」を表す文字列の場合には、続く、「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」を読み取り、自装置の転送ファイル選択部分に対して、HTTPリクエストのPOSTメソッドのエンティティボディに、「中継ファイル転送要求」、「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」を表す文字列を改行で区切って格納して送信する。 【0141】HTTPサーバにより起動された転送先の中継装置の転送ファイル選択部分は、POSTメソッドのエンティティボディの1行目が「中継ファイル転送要求」を表す文字列の場合に、続く「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」を読み取り、第一実施例と同様に、当該転送を受け付けるか否かの判断を行なう。 【0142】前記転送先の転送ファイル選択部分が、受け付け可と判断した場合には、自装置に蓄積されている蓄積容量に、当該転送ファイルサイズ分の蓄積容量を加算し、自装置の使用中の通信回線の帯域に当該ファイル転送に使用する通信回線の帯域を加算した後、HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列を格納し、転送先のファイル蓄積および転送部分に対して送信する。 【0143】前記HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列が存在した場合には、そのレスポンスを受けた転送先のファイル蓄積および転送部分は、HTTPレスポンスのエンティティボディに「受け付け可能」を表す文字列を格納し、転送元の中継装置へ送信する。 【0144】転送先の中継装置から、HTTPレスポンスを受け取った転送元の中継装置は、第一実施例と同様に、待ち合わせテーブルの転送状況の項に「転送実行中」であるフラグを立て、前記当該転送ファイルに許可した「ファイル識別子」、「送信する転送ファイルサイズ」、「宛先IPアドレス群」、「転送する通信回線の帯域」、「転送継続時間」をファイル転送実行テーブルに追加する。 【0145】前記転送先の転送ファイル選択部分が、受け付け不可と判断した場合には、HTTPレスポンスのエンティティボディに「受け付け不可能」を表す文字列を格納し、転送先のファイル蓄積および転送部分に送信し、前記レスポンスを受けた転送先のファイル蓄積および転送部分は、転送元のファイル蓄積および転送部分に対し、HTTPレスポンスのエンティティボディに「受け付け不可能」を表す文字列を格納して送信する。 【0146】転送先の中継装置から、HTTPレスポンスを受け取った転送元の中継装置は、HTTPレスポンスのエンティティボディの1行目が「受け付け不可能」を表す文字列の場合には、当該転送先の中継装置と前記レスポンスを受け取った時刻をメモリ上、もしくはデータベースに登録し、ある一定期間、当該転送先中継装置への転送ファイルを転送すべき転送ファイルの候補から除外する。 【0147】一方、「中継ファイル送信」の文字列を受けた転送先のファイル蓄積および転送部分は、第一実施例と同様に、HTTPリクエストのPOSTメソッドのエンティティボディに「中継ファイル要求」、当該「ファイル識別子」、「受信済みバイト数(初回は0)」を表す文字列を改行で区切って格納し、転送元の中継装置に送信する。 【0148】HTTPサーバによって起動された転送元の中継装置内のファイル蓄積および転送部分のプログラムは、POSTメソッドのエンティティボディの1行目が「中継ファイル要求」を表す文字列である場合には、第一実施例と同様に当該転送ファイルを転送する。転送が終了した際の転送元中継装置、転送先中継装置の過程は、第一実施例と同様である。このようにして、各転送ファイルは、着信装置最寄の中継装置に転送される。着信装置が転送ファイルを受信するまでは、第一実施例と同様である。 【0149】また、第一実施例と同様に、転送ファイルが大容量である場合を考慮して、アップロードされた転送ファイルを複数個に分割して転送待ち合わせテーブルに追加し、前記複数個に分割された転送ファイル毎に転送許可を与えることも可能である。その場合の相違点を以下に示す。 【0150】発信装置から中継装置に対して、「発信ファイル情報」が転送先の中継装置に送信される過程は、上記実施例同様であり、また、要求されている転送ファイルが受け付け可能であるかどうかの判断も同様である。 【0151】転送ファイル選択部分は、ファイル情報を転送待ちファイルテーブルに登録する際に、第一実施例と同様に、転送ファイルサイズを閾値により、複数個に分割し、その各々にブロック識別子を付与し、そのブロック識別子に対応したファイルサイズ(閾値もしくは、閾値以下の値)を算出する。その後、転送待ち合わせテーブルにファイル情報として、「ファイル識別子」、「ブロック識別子」、「ファイルサイズ」、「宛先IPアドレス群」を登録する。前記転送待ち合わせテーブルを表10に示す。 【0152】 【表10】
【0153】ファイル蓄積および転送部分に対して、受け付け可能を表すメッセージを送信し、前記メッセージを受けたファイル蓄積および転送部分が発信装置に前記メッセージを通知する部分は上記実施例と同様である。また、転送が受け付け不可能である場合も同様である。 【0154】転送が受け付けられたと判断した発信装置が、当該転送ファイルの「ファイルデータ(主情報)」を中継装置に送信し、ファイル蓄積および転送部分がファイルデータを蓄積する部分は、上記実施例と同様である。 【0155】ファイル蓄積および転送部分は、第一実施例と同様に、「ファイルデータ」が、閾値分蓄積される毎に、ブロックの識別子を算出し、HTTPリクエストのPOSTメソッドのエンティティボディに、「ファイル受信完了」、「ファイル識別子」、「ブロック識別子」、「ファイル受け付け時間」を表す文字列を改行で区切って格納し、転送ファイル選択部分に対して通知する。前記HTTPリクエストのエンティティボディの1行目が「ファイル受信完了」を表す文字列である場合は、転送ファイル選択部分は、転送待ちファイルテーブルのファイル識別子とブロック識別子が一致したファイル情報に、当該転送ファイルの待ち時間情報として、ファイルデータが蓄積された「受け付け時刻」と、「当該転送ファイルの転送品質に対応した転送優先度の初期値」、「当該転送ファイルの転送状況」を追加登録する。前記転送待ちファイルテーブルを表11に示す。 【0156】 【表11】
【0157】転送すべき転送ファイルを決定して、転送を実行し、着信装置が当該転送ファイルを取得する過程は、上記実施例と同様である。 【0158】(第三実施例)第三実施例を以下に示す。第三実施例は、第一実施例の発信装置、中継装置、着信装置が備える特徴を全て備えるが、中継装置間で、転送の輻輳状況を交換する部分が異なる。 【0159】第三実施例では、各中継装置間は、自拠点の転送状況を他の中継装置に通知することに伴い、自拠点以外の中継装置の転送状況を示すテーブルを保持する。前記テーブルを転送状況テーブルと呼び、転送状況テーブルを表12に示す。 【0160】 【表12】
【0161】各中継装置は、転送を受け付け、転送待ち合わせている転送ファイルのファイルサイズの総和が、あらかじめ定められている閾値を超えた場合には、HTTPリクエストのPOSTメソッドのエンティティボディに、転送状況通知として、「転送状況通知」、「転送状況(上記状態を輻輳と定義し、本要素には輻輳をのせる)」、当該「中継装置の識別子」を表す文字列を改行で区切って格納し、他の中継装置に対して通知する。HTTPサーバによって起動された転送先の各中継装置は、POSTメソッドのエンティティボディの1行目が「転送状況通知」を表す文字列である場合には、続く「転送状況」、当該「中継装置の識別子」を読み取り、転送状況テーブルの伝送先拠点と当該「中継装置の識別子」が一致する転送状況の項を、前記「転送状況」に更新する。このようにして、輻輳状態にある中継装置の存在が他の中継装置に反映される。 【0162】輻輳状態である旨を他の中継装置に通知した前記中継装置は、転送待ち合わせしている転送ファイルの総和が前記閾値を下回るまで、発信装置からの転送要求を棄却し、また、他の着信装置からの中継ファイル送信も棄却し、自拠点の転送待ち合わせている転送ファイルの転送に専念する。 【0163】また、各中継装置は、転送すべき転送ファイルを決定する際に、前記転送状況テーブルを参照し、転送先の中継装置の転送状況が「輻輳」となっている場合は、当該転送先中継装置向けの転送を選択せず、他の中継装置向けの転送ファイルを選択する。 【0164】次に、前記輻輳状態である旨を他の中継装置に通知した前記中継装置は、転送待ち合わせしている転送ファイルの総和が前記閾値を下回ったことを確認した場合には、他の中継装置に対して、HTTPリクエストのPOSTメソッドのエンティティボディに、転送状況通知として「転送状況通知」、「転送状況(上記状態を輻輳解除と定義し、本要素には正常をのせる)」、当該「中継装置の識別子」を表す文字列を改行で区切って格納して通知する。HTTPサーバによって起動された転送先の各中継装置は、POSTメソッドのエンティティボディの1行目が「転送状況通知」を表す文字列である場合には、続く「転送状況」、当該「中継装置の識別子」を読み取り、転送状況テーブルの転送先拠点と当該「中継装置の識別子」が一致する転送状況の項を、前記「転送状況」に更新する。 【0165】このようにして、輻輳状態にあった中継装置が輻輳状態から正常に戻ったことが他の中継装置に反映され、これまで、転送先が輻輳であったため転送侯補から除外されていた転送ファイルは、転送すべきファイル選択において転送候補となる。 【0166】なお、第二実施例のファイル転送システムに対しても、転送の輻輳状況を中継装置間で交換する部分を追加することが可能である。その場合は、上記の実施例に対して、自拠点の輻輳状況を他拠点の転送ファイル選択部分に送信する部分と他拠点からの輻輳状況を受信する部分と、送信もしくは受信した輻輳状況通知に基づいて転送状況テーブルを更新する部分と、転送状況テーブルを参照して、発信装置からの転送要求を棄却する部分と、転送すべき転送ファイルを決定する際に、「輻輳」となっている拠点向けの転送を選択せず、他の拠点向けの転送ファイルを選択する部分が、転送ファイル選択部分の担当となる点が異なる。 【0167】(第四実施例)第四実施例を以下に示す。第四実施例は、第一実施例の発信装置、中継装置、着信装置が備える特徴を全て備えるが、各中継装置の輻輳状況を管理する装置が存在することが異なる。 【0168】第四実施例の実現形態を図15に示す。第四実施例では、各中継装置の輻輳状況を管理する輻輳管理装置が存在する。前記輻輳管理装置は、その装置の内部に、各拠点の輻輳状況を表す通信状況テーブルを保持する。その通信状況テーブルを表13に示す。 【0169】 【表13】
【0170】各中継装置は、転送を受け付け、転送待ち合わせている転送ファイルのファイルサイズの総和が、あらかじめ定められている閾値を超えた場合には、HTTPリクエストのPOSTメソッドのエンティティボディに、転送状況通知として、「転送状況通知」、「転送状況(輻輳)」、当該「中継装置の識別子」を表す文字列を改行で区切って格納し、輻輳管理装置に対して通知する。HTTPサーバによって起動された輻輳管理装置のプログラムは、POSTメソッドのエンティティボディの1行目が「転送状況通知」を表す文字列である場合には、続く「転送状況」、当該「中継装置の識別子」を読み取り、転送状況テーブルの転送先拠点と「当該中継装置の識別子」が一致する転送状況の項を、前記「転送状況」に更新する。前記通知を受けた輻輳管理装置は、輻輳している中継装置に対しての転送待ち合わせファイルサイズの容量を問い合わせるために、HTTPリクエストのPOSTメソッドのエンティティボディに、「転送ファイルサイズ問い合わせ」、「輻輳している中継装置の識別子」を表す文字列を改行で区切って格納し、輻輳している中継装置以外の中継装置に対して送信する。 【0171】HTTPサーバによって起動された輻輳している中継装置以外の各中継装置のプログラムは、POSTメソッドのエンティティボディの1行目が「転送ファイルサイズ問い合わせ」を表す文字列である場合には、続く「輻輳している中継装置の識別子」を読み取り、自拠点内で、転送待ち合わせしている転送ファイルの中で、前記「輻輳している中継装置」向けへの転送ファイルのファイルサイズの総和を算出し、HTTPレスポンスのエンティティボディの中に、「転送ファイルサイズ回答」、前記「ファイルサイズの総和」を表す文字列を改行で区切って格納し、輻輳管理装置に対して送信する。 【0172】前記HTTPレスポンスを受け取った輻輳管理装置は、HTTPレスポンスのエンティティボディの1行目が「転送ファイルサイズ回答」を表す文字列である場合に、続く「ファイルサイズの総和」を読み取る。前記「転送ファイルサイズ問い合わせ」を通知した全ての中継装置からのHTTPレスポンスを受けとった輻輳管理装置は、各々の中継装置が蓄積している、輻輳している中継装置向けのファイルサイズの総量を知ることができる。 【0173】前記輻輳している中継装置向けのファイルサイズの総量を把握した輻輳管理装置は、各中継装置から通知された輻輳している中継装置向けのファイルサイズの総量を、通知された輻輳している中継装置向けのファイルサイズの総量の総和で除し、さらに、その値に、ある決められたタイムスロットを乗じることで、輻輳していない各中継装置が輻輳している中継装置に対して、ファイル転送を試みて良いタイムスロットを算出する。その形態を図17に示す。 【0174】次に、輻輳管理装置は、HTTPリクエストのPOSTメソッドのエンティティボディに、「転送許可時間通知」、「転送を許可する時間の開始時刻」、「転送を許可する時間の終了時刻」を表す文字列を改行で区切って格納し、輻輳していない各中継装置に対して送信する。 【0175】HTTPサーバにより起動された各中継装置のプログラムは、POSTメソッドのエンティティボディの1行目が「転送許可時間通知」を表す文字列である場合には、続く「転送を許可する時間の開始時刻」、「転送を許可する時間の終了時刻」を読み取り、メモリ上もしくは、データベース上に格納し、転送すべきファイルを決定する際に、前記許可された時刻内以外では、輻輳している中継装置向けの転送ファイルを選択しない。 【0176】次に、前記輻輳状態である旨を輻輳管理装置に通知した中継装置は、転送待ち合わせしている転送ファイルの総和が前記閾値を下回ったことを確認した場合には、輻輳管理装置に対してHTTPリクエストのPOSTメソッドのエンティティボディに、転送状況通知として、「転送状況通知」、「転送状況(正常)」、「当該中継装置の識別子」を表す文字列を改行で区切って格納して通知する。 【0177】HTTPサーバによって起動された輻輳管理装置のプログラムは、POSTメソッドのエンティティボディの1行目が「転送状況通知」を表す文字列である場合には、続く「転送状況」、当該「中継装置の識別子」を読み取り、転送状況テーブルの転送先拠点と「当該中継装置の識別子」が一致する転送状況の項を、前記「転送状況」に更新し、さらに、輻輳していない中継装置に対して、HTTPリクエストのPOSTメソッドのエンティティボディに、「転送状況通知」、当該「中継装置の識別子」を表す文字列を改行で区切って格納して通知する。HTTPサーバによって起動された各中継装置のプログラムは、POSTメソッドのエンティティボディの1行目が「転送状況通知」を表す文字列である場合には、続く当該「中継装置の識別子」を読み取り、メモリ上、もしくはデータベース上に格納していた当該中継装置への転送を許可された開始時刻、終了時刻を消去し、それ以降は、輻輳していた中継装置向けのファイル転送が転送すべきファイルを決定する際に選択される。 【0178】なお、第二実施例のファイル転送システムに対しても、各中継装置の輻輳状況を管理する装置を追加することは可能である。その実施形態を図16に示す。その場合は、上記の実施例に対して、HTTPリクエストのPOSTメソッドを用いて、転送状況通知を輻輳管理装置に対して送信する部分と、前記転送状況通知を受けた輻輳管理装置からのHTTPリクエストのPOSTメソッドを用いた転送待ち合わせファイルサイズの容量の問い合わせを受信し、HTTPレスポンスのエンティティボディの中に、「転送ファイルサイズ回答」を輻輳管理装置に対して送信する部分と、輻輳管理装置からのHTTPリクエストのPOSTメソッドを用いた「転送許可時間通知」を受信する部分と、前記転送許可時間通知に基づいて、「転送を許可する時間の開始時刻」、「転送を許可する時間の終了時刻」を読み取り、メモリ上もしくは、データベース上に格納する部分と、転送待ち合わせしている転送ファイルの総和が前記閾値を下回ったことを確認した場合には、輻輳管理装置に対して、HTTPリクエストのPOSTメソッドにより転送状況通知を送信する部分と、輻輳管理装置から転送状況通知を受信する部分と、前記転送状況通知に基づき、メモリ上、もしくはデータベース上に格納していた当該中継装置への転送を許可された開始時刻、終了時刻を消去する部分が、転送ファイル選択部分の担当となる点が異なる。 【0179】 【発明の効果】以上説明したように、本発明によれば、転送要求が受け付けられた転送ファイルのファイル情報が待ち合わせテーブルに記述されるため、前記転送ファイルの受け付け以後に別の転送要求があった場合に、前記転送ファイルが例えアップロード未完了であっても、前記転送ファイルの存在を考慮して、前記転送ファイル以降の受け付け判断を行なうことが可能となる。 【0180】転送ファイルの転送品質と、各転送ファイルの待ち時間情報を元に、転送順序を制御できることで、伝送ファイルに求められている転送品質を保証したファイル転送を行なうことが可能となる。 【0181】転送するファイルサイズに依存することなく、各転送ファイルに対する転送品質を均一化することが可能となる。 【0182】あらかじめ輻輳状態である中継装置が他の中継装置に輻輳状態である旨を通知することで、輻輳状態に陥っている中継装置向けの転送を抑制することができ、その分輻輳状態でない中継装置に対する転送を実行することが可能となる。 【0183】同一拠点にファイル蓄積および転送部分が複数個存在している場合には、各々のファイル蓄積および転送部分に蓄積されている転送ファイルの情報を一元管理することで、異なるファイル蓄積および転送部分に蓄積されている転送ファイル間の優先度を考慮した転送順序制御をすることが可能となる。 【0184】各転送ファイルを受け付けた時刻を転送待ちファイルテーブルに保持しておくことで、各転送ファイルの待ち時間情報を即座に算出でき、前記待ち時間情報を元に各転送ファイルの転送優先度を算出することが可能となり、前記転送優先度に基いて転送を実行する順序を制御可能となる。 【0185】各転送ファイルが待ち合わせている累積待ち合わせ時間を転送持ちファイルテーブルに保持しておくことで、待ち時間情報を収得することができ、前記待ち時間情報を元に各転送ファイルの転送優先度を算出することが可能となり、前記転送優先度に基づいて転送を実行する順序を制御可能となる。 【0186】転送を許可した転送ファイルの転送が完了した後に、実際に転送した転送ファイルのサイズを通知してもらい、前記通知を元に転送待ち合わせテーブルを更新することで、転送ファイルのファイル情報のみを保持している転送待ち合わせテーブルと、実際の蓄積している転送ファイルのサイズの整合性をとることが可能となる。 【0187】転送を許可する転送ファイルを決定する際に、転送すべきファイルの決定と同時に当該転送ファイルに許可するファイルサイズを与えることで、転送するファイルのサイズに依存することなく、各転送ファイルに対する転送品質を均一化することが可能となる。 【0188】転送を許可する転送ファイルを決定する際に、転送すべきファイルの決定と同時に当該転送ファイルに許可する通信回線の帯域を与えることで、転送が決定した転送ファイルの通信品質を考慮した通信回線の帯域を割り当てることが可能となる。 【0189】転送を許可する転送ファイルを決定する際に、転送すべきファイルの決定と同時に当該転送ファイルに許可する転送継続時間を与えることで、転送継続時間を経過しても転送終了通知を出さない転送ファイルに対しての処理を行なうことが可能となる。 【0190】以上をまとめると、本発明は、転送ファイルの転送品質を考慮した、転送受け付け判断および転送順序決定を行なうことにより、多段階の転送品質保証を設けたファイル転送サービスを実現することが可能となる。
|
| 【出願人】 |
【識別番号】000004226 【氏名又は名称】日本電信電話株式会社
|
| 【出願日】 |
平成12年10月23日(2000.10.23) |
| 【代理人】 |
【識別番号】100078237 【弁理士】 【氏名又は名称】井出 直孝 (外1名)
|
| 【公開番号】 |
特開2002−132615(P2002−132615A) |
| 【公開日】 |
平成14年5月10日(2002.5.10) |
| 【出願番号】 |
特願2000−323002(P2000−323002) |
|