System, method, and program for collecting data
The system addresses the inefficiency of conventional data collection methods by using a controller to optimize transmission policies for data sources, reducing network resource usage and ensuring efficient data transfer.
Patent Information
- Application Number
- JP2024502360
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-02-25
- Publication Date
- 2025-06-19
- Estimated Expiration
- 2042-02-25
AI Technical Summary
Conventional communication methods for collecting data from a large number of data sources require a significant amount of network resources, leading to inefficiencies and potential bottlenecks.
A system that includes a controller for determining a transmission policy for each data source, which calculates total resource usage and adjusts the policy to ensure that resource usage remains within a set threshold, thereby optimizing network resource allocation.
The system effectively reduces the need for large network resources when collecting data from multiple sources, ensuring efficient and reliable data transfer while preventing network resource depletion.
Smart Images

Figure 0007695635000001 
Figure 0007695635000002 
Figure 0007695635000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to communication control for data collection.
Background Art
[0002] User terminals, sensors, and in-vehicle systems have been developing, and the number of sensors and the amount of data generated by each sensor have increased significantly. In the conventional communication method for collecting such data, the communication processing on the receiving side may become a bottleneck.
[0003] As a high-speed data transfer method, RDMA (Remote Direct Memory Access) has been considered. In RDMA, DMA transfer of data (direct data transfer between peripheral devices and main memory (RAM) etc. without going through the CPU) is performed from the memory of a local computer to the memory of a different remote computer. Therefore, since RDMA does not require CPU processing for data transfer, the bottleneck on the receiving side can be avoided.
[0004] A remote transfer technology using this RDMA has been proposed (see, for example, Non-Patent Document 1). However, in Non-Patent Document 1, in order to transfer data by RDMA in a wide-area communication network, it is necessary to set a communication path for each flow in advance. Therefore, when collecting data from a large number of data sources, a large amount of network resources are required.
Prior Art Documents
Non-Patent Documents
[0005]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] The present disclosure aims to provide a system that does not require a large amount of network resources even when collecting data from a large number of data sources.
Means for Solving the Problem
[0007] The system and method of the present disclosure are in a system for collecting data from a plurality of data sources to a server, comprising a controller for determining a transmission policy to be distributed to the plurality of data sources, wherein the controller determines the transmission policy for each data source based on the data transfer requirements from the plurality of data sources to the server, calculates the total resource usage when the plurality of data sources execute the transmission policy defined for each data source, and adjusts the transmission policy for each data source so that the total resource usage falls within a set threshold.
[0008] Devices such as the controller and data source of the present disclosure can also be realized by a computer and a program, and it is also possible to record the program on a recording medium or provide it through a communication network. The program of the present disclosure is a program for realizing a computer as each functional unit provided in the device according to the present disclosure, and is a program for causing a computer to execute each step included in the method executed by the device according to the present disclosure.
Advantages of the Invention
[0009] According to the present disclosure, it is possible to provide a system that does not require a large amount of network resources even when collecting data from a large number of data sources.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Mode for Carrying Out the Invention
[0011] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. Note that the present disclosure is not limited to the embodiments shown below. These examples are merely illustrative, and the present disclosure can be implemented in various modified and improved forms based on the knowledge of those skilled in the art. In this specification and the drawings, components having the same reference numerals indicate the same components as each other.
[0012] (First Embodiment) FIG. 1 shows an example of the system configuration of the present disclosure. The system of the present disclosure includes a plurality of data sources 10, a transmission control controller 20, a path management controller 30, and a server 40. The plurality of data sources 10, the transmission control controller 20, the path management controller 30, and the server 40 are connected by a communication network 80. The data source 10 is a terminal having user-side sensing data. The server 40 is a terminal that collects data from the data source 10.
[0013] In the present embodiment, an example is shown in which the transmission control controller 20 and the path management controller 30 are separately arranged. However, these controllers may be provided in a common device, or may be configured by a plurality of devices arranged dispersedly. The device of the present disclosure can also be realized by a computer and a program, and it is also possible to record the program on a recording medium or provide it through a communication network.
[0014] FIG. 2 shows an example of the configuration of the 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 source 10 and the server 40 are predetermined. For example, the data source 10A and the server 40 are connected by the network devices 81A and 81B, the data source 10B and the server 40 are connected by the network devices 81A and 81C, and the data source 10C and the server 40 are connected by the network devices 81D and 81E.
[0015] When each of the network devices 81A to 81E receives data from the data sources 10A to 10C destined for the server 40, it knows which network device to transfer the data to. Therefore, even if the data sources 10A to 10C do not know which network device 81 to use, if they specify the server 40 and send the data, the data will be sent to the server 40. From this, the present disclosure can transfer data losslessly and in a wide band when a communication path is generated.
[0016] In the present disclosure, in order to realize data transfer by RDMA, a method is proposed for allocating a lossless and wide-band communication path to the necessary data source 10 at the necessary timing. In the system of the present disclosure, when data to be transmitted to the server 40 is generated in each of the plurality of data sources 10, a communication path is generated at the transmission timing determined by the transmission policy of the own device using the network device 81 determined for the own device. Thereby, each data source 10 can autonomously transmit sensing data to the server 40 based on the transmission policy of the own device.
[0017] Examples of the transmission policy can be, for example, the following. First transmission policy: Generate a communication path immediately after data generation, perform data transfer, and release the communication path immediately after data transfer completion. Second transmission policy: Generate a communication path after a certain amount of data has accumulated, perform data transfer, and release the communication path immediately after data transfer completion. Third transmission policy: Generate a communication path immediately after data generation, perform data transfer, and continue to hold the communication path for a certain period of time even after data transfer completion. Fourth transmission policy: Generate a communication path after a certain amount of data has accumulated, perform data transfer, and continue to hold the communication path for a certain period of time even after data transfer completion.
[0018] In this embodiment, by providing the transmission control controller 20, a transmission policy that meets the data transfer requirements of the data source 10 is distributed. Then, according to the transmission policy considering the sensor characteristics and the data transfer requirements for each application, each data source 10 notifies the path management controller 30 of a connection request or a release request for the communication path, and controls the timing of generating or releasing the communication path. Thereby, this embodiment controls the trade-off between the immediacy of data transmission and the shortening of the communication path usage time.
[0019] Here, if all data sources 10A to 10C try to send data in the best way for themselves, the resource requirement amount of the entire network may increase. Therefore, in the present disclosure, the transmission control controller 20 determines a transmission policy in consideration of the overall network resources. This will be described in detail below.
[0020] FIG. 3 shows a configuration example of the server 40. The server 40 includes a data reception function 41, a memory 42, and an application 43. The data reception function 41 receives sensing data from each data source 10. The memory 42 stores the sensing data from the sensor 50. The application 43 collects the sensing data from the sensor 50. The application 43 is an arbitrary application that collects arbitrary sensing data detected or generated by a user terminal, a sensor, an in-vehicle system, or the like.
[0021] FIG. 4 shows a configuration example of the data source 10. The data source 10 includes a requirement notification function 11, a transmission policy reception function 12, a data transmission timing control function 13, a communication path setting function 14, a data transmission function 15, a communication path release function 16, a generated data storage function 17, a requirement table 18, and a transmission policy table 19.
[0022] The generated data storage function 17 stores the sensing data from the sensor 50. The requirement notification function 11 reads the data transfer requirements from the requirement table 18 and notifies the transmission control controller 20 of the read data transfer requirements. The transmission policy receiving function 12 receives the transmission policy from the transmission control controller 20. The data transmission timing control function 13 controls the communication path setting function 14, the data transmission function 15, and the communication path release function 16 according to the transmission policy table 19. The communication path setting function 14 sends a connection request for the communication path to the path management controller 30. The data transmission function 15 sends the sensing data stored in the generated data storage function 17 to the server 40. The communication path release function 16 sends a release request for the communication path to the path management controller 30. The requirement table 18 stores the data transfer requirements for each data source 10. The transmission policy table 19 stores the policy for sending sensing data from the data source 10 to the server 40.
[0023] Fig. 5 shows an example of the information stored in the requirement table 18 of each data source. In the requirement table, as data transfer requirements, the allowable delay time, data generation frequency, and data generation amount of each data source 10 are stored in association with the application. The allowable delay time is the allowable delay time from when the data is generated until it reaches the server. The data generation amount is the amount of data generated at once by the sensor 50. The data generation frequency and data generation amount at the sensor 50 are not necessarily constant. In that case, the average data generation frequency and average data generation amount, which are the average values for each sensor 50, can be used.
[0024] Fig. 6 shows a configuration example of the transmission control controller 20. The transmission control controller 20 includes a requirement receiving function 21, a transmission policy determination function 22, a transmission policy distribution function 23, a transmission policy determination rule 24, and a network resource DB 25.
[0025] The network resource DB25 stores the configuration of the communication network 80 shown in FIG. 2 and information on the resources of each communication path in the communication network 80. The network resource DB25 does not have to be provided in the transmission control controller 20 and can be stored in any device accessible from the transmission control controller 20 via a network.
[0026] FIG. 7 shows an example of the operation in the transmission control controller 20. Each data source 10 notifies the transmission control controller 20 of data transfer requirements based on the information in the requirement table 18 (S101). The data transfer requirements include the allowable delay time and data generation frequency of each data source 10 as shown in FIG. 5. The requirement receiving function 21 of the transmission control controller 20 receives the data transfer requirements from the data source 10. The transmission policy determination function 22 determines a transmission policy for each data source 10 according to the data transfer requirements in accordance with the transmission policy determination rule 24 (S102). The transmission policy distribution function 23 of the transmission control controller 20 distributes the determined transmission policy to each data source 10 (S103).
[0027] FIG. 8 shows an example of the operation in the transmission policy determination function 22. When the transmission control controller 20 acquires data transfer requirements from the data source 10 (S11), it determines the requirement for the allowable delay time (S12). If the requirement for the allowable delay time is 100 ms or less (Yes in S12), it is determined to generate and transmit a communication path immediately after the data is generated (S13). On the other hand, if the requirement for the allowable delay time exceeds 100 ms (No in S12), it is determined to accumulate a certain amount of sensing data and then transmit it (S14). Next, the transmission control controller 20 determines the data generation frequency (S15). If the data generation frequency is 4 times / s or less (Yes in S15), it determines to adopt a method of releasing the communication path immediately after data transmission (S16). On the other hand, if the data generation frequency exceeds 4 times / s (No in S15), it determines to adopt a method of waiting for a certain period of time after data transmission completion and then releasing the communication path (S17).
[0028] For example, in the case of the data transfer requirements shown in FIG. 5, the transmission policy determination function 22 determines as follows. · Data source A: Since the set time of the allowable delay time is 1000 ms and the set value of the data generation frequency is 4 times, the transmission control controller 20 determines the transmission policy to the second transmission policy. · Data source B: Since the set time of the allowable delay time is 200 ms and the set value of the data generation frequency is 10 times, the transmission control controller 20 determines the transmission policy to the fourth transmission policy. · Data source C: Since the set time of the allowable delay time is 100 ms and the set value of the data generation frequency is 5 times, the transmission control controller 20 determines the transmission policy to the third transmission policy. Thereby, a transmission policy as shown in FIG. 9 is given to data sources A to C.
[0029] Here, the data transfer requirements may include application information. In this case, the transmission control controller 20 sets the threshold value in steps S12 and S15 in consideration of the requirements included in the application information.
[0030] Once the transmission policy is determined, the resource usage when each of the data sources A to C executes the transmission policy can be calculated. The method for calculating the resource usage is arbitrary, but for example, the following formula can be used. Resource usage = (path generation overhead + transfer time + path release waiting time) * path generation frequency Transfer time = transfer data volume / communication bandwidth Path generation frequency = Data generation frequency * Data generation volume / Accumulation volume Here, the path generation overhead is the leading part indicating the connection request for the communication path and can be any value. In this embodiment, an example where it is 0.03 s is shown. The path release waiting time corresponds to the path release timing in the transmission policy.
[0031] · Data source A It is a transmission policy where the data generation frequency is 4 times / s, the data generation volume is 5 MB per time, and a communication path is generated after 15 MB has been accumulated. Path generation frequency: 1.3 times / s = (5 [MB / time] × 4 [times / s]) / 15 [MB] Transfer time: 0.012 s = 15 [MB] / (10 [Gb / s] / 8) Resource utilization: 0.056 = (0.03 + 0.012 + 0) * 1.3
[0032] · Data source B It is a transmission policy where the data generation frequency is 10 times / s, the data generation volume is 10 MB per time, a communication path is generated after 20 MB has been accumulated, and the release of the communication path is waited for 0.05 s. Path generation frequency: 5 times / s = (10 [MB / time] × 10 [times / s]) / 20 [MB] Transfer time: 0.016 s = 20 [MB] / (10 [Gb / s] / 8) Resource utilization: 0.48 = (0.03 + 0.016 + 0.05) * 5
[0033] · Data source C It is a transmission policy where the data generation frequency is 5 times / s, the data generation volume is 10 MB per time, a communication path is generated immediately, and the release of the communication path is waited for 0.02 s. Path generation frequency: 5 times / s Transfer time: 0.008 s = 10 [MB] / (10 [Gb / s] / 8) Resource utilization: 0.29 = (0.03 + 0.008 + 0.02) * 5
[0034] When the resource usages of each data source are 0.056, 0.48, and 0.29, the total resource usage when data sources A, B, and C execute the transmission policy is 0.826.
[0035] The transmission policy determination function 22 adjusts the transmission policy by referring to the network resource DB 25. FIG. 10 shows an example of the operation in the transmission policy determination function 22. Calculate the resource usage using the set transmission policy (S21). Next, read the network resources from the network resource DB 25 and calculate the total resource usage (S22). Next, determine whether the total resource usage is within the set threshold (S23). If the total resource usage is within the set threshold (Yes in S23), end the determination of the set transmission policy.
[0036] On the other hand, if the total resource usage is not within the set threshold (No in S23), adjust the transmission policy of each data source so that the total resource usage is below the set threshold. Specifically, in the order of the loosest transmission policy (S24), advance the path release timing (S25) or delay the path generation timing by increasing the accumulation amount at the path generation timing (S26). Thereby, the time for the data source 10 with the loosest transmission policy to consume network resources can be shortened, and the total resource usage can be reduced.
[0037] According to the requirement table in FIG. 5, the allowable delay time of data source A (1000 ms) > the allowable delay time of data source B (200 ms) > the allowable delay time of data source C (100 ms). In this case, in step S24, the transmission policies of data sources A, B, and C are adjusted in this order. If it becomes Yes in step S23 only by adjusting the transmission policy of data source A, the process ends at that point. If it is also necessary to adjust the transmission policy of data source B, the transmission policy of data source B is also adjusted. Thus, the present disclosure adjusts the transmission policy in the order of the longest allowable delay time.
[0038] The set threshold value is 0.8. The case of adjustment by reducing the path release waiting time of the transmission policy by 10% in step S25 and increasing the data accumulation amount by the amount of data generated in one time in step S26 will be described in detail.
[0039] The path release timing of data source A is after the data transmission is completed, and since the path release waiting time is 0 (Yes in S24), step S26 is executed. In step S26, the data accumulation amount is increased by 5 MB corresponding to the amount of data generated in one time. As a result, as shown in FIG. 11, the transmission policy is adjusted so that data is transmitted after 20 MB has been accumulated.
[0040] The transmission policy of data source A is a transmission policy that generates a communication path after 20 MB has been accumulated. The resource utilization amount of data source A at this time can be calculated as follows. Path generation frequency: 1.0 times / s = (5 [MB / time] × 4 [times / s]) / 20 [MB] Transfer time: 0.016 s = 20 [MB] / (10 [Gb / s] / 8) Resource utilization amount: 0.046 = (0.03 + 0.016 + 0) × 1.0
[0041] Based on the transmission policy of the adjusted data source A, the transmission policy determination function 22 calculates the total resource utilization when data sources A, B, and C execute the transmission policy, and compares it with the threshold value. For example, since the resource utilization of the adjusted data source A is 0.046, the total resource utilization when data sources A, B, and C execute the transmission policy is 0.816. Since the set threshold value is 0.8, next, the transmission policy of data source B with a longer allowable delay time is adjusted.
[0042] Since the path release timing of data source B is to release if there is no data generation for 50 ms, step S25 is executed. In step S25, 5 ms, which is 10% of 50 ms, is shortened. As a result, as shown in FIG. 11, the transmission policy is adjusted so as to release if there is no data generation for 45 ms.
[0043] The transmission policy of data source B is a transmission policy to release if there is no data generation for 45 ms. The resource utilization of data source B at this time is 0.455 = (0.03 + 0.016 + 0.455) * 5.
[0044] Based on the transmission policy of the adjusted data source B, the transmission policy determination function 22 calculates the total resource utilization when data sources A, B, and C execute the transmission policy, and compares it with the threshold value. For example, since the resource utilization of the adjusted data source B is 0.455, the total resource utilization when data sources A, B, and C execute the transmission policy is 0.719. Since the set threshold value is 0.8 and it is below the threshold value, the adjustment is completed.
[0045] In this way, the transmission policy determination function 22 repeats steps S24 to S26 until the total resource utilization falls within the set threshold value. Here, the process of step S25 may be executed for a transmission policy whose path generation timing is immediately after data generation, and step S26 may be executed for other transmission policies. Also, step S25 may be further executed for the transmission policy for which step S26 has been executed.
[0046] When the total resource usage amount falls within the set threshold value (Yes in S23), the transmission policy determination function 22 ends the determination of the set transmission policy. When the determination of the transmission policy in the transmission policy determination function 22 ends, the transmission policy distribution function 23 distributes the transmission policy to each data source 10.
[0047] When receiving a transmission policy from the transmission control controller 20, the data source 10 stores it in the transmission policy table 19. As a result, as shown in FIG. 11, a transmission policy suitable for each data source 10 is stored in the transmission policy table 19 of each data source 10.
[0048] FIG. 12 shows a configuration example of the path management controller 30. The path management controller 30 includes a path setting request receiving function 31, a path setting function 32, and a path setting location table 33.
[0049] The path setting request receiving function 31 receives a connection request or release request for a communication path from each data source 10. The path setting function 32 generates or releases a communication path according to a connection request or release request for the communication path from each data source 10. The path setting location table 33 manages the setting information (generation / release) of the communication path from each data source 10 to the server 40.
[0050] FIG. 13 shows an example of the path setting location table 33. The path setting location table 33 stores information on the network device 81 that transfers sensing data from each data source 10. For example, in the case of the data source 10A, the information on the network device 81 includes the identification information of the network devices 81A and 81B that connect the data source 10A and the server 40, and the setting information (generation / release) of the communication path in the network devices 81A and 81B.
[0051] FIG. 14 shows an example of transmitting sensing data from data source 10B to server 40. The data source 10B transmits the sensing data according to the fourth transmission policy. The data source 10B accumulates the sensing data generated by the sensor 50, and when the data reaches 20 MB, it transmits a connection request for the communication path to the path management controller 30 (S201). When the path management controller 30 receives the connection request for the communication path, it sets the communication paths of the network devices 81A and 81C and generates a communication path (S202). When the generation of the communication path is completed, the path management controller 30 transmits a communication path generation completion notification to the data source 10B (S203). When the data source 10B receives the communication path generation completion notification, it transmits the sensing data to the server 40 (S204-1 and S204-2). Then, it waits for 45 ms to transmit a release request for the communication path. If sensing data is generated during that time, the sensing data is transmitted each time (S204-3). When 45 ms has elapsed since step S204-3, the data source 10B transmits a release request for the communication path to the path management controller 30 (S205). When the path management controller 30 receives the release request for the communication path, it releases the communication paths of the network devices 81A and 81C and transmits a communication path release completion notification indicating that the release of the communication path has been completed to the data source 10B (S206).
[0052] FIG. 15 shows an example of transmitting sensing data from data source 10A to server 40. The data source 10A transmits the sensing data according to the second transmission policy. The data source 10A accumulates the sensing data generated by the sensor 50, and when the data reaches 20 MB, it transmits a connection request for the communication path to the path management controller 30 (S301). When the path management controller 30 receives a connection request for a communication path, it generates a communication path from the network device 81E to the server 40 (S302). When the generation of the communication path is completed, the path management controller 30 transmits a communication path generation completion notification to the data source 10A (S303). Then, when the data source 10A receives the communication path generation completion notification (S303), it collectively transmits the accumulated sensing data to the server 40 (S304-1, S304-2, S304-3). After that, the data source 10A immediately transmits a communication path release request to the path management controller 30 (S305). When the path management controller 30 receives the communication path release request, it releases the communication paths of the network devices 81A and 81B, and transmits a communication path release completion notification indicating that the release of the communication path is completed to the data source 10A (S306).
[0053] FIG. 16 shows an example of transmission of sensing data from the data source 10C to the server 40. The data source 10C transmits the sensing data according to the third transmission policy. When data is generated by the sensor 50, the data source 10C transmits a connection request for a communication path to the path management controller 30 (S401). When the data source 10C receives the communication path generation completion notification (S403), it transmits the sensing data to the server 40 (S404-1), and then waits for a certain period of time to transmit a communication path release request. If sensing data is generated during that period, the sensing data is transmitted each time (S404-2, S404-3). When 20 ms has elapsed since the last data transmission (step S404-3), the data source 10C transmits a communication path release request to the path management controller 30 (S405). When the path management controller 30 receives the communication path release request, it releases the communication paths of the network devices 81D and 81E, and transmits a communication path release completion notification indicating that the release of the communication path is completed to the data source 10C (S406).
[0054] As shown in FIGS. 14 to 16, this embodiment prevents depletion of network resources and realizes RDMA communication with a large number of data sources by time-divisionally allocating communication paths at necessary timings. Since the communication path is allocated only for the period necessary for the data source 10 that wants to transmit sensing data, the utilization rate of the communication path can be improved and network resources can be reduced.
[0055] (Second Embodiment) The system of this embodiment does not include the path management controller 30 shown in FIG. 1. In this embodiment, the data source 10 directly sends a connection request for a communication path to the network devices 81A to 81E. By reflecting the settings received by the network devices 81A to 81E, the labor for generating the communication path can be omitted. Thereby, this embodiment can set the communication path in a shorter time.
[0056] In this embodiment, the communication path setting function 14 sends a connection request for generating a communication path with the server 40 to the network device 81. Also, the communication path release function 16 sends a release request for releasing the communication path with the server 40 to the network device 81.
[0057] When sensing data is generated, the data source 10 sends a connection request for a communication path to the network device 81. The received device 81 reflects the setting. For example, when the data source 10A transmits sensing data, the data source 10A sends a connection request for the communication path to the network device 81B. Then, the network device 81B generates a communication path with the data source 10A.
[0058] For each network device 81 set in the transmission route of the sensing data, the connection destination of the communication path of the sensing data is set in advance. Thus, in the present disclosure, predetermined network devices 81B and 81A that connect between the data source 10A and the server 40 generate a communication path between the data source 10A and the server 40. The communication path can use any means capable of transmitting the sensing data, and may be virtual such as a VLAN or physical such as an optical path.
[0059] The connection request for the communication path can use data in any format readable by the network device 81. For example, the Attribute ID field provided in the header of an RDMA (Remote Direct Memory Access) packet can be used.
[0060] FIG. 17 shows an example of the Attribute ID field. When using RoCE (RDMA over Converged Ethernet) v2 used in the UDP (User Datagram Protocol) protocol, the network device 81 can identify the negotiation based on the description in the Attribute ID field in the MAD Header. The MAD Header is stored in the DATH Header in the Base Transport Header.
[0061] The negotiation includes, for example, ConnectRequest for making an RDMA connection request, ConnectReply indicating an RDMA connection response, ReadyToUse indicating a usable state, DisconnectRequest for making an RDMA release request, and DisconnectReply indicating an RDMA release response. The value of the Attribute ID is determined for each negotiation. For example, if the Attribute ID is 0x0010, it can be used as a trigger for path generation in the network device 81B.
[0062] FIG. 18 shows an example of a sequence when generating and releasing a communication path. When using RDMA, data source 10A triggers a ConnectRequest to generate a communication path to server 40. At this time, network device 81B transfers the ConnectRequest to the next network device 81A. After the generation of the communication path is completed, network device 81A also transfers the ConnectRequest to server 40. Server 40 uses the generated communication path to send a ConnectReply to data source 10A. When data source 10A receives the ConnectReply from server 40, it sends a ReadyToUse to server 40. Thereby, RDMA communication from data source 10A to server 40 becomes possible.
[0063] When releasing the communication path, it is the same as when generating the communication path. Specifically, data source 10A triggers a Disconnect Request to release the communication path to server 40. At this time, when the release of the communication path is completed, network device 81B transfers the Disconnect Request to network device 81A. The same applies to network device 81A. When server 40 receives the Disconnect Request, it sends a DisconnectReply to data source 10A.
[0064] In network devices 81B and 81A, the timing of transferring the ConnectRequest is, for example, after the completion of the generation of the communication path. However, the present disclosure is not limited thereto. For example, network devices 81B and 81A may transfer the ConnectRequest without waiting for the completion of the generation of the communication path.
[0065] FIG. 19 shows an example of a sequence when generating and releasing a communication path. In this example, network devices 81B and 81A transfer a ConnectRequest without waiting for the completion of the generation of the communication path. In this case, network devices 81B and 81A are equipped with a function of sending a path setting completion notification to data source 10A, which is the source of the ConnectRequest. In the present disclosure, since the transmission route of the sensing data is predetermined, data source 10A can confirm that the communication path has been set in all network devices 81B and 81A of the transmission route by counting the number of path setting completion notifications sent from network devices 81B and 81A. Once this confirmation is made, data source 10A sends ReadyToUse to server 40. Thereby, RDMA communication from data source 10A to server 40 becomes possible.
[0066] When releasing the communication path, data source 10A sends a Disconnect Request to server 40. Server 40 releases the communication path and sends a DisconnectReply to data source 10A. Since the communication path is released at server 40, the communication path is also released in network devices 81A and 81B.
[0067] This embodiment realizes a lossless and broadband communication network 80 with a communication path, does not require a large amount of network resources, and enables RDMA communication with a large number of data sources. Furthermore, since the present disclosure can prevent data loss in communication network 80, reliable data transfer using RDMA can be realized.
[0068] (Effect of the present disclosure) As described above, the present disclosure can allocate communication paths in a time-division manner at the required timing in order to determine a transmission policy for each data source 10 and generate a communication path for each data source 10 according to the transmission policy. Therefore, the present disclosure can control the trade-off between the immediacy of data transmission and the shortening of communication path utilization time, shorten the communication path utilization time from each data source 10 to the server 40, facilitate the reuse of communication paths, and reduce the required number of communication paths for the entire communication network 80.
[0069] Here, in the present disclosure, the transmission control controller 20 determines a transmission policy in consideration of the overall NW resources. Therefore, the present disclosure can reduce the overall total resource usage amount by making the data wait, for example, for requirements such as only collecting data. Further, the present disclosure can prevent depletion of network resources by determining a set threshold value of the total resource usage amount in consideration of the remaining amount of network resources.
[0070] Therefore, the present disclosure can realize a lossless and broadband communication network 80 with communication paths, does not require a large amount of network resources, and enables RDMA communication with a large number of data sources. Furthermore, since the present disclosure can prevent data loss in the communication network 80, reliable data transfer using RDMA can be realized.
[0071] In addition, in the present embodiment, an example in which the data collected by the server 40 is sensing data is shown. However, the present disclosure is applicable to any data for which collection is required, such as user terminals, sensors, in-vehicle systems, etc.
[0072] Also, in the above-described embodiment, an example of setting a lossless and broadband communication path between the data source 10 and the server 40 is shown. However, a data transfer path with unguaranteed quality may be set as the communication path.
Industrial Applicability
[0073] The present disclosure can be applied to the information and communication industry.
Explanation of Signs
[0074] 10, 10A, 10B, 10C: Data source 20: Transmission control controller 30: Path management controller 40: Server 50: Sensor 11: Requirement notification function 12: Transmission policy receiving function 13: Data transmission timing control function 14: Communication path setting function 15: Data transmission function 16: Communication path release function 17: Generated data storage function 18: Requirement table 19: Transmission policy table 21: Requirement receiving function 22: Transmission policy decision function 23: Transmission policy distribution function 24: Transmission policy decision rule 31: Path setting request receiving function 32: Path setting function 33: Path setting location table 41: Data receiving function 42: Memory 43: Application 80: Communication network 81A, 81B, 81C, 81D, 81E: Network device
Claims
1. In a system for collecting data from a plurality of data sources to a server, comprising a controller for determining a transmission policy to be distributed to the plurality of data sources, the controller determines a transmission policy that determines the timing at which each data source generates a communication path based on the data transfer requirements from the plurality of data sources to the server, calculates the total resource usage when the plurality of data sources execute the transmission policy defined for each data source, and adjusts the transmission policy of each data source so that the total resource usage falls within a set threshold. A system.
2. The transmission policy further includes the timing for releasing the communication path, and the controller reduces the resource usage of the data source by advancing the timing for releasing the communication path in any of the plurality of data sources. The system according to claim 1.
3. The controller reduces the resource usage of a data source by delaying the timing for generating a communication path in any of the plurality of data sources. The system according to claim 1.
4. The data transfer requirements further include an allowable delay time, and the controller delays the timing for generating a communication path in a data source with a long allowable delay time among the plurality of data sources. The system according to claim 1.
5. The transmission policy further includes the timing for releasing the communication path, and when the path release waiting time in a data source with a long allowable delay time among the plurality of data sources is 0, the controller delays the timing for generating a communication path. The system according to claim 4.
6. A method executed by a system for collecting data from a plurality of data sources to a server, wherein the system comprises a controller for determining a transmission policy to be distributed to the plurality of data sources, the controller determines a transmission policy that determines the timing at which each data source generates a communication path based on the data transfer requirements from the plurality of data sources to the server, calculates the total resource usage when the plurality of data sources execute the transmission policy defined for each data source, and adjusts the transmission policy of each data source so that the total resource usage falls within a set threshold value. Method.
7. A program for realizing a computer as the controller provided in the system according to any one of claims 1 to 5.
Citation Information
Patent Citations
Network control method, controller, and program
JP2018152675A