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

ファイル転送システム Download PDF

Info

Publication number
JP4754982B2
JP4754982B2 JP2006035805A JP2006035805A JP4754982B2 JP 4754982 B2 JP4754982 B2 JP 4754982B2 JP 2006035805 A JP2006035805 A JP 2006035805A JP 2006035805 A JP2006035805 A JP 2006035805A JP 4754982 B2 JP4754982 B2 JP 4754982B2
Authority
JP
Japan
Prior art keywords
file
range
unit
data
acquisition request
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.)
Expired - Fee Related
Application number
JP2006035805A
Other languages
English (en)
Other versions
JP2007213526A (ja
Inventor
一成 藤原
匠 田辺
靖 綾木
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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2006035805A priority Critical patent/JP4754982B2/ja
Priority to US11/705,023 priority patent/US8788697B2/en
Publication of JP2007213526A publication Critical patent/JP2007213526A/ja
Application granted granted Critical
Publication of JP4754982B2 publication Critical patent/JP4754982B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Description

本発明は、家電機器やPC間でファイルを転送するファイル転送システムに関し、特に、一世代コピー可能なファイルを分割して転送するファイル転送システムに関する。
近年、xDSLや光ファイバーなどのブロードバンド環境が整ったことにより、企業、一般家庭を問わずインターネット接続が急速に普及してきている。また、家庭内のPCや家電機器をEthernet(登録商標)や無線LANなどで接続するホームネットワーク環境も一般化してきている。この様な中で、パーソナルコンピュータ(PC)だけでなく、テレビやDVDレコーダ、エアコン、冷蔵庫のような家電機器も相互に接続できるようになってきている。
インターネットやホームネットワークにおけるアプリケーションの一つとして、家電機器やPC間でファイルを転送するアプリケーションがある。例えば、DVDレコーダに録画したTV番組をPCに転送して編集を行ったり、録画したMPEG2ファイルをDVDレコーダ間で転送してダビングしたりする例などがある。
従来、このようなファイル転送を利用した不正コピーを防止するための技術として、DTCP(Digital Transmission Content Protection)が存在する。DTCPでは、利用許諾情報として、コピーを完全に禁止するCopy Never、一世代だけコピーを許可するCopy One Generation、コピーを自由に行えるCopy Freeを規定している(例えば、非特許文献1参照)。特に、Copy One Generationに関しては、ファイルの転送元の機器(ソース機器)が転送済みのファイルを即座に削除もしくは使用不可にするという条件の下で、一世代のコピー後も、他の機器(シンク機器)に前記ファイルを転送することを許可している。そのため、Copy One Generationのファイルに関しては、ソース機器が前記条件を厳守することにより、機器間のファイル転送を実現することができる。なお、Copy One Generationのファイルは、一世代コピー後はCopy No Moreのファイルに変更される。
Digital Transmission Content Protection Specification Volume 1 (Informational Version), Hitachi, Ltd, Intel Corporation, Matsushita Electric Industrial Co., Ltd., Sony Corporation, Toshiba Corporation, Revision 1.4, February 28, 2005.
ところで、ソース機器に蓄積されているファイルのサイズが大きい場合は、ネットワークの利用効率を考慮し、ファイルを複数に分割して転送する形態を用いる。例えば、シンク機器は、HTTP(Hyper Text Transfer Protocol)のGETリクエストのRangeヘッダにおいてファイルの範囲を指定し、このGETリクエストを受けたソース機器は、指定された範囲のデータをシンク機器に転送する。これによって、ソース機器に蓄積されているファイルを複数に分割してシンク機器に転送することが可能となる。しかしながら、このような形態によって一世代コピー可能なファイルを転送する場合は、ソース機器が転送済みのファイルを削除するか使用不可にするかによって、ソース機器に蓄積されているファイルのサイズに差が生じることになる。
図25は、転送済みのファイルを削除する方式と使用不可にする方式の概略を示す図である。ファイルを複数に分割して転送する形態では、一度にファイルの全部を削除または使用不可にするのではなく、ファイルの一部(転送済みの部分)を削除または使用不可にすることになるが、ここでは簡単のため「転送済みのファイル」を削除または使用不可にすると表現する。
この図に示されるように、全体で1000byteのファイル102を100byte単位でソース機器101がシンク機器110に転送する場合を考える。ファイル102の先頭から100byte分のデータ転送が済んだ場合、転送済みのファイルを削除する方式では、図25(a)に示されるようにソース機器101には900byte分のデータが残存する。他方、転送済みのファイルを使用不可にする方式では、図25(b)に示されるようにソース機器101には1000byte分のデータが残存する。
このように、転送済みのファイルを削除する方式と使用不可にする方式とでは、転送後におけるファイルサイズに差が生じるため、それ以降は、シンク機器110からのファイル転送要求方法が異なることになる。すなわち、転送済みのファイルを削除する方式では、図25(a)に示されるように、シンク機器110は、常にファイルの先頭107を基点としてファイル転送を要求する必要がある。他方、転送済みのファイルを使用不可にする方式では、図25(b)に示されるように、シンク機器110は、ファイルの先頭123ではなく前回取得した続き121を基点としてファイル転送を要求する必要がある。
しかしながら、現状では、ソース機器が転送済みのファイルを削除する方式を採用しているのか使用不可にする方式を採用しているのかをシンク機器側で特定することができない。そのため、ファイルを複数に分割して転送する形態によると、シンク機器が2回目以降のファイル転送を要求することができないという問題がある。
本発明は、前記課題を解決するものであって、ファイルを複数に分割して転送する形態において、ソース機器が転送済みのファイルを削除する方式と使用不可にする方式のいずれを採用している場合でも、シンク機器が2回目以降のファイル転送を要求することが可能なファイル転送システムを提供することを目的とする。
前記目的を達成するために、本発明に係るファイル送信装置は、他の装置(シンク機器)にファイルを送信するファイル送信装置(ソース機器)であって、前記ファイルを蓄積する蓄積手段と、前記ファイルの取得要求を前記他の装置から受信する受信手段と、前記蓄積手段に蓄積されている前記ファイルのうち、前記受信手段によって受信された前記ファイルの取得要求において指定される範囲のデータを前記他の装置に送信する送信手段と、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除または使用不可にする制限手段と、前記蓄積手段に蓄積されている前記ファイルのうち、前記制限手段によって削除も使用不可にもされない範囲である使用可能範囲を前記他の装置に通知する通知手段とを備える。これによって、前記ファイルのうち、前記制限手段によって削除も使用不可にもされない範囲である使用可能範囲が前記他の装置に通知されるので、前記他の装置は、誤った範囲を指定することなく2回目以降のファイル転送を要求することが可能となる。
ここで、前記通知手段は、前記制限手段によって削除または使用不可にされた後の前記ファイルの全体サイズを前記他の装置に通知してもよい。これによって、前記他の装置側で制限後のファイルの全体サイズの情報を用いた処理をすることが可能となる。
また、前記通知手段は、前記制限手段によって削除または使用不可にされる前の前記ファイルの全体サイズを前記他の装置に通知してもよい。これによって、前記他の装置側で制限前のファイルの全体サイズの情報を用いた処理をすることが可能となる。
また、前記ファイル送信装置は、さらに、前記使用可能範囲の問い合わせを前記他の装置から受け付ける受付手段を備え、前記通知手段は、前記受付手段によって前記問い合わせが受け付けられた場合、前記使用可能範囲を前記他の装置に通知してもよい。これによって、前記他の装置がダウンしたことによって前記他の装置側で一時的に保持していた情報が消えてしまった場合でも、前記他の装置は、前記ファイル送信装置に問い合わせをすることによって、消えてしまった情報を再び取得することが可能である。
また、前記受信手段は、前記ファイルの取得要求を前記他の装置とは別の装置から受信し、前記通知手段は、前記他の装置を特定することが可能な情報を前記別の装置に通知してもよい。これによって、前記別の装置は、前記他の装置にファイル転送を要求することが可能となる。
また、前記通知手段は、前記使用可能範囲を前記別の装置に通知してもよい。これによって、前記別の装置は、誤った範囲を指定することなく前記ファイル送信装置にファイル転送を要求することが可能となる。
また、前記通知手段は、前記蓄積手段に蓄積されている前記ファイルのうち、前記他の装置に送信済みの範囲を前記別の装置に通知してもよい。これによって、前記別の装置は、誤った範囲を指定することなく前記他の装置にファイル転送を要求することが可能となる。
他方、前記目的を達成するために、本発明に係るファイル送信装置は、他の装置(ソース機器)からファイルを受信するファイル受信装置(シンク機器)であって、前記ファイルのうち、前記他の装置によって削除も使用不可にもされない範囲である使用可能範囲の通知を前記他の装置から受け付ける受付手段と、前記使用可能範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記他の装置に送信する送信手段と、前記ファイルの取得要求において指定される範囲のデータを前記他の装置から受信する受信手段と、前記受信手段によって受信されたデータを蓄積する蓄積手段とを備える。これによって、前記ファイル受信装置は、前記ファイルのうち、使用可能範囲に含まれる任意の範囲を指定することができるので、誤った範囲を指定することなく2回目以降のファイル転送を要求することが可能となる。
ここで、前記受付手段は、前記他の装置において削除または使用不可にされた後の前記ファイルの全体サイズを前記他の装置から受け付けてもよい。これによって、前記ファイル受信装置側で制限後のファイルの全体サイズの情報を用いた処理をすることが可能となる。
また、前記受付手段は、前記他の装置において削除または使用不可にされる前の前記ファイルの全体サイズを前記他の装置から受け付けてもよい。これによって、前記ファイル受信装置側で制限前のファイルの全体サイズの情報を用いた処理をすることが可能となる。
また、前記ファイル受信装置は、さらに、前記使用可能範囲を前記他の装置に問い合わせる問い合わせ手段を備え、前記受付手段は、前記問い合わせ手段によって問い合わせがされた場合、前記使用可能範囲の通知を前記他の装置から受け付けてもよい。これによって、前記ファイル受信装置がダウンしたことによって前記ファイル受信装置側で一時的に保持していた情報が消えてしまった場合でも、前記ファイル受信装置は、前記他の装置に問い合わせをすることによって、消えてしまった情報を再び取得することが可能である。
また、前記受付手段は、前記他の装置(ソース機器)とは別の装置を特定することが可能な情報を前記他の装置から受け付け、前記送信手段は、前記別の装置に前記ファイルの取得要求を送信してもよい。これによって、前記ファイル受信装置が前記他の装置に前記ファイルの取得要求を送信した際に前記他の装置が前記別の装置にファイルを転送中でも、前記ファイル受信装置は、前記別の装置にファイル転送を要求することが可能となる。
また、前記受付手段は、前記使用可能範囲を前記他の装置から受け付け、前記送信手段は、前記使用可能範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記他の装置に送信してもよい。これによって、前記ファイル受信装置は、前記ファイル受信装置が前記他の装置に前記ファイルの取得要求を送信した際に前記他の装置が前記別の装置にファイルを転送中でも、誤った範囲を指定することなく前記他の装置にファイル転送を要求することが可能となる。
また、前記受付手段は、前記ファイルのうち、前記別の装置に送信済みの範囲を前記他の装置から受け付け、前記送信手段は、前記送信済みの範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記別の装置に送信してもよい。これによって、前記ファイル受信装置は、前記ファイル受信装置が前記他の装置に前記ファイルの取得要求を送信した際に前記他の装置が前記別の装置にファイルを転送中でも、誤った範囲を指定することなく前記別の装置にファイル転送を要求することが可能となる。
なお、本発明は、このようなファイル送信装置又はファイル受信装置として実現することができるだけでなく、このようなファイル送信装置からファイル受信装置にファイルを転送するファイル転送システムとして実現したり、このようなファイル送信装置又はファイル受信装置が備える特徴的な手段をステップとするファイル送信方法又はファイル受信方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
以上の説明から明らかなように、本発明に係るファイル転送システムによれば、ファイルを複数に分割して転送する形態において、ファイル送信装置が転送済みのファイルを削除する方式と使用不可にする方式のいずれを採用している場合でも、削除も使用不可にもされない範囲である使用可能範囲がファイル受信装置に通知される。これによって、ファイル受信装置は、誤った範囲を指定することなく2回目以降のファイル転送を要求することが可能となる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。
(実施の形態1)
図1は、本実施の形態1におけるファイル転送システムの利用環境を示す図である。この図に示されるように、本ファイル転送システムは、ソース機器101とシンク機器110とを備えている。ソース機器101とシンク機器110とは、ブロードバンドルータ202に接続されてホームネットワークを構成している。ブロードバンドルータ202は、インターネット203に接続されていてもよい。ソース機器101は、蓄積メディア201に蓄積しているファイルをシンク機器110に送信するセットトップボックス等である。シンク機器110は、ファイルをソース機器101から受信して蓄積メディア201に蓄積するDVD/HDDハイブリッドレコーダ等である。
本実施の形態1の初期状態では、一世代コピー可能なファイルをソース機器101が蓄積しており、そのファイルをシンク機器110に転送するものとする。ソース機器101に蓄積されるファイルの生成方法は特に限定されるものではない。例えば、ネットワークを通じて外部から受信することもできるし、あるいはソース機器101内で作成することもできる。ファイルの種類に関しては、動画・静止画・音楽など様々な種類が考えられる。ネットワークに関しても、インターネットやホームネットワークなど様々な形態が考えられる。ソース機器101やシンク機器110がネットワークへ接続する形態に関しても、有線や無線など様々な形態が考えられる。
次に、ファイルの転送(MOVE)に関して説明する。
DTCPでは、ファイルに関する利用許諾情報として、EMI(Encryption Mode Indicator)を利用する。EMIは、ファイルのコピーを禁止するCopy Never、一世代のみコピーを許可するCopy One Generation、自由にコピーを許可するCopy Freeの値を持つ。Copy One Generationのファイルは、一世代コピー後はCopy No Moreのファイルに変更される。
Copy One Generationのファイルについては、一世代コピー後に他の機器に対して二世代目のコピーを実行すること(ダビング)は許可されていない。しかしながら、他の機器にファイルを転送する際にソース機器からファイルを削除しながらファイルを転送すること(MOVE)は許可されている。すなわち、Copy One Generationのファイルを転送した場合、ソース機器は、そのファイルを即座に削除もしくは使用不可にする必要がある。ファイルを削除するとは、ソース機器の蓄積メディアからファイルを完全に消去することをいう。ファイルを使用不可にするとは、ソース機器の蓄積メディアにファイルは存在するが、そのファイルを何らかの方法でアクセスできない状態に変化させていることをいう。ファイルを削除する方法及び使用不可にする方法に関しては、本発明の主旨とは異なるため詳述しない。
図2は、本実施の形態1におけるソース機器及びシンク機器の内部構成を示す図である。
この図に示されるように、ソース機器101は、機能的には、蓄積部301と、ファイル管理部302と、受信部303と、送信部304と、通知部305と、受付部306と、通信部307とを備えている。蓄積部301は、ファイルを蓄積するハードディスク等である。通信部307は、ネットワークを介してシンク機器110と通信する通信インターフェイスであり、受信部303・送信部304・通知部305・受付部306のそれぞれと接続されている。受信部303は、ファイル取得要求をシンク機器110から受信してファイル管理部302に通知する。送信部304は、蓄積部301に蓄積されているファイルのうち、受信部303によって受信されたファイル取得要求において指定される範囲のデータをシンク機器110に送信する。ファイル管理部302は、本発明に係る制限手段の一例であり、蓄積部301に蓄積されているファイルのうち、送信部304によって送信された範囲のデータを削除または使用不可にする等、蓄積部301に蓄積されているファイルを管理している。通知部305は、蓄積部301に蓄積されているファイルのうち、ファイル管理部302によって削除も使用不可にもされない範囲である使用可能範囲をシンク機器110に通知する。受付部306は、前記使用可能範囲の問い合わせをシンク機器110から受け付けてファイル管理部302に通知する。なお、ファイル管理部302によって管理されているファイルの情報(以下「ファイル管理情報」という)は、必要に応じて送信部304や通知部305に通知される。
他方、シンク機器110は、機能的には、通信部311と、受信部312と、送信部313と、問い合わせ部314と、受付部315と、ファイル管理部316と、蓄積部317と、入力部318とを備えている。通信部311は、ネットワークを介してソース機器101と通信する通信インターフェイスである。受付部315は、ファイルの使用可能範囲の通知をソース機器101から受け付けてファイル管理部316に通知する。送信部313は、前記使用可能範囲に含まれる任意の範囲を指定して、ファイル取得要求をソース機器101に送信する。受信部312は、ファイル取得要求において指定される範囲のデータをソース機器101から受信してファイル管理部316に渡す。蓄積部317は、受信部312によって受信されたデータを蓄積するハードディスク等である。問い合わせ部314は、前記使用可能範囲をソース機器101に問い合わせる。ファイル管理部316は、蓄積部317に蓄積されているファイルを管理している。入力部318は、ユーザからの指示を入力してファイル管理部316に通知するボタン等である。なお、ファイル管理部316によって管理されているファイルの情報は、必要に応じて送信部313や問い合わせ部314に通知される。
図3(a)及び図3(b)は、ソース機器101のファイル管理部302が管理しているファイル管理情報を示す図である。図3(a)は、転送済みのファイルを削除するソース機器101のファイル管理部302が管理しているファイル管理情報を示し、図3(b)は、転送済みのファイルを使用不可にするソース機器101のファイル管理部302が管理しているファイル管理情報を示している。ソース機器101は、1000byteのファイルA及び2000byteのファイルBを蓄積している。ここでは、ファイルAの先頭から100byte分のデータをシンク機器110に送信した後の状態を示している。
この図に示されるように、ファイル管理部302は、蓄積部301に蓄積されているファイルに関して、「全体サイズ」と「使用可能範囲」とを管理している。
「全体サイズ」は、蓄積部301に蓄積されている各々のファイルのサイズである。シンク機器110にファイルを転送する前の状態では、ファイルAに関しては1000byte、ファイルBに関しては2000byteの値が入力されている。ソース機器101が転送済みのファイルを削除する場合、ファイルAの「全体サイズ」は、図3(a)に示されるように、ファイルAの先頭から100byte分のデータ転送が済んだときに100byte減少して900byteになる。他方、ソース機器101が転送済みのファイルを使用不可にする場合、ファイルAの「全体サイズ」は、図3(b)に示されるように、ファイルAの先頭から100byte分のデータ転送が済んだ後も1000byteのままで変化しない。
「使用可能範囲」は、蓄積部301に蓄積されているファイルの使用可能範囲を示している。ソース機器101が転送済みのファイルを削除する場合、ファイルの使用可能範囲の先頭を示す基点は削除後のファイルの先頭に移動するため、「使用可能範囲」は常に「0−全体サイズ」となる。ここでは、ファイルAの先頭から100byte分のデータ転送が済んでいるため、図3(a)に示されるように「使用可能範囲」は「0-900byte」となる。他方、ソース機器101が転送済みのファイルを使用不可にする場合、ファイルの先頭は変化しないが、ファイルの使用可能範囲の先頭を示す基点はファイルの先頭から100byteの位置に移動する。すなわち、「使用可能範囲」は、使用不可に変更されている範囲以外であるため「転送済みのファイルサイズ-全体サイズ」となる。ここでは、ファイルAの先頭から100byte分のデータ転送が済んでいるため、「使用可能範囲」は、図3(b)に示されるように「100-1000byte」となる。
図4(a)及び図4(b)は、ソース機器101のファイル管理部302が管理している別のファイル管理情報を示す図である。図4(a)は、転送済みのファイルを削除するソース機器101のファイル管理部302が管理しているファイル管理情報を示し、図4(b)は、転送済みのファイルを使用不可にするソース機器101のファイル管理部302が管理しているファイル管理情報を示している。ここでは、シンク機器110がファイルAの100byteから200byteの範囲のデータ転送を要求した場合を想定している。ソース機器101が転送済みのファイルを削除する場合のファイル管理情報は、図4(a)に示されるように図3(a)と同様であるため説明を割愛する。他方、ソース機器101が転送済みのファイルを使用不可にする場合において、ファイルAの100byteから200byteの範囲のデータが転送されたときは、ファイルAの100byteから200byteの範囲のデータが使用不可になる。従って、図4(b)に示されるように、ファイルAの「使用可能範囲」は、図3(b)とは異なり「0-100,200-1000byte」となる。「全体サイズ」については、図3(b)と同様であるため説明を割愛する。
図5(a)及び図5(b)は、ソース機器101のファイル管理部302が管理している別のファイル管理情報を示す図である。図5(a)は、転送済みのファイルを削除するソース機器101のファイル管理部302が管理しているファイル管理情報を示し、図5(b)は、転送済みのファイルを使用不可にするソース機器101のファイル管理部302が管理しているファイル管理情報を示している。ここでは、ソース機器101のファイル管理部302は、「全体サイズ」「使用可能範囲」に加えて「転送前サイズ」を管理している。「転送前サイズ」とは、転送前のファイルの全体サイズ、すなわちソース機器101のファイル管理部302によって削除または使用不可にされる前のファイルの全体サイズである。図5(a)に示されるように、ソース機器101が転送済みのファイルを削除する場合、ファイルAの先頭から100byte分のデータ転送が済んだときに「全体サイズ」は900byteとなるが、「転送前サイズ」は1000byteのままである。このように転送前サイズを管理すれば、ソース機器101が転送済みのファイルを削除する場合でも、本来のファイルの全体サイズをシンク機器110に通知することができ、シンク機器110側で転送前サイズを用いた処理を実行することが可能となる。
図6(a)及び図6(b)は、ソース機器101の通知部305が作成する情報(以下、「ファイル詳細情報」という)を示す図である。図6(a)は、転送済みのファイルを削除するソース機器101の通知部305が作成するファイル詳細情報を示し、図6(b)は、転送済みのファイルを使用不可にするソース機器101の通知部305が作成するファイル詳細情報を示している。通知部305は、ファイル管理部302によって管理されているファイル管理情報に基づいてファイル詳細情報を作成し、作成したファイル詳細情報をシンク機器110に通知する。
ファイル詳細情報に含まれる「全体サイズ」及び「使用可能範囲」は、ファイル管理情報に含まれるそれらと同じである。すなわち、「全体サイズ」は、蓄積部301に蓄積されている各々のファイルのサイズであり、「使用可能範囲」は、蓄積部301に蓄積されているファイルの使用可能範囲である。ここでは、ソース機器101がファイルAを100byte送信した後にシンク機器110に対して通知するファイル詳細情報を示している。ソース機器101が転送済みのファイルを削除する場合、図6(a)に示されるように、ファイルAの「全体サイズ」は、ファイルAの先頭から100byte分のデータ転送が済んだときに100byte減少して900byteになり、「使用可能範囲」は、基点が削除後のファイルの先頭に移動するため「0-900byte」となる。他方、ソース機器101が転送済みのファイルを使用不可にする場合、図6(b)に示されるように、ファイルAの「全体サイズ」は、ファイルの転送前後で変化しないが、「使用可能範囲」は、基点がファイルの先頭から100byteの位置に移動するため「100-1000byte」となる。
通知部305は、送信部304がファイルをシンク機器110に送信する場合、そのファイルに関する「全体サイズ」及び「使用可能範囲」を含んだファイル詳細情報を作成してシンク機器110に通知する。また、受付部306がシンク機器110の問い合わせ部314から問い合わせを受け付けた場合も同様のファイル詳細情報を作成してシンク機器110に通知する。ファイル詳細情報をシンク機器110に通知する形態は限定されるものではないが、HTTP(Hyper Text Transmission Protocol)の拡張ヘッダとして通知することが望ましい。シンク機器110からの問い合わせの形態も限定されるものではなく、例えば、ソース機器101が解釈可能なコマンドを送信する形態でもよい。このように、「使用可能範囲」等のファイル詳細情報をシンク機器110から問い合わせる手法は、ソース機器101からシンク機器110にファイルを転送している途中にシンク機器110がダウンしてしまった場合に有効である。すなわち、シンク機器110がダウンすると、シンク機器110側で一時的に保持していたファイル詳細情報が消えてしまう。この場合でも、シンク機器110は、ソース機器101に問い合わせをすることによって、消えてしまったファイル詳細情報を再び取得することが可能である。
ファイル詳細情報を通知されたシンク機器110は、「全体サイズ」と「使用可能範囲」とが同様の場合は、転送済みのファイルがソース機器101によって削除されると判断することができ、逆に、「全体サイズ」と「使用可能範囲」とが異なる場合は、転送済みのファイルがソース機器101によって使用不可にされると判断することができる。
図7(a)及び図7(b)は、シンク機器110の送信部313が作成するファイル取得要求を示す図である。図7(a)は、転送済みのファイルをソース機器101が削除する場合にシンク機器110の送信部313が作成するファイル取得要求を示し、図7(b)は、転送済みのファイルをソース機器101が使用不可にする場合にシンク機器110の送信部313が作成するファイル取得要求を示している。ここでは、ファイルAの先頭から100byte分のデータを受信したシンク機器110が、さらにファイルAの100byteから200byteの範囲を取得要求する場合を想定している。
「ファイル」は、取得要求するファイルのファイル名を示している。ここでは、ファイルAを取得要求する場合を示している。「範囲」は、取得要求するファイルの範囲を示している。ソース機器101が転送済みのファイルを削除する場合、図7(a)に示されるように、常に基点が0となるため、取得要求するファイルAの範囲も「0-100byte」となる。他方、ソース機器101が転送済みのファイルを使用不可にする場合、図7(b)に示されるように、基点はファイルAの先頭から取得したサイズだけ移動するため、取得要求するファイルAの範囲は「100-200byte」となる。ファイル取得要求は、HTTPを利用して送信されることが望ましい。
図8は、転送済みのファイルを削除するソース機器101とシンク機器110間のシーケンス図である。以下、HTTPを利用してファイルを転送する方法について説明するが、転送の方法はこれに限定されるものではない。
まず、シンク機器110は、ファイルAの取得要求としてHTTPのGETリクエストをソース機器101に送信する(S701)。このファイル取得要求には、取得範囲を示す「Range」ヘッダが含まれる。ここでは、0-100byteの範囲を取得するために「Range:0-100」が指定される。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの200OKをシンク機器110に送信する(S702)。このファイル取得応答には、ファイルAの使用可能範囲を示す「Usable-Range」ヘッダが含まれる。この「Usable−Range」ヘッダは、今回新たに追加されたヘッダであり、「Usable-Range:(使用可能範囲)/(全体サイズ)」という形態で記述される。ソース機器101は、ファイルAの先頭から100byte分のデータ転送が済むとその範囲のデータを削除するため、「Usable−Range」ヘッダには「Usable-Range:0-900/900」が指定される。また、ソース機器101は、ファイル取得要求において指定された範囲「Range:0-100byte」のデータをシンク機器110に送信する(S703)。
次に、シンク機器110は、ファイルAの続きを取得するために、再びファイルAの取得要求としてHTTPのGETリクエストをソース機器101に送信する(S704)。ソース機器101からの「Usable-Range」ヘッダには「Usable-Range:0-900/900」が指定されている。そこで、シンク機器110は、現在使用可能なファイルAの範囲は「0-900byte」であると判断して再び「Range:0-100byte」を指定する。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの200OKをシンク機器110に送信する(S705)。ソース機器101は、ファイルAの100byteから200byteの範囲のデータ転送が済むとその範囲のデータを再び削除するため、「Usable−Range」ヘッダには「Usable-Range:0-800/800」が指定される。また、ソース機器101は、ファイル取得要求において指定された範囲「Range:0-100byte」のデータを再びシンク機器110に送信する(S706)。
以降、同様の処理が繰り返される。シンク機器110は、ソース機器101からの「Usable-Range」ヘッダが「Usable-Range:0-0/0」になると、すなわち「Usable-Range:L-M/N」中のLとMが両方0になると、ファイルAの全部を取得したと判断して処理を終了する。あるいは、「Usable-Range:L-M/N」中のNが0になると、ファイルAの全部を取得したと判断して処理を終了してもよい。
図9は、転送済みのファイルを使用不可にするソース機器101とシンク機器110間のシーケンス図である。ここでも、HTTPを利用してファイルを転送する方法について説明するが、転送の方法はこれに限定されるものではない。
まず、シンク機器110は、ファイルAの取得要求としてHTTPのGETリクエストをソース機器101に送信する(S801)。このファイル取得要求には、0-100byteの範囲を取得するために「Range:0-100byte」が指定される。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの200OKをシンク機器110に送信する(S802)。ソース機器101は、ファイルAの先頭から100byte分のデータ転送が済むとその範囲のデータを使用不可にするため、「Usable−Range」ヘッダには「Usable-Range:100-1000/1000」が指定される。また、ソース機器101は、ファイル取得要求において指定された範囲「Range:0-100byte」のデータをシンク機器110に送信する (S803)。
次に、シンク機器110は、ファイルAの続きを取得するために、再びファイルAの取得要求としてHTTPのGETリクエストをソース機器101に送信する(S804)。ソース機器101からの「Usable-Range」ヘッダには「Usable-Range:100-1000/1000」が指定されている。そこで、シンク機器110は、現在使用可能なファイルAの範囲は「100-1000byte」であると判断して「Range:100-200byte」を指定する。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの200OKをシンク機器110に送信する(S805)。ソース機器101は、ファイルAの100byteから200byteの範囲のデータ転送が済むとその範囲のデータを再び使用不可にするため、「Usable−Range」ヘッダには「Usable-Range:200-1000/1000」が指定される。また、ソース機器101は、ファイル取得要求において指定された範囲「Range:100-200byte」のデータをシンク機器110に送信する (S806)。
以降、同様の処理が繰り返される。シンク機器110は、ソース機器101からの「Usable-Range」ヘッダが「Usable-Range:1000-1000/1000」になると、すなわち「Usable-Range:L-M/N」中のLとMが同じ値になると、ファイルAの全部を取得したと判断して処理を終了する。あるいは、「Usable-Range:L-M/N」中のLとNが同じ値になると、ファイルAの全部を取得したと判断して処理を終了してもよい。
次に、ソース機器101の動作を詳細に説明する。
図10は、本実施の形態1におけるソース機器101の詳細動作を示す図である。
受信部303は、ファイル取得要求を待ち受けており(S901)、ファイル取得要求をシンク機器110から受信すると、その旨をファイル管理部302に通知する(S902)。ファイル管理部302は、ファイル取得要求とともに、取得要求されたファイルの「全体サイズ」及び「使用可能範囲」をファイル管理情報の中から抽出して通知部305に渡す。
通知部305は、「全体サイズ」及び「使用可能範囲」を含んだファイル詳細情報を作成する(S903)。このとき、ソース機器101が転送済みのファイルを削除する場合、ファイル取得要求において指定される範囲に基づいて「ファイルの全体サイズ」を減算するとともに「使用可能範囲」を変更する。他方、ソース機器101が転送済みのファイルを使用不可にする場合、ファイル取得要求において指定される範囲に基づいて「使用可能範囲」のみを変更する。そして、このファイル詳細情報と一致する内容にファイル管理情報を更新するようにファイル管理部302に指示するとともに(S904)、このファイル詳細情報をファイル取得応答に含めてシンク機器110に通知する (S905)。
ファイル管理部302は、ファイル取得応答後、取得要求された範囲のデータを送信部304に渡すとともに、その範囲のデータを削除または使用不可にする(S906)。送信部304は、取得要求された範囲のデータをシンク機器110に送信する (S907)。
次に、シンク機器110の動作を詳細に説明する。
図11は、本実施の形態1におけるシンク機器110の詳細動作を示す図である。
入力部318からユーザがファイルの転送指示を入力すると、この転送指示はファイル管理部316を介して送信部313に通知される。送信部313は、「ファイル名」及び「範囲」を含んだファイル取得要求を作成してソース機器101に送信する(S1001→S1002)。
受信部312は、ファイル取得応答及びファイルをソース機器101から受信するとファイル管理部316に渡す(S1003)。ファイル管理部316は、ファイル取得応答を送信部313に渡すとともにファイルを蓄積部317に渡し、蓄積部317はファイルを蓄積する(S1004)。
送信部313は、ファイル取得応答を解析することによって、ファイルの全部を受信しているかどうかを判断する。そして、受信していない部分が存在する場合は、ファイル取得応答に含まれる「全体サイズ」及び「使用可能範囲」に基づいて新たなファイル取得要求を作成し、ソース機器101に送信する(S1005でNO→S1006)。このような処理を繰り返し、ファイルの全部について受信が完了すると処理を終了する(S1005でYES)。
以上のように、本実施の形態1におけるファイル転送システムによれば、シンク機器はソース機器に蓄積されているファイルの状態を把握した上でファイルを取得要求することができる。これによって、ソース機器が転送済みのファイルを削除する方式と使用不可にする方式のいずれを採用している場合でも、シンク機器は、誤った範囲を指定することなく2回目以降のファイル転送を要求することが可能となる。
(実施の形態2)
前記実施の形態1では、1台のソース機器101と1台のシンク機器110との間でファイルAを転送する形態を例示したが、ソース機器101からシンク機器110にファイルAを転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信する場合がある。この場合、ソース機器101に蓄積されていたファイルAは削除または使用不可にされているので、ソース機器101から別のシンク機器1301にファイルAを転送することはできない。
以下、本実施の形態2におけるファイル転送システムの構成を前記実施の形態1と異なる点を中心に説明する。ここでは、ソース機器101が1000byteのファイルAを100byte単位でシンク機器110に転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合を想定して説明する。
図12は、本実施の形態2におけるファイル転送システムの利用環境を示す図である。ネットワークに別のシンク機器1301が追加された点以外は、前記実施の形態1と同じである。このシンク機器1301は、シンク機器110と同様、ファイルをソース機器から受信して蓄積メディア201に蓄積するDVD/HDDハイブリッドレコーダ等である。
図13は、本実施の形態2におけるソース機器及びシンク機器の内部構成を示す図である。
この図に示されるように、ソース機器101は、機能的には、蓄積部301と、転送先管理部1401と、ファイル管理部1402と、受信部303と、送信部304と、通知部1403と、受付部306と、通信部307とを備えている。蓄積部301と、受信部303と、送信部304と、受付部306と、通信部307とは、前記実施の形態1と同様であるため説明を割愛する。転送先管理部1401は、ファイルAの転送先であるシンク機器110に関する情報である転送先情報を管理している。ファイル管理部1402は、「全体サイズ」と「使用可能範囲」とに加えて「転送範囲」を含んだファイル管理情報を管理している。「転送範囲」は、ソース機器101からシンク機器110に転送済みのファイルAの範囲を示している。通知部1403は、「全体サイズ」と「使用可能範囲」とに加えて「転送先情報」と「転送範囲」とを含んだファイル詳細情報を作成する。
他方、シンク機器110は、機能的には、通信部311と、受信部312と、送信部1410と、問い合わせ部314と、受付部315と、ファイル管理部316と、蓄積部317と、入力部318とを備えている。通信部311と、受信部312と、問い合わせ部314と、受付部315と、ファイル管理部316と、蓄積部317と、入力部318とは、前記実施の形態1と同様であるため説明を割愛する。送信部1410は、前記実施の形態1の機能に加えて、ソース機器101から受信するファイル詳細情報に「転送先情報」が含まれている場合にその転送先からファイルを取得する機能を備えている。
なお、本実施の形態2では、2台のシンク機器、すなわちシンク機器110と別のシンク機器1301とが登場するが、これらシンク機器110・1301の機能は同じである。また、シンク機器110から別のシンク機器1301にファイルが転送される場合は、転送元であるシンク機器110のことを「ソース機器」という場合がある。
図14は、ソース機器101の転送先管理部1401が管理している転送先情報を示す図である。「ファイル名」は、ソース機器101が蓄積しているファイルのうち転送中のファイルのファイル名を示している。ここでは、ソース機器101からシンク機器110にファイルAが転送されている場合を想定しているため、「ファイル名」にはファイルAが指定される。「転送先情報」には、ファイルAの転送先であるシンク機器110のアドレス情報が指定される。「転送先情報」は、シンク機器110のアドレス情報に限らず、シンク機器110を特定することが可能な情報であればよい。
図15(a)及び図15(b)は、ソース機器101のファイル管理部1402が管理しているファイル管理情報を示す図である。図15 (a)は、転送済みのファイルを削除するソース機器101のファイル管理部1402が管理しているファイル管理情報を示し、図15 (b)は、転送済みのファイルを使用不可にするソース機器101のファイル管理部1402が管理しているファイル管理情報を示している。ここでも、ファイルAの先頭から100byte分のデータをシンク機器110に送信した後の状態を前提としている。「全体サイズ」及び「使用可能範囲」に関しては、前記実施の形態1と同様であるため説明を割愛する。「転送範囲」は、ソース機器101からシンク機器110に転送済みのファイルの範囲を示している。ここでは、ファイルAの先頭から100byte分のデータ転送が済んでいるため、「転送範囲」は「0-100byte」となる。
図16(a)及び図16(b)は、ソース機器101の通知部1403が作成するファイル詳細情報を示す図である。図16(a)は、転送済みのファイルを削除するソース機器101の通知部1403が作成するファイル詳細情報を示し、図16(b)は、転送済みのファイルを使用不可にするソース機器101の通知部1403が作成するファイル詳細情報を示している。ここでは、ソース機器101がファイルAをシンク機器110に転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合に、別のシンク機器1301に通知されるファイル詳細情報を示している。「全体サイズ」及び「使用可能範囲」については、前記実施の形態1と同様であるため説明を割愛する。「転送先情報」は、転送中であるファイルの転送先であるシンク機器に関する情報が入力される。「転送範囲」は、そのシンク機器に対して既に転送済みのファイルの範囲が入力される。
ソース機器101が転送済みのファイルを削除する場合、図16(a)に示されるように、前記実施の形態1と同様、「全体サイズ」は900byteとなり、「使用可能範囲」は「0-900byte」となる。「転送先情報」には、シンク機器110のアドレス情報である「AAA.BBB.CCC.DDD」が入力される。「転送範囲」には、既にシンク機器110に対して転送済みのファイルAの範囲「0-100byte」が入力される。他方、ソース機器101が転送済みのファイルを使用不可にする場合、図16(b)に示されるように、前記実施の形態1と同様、「全体サイズ」は、ファイルの送出前後で変化していない。「使用可能範囲」と「転送先情報」と「転送範囲」とは、図16(a)と同様であるため説明を割愛する。
通知部1403は、「全体サイズ」と「使用可能範囲」と「転送先情報」と「転送範囲」とを含んだファイル詳細情報を作成してシンク機器1301に通知する。また、受付部306がシンク機器1301の問い合わせ部314から問い合わせを受け付けた場合も同様のファイル詳細情報を作成してシンク機器1301に通知する。ファイル詳細情報をシンク機器1301に通知する形態は限定されるものではないが、HTTPの拡張ヘッダとして通知することが望ましい。ファイル詳細情報を通知されたシンク機器1301は、「転送先情報」と「転送範囲」とを解析することによって新たにファイル取得要求を作成する。そして、このファイルAの取得要求をシンク機器110またはソース機器101に送信することによって、ファイルAの全部を取得する。なお、シンク機器1301がファイルAの全部を取得する形態の詳細については後述する。
図17は、転送済みのファイルを削除するソース機器101とシンク機器1301間のシーケンス図である。ここでも、ソース機器101からシンク機器110にファイルAを転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合を想定している。
ステップS701に関しては、前記実施の形態1と同様であるため説明を割愛する。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの301 Moved Permanently をシンク機器1301に送信する(S1801)。このファイル取得応答には、転送先の情報を示す「Location」ヘッダ、ファイルAの使用可能範囲を示す「Usable-Range」ヘッダ、転送済みのファイルの範囲を示す「Transmit-Range」ヘッダが含まれる。「Usable−Range」は、前記実施の形態1と同様であるため説明を割愛する。「Transmit−Range」ヘッダは、「Transmit-Range:(転送済みのファイル範囲)」という形態で記述される。「Location」ヘッダは、「Location:(転送先であるシンク機器のアドレス情報)」という形態で記述される。ここでは、ソース機器101からシンク機器110にファイルAの先頭から100byte分のデータが転送されたときに、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合を想定しているので、「Transmit−Range」ヘッダには「Transmit-Range:0-100」が入力され、「Location」ヘッダには「Location:http://AAA.BBB.CCC.DDD」が入力される。
図18は、転送済みのファイルを使用不可にするソース機器101とシンク機器1301間のシーケンス図である。ここでも、ソース機器101からシンク機器110にファイルAを転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合を想定している。
ステップS801に関しては、前記実施の形態1と同様であるため説明を割愛する。
次に、ソース機器101は、ファイルAの取得応答としてHTTPの301 Moved Permanentlyをシンク機器1301に送信する(S1901)。このファイル取得応答にも、「Location」ヘッダ、「Usable-Range」ヘッダ、「Transmit-Range」ヘッダが含まれる。ここでも、ソース機器101からシンク機器110にファイルAの先頭から100byte分のデータが転送されたときに、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合を想定しているので、「Transmit−Range」ヘッダには「Transmit-Range:0-100」が入力され、「Location」ヘッダには「Location:http://AAA.BBB.CCC.DDD」が入力される。
次に、ソース機器101の動作を詳細に説明する。
図19及び図20は、本実施の形態2におけるソース機器の詳細動作を示す図である。
ステップS901〜S902に関しては、前記実施の形態1と同様であるため説明を割愛する。
ここで、ファイルAの取得要求を受信した場合、ファイル管理部302は、この取得要求が転送中のシンク機器からの取得要求であるかどうか、すなわち、現在転送中であるファイルAの転送先であるシンク機器110からの取得要求であるかどうかを判定する。そして、転送中のシンク機器110からの取得要求である場合は(S2001でYes)、前記実施の形態1と同様、ファイル詳細情報を作成し(S903)、ファイル管理情報を更新し(S904)、ファイル詳細情報をシンク機器110に通知し(S905)、取得要求において指定される範囲のデータを削除又は使用不可にし(S906)、その範囲のデータをシンク機器110に送信する(S907)。ただし、本実施の形態2におけるファイル管理情報には「転送範囲」が含まれるので、この「転送範囲」も「0-100byte」など適切な範囲に更新される(S904)。その後、転送先管理部1401は、転送先情報としてシンク機器110のアドレス情報を登録する(S2002)。
他方、ファイルAの転送先であるシンク機器110からの取得要求でない場合(S2001でNo)、通知部1403は、ファイル詳細情報を作成する(S2101)。このファイル詳細情報には、ファイル管理部1402から取得した「全体サイズ」「使用可能範囲」「転送範囲」と、転送先管理部1401から取得した「転送先情報」とが含まれる。通信部307は、通知部1403が作成したファイル詳細情報をシンク機器1301に通知する(S2102)。
次に、シンク機器の動作を詳細に説明する。
図21は、本実施の形態2におけるシンク機器の詳細動作を示す図である。
S1001〜S1003に関しては、前記実施の形態1と同様であるため説明を割愛する。取得要求したファイルが既に転送されている場合 (S2201でYes)、送信部1410は、新たなファイル取得要求を作成する(S2202)。このファイル取得要求は、後述するように、送信部1410によってシンク機器110またはソース機器101に送信される(S1002)。
ここで、取得要求したファイルが既に転送されている場合 (S2201でYes)とは、通信部311が受信したファイル詳細情報に「転送先情報」が含まれている場合を意味する。すなわち、ステップS2201でYesの判定がされる場合にいう「シンク機器」は、最初に取得要求を出したシンク機器110ではなく、後から取得要求を出したシンク機器1301である。
他方、取得要求したファイルが既に転送されていない場合 (S2201でNo)とは、通信部311が受信したファイル詳細情報に「転送先情報」が含まれていない場合を意味する。すなわち、ステップS2201でNoの判定がされる場合にいう「シンク機器」は、後から取得要求を出したシンク機器1301ではなく、最初に取得要求を出したシンク機器110である。このシンク機器110の動作は、前記実施の形態1と同様であるため説明を割愛する。
以下、シンク機器1301がファイルAの全部を取得する形態について詳細に説明する。
図22は、シンク機器1301がファイルAの全部を取得する第1の形態を示す図である。ここでは、簡単のためファイルAの全体サイズは200byteであるとし、100byte単位でデータを転送する場合を想定して説明する。
まず、図22(A)に示されるように、ファイルAの先頭から100byte分のデータa1をソース機器101からシンク機器110に転送している途中(S1)、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信したとする(S2)。
この場合、ソース機器101は、図22(B)に示されるように、残部のデータa2をシンク機器110に送信するとともに(S3)、ファイル取得応答をシンク機器1301に通知する(S4)。このファイル取得応答には、少なくとも、シンク機器110のアドレス情報を示す「Location」ヘッダが含まれる。なお、図22(B)中の×印は、データa1が削除又は使用不可にされた状態であることを意味している(他図についても同様)。
これによって、シンク機器1301は、図22(C)に示されるように、ファイルAの取得要求をシンク機器110に送信する(S5)。取得要求を受けたシンク機器110は、図22(D)に示されるように、ファイルAの先頭から100byte分のデータa1をシンク機器1301に送信する(S6)。残部のデータa2についてもステップS5及びS6と同様の処理が行われる。その結果、図22(E)に示されるように、シンク機器1301はファイルAの全部を取得することになる。
図23は、シンク機器1301がファイルAの全部を取得する第2の形態を示す図である。
ここでも、図23(A)に示されるように、ファイルAの先頭から100byte分のデータa1をソース機器101からシンク機器110に転送している途中(S11)、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信したとする(S12)。
この場合、ソース機器101は、図23(B)に示されるように、残部のデータa2をシンク機器1301に送信するとともに、ファイル取得応答をシンク機器1301に通知する(S13)。このファイル取得応答には、ファイルAの使用可能範囲を示す「Usable-Range」ヘッダ、シンク機器110のアドレス情報を示す「Location」ヘッダ、シンク機器110に転送済みのファイルAの範囲を示す「Transmit-Range」ヘッダが含まれる。
これによって、シンク機器1301は、図23(C)に示されるように、ファイルAの取得要求をシンク機器110に送信する(S14)。この取得要求では、ファイル取得応答に含まれる「Transmit-Range」に基づいて、ファイルAの適切な範囲「0-100byte」を指定することができる。これによって、シンク機器110は、図23(D)に示されるように、ファイルAの先頭から100byte分のデータa1をシンク機器1301に送信する(S15)。その結果、図23(E)に示されるように、シンク機器1301はファイルAの全部を取得することになる。
図24は、シンク機器1301がファイルAの全部を取得する第3の形態を示す図である。
ここでは、図24(A)に示されるように、ファイルAの先頭から100byte分のデータa1をソース機器101に、その残部のデータa2をシンク機器110に蓄積している状況を想定している。このような状況は、例えば、午後7時から9時までに放送されたテレビ番組をソース機器101に蓄積していたところ、午後7時から8時までの部分をシンク機器110に転送した場合などに起こり得る。この場合、ソース機器101のファイル管理部1402は、ファイルAの転送範囲が「午後7時から8時までの部分」である旨の情報を管理し、ソース機器101の転送先管理部1401は、ファイルAの転送先がシンク機器110である旨の情報を管理することになる。
このような状況で、ソース機器101がシンク機器1301からファイルAの取得要求を受信したとする(S21)。この場合、ソース機器101は、図24(B)に示されるように、残部のデータa2をシンク機器1301に送信するとともに、ファイル取得応答をシンク機器1301に通知する(S22)。このファイル取得応答には、ファイルAの使用可能範囲を示す「Usable-Range」ヘッダ、シンク機器110のアドレス情報を示す「Location」ヘッダ、シンク機器110に転送済みのファイルAの範囲を示す「Transmit-Range」ヘッダが含まれる。
これによって、シンク機器1301は、図24(C)に示されるように、ファイルAの取得要求をシンク機器110に送信する(S23)。この取得要求では、ファイル取得応答に含まれる「Transmit-Range」に基づいて、ファイルAの適切な範囲「0-100byte」を指定することができる。これによって、シンク機器110は、図24(D)に示されるように、ファイルAの先頭から100byte分のデータa1をシンク機器1301に送信する(S24)。その結果、図24(E)に示されるように、シンク機器1301はファイルAの全部を取得することになる。
以上のように、本実施の形態2におけるファイル転送システムによれば、ソース機器101からシンク機器110にファイルAを転送している途中、ソース機器101が別のシンク機器1301からファイルAの取得要求を受信した場合でも、シンク機器1301に対して、転送先であるシンク機器110のアドレス情報と転送済みのファイルの範囲とが通知される。これによって、シンク機器1301は、ソース機器101に取得要求したファイルAの全部を取得することが可能となる。
また、ファイルAの一部をソース機器101に蓄積し、その残部をシンク機器110に蓄積している場合でも、シンク機器1301に対して、転送先であるシンク機器110のアドレス情報と転送済みのファイルの範囲とが通知される。これによって、シンク機器1301は、ソース機器101に取得要求したファイルAの全部を取得することが可能となる。
なお、前記の説明では、ファイルAの使用可能範囲とともにファイルAの全体サイズをソース機器101からシンク機器110に通知することとしているが、ファイルAの全体サイズをソース機器101からシンク機器110に通知することは必ずしも必要でない。例えば、「Usable-Range」ヘッダの記述形態は、「Usable-Range:(使用可能範囲)/(全体サイズ)」という記述形態でなく、「Usable-Range:(使用可能範囲)」という記述形態でもよい。少なくとも「使用可能範囲」をシンク機器に通知すれば、シンク機器は、誤った範囲を指定することなく2回目以降のファイル転送を要求することが可能となるからである。
もちろん、シンク機器側でファイルAを再生する際にファイルAの全体サイズの情報が必要となる場合は、前記のように、ファイルAの使用可能範囲とともにファイルAの全体サイズをソース機器101からシンク機器110に通知すればよい。ただし、ここでいう「全体サイズ」は、ソース機器101によって削除又は使用不可にされた後のファイルの全体サイズである。ソース機器101によって削除又は使用不可にされる前のファイルの全体サイズの情報がシンク機器側で必要な場合は、前記「転送前サイズ」をソース機器101からシンク機器110に通知すればよい。
本発明に係るファイル転送システムは、一世代コピー可能なファイルを分割して転送することが必要な家電機器やPC等の用途にも適用することができる。
本実施の形態1におけるファイル転送システムの利用環境を示す図 本実施の形態1におけるソース機器及びシンク機器の内部構成を示す図 ソース機器のファイル管理部が管理しているファイル管理情報を示す図 ソース機器のファイル管理部が管理している別のファイル管理情報を示す図 ソース機器のファイル管理部が管理している別のファイル管理情報を示す図 ソース機器の通知部が作成するファイル詳細情報を示す図 シンク機器の送信部が作成するファイル取得要求を示す図 転送済みのファイルを削除するソース機器とシンク機器間のシーケンス図 転送済みのファイルを使用不可にするソース機器とシンク機器間のシーケンス図 本実施の形態1におけるソース機器の詳細動作を示す図 本実施の形態1におけるシンク機器の詳細動作を示す図 本実施の形態2におけるファイル転送システムの利用環境を示す図 本実施の形態2におけるソース機器及びシンク機器の内部構成を示す図 ソース機器の転送先管理部が管理している転送先情報を示す図 ソース機器のファイル管理部が管理しているファイル管理情報を示す図 ソース機器の通知部が作成するファイル詳細情報を示す図 転送済みのファイルを削除するソース機器とシンク機器間のシーケンス図 転送済みのファイルを使用不可にするソース機器とシンク機器間のシーケンス図 本実施の形態2におけるソース機器の詳細動作を示す図 本実施の形態2におけるソース機器の詳細動作を示す図 本実施の形態2におけるシンク機器の詳細動作を示す図 シンク機器がファイルの全部を取得する第1の形態を示す図 シンク機器がファイルの全部を取得する第2の形態を示す図 シンク機器がファイルの全部を取得する第3の形態を示す図 転送済みのファイルを削除する方式と使用不可にする方式の概略を示す図
符号の説明
101 ソース機器(ファイル送信装置)
301 ソース機器の蓄積部
302 ソース機器のファイル管理部(制限手段)
303 ソース機器の受信部
304 ソース機器の送信部
305 ソース機器の通知部
306 ソース機器の受付部
307 ソース機器の通信部
1401 ソース機器の転送先管理部
1402 ソース機器のファイル管理部
1403 ソース機器の通知部
110 シンク機器
311 シンク機器の通信部
312 シンク機器の受信部
313 シンク機器の送信部
314 シンク機器の問い合わせ部
315 シンク機器の受付部
316 シンク機器のファイル管理部
317 シンク機器の蓄積部
318 シンク機器の入力部
1410 シンク機器の送信部
A ファイル

Claims (11)

  1. ファイルを他の装置に送信するファイル送信装置であって、
    前記ファイルを蓄積する蓄積手段と、
    前記ファイルの取得要求を前記他の装置から受信する受信手段と、
    前記蓄積手段に蓄積されている前記ファイルのうち、前記受信手段によって受信された前記ファイルの取得要求において指定される範囲のデータを前記他の装置に送信する送信手段と、
    前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除する機能と、使用不可にする機能との両方を備えており、いずれかを選択的に実行し、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除した場合、前記蓄積手段に蓄積されている前記ファイルのうち、削除されない範囲である第1使用可能範囲を算出し、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを使用不可にした場合、前記蓄積手段に蓄積されている前記ファイルのうち、使用不可にされない範囲である第2使用可能範囲を算出する制限手段と、
    前記制御手段によって算出された、前記第1使用可能範囲又は前記第2使用可能範囲を前記他の装置に通知する通知手段と
    を備えることを特徴とするファイル送信装置。
  2. 前記制御手段は、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除した場合、削除した後の前記ファイルのサイズである第1全体サイズを算出し、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを使用不可にした場合、使用不可にした後の前記ファイルのサイズである第2全体サイズを算出し、
    前記通知手段は、前記制限手段によって算出された、前記第1全体サイズ又は前記第2全体サイズを前記他の装置に通知する
    ことを特徴とする請求項1に記載のファイル送信装置。
  3. 前記受信手段は、前記ファイルの取得要求を前記他の装置とは別の装置から受信し、
    前記通知手段は、前記他の装置を特定することが可能な情報を前記別の装置に通知する
    ことを特徴とする請求項1に記載のファイル送信装置。
  4. 前記通知手段は、前記第1使用可能範囲及び前記第2使用可能範囲のいずれかを選択的に前記別の装置に通知する
    ことを特徴とする請求項に記載のファイル送信装置。
  5. 前記通知手段は、前記蓄積手段に蓄積されている前記ファイルのうち、前記他の装置に送信済みの範囲を前記別の装置に通知する
    ことを特徴とする請求項に記載のファイル送信装置。
  6. ファイルを他の装置から受信するファイル受信装置であって、
    前記ファイルのうち、前記他の装置によって削除も使用不可にもされない範囲である使用可能範囲の通知を前記他の装置から受け付ける受付手段と、
    前記使用可能範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記他の装置に送信する送信手段と、
    前記ファイルの取得要求において指定される範囲のデータを前記他の装置から受信する受信手段と、
    前記受信手段によって受信されたデータを蓄積する蓄積手段と
    を備え
    前記受付手段は、前記他の装置とは別の装置を特定することが可能な情報を前記他の装置から受け付け、
    前記送信手段は、前記別の装置に前記ファイルの取得要求を送信する
    ことを特徴とするファイル受信装置。
  7. 前記受付手段は、前記使用可能範囲を前記他の装置から受け付け、
    前記送信手段は、前記使用可能範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記他の装置に送信する
    ことを特徴とする請求項6に記載のファイル受信装置。
  8. 前記受付手段は、前記ファイルのうち、前記別の装置に送信済みの範囲を前記他の装置から受け付け、
    前記送信手段は、前記送信済みの範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記別の装置に送信する
    ことを特徴とする請求項6に記載のファイル受信装置。
  9. コンピュータが、ファイルを他の装置に送信するファイル送信方法であって、
    前記コンピュータが、前記ファイルを蓄積する蓄積ステップと、
    前記コンピュータが、前記ファイルの取得要求を前記他の装置から受信する受信ステップと、
    前記コンピュータが、蓄積されている前記ファイルのうち、前記受信ステップにおいて受信された前記ファイルの取得要求において指定される範囲のデータを前記他の装置に送信する送信ステップと、
    前記コンピュータが、蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを削除する処理と、使用不可にする処理とのいずれかを選択的に実行し、蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを削除した場合、蓄積されている前記ファイルのうち、削除されない範囲である第1使用可能範囲を算出し、蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを使用不可にした場合、蓄積されている前記ファイルのうち、使用不可にされない範囲である第2使用可能範囲を算出する制限ステップと、
    前記コンピュータが、前記制御ステップで算出された、前記第1使用可能範囲又は前記第2使用可能範囲を前記他の装置に通知する通知ステップと
    を含むことを特徴とするファイル送信方法。
  10. ファイルを他の装置に送信するためのプログラムであって、
    前記ファイルを蓄積する蓄積ステップと、
    前記ファイルの取得要求を前記他の装置から受信する受信ステップと、
    蓄積されている前記ファイルのうち、前記受信ステップにおいて受信された前記ファイルの取得要求において指定される範囲のデータを前記他の装置に送信する送信ステップと、
    蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを削除する処理と、使用不可にする処理とのいずれかを選択的に実行し、蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを削除した場合、蓄積されている前記ファイルのうち、削除されない範囲である第1使用可能範囲を算出し、蓄積されている前記ファイルのうち、前記送信ステップにおいて送信された範囲のデータを使用不可にした場合、蓄積されている前記ファイルのうち、使用不可にされない範囲である第2使用可能範囲を算出する制限ステップと、
    前記制御ステップで算出された、前記第1使用可能範囲又は前記第2使用可能範囲を前記他の装置に通知する通知ステップと
    をコンピュータに実行させるためのプログラム。
  11. ファイルを送信するファイル送信装置からファイルを受信するファイル受信装置にファイルを転送するファイル転送システムであって、
    前記ファイル送信装置は、
    前記ファイルを蓄積する蓄積手段と、
    前記ファイルの取得要求を前記ファイル受信装置から受信する受信手段と、
    前記蓄積手段に蓄積されている前記ファイルのうち、前記受信手段によって受信された前記ファイルの取得要求において指定される範囲のデータを前記ファイル受信装置に送信する送信手段と、
    前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除する機能と、使用不可にする機能との両方を備えており、いずれかを選択的に実行し、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを削除した場合、前記蓄積手段に蓄積されている前記ファイルのうち、削除されない範囲である第1使用可能範囲を算出し、前記蓄積手段に蓄積されている前記ファイルのうち、前記送信手段によって送信された範囲のデータを使用不可にした場合、前記蓄積手段に蓄積されている前記ファイルのうち、使用不可にされない範囲である第2使用可能範囲を算出する制限手段と、
    前記制御手段によって算出された、前記第1使用可能範囲又は前記第2使用可能範囲を前記ファイル受信装置に通知する通知手段とを備え、
    前記ファイル受信装置は、
    前記通知手段により通知された、前記第1使用可能範囲又は前記第2使用可能範囲を前記ファイル送信装置から受け付ける受付手段と、
    前記受付手段が受け付けた、前記第1使用可能範囲又は前記第2使用可能範囲に含まれる任意の範囲を指定して、前記ファイルの取得要求を前記ファイル送信装置に送信する送信手段と、
    前記ファイルの取得要求において指定される範囲のデータを前記ファイル送信装置から受信する受信手段と、
    前記受信手段によって受信されたデータを蓄積する蓄積手段とを備える
    ことを特徴とするファイル転送システム。
JP2006035805A 2006-02-13 2006-02-13 ファイル転送システム Expired - Fee Related JP4754982B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006035805A JP4754982B2 (ja) 2006-02-13 2006-02-13 ファイル転送システム
US11/705,023 US8788697B2 (en) 2006-02-13 2007-02-12 File transmitting apparatus, file transmitting method, file receiving apparatus, file receiving method, and file transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006035805A JP4754982B2 (ja) 2006-02-13 2006-02-13 ファイル転送システム

Publications (2)

Publication Number Publication Date
JP2007213526A JP2007213526A (ja) 2007-08-23
JP4754982B2 true JP4754982B2 (ja) 2011-08-24

Family

ID=38370065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006035805A Expired - Fee Related JP4754982B2 (ja) 2006-02-13 2006-02-13 ファイル転送システム

Country Status (2)

Country Link
US (1) US8788697B2 (ja)
JP (1) JP4754982B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11184156B2 (en) * 2011-07-27 2021-11-23 Aon Global Operations Se, Singapore Branch Impact data manager for dynamic data delivery

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004007356A (ja) * 2002-04-23 2004-01-08 Sony Corp 情報処理システム、情報処理装置および方法、プログラム格納媒体、並びにプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU662805B2 (en) * 1992-04-06 1995-09-14 Addison M. Fischer A method for processing information among computers which may exchange messages
US5920895A (en) * 1995-04-24 1999-07-06 Microsoft Corporation Mapped file input/output with delayed zeroing
US5987506A (en) * 1996-11-22 1999-11-16 Mangosoft Corporation Remote access and geographically distributed computers in a globally addressable storage environment
US6230190B1 (en) * 1998-10-09 2001-05-08 Openwave Systems Inc. Shared-everything file storage for clustered system
US6976077B1 (en) * 1999-07-06 2005-12-13 Microsoft Corporation Automatic and transparent synchronization of server-side state information with a client application
US6795788B2 (en) * 2000-06-06 2004-09-21 Hewlett-Packard Development Company, L.P. Method and apparatus for discovery of operational boundaries for shmoo tests
GB2373067A (en) * 2000-11-29 2002-09-11 Ruslan Gennadievich Fedorovsky File transfer method and system using segmented transfer and targeted content
US6934390B2 (en) * 2001-06-27 2005-08-23 International Business Machines Corporation System and method for transferring electronic information
US20040049655A1 (en) * 2001-10-12 2004-03-11 Allison David S. Method and apparatus for communication to threads of control through streams
JP3991811B2 (ja) * 2002-08-06 2007-10-17 株式会社日立製作所 在庫制御システムおよび在庫制御方法
US7233946B1 (en) * 2003-04-11 2007-06-19 Sun Microsystems, Inc. File interval lock generation interface system and method
EP1745394B1 (en) * 2004-04-26 2009-07-15 Storewiz, Inc. Method and system for compression of files for storage and operation on compressed files
JP4069905B2 (ja) * 2004-06-28 2008-04-02 コニカミノルタビジネステクノロジーズ株式会社 共有ファイル管理システムおよびサーバー
WO2006046446A1 (ja) 2004-10-26 2006-05-04 Matsushita Electric Industrial Co., Ltd. 送信機器、受信機器、およびファイル転送システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004007356A (ja) * 2002-04-23 2004-01-08 Sony Corp 情報処理システム、情報処理装置および方法、プログラム格納媒体、並びにプログラム

Also Published As

Publication number Publication date
US20070192470A1 (en) 2007-08-16
JP2007213526A (ja) 2007-08-23
US8788697B2 (en) 2014-07-22

Similar Documents

Publication Publication Date Title
US7272859B2 (en) Information providing device and method
US8219643B2 (en) Server/client system for managing the transmission and use of copyrighted content, information processing unit, information processing method, and computer program
KR101268798B1 (ko) 미디어 콘텐츠의 dvr로부터 포터블 디바이스로의 통신
KR20100107479A (ko) 직접적인 사용자 액세스를 갖는 저장 장치
JP5156636B2 (ja) データ送信装置、データ受信装置及びデータ送受信システム
JP2007158854A (ja) Avサーバ装置、クライアント機器、及びファイル転送システム
JPWO2006046445A1 (ja) ファイル転送システム、送信機器及び受信装置
JP4935303B2 (ja) コンテンツ送信装置及びコンテンツ受信装置
JP4651690B2 (ja) 家電ログインシステム
JP4754982B2 (ja) ファイル転送システム
JP4910896B2 (ja) 記録装置、記録方法、およびプログラム
JP2008130090A (ja) Drmが適用されたコンテンツの共有方法
JP2002312225A (ja) データ管理装置及びデータ管理方法
KR100717059B1 (ko) 홈 네트워크에서 하나의 컨텐츠를 복수의 디바이스에분할하여 저장하기 위한 방법 및 장치
JP2008262640A (ja) 記録再生装置、及びavデータコピー方法
US20090077162A1 (en) Medium Management Device and Medium Management Method
JP2009157848A (ja) データ送信装置、データ受信装置及びデータ送受信システム
JP5075250B2 (ja) 記録再生装置及び記録再生システム
JP2006018378A (ja) サーバ装置
JP6221428B2 (ja) コンテンツ受信装置及びコンテンツ受信方法、並びにコンピューター・プログラム
JP2007323617A (ja) 通信システム、通信機器、通信方法、及びプログラム
JP5173738B2 (ja) コンテンツ記録装置、その制御方法、コンピュータプログラムおよび記憶媒体
JP2008278269A (ja) データ送信装置、データ受信装置及びデータ送受信システム
JP2010226523A (ja) コンテンツサーバ装置、コンテンツ送信方法およびコンテンツ送信プログラム
JP4675644B2 (ja) コンテンツ送信装置、コンテンツ受信装置、及びコンテンツ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110526

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4754982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees