Communication control device, prediction device, and communication control method
The communication control device predicts future traffic volumes for potentially congestive traffic to enable early route switching, addressing delays and maintaining quality in communication systems by classifying and managing traffic effectively.
Patent Information
- Application Number
- PCT/JP2023/026685
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-20
- Publication Date
- 2025-01-23
AI Technical Summary
Conventional communication systems face delays due to congestion caused by simultaneous communication among multiple devices, as they require time to determine and execute route switching based on actual traffic volume measurements, which can lead to increased communication delays and reduced communication quality.
A communication control device and method that classifies traffic input during a predetermined period to predict future traffic volumes only for traffic likely to cause congestion, allowing for early determination of congestion states and timely switching of communication paths between higher-level and lower-level devices, thereby reducing delays and maintaining communication quality.
This approach effectively suppresses congestion and reduces communication delays while ensuring high communication quality by predicting and managing traffic flow proactively, rather than reacting to actual measurements, thus improving network efficiency.
Smart Images

Figure JP2023026685_23012025_PF_FP_ABST
Abstract
Description
Communication control device, prediction device, and communication control method
[0001] The present invention relates to a communication control device, a prediction device, and a communication control method.
[0002] When multiple communication devices communicate simultaneously, such as when multiple upper devices and multiple lower devices communicate with each other, congestion may occur, resulting in communication delays. Congestion may be resolved by switching the communication path (hereinafter referred to as "path switching") using a switching device installed on the communication path, thereby changing the connection relationship between the upper device and the lower device. If communication traffic (hereinafter simply referred to as "traffic") concentrated on a specific communication device (e.g., an upper device) can be distributed to multiple communication devices by path switching, congestion can be resolved, and communication delays can be reduced.
[0003] Conventionally, in a communication system having a switching device that can change the connection relationship between a higher-level device and a lower-level device, there is a technology that collects information indicating the amount of traffic measured by the higher-level device and the lower-level device (hereinafter simply referred to as "traffic volume"), determines whether congestion has occurred at the offload destination based on the collected traffic volume, and performs route switching.
[0004] JP2014-060610A JP10-285276A
[0005] Y.Okamoto, et al., “Short-term traffic prediction based on mobile control information for proactive optical switching to lower congestion delay,” International Conference on Emerging Technologies for Communications (ICETC), 2022
[0006] Conventional communication systems calculate a congestion value indicating the degree of congestion based on the traffic volume of each communication path, and perform route switching when the congestion value of any communication path exceeds a threshold. However, route switching generally requires a certain amount of time. Therefore, in conventional communication systems, congestion occurs from the time congestion occurs until the route switching is completed. Therefore, the time required for route switching is also one of the factors that cause communication delays. For example, in the technologies described in Patent Documents 1 and 2, it takes time from collecting actual traffic volume to performing route switching, making it difficult to determine whether congestion has occurred in real time (e.g., within several milliseconds) and to perform route switching within a predetermined period of time (e.g., within several tens of milliseconds).
[0007] In response to this problem, a method can be considered in which, instead of switching routes based on actual traffic volume measurements, future traffic volume is predicted and route switching is performed in advance based on the predicted value to avoid congestion. However, in this case, in order to determine whether congestion will occur at the offload destination, it is necessary to wait until traffic volume prediction results are obtained for all upper-level devices. Furthermore, since the time required to predict traffic volume differs depending on the prediction method, it takes time to obtain prediction results from all prediction methods used. Therefore, there is still the problem of it taking time to perform route switching.
[0008] Traffic volume prediction methods include prediction methods that require a relatively large amount of calculation, such as prediction using machine learning, and prediction methods that require a relatively small amount of calculation, such as linear prediction. For example, by classifying flows and using a prediction method with a small amount of calculation for possible flows, the time required to predict traffic volume can be shortened. However, even if a prediction method with a small amount of calculation is used, the amount of calculation increases as the number of terminals increases, which poses a problem in that it takes a long time to predict traffic volume.
[0009] In view of the above circumstances, an object of the present invention is to provide a communication control device, a prediction device, and a communication control method that can reduce communication delay while satisfying communication quality.
[0010] One aspect of the present invention is a communication control device comprising: a traffic classification unit that classifies communication traffic input during a specified period based on whether it may cause congestion; a traffic prediction unit that predicts future traffic volume only for the communication traffic that the traffic classification unit has determined may cause congestion; a congestion state determination unit that calculates a total communication traffic volume based on all of the communication traffic and calculates a congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit; and a switching determination unit that determines whether or not switching of communication paths between multiple upper-level devices and multiple lower-level devices is necessary based on information based on the congestion volume calculated by the congestion state determination unit.
[0011] Another aspect of the present invention is a prediction device that includes a traffic classification unit that classifies communication traffic input during a predetermined period based on whether or not it may cause congestion; a traffic prediction unit that predicts future traffic volume only for the communication traffic that has been determined by the traffic classification unit to be a cause of the congestion; and a congestion state determination unit that calculates a total communication traffic volume based on all of the communication traffic, calculates a congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit, and determines whether or not the congestion will occur.
[0012] Another aspect of the present invention is a communication control method executed by a computer, the communication control method comprising: a traffic classification step of classifying communication traffic input during a predetermined period based on whether it may cause congestion; a traffic prediction step of predicting future traffic volume only for the communication traffic determined in the traffic classification step to be a cause of the congestion; a congestion state determination step of calculating a total communication traffic volume based on all the communication traffic and calculating a congestion volume based on the total communication traffic volume and the future traffic volume predicted in the traffic prediction step; and a switching determination step of determining whether or not switching of communication paths between multiple upper devices and multiple lower devices is necessary based on information based on the congestion volume calculated in the congestion state determination step.
[0013] According to the present invention, it is possible to suppress the occurrence of congestion and reduce communication delays while satisfying communication quality.
[0014] 1 is a diagram showing the configuration of a communication system 1, which is an example of a conventional communication system. FIG. 2 is a diagram showing the configuration of a mobile communication system 10, which is an example of a conventional communication system. FIG. 3 is a block diagram showing the configuration of a switching instruction device 17 of the mobile communication system 10, which is an example of a conventional communication system. FIG. 4 is a diagram showing the flow of processing in the switching instruction device 17 of the mobile communication system 10, which is an example of a conventional communication system. FIG. 5 is a flowchart showing the process of predicting traffic volume of a remote station in a prediction unit 171. FIG. 6 is a flowchart showing the process of creating a traffic volume prediction model in the prediction unit 171. FIG. 7 is a flowchart showing the process of predicting future traffic volume in the prediction unit 171. FIG. 8 is a flowchart showing the process of predicting traffic volume of an upper link in the prediction unit 171. FIG. 9 is a flowchart showing the process of calculating a switching threshold in a switching threshold determination unit 172. FIG. 10 is a diagram showing an example of a lookup table. FIG. 11 is a flowchart showing the switching judgment process in a switching judgment unit 175. FIG. 11 is a flowchart showing the switching judgment process in the switching judgment unit 175. FIG. 12 is a diagram showing the execution timing of processing in route switching by a conventional communication system. FIG. 13 is a diagram showing the execution timing of processing in route switching by the communication systems of each embodiment of the present invention. FIG. 14 is a block diagram showing the configuration of a communication system 1a in a first embodiment of the present invention. FIG. 15 is a block diagram showing the functional configuration of a prediction unit 71a of a switching instruction device 7a in the first embodiment of the present invention. FIG. 1 is a diagram showing input and output of a congestion target prediction unit 712 of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 2 is a diagram showing input and output of a congestion state determination unit 713 of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 3 is a block diagram showing the functional configuration of a switching determination unit 75a of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 4 is a flowchart showing the operation of a congestion target prediction unit 712 of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 5 is a flowchart showing the operation of a congestion state determination unit 713 of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 6 is a flowchart showing the operation of a determination unit 752 of a switching instruction device 7a in the first exemplary embodiment of the present invention. FIG. 7 is a block diagram showing the configuration of a prediction unit 71b of a communication system 1b in a second exemplary embodiment of the present invention.10 is a diagram illustrating input and output of a path state calculation unit 716 of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 11 is a diagram illustrating input and output of a congestion target prediction unit 712b of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 12 is a diagram illustrating input and output of a congestion state determination unit 713b of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 13 is a block diagram illustrating a functional configuration of a switching determination unit 75b of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 14 is a diagram illustrating an example of information indicating the state of a communication path stored in a storage medium of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 15 is a flowchart illustrating the operation of a congestion target prediction unit 712b of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 16 is a flowchart illustrating the operation of a congestion state determination unit 713b of a switching instruction device 7b according to a second embodiment of the present invention. FIG. 17 is a flowchart illustrating the operation of a determination unit 752 of a switching instruction device 7b according to a third embodiment of the present invention. FIG. 18 is a block diagram illustrating a configuration of a prediction unit 71c of a communication system 1c according to a third embodiment of the present invention. FIG. 19 is a diagram illustrating the input and output of a path state calculation unit 716c of a switching instruction device 7c according to a third embodiment of the present invention. FIG. 19 is a diagram illustrating the input and output of a congestion state determination unit 713c of a switching instruction device 7c according to a third embodiment of the present invention. 10 is a block diagram showing a functional configuration of a switching determination unit 75c of a switching instruction device 7c according to a third embodiment of the present invention. FIG. 11 is a diagram showing an example of information indicating the state of a communication path stored in a storage medium of the switching instruction device 7c according to the third embodiment. FIG. 12 is a flowchart showing the operation of a congestion state determination unit 713c of the switching instruction device 7c according to the third embodiment. FIG. 13 is a flowchart showing the operation of a determination unit 752 of the switching instruction device 7c according to the third embodiment. FIG. 14 is a block diagram showing a functional configuration of a switching determination unit 75d of a switching instruction device 7d according to a fourth embodiment of the present invention. FIG. 15 is a diagram showing an example of information indicating the state of a communication path stored in a storage medium of the switching instruction device 7d according to the fourth embodiment. FIG. 16 is a diagram showing the input / output of a congestion state determination unit 713e of a switching instruction device 7e according to a fifth embodiment of the present invention. FIG. 17 is a block diagram showing the functional configuration of a switching determination unit 75e of a switching instruction device 7e according to the fifth embodiment of the present invention. FIG. 18 is a flowchart showing the operation of a congestion state determination unit 713e of the switching instruction device 7e according to the fifth embodiment of the present invention.Fig. 10 is a flowchart showing the operation of a determination unit 752 of a switching instruction device 7e in a fifth embodiment of the present invention. Fig. 11 is a diagram comparing processing timing from acquisition of a congestion flag to switching of a communication path. Fig. 12 is a diagram showing input / output of a determination unit 752 of a switching instruction device 7f in a sixth embodiment of the present invention. Fig. 13 is a block diagram showing the configuration of a prediction unit 71g of a communication system 1g in a seventh embodiment of the present invention. Fig. 14 is a flowchart showing the operation of a traffic classification unit 714g and a traffic prediction unit 715g of a switching instruction device 7g in a seventh embodiment of the present invention.
[0015] Hereinafter, a communication control device, a prediction device, and a communication control method according to embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same functions in each embodiment will be assigned the same reference numerals, and repeated explanations of those functions may be omitted.
[0016] In order to make the description of the configuration of the communication system according to the embodiment of the present invention easier to understand, an example of the configuration of a conventional communication system will be described first for comparison.
[0017] 1 is a diagram showing the configuration of a communication system 1, which is an example of a conventional communication system. The communication system 1 has a plurality of lower-level devices 3, a plurality of upper-level devices 4, and a switching instruction device 7. The lower-level devices 3 and the upper-level device 4 are connected via a network 5. The network 5 is configured to include one or more transfer devices (not shown; devices corresponding to the transfer device 15 shown in FIG. 2, which will be described later). The transfer device also functions as a switching device that can change the connection relationship between the lower-level devices 3 and the upper-level device 4.
[0018] 1, the four lower devices 3 are respectively referred to as lower devices 3-1 to 3-4, and the two upper devices 4 are respectively referred to as upper devices 4-1 and 4-2. Hereinafter, the direction from the lower device 3 to the upper device 4 will be referred to as "upstream," and the direction from the upper device 4 to the lower device 3 will be referred to as "downstream."
[0019] The lower device 3 transmits an upstream signal to the connected upper device 4. The network 5 transfers the upstream signal to the upper device 4 according to the communication path between the lower device 3 and the upper device 4. The upper device 4 also transmits a downstream signal to the connected lower device 3. The network 5 transfers the downstream signal to the lower device 3 according to the communication path between the lower device 3 and the upper device 4. The switching instruction device 7 instructs each device, such as a transfer device, to switch the communication path.
[0020] The switching instruction device 7 uses information such as traffic volume or traffic allocation volume (hereinafter collectively referred to as "traffic volume") acquired from the lower-level device 3 and the upper-level device 4 to predict in advance the traffic volume of some or all communication links (hereinafter simply referred to as "links" or "flows") in the communication path between the lower-level device 3 and the upper-level device 4. The switching instruction device 7 determines a switching threshold for each link based on the traffic volume prediction accuracy and the transmission capacity of the link.
[0021] For example, the link rate can be used as an index representing the transmission capacity of a link. The link rate is the maximum communication speed of the link. The switching threshold is a threshold used to determine whether congestion requiring a switch of the communication path (route switching) is predicted to occur. For example, even for the same link rate, the switching instruction device 7 determines a lower switching threshold as the prediction accuracy of the traffic volume becomes lower.
[0022] The switching instruction device 7 determines whether congestion will occur for each link using the predicted traffic volume and a switching threshold. If congestion is predicted to occur in any link, the switching instruction device 7 determines to perform path switching for load balancing. The switching instruction device 7 instructs switching of communication paths (path switching) so that at least a portion of the traffic transmitted through a link predicted to be congested is transmitted through a link predicted not to be congested. This enables optimal communication path switching according to prediction accuracy. Furthermore, link congestion delays are reduced, enabling higher bandwidth utilization efficiency.
[0023] As shown in FIG. 1 , the switching instruction device 7 includes a prediction unit 71, a switching threshold determination unit 72, and a switching determination unit 75. The prediction unit 71 acquires prediction information from each device to be used for predicting the traffic volume of each link. The prediction information includes, for example, the traffic volume observed by the device, the traffic allocation volume to the device, the number of terminals connected to the device, and communication quality. The prediction unit 71 predicts the future traffic volume for each link using the prediction information. Any existing technology can be used to predict the future traffic volume.
[0024] The switching threshold determination unit 72 includes a prediction accuracy calculation unit 73 and a threshold calculation unit 74. The prediction accuracy calculation unit 73 calculates prediction accuracy for each link based on past prediction results of future traffic volume and actual traffic volume. The threshold calculation unit 74 determines a switching threshold for each link such that the ratio to the link's transmission capacity (e.g., link rate) becomes lower as the prediction accuracy becomes lower.
[0025] The switching determination unit 75 determines in advance whether congestion will occur for each link using the predicted future traffic volume value and a switching threshold. If congestion is predicted, the switching determination unit 75 determines to perform route switching for load balancing. For example, the switching determination unit 75 determines to perform route switching from a link where congestion is predicted to occur to a link with a lower link utilization rate. The switching determination unit 75 instructs each device to perform processing for route switching.
[0026] An example in which the communication system 1 is applied to a mobile communication system will be described below.
[0027] 2 is a diagram showing the configuration of a mobile communication system 10, which is an example of a conventional communication system. The mobile communication system 10 is an example of the communication system 1. The mobile communication system 10 is, for example, a fifth-generation mobile communication system (5G). The mobile communication system 10 includes a plurality of terminal stations 11, a plurality of antenna stations 12, a plurality of remote stations 13, a plurality of central stations 14, a transfer device 15, a switching instruction device 17, and a resource allocation device 16.
[0028] The terminal station 11, the antenna station 12, the distributed station 13, and the central station 14 are UE (User Equipment), RU (Radio Unit), DU (Distributed unit), and CU (Central unit), respectively, of a fifth-generation mobile communication system. The distributed station 13 is an example of a lower-level device 3, and the central station 14 is an example of a higher-level device 4. However, the combination of a device corresponding to the lower-level device 3 and a device corresponding to the higher-level device 4 is not limited to the combination of the distributed station 13 and the central station 14, and is arbitrary. The transfer device 15 is an example of a transfer device that constitutes the network 5.
[0029] The transfer device 15 also functions as a switching device that can change the connection relationship between the remote stations 13 and the central station 14. The transfer function and the switching function of the transfer device 15 may be realized by separate devices. The switching instruction device 17, the transfer device 15, the resource allocation device 16, and other devices do not necessarily need to be separate devices, and may be configured as an integrated device.
[0030] The mobile communication system 10 is connected to an upper network 20. Here, the M (M is an integer equal to or greater than 1) remote stations 13 are referred to as remote stations 13-1 to 13-M, respectively. Furthermore, the Km (Km is an integer equal to or greater than 1) antenna stations 12 subordinate to the remote station 13-m (m is an integer equal to or greater than 1 and equal to or less than M) are referred to as antenna stations 12-m, respectively. Furthermore, the N (N is an integer equal to or greater than 2) central stations 14 are referred to as central stations 14-1 to 14-N, respectively. Therefore, the mobile communication system 10 shown in FIG. 2 is an example of a mobile communication system in which M=4, K1=2, K2=2, K3=2, K4=2, and N=2.
[0031] The terminal station 11 transmits and receives radio signals to and from the antenna station 12 using radio resources allocated by the remote station 13. The allocated radio resources include information indicating the start and end timings of time periods during which radio signal transmission and reception are permitted. The start and end timings are represented by, for example, slots. A slot is a unit of scheduling for data transmission and reception in a radio frame. The allocated radio resources may further include information indicating a coding rate and a modulation method.
[0032] The antenna station 12 receives uplink data from the terminal station 11 via a wireless signal. The antenna station 12-m sets the received uplink data as an uplink signal and transmits the uplink signal to the remote station 13-m via a wired interface. The antenna station 12-m also receives a downlink signal from the remote station 13-m via a wired interface. The antenna station 12 transmits the downlink data addressed to the terminal station 11, which is set in the received downlink signal, to the terminal station 11 via a wireless signal.
[0033] The remote station 13-m receives uplink signals from each of the Km antenna stations 12-m. The uplink signals received by the remote station 13-m include uplink data received by the antenna station 12-m from the terminal stations 11 under its control. The remote station 13 generates an uplink signal that aggregates the uplink data and transmits the generated uplink signal to the central station 14 to which the remote station 13 is connected. The remote station 13 also receives a downlink signal from the central station 14 to which the remote station 13 is connected, in which downlink data addressed to the terminal stations 11 under its control is set. The remote station 13-m converts the received downlink signal into a downlink signal corresponding to the radio signal to be transmitted from each antenna station 12-m. The remote station 13-m transmits the converted downlink signal to the antenna station 12-m corresponding to the downlink signal.
[0034] The central station 14 aggregates the uplink signals received from the subordinate remote stations 13 and transfers them to the upper network 20. The central station 14 also receives downlink signals from the upper network 20, in which downlink data addressed to the terminal stations 11 is set, and transfers the received downlink signals to the remote stations 13 connected to the destination terminal stations 11.
[0035] The transfer device 15 is connected to the remote stations 13, the central station 14, and the switching instruction device 17. The transfer device 15 is an example of a switching device that switches (switches) communication paths. The transfer device 15 transfers signals along the communication path between the remote stations 13 and the central station 14. That is, the transfer device 15 transfers upstream signals received from the remote stations 13 to the destination central station 14 along the communication path. The transfer device 15 also transfers downstream signals received from the central station 14 to the destination remote station 13 along the communication path. The transfer of signals along the communication path is performed under instructions from the switching instruction device 17. The resource allocation device 16 manages the resources of the central station 14.
[0036] The switching instruction device 17 is connected to the remote station 13, the central station 14, and the transfer device 15. The switching instruction device 17 may further be connected to the resource allocation device 16. The switching instruction device 17 instructs the transfer device 15 (switching device) to switch the communication path between the remote station 13 and the central station 14. In the mobile communication system 10, the communication path between the remote station 13 and the central station 14 is determined based on the connection relationship between the remote station 13 and the central station 14. Therefore, in the mobile communication system 10, the path between the remote station 13 and the central station 14 is switched by controlling the transfer device 15 (switching device) to change the central station 14 to which the remote station 13 is connected.
[0037] Also, as an example, it is assumed here that the switching instruction device 17 of the mobile communication system 10 determines, based on the upstream traffic, whether or not congestion has occurred on the central station 14 side, which corresponds to the higher-level device 4. Therefore, unless otherwise specified, traffic in the following description refers to the traffic of upstream signals.
[0038] 3 is a block diagram showing the configuration of a switching instruction device 17 of a mobile communication system 10, which is an example of a conventional communication system. The switching instruction device 17 includes a prediction unit 171, a switching threshold value determination unit 172, and a switching determination unit 175.
[0039] The prediction unit 171 receives radio information from the remote stations 13 as prediction information. The radio information includes information indicating radio resources to be allocated to terminal stations 11 under the control of the remote stations 13. The radio information is, for example, link control information (DCI: Downlink Control Information). The prediction unit 171 uses the radio information from the remote stations 13 to calculate the future traffic volume of each remote station 13.
[0040] Furthermore, the prediction unit 171 calculates the future traffic volume of each upper link based on the connection relationship between the remote stations 13 and the aggregation station 14 and the future traffic volume of each remote station 13. The upper link is the link between the aggregation station 14 and the transfer device 15. The upstream traffic volume of the upper link between the aggregation station 14-n (n is an integer between 1 and N) and the transfer device 15 corresponds to the total value of the traffic volume of the upstream signals that the aggregation station 14-n receives from each of the remote stations 13 under its control. The prediction unit 171 outputs the future traffic volume of the upper link to the switching threshold determination unit 172 and the switching determination unit 175, respectively.
[0041] The switching threshold determination unit 172 includes a prediction accuracy calculation unit 173 and a threshold calculation unit 174. The prediction accuracy calculation unit 173 receives information indicating actual traffic volume from the remote station 13. The prediction accuracy calculation unit 173 calculates the actual traffic volume flowing through each upper link based on the actual traffic volume and the connection relationship between the remote station 13 and the central station 14. The prediction accuracy calculation unit 173 calculates prediction accuracy for each upper link based on the future traffic volume predicted in the past by the prediction unit 171 and the actual traffic volume. The threshold calculation unit 174 calculates a switching threshold for each upper link based on the link rate and prediction accuracy. The threshold calculation unit 174 outputs the calculated switching threshold for each upper link to the switching determination unit 175.
[0042] The switching determination unit 175 calculates a predicted link utilization rate for each upper link based on the future traffic volume value acquired from the prediction unit 171 and the switching threshold acquired from the threshold calculation unit 174. If there is an upper link for which it is determined that congestion will occur due to a high predicted link utilization rate, the switching determination unit 175 determines to perform path switching by changing the aggregation station 14 to which the remote station 13 is connected. If the switching determination unit 175 determines to perform path switching, it instructs each device (the remote station 13, the aggregation station 14, and the transfer device 15) to perform path switching.
[0043] Specifically, the switching determination unit 175 instructs the central station 14 that is the connection destination before the path switching (hereinafter referred to as the "switching source") to release the connection with the remote station 13, and instructs the central station 14 that is the connection destination after the path switching (hereinafter referred to as the "switching destination") to connect with the remote station 13. Furthermore, the switching instruction device 17 instructs the transfer device 15 (switching device) to switch the path so that signals are transferred via the communication path after the path switching.
[0044] 4 is a diagram showing a processing flow in the switching instruction device 17 of the mobile communication system 10, which is an example of a conventional communication system. The prediction unit 171 predicts future traffic volume of an upper link, for example, for a period D(a) (step S1). The prediction accuracy calculation unit 173 obtains information indicating the future traffic volume predicted in step S1 from the prediction unit 171 and stores the information until it obtains information indicating the actual traffic volume for the period D(a) (step S2).
[0045] The prediction accuracy calculation unit 173 receives information indicating the actual traffic volume of the upper link for period D(a) (step S3). The prediction accuracy calculation unit 173 calculates the prediction accuracy based on the stored future traffic volume for period D(a) and the received actual traffic volume for period D(a). The threshold calculation unit 174 determines a switching threshold based on the link rate and prediction accuracy of the upper link (step S4). The threshold calculation unit 174 outputs the determined switching threshold to the switching determination unit 175.
[0046] Meanwhile, the prediction unit 171 calculates the future traffic volume of the upper link for period D(b), which is a period after period D(a) (step S5). The switching determination unit 175 acquires the switching threshold output from the threshold calculation unit 174 in step S4 (step S6). Furthermore, the switching determination unit 175 acquires information indicating the future traffic volume for period D(b), calculated in step S5, from the prediction unit 171 (step S7). The switching determination unit 175 determines whether or not route switching is necessary based on the acquired switching threshold and the value of the future traffic volume for period D(b) (step S8).
[0047] As described above, the future traffic volume acquired by the switching threshold value determination unit 172 is the traffic volume at a time earlier than the future traffic volume acquired by the switching determination unit 175 .
[0048] Next, a detailed description will be given of the processing of the switching instruction device 17. First, a description will be given of the processing of predicting future traffic volume of each upper link in the prediction unit 171. The prediction unit 171 performs the processing of steps S1 and S5 in Fig. 4 by the processing of Figs. 5 to 8 below.
[0049] 5 is a flowchart showing the process of predicting the traffic volume of a remote station in the prediction unit 171. At time t(i-1), the remote station 13 notifies the terminal station 11 of DCI(i) for the next transmission period, and further notifies the switching instruction device 17 of DCI information in which DCI(i) is set (i is an integer). DCI(i) is DCI that indicates the radio resources to be allocated to the terminal station 11 in slot SL(i) from time t(i) to time t(i+1), and the coding rate and modulation scheme to be used by the terminal station 11.
[0050] Specifically, the DCI includes scheduling information, an MCS (Modulation and Coding Scheme), and the like, which are necessary for the terminal station 11 to transmit uplink data. The scheduling information is represented by a resource block. The resource block is represented by a channel and the transmission start timing and transmission end timing using that channel. The MCS represents the data modulation and channel coding rate. The TBS (Transport Block Size) is determined based on the resource block size and the MCS. The TBS makes it possible to predict the traffic volume.
[0051] At time t(i-1), the switching instruction device 17 receives DCI information in which DCI(i) is set from each remote station 13. Based on the information included in DCI(i), the prediction unit 171 calculates the predicted traffic volume DU(i) of the remote station 13 for the period D(i) corresponding to the slot SL(i) (step S111). Furthermore, the prediction unit 171 calculates the allocated time interval T(i) from the difference between time t(i) and time t(i+1) (step S112). The allocated time interval T(i) corresponds to the duration of the slot SL(i), i.e., the duration of the period D(i) from time t(i) to time t(i+1). The prediction unit 171 may receive the allocated time interval T(i) from the remote station 13. The prediction unit 171 stores the predicted traffic volume DU(i) of each remote station 13, the allocated time interval T(i), and the period D(i) in association with each other.
[0052] The prediction unit 171 creates a traffic volume prediction model (step S113). The traffic volume prediction model is a model that uses traffic volumes of q (e.g., q=100) slots in a time series as input data and predicts the traffic volume of the slot next to the input data. Details of creating the traffic volume prediction model will be described later with reference to FIG. 6.
[0053] The prediction unit 171 predicts the future traffic volume DU(i+1) of each remote station 13 during the period D(i+1) from time t(i+1) to time t(i+2) using the traffic volume prediction model created in step S113 (step S114). Details of the prediction process will be described later with reference to Fig. 7. After the process of step S114, the prediction unit 171 performs the process of Fig. 8, which will be described later, to calculate the traffic volume for each upper link.
[0054] 6 is a flowchart showing the process of creating a traffic volume prediction model by the prediction unit 171. FIG. 6 shows the detailed process of step S113 in FIG.
[0055] The prediction unit 171 stores in advance K time intervals to be processed: T_1, T_2, ..., T_k-1, and T_req. The time intervals T_1 to T_k-1 are the time lengths of slots available for allocation of resource blocks to the terminal station 11. For example, T_1 to T_k-1 are 125 [us], 250 [us], 500 [us], and 1 [ms]. The allocation time interval T(i) is the same value as one of the time intervals T_1 to T_k-1. The time interval T_req is a value required by an application or the like. The time interval T_req is a value greater than T_1 to T_k-1. The prediction unit 171 selects one of the time intervals T_1 to T_req that has not yet been selected, and sets it as T_x (step S121).
[0056] The prediction unit 171 determines whether the allocated time interval T(i) is equal to or greater than the time interval T_x (step S122). If the prediction unit 171 determines that the allocated time interval T(i) is equal to or greater than the time interval T_x (step S122: YES), the prediction unit 171 converts the predicted traffic volume DU(i) of the remote station 13 into a predicted traffic volume for each time interval T_x (step S123).
[0057] That is, the prediction unit 171 calculates that a predicted traffic volume DU_T_x of predicted traffic volume DU(i) × (time interval T_x / allocated time interval T(i)) will occur for each time interval T_x between time t(i) and time t(i+1). For example, assume that the allocated time interval T(i) is 250 us and the time interval T_x is 125 us. The prediction unit 171 predicts that a traffic volume of DU_125 us = DU(i) / 2 will occur between time t(i) and time t(i)+125 us and between time t(i)+125 us and time t(i+1), respectively.
[0058] The prediction unit 171 adds the predicted traffic volume calculated in step S123 to the time-series predicted traffic volume previously calculated for the time interval T_x for each remote station 13 and stores the result (step S124). The prediction unit 171 learns a traffic volume prediction model for the time interval T_x using the stored time-series predicted traffic volumes of the remote stations 13 for the time interval T_x (step S125).
[0059] For example, the time-series predicted traffic volumes of the remote station 13 for the time interval T_x are assumed to be DU_T_x(P), DU_T_x(P-1), DU_T_x(P-2), ..., DU_T_x(1) in order of most recent time (P is an integer equal to or greater than 2). The prediction unit 171 generates learning data for each remote station 13, using DU_T_x(p) as the correct output data and subtracting 1 from the value of p in order from P, with DU_T_x(p-1) to DU_T_x(p-q) as input data (q is an integer equal to or greater than 1, for example, q=100). The prediction unit 171 uses this generated learning data to train a traffic volume prediction model that represents the correspondence between input data and output data.
[0060] On the other hand, if the prediction unit 171 determines in step S122 that the allocated time interval T(i) is smaller than the time interval T_x (step S122: NO), it performs the process of step S126. The prediction unit 171 records the predicted traffic volume DU(i) of the remote station 13-m in a buffer within the prediction unit 171 that corresponds to the remote station 13-m and the time interval T_x (step S126). The prediction unit 171 determines whether the predicted traffic volume for the time interval T_x has been recorded in the buffer that corresponds to each remote station 13 and the time interval T_x (step S127).
[0061] For example, assume that the allocated time interval T(i) is 250 [us] and the time interval T_x is 500 [us]. The prediction unit 171 determines whether the predicted traffic volume for T_x / T(i) = 2 has been recorded in the buffer corresponding to 500 [us]. If the prediction unit 171 determines that the predicted traffic volume for the time interval T_x has not been recorded in the buffer corresponding to the time interval T_x (step S127: NO), the prediction unit 171 performs the processing from step S128.
[0062] The prediction unit 171 performs the process of step S124 when it determines that the predicted traffic volume for the time interval T_x has been recorded in the buffer corresponding to the time interval T_x for each remote station 13 (step S127: YES). That is, the prediction unit 171 reads out the predicted traffic volume DU(i-T_x / T(i)+1) to the predicted traffic volume DU(i) for each remote station 13 from the buffer corresponding to the time interval T_x, and sums them up to obtain DU_T_x(P).
[0063] For example, suppose the allocated time interval T(i) is 250 [us] and the time section T_x is 500 [us]. The prediction unit 171 sums the predicted traffic volume DU(i-1) and the predicted traffic volume DU(i) to calculate DU_500 [us] (P).
[0064] The prediction unit 171 stores the time-series predicted traffic volumes DU_T_x(1) to DU_T_x(P-1) of each remote station 13 that were previously calculated for the time interval T_x. The prediction unit 171 adds the newly calculated predicted traffic volume DU_T_x(P) to these predicted traffic volumes DU_T_x(1) to DU_T_x(P-1) for each remote station 13 and stores them (step S124). The prediction unit 171 performs the process of step S125 and learns a traffic volume prediction model using the time-series predicted traffic volume for the time interval T_x.
[0065] After the process of step S125, or if the determination in step S127 is NO, the prediction unit 171 determines whether all of the K time intervals to be processed, T_1 to T_req, have been selected (step S128). If there is an unselected time interval (step S128: NO), the prediction unit 171 returns to step S121 and sets the newly selected time interval to T_x.
[0066] Then, if the prediction unit 171 determines that all K time intervals to be processed have been selected (step S128: YES), it stores a traffic volume prediction model corresponding to each of the K time intervals T_1 to T_req and a predicted time, which is the time from when input data is input to the traffic volume prediction model to when output data is output (step S129).
[0067] Fig. 7 is a flowchart showing the process of predicting future traffic volume by the prediction unit 171. Fig. 7 shows detailed processing in step S114 of Fig. 5. The prediction unit 171 determines whether it is possible to predict future traffic volume by time t(i+1), when the next period D(i) ends (step S131). Specifically, the prediction unit 171 determines whether the sum of the allocated time interval T(i) and the switching time Tc is longer than the prediction time of the prediction model for the traffic volume of the allocated time interval T(i).
[0068] If the allocation time interval T(i) + switching time Tc is longer than the predicted time (T(i) + Tc > predicted time), the prediction unit 171 determines that it is possible to predict future traffic volume by the end of the next period D(i) (step S131: YES). The prediction unit 171 inputs the p most recent time-series predicted traffic volumes DU(P) to DU(P-p+1) for the allocation time interval T(i) into the traffic volume prediction model created for each remote station 13. The prediction unit 171 calculates the future traffic volume DU(i+1) for each remote station 13 during the period D(i+1) from time t(i+1) to time t(i+2) (step S132). Note that t(i+2) = t(i+1) + T(i). The prediction unit 171 stores the calculated future traffic volume DU(i+1) for each remote station 13.
[0069] If the predicted time is equal to or greater than the allocation time T(i) + switching time Tc (T(i) + Tc ≦ predicted time), the prediction unit 171 determines that it is impossible to predict future traffic volume by the end of the next period D(i) (step S131: NO). The prediction unit 171 performs prediction from time t(i+1) to the time interval T_req (e.g., 5 ms) ahead, which satisfies the service request delay. For each remote station 13, the prediction unit 171 adds up the predicted traffic volumes of the time series for the allocation time interval T(i) in units of T_req / T(i) in descending order of time to calculate the predicted traffic volume of the time series for the time interval T_req. For each remote station 13, the prediction unit 171 inputs the predicted traffic volumes of the most recent q time series for the time interval T_req into the traffic volume prediction model created for the time interval T_req.
[0070] As a result, the prediction unit 171 calculates the future traffic volume DUreq(i+1) of each remote station 13 during the period D(i+1) from time t(i+1) to time t(i+2) (step S133). Note that t(i+2) = t(i+1) + T_req. The prediction unit 171 sets the future traffic volume DUreq(i+1) to the future traffic volume DU(i+1) calculated in step S114 of FIG. 5 .
[0071] FIG. 8 is a flowchart showing the process of predicting the traffic volume of the upper link in the prediction unit 171. After the process shown in the flowchart of FIG. 5, the prediction unit 171 executes the process of predicting the traffic volume of the upper link shown in the flowchart of FIG. 8. The traffic volume of the upper link between the central station 14-n and the transfer device 15 is the same as the traffic volume of the central station 14-n. Therefore, the prediction unit 171 first acquires bearer information that the switching instruction device 17 has received in advance from the central station 14 (step S141). The bearer information is used as connection information that indicates the connection between the upper device and the lower device. By acquiring the bearer information, the prediction unit 171 recognizes the connection relationship between the remote station 13 and the central station 14.
[0072] The prediction unit 171 sums up, for each central station 14, the future traffic volume DU(i+1) of the subordinate remote stations 13 calculated in step S114 of Fig. 5. As a result, the prediction unit 171 calculates the future traffic volume L(i+1), which is the traffic volume of the upper link connected to the central station 14 during the period D(i+1) (step S142). Specifically, the prediction unit 171 calculates the future traffic volume L(i+1) as follows:
[0073] Future traffic volume L(i+1)=Σfuture traffic volume DU(i+1)×if(aggregate station-distributed station connection)
[0074] The above if (aggregate station-remote station connection) is a flag that takes the value of 1 if the aggregate station 14 is designated as the connection destination of the remote station 13, and takes the value of 0 if not. The prediction unit 171 outputs the period D(i+1) and the future traffic volume L(i+1) of each upper link to the switching threshold determination unit 172 and the switching determination unit 175 (step S143).
[0075] 9 is a flowchart showing the calculation process of the switching threshold value in the switching threshold value determination unit 172. The process shown in the flowchart in FIG. 9 corresponds to the process in step S4 in FIG. 4. The prediction accuracy calculation unit 173 receives information on the period D(a) and the future traffic volume L(a) of each upper link from the prediction unit 171 (step S151). This corresponds to the period D(i+1) and the future traffic volume L(i+1) of each upper link output by the prediction unit 171 in step S143 in FIG. 8.
[0076] Next, the prediction accuracy calculation unit 173 acquires the actual traffic volume of each remote station 13 during the period D(a) (step S152). For each central station 14, the prediction accuracy calculation unit 173 sums up the actual traffic volumes for the period D(a) acquired in step S152 for the remote stations 13 under its control, to calculate the actual traffic volume L'(a), which is the actual traffic volume of the upper link connected to the central station 14. Note that the prediction accuracy calculation unit 173 may receive the actual traffic volume L'(a) during the period D(a) from the central station 14.
[0077] The prediction accuracy calculation unit 173 acquires the link rate of each upper link. The prediction accuracy calculation unit 173 calculates the prediction accuracy for each upper link in the period D(a) (step S153). For example, the prediction accuracy calculation unit 173 calculates the following error rate as the prediction accuracy:
[0078] Error rate = | future traffic volume L(a) - actual traffic volume L'(a) | ÷ (actual traffic volume L'(a)) × 100
[0079] Alternatively, the prediction accuracy calculation unit 173 may calculate the following RMSE (Root Mean Squared Error) or MAE (Mean Absolute Error) used to evaluate prediction accuracy. Note that in the following equations (1) and (2), fi represents the future traffic volume L(a), and yi represents the actual traffic volume L'(a).
[0080]
[0081]
[0082] Next, the threshold calculation unit 174 calculates a switching threshold to be used after the period D(a) using the prediction accuracy calculated in step S153 (step S154). For example, when the threshold calculation unit 174 calculates the error rate in step S153, it calculates the switching threshold TH of the upper link by the following formula (3).
[0083] Switching threshold TH = link rate × (100 - error rate) ÷ 100 (3)
[0084] Alternatively, when the threshold calculation unit 174 calculates the RMSE or MAE by the above formula (1) or formula (2) in step S153, it converts the pre-stored lookup table into an error rate.
[0085] 10 is a diagram showing an example of a lookup table. The lookup table is data that associates prediction accuracy with an error rate and a calculation formula for a switching threshold. The threshold calculation unit 174 reads out an error rate corresponding to the prediction accuracy from the lookup table. The threshold calculation unit 174 uses the read error rate to calculate the switching threshold TH for each upper link according to the above formula (3).
[0086] In FIG. 9, the threshold calculation unit 174 outputs the switching threshold TH of each upper link calculated in step S154 to the switching determination unit 175 (step S155).
[0087] For example, accuracy is used to calculate the prediction accuracy. However, it is uncertain whether the prediction accuracy can actually be guaranteed. In this embodiment, the traffic volume is predicted in advance, and then the actual traffic flows. Therefore, as described above, the prediction accuracy is calculated using the difference between the actual traffic volume and the predicted traffic volume.
[0088] Fig. 11 is a flowchart showing the switching determination process in the switching determination unit 175. The process in Fig. 11 corresponds to the process in step S8 in Fig. 4. The switching determination unit 175 performs the process shown in Fig. 11 for each upper link. The switching determination unit 175 receives information on the period D(b) and the future traffic volume L(b) of each aggregation station 14 from the prediction unit 171 (step S161). These correspond to the period D(i+1) and the future traffic volume L(i+1) of each aggregation station 14 output by the prediction unit 171 in step S143 in Fig. 8.
[0089] The switching determination unit 175 receives the switching threshold TH for each upper link output by the threshold calculation unit 174 in step S155 of Fig. 9 (step S162). Using the switching threshold TH, the switching determination unit 175 calculates a predicted link usage rate for each upper link by the following equation (4) (step S163).
[0090] Predicted link utilization rate=future traffic volume L(b) / switching threshold TH (4)
[0091] Before substituting the future traffic volume L(b) into equation (4), the switching determination unit 175 converts it into the same traffic volume per unit time as the link rate by, for example, dividing it by the length of the period D(b). The switching determination unit 175 determines whether the calculated predicted link utilization rate exceeds 1 (step S164). If the switching determination unit 175 determines that the link utilization rate is 1 or less (i.e., if the switching determination unit 175 determines that the future traffic volume is equal to or less than the switching threshold), congestion is predicted not to occur, and therefore the processing shown in the flowchart of FIG. 11 is terminated. On the other hand, if the switching determination unit 175 determines that the predicted link utilization rate exceeds 1 (i.e., if the switching determination unit 175 determines that the future traffic volume will exceed the switching threshold), congestion is predicted to occur, and therefore route switching is to be performed (step S165).
[0092] Fig. 12 is a flowchart showing the switching determination process in the switching determination unit 175. When it is determined in step S165 of Fig. 11 that route switching is to be performed, the switching determination unit 175 starts executing the process shown in the flowchart of Fig. 12.
[0093] The switching determination unit 175 acquires from the prediction unit 171 the future traffic volume for each upper link for period D(b), information on the distributed stations 13 subordinate to the aggregate station 14 connected to that upper link, and the future traffic volume DU(b) for that distributed station 13 for period D(b). The switching determination unit 175 determines to switch the connection destination of one or more distributed stations 13 subordinate to the aggregate station 14 using an upper link whose predicted link utilization rate exceeds 1 to another aggregate station 14. At this time, the switching determination unit 175 uses the future traffic volume DU(b) of each distributed station 13 to determine the switching destination aggregate station 14 for the distributed station 13 to be switched to, so that the future traffic volume for each upper link is equal to or less than the switching threshold TH for that upper link (step S171).
[0094] The switching determination unit 175 transmits a path addition instruction to the source central station 14 to add traffic from the remote station 13 to be switched (step S172). Furthermore, the switching determination unit 175 transmits a path deletion instruction to the source central station 14 to delete traffic from the remote station 13 to be switched (step S173). Furthermore, the switching determination unit 175 transmits a path switching instruction to the transfer device 15 to instruct it to switch the communication path between the remote station 13 to be switched and the source central station 14 to the communication path between the remote station 13 to be switched and the destination central station 14 (step S174).
[0095] As described above, the communication system 1 and the mobile communication system 10, which are examples of conventional communication systems, predict future traffic volume of the upper link during period D(a) and calculate the prediction accuracy based on the future traffic volume and the actual traffic volume. The communication system 1 and the mobile communication system 10 determine the switching threshold based on the link rate and prediction accuracy of the upper link. Then, the communication system 1 and the mobile communication system 10 predict future traffic volume of the upper link during period D(b), which is a period after period D(a), and determine whether or not route switching is necessary based on the switching threshold and the future traffic volume.
[0096] For example, in the conventional communication system 1 as described above, the prediction unit 71 of the switching instruction device 17 predicts future traffic volume for each upper-level device 4. Then, based on the prediction result, the switching determination unit 75 predicts the occurrence of congestion and determines whether path switching is necessary. At this time, the switching determination unit 75 starts processing to predict the occurrence of congestion and determine whether path switching is necessary when the prediction results of future traffic volume for all upper-level devices 4 have been collected.
[0097] However, in such a conventional communication system 1, it is not possible to predict the occurrence of congestion and determine whether or not a route change is necessary until the results of predictions of future traffic volumes are collected for all of the higher-level devices 4. As a result, the implementation of the route change may be delayed.
[0098] Fig. 13 is a diagram showing the execution timing of processing in route switching in a conventional communication system. Fig. 13 shows a case where n host devices 4 exist in a communication system 1. As shown in Fig. 13, first, collection of information regarding traffic (hereinafter referred to as "traffic information") is started for all n host devices 4 (host devices #1 to #n), and future traffic volume is predicted for each host device 4.
[0099] Traffic volume prediction methods include prediction methods that require a relatively large amount of calculation, such as prediction methods using machine learning, and prediction methods that require a relatively small amount of calculation, such as prediction methods using linear prediction. Furthermore, the number of accommodated lower-level devices 3 differs for each upper-level device 4, and the greater the number of lower-level devices 3, the greater the amount of calculation required for predicting traffic volume. Therefore, the time required to predict future traffic volume differs for each upper-level device 4. For example, as shown in FIG. 13 , prediction of future traffic volume for upper-level device #2 is completed in a relatively short time, while prediction of future traffic volume for upper-level device #3 takes a relatively long time.
[0100] The switching determination unit 75 starts processing to determine whether congestion has occurred (hereinafter referred to as "congestion occurrence determination") and whether path switching is necessary (hereinafter referred to as "path switching determination") at the timing when the prediction results of future traffic volumes for all of the higher-level devices 4 have been collected. Therefore, even if congestion actually occurs in the higher-level device #2, which can collect the prediction results of future traffic volumes in a relatively short time, the congestion occurrence determination and path switching determination are not performed until the prediction results of future traffic volumes for another higher-level device 4 (e.g., the higher-level device #3 in FIG. 13), which takes the longest time, have been collected.
[0101] That is, there is a waiting time between when the prediction result of the future traffic volume for the higher-level device #2 is collected and when the prediction result of the future traffic volume for the higher-level device #3 is collected. As a result, there is a possibility that the route switching cannot be completed by the time congestion actually occurs in the higher-level device #2, and therefore it may not be possible to prevent congestion from occurring.
[0102] In contrast, the communication system according to each embodiment of the present invention described below does not predict future traffic volume for each upper device, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system according to each embodiment performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed based on a priority such as 5QI (5G QoS Identifier).
[0103] As a result, compared to the conventional communication system 1 described above, the communication system in each embodiment can eliminate the waiting time until the prediction results of future traffic volume for traffic of other terminals are collected, and can reduce the number of times the prediction process of future traffic volume is executed.
[0104] Furthermore, the communication system in each embodiment described below makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device and the upper-level device. As a result, the communication system in each embodiment can immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volume only for terminals determined to be a cause of congestion.
[0105] From the above viewpoints, the communication system in each of the embodiments described below can further shorten the time required from the start of collection of traffic information to the decision to switch routes.
[0106] 14 is a diagram showing the execution timing of processing in route switching by the communication system of each embodiment of the present invention. Fig. 14 shows a case where there are four host devices 4 in the communication system that transmit information about the route status to the switching instruction device (route status transmissions #1 to #4). As shown in Fig. 14, information about the route status is first collected for all four host devices 4 (host devices #1 to #4).
[0107] At the same time, future traffic volume is predicted for flows (traffic) that are expected to cause congestion. Figure 14 shows a case where future traffic volume is predicted for one flow from terminal #2 and two flows from terminal #3. These are terminals that have been determined in advance to be factors that cause congestion, for example, based on priority.
[0108] When future traffic volume is predicted, a congestion occurrence determination is made for each terminal. Therefore, as shown in Fig. 14, when a prediction is made for the flow of terminal #2 ("terminal prediction #2-1" in Fig. 14), it is possible to immediately start a congestion occurrence determination and make a route switching determination without waiting for the completion of predictions for the two flows of terminal #3 ("terminal prediction #3-1" and "terminal prediction #3-3" in Fig. 14).
[0109] First Embodiment A first embodiment of the present invention will be described below.
[0110] 15 is a block diagram showing the configuration of a communication system 1a according to a first embodiment of the present invention. The communication system 1 has a plurality of lower-level devices 3, a plurality of upper-level devices 4, and a switching instruction device 7a. The lower-level devices 3 and the upper-level device 4 are connected via a network (not shown, corresponding to network 5 in FIG. 1). The network is configured to include one or more transfer devices (not shown, corresponding to transfer device 15 in FIG. 2). The transfer device also functions as a switching device that can change the connection relationship between the lower-level devices 3 and the upper-level device 4.
[0111] The lower device 3 transmits an upstream signal to the connected upper device 4. The network transfers the upstream signal to the upper device 4 according to the communication path between the lower device 3 and the upper device 4. The upper device 4 also transmits a downstream signal to the connected lower device 3. The network transfers the downstream signal to the lower device 3 according to the communication path between the lower device 3 and the upper device 4. The switching instruction device 7a instructs each device, such as a transfer device (not shown), to switch the communication path.
[0112] The switching instruction device 7a predicts future traffic volume only for high-priority traffic, determines whether congestion will occur, and determines whether to perform route switching based on the predicted congestion volume. As shown in Fig. 15, the switching instruction device 7a has multiple prediction units 71a and a switching determination unit 75a.
[0113] FIG. 15 shows n prediction units 71a (71a-1 to 71a-n). The switching instruction device 7a is provided with a prediction unit 71a for each of the multiple higher-level devices 4. That is, the number of higher-level devices 4 is also n. In this embodiment, the higher-level devices 4 and the prediction units 71a are associated one-to-one, but this configuration is not limited to this. For example, the higher-level devices 4 and the prediction units 71a may be associated one-to-two or one-to-three. The prediction unit 71a is also connected to one or more lower-level devices 3 housed in the connected higher-level device 4. The configurations of the prediction unit 71a and the switching instruction device 7a will be described in detail below.
[0114] 16 is a block diagram showing the functional configuration of a prediction unit 71a of a switching instruction device 7a according to the first embodiment of the present invention. As shown in FIG. 16, the prediction unit 71a includes an information collection unit 711, a congestion target prediction unit 712, and a congestion state determination unit 713. The congestion target prediction unit 712 includes a traffic classification unit 714 and a traffic prediction unit 715.
[0115] The information collection unit 711 acquires information indicating the processable bandwidth from the upper device 4. The information collection unit 711 also acquires information indicating the traffic volume and information indicating the priority (e.g., 5QI) of each flow (or each terminal) from the lower device 3 or the upper device 4. The information collection unit 711 calculates the state of the communication path (total traffic volume and bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the calculated information indicating the state of the communication path and information indicating the priority of each flow to the congestion target prediction unit 712.
[0116] 17 is a diagram illustrating input and output of the congestion target prediction unit 712 of the switching instruction device 7 a according to the first embodiment of the present invention. The congestion target prediction unit 712 acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collection unit 711.
[0117] The traffic classification unit 714 of the congestion target prediction unit 712 classifies the flows based on the acquired information indicating the priority (e.g., 5QI) of each flow. Based on the classification result, the traffic classification unit 714 outputs information indicating high-priority traffic to the traffic prediction unit 715. Note that high-priority traffic is, for example, traffic corresponding to a predetermined 5QI.
[0118] The traffic classification unit 714 may classify traffic based on information other than priority. Information other than priority may be, for example, traffic fluctuations. In this case, the traffic may be classified based on whether the value of traffic fluctuations (per last 100 milliseconds) is equal to or greater than a predetermined threshold, and the traffic prediction unit 715 determines whether to predict future traffic volume based on the classification result. Alternatively, the traffic classification unit 714 may classify traffic based on the size of traffic volume, destination address, radio wave strength, or the like.
[0119] The traffic prediction unit 715 acquires information indicating high-priority traffic output from the traffic classification unit 714. The traffic prediction unit 715 predicts the future traffic volume of the acquired traffic. In this way, the future traffic volume is predicted only for high-priority flows.
[0120] The congestion target prediction unit 712 outputs to the congestion status determination unit 713 information indicating the state of the communication path and information indicating the priority of each flow obtained from the information collection unit 711, as well as information indicating the predicted future traffic volume predicted by the traffic prediction unit 715.
[0121] 18 is a diagram illustrating input and output of the congestion state determination unit 713 of the switching instruction device 7a in the first embodiment of the present invention. The congestion state determination unit 713 acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the predicted result of future traffic volume, output from the congestion target prediction unit 712. The congestion state determination unit 713 also acquires information indicating the bandwidth (link rate) from the information collection unit 711. The congestion state determination unit 713 determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the available bandwidth of the communication path. For example, the congestion state determination unit 713 determines that congestion will occur in the future if the following formula (5) is satisfied:
[0122] Available bandwidth < predicted future traffic volume ... (5)
[0123] When it is determined that congestion will occur, the congestion state determination unit 713 calculates the congestion amount. For example, the congestion state determination unit 713 calculates the congestion amount using the following equation (6).
[0124] Congestion volume = predicted future traffic volume - bandwidth (6)
[0125] The congestion state determining unit 713 outputs the calculated value of the congestion amount, information indicating the target base station, and information indicating the target terminal to the switching determining unit 75a.
[0126] 19 is a block diagram showing the functional configuration of a switching determination unit 75a of a switching instruction device 7a according to the first embodiment of the present invention. As shown in FIG. 19, the switching determination unit 75a includes a congestion collection unit 751 and a determination unit 752.
[0127] The congestion collection unit 751 acquires the value of the congestion amount output from the congestion state determination unit 713 of the prediction unit 71 a. The congestion collection unit 751 outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path to the determination unit 752.
[0128] The determination unit 752 acquires the congestion amount value output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path. The determination unit 752 rearranges the higher-level devices 4 in descending order of the free congestion amount value only if the acquired congestion amount value is a positive value (the congestion amount in this case is referred to as "congestion amount i"). The free congestion amount is the amount of congestion that can be tolerated in each higher-level device 4.
[0129] The determination unit 752 compares the value of the congestion amount i with the value of the free congestion amount in descending order of the value of the free congestion amount. The determination unit 752 determines to switch the communication path when the following formula (7) is satisfied:
[0130] Free congestion amount > congestion amount_i (7)
[0131] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0132] With the above-described configuration, the communication system 1a according to the first embodiment can reduce the number of times future traffic volume is predicted and can make a decision to switch communication paths earlier.
[0133] An example of the operation of the congestion target prediction unit 712 will be described below. Fig. 20 is a flowchart showing the operation of the congestion target prediction unit 712 of the switching instruction device 7a in the first embodiment of the present invention. The operation shown in the flowchart in Fig. 20 is started when the congestion target prediction unit 712 acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collection unit 711.
[0134] First, the congestion target prediction unit 712 initializes variable j by assigning 1 to it (step S171). Variable j is a variable that identifies a flow to be classified. The traffic classification unit 714 of the congestion target prediction unit 712 classifies the flows based on the acquired information indicating the priority (here, 5QI) of each flow. The traffic classification unit 714 determines whether the QoS of the flow to be classified is a predetermined high-priority QoS (high-priority QoS) (step S172).
[0135] If the traffic classification unit 714 determines that the QoS of the flow to be classified is a predetermined high-priority QoS (high-priority QoS) (step S172, Yes), the traffic prediction unit 715 predicts the future traffic volume of the acquired traffic (step S173).
[0136] The congestion target prediction unit 712 determines whether the value of variable j is N (step S174). N is a number corresponding to the total number of flows to be classified. In other words, the congestion target prediction unit 712 determines whether classification has been completed for all flows to be classified. If the value of variable j is smaller than N (step S174: No), the congestion target prediction unit 712 adds 1 to the value of variable j (step S175) and performs classification on the next flow (step S172).
[0137] If the value of the variable j is N (Yes in step S174), that is, if classification has been completed for all flows to be classified, the congestion target prediction unit 712 outputs information indicating the state of the communication path and information indicating the priority of each flow, which are acquired from the information collection unit 711, and information indicating the prediction result of future traffic volume predicted by the traffic prediction unit 715, to the congestion state determination unit 713. This completes the operation of the congestion target prediction unit 712 shown in the flowchart in FIG.
[0138] An example of the operation of the congestion state determination unit 713 will be described below. Fig. 21 is a flowchart showing the operation of the congestion state determination unit 713 of the switching instruction device 7a in the first embodiment of the present invention. The operation shown in the flowchart in Fig. 21 is started when the congestion state determination unit 713 acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the prediction result of future traffic volume, which are output from the congestion target prediction unit 712.
[0139] The congestion state determination unit 713 compares the difference between the future traffic volume and the current traffic volume with the available bandwidth of the communication path (step S181). If the comparison reveals that the future traffic volume is greater (step S181, Yes), that is, if the above-mentioned formula (5) is satisfied, for example, the congestion state determination unit 713 determines that congestion will occur and calculates the congestion amount (step S182). For example, the congestion state determination unit 713 calculates the congestion amount using the above-mentioned formula (6).
[0140] The congestion state determination unit 713 outputs the calculated congestion amount value, information indicating the target base station, and information indicating the target terminal to the switching determination unit 75a. This completes the operation of the congestion state determination unit 713 shown in the flowchart of FIG.
[0141] An example of the operation of the determination unit 752 will be described below. Fig. 22 is a flowchart showing the operation of the determination unit 752 of the switching instruction device 7a in the first embodiment of the present invention. The operation shown in the flowchart in Fig. 22 is started when the determination unit 752 acquires the value of the congestion amount output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path.
[0142] The determination unit 752 determines whether the acquired congestion amount value (congestion amount i) is a positive value (step S191). If the congestion amount i is equal to or less than 0 (step S191, No), the operation of the determination unit 752 shown in the flowchart of Fig. 22 ends. If the congestion amount i is greater than 0 (step S191, Yes), the determination unit 752 rearranges the upper level devices 4 in descending order of the free congestion amount value (i.e., the lowest congestion amount) (step S192).
[0143] The determination unit 752 initializes the variable j by assigning 1 to the variable j (step S193). The variable j is a variable that identifies the higher-level device 4. The determination unit 752 compares the value of the congestion amount i with the value of the free congestion amount i, starting with the higher-level device 4 with the largest free congestion amount (step S194). If the value of the free congestion amount i is greater than the congestion amount i (i.e., if the above-mentioned formula (7) is satisfied) (step S194: Yes), the determination unit 752 determines to switch the communication path (step S195). If the determination unit 752 instructs to switch the communication path, it transmits the determination result of the communication path switching to the higher-level device 4 and the lower-level device 3 and instructs the network switching device (transfer device) to change (switch) the logical connection. In this case, the operation of the determination unit 752 shown in the flowchart of FIG. 22 is completed.
[0144] On the other hand, if the congestion amount i is equal to or less than the value of the free congestion amount, i.e., if the above-mentioned formula (7) is not satisfied (step S194, No), the judgment unit 752 judges whether the value of the variable j is M (step S196), where M is the number of higher-level devices 4. If the value of the variable j is less than M (step S196, No), and there is a higher-level device 4 for which the magnitude comparison between the congestion amount i and the value of the free congestion amount has not been performed, 1 is added to the value of the variable j (step S197), and a magnitude comparison is performed for the next higher-level device 4 (step S194).
[0145] On the other hand, if the value of variable j is M (step S196, Yes), that is, if the congestion amount i is less than or equal to the value of the free congestion amount in all upper level devices 4, the operation of the judgment unit 752 shown in the flowchart of Figure 22 ends.
[0146] As described above, the communication system 1a according to the first embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1a performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed based on a priority, such as 5QI. As a result, compared to the conventional communication system 1 described above, the communication system 1a can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0147] Furthermore, as described above, the communication system 1a in the first embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1a to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1a in the first embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0148] Second Embodiment A second embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the second embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the second embodiment will be referred to as "communication system 1b," the prediction unit as "prediction unit 71b," and the switching determination unit as "switching determination unit 75b."
[0149] The communication system 1b described below differs from the communication system 1a in the first embodiment in that it determines whether or not a flow is for which future traffic volume is predicted based on a fluctuation in traffic volume, rather than determining whether or not a flow is for which future traffic volume is predicted based on a priority such as 5QI. The configurations of the prediction unit 71b and the switching determination unit 75b in the second embodiment will be described in detail below.
[0150] 23 is a block diagram showing the configuration of a prediction unit 71b of a communication system 1b according to the second embodiment of the present invention. As shown in FIG. 23, the prediction unit 71b includes an information collection unit 711, a congestion target prediction unit 712b, a congestion state determination unit 713b, and a path state calculation unit 716. The congestion target prediction unit 712b includes a traffic classification unit 714b and a traffic prediction unit 715b. The path state calculation unit 716 includes a total traffic calculation unit 717.
[0151] The information collection unit 711 acquires information indicating the processable bandwidth from the higher-level device 4. The information collection unit 711 also acquires information indicating the traffic volume from the lower-level device 3. The information collection unit 711 calculates the state of the communication path (total traffic volume and bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the calculated information indicating the state of the communication path to the congestion target prediction unit 712b.
[0152] 24 is a diagram showing input and output of a path status calculation unit 716 of a switching instruction device 7b in the second embodiment of the present invention. The path status calculation unit 716 acquires information indicating the bandwidth of the higher-level device 4 and information indicating the link capacity from the information collection unit 711. The path status calculation unit 716 also acquires information indicating the flow and the current traffic volume from the information collection unit 711.
[0153] The total traffic calculation unit 717 of the path status calculation unit 716 calculates the total traffic volume based on the acquired flow and the current traffic volume value. The path status calculation unit 716 outputs the acquired information indicating the bandwidth and link capacity of the higher-level device 4, and the calculated total traffic volume, to the congestion status determination unit 713b.
[0154] 25 is a diagram illustrating input and output of a congestion target prediction unit 712b of a switching instruction device 7b according to the second embodiment of the present invention. The congestion target prediction unit 712b acquires information indicating the state of the communication path output from the information collection unit 711.
[0155] The traffic classifier 714b of the congestion target predictor 712b collects information indicating the traffic volume for each flow (or each terminal). The traffic classifier 714b calculates the fluctuation of the traffic volume from the collected traffic volume values. The traffic classifier 714b classifies the traffic by determining whether or not it is necessary to predict future traffic volume based on the calculated fluctuation.
[0156] For example, the traffic classification unit 714b classifies traffic into traffic for which future traffic volume is predicted and traffic for which future traffic volume is not predicted, based on whether the collected traffic volume value is greater than a predetermined threshold. The traffic classification unit 714b outputs information indicating the traffic classification result to the traffic prediction unit 715b.
[0157] The traffic prediction unit 715b obtains information indicating the traffic classification results from the traffic classification unit 714b. The traffic prediction unit 715b predicts future traffic volumes for traffic classified as traffic for which future traffic volume prediction is to be performed (i.e., traffic with large fluctuations in traffic volume). In this way, future traffic volumes are predicted only for flows with large fluctuations in traffic volume.
[0158] The congestion target prediction unit 712b outputs information indicating the state of the communication path obtained from the information collection unit 711 and information indicating the predicted future traffic volume predicted by the traffic prediction unit 715b to the congestion status determination unit 713b.
[0159] 26 is a diagram showing input and output of a congestion state determination unit 713b of a switching instruction device 7b in the second embodiment of the present invention. The congestion state determination unit 713b acquires information indicating the bandwidth of the higher-level device 4, information indicating the link capacity, and information indicating the calculated total traffic volume, which are output from the path state calculation unit 716. The congestion state determination unit 713b also acquires information indicating the state of the communication path and information indicating the prediction result of future traffic volume, which are output from the congestion target prediction unit 712b.
[0160] The congestion state determination unit 713b determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the bandwidth of the communication path. For example, the congestion state determination unit 713b determines that congestion will occur in the future if the following formula (7) is satisfied:
[0161] Bandwidth < total traffic volume + (predicted future traffic volume - current traffic volume) (7)
[0162] When determining that congestion will occur, the congestion state determination unit 713b calculates the congestion amount. For example, the congestion state determination unit 713b calculates the congestion amount using the following equation (8).
[0163] Congestion volume = total traffic volume + (predicted future traffic volume - current traffic volume) - bandwidth (8)
[0164] The congestion state determining unit 713b outputs the calculated value of the congestion amount, information indicating the target base station, and information indicating the target terminal to the switching determining unit 75b (not shown).
[0165] 27 is a block diagram showing the functional configuration of a switching determination unit 75b of a switching instruction device 7b according to the second embodiment of the present invention. As shown in FIG. 27, the switching determination unit 75b includes a congestion collection unit 751, a determination unit 752, and a path status collection unit 753.
[0166] The congestion collection unit 751 acquires the value of the congestion amount output from the congestion state determination unit 713b of the prediction unit 71b. The congestion collection unit 751 outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path to the path state collection unit 753.
[0167] The path status collection unit 753 acquires information indicating the bandwidth (link rate) and information indicating the total traffic volume output from the prediction unit 71 b. The path status collection unit 753 also acquires the congestion amount value output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path.
[0168] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7 b, with new information acquired from each of the prediction units 71 b. The path status collection unit 753 also saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the form of a table shown in FIG.
[0169] 28 is a diagram showing an example of information indicating the status of communication paths stored in a storage medium of the switching instruction device 7 b in the second embodiment. As shown in Fig. 28, the information indicating the status of communication paths is, for example, tabular data in which identification information for identifying each of the higher-level devices 4, values of traffic volume in each of the higher-level devices 4, and values of bandwidth (link rate) in each of the higher-level devices 4 are associated with each other.
[0170] The path status collection unit 753 outputs information indicating the bandwidth (link rate) and information indicating the total traffic volume, which are acquired from the prediction unit 71b, to the determination unit 752. In addition, the path status collection unit 753 outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0171] The determination unit 752 acquires information indicating the bandwidth (link rate), information indicating the total traffic volume, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path state collection unit 753. The determination unit 752 rearranges the higher-level devices 4 in descending order of the free congestion amount value only when the acquired value of the congestion amount (congestion amount i) is a positive value.
[0172] The determination unit 752 compares the congestion amount i with the free congestion amount i in descending order of the value of the free congestion amount. If the above-described formula (7) is satisfied, the determination unit 752 determines that the communication path should be switched.
[0173] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0174] With the above-described configuration, the communication system 1b according to the second embodiment can reduce the number of times future traffic volume is predicted and can make a decision to switch communication paths earlier.
[0175] An example of the operation of the congestion target prediction unit 712b will be described below. Fig. 29 is a flowchart showing the operation of the congestion target prediction unit 712b of the switching instruction device 7b in the second embodiment of the present invention. The operation shown in the flowchart in Fig. 29 is started when the congestion target prediction unit 712b acquires information indicating the state of the communication path output from the information collection unit 711.
[0176] First, the congestion target prediction unit 712b initializes variable j by assigning 1 to it (step S201). Variable j is a variable that identifies the flow to be classified. The traffic classification unit 714b of the congestion target prediction unit 712b classifies flows based on the amount of fluctuation in the traffic flow. The congestion target prediction unit 712b determines whether the traffic has a high amount of fluctuation based on whether the following equation (9) is satisfied (step S202).
[0177] Max (traffic_flow) - Min (traffic_flow) > traffic_sabun_thr ... (9)
[0178] Here, Max(traffic_flow) represents the maximum value of the most recent traffic volume, Min(traffic_flow) represents the minimum value of the most recent traffic volume, and traffic_sabun_thr represents an arbitrary threshold value or, for example, a value that is 50% of the link rate.
[0179] Note that the following equation (10) may be used instead of equation (9).
[0180] Max(traffic_flow)>traffic_thr...(10)
[0181] Here, traffic_sabun_thr represents an arbitrary threshold value or, for example, a value that is 80% of the link rate.
[0182] If the traffic classification unit 714b determines that the traffic has a large fluctuation amount (Yes in step S202), the traffic prediction unit 715b predicts the future traffic volume of the acquired traffic (step S203).
[0183] The congestion target prediction unit 712b determines whether the value of variable j is N (step S204). N is a number corresponding to the total number of flows to be classified. In other words, the congestion target prediction unit 712b determines whether classification has been completed for all flows to be classified. If the value of variable j is smaller than N (step S204: No), the congestion target prediction unit 712b adds 1 to the value of variable j (step S205) and performs classification on the next flow (step S202).
[0184] If the value of variable j is N (Yes in step S204), that is, if classification has been completed for all flows to be classified, the congestion target prediction unit 712b outputs, to the congestion state determination unit 713b, information indicating the state of the communication path and information indicating the priority of each flow, which have been acquired from the information collection unit 711, and information indicating the prediction result of future traffic volume predicted by the traffic prediction unit 715b. This completes the operation of the congestion target prediction unit 712b shown in the flowchart of FIG.
[0185] An example of the operation of the congestion state determination unit 713b will be described below. Fig. 30 is a flowchart showing the operation of the congestion state determination unit 713b of the switching instruction device 7b in the second embodiment of the present invention. The operation shown in the flowchart in Fig. 30 is started when the congestion state determination unit 713b acquires information indicating the bandwidth of the higher-level device 4, information indicating the link capacity, and information indicating the total traffic volume output from the path state calculation unit 716, and acquires information indicating the state of the communication path and information indicating the prediction result of future traffic volume output from the congestion target prediction unit 712b.
[0186] The congestion state determination unit 713b compares the bandwidth value shown in the above-mentioned formula (7) with the value of the total future traffic volume (step S211). If the result of the comparison shows that the total future traffic volume is larger (step S202, Yes), that is, if the above-mentioned formula (7) is satisfied, for example, the congestion state determination unit 713b determines that congestion will occur and calculates the congestion amount (step S212). For example, the congestion state determination unit 713b calculates the congestion amount using the above-mentioned formula (8).
[0187] The congestion state determination unit 713b outputs the calculated congestion amount value, information indicating the target base station, and information indicating the target terminal to the switching determination unit 75b. This completes the operation of the congestion state determination unit 713b shown in the flowchart of FIG.
[0188] An example of the operation of the determination unit 752 will be described below. Fig. 31 is a flowchart showing the operation of the determination unit 752 of the switching instruction device 7b in the second embodiment of the present invention. The operation shown in the flowchart in Fig. 31 is started when the determination unit 752 acquires information indicating the bandwidth (link rate), information indicating the total traffic volume, the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753.
[0189] The determining unit 752 rearranges the higher-level devices 4 in descending order of the amount of free congestion (i.e., the amount of congestion) (step S221).
[0190] The determination unit 752 initializes the variable j by assigning 1 to the variable j (step S222). The variable j is a variable that identifies the higher-level device 4. The determination unit 752 compares the bandwidth value with the sum of the congestion amount and the traffic volume, starting with the higher-level device 4 with the largest bandwidth value (step S223). If the sum of the congestion amount and the traffic volume is greater than the bandwidth value (step S223, Yes), the determination unit 752 determines to switch the communication path (step S224). If the determination unit 752 instructs to switch the communication path, it transmits the determination result of the communication path switching to the higher-level device 4 and the lower-level device 3 and instructs the network switching device (transfer device) to change (switch) the logical connection. In this case, the operation of the determination unit 752 shown in the flowchart of FIG. 31 is completed.
[0191] On the other hand, if the bandwidth value is equal to or less than the sum of the congestion amount and the traffic amount (step S223, No), the judgment unit 752 judges whether the value of variable j is M (step S225), where M is the number of higher-level devices 4. If the value of variable j is less than M (step S225, No), and there is a higher-level device 4 for which the comparison of the bandwidth value with the sum of the congestion amount and the traffic amount has not been performed, the judgment unit 752 adds 1 to the value of variable j (step S226), and performs a comparison of the bandwidth value with the sum of the congestion amount and the traffic amount for the next higher-level device 4 (step S223).
[0192] On the other hand, if the value of variable j is M (step S225, Yes), that is, if the bandwidth value in all upper level devices 4 is less than or equal to the sum of the congestion amount and the traffic amount, the operation of the judgment unit 752 shown in the flowchart of Figure 31 ends.
[0193] As described above, the communication system 1b according to the second embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1b performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed, for example, based on fluctuations in traffic volume. As a result, compared to the conventional communication system 1 described above, the communication system 1b can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0194] Furthermore, as described above, the communication system 1b in the second embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1b to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1b in the second embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0195] <Third Embodiment> A third embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the third embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the third embodiment will be referred to as a "communication system 1c," the prediction unit as a "prediction unit 71c," and the switching determination unit as a "switching determination unit 75c."
[0196] The communication system 1c described below differs from the communication system 1a in the first embodiment in that the prediction unit c calculates available bandwidth in advance based on the total traffic volume and bandwidth. The switching determination unit c then determines whether to switch the communication path based on the calculated available bandwidth.
[0197] In the communication system 1a in the first embodiment described above, the available bandwidth is calculated based on the future traffic volume, the current traffic volume, and the link rate. In contrast, in the communication system 1c in the third embodiment described below, the available bandwidth is calculated based on the total current traffic volume and the link rate, and the occurrence of congestion is determined based on the difference between the predicted traffic volume before and after the prediction. In other words, the communication path switching destination is narrowed down in advance.
[0198] That is, in the third embodiment, instead of collecting information on all communication paths and then calculating available bandwidth to determine whether to switch the communication path, the configuration is such that candidates for the destination of the communication path to be switched are calculated in advance using traffic that does not require traffic volume prediction. The configurations of the prediction unit 71c and the switching determination unit 75c in the third embodiment will be described in detail below.
[0199] 32 is a block diagram showing the configuration of a prediction unit 71c of a communication system 1c according to the third embodiment of the present invention. As shown in FIG. 32, the prediction unit 71c includes an information collection unit 711, a congestion target prediction unit 712c, a congestion state determination unit 713c, and a path state calculation unit 716c. The congestion target prediction unit 712c includes a traffic classification unit 714c and a traffic prediction unit 715c. The path state calculation unit 716c includes a total traffic calculation unit 717 and an available bandwidth calculation unit 718.
[0200] The information collection unit 711 acquires information indicating the processable bandwidth from the higher-level device 4. The information collection unit 711 also acquires information indicating the traffic volume from the lower-level device 3. The information collection unit 711 calculates the state of the communication path (total traffic volume and available bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the information indicating the calculated state of the communication path to the path state calculation unit 716c and the congestion target prediction unit 712c.
[0201] 33 is a diagram showing input and output of a path status calculation unit 716c of a switching instruction device 7c according to the third embodiment of the present invention. The path status calculation unit 716c acquires information indicating the bandwidth (link rate) of the higher-level device 4 from the information collection unit 711. The path status calculation unit 716c also acquires information indicating the flow and the current traffic volume from the information collection unit 711.
[0202] The total traffic calculation unit 717 of the path status calculation unit 716c calculates the total traffic volume based on the acquired flow and the current traffic volume value, and outputs the calculated total traffic volume value to the available bandwidth calculation unit 718.
[0203] The available bandwidth calculation unit 718 acquires the value of the total traffic volume output from the total traffic calculation unit 717. The available bandwidth calculation unit 718 calculates the value of the available bandwidth based on the value of the bandwidth (link rate) of the higher-level device 4 and the value of the total traffic volume. The path status calculation unit 716c outputs the calculated available bandwidth value and information indicating the calculated total traffic volume to the congestion status determination unit 713c.
[0204] The diagram showing the input / output of the congestion target prediction unit 712c of the switching instruction device 7c in the third embodiment is similar to the diagram showing the input / output of the congestion target prediction unit 712b in the second embodiment shown in Fig. 25. The congestion target prediction unit 712c acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collection unit 711.
[0205] The traffic classification unit 714c of the congestion target prediction unit 712c classifies the flows based on the acquired information indicating the priority (e.g., 5QI) of each flow. Based on the classification results, the traffic classification unit 714c outputs information indicating high-priority traffic to the traffic prediction unit 715c. Note that high-priority traffic is, for example, traffic that corresponds to a predetermined 5QI.
[0206] The traffic prediction unit 715c acquires information indicating high-priority traffic output from the traffic classification unit 714c. The traffic prediction unit 715c predicts the future traffic volume of the acquired traffic. In this way, future traffic volume is predicted only for high-priority flows.
[0207] The congestion target prediction unit 712c outputs to the congestion status determination unit 713c information indicating the state of the communication path and information indicating the priority of each flow obtained from the information collection unit 711, as well as information indicating the predicted future traffic volume predicted by the traffic prediction unit 715c.
[0208] 34 is a diagram illustrating the input and output of the congestion state determination unit 713c of the switching instruction device 7c according to the third embodiment of the present invention. The congestion state determination unit 713c acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the predicted results of future traffic volume, all output from the congestion target prediction unit 712c. The congestion state determination unit 713c also acquires information indicating the total traffic volume and available bandwidth from the information collection unit 711. The congestion state determination unit 713c determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the available bandwidth of the communication path. For example, the congestion state determination unit 713c determines that congestion will occur in the future if the following formula (11) is satisfied:
[0209] Available bandwidth < (predicted future traffic volume - current traffic volume) (11)
[0210] When determining that congestion will occur, the congestion state determination unit 713c calculates the congestion amount. For example, the congestion state determination unit 713c calculates the congestion amount using the following equation (12).
[0211] Congestion volume = (predicted future traffic volume - current traffic volume) - available bandwidth (12)
[0212] The congestion state determining unit 713c outputs the calculated value of the congestion amount, information indicating the target base station, and information indicating the target terminal to the switching determining unit 75c.
[0213] 35 is a block diagram showing the functional configuration of a switching determination unit 75c of a switching instruction device 7c according to the third embodiment of the present invention. As shown in FIG. 35, the switching determination unit 75c includes a congestion collection unit 751, a determination unit 752, and a path status collection unit 753.
[0214] The congestion collection unit 751 acquires the value of the congestion amount output from the congestion state determination unit 713c of the prediction unit 71c. The congestion collection unit 751 outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path to the path state collection unit 753.
[0215] The path status collection unit 753 acquires information indicating the available bandwidth and information indicating the total traffic volume from the prediction unit 71c. The path status collection unit 753 also acquires the congestion amount value output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path.
[0216] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7 c, with new information acquired from each of the prediction units 71 c. The path status collection unit 753 also saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the form of a table shown in FIG.
[0217] Fig. 36 is a diagram showing an example of information indicating the status of communication paths stored in a storage medium of the switching instruction device 7c in the third embodiment. As shown in Fig. 36, the information indicating the status of communication paths is tabular data in which, for example, identification information for identifying each of the higher-level devices 4, values of traffic volume in each of the higher-level devices 4, values of available bandwidth in each of the higher-level devices 4, and values indicating the ratio of available bandwidth to the total bandwidth are associated with each other.
[0218] The path status collection unit 753 outputs the information indicating the available bandwidth and the information indicating the total traffic volume, which are acquired from the prediction unit 71c, to the determination unit 752. The path status collection unit 753 also outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0219] The determination unit 752 acquires information indicating the available bandwidth, information indicating the total traffic volume, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753. The determination unit 752 sorts the higher-level devices 4 in descending order of the available bandwidth ratio value.
[0220] The determination unit 752 compares the value of the congestion amount with the value of the available bandwidth ratio in descending order. The determination unit 752 determines to switch the communication path when the following formula (13) is satisfied:
[0221] Available bandwidth > Congestion amount (13)
[0222] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0223] In this way, the communication system 1c according to the third embodiment is configured to calculate available bandwidth in advance using the available bandwidth calculation unit 718 included in the prediction unit 71c, thereby enabling the communication path to be switched immediately upon receiving information indicating the occurrence of congestion. Furthermore, by being configured as described above, the communication system 1c according to the third embodiment can reduce the number of times future traffic volume is predicted and can make an earlier decision to switch the communication path.
[0224] An example of the operation of the congestion state determination unit 713c will be described below. Fig. 37 is a flowchart showing the operation of the congestion state determination unit 713c of the switching instruction device 7c in the third embodiment of the present invention. The operation shown in the flowchart in Fig. 37 is started when the congestion state determination unit 713c acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the prediction result of future traffic volume, which are output from the congestion target prediction unit 712c, and acquires information indicating the total traffic volume and available bandwidth from the information collection unit 711.
[0225] The congestion state determination unit 713c compares the available bandwidth with the difference between the predicted future traffic volume and the current traffic volume, as shown in the above-mentioned formula (11) (step S231). If the result of the comparison shows that the difference between the future traffic volume and the current traffic volume is greater (step S231, Yes), that is, if the above-mentioned formula (11) is satisfied, for example, the congestion state determination unit 713c determines that congestion will occur and calculates the congestion volume (step S232). For example, the congestion state determination unit 713c calculates the congestion volume using the above-mentioned formula (12).
[0226] The congestion state determination unit 713c outputs the calculated congestion amount value, information indicating the target base station, and information indicating the target terminal to the switching determination unit 75c. This completes the operation of the congestion state determination unit 713c shown in the flowchart of FIG.
[0227] An example of the operation of the determination unit 752 will be described below. Fig. 38 is a flowchart showing the operation of the determination unit 752 of the switching instruction device 7c in the third embodiment of the present invention. The operation shown in the flowchart in Fig. 38 is started when the determination unit 752 acquires information indicating available bandwidth, information indicating the total traffic volume, the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753.
[0228] The determining unit 752 sorts the higher-level devices 4 in descending order of the percentage of available bandwidth (step S241).
[0229] The determination unit 752 initializes the variable j by assigning 1 to the variable j (step S242). The variable j is a variable that identifies the higher-level device 4. The determination unit 752 compares the available bandwidth value with the congestion amount value, starting with the higher-level device 4 with the largest bandwidth value (step S243). If the available bandwidth value is greater than the congestion amount value (step S243, Yes), the determination unit 752 determines that the communication path should be switched (step S224). If the determination unit 752 instructs the switching of the communication path, it transmits the determination result of the communication path switching to the higher-level device 4 and the lower-level device 3 and instructs the network switching device (transfer device) to change (switch) the logical connection. In this case, the operation of the determination unit 752 shown in the flowchart of FIG. 31 is completed.
[0230] On the other hand, if the value of the congestion amount is equal to or greater than the value of the available bandwidth (step S243, No), the judgment unit 752 judges whether the value of variable j is M (step S245), where M is the number of higher-level devices 4. If the value of variable j is less than M (step S245, No), that is, if there is a higher-level device 4 for which the comparison of the available bandwidth value and the congestion amount value has not been performed, the judgment unit 752 adds 1 to the value of variable j (step S246), and performs a comparison of the next higher-level device 4 (step S243).
[0231] On the other hand, if the value of variable j is M (step S245, Yes), that is, if the congestion amount value is greater than or equal to the available bandwidth value in all upper level devices 4, the operation of the judgment unit 752 shown in the flowchart of Figure 38 ends.
[0232] As described above, the communication system 1c according to the third embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1c performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed, for example, based on fluctuations in traffic volume. As a result, compared to the conventional communication system 1 described above, the communication system 1c can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0233] Furthermore, as described above, the communication system 1c according to the third embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1c to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1c according to the third embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0234] <Fourth embodiment> A fourth embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the fourth embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the fourth embodiment will be referred to as a "communication system 1d," the prediction unit as a "prediction unit 71d," and the switching determination unit as a "switching determination unit 75d."
[0235] The communication system 1d described below differs from the communication system 1c in the third embodiment in that the necessity of switching the communication path is determined not based on the calculated congestion amount value but based on the congestion level (congestion flag) that indicates the category corresponding to the calculated congestion amount. The configurations of the prediction unit 71d and the switching determination unit 75d in the fourth embodiment will be described in detail below.
[0236] The block diagram showing the configuration of a prediction unit 71d of a communication system 1d in the fourth embodiment is similar to the block diagram showing the configuration of the prediction unit 71c of the communication system 1c in the third embodiment shown in Figure 32 described above. The prediction unit 71d is configured to include an information collection unit 711, a congestion target prediction unit 712d, a congestion state determination unit 713d, and a path state calculation unit 716d. The congestion target prediction unit 712d is configured to include a traffic classification unit 714d and a traffic prediction unit 715d. The path state calculation unit 716d is configured to include a total traffic calculation unit 717 and an available bandwidth calculation unit 718.
[0237] The information collection unit 711 acquires information indicating the processable bandwidth from the higher-level device 4. The information collection unit 711 also acquires information indicating the traffic volume from the lower-level device 3. The information collection unit 711 calculates the state of the communication path (total traffic volume and available bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the information indicating the calculated state of the communication path to the path state calculation unit 716d and the congestion target prediction unit 712d.
[0238] The diagram showing the input / output of the path status calculation unit 716d of the switching instruction device 7d in the fourth embodiment is similar to the diagram showing the input / output of the path status calculation unit 716c of the switching instruction device 7c in the third embodiment shown in the above-mentioned Fig. 33. The path status calculation unit 716d acquires information indicating the bandwidth (link rate) of the higher-level device 4 from the information collection unit 711. In addition, the path status calculation unit 716d acquires information indicating the flow and the current traffic volume from the information collection unit 711.
[0239] The total traffic calculation unit 717 of the path status calculation unit 716d calculates the total traffic volume based on the acquired flow and the current traffic volume value, and outputs the calculated total traffic volume value to the available bandwidth calculation unit 718.
[0240] The available bandwidth calculation unit 718 acquires the value of the total traffic volume output from the total traffic calculation unit 717. The available bandwidth calculation unit 718 calculates the value of the available bandwidth based on the value of the bandwidth (link rate) of the higher-level device 4 and the value of the total traffic volume. The path status calculation unit 716d outputs the calculated available bandwidth value and information indicating the calculated total traffic volume to the congestion status determination unit 713d.
[0241] The diagram showing the input / output of the congestion target prediction unit 712d of the switching instruction device 7d in the fourth embodiment is similar to the diagram showing the input / output of the congestion target prediction unit 712b in the second embodiment shown in Fig. 25. The congestion target prediction unit 712d acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collection unit 711.
[0242] The traffic classification unit 714d of the congestion target prediction unit 712d classifies the flows based on the acquired information indicating the priority (e.g., 5QI) of each flow. Based on the classification results, the traffic classification unit 714d outputs information indicating high-priority traffic to the traffic prediction unit 715d. Note that high-priority traffic is, for example, traffic that corresponds to a predetermined 5QI.
[0243] The traffic prediction unit 715d acquires information indicating high-priority traffic output from the traffic classification unit 714d. The traffic prediction unit 715d predicts the future traffic volume of the acquired traffic. In this way, future traffic volume prediction is performed only for high-priority flows.
[0244] The congestion target prediction unit 712d outputs to the congestion status determination unit 713d information indicating the state of the communication path and information indicating the priority of each flow obtained from the information collection unit 711, as well as information indicating the predicted future traffic volume predicted by the traffic prediction unit 715d.
[0245] The diagram showing the input / output of the congestion state determination unit 713d of the switching instruction device 7d in the fourth embodiment is similar to the diagram showing the input / output of the congestion state determination unit 713c of the switching instruction device 7c in the third embodiment shown in Figure 34. The congestion state determination unit 713d acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the prediction result of future traffic volume, which are output from the congestion target prediction unit 712d. The congestion state determination unit 713d also acquires information indicating the total traffic volume and available bandwidth from the information collection unit 711.
[0246] The congestion state determination unit 713d determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the available bandwidth of the communication path. For example, the congestion state determination unit 713d determines that congestion will occur in the future when the above-mentioned formula (11) is satisfied.
[0247] When it is determined that congestion will occur, the congestion state determination unit 713d calculates the congestion amount. For example, the congestion state determination unit 713d calculates the congestion amount using the above-mentioned equation (12).
[0248] Furthermore, the congestion state determination unit 713d determines a congestion level indicating the degree of predicted congestion based on the calculated congestion level. The congestion level is predetermined for each range of the predicted congestion level. For example, if the predicted congestion level is 100 Mbps or less, the congestion level is set to "1." If the predicted congestion level is greater than 100 Mbps and less than or equal to 200 Mbps, the congestion level is set to "2." If the predicted congestion level is greater than 200 Mbps and less than or equal to 300 Mbps, the congestion level is set to "3." If the predicted congestion level is greater than 300 Mbps, the congestion level is set to "4."
[0249] The congestion status determination unit 713d outputs information indicating the identified congestion level (hereinafter also referred to as a "congestion flag"), information indicating the target base station, and information indicating the target terminal to the switching determination unit 75d.
[0250] 39 is a block diagram showing the functional configuration of a switching determination unit 75d of a switching instruction device 7d according to the fourth embodiment of the present invention. As shown in FIG. 39, the switching determination unit 75d includes a congestion collection unit 751, a determination unit 752, and a path status collection unit 753.
[0251] The congestion collection unit 751 acquires the congestion flag output from the congestion state determination unit 713c of the prediction unit 71c, information identifying the target higher-level device 4, and information indicating the state of the communication path. The congestion collection unit 751 outputs the congestion flag, information identifying the target higher-level device 4, and information indicating the state of the communication path to the path state collection unit 753.
[0252] The path status collection unit 753 acquires information indicating the available bandwidth and information indicating the total traffic volume from the prediction unit 71d. The path status collection unit 753 also acquires the congestion flag output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path.
[0253] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7 d, for example, with new information acquired from each of the prediction units 71 d. Furthermore, the path status collection unit 753 saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the form of a table shown in FIG.
[0254] Fig. 40 is a diagram showing an example of information indicating the status of communication paths stored in a storage medium of the switching instruction device 7d in the fourth embodiment. As shown in Fig. 40, the information indicating the status of communication paths is tabular data in which, for example, identification information for identifying each of the higher-level devices 4, values of traffic volume in each of the higher-level devices 4, values of available bandwidth in each of the higher-level devices 4, values indicating the ratio of available bandwidth to the total bandwidth, and information indicating communication paths that are candidates for switching destination are associated with each other.
[0255] The switching destination candidates are determined by the route status collection unit 753. For example, the route status collection unit 753 sets the values "1," "2," "3," ... in descending order of the ratio of available bandwidth to the total bandwidth, such that "1" indicates a value that allows a congestion amount of 100 [Mbps], "2" indicates a value that allows a congestion amount of 200 [Mbps], ... In this way, in the fourth embodiment, processing is performed after the congestion amount and available bandwidth are replaced with values categorized by range rather than actual numerical values, thereby reducing the amount of calculation required for processing in the switching instruction device 4d.
[0256] The path status collection unit 753 outputs the information indicating the available bandwidth and the information indicating the total traffic volume, which are acquired from the prediction unit 71d, to the determination unit 752. In addition, the path status collection unit 753 outputs the congestion flag, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0257] The determination unit 752 acquires information indicating available bandwidth, information indicating total traffic volume, congestion flag, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path state collection unit 753. The determination unit 752 selects a candidate switching destination according to the degree of congestion based on the acquired congestion flag.
[0258] For example, when the congestion amount is 250 Mbps, the congestion level is "3," and therefore the determination unit 752 selects "3-n" as a candidate for the switching destination. When there are multiple candidates for the switching destination, the determination unit 752 selects the candidate for the switching destination (for example, "3-1") that has the largest proportion of available bandwidth in the entire bandwidth.
[0259] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0260] In this way, the communication system 1d according to the fourth embodiment is configured to calculate available bandwidth in advance using the available bandwidth calculation unit 718 included in the prediction unit 71d, thereby enabling the communication path to be switched immediately upon receiving information indicating the occurrence of congestion. Furthermore, by being configured as described above, the communication system 1d according to the fourth embodiment can reduce the number of times future traffic volume is predicted and can make an earlier decision to switch the communication path.
[0261] As described above, the communication system 1d according to the fourth embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1d performs congestion cause determination, which determines in advance whether traffic is expected to cause congestion. The congestion cause determination is performed, for example, based on fluctuations in traffic volume. As a result, compared to the conventional communication system 1 described above, the communication system 1d can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0262] Furthermore, as described above, the communication system 1d according to the fourth embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1d to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1d according to the fourth embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0263] Fifth Embodiment A fifth embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the fifth embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the fifth embodiment will be referred to as a "communication system 1e," the prediction unit as a "prediction unit 71e," and the switching determination unit as a "switching determination unit 75e."
[0264] The communication system 1e described below differs from the communication system 1c in the third embodiment in that the communication system 1e does not wait until the congestion amount values for all devices are collected, but instead switches the communication path when congestion is predicted to occur. The configurations of the prediction unit 71e and the switching determination unit 75e in the fifth embodiment will be described in detail below.
[0265] The block diagram showing the configuration of a prediction unit 71e of a communication system 1e in the fifth embodiment is similar to the block diagram showing the configuration of the prediction unit 71c of the communication system 1c in the third embodiment shown in Figure 32 described above. The prediction unit 71e includes an information collection unit 711, a congestion target prediction unit 712e, a congestion state determination unit 713e, and a path state calculation unit 716e. The congestion target prediction unit 712e includes a traffic classification unit 714e and a traffic prediction unit 715e. The path state calculation unit 716e includes a total traffic calculation unit 717 and an available bandwidth calculation unit 718.
[0266] The information collection unit 711 acquires information indicating the processable bandwidth from the higher-level device 4. The information collection unit 711 also acquires information indicating the traffic volume from the lower-level device 3. The information collection unit 711 calculates the state of the communication path (total traffic volume and available bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the information indicating the calculated state of the communication path to the path state calculation unit 716e and the congestion target prediction unit 712e.
[0267] The diagram showing the input / output of the path status calculation unit 716e of the switching instruction device 7e in the fifth embodiment is similar to the diagram showing the input / output of the path status calculation unit 716c of the switching instruction device 7c in the third embodiment shown in Fig. 33. The path status calculation unit 716e acquires information indicating the bandwidth (link rate) of the higher-level device 4 from the information collection unit 711. The path status calculation unit 716e also acquires information indicating the flow and the current traffic volume from the information collection unit 711.
[0268] The total traffic calculation unit 717 of the path status calculation unit 716e calculates the total traffic volume based on the acquired flow and the current traffic volume value, and outputs the calculated total traffic volume value to the available bandwidth calculation unit 718.
[0269] The available bandwidth calculation unit 718 acquires the value of the total traffic volume output from the total traffic calculation unit 717. The available bandwidth calculation unit 718 calculates the value of the available bandwidth based on the value of the bandwidth (link rate) of the higher-level device 4 and the value of the total traffic volume. The path status calculation unit 716e outputs the calculated available bandwidth value and information indicating the calculated total traffic volume to the congestion status determination unit 713e.
[0270] The diagram showing the input / output of the congestion target prediction unit 712e of the switching instruction device 7e in the fifth embodiment is similar to the diagram showing the input / output of the congestion target prediction unit 712b in the second embodiment shown in Fig. 25. The congestion target prediction unit 712e acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collection unit 711.
[0271] The traffic classification unit 714e of the congestion target prediction unit 712e classifies the flows based on the acquired information indicating the priority (e.g., 5QI) of each flow. Based on the classification results, the traffic classification unit 714e outputs information indicating high-priority traffic to the traffic prediction unit 715e. Note that high-priority traffic is, for example, traffic corresponding to a predetermined 5QI.
[0272] The traffic prediction unit 715e acquires information indicating high-priority traffic output from the traffic classification unit 714e. The traffic prediction unit 715e predicts the future traffic volume of the acquired traffic. In this way, future traffic volume prediction is performed only for high-priority flows.
[0273] The congestion target prediction unit 712e outputs to the congestion status determination unit 713e information indicating the state of the communication path and information indicating the priority of each flow obtained from the information collection unit 711, as well as information indicating the predicted future traffic volume predicted by the traffic prediction unit 715e.
[0274] 41 is a diagram illustrating the input and output of the congestion state determination unit 713e of the switching instruction device 7e according to the fifth embodiment of the present invention. The congestion state determination unit 713e acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the predicted results of future traffic volume, all output from the congestion target prediction unit 712e. The congestion state determination unit 713e also acquires information indicating the total traffic volume and available bandwidth from the information collection unit 711. The congestion state determination unit 713e determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the available bandwidth of the communication path. For example, the congestion state determination unit 713e determines that congestion will occur in the future if the above-described formula (11) is satisfied.
[0275] When determining that congestion will occur, the congestion state determination unit 713e calculates the congestion amount. For example, the congestion state determination unit 713e calculates the congestion amount using the above-mentioned equation (12).
[0276] Here, the congestion status determination unit 713e in this embodiment does not wait until the congestion amount values for all devices are collected, but rather, at the stage when congestion is predicted to occur, outputs to the switching determination unit 75e a congestion flag indicating that congestion is predicted to occur, the calculated congestion amount value, information indicating the target base station, and information indicating the target terminal.
[0277] 42 is a block diagram showing the functional configuration of a switching determination unit 75e of a switching instruction device 7e according to the fifth embodiment of the present invention. The switching determination unit 75e includes a congestion collection unit 751, a determination unit 752, and a path status collection unit 753.
[0278] The congestion collection unit 751 acquires the congestion amount flag, the congestion amount value, information indicating the target base station, and information indicating the target terminal output from the congestion state determination unit 713e of the prediction unit 71e. The congestion collection unit 751 outputs the acquired information and a switching start instruction that instructs the start of switching of the communication path to the path status collection unit 753.
[0279] The path status collecting unit 753 acquires information indicating the available bandwidth and information indicating the total traffic volume from the predicting unit 71 e. The path status collecting unit 753 also acquires the switching start instruction output from the congestion collecting unit 751.
[0280] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7e, with new information acquired from each of the prediction units 71e. The path status collection unit 753 also saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the table format shown in Figure 36.
[0281] The diagram showing an example of information indicating the status of the communication path stored in the storage medium of the switching instruction device 7e in the fifth embodiment is similar to the diagram showing an example of information indicating the status of the communication path stored in the storage medium of the switching instruction device 7c in the third embodiment shown in the above-mentioned Fig. 36. The information indicating the status of the communication path is, for example, tabular data in which identification information for identifying each of the higher-level devices 4, values of traffic volume in each of the higher-level devices 4, values of available bandwidth in each of the higher-level devices 4, and values indicating the ratio of available bandwidth to the total bandwidth are associated with each other.
[0282] The path status collection unit 753 outputs the information indicating the available bandwidth and the information indicating the total traffic volume, which are acquired from the prediction unit 71e, to the determination unit 752. The path status collection unit 753 also outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0283] The determination unit 752 acquires information indicating the available bandwidth, information indicating the total traffic volume, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753. The determination unit 752 sorts the higher-level devices 4 in descending order of the available bandwidth ratio value.
[0284] The determination unit 752 compares the value of the congestion amount with the value of the available bandwidth ratio in descending order of the value of the available bandwidth ratio. If the above-mentioned formula (13) is satisfied, the determination unit 752 determines that the communication path should be switched.
[0285] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0286] In this way, the communication system 1e according to the fifth embodiment is configured to calculate available bandwidth in advance using the available bandwidth calculation unit 718 included in the prediction unit 71e, thereby enabling the communication path to be switched immediately upon receiving information indicating the occurrence of congestion. Furthermore, by being configured as described above, the communication system 1e according to the fifth embodiment can reduce the number of times future traffic volume is predicted and can make an earlier decision to switch the communication path.
[0287] Furthermore, the communication system 1e in the fifth embodiment is configured to switch communication paths before all prediction processes are completed, thereby further shortening the time until it is determined that the communication path should be switched.
[0288] An example of the operation of the congestion state determination unit 713e will be described below. Fig. 43 is a flowchart showing the operation of the congestion state determination unit 713e of the switching instruction device 7e in the fifth embodiment of the present invention. The operation shown in the flowchart in Fig. 43 is started when the congestion state determination unit 713e acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the prediction result of future traffic volume, which are output from the congestion target prediction unit 712e, and acquires information indicating the total traffic volume and available bandwidth from the information collection unit 711.
[0289] The congestion state determination unit 713e compares the available bandwidth with the difference between the predicted future traffic volume and the current traffic volume, as shown in the above-mentioned formula (11) (step S251). If the result of the comparison shows that the difference between the future traffic volume and the current traffic volume is greater (step S251, Yes), that is, if the above-mentioned formula (11) is satisfied, for example, the congestion state determination unit 713e determines that congestion will occur and calculates the congestion volume. For example, the congestion state determination unit 713e calculates the congestion volume using the above-mentioned formula (12).
[0290] The congestion state determination unit 713e outputs a congestion flag indicating that congestion is predicted, the calculated congestion amount value, information indicating the target base station, and information indicating the target terminal to the switching determination unit 75e (step S252). This completes the operation of the congestion state determination unit 713e shown in the flowchart of FIG.
[0291] The following describes an example of the operation of the determination unit 752. Fig. 44 is a flowchart showing the operation of the determination unit 752 of the switching instruction device 7e in the fifth embodiment of the present invention. The operation shown in the flowchart in Fig. 44 is started when the determination unit 752 acquires information indicating available bandwidth, information indicating the total traffic volume, the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753.
[0292] The determining unit 752 sorts the higher-level devices 4 in descending order of the percentage of available bandwidth (step S261).
[0293] The determination unit 752 initializes the variable j by assigning 1 to the variable j (step S262). The variable j is a variable that identifies the higher-level device 4. The determination unit 752 compares the free bandwidth value with the congestion amount value, starting with the higher-level device 4 with the largest bandwidth value (step S263). If the free bandwidth value is greater than the congestion amount value (step S243, Yes), the determination unit 752 determines to switch the communication path (step S224). If the determination unit 752 instructs to switch the communication path, it transmits the determination result of the communication path switching to the higher-level device 4 and the lower-level device 3 and instructs the network switching device (transfer device) to change (switch) the logical connection. In this case, the operation of the determination unit 752 shown in the flowchart of FIG. 44 is completed.
[0294] On the other hand, if the value of the congestion amount is equal to or greater than the value of the available bandwidth (step S263, No), the judgment unit 752 judges whether the value of variable j is M (step S265), where M is the number of higher-level devices 4. If the value of variable j is less than M (step S265, No), that is, if there is a higher-level device 4 for which the comparison of the available bandwidth value and the congestion amount value has not been performed, the judgment unit 752 adds 1 to the value of variable j (step S266), and performs a comparison of the next higher-level device 4 (step S263).
[0295] On the other hand, if the value of variable j is M (step S265, Yes), that is, if the congestion amount value is greater than or equal to the available bandwidth value in all upper level devices 4, the operation of the judgment unit 752 shown in the flowchart of Figure 44 ends.
[0296] As described above, the communication system 1e according to the fifth embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1e performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed, for example, based on fluctuations in traffic volume. As a result, compared to the conventional communication system 1 described above, the communication system 1e can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0297] Furthermore, as described above, the communication system 1e according to the fifth embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1e to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1e according to the fifth embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0298] <Sixth Embodiment> A sixth embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the sixth embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the sixth embodiment will be referred to as a "communication system 1f", the prediction unit as a "prediction unit 71f", and the switching determination unit as a "switching determination unit 75f".
[0299] The communication system 1f described below differs from the communication system 1e in the fifth embodiment in that, although a determination is made as to whether or not a communication path needs to be switched when a congestion flag is acquired, instructions to switch the communication path are not sent each time a determination is made to switch the communication path, but are sent simultaneously to all devices.
[0300] Fig. 45 is a diagram comparing the processing timing from acquisition of a congestion flag to switching of a communication path. The processing timing in (a) in the upper part of Fig. 45 shows an example of the processing timing by the communication system 1e in the fifth embodiment described above. On the other hand, the processing timing in (b) in the lower part of Fig. 45 shows an example of the processing timing by the communication system 1f in the sixth embodiment.
[0301] As shown in (a) of Figure 45, in the communication system 1e according to the fifth embodiment, when a congestion flag #1 is acquired, a corresponding determination #1 as to whether a communication path needs to be switched is made. If it is determined that a communication path needs to be switched, a corresponding instruction #1 for switching the communication path is issued. Furthermore, when a congestion flag #2 is acquired, a corresponding determination #2 as to whether a communication path needs to be switched is made. If it is determined that a communication path needs to be switched, a corresponding instruction #2 for switching the communication path is issued. In this way, in the communication system 1e according to the fifth embodiment, a determination as to whether a communication path needs to be switched is made at the timing when a congestion flag is acquired, and an instruction for switching the communication path is sent each time it is determined that a communication path needs to be switched.
[0302] In a configuration such as the communication system 1e according to the fifth embodiment, the communication path is switched multiple times. Since traffic is not transmitted during the switching of the communication path, congestion may occur.
[0303] On the other hand, as shown in (b) of Figure 45, in a communication system 1f in a sixth embodiment described below, when congestion flag #1 is acquired, a corresponding decision #1 is made as to whether or not a communication path needs to be switched. However, even if it is determined that a communication path needs to be switched, a corresponding instruction to switch the communication path is not yet issued. After that, congestion flag #2 is acquired, and a corresponding decision #2 is made as to whether or not a communication path needs to be switched. After all communication path switching decisions have been made, a communication path switching instruction is sent to all devices at once.
[0304] By having such a configuration, the communication system 1f in the sixth embodiment described below can reduce the number of times communication paths are switched and prevent congestion caused by traffic not being transmitted when the communication path is switched.
[0305] The block diagram showing the functional configuration of the switching determination unit 75f of the switching instruction device 7f in the sixth embodiment is similar to the block diagram showing the functional configuration of the switching determination unit 75e of the switching instruction device 7e in the fifth embodiment shown in Fig. 42. The switching determination unit 75f is configured to include a congestion collection unit 751, a determination unit 752, and a route status collection unit 753.
[0306] The congestion collection unit 751 acquires the congestion amount flag, the congestion amount value, information indicating the target base station, and information indicating the target terminal output from the congestion state determination unit 713f of the prediction unit 71f. The congestion collection unit 751 outputs the acquired information and a switching start instruction that instructs the start of switching of the communication path to the path status collection unit 753.
[0307] The route status collecting unit 753 acquires information indicating the available bandwidth and information indicating the total traffic volume from the predicting unit 71f. The route status collecting unit 753 also acquires the switching start instruction output from the congestion collecting unit 751.
[0308] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7 f, with new information acquired from each of the prediction units 71 f. The path status collection unit 753 also saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the table format shown in FIG. 36 above.
[0309] The diagram showing an example of information indicating the status of the communication path stored in the storage medium of the switching instruction device 7f in the sixth embodiment is similar to the diagram showing an example of information indicating the status of the communication path stored in the storage medium of the switching instruction device 7c in the third embodiment shown in the above-mentioned Fig. 36. The information indicating the status of the communication path is, for example, tabular data in which identification information for identifying each of the higher-level devices 4, values of traffic volume in each of the higher-level devices 4, values of available bandwidth in each of the higher-level devices 4, and values indicating the ratio of available bandwidth to the total bandwidth are associated with each other.
[0310] The path status collection unit 753 outputs the information indicating the available bandwidth and the information indicating the total traffic volume, which are acquired from the prediction unit 71f, to the determination unit 752. The path status collection unit 753 also outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0311] 46 is a diagram illustrating input and output of a determination unit 752 of a switching instruction device 7 f according to the sixth embodiment of the present invention. The determination unit 752 acquires information indicating available bandwidth and information indicating total traffic volume, both of which are output from a path status collection unit 753.
[0312] The determination unit 752 also obtains the congestion flag #1, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path from the prediction unit 71f in which the path state collection unit 753 is located. The determination unit 752 compares the congestion amount value with the values of the available bandwidth percentages in descending order. The determination unit 752 determines to switch the communication path when the above-mentioned formula (13) is satisfied.
[0313] The determination unit 752 also acquires the congestion flag #2, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path, which the path status collection unit 753 has acquired from another prediction unit 71f. The determination unit 752 compares the congestion amount value with the values of the available bandwidth percentages in descending order. The determination unit 752 determines to switch the communication path when the above-mentioned formula (13) is satisfied.
[0314] After determining whether or not switching of all communication paths is necessary, the determination unit 752 rearranges the higher-level devices 4 in descending order of the value of the ratio of available bandwidth. The determination unit 752 transmits an instruction to all devices at once to have the base station with the largest available bandwidth switch the communication path.
[0315] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0316] In this way, the communication system 1f according to the sixth embodiment is configured to calculate available bandwidth in advance using the available bandwidth calculation unit 718 included in the prediction unit 71f, thereby enabling the communication path to be switched immediately upon receiving information indicating the occurrence of congestion. Furthermore, by being configured as described above, the communication system 1f according to the sixth embodiment can reduce the number of times future traffic volume is predicted and can make an earlier decision to switch the communication path.
[0317] In addition, the communication system 1f according to the sixth embodiment determines whether or not a communication path needs to be switched when a congestion flag is acquired, but is configured to simultaneously send a communication path switching instruction to all devices rather than sending an instruction each time a decision is made to switch the communication path. This enables the communication system 1f to reduce the number of times the communication path is switched and prevent congestion caused by traffic not being transmitted when the communication path is switched.
[0318] <Seventh embodiment> A seventh embodiment of the present invention will now be described. The overall configuration diagram of a communication system in the seventh embodiment is the same as the overall configuration diagram of the communication system 1a in the first embodiment shown in Fig. 15 described above. Hereinafter, the communication system in the seventh embodiment will be referred to as a "communication system 1g," the prediction unit as a "prediction unit 71g," and the switching determination unit as a "switching determination unit 75g."
[0319] In the communication system 1c in the third embodiment described above, the process of calculating available bandwidth based on existing traffic information for all traffic and the process of predicting future traffic volume for traffic that may cause congestion are performed in parallel. In contrast, the communication system 1g described below is configured to classify traffic that may cause congestion and calculate available bandwidth using only traffic that is not determined to cause congestion.
[0320] 47 is a block diagram showing the configuration of a prediction unit 71g of a communication system 1g according to the seventh embodiment of the present invention. As shown in FIG. 47, the prediction unit 71g includes an information collection unit 711, a traffic classification unit 714g, a congestion target prediction unit 712g, a path status calculation unit 716g, and a congestion status determination unit 713g. The congestion target prediction unit 712g includes a traffic prediction unit 715g. The path status calculation unit 716g includes a total traffic calculation unit 717 and an available bandwidth calculation unit 718.
[0321] The information collection unit 711 acquires information indicating the processable bandwidth from the higher-level device 4. The information collection unit 711 also acquires information indicating the traffic volume from the lower-level device 3. The information collection unit 711 calculates the state of the communication path (total traffic volume and available bandwidth) based on the acquired information indicating the processable bandwidth and information indicating the traffic volume. The information collection unit 711 outputs the calculated information indicating the state of the communication path to the traffic classification unit 714g.
[0322] The traffic classification unit 714g acquires information indicating the state of the communication path output from the information collection unit 711. The traffic classification unit 714g classifies flows based on the acquired information indicating the priority (e.g., 5QI) of each flow. The traffic classification unit 714g outputs the information indicating the state of the communication path and information indicating the flow classification results to the path state calculation unit 716g and the congestion target prediction unit 712g.
[0323] The path status calculation unit 716g acquires information indicating the state of the communication path and information indicating the flow classification results output from the traffic classification unit 714g. The total traffic calculation unit 717 of the path status calculation unit 716g calculates the total traffic volume based on the acquired flow and current traffic volume values for only traffic classified as traffic that does not cause congestion (i.e., low priority). The total traffic calculation unit 717 outputs the calculated total traffic volume value and information indicating the flow classification results to the available bandwidth calculation unit 718.
[0324] The available bandwidth calculation unit 718 acquires the value of the total traffic volume and information indicating the flow classification result output from the total traffic calculation unit 717. The available bandwidth calculation unit 718 calculates the available bandwidth value only for traffic classified as traffic that does not cause congestion (i.e., low-priority traffic) based on the value of the bandwidth (link rate) of the higher-level device 4 and the value of the total traffic volume. The path status calculation unit 716g outputs the calculated available bandwidth value and information indicating the calculated total traffic volume to the congestion status determination unit 713g.
[0325] The congestion target prediction unit 712g acquires information indicating the state of the communication path and information indicating the flow classification results output from the traffic classification unit 714g. The traffic prediction unit 715g of the congestion target prediction unit 712g acquires information indicating high-priority traffic output from the traffic classification unit 714g. The traffic prediction unit 715g predicts the future traffic volume of the acquired traffic. In this way, future traffic volume prediction is performed only for high-priority flows.
[0326] The congestion target prediction unit 712g outputs to the congestion status determination unit 713g information indicating the state of the communication path and information indicating the priority of each flow obtained from the information collection unit 711, as well as information indicating the predicted results of future traffic volume predicted by the traffic prediction unit 715g.
[0327] The congestion state determination unit 713g acquires information indicating the state of the communication path, information indicating the priority of each flow, and information indicating the predicted future traffic volume output from the congestion target prediction unit 712g. The congestion state determination unit 713g also acquires information indicating the total traffic volume and available bandwidth from the path state calculation unit 716g. The congestion state determination unit 713g determines whether congestion will occur in the future based on the difference between the future traffic volume and the current traffic volume and the available bandwidth of the communication path. For example, the congestion state determination unit 713g determines that congestion will occur in the future if the above-mentioned formula (11) is satisfied.
[0328] When determining that congestion will occur, the congestion state determination unit 713g calculates the congestion amount. For example, the congestion state determination unit 713g calculates the congestion amount using the above-mentioned equation (12).
[0329] The congestion state determining unit 713g outputs the calculated value of the congestion amount, information indicating the target base station, and information indicating the target terminal to the switching determining unit 75g.
[0330] The block diagram showing the functional configuration of the switching determination unit 75g of the switching instruction device 7g in the seventh embodiment is similar to the block diagram showing the functional configuration of the switching determination unit 75c of the switching instruction device 7c in the third embodiment shown in Fig. 35. The switching determination unit 75g is configured to include a congestion collection unit 751, a determination unit 752, and a route status collection unit 753.
[0331] The congestion collection unit 751 acquires the value of the congestion amount output from the congestion state determination unit 713g of the prediction unit 71g. The congestion collection unit 751 outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path to the path state collection unit 753.
[0332] The path status collection unit 753 acquires information indicating the available bandwidth and information indicating the total traffic volume from the prediction unit 71g. The path status collection unit 753 also acquires the congestion amount value output from the congestion collection unit 751, information identifying the target higher-level device 4, and information indicating the state of the communication path.
[0333] The path status collection unit 753 updates information indicating the state of the communication path (total traffic volume and available bandwidth), which is stored in a storage medium (not shown) included in the switching instruction device 7g, with new information acquired from each of the prediction units 71g. The path status collection unit 753 also saves the information indicating the state of the communication path in the storage medium (not shown), for example, in the form of a table shown in Fig. 36.
[0334] The path status collection unit 753 outputs the information indicating the available bandwidth and the information indicating the total traffic volume, which are acquired from the prediction unit 71g, to the determination unit 752. The path status collection unit 753 also outputs the value of the congestion amount, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are acquired from the congestion collection unit 751, to the determination unit 752.
[0335] The determination unit 752 acquires information indicating the available bandwidth, information indicating the total traffic volume, the congestion amount value, information identifying the target higher-level device 4, and information indicating the state of the communication path, which are output from the path status collection unit 753. The determination unit 752 sorts the higher-level devices 4 in descending order of the available bandwidth ratio value.
[0336] The determination unit 752 compares the value of the congestion amount with the value of the available bandwidth ratio in descending order of the value of the available bandwidth ratio. If the above-mentioned formula (13) is satisfied, the determination unit 752 determines that the communication path should be switched.
[0337] When instructing to switch the communication path, the determination unit 752 transmits the determination result of the communication path switching to the upper device 4 and the lower device 3, and instructs the network switching device (transfer device) to change (switch) the logical connection. Furthermore, the determination unit 752 also transmits the determination result of the communication path switching to a path status collection device (not shown).
[0338] In this way, the communication system 1g according to the seventh embodiment is configured to calculate available bandwidth in advance using the available bandwidth calculation unit 718 included in the prediction unit 71g, thereby enabling the communication path to be switched immediately upon receiving information indicating the occurrence of congestion. Furthermore, by being configured as described above, the communication system 1g according to the seventh embodiment can reduce the number of times future traffic volume is predicted and can make an earlier decision to switch the communication path.
[0339] An example of the operation of the traffic classifier 714g and the traffic predictor 715g will be described below. Fig. 48 is a flowchart showing the operation of the traffic classifier 714g and the traffic predictor 715g of the switching instruction device 7g according to the seventh embodiment of the present invention. The operation shown in the flowchart in Fig. 48 is started when the traffic classifier 714g acquires information indicating the state of the communication path and information indicating the priority of each flow output from the information collector 711.
[0340] First, the traffic classification unit 714g initializes variable j by assigning 1 to it (step S271). Variable j is a variable that identifies the flow to be classified. The traffic classification unit 714 classifies the flows based on the acquired information indicating the priority of each flow (here, 5QI). The traffic classification unit 714g determines whether the QoS of the flow to be classified is a predetermined high-priority QoS (high-priority QoS) (step S272).
[0341] If the traffic classification unit 714g determines that the QoS of the flow to be classified is a predetermined high-priority QoS (high-priority QoS) (step S272, Yes), the traffic prediction unit 715g predicts the future traffic volume of the acquired traffic (step S273).
[0342] On the other hand, if the traffic classification unit 714g determines that the QoS of the flow to be classified is not a predetermined high-priority QoS (high-priority QoS) (step S272, No), the traffic classification unit 714g stores information indicating the status of the communication path in a storage medium (not shown) provided in the switching instruction device 7g, for example, in the form of a table shown in FIG. 36 (step S274).
[0343] The traffic classification unit 714g determines whether the value of variable j is N (step S275). N is a number corresponding to the total number of flows to be classified. That is, the traffic classification unit 714g determines whether classification has been completed for all flows to be classified. If the value of variable j is smaller than N (step S275, No), the traffic classification unit 714g adds 1 to the value of variable j (step S276) and performs classification on the next flow (step S272).
[0344] If the value of the variable j is N (Yes in step S275), that is, if classification has been completed for all flows to be classified, the traffic classifier 714g causes the path state calculator 716g to calculate switching destination candidates for the communication path. This completes the operations of the traffic classifier 714g and the traffic predictor 715g shown in the flowchart of FIG.
[0345] As described above, the communication system 1g according to the seventh embodiment of the present invention does not predict future traffic volume for each upper level device 4, but performs congestion occurrence determination for each terminal to which it belongs. Therefore, the communication system 1g performs congestion cause determination to determine in advance whether traffic is expected to cause congestion. The congestion cause determination is performed, for example, based on fluctuations in traffic volume. As a result, compared to the conventional communication system 1 described above, the communication system 1g can eliminate the waiting time until the results of future traffic volume predictions for traffic from other terminals are collected, and can reduce the number of times the future traffic volume prediction process is executed.
[0346] Furthermore, as described above, the communication system 1g according to the seventh embodiment of the present invention makes a route switching decision based on the route status (current traffic volume) collected from the lower-level device 3 and the upper-level device 4. This allows the communication system 1g to immediately start congestion occurrence determination and make a route switching decision when it has completed predicting future traffic volumes only for terminals determined to be a cause of congestion. By having such a configuration, the communication system 1g according to the seventh embodiment of the present invention can further shorten the time required from starting to collect traffic information to making a route switching decision.
[0347] According to the above-described embodiment, the communication control device includes a traffic classifier, a traffic forecaster, a congestion state determiner, and a switching determiner. For example, the communication control device corresponds to the switching instruction devices 7a to 7g in the embodiment, the traffic classifier corresponds to the traffic classifiers 714, 714b to 714g in the embodiment, the traffic forecaster corresponds to the traffic classifiers 715, 715b to 715g in the embodiment, the congestion state determiner corresponds to the congestion state determiner 713, 713b to 713g in the embodiment, and the switching determiner corresponds to the switching determiner 75a to 75g in the embodiment.
[0348] The traffic classification unit classifies communication traffic input during a predetermined period based on whether it is likely to cause congestion. The traffic prediction unit predicts future traffic volume only for communication traffic determined by the traffic classification unit to be likely to cause congestion. The congestion state determination unit calculates a total communication traffic volume based on all communication traffic, and calculates a congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit. The switching determination unit determines whether or not switching of communication paths between multiple upper devices and multiple lower devices is necessary based on information based on the congestion volume calculated by the congestion state determination unit. For example, the information based on the congestion volume is the congestion volume value itself or the congestion degree in the embodiment, the upper device is the upper device 4 in the embodiment, and the lower device is the lower device 3 in the embodiment.
[0349] The congestion state determination unit may calculate available bandwidth of the communication path based on all communication traffic and identify candidates for destinations of the communication path to be switched to. The switching determination unit may determine whether or not switching of the communication path is necessary based on the candidates for destinations of the communication path.
[0350] The traffic classifying unit may classify the communication traffic based on the priority of the communication traffic, for example, 5QI in the embodiment.
[0351] The traffic classifying unit may classify the communication traffic based on the amount of fluctuation in the traffic volume of the communication traffic.
[0352] The congestion state determination unit may determine the congestion level corresponding to the calculated congestion amount value based on information associating a predetermined range of congestion amount values with the congestion level. The switching determination unit may determine whether or not switching of the communication path is necessary based on the congestion level determined by the congestion state determination unit.
[0353] In addition, when the switching determination unit determines that congestion will occur based on information based on the amount of congestion, it may determine that switching of the communication path is necessary without waiting to obtain information based on the amount of congestion in all upper-level devices.
[0354] Furthermore, according to the above-described embodiment, the prediction device includes a traffic classification unit, a traffic prediction unit, and a congestion state determination unit for making a determination. For example, the prediction device corresponds to the prediction units 71a to 71g in the embodiment, the traffic classification unit corresponds to the traffic classification units 714, 714b to 714g in the embodiment, the traffic prediction unit corresponds to 715, 715b to 715g in the embodiment, and the congestion state determination unit corresponds to the congestion state determination units 713, 713b to 713g in the embodiment.
[0355] The traffic classification unit classifies communication traffic input during a predetermined period based on whether it is likely to cause congestion. The traffic prediction unit predicts future traffic volume only for communication traffic determined by the traffic classification unit to be likely to cause congestion. The congestion state determination unit calculates the total communication traffic volume based on all communication traffic, calculates the congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit, and determines whether congestion will occur.
[0356] Part or all of the configuration of the switching instruction device in the above-described embodiment may be implemented by a computer. In this case, a program for implementing this function may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed. Note that the term "computer system" as used herein includes hardware such as an OS and peripheral devices. Furthermore, "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into computer systems. Furthermore, "computer-readable recording medium" may also include media that dynamically store programs for a short period of time, such as communication lines used when transmitting programs via networks such as the Internet or telephone lines, or media that store programs for a fixed period of time, such as volatile memory within the computer system that serves as the server or client. The program may be designed to implement part of the above-described functions, or may be capable of implementing the above-described functions in combination with programs already stored in the computer system, or may be implemented using a programmable logic device such as an FPGA (Field Programmable Gate Array).
[0357] Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the present invention that do not deviate from the gist of the present invention.
[0358] 1, 1a to 1g...communication system, 3, 3-1 to 3-4...lower device, 4, 4-1 to 4-2...higher device, 4d...switching instruction device, 5...network, 7, 7a to 7g...switching instruction device, 10...mobile communication system, 11...terminal station, 12, 12-m...antenna station, 13, 13-1 to 13-M...remote station, 14, 14-1 to 14-N...aggregate station, 15...transfer device, 16...resource allocation device, 17...switching instruction device, 20...higher network, 21b to 21g, 71, 71a, 71a-1 to 71a-n, 71b to 71g...prediction unit, 72...switching threshold determination unit, 73...prediction accuracy calculation unit, 74...threshold calculation unit , 75, 75a to 75g...switching determination unit, 171...prediction unit, 172...switching threshold determination unit, 173...prediction accuracy calculation unit, 174...threshold calculation unit, 175...switching determination unit, 711...information collection unit, 712, 712b to 712g...congestion target prediction unit, 713, 713b to 713g...congestion state determination unit, 714, 714b to 714g...traffic classification unit, 715, 715b to 715g...traffic prediction unit, 716, 716c, 716d, 716e, 716g...path state calculation unit, 717...total traffic calculation unit, 718...bandwidth calculation unit, 751...congestion collection unit, 752...determination unit, 753...path state collection unit
Claims
1. A communication control device comprising: a traffic classification unit that classifies communication traffic input during a specified period based on whether or not it may cause congestion; a traffic prediction unit that predicts future traffic volume only for the communication traffic determined by the traffic classification unit to be likely to cause the congestion; a congestion state determination unit that calculates a total communication traffic volume based on all of the communication traffic and calculates a congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit; and a switching determination unit that determines whether or not it is necessary to switch communication paths between multiple higher-level devices and multiple lower-level devices based on information based on the congestion volume calculated by the congestion state determination unit.
2. The communication control device according to claim 1, wherein the congestion state determination unit calculates available bandwidth of the communication path based on all of the communication traffic and identifies candidates for a destination to which the communication path is switched, and the switching determination unit determines whether or not it is necessary to switch the communication path based on the candidates for the destination to which the communication path is switched.
3. The communication control device according to claim 1 or 2, wherein the traffic classifier classifies the communication traffic based on a priority of the communication traffic.
4. The communication control device according to claim 1 or 2, wherein the traffic classifier classifies the communication traffic based on a fluctuation in the traffic volume of the communication traffic.
5. A communication control device as described in claim 1 or 2, wherein the congestion state determination unit identifies the congestion level corresponding to the calculated congestion amount value based on information in which a predetermined range of congestion amount values is associated with the congestion level, and the switching determination unit determines whether or not it is necessary to switch the communication path based on the congestion level identified by the congestion state determination unit.
6. A communication control device as described in claim 1 or 2, wherein the switching judgment unit, when it judges that congestion will occur based on information based on the amount of congestion, judges that switching of the communication path is necessary without waiting to obtain information based on the amount of congestion in all of the higher-level devices.
7. A prediction device comprising: a traffic classification unit that classifies communication traffic input during a specified period based on whether or not it may cause congestion; a traffic prediction unit that predicts future traffic volume only for the communication traffic determined by the traffic classification unit to be likely to cause the congestion; and a congestion state determination unit that calculates a total communication traffic volume based on all of the communication traffic, calculates a congestion volume based on the total communication traffic volume and the future traffic volume predicted by the traffic prediction unit, and determines whether or not the congestion will occur.
8. A communication control method executed by a computer, comprising: a traffic classification step of classifying communication traffic input during a specified period based on whether or not it may cause congestion; a traffic prediction step of predicting future traffic volume only for the communication traffic determined in the traffic classification step to be likely to cause the congestion; a congestion state determination step of calculating a total communication traffic volume based on all the communication traffic and calculating a congestion volume based on the total communication traffic volume and the future traffic volume predicted in the traffic prediction step; and a switching determination step of determining whether or not it is necessary to switch communication paths between multiple higher-level devices and multiple lower-level devices based on information based on the congestion volume calculated in the congestion state determination step.
Citation Information
Patent Citations
Link congestion fault prediction and network autonomous management and control method based on machine learning
CN113114582A
Transmission band controller
JP2004236198A
Transmission system, switching control device, switching control method, and program
WO2023058089A1