JP2004531824A - ネットワーク環境でのファイル伝送方法 - Google Patents

ネットワーク環境でのファイル伝送方法 Download PDF

Info

Publication number
JP2004531824A
JP2004531824A JP2002590595A JP2002590595A JP2004531824A JP 2004531824 A JP2004531824 A JP 2004531824A JP 2002590595 A JP2002590595 A JP 2002590595A JP 2002590595 A JP2002590595 A JP 2002590595A JP 2004531824 A JP2004531824 A JP 2004531824A
Authority
JP
Japan
Prior art keywords
file
transmission
server
transmitting
devices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002590595A
Other languages
English (en)
Inventor
チャン パーク,ヤン
Original Assignee
チャン パーク,ヤン
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by チャン パーク,ヤン filed Critical チャン パーク,ヤン
Publication of JP2004531824A publication Critical patent/JP2004531824A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本発明は、ネットワーク環境で複数のサーバーから一つのファイルを分割して伝送させる方法に関する。本発明に係る方法は、前記ファイルを格納しているデバイスに関する情報を、当該ファイル伝送を管理するファイル管理システムから受信するステップと、ユーザーデバイスが伝送を希望するファイルを選択するステップと、前記ファイルを格納している複数のデバイスから前記ファイルを伝送する少なくとも一つのサーバーを決めるステップと、前記少なくとも一つのサーバーのそれぞれに対して前記ファイルの所定のフラグメントを伝送するように要請するステップと、前記少なくとも一つのサーバーのそれぞれから前記要請したファイルのフラグメントを伝送されるステップと、前記伝送されたファイルのフラグメントを一つのファイルに併合するステップとを含むことを特徴とする。前記ファイル管理システムは、別のファイル管理サーバーとして存在することもでき、あるいはまた、複数のデバイス間において分散されて存在することもできる。ファイルの伝送途中でサーバーのいずれか一つに障害が生じた場合、他のサーバーに代替して伝送を行わせることにより、サーバーの障害に関係なく、安定してファイルを伝送することができる。

Description

【技術分野】
【0001】
本発明は、ネットワーク環境でのファイル共同伝送方法に関し、より詳しくは、ネットワーク環境で複数のサーバーから一つのファイルを分割して伝送させる方法に関する。
【背景技術】
【0002】
従来のネットワーク環境のクライアント/サーバーモデルでは、クライアントが一つのサーバーに接続して、所望するファイルを伝送させる方式、いわゆる1:1伝送方式が採用されていた。
【0003】
この方式では、サーバーの伝送速度が遅い場合、クライアントが自己の帯域幅を十分に活用することができない状態で、低速でのファイルの伝送を強いられ、最適のサーバーに接続した場合であっても、伝送途中でインターネットへの接続者の数が増大すると、伝送速度が顕著に低下するという不具合があった。
また、ファイルを伝送するサーバーに障害が生じると、ファイルの伝送が失敗となるため、クライアントは、他のサーバーに接続して、所望するファイルを再送させなければならないという不具合があった。
【0004】
ファイルの伝送速度の向上のために、米国特許公報第6,085,251号には、並列してファイルを伝送する方法が開示されている。この方法では、サーバーが一つのファイルを多数のパケットに分割し、それを並列してクライアントに伝送するとともに、クライアントから該パケット受信信号を返信させることにより、クライアントにその分割事実を知らせて、クライアント側で前記多数のパケットを一つのファイルに併合するようにしている。
【0005】
この方法では、パケットを一つずつ伝送して受信の有無を確認するのに比べて、ファイルの伝送速度が顕著に速いという効果があるものの、サーバーに障害が生じると、ファイルの伝送が不可能になるため、安定したファイルの伝送の保証は不可能であった。
【0006】
1:1伝送方式がこのような限界を抱えており、近年、パーソナルコンピュータの性能の向上に伴って、パーソナルコンピュータがサーバーの役割を果たせる環境が備えられた現状においては、敢えて1:1伝送方式を固守する必要はない。
【0007】
本発明は、かかる点に鑑みてなされたものであって、1:1伝送方式でなく、多数のサーバーから一つのファイルを複数に分割して伝送させることにより、ユーザーが最大限に帯域幅を活用することができるようにすることで、伝送速度を向上させることを目的とする。
また、本発明は、伝送途中で複数のサーバーのいずれか一つに障害が生じる場合、他のサーバーに代替してファイルの伝送を行なわせることにより、サーバーの障害に関係なく、安定してファイルを伝送することを目的とする。
さらに、本発明は、一つのファイルを複数に分割して複数のサーバーから伝送させることを可能にするための前提要件として、複数のサーバーが同一ファイルのフラグメントの伝送を保証する方法を提供することを目的とする。
さらにまた、本発明は、一つのデバイスにファイルの全体を格納することができない場合、このファイルを複数のデバイスに分散して格納し、本発明に係るファイル伝送方法によりファイルの全体の内容が見られるようにする方法を提供することを目的とする。
【発明の開示】
【0008】
前記目的を達成するために、本発明の第1の態様は、ネットワークを介して接続された複数のデバイス間においてファイルを伝送するための方法であって、ユーザーデバイスが伝送を希望するファイルを選択するステップと、前記ファイルを格納しているデバイスに関する情報を、当該ファイル伝送を管理するファイル管理システムから受信するステップと、前記ファイルを格納している複数のデバイスから前記ファイルを伝送する少なくとも一つのサーバーを決めるステップと、前記少なくとも一つのサーバーのそれぞれに対して前記ファイルの所定のフラグメントを伝送するように要請するステップと、前記少なくとも一つのサーバーのそれぞれから前記要請したファイルのフラグメントを伝送させるステップと、前記伝送されたファイルのフラグメントを一つのファイルに併合するステップとを含むことを特徴とする。
【0009】
ここで、サーバーとは、サーバーの役割を果たすデバイス、即ち、ファイルを伝送するデバイスを意味し、伝送はダウンロードのみならず、ストリーミングを含む。
一つのファイルを複数のサーバーから伝送させるためには、ファイルの伝送を管理するシステムが存在する必要があるが、かかるファイル管理システムは、別のファイル管理サーバーとして存在してもよく、あるいはまた、複数のデバイス間において分散されて存在してもよい。
【0010】
前記ユーザーデバイスがファイルの伝送を要請する少なくとも一つのサーバーを決めるときは、伝送速度が速い順に決めることが好ましい。
また、複数のサーバーのそれぞれからファイルのフラグメントを伝送させるときは、伝送速度が速いサーバーから多くの分量を伝送させ、伝送速度が遅いサーバーから少ない分量を伝送させることが好ましい。
【0011】
ユーザーデバイスが複数のサーバーのそれぞれからファイルのフラグメントを伝送された後は、この情報をログファイルに記録するが、後でこのログファイルは、ファイルのフラグメントを併合して一つのファイルにする際に用いられる。
【0012】
ユーザーデバイスは、各サーバーから一定の大きさのパケットを伝送される度にサーバーの伝送速度を評価し、速度が急激に低下する場合、または、伝送が不安定なサーバーが存在する場合、このサーバーは他のサーバーに代替される。
代替サーバーは、ファイル管理システムから受信した、ファイルを格納している複数のデバイスのリストから決めるか、または、ファイル管理システムに前記リストを再度要請し、更新されたリストから決める。
【0013】
一方、一つのファイルを複数のサーバーが分割して伝送するためには、複数のサーバーのすべてが、同一ファイルのフラグメントを伝送していることを保証しなければならないが、本発明では、ファイルが伝送される際、メタファイルに原本ファイルの情報を記録しておき、他のユーザーにファイルのフラグメントを伝送するとき、伝送するファイルをメタファイルに格納されている情報と比較する方法を用いる。
【0014】
かかる本発明の第1の態様によれば、複数のサーバーから一つのファイルを分割して伝送させることにより、ユーザーらが最大限に帯域幅を活用することができるようにすることで、伝送速度を向上させることができる。また、伝送途中で複数のサーバーのいずれか一つに障害が生じた場合、他のサーバーに代替して伝送を行なわせることで、サーバーの障害に関係なく、安定してファイルを伝送することができる。
【0015】
本発明は、一つの完全なファイルを複数のサーバーから分割して伝送させる場合のみならず、ファイルが実際に複数箇所に分割されて格納されている場合でも用いることができる。
即ち、本発明の第2の態様は、一つのファイルがネットワークを介して接続された複数のデバイスに分散されて格納された場合において前記ファイルを呼び出すための方法であって、前記ファイルを構成する各フラグメントを格納している複数のデバイスに関する情報を、ファイル伝送を管理するファイル管理システムから受信するステップと、前記ファイルの各フラグメントを格納している複数のデバイスから前記各フラグメントを伝送する少なくとも一つのサーバーを決めるステップと、前記ファイルの各フラグメントを、前記決められた少なくとも一つのサーバーから分散して伝送させるステップと、前記伝送されたファイルの各フラグメントを一つのファイルに併合するステップとを含む。
【0016】
また、本発明の第3の態様は、ネットワークを介して接続された複数のデバイスのいずれか一つから複数のデバイスにファイルを伝送するための方法であって、前記一つのデバイスは、前記複数のデバイスのうちの最も伝送速度が速いデバイスに前記ファイルを伝送するステップと、前記ファイルを伝送された最も伝送速度が速いデバイスは、前記複数のデバイスのうちの二番目に伝送速度が速いデバイスにファイルを転送し、前記ファイルを転送された二番目に伝送速度が速いデバイスは、三番目に伝送速度が速いデバイスに前記転送されたファイルを転送する方式で、最も伝送速度が遅いデバイスまでファイルを伝送するステップとを含み、前記一つのデバイスが前記複数のデバイスのいずれか一つへのファイルの伝送を完了したとき、前記複数のデバイスのうちの他のいずれか一つのデバイスに前記ファイルを転送することを特徴とする。
【0017】
また、本発明の第4の態様は、ネットワークを介して接続された複数のデバイスのいずれか一つから複数のデバイスにファイルを伝送するための方法であって、前記一つのデバイスが複数のデバイスに前記ファイルを伝送するステップと、前記伝送時の伝送量が所定の基準を超える場合、前記一つのデバイスが、前記複数のデバイスのうちの最も伝送速度が速いデバイスにのみ前記ファイルを伝送し、前記最も伝送速度が速いデバイスは、前記一つのデバイスから前記ファイルを伝送されると同時に、それを前記複数のデバイスのうちの他のデバイスに転送するステップとを含む。
かかる本発明の第3の態様と第4の態様によれば、一つのデバイスから複数のデバイスにファイルを高速で伝送することができる。
【発明を実施するための最良の形態】
【0018】
以下、本発明の好適な実施例を添付した図面を参照して詳細に説明する。
図1は、本発明に係るファイル管理システムの全体構成を示す。同図に示すように、本発明に係るファイル管理システムは、ネットワーク10を介して接続された複数のデバイス201、202、203、…、20nを含む。
ネットワーク10は、モデムとPSTN、専用線、ISDN等を用いた有線インターネットとセルラー、PCS、マイクロ波や衛星通信網等を介した無線インターネット、LAN、イントラネット、エクストラネット等のネットワーキングが可能なすべての環境を含む。
【0019】
デバイス201、202、203、…、20nは、PC、ワークステーション、ミニコンピュータ、メインフレームコンピュータ、ノートブックコンピュータ、一般の携帯用通信端末、PDA、セットトップボックス、デジタルテレビ、ウェブフォン等のデータ通信が可能なデバイスであればいずれも使用可能である。
デバイス201、202、203、…、20nは、ネットワーク10に接続された他のデバイスからファイルを伝送されたり、他のデバイスにファイルを伝送したりすることができ、このために、各デバイスの位置、ファイル情報等を管理するファイル管理システム30が存在する。
【0020】
ファイル管理システムは、一つのデバイスが複数のデバイスからファイルを分割して伝送されることができるようにするために、複数のデバイスが共通して有するファイルには固有のファイルIDを与え、各デバイス間において伝送可能なファイルのリストを管理する等の機能を果たすものであり、図1に示す複数のデバイスのいずれか一つがファイル管理システムになることもでき、複数のデバイスが互いに協力してファイル管理システムを構成することもできる。
【0021】
ファイル管理システムの各種の類型を図2〜図4に示す。
図2は、中央管理型ファイル管理システム30を示す図であって、ファイル管理システムをサーバーのような大型デバイスに具現している。この場合、ファイル管理サーバーがファイルの伝送に必要なすべての情報を管理し、デバイス間のファイルの伝送を総括して制御する。
【0022】
図3は、分散型ファイル管理システム30を示す図であって、ファイル管理システムを複数のデバイスに分散している。この場合、ファイルの共同伝送に必要な情報は、各デバイスに分散して格納されており、ファイルの伝送の制御は、複数のデバイスが協力して行なう。
【0023】
図4は、ハイブリッドファイル管理システム30を示す図であって、図2と図3のシステムを結合したものである。この場合、ファイルの伝送に必要な情報管理及びファイル伝送の制御は、主にファイル管理システム30で行われるが、他のデバイスでも若干ではあるが分担して行われる。
図2〜図4は、ファイル管理システムの例示に過ぎず、その他にも様々なトポロジーで具現可能である。
【0024】
図5は、本発明によりファイルの伝送が行われる過程を説明するためのフローチャートである。
まず、ファイルの伝送を希望するユーザーデバイス20は、伝送を希望するファイルのリストをファイル管理システム30から受信し(S501)、このうちの伝送を希望するファイルを指定してファイル管理システム30に知らせる(S502)。
ファイル管理システム30は、前記ユーザーデバイス20が指定したファイルを格納しているデバイスを把握し、かかる各デバイスの位置と伝送速度を計算し、伝送速度が速い順にデバイスを並ベてリスト化し、これをユーザーデバイス20に伝送する(S503)。
【0025】
かかるデバイスのリスト(以下、“候補サーバーリスト”と称し、“サーバー”は、サーバーの役割を果たすデバイスを意味する。)の例を図6に示す。
同図に示すように、候補サーバーリストは、各サーバー別に、サーバーID601、サーバーの位置602、及び、サーバーの伝送速度603を含み、サーバーの伝送速度が速い順に並ベられている。
サーバーの伝送速度603は、帯域幅と現在行なっている作業の数等を考慮して計算される。
【0026】
ユーザーデバイス20は、前記候補サーバーリストを受信し、このうちからファイルを伝送させるのに適しているサーバーを決める(S504)。即ち、ユーザーデバイス20は、自己の帯域幅を最大限に活用することができるように、最も伝送速度が速いデバイスから順にn個のサーバー40を指定する。これを数式で表すと、次のとおりである。
【0027】
【数1】
Figure 2004531824
前記式中、BWはユーザー帯域幅を、viはi番目のデバイスの伝送速度をそれぞれ表す。
【0028】
前記数式から分かるように、ユーザーデバイス20が、帯域幅を最大限に活用するためには、サーバー40の伝送速度の和の値が、帯域幅に近い値になる必要があり、帯域幅より大きいか、または、同一であることが好ましい。例えば、モデムユーザーのように遅い伝送速度の環境では、最も伝送速度が速いサーバー40を一つ程度指定すれば足りる。
【0029】
ユーザーデバイス20が、伝送速度が速いn個のサーバー40を決めた後は、前記決められた複数のサーバー40のそれぞれから、ファイルのどのフラグメントをどのくらいの大きさで伝送させるかを決める(S504)。この場合、伝送速度が速いサーバー40からは多くのフラグメントが伝送され、伝送速度が比較的遅いサーバー40からは少量のフラグメントを伝送させることが好ましい。これを数式で表すと、次のとおりである。
【0030】
【数2】
Figure 2004531824
前記式中、fiはi番目のデバイスが割り当てられたファイルフラグメントの大きさを、Fは伝送されるファイルの大きさをそれぞれ表す。
【0031】
ステップS504で決められた伝送サーバー40のリストと各サーバー40が伝送すべきファイルのフラグメントに関する情報は、ログファイルに記録される。このログファイルは、後でユーザーデバイス20が複数のサーバー40からファイルフラグメントを伝送され、一つのファイルに併合するときに必要となる。
【0032】
次いで、ユーザーデバイス20は、決められた伝送サーバー40あてに、伝送を希望するファイルのフラグメントに関する情報を知らせるとともに、ファイルの伝送を要請する(S505)。
ユーザーデバイス20は、ファイルフラグメントが伝送され、伝送された情報をログファイルに記録する。
【0033】
この過程でファイル伝送に障害のあるサーバー40は、他のサーバー40に代替してファイルを再送させるが、ファイルの伝送については後述する。
また、複数のサーバーから伝送されるファイルのフラグメントは、いずれも同一ファイルのフラグメントである必要があるが、かかるファイルの同一性を保証するための方法については後述する。
【0034】
複数のサーバー40からのファイルのフラグメントの伝送がすべて完了すると、ユーザーデバイス20は、ログファイルに基づいて、ファイルのフラグメントを一つのファイルに併合し(S507)、ファイル管理システム30にファイルの伝送完了を知らせる(S508)。
【0035】
図7は、ログファイルの例を示している。
同図のログファイルは、全体が10000000バイトのファイルのうちの1000001バイトから50000000バイトまでを3番目のサーバー40から伝送させようとしたが、ファイル伝送途中で障害が生じて、2000578バイトまで伝送され、残りを他のサーバー40から“フラグメント6”として伝送させる状況を示している。
ユーザーデバイス20は、図7に示すようなログファイルの伝送情報に基づいて、ファイルのフラグメントを併合して一つのファイルにする。
【0036】
ファイルの伝送が完了した後、ユーザーデバイス20には、伝送されたファイルが固有のファイルIDが付されて格納され、ファイル管理システム30は、前記ユーザーデバイス20が前記ファイルIDを有するファイルを格納していることを記憶する。
前記伝送されたファイルがユーザーのファイル修正、位置変更、損傷等によりファイルの同一性が保証できない場合には、ファイル共有環境から削除または排除することができる。
【0037】
以下、本発明によるファイルフラグメントの伝送ステップ(図5のS506)について詳しく説明する。
ユーザーデバイス20は、各サーバーから一定の大きさのパケットを伝送される度に伝送速度を評価し、これを伝送管理に用いる。サーバーの伝送速度は、常に一定ではなく、伝送途中でも変化し続けるため、ファイルフラグメントの伝送途中で急激に伝送速度が低下したり、伝送が不安定なサーバーがある場合、当該サーバーを他のサーバーに代替させる必要があるためである。
【0038】
伝送サーバーを代替させるためには、図6に示すような候補サーバーリストを用いる。この候補サーバーリストから伝送速度が比較的速い他のサーバーを決めた後、前記障害のあるサーバーに割り当てられた伝送量のうちの未伝送の部分を伝送させる。障害のあるサーバーを代替するサーバーは複数でもよい。
候補サーバーリストにおいて、代替することができるようなサーバーが存在しない場合は、ユーザーデバイス20は、ファイル管理システムに要請して、更新された候補サーバーリストを受信し、このうちから代替サーバーを選ぶ。
【0039】
次いで、サーバーから伝送されるファイルのフラグメントが、いずれも同一ファイルのフラグメントであることを保証する方法について説明する。
前述したように、一つのファイルを複数のデバイスが分割して伝送するためには、複数のデバイスが、いずれも同一ファイルのフラグメントを伝送することを保証しなければならない。
複数のデバイスが、互いに同一でないファイルのフラグメントを伝送し、ユーザーデバイスがこれらのフラグメントを併合して一つのファイルにする場合、伝送されたファイルは、所望するファイルでない損傷されたファイルになってしまう。
【0040】
かかるファイルの同一性を保証するために、本発明では、ファイルが伝送される際、メタファイルに原本ファイルの情報を記録しておき、他のユーザーにファイルのフラグメントを伝送するときに、伝送すべきファイルをメタファイルに格納している情報と比較する方法を用いる。
比較の結果、同一ファイルである場合は、伝送を行う。同一のファイルでない場合は、ファイル管理システムから新たなIDを与えられて新たなファイルとして管理する。ファイルが同一であるか否かは、具体的に次のような方法で判断することができる。
【0041】
最初に、ファイルの大きさの情報を用いて、ファイルの大きさが同一である場合、同一ファイルであると判断する。
第二に、ファイルをm個のフラグメントに分割した後、各フラグメントの一定の部分に関する情報をメタファイルに記録しておく。
前記ファイルを他のデバイスに伝送する際、伝送すべきフラグメントの一定の部分を、メタファイルに記録している情報と比較して、同一である場合は、同一ファイルであると判断する。このとき、前記一定の部分の位置と大きさは、ファイル管理システムの必要に応じて調整することができる。
第三に、ファイルをm個のフラグメントに分割した後、各フラグメントのすべての内容をコード化してメタファイルに記録し、前記ファイルを他のデバイスに後で伝送する際、伝送すべきフラグメントをコード化した後に、メタファイルに記録されているコードと比較する。コードが相違する場合、同一ファイルでないと判断して、そのフラグメントの伝送を止め、全体のシステムにおいて新たなファイルとして管理する。
【0042】
仮に、メタファイルにフラグメントのすべての内容を記録した後に比較するとした場合ファイルの同一性を100%確実に保証することができるが、このような場合、メタファイルの大きさが、原本ファイルの大きさと同一となり、資源の浪費にもつながる。
したがって、伝送されたフラグメントの内容を適宜の大きさでコード化した後、メタファイルに記録する方法を使用するのである。
【0043】
ファイルのフラグメントをコード化する方法を数式で表すと、次のとおりである。
【数3】
Figure 2004531824
前記式中、fはコード化関数を、xiはi番目のフラグメントの内容をそれぞれ表す。
コード化関数とコードの大きさは、ファイル管理システムが自己の目的に合わせて適宜選択するが、最も簡単なコード化関数として、内容の和を求める関数が例に挙げられる。同一性の保証に、より比重をおく場合は、内容の損失が全くない圧縮方法をコード化関数として用いることもできる。
【0044】
図8は、図5に示す過程によりユーザーデバイスが複数のサーバーからファイルのフラグメントを伝送され、一つのファイルに併合する形態を示す図である。
同図において、五つのサーバー81〜85が、ユーザーデバイス20にそれぞれファイルのフラグメントを伝送するが、伝送速度が最も速いサーバーが多量のフラグメントを伝送する。同図では、最も多量のフラグメントを伝送するサーバー83が、最も伝送速度が速く、最も少量のフラグメントを伝送するサーバー81が、最も伝送速度が遅い。
【0045】
このように、五つのサーバー81〜85が、協力して一つのファイルを伝送することにより、ユーザーデバイス20は、自己が活用することができる最大限の帯域幅を使用することができ、これにより、ファイル伝送速度が顕著に向上する。
【0046】
ここまでは、一つの完全なファイルを複数のサーバーから分割して伝送させる方法を説明してきたが、ファイルが実際に複数個所に分割されて格納されている場合でも、同様に本発明を適用することができる。
したがって、本発明の共同ファイル伝送方法及びシステムは、大容量のファイルの分散格納方法としても使用できる。以下、これについて説明する。
【0047】
ファイルの大きさが大きい場合、デバイスによってはファイルの全体が格納できない場合も発生しかねない。この場合、ファイルの全体が格納できないデバイス(デバイスAとする。)は、大容量のファイルを分割して一定のフラグメントだけを格納し、残りのフラグメントは、他のデバイスに格納させるようにする。
【0048】
そして、デバイスAが、前記大容量のファイルの内容を見たい場合は、本発明に係るファイル管理システムを用いて、ファイルの他のフラグメントを伝送させることにより、まるで自己が全体のファイルを管理しているかのようにして、ファイルの内容を見ることができる。このとき、複数のデバイスに分散されて格納されているファイルの複数のフラグメントは、ファイル管理システムにより、それぞれ一般のファイルとして取り扱われ、ファイルの伝送過程も、図5に基づいて前述した伝送過程と同様である。
【0049】
例えば、デバイスAが、ある大容量のファイルをすべて格納することができず、このファイルを取り扱いやすい大きさの10個のフラグメントに分割して、自己を含む複数のデバイスに分散して格納されている場合、デバイスAは、本発明に係るファイル管理システムを用いて、自己が格納していないファイルの残りのフラグメントを、他の複数のデバイスから伝送させることにより全体のファイルを見ることができる。ファイル管理システムは、10個のフラグメントを10個の一般のファイルのように認識して、図5に示す過程に基づいて、デバイスAに伝送する。
【0050】
このとき、ファイル共有システムは、かかる10個の独立したファイルを、相互につながっているファイルのフラグメントとして管理する必要がある。
また、全体のファイルを用いるデバイスAは、ファイルフラグメントの一部分を格納するが、他のデバイスが多く有していないフラグメントを格納していることが効率的である。このためには、デバイスAが、10個のファイルのそれぞれに対して、図6に示すような候補サーバーリストをファイル管理システムに要請し、各ファイルのフラグメントを保有しているサーバーの個数を把握した後、保有サーバーの個数が最も少ないファイルフラグメントを格納する。
【0051】
以上においては、同一ファイルが複数のサーバーに分散されて存在することを前提として、複数のサーバーからファイルのフラグメントが伝送され、これを一つのファイルに併合する方法(多:1伝送方式)を説明してきた。
しかしながら、ファイルが最初に作成されたときは、一つのデバイスだけに、それが存在するはずである。したがって、以下においては、ファイルを一つのデバイスから複数のデバイスに伝送する場合(1:多伝送方式)において、伝送速度を向上させるための二つの方法について説明する。
【0052】
第1の方法は、図2に示すような中央集中型ファイル管理システムが複数のデバイスの速度を管理する場合であって、最も伝送速度が速いデバイスからファイルが伝送されるようにするものである。
即ち、ファイル管理システムは、ファイルの伝送を希望する複数のデバイスの伝送速度を求めて、その速度順に並ベてリスト化し、このリストを、ファイルを格納しているデバイス(サーバー)とファイルの伝送を希望する複数のデバイスに伝送する。
【0053】
このリストを参照して、サーバーは、最も伝送速度が速いデバイスにファイルを伝送し、このデバイスは、二番目に伝送速度が速いデバイスにそのファイルを転送し、この二番目のデバイスは、三番目に伝送速度が速いデバイスにそのファイルを転送する方式で、ファイルを伝送する。
最も伝送速度が速いデバイスへのファイルの伝送が完了すると、このデバイスは、伝送完了のメッセージをサーバーに通知し、このデバイスが、他のサーバーとしての役割を果たすようにし、本来サーバーであったデバイスは、二番目に伝送速度が速いデバイスにもファイルを伝送することができるようにする。
【0054】
図9を参照して、例を挙げて説明すると、次のとおりである。
現在0番目のデバイスのみが、特定のファイルを有し、速度順に並ベられた1番から100番までのデバイスが、0番デバイスから当該ファイルを伝送される場合、0番デバイスは、1番デバイスにファイルを伝送し、1番デバイスは、2番デバイスにファイルを転送する方式で、100番デバイスまでファイルの伝送を行なう。
1番デバイスへの伝送が完了すると、1番デバイスを、サーバーの役割を果たすようにし、本来サーバーであった0番デバイスを、2番デバイスにもファイルを伝送することができるようにする。
このような方式で、継続してサーバーが増大することにより、伝送状況は次第に、多:1伝送方式になり、この結果、ファイルの伝送速度も向上する。
【0055】
第二の方法は、ファイル管理システムが、デバイスの伝送速度の管理が不要な方法であって、サーバーの役割を果たすデバイス(0番デバイスとする。)が自己に対して伝送を求めるデバイスが、自己の伝送可能な一定の容量を超えると、最も伝送速度が速いデバイス(1番デバイスとする。)だけに集中的に伝送を行い、残りのデバイスには伝送を行わないとともに、残りのデバイスに対して、他のサーバーを確保するように誘導する。
一方、0番デバイスは、ファイル管理システムに、新たなサーバーの役割を果たすデバイスとして、現在伝送している1番デバイスを知らせる。
ファイル管理システムは、他のデバイスがサーバーの役割を果たすデバイスのリストを求めるとき、1番デバイスをリストに載せて送信し、他のデバイスは、このリストを見て、1番デバイスからのファイルの伝送を試みるようになる。
【0056】
したがって、1番デバイスは、自己が現在までに伝送されたデータの範囲内で、他のデバイスにそれを転送すると同時に、0番デバイスから継続して伝送を受ける。
仮に、1番デバイスに対して伝送を求めるデバイスが多すぎると、1番デバイスは、ファイル管理システムに、現在自己が伝送しているデバイス(2番デバイスとする。)を、新たなサーバーの役割を果たすデバイスとして知らせる。
このような方式で、1:多伝送方式は次第に、多:1伝送方式に切替わり、この結果、伝送速度が向上する。
【0057】
ここまでは、本発明をファイルのダウンロードを例に挙げて説明してきたが、ダウンロードのみならず、ストリーミング伝送の場合にも適用することができる。
ストリーミング技術とは、ビデオやオーディオコンテンツを視聴するために、大容量のファイルを、ダウンロードではなく、データを受信しながら、ビデオやオーディオコンテンツを再生することができる技術である。この場合においても、ファイルのダウンロードと同様に、本発明をそのまま適用可能である。
【0058】
以上、本発明を好適な実施例を例示して説明してきたが、本発明の範囲は、特定の実施例に限定されるものではなく、添付された特許請求の範囲により解釈されるべきである。
【産業上の利用可能性】
【0059】
本発明に係るファイル管理システム及び方法は、ユーザーらが一つのサーバーのみからファイルの全体を伝送されるのではなく、複数のサーバーからファイルを分割して伝送され得るようにすることで、ファイルの伝送速度を顕著に向上させる。
また、伝送途中で複数のサーバーのいずれか一つに障害が生じた場合、他のサーバーに代替して伝送を行わせることにより、ユーザーが、サーバーの障害に関係なく、安定してファイルを伝送され得るようにする。
さらに、ファイルが一つのデバイスだけに存在し、一つのデバイスから複数のデバイスにそれを伝送する必要がある場合でも、ファイルの伝送速度を向上させることができる。
本発明に係るファイル管理システム及び方法は、従来では伝送できなかった大容量のファイルの伝送に適用できるのみならず、ストリーミングサービスにも適用することができる。
【図面の簡単な説明】
【0060】
【図1】本発明に係るファイル管理システムの全体構成図である。
【図2】本発明に係るファイル管理システムの構成図である。
【図3】本発明に係るファイル管理システムの構成図である。
【図4】本発明に係るファイル管理システムの構成図である。
【図5】本発明に係るファイル伝送過程を全体として示すフローチャートである。
【図6】ファイルが伝送可能な複数のサーバーの情報を格納した候補サーバーリストのデータ構造である。
【図7】ファイル伝送情報を記録するログファイルの例示図である。
【図8】本発明によりファイルを伝送する状態を示す図である。
【図9】本発明により一つのデバイスから複数のデバイスにファイルを伝送する状態を示す図である。

Claims (25)

  1. ネットワークを介して接続された複数のデバイス間においてファイルを伝送するための方法であって、
    ユーザーデバイスが伝送を希望するファイルを選択するステップと、
    前記ファイルを格納しているデバイスに関する情報を、当該ファイル伝送を管理するファイル管理システムから受信するステップと、
    前記ファイルを格納している複数のデバイスから前記ファイルを伝送する少なくとも一つのサーバーを決めるステップと、
    前記少なくとも一つのサーバーのそれぞれに対して前記ファイルの所定のフラグメントを伝送するように要請するステップと、
    前記少なくとも一つのサーバーのそれぞれから前記要請されたファイルのフラグメントを伝送するステップと、
    前記伝送されたファイルのフラグメントを一つのファイルに併合するステップとを含むことを特徴とするファイル伝送方法。
  2. 前記ファイルを格納している複数のデバイスから少なくとも一つのサーバーを決めるステップでは、伝送速度が最も速いデバイスから順に選ぶことを特徴とする請求項1記載のファイル伝送方法。
  3. 前記ファイルの所定のフラグメントの伝送を前記少なくとも一つのサーバーのそれぞれに要請するとき、サーバーの伝送速度が速いほど要請するファイルのフラグメントの大きさを大きくすることを特徴とする請求項1記載のファイル伝送方法。
  4. 前記少なくとも一つのサーバーのそれぞれから前記要請したファイルのフラグメントを伝送させるとき、伝送されたフラグメントに関する情報をログファイルに記録するステップをさらに含むことを特徴とする請求項1記載のファイル伝送方法。
  5. 前記ユーザーデバイスが前記伝送されたファイルのフラグメントを併合して一つのファイルにするとき、前記ログファイルを参照することを特徴とする請求項4記載のファイル伝送方法。
  6. 前記一つのファイルに併合するステップの後に、前記ファイル管理システムにファイルの伝送完了を知らせるステップをさらに含むことを特徴とする請求項1記載のファイル伝送方法。
  7. 前記少なくとも一つのサーバーのそれぞれが前記要請したファイルのフラグメントを伝送させるステップにおいて、一定の大きさのパケットを伝送させる度に各サーバーの伝送速度を評価することを特徴とする請求項1記載のファイル伝送方法。
  8. 前記伝送速度が所定の値以下に低下するサーバーが存在する場合、当該サーバーを他のサーバーに代替することを特徴とする請求項7記載のファイル伝送方法。
  9. 前記代替サーバーが存在しない場合、前記ファイル管理システムから前記ファイルを格納している複数のデバイス及び前記各デバイスの速度に関する情報を再度受信し、これに基づいて代替サーバーを決めることを特徴とする請求項8記載のファイル伝送方法。
  10. 前記デバイスは、パーソナルコンピュータ、ワークステーション、ミニコンピュータ、ノードブックコンピュータ、PDA等を含むデータ通信が可能なデバイスであることを特徴とする請求項1記載のファイル伝送方法。
  11. 前記ネットワークは、有線インターネット、無線インターネット、LAN、イントラネット、エクストラネットを含むネットワーキングが可能な環境であることを特徴とする請求項1記載のファイル伝送方法。
  12. 前記伝送を希望するファイルは、当該ファイルを格納しているデバイス内において共通するファイルIDを有していることを特徴とする請求項1記載のファイル伝送方法。
  13. 前記ファイル管理システムは、前記ネットワークに接続されている複数のデバイスのいずれか一つであることを特徴とする請求項1記載のファイル伝送方法。
  14. 前記ファイル管理システムは、前記ネットワークに接続されている複数のデバイス間において分散されて存在することを特徴とする請求項1記載のファイル伝送方法。
  15. 前記ファイルを格納している複数のデバイスに関する情報は、デバイスのID、デバイスの位置、デバイスの伝送速度を含むことを特徴とする請求項1記載のファイル伝送方法。
  16. 前記ユーザーデバイスが前記併合された一つのファイルに関する情報をメタファイルに格納するステップをさらに含むことを特徴とする請求項1記載のファイル伝送方法。
  17. 前記併合された一つのファイルを他のデバイスへと転送するとき、前記ファイルに関する情報が前記メタファイルに記録された情報と同一であるか否かを確認した後に行なうことを特徴とする請求項16記載のファイル伝送方法。
  18. 前記伝送は、ダウンロードとストリーミング技術を含むことを特徴とする請求項1記載のファイル伝送方法。
  19. 一つのファイルがネットワークを介して接続された複数のデバイスに分散されて格納された場合において前記ファイルを呼び出す方法であって、
    前記ファイルを構成する各フラグメントを格納している複数のデバイスに関する情報を、当該ファイル伝送を管理するファイル管理システムから受信するステップと、
    前記ファイルの各フラグメントを格納している複数のデバイスから前記各フラグメントを伝送する少なくとも一つのサーバーを決めるステップと、
    前記ファイルの各フラグメントを、前記決められた少なくとも一つのサーバーから分散して伝送させるステップと、
    前記伝送されたファイルの各フラグメントを一つのファイルに併合するステップとを含むことを特徴とするファイル呼出方法。
  20. 前記ファイルを構成する各フラグメントは、同一のファイルに属することを特徴とする請求項19記載のファイル呼出方法。
  21. ネットワークを介して接続された複数のデバイスのいずれか一つから複数のデバイスへとファイルを伝送するための方法であって、
    前記一つのデバイスは、前記複数のデバイスのうちの伝送速度が最も速いデバイスに前記ファイルを伝送するステップと、
    前記ファイルを伝送された最も伝送速度が速いデバイスは、前記複数のデバイスのうちの二番目に伝送速度が速いデバイスにファイルを転送し、前記ファイルを転送された二番目に伝送速度が速いデバイスは、三番目に伝送速度が速いデバイスに前記転送されたファイルを転送する方式で、伝送速度が最も遅いデバイスまでファイルを伝送するステップとを含み、
    前記一つのデバイスが前記複数のデバイスのいずれか一つへのファイルの伝送を完了した場合、前記複数のデバイスのうちのいずれか一つの他のデバイスに前記ファイルを転送することを特徴とするファイル伝送方法。
  22. ネットワークを介して接続された複数のデバイスのいずれか一つから複数のデバイスにファイルを伝送するための方法であって、
    前記一つのデバイスが複数のデバイスに前記ファイルを伝送するステップと、
    前記伝送時の伝送量が所定の基準を超える場合、前記一つのデバイスは、前記複数のデバイスのうちの最も伝送速度が速いデバイスのみに前記ファイルを伝送し、前記最も伝送速度が速いデバイスは、前記一つのデバイスから前記ファイルを伝送されると同時に、それを前記複数のデバイスのうちの他のデバイスに転送するステップとを含むことを特徴とするファイル伝送方法。
  23. 前記伝送は、ダウンロードとストリーミング技術を含むことを特徴とする請求項21または請求項22記載のファイル伝送方法。
  24. 要請されたファイルと同じファイルを伝送する方法であって、
    ファイルを所定のフラグメントに分割し、各フラグメントの所定の部分の情報をメタファイルに格納するステップと、
    前記ファイルに対する伝送要請に応答して、前記ファイルを前記所定のフラグメントに分割し、各フラグメントの前記所定の部分の情報を取り出すステップと、
    前記取り出された情報と前記メタファイルに記録された情報とを比較するステップと、
    前記比較の結果、同一である場合は、前記ファイルを伝送し、同一でない場合は、前記ファイルに別のファイルIDを与えるステップとを含むことを特徴とするファイル伝送方法。
  25. 要請されたファイルと同一のファイルを伝送する方法であって、
    a)ファイルを所定のフラグメントに分割し、各フラグメントをコード化関数でコード化した後、各コードをメタファイルに格納するステップと、
    b)前記ファイルに対する伝送要請に応答して、前記ファイルを前記所定のフラグメントに分割し、各フラグメントを前記コード化関数でコード化するステップと、
    c)b)ステップでコード化された結果と前記メタファイルに記録された情報とを比較するステップと、
    d)前記比較の結果同一である場合は、前記ファイルを伝送し、同一でない場合は、前記ファイルに別のファイルIDを与えるステップとを含むことを特徴とするファイル伝送方法。
JP2002590595A 2001-03-28 2001-03-28 ネットワーク環境でのファイル伝送方法 Pending JP2004531824A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2001/000499 WO2002093846A1 (en) 2001-03-28 2001-03-28 Method of transferring a divided file

Publications (1)

Publication Number Publication Date
JP2004531824A true JP2004531824A (ja) 2004-10-14

Family

ID=19198365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002590595A Pending JP2004531824A (ja) 2001-03-28 2001-03-28 ネットワーク環境でのファイル伝送方法

Country Status (3)

Country Link
JP (1) JP2004531824A (ja)
CN (1) CN1494790A (ja)
WO (1) WO2002093846A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006126894A (ja) * 2004-10-26 2006-05-18 Sony Corp コンテンツ配信方法、プログラムおよび情報処理装置
JP2007018453A (ja) * 2005-07-11 2007-01-25 Ricoh Elemex Corp データ保管システム
WO2012053047A1 (ja) * 2010-10-18 2012-04-26 パイオニア株式会社 ストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体
WO2016133180A1 (ja) * 2015-02-19 2016-08-25 有限会社Triart データ処理プログラム及びデータ処理システム
JP2017050681A (ja) * 2015-09-01 2017-03-09 富士通株式会社 通信方法、通信装置及び通信プログラム
JP2017050688A (ja) * 2015-09-01 2017-03-09 富士通株式会社 通信方法、通信装置及び通信プログラム
JP2018132814A (ja) * 2017-02-13 2018-08-23 株式会社日立製作所 計算機システムおよびリストア方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636724B2 (en) * 2001-08-31 2009-12-22 Peerify Technologies LLC Data storage system and method by shredding and deshredding
JP4587042B2 (ja) * 2003-09-30 2010-11-24 ソニー株式会社 コンテンツ取得方法、コンテンツ取得装置、コンテンツ取得プログラム及びコンテンツ取得システム
KR20050042377A (ko) * 2003-11-03 2005-05-09 주식회사 이머텍 저속채널의 스트리밍 서비스를 위한 데이터 분할 전송방법 및 시스템
US20060168113A1 (en) * 2005-01-25 2006-07-27 Taiwan Semiconductor Manufacturing Co., Ltd. File transfer management systems and methods
WO2007133791A2 (en) * 2006-05-15 2007-11-22 Richard Kane Data partitioning and distributing system
CN101098322B (zh) * 2006-06-30 2012-07-04 佛山市顺德区顺达电脑厂有限公司 数据传输方法及应用于该方法的信息装置
JP2008250475A (ja) * 2007-03-29 2008-10-16 Brother Ind Ltd 情報処理装置、ネットワークシステム、およびプログラム
GB2463078B (en) 2008-09-02 2013-04-17 Extas Global Ltd Distributed storage
CA2673554C (en) * 2009-07-21 2017-01-03 Ibm Canada Limited - Ibm Canada Limitee Web distributed storage system
CN101877604B (zh) * 2010-06-22 2015-01-28 中兴通讯股份有限公司 一种传输文件的方法及系统
GB2484116B (en) * 2010-09-29 2018-01-17 Qando Services Inc Distributed electronic communication
CN102467558A (zh) * 2010-11-19 2012-05-23 海尔集团公司 一种设备描述文件存储及更新的方法
CN103516584B (zh) * 2012-06-28 2017-06-09 北京奇虎科技有限公司 一种用于即时通讯中传输文件的方法及装置
CN103078853A (zh) * 2012-12-31 2013-05-01 华为软件技术有限公司 一种基于会话初始化协议的数据传输方法和相应装置
CN103347077A (zh) * 2013-07-03 2013-10-09 曙光信息产业(北京)有限公司 分布式文件系统的数据传输方法和装置
CN106210065B (zh) * 2016-07-13 2018-07-03 广东欧珀移动通信有限公司 一种文件传输方法、装置及移动终端
CN107609898A (zh) * 2017-08-24 2018-01-19 天脉聚源(北京)科技有限公司 一种智能应对高访问量的广告信息投放的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI105754B (fi) * 1995-06-12 2000-09-29 Nokia Oy Ab Siirtoprotokolla tiedostojen välittämiseksi DAB-järjestelmässä
FI98676C (fi) * 1995-10-05 1997-07-25 Nokia Oy Ab Tietostoryhmän siirto digitaalisessa yleisradiojärjestelmässä
FI100562B (fi) * 1996-01-30 1997-12-31 Nokia Oy Ab Tiedostosegmenttien koodaus digitaalisessa radiokanavassa

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006126894A (ja) * 2004-10-26 2006-05-18 Sony Corp コンテンツ配信方法、プログラムおよび情報処理装置
US8166186B2 (en) 2004-10-26 2012-04-24 Sony Corporation Content distribution method, program, and information processing apparatus
JP2007018453A (ja) * 2005-07-11 2007-01-25 Ricoh Elemex Corp データ保管システム
WO2012053047A1 (ja) * 2010-10-18 2012-04-26 パイオニア株式会社 ストリーミング再生装置、ストリーミング再生方法、コンピュータプログラム及び記録媒体
WO2016133180A1 (ja) * 2015-02-19 2016-08-25 有限会社Triart データ処理プログラム及びデータ処理システム
JP2017050681A (ja) * 2015-09-01 2017-03-09 富士通株式会社 通信方法、通信装置及び通信プログラム
JP2017050688A (ja) * 2015-09-01 2017-03-09 富士通株式会社 通信方法、通信装置及び通信プログラム
JP2018132814A (ja) * 2017-02-13 2018-08-23 株式会社日立製作所 計算機システムおよびリストア方法

Also Published As

Publication number Publication date
CN1494790A (zh) 2004-05-05
WO2002093846A1 (en) 2002-11-21

Similar Documents

Publication Publication Date Title
JP2004531824A (ja) ネットワーク環境でのファイル伝送方法
JP4738900B2 (ja) ピアツーピアコンピュータネットワーク内の効率的な一対多コンテンツ配信
JP4002584B2 (ja) ストリーミング・データの送信及びダウンロード方法
US8195821B2 (en) Autonomous information processing apparatus and method in a network of information processing apparatuses
EP2227016B1 (en) A content buffering, querying method and point-to-point media transmitting system
KR20030056701A (ko) P2p 방식을 이용한 멀티미디어 스트리밍 장치 및 방법
US8812671B2 (en) Arrangements and methods for access to stored data
US7818446B2 (en) Controlling data transmission on a data storage network by selecting from multiple transmission modes
CN101309282B (zh) 一种局域网内传输文件的方法、服务器和系统
KR20060049325A (ko) 콘텐츠 배신 방법, 프로그램 및 정보 처리 장치
US20070233840A1 (en) Peer of a Peer-to-Peer Network and Such Network
US20070112811A1 (en) Architecture for scalable video coding applications
US8086629B2 (en) Content delivery apparatus, content delivery method, and content delivery program
US20120030303A1 (en) Methods and arrangements for prioritization in a peer-to-peer network
CN101588287B (zh) 对等网络数据调度和下载的方法、装置和系统
KR100521361B1 (ko) 네트워크 환경에서의 파일 공동 전송 방법
US20020078461A1 (en) Incasting for downloading files on distributed networks
US20130198151A1 (en) Methods for file sharing related to the bit fountain protocol
US20030126197A1 (en) Efficient content placement using network proximity
EP2252061A1 (en) Method and system for storing and distributing electronic content
KR100919254B1 (ko) 유디피 홀펀칭을 이용한 피어 대 피어 데이터 전송을 통해스트리밍 데이터를 분산 전송하는 분산 스트리밍 시스템 및그 방법
JP4361498B2 (ja) データ処理システム、要求元装置、データ処理方法、要求元装置の制御方法、ならびに、プログラム
KR101682651B1 (ko) 데이터 스트리밍 서비스 제공 방법 및 장치
WO2005119498A1 (en) P2p based video service system and method for providing vod service using the same
JP2004221756A (ja) 情報処理装置および情報処理方法、並びにコンピュータ・プログラム