JP7305990B2 - 転送プログラム、転送方法、および情報処理装置 - Google Patents

転送プログラム、転送方法、および情報処理装置 Download PDF

Info

Publication number
JP7305990B2
JP7305990B2 JP2019045263A JP2019045263A JP7305990B2 JP 7305990 B2 JP7305990 B2 JP 7305990B2 JP 2019045263 A JP2019045263 A JP 2019045263A JP 2019045263 A JP2019045263 A JP 2019045263A JP 7305990 B2 JP7305990 B2 JP 7305990B2
Authority
JP
Japan
Prior art keywords
data
transfer
information processing
transfer destination
server
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.)
Active
Application number
JP2019045263A
Other languages
English (en)
Other versions
JP2020149249A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019045263A priority Critical patent/JP7305990B2/ja
Priority to US16/790,004 priority patent/US11593176B2/en
Publication of JP2020149249A publication Critical patent/JP2020149249A/ja
Application granted granted Critical
Publication of JP7305990B2 publication Critical patent/JP7305990B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、転送プログラム、転送方法、および情報処理装置に関する。
情報処理端末からアップロードされる大量のデータを複数のサーバで収集し、分散して蓄積するシステムが利用されている。
関連する技術として、高負荷ブローカノードが転送していた意味情報を転送可能で低負荷状態にある他のブローカノードを探索し、低負荷ブローカノードへセンサノードの収容関係を切り替える技術が提案されている(例えば、特許文献1を参照)。
関連する技術として、データ提供者は、ブローカ手段上の宛先にデータを送信し、データ受信者は、該宛先を受信対象としてブローカに指定し、該宛先に送信されてきたデータを、該ブローカが中継する技術が提案されている(例えば、特許文献2を参照)。
関連する技術として、センサから送信されたセンサ情報を記憶するとともに、センサ情報を通信ネットワークで接続された他のサーバ装置へ配信し、他のサーバ装置から配信されたセンサ情報を記憶する技術が提案されている(例えば、特許文献3を参照)。
国際公開第2010/107105号 特開2017-91454号公報 特開2015-232820号公報
データを分散して蓄積するシステムにおいて、アップロードされたデータが受信したサーバのキャパシティを越える場合、そのサーバは、他のサーバにデータを転送し、転送先のサーバに格納させる。この際に、転送対象データ、転送先サーバ、および転送時のデータ群のサイズを、スループットに基づいて決定することが考えられる。しかし、スループットを最大化するために最適な転送対象データ、転送先サーバ、および転送時のデータ群のサイズを決定する場合、サーバとデータの数に応じて計算量が増加する。
1つの側面として、本発明は、転送対象データ、転送先の装置、および転送時のデータ群のサイズとを決定する際の計算量を抑制することを目的とする。
1つの態様では、転送プログラムは、データを受信し、データを受信した情報処理装置の、前記データを一時記憶するメモリの使用量、前記データの入力頻度、および前記データを記憶する記憶装置への入出力量に基づいて、前記データのうち他の情報処理装置に転送するデータの候補である転送データ候補を選択し、前記他の情報処理装置の前記データを一時記憶するメモリの使用量と該使用量についての上限を示す第1の閾値との大小関係、前記他の情報処理装置の前記データの入力頻度と該入力頻度についての上限を示す第2の閾値との大小関係、および前記他の情報処理装置の前記データを記憶する記憶装置への入出力量と該入出力量についての上限を示す第3の閾値との大小関係に基づいて、複数の前記他の情報処理装置のうちから、負荷状況が所定の状況よりも高負荷である前記他の情報処理装置を除いた残余の前記他の情報処理装置を、前記データの転送先の候補となる転送先装置候補として選択し、前記情報処理装置と前記転送先装置候補との間のスループットに基づいて、前記転送データ候補から転送対象データを決定し、前記転送先装置候補から前記転送対象データの転送先装置を決定し、前記転送対象データを含むデータ群のサイズを決定し、決定された前記転送対象データを前記データ群毎に前記転送先装置に転送する処理を前記情報処理装置に実行させる。
1つの側面によれば、転送対象データ、転送先の装置、および転送時のデータ群のサイズを決定する際の計算量を抑制することができる。
実施形態のシステムの全体構成の一例を示す図である。 サーバの機能構成の一例を示す図である。 データ転送の概要を示す図である。 負荷情報および遅延情報の一例を示す図である。 デッドライン設定情報の一例を示す図である。 イベントデータに関する情報の一例を示す図である。 転送データ候補リストの一例を示す図である。 転送先サーバ候補リストの一例を示す図である。 データ転送設定の一例を示す図である。 高負荷状態管理情報の一例を示す図である。 情報処理端末5が送信するイベントデータの構成の一例を示す図である。 他のサーバに転送するイベントデータの構成の一例を示す図である。 情報処理端末5に送信するイベントデータの構成の一例を示す図である。 サーバ間で送信される負荷情報の一例を示す。 遅延測定用送信データの一例を示す図である。 遅延測定用応答データの一例を示す図である。 高負荷判定処理方法の一例を示す図である。 実施形態におけるサーバ3の処理の一例を示すフローチャートである。 負荷情報および遅延情報収集処理の一例を示すフローチャートである。 高負荷判定処理の一例を示すフローチャートである。 転送データ候補選択処理の一例を示すフローチャート(その1)である。 転送データ候補選択処理の一例を示すフローチャート(その2)である。 転送先サーバ候補選択処理の一例を示すフローチャート(その1)である。 転送先サーバ候補選択処理の一例を示すフローチャート(その2)である。 転送設定管理処理の一例を示すフローチャート(その1)である。 転送設定管理処理の一例を示すフローチャート(その2)である。 転送設定決定処理の一例を示すフローチャート(その1)である。 転送設定決定処理の一例を示すフローチャート(その2)である。 転送処理の一例を示すフローチャートである。 サーバ3のハードウェア構成の一例を示す図である。
以下、図面を参照して、実施形態について説明する。図1は、実施形態のシステム構成の一例を示す図である。実施形態のシステムは、複数のエッジ拠点(エッジ拠点1-1~エッジ拠点1-n)と複数の情報処理端末(情報処理端末5-1~情報処理端末5-n)とネットワーク4とを含む。以下、エッジ拠点1-1~エッジ拠点1-nを区別しない場合、エッジ拠点1と称する。また、情報処理端末5-1~情報処理端末5-nを区別しない場合、情報処理端末5と称する。
エッジ拠点1は、管理装置2とサーバ3とを含む。なお、管理装置2は、管理装置2-1~管理装置2-nの総称であり、サーバ3は、サーバ3-1~サーバ3-nの総称である。エッジ拠点1に含まれるサーバ3は1台であってもよく複数台であってもよい。なお、実施形態では、エッジ拠点1に含まれるサーバ3は1台であるとする。エッジ拠点1は、例えば、移動体の無線通信に用いられる基地局に接続し、基地局からのトラフィックを集約する拠点であるとする。
管理装置2は、エッジ拠点1内のサーバ3を管理する。管理装置2は、例えば、情報処理端末5から送信(アップロード)されたデータの格納先となるサーバ3をエッジ拠点1の中から決定する。また、管理装置2は、データを取得(ダウンロード)する情報処理端末5の読み取り進捗状況を管理する。なお、エッジ拠点1は、管理装置2を含んでいなくてもよく、管理装置2の機能をサーバ3が有していてもよい。
サーバ3は、情報処理端末5から送信されたデータを記憶する。サーバ3は、例えば、自サーバの負荷状況に応じて、他のサーバ3にデータを転送する。サーバ3は、例えば、メッセージブローカの機能を有する。また、サーバ3は、データを受信する情報処理装置、またはデータの転送先である他の情報処理装置の一例である。
ネットワーク4は、例えば、Local Area Network(LAN)、Wide Area Network(WAN)等の通信ネットワークである。サーバ3は、ネットワーク4を介して、他のサーバ3とデータの送受信を行う。
情報処理端末5は、各種データをエッジ拠点1内のサーバ3に送信(アップロード)する。また、情報処理端末5は、各種データをエッジ拠点1内のサーバ3から取得(ダウンロード)する。情報処理端末5は、例えば、携帯端末またはパーソナルコンピュータ等である。
図1に示す例において、例えば、情報処理端末5-1がエッジ拠点1-1のサーバ3-1にデータを送信する。そして、サーバ3-1が、エッジ拠点1-nのサーバ3-nにそのデータを転送し、サーバ3-nがそのデータを記憶する。情報処理端末5-nは、そのデータを利用する場合、サーバ3-nからそのデータを取得する。
例えば、データ転送元のサーバ3-1とデータの転送先であるサーバ3-nとの間の通信に遅延が発生している場合、輻輳が発生し、スループットが低下する可能性がある。例えば、サーバ3-1とサーバ3-nとの間のRound-Trip delay Time(RTT)が1msでスループットが800kbpsである場合、RTTが50msでスループットが16kbpsとなる。特に、情報処理端末5がデータをアップロードする際にACKを受信し、ACKの受信後に送信したデータを端末内から削除するデータ送達保証通信を行う場合、輻輳の発生およびスループットの低下が問題となる。
サーバ3は、例えば、アップロードされたデータをバッファリングした上で一括送信する(バルク転送する)ことでスループットを向上させることも考えられる。しかし、バッファリングの結果、追加遅延が発生し、デッドラインを満足できない場合がある。デッドラインは、情報処理端末5がデータをサーバ3に送信してから、他の情報処理端末5がそのデータを受信するまでの期間の上限(所定期間)である。デッドラインは、データの種別毎に予め設定されている。
そのため、サーバ3は、デッドライン等の条件を満たし、かつ、スループットが高くなるように、転送データ、データの転送先サーバ3および転送時のデータ群のサイズを決定する。しかし、サーバ3の数およびデータの数に応じて、転送データ、データの転送先サーバ3および転送時のデータ群のサイズを決定するための計算量が増加する。
よって、サーバ3は、スループットを計算する前に、他のサーバ3に転送するデータの候補と、転送先の候補となる転送サーバ候補を選択する。そして、サーバ3は、選択したデータの候補と転送サーバ候補のみを計算対象とすることにより、計算量を抑制する。
図2は、サーバ3の機能構成の一例を示す図である。サーバ3は、受信部30と管理部31と判定部32と転送データ候補選択部33と転送先サーバ候補選択部34と設定部35と決定部36と転送部37と管理情報記憶部38とデータ記憶部39とを含む。
受信部30は、情報処理端末5からイベントデータを受信する。なお、イベントデータは、本実施形態で扱うデータの最小単位であるとする。以下、イベントデータを単にデータと称することがある。
管理部31は、自サーバを含む各サーバ3の負荷情報とネットワーク遅延情報とを管理する。管理部31は、自サーバから他のサーバ3までのネットワーク遅延を計測し、管理情報記憶部38に記憶させる。さらに、管理部31は、自サーバを含む各サーバ3の負荷情報を収集し、管理情報記憶部38に記憶させる。
判定部32は、データを一時記憶するメモリ使用量、イベントデータ入力頻度、データを記憶する記憶装置への入出力量が所定時間後に閾値を越えるかを判定する。本実施形態に示す例では、記憶装置への入出力量は、単位時間当たりのHardDiskへの入出力量を示すDiskI/Oである。また、判定部32は、判定結果に応じてフラグを設定する。
転送データ候補選択部33は、判定部32が設定したフラグを参照し、データを受信するサーバ3(自サーバ)の負荷状況に基づいて、受信したデータのうち他のサーバ3に転送するデータの候補である転送データ候補を、データの種別毎に選択する。転送データ候補選択部33が転送データ候補の選択に用いる負荷状況は、例えば、自サーバの、データを一時記憶するメモリ使用量、イベントデータ入力頻度、およびデータを記憶する記憶装置への入出力量である。
転送先サーバ候補選択部34は、他のサーバ3の負荷状況に基づいて、他のサーバ3のうちデータの転送先の候補となる転送先サーバ候補を選択する。転送先サーバ候補選択部34は、転送先装置選択部の一例である。転送先サーバ候補選択部34が転送データ候補の選択に用いる負荷状況は、例えば、他のサーバ3の、データを一時記憶するメモリ使用量、イベントデータ入力頻度、およびデータを記憶する記憶装置への入出力量である。
設定部35は、データを受信するサーバ3(自サーバ)の負荷(例えば、現在のメモリ使用量、DiskI/O、イベントデータ入力頻度)を取得し、各負荷が高いか否かを示すフラグ(高負荷フラグ)を設定する。自サーバの負荷が所定の基準以下となった場合、設定部35は、データを他のサーバ3に転送するための設定であるデータ転送設定から、所定の条件を満たす設定内容を削除する。
決定部36は、自サーバと転送先サーバ候補との間のスループットに基づいて転送データ候補から転送対象データを決定し、該スループットに基づいて転送先サーバ候補から転送対象データを転送する転送先サーバを決定し、該スループットに基づいて転送対象データを含むデータ群のサイズを決定する。データ群は、複数のイベントデータ(転送対象データ)を含むデータの集まりであり、イベントデータは、データ群毎に転送先サーバに転送される。決定部36は、例えば、1データ群あたりのイベントデータ数を決定することにより、データ群のサイズを決定する。決定部36は、決定した転送対象データを示す識別情報、転送先サーバを示す識別情報、データ群のサイズをデータ転送設定として記録する。転送対象データを示す識別情報は、例えば、データの種別毎に設定された識別情報である。
決定部36の処理の詳細を説明する。決定部36は、転送データ候補、転送先サーバ候補が以下の式(1)~(3)の条件を満たすか否かを判定する。式(1)~(3)において、Wは、データ群に含まれるイベントデータ数であり、DPiは、イベントデータP(iは、イベントデータの識別子)のデッドライン[秒]である。また、λ piは、データを受信する受信サーバjにおけるイベントデータPの入力頻度[イベントデータ数/秒]であり、d-k は、転送先サーバkの書込み平均遅延[秒]であり、d-k は、転送先サーバkの読み込み平均遅延[秒]である。また、ljkは、受信サーバj、転送先サーバk間のRound-Trip delay Time(RTT)[sec]であり、bjkは、データ受信サーバj、転送先サーバk間の帯域[bps]である。また、Spiは、イベントデータのサイズ[byte]であり、Mは、転送先サーバの空きバッファ(メモリ)量[byte]である。なお、エッジ拠点1にサーバ3が複数存在する場合、各パラメータは、エッジ拠点1の各サーバ3に関するパラメータの平均値であってもよい。
Figure 0007305990000001
Figure 0007305990000002
Figure 0007305990000003
なお、式(2)におけるmax(ljk/2,Spi×W/bjk)は、ljk/2とSpi×W/bjkとのうちの最大値を示す。上記(2)を満たす場合、情報処理端末5がデータをサーバ3に送信してから、他の情報処理端末5がそのデータを受信するまでの期間がデッドライン以下となることを示す。すなわち、決定部36は、情報処理端末5がデータをサーバ3に送信してから、他の情報処理端末5がそのデータを受信するまでの期間がデッドライン以下となるように、転送対象データ、転送対象データを転送する転送先装置、転送対象データを含むデータ群のサイズを決定する。これにより、サーバ3は、情報処理端末5がデータを受信するタイミングがデッドラインを過ぎることを防止することができる。
また、決定部36は、上記式(1)~(3)を満たし、かつ、下記式(4)で算出される転送時のスループットTPが最大となる転送先サーバ3と、転送時のデータ群のサイズを、イベントデータの種別毎に決定する。決定部36は、データ群に含まれるイベントデータの数Wを決定することにより、データ群のサイズを決定する。決定部36は、ある種別のデータについて、上記(1)~(3)の条件を満たす転送先サーバ3と、転送時のデータ群のサイズの組が存在しない場合、その種別のデータを複数の転送先サーバ3に分割して転送することを決定する。また、決定部36は、ある種別のデータを複数の転送先サーバ3に分割して転送したとしても、上記(1)~(3)の条件を満たす転送先サーバ3と、転送時のデータ群のサイズの組が存在しない場合、その種別のデータを転送しないことを決定する。
Figure 0007305990000004
決定部36による上記式(1)~(4)の計算量Oは、以下の式(5)のように表される。Wmaxは、一つのデータ種別のイベントデータ数の最大値であり、Hは、転送データ候補の種別の数であり、Kは、他のサーバ3の数であり、πは、データ分割数であり、πmaxはデータ分割数の最大値であるとする。
Figure 0007305990000005
決定部36は、転送データ候補の種別毎に、転送先サーバ3と、転送時のデータ群のサイズを決定するため、上記式(1)~(4)の計算量Oは、式(5)に示すように転送データ候補の種別の数Hに依存する。また、計算量Oは、他のサーバ3の数Kに依存する。すなわち、転送データ候補選択部33が転送するデータの種別を絞り込み、転送先サーバ候補選択部34が転送先となり得る他のサーバ3を絞り込むことにより、計算量を抑制することができる。
転送部37は、転送データ候補選択部33により選択されたデータをデータ群毎に転送先サーバに転送する。転送時のデータ群のサイズは、決定部36により決定されたサイズである。
管理情報記憶部38は、管理部31が収集した負荷情報および遅延情報、決定部36が決定した転送設定等の各種管理情報を記憶する。
データ記憶部39は、情報処理端末5から受信したイベントデータ、および他のサーバ3から転送されたイベントデータをデータ種別毎に記憶する。
図3は、データ転送の概要を示す図である。情報処理端末5は、例えば、複数のイベントデータをサーバ3-1にアップロードする。サーバ3-1は、イベントデータを受信し、イベントデータを、種別毎のデータ集合として管理する。サーバ3-1は、自サーバの負荷状況に基づいて、受信したイベントデータを自サーバに記憶することが困難であると判定した場合、受信したイベントデータを他のサーバ3に転送する。
サーバ3-1は、複数のイベントデータを含むデータ群毎に、他のサーバ3に転送する。サーバ3-1は、一つのデータ種別に対応するデータ集合を一つのサーバ3に転送することが困難である場合、複数のサーバ3に分割して転送する。図3に示す例では、サーバ3-1は、サーバ3-2およびサーバ3-3に、データ集合を分割して転送する。
データ群を受信したサーバ3-2およびサーバ3-3は、データ群をバッファメモリ41に一時記憶した後、ハードディスク42に書き込む。ハードディスク42は、データ記憶部39の一例である。
図4は、負荷情報および遅延情報の一例を示す図である。管理部31は、図4に示す、自サーバに関する負荷情報および遅延情報を生成し、管理情報記憶部38に記憶する。また、管理部31は、負荷情報および遅延情報を定期的に更新する。負荷情報および遅延情報は、サーバ3を識別するIdentification(ID)、アドレス(IPアドレス)、転送時に用いるポート、Central Processing Unit(CPU)使用率を含む。さらに、負荷情報および遅延情報は、バッファ(メモリ)使用量バッファ(メモリ)全容量、Disk使用量、Disk全容量、DiskInput/Output(I/O)、DiskI/O最大値を含む。さらに、負荷情報および遅延情報は、イベントデータ入力頻度、イベントデータ入力頻度最大値、ネットワーク遅延、帯域、書き込み平均遅延、読み込み平均遅延を含む。
IDは、サーバ3が有するメッセージブローカに付与されたIDであってもよい。イベントデータ入力頻度は、1秒あたりに入力するイベントデータの数である。イベントデータ入力頻度最大値は、例えば、CPUの処理性能に依存する値である。DiskI/Oは、イベントデータを記憶する記憶装置(データ記憶部39)に対する入出力量の一例である。ネットワーク遅延は、上記式(2)、(4)におけるljk(他のサーバ3との間のRTT)に相当する。帯域は、式(2)におけるbjk(他のサーバ3との間の帯域)に相当する。他のサーバ3が複数存在する場合、図4におけるネットワーク遅延および帯域は、他のサーバ3毎に記録されているとする。書き込み平均遅延は、式(2)におけるd-k に相当し、読み込み平均遅延は、d-k に相当する。
図5は、デッドライン設定情報の一例を示す図である。図5に示すように、デッドラインは、データ種別毎に予め設定されている。デッドラインは、情報処理端末5がデータをサーバ3に送信してから、他の情報処理端末5がそのデータを受信するまでの期間の上限である。
図6は、イベントデータに関する情報の一例を示す図である。図6に示すように、イベントデータ情報は、データ種別、イベントデータ入力頻度、イベントデータサイズ、デッドラインを含む。すなわち、図6に示す情報は、データ種別毎の、イベントデータの入力頻度、サイズ、およびデッドラインを示す。管理部31は、受信したイベントデータに応じて、図6に示すデータを更新する。
図7は、転送データ候補リストの一例を示す図である。図7に示すように、転送データ候補リストは、データ種別毎に記録される。転送データ候補選択部33は、他のサーバ3に転送するデータの候補を選択した場合、そのデータの種別を記録する。
図8は、転送先サーバ候補リストの一例を示す図である。図8に示すように転送先サーバ候補リストは、転送先の候補として選択されたサーバ3のIDを含む。転送先サーバ候補選択部34は、データ転送先のサーバ3の候補を選択した場合、そのサーバ3のIDを記録する。
図9は、データ転送設定の一例を示す図である。データ転送設定には、転送対象データの種別と、データ転送先のサーバ3のIDと、受信したイベントデータを複数のサーバ3に分割して転送する場合における、各データ群のサイズの比率とが対応付けて記録されている。比率は、合計値が10となるように設定される。さらに、データ転送設定には、転送時の1データ群におけるイベントデータ数が記録されている。1データ群におけるイベントデータ数は、データ群のサイズに対応する。図9に示す転送設定は、決定部36により記録される。
図10は、高負荷状態管理情報の一例を示す図である。高負荷状態管理情報は、メモリ、イベント入力頻度、およびDiskI/Oが高負荷であるかを示す情報を含む。判定部32は、例えば、現在の負荷(メモリ、イベント入力頻度、またはDiskI/O)が所定時間後に高負荷となるか判定した場合、Trueを設定し、所定時間後に高負荷とならないと判定した場合、Falseを設定する。判定部32による判定方法について、詳細は後述する。なお、図4~図10に示す各情報は、管理情報記憶部38に記憶される。
図11は、情報処理端末5が送信するイベントデータの構成の一例を示す図である。図11に示すイベントデータは、送信元であるデータ生成クライアント(情報処理端末5)のIPアドレスおよびport番号、宛先であるサーバ3のIPアドレスおよびport番号、送信元ID(データ生成クライアントのID)、データ種別、ペイロードを含む。
図12は、他のサーバ3に転送するイベントデータの構成の一例を示す図である。図12は、例えば、データを受信したサーバ3が他のサーバ3に転送するイベントデータの構成を示す。図12のイベントデータは、送信元であるサーバ3のIPアドレスおよびport番号、宛先(転送先)であるサーバ3のIPアドレスおよびport番号、送信元ID(データ生成クライアントのID)、データ種別、ペイロードを含む。
図13は、情報処理端末5に送信するイベントデータの構成の一例を示す図である。図12は、例えば、サーバ3がデータを利用するクライアントの情報処理端末5に送信するイベントデータの構成を示す。図13のイベントデータは、送信元であるサーバ3のIPアドレスおよびport番号、宛先であるデータ利用クライアント(情報処理端末5)のIPアドレスおよびport番号、送信元ID(データ生成クライアントのID)、データ種別、ペイロードを含む。
図14は、サーバ間で送信される負荷情報の一例を示す。サーバ3は、図14に示す自サーバの負荷情報を他のサーバ3に送信する。これにより、各サーバ3が負荷情報を共有する。負荷情報は、送信元のサーバ3のIPアドレスおよびport番号、データの宛先であるデータ利用クライアント(情報処理端末5)のIPアドレスおよびport番号、送信元ID(負荷情報を生成したサーバ3のID)、CPU負荷(CPU使用率)を含む。負荷情報は、さらに、バッファ(メモリ)負荷(バッファ(メモリ)使用量、バッファ(メモリ)総量)、Disk容量負荷(Disk使用量、Disk総量)、DiskI/O負荷(DiskI/O、DiskI/O最大値)、データ入力負荷(データ入力頻度、データ入力頻度最大値)を含む。
図15は、遅延測定用送信データの一例を示す図である。遅延測定用データは、データ送信元サーバ3のIPアドレス、宛先であるサーバ3(測定対象サーバ)のIPアドレス、送信時刻(Timestamp)を含む。管理部31は、他のサーバ3との間のネットワーク遅延を測定するために、図15の例に示すデータを他のサーバ3に送信する。
図16は、遅延測定用応答データの一例を示す図である。遅延測定用応答データは、データ送信元サーバ3(測定対象サーバ)のIPアドレス、宛先であるサーバ3(遅延測定用送信データの送信元のサーバ3)のIPアドレス、送信元サーバ3の送信時刻(Timestamp)を含む。管理部31は、他のサーバ3から図15に示す遅延測定用データが送信された場合、図16の例に示す応答データを送信する。管理部31は、図15に示す送信データの送信時刻と図16に示す応答データの受信時刻との差に基づいて、ネットワーク遅延時間を測定する。
図17は、高負荷判定処理方法の一例を示す図である。図17に示す負荷は、メモリ使用量、イベントデータ入力頻度、またはDiskI/Oであるとする。また、Tは判定部32による判定頻度、σは標準偏差、a(a、a)は単位時間あたりの負荷変化量、Vは負荷、VTHは、高負荷判定に用いる閾値であるとする。
ある時点における負荷をVとした場合、判定部32は、例えば、V+2aT+σがVTHより大きい場合、高負荷となる可能性が高いと判定する。図17に示す例では、負荷がVである場合、V+2aT+σがVTHより小さいので、判定部32は、高負荷となる可能性が少ないと判定する。また、負荷がVである場合、V+2aT+σがVTHより大きいので、判定部32は、高負荷となる可能性が高いと判定する。
図18は、実施形態におけるサーバ3の処理の一例を示すフローチャートである。サーバ3は、図18に示すステップS11~S13とステップS21~S25とステップS31~S34とステップS41とを並列に実行する。
サーバ3は、所定期間毎の繰り返し処理を開始する(ステップS11)。管理部31は、負荷情報および遅延情報収集処理を実行する(ステップS12)。サーバ3は、管理者からの停止指示等に応じて、繰り返し処理を終了する(ステップS13)。
サーバ3は、所定期間毎の繰り返し処理を開始する(ステップS21)。判定部32は、ステップS12で得られた負荷情報および遅延情報に基づいて、高負荷判定処理を実行する(ステップS22)。転送データ候補選択部33は、ステップS12で得られた自サーバの負荷情報および遅延情報に基づいて、転送データ候補選択処理を実行する(ステップS23)。転送先サーバ候補選択部34は、ステップS12で得られた他のサーバ3の負荷情報および遅延情報に基づいて、転送先サーバ候補選択処理を実行する(ステップS24)。サーバ3は、管理者からの停止指示等に応じて、繰り返し処理を終了する(ステップS25)。
サーバ3は、所定期間毎の繰り返し処理を開始する(ステップS31)。設定部35は、転送設定管理処理を実行する(ステップS32)。決定部36は、ステップS23で選択された転送データ候補とステップS24で選択された転送先サーバ候補とを用いて、転送設定決定処理を実行する(ステップS33)。転送設定は、転送対象データ、転送先サーバ、データ群のサイズを含む。サーバ3は、管理者からの停止指示等に応じて、繰り返し処理を終了する(ステップS34)。
サーバ3は、所定期間毎の繰り返し処理を開始する(ステップS41)。転送部37は、ステップS33で決定された転送設定に基づいて転送処理を実行する(ステップS42)。サーバ3は、管理者からの停止指示等に応じて、繰り返し処理を終了する(ステップS43)。
なお、ステップS12、S22、S23、S24、S32、S33、S42の処理の詳細は後述する。また、ステップS11~S13、ステップS21~S25、ステップS31~S34、ステップS41のそれぞれの繰り返し間隔(所定期間)は、同じであってもよいし、異なっていてもよい。
図19は、負荷情報および遅延情報収集処理の一例を示すフローチャートである。図19に示す処理は、図18のステップS12の詳細である。管理部31は、図19に示すステップS101~S103の処理と、ステップS111~S113の処理と、S121の処理とを並列で実行する。
管理部31は、ネットワーク遅延に関して、他のサーバ3毎の繰り返し処理を開始する(ステップS101)。管理部31は、他のサーバ3までのネットワーク遅延を計測する(ステップS102)。管理部31は、例えば、図15に示すデータを他のサーバ3に送信し、図16に示す応答データを他のサーバ3から受信する。そして、管理部31は、図15に示す送信データの送信時刻と図16に示す応答データの受信時刻との差に基づいて、ネットワーク遅延時間を計測し、管理情報記憶部38に記憶させる。管理部31は、全ての他のサーバ3に関してネットワーク遅延を計測した場合、繰り返し処理を終了する(ステップS103)。
管理部31は、自サーバの負荷情報(例えば、図14)を収集する(ステップS111)。管理部31は、ステップS111で収集した負荷情報を他のサーバ3に送信する(ステップS112)。管理部31は、他のサーバ3の負荷情報を取得する(ステップS121)。管理部31は、ステップS102で得られた遅延情報、S111、S121で得られた負荷情報を管理情報記憶部38に記憶する(ステップS113)。
図20は、高負荷判定処理の一例を示すフローチャートである。図20に示す処理は、図18のステップS22の詳細である。判定部32は、自サーバおよび全ての他のサーバ3の負荷情報を管理情報記憶部38から取得する(ステップS201)。判定部32が取得する負荷情報は、図19のS111、S121で収集された情報である。
判定部32は、所定時間後にメモリが高負荷となる可能性があるか判定する(ステップS202)。判定部32は、例えば、図17に示した方法により、所定時間後にメモリ使用量がメモリ閾値を越えるかを判定する。ステップS202でYESの場合、判定部32は、フラグXを設定する(ステップS203)。
ステップS202でNOの場合またはステップS203の処理後、判定部32は、所定時間後にイベント入力が高負荷となる可能性があるか判定する(ステップS204)。判定部32は、例えば、図17に示した方法により、所定時間後にイベントデータ入力頻度がイベントデータ入力頻度閾値を越えるかを判定する。ステップS204でYESの場合、判定部32は、フラグYを設定する(ステップS205)。
ステップS204でNOの場合またはステップS205の処理後、判定部32は、所定時間後にDiskI/Oが高負荷となる可能性があるか判定する(ステップS206)。判定部32は、例えば、図17に示した方法により、所定時間後にDiskI/OがDiskI/O閾値を越えるかを判定する。ステップS206でYESの場合、判定部32は、フラグZを設定する(ステップS207)。なお、サーバ3は、自サーバおよび全ての他のサーバ3に対してステップS202~S207の処理を行う。
図21および図22は、転送データ候補選択処理の一例を示すフローチャートである。図21および図22に示す処理は、図18のステップS23の詳細である。
転送データ候補選択部33は、データ種別毎の繰り返し処理を開始する(ステップS301)。転送データ候補選択部33は、管理情報記憶部38に記憶されたイベントデータ情報(例えば、図6)からイベントデータサイズ、イベントデータ入力頻度、デッドラインを取得する(ステップS302)。転送データ候補選択部33は、以下の式(6)を算出することにより、イベントデータのデッドラインが条件を満たすか判定する(ステップS303)。Min(他のサーバ3への遅延)は、図19のステップS102で計測された、複数の他のサーバ3への遅延のうち最も小さい値である。λは、イベントデータ入力頻度であり、1/λは、イベントデータの入力間隔である。
イベントデータデッドライン>Min(他のサーバ3への遅延)+1/λ (6)
イベントデータのデッドラインが式(6)の条件を満たす場合(ステップS303でYES)、転送データ候補選択部33は、自サーバにフラグXが設定されているか判定する(ステップS304)。上述したように、フラグXが設定されている場合、所定時間後にメモリ使用量がメモリ閾値を越える可能性が高いと判定されていたことを意味する。メモリはデータ入力時のバッファとして用いられるため、フラグXが設定されている場合、データをDisk(データ記憶部39)に書き込む際の十分なバッファがないことを意味する。よって、フラグXが設定されている場合(ステップS304でYES)、転送データ候補選択部33は、入力スループットがDiskI/O閾値より大きいか判定する(ステップS305)。ステップS305における入力スループットは、イベントデータサイズ×イベントデータ入力頻度である。ステップS305でYESの場合、転送データ候補選択部33は、処理対象のデータ種別を転送データ候補リスト(例えば、図7)に追加する(ステップS306)。
ステップS304でNOの場合またはステップS305でNOの場合、転送データ候補選択部33は、自サーバにフラグYが設定されているか判定する(ステップS307)。上述したように、フラグYが設定されている場合、イベントデータ入力頻度がイベントデータ入力頻度閾値を越える可能性が高いと判定されていたことを意味する。よって、フラグYが設定されている場合(ステップS307でYES)、転送データ候補選択部33は、イベントデータ入力頻度が入力頻度閾値より大きいか判定する(ステップS308)。ステップS308でYESの場合、転送データ候補選択部33は、処理対象のデータ種別を転送データ候補リストに追加する(ステップS306)。
ステップS307でNOの場合またはステップS308の場合、転送データ候補選択部33は、自サーバにフラグZが設定されているか判定する(図22のステップS309)。上述したように、フラグZが設定されている場合、所定時間後にDiskI/OがDiskI/O閾値を越える可能性が高いと判定されていたことを意味する。よって、フラグZが設定されている場合(ステップS309でYES)、転送データ候補選択部33は、入力スループットがDiskI/O閾値より大きいか判定する(ステップS310)。ステップS310でYESの場合、転送データ候補選択部33は、イベントデータサイズがイベントデータサイズ閾値より大きいか判定する(ステップS311)。ステップS311でYESの場合、転送データ候補選択部33は、処理対象のデータ種別を転送データ候補リストに追加する(図21のステップS306)。ステップS309、S310、S311のいずれかでNOの場合、転送データ候補選択部33は、処理対象のデータ種別に関する処理を終了する。転送データ候補選択部33は、全てのデータ種別に対してステップS301~311の処理を実行した場合、繰り返し処理を終了する(図21のステップS312)。
図23および図24は、転送先サーバ候補選択処理の一例を示すフローチャートである。図23および図24に示す処理は、図18のステップS24の詳細である。
転送先サーバ候補選択部34は、他のサーバ3毎の繰り返し処理を開始する(ステップS401)。転送先サーバ候補選択部34は、処理対象のサーバ3にフラグXが設定されているかを判定する(ステップS402)。上述したように、フラグXが設定されている場合、所定時間後にメモリ使用量がメモリ閾値を越える可能性が高いと判定されていたことを意味する。ステップS402でYESの場合、転送先サーバ候補選択部34は、メモリ空き容量がメモリ空き容量閾値より大きいか判定する(ステップS403)。ステップS403でYESの場合、転送先サーバ候補選択部34は、処理対象のサーバ3を転送先サーバ候補リスト(例えば、図8)に追加する(ステップS404)。
ステップS402でNOの場合またはステップS403でNOの場合、転送先サーバ候補選択部34は、処理対象のサーバ3にフラグYが設定されているかを判定する(ステップS405)。上述したように、フラグYが設定されている場合、所定時間後にイベントデータ入力頻度がイベントデータ入力頻度閾値を越えると判定されていたことを意味する。ステップS405でYESの場合、転送先サーバ候補選択部34は、イベントデータ入力頻度空き容量がイベント入力頻度空き容量閾値より大きいか判定する(ステップS406)。イベントデータ入力頻度空き容量は、イベントデータ入力頻度最大値からイベントデータ入力頻度を減算した値である。ステップS406でYESの場合、転送先サーバ候補選択部34は、処理対象のサーバ3を転送先サーバ候補リストに追加する(ステップS404)。
ステップS405でNOの場合またはステップS406でNOの場合、転送先サーバ候補選択部34は、処理対象のサーバ3にフラグZが設定されているかを判定する(ステップS407)。上述したように、フラグZが設定されている場合、所定時間後にDiskI/OがDiskI/O閾値を越えると判定されていたことを意味する。ステップS407でYESの場合、転送先サーバ候補選択部34は、DiskI/O空き容量がDiskI/O空き容量閾値より大きいか判定する(ステップS408)。DiskI/O空き容量は、DiskI/O最大値からDiskI/Oを減算した値である。ステップS408でYESの場合、転送先サーバ候補選択部34は、処理対象のサーバ3を転送先サーバ候補リストに追加する(図23のステップS404)。ステップS407またはS408でNOの場合、処理対象のサーバ3に関する処理は終了する。
全ての他のサーバ3に関してステップS402~S408の処理が終了した場合、転送先サーバ候補選択部34は、繰り返し処理を終了する(ステップS409)。転送先サーバ候補選択部34は、転送サーバ候補リストに転送先サーバ候補が存在するか判定する(ステップS410)。ステップS410でNOの場合、転送先サーバ候補選択部34は、システム不足を示すアラームを出力する(ステップS411)。転送先サーバ候補選択部34は、例えば、システム不足を示すアラームを表示装置に表示させてもよいし、管理装置2に送信してもよい。
図25および図26は、転送設定管理処理の一例を示すフローチャートである。図25および図26に示す処理は、図18のステップS32の詳細である。設定部35は、自サーバの負荷情報(例えば、図4に示す情報のうち、現在のメモリ使用量、DiskI/O、イベントデータ入力頻度)を取得する。
設定部35は、取得したメモリ使用量がメモリ使用量閾値を超えているか判定する(ステップS502)。ステップS502でYESの場合、設定部35は、メモリ高負荷フラグにTrueを設定する(ステップS503)。ステップS502でNOの場合、設定部35は、メモリ高負荷フラグにTrueが設定されているか判定する(ステップS504)。ステップS504でYESの場合、設定部35は、データ量が条件を満たすデータ種別に対応づけられた設定内容を、データ転送設定(例えば、図9)から削除する(ステップS505)。データ量が条件を満たすデータ種別は、データ量(イベントデータサイズ×入力頻度)が、メモリ閾値-メモリ使用量より小さいデータ種別である。ステップS502でNOであり、ステップS504でYESである場合、前回の処理ではメモリが高負荷であったが現在は高負荷でなくなったことを意味する。よって、データ量が上記の条件を満たせば、自サーバに記憶可能であるため、設定部35は、条件を満たすデータ種別をデータ転送設定から削除する。
ステップS503の処理後、ステップS504でNOの場合、またはS505の処理後、設定部35は、取得したイベントデータ入力頻度がイベントデータ入力頻度閾値を超えているか判定する(ステップS506)。ステップS506でYESの場合、設定部35は、データ入力高負荷フラグにTrueを設定する(ステップS507)。ステップS506でNOの場合、設定部35は、データ入力高負荷フラグにTrueが設定されているか判定する(ステップS508)。ステップS508でYESの場合、設定部35は、データ入力頻度が条件を満たすデータ種別に対応づけられた設定内容を、データ転送設定(例えば、図9)から削除する(ステップS509)。データ入力頻度が条件を満たすデータ種別は、そのデータ種別のイベントデータ入力頻度が、イベントデータ入力頻度閾値-イベントデータ入力頻度(全種別のイベントデータ入力頻度の合計)より小さいデータ種別である。ステップS506でNOであり、ステップS508でYESである場合、以前はデータ入力が高負荷であったが現在は高負荷でなくなったことを意味する。よって、データ量が上述の条件を満たせば、自サーバに記憶可能であるため、設定部35は、条件を満たすデータ種別をデータ転送設定から削除する。
ステップS507の処理後、ステップS508でNOの場合、またはS509の処理後、設定部35は、取得したDiskI/OがDiskI/O閾値を超えているか判定する(図26のステップS510)。ステップS510でYESの場合、設定部35は、DiskI/O高負荷フラグにTrueを設定する(ステップS511)。ステップS510でNOの場合、設定部35は、DiskI/O高負荷フラグにTrueが設定されているか判定する(ステップS512)。ステップS512でYESの場合、設定部35は、データ量(イベントデータサイズ×入力頻度)が条件を満たすデータ種別に対応づけられた設定内容を、データ転送設定から削除する(ステップS513)。データ量が条件を満たすデータ種別は、データ量が、DiskI/O閾値-DiskI/Oより小さいデータ種別である。ステップS510でNOであり、ステップS512でYESである場合、前回の処理ではDiskI/Oが高負荷であったが現在は高負荷でなくなったことを意味する。よって、データ量が上記の条件を満たせば、自サーバに記憶可能であるため、設定部35は、条件を満たすデータ種別に対応する設定内容をデータ転送設定から削除する。
図25、図26に示す処理により、サーバ3は、負荷が低下した場合に、データ転送設定を削除するため、自サーバに記憶可能なデータを転送することを避けることができる。
図27および図28は、転送設定決定処理の一例を示すフローチャートである。図27および図28に示す処理は、図18のステップS33の詳細である。
決定部36は転送データ分割数に1を設定する(ステップS601)。転送データ分割数は、データ群を転送する際の転送先サーバ数に相当する。例えば、転送データ分割数が1である場合、転送部37は、転送対象のデータ種別のデータ群を一つのサーバ3に転送する。例えば、転送データ分割数がSである場合、転送部37は、転送対象のデータ種別のイベントデータをSのデータ群に分割して、分割後のデータ群をS台のサーバ3に転送する。
決定部36は、転送データ分割数毎の繰り返し処理を開始する(ステップS602)。分割数の最大値として、例えば、他のサーバの数Sが設定されており、決定部36は、分割数=1~Sの範囲で繰り返しを行う。決定部36は、転送データ候補毎の繰り返し処理を開始する(ステップS603)。また、決定部36は、転送先サーバ候補毎の繰り返し処理を開始する(ステップS604)。決定部36は、イベントデータ数毎の繰り返し処理を開始する(ステップS605)。イベントデータ数の最大値として、予め所定値Nが設定されており、決定部36は、イベントデータ数=1~Nの範囲で繰り返しを行う。
決定部36は、上記の式(1)~(3)に示す条件を満たすか判定する(ステップS606)。条件を満たす場合(ステップS606でYES)、決定部36は、式(4)に基づいて、スループットを算出する(ステップS607)。決定部36は、ステップS607で算出されたスループットが一時記憶されているスループットより大きいかを判定する(ステップS608)。なお、ステップS608において、一時記憶されているスループットが存在しない場合、決定部36は、ステップS609の処理に移行する。ステップS608でYESの場合、決定部36は、処理対象の転送先サーバ候補、データ群のサイズおよび式(4)により算出したスループットを、転送データ候補のデータ種別と対応付けてデータ転送設定として一時記憶する(ステップS609)。データ転送設定として記憶された転送データ候補を、転送対象データと称する。なお、決定部36は、現在の処理対象のイベントデータ数にイベントデータサイズを乗算することにより、データ群のサイズを算出する。データ転送設定の一時記憶がすでに存在されている場合、決定部36は、処理対象の転送データ候補の種別、処理対象の転送先サーバ候補、データ群のサイズおよび算出したスループットを、一時記憶されているデータ転送設定に上書きする。
決定部36は、全てのイベントデータ数に関してステップS606~S609の処理を実行した場合、イベントデータ数毎の繰り返し処理を終了する(ステップS610)。決定部36は、全ての転送先サーバ候補に関してステップS605~S610の処理を実行した場合、転送先サーバ候補毎の繰り返し処理を終了する(ステップS611)。決定部36は、全ての転送データ候補に関してステップS604~S611の処理を実行した場合、転送データ候補毎の繰り返し処理を終了する(ステップS612)。
ステップS612の処理後、決定部36は、転送先サーバおよびイベントデータ数がデータ転送設定に一時記憶されているか判定する(図28のステップS613)。ステップS613でYESの場合、決定部36は、処理対象のデータ分割数に関する処理を終了する。ステップS613でNOの場合、データ分割数に1を加算し(ステップS614)、ステップS602に移行する。ステップS613でNOの場合、処理対象の分割数では、ステップS606の処理における条件を満たす転送データ、転送先サーバ、データ群のサイズの組が存在しなかったことを意味する。よって、決定部36は、データ分割数を増やし、転送先サーバ数を増やし、条件を満たす転送データ候補、転送先サーバ候補、データ群のサイズの組があるかを再度判定する。
データ分割数が最大値となるまで、ステップS603~S613の処理を実行した場合、データ分割数に関する繰り返し処理を終了する(ステップS615)。ステップS615の処理後、決定部36は、転送対象データのデータ種別に、一時記憶されている転送先サーバのID、データ群のサイズを対応付けてデータ転送設定(例えば、図9)に記録する(ステップS616)。決定部36は、転送先データ分割数が複数である場合、転送先サーバ毎のデータ群のサイズの比率をデータ転送設定に書き込む。
なお、データ分割数が最大値となるまで、ステップS606で条件を満たす転送先サーバ、データ群のサイズが存在しなかった場合、そのデータ種別は転送対象データとならない。すなわち、決定部36は、図27、図28の処理により、転送データ候補から転送対象データを決定する。
図29は、転送処理の一例を示すフローチャートである。図29に示す処理は、図18のステップS42の詳細である。転送部37は、受信部30がイベントデータを受信したか判定する(ステップS701)。受信部30がイベントデータを受信していない場合(ステップS701でNO)、転送部37は、イベントデータを受信するまで待機する。
イベントデータを受信した場合(ステップS710でYES)、そのイベントデータの種別に対応するデータ転送設定(例えば、図9)を取得する(ステップS702)。なお、受信したイベントデータの種別に対応するデータ転送設定処理(図27、図28に示す処理)が完了していない場合、転送部37は、データ転送設定処理が完了するまで待機する。
転送部37は、受信したイベントデータの種別が転送対象であるか判定する(ステップS703)。例えば、転送部37は、受信したイベントデータの種別がデータ転送設定に含まれるか判定する。ステップS703でYESの場合、転送対象データの宛先であるサーバ3(転送先サーバ)の情報(例えば、IPアドレス)を取得する(ステップS704)。他のサーバ3の情報は、予め管理情報記憶部38に記憶されているとする。
転送部37は、転送先サーバが接続可能であるか判定する(ステップS705)。転送部37は、例えば、転送先サーバに対して接続確認用のコマンドを送信し、応答を受信した場合に、接続可能であると判定する。ステップS705でYESの場合、転送部37は、転送先サーバにイベントデータをデータ群毎に転送する(ステップS706)。転送時のデータ群のサイズは、データ転送設定に記録されたサイズであるとする。ステップS705でNOの場合、転送部37は、その転送先サーバに関するデータ転送設定を削除する(ステップS707)。ステップS707の処理後またはステップS703でNOの場合、サーバ3は、自サーバのデータ記憶部39に、イベントデータを記憶する(ステップS708)。
以上のように、サーバ3は、転送するデータの候補と転送先のサーバ3の候補を絞り込んだ後、スループットに基づいて、転送対象データ、転送先サーバ、および転送時のデータ群のサイズを決定するので、決定する際の計算量を抑制することができる。また、サーバ3は、他のサーバ3にデータを転送することにより、自サーバに記憶することが困難なデータであっても情報処理端末5から利用可能な状態にすることができる。
次に、サーバ3のハードウェア構成の一例を説明する。図30は、サーバ3のハードウェア構成の一例を示す図である。図30の例に示すように、サーバ3において、バス100に、プロセッサ111とメモリ112と補助記憶装置113と通信インタフェース114と媒体接続部115と入力装置116と出力装置117とが接続される。
プロセッサ111は、メモリ112に展開されたプログラムを実行する。実行されるプログラムには、実施形態における処理を行う転送プログラムが適用されてもよい。
メモリ112は、例えば、Random Access Memory(RAM)である。補助記憶装置113は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等が適用されてもよい。補助記憶装置113に実施形態の処理を行う転送プログラムが記憶されていてもよい。
通信インタフェース114は、Local Area Network(LAN)、Wide Area Network(WAN)等の通信ネットワークに接続され、通信に伴うデータ変換等を行う。
媒体接続部115は、可搬型記録媒体118が接続可能なインタフェースである。可搬型記録媒体118には、光学式ディスク(例えば、Compact Disc(CD)またはDigital Versatile Disc(DVD))、半導体メモリ等が適用されてもよい。可搬型記録媒体118に実施形態の処理を行う転送プログラムが記録されていてもよい。
入力装置116は、例えば、キーボード、ポインティングデバイス等であり、ユーザからの指示及び情報等の入力を受け付ける。
出力装置117は、例えば、表示装置、プリンタ、スピーカ等であり、ユーザへの問い合わせ又は指示、及び処理結果等を出力する。
図2に示す管理情報記憶部38は、メモリ112、補助記憶装置113または可搬型記録媒体118等により実現されてもよい。図2に示すデータ記憶部39は、補助記憶装置113または可搬型記録媒体118等により実現されてもよい。図1に示す管理部31、判定部32、転送データ候補選択部33、転送先サーバ候補選択部34、設定部35、決定部36、および転送部37は、メモリ112に展開された転送プログラムをプロセッサ111が実行することにより実現されてもよい。
メモリ112、補助記憶装置113および可搬型記録媒体118は、コンピュータが読み取り可能であって非一時的な有形の記憶媒体であり、信号搬送波のような一時的な媒体ではない。
なお、サーバ3が図30に示す全ての構成要素を含んでいなくてもよく、一部の構成要素が省略されていてもよい。また、一部の構成要素がサーバ3の外部装置に存在し、サーバ3が外部装置に接続して、外部装置内の構成要素を利用してもよい。
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で様々な変更、追加、省略が適用可能である。
1 エッジ拠点
2 管理装置
3 サーバ
4 ネットワーク
5 情報処理端末
30 受信部
31 管理部
32 判定部
33 転送データ候補選択部
34 転送先サーバ候補選択部
35 設定部
36 決定部
37 転送部
38 管理情報記憶部
39 データ記憶部
100 バス
111 プロセッサ
112 メモリ
113 補助記憶装置
114 通信インタフェース
115 媒体接続部
116 入力装置
117 出力装置
118 可搬型記録媒体

Claims (5)

  1. データを受信し、
    前記データを受信した情報処理装置の、前記データを一時記憶するメモリの使用量、前記データの入力頻度、および前記データを記憶する記憶装置への入出力量に基づいて、前記データのうち他の情報処理装置に転送するデータの候補である転送データ候補を選択し、
    前記他の情報処理装置の前記データを一時記憶するメモリの使用量と該使用量についての上限を示す第1の閾値との大小関係、前記他の情報処理装置の前記データの入力頻度と該入力頻度についての上限を示す第2の閾値との大小関係、および前記他の情報処理装置の前記データを記憶する記憶装置への入出力量と該入出力量についての上限を示す第3の閾値との大小関係に基づいて、複数の前記他の情報処理装置のうちから、負荷状況が所定の状況よりも高負荷である前記他の情報処理装置を除いた残余の前記他の情報処理装置を、前記データの転送先の候補となる転送先装置候補として選択し、
    前記情報処理装置と前記転送先装置候補との間のスループットに基づいて前記転送データ候補から転送対象データを決定し、前記スループットに基づいて前記転送先装置候補から前記転送対象データの転送先装置を決定し、前記スループットに基づいて前記転送対象データを含むデータ群のサイズを決定し、
    決定された前記転送対象データを前記データ群毎に前記転送先装置に転送する
    処理を前記情報処理装置に実行させるための転送プログラム。
  2. 情報処理端末が前記データを前記情報処理装置に送信してから、他の情報処理端末が前記データを受信するまでの期間が所定期間以下となるように、前記転送対象データ、前記転送先装置、前記データ群のサイズを決定する
    処理を前記情報処理装置に実行させることを特徴とする請求項1記載の転送プログラム。
  3. データを受信し、
    前記データを受信した情報処理装置の負荷状況に基づいて、前記データのうち他の情報処理装置に転送するデータの候補である転送データ候補を選択し、
    複数の前記他の情報処理装置のうちから、負荷状況が所定の状況よりも高負荷である前記他の情報処理装置を除いた残余の前記他の情報処理装置を、前記データの転送先の候補となる転送先装置候補として選択し、
    前記情報処理装置と前記転送先装置候補との間のスループットに基づいて前記転送データ候補から転送対象データを決定し、前記スループットに基づいて前記転送先装置候補から前記転送対象データの転送先装置を決定し、前記スループットに基づいて前記転送対象データを含むデータ群のサイズを決定し、
    決定した前記転送対象データを示す識別情報、前記転送先装置を示す識別情報、前記データ群のサイズをデータ転送設定として記録し、
    決定された前記転送対象データを前記データ群毎に前記転送先装置に転送し、
    前記情報処理装置の負荷が低下した場合、前記データ転送設定を削除する
    処理を前記情報処理装置に実行させるための転送プログラム
  4. 情報処理装置が、
    データを受信し、
    前記情報処理装置の、前記データを一時記憶するメモリの使用量、前記データの入力頻度、および前記データを記憶する記憶装置への入出力量に基づいて、前記データのうち他の情報処理装置に転送するデータの候補である転送データ候補を選択し、
    複数の前記他の情報処理装置のうちから、負荷状況が所定の状況よりも高負荷である前記他の情報処理装置を除いた残余の前記他の情報処理装置を、前記データの転送先の候補となる転送先装置候補として選択し、
    前記他の情報処理装置の前記データを一時記憶するメモリの使用量と該使用量についての上限を示す第1の閾値との大小関係、前記他の情報処理装置の前記データの入力頻度と該入力頻度についての上限を示す第2の閾値との大小関係、および前記他の情報処理装置の前記データを記憶する記憶装置への入出力量と該入出力量についての上限を示す第3の閾値との大小関係に基づいて、前記情報処理装置と前記転送先装置候補との間のスループットに基づいて、前記転送データ候補から転送対象データを決定し、前記転送先装置候補から前記転送対象データの転送先装置を決定し、前記転送対象データを含むデータ群のサイズを決定し、
    決定された前記転送対象データを前記データ群毎に前記転送先装置に転送する
    処理を実行することを特徴とする転送方法。
  5. 情報処理装置であって、
    データを受信する受信部と、
    前記情報処理装置の、前記データを一時記憶するメモリの使用量、前記データの入力頻度、および前記データを記憶する記憶装置への入出力量に基づいて、前記データのうち他の情報処理装置に転送するデータの候補である転送データ候補を選択する転送データ候補選択部と、
    前記他の情報処理装置の前記データを一時記憶するメモリの使用量と該使用量についての上限を示す第1の閾値との大小関係、前記他の情報処理装置の前記データの入力頻度と該入力頻度についての上限を示す第2の閾値との大小関係、および前記他の情報処理装置の前記データを記憶する記憶装置への入出力量と該入出力量についての上限を示す第3の閾値との大小関係に基づいて、複数の前記他の情報処理装置のうちから、負荷状況が所定の状況よりも高負荷である前記他の情報処理装置を除いた残余の前記他の情報処理装置を、前記データの転送先の候補となる転送先装置候補を選択する転送先装置候補選択部と、
    前記情報処理装置と前記転送先装置候補との間のスループットに基づいて、前記転送データ候補から転送対象データを決定し、前記転送先装置候補から前記転送対象データの転送先装置を決定し、前記転送対象データを含むデータ群のサイズを決定する決定部と、
    決定された前記転送対象データを前記データ群毎に前記転送先装置に転送する転送部と
    を備えることを特徴とする情報処理装置。
JP2019045263A 2019-03-12 2019-03-12 転送プログラム、転送方法、および情報処理装置 Active JP7305990B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019045263A JP7305990B2 (ja) 2019-03-12 2019-03-12 転送プログラム、転送方法、および情報処理装置
US16/790,004 US11593176B2 (en) 2019-03-12 2020-02-13 Computer-readable recording medium storing transfer program, transfer method, and transferring device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019045263A JP7305990B2 (ja) 2019-03-12 2019-03-12 転送プログラム、転送方法、および情報処理装置

Publications (2)

Publication Number Publication Date
JP2020149249A JP2020149249A (ja) 2020-09-17
JP7305990B2 true JP7305990B2 (ja) 2023-07-11

Family

ID=72422582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019045263A Active JP7305990B2 (ja) 2019-03-12 2019-03-12 転送プログラム、転送方法、および情報処理装置

Country Status (2)

Country Link
US (1) US11593176B2 (ja)
JP (1) JP7305990B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220083433A1 (en) * 2020-09-17 2022-03-17 EMC IP Holding Company LLC Data center backup at the edge
US11722558B2 (en) * 2021-02-23 2023-08-08 Seagate Technology Llc Server-side resource monitoring in a distributed data storage environment
JP2024016723A (ja) * 2022-07-26 2024-02-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 通信システム及び通信方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256310A (ja) 2002-03-05 2003-09-12 Nec Corp サーバ負荷分散システム、サーバ負荷分散装置、コンテンツ管理装置、及びサーバ負荷分散プログラム
JP2008083942A (ja) 2006-09-27 2008-04-10 Hitachi Ltd ネットワーク経由のデータバックアップシステム及びそのための計算機
JP2008109499A (ja) 2006-10-26 2008-05-08 Toshiba Corp データ転送システム、データ送信装置、データ受信装置、データ転送方法、およびデータ転送プログラム。
JP2008226182A (ja) 2007-03-15 2008-09-25 Ricoh Co Ltd データ配信システム、データ配信方法、データ配信プログラム、および記録媒体
WO2010107105A1 (ja) 2009-03-19 2010-09-23 日本電気株式会社 ネットワークシステム
JP2013143732A (ja) 2012-01-12 2013-07-22 Kddi Corp 通信端末装置
JP2013183440A (ja) 2012-03-05 2013-09-12 Ntt Docomo Inc 通信制御装置、通信制御システム、仮想化サーバ管理装置、スイッチ装置および通信制御方法
JP2016206858A (ja) 2015-04-20 2016-12-08 京セラドキュメントソリューションズ株式会社 画像形成装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3923863B2 (ja) * 2002-07-09 2007-06-06 株式会社日立製作所 リクエストルータ装置
JP5640572B2 (ja) * 2010-09-01 2014-12-17 富士通株式会社 情報処理装置、情報処理プログラムおよびコピー処理方法
JP5874253B2 (ja) * 2011-09-08 2016-03-02 富士通株式会社 配信システム、配信方法、及び配信プログラム
JP2013097402A (ja) * 2011-10-27 2013-05-20 Fujitsu Ltd 仮想ストレージシステムの制御装置、仮想ストレージシステム、および制御方法
JP2013164822A (ja) * 2012-02-13 2013-08-22 Fujitsu Ltd 負荷閾値算出プログラム、負荷閾値算出装置および負荷閾値算出方法
JP6155861B2 (ja) * 2013-06-06 2017-07-05 富士通株式会社 データ管理方法、データ管理プログラム、データ管理システム及びデータ管理装置
JP2015232820A (ja) 2014-06-10 2015-12-24 三菱電機株式会社 サーバ装置、情報共有システム、情報共有方法及びプログラム
JP2016058033A (ja) * 2014-09-12 2016-04-21 富士通株式会社 ストレージ制御装置およびストレージ制御プログラム
WO2016194102A1 (ja) * 2015-06-01 2016-12-08 株式会社日立製作所 計算機システム、計算機、及び方法
US10476950B2 (en) * 2015-10-09 2019-11-12 Capital One Services, Llc System and method for risk-aware server load balancing
JP2017091454A (ja) 2015-11-17 2017-05-25 株式会社 グレープシステム データ収集制御装置、収集対象装置、データ収集処理プログラム、データ収集システム、データ収集制御プログラム、収集対象装置プログラム、及び、記録媒体
US10182020B2 (en) * 2016-05-31 2019-01-15 Anchorfree Inc. System and method for improving an aggregated throughput of simultaneous connections
JP6784096B2 (ja) * 2016-08-22 2020-11-11 富士通株式会社 データ分配プログラム、データ分配方法、およびデータ分配装置
JP6753999B2 (ja) * 2017-02-28 2020-09-09 株式会社日立製作所 分散データベースシステム及び分散データベースシステムのリソース管理方法
US20190044809A1 (en) * 2017-08-30 2019-02-07 Intel Corporation Technologies for managing a flexible host interface of a network interface controller
JP2019087033A (ja) * 2017-11-07 2019-06-06 富士通株式会社 情報処理装置、情報処理システム及びプログラム
JP7192645B2 (ja) * 2019-04-26 2022-12-20 富士通株式会社 情報処理装置、分散処理システム及び分散処理プログラム
JP2021068029A (ja) * 2019-10-18 2021-04-30 富士通株式会社 管理装置,情報処理システム及び管理プログラム
US11190231B1 (en) * 2020-07-27 2021-11-30 Fujitsu Limited Multiplexing of resource blocks within a communications network for dynamic service provisioning

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256310A (ja) 2002-03-05 2003-09-12 Nec Corp サーバ負荷分散システム、サーバ負荷分散装置、コンテンツ管理装置、及びサーバ負荷分散プログラム
JP2008083942A (ja) 2006-09-27 2008-04-10 Hitachi Ltd ネットワーク経由のデータバックアップシステム及びそのための計算機
JP2008109499A (ja) 2006-10-26 2008-05-08 Toshiba Corp データ転送システム、データ送信装置、データ受信装置、データ転送方法、およびデータ転送プログラム。
JP2008226182A (ja) 2007-03-15 2008-09-25 Ricoh Co Ltd データ配信システム、データ配信方法、データ配信プログラム、および記録媒体
WO2010107105A1 (ja) 2009-03-19 2010-09-23 日本電気株式会社 ネットワークシステム
JP2013143732A (ja) 2012-01-12 2013-07-22 Kddi Corp 通信端末装置
JP2013183440A (ja) 2012-03-05 2013-09-12 Ntt Docomo Inc 通信制御装置、通信制御システム、仮想化サーバ管理装置、スイッチ装置および通信制御方法
JP2016206858A (ja) 2015-04-20 2016-12-08 京セラドキュメントソリューションズ株式会社 画像形成装置

Also Published As

Publication number Publication date
US20200293373A1 (en) 2020-09-17
JP2020149249A (ja) 2020-09-17
US11593176B2 (en) 2023-02-28

Similar Documents

Publication Publication Date Title
JP7305990B2 (ja) 転送プログラム、転送方法、および情報処理装置
US9923821B2 (en) Managing communication congestion for internet of things devices
US10097379B2 (en) Managing communication congestion for internet of things devices
WO2017112364A1 (en) Managing communication congestion for internet of things devices
US10761888B2 (en) Method for deploying task to node based on execution completion point, task deployment apparatus and storage medium
US9135325B2 (en) Information processing apparatus, computer-readable recording medium, and information processing method
KR101173382B1 (ko) 데이터 전송 방법 및 장치
TW201931145A (zh) 動態工作移轉方法及伺服器
US9781023B2 (en) Information processing device, information processing method, and recording medium
US20150281352A1 (en) Communication control device, storage device, and communication control method
JP7017112B2 (ja) 誤差補正方法、分散処理システムおよび情報処理装置
JP2010212751A (ja) 接続先ノード選択方法、ノード、およびプログラム
JP2019009610A (ja) エッジ装置、データ処理システム、データ送信方法、及びプログラム
WO2017169948A1 (ja) 通信システム、可用帯域推定装置、可用帯域推定方法および可用帯域推定プログラムが記憶された記録媒体
JP6885463B2 (ja) 送信装置、可用帯域推定装置、可用帯域推定システム、方法
US20180349190A1 (en) Process control program, process control method, information processing device, and communication device
JP4648290B2 (ja) パケット転送装置、パケット分配方法、グループ所属プロセッサ変更方法、およびコンピュータプログラム
JP6163474B2 (ja) ストレージ管理装置、ストレージ管理システム、制御方法及びプログラム
JP2007281783A (ja) 通信制御方法及び通信制御装置
JP6709689B2 (ja) 計算機システム及び計算機システムの制御方法
JP2014112779A (ja) データ送信制御装置、データ送信制御方法、および、コンピュータ・プログラム
WO2013145222A1 (ja) 情報処理装置およびデータ保存処理プログラム
JPWO2013145222A1 (ja) 情報処理装置およびデータ保存処理プログラム
JPWO2019131404A1 (ja) 通信装置及び通信方法
US7373419B2 (en) Method, system, and article of manufacture for increasing network throughput

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230612

R150 Certificate of patent or registration of utility model

Ref document number: 7305990

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150