Resource management method in data collection system

WO2026190973A1PCT designated stage Publication Date: 2026-09-17NT T INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/009228
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-03-12
Publication Date
2026-09-17

Smart Images

  • Figure JP2025009228_17092026_PF_FP_ABST
    Figure JP2025009228_17092026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure is a data collection system comprising: a plurality of data sources; a server that collects data from the plurality of data sources; and a communication path control device that, when data is transmitted from one of the plurality of data sources to the server, establishes a communication path between said one data source and the server according to an establishment request from said one data source or the server. The establishment request includes the amount of data transmitted from the data source to the server. The communication path control device: upon receiving the establishment request, associates, with the establishment request, a counter value that increases with an elapsed time from reception of the establishment request; selects, from among received establishment requests, an establishment request having a small data amount included therein and a large counter value associated therewith; and establishes a communication path for the selected establishment request.
Need to check novelty before this filing date? Find Prior Art

Description

Resource management methods in data collection systems

[0001] This disclosure relates to communication control for data collection.

[0002] With the spread of IoT (Internet of Things) and remote work, communication traffic continues to increase year after year. When transferring large volumes of data generated from various sensors to a server, conventional communication methods using TCP (Transmission Control Protocol) may experience bottlenecks in the receiving end's communication processing. Furthermore, the increased load on the CPU (central processing unit) may lead to a decrease in receiving processing performance and an increase in power consumption.

[0003] RDMA (Remote Direct Memory Access), which avoids memory copying—a bottleneck in conventional TCP methods—has been proposed. However, RDMA requires a lossless network for data transfer, making it unsuitable for direct use in current wide-area networks. Methods for using RDMA in networks where packet loss occurs include using PFC (Priority Flow Control) or equipping servers with retransmission control mechanisms, but these methods have challenges such as the possibility of deadlocks and increased server load.

[0004] To enable RDMA-based data transfer over wide-area networks, control methods have been proposed that coordinate communication path establishment and RDMA-based data transmission (see, for example, Patent Document 1 and Non-Patent Document 1). For example, Patent Document 1 establishes a communication path that ensures a lossless network with guaranteed bandwidth at the time of data transmission and releases it after transmission is complete. This makes RDMA-based data transfer possible even over wide-area networks.

[0005] Conventional technology established communication paths in the order in which establishment requests arrived at the time of data transmission. However, processing pending jobs in the order they arrived could potentially increase the average delay in data transmission.

[0006] WO2023 / 012878

[0007] Ryohei Tsugami et al., Implementation Evaluation of a Communication Path Utilization Control Method for Wide-Area Multi-Terminal RDMA Data Acquisition, Shinso University, B-6-23, May 2022. Pemasinghe, et al., "Comparison of CPU Scheduling Algorithms: FCFS, SJF, SRTF, Round Robin, Priority Based, and Multilevel Queuing", 2022. IEEE 10th Region 10 Humanitarian Technology Conference (R10-HT), 2022.

[0008] This disclosure aims to reduce the average delay of data transmission in a data collection system that collects data using a communication path.

[0009] One resource allocation algorithm that reduces average delay is the Shortest Job First (SJF) method, which is mainly known in the field of Operating Systems (for example, Chapter III of Non-Patent Literature 2). SJF is a job scheduling algorithm that reduces the average delay (turnaround time) from the arrival to the completion of each job by processing jobs with the shortest processing time first from among the waiting jobs. Therefore, in this disclosure, instead of establishing communication paths in the order in which establishment requests arrive, communication paths are established in an order that minimizes the average delay.

[0010] To achieve the above objective, the data collection system of the present disclosure comprises a plurality of data sources, a server for collecting data from the plurality of data sources, and a communication path control device that, when data is transmitted from one of the plurality of data sources to the server, establishes a communication path between the one data source and the server in accordance with an establishment request from the one data source or the server.

[0011] In this disclosure, the establishment request includes the amount of data to be sent from the data source to the server. This enables a data collection system that collects data using a communication path to employ a job scheduling algorithm that can reduce the average delay (turnaround time) from the arrival of a job to the completion of processing.

[0012] The data collection system of this disclosure performs the resource management method of this disclosure. In the resource management method of this disclosure, when the communication path control device receives the establishment request, it associates the establishment request with a counter value that increases with the elapsed time since the reception of the establishment request, selects from among the received establishment requests the one in which the amount of data contained in the establishment request is small and the counter value associated with the establishment request is large, and establishes the communication path for the selected establishment request.

[0013] The communication path control device may extract from the received establishment requests those that share a common data source for which a communication path is established by the selection, and establish a communication path that can transmit the amount of data included in the selected establishment request plus the amount of data included in the extracted establishment request.

[0014] The communication path control device may calculate an allocation priority value using the amount of data included in the establishment request and the counter value associated with the establishment request, and make the selection based on the calculated allocation priority value.

[0015] Furthermore, the above disclosures can be combined as much as possible.

[0016] According to this disclosure, in a data collection system that collects data using a communication path, the average delay of data transmission can be reduced.

[0017] This document shows an example of the system configuration of this disclosure. This document shows an example of the configuration of a communication network. This document shows an example of an embodiment of the communication path control device of this disclosure. This document shows an example of a path setting location table. This document shows an example of a data transmission sequence. This document is an explanatory diagram of Shortest Job First (SJF). This document is a diagram explaining the issues of this disclosure. This document is a diagram explaining the problems of SJF. This document shows an example of the resource management method of this disclosure. This document is an explanatory diagram of a function whose value increases as the counter value increases. This document shows an example of the operation of the path setting unit. This document shows an example of the operation of the path setting unit. This document is an explanatory diagram of the delay time of this embodiment. This document is an explanatory diagram of the delay time when communication paths are established in the order of arrival. This document shows an example of the configuration of the request receiving unit provided in the communication path control device of this disclosure. This document shows an example of the communication path establishment flow in the communication path control device of this disclosure. This document shows an example of the communication path establishment flow in the communication path control device of this disclosure.

[0018] Embodiments of this disclosure will be described in detail below with reference to the drawings. However, this disclosure is not limited to the embodiments shown below. These examples are illustrative, and this disclosure can be implemented in various modified and improved forms based on the knowledge of those skilled in the art. In this specification and in the drawings, components with the same reference numerals refer to the same components.

[0019] (Summary of this Disclosure) Figure 1 shows an example of the system configuration of this disclosure. The data collection system of this disclosure comprises a plurality of data sources 10, a communication path control device 30, and a server 40. The plurality of data sources 10, the communication path control device 30, and the server 40 are connected by a communication network 80.

[0020] The data source 10 is a terminal that holds user-side data, such as sensing data acquired by the sensor 50. The server 40 is a terminal that collects data from the data source 10. The communication network 80 is any means that enables packet transfer and may include a public network, whether wired or wireless.

[0021] FIG. 2 shows a configuration example of a communication network 80. The communication network 80 is composed of a plurality of network devices 81. In the present embodiment, the network devices 81 used between the data sources 10 and the server 40 are predetermined. For example, the data source 10A and the server 40 are connected via network devices 81A and 81B, the data source 10B and the server 40 are connected via network devices 81A and 81C, and the data source 10C and the server 40 are connected via network devices 81D and 81E.

[0022] FIG. 3 shows a configuration example of a communication path control device 30. The communication path control device 30 includes a request receiving unit 31, a path setting unit 32, and a path setting location table 33. The request receiving unit 31 receives a communication path allocation request or release request from each data source 10. The request receiving unit 31 may receive a communication path allocation request or release request from the server 40. The path setting unit 32 establishes or releases a communication path in accordance with a communication path allocation request or release request. The path setting location table 33 manages communication path setting information (established / released) from each data source 10 to the server 40.

[0023] FIG. 4 shows an example of the path setting location table 33. The path setting location table 33 stores information of the network devices 81 that transmit data from each data source 10. For example, in the case of the data source 10A, the information of the network devices 81 includes identification information of the network devices 81A and 81B that connect the data source 10A and the server 40, and communication path setting information (established / released) in the network devices 81A and 81B.

[0024] FIG. 5 shows an example of a data transmission sequence. In the data collection system of the present disclosure, data is transmitted from a data source 10 to a server 40 by a communication path control device 30 establishing a communication path. At this time, the data collection system of the present disclosure executes the following sequence. The data source 10 makes a communication path allocation request (S101). The communication path control device 30 establishes a communication path (S102), and then transmits a communication path establishment completion notification (S103). The data source 10 transmits data using the communication path established by the communication path control device 30 (S104), and then transmits a communication path release request (S105). The communication path control device 30 releases the communication path, and then transmits a communication path release completion notification (S106).

[0025] The timing of step S101 in the data transmission sequence is defined by the transmission policy of the data source 10. Examples of the transmission policy include the following. First transmission policy: establish a communication path immediately after data is generated and transmit data. Second transmission policy: establish a communication path after a certain amount of data is accumulated and transmit data.

[0026] FIG. 5 shows an example in which the data source 10 transmits data according to the first transmission policy. The time from generation of data to data transmission (S104) is a transmission delay ΔS. When many requests arrive at the communication path control device 30, the establishment of the communication path is delayed, so the transmission delay ΔS becomes longer.

[0027] In this example, when allocating resources (e.g., bandwidth) for realizing a lossless network for RDMA, the allocation processing is performed in the order of arrival, but the allocation in the order of arrival still has a possibility that the average delay increases.

[0028] One resource allocation algorithm that reduces average latency is Shortest Job First (SJF), which is mainly known in the field of Operating Systems (for example, Chapter III of Non-Patent Literature 2). SJF is a job scheduling algorithm that reduces the average latency (turnaround time) from the arrival to the completion of each job by processing the jobs with the shortest processing times first from among the waiting jobs. In order to use SJF, the processing time of each job must be known in advance.

[0029] For example, as shown in Figure 6, if jobs arrive in the order R1, R2, R3, R4, and R5, with processing times of 10s, 30s, 20s, 50s, and 40s respectively, the jobs are executed in the order R1, R3, R2, R4, and R5. This reduces the turnaround time from 7.4s, which would be the case if the jobs were executed in the order of arrival, to 7.0s.

[0030] When requests are assigned to the communication path control device 30 in the order they arrive, requests for establishing communication paths with large amounts of data will continue to occupy resources, increasing the delay of subsequent requests. This, in turn, increases the delay from the request to the completion of transmission for all data sources 10. For example, as shown in Figure 7, when using 1GbE, data source DS1 sends communication path establishment requests R1 and R4, data source DS2 sends communication path establishment requests R2 and R5, and data source DS3 sends communication path establishment request R3, if the overhead for communication path establishment and release requests is 0.02 seconds, the average time from the arrival of each establishment request to the completion of transmission will be 0.388 seconds.

[0031] The time from arrival to completion of transmission for each establishment request can be calculated as follows: R1: 0.02 + (10MB * 8) / 1Gbps = 0.1s R2: 0.1 + 0.02 * 2 + (20MB * 8) / 1Gbps = 0.3s R3: 0.3 + 0.02 * 2 + (15MB * 8) / 1Gbps = 0.46s R4: 0.46 + 0.02 * 2 + (20MB * 8) / 1Gbps - 0.2 = 0.46s R5: 0.66 + 0.02 * 2 + (15MB * 8) / 1Gbps - 0.2 = 0.62s Average: 0.388s

[0032] The average time from arrival of the establishment request to completion of transmission for each data source at this time is as follows: DS1: (R1 + R4) / 2 = (0.1 + 0.46) / 2 = 0.28 s DS2: (R2 + R5) / 2 = (0.3 + 0.62) / 2 = 0.46 s DS3: R3 = 0.46 s

[0033] Furthermore, when applying SJF to resource allocation for communication paths, the system continuously receives requests to establish communication paths during operation. As a result, when a request to establish a communication path with an extremely large amount of data arrives, resources may never be allocated. For example, as shown in Figure 8, the processing times for R1 to R6 are 10s, 50s, 20s, 30s, 40s, and 20s. When R1 and R2 arrive first, processing starts with R1, which has the shortest processing time. If R3 and R4 arrive while R1 is being processed, R2 has a longer processing time than R3 and R4, so R3 and R4 are processed first. If R5 and R6 arrive while R4 is being processed, R2 has a longer processing time than R5 and R6, so R5 and R6 are processed first. Thus, there is a problem in which processing for R2 may never be performed.

[0034] Furthermore, in the system disclosed herein, the same data source 10 may send multiple requests to establish communication paths. However, in SJF, if the processing times are different, even if the requests to establish communication paths from the same data source 10 are treated as separate jobs, which results in unnecessary overhead.

[0035] (First Embodiment) In this embodiment, SJF is adopted, which allocates resources to communication paths in the order in which the requests for establishing a communication path arrive, rather than in the order in which the requests for establishing a communication path arrive. That is, in this embodiment, the path setting unit 32 retrieves the requests for establishing a communication path from the request receiving unit 31 so that communication paths can be established in order of the smallest amount of data. Hereinafter, the requests for establishing a communication path may be simply referred to as establishment requests.

[0036] In this embodiment, the request receiving unit 31 sets a counter value for each communication path establishment request upon arrival. Then, as the time remaining on the request receiving unit 31 increases, the counter value is incremented.

[0037] Figure 9 shows an example of the resource management method of this disclosure. In the resource management method of this disclosure, a determination is made as to which resource to allocate to which establishment request. When there are resources that can be allocated (Yes in S31), the path setting unit 32 initializes and sets the counter value x of any establishment request received by the request receiving unit 31 that does not have a counter value set (S32). Next, the path setting unit 32 calculates an allocation priority value using the counter value and data amount of each establishment request (S33). Next, the path setting unit 32 allocates a resource to the one with the largest calculated allocation priority value (S34). Next, the path setting unit 32 increments the counter values ​​of all establishment requests remaining in the request receiving unit 31 (S35).

[0038] In procedure S33, the allocation priority value is set so that requests with the largest data volume are always unable to be sent, prioritizing those with larger counter values. For example, the path setting unit 32 can determine the allocation priority value by applying a function f(x) whose value increases as the counter value increases to the following equation: (Equation 1) Allocation priority value = 1 / (data volume) * f(x)

[0039] Here, the function f(x) is, for example, y = x as shown in Figure 10. 2An example of an exponential function represented by +a can be given. In this embodiment, a constant a = 4 is used for ease of understanding. Note that the function f(x) can be any function whose value increases as the counter value increases, and may also be a linear function represented by y = x + a.

[0040] (Time t=0) For example, as shown in Figure 11, when the request receiving unit 31 receives establishment request R1 with a data amount of 10 MB, establishment request R2 with a data amount of 20 MB, and establishment request R3 with a data amount of 15 MB, in procedure S32, the path setting unit 32 initializes the counter value x of each establishment request R1 to R3 to 0.

[0041] In step S33, the path setting unit 32 calculates the assignment priority value for each establishment request R1 to R3. Assignment priority value for R1 = 1 / 10 * (0 2 +4) = 0.4 R2 allocation priority value = 1 / 20 * (0 2 +4) = 0.2 R3 allocation priority value = 1 / 15 * (0 2 +4) = 0.2667

[0042] (Time t=1) In step S34, since the assignment priority value of R1 is the largest, the path setting unit 32 selects establishment request R1. At this time, if there are establishment requests from the same data source to the request receiving unit 31, the path setting unit 32 treats them all together as one job. In this embodiment, the source of R1 is data source DS1, the source of R2 is data source DS2, and the source of R3 is data source DS3. For this reason, the path setting unit 32 starts processing only R1. Then, in step S35, the request receiving unit 31 increments the counter values ​​of R2 and R3 to 1.

[0043] At t=1, the counter values ​​x for establishment requests R2 and R3 are incremented to 1. Therefore, in procedure S33, the allocation priority value calculated by the path setting unit 32 is as follows: Allocation priority value for R2 = 1 / 20 * (1 2 +4) = 0.25 R3 allocation priority value = 1 / 15 * (1 2 +4) = 0.334

[0044] In step S34, since the allocation priority value of R3 is the largest, the path setting unit 32 selects the establishment request R3. In this embodiment, the transmission sources of establishment requests R2 and R3 are different. Therefore, the path setting unit 32 starts processing only the establishment request R3. Then, in step S35, the request receiving unit 31 increments the counter value of the establishment request R2 to 2.

[0045] (Time t=2) As shown in FIG. 12, when the request receiving unit 31 receives the establishment request R4 with a data volume of 20 MB and the establishment request R5 with a data volume of 15 MB, in step S32, the path setting unit 32 initializes the counter value x of each of the establishment requests R4 and R5 to 0.

[0046] In step S33, the path setting unit 32 calculates the allocation priority values of the establishment requests R2, R4 and R5. Allocation priority value of R2 = 1 / 20*(2 2 +4) = 0.40 Allocation priority value of R4 = 1 / 20*(0 2 +4) = 0.20 Allocation priority value of R5 = 1 / 15*(0 2 +4) = 0.2667

[0047] (Time t=3) In step S34, since the allocation priority value of the establishment request R2 is the largest, the path setting unit 32 selects the establishment request R2. In this embodiment, the transmission source of the establishment request R4 is data source DS1, and the transmission source of the establishment request R5 is data source DS2. Therefore, the transmission source of the establishment request R5 is the same as that of the establishment request R2. At this time, the path setting unit 32 treats the establishment requests R2 and R5 as one job and starts processing. In step S35, the request receiving unit 31 increments the counter value of the establishment request R4 to 1.

[0048] As described above, in this embodiment, in step S34, the path setting unit 32 selects the establishment request with the highest priority from among the establishment requests received by the request receiving unit 31. At this time, the priority calculated from the counter value and the data volume is used to prevent the situation where establishment requests with a large data volume can never be transmitted. Further, in this embodiment, in step S34, if the path setting unit 32 collectively handles establishment requests received by the request receiving unit 31 from the same data source as one single job.

[0049] The delay time in this embodiment will be explained with reference to Figure 13. Assuming a 1 GbE communication path and an allocation / release overhead of 0.02 seconds, the delay time from when the establishment request arrives at the request receiving unit 31 until the data sources DS1 to DS3 complete data transmission can be calculated as follows. R1: 0.02+(10MB*8) / 1Gbps =0.1s R3:0.1+0.02*2+(15MB*8) / 1Gbps =0.26s R2:0.26+0.02*2+(20MB*8) / 1Gbps =0.46s R5: 0.46+(15MB*8) / 1Gbps-0.2 =0.38s R4:0.58+0.02*2+(20MB*8) / 1Gbps-0.2 =0.58s

[0050] Furthermore, in this embodiment shown in Figure 13, the average time from request arrival to transmission completion for each data source is calculated as follows: DS1: (R1 + R4) / 2 = (0.1 + 0.58) / 2 = 0.34 s DS2: (R2 + R5) / 2 = (0.46 + 0.38) / 2 = 0.42 s DS3: R3 = 0.26 s Average: 0.34 s

[0051] Referring to Figure 14, the delay time when establishing a communication path in the order of arrival will be explained. Assuming a 1 GbE communication path and an allocation / release overhead of 0.02 seconds, the delay time from when the establishment request arrives at the request receiving unit 31 until data sources DS1 to DS3 complete data transmission can be calculated as follows. R1:0.02+(10MB*8) / 1Gbps =0.1s R2:0.1+0.02*2+(20MB*8) / 1Gbps =0.3s R3:0.3+0.02*2+(15MB*8) / 1Gbps =0.46s R4: 0.46+0.02*2+(20MB*8) / 1Gbps-0.2 =0.46s R5:0.66+0.02*2+(15MB*8) / 1Gbps-0.2 =0.62s Average: 0.388s

[0052] In the comparative example shown in Figure 14, the average time from request arrival to transmission completion for each data source is calculated as follows: DS1: (R1 + R4) / 2 = (0.1 + 0.46) / 2 = 0.28 s DS2: (R2 + R5) / 2 = (0.3 + 0.62) / 2 = 0.46 s DS3: R3 = 0.46 s Average: 0.4 s

[0053] In this embodiment shown in Figure 13, since establishment request R5 is treated as the same job as establishment request R2, the allocation and release overhead is reduced by 0.02 seconds. Consequently, the allocation and release overhead for establishment request R4, which is processed afterward, is also reduced by 0.02 seconds. Therefore, the average delay time is 0.356 s.

[0054] In contrast, in the comparative example shown in Figure 14, the average delay time for each establishment request is 0.388 s. Therefore, it can be seen that by applying the SJF-based method compared to the method of allocating resources in the order of arrival, the overall average delay from establishment request to transmission completion can be shortened. Thus, this embodiment can shorten the average delay from establishment request to transmission completion by allocating resources in order of shortest transmission time (smallest data volume) while considering the allocation waiting time.

[0055] As explained above, this embodiment can reduce the overhead of allocation and release by sending data sent from the same terminal that performs the allocation process among the pending requests in step S34 in a batch. Furthermore, this embodiment can eliminate the possibility that extremely large data volumes will never be allocated by adopting a decision method that takes the allocation waiting time into consideration in steps S33 and S34.

[0056] (Second Embodiment) In this embodiment, the communication path control device 30 has a request receiving unit 31 that provides a distribution function according to priority. The request receiving unit 31 in this embodiment has multiple queues for establishment requests, each with a different priority. In this embodiment, the path setting unit 32 prioritizes establishment requests with a higher priority, and waits for an arbitrary amount of time before retrieving establishment requests with a lower priority.

[0057] Figure 15 shows an example of the configuration of the request receiving unit 31. The request receiving unit 31 includes queues 312H and 312L for establishment requests, a queue 313 for communication path release requests, and a distribution unit 311. 312H is for high-priority establishment requests R S (H) is a queue that stores (H), and 312L is a low-priority establishment request R S This is a queue for accumulating (L).

[0058] The distribution unit 311 requests the release of the communication path R. R The request is assigned to queue 313, and the highest priority probability request R S (H) is assigned to queue 312H, and the low-priority establishment request R S (L) is allocated to queue 312L.

[0059] In the distribution unit 311, establishment request R S and release request R R The method of identification is arbitrary. For example, a specific field in the packet header could be used to indicate whether it is an establishment request or a release request, and the request could be identified by reading this field.

[0060] Figure 16 shows an example of the communication path establishment flow in the path setting unit 32. An establishment request R is sent to queue 312H. S When (H) is present (Yes in S11), the path setting unit 32 receives an establishment request R from queue 312H. S (H) is retrieved (S12), and setting processing is performed to establish a communication path (S16). Establishment request R is sent to queue 312H. S If (H) is not present (No in S11), the path setting unit 32 waits for a predetermined time (S13) and then sends an establishment request R to queue 312H again. S Check if (H) is present (S14). Here, the waiting time in step S13 is arbitrary, for example 5ms can be exemplified. Establishment request R to queue 312H S When (H) is present (Yes in S14), the path setting unit 32 receives an establishment request R from queue 312H. S (H) is retrieved (S12), and setting processing is performed to establish a communication path (S16). Establishment request R is sent to queue 312H. SWhen (H) is not present (No in S14), the path setting unit 32 receives an establishment request R from the queue 312L. S (L) is taken out (S15), and a process is performed to establish a communication path (S16).

[0061] Furthermore, the path setting unit 32 receives a request from queue 313 to release the communication path R. R The timing of reading the data and releasing the communication path is arbitrary. For example, it may be done in parallel with the process of establishing the communication path, or it may be done during the waiting time in step S13.

[0062] As described above, in this embodiment, when the path setting unit 32 establishes a communication path, it reads in order from the queue 312H with the highest priority. As a result, this embodiment can prioritize the establishment of high-priority communication paths. Furthermore, the data source 10 that issues high-priority establishment requests can shorten the path establishment delay. Therefore, this disclosure enables data transmission by RDMA even in the presence of delays in a wide-area network, and enables efficient data transmission to the server 40.

[0063] In this embodiment, an example was shown in which the distribution unit 311 identifies the priority by describing the priority in a specific field of the packet header, but this disclosure is not limited to this. For example, the packet transmission time may be compared with the delay requirement, and packets with the stricter delay requirement may be distributed to queue 312H.

[0064] (Third Embodiment) In the first embodiment, the communication path control device 30 manages the communication path, and therefore can obtain the progress of the path establishment process and the remaining processing time until the establishment of the communication path is completed. In this embodiment, the progress of the path establishment process is managed, and the establishment request R with low priority is managed. S During the processing of (L), a high-priority establishment request R S If (H) is received, the switchback time T for the lower priority communication path will be used. B The remaining processing time T until the establishment of a lower-priority communication path is complete. R Compare this with the pruning time T B If the time is short, the lower-priority communication path is switched back to the higher-priority establishment request R. SProcess (H).

[0065] Figure 17 shows an example of the communication path establishment flow in the path setting unit 32. Establishment request R read from queue 312L S When the process of establishing the communication path (L) is being performed, an establishment request R is sent to queue 312H. S When (H) is entered, the path setting unit 32 executes the following process: Switchback time T for the communication path being processed. B And the remaining processing time T until the establishment of the communication path being processed is complete. R And, obtain (S21). Then, cutback time T B and remaining processing time T R Compare (S22). Cutback time T B The remaining processing time T is greater than R If the time is long (No in S22), a rollback process is performed (S23), and after the process is completed, a higher priority establishment request R is made. S (H) processing starts (S25). Cutback time T B The remaining processing time T is greater than R If the time is short (Yes in S22), processing continues (S24), and after processing is complete, a higher priority establishment request R is made. S The process of (H) is started (S25).

[0066] As explained above, in the path setting unit 32 of this embodiment, while in the process of establishing a low-priority communication path, an establishment request R that has entered the high-priority queue 312H occurs. S Interrupt processing for (H) is performed. This allows this embodiment to prioritize the establishment of higher-priority communication paths.

[0067] (Other Embodiments) The apparatus of the present invention can also be realized by a computer and a program, and the program can be recorded on a recording medium or provided via a network.

[0068] 10, 10A, 10B, 10C: Data source 20: Transmission control device 30: Communication path control device 40: Server 50: Sensor 31: Request receiving unit 311: Distribution unit 312H, 312L, 313: Queue 32: Path setting unit 33: Path setting location table 81A, 81B, 81C, 81D, 81E: Network equipment

Claims

1. A data collection system comprising: multiple data sources; a server that collects data from the multiple data sources; and a communication path control device that, when data is transmitted from one of the multiple data sources to the server, establishes a communication path between the one data source and the server in accordance with an establishment request from the one data source or the server, wherein the establishment request includes the amount of data to be transmitted from the data source to the server; and when the communication path control device receives the establishment request, it associates the establishment request with a counter value that increases with the elapsed time since the reception of the establishment request; selects from the received establishment requests the one with the small amount of data included in the establishment request and the large counter value associated with the establishment request, and establishes a communication path for the selected establishment request.

2. The data collection system according to claim 1, wherein the communication path control device extracts from among the received establishment requests those that share a common data source for which a communication path is established by the selection, and establishes a communication path on which the amount of data included in the selected establishment request plus the amount of data included in the extracted establishment request can be transmitted.

3. The data collection system according to claim 1, wherein the communication path control device calculates an allocation priority value using the amount of data included in the establishment request and the counter value associated with the establishment request, and makes the selection based on the calculated allocation priority value.

4. A resource management method executed by a data collection system comprising: multiple data sources; a server that collects data from the multiple data sources; and a communication path control device that, when data is transmitted from one of the multiple data sources to the server, establishes a communication path between the one data source and the server in accordance with an establishment request from the one data source or the server, wherein the establishment request includes the amount of data to be transmitted from the data source to the server; and the communication path control device, upon receiving the establishment request, associates the establishment request with a counter value that increases with the elapsed time since the reception of the establishment request; selects from among the received establishment requests the one with the small amount of data included in the establishment request and the large counter value associated with the establishment request, and establishes the communication path for the selected establishment request.