(58)【調査した分野】(Int.Cl.,DB名)
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が、最短となる送信順を前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる請求項1記載のデータ送信プログラム。
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が最短となる送信順における前記送信完了時間が、時間閾値以内である場合、前記送信順を前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる請求項1記載のデータ送信プログラム。
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が、最短となる圧縮方式及び送信順を、前記送信グループに属するファイルの圧縮方式及び送信順と決定する処理を、
コンピュータに実行させる請求項1記載のデータ送信プログラム。
前記送信対象のファイルを前記送信グループに分類するとき、前記送信グループに属するファイルのデータサイズの合計が、前記送信グループごとに同一又は近似するように前記送信グループに分類する処理を、
コンピュータに実行させる請求項7記載のデータ送信プログラム。
【発明を実施するための形態】
【0011】
<通信システムの構成例>
図1は、通信システム10の構成例を示す図である。通信システム10は、通信装置100−1,2(以降、通信装置100と呼ぶ場合がある)、及びネットワーク200を有する。通信システム10は、例えば、通信装置100−1がデータ又はファイルを通信装置100−2に送信し、通信装置100−2の有するバックアップ用のデータベースに記憶するシステムである。通信システム10において、バックアップ用のデータは、例えば、定期的に更新される。
【0012】
通信装置100−1は、通信装置100−2にファイルを送信するデータ送信装置であり、例えば、コンピュータである。通信装置100−1は、例えば、ネットワーク200を介して通信装置100−2と接続する。通信装置100−1は、ネットワーク200又は通信装置100−2と、通信回線L1を介して接続する。通信回線L1は、例えば、光ケーブルなどの有線である。また、通信回線L1は、無線回線であってもよい。通信装置100−1は、例えば、定期的にバックアップするファイル(データ)を通信装置100−2に送信する。通信装置100−1は、通信装置100−2に対する送信において、送信するファイルを圧縮した圧縮ファイルを送信する(S1)。
【0013】
通信装置100−1は、複数のファイルを送信する場合、複数のファイルそれぞれを、1以上のファイルを含むグループ(送信グループと呼ぶ)に振り分ける。そして、通信装置100−1は、送信グループごとに、送信グループに属するファイルの圧縮方式及び送信順を決定する。通信装置100−1は、例えば、ファイルの圧縮時間及び送信時間(送信開始から送信完了までの時間)に基づき、ファイルの圧縮方式及び送信順を決定する。
【0014】
通信装置100−2は、通信装置100−1からファイルを受信する装置であり、例えば、サーバマシンである。通信装置100−2は、通信装置100−1からファイルを受信すると、圧縮ファイルを解凍し、ファイルをバックアップ用データベースに記憶する。
【0015】
ネットワーク200は、例えば、イントラネットである。また、ネットワーク200は、例えば、インターネットなどの公衆回線でもよい。
【0016】
なお、通信システム10は、通信装置100−1,2以外に、1又は複数の通信装置を有してもよい。また、通信システム10において、通信装置100−2が送信側で、通信装置100−1が受信側となってもよい。
【0017】
[第1の実施の形態]
最初に第1の実施の形態について説明する。通信装置100−1は、送信対象のファイルそれぞれを、1以上のファイルを含む送信グループに分類する。そして、通信装置100−1は、送信グループそれぞれに属するファイルについて、第1圧縮方式で圧縮する第1圧縮時間、及び第1圧縮方式での圧縮後のファイルを送信する第1送信時間を算出する。通信装置100−1は、算出した第1圧縮時間と第1送信時間に基づいて、送信グループに属するファイルの送信順を、送信グループごとに決定する。
【0018】
なお、第1圧縮方式は優先順位が最も高い、あるいは規定の圧縮方式である。
【0019】
<通信装置の構成例>
図2は、通信装置100の構成例を示す図である。通信装置100は、CPU(Central Processing Unit)110、ストレージ120、メモリ130、及びNIC(Network Interface Card)140−1〜n(以降、NIC140と呼ぶ場合がある)を有する。通信装置100は、他の通信装置とデータの送受信を行う装置である。
【0020】
ストレージ120は、プログラムやデータを記憶する、フラッシュメモリ、HDD(Hard Disk Drive)、又はSSD(Solid State Drive)などの補助記憶装置である。ストレージ120は、順序固定方式データ送信プログラム221及び変動方式データ送信プログラム222を有する。
【0021】
メモリ130は、ストレージ120に記憶されているプログラムをロードする領域である。また、メモリ130、プログラムがデータを記憶する領域としても使用される。
【0022】
NIC140は、他の通信装置やネットワークと接続し、通信を行う装置であり、例えば、ネットワークインターフェースカードである。また、NIC140は、例えば、ハブなどを介して、他の通信装置やネットワークと接続してもよい。
【0023】
CPU110は、ストレージ120に記憶されているプログラムを、メモリ130にロードし、ロードしたプログラムを実行し、各処理を実現するプロセッサ又はコンピュータである。
【0024】
CPU110は、順序固定方式データ送信プログラム221を実行することで、順序固定方式によるデータ送信処理を行う。順序固定方式によるデータ送信処理は、所定の圧縮方式を使用し、送信順序を固定(例えば、データ生成順やデータ番号順)でデータを圧縮し送信する送信方式によりデータを送信する処理である。順序固定方式によるデータ送信処理の詳細については、後述する。
【0025】
CPU110は、変動方式データ送信プログラム222を実行することで、決定部、算出部、及び分類部を構築し、変動方式によるデータ送信処理を行う。変動方式によるデータ送信処理は、データ(ファイル)の圧縮が完了するまでの圧縮時間、及びデータの送信が完了する送信時間に基づき、圧縮方式及びデータの送信順を決定する方式である。変動方式によるデータ送信処理の詳細については、後述する。
【0026】
また、CPU110は、送信グループ振分モジュール2221を実行することで、分類部を構築し、送信グループ振分処理を行う。送信グループ振分処理は、送信対象であるデータを、複数のデータを含む送信グループに振り分ける(分類する)処理である。
【0027】
また、CPU110は、送信グループ内データ送信モジュール2222を実行することで、算出部及び決定部を構築し、送信グループ内データ送信処理を行う。送信グループ内データ送信モジュール処理は、送信グループごとに実施され、送信グループ内のデータの送信順及び圧縮方式のどちらか一方又は両方を決定し、決定した送信順及び圧縮方式でデータを送信する処理である。
【0028】
また、CPU110は、送信順決定モジュール2223を実行することで、決定部を構築し、送信順決定処理を行う。送信順決定処理は、送信グループ内データ送信処理において、送信グループ内のデータの送信順を決定する処理である。
【0029】
<順序固定方式によるデータ送信>
順序固定方式によるデータ送信について説明する。
図3は、順序固定方式によるデータ送信のシーケンスの例を示す図である。通信装置100−1は、例えば、データ(又はファイル)を送信する契機が発生すると、データ送信を開始する。通信装置100−1は、固定順序(例えば、データD1、データD2、データD3の順序)で、データを順次圧縮し、送信する。
【0030】
通信装置100−1は、データD1の圧縮を開始する(S10)。そして、通信装置100−1は、データD1の圧縮が完了すると(S11)、データD1の送信を開始し(S12)、次に送信するデータであるデータD2の圧縮を開始する(S11)。
【0031】
そして、通信装置100−1は、データD2の圧縮完了より先にデータD1の送信が完了すると(S13)、データD2の圧縮完了を待ち受ける。通信装置100−1は、データD2の圧縮が完了すると(S14)、データD2の送信を開始し(S15)、次に送信するデータであるデータD3の圧縮を開始する(S14)。
【0032】
そして、通信装置100−1は、データD3の圧縮完了より先にデータD2の送信が完了すると(S16)、データD3の圧縮完了を待ち受ける。通信装置100−1は、データD3の圧縮が完了すると(S17)、データD3の送信を開始する(S18)。そして、通信装置100−1は、データD3が送信完了し(S19)、データ送信を完了する。
【0033】
図3に示す時間T12は、通信装置100−1がデータD1の圧縮を開始してから(S10)、全てのデータの送信が完了するまで(S19)の送信完了時間である。送信完了時間T12は、データD1の送信完了からデータD2の圧縮完了までの時間T10と、データD2の送信完了からデータD3の圧縮完了までの時間T11を含む。時間T10と時間T11は、いずれも通信装置100−1からデータが送信されていない時間であり、通信回線を効率良く使用できていない時間である。
【0034】
図4は、順序固定方式によるデータ送信のシーケンスの例を示す図である。ただし、
図3は、圧縮完了よりも、先行で送信したデータの送信完了が先であるが、
図4は、圧縮完了が先行で送信したデータの送信完了より後である。
【0035】
通信装置100−1は、例えば、データ(又はファイル)を送信する契機が発生すると、データ送信を開始する。通信装置100−1は、固定順序(例えば、データD1、データD2、データD3の順序)で、データを圧縮し、送信する。
【0036】
通信装置100−1は、データD1の圧縮を開始する(S20)。そして、通信装置100−1は、データD1の圧縮が完了すると(S21)、データD1の送信を開始し(S22)、次に送信するデータであるデータD2の圧縮を開始する(S21)。
【0037】
そして、通信装置100−1は、データD1の送信完了より前に、データD2の圧縮が完了すると(S23)、次のデータD3の圧縮を開始し(S23)、データD1の送信完了を待ち受ける。通信装置100−1は、データD1の送信が完了すると(S24)、データD2の送信を開始する(S25)。
【0038】
そして、通信装置100−1は、データD2の送信完了より先にデータD3の圧縮が完了すると(S26)、データD2の送信完了を待ち受ける。通信装置100−1は、データD2の送信が完了すると(S27)、データD3の送信を開始する(S28)。そして、通信装置100−1は、データD3が送信完了し(S29)、データ送信を完了する。
【0039】
図4に示す時間T22は、通信装置100−1がデータD1の圧縮を開始してから(S20)、全てのデータの送信が完了するまで(S29)の送信完了時間である。送信完了時間T22は、データD2の圧縮完了からデータD1の送信完了までの時間T20と、データD3の圧縮完了からデータD2の送信完了までの時間T21を含む。時間T20と時間T21は、いずれも通信装置100−1がデータの圧縮処理を行っていない時間であり、通信装置100−1のプロセッサの処理能力を有効に使用できていない。また、圧縮処理は、例えば、圧縮時間が長いほど圧縮後のサイズは小さくなることが一般的である。そのため、圧縮処理が先に完了する時間T20及び時間T21が発生する(あるいは長くなる)ということは、もっと圧縮時間が長い圧縮方式を使用しても、圧縮完了待ちの時間が発生しない可能性が高いということである。すなわち、通信装置100−1は、適切な圧縮方式を使用していないため、無駄な送信待ち時間を発生させ、通信回線を効率良く使用できていない。
【0040】
<変動方式によるデータ送信>
変動方式によるデータ送信について説明する。通信装置100は、複数の送信対象ファイルを、複数のファイルを含む送信グループに割り振り、送信グループ内での送信順を決定する。なお、第1の実施の形態では、通信装置100−1が1つの圧縮方式(第1圧縮方式)にのみ対応する場合について説明する。
【0041】
図5は、変動方式によるデータ送信のシーケンスの例を示す図である。通信装置100−1は、データを送信する契機が発生すると、データ圧縮送信処理を行う(S100)。
【0042】
図6は、データ圧縮送信処理S100の処理フローチャートの例を示す図である。通信装置100は、送信対象データを送信グループに割り振る(S100−1)。
【0043】
送信グループは、例えば、複数のファイル(データ)で構成されるグループである。通信装置100は、送信グループのファイルの送信順を決定する。なお、送信対象データは、例えば、バックアップデータであり、バックアップデータの保存先である通信装置100−2に送信する順番は決まっておらず、どの送信順で送信してもバックアップデータの保存は実行されるものとする。
【0044】
通信装置100は、例えば、処理S100−1において、送信対象データのサイズに応じて送信グループに割り振る。通信装置100は、例えば、送信対象データのサイズを大きい順にソートし、サイズの大きい順に所定数ずつ送信グループに割り振る。これにより、送信グループに属するデータのデータサイズは、同一又は所定サイズ範囲内となる。一般的に、データの圧縮時間や圧縮後のサイズは圧縮前のサイズに対応する。そのため、送信グループ内のデータサイズを同一、又は近似にすることで、送信グループに属するデータの圧縮時間及び送信時間が近似する可能性が高い。
【0045】
また、通信装置100は、データのサイズが小さい送信グループのデータ数は、データのサイズが大きい送信グループのデータ数よりも多くしてもよい。通信装置100は、これにより、送信グループに属するデータのデータサイズの合計値を同一または近似させることができる。前述したように、データの圧縮時間や圧縮後のサイズは圧縮前のデータサイズに対応するため、送信グループに属するデータのデータサイズの合計値を同一または近似させることで、送信グループごとの送信完了時間の差異が小さくなる。
【0046】
さらに、通信装置100は、1つの送信グループのデータ数を、CPUの処理能力に応じて決定してもよい。通信装置100は、1つの送信グループのデータ数を、例えば、所定時間内に全送信順の組み合わせについて送信完了時間を算出できる数以下の数値としてもよい。
【0047】
通信装置100は、未選択の送信グループを選択する(S100−2)。そして、通信装置100は、選択した送信グループに対して、送信グループ内データ送信処理を行う(S1001)。通信装置100は、未選択の送信グループが存在するか否かを確認し(S100−3)、未選択の送信グループがあれば(S100−3のYes)、再度未選択の送信グループを選択し(S100−2)、送信グループ内データ送信処理S1001を行う。このように、通信装置100は、未選択の送信グループ(すなわち未送信の送信グループ)が存在しなくなるまで処理S100−2、送信グループ内データ送信処理S1001、及び処理S100−3を繰り返す。なお、通信装置100は、処理S100−2において、例えば、送信グループの番号順に送信グループを選択する。
【0048】
そして、通信装置100は、未選択の送信グループが存在しなくなると(S100−3のNo)、処理を終了する。
【0049】
図7は、第1の実施の形態における送信グループ内データ送信処理S1001の処理フローチャートの例を示す図である。第1の実施の形態における送信グループ内データ送信処理S1001は、圧縮方式が1つである場合(すなわち圧縮方式が可変でない場合)の、送信グループ内のデータの送信順を決定する処理である。
【0050】
通信装置100は、送信グループ内の各データの圧縮時間を算出する(S1001−1)。通信装置100は、例えば、過去のデータにおける圧縮時間の統計データと、元のデータサイズに基づき、圧縮時間を算出する。あるいは、通信装置100は、圧縮のアルゴリズムからと元のデータサイズに基づき、圧縮時間を算出してもよい。
【0051】
通信装置100は、圧縮された各データの送信時間を算出する(S1001−2)。通信装置100は、過去のデータにおける送信時間の統計データと、圧縮後(もしくは元データ)のデータサイズに基づき、送信時間を算出する。あるいは、通信装置100は、現在の通信速度と、圧縮後のデータサイズ(予想サイズ)に基づき、送信時間を算出してもよい。
【0052】
通信装置100は、送信グループにおける全送信順について、送信完了時間を算出する(S1001−3)。そして、通信装置100は、送信完了時間が最短の送信順を選出する(S1001−4)。
【0053】
通信装置100は、送信グループ内のデータを、選出した送信順で圧縮し、圧縮完了したデータを送信する(S1001−5)。
【0054】
図8は、第1圧縮方式におけるデータD1〜D3の圧縮時間及び送信時間の例を示す図である。
図8の「データ」は、データ名を示す。また、
図8の「圧縮時間(秒)」は、データごとの圧縮時間を秒単位で示す。また、
図8の「送信時間(秒)」は、圧縮後のデータの送信時間を秒単位で示す。通信装置100は、例えば、過去のデータの圧縮時間及び送信時間の実績値を蓄積し、蓄積した実績値に基づき、圧縮時間及び送信時間を算出する。
【0055】
図9は、第1圧縮方式における、送信順ごとの送信完了時間の例を示す図である。
図9によると、例えば、パターン1の送信順は、データD1、データD2、データD3の順番である。また、
図9によると、パターン1の送信完了時間は、データD1の圧縮時間30秒と、データD2の圧縮時間60秒と、データD3の圧縮時間40秒と、データD3の送信時間20秒とを加算した、150秒となる。パターン1では、各データの圧縮時間が長いため、データの圧縮中に、前に送信されているデータの送信が完了する。その為、パターン1では、データの圧縮時間の合計に、最後に送信されるデータD3の送信時間を加算した時間が、送信完了時間となる。以下、
図5のシーケンスにおいて、通信装置100−1は、
図8及び
図9に基づき、データ圧縮送信処理S100を行うものとする。
【0056】
図5のシーケンスに戻り、通信装置100−1は、データ圧縮送信処理S100において、パターン1〜6の送信完了時間を算出し(
図7のS1001−3)、送信時間が最も短いパターンを選出する(
図7のS1001−4)。通信装置100−1は、
図9に示す送信完了時間が140秒であるパターン2(パターン5でもよい)を選出する。
【0057】
通信装置100−1は、パターン2の送信順であるデータD1、データD3、データD2の順に、圧縮及び送信を行う。通信装置100−1は、データD1の圧縮を開始する(S101)。通信装置100−1は、30秒後にデータD1の圧縮が完了すると(S102)、データD1の送信を開始する(S103)。そして、通信装置100−1は、送信順が2番目のデータD3の圧縮を開始する(S102)。
【0058】
通信装置100−1は、30秒後にデータD1の送信が完了したとき(S104)、データD3の圧縮が完了していないため、データD3の圧縮が完了するのを待ち受ける。そして、通信装置100−1は、データD3の圧縮開始から40秒後(データD1の送信完了から10秒後)にデータD3の圧縮が完了すると(S105)、データD3の送信を開始する(S106)。そして、通信装置100−1は、送信順が3番目のデータD2の圧縮を開始する(S105)。
【0059】
通信装置100−1は、20秒後にデータD3の送信が完了したとき(S107)、データD2の圧縮が完了していないため、データD2の圧縮が完了するのを待ち受ける。そして、通信装置100−1は、データD2の圧縮開始から60秒後(データD3の送信完了から40秒後)にデータD2の圧縮が完了すると(S108)、データD2の送信を開始する(S109)。
【0060】
そして、通信装置100−1は、送信グループ内の最後の送信順のデータD2の送信が10秒後に完了し(S110)、送信グループ内のデータ送信を完了する。
【0061】
通信装置100−1における、データD1の圧縮を開始してから(S101)、データD2の送信完了まで(S110)の送信完了時間は、140秒(=30秒+40秒+60秒+10秒)となる。
【0062】
第1の実施の形態では、通信装置100は、既定の圧縮方式における各データの圧縮時間、及び圧縮後のデータの送信時間に基づき、送信完了時間を算出し、送信完了時間が最も短い送信順を選出する。これにより、通信装置100は、通信回線を効率良く使用することができる。
【0063】
また、第1の実施の形態では、通信装置100は、送信順を入れ替える送信グループを決定する。送信対象のデータ数が多くなると、送信順の組み合わせは指数的に増加するため、通信装置100における処理量及び処理時間が増大する。通信装置100は、例えば、送信グループ内のデータ数を、処理能力に応じた数にすることで、処理量及び処理時間の増大を抑制することができる。
【0064】
[第2の実施の形態]
次に第2の実施の形態について説明する。
【0065】
第2の実施の形態では、通信装置100−1は、さらに第1圧縮方式に加え、第2圧縮方式にも対応する。通信装置100−1は、圧縮方式を含め、送信順を決定する。
【0066】
<変動方式によるデータ送信>
図10は、変動方式によるデータ送信のシーケンスの例を示す図である。通信装置100−1は、データを送信する契機が発生すると、データ圧縮送信処理を行う(S100)。
【0067】
通信装置100−1は、データ圧縮送信処理S100において、送信対象データを送信グループに割り振る(
図6のS100−1)。そして、通信装置100−1は、送信グループを選択し(
図6のS100−2)、送信グループ内データ送信処理を行う(S1001)。
【0068】
図11は、第2の実施の形態における送信グループ内データ送信処理S1001の処理フローチャートの例を示す図である。第2の実施の形態における送信グループ内データ送信処理S1001は、圧縮方式が複数ある場合の、送信グループ内のデータの送信順及び圧縮方式を決定する処理である。
【0069】
通信装置100は、未選択の圧縮方式を選択する(S1001−10)。そして、通信装置100は、送信グループ内の各データの選択した圧縮方式における圧縮時間を算出する(S1001−11)。さらに、通信装置100は、圧縮された各データの送信時間を算出する(S1001−12)。
【0070】
通信装置100は、算出し圧縮時間及び送信時間に基づき、全送信順について、送信完了時間を算出する(S1001−13)。
【0071】
通信装置100は、未選択の圧縮方式がある場合(S1001−14のYes)、未選択の圧縮方式を選択し(S1001−10)、処理S1001−11〜13を実行する。
【0072】
一方、通信装置100は、未選択の圧縮方式がない場合(S1001−14のNo)、圧縮方式及び送信順の全組み合わせのうち、送信完了時間が最短の組み合わせを選出する(S1001−15)。そして、通信装置100は、送信グループのデータを、選出した圧縮方式で圧縮し、選出した送信順で送信し(S1001−16)、処理を終了する。
【0073】
図12は、第2圧縮方式におけるデータD1〜D3の圧縮時間及び送信時間の例を示す図である。なお、第1圧縮方式おけるデータD1〜D3の圧縮時間及び送信時間の例は、第1の実施の形態で示す
図8と同様であるものとする。
【0074】
図13は、第2圧縮方式における、送信順ごとの送信完了時間の例を示す図である。
図13によると、例えば、パターン1の送信順は、データD1、データD2、データD3の順番である。また、
図13によると、パターン1の送信完了時間は、データD1の圧縮時間15秒と、データD1の送信時間60秒と、データD2の送信時間20秒と、データD3の送信時間40秒とを加算した、135秒となる。パターン1では、各データの圧縮時間が短いため、前に送信されているデータの送信が完了する前にデータの圧縮が完了する。その為、パターン1では、データの送信時間の合計に、最初に圧縮されるデータD1の圧縮時間を加算した時間が、送信完了時間となる。なお、第2圧縮方式における、送信順ごとの送信完了時間の例は、第1の実施の形態で示す
図9と同様であるものとする。以下、
図10のシーケンスにおいて、通信装置100−1は、
図12及び
図13に基づき、データ圧縮送信処理S100を行うものとする。
【0075】
図13のシーケンスに戻り、通信装置100−1は、データ圧縮処理S100において、第1及び第2圧縮方式におけるパターン1〜6の送信完了時間を算出する(
図11のS1001−13)。そして、通信装置100は、送信完了時間が最も短い、第2圧縮方式のパターン1(パターン2でもよい)を選出する(
図11のS1001−15)。
【0076】
通信装置100−1は、第2圧縮方式を使用し、パターン1の送信順であるデータD1、データD2、データD3の順に、圧縮及び送信を行う。通信装置100−1は、データD1の圧縮を開始する(S200)。通信装置100−1は、15秒後にデータD1の圧縮が完了すると(S201)、データD1の送信を開始する(S202)。そして、通信装置100−1は、送信順が2番目のデータD2の圧縮を開始する(S201)。
【0077】
通信装置100−1は、30秒後にデータD2の圧縮が完了したとき(S203)、データD1の送信が完了していないため、データD1の送信が完了するのを待ち受ける。また、通信装置100−1は、3番目に送信するデータD3の圧縮を開始する(S203)。
【0078】
通信装置100−1は、データD1の送信開始から60秒後(データD2の圧縮完了から30秒後)にデータD1の送信が完了すると(S204)、データD2の送信を開始する(S205)。そして、データD3の圧縮は、データD2の送信開始(S204)とほぼ同時に完了する(S206)。
【0079】
通信装置100−1は、40秒後にデータD3の送信が完了すると(S207)、データD3の送信を開始する(S208)。
【0080】
そして、通信装置100−1は、送信グループ内の最後の送信順のデータD3の送信が20秒後に完了し(S209)、送信グループ内のデータ送信を完了する。
【0081】
通信装置100−1における、データD1の圧縮を開始してから(S200)、データD3の送信完了まで(S209)の送信完了時間は、135秒(=15秒+60秒+40秒+20秒)となる。
【0082】
第2の実施の形態では、通信装置100は、送信グループ内のデータの圧縮方式及び送信順を決定する。これにより、通信装置100は、送信完了時間が短い圧縮方式及び送信順を決定することができ、通信回線の使用効率が向上する。
【0083】
[第3の実施の形態]
次に第3の実施の形態について説明する。
【0084】
第3の実施の形態では、通信装置100−1は、圧縮方式及び送信順を決定するとき、優先順位に従い順番に圧縮方式を選択し、選択した圧縮方式において最も短い送信完了時間が所定範囲(時間閾値)内である場合、選択した圧縮方式に決定する。
【0085】
<変動方式によるデータ送信>
第3の実施の形態における第1圧縮方式における圧縮時間及び送信時間は、
図8と同様であるものとする。また、第3の実施の形態における第1圧縮方式に送信順ごとの送信完了時間は、
図9と同様であるものとする。さらに、第3の実施の形態における変動方式によるデータ送信のシーケンスの例は、
図5と同様であるため、以下
図5のシーケンスを用いて説明する。
【0086】
通信装置100−1は、データを送信する契機が発生すると、データ圧縮送信処理を行う(S100)。通信装置100−1は、データ圧縮送信処理S100において、送信対象データを送信グループに割り振る(
図6のS100−1)。そして、通信装置100−1は、送信グループを選択し(
図6のS100−2)、送信グループ内データ送信処理を行う(S1001)。
【0087】
図14は、第3の実施の形態における送信グループ内データ送信処理S1001の処理フローチャートの例を示す図である。第3の実施の形態における送信グループ内データ送信処理S1001は、圧縮方式が複数ある場合の、送信グループ内のデータの送信順及び圧縮方 式を決定する処理である。さらに、第3の実施の形態における送信グループ内データ送信処理S1001は、圧縮方式に優先順位があり、送信完了時間が所定範囲内の場合、優先順位に従い圧縮方式が決定される処理である。
【0088】
通信装置100は、第1圧縮方式を選択する(S1001−20)。第1圧縮方式は、優先順位が最も高い圧縮方式である。そして、通信装置100は、送信順決定処理を行う(S2001)。送信順決定処理S2001は、選択された圧縮方式における全送信順の最短の送信完了時間が所定範囲内である場合、送信順を決定し、選択された圧縮方式における全送信順の最短の送信完了時間が所定範囲内でない場合、送信順を決定しない処理である。送信順決定処理S2001の詳細な処理フローチャートについては、後述する。
【0089】
通信装置100は、送信順が決定した場合(S1001−21のYes)、送信グループのデータを選択した圧縮方式で圧縮し、決定した送信順で送信し(S1001−26)、処理を終了する。
【0090】
一方、通信装置100は、送信順が決定していない場合(S1001−21のNo)、未選択の圧縮方式が存在するか否かを確認する(S1001−22)。通信装置100は、未選択の圧縮方式が存在する場合、次の優先順位の圧縮方式を選択し、送信順決定処理S2001を行う。通信装置100は、送信順が決定するまで(S1001−21のYes)、又は、未選択の圧縮方式が存在しなくなるまで(S1001−22のNo)、送信順決定処理S2001を繰り返す。
【0091】
通信装置100は、送信順が決定せず(S1001−21のNo)、未選択の圧縮方式が存在しない場合(S1001−22のNo)、第1圧縮方式を選択する(S1001−24)。通信装置100は、どの圧縮方式でも送信順が決定しない場合、優先順位が最も高い第1圧縮方式を選択する。
【0092】
そして、通信装置100は、第1圧縮方式における、全パターンの送信順のうち、送信完了時間が最短の送信順を、データの送信順に決定する(S1001−25)。そして、通信装置100は、送信グループのデータを選択した圧縮方式で圧縮し、決定した送信順で送信し(S1001−26)、処理を終了する。
【0093】
図15は、送信順決定処理S2001の処理フローチャートの例を示す図である。通信装置100は、選択された圧縮方式における、送信グループの各データの圧縮時間を算出する(S2001−1)。通信装置100は、圧縮された各データの送信時間を算出する(S2001−2)。そして、通信装置100は、送信順の全パターンについて、送信完了時間を算出する(S2001−3)。
【0094】
通信装置100は、全パターンの送信順のうち、送信完了時間が最短の送信順を選出する(S2001−4)。そして、通信装置100は、選出した送信順の送信完了時間が、所定範囲内か否かを確認する(S2001−5)。
【0095】
所定範囲は、例えば、予め設定された設定時間である。通信装置100は、例えば、通信装置100の管理者やユーザの操作によって、内部メモリやストレージに設定時間を記憶しておく。通信装置100は、送信完了時間が設定時間以下である場合、所定範囲内と判定する。なお、設定時間は、例えば、固定であってもよいし、データサイズ(送信グループのデータの合計サイズ)に応じた時間であってもよい。
【0096】
また、所定範囲は、例えば、送信グループのデータの送信時間の合計に基づく時間であってもよい。通信装置100は、例えば、送信グループのデータの送信時間の合計に所定倍率を乗じた数値を所定範囲としてもよい。通信装置100は、送信時間の合計に所定倍率(例えば1.1倍)を乗じた数値を所定範囲とすることで、データを送信していない時間(圧縮のみ実行している時間)が送信時間の合計の所定割合(例えば10%)を超えない場合に、選択した圧縮方式で送信を行うことができる。
【0097】
また、所定範囲は、例えば、送信グループのデータの圧縮時間の合計に基づく時間であってもよい。通信装置100は、例えば、送信グループのデータの圧縮時間の合計に所定倍率を乗じた数値を所定範囲としてもよい。通信装置100は、圧縮時間の合計に所定倍率(例えば1.1倍)を乗じた数値を所定範囲とすることで、データを圧縮していない時間(データの送信のみ実行している時間)が圧縮時間の合計の所定割合(例えば10%)を超えない場合に、選択した圧縮方式で送信を行うことができる。
【0098】
また、所定範囲は、例えば、送信グループのデータの圧縮時間の合計、及び送信グループのデータの送信時間の合計に基づく時間であってもよい。通信装置100は、例えば、圧縮時間の合計と送信時間の合計の大きい方の時間に、所定倍率を乗じた数値を所定範囲としてもよい。
【0099】
さらに、所定範囲は、例えば、送信グループの全送信順のパターンのうち、最長の送信完了時間に、所定倍率を乗じた数値であってもよい。通信装置100は、最長の送信完了時間に所定倍率(例えば、0.9)を乗じた数値を所定範囲とすることで、最長の送信完了時間に対して所定割合(10%)だけ時間が削減された送信完了時間の送信順を選択することができる。通信装置100は、送信順を変更することで所定割合以上の時間削減効果があるよう、所定範囲を決定することができる。
【0100】
通信装置100は、選出した送信順の送信完了時間が所定範囲内である場合(S2001−5のYes)、選出した送信順に決定し(S2001−6)、処理を終了する。一方、通信装置100は、選出した送信順の送信完了時間が所定範囲内でない場合(S2001−5のNo)、送信順を未決定とし(S2001−7)、処理を終了する。
【0101】
図5のシーケンスに戻り、通信装置100−1は、データ圧縮送信処理S100において、第1圧縮方式を選択し(
図14のS1001−20)、送信順決定処理S2001を行う。そして、通信装置100は、送信順決定処理S2001において、
図9より、第1圧縮方式において送信完了時間が最短(140秒)であるパターン2を選出する(
図15のS2001−4)。
【0102】
そして、通信装置100は、選出したパターン2の送信完了時間(140秒)が所定範囲内であるか否かを確認する。通信装置100は、例えば、送信グループの全送信順パターンのうち、最長の送信完了時間(160秒)に、所定倍率(0.9)を乗じた数値(144秒)を所定範囲とする。通信装置100は、選出したパターン2の送信完了時間(140秒)が、所定範囲(144秒)の範囲内であると判定し(
図15のS2001−5のYes)、選出したパターン2を送信順と決定する(
図15のS2001−6)。
【0103】
以下、処理S101〜S110は、第1の実施の形態と同様である。
【0104】
第3の実施の形態では、通信装置100は、圧縮方式を優先順位に従い選択し、選択した圧縮方式において送信完了時間が所定範囲内である場合、選択した圧縮方式でデータを圧縮する。これにより、例えば、推奨される(優先される)圧縮方式がある場合、通信装置100は、推奨される圧縮方式おいて送信完了時間が所定範囲よりも長くなる場合以外、推奨される圧縮方式を使用することができる。
【0105】
以上の第1〜第3の実施の形態を含む実施の形態に関し、更に以下の付記を開示する。
【0106】
(付記1)
送信対象のファイルそれぞれを送信グループに分類し、
前記ファイルそれぞれについて、第1圧縮方式で圧縮する第1圧縮時間、及び前記第1圧縮方式での圧縮後のファイルを送信する第1送信時間を算出し、
前記第1圧縮時間及び前記第1送信時間に基づいて、前記送信グループに属するファイルの送信順を、前記送信グループごとに決定する処理を、
コンピュータに実行させるデータ送信プログラム。
【0107】
(付記2)
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が、最短となる送信順を前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる付記1記載のデータ送信プログラム。
【0108】
(付記3)
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が最短となる送信順における前記送信完了時間が、時間閾値以内である場合、前記送信順を前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる付記1記載のデータ送信プログラム。
【0109】
(付記4)
前記送信完了時間が最短となる前記送信順における前記送信完了時間が、前記時間閾値より大きい場合、
前記送信グループに属するファイルそれぞれについて、前記第1圧縮方式とは異なる第2圧縮方式で圧縮する第2圧縮時間、及び前記第2圧縮方式での圧縮後のファイルを送信する第2送信時間を算出し、
前記第2圧縮方式での前記送信完了時間が最短となる送信順における前記送信完了時間が、前記時間閾値以内である場合、圧縮方式を前記第2圧縮方式と決定し、前記送信順を前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる付記3記載のデータ送信プログラム。
【0110】
(付記5)
選択可能な全ての圧縮方式での前記送信完了時間が最短となる送信順における前記送信完了時間が、前記時間閾値より大きい場合、圧縮方式を前記第1圧縮方式と決定し、前記第1圧縮方式での前記送信完了時間が最短となる送信順を、前記送信グループに属するファイルの送信順と決定する処理を、
コンピュータに実行させる付記4記載のデータ送信プログラム。
【0111】
(付記6)
さらに、前記第1圧縮方式以外の第2圧縮方式で圧縮する第2圧縮時間、及び前記第2圧縮方式での圧縮後のファイルを送信する第2送信時間を算出し、
前記第1圧縮時間、前記第1送信時間、前記第2圧縮時間、及び前記第2送信時間に基づき、前記送信グループに属するファイルの送信順を決定する処理を、
コンピュータに実行させる付記1記載のデータ送信プログラム。
【0112】
(付記7)
最初に送信するファイルの圧縮を開始してから最後に送信するファイルの送信が完了するまでの送信完了時間が、最短となる圧縮方式及び送信順を、前記送信グループに属するファイルの圧縮方式及び送信順と決定する処理を、
コンピュータに実行させる付記1記載のデータ送信プログラム。
【0113】
(付記8)
前記送信対象のファイルを前記送信グループに分類するとき、前記送信対象のファイルのデータサイズに応じて前記送信グループに分類する処理を、
コンピュータに実行させる付記1記載のデータ送信プログラム。
【0114】
(付記9)
前記送信対象のファイルを前記送信グループに分類するとき、データサイズが所定サイズ範囲内のファイルを同じ送信グループに分類する処理を、
コンピュータに実行させる付記8記載のデータ送信プログラム。
【0115】
(付記10)
前記送信対象のファイルを前記送信グループに分類するとき、前記送信グループに属するファイルのデータサイズの合計が、前記送信グループごとに同一又は近似するように前記送信グループに分類する処理を、
コンピュータに実行させる付記8記載のデータ送信プログラム。
【0116】
(付記11)
前記送信対象のファイルは、バックアップ用のデータを含む
付記1記載の送信プログラム。
【0117】
(付記12)
送信対象のファイルそれぞれを送信グループに分類する分類部と、
前記ファイルそれぞれについて、第1圧縮方式で圧縮する第1圧縮時間、及び前記第1圧縮方式での圧縮後のファイルを送信する第1送信時間を算出する算出部と、
前記第1圧縮時間及び前記第1送信時間に基づいて、前記送信グループに属するファイルの送信順を、前記送信グループごとに決定する決定部とを有する
データ送信装置。
【0118】
(付記13)
送信対象のファイルそれぞれを送信グループに分類し、
前記ファイルそれぞれについて、第1圧縮方式で圧縮する第1圧縮時間、及び前記第1圧縮方式での圧縮後のファイルを送信する第1送信時間を算出し、
前記第1圧縮時間及び前記第1送信時間に基づいて、前記送信グループに属するファイルの送信順を、前記送信グループごとに決定する
データ送信方法。