Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6129698B2 - Software distribution system and software distribution method - Google Patents
[go: Go Back, main page]

JP6129698B2 - Software distribution system and software distribution method - Google Patents

Software distribution system and software distribution method Download PDF

Info

Publication number
JP6129698B2
JP6129698B2 JP2013193239A JP2013193239A JP6129698B2 JP 6129698 B2 JP6129698 B2 JP 6129698B2 JP 2013193239 A JP2013193239 A JP 2013193239A JP 2013193239 A JP2013193239 A JP 2013193239A JP 6129698 B2 JP6129698 B2 JP 6129698B2
Authority
JP
Japan
Prior art keywords
distribution
order
data
network
router
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
JP2013193239A
Other languages
Japanese (ja)
Other versions
JP2015060381A (en
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013193239A priority Critical patent/JP6129698B2/en
Publication of JP2015060381A publication Critical patent/JP2015060381A/en
Application granted granted Critical
Publication of JP6129698B2 publication Critical patent/JP6129698B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Description

本発明は、ソフトウェア配布システム、およびソフトウェア配布方法に関する。   The present invention relates to a software distribution system and a software distribution method.

従来から、ソフトウェアをサーバからクライアントに配信する際に、クライアント側の事情によって配信出来なかった場合に、そのソフトウェアを再配布する技術がある。例えば、特許文献1には、サーバが配信情報を配信している際に、MFPから再配信要求を受信した場合には、ロールバックによりデータを元の状態にし、チェックポイントにデータを戻した状態から処理を再開する技術が開示されている。   2. Description of the Related Art Conventionally, when distributing software from a server to a client, there is a technique for redistributing the software when it cannot be distributed due to circumstances on the client side. For example, in Patent Document 1, when the server distributes distribution information, when a redistribution request is received from the MFP, the data is returned to the checkpoint by rollback and the data is returned to the checkpoint. A technique for resuming processing from the above is disclosed.

特開2008−24206号公報JP 2008-24206 A

上述した特許文献1では、MFPが配信情報を再配信要求した場合、データの整合性が確認されているチェックポイントまで処理を戻して配信情報を再配信している。したがって、例えば、送信ファイルのサイズが回線に対して過大である場合には、回線が過負荷状態となって、正しく送信ファイルが配信されず、クライアントは再び再配信要求をしなければならなくなる。このような問題点は、送信ファイルが配信されるクライアントの数が多くなればなるほど送信ファイルの数も多くなるため顕著となるため、送信ファイルのサイズや回線の帯域などの配信条件を考慮して優先順位をつけた上で送信ファイルを配信することが望まれていた。   In Patent Document 1 described above, when the MFP requests redistribution of distribution information, the distribution information is redistributed by returning the processing to a checkpoint where data consistency is confirmed. Therefore, for example, when the size of the transmission file is excessive with respect to the line, the line becomes overloaded, the transmission file is not correctly distributed, and the client has to make a redistribution request again. Such problems become more prominent because the number of transmission files increases as the number of clients to which transmission files are distributed increases. Considering distribution conditions such as the size of transmission files and bandwidth of lines. It was desired to distribute transmission files with priorities.

本発明は、上記に鑑みてなされたものであって、配信条件を考慮して優先順位をつけた上で送信ファイルを配信することが可能なソフトウェア配布システム、およびソフトウェア配布方法を提供することを目的とする。   The present invention has been made in view of the above, and provides a software distribution system and a software distribution method capable of distributing a transmission file with priority given in consideration of distribution conditions. Objective.

上述した課題を解決し、目的を達成するために、本発明にかかるソフトウェア配布システムは、配布サーバがネットワークを介して複数の端末にデータを配布するソフトウェア配布システムであって、前記ネットワークおよび前記データに関する複数の配布条件に基づいて前記データの配布順を定める順序決定部と、定められた配布順で前記データを前記端末に配信する配信部と、を備えることを特徴とするソフトウェア配布システムとして構成される。   In order to solve the above-described problems and achieve the object, a software distribution system according to the present invention is a software distribution system in which a distribution server distributes data to a plurality of terminals via a network, the network and the data A software distribution system comprising: an order determination unit that determines a distribution order of the data based on a plurality of distribution conditions; and a distribution unit that distributes the data to the terminal in a predetermined distribution order Is done.

また、本発明は、上記ソフトウェア配布システムで行われるソフトウェア配布方法である。   The present invention also relates to a software distribution method performed by the software distribution system.

本発明によれば、配信条件を考慮して優先順位をつけた上で送信ファイルを配信することができる。   According to the present invention, a transmission file can be distributed after priorities are set in consideration of distribution conditions.

ソフトウェア配布システムの一実施の形態を示す構成図である。1 is a configuration diagram showing an embodiment of a software distribution system. 配布エラーテーブルの構成例を示す図である。It is a figure which shows the structural example of a distribution error table. 再配布宛先テーブルの構成例を示す図である。It is a figure which shows the structural example of a redistribution destination table. データの再配布処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of a data redistribution process. 条件算出部が再配布宛先分割テーブルを生成した様子を示す図である。It is a figure which shows a mode that the condition calculation part produced | generated the redistribution destination division | segmentation table. 条件算出部が(配布サイズ/帯域)を算出し、再配布宛先分割テーブルにその項目を追加した様子を示す図である。It is a figure which shows a mode that a condition calculation part calculated (distribution size / bandwidth) and added the item to the redistribution destination division | segmentation table. 順序決定部が(配布サイズ/帯域)の昇順にデータの配布順を設定する例を示す図である。It is a figure which shows the example which an order determination part sets the distribution order of data in the ascending order of (distribution size / bandwidth). 順序決定部がルータ毎にレコードを並べ替え、配布順を再設定する例を示す図である。It is a figure which shows the example which an order determination part rearranges a record for every router, and resets a distribution order. 順序決定部が、各レコードを(配布サイズ/帯域)の昇順に配布順を再設定する例を示す図である。It is a figure which shows the example which an order determination part resets a distribution order for each record to the ascending order of (distribution size / bandwidth). 順序決定部が、(配布サイズ/帯域)の加算結果にしたがって、各レコードの配布順を同じ順序を再設定する例を示す図である。It is a figure which shows the example which an order determination part resets the same order as the distribution order of each record according to the addition result of (distribution size / bandwidth).

以下に添付図面を参照して、本発明にかかるソフトウェア配布システム、およびソフトウェア配布方法の実施の形態を詳細に説明する。   Embodiments of a software distribution system and a software distribution method according to the present invention will be described below in detail with reference to the accompanying drawings.

図1は、本発明に係るソフトウェア配布システムの一実施の形態を示す構成図である。図1に示すように、ソフトウェア配布システム1000は、配布サーバ100と、ネットワーク200と、ルータ300と、ネットワーク400と、端末500とを有して構成されている。図1に示すように、ネットワーク200には、複数のルータ300(ルータ300−1〜300−n)が接続され、各ルータ300は、それぞれネットワーク400(以下、それぞれのネットワーク400を、ネットワーク400−1〜400−nとする)に接続されている。さらに、複数の端末500(以下、それぞれの端末500を、端末500−1〜500−nとする)が、それぞれのネットワーク400に接続されている。なお、ネットワーク200およびネットワーク400は、一般的な公衆回線網である。   FIG. 1 is a block diagram showing an embodiment of a software distribution system according to the present invention. As shown in FIG. 1, the software distribution system 1000 includes a distribution server 100, a network 200, a router 300, a network 400, and a terminal 500. As shown in FIG. 1, a plurality of routers 300 (routers 300-1 to 300-n) are connected to the network 200. Each router 300 is connected to a network 400 (hereinafter, each network 400 is referred to as a network 400-). 1 to 400-n). Furthermore, a plurality of terminals 500 (hereinafter, the respective terminals 500 are referred to as terminals 500-1 to 500-n) are connected to the respective networks 400. Note that the network 200 and the network 400 are general public line networks.

配布サーバ100は、ソフトウェアやファイル等のデータ(以下、単にデータと呼ぶ。)を端末500に配布するサーバである。図1に示すように、配布サーバ100は、記憶部110と、条件算出部120と、順序決定部130と、配信部140と、通信部150とを有して構成されている。なお、配布サーバ100が有する各部(例えば、条件算出部120、順序決定部130、配信部140)は、実際には、CPU(Central Processing Unit)等の処理装置によって、アプリケーションプログラムとして実行されることにより、これら各部の機能が実現されるようになっている。   The distribution server 100 is a server that distributes data such as software and files (hereinafter simply referred to as data) to the terminal 500. As illustrated in FIG. 1, the distribution server 100 includes a storage unit 110, a condition calculation unit 120, an order determination unit 130, a distribution unit 140, and a communication unit 150. Each unit (for example, the condition calculation unit 120, the order determination unit 130, and the distribution unit 140) included in the distribution server 100 is actually executed as an application program by a processing device such as a CPU (Central Processing Unit). Thus, the functions of these units are realized.

記憶部110は、HDD(Hard disk drive)等の記憶装置から構成され、配布エラーテーブル1101と、再配布宛先テーブル1102とを記憶する。   The storage unit 110 includes a storage device such as an HDD (Hard disk drive), and stores a distribution error table 1101 and a redistribution destination table 1102.

配布エラーテーブル1101は、端末500にデータを配信した際に生じたエラーに関する情報を記憶するテーブルである。図2は、配布エラーテーブル1101の構成例を示す図である。図2に示すように、配布エラーテーブル1101は、レコードの件数を示す連番と、エラーとなった端末のIPアドレスと、その端末が接続されているルータ300と、その端末500とルータ300との間の帯域と、配布したデータの作成日時と、そのデータが作成されたパッケージの名称(パッケージ名)と、データのサイズ(配布サイズ)と、配布した結果を示す実行状態と、配布するデータを所定数の端末500を単位としてグルーピングしたグループを示す宛先グループとを含む項目が対応付けて記憶されている。この宛先グループは、必ずしもルータ300配下にある端末500ごとに定められるものではなく、例えば、ルータ300−1の配下にある端末500と、ルータ300−2の配下にある端末500とが1つのグループに含まれる場合もあり、その定め方は任意である。   The distribution error table 1101 is a table that stores information regarding errors that occur when data is distributed to the terminal 500. FIG. 2 is a diagram illustrating a configuration example of the distribution error table 1101. As shown in FIG. 2, the distribution error table 1101 includes a serial number indicating the number of records, the IP address of the terminal in error, the router 300 to which the terminal is connected, the terminal 500 and the router 300, , The creation date and time of the distributed data, the name of the package in which the data was created (package name), the size of the data (distribution size), the execution status indicating the distribution result, and the data to be distributed Are stored in association with a destination group indicating a group in which a predetermined number of terminals 500 are grouped as a unit. This destination group is not necessarily defined for each terminal 500 under the router 300. For example, the terminal 500 under the router 300-1 and the terminal 500 under the router 300-2 are one group. May be included, and how to determine it is arbitrary.

図2では、例えば、連番1のレコードは、配布サーバ100は、ルータ300である「R1」を経由して、宛先グループ「A」に属するIPアドレス「xx.xx.xx.100」の端末500に、配布サイズ「10(MB)」のデータを配信したものの、正しく配信されず、実行結果がエラーとなったことを示している。また、配信したデータは、パッケージ「AAA」に関するものであり、2013年7月1日に作成されたデータであることを示している。なお、配布エラーテーブル1101は、配布サーバ100の配信部140が、あらかじめ定められたスケジュールにしたがってデータを端末500に配信した場合に、端末500からその結果を受信し、上述した内容が記録される。   In FIG. 2, for example, the record of serial number 1 is transmitted to the terminal of the IP address “xx.xx.xx.100” belonging to the destination group “A” via the distribution server 100 via “R1” which is the router 300. 500 indicates that data of distribution size “10 (MB)” is distributed, but is not correctly distributed and an execution result is an error. The distributed data relates to the package “AAA”, and indicates that the data was created on July 1, 2013. The distribution error table 1101 receives the result from the terminal 500 when the distribution unit 140 of the distribution server 100 distributes data to the terminal 500 according to a predetermined schedule, and records the above-described contents. .

再配布宛先テーブル1102は、配布エラーテーブル1101に記録されている各項目の中からそのデータの再配布に必要な項目を抽出した情報を記憶するテーブルである。図3は、再配布宛先テーブル1102の構成例を示す図である。図3に示すように、再配布宛先テーブル1102は、IPアドレスと、宛先グループと、配布サイズと、ルータと、帯域とが対応付けて記憶されている。これらの各項目は、配布エラーテーブル1101と同様であるため、ここではその説明を省略する。続いて、図1に戻って、条件算出部120について説明する。   The redistribution destination table 1102 is a table that stores information obtained by extracting items necessary for redistribution of data from items recorded in the distribution error table 1101. FIG. 3 is a diagram illustrating a configuration example of the redistribution destination table 1102. As shown in FIG. 3, the redistribution destination table 1102 stores an IP address, a destination group, a distribution size, a router, and a bandwidth in association with each other. Since these items are the same as those in the distribution error table 1101, the description thereof is omitted here. Next, returning to FIG. 1, the condition calculation unit 120 will be described.

条件算出部120は、再配布宛先テーブル1102の各レコード(すなわち、IPアドレスごと)に、ネットワークの帯域あたりに配信可能なデータの配布サイズ(配布サイズ/帯域)を算出し、算出した結果をそのレコードの項目として追加する。条件算出部120が行う具体的な処理についてはフローチャートを用いて後述する。   The condition calculation unit 120 calculates the distribution size (distribution size / bandwidth) of data that can be distributed per network bandwidth for each record (that is, for each IP address) in the redistribution destination table 1102, and the calculated result is Add as a record item. Specific processing performed by the condition calculation unit 120 will be described later using a flowchart.

順序決定部130は、再配布宛先テーブル1102に記録されている端末500に対するデータの再配布順序を、例えば、宛先グループ、データの配布サイズ、帯域等の条件に応じて決定する。順序決定部130が行う具体的な処理についてはフローチャートを用いて後述する。   The order determination unit 130 determines the redistribution order of data for the terminal 500 recorded in the redistribution destination table 1102 according to conditions such as a destination group, data distribution size, and bandwidth. Specific processing performed by the order determination unit 130 will be described later using a flowchart.

配信部140は、あらかじめ定められたスケジュールに従って、端末500に対してデータを配信する。また、配信部140は、データの配信結果(実行状態)がエラーであった場合に、順序決定部130が決定した配信順序に従って、データを再配信する。配信部140が行う具体的な処理についてはフローチャートを用いて後述する。   Distribution unit 140 distributes data to terminal 500 according to a predetermined schedule. In addition, when the data distribution result (execution state) is an error, the distribution unit 140 redistributes the data according to the distribution order determined by the order determination unit 130. Specific processing performed by the distribution unit 140 will be described later using a flowchart.

通信部150は、NIC(Network Interface Card)等の通信装置から構成され、配布サーバ100とルータ300との間の通信を司る。ルータ300は、ネットワーク200を介して配信サーバ100から受信したデータをネットワーク400に中継する。   The communication unit 150 is composed of a communication device such as a NIC (Network Interface Card), and manages communication between the distribution server 100 and the router 300. The router 300 relays data received from the distribution server 100 via the network 200 to the network 400.

端末500は、ネットワーク400を介してルータ300からデータを受信し、不図示の記憶部に記憶する。また、端末500は、ルータ300からデータを正しく受信できない場合に、エラーを示す情報(例えば、図2に示した配布エラーテーブル1101と同様の情報)をルータ300、ネットワーク200および400を介して配布サーバ100に送信する。   The terminal 500 receives data from the router 300 via the network 400 and stores it in a storage unit (not shown). In addition, when the terminal 500 cannot correctly receive data from the router 300, the terminal 500 distributes information indicating an error (for example, information similar to the distribution error table 1101 shown in FIG. 2) via the router 300 and the networks 200 and 400. Send to server 100.

続いて、ソフトウェア配布システム1000で行われるデータの再配布処理について説明する。なお、以下では、配布サーバ100の配信部140がデータを端末500に配信した後、エラーを示す情報を端末500から受信して、配布エラーテーブル1101にその内容が記録されている状態にあるものとする。   Next, data redistribution processing performed in the software distribution system 1000 will be described. In the following, after the distribution unit 140 of the distribution server 100 distributes data to the terminal 500, information indicating an error is received from the terminal 500, and the contents are recorded in the distribution error table 1101. And

図4は、データの再配布処理の処理手順を示すフローチャートである。図4に示すように、データの再配布処理では、まず、条件算出部120が、図2に示した配布エラーテーブル1101から項目を抽出して図3に示した再配布宛先テーブル1102を生成した後、宛先グループ毎に分割した再配布宛先分割テーブルを生成する(ステップS401)。   FIG. 4 is a flowchart showing a processing procedure of data redistribution processing. As shown in FIG. 4, in the data redistribution process, first, the condition calculation unit 120 extracts items from the distribution error table 1101 shown in FIG. 2 to generate the redistribution destination table 1102 shown in FIG. Thereafter, a redistribution destination division table divided for each destination group is generated (step S401).

図5は、条件算出部120が再配布宛先分割テーブルを生成した様子を示す図である。図5に示すように、条件算出部120は、図3に示した再配布宛先テーブル1102に含まれる宛先グループごと(図5では、「A」、「B」、「C」ごと)に再配布宛先分割テーブルを生成する。   FIG. 5 is a diagram illustrating a state in which the condition calculation unit 120 has generated the redistribution destination division table. As shown in FIG. 5, the condition calculation unit 120 redistributes for each destination group (in FIG. 5, “A”, “B”, and “C”) included in the redistribution destination table 1102 shown in FIG. Generate a destination partition table.

そして、条件算出部120は、再配布宛先分割テーブルに含まれる各レコード(すなわち、その宛先グループに属する端末500)ごとに、ネットワークの帯域あたりに配信するデータの配布サイズ(配布サイズ/帯域)を算出し、そのレコードに項目を追加する(ステップS402)。   Then, the condition calculation unit 120 sets the distribution size (distribution size / bandwidth) of data to be distributed per network band for each record (that is, the terminal 500 belonging to the destination group) included in the redistribution destination division table. Calculate and add an item to the record (step S402).

図6は、条件算出部120が(配布サイズ/帯域)を算出し、再配布宛先分割テーブルにその項目を追加した様子を示す図である。図6では、例えば、条件算出部120は、宛先グループが「A」に属し、IPアドレスが「xx.xx.xx.100」である端末500に配布するファイルサイズが「10(MB)」であり、その端末500とルータ300との間の帯域が「20(Mbps)」であるため、「0.50(MB/Mbps)」を算出し、項目を追加したことを示している。このように、条件算出部120は、各グループの各レコードについて、(配布サイズ/帯域)を算出する。   FIG. 6 is a diagram illustrating a state in which the condition calculation unit 120 calculates (distribution size / bandwidth) and adds the item to the redistribution destination division table. In FIG. 6, for example, the condition calculation unit 120 has a file size of “10 (MB)” distributed to the terminal 500 whose destination group belongs to “A” and whose IP address is “xx.xx.xx.100”. Yes, since the bandwidth between the terminal 500 and the router 300 is “20 (Mbps)”, “0.50 (MB / Mbps)” is calculated, indicating that an item has been added. In this way, the condition calculation unit 120 calculates (distribution size / bandwidth) for each record in each group.

その後、条件算出部120が(配布サイズ/帯域)を算出すると、順序決定部130は、最初に、データを配布する優先順位をつけるための条件として、再配布宛先分割テーブルごとに、(配布サイズ/帯域)の昇順に、データの配布順を設定する(ステップS403)。図7は、順序決定部130が(配布サイズ/帯域)の昇順にデータの配布順を設定する例を示す図である。図7では、例えば、順序決定部130は、宛先グループが「A」である再配布宛先分割テーブルの各レコードの(配布サイズ/帯域)を参照し、その値(上から、0.50、1.67、1.00)の昇順に配布順(0.50、1.00、1.67)を設定する。ここでは、IPアドレスが「xx.xx.xx.100」の端末が最初にデータが配布され、次にIPアドレスが「xx.xx.xx.102」の端末、IPアドレスが「xx.xx.xx.101」の端末という順序となる。   After that, when the condition calculation unit 120 calculates (distribution size / bandwidth), the order determination unit 130 first sets (distribution size) for each redistribution destination division table as a condition for assigning priorities for data distribution. The distribution order of data is set in ascending order of (bandwidth) (step S403). FIG. 7 is a diagram illustrating an example in which the order determining unit 130 sets the data distribution order in ascending order of (distribution size / bandwidth). In FIG. 7, for example, the order determining unit 130 refers to (distribution size / bandwidth) of each record of the redistribution destination division table whose destination group is “A” and sets the value (from the top to 0.50, 1). .67, 1.00) in ascending order (0.50, 1.00, 1.67). Here, data is first distributed to a terminal having an IP address “xx.xx.xx.100”, then a terminal having an IP address “xx.xx.xx.102”, and an IP address “xx.xx.100”. xx.101 "terminal.

そして、順序決定部130は、次の優先順位をつけるための条件として、それぞれの再配布宛先分割テーブルについて、ルータへの負荷を考慮し、ルータ毎にレコードを並べ替え、配布順を再設定する(ステップS404、S405)。図8は、順序決定部130がルータ毎にレコードを並べ替え、配布順を再設定する例を示す図である。図8では、例えば、順序決定部130は、宛先グループが「A」である再配布宛先分割テーブルの各レコードのルータを参照し、同じルータごとに(配布サイズ/帯域)の昇順に配布順を設定し直す。ここでは、ルータが同じ「R1」であるIPアドレスが「xx.xx.xx.100」および「xx.xx.xx.101」の端末が(配布サイズ/帯域)の昇順に配布順が再設定され、前者が最初(「1」)に配布され、後者が次(「2」)に配布されることとなる。一方、IPアドレスが「xx.xx.xx.102」の端末については、ルータは「R2」であるため、データの配布順は最初(「1」)として再設定される。このように、レコードをソートしつつ配布順を決定するので、効率よくその順序を決定することができる。   Then, the order determination unit 130 rearranges the records for each router and resets the distribution order for each redistribution destination division table in consideration of the load on the router as a condition for assigning the next priority. (Steps S404 and S405). FIG. 8 is a diagram illustrating an example in which the order determination unit 130 rearranges records for each router and resets the distribution order. In FIG. 8, for example, the order determination unit 130 refers to the router of each record in the redistribution destination division table whose destination group is “A”, and sets the distribution order in ascending order of (distribution size / bandwidth) for each same router. Set again. Here, the distribution order is reset in the ascending order of (distribution size / bandwidth) for terminals whose IP addresses are “xx.xx.xx.100” and “xx.xx.xx.101” with the same router “R1”. The former is distributed first (“1”) and the latter is distributed next (“2”). On the other hand, for the terminal whose IP address is “xx.xx.xx.102”, since the router is “R2”, the data distribution order is reset as the first (“1”). Thus, since the distribution order is determined while sorting the records, the order can be determined efficiently.

順序決定部130は、再配布宛先分割テーブルごとに、各レコードを(配布サイズ/帯域)の昇順に配布順を再設定する(ステップS406)。図9は、順序決定部130が、各レコードを(配布サイズ/帯域)の昇順に配布順を再設定する例を示す図である。図9では、例えば、順序決定部130は、宛先グループが「B」である再配布宛先分割テーブルの各レコードの(配布サイズ/帯域)を参照し、同じルータごとに(配布サイズ/帯域)の昇順に配布順を設定し直す。ここでは、ルータがそれぞれ異なるため、(配布サイズ/帯域)の値が最も小さいレコード(IPアドレスが「xx.xx.xx.202」のレコード)が最初のレコードとして並べ替えられる。このように、(配布サイズ/帯域)の値が最も小さいレコード順に並べ替えて配布順が決定されるので、出来る限り多くのデータを同じスケジュールで配信することができる。   The order determination unit 130 resets the distribution order for each record in ascending order of (distribution size / bandwidth) for each redistribution destination division table (step S406). FIG. 9 is a diagram illustrating an example in which the order determination unit 130 resets the distribution order of each record in ascending order of (distribution size / bandwidth). In FIG. 9, for example, the order determination unit 130 refers to (distribution size / bandwidth) of each record in the redistribution destination division table whose destination group is “B” and sets (distribution size / bandwidth) for each same router. Reset the distribution order in ascending order. Here, since the routers are different, the record with the smallest value of (distribution size / bandwidth) (the record with the IP address “xx.xx.xx.202”) is rearranged as the first record. In this way, since the distribution order is determined by rearranging the records in the order of the smallest (distribution size / bandwidth) value, as much data as possible can be distributed on the same schedule.

そして、順序決定部130は、それぞれの再配布宛先分割テーブルについて、ルータ毎に各レコードの(配布サイズ/帯域)を昇順で1レコードずつ加算し(ステップS407)、その加算結果が所定値(端末500とルータ300との間の帯域あたりの許容される配布サイズ。例えば、2.2Mb)を超えたか否かを判定し(ステップS408)、その加算結果が所定値を超えていないと判定した場合(ステップS408;No)、ステップS407に戻って加算を繰り返す。   Then, the order determining unit 130 adds (distribution size / bandwidth) of each record for each router in ascending order for each redistribution destination division table (step S407), and the addition result is a predetermined value (terminal) When an allowable distribution size per band between 500 and the router 300 is exceeded (for example, 2.2 Mb) (step S408), and it is determined that the addition result does not exceed a predetermined value (Step S408; No), it returns to Step S407 and repeats addition.

一方、順序決定部130は、その加算結果が所定値を超えたと判定した場合(ステップS408;Yes)、所定値を超えたと判定する以前に加算したレコードを同じ配布順に設定する(ステップS409)。なお、ステップS407において、EOFとなった場合には、ステップS412に進む。   On the other hand, when the order determination unit 130 determines that the addition result exceeds the predetermined value (step S408; Yes), the order determination unit 130 sets the records added before determining that the addition value exceeds the predetermined value in the same distribution order (step S409). In step S407, when EOF is reached, the process proceeds to step S412.

例えば、図10に示すように、順序決定部130は、宛先グループが「A」である再配布宛先分割テーブルの中で、IPアドレスが「xx.xx.xx.100」のレコードおよびIPアドレスが「xx.xx.xx.101」のレコードの(配布サイズ/帯域)を加算した結果、その値が2.17であるため、これらの各レコードの配布順を同じ順序(この例では「1」)に再設定する。その次のIPアドレスが「xx.xx.xx.102」のレコードの(配布サイズ/帯域)は「1.00」であり、加算結果が「2.67」となり所定値を超えてしまうため、このレコードについては同じ配布順に設定されず、次の配布順に設定される。   For example, as illustrated in FIG. 10, in the redistribution destination division table in which the destination group is “A”, the order determination unit 130 has a record having an IP address “xx.xx.xx.100” and an IP address. As a result of adding (distribution size / bandwidth) of the record of “xx.xx.xx.101”, the value is 2.17. Therefore, the distribution order of these records is the same (in this example, “1”). ). Since the (distribution size / bandwidth) of the record whose next IP address is “xx.xx.xx.102” is “1.00” and the addition result is “2.67”, it exceeds the predetermined value. This record is not set in the same distribution order, but is set in the next distribution order.

なお、ステップS409では、端末500とルータ300との間の帯域あたりの配布サイズが所定値を超えているか否かを判定しているため、ルータが異なる場合であっても、その所定値を超えない限り同じ配布順に設定されるが、ルータが異なる場合には配布順が異なるように設定してもよい。この場合、ルータの負荷やネットワークの負荷がさらに軽減される。   In step S409, since it is determined whether or not the distribution size per band between the terminal 500 and the router 300 exceeds a predetermined value, even if the routers are different, the predetermined value is exceeded. The distribution order is the same as long as it is not, but when the routers are different, the distribution order may be different. In this case, the load on the router and the load on the network are further reduced.

そして、順序決定部130は、次のレコードの(配布サイズ/帯域)が上述した所定値を超えているか否かを判定し(ステップS410)、その(配布サイズ/帯域)が上述した所定値を超えていないと判定した場合(ステップS410;No)、ステップS407に戻って、以降の処理を繰り返す。   Then, the order determination unit 130 determines whether (distribution size / bandwidth) of the next record exceeds the above-described predetermined value (step S410), and (distribution size / bandwidth) sets the predetermined value described above. If it is determined that it does not exceed (step S410; No), the process returns to step S407 and the subsequent processing is repeated.

一方、順序決定部130は、次のレコードの(配布サイズ/帯域)が上述した所定値を超えていると判定した場合(ステップS410;Yes)、そのデータは容量が大きいと考えられるため、個別送付となるように、その1つのデータに対して配布順を決定する(ステップS411)。このステップS411の処理が終了すると、それぞれの再配布宛先分割テーブルの中でのデータの配布順が決定する。   On the other hand, when the order determination unit 130 determines that the (distribution size / bandwidth) of the next record exceeds the above-described predetermined value (step S410; Yes), the data is considered to have a large capacity. The distribution order is determined for the one data so as to be sent (step S411). When the processing in step S411 is completed, the distribution order of data in each redistribution destination division table is determined.

そして、順序決定部130は、ステップS411までに決定した同じ配布順のレコードの(配布サイズ/帯域)を加算し(ステップS412)、その加算結果が所定値(ルータ300と配布サーバ100の間の帯域あたりの許容される配布サイズ。例えば、10Mb)を超えたか否かを判定し(ステップS413)、その加算結果が所定値を超えていないと判定した場合(ステップS413;No)、ステップS412に戻って加算を繰り返す。   Then, the order determining unit 130 adds (distribution size / bandwidth) of records in the same distribution order determined up to step S411 (step S412), and the addition result is a predetermined value (between the router 300 and the distribution server 100). It is determined whether or not an allowable distribution size per band (for example, 10 Mb) is exceeded (step S413), and when it is determined that the addition result does not exceed a predetermined value (step S413; No), the process proceeds to step S412. Return and repeat addition.

一方、順序決定部130は、その加算結果が所定値を超えたと判定した場合(ステップS413;Yes)、所定値を超えたと判定する以前に加算したレコードを同じ配布順に設定する(ステップS414)。   On the other hand, when the order determination unit 130 determines that the addition result exceeds the predetermined value (step S413; Yes), the order determination unit 130 sets the records added before determining that the addition value exceeds the predetermined value in the same distribution order (step S414).

例えば、図10に示した例では、順序決定部130は、宛先グループが「A」である再配布宛先分割テーブルの中で、配布順が「1」となっているレコード(IPアドレスが「xx.xx.xx.100」のレコードおよびIPアドレスが「xx.xx.xx.101」のレコード)の(配布サイズ/帯域)の加算結果「2.17」と、宛先グループが「B」である再配布宛先分割テーブルの中で、配布順が「1」となっているレコード(IPアドレスが「xx.xx.xx.202」のレコードおよびIPアドレスが「xx.xx.xx.200」のレコード)の(配布サイズ/帯域)の加算結果「0.87」と、宛先グループが「C」である再配布宛先分割テーブルの中で、配布順が「1」となっているレコード(IPアドレスが「xx.xx.xx.301」のレコード)の(配布サイズ/帯域)の加算結果「0.22」とを加算した「3.24」と、所定値である「10」とを比較し、加算結果がその所定値を超えていないため、これらのレコードの配布順を同じ配布順とする。   For example, in the example illustrated in FIG. 10, the order determination unit 130 records in the redistribution destination division table with the destination group “A” and the distribution order is “1” (the IP address is “xx”). .Xx.xx.100 ”and IP address“ xx.xx.xx.101 ”) (distribution size / bandwidth) addition result“ 2.17 ”and destination group“ B ” In the redistribution destination division table, a record in which the distribution order is “1” (a record with an IP address “xx.xx.xx.202” and a record with an IP address “xx.xx.xx.200”) ) (Distribution size / bandwidth) addition result “0.87” and a record (IP address is “1”) in the redistribution destination division table with the destination group “C”. “Xx. “3.24” obtained by adding the “distribution size / bandwidth” addition result “0.22” of the record “x.xx.301” and “10” which is a predetermined value are compared, and the addition result is Since the predetermined value is not exceeded, the distribution order of these records is the same distribution order.

そして、順序決定部130は、加算結果が所定値を超えたときのレコードの配布順に「1」を加算して、データの配布順を繰り下げ(ステップS415)、さらに次の配布順(すなわち、繰り下げられた配布順と同じ配布順)のレコードが存在するか否かを判定し(ステップS416)、次の配布順のレコードが存在すると判定した場合(ステップS416;Yes)、ステップS412に戻って、以降の処理を繰り返す。   Then, the order determining unit 130 adds “1” to the record distribution order when the addition result exceeds the predetermined value, and lowers the data distribution order (step S 415), and further to the next distribution order (that is, the carry-down). It is determined whether there is a record having the same distribution order as the distribution order (step S416). If it is determined that there is a record having the next distribution order (step S416; Yes), the process returns to step S412. The subsequent processing is repeated.

一方、順序決定部130は、次の配布順のレコードが存在しないと判定した場合(ステップS416;No)、配信部140は、あらかじめ定められたスケジュールおよび設定された配信順で、ルータ300を経由して、データを端末500に配信する(ステップS417)。   On the other hand, when the order determination unit 130 determines that there is no record in the next distribution order (step S416; No), the distribution unit 140 passes through the router 300 in a predetermined schedule and a set distribution order. Then, the data is distributed to the terminal 500 (step S417).

このように、本実施例では、データを配布するための条件(ルータへの負荷や配布サーバ−ルータ間およびルータ−端末間の複数のネットワークへの負荷)を複合的に判定してデータの再配布順を設定し、その配布順でデータの再配布スケジュールを定めるので、これらの配信条件を考慮して優先順位をつけて、効率よく確実に送信ファイルを配信することができる。具体的には、本システムでは、端末500に接続されたルータ300への負荷、端末500とルータ300との間のネットワーク負荷、さらにはルータ300と配信サーバ100との間のネットワーク負荷を考慮し、これらの過大な負荷がかからないようにデータの配信順を決定するので、データの配信が失敗した場合でも効率よく確実に送信ファイルを配信することができる。   As described above, in this embodiment, the conditions for distributing data (the load on the router and the load on the plurality of networks between the distribution server and the router and between the router and the terminal) are determined in combination and the data is restored. Since the distribution order is set and the data redistribution schedule is set in the distribution order, the transmission file can be distributed efficiently and reliably by giving priority in consideration of these distribution conditions. Specifically, in this system, the load on the router 300 connected to the terminal 500, the network load between the terminal 500 and the router 300, and the network load between the router 300 and the distribution server 100 are considered. Since the data distribution order is determined so as not to apply such an excessive load, the transmission file can be distributed efficiently and reliably even when the data distribution fails.

また、本実施例では、配布する条件として、1)データの帯域あたりの配布サイズが小さいものから順にデータを配信し、2)ルータが異なる場合には同じ配布順でデータを配布する一方、配布を制限する条件として、3)1つのルータで一度に配信可能なデータの帯域あたりの配布サイズの合計が所定値(例えば、2.2MB)を超えず、4)配信サーバから一度に配信可能なデータの帯域あたりの配布サイズの合計が所定値(例えば、10MB)を超えない、という4つの条件を満たすように配信順を再設定し、データを配信するので、再配信時に再びエラーとなることも軽減される。   In this embodiment, the distribution conditions are as follows: 1) data is distributed in order from the smallest distribution size per band of data; and 2) when the routers are different, the data is distributed in the same distribution order. 3) The total distribution size per band of data that can be distributed at one time by one router does not exceed a predetermined value (for example, 2.2 MB), and 4) can be distributed from the distribution server at one time The distribution order is reset so that the four conditions that the total distribution size per band of data does not exceed a predetermined value (for example, 10 MB) and the data is distributed. Is also reduced.

なお、本実施例では、既に配信したデータを再配信する場合について説明したが、配信対象となるデータのサイズ、宛先グループ、帯域、ルータ、端末のIPアドレスが配布サーバに記憶されている場合には、新規にデータを配布する場合にももちろん本システムを適用することができる。   In this embodiment, the case of redistributing data that has already been distributed has been described. However, when the size of the data to be distributed, the destination group, the bandwidth, the router, and the IP address of the terminal are stored in the distribution server. Of course, this system can be applied to newly distributing data.

1000 ソフトウェア配布システム
100 配布サーバ
110 記憶部
120 条件算出部
130 順序決定部
140 配信部
150 通信部
200 ネットワーク
300 ルータ
400 ネットワーク
500 端末。
1000 Software distribution system 100 Distribution server 110 Storage unit 120 Condition calculation unit 130 Order determination unit 140 Distribution unit 150 Communication unit 200 Network 300 Router 400 Network 500 Terminal.

Claims (3)

複数のルータのそれぞれと複数の端末のそれぞれとの間のネットワークである第1のネットワークと、配布サーバと前記複数のルータのそれぞれとの間のネットワークである第2のネットワークとを介して複数の端末にデータを配布するソフトウェア配布システムであって、
前記複数の端末をグループに分け、前記データのサイズと前記第1のネットワークまたは第2のネットワークの帯域とに基づいて、前記データの前記ネットワークの帯域あたりにおける値を算出する条件算出部と、
前記値が昇順となるようにソートしつつ、前記グループごとおよび前記ルータごとに前記値が昇順となるように配布順を定める順序決定部と、
定められた配布順で前記データを前記端末に配信する配信部と、
を備えることを特徴とするソフトウェア配布システム。
A plurality of routers via a first network that is a network between each of the plurality of routers and each of the plurality of terminals, and a second network that is a network between the distribution server and each of the plurality of routers . A software distribution system that distributes data to terminals,
A condition calculating unit that divides the plurality of terminals into groups and calculates a value of the data per band of the network based on the size of the data and the band of the first network or the second network;
Sorting so that the values are in ascending order, an order determining unit that determines the distribution order so that the values are in ascending order for each group and for each router ;
A distribution unit for distributing the data to the terminal in a predetermined distribution order;
A software distribution system comprising:
前記順序決定部は、前記値が前記第1のネットワークで配信するデータの許容値を示す第1の所定値を超えるまで前記データの配布順を同じ順に設定し、同じ順に設定された前記グループごとのデータの前記値が前記第2のネットワークで配信するデータの許容値を示す第2の所定値を超えるまで前記データの配布順を同じ順に設定する、
ことを特徴とする請求項に記載のソフトウェア配布システム。
The order determination unit sets the distribution order of the data in the same order until the value exceeds a first predetermined value indicating an allowable value of data to be distributed in the first network, and sets each group set in the same order. The distribution order of the data is set in the same order until the value of the data exceeds a second predetermined value indicating an allowable value of data distributed in the second network;
The software distribution system according to claim 1 .
複数のルータのそれぞれと複数の端末のそれぞれとの間のネットワークである第1のネットワークと、配布サーバと前記複数のルータのそれぞれとの間のネットワークである第2のネットワークとを介して複数の端末にデータを配布するソフトウェア配布方法であって、
前記複数の端末をグループに分け、前記データのサイズと前記第1のネットワークまたは第2のネットワークの帯域とに基づいて、前記データの前記ネットワークの帯域あたりにおける値を算出するステップと、
前記値が昇順となるようにソートしつつ、前記グループごとおよび前記ルータごとに前記値が昇順となるように配布順を定めるステップと、
定められた配布順で前記データを前記端末に配信するステップと、
を含むことを特徴とするソフトウェア配布方法。
A plurality of routers via a first network that is a network between each of the plurality of routers and each of the plurality of terminals, and a second network that is a network between the distribution server and each of the plurality of routers. A software distribution method for distributing data to terminals,
Dividing the plurality of terminals into groups and calculating a value of the data per band of the network based on the size of the data and the band of the first network or the second network;
Sorting the values in ascending order and determining the distribution order so that the values are in ascending order for each group and for each router;
Delivering the data to the terminal in a defined distribution order;
A software distribution method comprising:
JP2013193239A 2013-09-18 2013-09-18 Software distribution system and software distribution method Active JP6129698B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013193239A JP6129698B2 (en) 2013-09-18 2013-09-18 Software distribution system and software distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013193239A JP6129698B2 (en) 2013-09-18 2013-09-18 Software distribution system and software distribution method

Publications (2)

Publication Number Publication Date
JP2015060381A JP2015060381A (en) 2015-03-30
JP6129698B2 true JP6129698B2 (en) 2017-05-17

Family

ID=52817861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013193239A Active JP6129698B2 (en) 2013-09-18 2013-09-18 Software distribution system and software distribution method

Country Status (1)

Country Link
JP (1) JP6129698B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10705826B2 (en) 2017-02-01 2020-07-07 Sumitomo Electric Industries, Ltd. Control apparatus, program updating method, and computer program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4527627B2 (en) * 2005-08-04 2010-08-18 日本電信電話株式会社 Content distribution apparatus, content distribution network, and content distribution method
JP4837089B2 (en) * 2007-03-09 2011-12-14 三菱電機株式会社 Information recording apparatus, file transfer method, and file transfer system

Also Published As

Publication number Publication date
JP2015060381A (en) 2015-03-30

Similar Documents

Publication Publication Date Title
CN108780386B (en) A method, device and system for data storage
US9577961B2 (en) Input/output management in a distributed strict queue
JP6881575B2 (en) Resource allocation systems, management equipment, methods and programs
CN108023812B (en) Content distribution method and device, computing node and system of cloud computing system
US9584593B2 (en) Failure management in a distributed strict queue
US10200295B1 (en) Client selection in a distributed strict queue
US9591101B2 (en) Message batching in a distributed strict queue
CN106712981B (en) Node change notification method and device
US9571414B2 (en) Multi-tiered processing using a distributed strict queue
CN108881512B (en) Virtual IP balanced allocation method, device, equipment and medium of CTDB
US10129152B2 (en) Setting method, server device and service chain system
WO2018059222A1 (en) File slice uploading method and apparatus, and cloud storage system
CN103503412B (en) For the method and device of scheduling resource
US9575820B2 (en) Client control in a distributed strict queue
CN107797865A (en) User task processing method and application server
CN105765555A (en) Strict queue ordering in distributed system
US20160234129A1 (en) Communication system, queue management server, and communication method
WO2013082742A1 (en) Resource scheduling method, device and system
CN109756566B (en) Block chain based data storage method, related equipment and storage medium
US9577878B2 (en) Geographic awareness in a distributed strict queue
JP6129698B2 (en) Software distribution system and software distribution method
CN113873052B (en) Domain name resolution method, device and equipment of Kubernetes cluster
JP6696927B2 (en) Cluster system, update management device for cluster system, update distribution device, update management method, update distribution method and program
CN106331004A (en) Method and device for load balancing of servers
JP6193078B2 (en) Message transfer system and queue management method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170412

R150 Certificate of patent or registration of utility model

Ref document number: 6129698

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150