JP2001249857A - ファイル転送システム - Google Patents

ファイル転送システム

Info

Publication number
JP2001249857A
JP2001249857A JP2000061987A JP2000061987A JP2001249857A JP 2001249857 A JP2001249857 A JP 2001249857A JP 2000061987 A JP2000061987 A JP 2000061987A JP 2000061987 A JP2000061987 A JP 2000061987A JP 2001249857 A JP2001249857 A JP 2001249857A
Authority
JP
Japan
Prior art keywords
file
transfer
client
server
file transfer
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
JP2000061987A
Other languages
English (en)
Inventor
Takeshi Kameyama
健 亀山
Tomoko Yamaguchi
知子 山口
Toshio Mizuno
敏雄 水野
Hirohisa Ozaki
浩久 尾崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2000061987A priority Critical patent/JP2001249857A/ja
Publication of JP2001249857A publication Critical patent/JP2001249857A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 処理の中断を伴なうファイル転送処理の遅延
を最小限に抑制することのできるファイル転送システム
を提供する。 【解決手段】 ファイル転送処理が中断された場合、フ
ァイル要求元であるクライアント20は、中断前に転送
済みデータ量の情報を設定したファイル再転送要求命令
(get offset)をサーバ10に送信する。これに対し、
サーバ10は、いったん転送が中断されたファイルの再
転送においては、前記の中断前転送済みデータ量の情報
を参照し、当該ファイルのデータのうち中断前に転送済
みのデータの後に続く部分のみをクライアント20に転
送する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プロトコルとして
TCP/IPを採用するネットワークを介してファイル
転送を行うファイル転送システムおよびファイル転送方
法に関する。
【0002】
【従来の技術】従来、ファイル転送システムの形式とし
ては、TCP/IP(Transmission Control Protocol
/Internet Protocol)通信ネットワークを介してファ
イル送信元であるサーバ端末とファイル受信側であるク
ライアント端末とが接続され、サーバ端末がクライアン
ト端末の要求に応じたファイルを要求元クライアント端
末に転送する、というものがある。ファイル転送はファ
イル転送プロトコル(FTP:File Transfer Protoco
l)に応じて行われる。
【0003】こうした形のファイル転送システムにおい
ては、何らかの理由によってファイル送受信が中断され
ることがある。例えば、ネットワーク上で実行中のファ
イル転送処理の件数が多くなり、負荷が過大になったと
サーバが判定した場合、サーバは実行中のファイル転送
処理の一部を選択して中断させる。
【0004】なお、ここで「中断」とは、いったん開始
されたファイル転送処理について、ファイルの全データ
が転送完了する前に、サーバ、クライアント間のTCP
/IPコネクションが切断されて、転送処理が途中で打
ち切られることを言う。また、ネットワークを構成する
回線の一部に問題(故障)が発生して、当該回線を用い
て実行中であったファイル転送処理が中断される場合も
ある。
【0005】ファイル転送処理が中断された場合、ファ
イル受信側であるクライアントが、サーバに対してファ
イル転送要求を再送信すれば、当該ファイルの先頭から
ファイル転送処理が再実行され、クライアントは所望の
ファイルを取得できる。
【0006】
【発明が解決しようとする課題】しかしながら、ファイ
ルの先頭から転送をやり直すことになるので、転送処理
の中断・再実行によってファイル転送処理は大きく遅延
する。すなわち、最初の転送要求から最終的にファイル
を取得するまでの時間が非常に長くなってしまう。これ
は、ファイルを必要とするユーザにとって大変不便であ
るネットワークの負荷増大にともなってサーバの判断で
ファイル転送処理が中断された場合、クライアントはサ
ーバとの通信確立からファイルの転送までの一連の手順
を最初から再実行しなければならない。
【0007】また、回線の問題で転送が中断された場合
については、再転送の時間が新たに必要となるだけでは
ない。再転送の場合、クライアントが前回の転送(中断
されたもの)と同じ設定(使用回線指定)でサーバへの
ファイル転送要求再送信を試みると、不良の発生した回
線を再び使用する可能性がある。そうなると、当然ファ
イル転送処理は実行されず、回線の問題が解消されるか
当該回線を使用しない経路で転送要求を送信するまで無
駄に当該不良の発生した回線への接続を繰り返し、ファ
イル転送完了までの所要時間が非常に長くなるおそれも
ある。
【0008】本発明は上記の課題に鑑み、転送処理の中
断を伴なうファイル転送処理の遅延を最小限に抑制する
ことのできるファイル転送システムおよびファイル転送
方法を提供することを目的とする。
【0009】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明のファイル転送システムは、使用者からの
指示に応じてファイル転送要求を発行するクライアント
と、前記ファイル転送要求に応じて前記クライアントへ
ファイルを転送するサーバとから成るファイル転送シス
テムであって、前記クライアントは、ファイルの転送処
理が途中で中断された場合に、前記使用者からファイル
再転送要求を行うか否かの指示を受け付ける再転送指示
受付手段と、前記再転送指示受付手段が再転送要求を行
うように指示を受け付けた場合に、中断時点までに転送
完了していたデータ量を示す中断位置情報を伴なうファ
イル再転送要求命令を生成して前記サーバに送信する再
転送要求手段とを有し、前記サーバは、前記ファイル再
転送要求命令を前記クライアントから受け付けると、前
記中断位置情報をもとに前記ファイルのデータのうち前
記クライアントに転送完了していた部分を除いた残部を
転送する残部転送手段を有すること、を特徴とする。こ
の構成により、ファイル転送処理が中断されて転送処理
を再実行することになった場合でも、遅延を最小限に抑
制することができる。
【0010】
【発明の実施の形態】以下、本発明に関するファイル転
送システムの好適な実施の形態を、図面を参照しながら
説明する。図1は、本実施の形態におけるファイル転送
システムの一例を示す。ファイル転送システム1は、共
有ファイル管理者である1台のサーバ10と、ファイル
利用者(ファイル転送要求元)である複数のクライアン
ト20a…20nとがネットワーク接続されてなる。な
お、クライアント20a…20nは同一の構成を有する
ので、以下、共通の事項について述べる場合は、「クラ
イアント20」として言及する。ここでいうサーバおよ
びクライアントは、いずれもパーソナルコンピュータな
どの装置であり、内蔵メモリに保持するプログラムを実
行することで、それぞれファイル転送処理におけるサー
バ、クライアントとして動作するものである。
【0011】サーバ10と複数のクライアント20a…
20nを結ぶネットワーク30は、3つの公衆回線網
A、B、Cとルータ50、51を備え、サーバ10と複
数のクライアント20a…20nとは、ルータ50、5
1および3つの公衆回線網A、B、Cのいずれかを用い
てファイル転送のための通信を行う。3つの公衆回線網
はそれぞれ種別が異なっている。公衆回線網Aはアナロ
グ回線、公衆回線網Bはデジタル回線、公衆回線網Cは
携帯電話用回線である。
【0012】各クライアント間、およびクライアントと
ルータ50とは、LAN(Local Area Network)によっ
て接続されている。また、ルータ50、51は、3つあ
る回線種別のそれぞれに応じて3つのポートを有するI
Pルータである。各ポートは固有のIPアドレスを有す
る。なお、システム1が採用する通信プロトコルはTC
P/IPであり、サーバ10とクライアント20との間
のファイル転送処理は、基本的にはFTP(ファイル転
送プロトコル)に従って行われる。ただし、本実施の形
態では、FTPが持つ機能に加えて、本発明に固有の機
能が付加拡張されたプロトコルに従ってファイル転送処
理が実行される。
【0013】サーバ10はシステム1で共有するファイ
ルが格納されたハードディスクドライブ40(以下「H
DD40」)に接続されており、ここから、転送すべき
ファイルを読み出す。ファイル送受信は、クライアント
からの要求を受けたサーバ10が、要求のあったファイ
ルをHDD40から読み出し、要求元クライアントに送
信する形で行われる。ファイル転送はネットワーク30
の問題などの原因によって中断されることがあるが、そ
の場合、当該クライアントはサーバ10に対して再転送
を要求することができる。
【0014】(ファイル転送のシーケンス)以下、ファ
イル転送時にサーバ10、クライアント20間で実行さ
れる命令やファイルデータのやり取りを、シーケンス図
にそって説明する。図2は、サーバ10とクライアント
20との間で実行されるファイル転送処理の過程の一例
を示すシーケンス図である。同図(a)はファイルの転
送が中断なく正常に終了する場合であり、同図(b)は
ファイルの転送がいったん中断された後、再転送が行わ
れる場合である。
【0015】図2(a)において、先ず、要求元(操作
者または上位システム)からの指示を受けたクライアン
ト20が、サーバ10に対してファイル転送要求を送る
()。これを受け付けたサーバ10は、ファイルのデ
ータをパケットに格納できる大きさに分割して、複数回
に分けてクライアントに転送する()。ここでは説明
及び作図の便宜上、5回に分けて転送することとした。
【0016】図2(b)においては、サーバ10からの
ファイル転送中、3回目の転送が終った段階でファイル
転送が中断されている()。なお、同図ではサーバ1
0からクライアント20に中断が通知されることとなっ
ているが、これはサーバ10の判断で中断が行われる場
合であり、回線の故障などで中断される場合には、こう
した通知は行われない。その後、クライアント20は、
ファイルの再転送をサーバ10に要求し()、サーバ
10は中断時点で転送が終っていなかった部分のファイ
ルデータ(2回分)をクライアントに転送する()。
【0017】(構成と動作)以下、システム1の構成お
よび動作について、クライアントとサーバとに分けて図
面を参照しながら説明していく。 (クライアントの構成)図3は、クライアント20につ
いて、その構成のうちファイル転送に関連する部分を示
すブロック図である。
【0018】クライアント20は、クライアント側送信
部21、クライアント制御部22、クライアント側受信
部23、メモリ24、インタフェース部25などを有す
る。インタフェース部25は、キーボードや表示装置な
どの入出力装置(図示せず)および、クライアント20
の本体であるPCにおいてファイル転送以外の処理を行
っている処理実行部(図示せず)に接続されている。イ
ンタフェース部25は、要求元(入出力装置を操作する
操作者、PC内部の他の処理実行部、または上位のシス
テムなど)からファイル取得の指示を受け付けてクライ
アイント制御部22に通知するとともに、必要な場合
は、入出力装置を介してファイル転送処理の経過につい
ての情報を要求元に提示する。
【0019】クライアント側送信部21は、インタフェ
ース部25が受け付けたファイル取得要求に従ってサー
バ10との通信を確立し、ファイル転送要求の命令(フ
ァイル転送要求命令)を納めたパケットを生成してサー
バ10に送信する。図4は、ファイル転送要求命令の構
成を示す模式図である。ファイル転送要求命令400
は、ヘッダ部410とファイル情報部420とを有す
る。ヘッダ部410には、プロトコルに応じた通信用の
制御情報(IPアドレスなど)が納められる。制御情報
の中には、命令の種類を示すコマンドID411が含ま
れる。コマンドID411の内容は、通常のファイル転
送要求であることを示す「get」である。また、ファイ
ル情報部420には転送対象ファイルの識別子(ファイ
ル名)が格納されている。
【0020】また、クライアント側送信部21は、いっ
たん受信が中断されたファイルについて要求元(操作者
またはPC内部の他の処理実行部)が再転送を要求して
きた場合に、再送を要求する命令(ファイル再送要求命
令)を納めたパケットを生成し、サーバ10に送信す
る。図5は、ファイル再送要求命令の構成を示す模式図
である。
【0021】ファイル再送要求命令500は、ヘッダ部
510とファイル情報部520とを有し、その点ではフ
ァイル転送要求命令400と同じである。ただし、ヘッ
ダ部510に納められるコマンドID511の内容は
「get offset」となり、ファイル情報部520には、再
送対象であるファイルの識別子521に加えて、中断時
点で転送済みであったファイルの部分データ量の情報
(転送済みデータ量522)が格納される。
【0022】クライアント側受信部23は、サーバ10
からファイル転送パケットに格納されて転送されてくる
ファイルのデータを受信し、メモリ24内に確保したフ
ァイル格納用エリア241に格納する。図6はファイル
転送パケットの構成を示す模式図である。ファイル転送
パケット600は、ヘッダ部610とファイル情報部6
20とを有する。
【0023】ヘッダ部610には、プロトコルに応じた
通信用の制御情報(パケットの種別を示す識別情報な
ど)が納められる。ファイル情報部620は転送される
ファイルデータとこれに関連する情報とが格納されてい
る。ファイル名621は、転送対象ファイルの名称であ
る。ファイルサイズ623は、転送対象ファイルの全体
長の情報である。最終パケットフラグ622は、当該フ
ァイルのデータ転送における最終パケットかどうかを示
すフラグである。ファイルはサイズが小さいものであれ
ば1つのパケットに全体が納められて送られてくること
もあるが、通常は複数のパケットに分割して送られる。
そこで、最後のパケットであること(当該パケットでフ
ァイルの転送が完了すること)を示す情報が必要とな
る。最終パケットフラグ622は最終パケットではO
N、それ以外のパケットではOFFとなる。ファイルデ
ータ624は、ファイルのデータ本体である。
【0024】クライアント側受信部23は、ファイル転
送パケット600を受信するたびに、ファイルデータ6
24の内容を順次ファイル格納用エリア241に格納し
ていく。クライアント側受信部23は、ファイル受信開
始時に、ファイルサイズ623の情報を参照してファイ
ルのサイズを確認すると、当該ファイル格納に充分なエ
リア241をメモリ24に確保し、ここにファイルデー
タを格納していく。クライアント側受信部23は、受信
中のファイルについて受信・格納済みのデータ量を監視
する経過監視部231を有している。
【0025】クライアント側受信部23によるファイル
受信は、正常に終了する場合と中断される場合とがあ
る。正常終了とは最終のファイル転送パケット(最終パ
ケットフラグ623がON)の受信を正常に完了するこ
とであり、中断とは最終のファイル転送パケットを受信
する前に、サーバ10とクライアント20との間のコネ
クションが切断されること(図2(b)の例では、サー
バ10から中断通知を受け取ること)である。クライア
ント側受信部23は、正常終了の場合は正常に終了した
旨のみをクライアイント制御部22に通知し、経過監視
部231の保持する監視用情報(格納済みデータ量の情
報)を削除する。
【0026】一方、ファイル転送が中断された場合、ク
ライアント側受信部23は、中断による終了である旨と
経過監視部231が保持している受信済みデータ量のデ
ータとをクライアイント制御部22に通知する。いった
ん転送の中断したファイルの再送の場合、クライアント
側受信部22は、ファイル転送パケットを受信すると、
再送ファイルのデータを当該ファイルデータ格納用エリ
ア(メモリ24内)の格納済みデータの末尾に続けて格
納する。再送ファイルのデータを受信・格納する場合に
ついても、全データの格納が終われば、クライアント側
受信部23はクライアント制御部22に受信終了を通知
する。
【0027】クライアイント制御部22は、上記の構成
各部の処理を制御してファイル転送処理を円滑に実行さ
せる。具体的には、インタフェース部25経由でファイ
ル取得の指示を受け付けて、クライアント送信部21に
サーバ10との通信を確立させる。次いで、クライアン
ト側受信部22にファイルデータ(ファイル転送パケッ
ト600)を受信させ、ファイルの全データの受信が完
了するとインタフェース部25経由で要求元に通知す
る。また、クライアイント制御部22は、サーバ10か
らファイル転送の中断を通知された場合、インタフェー
ス部25経由で要求元の指示を求め、要求元がファイル
の再取得を指示した場合には、クライアント側送信部2
1に指示して再転送要求をサーバ10に送信させる。
【0028】(クライアントの動作)以下、ファイル転
送処理におけるクライアント20の動作について、図面
を参照しながら説明する。図7は、クライアント20の
動作を示すフローチャートである。先ず、インタフェー
ス部25経由で、ファイル取得するよう指示を受け付け
ると(S701:Yes)、クライアント側送信部21が
サーバ10との通信リンクを確立し(S702)、取得
しようとするファイルの識別子(名称)などの情報を格
納したファイル転送要求命令を生成、サーバ10に送信
する(S703)。
【0029】次いで、クライアント側受信部22が、サ
ーバ10から送信されてくるファイル転送パケットを受
信して、ファイルデータをメモリ24内に格納していく
(S704)。そして、サーバ10からのファイル転送
が終了するのを待つ(S705:Yes)。終了には、正
常にファイルの全データ受信が完了した場合と、中断に
よる終了の場合とがある。正常にファイル転送が完了し
た場合には(S706:Yes)、クライアイント制御部
22はインタフェース部25に指示して正常に完了した
旨を要求元に伝えて、クライアント20におけるファイ
ル転送処理は完了する(S711)。
【0030】一方、中断の場合(S706:No)、クラ
イアイント制御部22は、やはりインタフェース部25
に指示して、ファイル転送が中断された旨を要求元に伝
えさせ、ファイルの再取得が必要か問い合わせを行わせ
る(S707)。この問合せに対する要求元の指示が、
「再取得不要」であれば(S708:No)、クライアン
ト制御部22はクライアント側受信部23に指示して、
中断までに受信したファイルのデータを削除させ、ファ
イル格納用のエリアを開放させてファイル転送処理を終
了させる(S709)。ユーザの指示が「再取得要」で
あれば(S708:Yes)、クライアント制御部22
は、ファイル名と受信済みデータ量との情報を経過監視
部231から取得してクライアント側送信部21に送
り、再送要求パケットを生成させサーバ10に送信させ
る(S710)。
【0031】再送要求パケット送信後は、ステップS7
04〜S711の処理を繰り返す。 (サーバの構成)図8は、サーバ10について、その構
成のうちファイル転送に関連する部分を示すブロック図
である。サーバ10は、サーバ側送信部11、サーバ側
受信部12、サーバ制御部13、ファイル管理部14な
どを有する。
【0032】サーバ側受信部12は、クライアント20
からのファイル送信要求パケット(ファイル転送要求命
令400、またはファイル再送要求命令500)を受け
付けると、パケットから転送要求の対象ファイルに関す
る情報を抽出してサーバ制御部13に通知する。対象フ
ァイルに関する情報とは、ファイル転送先(要求元)ク
ライアントの通信アドレス、コマンドID(get:通常
の転送要求、get offset:再送要求)、ファイル名、さ
らに、転送済みデータ量(再送要求の場合のみ)などで
ある。
【0033】ファイル管理部14は、サーバ制御部13
から上記の転送対象ファイルに関する情報を受け取り、
通知されてきたファイル名で指定されるファイルをHD
D40から読み出して、要求元クライアントの通信アド
レス、ファイル名とともにサーバ側送信部11に出力す
る。ファイル管理部14は、通常のファイル転送と再送
とでファイルのデータ読み出し開始位置を区別する。通
常のファイル転送の場合は、ファイルの先頭からデータ
を読み出すが、再送の場合は、既に送信済みのデータに
続く部分のデータ読み出しを行うよう、読み出し開始位
置はファイル先頭から「転送済みデータ量」(サーバ制
御部13から取得)の値だけ進んだ位置とする。
【0034】サーバ側送信部11は、ファイル管理部1
4からファイルのデータが出力されてくると、これを関
連情報(ファイル名、要求元クライアントの通信アドレ
ス)とともに内蔵RAMに格納し、ファイル転送パケッ
ト600(図6参照)を生成してファイルデータを格納
し、要求元クライアントに送信する。1つのパケットに
格納できるファイルデータ量は限られているので、通
常、サーバ側送信部11は、1つのファイルデータを分
割して複数のパケットに分けて送信する。
【0035】サーバ側送信部11は、転送対象ファイル
の全データの送信を終えた時点で、当該ファイルの送信
完了通知をサーバ制御部13に送り、内蔵RAMに格納
していた当該ファイル関連のデータや情報を消去する。
また、サーバ制御部13の判断によってファイル送信が
中断される場合、サーバ側送信部11は、サーバ制御部
13の指示を受けて当該ファイルの転送処理を停止する
と共に、停止通知を要求元クライアントに送信する。ま
た、内蔵RAMに格納していた当該ファイルのデータや
関連情報を消去する。
【0036】なお、サーバ10は複数のクライアントに
対して並行してファイル転送を行う場合があり、その
際、サーバ側送信部11は複数のファイルのデータ送信
処理を時分割制御によって並行して行う。サーバ制御部
13は、サーバ側受信部12から転送対象のファイルに
関する情報(ファイル転送要求命令400またはファイ
ル再送要求命令500の情報)を受け取ると、これをフ
ァイル管理部14に通知する。この時、サーバ制御部1
3は、転送要求元クライアントの識別情報(アドレス)
と送信すべきファイルの識別情報とを組み合わせた管理
情報(転送管理情報131)を生成し、サーバ側送信部
11から当該ファイルの送信完了通知が送られてくるま
で内蔵メモリに保持しておく。複数のファイル転送処理
を並行して行う場合、サーバ制御部13は複数の転送管
理情報を生成・保持する。
【0037】また、サーバ制御部13は、あるファイル
転送処理について続行ができない事情が発生した場合、
サーバ側送信部11に指示して当該ファイルのデータの
送信を中断させる。サーバ制御部13がファイル転送を
中断させるのは、転送に使用していた回線に障害が発生
した場合、あるいは、回線のデータ送信能力に比してフ
ァイル転送処理件数が多くなり過ぎて、回線負荷が重く
なった状況から、新たな緊急のファイル転送処理の要求
を受け付けた場合、などである。
【0038】(サーバの動作)以下、ファイル転送処理
におけるサーバ10の動作について、図面を参照しなが
ら説明する。図9は、サーバ10の動作を示すフローチ
ャートである。サーバ10は複数のファイル転送処理を
並行して行う場合もあるが、ここでは1件のファイル転
送処理のみ行う場合について説明する。
【0039】先ず、サーバ側受信部11がファイル転送
用の命令をクライアント20から受け付けると(S90
1:Yes)、これが格納されたパケットの内容から要求
の種類をチェックする(S902)。命令の種類が通常
のファイル転送要求命令(get)であれば(S90
3:”通常”)、サーバ制御部13は、ファイル管理部
14に指示して要求のあったファイルのデータを先頭か
ら読み出させ、サーバ側送信部11に出力させる(S9
04)。一方、要求の種類がファイル再送要求命令(ge
t offset)である場合(S903:”再送”)、サーバ
制御部13は命令に含まれる転送済みデータ量の情報を
ファイル管理部14に通知して、未転送部分の先頭から
データ読み出しを行わせる(S905)。ファイル管理
部14は、読み出したファイルデータをサーバ側送信部
11に出力する。
【0040】サーバ側送信部11は、出力されてきたフ
ァイルデータをファイル転送パケットに格納して要求元
クライアント20に送信する処理を(S906)、全フ
ァイルデータを転送し終えるか(S907:Yes)、サ
ーバ制御部13から中断指示を受けるまで(S908:
Yes)繰り返す。中断指示を受けた場合には、要求元ク
ライアント20に中断を通知したうえで、転送処理を終
了する(S909)。
【0041】(まとめ)このように、本実施の形態のフ
ァイル転送システム1によれば、再転送専用に拡張した
FTP命令(get offset)を設けて中断前転送済みデー
タ量の情報を設定することで、いったん転送が中断され
たファイルの再転送においては、中断前に転送済みのデ
ータの後に続く部分のみを転送することができる。その
ため、再転送の場合もファイルの先頭からデータを転送
し直す方法に比べて、ファイル転送を速やかに行うこと
ができる。
【0042】なお、上記の説明では、クライアントがフ
ァイル再転送要求する際、ファイルデータ送信開始位置
の指定は、中断前にクライアント側が受信したデータ量
をバイト数で表した値によっているが、これ以外の形で
ファイルデータの再送開始位置を指定することもでき
る。例えば、転送対象のファイルが文書データの場合、
クライアントは、受信したファイルデータ中の制御文字
(改行文字など)をカウントしておき、中断後の再送要
求時には、「データ中のn番目の改行文字以降」という
形で、ファイルデータの再送開始位置を指定することが
できる。また、サーバ側が、ファイル転送開始前に、フ
ァイルデータを分割してブロックに分け、ブロック番号
をファイル転送パケットに格納してデータ送信を行え
ば、クライアイントは中断後の再送要求時に、「n番目
のブロックから」という形でファイルデータの再送開始
位置を指定することができる。 (変形例)以下、上記実施の形態のファイル転送システ
ムの変形例を示す。いずれの変形例においても、システ
ムの全体構成は、1つのサーバと複数のクライアントと
がネットワークで接続されたもので、上記実施の形態の
システムと同じ(図1参照)であるため、各変形例と
も、ファイル転送システムの全体構造を示す図面は省略
する。ただし、各変形例ともサーバおよびクライアント
の少なくとも一方が、上記実施の形態におけるサーバ1
0、クライアント20の行う処理に加えて、変形例に固
有の処理を行うので、サーバ10、クライアント20と
区別するために、変形例ごとに、サーバおよびクライア
ントに固有の参照番号を付加することとする。 (変形例1)本変形例のファイル転送システムは、ファ
イルの転送中断のタイミングをクライアント主導で決定
するものである。
【0043】先ず、本変形例におけるファイル転送処理
において、サーバ110とクライアント120との間で
やり取りされる命令およびデータの流れを、シーケンス
図にそって説明する。図10は、サーバ110とクライ
アント120との間で実行されるファイル転送処理の過
程の一例を示すシーケンス図である。
【0044】先ず、クライアント120が、ファイル転
送要求命令(get)をサーバ110に送信して、サーバ
110からクライアント120へのファイル転送が始ま
る(、)。クライアント120は、ファイル転送処
理の進行状態(受信済みデータ量)を監視する。クライ
アント120はファイルデータをもとに何らかの処理を
行うが、一度に処理できるファイルデータ量に限界があ
る。そこで、受信済みデータ量がこの限界値(以下「デ
ータ量限界値」)を越えるおそれがある場合、クライア
ント120はサーバ110に対してファイル転送処理の
中断要求を送信する。
【0045】具体的には、クライアント120は、受信
済みデータ量とデータ量限界値との差分が所定の閾値に
達すると、通算のファイルデータ送信量がこの限界値に
達した時点でファイル転送処理を打ち切るよう求める
「abort」命令を格納したパケットをサーバ120に送
信する()。このabort命令発行の処理は、ファイル
転送処理におけるクライアント120のプロセスの中
で、ファイルデータ受信処理とは別スレッドとして定
義、実行することで、ファイルデータの受信処理に並行
して行うことができるようにしてある。
【0046】サーバ110は、転送中ファイルについて
転送済みデータ量を監視しており、abort命令を受け付
けると、該当する転送中ファイルについては、こ通算の
ファイルデータ送信量が、abort命令で指定されたデー
タ量に達した時点で転送処理を打ち切る()。その
後、クライアント120を含むPCが、受信したファイ
ルデータを使用して処理を行うが、もし必要であれば、
その処理実行後に、更に同ファイルの後続のファイルデ
ータ転送をサーバ110に要求することもできる。その
場合には、再転送の扱いとして、「get offset」命令を
用いる()。この方法によれば、クライアントは、あ
るファイルの先頭から、順次所定のデータ量ずつファイ
ルデータを取得することができる。 (構成)以下、本変形例におけるクライアントおよびサ
ーバの構成を、図面を参照しながら説明する。 (クライアントの構成)図11は、本変形例におけるク
ライアント120の構成を示すブロック図である。本変
形例固有の処理を行う構成部は、クライアント制御部1
22およびクライアント側送信部121である。
【0047】クライアント側送信部121は、クライア
ント制御部122からの指示に応じて、中断要求命令
(abort命令)を納めたパケットを生成し、サーバ11
0に送信する。図12は、中断要求命令の構成を示す模
式図である。中断要求命令1200は、ヘッダ部121
0とファイル情報部1220とを有する。ヘッダ部12
10に納められるコマンドID1211の内容は中断を
示す「abort」となり、ファイル情報部1220には、
送信中断要求の対象であるファイルの識別情報1221
に加えて、当該ファイルについて何バイトのファイルデ
ータを送信した時点で転送処理を中断するかを示す中断
位置情報1222が格納される。中断位置情報1222
は、クライアント制御部122が保持しているデータ量
限界値1110に等しい。
【0048】図12に示す中断要求命令1200の内容
は、ファイル名が「file001」であるファイルの転送処
理について、ファイル先頭から3000バイトのデータ
を送信し終えた時点で転送処理を打ち切るよう求めるも
のである。クライアント制御部122は、クライアント
側受信部23がファイル転送パケットを受信してファイ
ルデータのメモリ24への格納を終えるたびに、受信済
みデータ量の情報をクライアント側受信部23(メモリ
監視部231)から取得し、予め保持しているデータ量
限界値1110と比較する。そして、両データ量の差分
が所定値以下になると、このデータ量限界値1110を
中断位置情報1222としてクライアイント側送信部1
21に通知して、中断要求命令1200の生成とサーバ
110への送信を指示する。
【0049】(サーバの構成)図13は、本変形例にお
けるサーバ110の構成を示すブロック図である。サー
バ110において本変形例固有の処理を行うのはサーバ
側送信部111、サーバ制御部113である。サーバ制
御部113は、サーバ側受信部12経由でクライアント
120から中断要求命令1200の内容を受け取ると、
そのうちのファイル識別情報1221および中断位置情
報1222の内容をサーバ側送信部111に通知する。
サーバ制御部113は、サーバ側送信部111が要求通
りの中断位置でファイル転送処理を中断できるように、
転送処理中のファイルについて、転送済みデータ量の情
報(転送管理情報)を保持している。この転送管理情報
131は、処理中のファイルの名称と当該ファイルの転
送済みデータ量の値とを組み合わせた内容である。サー
バ制御部113は、サーバ側送信部111が1パケット
分のファイルデータ送信を行うたびに、当該ファイルの
名称と送信したデータ量との情報をサーバ側送信部11
1から取得し、当該転送処理に関する転送管理情報13
1のうち転送済みデータ量の値を更新する。
【0050】サーバ側送信部111は、サーバ制御部1
13から通知された中断要求に関する情報と転送管理情
報131の内容とに従って、必要な量のファイルデータ
を送信し終えた時点で、当該ファイル転送処理を中断す
る。サーバ側送信部111は、1パケット分のデータ送
信を行うたびに、当該パケットで送信されたデータ量を
ファイル名とともにサーバ制御部113に通知する。こ
れによって、サーバ制御部113は転送管理情報131
の内容を更新する。
【0051】サーバ110における、中断要求受け付け
からファイル転送処理中断までの流れを、以下、図面に
従って説明する。図14は、サーバ10におけるファイ
ル転送中断処理の流れを示すフローチャートである。先
ず、サーバ側受信部12がクライアント120から中断
要求命令を受信し(S1401:Yes)、サーバ側送信
部111は、サーバ制御部113経由で命令の内容を取
得する(S1402)。サーバ側送信部111は、中断
要求命令によって指定されたファイル名をもとに転送管
理情報を参照し、中断指定されたファイルが実際に転送
処理中であるかどうか確認する(S1403)。
【0052】指定されたファイルが転送処理中であれ
ば、それ以降、当該転送中ファイルについて1パケット
分のファイルデータをクライアントに送信するたびに、
転送管理情報131における転送済みデータ量の値と中
断位置情報の値とを比較し、転送済みデータ量が中断位
置に達したところで、ファイルデータ送信処理を終える
(S1404、S1405、S1406)。なお、最終
のファイル転送パケットについては、転送済みデータ量
と中断位置情報の示すデータ量とが同じになるよう、格
納するデータ量を調整する。
【0053】そして、サーバ制御部113は、中断した
ファイル転送処理に関する転送管理情報を消去し、これ
で、サーバ110側の転送中断に関する処理は終了する
(S1407)。 (まとめ)このように、本変形例のファイル転送システ
ムによれば、再転送専用に拡張したFTP命令(abor
t)を設けて転送データ量で中断位置を指定できるよう
にすることで、クライアント120側が転送を希望する
のがファイルデータの一部のみであった場合、実際に転
送を望む量のデータ転送が完了した段階でファイル転送
処理を中断することができ、クライアント120は必要
な分のファイルデータだけを速やかに取得することがで
きる。
【0054】なお、上記の説明では、中断位置の指定は
バイト数によることとしたが、ここで指定する中断位置
は、他のいろいろな形式に対応することができる。例え
ば、フレーム(1/30秒分の映像データ)の数、ファ
イル全容量に対する比率などである。ただし、中断位置
の目安がバイト数以外の形式であった場合も、クライア
ント側制御部122はこれをバイト数単位に換算して、
クライアント側送信部121に通知するので、最終的に
中断要求命令1200の中断位置情報1222に納めら
れるのはバイト単位の値となる。
【0055】また、本変形例と上記実施の形態とを組み
合わせること、すなわち、「get offset」命令と「abor
t」命令とを組み合わせることで、クライアント120
は、大量のファイルデータを所定のデータ量分ずつサー
バ10受信することができる。例えば、あるファイルの
データを1000バイトずつn回に分けて取得しようと
する場合、「get ファイル名」→「abort ファイル名,
1000(ハ゛イト)」→「getファイル名, offset=1000(ハ゛イ
ト)」→「abort ファイル名, 2000(ハ゛イト)」… →「get
ファイル名, offset=(n-1)×1000(ハ゛イト)」→「abort
ファイル名, n×1000(ハ゛イト)」とすればよい。 (変形例2)本変形例は、ファイル転送が中断された後
の再転送要求時に、クライアントがファイル再転送用の
回線として、最も転送時間が短くなると思われる回線を
選択して使用するものである。本変形例のファイル転送
システムにおいては、クライアント1600が固有の処
理を行う。サーバ10の動作は前記実施の形態における
ものと同じである。
【0056】本変形例におけるファイル転送処理の流れ
を、図面を参照しながら以下に説明する。図15は、本
変形例におけるファイル転送処理(中断と再送を含む場
合)の流れを示すシーケンス図である。クライアント1
600からサーバ10にファイル転送要求が送信されて
から、転送処理が中断されるまでは(、、)、前
記の実施の形態(図2(b))と同じである。ここで、
クライアント1600は、転送処理再実行の要求(geto
ffset)を出す際、転送処理がもっとも早く完了すると
思われる回線を、接続経路情報(回線ごとの過去のファ
イル転送処理における処理速度の情報)をもとに選択
し、当該回線を介してサーバとの通信を確立する
()。
【0057】そして、再開後のファイル転送処理()
が終了すると、クライアントはを、次回以降の回線選択
に利用するため、当該ファイル転送処理の結果をもとに
接続経路情報の内容を更新する。 (構成)本変形例におけるファイル転送システムは、ク
ライアント1600が回線選択用の構成である回線選択
部を備える点が異なる。また、この選択部の処理に関連
して、クライアント制御部、クライアント側送信部、ク
ライアント側受信部が本変形例固有の処理を行う。
【0058】図16は、本変形例におけるクライント1
600の構成を示すブロック図である。上記実施の形態
におけるクライアント20と共通の部分については同じ
参照番号を付し、説明は省略する。回線選択部1610
は、クライアント1600がファイル転送に使用できる
回線について、それぞれ直前のファイル転送処理におけ
る実績を接続経路情報1700として保持しておき、い
ったん中断されたファイルの再転送を行う際、接続経路
情報1700をもとに最適(最も転送処理を早く終らせ
ることができる)と判断した回線をクライアント制御部
1622に通知する。
【0059】図17は接続経路情報1700の構成と内
容の一例とを示す図である。接続経路情報1700は、
回線ID欄1710、使用状態欄1720、転送成績欄
1730から成る。回線ID欄1710には、接続可能
な回線(ここでは図1に示す回線A、B、C)のいずれ
に関する情報かを示す回線IDが格納される。
【0060】使用状態欄1720には、回線が使用中で
あるかどうかを示すフラグが格納されている。ONなら
ば使用中であり、OFFならば使用されていない状態で
ある。使用状態欄1720の内容については、サーバ1
0との通信が確立または終了した際に、クライアント側
送信部1621またはクライアント側受信部1623か
らクライアント制御部1622に対して通信の確立/終
了(中断も含む)およびその通信に使用された回線とが
通知され、この使用回線の情報がクライアント制御部1
622から回線選択部1610に通知されるので、これ
をもとに回線選択部1610がフラグのON/OFFを
設定する。
【0061】転送成績欄1730には、当該回線を用い
た直前のファイル転送処理における転送レート(転送フ
ァイル容量÷転送時間長)が格納される。転送成績欄1
730については、クライアント制御部1622が、ク
ライアント側受信部1623から取得した情報(ファイ
ルデータ受信の開始/終了のタイミング、転送ファイル
のサイズ、使用回線の回線ID)を回線選択部1610
に通知してくるので、回線選択部1610は、これらの
情報をもとに当該ファイル受信における転送レートを、
「転送レート = ファイルサイズ ÷ 転送所要時間」と
いう式で算出して転送成績欄1730に値を設定する。
((注)転送所要時間 = 転送終了時刻− 転送開始時
刻) そして、ファイル再転送を要求する際、クライアント制
御部1622はクライアント側送信部1621に再送要
求パケットの生成と送信とを指示する前に、回線選択部
1610に対して使用すべき回線を問い合わる。回線選
択部1610は、基本的に、空き回線(使用状態欄17
20の内容がOFFのもの)のうち転送成績欄1730
に格納された転送レートの値が最も大きいものをクライ
アント制御部1622に通知する。
【0062】ただし、ネットワークでの障害などにより
転送が中断されたファイルの再転送要求時、クライアン
ト制御部1622は、この障害の発生した回線を回線選
択部1610に通知し、この回線は避けて回線の選択を
行うよう指示してくるので、回線選択部1610は、障
害の発生した回線以外の空き回線のうちで転送レートが
最も高いものを選択し、その回線IDをクライアント制
御部1622に通知する。
【0063】クライアント制御部1622は、回線選択
部1610が通知してきた回線IDをクライアント側送
信部1621に通知して、当該回線を介してファイル再
送要求命令をサーバ10に送信させる。クライアント側
送信部1621は、回線選択部1610が選択した回線
を介して、ファイル再送要求命令をサーバ10に送信す
る。
【0064】以下、回線の指定がどのように実現される
か、図面を参照しながら説明する。図18は、図1に示
すファイル転送システムの一部で、クライアント160
0、ルータ50、回線A、B、Cの接続の状態を示す図
である。図18に示す通り、ルータ50において、回線
Aに接続されるポート501には「a1.a2.a3.a
4」、回線Bに接続されるポート502には「b1.b2.
b3.b4」、回線Cに接続されるポート503には「c
1.c2.c3.c4」、というIPアドレスがそれぞれ付加
されている。クライアント制御部1622は、これらポ
ートごとのIPアドレスとそこに接続される回の回線I
Dとの組み合わせ(例:「"a1.a2.a3.a4", "
A"」)で保持しておき、回線選択部1610が選択し
た回線(回線ID)に対応するIPアドレスをクライア
ント側送信部1621に通知する。すると、クライアン
ト側送信部161は、ルータ50に対して、IPアドレ
スを指定して再送要求パケットを送信する。ルータ50
はポIPアドレスで指定されたポートに接続された回線
に再送要求パケットを送信する。
【0065】(選択部1610の動作)以下、図面を参
照しながら、回線選択部1610による回線選択処理の
流れを説明する。図19は、回線選択部1610による
回線選択処理の動作を示すフローチャート図である。
【0066】先ず、回線選択部1610は、ファイル転
送処理中断にともなってクライアント制御部1622か
ら回線選択指示を受けつけ(S1901:Yes)、接続
経路情報を読み出す(S1902)。ここで、回線選択
部1610は、接続経路情報のうち中断時に使用してい
た回線(クライアント制御部1622から通知される)
に関する情報を除いて(S1903)、残りの回線のう
ち、転送成績欄1730の値が最大のものを選択する
(S1904)。
【0067】図17に示した接続経路情報1700の例
でいえば、回線選択部1610は、中断時使用中だった
回線(回線ID欄1710の内容が「B」のもの。回線
302に対応)を除いて、回線ID欄1710の内容が
「A」「C」の2つの回線のうち、転送成績欄1730
の値が大きい「C」の回線を選択する。 (まとめ)以上の説明の通り、本変形例では、クライア
ント1600がファイル転送を再開する際には、あらか
じめ登録されている経路(ここでは回線A、B、C)の
中から、ファイル転送中断時に使われていた経路(回
線)以外の経路のうちファイル転送速度が最も早いと考
えられるものを選択し、この経路を用いてファイル転送
を再開する。それによって、中断後の再送処理も含めて
ファイル転送に費やす時間を最小限に短縮することがで
きる。
【0068】なお、本変形例では、1つのファイル転送
経路が1つの回線によって成り立つこととしているが、
1つの転送経路が複数の回線にまたがって成る場合もあ
る。その場合、選択の対象は回線ではなく経路となる。
また、回線選択において参照する情報は、直前の転送処
理における転送成績としているが、これ以外の情報をも
とに回線を選択してもよい。例えば、過去一定期間にお
ける回線トラブルの発生件数、直前のトラブル発生時刻
などが考えられる。また、クライアントの管理者が、回
線に関する各種情報(上述の情報を含む)をもとに判断
して回線の優先順位をあらかじめ定めてクライアントに
指示しておき、クライアントはこの優先順位指定に従っ
て回線を選択すること、としてもよい。 (変形例3)本変形例は、サーバがファイル転送処理を
中断する場合において中断すべきファイル転送処理の決
定する際の手順に関するものである。 (シーケンス)本変形例におけるファイル転送処理の流
れは上記実施の形態と同じであるので、ファイル転送処
理のシーケンスの説明は省略する。 (構成)本変形例におけるファイル転送システムは、上
記実施の形態に示したファイル転送システム1と比べ、
クライアントの構成は同一である。ただし、サーバ20
10は、本変形例固有の構成として、ネットワーク負荷
増大にともなってファイル転送処理を中断する場合に、
中断すべきファイル転送処理を選択する転送中断判定部
2010を備える。また、この転送中断判定部2010
の処理に関連して、サーバ制御部2012が、本変形例
固有の処理を行う。
【0069】サーバ2000が実行中のファイル転送処
理を中断するのは、転送処理負荷が過大となって新規の
ファイル転送要求が実行できない状態であるにも拘わら
ず、優先度の高い新規の転送要求を受け付けた場合であ
る。ここでいう「優先度」とは、要求元クライアントが
ファイルデータを用いて行おうとしている作業の重要
性、緊急性、あるいは要求元クライアントの優先順位な
どによって決まるものである。さらに、再送要求(get
offset)に応じて行われるファイル転送処理は、通常の
転送要求(get)に応じて行われるファイル転送処理よ
りも優先度が高い。これは、同一のクライアントが繰り
返し処理を中断されることを防ぐためである。
【0070】図20は、本変形例におけるサーバ200
0の構成を示すブロック図である。上記実施の形態にお
けるサーバ10と同一の処理を行う構成部については同
じ参照番号を付し、説明は省略する。サーバ制御部20
13は、転送中断判定部2010が転送中断すべきファ
イル送信処理を選択する基準として参照する転送管理情
報2100を生成・管理する。転送管理情報2100
は、実施の形態における転送管理情報131とは内容が
異なっている。
【0071】図21は、本変形例における転送管理情報
2100の構成と内容の一例とを示す模式図である。転
送管理情報2100は、サーバ2000が実行中のファ
イル転送処理件数と同数存在し、クライアントID欄2
010、ファイル識別子欄2120、ファイルサイズ欄
2130、既転送データ量欄2140、転送レート欄2
150、再転送フラグ欄2160とから成る。転送管理
情報2100は、ファイル転送処理開始時に生成され、
転送処理完了後に消去される。また、転送管理情報21
00のうち既転送データ量欄2140の内容は、1パケ
ット分のファイルデータ送信処理が終わるたびに更新さ
れる。
【0072】クライアント識別子欄2110には、ファ
イル転送処理要求元のクライアントの識別情報(アドレ
ス)が格納される。サーバ制御部2013は、クライア
ント識別情報をファイル転送要求命令400(図4)か
ら取得する。ファイル識別子欄2120には、転送処理
実行中のファイルの識別情報が格納される。サーバ制御
部2013は、ファイル識別情報を転送要求パケットか
ら取得する。
【0073】ファイルサイズ欄2130には、転送処理
対象のファイルのサイズ(全体長)をバイト数で表した
値が格納される。サーバ制御部2013は、ファイルサ
イズ情報をファイル管理部14から取得する。既転送デ
ータ量欄2140には、当該転送中ファイルについて転
送済みデータ量の情報が格納される。サーバ側送信部1
1が1パケット分のファイルデータの送信を終える毎
に、サーバ制御部2013は、当該パケットによって転
送されたファイルデータの量を、既転送データ量欄21
40に足し込んでいく。
【0074】転送レート欄2150には、当該転送中フ
ァイルについて、データ転送レートが格納される。デー
タ転送レートは、ファイル転送処理開始時に、サーバ制
御部2013が転送処理ごとに割り当てるもので、当該
ファイル転送処理における単位時間当たりのデータ転送
量(単位:Kbps)の上限である。そして、サーバ側送信
部12は、当該ファイルの転送処理実行にあたって、デ
ータ送信を転送レートの範囲内で行う。すなわち、サー
バ制御部2013があるファイルの転送処理について転
送レートを20Kbpsと決定すると、サーバ側送信部12
は、当該ファイルのデータをクライアント20に送信す
る際、データ転送レートが20Kbps以下となるように制
御しながら、ファイルの転送を行うことになる。
【0075】再転送フラグ欄2160には、当該ファイ
ル転送処理が、いったん中断された後に再転送要求に応
じて実行されているものかどうかを示すフラグが設定さ
れる。ONであれば再転送、OFFであれば通常の転送
である。サーバ制御部2013は、再転送開始時にのみ
この欄にONを設定する。サーバ制御部2013は、サ
ーバ側送信部11があるファイルについてデータ送信処
理を開始した時点で、サーバ側送信部11から当該ファ
イル識別子と転送開始時刻の情報とを取得し、当該ファ
イル転送処理用の転送管理情報2100を生成する。そ
の後は、サーバ制御部2013はサーバ側送信部11が
1パケット分のファイルデータの送信を終える毎に、当
該ファイルに関する既転送データ量欄2140の内容を
更新する。
【0076】サーバ制御部2013は、サーバ側受信部
12からファイル転送要求受付(ファイル転送要求命令
受信)の通知があるたびに実行中の転送処理の負荷をチ
ェックして、新たなファイル転送処理を行うことができ
るかどうか判定する。負荷が過大で、このままでは新た
なファイル転送処理の開始は不可能と判断すると、サー
バ制御部2013は転送中断判定部2010に指示し
て、実行中のファイル転送処理のうち中断すべきものを
選択させる。
【0077】そして、サーバ制御部2013は、サーバ
側送信部11に指示して、転送中断判定部2010が選
択したファイル転送処理を中断させ、その代わりに新規
に受け付けたファイル転送処理を開始させる。転送中断
判定部2010は、サーバ制御部2013からの指示を
受けて、実行中のファイル転送処理のうち中断すべきも
のを選択、サーバ制御部2013に通知する。転送中断
判定部2010は、転送管理情報2100をもとに、転
送完了までの時間が最も長くかかると判定した転送処理
を、中断すべきものとして選択する。ただし、再転送の
ファイル転送処理については、なるべき中断させないよ
うにする。実行中のファイル転送処理が全て再転送であ
る場合を除いて、転送中断判定部2010が再転送のも
のを選択することはない。
【0078】転送中断判定部2010は、先ず転送終了
率を見て中断すべき転送処理を決定する。転送終了率
は、転送中ファイルのデータのうちどれだけが転送済み
かを示す値で、送信管理情報2100における既転送デ
ータ量欄2140の値をファイルサイズ欄2130の値
で割ったものである。転送終了率が低いファイル転送処
理を選択するのは、今後も転送処理が長く続くことが予
想されるからである。
【0079】ただし、使用する回線の状態などによって
は、転送終了率がそのまま転送終了までにかかる時間の
長さを表すとは言えない場合もある。そこで、転送終了
までの予想残り時間を算出し、これを基準に中断すべき
ファイル転送処理を選択することにしてもよい。予想残
り時間は、ファイルサイズ欄2103の値から既転送デ
ータ量欄2140の値を引いて、あと何バイトのデータ
を送信するかを求め、このデータ残量を転送レート欄2
150の値で割ることで得られる。
【0080】(動作)以下、サーバ2000によるファ
イル転送処理中断の動作を、以下、図面に従って説明す
る。図22は、サーバ2000が、新規のファイル転送
要求を受けて、実行中のファイル転送処理を中断するま
での処理の流れを示すフローチャートである。
【0081】先ず、サーバ側受信部12がファイル転送
要求を受け付け、その内容をサーバ制御部2013に出
力する(S2201:Yes)。サーバ制御部2013
は、当該転送要求を実施できるかどうか(実行中のファ
イル転送処理によってサーバ2000のデータ転送能力
が限界に達しており、新たなファイル転送処理を行う余
地がない状態かどうか)を判定する。実施可能と判定し
た場合(S2202:No)、サーバ制御部2013は、
ファイル管理部14およびサーバ側送信部11に指示し
て、当該ファイルの転送処理を実施させる(S220
7)。実施不能と判定した場合(S2202:Yes)、
サーバ制御部2013は転送中断判定部2010に指示
して、中断すべき転送処理を選択させる。転送中断判定
部2010は転送管理情報2100の内容をもとに中断
する転送処理を決定する。この時、転送中断判定部20
10は、再転送のファイル転送処理を除いて(S220
4)、中断すべき転送処理を決定するが、全てのファイ
ル転送処理が再転送の場合は(S2203:Yes)、再
転送のファイル転送処理から中断すべきものを決定する
(S2205)。
【0082】サーバ制御部2013は、選択部が選択し
た転送処理をサーバ側送信部11に通知して、処理を中
断させる(S2206)。そして、中断処理が完了する
と、サーバ制御部2013はファイル管理部14および
サーバ側送信部12に指示して、新規のファイル転送処
理を実施させる(S2207)。 (まとめ)このように、本変形例のファイル転送システ
ムでは、実行中のファイル転送処理の中断を行う場合、
サーバ2000が転送管理情報をもとに、転送終了まで
の時間が長いと考えられる処理を選択して中断させる。
また、一度中断された後のファイル再転送処理について
は、なるべく再中断しないようにする。そのため、やむ
を得ずファイル転送処理を中断する場合も、完了直前の
ファイル転送処理が中断されたり、同じ要求元に対する
ファイル転送処理が繰り返し中断されたりするといった
事態は避けることができる。
【0083】なお、中断すべき転送処理の決定方法は、
上に述べたものに限定されない。例えば、先ず、転送レ
ートを基準に選択する方法もある。例えば、新規に受け
付けたファイル転送処理が、緊急性の高いもので転送レ
ートを高く(例えば100Kbps)設定しなければならな
いとする。上記の転送終了までの時間を基準に基づいて
選択されたファイル転送処理の転送レートが50Kbpsし
かないと、この転送処理を中断しても新規のファイル転
送処理を必要な100Kbpsの転送レートで実行できる保
証はない。そこで、先ず転送レート欄2150の内容を
チェックし、転送レートが100Kbps以上のファイル転
送処理だけを対象に処理終了までの時間を予測して中断
すべき転送処理を決定する、という方法が考えられる。
【0084】
【発明の効果】以上の説明から明らかなように本発明の
ファイル転送システムは、使用者からの指示に応じてフ
ァイル転送要求を発行するクライアントと、前記ファイ
ル転送要求に応じて前記クライアントへファイルを転送
するサーバとから成るファイル転送システムであって、
前記クライアントは、ファイルの転送処理が途中で中断
された場合に、前記使用者からファイル再転送要求を行
うか否かの指示を受け付ける再転送指示受付手段と、前
記再転送指示受付手段が再転送要求を行うように指示を
受け付けた場合に、中断時点までに転送完了していたデ
ータ量を示す中断位置情報を伴なうファイル再転送要求
命令を生成して前記サーバに送信する再転送要求手段と
を有し、前記サーバは、前記ファイル再転送要求命令を
前記クライアントから受け付けると、前記中断位置情報
をもとに前記ファイルのデータのうち前記クライアント
に転送完了していた部分を除いた残部を転送する残部転
送手段を有すること、を特徴とする構成となっており、
それによって、ファイル転送を行なう際、ネットワーク
などの問題により転送が中断されても、ファイルの必要
な部分のみの転送を行なうことができるため、ファイル
を最初から転送しなおすという必要がなくなるので、フ
ァイル転送時間を短縮する効果を有する。
【0085】また、前記クライアントは、転送されてく
るファイルのデータを受信しながら、前記使用者から転
送中断要求を行うか否かの指示を受け付ける中断指示受
付手段と、前記中断指示受付手段が転送中断要求を行う
ように指示を受け付けた場合に、当該ファイルについて
転送処理を中断すべき位置を示す中断予約情報を伴なう
転送中断要求命令を前記サーバに対して送信する中断予
約手段を有し、前記サーバは、前記ファイルの転送処理
について前記中断予約情報に指定された位置までのデー
タを転送し終えた時点で転送処理を中断する予約中断手
段を有すること、を特徴とするとすることもできる。こ
れによって、クライアントがファイルデータのうち必要
な部分を受信した時点でファイル転送処理を終了させる
ことができるので、不要なデータの受信に要する分だけ
ファイル転送処理に要する時間を短縮することができ
る。
【0086】また、前記サーバと前記クライアントとの
間はファイル転送に用いることのできる複数の経路で接
続されており、前記クライアントは、前記複数の経路に
ついて以前のファイル転送処理におけるデータ転送速度
の実績を示す転送実績情報を保持しておく転送実績保持
手段と、前記転送実績情報に基づき、ファイル転送に用
いる経路を選択する経路選択手段とを更に有すること、
としてもよい。これによって、ファイル転送に要する時
間が最も短くてすむと考えられる経路を用いてファイル
転送処理を行うので、ファイル転送時間を短縮すること
ができる。
【0087】さらに、前記経路選択手段は、いったん転
送処理が中断されたファイルの再転送処理に用いる経路
を選択する場合、前記複数の経路のうち中断時点で用い
ていた経路を除外してファイル転送に用いる経路を選択
すること、としてもよい。これによって、障害の発生し
た経路を避けてファイル転送処理を行うことができるの
で、ファイル転送に要する時間が不必要に長くなること
を防止できる。
【0088】また、前記サーバは、実行中のファイル転
送処理の実施状況を示す転送処理管理情報をもとに中断
すべきファイル転送処理を選択する処理選択手段を更に
有し、前記転送処理管理情報は、転送中ファイルの全デ
ータ量に対する転送済みデータ量の比率である転送終了
率、ファイル転送処理におけるデータ転送速度およびフ
ァイル転送処理終了までの予測時間のうち少なくとも1
つを含む、としてもよい。これによって、やむを得ずフ
ァイル転送処理を中断する場合も、完了直前のファイル
転送処理が中断されるなど利用者が特に不都合と感じる
ような事態を防止できる。
【0089】さらに、前記処理選択手段は、中断すべき
ファイル転送処理を選択する場合、いったん転送処理が
中断されたファイルの再転送処理については選択の対象
外とすることもできる。これによって、一度ファイル転
送を中断されたクライアントについて、同一ファイルの
転送処理の中断が繰り返される、という不都合の発生を
防止できる。
【0090】そして、同様に以上の説明から明らかなよ
うに本発明のファイル転送方法は、使用者からの指示に
応じてクライアントが発行するファイル転送要求に応じ
てサーバが前記クライアントへファイルを転送するファ
イル転送方法であって、ファイルの転送処理が途中で中
断された場合に、前記クライアントが、前記使用者から
ファイル再転送要求を行うか否かの指示を受け付ける再
転送指示受付ステップと、前記再転送指示受付ステップ
において再転送要求を行うように指示を受け付けた場合
に、前記クライアントが、中断時点までに転送完了して
いたデータ量を示す中断位置情報を伴なうファイル再転
送要求命令を生成して前記サーバに送信する再転送要求
ステップと、前記サーバが、前記ファイル再転送要求命
令を前記クライアントから受け付け、前記中断位置情報
をもとに前記ファイルのデータのうち前記クライアント
に転送完了していた部分を除いた残部を転送する残部転
送ステップとを有すること、となっているので、ファイ
ル転送を行なう際、ネットワークなどの問題により転送
が中断されても、ファイルの必要な部分のみの転送を行
なうことができるため、ファイルを最初から転送しなお
すという必要がなく、ファイル転送時間の短縮する効果
が得られる。
【図面の簡単な説明】
【図1】本発明に関わるファイル転送システムの実施の
形態における概要を示す模式図である。
【図2】同実施の形態においてサーバとクライアントと
の間で実行されるファイル転送処理の過程を示すシーケ
ンス図である。
【図3】同実施の形態におけるクライアントの構成のう
ちファイル転送に関連する部分を示すブロック図であ
る。
【図4】同実施の形態におけるファイル転送要求命令の
構成を示す模式図である。
【図5】同実施の形態におけるファイル再送要求命令の
構成を示す模式図である。
【図6】同実施の形態におけるファイル転送パケットの
構成を示す模式図である。
【図7】同実施の形態におけるクライアントの動作を示
すフローチャートである。
【図8】同実施の形態におけるサーバの構成のうちファ
イル転送に関連する部分を示すブロック図である。
【図9】同実施の形態におけるサーバの動作を示すフロ
ーチャートである。
【図10】同実施の形態の第1の変形例においてサーバ
とクライアントとの間で実行されるファイル転送処理の
過程を示すシーケンス図である。
【図11】同変形例におけるクライアントの構成を示す
ブロック図である。
【図12】同変形例における中断要求命令の構成を示す
模式図である。
【図13】同変形例におけるサーバの構成を示すブロッ
ク図である。
【図14】同変形例におけるサーバの動作を示すフロー
チャートである。
【図15】同実施の形態の第2の変形例におけるファイ
ル転送処理の流れを示すシーケンス図である。
【図16】同変形例におけるクライントの構成を示すブ
ロック図である。
【図17】同変形例における接続経路情報の構成と内容
の一例とを示す図である。
【図18】同変形例におけるクライアント、ルータ、回
線の接続状態を示す図である。
【図19】同変形例における回線選択部による動作を示
すフローチャート図である。
【図20】同実施の形態の第3の変形例におけるサーバ
の構成を示すブロック図である。
【図21】同変形例における転送管理情報の構成と内容
の一例とを示す模式図である。
【図22】同変形例においてサーバが実行中のファイル
転送処理を中断するまでの動作を示すフローチャートで
ある。
【符号の説明】
10、110、2000 サーバ 10、111 サーバ側送信部 12、 サーバ側受信部 13、113、2013 サーバ制御部 131、2100 転送管理情報 1610 回線選択部 1700 接続経路情報 2010 転送中断判定部 20、120、1600 クライアント 21、121、1621 クライアント側送信部 22、122、1622 クライアント制御部 23、1623 クライアント側受信部 231 経過監視部 30 ネットワーク 40 ハードディスクドライブ 50、51 ルータ A、B、C 回線
───────────────────────────────────────────────────── フロントページの続き (72)発明者 水野 敏雄 愛知県名古屋市中区栄2丁目6番1号 白 川ビル別館5階 株式会社松下電器情報シ ステム名古屋研究所内 (72)発明者 尾崎 浩久 愛知県名古屋市中区栄2丁目6番1号 白 川ビル別館5階 株式会社松下電器情報シ ステム名古屋研究所内 Fターム(参考) 5B082 HA05 5B089 GA21 GB03 HB02 JA32 JB10 KA05 KB10 KC24 KG08 ME15

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 使用者からの指示に応じてファイル転送
    要求を発行するクライアントと、前記ファイル転送要求
    に応じて前記クライアントへファイルを転送するサーバ
    とから成るファイル転送システムであって、 前記クライアントは、 ファイルの転送処理が途中で中断された場合に、前記使
    用者からファイル再転送要求を行うか否かの指示を受け
    付ける再転送指示受付手段と、 前記再転送指示受付手段が再転送要求を行うように指示
    を受け付けた場合に、中断時点までに転送完了していた
    データ量を示す中断位置情報を伴なうファイル再転送要
    求命令を生成して前記サーバに送信する再転送要求手段
    とを有し、 前記サーバは、前記ファイル再転送要求命令を前記クラ
    イアントから受け付けると、前記中断位置情報をもとに
    前記ファイルのデータのうち前記クライアントに転送完
    了していた部分を除いた残部を転送する残部転送手段を
    有すること、 を特徴とするファイル転送システム。
  2. 【請求項2】 前記クライアントは、 転送されてくるファイルのデータを受信しながら、前記
    使用者から転送中断要求を行うか否かの指示を受け付け
    る中断指示受付手段と、 前記中断指示受付手段が転送中断要求を行うように指示
    を受け付けた場合に、当該ファイルについて転送処理を
    中断すべき位置を示す中断予約情報を伴なう転送中断要
    求命令を前記サーバに対して送信する中断予約手段を有
    し、 前記サーバは、前記ファイルの転送処理について前記中
    断予約情報に指定された位置までのデータを転送し終え
    た時点で転送処理を中断する予約中断手段を有するこ
    と、 を特徴とする請求項1に記載のファイル転送システム。
  3. 【請求項3】 前記サーバと前記クライアントとの間は
    ファイル転送に用いることのできる複数の経路で接続さ
    れており、 前記クライアントは、 前記複数の経路について以前のファイル転送処理におけ
    るデータ転送速度の実績を示す転送実績情報を保持して
    おく転送実績保持手段と、 前記転送実績情報に基づき、ファイル転送に用いる経路
    を選択する経路選択手段と、を更に有することを特徴と
    する請求項1または2に記載のファイル転送システム。
  4. 【請求項4】 前記経路選択手段は、いったん転送処理
    が中断されたファイルの再転送処理に用いる経路を選択
    する場合、前記複数の経路のうち中断時点で用いていた
    経路を除外してファイル転送に用いる経路を選択するこ
    と、 を特徴とする請求項3に記載のファイル転送システム。
  5. 【請求項5】 前記サーバは、実行中のファイル転送処
    理の実施状況を示す転送処理管理情報をもとに中断すべ
    きファイル転送処理を選択する処理選択手段を更に有
    し、 前記転送処理管理情報は、転送中ファイルの全データ量
    に対する転送済みデータ量の比率である転送終了率、フ
    ァイル転送処理におけるデータ転送速度およびファイル
    転送処理終了までの予測時間のうち少なくとも1つを含
    むことを特徴とする、請求項1乃至4のいずれかに記載
    のファイル転送システム。
  6. 【請求項6】 前記処理選択手段は、中断すべきファイ
    ル転送処理を選択する場合、いったん転送処理が中断さ
    れたファイルの再転送処理については選択の対象外とす
    ることを特徴とする、請求項5に記載のファイル転送シ
    ステム。
  7. 【請求項7】 使用者からの指示に応じてクライアント
    が発行するファイル転送要求に応じてサーバが前記クラ
    イアントへファイルを転送するファイル転送方法であっ
    て、 ファイルの転送処理が途中で中断された場合に、前記ク
    ライアントが、前記使用者からファイル再転送要求を行
    うか否かの指示を受け付ける再転送指示受付ステップ
    と、 前記再転送指示受付ステップにおいて再転送要求を行う
    ように指示を受け付けた場合に、前記クライアントが、
    中断時点までに転送完了していたデータ量を示す中断位
    置情報を伴なうファイル再転送要求命令を生成して前記
    サーバに送信する再転送要求ステップと、 前記サーバが、前記ファイル再転送要求命令を前記クラ
    イアントから受け付け、前記中断位置情報をもとに前記
    ファイルのデータのうち前記クライアントに転送完了し
    ていた部分を除いた残部を転送する残部転送ステップと
    を有すること、を特徴とするファイル転送方法。
JP2000061987A 2000-03-07 2000-03-07 ファイル転送システム Pending JP2001249857A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000061987A JP2001249857A (ja) 2000-03-07 2000-03-07 ファイル転送システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000061987A JP2001249857A (ja) 2000-03-07 2000-03-07 ファイル転送システム

Publications (1)

Publication Number Publication Date
JP2001249857A true JP2001249857A (ja) 2001-09-14

Family

ID=18582052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000061987A Pending JP2001249857A (ja) 2000-03-07 2000-03-07 ファイル転送システム

Country Status (1)

Country Link
JP (1) JP2001249857A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003091474A (ja) * 2001-09-19 2003-03-28 Nakayo Telecommun Inc ダウンロード機能を有する通信装置
JP2007306230A (ja) * 2006-05-10 2007-11-22 Fuji Xerox Co Ltd 画像読取装置および制御方法
JP2007537500A (ja) * 2004-05-13 2007-12-20 松下電器産業株式会社 情報処理装置、集積回路、データ転送制御方法、データ転送制御用プログラム、プログラム記録媒体、プログラム伝送媒体、及びデータ記録媒体
JP2008210083A (ja) * 2007-02-26 2008-09-11 Hitachi Electronics Service Co Ltd ダウンロードシステム及びクライアント側機器
JP2011509460A (ja) * 2008-01-02 2011-03-24 サムスン エレクトロニクス カンパニー リミテッド データ受信方法及び装置
JP2014016906A (ja) * 2012-07-10 2014-01-30 Mitsubishi Electric Corp コンテンツ配信システム、配信サーバー、端末装置およびコンテンツ配信方法
US9277281B2 (en) 2003-04-09 2016-03-01 Samsung Electronics Co., Ltd. Apparatus, system and method for providing information on objects included in content
WO2020032120A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー 電子制御装置、リトライポイントの特定方法及びリトライポイントの特定プログラム
JP7400232B2 (ja) 2018-08-10 2023-12-19 株式会社デンソー 電子制御装置、リトライポイントの特定方法、リトライポイントの特定プログラム及び車両用電子制御システム

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003091474A (ja) * 2001-09-19 2003-03-28 Nakayo Telecommun Inc ダウンロード機能を有する通信装置
US9277281B2 (en) 2003-04-09 2016-03-01 Samsung Electronics Co., Ltd. Apparatus, system and method for providing information on objects included in content
JP2007537500A (ja) * 2004-05-13 2007-12-20 松下電器産業株式会社 情報処理装置、集積回路、データ転送制御方法、データ転送制御用プログラム、プログラム記録媒体、プログラム伝送媒体、及びデータ記録媒体
JP2007306230A (ja) * 2006-05-10 2007-11-22 Fuji Xerox Co Ltd 画像読取装置および制御方法
JP2008210083A (ja) * 2007-02-26 2008-09-11 Hitachi Electronics Service Co Ltd ダウンロードシステム及びクライアント側機器
JP2011509460A (ja) * 2008-01-02 2011-03-24 サムスン エレクトロニクス カンパニー リミテッド データ受信方法及び装置
JP2014016906A (ja) * 2012-07-10 2014-01-30 Mitsubishi Electric Corp コンテンツ配信システム、配信サーバー、端末装置およびコンテンツ配信方法
US9271122B2 (en) 2012-07-10 2016-02-23 Mitsubishi Electric Corporation Delivery server, and terminal device
WO2020032120A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー 電子制御装置、リトライポイントの特定方法及びリトライポイントの特定プログラム
JP7400232B2 (ja) 2018-08-10 2023-12-19 株式会社デンソー 電子制御装置、リトライポイントの特定方法、リトライポイントの特定プログラム及び車両用電子制御システム
US11928459B2 (en) 2018-08-10 2024-03-12 Denso Corporation Electronic control unit, retry point specifying method and computer program product for specifying retry point

Similar Documents

Publication Publication Date Title
JP3786152B2 (ja) 印刷システム、印刷方法及びプリンタ
WO2013178082A1 (zh) 图片上传方法、系统、客户端及网络服务器、计算机存储介质
JPH07175763A (ja) マルチメディア・データの相互交換のための方法及び装置
JPH04271454A (ja) 疎結合計算機システム
JP2003333050A (ja) データ送信方法
JP2001249857A (ja) ファイル転送システム
JP2006350404A (ja) 優先制御方法、計算機システム及び管理装置
EP2913981B1 (en) Image forming system, relay server, communication controlling method and non-transitory computer readable recording medium
JPS5992654A (ja) 電子文書配送システム
US8166199B2 (en) Communication apparatus, network system, communication method and program
JP6129526B2 (ja) 通信装置、通信方法およびプログラム
JP4309321B2 (ja) ネットワークシステムの運用管理方法及びストレージ装置
JP3588416B2 (ja) 印刷システム、印刷サーバ装置及び端末装置
JP2000224260A (ja) 通信制御装置
JP5024024B2 (ja) スプールサーバ及びデータ通信制御方法
JP4151330B2 (ja) ネットワークファイルシステム用i/o制御方法
JP2008160557A (ja) 受信装置、送信装置及び中継装置
JP2009055134A (ja) 通信制御装置、通信制御方法及び通信制御プログラム
JPH0962624A (ja) オンライントランザクションの処理方法および処理システム
JPH10341269A (ja) 回線負荷分散方式
JP2000181656A (ja) 印刷データ管理装置及び印刷データ管理方法
WO2022105804A1 (zh) 同步处理方法、设备及介质
JPH10190734A (ja) パケット転送装置及びパケット転送方法
JP2000057075A (ja) データ通信装置、データ通信方法及びそれらのプログラム記憶媒体
JP2001103066A (ja) 通信装置及び通信方法