JP2011071764A - ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム - Google Patents

ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム Download PDF

Info

Publication number
JP2011071764A
JP2011071764A JP2009221431A JP2009221431A JP2011071764A JP 2011071764 A JP2011071764 A JP 2011071764A JP 2009221431 A JP2009221431 A JP 2009221431A JP 2009221431 A JP2009221431 A JP 2009221431A JP 2011071764 A JP2011071764 A JP 2011071764A
Authority
JP
Japan
Prior art keywords
file
data
packet
transmission
reception
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.)
Granted
Application number
JP2009221431A
Other languages
English (en)
Other versions
JP5232115B2 (ja
Inventor
Minsok Hwang
▲民▼錫 黄
Yutaka Kaneko
金子  豊
Shinya Takeuchi
真也 竹内
Yoshinori Izumi
吉則 和泉
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.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
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 Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2009221431A priority Critical patent/JP5232115B2/ja
Publication of JP2011071764A publication Critical patent/JP2011071764A/ja
Application granted granted Critical
Publication of JP5232115B2 publication Critical patent/JP5232115B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】適切な帯域にて効率的かつ確実にファイルを送受信し、処理時間を短縮する。
【解決手段】ファイル受信装置2は、受信用バッファ207に所定領域を確保した後、送信要求ブロック番号及び確認応答(受信したデータパケットのブロック番号、開始パケット番号及び終了パケット番号)を記述した同期パケットをファイル送信装置1へ送信する。ファイル送信装置1は、同期パケットを受信し、送信要求ブロック番号のデータをパケット化し、データパケットをファイル受信装置2へ送信する。また、ファイル送信装置1は、確認応答と、既に送信済みのデータパケットのブロック番号及びパケット番号とを比較し、パケットロスを検出してロスが発生したデータパケットをファイル受信装置2へ再送する。これにより、輻輳制御を行うことなく確実にデータを送受信できる。また、ファイル受信装置2が要求するデータを、帯域を狭めることなく効率的に送受信できる。
【選択図】図1

Description

本発明は、ネットワークを介してファイルを送受信するシステムにおいて、受信側からの指示に従って送信側がファイルを送信する技術に関する。また、ファイルを送受信しながら、ファイルを中継、差替え、または合成する技術に関する。
従来、ネットワークを介してファイルを送受信するシステムでは、送信側と受信側との間で、TCP/IPプロトコルを用いたFTPプロトコルが使用されている。しかしながら、送信側と受信側との間の距離が長い場合には、RTT(ラウンドトリップタイム)が長くなってしまうことがあり得る。このようなRTTが長くなる環境では、受信側が確認応答、ブロック送信要求、受信可能な帯域等の情報を送信してから、送信側がこれらの情報を受信するまでの間の時間(情報の到達時間)がかかってしまう。このため、送信側は、受信側にて受信可能なバッファ容量をリアルタイムに把握することが困難になり、送信側が、受信側にて受信可能なバッファ容量以上のデータを送信したり、受信可能な帯域を大きく下回って送信したりする。また、パケットロス等により転送速度が落ちてしまうと、輻輳制御またはスロースタートが影響して、適切なウィンドウサイズにするまで時間がかかってしまう。したがって、RTTが長くなる環境では、適切な帯域でファイルを送受信することが困難であった。
一方、輻輳制御等の機能を持たないプロトコルとして、UDP/IPプロトコルが知られている。このUDP/IPプロトコルを、ファイルを送受信するシステムに使用した場合、長距離のファイル送受信を行いRTTが長くなる環境であっても、ファイル送受信を高速に行うことができる。しかしながら、UDP/IP自体にはパケット到達の保証が無いため、別の方法で信頼性を確保することが必要となる。
そこで、前述のUDP/IPプロトコルを使用することを前提にして、受信側から送信側へ制御パケットを送信することにより、ファイル送受信の信頼性を確保することが可能なUDTプロトコルが考案されている(非特許文献1を参照)。
また、ファイル送受信の高速化を実現するために、複数のTCPコネクションを張って並列にファイル転送を行うプロトコルとして、Grid FTP(Grid File Transfer Protocol)が知られており(非特許文献2を参照)、また、SVFTP(Swift Video File Transfer Protocol)も知られている(特許文献1を参照)。
UDTプロトコルでは、定期的に帯域幅を測定し、その帯域に合わせてデータを転送する方式が用いられる。しかしながら、同じネットワーク内で複数のファイル転送が行われた場合、帯域の奪い合いが発生し、適切な帯域でファイルを転送することが困難になる。
Grid FTP及びSVFTPでは、複数のTCPコネクションを張って並列にファイル転送を行う方式が用いられる。このような方式で帯域を生かした転送を行うには、その帯域に合わせた適切なコネクション数等のパラメータを予め決定しておく必要がある。しかしながら、同じネットワーク内で複数のファイル転送が次々に行われることにより、ネットワーク環境が変動する場合には、その変動に対応することが困難である。
また、ファイルの転送速度を保ちつつデータ到達の信頼性を確保するために、受信側が、受信したデータパケットを識別するための情報を確認応答として設定し、この確認応答を送信側へ通知することにより、送信側が、受信側へ到達したデータパケットを判別する手法がある。確認応答には、受信開始から連続して受信できている最新のパケット番号を通知する累積型の他に、どのパケットが到達したかを詳細に送信側へ通知するSACK(Selective Acknowledment)オプションがある。SACKオプションを用いた場合には、受信側は、受信開始から確認応答の通知を行う時点までに受信したデータブロックのうち、新しい順番で最大4つの連続するデータブロックの確認応答を通知することができる。
〔放送局におけるファイル転送〕
ところで、放送局では、従来、映像・音声素材の情報はテープに保存されていたが、昨今はテープレス化、すなわちテープに代わってファイルとしてサーバーに保存されるようになっている。また、サーバー管理の下で、同一のファイルを複数のサーバーにコピーすることにより、信頼性の向上を図っている。具体的には、ファイル送信装置から複数のファイル受信装置へのリンク等を共有しているとき、ファイルの宛先であるファイル受信装置毎にネットワーク帯域を分割してファイル送信を行うか、または、ファイル受信装置毎にファイル送信装置から繰り返してファイル送信を行うことにより、ファイル送信装置から複数のファイル受信装置へファイルを送信し、同一のファイルを複数のサーバーにコピーする。
また、放送局では、サーバーからネットワークを介して他のサーバーへ向けてファイルを高速に送信する要求が高まっている中、ファイルのデータ差替え(ファイル差替え)、ファイルのデータ合成(ファイル合成)等の各種処理を行う場合がある。従来のファイル送受信システムでは、ファイル送信装置からファイル受信装置へファイル全体を送信した後、ファイル受信装置が、受信したファイルから必要な部分を取り出して、ファイル差替え等の各種処理を行っていた。このため、ファイル送信装置からファイル受信装置へファイルを送信し、各種処理を完了するまでに時間がかかり、待ち時間が発生するという問題があった。
図20は、ファイル差替え処理の概要を説明する図である。図中、元のファイルは、タイムコードAからBまでの間で複数のフレームにより構成されており、タイムコードXからYまでの間にもフレームを含んでいる。差替え用フレームは、タイムコードVからWまでの間のフレームにより構成されている。ここでのファイル差替え処理とは、元のファイルにおいて、タイムコードXからYまでの間のフレームを、ファイル受信装置が受信したファイルのうちのタイムコードVからWまでの間のフレームに差替え、新たなファイルを生成することをいう。ファイル差替え処理により、タイムコードAからBまでのうち、タイムコードXからYまでの間に前述の差替え用フレームを含む、差替え後のファイルが生成される。
図21は、ファイル合成処理の概要を説明する図である。図中、ファイル1は、タイムコードVからWまでのうち、タイムコードAからBまでの間に合成対象である第1のフレーム(複数フレーム)を含んで構成されている。また、ファイル2は、タイムコードXからYまでのうち、タイムコードCからDまでの間に合成対象である第2のフレーム(複数フレーム)を含んで構成されている。ここでのファイル合成処理とは、ファイル受信装置が受信したファイル1における第1のフレーム、及び、ファイル受信装置が受信したファイル2における第2のフレームを用いて、第1のフレームの後ろに第2のフレームを結合し、新たなファイルを生成することをいう。ファイル合成処理により、タイムコードEからE’までの間の第1のフレームと、タイムコードE’からFまでの間の第2のフレームとからなる合成後のファイルが生成される。このようなカット編集の他、ワイプ、ディゾルブ等の効果を得るために結合する処理もある。
図20に示したファイル差替え処理、及び図21に示したファイル合成処理では、ファイルをフレーム単位またはブロック単位で扱うことが必要である。例えば、ファイルをフレーム単位に扱うことが可能なMXF(Material Exchange Format)ファイルを用いることができる。MXFファイルは、映像・音声素材の情報を送受信するのに適している。MXFは、SMPTEで規格化されたファイルフォーマットであり、データを包み込むラッパーという概念によって、圧縮内容に関わらず、フレーム単位で操作できるという特徴がある。
このように、従来のファイル送受信システムでは、ファイルの送受信を行って、ファイル受信装置において図20に示したファイル差替え処理または図21に示したファイル合成処理を行う場合に時間がかかり、待ち時間が発生するという問題があった。この場合、ファイルを送受信しているときに、同時にファイル差替え処理またはファイル合成処理を行うことができれば、処理時間の短縮が可能となる。
特開2001−24733号公報
Y.Gu et al.,"Experiences in the design and implementation of a high performance transport protocol",in SC2004,Nov.2004 W.Allcock et al.,"GridFTP: Protocol extensions to FTP for the Grid",GGF Document Series GFD.20,April 2003
従来のファイル送受信システムでは、以下の(1)〜(4)の問題があった。
(1)RTTが長い環境では、適切な帯域でファイルを送受信することが困難である。
(2)SACKオプションを用いた場合、全てのパケットロスを一度の応答で正確に認識できるとは限らない。
(3)ファイル送信装置から複数のファイル受信装置へ同一ファイルを送信する場合、帯域が分割されて転送速度が低下したり、遅延が発生したりする。
(4)ファイル差替え処理またはファイル合成処理を行う場合、時間がかかる。
以下、(1)〜(4)について詳細に説明する。
(1)RTTが長い環境における帯域変動
前述のように、長距離のファイル送受信を行う際に、RTT(ラウンドトリップタイム)が長くなる場合がある。このような環境の下で、例えば、確認応答を行うTCPのようなプロトコルを用いる場合には、ファイル受信装置からファイル送信装置へ、ファイル受信装置の受信可能なバッファ容量を通知するのに時間がかかってしまう。このため、ファイル送信装置は、ファイル受信装置の受信可能なバッファ容量以上のデータを送信したり、受信可能な帯域を大きく下回って送信したりする。この場合、ファイル送信装置は、その度にスロースタート等の輻輳制御を行って、転送速度を落とす等の処理を行う。しかしながら、適切なビットレートに戻す時間も含めて、使用可能な帯域を生かした転送ができない時間が発生し、適切な帯域でファイルを送受信することができないという問題があった。
また、例えば、輻輳制御を行わずに、受信可能な帯域を監視してファイル送信装置へ通知する転送プロトコルを用いる場合、複数の転送が同一ネットワークで行われてネットワークの利用可能帯域が変動したときに、その変動に追従して転送速度を調整することが困難であるという問題があった。
(2)パケットロスに伴う再送処理の困難性
大きなサイズのファイルを高速に送受信するファイル送受信システムでは、パケットロスが間欠的に発生する場合がある。この問題を解決するためにSACKオプションを用いる手法があるが、全てのパケットロスを一度の応答で正確に認識することが困難であるという問題があった。これは、SACKオプションの確認応答により、最大4つの連続するデータブロックに対してパケットロスを認識できるに過ぎないからである。
例えば、ファイル送信装置がパケット番号1〜599のデータパケットをファイル受信装置へ送信し、ファイル受信装置がSACKオプションにより確認応答をファイル送信装置へ通知するファイル送受信システムにおいて、パケット番号100,200,300,400,500のデータパケットがパケットロスした場合を想定する。いま、ファイル受信装置が1番目の確認応答を生成するまでに、ファイル送信装置がパケット番号1〜150のデータパケットを送信し、ファイル受信装置が2番目の確認応答を生成するまでに、ファイル送信装置がパケット番号151〜599のデータパケットを送信したとする。SACKオプションにより、1番目の確認応答にてパケット番号101−150が通知されたとすると、ファイル送信装置は、累積型確認応答の1−99と合わせて、パケットロスしたパケット番号100を判別することができる。そして、2番目の確認応答にてパケット番号501−599,401−499,301−399,201−299が通知されたとすると、ファイル送信装置は、パケットロスしたパケット番号500,400,300を判別することができる。しかし、累積型確認応答が1−99のままであるため、前回のSACKオプションの確認応答により通知したパケット番号101−150と合わせても、パケットロスしたパケット番号200を判別することができない。したがって、SACKオプションを用いたとしても、全てのパケットロスを正確に認識することができない場合があるという問題があった。特に、RTTが長い環境では、間欠的に発生するパケットロスが多くなると、高速な再送処理が困難になり、転送速度が低下してしまうという問題があった。
(3)同一ファイル送信時の遅延
ファイル送信装置から複数のファイル受信装置へのリンク等を共有している場合、ファイル送信装置が複数のファイル受信装置へ同一のファイルを送信するときには、並列に同時に送信する方式、または、ファイル受信装置毎に順番に送信する方式が用いられる。前者の方式を用いた場合、帯域が分割されるから、全体的に速度が低下してしまう。後者の方式を用いた場合、送信順番が後のファイル受信装置は、送信順番を待つ必要があり転送遅延が大きくなるから、ファイル送信装置によりファイルの送信が開始されてから実際にファイルを受信するまでに、時間がかかってしまう。
(4)ファイル差替え処理時及びファイル合成処理時の遅延
ファイル全体を指定して転送要求するプロトコルを用いた場合、ファイル受信装置が、ネットワーク内の装置に蓄積されている、例えば映像・音声ファイルの一部分を必要としており、この一部分によりファイル差替え処理またはファイル合成処理を行う場合であっても、ファイルの全データを受信した後に必要な一部分のデータを取り出し、処理を行う。このため、これらの処理を完了するまでに時間がかかり、ネットワーク資源を消費し、蓄積領域も消費するという問題があった。
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、適切な帯域にて効率的かつ確実にファイルを送受信し、処理時間の短縮化を図ることが可能なファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラムを提供することにある。
前記目的を達成するために、本発明によるファイル送受信システムは、ファイルのデータをパケット化し、データパケットを送信するファイル送信装置と、前記データパケットを受信し、ファイルを蓄積するファイル受信装置とを備えて構成されるファイル送受信システムにおいて、前記ファイル受信装置が、ファイルを蓄積する蓄積装置と、データを一時的に保存する受信用バッファと、前記受信用バッファに所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で生成する受信管理手段と、前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、ファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、を備え、前記ファイル送信装置が、送受信対象のファイルが蓄積された蓄積装置と、送信済みのデータパケットを保存する再送用バッファと、前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、前記蓄積装置からファイルを読み出すデータ入力手段と、前記送信管理手段から送信要求を入力した場合、前記データ入力手段により読み出されたファイルのデータのうち、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とする。
また、本発明によるファイル受信装置は、前記ファイル送受信システムにおいて、前記ファイル受信装置の受信管理手段が、前記受信用バッファに所定領域の空きの有無を判定し、前記空き有りを判定して前記所定領域を確保できた場合、前記所定領域に保存されるデータの送信を要求する情報を記述した同期パケットを生成し、前記空き無しを判定して前記受信用バッファに所定領域を確保できなかった場合、前記所定領域に保存されるデータの送信を要求する情報を記述することなく同期パケットを生成する、ことを特徴とする。
また、本発明によるファイル送信装置は、前記ファイル送受信システムにおいて、前記ファイル送信装置の送信管理手段が、前記同期パケットに記述された、前記既に受信したデータパケットを識別する情報と、前記パケット送信手段により送信されたデータパケットを識別する情報とを比較し、前記比較により識別する情報が一致しない場合に、前記一致しない情報のデータパケットに対する再送要求を出力する、ことを特徴とする。
また、本発明によるファイル送受信システムは、さらに、前記ファイル受信装置と前記ファイル送信装置との間で、同期パケット及びデータパケットを中継し、ファイルを蓄積するファイル中継装置を備え、前記ファイル中継装置が、ファイルを蓄積する蓄積装置と、データを一時的に保存する受信用バッファと、送信済みのデータパケットを保存する再送用バッファと、前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、前記同期パケット受信手段により受信された同期パケットを中継し、前記同期パケットを出力する同期パケット中継手段と、前記同期パケット中継手段から前記同期パケットを入力し、前記受信用バッファに所定領域を確保し、前記同期パケットにおけるデータの送信を要求する情報、及び当該ファイル中継装置が既に受信したデータパケットを識別する情報を記述して新たな同期パケットを生成する受信管理手段と、前記受信管理手段により生成された新たな同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出して出力し、ファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、前記データ出力手段からデータを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とする。
また、本発明によるファイル送受信システムは、前記ファイル送信装置と、データパケットを受信し、蓄積していたファイルの一部を、受信したデータパケットのデータに差替えて新たなファイルを蓄積するファイル差替え装置とを備えて構成されるファイル送受信システムにおいて、前記ファイル差替え装置が、ファイルを蓄積する蓄積装置と、データを一時的に保存する受信用バッファと、前記受信用バッファに所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で生成する受信管理手段と、前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、前記蓄積装置に蓄積されたファイルの一部を、前記読み出したデータに差替え、新たなファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するファイル差替え手段と、を備えたことを特徴とする。
また、本発明によるファイル送受信システムは、前記ファイル送信装置及びファイル受信装置と、前記ファイル受信装置と前記ファイル送信装置との間で、同期パケット及びデータパケットを中継し、蓄積していたファイルの一部を、受信したデータパケットのデータに差替えて新たなファイルを蓄積するファイル差替え装置とを備えて構成されるファイル送受信システムにおいて、前記ファイル差替え装置が、ファイルを蓄積する蓄積装置と、データを一時的に保存する受信用バッファと、送信済みのデータパケットを保存する再送用バッファと、前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、前記同期パケット受信手段により受信された同期パケットを中継し、前記同期パケットを出力する同期パケット中継手段と、前記同期パケット中継手段から前記同期パケットを入力し、前記受信用バッファに所定領域を確保し、前記同期パケットにおけるデータの送信を要求する情報、及び当該ファイル差替え装置が既に受信したデータパケットを識別する情報を記述して新たな同期パケットを生成する受信管理手段と、前記受信管理手段により生成された新たな同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出して出力し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、前記蓄積装置に蓄積されたファイルの一部を、前記読み出したデータに差替え、新たなファイルとして前記蓄積装置に蓄積するファイル差替え手段と、前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、前記データ出力手段からデータを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とする。
また、本発明によるファイル送受信システムは、前記ファイル送信装置を複数備え、前記ファイル受信装置と、前記複数のファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットのデータを合成してパケット化し、前記パケット化したデータパケットを前記ファイル受信装置へ送信するファイル合成装置とを備えて構成されるファイル送受信システムにおいて、前記ファイル合成装置が、前記複数のファイル送信装置にそれぞれ蓄積されたファイルのデータと、前記それぞれのデータを合成して得られる合成データとの間の対応関係が定義されたテーブルと、データを一時的に保存する受信用バッファと、送信済みのデータパケットを保存する再送用バッファと、前記ファイル受信装置から、前記合成データの送信を要求する情報が記述された同期パケットを受信する同期パケット受信手段と、前記同期パケット受信手段により受信された同期パケットを、前記テーブルに従って変換することにより、前記ファイル送信装置に蓄積されたファイルのデータの送信を要求する情報を第2の同期パケットに記述し、前記第2の同期パケットを前記ファイル送信装置毎に生成して出力する同期パケット変換手段と、前記同期パケット変換手段から前記第2の同期パケットを入力し、前記受信用バッファに、前記ファイル送信装置毎の所定領域を確保し、前記第2の同期パケットにおけるデータの送信を要求する情報、及び当該ファイル合成装置が既に受信したデータパケットを識別する情報を第3の同期パケットに記述し、前記第3の同期パケットを前記ファイル送信装置毎に生成する受信管理手段と、前記受信管理手段により生成された第3の同期パケットを、前記ファイル送信装置へそれぞれ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記ファイル送信装置毎に前記受信用バッファに保存するパケット受信手段と、前記受信用バッファにおける前記ファイル送信装置毎の所定領域にデータが保存されたときに、前記データを読み出し、前記テーブルに従って前記ファイル送信装置毎のデータを合成し合成データを出力し、前記受信用バッファにおける前記ファイル送信装置毎の所定領域に保存されたデータを削除するファイル合成手段と、前記同期パケット受信手段により受信された同期パケットから、前記合成データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記合成データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、前記ファイル合成手段から合成データを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示す合成データをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とする。
また、本発明によるファイル送受信システムは、前記ファイル送信装置を複数備え、前記複数のファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットのデータを合成してファイルを蓄積するファイル合成装置を備えて構成されるファイル送受信システムにおいて、前記ファイル合成装置が、ファイルを蓄積する蓄積装置と、データを一時的に保存する受信用バッファと、前記受信用バッファに前記ファイル送信装置毎の所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で前記ファイル送信装置毎に生成する受信管理手段と、前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へそれぞれ送信する同期パケット送信手段と、前記ファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記ファイル送信装置毎に前記受信用バッファに保存するパケット受信手段と、前記受信用バッファにおける前記ファイル送信装置毎の所定領域にデータが保存されたときに、前記データを読み出し、前記ファイル送信装置毎のデータを合成しファイルとして前記蓄積装置に蓄積し、前記受信用バッファにおける前記ファイル送信装置毎の所定領域に保存されたデータを削除するファイル合成手段と、を備えたことを特徴とする。
また、本発明によるファイル送受信システムは、前記同期パケットには、前記データの送信を要求する情報として、ファイルを所定サイズに分割した際のブロックの番号が記述される、ことを特徴とする。
また、本発明によるファイル送受信システムは、前記ファイルを、複数のフレームにより構成された映像及び音声用ファイルとし、前記同期パケットには、前記データの送信を要求する情報として、前記映像及び音声用ファイルにおけるフレームの番号及びブロックの番号、または、前記映像及び音声ファイル内の位置を示すタイムコード及びブロックの番号が記述される、ことを特徴とする。
さらに、本発明は、前記ファイル送受信システムに備えたファイル受信装置にある。
また、本発明は、前記ファイル送受信システムに備えたファイル送信装置にある。
また、本発明は、前記ファイル送受信システムに備えたファイル中継装置にある。
また、本発明は、前記ファイル送受信システムに備えたファイル差替え装置にある。
また、本発明は、前記ファイル送受信システムに備えたファイル合成装置にある。
さらに、本発明は、コンピュータを、前記ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置またはファイル合成装置として機能させるためのプログラムにある。
以上のように、本発明によれば、データパケットを受信する装置が、受信用バッファに所定領域を確保した後に、データの送信を要求する情報、及び受信したデータパケットを識別する情報を記述した同期パケットを生成し、同期パケットを送信するようにした。また、データパケットを送信する装置が、同期パケットを受信し、データの送信を要求する情報に基づいてデータパケットの送信を行い、受信したデータパケットを識別する情報に基づいてデータパケットの再送信を行うようにした。また、本発明によれば、同期パケットを用いてファイルの送受信を行いながら、ファイルの差替えまたは合成を行うようにした。これにより、適切な帯域にて効率的かつ確実にファイルを送受信し、処理時間の短縮化を図ることが可能となる。また、ファイルの差替え等の編集処理を効率的に行うことが可能となる。
本発明の第1の実施形態(実施例1)によるファイル送受信システムの構成を示すブロック図である。 本発明の第2の実施形態(実施例2)によるファイル送受信システムの構成を示すブロック図である。 本発明の第3の実施形態(実施例3)によるファイル送受信システムの構成を示すブロック図である。 本発明の第4の実施形態(実施例4)によるファイル送受信システムの構成を示すブロック図である。 ファイル受信装置の処理を説明するフローチャートである。 ファイル送信装置の処理を説明するフローチャートである。 ファイル中継装置の処理を説明するフローチャートである。 ファイル差替え中継装置の処理を説明するフローチャートである。 ファイル合成中継装置の処理を説明するフローチャートである。 実施例1のファイル送受信処理を説明するシーケンス図である。 実施例2のファイル中継処理を説明するシーケンス図である。 実施例3のファイル差替え処理を説明するシーケンス図である。 実施例4のファイル合成処理を説明するシーケンス図である。 データパケットの構造を示す図である。 MXFファイルデータパケットの構造を示す図である。 同期パケットの構造を示す図である。 受信用バッファに保存されるデータを説明する図である。 ファイルの構成を説明する図である。 MXFファイルの構成を説明する図である。 ファイル差替え処理の概要を説明する図である。 ファイル合成処理の概要を説明する図である。
以下、本発明を実施するための形態について、図面を参照して説明する。本発明の第1の実施形態(実施例1)は、ファイル送信装置及びファイル受信装置がネットワークを介して接続されるファイル送受信システムにおいて、ファイル受信装置が、保存領域を確保してから同期パケットをファイル送信装置へ送信し、ファイル送信装置が、同期パケットに基づいて、データパケットをファイル受信装置へ送信する。これにより、ファイル送信装置は、蓄積したファイルを、適切な帯域にて効率的にかつ確実にファイル受信装置へ送信することができる。また、輻輳制御が不要になるから、処理時間を短縮することができる。
実施例2は、ファイル送信装置及びファイル中継装置がネットワークを介して接続され、ファイル中継装置及びファイル受信装置がネットワークを介して接続されるファイル送受信システムにおいて、ファイル受信装置が、保存領域を確保してから同期パケットをファイル中継装置へ送信し、ファイル中継装置が、ファイル受信装置から受信する同期パケットに基づいて、保存領域を確保した後に同期パケットをファイル送信装置へ送信し、ファイル送信装置から受信するデータパケットをファイル受信装置へ送信し、ファイル送信装置が、ファイル中継装置から受信する同期パケットに基づいて、データパケットをファイル中継装置へ送信する。これにより、ファイル送信装置は、蓄積したファイルを、適切な帯域にて効率的にかつ確実にファイル中継装置及びファイル受信装置へ送信することができ、処理時間を短縮することができる。
実施例3は、ファイル送信装置及びファイル差替え中継装置がネットワークを介して接続され、ファイル差替え中継装置及びファイル差替え受信装置がネットワークを介して接続されるファイル送受信システムにおいて、ファイル差替え中継装置が実施例2のファイル中継装置に対応し、ファイル差替え受信装置が実施例2のファイル受信装置に対応して、実施例2と同様に同期パケット及びデータパケットを送受信し、さらに、ファイル差替え中継装置及びファイル差替え受信装置が、蓄積していた元のファイルの一部を、受信したデータパケットのデータにより差替える。これにより、ファイル送信装置は、蓄積したファイルを、適切な帯域にて効率的にかつ確実にファイル差替え中継装置及びファイル差替え受信装置へ送信することができる。また、ファイルを送受信しながら元のファイルの一部を差替えることができるから、処理時間を短縮することができる。
実施例4は、2台のファイル送信装置及びファイル合成中継装置がネットワークを介して接続され、ファイル合成中継装置及びファイル差替え受信装置がネットワークを介して接続されるファイル送受信システムにおいて、ファイル合成中継装置が実施例3のファイル差替え中継装置に対応して、実施例3と同様に同期パケット及びデータパケットを送受信し、さらに、ファイル合成中継装置が、第1のファイル送信装置から受信したデータと、第2のファイル送信装置から受信したデータとを合成して新たなファイルを生成し、新たなファイルのデータをファイル差替え受信装置へ送信する。これにより、2台のファイル送信装置は、蓄積したファイルのデータを、適切な帯域にて効率的にかつ確実にファイル合成中継装置へ送信し、ファイル合成中継装置は、合成した新たなファイルのデータを、適切な帯域にて効率的にかつ確実にファイル差替え受信装置へ送信することができる。また、ファイルを送受信しながらファイルを合成することができるから、処理時間を短縮することができる。以下、実施例1〜4について詳細に説明する。
まず、実施例1について説明する。実施例1のファイル送受信システムは、ファイル送信装置のファイルを、同期パケットを用いてファイル受信装置へ送信して蓄積する基本的な処理を行う。
〔構成〕
図1は、実施例1によるファイル送受信システムの構成を示すブロック図である。このファイル送受信システムは、ファイル送信装置1及びファイル受信装置2を備えて構成され、ファイル送信装置1とファイル受信装置2とはネットワーク10を介して接続される。実施例1のファイル送受信システムは、ファイル送信装置1が、蓄積したファイルをパケット化し、データパケットとしてネットワーク10を介してファイル受信装置2へ送信し、ファイル受信装置2が、データパケットを受信し、ファイルとして蓄積するシステムである。具体的には、ファイル受信装置2が、保存領域を確保してから同期パケットをファイル送信装置1へ送信し、ファイル送信装置1が、同期パケットに基づいて、データパケットをファイル受信装置2へ送信する。
(ファイル受信装置の構成)
ファイル受信装置2は、パケット受信手段201、受信管理手段202、同期パケット送信手段203、同期信号生成手段204、データ出力手段205、蓄積装置206、受信用バッファ207及びユーザー要求受信手段107を備えている。
パケット受信手段201は、所定の通信プロトコルによってファイル送信装置1からデータパケットを受信し、データパケットからブロック番号、パケット番号、マーカービット、データ等を取り出す。そして、パケット受信手段201は、ブロック番号、パケット番号及びマーカービットを受信管理手段202に出力し、データを受信用バッファ207に保存する。
図14は、データパケットの構造を示す図である。このデータパケットは、後述するファイル送信装置1のパケット送信手段101により生成される。データパケットは、下位プロトコルヘッダー、ペイロードサイズ、ブロック番号、パケット番号、マーカービット、データポジション及びペイロードにより構成される。
下位プロトコルヘッダーは、IP、TCP、UDP等の下位プロトコルの通信のために用いるヘッダー情報である。本実施例においては、後述するようにUDP/IPプロトコルのヘッダー情報が設定される。ペイロードサイズは、送信されるデータ本体のサイズである。ブロック番号は、ファイルが分割されて先頭から順番に付けられるブロックの番号であり、ブロックを識別するために用いられる。パケット番号は、ブロックが分割されてブロック内で先頭から順番に付けられるパケットの番号であり、パケットを識別するために用いられる。マーカービットは、ブロックがパケットに分割された際の最終パケットを識別するためのビットである。マーカービットが設定されている場合、そのデータパケットが最終パケットであることを意味する。データポジションは、後述するペイロードに設定されるデータの位置、すなわちブロックの先頭からの位置である。ペイロードは、送信されるデータ本体である。
図15は、MXFファイルのデータパケットの構造を示す図である。MXFファイルは、前述のとおり、フレーム単位でアクセスすることが可能なファイルであり、後述するファイル送信装置1のパケット送信手段101により生成される。このMXFファイルは、下位プロトコルヘッダー、ペイロードサイズ、ブロック番号、パケット番号、マーカービット、データポジション、タイムコード、MXF GCのKey、MXF GCのLength、MXF GCのValue(ペイロード)により構成される。
下位プロトコルヘッダー、ペイロードサイズ、ブロック番号、パケット番号、マーカービット及びデータポジションについては、図14に示したデータパケットの項目と同様であるから、ここでは説明を省略する。タイムコードは、ファイルが分割されたフレームの時間を示すコードである。MXF GCのKeyは、MXF GCフレームにおけるKLVのK、すなわちデータ識別のタグである。MXF GCのLengthは、MXF GCフレームにおけるKLVのL、すなわちペイロードのデータ長である。MXF GCのValueは、MXF GCフレームにおけるKLVのV、すなわちペイロードデータである。
図1に戻って、受信管理手段202は、同期信号生成手段204から同期信号を入力すると共に、パケット受信手段201からブロック番号、パケット番号及びマーカービットを入力し、ファイル送信装置1から受信するファイルのブロック番号(送信要求ブロック番号)を管理する。また、受信管理手段202は、同期信号を入力したタイミングで、受信用バッファ207に保存用領域を確保し、入力したブロック番号、パケット番号及びマーカービットに基づいて同期パケットを生成し、同期パケット送信手段203に出力する。ここで、受信用バッファ207に保存用領域を確保するとは、他の手段がその保存用領域にアクセスしたり、データを書き込んだりすることを禁止することを意味する。また、受信管理手段202は、後述するユーザー要求受信手段107から予め入力したファイルサイズ及びブロックサイズを用いて、ファイルが分割されるブロック数を算出する。算出したブロック数は、送信要求ブロック番号を設定するために用いられる。具体的には、送信要求ブロック番号は0からブロック数−1までの値が設定される。また、受信管理手段202は、受信用バッファ207の保存用領域に全てのデータが保存されたときに、受信完了フラグを設定し書き込む。送信要求ブロック番号の管理及び同期パケット生成処理の詳細については後述する。
図16は、同期パケットの構造を示す図である。この同期パケットは、下位プロトコルヘッダー、送信要求ブロック番号、確認応答ブロック番号、受信開始パケット番号及び受信終了パケット番号により構成される。下位プロトコルヘッダーは、図14及び図15と同様に、IP、TCP、UDP等の下位プロトコルの通信のために用いるヘッダー情報である。本実施例においては、後述するようにTCP/IPプロトコルのヘッダー情報が設定される。送信要求ブロック番号は、ファイル受信装置2が受信要求するブロックの番号である。この送信要求ブロック番号は、図14に示したデータパケットのブロック番号に対応する。尚、MXFファイルの送受信を行う場合には、送信要求ブロック番号には、タイムコード及びブロック番号、または、フレーム番号及びブロック番号が設定される。確認応答ブロック番号、受信開始パケット番号及び受信終了パケット番号は、総称して確認応答であり、確認応答用のデータが設定される。すなわち、確認応答として、受信したデータパケットのブロック番号、及び、同一のブロック番号においてどのデータパケットからどのデータパケットまで連続して受信したかを示すパケット番号が設定される。
尚、n個の確認応答が設定される場合には、同期パケットは、下位プロトコルヘッダー、送信要求ブロック番号、第1の確認応答、第2の確認応答、・・・、第nの確認応答の順番になるように生成される。例えば、パケット受信手段201が、ブロック番号1、パケット番号1〜20,22〜40のデータパケットを受信した場合、受信管理手段202は、パケット受信手段201からこれらの番号を入力し、第1の確認応答として、確認応答ブロック番号1、受信開始パケット番号1及び受信終了パケット番号20を設定し、第2の確認応答として、確認応答ブロック番号1、受信開始パケット番号22及び受信終了パケット番号40を設定する。この場合、受信管理手段202は、下位プロトコルヘッダー、送信要求ブロック番号、第1の確認応答、第2の確認応答の順番からなる同期パケットを生成する。
図1に戻って、同期パケット送信手段203は、受信管理手段202から同期パケットを入力し、所定のプロトコルによって同期パケットをファイル送信装置1へ送信する。
同期信号生成手段204は、予め設定された周期にて同期信号を生成し、受信管理手段202に出力する。例えば、周期Tは以下の式により設定される。
T=1/(f×N)
fはフレーム周波数、Nは所定の整数である。
尚、ファイル受信装置2の内部に備えたタイマーが周期Tを設定し、同期信号生成手段204は、タイマーにより設定された周期Tにて同期信号を生成するようにしてもよい。また、同期信号生成手段204は、外部から周期Tの信号を受信し、受信した信号のタイミングにて同期信号を生成するようにしてもよい。
データ出力手段205は、受信用バッファ207からブロック単位のデータを読み出し、ファイルとして蓄積装置206に蓄積する。
蓄積装置206には、データ出力手段205からのデータがファイルとして蓄積される。蓄積装置206は、ハードディスクまたは半導体メモリであるが、これに限定されるものではない。
受信用バッファ207には、パケット受信手段201からのデータが保存される。また、受信用バッファ207は、FIFO(First In First Out)の記憶装置として機能し、受信管理手段202からのアクセスにより、空き領域の確認応答を行い、データが保存される際の保存用領域が確保される。受信用バッファ207は、半導体メモリであるが、これに限定されるものではない。
図17は、受信用バッファ207に保存されるデータを説明する図である。図17に示すように、受信用バッファ207には、ブロック情報、受信完了フラグ及びデータがブロック毎に保存される。尚、MXFファイルの場合は、ブロック情報の代わりのフレーム情報、受信完了フラグ及びデータがフレーム毎に保存される。ブロック情報は、データサイズ、ブロック番号、タイムコード、次のブロックの位置等である。受信完了フラグは、ブロック内(MXFファイルの場合はフレーム内)のデータが全て揃ったか否か(全て保存されたか否か)を示すフラグである。データはデータ本体であり、1つのブロック(MXFの場合は1つのフレーム)のデータがペイロードサイズのパケット毎に保存される。
図1に戻って、ユーザー要求受信手段107は、ユーザーにより指定されたファイル名、その蓄積先である蓄積装置206、ファイルサイズ、ブロックサイズ等の要求情報を受信し、ファイル送受信処理が行われる前に予め各手段に出力する。各手段は、ユーザー要求受信手段107から要求情報を入力し、必要に応じて使用する。
(ファイル送信装置の構成)
次に、ファイル送信装置1の構成について説明する。ファイル送信装置1は、パケット送信手段101、送信管理手段102、同期パケット受信手段103、データ入力手段104、蓄積装置105、再送用バッファ106及びユーザー要求受信手段107を備えている。
パケット送信手段101は、データ入力手段104からブロック毎のデータを入力すると共に、送信管理手段102から送信要求または再送要求を入力し、入力したデータをパケットに分割し、送信要求または再送要求に従って、図14に示したデータパケットを生成し、所定の通信プロトコルによってファイル受信装置2へ送信する。データパケットのサイズは、一般に、ネットワーク10の最大伝送パケットサイズに合わせられる。そして、パケット送信手段101は、送信したデータパケットを、パケット単位に送信管理手段102に出力し、送信管理手段102を介して再送用バッファ106に保存する。
送信管理手段102は、同期パケット受信手段103から同期パケットを入力し、同期パケットから送信要求ブロック番号及び確認応答を取り出し、送信要求ブロック番号が0の場合、そのファイルを読み出すためのファイル読出要求をデータ入力手段104に出力する。また、送信管理手段102は、送信要求ブロック番号の送信を要求するための送信要求をパケット送信手段101に出力する。また、送信管理手段102は、確認応答の示すブロック番号及びパケット番号のデータパケットを再送用バッファ106から削除し、確認応答の示すブロック番号及びパケット番号に基づいて、データを再送するか否かを判定し、データを再送する場合は、再送要求をパケット送信手段101に出力する。再送処理の詳細については後述する。
同期パケット受信手段103は、所定の通信プロトコルによってファイル受信装置2から同期パケットを受信し、送信管理手段102に出力する。
データ入力手段104は、送信管理手段102からファイル読出要求を入力し、後述するユーザー要求受信手段107から予め入力したファイル名のファイルを、蓄積装置105から読み出す。そして、データ入力手段104は、後述するユーザー要求受信手段107から予め入力したファイルサイズ及びブロックサイズを用いて、ファイルを分割するブロック数を算出し、読み出したファイルのデータをそのブロックサイズに分割し、ブロック毎のデータとしてパケット送信手段101に出力する。
蓄積装置105には、送受信対象のファイルが予め蓄積されている。蓄積装置105は、ハードディスクまたは半導体メモリであるが、これに限定されるものではない。
再送用バッファ106には、パケット送信手段101により送信されたデータパケットの複製が保存される。再送用バッファ106は、半導体メモリであるが、これに限定されるものではない。
ユーザー要求受信手段107は、ユーザーにより指定されたファイル名、その蓄積先である蓄積装置105、ファイルサイズ、ブロックサイズ等の要求情報を受信し、ファイル送受信処理が行われる前に予め各手段に出力する。各手段は、ユーザー要求受信手段107から要求情報を入力し、必要に応じて使用する。
図1に示したファイル送受信システムにおいて、ファイル送信装置1のパケット送信手段101とファイル受信装置2のパケット受信手段201との間で、ネットワーク10を介して、例えばUDP/IP、TCP/IPの通信プロトコルによってデータパケットの送受信が行われる。UDP/IPの通信プロトコルを用いた場合は、データ到達の信頼性が保証できないが、前述した同期パケットによる確認応答を行うことにより、信頼性を確保することができる。
また、ファイル受信装置2の同期パケット送信手段203とファイル送信装置1の同期パケット受信手段103との間で、ネットワーク10を介して、例えばTCP/IPの通信プロトコルによって同期パケットが送受信される。図16に示したように、この同期パケットには、送信要求ブロック番号及び確認応答が含まれているから、同期パケットが損失しないように送受信する必要がある。通信プロトコルとしてTCP/IPを用いることにより、たとえ同期パケットが損失したとしても、TCP/IPに従った再送技術及び誤り訂正技術等にて、同期パケットをファイル受信装置2からファイル送信装置1へ確実に送信することができる。
そこで、実施例1〜4では、データパケットを送受信する場合には通信プロトコルとして簡易的なUDP/IPを用い、同期パケットを送受信する場合には通信プロトコルとして信頼性のあるTCP/IPを用いるものとする。
図18は、ファイル送受信システムにより送受信されるファイルの構成を説明する図である。図18において、ファイルは、複数のブロックにより構成される。ここで、ブロックとは、ファイルを所定のサイズ(ブロックサイズ)にて分割したデータの単位をいう。前述のとおり、ブロックサイズは、ユーザー要求受信手段107により予め設定され、ブロック毎のデータは、データ入力手段104によりファイルから分割される。パケット毎のデータは、パケット送信手段101によりブロックから分割される。ここで、パケットとは、ブロックをネットワーク10にて送受信するために分割した単位をいう。
図19は、ファイル送受信システムにより送受信されるMXFファイルの構成を説明する図である。図19において、MXFファイルは、複数のフレームにより構成される。フレームは、KLVにより構成され、V部分には複数のブロックが含まれる。ここで、フレームとは、MXFファイルにおいてラッピングされたKLVの単位をいう。つまり、MXFファイルは、フレームラッピングのKLV構造をとり、KLVを1フレームとしている。KLVのV部分に含まれるブロック数は、ユーザー要求受信手段107により予め設定され、フレーム毎のデータは、データ入力手段104によりファイルから取り出され、ブロック毎のデータは、データ入力手段104によりフレームから分割され、パケット毎のデータは、パケット送信手段101によりブロックから分割される。
〔ファイル送受信処理〕
次に、図1に示した実施例1のファイル送受信システムによる処理について説明する。図5は、ファイル受信装置2の処理を説明するフローチャートであり、図6は、ファイル送信装置1の処理を説明するフローチャートである。また、図10は、ファイル送受信処理を説明するシーケンス図である。図10に示すステップSの番号は、図5及び図6に示すステップSの番号に対応している。このファイル送受信処理は、ファイル送信装置1が、蓄積装置105に蓄積しているファイルを読み出し、ネットワーク10を介してファイル受信装置2へ送信し、ファイル受信装置2が、受信したファイルを蓄積装置206に蓄積する一連の処理である。
前述のように、ファイル送信装置1及びファイル受信装置2のユーザー要求受信手段107は、送受信対象のファイル名、その蓄積先である蓄積装置105,206、ファイルサイズ、ブロックサイズ等の要求情報を、ユーザーの指定により受信し、処理が行われる前に予め各手段に出力しているものとする。また、ファイル送信装置1の同期パケット受信手段103とファイル受信装置2の同期パケット送信手段203との間にTCPコネクションが張られており、TCP/IPの通信プロトコルが用いられるものとする。また、ファイル送信装置1のパケット送信手段101とファイル受信装置2のパケット受信手段201との間にUDPコネクションが張られており、UDP/IPの通信プロトコルが用いられるものとする。また、ファイル送受信システムにより送受信されるファイルは、図18に示したファイルとする。
(ファイル受信装置の処理)
まず、図5及び図10を参照して、ファイル受信装置2の処理について説明する。ファイル受信装置2の同期信号生成手段204は、予め設定された周期にて同期信号を生成し、受信管理手段202に出力する(ステップS501)。
受信管理手段202は、同期信号生成手段204から同期信号を入力し(ステップS502)、その入力タイミングで、受信用バッファ207にブロックサイズ以上の蓄積可能な空き領域があるかないかの確認を行う(ステップS503)。ブロックサイズは、ユーザー要求受信手段107により予め設定されており、受信管理手段202は、ブロックサイズを予め入力している。また、空き領域があるかないかの確認は、例えば、受信用バッファ207の空き容量等を管理している手段(図示せず)からの応答により行われる。
受信管理手段202は、受信用バッファ207に空き領域がないと判定した場合(ステップS503:なし)、送信要求ブロック番号を記述しない同期パケットを生成する(ステップS506)。一方、受信管理手段202は、受信用バッファ207に空き領域があると判定した場合(ステップS503:あり)、受信用バッファ207にブロックサイズのデータ領域を確保し(ステップS504)、送信要求ブロック番号を記述した同期パケットを生成する(ステップS505)。ここで、受信管理手段202は、最初に送信要求ブロック番号に0を記述して同期パケットを生成する。受信管理手段202は、ステップS502にて同期信号を入力する毎に、ステップS505において1を加算して送信要求ブロック番号に記述し、同期パケットを生成する。同期パケットの送信要求ブロック番号には、同期信号毎に、ステップS505において0からブロック数−1までの値が記述される。ブロック数は、ユーザー要求受信手段107により予め設定されたファイルサイズ及びブロックサイズにより算出される。
また、受信管理手段202は、送信要求ブロック番号として最終のブロック番号(ブロック数−1の値)を記述して同期パケットを生成した後に、すなわち、ファイルを構成する全てのブロックの送信要求をした後に、ステップS502における同期信号を入力した場合、送信要求ブロック番号を記述しない同期パケットを生成する(ステップS506)。
受信管理手段202は、ステップS505またはステップS506から移行して、後述するステップS510において確認応答が生成されている場合、その確認応答を記述した同期パケットを生成する(ステップS507)。受信管理手段202は、生成した同期パケットを同期パケット送信手段203に出力する。
このように、ファイル送信装置1からのデータパケットの送信に先立って、受信管理手段202において、受信用バッファ207にブロックサイズの領域が確保される。これにより、ファイル受信装置2は、送信要求ブロック番号が記述された同期パケットにより、ファイル送信装置1に対し、データパケットを送信させることができ、ファイル送信装置1からのデータパケットを受信して受信用バッファ207に保存することができる。また、ブロックサイズの領域を確保できない場合は、送信要求ブロック番号を記述しない同期パケットが生成され、ファイル送信装置1に対し、次のブロックや新たなブロックのデータパケットを送信させないようにする。
同期パケット送信手段203は、受信管理手段202から入力した同期パケットを、TCP/IPの通信プロトコルによってファイル送信装置1へ送信する(ステップS508)。
後述する図6に示すステップS609のデータパケット送信処理の後、パケット受信手段201は、UDP/IPの通信プロトコルによってファイル送信装置1からデータパケットを受信する(ステップS509)。パケット受信手段201は、データパケットからペイロードサイズ、ブロック番号、パケット番号、マーカービット、データポジション、ペイロードのデータ等を取り出し、ブロック番号、パケット番号及びマーカービットを受信管理手段202に出力する。
受信管理手段202は、パケット受信手段201からブロック番号、パケット番号及びマーカービットを入力し、これらの情報に基づいて、所定のタイミングにて、確認応答ブロック番号、受信開始パケット番号及び受信終了パケット番号の確認応答を生成する(ステップS510)。そして、ステップS507へ移行して同期パケットを生成する。ここで、確認応答は、前回確認応答を生成した後に、ファイル受信装置2が受信したデータパケットのブロック(確認応答ブロック番号)において、連続するパケット番号(受信開始パケット番号及び受信終了パケット番号)により構成される。パケット番号が連続していない場合は、新たな別の確認応答が生成される。例えば、受信管理手段202は、パケット受信手段201から、ブロック番号1、パケット番号1〜20,22〜40を入力した場合、第1の確認応答として、確認応答ブロック番号1、受信開始パケット番号1及び受信終了パケット番号20を記述し、第2の確認応答として、確認応答ブロック番号1、受信開始パケット番号22及び受信終了パケット番号40を記述する。したがって、受信管理手段202は、下位プロトコルヘッダー、送信要求ブロック番号、第1の確認応答、第2の確認応答の順番からなる同期パケットを生成する。
ここで、確認応答が生成される所定のタイミングは、例えば、パケット受信手段201から入力したブロック番号が、前回入力したブロック番号と異なる場合、または、マーカービットが、受信したデータパケットがブロックの最終パケットであることを示している場合(マーカービットが設定されている場合)とする。受信管理手段202は、生成した確認応答を、同期信号生成手段204から同期信号を入力するまで保持する。
パケット受信手段201は、受信したデータパケットから取り出したペイロードサイズ及びデータポジションを用いて、ペイロードのデータを取り出し、受信用バッファ207に保存する(ステップS511)。データは、受信用バッファ207に確保された保存領域に、ブロック単位で保存される。
受信管理手段202は、受信用バッファ207のデータ領域を監視し(図17に示した受信用バッファ207を参照)、データ領域にデータが欠落なく揃っていると判定した場合、受信完了フラグを設定して(1をセットして)受信用バッファ207に書き込む。これにより、受信管理手段202は、受信用バッファ207からブロックデータを読み出すことを、データ出力手段205に許可する。データ領域にデータが欠落なく揃っているとは、ブロックにおける全てのデータがデータ領域に格納されていることを示す。
データ出力手段205は、受信用バッファ207にブロックの全データが揃ったか否かを判定する(ステップS512)。具体的には、データ出力手段205は、受信完了フラグを監視して、受信完了フラグが0から1に変化したか否かを判定する。データ出力手段205は、受信用バッファ207にブロックの全データが揃ったことを判定した場合(ステップS512:Y)、すなわち、受信完了フラグが0から1に変化したことを判定した場合、受信用バッファ207からブロックのデータを読み出し、ファイルとして蓄積装置206に蓄積する(ステップS513)。そして、データ出力手段205は、受信用バッファ207に保存されたブロック(読み出したブロック)のデータを削除すると共に、そのブロックのデータに対応するブロック情報及び受信完了フラグを削除し(ステップS514)、ステップS515へ移行する。すなわち、新たなブロックのデータを書き換え可能にする。これにより、受信用バッファ207において1ブロック分の領域が開放され、受信管理手段202により、新たなブロックが保存される空き領域を確保することが可能となる。
データ出力手段205は、ステップS512において、受信用バッファ207にブロックの全データが揃っていないことを判定した場合(ステップS512:N)、全データが揃うまで待つため、ステップS515へ移行する。そして、ファイル受信装置2は、ファイル転送が完了して処理を終了するまで、ステップS501〜ステップS514の処理を行う(ステップS515)。
このように、実施例1のファイル受信装置2によれば、ファイル送信装置1から送信されるブロックの全データを保存する領域を受信用バッファ207に前もって確保し、新たなブロックの送信を要求する送信要求ブロック番号と、受信済みのデータパケットをファイル送信装置1において確認できる確認応答とを同期パケットに記述し、ファイル送信装置1へ送信するようにした。また、受信用バッファ207に領域を確保できた場合は、新たなブロックデータの送信を要求し、確保できなかった場合は、新たなブロックデータの送信の要求をすることなく、受信できなかったデータパケットの再送を、同期パケットの確認応答によりファイル送信装置1に判断させるようにした。これにより、ファイル送信装置1は、同期パケットを受信して、ファイル受信装置2により受信可能な容量の新たなブロックを送信することができる。また、ファイル送信装置1は、同期パケットを受信して、ファイル受信装置2により受信できなかったデータパケットを特定し、そのデータパケットを再送することができる。これにより、ファイル送信装置1は、蓄積したファイルを、適切な帯域にて効率的にかつ確実にファイル受信装置2へ送信することができる。また、ファイル受信装置2では、ファイル送信装置1からのブロックの全データを保存する領域を、前もって確保するようにしたから、受信可能な伝送ビットレートを超えることなくデータパケットを受信し、輻輳制御を行うことなく受信用バッファ207に保存することができる。したがって、処理時間の短縮化を図ることができる。
(ファイル送信装置の処理)
次に、図6及び図10を参照して、ファイル送信装置1の処理について説明する。ファイル送信装置1の同期パケット受信手段103は、TCP/IPの通信プロトコルによりファイル受信装置2から同期パケットを受信し、送信管理手段102に出力する(ステップS601)。
送信管理手段102は、同期パケット受信手段103から同期パケットを入力し、同期パケットから確認応答を取り出し(ステップS602)、確認応答のブロック番号(確認応答ブロック番号)及びパケット番号(受信開始パケット番号から受信終了パケット番号まで)と、送信済みのデータパケットについて記憶しているブロック番号及びパケット番号とを比較し、欠落番号(ファイル受信装置2が受信していないデータパケットのブロック番号及びパケット番号)があるかないかを判定する(ステップS603)。
送信管理手段102は、欠落番号がないと判定した場合(ステップS603:なし)、確認応答におけるブロック番号(確認応答ブロック番号)及びパケット番号(受信開始パケット番号から受信終了パケット番号まで)のデータパケットを再送用バッファ106から削除する(ステップS605)。
一方、送信管理手段102は、欠落番号があると判定した場合(ステップS603:あり)、確認応答のブロック番号(確認応答ブロック番号)及びパケット番号(受信開始パケット番号から受信終了パケット番号まで)と、送信済みのデータパケットについて記憶しているブロック番号及びパケット番号とが一致するブロック番号及びパケット番号のデータパケットを再送用バッファ106から削除し、欠落番号(ブロック番号及びパケット番号)と共に再送要求をパケット送信手段101に出力する(ステップS604)。そして、パケット送信手段101は、欠落番号と共に再送要求を送信管理手段102から入力すると、欠落番号が示すブロック番号及びパケット番号のデータパケットを、送信管理手段102を介して再送用バッファ106から読み出し、UDP/IPの通信プロトコルによってファイル受信装置2へ送信する。
例えば、送信管理手段102が、既に送信済みのデータパケットについてのブロック番号1、パケット番号1〜40を記憶しており、同期パケット受信手段103が、確認応答ブロック番号1、受信開始パケット番号1及び受信終了パケット番号20、並びに、確認応答ブロック番号1、受信開始パケット番号22及び受信終了パケット番号40が記述された第2の同期パケットを受信した場合を想定する。この場合、送信管理手段102は、同期パケット受信手段103から同期パケットを入力し、比較処理により欠落番号(ブロック番号1、パケット番号21)を特定する。そして、送信管理手段102は、ブロック番号1、パケット番号1〜20,22〜40のデータパケットを再送用バッファ106から削除し、欠落番号ブロック番号1、パケット番号21と共に再送要求をパケット送信手段101に出力する。これにより、パケット送信手段101からブロック番号1、パケット番号21のデータパケットが再送される。
また、送信管理手段102は、最終のブロック内で最終パケット番号から所定数前のパケット番号までのデータパケットについてロスが生じたとして、これらの番号を欠落番号として設定し、所定周期にて再送要求をパケット送信手段101に出力する。最終のブロック内で最終パケット番号から所定数前のパケット番号のデータパケットについては、ステップS603による欠落の判定を行うことができない。そこで、欠落したものとして強制的に再送要求を出力し、データパケットの再送を行う。
このように、ファイル送信装置1は、同期パケットの確認応答に基づいてパケットロスしたデータパケットのブロック番号及びパケット番号を欠落番号として特定するようにし、再送を行うようにした。これにより、ファイル送信装置1は、蓄積したファイルを確実にファイル受信装置2へ送信することができる。
送信管理手段102は、ステップS601において受信した同期パケットから送信要求ブロック番号を取り出し(ステップS606)、送信要求ブロック番号が0の場合、ユーザー要求受信手段107により予め設定されたファイルを読み出すためのファイル読出要求をデータ入力手段104に出力する。また、送信管理手段102は、送信要求ブロック番号のデータパケットに対する送信要求をパケット送信手段101に出力する。
データ入力手段104は、送信管理手段102からファイル読出要求を入力し、ユーザー要求受信手段107により予め設定されたファイルを蓄積装置105から読み出し、読み出したファイルのデータを、ユーザー要求受信手段107により予め設定されたブロックサイズのブロックに分割し、0からインクリメントするブロック番号のブロック毎のデータをパケット送信手段101に出力する(ステップS607)。
パケット送信手段101は、データ入力手段104からブロック番号が付されたブロック毎のデータを入力し、入力したブロック毎のデータのうち、送信管理手段102から入力した送信要求に含まれるブロック番号のデータをパケットに分割する(ステップS608)。そして、パケット送信手段101は、データパケットを生成し、UDP/IPの通信プロトコルによってファイル受信装置2へ送信する(ステップS609)。このように、パケット送信手段101により、送信管理手段102が入力した同期パケットの送信要求ブロック番号の1つの番号につき、1ブロック分のデータパケットが送信される。
パケット送信手段101は、送信済みのデータパケットを、送信管理手段102を介して再送用バッファ106に保存する(ステップS610)。これにより、送信済みのデータパケットの複製が再送用バッファ106に保存され、データパケットのロスが発生した場合には、パケット送信手段101により、ロスが発生したデータパケットが再送用バッファ106から読み出され、再送される。
送信管理手段102は、パケット送信手段101がデータパケットを再送用バッファ106に保存する際に、そのデータパケットについてのブロック番号及びパケット番号を記憶する。
そして、ファイル送信装置1は、ファイル転送が完了して処理を終了するまで、ステップS601〜ステップS610の処理を行う(ステップS611)。
このように、実施例1のファイル送信装置1によれば、ファイル受信装置2から送信された同期パケットの送信要求ブロック番号に基づいて、送受信対象のファイルを蓄積装置105から読み出しブロックのデータに分割し、送信要求ブロック番号の示すデータをデータパケットとしてファイル受信装置2へ送信するようにした。また、同期パケットの確認応答に基づいて、ファイル受信装置2が受信できなかったデータパケットを特定し、そのデータパケットを再送するようにした。これにより、ファイル送信装置1は、同期パケットに応じてブロックデータをファイル受信装置2へ送信することができ、蓄積したファイルを、適切な帯域にて効率的にかつ確実にファイル受信装置2へ送信することができる。
また、実施例1のファイル送受信システムによれば、ファイル送信装置1のパケット送信手段101とファイル受信装置2のパケット受信手段201との間にはUDPコネクションが張られ、UDP/IPの通信プロトコルによって、データパケットの送受信を行うようにした。UDP/IPは、データパケットの到達の保証がない信頼性の低い通信プロトコルであるが、ファイル送信装置1において、ファイル受信装置2から受信した同期パケットの確認応答により、パケットロスを認識してデータパケットを再送するか否かを判定することができるから、UDP/IPの弱点を補うことができ、信頼性の高いファイル送受信を実現することができる。
また、実施例1のファイル送受信システムによれば、同期パケットに応じてファイルを送受信するようにした。この場合、同期パケットの送信周期は、ファイル受信装置2の同期信号生成手段204において同期信号を生成する周期により決定される。したがって、ファイルの転送速度は同期パケットの送信周期に依存することになるから、同期パケットの送信周期を調整することにより、ファイルの転送速度を決定することができる。
〔MXFファイルの場合〕
尚、ファイル送受信システムにより送受信されるファイルが、図19に示したMXFファイルの場合も、前述と同様の手順により処理が行われる。図18に示したファイルを対象にする場合との違いを以下に説明する。
ファイル送信装置1及びファイル受信装置2のユーザー要求受信手段107は、送受信対象であるMXFファイルのファイル名、その蓄積先である蓄積装置105,206、フレームサイズ、タイムコード(フレームの位置を示す情報)、フレーム内のブロック数等の要求情報を、ユーザーの指定により受信し、ファイル送受信処理が行われる前に予め各手段に出力する。
ファイル受信装置2の受信管理手段202は、同期パケットの生成の際に、受信用バッファ207の保存領域をフレーム単位で確保する。確保するサイズは、ユーザー要求受信手段107によりフレームサイズとして予め設定される。
図17を参照して、ファイル受信装置2の受信用バッファ207には、ブロック情報の代わりであるフレーム情報、受信完了フラグ及びデータがフレーム毎に保存される。フレーム情報は、データサイズ、フレーム番号、タイムコード、次のフレームの位置等である。受信完了フラグは、フレーム内のデータが全て揃ったか否かを示すフラグである。データは、データ本体であり、1つのフレームのデータがペイロードサイズのパケット毎に保存される。
ファイル受信装置2の受信管理手段202は、送信要求ブロック番号に、タイムコード及びブロック番号、または、フレーム番号及びブロック番号を記述し、同期パケットを生成する。この同期パケットは同期信号毎に生成される。これにより、同期パケット送信手段203から、同期信号毎に生成された同期パケットが順次送信されて、同期パケットに記述された送信要求ブロック番号に対応したデータパケットの送信が要求され、1フレームを受信するまで、同期パケットに対応したブロック毎のデータを受信する。送信要求ブロック番号が記述された1つの同期パケットに対して、1ブロックを受信することができる。
ファイル受信装置2のパケット受信手段201は、受信したデータパケットからMXF GCのValueのデータ等を取り出し、データを受信用バッファ207に保存する。
ファイル受信装置2の受信管理手段202は、受信用バッファ207のデータ領域にデータが欠落なく揃っていると判定した場合、すなわち、フレームにおける全てのデータがデータ領域に格納されていると判定した場合、受信完了フラグを設定して(1をセットして)受信用バッファ207に書き込む。
ファイル受信装置2のデータ出力手段205は、受信用バッファ207の受信完了フラグを監視して、受信完了フラグが設定されていると判定した場合、受信用バッファ207からフレームのデータを読み出し、ファイルとして蓄積装置206に蓄積し、読み出したフレームのデータを削除すると共に、そのフレームのデータに対応するフレーム情報及び受信完了フラグを削除する。これにより、受信用バッファ207において1フレーム分の領域が開放され、受信管理手段202により、新たなフレームが保存される空き領域を確保することが可能となる。
ファイル送信装置1の送信管理手段102は、同期パケット受信手段103から同期パケットを入力し、同期パケットから送信要求ブロック番号(タイムコード及びブロック番号、または、フレーム番号及びブロック番号)を取り出し、ファイル読出要求をデータ入力手段104に出力すると共に、タイムコード及びブロック番号、または、フレーム番号及びブロック番号のデータパケットの送信を要求するための送信要求をパケット送信手段101に出力する。
ファイル送信装置1のデータ入力手段104は、蓄積装置105から読み出したMXFファイルからフレームを取り出し、ブロックに分割し、MXFファイルを構成するK及びLのデータ、並びにVのデータであるブロック毎のデータをパケット送信手段101に出力する。
ファイル送信装置1のパケット送信手段101は、データ入力手段104からデータを入力し、入力したブロック毎のデータをパケットに分割し、図15に示したMXFファイルデータパケットを生成し、送信管理手段102から送信要求ブロック番号(タイムコード及びブロック番号、または、フレーム番号及びブロック番号)の送信要求を入力したときに、そのブロック番号のデータパケットをファイル受信装置2へ送信する。このように、同期パケットによって、送信要求ブロック番号に対応したブロック番号のデータパケットが送信される。
次に、実施例2について説明する。実施例2のファイル送受信システムは、同期パケット及びデータパケットの中継を行い、ファイル送信装置のファイルを、ファイル中継装置及びファイル受信装置に蓄積する処理を行う。
〔構成〕
図2は、実施例2によるファイル送受信システムの構成を示すブロック図である。このファイル送受信システムは、ファイル送信装置1、ファイル受信装置2及びファイル中継装置3を備えて構成され、ファイル送信装置1とファイル中継装置3とはネットワーク10を介して接続され、ファイル中継装置3とファイル受信装置2とはネットワーク10を介して接続される。実施例2のファイル送受信システムは、ファイル送信装置1が、蓄積したファイルをパケット化し、データパケットとしてネットワーク10を介してファイル中継装置3へ送信し、ファイル中継装置3が、データパケットを受信し、ファイルとして蓄積すると共に、データパケットをファイル受信装置2へ送信し、ファイル受信装置2が、データパケットを受信し、ファイルとして蓄積するシステムである。具体的には、ファイル受信装置2が、保存領域を確保してから同期パケットをファイル中継装置3へ送信し、ファイル中継装置3が、ファイル受信装置2から受信する同期パケットに基づいて、保存領域を確保した後に同期パケットをファイル送信装置1へ送信すると共に、ファイル送信装置1から受信するデータパケットをファイル受信装置2へ送信し、ファイル送信装置1が、ファイル中継装置3から受信する同期パケットに基づいて、データパケットをファイル中継装置3へ送信する。
(ファイル中継装置の構成)
ファイル中継装置3は、パケット受信手段201、受信管理手段202、同期パケット送信手段203、データ出力手段205、蓄積装置206、受信用バッファ207、パケット送信手段101、送信管理手段102、同期パケット受信手段103、再送用バッファ106、同期パケット中継手段301及びユーザー要求受信手段107を備えている。
ファイル中継装置3は、図1に示した実施例1のファイル送信装置1及びファイル受信装置2の機能を有し、さらに、同期パケット及びデータパケットを中継して転送する機能を有する。パケット送信手段101、送信管理手段102、同期パケット受信手段103、再送用バッファ106、パケット受信手段201、受信管理手段202、同期パケット送信手段203、データ出力手段205、蓄積装置206、受信用バッファ207及びユーザー要求受信手段107については、実施例1において説明済みであるから、ここでは説明を省略する。ファイル中継装置3は、ファイル受信装置2から同期パケットαを受信し、同期パケットβを生成してファイル送信装置1へ送信するものとする。同期パケットαと同期パケットβとを比較すると、送信要求ブロック番号には同一の情報が記述されるが、確認応答には異なる情報が記述される。同期パケットαの確認応答は、ファイル中継装置3からファイル受信装置2へ送信されたデータパケットを確認するための情報であり、同期パケットβの確認応答は、ファイル送信装置1からファイル中継装置3へ送信されたデータパケットを確認するための情報だからである。
同期パケット中継手段301は、ファイル受信装置2から受信した同期パケットαを、同期パケット受信手段103を介して入力し、入力した同期パケットαをそのまま受信管理手段202に出力する。ここで、ファイル中継装置3がファイル受信装置2から同期パケットαを受信し、同期パケットβを生成してファイル送信装置1へ送信する際に、同期パケットαに記述された送信要求ブロック番号は、同期パケットβによってそのまま中継される。また、同期パケット中継手段301により出力される同期パケットαは、図1に示したファイル受信装置2の同期信号生成手段204により出力される同期信号と同様に、受信管理手段202において、同期パケットβを生成するタイミングの信号として用いられる。
〔ファイル中継処理〕
次に、図2に示した実施例2のファイル送受信システムによる処理について説明する。図7は、ファイル中継装置3の処理を説明するフローチャートであり、図11は、ファイル中継処理を説明するシーケンス図である。図11に示すステップSの番号は、図7に示すステップSの番号に対応している。このファイル中継処理は、ファイル中継装置3が、ファイル送信装置1からファイルを受信し、受信したファイルを蓄積装置206に蓄積し、また、受信したファイルをファイル受信装置2へ送信し、ファイル受信装置2が、受信したファイルを蓄積装置206に蓄積する一連の処理である。
前述のように、ファイル送信装置1、ファイル中継装置3及びファイル受信装置2のユーザー要求受信手段107は、送受信対象のファイル名、その蓄積先である蓄積装置105,206、ファイルサイズ、ブロックサイズ等の要求情報を、ユーザーの指定により受信し、処理が行われる前に予め各手段に出力しているものとする。また、ファイル送信装置1の同期パケット受信手段103とファイル中継装置3の同期パケット送信手段203との間、及び、ファイル中継装置3の同期パケット受信手段103とファイル受信装置2の同期パケット送信手段203との間に、TCPコネクションが張られており、TCP/IPの通信プロトコルが用いられるものとする。また、ファイル送信装置1のパケット送信手段101とファイル中継装置3のパケット受信手段201との間、及び、ファイル中継装置3のパケット送信手段101とファイル受信装置2のパケット受信手段201との間に、UDPコネクションが張られており、UDP/IPの通信プロトコルが用いられるものとする。
(ファイル中継装置の処理)
図7及び図11を参照して、ファイル中継装置3の処理について説明する。ファイル中継装置3の同期パケット受信手段103は、TCP/IPの通信プロトコルによりファイル受信装置2から同期パケットαを受信し、同期パケットαを送信管理手段102に出力した後、同期パケット中継手段301に出力する(ステップS701)。
同期パケット中継手段301は、同期パケット受信手段103から同期パケットαを入力し、入力した同期パケットαを受信管理手段202にそのまま出力することにより、同期パケットαを中継する(ステップS702)。
受信管理手段202は、同期パケット中継手段301から同期パケットαを入力し、その入力タイミングで、同期パケットαに記述された送信要求ブロック番号のデータを保存するための領域を確保し、同期パケットαに記述された送信要求ブロック番号を、同期パケットβの送信要求ブロック番号にそのまま記述する(ステップS703)。このステップS703の処理は、図5に示したステップS502〜ステップS506の処理と同様である。同期パケットαに送信要求ブロック番号が記述されていない場合は、領域確保の処理を行わず、同期パケットβの送信要求ブロック番号への記述も行わない。
受信管理手段202は、同期パケットβの確認応答を削除し、後述するステップS707において確認応答が生成されている場合、その確認応答を記述した同期パケットβを生成する(ステップS704)。受信管理手段202は、生成した同期パケットβを同期パケット送信手段203に出力する。
同期パケット送信手段203は、受信管理手段202から入力した同期パケットβを、TCP/IPの通信プロトコルによってファイル送信装置1へ送信する(ステップS705)。
このように、ファイル中継装置3は、ファイル受信装置2から同期パケットαを受信し、同期パケットαに記述された送信要求ブロック番号と同じ番号、及び、生成した確認応答を同期パケットβに記述し、同期パケットβをファイル送信装置1へ送信する。これにより、同期パケットの中継を行うことができる。
パケット受信手段201は、UDP/IPの通信プロトコルによってファイル送信装置1からデータパケットを受信する(ステップS706)。受信するデータパケットは、同期パケットβに記述された送信要求ブロック番号のデータパケットである。パケット受信手段201は、データパケットからペイロードサイズ、ブロック番号、パケット番号、マーカービット、データポジション、ペイロードのデータ等を取り出し、ブロック番号、パケット番号及びマーカービットを受信管理手段202に出力する。
受信管理手段202は、パケット受信手段201からブロック番号、パケット番号及びマーカービットを入力し、入力したこれらの情報に基づいて、所定のタイミングにて、確認応答ブロック番号、受信開始パケット番号及び受信終了パケット番号の確認応答を生成する(ステップS707)。そして、ステップS704へ移行して同期パケットを生成する。
パケット受信手段201は、受信したデータパケットから取り出したペイロードサイズ及びデータポジションを用いて、ペイロードのデータを取り出し、受信用バッファ207に保存する(ステップS708)。
受信管理手段202は、受信用バッファ207のデータ領域を監視し、データ領域にデータが欠落なく揃っていると判定した場合、受信完了フラグを設定して(1をセットして)受信用バッファ207に書き込む。
送信管理手段102は、同期パケット受信手段103から同期パケットを入力し、同期パケットから確認応答を取り出し、確認応答のブロック番号及びパケット番号と、送信済みのデータパケットについて記憶しているブロック番号及びパケット番号とを比較し、欠落番号があるかないかを判定し、前述したデータパケットの欠落処理を行う(ステップS709)。このステップS709の処理は、図6に示したステップS602〜ステップS605の処理と同様である。
送信管理手段102は、同期パケットから送信要求ブロック番号を取り出し(ステップS710)、受信用バッファ207からその送信要求ブロック番号のデータを読み出すためのブロック読出要求をデータ出力手段205に出力する。また、送信管理手段102は、送信要求ブロック番号のデータパケットに対する送信要求をパケット送信手段101に出力する。
データ出力手段205は、送信管理手段102からブロック読出要求を入力し、受信用バッファ207にその送信要求ブロック番号の全データが揃ったことを、ブロック情報及び受信完了フラグによって判定し、受信用バッファ207からブロックのデータを読み出し、ファイルとして蓄積装置206に蓄積し、読み出したブロックのデータを受信用バッファ207から削除すると共に、そのブロックのデータに対応するブロック情報及び受信完了フラグを削除する(ステップS711)。このステップS711の処理は、図5に示したステップS512〜ステップS514の処理と同様である。尚、データ出力手段205は、受信用バッファ207に送信要求ブロック番号の全データが揃っていないと判定した場合、全データが揃うまで待機する。また、データ出力手段205は、受信用バッファ207から読み出した送信要求ブロック番号のデータを、パケット送信手段101に出力する。
パケット送信手段101は、データ出力手段205から送信要求ブロック番号のデータを入力し、入力したデータをパケットに分割してデータパケットを生成し、送信管理手段102から送信要求ブロック番号のデータパケットに対する送信要求を入力したときに、データパケットを、UDP/IPの通信プロトコルによってファイル受信装置2へ送信する(ステップS712)。また、パケット送信手段101は、送信済みのデータパケットを、送信管理手段102を介して再送用バッファ106に保存する(ステップS713)。また、送信管理手段102は、パケット送信手段101がデータパケットを再送用バッファ106に保存する際に、そのデータパケットについてのブロック番号及びパケット番号を記憶する。
そして、ファイル中継装置3は、ファイル転送が完了して処理を終了するまで、ステップS701〜ステップS713の処理を行う(ステップS714)。
このように、ファイル中継装置3は、ファイル送信装置1からデータパケットを受信し、ファイルとして蓄積装置206に蓄積すると共に、ファイル受信装置2へ送信し、ファイル受信装置2は、ファイル中継装置3からデータパケットを受信し、ファイルとして蓄積装置206に蓄積する。これにより、データパケットの中継を行うことができる。
以上のように、実施例2のファイル中継装置3によれば、ファイル受信装置2から、送信要求ブロック番号が記述された同期パケットαを受信し、保存領域を確保した後に、同じ送信要求ブロック番号を記述した同期パケットβをファイル送信装置1へ送信するようにした。また、ファイル送信装置1から、同期パケットβに対する送信要求ブロック番号のデータパケットを受信して蓄積装置206にファイルとして蓄積すると共に、同期パケットαに対する送信要求ブロック番号のデータパケットをファイル受信装置2へ送信するようにした。これにより、ファイル送信装置1に蓄積されていたファイルは、ファイル送信装置1からファイル中継装置3へ、ファイル中継装置3からファイル受信装置2へと直列的に送信され、同一のファイルとして、ファイル中継装置3の蓄積装置206及びファイル受信装置2の蓄積装置206に蓄積することができる。従来は、ファイル送信装置1と複数のファイル受信装置2との間でファイルを送受信し、複数のファイル受信装置2にファイルを蓄積する場合に、帯域が分割され、ファイルを蓄積するまで時間がかかっていた。実施例2ではこのような問題はなく、ファイルを送受信しながら蓄積するようにしたから、ファイルを蓄積するまでの時間を短縮することができる。
〔MXFファイルの場合〕
尚、ファイル送受信システムにより送受信されるファイルが、図19に示したMXFファイルの場合も、前述と同様の手順により処理が行われる。図18に示したファイルを対象にする場合との違いを以下に説明する。
実施例1において説明した違いの他、ファイル中継装置3の送信管理手段102は、同期パケットの送信要求ブロック番号に新たなフレーム番号が記述されていた場合、フレーム読出要求をデータ出力手段205に出力し、データ出力手段205は、送信管理手段102からのフレーム読出要求に従って、そのフレームのデータを受信用バッファ207から読み出して蓄積装置206に蓄積し、パケット送信手段101に出力する。
ファイル中継装置3の同期パケット中継手段301は、同期パケット受信手段103から同期パケットαを入力し、入力した同期パケットαをそのまま受信管理手段202に出力することにより、同期パケットαを中継する。また、受信管理手段202は、同期パケット中継手段301から同期パケットαを入力し、その入力タイミングで、同期パケットαに記述された送信要求ブロック番号が示すフレーム番号のデータを保存するための領域を受信用バッファ207に確保し、同期パケットαに記述された送信要求ブロック番号を、同期パケットβの送信要求ブロック番号にそのまま記述し、同期パケットβを生成する。
次に、実施例3について説明する。実施例3のファイル送受信システムは、ファイルを送受信しながら、ファイル差替え中継装置及びファイル差替え受信装置において、元のファイルの一部を、ファイル送信装置から受信したデータに差替え、新たなファイルとして蓄積する処理を行う。
〔構成〕
図3は、実施例3によるファイル送受信システムの構成を示すブロック図である。このファイル送受信システムは、ファイル送信装置1、ファイル差替え中継装置4及びファイル差替え受信装置5を備えて構成され、ファイル送信装置1とファイル差替え中継装置4とはネットワーク10を介して接続され、ファイル差替え中継装置4とファイル差替え受信装置5とはネットワーク10を介して接続される。実施例3のファイル送受信システムは、ファイル送信装置1が、蓄積したファイルをパケット化し、データパケットとしてネットワーク10を介してファイル差替え中継装置4へ送信し、ファイル差替え中継装置4が、蓄積していた元のファイルの一部を、受信したデータパケットのデータに差替える。また、ファイル差替え中継装置4が、受信したデータパケットをファイル差替え受信装置5へ送信し、ファイル差替え受信装置5が、蓄積していた元のファイルの一部を、受信したデータパケットのデータに差替える。
(ファイル差替え中継装置の構成)
ファイル差替え中継装置4は、パケット受信手段201、受信管理手段202、同期パケット送信手段203、データ出力手段205、受信用バッファ207、パケット送信手段101、送信管理手段102、同期パケット受信手段103、蓄積装置105、再送用バッファ106、同期パケット中継手段301、ファイル差替え手段401及びユーザー要求受信手段107を備えている。
ファイル差替え中継装置4は、図2に示した実施例2のファイル中継装置3の機能を有し、さらに、ファイルの一部を差替える機能を有する。すなわち、ファイル差替え中継装置4は、図1に示した実施例1のファイル送信装置1及びファイル受信装置2の機能に加え、同期パケット及びデータパケットを中継して転送する機能、及び、ファイルの一部を差替える機能を有する。パケット受信手段201、受信管理手段202、同期パケット送信手段203、データ出力手段205、受信用バッファ207、パケット送信手段101、送信管理手段102、同期パケット受信手段103、蓄積装置105、再送用バッファ106、同期パケット中継手段301及びユーザー要求受信手段107については、実施例1,2において説明済みであるから、ここでは説明を省略する。尚、データ出力手段205の代わりにファイル差替え手段401が、受信用バッファ207から読み出したデータを蓄積装置105に蓄積する。ファイル差替え中継装置4は、ファイル差替え受信装置5から同期パケットαを受信し、同期パケットβを生成してファイル送信装置1へ送信するものとする。同期パケットα及び同期パケットβは、実施例2と同様である。
ファイル差替え手段401は、受信用バッファ207からブロック単位のデータを読み出し、蓄積装置105に蓄積されているファイルの一部を、読み出したデータに差替えて新たなファイルを生成し、差替え後のファイルとして蓄積装置105に蓄積する。尚、元のファイルにおいて差替える位置、及び差替えるデータ等については、ユーザー要求受信手段107により予め設定されているものとする。
(ファイル差替え受信装置の構成)
ファイル差替え受信装置5は、パケット受信手段201、受信管理手段202、同期パケット送信手段203、同期信号生成手段204、蓄積装置206、受信用バッファ207、ファイル差替え手段401及びユーザー要求受信手段107を備えている。
ファイル差替え受信装置5は、図1に示した実施例1のファイル受信装置2の機能を有し、さらに、ファイルの一部を差替える機能を有する。パケット受信手段201、受信管理手段202、同期パケット送信手段203、同期信号生成手段204、蓄積装置206、受信用バッファ207及びユーザー要求受信手段107については、実施例1において説明済みであるから、ここでは説明を省略する。
ファイル差替え手段401は、前述したファイル差替え中継装置4のファイル差替え手段401の機能に加え、受信用バッファ207からブロックのデータを読み出した後、そのデータ、ブロック情報及び受信完了フラグを削除する。
〔ファイル差替え処理〕
次に、図3に示した実施例3のファイル送受信システムによる処理について説明する。図8は、ファイル差替え中継装置4の処理を説明するフローチャートであり、図12は、ファイル差替え処理を説明するシーケンス図である。図12に示すステップSの番号は、図8に示すステップSの番号に対応している。このファイル差替え処理は、ファイル差替え中継装置4が、ファイル送信装置1からファイルを受信し、蓄積装置105に蓄積している元のファイルの一部を、受信したファイルのデータに差替えて蓄積装置105に蓄積し、受信したファイルをファイル差替え受信装置5へ送信し、ファイル差替え受信装置5が、蓄積装置206に蓄積している元のファイルの一部を、受信したファイルのデータに差替えて蓄積装置206に蓄積する一連の処理である。
前述のように、ファイル送信装置1、ファイル差替え中継装置4及びファイル差替え受信装置5のユーザー要求受信手段107は、送受信対象のファイル名、その蓄積先である蓄積装置105,206、ファイルサイズ、ブロックサイズ、差替え対象のファイル名、差替えデータの位置等の要求情報を、ユーザーの指定により受信し、処理が行われる前に予め各手段に出力しているものとする。また、ファイル送信装置1の同期パケット受信手段103とファイル差替え中継装置4の同期パケット送信手段203との間、及び、ファイル差替え中継装置4の同期パケット受信手段103とファイル差替え受信装置5の同期パケット送信手段203との間に、TCPコネクションが張られており、TCP/IPの通信プロトコルが用いられるものとする。また、ファイル送信装置1のパケット送信手段101とファイル差替え中継装置4のパケット受信手段201との間、及び、ファイル差替え中継装置4のパケット送信手段101とファイル差替え受信装置5のパケット受信手段201との間に、UDPコネクションが張られており、UDP/IPの通信プロトコルが用いられるものとする。
(ファイル差替え中継装置の処理)
図8及び図12を参照して、ファイル差替え中継装置4の処理について説明する。図8及び図12のステップS801〜ステップS808の処理は、図7及び図11に示したステップS701〜ステップS708の処理と同様である。すなわち、ファイル差替え中継装置4の同期パケット受信手段103は、ファイル差替え受信装置5から同期パケットαを受信し、受信管理手段202は、同期パケット受信手段103から同期パケット中継手段301を介して同期パケットαを入力し、受信用バッファ207に領域を確保して同期パケットβを生成し、同期パケット送信手段203は、同期パケットβをファイル送信装置1へ送信する。
同期パケットαの送信要求ブロック番号には、ファイル送信装置1からのデータを、ファイル差替え受信装置5に蓄積された元のファイルの一部に差替える際の、ファイル送信装置1に蓄積されたファイル内のデータ位置、すなわち、ファイル送信装置1に蓄積されたファイルのブロック番号が記述される。このブロック番号は、差替えデータの位置の要求情報として、ファイル差替え受信装置5のユーザー要求受信手段107により予め設定される。
このように、ファイル差替え中継装置4は、ファイル差替え受信装置5から同期パケットαを受信し、同期パケットαに記述された送信要求ブロック番号と同じ番号、及び、生成した確認応答を同期パケットβに記述し、同期パケットβをファイル送信装置1へ送信する。これにより、同期パケットの中継を行うことができる。
また、パケット受信手段201は、ファイル送信装置1からデータパケットを受信し、データパケットからデータを取り出し受信用バッファ207に保存する。
この場合、ファイル送信装置1は、ファイル差替え中継装置4から同期パケットβを受信し、同期パケットβから送信要求ブロック番号を取り出し、ユーザー要求受信手段107により予め設定された差替え対象のファイル名(差替え元のファイル名)及び差替えデータの位置(差替え元のファイルにおけるデータ位置)の要求情報を参照して、蓄積装置105から差替え元のファイルを読み出し、送信要求ブロック番号のデータをデータパケットとして送信する。
ファイル差替え手段401は、受信用バッファ207にブロック毎の全データが揃ったことを受信完了フラグによって判定する(ステップS809)。ファイル差替え手段401は、ブロック毎の全データが揃ったことを判定した場合(ステップS809:Y)、受信用バッファ207からブロックのデータを読み出し、ユーザー要求受信手段107により予め設定された情報に従って、蓄積装置105に格納されているファイルの一部を、受信用バッファ207から読み出したブロックのデータに差替えて新たなファイルを生成し、差替え後のファイルとして蓄積装置105に蓄積する。一方、ブロック毎の全データが揃っていないと判定した場合、ステップS816へ移行する。
図8及び図12のステップS811〜ステップS815の処理は、図7及び図11に示したステップS711の一部の処理を除きステップS709〜ステップS713の処理と同様である。すなわち、ファイル差替え中継装置4の送信管理手段102は、同期パケット受信手段103から入力した同期パケットαの確認応答を取り出し、確認応答のブロック番号及びパケット番号と、送信済みのデータパケットについて記憶しているブロック番号及びパケット番号とを比較し、欠落番号があるかないかを判定し、前述したデータパケットの欠落処理を行う。また、送信管理手段102は、同期パケットαから送信要求ブロック番号を取り出し、データ出力手段205は、送信要求ブロック番号のデータを受信用バッファ207から読み出し、パケット送信手段101は、データパケットをファイル差替え受信装置5へ送信し、送信済みのデータパケットを、送信管理手段102を介して再送用バッファ106に保存する。また、送信管理手段102は、そのデータパケットについてのブロック番号及びパケット番号を記憶する。
そして、ファイル差替え中継装置4は、ファイル転送が完了して処理を終了するまで、ステップS801〜ステップS815の処理を行う(ステップS816)。
このように、ファイル差替え中継装置4は、ファイル送信装置1からデータパケットを受信し、元のファイルの一部を、受信したデータパケットのデータに差替えて蓄積装置105に蓄積すると共に、データパケットをファイル差替え受信装置5へ送信するようにした。これにより、ファイルの差替えを行うと共に、データパケットの中継を行うことができる。尚、差替え前後のデータサイズは、必ずしも一致していなくてもよい。
以上のように、実施例3のファイル差替え中継装置4によれば、ファイル差替え受信装置5から、差替えデータの送信要求ブロック番号が記述された同期パケットαを受信し、保存領域を確保した後に、同じ送信要求ブロック番号を記述した同期パケットβをファイル送信装置1へ送信するようにした。また、ファイル送信装置1から、同期パケットβに対する送信要求ブロック番号のデータパケットを受信し、元のファイルの一部を、受信したデータパケットのデータに差替え新たなファイルとして蓄積装置105に蓄積すると共に、同期パケットαに対する送信要求ブロック番号のデータパケットをファイル差替え受信装置5へ送信するようにした。これにより、ファイル送信装置1に蓄積されていたファイルは、ファイル送信装置1からファイル差替え中継装置4へ、適切な帯域にて効率的にかつ確実に送信される。また、元のファイルの一部は、受信したデータに差替えられ、差替え後のファイルとして蓄積装置105に蓄積される。従来は、ファイルの受信が完了した後に差替え処理を行っていたが、実施例3では、ファイルの一部のデータを受信して差替えを行うから、差替え完了までの時間を短縮することができ、効率的な処理を実現できる。また、ネットワーク資源及び蓄積領域を節減できる。
(ファイル差替え受信装置の処理)
ファイル差替え受信装置5による同期パケットを生成して送信する処理、データパケットを受信して受信用バッファ207に保存し、ファイルの一部を差替える処理は、ファイル差替え中継装置4と同様である。この場合、受信管理手段202は、同期信号生成手段204から入力した同期信号のタイミングにて、差替えデータの送信要求ブロック番号を記述した同期パケットαを生成する。また、受信用バッファ207に保存されたブロック毎のデータ等については、ファイル差替え手段401により読み出され、削除される。
以上のように、実施例3のファイル差替え受信装置5によれば、保存領域を確保した後に、差替えデータの送信要求ブロック番号を記述した同期パケットαを、ファイル差替え中継装置4へ送信するようにした。また、ファイル差替え中継装置4から、同期パケットαに対する送信要求ブロック番号のデータパケットを受信し、元のファイルの一部を、受信したデータパケットのデータに差替え、新たなファイルとして蓄積装置206に蓄積するようにした。これにより、ファイル送信装置1に蓄積されていたファイルは、ファイル差替え中継装置4を介してファイル差替え受信装置5へ、適切な帯域にて効率的にかつ確実に送信される。また、元のファイルの一部は、受信したデータに差替えられ、差替え後のファイルとしてファイル差替え受信装置5の蓄積装置206に蓄積される。ファイル差替え中継装置4と同様に、処理時間の短縮化を図り、ネットワーク資源及び蓄積領域を蓄積できる。
〔MXFファイルの場合〕
尚、ファイル送受信システムにより送受信されるファイルが、図19に示したMXFファイルの場合も、前述と同様の手順により処理が行われる。図18に示したファイルを対象にする場合との違いを以下に説明する。
実施例1,2において説明した違いの他、ファイル差替え中継装置4及びファイル差替え受信装置5のユーザー要求受信手段107は、差替え対象のMXFファイル名、及び差替え位置を示すタイムコードまたはフレーム番号等の要求情報を、ユーザーの指定により受信し、ファイル送受信処理が行われる前に予め各手段に出力する。
ファイル差替え中継装置4及びファイル差替え受信装置5のファイル差替え手段401は、受信用バッファ207からフレームのデータを読み出し、予め設定された差替え対象のMXFファイル名、差替え位置を示すタイムコードまたはフレーム番号等の要求情報に従って、蓄積装置105,206に蓄積されているファイルの一部を、読み出したフレームのデータに差替えて新たなファイルを生成し、差替え後のファイルとして蓄積装置105,206に蓄積する。
ファイル差替え中継装置4の送信管理手段102は、同期パケットに記述された送信要求ブロック番号のフレーム番号を取り出し、フレーム読出要求をデータ出力手段205に出力し、データ出力手段205は、送信管理手段102からのフレーム読出要求に従って、受信用バッファ207からそのフレームのデータを読み出し、パケット送信手段101に出力する。
尚、図3に示した実施例3のファイル送受信システムは、ファイル送信装置1、ファイル差替え中継装置4及びファイル差替え受信装置5を備えて構成されるが、ファイル送信装置1及びファイル差替え受信装置5を備えて構成されるようにしてもよい。また、ファイル送受信システムは、ファイル送信装置1、ファイル差替え中継装置4及びファイル受信装置2を備えて構成されるようにしてもよい。
次に、実施例4について説明する。実施例4のファイル送受信システムは、ファイルを送受信しながら、ファイル合成中継装置において、第1のファイル送信装置からのデータと、第2のファイル送信装置からのデータとを合成する処理を行う。以下、合成元のファイル及び合成後のファイルは、いずれも図19に示したMXFファイルとして説明する。
〔構成〕
図4は、実施例4によるファイル送受信システムの構成を示すブロック図である。このファイル送受信システムは、ファイル送信装置1−1,1−2、ファイル合成中継装置6及びファイル差替え受信装置5を備えて構成され、ファイル送信装置1−1,1−2とファイル合成中継装置6とはネットワーク10を介して接続され、ファイル合成中継装置6とファイル差替え受信装置5とはネットワーク10を介して接続される。実施例4のファイル送受信システムは、ファイル送信装置1−1,1−2が、蓄積したファイルをパケット化し、データパケットとしてネットワーク10を介してファイル合成中継装置6へそれぞれ送信し、ファイル合成中継装置6が、ファイル送信装置1−1から受信したデータパケットのデータと、ファイル送信装置1−2から受信したデータパケットのデータとを合成し、合成したデータをデータパケットとしてファイル差替え受信装置5へ送信し、ファイル差替え受信装置5が、ファイル合成中継装置6から受信したデータパケットを、ファイル差替え処理の後に蓄積する。
(ファイル合成中継装置の構成)
ファイル合成中継装置6は、パケット受信手段201−1,201−2、受信管理手段202−1,202−2、同期パケット送信手段203−1,203−2、受信用バッファ207−1,207−2、データ出力手段205、パケット送信手段101、送信管理手段102、同期パケット受信手段103、再送用バッファ106、ファイル合成手段121、同期パケット変換手段122及びユーザー要求受信手段107を備えている。
ファイル合成中継装置6は、図1に示した実施例1のファイル受信装置2の機能を2系統有し、ファイル送信装置1の機能を1系統有し、さらに、ファイルの一部を合成する機能を有する。パケット受信手段201−1、受信管理手段202−1、同期パケット送信手段203−1、受信用バッファ207−1は、ファイル送信装置1−1との間で同期パケットβを送信し、及びデータパケットを受信して保存する処理を行い、パケット受信手段201−2、受信管理手段202−2、同期パケット送信手段203−2、受信用バッファ207−2は、ファイル送信装置1−2との間で同期パケットγを送信し、及びデータパケットを受信して保存する処理を行う。パケット受信手段201−1、201−2、受信管理手段202−1,202−2、同期パケット送信手段203−1,203−2、受信用バッファ207−1,207−2、データ出力手段205、パケット送信手段101、送信管理手段102、同期パケット受信手段103、再送用バッファ106及びユーザー要求受信手段107については、実施例1,2,3において説明済みであるから、ここでは説明を省略する。
ファイル合成中継装置6は、ファイル差替え受信装置5から同期パケットαを受信し、同期パケットαを同期パケットβ’に変換して同期パケットβを生成し、ファイル送信装置1−1へ送信し、同期パケットαを同期パケットγ’に変換して同期パケットγを生成し、ファイル送信装置1−2へ送信するものとする。ファイル合成中継装置6のユーザー要求受信手段107により、ファイル送信装置1−1,1−2が蓄積している合成元のファイルにおけるデータ位置(フレーム番号)、及び合成後のデータ位置(フレーム番号)等の情報が変換テーブルとして予め設定される。したがって、送信要求ブロック番号がフレーム番号及びブロック番号により構成されている場合、同期パケットαを同期パケットβ’に変換する際に、変換テーブルに基づいて、同期パケットαにおける合成後のデータ位置(フレーム番号)が、ファイル送信装置1−1に蓄積されている合成元のファイルにおけるデータ位置(フレーム番号)に変換され、そのフレーム番号、及び同期パケットαにおける送信要求ブロック番号のブロック番号が送信要求ブロック番号として同期パケットβ’に記述される。同期パケットαを同期パケットγ’に変換する場合も同様である。同期パケットβの送信要求ブロック番号には、同期パケットβ’の送信要求ブロック番号と同じ番号が記述され、同期パケットγの送信要求ブロック番号には、同期パケットγ’の送信要求ブロック番号と同じ番号が記述される。
ファイル合成手段121は、受信用バッファ207−1,207−2からフレームのデータを読み出し、変換テーブルに従って合成処理を行い、合成後のデータをデータ出力手段205に出力する。このとき、ファイル合成手段121は、変換テーブルに従ってブロック番号を付け直す。
同期パケット変換手段122は、同期パケット受信手段103から同期パケットαを入力し、同期パケットαを同期パケットβ’,γ’に変換し、同期パケットβ’を受信管理手段202−1に出力し、同期パケットγ’を受信管理手段202−2に出力する。具体的には、同期パケット変換手段122は、同期パケットαに記述されている送信要求ブロック番号を取り出し、予め設定されている変換テーブルに基づいて、その送信要求ブロック番号に含まれるフレーム番号(合成後のデータ位置(フレーム番号))を合成元のフレーム番号(ファイル送信装置1−1,1−2に蓄積されている合成元のファイルにおけるフレーム番号)に変換し、そのフレーム番号、及び同期パケットαにおける送信要求ブロック番号に含まれるブロック番号を送信要求ブロック番号にそれぞれ記述して同期パケットβ’,γ’をそれぞれ生成する。
〔ファイル合成処理〕
次に、図4に示した実施例4のファイル送受信システムによる処理について説明する。図9は、ファイル合成中継装置6の処理を説明するフローチャートであり、図13は、ファイル合成処理を説明するシーケンス図である。図13に示すステップSの番号は、図9に示すステップSの番号に対応している。このファイル合成処理は、ファイル合成中継装置6が、ファイル送信装置1−1,1−2からデータをそれぞれ受信し、これら2つのデータを合成し、合成したデータをファイル差替え受信装置5へ送信し、ファイル差替え受信装置5が、蓄積装置206に蓄積している元のファイルの一部を、受信したデータに差替える一連の処理である。
前述のように、ファイル送信装置1−1,1−2及びファイル合成中継装置6のユーザー要求受信手段107は、送受信対象のファイル名、その蓄積先である蓄積装置105,206、フレームサイズ、フレーム内のブロック数、合成対象のファイル名(合成元のファイルのファイル名及び合成後のファイルのファイル名)、合成データの位置(合成元のファイルにおけるデータ位置(フレーム番号)、合成後のファイルにおけるデータ位置(フレーム番号))等の要求情報を、ユーザーの指定により受信し、処理が行われる前に予め各手段に出力しているものとする。この合成データの位置に関する要求情報は、ファイル送信装置1−1に蓄積されている合成元のファイルのフレーム番号、ファイル送信装置1−2に蓄積されている合成元のファイルのフレーム番号、合成後のファイルのフレーム番号の対応関係、及び、合成順序等が定義された変換テーブルとして設定される。例えば、ファイル送信装置1−1に蓄積されている合成元のファイル1のフレーム番号11−20、ファイル送信装置1−2に蓄積されている合成元のファイル2のフレーム番号31−40、合成後のファイルのフレーム番号1−20、ファイル1のフレーム番号11−20の後ろにファイル2のフレーム番号31−40を合成する順序とすると、図21に示したように、ファイル1におけるフレーム番号11−20のデータの後ろに、ファイル2におけるフレーム番号31−40のデータが合成され、フレーム番号1−20のデータを有する合成後のファイルが生成される。
また、ファイル差替え受信装置5のユーザー要求受信手段107は、実施例3と同様に、ファイル差替えのための要求情報を、ユーザーの指定により受信し、処理が行われる前に各手段に出力しているものとする。
また、ファイル送信装置1−1,1−2の同期パケット受信手段103とファイル合成中継装置6の同期パケット送信手段203−1,203−2との間、及び、ファイル合成中継装置6の同期パケット受信手段103とファイル差替え受信装置5の同期パケット送信手段203との間に、TCPコネクションが張られており、TCP/IPの通信プロトコルが用いられるものとする。また、ファイル送信装置1−1,1−2のパケット送信手段101とファイル合成中継装置6のパケット受信手段201−1,201−2との間、及び、ファイル合成中継装置6のパケット送信手段101とファイル差替え受信装置5のパケット受信手段201との間に、UDPコネクションが張られており、UDP/IPの通信プロトコルが用いられるものとする。
(ファイル合成中継装置の処理)
図9及び図13を参照して、ファイル合成中継装置6の処理について説明する。ファイル合成中継装置6の同期パケット受信手段103は、ファイル受信装置2から同期パケットαを受信し、同期パケットαを送信管理手段102に出力した後に同期パケット変換手段122に出力する(ステップS901)。同期パケットαの送信要求ブロック番号には、合成後のファイルにおけるフレーム番号及びブロック番号が記述されている。
同期パケット変換手段122は、同期パケット受信手段103から同期パケットαを入力し、予め設定されている変換テーブルに従って、同期パケットαの送信要求ブロック番号に含まれる合成後のフレーム番号を合成元のフレーム番号に変換、そのフレーム番号、及び同期パケットαの送信要求ブロック番号に含まれるブロック番号を送信要求ブロック番号に記述して同期パケットβ’,γ’を生成し、同期パケットβ’を受信管理手段202−1に出力し、同期パケットγ’を受信管理手段202−2に出力する(ステップS902)。例えば、前述のように、変換テーブルに、ファイル送信装置1−1に蓄積されている合成元のファイル1のフレーム番号11−20、ファイル送信装置1−2に蓄積されている合成元のファイル2のフレーム番号31−40、合成後のファイルのフレーム番号1−20が定義されている場合を想定する。同期パケットαの送信要求ブロック番号が1,1(フレーム番号1、ブロック番号1)のときには、同期パケットβ’の送信要求ブロック番号に11,1(フレーム番号11、ブロック番号1)が記述され、同期パケットαの送信要求ブロック番号が11,1(フレーム番号11、ブロック番号1)のときには、同期パケットγ’の送信要求ブロック番号に31,1(フレーム番号31、ブロック番号1)が記述される。
図9及び図13のステップS903〜ステップS908の処理は、図8及び図12に示したステップS803〜ステップS808の処理と同様である。すなわち、ファイル合成中継装置6の受信管理手段202−1,202−2は、同期パケット変換手段122から同期パケットβ’,γ’を入力し、受信用バッファ207−1,207−2にフレームのデータが保存される領域を確保して同期パケットβ,γを生成し、同期パケット送信手段203−1,203−2は、同期パケットβ,γをファイル送信装置1−1,1−2へ送信する。
このように、ファイル合成中継装置6は、ファイル差替え受信装置5から同期パケットαを受信し、同期パケットαに記述された送信要求ブロック番号に含まれるフレーム番号を変換して得た合成元のフレーム番号、同期パケットαに記述された送信要求ブロック番号に含まれるブロック番号と同じ番号、及び確認応答を同期パケットβ,γに記述し、同期パケットβ,γをファイル送信装置1−1,1−2へ送信する。これにより、合成ファイルを生成するための同期パケットαを、合成元のそれぞれのファイルからデータを取得するための同期パケットβ,γに変換することができる。ここで、ファイル合成中継装置6の送信管理手段102、及びファイル差替え受信装置5の受信管理手段202が扱うフレーム番号は、合成後のファイルに対応したフレーム番号であり、ファイル合成中継装置6の受信管理手段202−1,202−2、及びファイル送信装置1−1,1−2の送信管理手段102が扱うフレーム番号は、合成元のファイルに対応したフレーム番号である。
また、パケット受信手段201−1,202−2は、ファイル送信装置1−1,1−2からデータパケットを受信し、フレームのデータを受信用バッファ207−1,207−2に保存し、ステップS915へ移行する。
この場合、ファイル送信装置1−1,1−2は、ファイル合成中継装置6から受信した同期パケットβ,γについて、送信要求ブロック番号に含まれるフレーム番号及びブロック番号を取り出し、ユーザー要求受信手段107により予め設定された合成対象のファイル名(合成元のファイルのファイル名)及び合成データの位置(合成元のファイルにおけるデータ位置(フレーム番号)の要求情報を参照して、蓄積装置105から合成元のファイルを読み出し、送信要求ブロック番号に含まれるフレーム番号かつブロック番号のデータをデータパケットとして送信する。
図9及び図13のステップS909及びステップS910の処理は、図8及び図12に示したステップS811及びステップS812の処理と同様である。すなわち、ファイル合成中継装置6の送信管理手段102は、同期パケット受信手段103から入力した同期パケットαの確認応答を取り出し、確認応答のブロック番号及びパケット番号と、送信済みのデータパケットについて記憶しているブロック番号及びパケット番号とを比較し、欠落番号があるかないかを判定し、前述したデータパケットの欠落処理を行う。また、送信管理手段102は、同期パケットαから送信要求ブロック番号を取り出し、送信要求ブロック番号に含まれるフレーム番号のデータを読み出すためのフレーム読出要求をデータ出力手段205に出力する。
ファイル合成手段121は、予め設定された変換テーブルに従って、受信用バッファ207−1,207−2からフレームのデータを読み出す(ステップS911)。具体的には、ファイル合成手段121は、受信用バッファ207−1に、合成元のファイルにおけるフレーム番号(同期パケットβに記述された送信要求ブロック番号に含まれるフレーム番号)の全データが揃ったことを、フレーム情報及び受信完了フラグによって判定し、受信用バッファ207−1からそのフレームのデータを読み出す。同様に、ファイル合成手段121は、受信用バッファ207−2に、合成元のファイルにおけるフレーム番号(同期パケットγに記述された送信要求ブロック番号に含まれるフレーム番号)の全データが揃ったことを、フレーム情報及び受信完了フラグによって判定し、受信用バッファ207−2からそのフレームのデータを読み出す。そして、ファイル合成手段121は、読み出したフレームのデータを受信用バッファ207−1,207−2から削除すると共に、そのデータに対応するフレーム情報及び受信完了フラグを削除する。尚、ファイル合成手段121は、受信用バッファ207−1,207−2に送信要求ブロック番号が示すフレームの全データが揃っていないと判定した場合、全データが揃うまで待機する。
ファイル合成手段121は、予め設定された変換テーブルに従って、受信用バッファ207−1から読み出したフレームのデータと、受信用バッファ207−2から読み出したフレームのデータとを合成し、合成後のフレームのデータをデータ出力手段205に出力する(ステップS912)。ファイル合成手段121は、フレームのデータを合成する際に、変換テーブルに定義された合成後のファイルにおけるフレーム番号になるよう、合成後のフレームのデータにフレーム番号を付け直す。
前述のように、変換テーブルに、ファイル送信装置1−1に蓄積されている合成元のファイル1のフレーム番号11−20、ファイル送信装置1−2に蓄積されている合成元のファイル2のフレーム番号31−40、合成後のファイルのフレーム番号1−20が定義されている場合、ファイル合成手段121は、合成後のフレームのデータに、フレーム番号1−20を付け直してデータ出力手段205に出力する。
このように、ファイル合成中継装置6は、ファイル送信装置1−1,1−2からそれぞれ受信したフレームを合成し、変換テーブルに従ってフレーム番号を付け直し、合成後のデータを生成することができる。これにより、変換テーブルに従って、フレーム単位の合成を行うことができる。
データ出力手段205は、送信管理手段102からフレーム読出要求を入力し、ファイル合成手段121から合成後のフレームのデータを入力し、フレーム読出要求のフレーム番号に対応するデータをパケット送信手段101に出力する。
パケット送信手段101は、データ出力手段205から、送信要求ブロック番号に含まれるフレーム番号が示すデータを入力し、送信管理手段102から送信要求ブロック番号を入力し、入力したフレームのデータのうち、送信要求ブロック番号に含まれるブロック番号が示すデータをパケットに分割し、データパケットを生成する。そして、パケット送信手段101は、データパケットをファイル差替え受信装置5へ送信する(ステップS913)。また、パケット送信手段101は、送信済みのデータパケットを、送信管理手段102を介して再送用バッファ106に保存する(ステップS914)。また、送信管理手段102は、パケット送信手段101がデータパケットを再送用バッファ106に保存する際に、そのデータパケットについてのブロック番号及びパケット番号を記憶する。
そして、ファイル合成中継装置6は、ファイル転送が完了して処理を終了するまで、ステップS901〜ステップS914の処理を行う(ステップS915)。
一方、ファイル差替え受信装置5は、図3に示したファイル差替え受信装置5と同様に、ファイル合成中継装置6からデータパケットを受信し、ユーザー要求受信手段107により予め設定された要求情報に従って、蓄積装置206に蓄積されている元のファイルの一部を、受信したデータパケットのデータに差替えて蓄積装置206に蓄積する。尚、差替え前後のフレームサイズは、必ずしも一致していなくてもよい。
以上のように、実施例4のファイル合成中継装置6によれば、ファイル差替え受信装置5から、送信要求ブロック番号(合成後のファイルにおけるフレーム番号及びブロック番号)が記述された同期パケットαを受信し、変換テーブルに従って合成元のフレーム番号に変換して同期パケットβ,γを生成し、受信用バッファ207−1,207−2にフレームサイズの保存領域を確保した後、ファイル送信装置1−1,1−2へ送信するようにした。また、ファイル送信装置1−1,1−2から、同期パケットβ,γに対するデータパケットを受信し、変換テーブルに従って、フレームのデータを合成し、合成後のフレームのデータを、同期パケットαに対するデータパケットとしてファイル差替え受信装置5へ送信するようにした。これにより、ファイル送信装置1−1,1−2に蓄積されていたファイルは、ファイル送信装置1−1,1−2からファイル合成中継装置6へ、適切な帯域にて効率的にかつ確実に送信される。また、受信したデータは合成され、合成後のデータとしてファイル差替え受信装置5へ送信される。ファイル差替え受信装置5は、蓄積装置206に蓄積されている元のファイルの一部を、受信した合成後のデータに差替えて蓄積装置206に蓄積する。従来は、ファイルの受信が完了した後に合成処理を行っていたが、実施例4では、ファイルの一部のデータを受信して合成処理を行うから、合成処理完了までの時間を短縮することができ、効率的な処理を実現できる。また、ネットワーク資源及び蓄積領域を節減できる。尚、図18に示したファイルについても同様に、ファイル合成処理を行うことができる。
尚、図4に示した実施例4のファイル送受信システムは、ファイル送信装置1−1,1−2、ファイル合成中継装置6及びファイル差替え受信装置5を備えて構成されるが、ファイル送信装置1−1,1−2、ファイル合成中継装置6及びファイル受信装置2を備えて構成されるようにしてもよい。また、ファイル送受信システムは、ファイル送信装置1−1,1−2及びファイル合成受信装置を備えて構成されるようにしてもよい。この場合、ファイル合成受信装置は、パケット受信手段201−1,201−2、受信管理手段202−1,202−2、同期パケット送信手段203−1,203−2、受信用バッファ207−1,207−2、ファイル合成手段121、蓄積装置206、同期信号生成手段204及びユーザー要求受信手段107を備えており、ファイル合成手段121が、合成したデータをファイルとして蓄積装置206に蓄積する。また、ファイル送受信システムは、ファイル送信装置1及びファイル合成受信装置を備えて構成されるようにしてもよい。この場合、ファイル合成受信装置は、前述のファイル合成受信装置と同じ構成をしており、ファイル合成手段121が、蓄積装置206に蓄積されたファイルの一部と、ファイル送信装置1から受信したファイルの一部とを合成し、合成した新たなファイルを蓄積装置206に蓄積する。
尚、本発明の実施形態によるファイル送信装置1、ファイル受信装置2、ファイル中継装置3、ファイル差替え中継装置4、ファイル差替え受信装置5及びファイル合成中継装置6のハード構成としては、通常のコンピュータを使用することができる。ファイル送信装置1、ファイル受信装置2、ファイル中継装置3、ファイル差替え中継装置4、ファイル差替え受信装置5及びファイル合成中継装置6は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。ファイル送信装置1、ファイル受信装置2、ファイル中継装置3、ファイル差替え中継装置4、ファイル差替え受信装置5及びファイル合成中継装置6に備えた各構成手段の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもできる。
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、図4に示した実施例4のファイル合成を行うファイル送受信システムでは、ファイル合成中継装置6が、ファイル送信装置1−1の蓄積装置105に蓄積されている合成元のファイルにおけるフレーム番号のフレームデータの後ろに、別のファイル送信装置1−2の蓄積装置105に蓄積されている合成元のファイルにおけるフレーム番号のフレームデータを結合して合成し、新たなフレーム番号を付したフレームデータを用いて、ファイル差替え受信装置5の蓄積装置206に蓄積されている元のファイルの一部を差替えるようにした。本発明の合成処理はこれに限定されるものではない。例えば、映像フレームにワイプ処理を施して合成後のファイルを生成するために、ネットワーク10を介して受信したファイルと、装置内に蓄積しているファイルとの間で合成を行うようにしてもよい。
また、送受信対象のファイルの例として、図18に示したファイル及び図19に示したMXFファイルを挙げて説明したが、本発明の対象とするファイルはこれらに限定されるものではなく、ブロック単位またはフレーム単位で扱うことができるファイルであればよい。
1 ファイル送信装置
2 ファイル受信装置
3 ファイル中継装置
4 ファイル差替え中継装置
5 ファイル差替え受信装置
6 ファイル合成中継装置
10 ネットワーク
101 パケット送信手段
102 送信管理手段
103 同期パケット受信手段
104 データ入力手段
105,206 蓄積装置
106 再送用バッファ
107 ユーザー要求受信手段
121 ファイル合成手段
122 同期パケット変換手段
201 パケット受信手段
202 受信管理手段
203 同期パケット送信手段
204 同期信号生成手段
205 データ出力手段
207 受信用バッファ
301 同期パケット中継手段
401 ファイル差替え手段

Claims (16)

  1. ファイルのデータをパケット化し、データパケットを送信するファイル送信装置と、前記データパケットを受信し、ファイルを蓄積するファイル受信装置とを備えて構成されるファイル送受信システムにおいて、
    前記ファイル受信装置は、
    ファイルを蓄積する蓄積装置と、
    データを一時的に保存する受信用バッファと、
    前記受信用バッファに所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で生成する受信管理手段と、
    前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、ファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、を備え、
    前記ファイル送信装置は、
    送受信対象のファイルが蓄積された蓄積装置と、
    送信済みのデータパケットを保存する再送用バッファと、
    前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、
    前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、
    前記蓄積装置からファイルを読み出すデータ入力手段と、
    前記送信管理手段から送信要求を入力した場合、前記データ入力手段により読み出されたファイルのデータのうち、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とするファイル送受信システム。
  2. 請求項1に記載のファイル送受信システムにおいて、
    前記ファイル受信装置の受信管理手段は、
    前記受信用バッファに所定領域の空きの有無を判定し、前記空き有りを判定して前記所定領域を確保できた場合、前記所定領域に保存されるデータの送信を要求する情報を記述した同期パケットを生成し、前記空き無しを判定して前記受信用バッファに所定領域を確保できなかった場合、前記所定領域に保存されるデータの送信を要求する情報を記述することなく同期パケットを生成する、ことを特徴とするファイル受信装置。
  3. 請求項1に記載のファイル送受信システムにおいて、
    前記ファイル送信装置の送信管理手段は、
    前記同期パケットに記述された、前記既に受信したデータパケットを識別する情報と、前記パケット送信手段により送信されたデータパケットを識別する情報とを比較し、前記比較により識別する情報が一致しない場合に、前記一致しない情報のデータパケットに対する再送要求を出力する、ことを特徴とするファイル送信装置。
  4. 請求項1に記載のファイル送受信システムにおいて、
    さらに、前記ファイル受信装置と前記ファイル送信装置との間で、同期パケット及びデータパケットを中継し、ファイルを蓄積するファイル中継装置を備え、
    前記ファイル中継装置は、
    ファイルを蓄積する蓄積装置と、
    データを一時的に保存する受信用バッファと、
    送信済みのデータパケットを保存する再送用バッファと、
    前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、
    前記同期パケット受信手段により受信された同期パケットを中継し、前記同期パケットを出力する同期パケット中継手段と、
    前記同期パケット中継手段から前記同期パケットを入力し、前記受信用バッファに所定領域を確保し、前記同期パケットにおけるデータの送信を要求する情報、及び当該ファイル中継装置が既に受信したデータパケットを識別する情報を記述して新たな同期パケットを生成する受信管理手段と、
    前記受信管理手段により生成された新たな同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出して出力し、ファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、
    前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、
    前記データ出力手段からデータを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とするファイル送受信システム。
  5. 請求項1に記載のファイル送信装置と、データパケットを受信し、蓄積していたファイルの一部を、受信したデータパケットのデータに差替えて新たなファイルを蓄積するファイル差替え装置とを備えて構成されるファイル送受信システムにおいて、
    前記ファイル差替え装置は、
    ファイルを蓄積する蓄積装置と、
    データを一時的に保存する受信用バッファと、
    前記受信用バッファに所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で生成する受信管理手段と、
    前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、前記蓄積装置に蓄積されたファイルの一部を、前記読み出したデータに差替え、新たなファイルとして前記蓄積装置に蓄積し、前記受信用バッファの所定領域に保存されたデータを削除するファイル差替え手段と、を備えたことを特徴とするファイル送受信システム。
  6. 請求項1に記載のファイル送信装置及びファイル受信装置と、前記ファイル受信装置と前記ファイル送信装置との間で、同期パケット及びデータパケットを中継し、蓄積していたファイルの一部を、受信したデータパケットのデータに差替えて新たなファイルを蓄積するファイル差替え装置とを備えて構成されるファイル送受信システムにおいて、
    前記ファイル差替え装置は、
    ファイルを蓄積する蓄積装置と、
    データを一時的に保存する受信用バッファと、
    送信済みのデータパケットを保存する再送用バッファと、
    前記ファイル受信装置から同期パケットを受信する同期パケット受信手段と、
    前記同期パケット受信手段により受信された同期パケットを中継し、前記同期パケットを出力する同期パケット中継手段と、
    前記同期パケット中継手段から前記同期パケットを入力し、前記受信用バッファに所定領域を確保し、前記同期パケットにおけるデータの送信を要求する情報、及び当該ファイル中継装置が既に受信したデータパケットを識別する情報を記述して新たな同期パケットを生成する受信管理手段と、
    前記受信管理手段により生成された新たな同期パケットを、前記ファイル送信装置へ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットを受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出して出力し、前記受信用バッファの所定領域に保存されたデータを削除するデータ出力手段と、
    前記受信用バッファの所定領域にデータが保存されたときに、前記データを読み出し、前記蓄積装置に蓄積されたファイルの一部を、前記読み出したデータに差替え、新たなファイルとして前記蓄積装置に蓄積するファイル差替え手段と、
    前記同期パケット受信手段により受信された同期パケットから、データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、
    前記データ出力手段からデータを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示すデータをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とするファイル送受信システム。
  7. 請求項1に記載のファイル送信装置を複数備え、請求項1に記載のファイル受信装置と、前記複数のファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットのデータを合成してパケット化し、前記パケット化したデータパケットを前記ファイル受信装置へ送信するファイル合成装置とを備えて構成されるファイル送受信システムにおいて、
    前記ファイル合成装置は、
    前記複数のファイル送信装置にそれぞれ蓄積されたファイルのデータと、前記それぞれのデータを合成して得られる合成データとの間の対応関係が定義されたテーブルと、
    データを一時的に保存する受信用バッファと、
    送信済みのデータパケットを保存する再送用バッファと、
    前記ファイル受信装置から、前記合成データの送信を要求する情報が記述された同期パケットを受信する同期パケット受信手段と、
    前記同期パケット受信手段により受信された同期パケットを、前記テーブルに従って変換することにより、前記ファイル送信装置に蓄積されたファイルのデータの送信を要求する情報を第2の同期パケットに記述し、前記第2の同期パケットを前記ファイル送信装置毎に生成して出力する同期パケット変換手段と、
    前記同期パケット変換手段から前記第2の同期パケットを入力し、前記受信用バッファに、前記ファイル送信装置毎の所定領域を確保し、前記第2の同期パケットにおけるデータの送信を要求する情報、及び当該ファイル合成装置が既に受信したデータパケットを識別する情報を第3の同期パケットに記述し、前記第3の同期パケットを前記ファイル送信装置毎に生成する受信管理手段と、
    前記受信管理手段により生成された第3の同期パケットを、前記ファイル送信装置へそれぞれ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記ファイル送信装置毎に前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファにおける前記ファイル送信装置毎の所定領域にデータが保存されたときに、前記データを読み出し、前記テーブルに従って前記ファイル送信装置毎のデータを合成し合成データを出力し、前記受信用バッファにおける前記ファイル送信装置毎の所定領域に保存されたデータを削除するファイル合成手段と、
    前記同期パケット受信手段により受信された同期パケットから、前記合成データの送信を要求する情報、及び既に受信したデータパケットを識別する情報を取り出し、前記合成データの送信を要求する情報に基づいて送信要求を出力し、前記既に受信したデータパケットを識別する情報に基づいてデータパケットの再送要求を出力する送信管理手段と、
    前記ファイル合成手段から合成データを入力し、前記送信管理手段から送信要求を入力した場合、前記送信要求が示す合成データをパケット化し、パケットデータを前記ファイル受信装置へ送信すると共に、前記パケットデータを前記再送用バッファに保存し、前記送信管理手段から再送要求を入力した場合、前記再送要求が示すデータパケットを前記再送用バッファから読み出し、前記読み出したデータパケットを前記ファイル受信装置へ送信するパケット送信手段と、を備えたことを特徴とするファイル送受信システム。
  8. 請求項1に記載のファイル送信装置を複数備え、前記複数のファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットのデータを合成してファイルを蓄積するファイル合成装置を備えて構成されるファイル送受信システムにおいて、
    前記ファイル合成装置は、
    ファイルを蓄積する蓄積装置と、
    データを一時的に保存する受信用バッファと、
    前記受信用バッファに前記ファイル送信装置毎の所定領域を確保し、前記所定領域に保存されるデータの送信を要求する情報、及び既に受信したデータパケットを識別する情報を記述した同期パケットを、所定周期で前記ファイル送信装置毎に生成する受信管理手段と、
    前記受信管理手段により生成された同期パケットを、前記ファイル送信装置へそれぞれ送信する同期パケット送信手段と、
    前記ファイル送信装置からデータパケットをそれぞれ受信し、前記データパケットから当該データパケットを識別する情報及びデータを取り出し、前記識別情報を前記受信管理手段に出力し、前記データを前記ファイル送信装置毎に前記受信用バッファに保存するパケット受信手段と、
    前記受信用バッファにおける前記ファイル送信装置毎の所定領域にデータが保存されたときに、前記データを読み出し、前記ファイル送信装置毎のデータを合成しファイルとして前記蓄積装置に蓄積し、前記受信用バッファにおける前記ファイル送信装置毎の所定領域に保存されたデータを削除するファイル合成手段と、を備えたことを特徴とするファイル送受信システム。
  9. 請求項1、4から8までのいずれか一項に記載のファイル送受信システムにおいて、
    前記同期パケットには、前記データの送信を要求する情報として、ファイルを所定サイズに分割した際のブロックデータの番号が記述される、ことを特徴とするファイル送受信システム。
  10. 請求項1、4から8までのいずれか一項に記載のファイル送受信システムにおいて、
    前記ファイルを、複数のフレームにより構成された映像及び音声用ファイルとし、前記同期パケットには、前記データの送信を要求する情報として、前記映像及び音声用ファイルにおけるフレームの番号及びブロックの番号、または、前記映像及び音声ファイル内の位置を示すタイムコード及びブロックの番号が記述される、ことを特徴とするファイル送受信システム。
  11. 請求項1に記載のファイル送受信システムに備えたファイル受信装置。
  12. 請求項1に記載のファイル送受信システムに備えたファイル送信装置。
  13. 請求項4に記載のファイル送受信システムに備えたファイル中継装置。
  14. 請求項5または6に記載のファイル送受信システムに備えたファイル差替え装置。
  15. 請求項7または8に記載のファイル送受信システムに備えたファイル合成装置。
  16. コンピュータを、請求項2若しくは11に記載のファイル受信装置、請求項3若しくは12に記載のファイル送信装置、請求項13に記載のファイル中継装置、請求項14に記載のファイル差替え装置、または請求項15に記載のファイル合成装置として機能させるためのプログラム。
JP2009221431A 2009-09-25 2009-09-25 ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム Expired - Fee Related JP5232115B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009221431A JP5232115B2 (ja) 2009-09-25 2009-09-25 ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009221431A JP5232115B2 (ja) 2009-09-25 2009-09-25 ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2011071764A true JP2011071764A (ja) 2011-04-07
JP5232115B2 JP5232115B2 (ja) 2013-07-10

Family

ID=44016596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009221431A Expired - Fee Related JP5232115B2 (ja) 2009-09-25 2009-09-25 ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5232115B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106910326A (zh) * 2015-12-22 2017-06-30 霍尼韦尔国际公司 报警设备校准方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09307535A (ja) * 1996-05-15 1997-11-28 Matsushita Electric Ind Co Ltd データ伝送方法
JP2002542661A (ja) * 1999-04-09 2002-12-10 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Arqプロトコルにおけるフィードバック応答を最小化する方法
JP2004080070A (ja) * 2002-08-09 2004-03-11 Nippon Telegr & Teleph Corp <Ntt> データ転送方法及びデータ転送システム並びにコンテンツ配信システム
JP2006325103A (ja) * 2005-05-20 2006-11-30 Nippon Hoso Kyokai <Nhk> コンテンツ送信装置及びそのプログラム、並びに、コンテンツ受信装置及びそのプログラム
JP2009081567A (ja) * 2007-09-25 2009-04-16 Oki Electric Ind Co Ltd 再送制御システム、再送制御方法、送信機及び受信機

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09307535A (ja) * 1996-05-15 1997-11-28 Matsushita Electric Ind Co Ltd データ伝送方法
JP2002542661A (ja) * 1999-04-09 2002-12-10 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Arqプロトコルにおけるフィードバック応答を最小化する方法
JP2004080070A (ja) * 2002-08-09 2004-03-11 Nippon Telegr & Teleph Corp <Ntt> データ転送方法及びデータ転送システム並びにコンテンツ配信システム
JP2006325103A (ja) * 2005-05-20 2006-11-30 Nippon Hoso Kyokai <Nhk> コンテンツ送信装置及びそのプログラム、並びに、コンテンツ受信装置及びそのプログラム
JP2009081567A (ja) * 2007-09-25 2009-04-16 Oki Electric Ind Co Ltd 再送制御システム、再送制御方法、送信機及び受信機

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106910326A (zh) * 2015-12-22 2017-06-30 霍尼韦尔国际公司 报警设备校准方法及系统

Also Published As

Publication number Publication date
JP5232115B2 (ja) 2013-07-10

Similar Documents

Publication Publication Date Title
EP1397899B1 (en) Real-time packetization and retransmission in streaming applications
JP5141197B2 (ja) 符号化装置
EP2823616B1 (en) Method, device and system for packet transmission over ip networks
US7978734B2 (en) Multichannel MAC data stream for wireless communication
JP2016517198A (ja) 改善された確認応答および再送機構
JP6516767B2 (ja) Mmtpデカプセル化バッファのシグナリング及び動作
JP4814864B2 (ja) パケット多重化装置及びパケット多重化プログラム
JP4580277B2 (ja) コンテンツ送信装置及びそのプログラム、並びに、コンテンツ受信装置及びそのプログラム
JP5232115B2 (ja) ファイル送受信システム、ファイル受信装置、ファイル送信装置、ファイル中継装置、ファイル差替え装置、ファイル合成装置及びプログラム
US10567852B2 (en) Transmission device, transmission method, reception device, reception method, and program
JP2014212373A (ja) 多重分離伝送システム
JP2008131599A (ja) キャスト伝送装置及びキャスト伝送方法
KR100919216B1 (ko) 데이터 송신 방법, 수신 방법 및 그 장치
JP6462423B2 (ja) 伝送装置、伝送プログラムおよび伝送方法
KR101992061B1 (ko) 데이터 전송 장치 및 그 방법
JP2008278240A (ja) 通信システム、通信装置、および通信方法、並びにプログラム
JP6514570B2 (ja) パケット転送システム、中継装置、パケット転送方法及びプログラム
JP2019161293A (ja) 無線通信システム、時刻同期方法および時刻同期プログラム
JP6875474B2 (ja) 通信システムおよび通信方法
JP7031932B2 (ja) 放送信号送信装置および放送信号送信方法
JP2009206998A (ja) 通信装置
JP5942583B2 (ja) 通信中継システム、通信中継方法、パケット送信装置、及び、パケット受信装置
JP3930842B2 (ja) パケット送信装置
KR101117027B1 (ko) 우주 통신 시스템에서 패킷 재전송 방법 및 이를 위한 패킷 전송 장치
JP2001230796A (ja) データ通信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130208

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: 20130227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130322

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

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5232115

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees