WO2020079936A1 - 基地局装置、プログラム、制御装置及び制御方法 - Google Patents

基地局装置、プログラム、制御装置及び制御方法 Download PDF

Info

Publication number
WO2020079936A1
WO2020079936A1 PCT/JP2019/031745 JP2019031745W WO2020079936A1 WO 2020079936 A1 WO2020079936 A1 WO 2020079936A1 JP 2019031745 W JP2019031745 W JP 2019031745W WO 2020079936 A1 WO2020079936 A1 WO 2020079936A1
Authority
WO
WIPO (PCT)
Prior art keywords
congestion control
cpu
base station
level
station device
Prior art date
Application number
PCT/JP2019/031745
Other languages
English (en)
French (fr)
Inventor
叔達 蔡
Original Assignee
Hapsモバイル株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hapsモバイル株式会社 filed Critical Hapsモバイル株式会社
Priority to EP19873060.8A priority Critical patent/EP3846541B1/en
Publication of WO2020079936A1 publication Critical patent/WO2020079936A1/ja
Priority to US17/211,885 priority patent/US11218905B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/021Traffic management, e.g. flow control or congestion control in wireless networks with changing topologies, e.g. ad-hoc networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/14Relay systems
    • H04B7/15Active relay systems
    • H04B7/185Space-based or airborne stations; Stations for satellite systems
    • H04B7/18502Airborne stations
    • H04B7/18504Aircraft used as relay or high altitude atmospheric platform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/10Scheduling measurement reports ; Arrangements for measurement reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/02Access restriction performed under specific conditions
    • H04W48/06Access restriction performed under specific conditions based on traffic conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • H04W84/06Airborne or Satellite Networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0284Traffic management, e.g. flow control or congestion control detecting congestion or overload during communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/005Moving wireless networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present invention relates to a base station device, a program, a control device, and a control method.
  • Patent Document 1 Japanese Patent Laid-Open No. 2002-211496
  • -It is desirable to provide technology that enables appropriate congestion control when providing wireless communication services to a large number of communication terminals, such as a stratosphere platform.
  • a base station device which is mounted on a flying body, forms a communication area on the ground, and provides a wireless communication service to a user terminal in the communication area.
  • the base station device may include a CPU and a determination unit that determines whether or not to perform congestion control in the wireless communication service based on the usage status of the CPU stack message queue of the CPU.
  • the base station device may include a congestion control execution unit that executes congestion control when the determination unit determines to execute the congestion control.
  • the determination unit determines not to execute the congestion control, and the message held in the CPU stack message queue is determined. If the number is larger than the predetermined number, it may be determined to execute the congestion control. When the number of messages held in the CPU stack message queue is smaller than a predetermined number, the determination unit may determine not to execute the congestion control regardless of the CPU usage rate of the CPU.
  • the determination unit determines whether the first It may be determined to execute the congestion control of a level, and when the CPU usage rate is higher than the first threshold, it may be determined to execute the congestion control of a second level higher than the first level.
  • the congestion control execution unit sets the access allowable number per unit time to a first number, and the determination unit sets the second level
  • the allowable access number per unit time may be set to a second number that is smaller than the first number.
  • the congestion control execution unit may be set to reject acceptance of the handover of the user terminal when the determination unit determines to execute the second level congestion control.
  • the congestion control execution unit may perform control so as to discard the Measurement Report received from the user terminal without processing when the determination unit determines to execute the second level congestion control.
  • the determination unit determines the first level congestion control. If the CPU usage rate is higher than the first threshold value and lower than the second threshold value higher than the first threshold value, the CPU usage rate is higher than the first level and lower than the second level.
  • the base station device may include a setting unit that sets the predetermined number, and the setting unit may change the predetermined number when a predetermined condition is satisfied.
  • the base station device may include an information acquisition unit that acquires ground area related information related to a ground area covered by the communication area, and the setting unit, the ground area related information satisfies a predetermined condition. In that case, the predetermined number may be changed.
  • the setting unit may decrease the predetermined number when an event is held in the ground area covered by the communication area.
  • the setting unit may increase the predetermined number when a disaster occurs in the ground area covered by the communication area.
  • the setting unit may reduce the predetermined number when a terrestrial mobile network is arranged in the terrestrial area covered by the communication area.
  • the setting unit may change the predetermined number when the remaining battery level of the battery mounted on the aircraft is less than a predetermined threshold value.
  • the base station device may include a learning execution unit that generates prediction data that predicts a trend of the communication traffic by machine learning based on a history of communication traffic in a wireless communication service provided by the base station device, and the setting described above.
  • the unit may change the predetermined number based on the prediction data.
  • the setting unit may decrease the predetermined number when it is predicted by the prediction data that the communication traffic will increase.
  • a control device which is mounted on an air vehicle and which controls a base station device which forms a communication area on the ground and provides a wireless communication service to a communication terminal within the communication area.
  • the control device may include a determination unit that determines whether or not to perform congestion control in the wireless communication service based on the usage status of the CPU stack message queue of the CPU of the base station device.
  • the control device may include a congestion control execution unit that causes the base station device to execute the congestion control when the determination unit determines to execute the congestion control.
  • a control method is provided.
  • the control method is based on the usage status of the CPU stack message queue of the CPU of the base station device that is mounted on a flying body, forms a communication area on the ground, and provides a wireless communication service to a communication terminal within the communication area.
  • a determination step of determining whether to perform congestion control in the service may be provided.
  • the control method may include a congestion control execution step of executing congestion control when it is determined to be executed in the determination step.
  • 1 schematically shows an example of an air vehicle 100.
  • An example of a functional configuration of the base station device 200 included in the main body 102 is schematically shown.
  • 1 schematically shows an example of the flow of processing by the base station device 200.
  • 1 schematically shows an example of the flow of processing by the base station device 200.
  • An example of a functional configuration of the control device 300 is schematically shown.
  • 1 schematically shows an example of a hardware configuration of a computer 1000 that functions as a base station device 200 or a control device 300.
  • FIG. 1 schematically shows an example of an air vehicle 100.
  • the aircraft 100 includes a main body portion 102, a main wing portion 104, a propeller 106, a skid 108, wheels 110, and a solar cell panel 112.
  • the main body 102 has a battery, a flight control device, and a base station device, which are not shown.
  • the battery stores the electric power generated by the solar cell panel 112.
  • the flight control device controls the flight of the air vehicle 100.
  • the flight control device causes the flying object 100 to fly by rotating the propeller 106 using the electric power stored in the battery, for example.
  • the base station device includes an antenna for forming a communication area 202 on the ground and providing a wireless communication service to the user terminal 30 in the communication area 202.
  • the antenna may be, for example, a multi-beam antenna.
  • the communication area 202 may be composed of a plurality of subcells 204. Further, the communication area 202 may be composed of a single cell.
  • the flight control device and the base station device may be integrated.
  • the air vehicle 100 for example, circulates in the stratosphere and provides a wireless communication service to the user terminal 30 on the ground.
  • Aircraft 100 may function as a stratosphere platform.
  • the user terminal 30 may be any terminal as long as it can communicate with the flying object 100.
  • the user terminal 30 is a mobile phone such as a smartphone.
  • the user terminal 30 may be a tablet terminal, a PC (Personal Computer), or the like.
  • the user terminal 30 may be a so-called IoT (Internet of Thing) device. Examples of the IoT device include various sensors and various actuators.
  • the user terminal 30 may be a communication module mounted on a vehicle, a ship, a drone or the like.
  • the user terminal 30 may include anything corresponding to so-called IoE (Internet of Everything).
  • the air vehicle 100 covers the ground area by the communication area 202, for example, while traveling over the ground area to be covered. Turning the flying vehicle 100 over the ground area may be referred to as fixed point flight. Further, the flying object 100 covers the entire ground area by moving over the ground area while covering a part of the ground area to be covered by the communication area 202, for example.
  • the air vehicle 100 provides a wireless communication service to the user terminal 30 by relaying communication between the user terminal 30 and the ground network 20, for example.
  • the network 20 may be any network, for example, the Internet, mobile phone networks such as so-called 3G (3rd Generation), LTE (Long Term Evolution), 4G (4th Generation) and 5G (5th Generation), and the public. It may include at least one of a wireless LAN (Local Area Network) and a dedicated network.
  • the air vehicle 100 communicates with the ground network 20 via the gateway 22 in the communication area 202 among the gateways 22 arranged in various places on the ground, for example.
  • the air vehicle 100 communicates with the ground network 20 via the communication satellite 50, for example.
  • the air vehicle 100 has an antenna for communicating with the communication satellite 50.
  • the air vehicle 100 communicates with other air vehicles.
  • the air vehicle 100 communicates with other air vehicles via the network 20, for example.
  • the air vehicle 100 communicates with other air vehicles via the communication satellite 50, for example.
  • the air vehicle 100 may wirelessly communicate with other air vehicles.
  • Aircraft 100 may communicate directly with other air vehicles by wireless communication.
  • the flying object 100 has an antenna for wireless communication with another flying object.
  • the air vehicle 100 may form a C2 link with another air vehicle using the antenna, and may communicate via the C2 link, for example.
  • the air vehicle 100 may be controlled by the ground management device 400.
  • the flying object 100 flies or forms a communication area 202 according to an instruction transmitted by the management device 400 via the network 20 and the gateway 22, for example.
  • the management device 400 may transmit the instruction to the air vehicle 100 via the communication satellite 50.
  • the management device 400 controls the air vehicle 100 by transmitting an instruction.
  • the management device 400 may cause the air vehicle 100 to fly over the target area so that the communication area 202 covers the target area on the ground.
  • the management device 400 may cover each of the plurality of target areas by causing the air vehicle 100 to fly over each of the plurality of target areas.
  • the management device 400 may manage the ground area related information related to the ground area covered by the communication area 202 of the air vehicle 100.
  • the above-ground area-related information includes, for example, the status of holding an event such as a concert where many people can gather in the above-ground area.
  • the ground area related information may include the occurrence status of disasters in the ground area.
  • the ground area related information may include the arrangement status of the ground mobile network in the ground area.
  • the management device 400 may transmit the ground area related information to the air vehicle 100.
  • the CPU usage rate of the CPU (Central Processing Unit) of the wireless base station was used as the criterion for the CAPS (Call Attempt Per Second) congestion control of the wireless base station.
  • the communication area 202 is formed from the sky like the air vehicle 100 according to the present embodiment, the area coverage becomes extremely wide as compared with the terrestrial mobile network, so that the number of user terminals 30 to be accommodated is small.
  • fluctuations in the coverage area (footprint) easily cause simultaneous user connections (handovers) at the boundary between adjacent areas. Therefore, for more optimal congestion control, it is necessary to take into account the fluctuation in the number of simultaneous connections, but it is difficult to make a determination based on the conventional CPU usage rate alone.
  • the aircraft 100 determines whether or not to execute the CAPS congestion control in the wireless communication service by the communication area 202 based on the usage status of the CPU stack message queue. For example, when the number of messages held in the CPU stack message queue is less than a predetermined number, the flying object 100 does not execute the congestion control regardless of the CPU usage rate.
  • the heavier processing load is the connection process with the user terminal 30. Therefore, the CPU usage rate tends to increase while the connection process with the user terminal 30 is being executed. For example, if the CPU stack message queue is empty and the connection process with the user terminal 30 is started, the CPU usage rate becomes high even though the CPU stack message queue has a margin. If the configuration is such that the congestion control is executed based only on the CPU usage rate as in the conventional case, the congestion control is executed in this state. Therefore, there may occur a situation in which the user terminal 30 cannot establish a communication connection with the flying object 100, although the CPU stack message queue has a margin.
  • the congestion control is executed even if the CPU usage rate is high. You can turn it off. As a result, it is possible to suppress the occurrence of the above situation.
  • the flying object 100 when the number of messages held in the CPU stack message queue is larger than a predetermined number and the CPU usage rate is lower than the predetermined threshold value, If the first level congestion control is executed and the value is higher than the threshold, the second level congestion control higher than the first level is executed. As a result, it is possible to execute appropriate congestion control according to the CPU usage rate.
  • FIG. 2 schematically shows an example of a functional configuration of the base station device 200 included in the main body 102.
  • the base station device 200 includes a communication processing unit 252, a usage rate acquisition unit 254, a usage status acquisition unit 256, a determination unit 258, a congestion control execution unit 260, an information acquisition unit 262, a setting unit 264, and a learning execution unit 266. Note that it is not essential that the base station device 200 has all of these configurations.
  • the communication processing unit 252 executes various communication processes.
  • the communication processing unit 252 forms the communication area 202 on the ground using the antenna 240.
  • the communication processing unit 252 communicates with the network 20 via the gateway 22 in the communication area 202.
  • the communication processing unit 252 communicates with the management device 400 via the gateway 22 and the network 20, for example. Further, the communication processing unit 252 communicates with the user terminal 30 in the communication area 202.
  • the communication processing unit 252 relays communication of the user terminal 30 in the communication area 202.
  • the antenna may be used to communicate with the communication satellite 50.
  • the usage rate acquisition unit 254 acquires the CPU usage rate of the CPU of the base station device 200.
  • the usage rate acquisition unit 254 acquires the CPU usage rate from the OS (Operating System) of the base station device 200, for example.
  • the usage status acquisition unit 256 acquires the usage status of the CPU stack message queue of the CPU of the base station device 200.
  • the CPU stack message queue usage may indicate the number of messages held in the CPU stack message queue.
  • the usage status of the CPU stack message queue may indicate the usage rate of the CPU stack message queue.
  • the usage status acquisition unit 256 acquires the usage status of the CPU stack message queue from the OS of the base station device 200, for example.
  • the determination unit 258 determines whether to perform congestion control in the wireless communication service provided by the communication processing unit 252 to the user terminal 30 based on the usage status of the CPU stack message queue acquired by the usage status acquisition unit 256. To determine.
  • the determination unit 258 determines not to perform congestion control and determines the number of messages held in the CPU stack message queue. Is greater than a predetermined number, it is determined that congestion control will be executed. When the number of messages held in the CPU stack message queue is smaller than the predetermined number, the determination unit 258 may determine not to execute the congestion control regardless of the CPU usage rate. When the usage rate acquisition unit 254 acquires the usage rate of the CPU stack message queue, the determination unit 258 determines whether or not the usage rate is higher than a predetermined value, and thus the CPU stack message queue is determined. It may be determined whether the number of held messages is more than a predetermined number.
  • the determination unit 258 may determine the congestion control execution level based on the CPU usage rate acquired by the usage rate acquisition unit 254. For example, when the number of messages held in the CPU stack message queue is larger than a predetermined number and the CPU usage rate is lower than a predetermined first threshold value, the determination unit 258 determines that the first level congestion occurs. It is determined to execute the control, and when the CPU usage rate is higher than the first threshold value, it is determined to execute the second level congestion control higher than the first level.
  • the first threshold may be set arbitrarily and may be changeable.
  • the determination unit 258 determines to execute the first level congestion control when the number of messages held in the CPU stack message queue is larger than a predetermined number and the CPU usage rate is lower than the first threshold. , If the CPU usage rate is higher than the first threshold value and lower than the second threshold value higher than the first threshold value, it is determined to execute the congestion control of the third level higher than the first level and lower than the second level, When the CPU usage rate is higher than the second threshold value, it may be determined to execute the second level congestion control.
  • the first threshold and the second threshold may be arbitrarily set and may be changeable as long as the second threshold is higher than the first threshold.
  • the congestion control execution unit 260 executes the congestion control when the determination unit 258 determines to execute the congestion control.
  • the congestion control execution unit 260 sets the CAPS value to a different value depending on whether the determination unit 258 determines to execute the first level congestion control or the second level congestion control, for example. Set to perform congestion control.
  • the CAPS value may be an allowable number of connections per unit time.
  • the congestion control execution unit 260 sets the allowable number of connections per unit time to the first number, and the determination unit 258 sets the second level of connection permission. If it is determined to execute the congestion control of 1), the allowable number of connections per unit time is set to a second number that is smaller than the first number. As a specific example, when the CAPS value when the congestion control is not executed is 100 access / second, the congestion control execution unit 260 sets the CAPS value in the first level congestion control to 30 access / second, and the second level The CAPS value in congestion control is 1 access / second. That is, the first number is 30, and the second number is 1. If the first number and the second number are less than the allowable number of accesses per unit time when congestion control is not executed, and if the second number is less than the first number, what kind of number is set? May be done.
  • the congestion control execution unit 260 may change the control content depending on whether the determination unit 258 determines to execute the first level congestion control or the second level congestion control. . For example, in the first level congestion control, only the CAPS value is adjusted, and in the second level congestion control, at least one of HO-IN Rejection and Measurements Reports discarded is performed. In the second level congestion control, the CAPS value may be adjusted and / or at least one of HO-IN Rejection and Measurements Reports reported may be performed. The HO-IN Rejection may be a refusal to accept the handover of the user terminal 30. The Measurements Reportsdiscarded may be to discard the Measurements Report received from the user terminal 30 without processing.
  • the base station device 200 can be overloaded by reducing the CAPS value and / or performing at least one of HO-IN Rejection and Measurements Reports reported. It is possible to prevent an excessive load.
  • the congestion control execution unit 260 performs, for example, a case where the determination unit 258 determines to execute the first level congestion control, a case where it is determined to execute the second level congestion control, and a third level congestion control.
  • the congestion control may be executed by setting the CAPS value to a different value depending on whether the congestion control is executed. For example, if the determination unit 258 determines that the first level congestion control is to be performed, the congestion control execution unit 260 sets the connection allowable number per unit time to the first number and sets the second level congestion control. If it is determined to execute, set the allowable number of connections per unit time to a second number that is smaller than the first number, and if it is determined to execute the third level congestion control, allow connection per unit time. Set the number to a number between the first number and the second number.
  • the congestion control execution unit 260 determines that the determination unit 258 determines to perform the first level congestion control, determines that the second level congestion control is performed, and executes the third level congestion control.
  • the control content may be different depending on whether the determination is made. For example, in the first level congestion control, the permissible number of connections per unit time is set to the first number, and in the third level congestion control, the permissible number of connections per unit time is smaller than the first number.
  • the second level congestion control at least one of HO-IN Rejection and Measurements Reportsdiscarded is executed while setting the allowable number of connections per unit time to the second number.
  • the information acquisition unit 262 acquires various kinds of information.
  • the information acquisition unit 262 may acquire the history of communication traffic in the wireless communication service provided by the aircraft 100.
  • the information acquisition unit 262 may acquire the history from the communication processing unit 252.
  • the information acquisition unit 262 acquires, for example, ground area related information related to the ground area covered by the communication area 202 of the flying object 100.
  • the information acquisition unit 262 may acquire the ground area related information from the management device 400.
  • the information acquisition unit 262 acquires, for example, the remaining battery level of the battery installed in the air vehicle 100.
  • the setting unit 264 sets the number (may be described as a message threshold value) for comparison with the number of messages held in the CPU stack message queue acquired by the usage status acquisition unit 256.
  • the setting unit 264 also sets a threshold value (may be referred to as a usage rate threshold value) for comparison with the CPU usage rate acquired by the usage rate acquisition unit 254.
  • the setting unit 264 may set the message threshold and the usage rate threshold according to an instruction from the administrator of at least one of the air vehicle 100 and the base station apparatus 200.
  • the setting unit 264 may set the usage rate threshold value based on the information acquired by the information acquisition unit 262.
  • the setting unit 264 changes the usage rate threshold, for example, when the information acquired by the information acquisition unit 262 satisfies a predetermined condition.
  • the setting unit 264 may set the message threshold based on the information acquired by the information acquisition unit 262.
  • the setting unit 264 changes the message threshold value, for example, when the information acquired by the information acquisition unit 262 satisfies a predetermined condition.
  • the setting unit 264 changes the message threshold value, for example, when the ground area related information acquired by the information acquisition unit 262 satisfies a predetermined condition. As a specific example, the setting unit 264 lowers the message threshold when the event is held in the ground area covered by the communication area 202. As a result, in a situation where it is expected that connection requests will frequently occur due to events, it is possible to preset the congestion control to be executed earlier.
  • the setting unit 264 raises the message threshold when a disaster occurs in the ground area covered by the communication area 202. This makes it difficult to perform the congestion control, and allows as many user terminals 30 as possible to establish a communication connection with the aircraft 100.
  • the setting unit 264 lowers the message threshold when the terrestrial mobile network is located in the terrestrial area covered by the communication area 202. As a result, the congestion control can be executed earlier, and thus the terrestrial mobile network can be actively complemented.
  • the setting unit 264 lowers the message threshold when the remaining battery level of the battery mounted on the aircraft 100 is less than a predetermined threshold. Thereby, the congestion control is executed earlier and the processing load of the base station apparatus 200 is reduced, so that the battery consumption amount can be reduced.
  • the learning execution unit 266 generates prediction data for predicting the trend of communication traffic by machine learning based on the history of communication traffic acquired by the information acquisition unit 262. For example, the learning execution unit 266 analyzes the history of communication traffic for each season, each hour, and each location, and performs machine learning to generate prediction data for predicting the trend of communication traffic for each season, each hour, and each location. May be generated.
  • the setting unit 264 may set at least one of the message threshold value and the usage rate threshold value based on the prediction data generated by the learning execution unit 266. For example, the setting unit 264 lowers the message threshold when it is predicted by the prediction data that the communication traffic will increase. As a result, in a situation where it is expected that a large number of connection requests will occur, it is possible to preset the congestion control to be executed earlier.
  • the message threshold value and the usage rate threshold value set by the setting unit 264 may be transmitted to another aircraft 100.
  • the communication processing unit 252 covers the first ground area with the aircraft 100 in which the communication processing unit 252 is installed, and the cover of the first ground area is replaced with another aircraft 100. Then, the message threshold value and the usage rate threshold value are transmitted to the other air vehicle 100. As a result, the message threshold value and the usage rate threshold value that are suitable for the first ground area can be handed over to another alternate air vehicle 100.
  • FIG. 3 schematically shows an example of the flow of processing by the base station device 200.
  • the usage rate acquisition unit 254 periodically acquires the CPU usage rate
  • the usage status acquisition unit 256 periodically counts the number of messages held in the CPU stack message queue (may be referred to as MsgQ).
  • MsgQ the number of messages held in the CPU stack message queue
  • step (step may be abbreviated as S) 102 the determination unit 258 determines whether MsgQ is greater than the message threshold. When it is determined that the number is large, the process proceeds to S104.
  • the determination unit 258 determines whether the CPU usage rate is higher than the usage rate threshold value. If it is determined to be high, the process proceeds to S106, and if it is determined to be low, the process proceeds to S108.
  • step S106 the congestion control execution unit 260 controls to execute the second level congestion control.
  • step S108 the congestion control execution unit 260 controls to execute the first level congestion control lower than the second level.
  • the determination unit 258 determines whether MsgQ is less than the message threshold. If it is determined that it is not small, the process returns to S104, and if it is determined that it is not small, the process proceeds to S112.
  • step S112 the congestion control execution unit 260 stops the congestion control.
  • step S114 the determination unit 258 determines whether or not the end instruction has been received. If it is determined that it has not been received, the process returns to S102, and if it is determined that it has been received, the processing ends.
  • FIG. 4 schematically shows an example of the flow of processing by the base station device 200.
  • the flow of processing between the OS 210, the Control plane 220, and the User plane 230 in the base station apparatus 200 is shown.
  • the OS 210 notifies the Control plane 220 of the CPU usage rate and the MsgQ usage status.
  • the Control plane 220 determines whether or not to execute the congestion control, and when it is determined to execute the congestion control, notifies the User plane 230 of the control content.
  • the OS 210 notifies the control plane 220 of the CPU usage rate and the MsgQ usage status according to a preset cycle. In accordance with such a flow, the base station device 200 executes congestion control.
  • the base station device 200 proactively performs congestion control based on the usage status of the CPU stack message queue and the CPU usage rate, but the present invention is not limited to this.
  • the congestion control of the base station device 200 may be managed by a control device other than the base station device 200, such as a flight control device, mounted on the flying object 100.
  • FIG. 5 schematically shows an example of the functional configuration of the control device 300 that performs the congestion control of the base station device 200.
  • the configuration shown in FIG. 5 may be part of the flight controller. Further, the control device 300 shown in FIG. 5 may be mounted on the air vehicle 100 separately from the flight control device.
  • the control device 300 includes a usage rate acquisition unit 302, a usage status acquisition unit 304, a determination unit 306, a congestion control execution unit 308, an information acquisition unit 310, a setting unit 312, and a learning execution unit 314.
  • a usage rate acquisition unit 302 a usage status acquisition unit 304
  • a determination unit 306 a congestion control execution unit 308 an information acquisition unit 310
  • a setting unit 312 a setting unit 302.
  • a learning execution unit 314 differences from the usage rate acquisition unit 254, the usage status acquisition unit 256, the determination unit 258, the congestion control execution unit 260, the information acquisition unit 262, the setting unit 264, and the learning execution unit 266 will be mainly described.
  • the usage rate acquisition unit 302 acquires the CPU usage rate of the CPU of the base station device 200.
  • the usage rate acquisition unit 302 receives the CPU usage rate from the OS (Operating System) of the base station device 200, for example.
  • the usage status acquisition unit 304 acquires the usage status of the CPU stack message queue of the CPU of the base station device 200.
  • the usage status acquisition unit 304 receives the usage status of the CPU stack message queue from the OS of the base station device 200, for example.
  • the determination unit 306 executes congestion control in the wireless communication service provided by the base station apparatus 200 to the user terminal 30 based on the usage status of the CPU stack message queue acquired by the usage status acquisition unit 304. To determine.
  • the determination unit 306 determines not to execute the congestion control and determines the number of messages held in the CPU stack message queue. Is greater than a predetermined number, it is determined that congestion control will be executed. When the number of messages held in the CPU stack message queue is smaller than the predetermined number, the determination unit 306 may determine not to execute the congestion control regardless of the CPU usage rate. When the usage status acquisition unit 304 acquires the usage rate of the CPU stack message queue, the determination unit 306 determines whether the usage rate is higher than a predetermined value, so that the CPU stack message queue is saved. It may be determined whether the number of held messages is more than a predetermined number.
  • the determination unit 306 may determine the congestion control execution level based on the CPU usage rate acquired by the usage rate acquisition unit 302. For example, when the number of messages held in the CPU stack message queue is larger than a predetermined number and the CPU usage rate is lower than a predetermined first threshold, the determination unit 306 determines that the first level congestion occurs. It is determined to execute the control, and when the CPU usage rate is higher than the first threshold value, it is determined to execute the second level congestion control higher than the first level.
  • the first threshold may be set arbitrarily and may be changeable.
  • the determination unit 306 determines to execute the first level congestion control when the number of messages held in the CPU stack message queue is more than a predetermined number and the CPU usage rate is lower than the first threshold. , If the CPU usage rate is higher than the first threshold value and lower than the second threshold value higher than the first threshold value, it is determined to execute the congestion control of the third level higher than the first level and lower than the second level, When the CPU usage rate is higher than the second threshold value, it may be determined to execute the second level congestion control.
  • the first threshold and the second threshold may be arbitrarily set and may be changeable as long as the second threshold is higher than the first threshold.
  • the congestion control execution unit 308 causes the base station device 200 to execute the congestion control when the determination unit 306 determines to execute the congestion control.
  • the congestion control execution unit 308 changes the CAPS value to a different value depending on whether the determination unit 306 determines to execute the first level congestion control or the second level congestion control, for example.
  • the congestion control is executed by the base station device 200.
  • the congestion control execution unit 308 may change the control content depending on whether the determination unit 306 determines to execute the first level congestion control or the second level congestion control. .
  • the congestion control execution unit 308 performs, for example, a case where the determination unit 306 determines to execute the first level congestion control, a case where it is determined to execute the second level congestion control, and a third level congestion control.
  • the congestion control may be executed by setting the CAPS value to a different value depending on whether the congestion control is executed.
  • the congestion control execution unit 308 determines that the determination unit 306 determines to perform the first level congestion control, determines that the second level congestion control is performed, and executes the third level congestion control.
  • the control content may be different depending on whether the determination is made.
  • the information acquisition unit 310 acquires various types of information.
  • the information acquisition unit 310 may acquire the history of communication traffic in the wireless communication service provided by the aircraft 100.
  • the information acquisition unit 310 may acquire the history from the base station device 200.
  • the information acquisition unit 310 acquires, for example, ground area related information related to the ground area covered by the communication area 202 of the flying object 100.
  • the information acquisition unit 310 may acquire the ground area related information from the management device 400.
  • the information acquisition unit 310 acquires, for example, the battery remaining amount of the battery mounted on the flying object 100.
  • the information acquisition unit 310 may receive the remaining battery level from the air vehicle 100.
  • the setting unit 312 sets a message threshold.
  • the setting unit 312 also sets a usage rate threshold.
  • the setting unit 312 may set the usage rate threshold value based on the information acquired by the information acquisition unit 310.
  • the setting unit 312 changes the usage rate threshold, for example, when the information acquired by the information acquisition unit 310 satisfies a predetermined condition.
  • the setting unit 312 may set the message threshold based on the information acquired by the information acquisition unit 310.
  • the setting unit 312 changes the message threshold, for example, when the information acquired by the information acquisition unit 310 satisfies a predetermined condition.
  • the learning execution unit 314 generates prediction data that predicts the trend of communication traffic by machine learning based on the history of communication traffic acquired by the information acquisition unit 310.
  • the setting unit 312 may set at least one of the message threshold value and the usage rate threshold value based on the prediction data generated by the learning execution unit 314.
  • FIG. 6 schematically shows an example of the hardware configuration of a computer 1200 that functions as the base station device 200 or the control device 300.
  • the program installed on the computer 1200 causes the computer 1200 to function as one or more “sections” of the device according to the embodiment of the present invention, or causes the computer 1200 to perform operations associated with the device according to the embodiment of the present invention.
  • the one or more “parts” may be executed, and / or the computer 1200 may execute a process according to an embodiment of the present invention or a stage of the process.
  • Such programs may be executed by CPU 1212 to cause computer 1200 to perform certain operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.
  • the computer 1200 includes a CPU 1212, a RAM 1214, and a graphic controller 1216, which are interconnected by a host controller 1210.
  • the computer 1200 also includes an input / output unit such as a communication interface 1222, a storage device 1224, a DVD drive 1226, and an IC card drive, which are connected to the host controller 1210 via the input / output controller 1220.
  • the DVD drive 1226 may be a DVD-ROM drive, a DVD-RAM drive, or the like.
  • the storage device 1224 may be a hard disk drive, a solid state drive, or the like.
  • Computer 1200 also includes ROM 1230 and legacy input / output units such as a keyboard, which are connected to input / output controller 1220 via input / output chip 1240.
  • the CPU 1212 operates according to a program stored in the ROM 1230 and the RAM 1214 to control each unit.
  • the graphic controller 1216 obtains image data generated by the CPU 1212 in a frame buffer or the like provided in the RAM 1214 or itself, and causes the image data to be displayed on the display device 1218.
  • the communication interface 1222 communicates with other electronic devices via the network.
  • the storage device 1224 stores programs and data used by the CPU 1212 in the computer 1200.
  • the DVD drive 1226 reads a program or data from the DVD-ROM 1227 or the like and provides it to the storage device 1224.
  • the IC card drive reads programs and data from the IC card and / or writes programs and data to the IC card.
  • the ROM 1230 stores therein a boot program executed by the computer 1200 at the time of activation and / or a program depending on the hardware of the computer 1200.
  • the I / O chip 1240 may also connect various I / O units to the I / O controller 1220 via USB ports, parallel ports, serial ports, keyboard ports, mouse ports, etc.
  • the program is provided by a computer-readable storage medium such as a DVD-ROM 1227 or an IC card.
  • the program is read from the computer-readable storage medium, installed in the storage device 1224, the RAM 1214, or the ROM 1230, which is also an example of the computer-readable storage medium, and executed by the CPU 1212.
  • the information processing described in these programs is read by the computer 1200 and brings about the cooperation between the programs and the various types of hardware resources described above.
  • An apparatus or method may be configured by implementing the operation or processing of information according to the use of the computer 1200.
  • the CPU 1212 executes the communication program loaded in the RAM 1214, and performs the communication process on the communication interface 1222 based on the process described in the communication program. You may order.
  • the communication interface 1222 reads the transmission data stored in the transmission buffer area provided in the recording medium such as the RAM 1214, the storage device 1224, the DVD-ROM 1227, or the IC card under the control of the CPU 1212, and the read transmission is performed.
  • the data is transmitted to the network, or the received data received from the network is written in a reception buffer area or the like provided on the recording medium.
  • the CPU 1212 causes the RAM 1214 to read all or necessary portions of files or databases stored in an external recording medium such as a storage device 1224, a DVD drive 1226 (DVD-ROM 1227), and an IC card, and the like. May perform various types of processing on the data. CPU 1212 may then write back the processed data to an external storage medium.
  • an external recording medium such as a storage device 1224, a DVD drive 1226 (DVD-ROM 1227), and an IC card, and the like. May perform various types of processing on the data.
  • CPU 1212 may then write back the processed data to an external storage medium.
  • the CPU 1212 can retrieve various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, and information retrieval from the data read from the RAM 1214, described in various parts of this disclosure and specified by the instruction sequence of the program. Various types of processing may be performed, including / replacement, etc., and the result is written back to RAM 1214. Further, the CPU 1212 may search for information in files, databases, etc. in the recording medium. For example, when a plurality of entries each having the attribute value of the first attribute associated with the attribute value of the second attribute are stored in the recording medium, the CPU 1212 selects the first entry from the plurality of entries. Search for an entry that matches the specified attribute value of the attribute, read the attribute value of the second attribute stored in the entry, and set the first attribute that satisfies the predetermined condition as a result. The attribute value of the associated second attribute may be obtained.
  • the programs or software modules described above may be stored on a computer-readable storage medium on or near the computer 1200.
  • a recording medium such as a hard disk or a RAM provided in a server system connected to a dedicated communication network or the Internet can be used as a computer-readable storage medium, whereby the program can be stored in the computer 1200 via the network.
  • the blocks in the flowcharts and block diagrams in the present embodiment may represent a stage of a process in which an operation is executed or a “unit” of a device having a role of executing the operation.
  • Specific steps and "parts" are provided with dedicated circuits, programmable circuits provided with computer readable instructions stored on a computer readable storage medium, and / or computer readable instructions provided on a computer readable storage medium. It may be implemented by the processor.
  • Dedicated circuits may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits.
  • Programmable circuits include logical products, logical sums, exclusive logical sums, negative logical products, negative logical sums, and other logical operations, such as field programmable gate arrays (FPGAs) and programmable logic arrays (PLAs). , Reconfigurable hardware circuits, including flip-flops, registers, and memory elements.
  • FPGAs field programmable gate arrays
  • PLAs programmable logic arrays
  • Reconfigurable hardware circuits including flip-flops, registers, and memory elements.
  • Computer readable storage media may include any tangible device capable of storing instructions executed by a suitable device, such that computer readable storage media having instructions stored thereon is a flowchart or block diagram. A product will be provided that includes instructions that can be executed to create the means for performing the specified operations. Examples of computer readable storage media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, and the like. More specific examples of the computer-readable storage medium include a floppy disk, a diskette, a hard disk, a random access memory (RAM), a read only memory (ROM), and an erasable programmable read only memory (EPROM or flash memory).
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • EEPROM Electrically erasable programmable read only memory
  • SRAM static random access memory
  • CD-ROM compact disc read only memory
  • DVD digital versatile disc
  • Blu-ray registered trademark
  • Computer readable instructions include assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or object oriented programming such as Smalltalk, JAVA, C ++, etc. Language, and any source or object code written in any combination of one or more programming languages, including conventional procedural programming languages such as the "C" programming language or similar programming languages. Good.
  • Computer readable instructions are instructions for a general purpose computer, special purpose computer, or processor of another programmable data processing device, or programmable circuit, to generate the means for performing the operations specified in a flowchart or block diagram.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

飛行体に搭載され、地上に通信エリアを形成して通信エリア内のユーザ端末に無線通信サービスを提供する基地局装置であって、CPUと、CPUのCPUスタックメッセージキューの使用状況に基づいて、無線通信サービスにおける輻輳制御を実行するか否か判定する判定部と、判定部によって実行すると判定された場合に、輻輳制御を実行する輻輳制御実行部とを備える基地局装置を提供する。

Description

基地局装置、プログラム、制御装置及び制御方法
 本発明は、基地局装置、プログラム、制御装置及び制御方法に関する。
 成層圏プラットフォームを提供すべく、アンテナを有し、成層圏を飛行する飛行体が知られていた(例えば、特許文献1参照)。
 [先行技術文献]
 [特許文献]
 [特許文献1]特開2002-211496号公報
解決しようとする課題
 成層圏プラットフォームのように、多数の通信端末に対して無線通信サービスを提供する場合に、輻輳制御を適切に実行可能にする技術を提供することが望ましい。
一般的開示
 本発明の第1の態様によれば、飛行体に搭載され、地上に通信エリアを形成して通信エリア内のユーザ端末に無線通信サービスを提供する基地局装置が提供される。基地局装置は、CPUと、CPUのCPUスタックメッセージキューの使用状況に基づいて、無線通信サービスにおける輻輳制御を実行するか否か判定する判定部とを備えてよい。基地局装置は、判定部によって実行すると判定された場合に、輻輳制御を実行する輻輳制御実行部を備えてよい。
 上記判定部は、上記CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合には上記輻輳制御を実行しないと判定し、上記CPUスタックメッセージキューに保持されているメッセージの数が上記予め定められた数より多い場合には上記輻輳制御を実行すると判定してよい。上記判定部は、上記CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、上記CPUのCPU使用率に関わらず、上記輻輳制御を実行しないと判定してよい。上記判定部は、上記CPUスタックメッセージキューに保持されているメッセージの数が上記予め定められた数より多い場合において、上記CPUのCPU使用率が予め定められた第1閾値より低い場合、第1レベルの上記輻輳制御を実行すると判定し、上記CPU使用率が上記第1閾値より高い場合、上記第1レベルよりも高い第2レベルの上記輻輳制御を実行すると判定してよい。上記輻輳制御実行部は、上記判定部によって上記第1レベルの輻輳制御を実行すると判定された場合、単位時間当たりのアクセス許容数を第1の数に設定し、上記判定部によって上記第2レベルの輻輳制御を実行すると判定された場合、単位時間当たりのアクセス許容数を上記第1の数よりも少ない第2の数に設定してよい。上記輻輳制御実行部は、上記判定部によって上記第2レベルの輻輳制御を実行すると判定された場合、ユーザ端末のハンドオーバの受け入れを拒否するように設定してよい。上記輻輳制御実行部は、上記判定部によって上記第2レベルの輻輳制御を実行すると判定された場合、上記ユーザ端末から受信するMeasurement Reportを処理せずに破棄するよう制御してよい。上記判定部は、上記CPUスタックメッセージキューに保持されているメッセージの数が上記予め定められた数より多い場合において、上記CPU使用率が上記第1閾値より低い場合、上記第1レベルの輻輳制御を実行すると判定し、上記CPU使用率が上記第1閾値より高く、かつ、上記第1閾値より高い第2閾値より低い場合、上記第1レベルよりも高く、上記第2レベルよりも低い第3レベルの輻輳制御を実行すると判定し、上記CPU使用率が上記第2閾値より高い場合、上記第2レベルの輻輳制御を実行すると判定してよい。上記基地局装置は、上記予め定められた数を設定する設定部を備えてよく、上記設定部は、予め定められた条件が満たされた場合に上記予め定められた数を変更してよい。上記基地局装置は、上記通信エリアがカバーする地上エリアに関連する地上エリア関連情報を取得する情報取得部を備えてよく、上記設定部は、上記地上エリア関連情報が予め定められた条件を満たす場合に上記予め定められた数を変更してよい。上記設定部は、上記通信エリアがカバーする上記地上エリアでイベントが開催される場合に、上記予め定められた数を少なくしてよい。上記設定部は、上記通信エリアがカバーする上記地上エリアで災害が発生している場合に、上記予め定められた数を多くしてよい。上記設定部は、上記通信エリアがカバーする上記地上エリアに地上のモバイルネットワークが配置されている場合、上記予め定められた数を少なくしてよい。上記設定部は、上記飛行体に搭載されているバッテリのバッテリ残量が予め定められた閾値より少ない場合に上記予め定められた数を変更してよい。上記基地局装置は、上記基地局装置が提供する無線通信サービスにおける通信トラフィックの履歴に基づく機械学習により、上記通信トラフィックの動向を予測する予測データを生成する学習実行部を備えてよく、上記設定部は、上記予測データに基づいて上記予め定められた数を変更してよい。上記設定部は、上記予測データによって上記通信トラフィックが増加すると予測された場合、上記予め定められた数を少なくしてよい。
 本発明の第2の態様によれば、コンピュータを、上記基地局装置として機能させるためのプログラムが提供される。
 本発明の第3の態様によれば、飛行体に搭載され、地上に通信エリアを形成して通信エリア内の通信端末に無線通信サービスを提供する基地局装置を制御する制御装置が提供される。制御装置は、基地局装置のCPUのCPUスタックメッセージキューの使用状況に基づいて、無線通信サービスにおける輻輳制御を実行するか否か判定する判定部を備えてよい。制御装置は、判定部によって実行すると判定された場合に、基地局装置に輻輳制御を実行させる輻輳制御実行部を備えてよい。
 本発明の第4の態様によれば、コンピュータを、上記制御装置として機能させるためのプログラムが提供される。
 本発明の第5の態様によれば、制御方法が提供される。制御方法は、飛行体に搭載され、地上に通信エリアを形成して通信エリア内の通信端末に無線通信サービスを提供する基地局装置のCPUのCPUスタックメッセージキューの使用状況に基づいて、無線通信サービスにおける輻輳制御を実行するか否か判定する判定段階を備えてよい。制御方法は、判定段階にいて実行すると判定された場合に、輻輳制御を実行する輻輳制御実行段階を備えてよい。
 なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
飛行体100の一例を概略的に示す。 本体部102が有する基地局装置200の機能構成の一例を概略的に示す。 基地局装置200による処理の流れの一例を概略的に示す。 基地局装置200による処理の流れの一例を概略的に示す。 制御装置300の機能構成の一例を概略的に示す。 基地局装置200又は制御装置300として機能するコンピュータ1000のハードウェア構成の一例を概略的に示す。
 以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
 図1は、飛行体100の一例を概略的に示す。飛行体100は、本体部102、主翼部104、プロペラ106、スキッド108、車輪110、及び太陽電池パネル112を備える。
 本体部102は、不図示のバッテリ、飛行制御装置、及び基地局装置を有する。バッテリは、太陽電池パネル112によって発電された電力を蓄電する。飛行制御装置は、飛行体100の飛行を制御する。飛行制御装置は、例えば、バッテリに蓄電された電力を用いてプロペラ106を回転させることによって、飛行体100を飛行させる。基地局装置は、地上に通信エリア202を形成して通信エリア202内のユーザ端末30に無線通信サービスを提供するためのアンテナを備える。当該アンテナは、例えば、マルチビームアンテナであってよい。通信エリア202は、複数のサブセル204によって構成されてよい。また、通信エリア202は、単一のセルによって構成されてもよい。飛行制御装置及び基地局装置は、一体であってもよい。
 飛行体100は、例えば、成層圏を巡回して地上のユーザ端末30に無線通信サービスを提供する。飛行体100は、成層圏プラットフォームとして機能してよい。
 ユーザ端末30は、飛行体100と通信可能な通信端末であればどのような端末であってもよい。例えば、ユーザ端末30は、スマートフォン等の携帯電話である。ユーザ端末30は、タブレット端末及びPC(Personal Computer)等であってもよい。ユーザ端末30は、いわゆるIoT(Internet of Thing)デバイスであってもよい。IoTデバイスとしては、各種センサ及び各種アクチュエータ等が例示できる。ユーザ端末30は、車両、船舶及びドローン等に搭載された通信モジュールであってもよい。ユーザ端末30は、いわゆるIoE(Internet of Everything)に該当するあらゆるものを含み得る。
 飛行体100は、例えば、カバー対象の地上エリアの上空を巡回しながら、通信エリア202によって当該地上エリアをカバーする。飛行体100が地上エリアの上空を旋回することを定点飛行と記載する場合がある。また、飛行体100は、例えば、カバー対象の地上エリアの一部を通信エリア202によってカバーしながら、地上エリアの上空を移動することによって、地上エリアの全体をカバーする。
 飛行体100は、例えば、ユーザ端末30と地上のネットワーク20との通信を中継することによって、ユーザ端末30に無線通信サービスを提供する。ネットワーク20は、任意のネットワークであってよく、例えば、インターネットと、いわゆる3G(3rd Generation)、LTE(Long Term Evolution)、4G(4th Generation)及び5G(5th Generation)等の携帯電話網と、公衆無線LAN(Local Area Network)と、専用網との少なくともいずれかを含んでよい。
 飛行体100は、例えば、地上の各地に配置されたゲートウェイ22のうち、通信エリア202内のゲートウェイ22を介して地上のネットワーク20と通信する。また、飛行体100は、例えば、通信衛星50を介して地上のネットワーク20と通信する。この場合、飛行体100は、通信衛星50と通信するためのアンテナを有する。
 また、飛行体100は、他の飛行体と通信する。飛行体100は、例えば、ネットワーク20を介して、他の飛行体と通信する。また、飛行体100は、例えば、通信衛星50を介して他の飛行体と通信する。飛行体100は、他の飛行体と無線通信してもよい。飛行体100は、無線通信によって他の飛行体と直接通信してよい。この場合、飛行体100は、他の飛行体と無線通信するためのアンテナを有する。飛行体100は、例えば、当該アンテナを用いて他の飛行体との間でC2リンクを形成し、C2リンクを介して通信してよい。
 飛行体100は、地上の管理装置400によって制御されてよい。飛行体100は、例えば、管理装置400によってネットワーク20及びゲートウェイ22を介して送信された指示に従って飛行したり、通信エリア202を形成したりする。管理装置400は、通信衛星50を介して飛行体100に指示を送信してもよい。
 管理装置400は、指示を送信することによって飛行体100を制御する。管理装置400は、通信エリア202によって地上の対象エリアをカバーさせるべく、飛行体100に、対象エリアの上空を飛行させてよい。管理装置400は、複数の対象エリアのそれぞれに対して、飛行体100を飛行させることにより、複数の対象エリアのそれぞれをカバーさせてよい。
 管理装置400は、飛行体100が通信エリア202によってカバーする地上エリアに関連する地上エリア関連情報を管理してよい。地上エリア関連情報は、例えば、地上エリアにおける、多数の人が集まり得るコンサート等のイベントの開催状況を含む。地上エリア関連情報は、地上エリアにおける災害の発生状況を含んでよい。地上エリア関連情報は、地上エリアにおける地上のモバイルネットワークの配置状況を含んでよい。管理装置400は、地上エリア関連情報を飛行体100に送信してよい。
 従来の地上におけるモバイルネットワークでは、無線基地局のCAPS(Call Attempt Per Second)輻輳制御の判断基準には、無線基地局のCPU(Central Processing Unit)のCPU使用率が用いられていた。しかし、本実施形態に係る飛行体100のように、上空から通信エリア202を形成する場合、地上のモバイルネットワークと比較して、エリアカバレッジが極めて広域となるので、収容するユーザ端末30の数が多く、さらには、カバレッジエリア(フットプリント)のゆらぎによって、隣接エリアとの境界部でユーザ同時接続(ハンドオーバ)が多発しやすい。そのため、より最適な輻輳制御のためには、同時接続数の変動も考慮した輻輳制御が必要となるが、従来のCPU使用率だけでは判断が困難である。
 それに対して、本実施形態に係る飛行体100は、CPUスタックメッセージキューの使用状況に基づいて、通信エリア202による無線通信サービスにおけるCAPS輻輳制御を実行するか否かを判定する。飛行体100は、例えば、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、CPU使用率に関わらず、輻輳制御を実行しない。
 基地局装置の処理の中で処理負荷がより重いのは、ユーザ端末30との接続処理である。したがって、ユーザ端末30との接続処理を実行している間は、CPU使用率が高まる傾向にある。例えば、CPUスタックメッセージキューが空の状態で、ユーザ端末30との接続処理を開始した場合、CPUスタックメッセージキューには余裕があるにもかかわらず、CPU使用率が高い状態になる。従来のように、CPU使用率のみに基づいて輻輳制御を実行するか否か判定する構成とした場合、この状態では、輻輳制御が実行されてしまう。そのため、CPUスタックメッセージキューに余裕があるにもかかわらず、ユーザ端末30が飛行体100と通信接続を確立できない事態が発生し得る。
 それに対して、本実施形態に係る飛行体100によれば、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少なければ、CPU使用率が高くても、輻輳制御を実行しないようにできる。これにより、上述したような事態の発生を抑制することができる。
 また、本実施形態に係る飛行体100によれば、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合において、CPU使用率が予め定められた閾値より低い場合、第1レベルの輻輳制御を実行し、当該閾値より高い場合、第1レベルよりも高い第2レベルの輻輳制御を実行する。これにより、CPU使用率に応じた適切な輻輳制御を実行することができる。
 図2は、本体部102が有する基地局装置200の機能構成の一例を概略的に示す。基地局装置200は、通信処理部252、使用率取得部254、使用状況取得部256、判定部258、輻輳制御実行部260、情報取得部262、設定部264、及び学習実行部266を備える。なお、基地局装置200がこれらのすべての構成を備えることは必須とは限らない。
 通信処理部252は、各種通信処理を実行する。通信処理部252は、アンテナ240を用いて地上に通信エリア202を形成する。通信処理部252は、通信エリア202内のゲートウェイ22を介してネットワーク20と通信する。通信処理部252は、例えば、ゲートウェイ22及びネットワーク20を介して管理装置400と通信する。また、通信処理部252は、通信エリア202内のユーザ端末30と通信する。通信処理部252は、通信エリア202内のユーザ端末30の通信を中継する。飛行体100が通信衛星50と通信するためのアンテナを有する場合、当該アンテナを用いて通信衛星50と通信してよい。
 使用率取得部254は、基地局装置200のCPUのCPU使用率を取得する。使用率取得部254は、例えば、基地局装置200のOS(Operating System)からCPU使用率を取得する。
 使用状況取得部256は、基地局装置200のCPUのCPUスタックメッセージキューの使用状況を取得する。CPUスタックメッセージキューの使用状況は、CPUスタックメッセージキューに保持されているメッセージの数を示してよい。また、CPUスタックメッセージキューの使用状況は、CPUスタックメッセージキューの使用率を示してよい。使用状況取得部256は、例えば、基地局装置200のOSから、CPUスタックメッセージキューの使用状況を取得する。
 判定部258は、使用状況取得部256が取得したCPUスタックメッセージキューの使用状況に基づいて、通信処理部252がユーザ端末30に対して提供している無線通信サービスにおける輻輳制御を実行するか否かを判定する。
 判定部258は、例えば、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、輻輳制御を実行しないと判定し、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合、輻輳制御を実行すると判定する。判定部258は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、CPU使用率に関わらず、輻輳制御を実行しないと判定してよい。判定部258は、使用率取得部254が、CPUスタックメッセージキューの使用率を取得した場合、当該使用率が予め定められた値よりも多いか否かを判定することによって、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多いか否かを判定してよい。
 判定部258は、使用率取得部254が取得したCPU使用率に基づいて、輻輳制御の実行レベルを判定してよい。例えば、判定部258は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合において、CPU使用率が予め定められた第1閾値より低い場合、第1レベルの輻輳制御を実行すると判定し、CPU使用率が前記第1閾値より高い場合、第1レベルよりも高い第2レベルの輻輳制御を実行すると判定する。第1閾値は、任意に設定可能であってよく、また、変更可能であってよい。
 判定部258は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合において、CPU使用率が第1閾値より低い場合、第1レベルの輻輳制御を実行すると判定し、CPU使用率が第1閾値より高く、かつ、第1閾値より高い第2閾値より低い場合、第1レベルよりも高く、第2レベルよりも低い第3レベルの輻輳制御を実行すると判定し、CPU使用率が第2閾値より高い場合、第2レベルの輻輳制御を実行すると判定してよい。第1閾値及び第2閾値は、第2閾値が第1閾値より高ければ、任意に設定可能であってよく、また、変更可能であってよい。
 輻輳制御実行部260は、判定部258によって輻輳制御を実行すると判定された場合に、輻輳制御を実行する。輻輳制御実行部260は、例えば、判定部258によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合とで、CAPS値を異なる値に設定して、輻輳制御を実行する。CAPS値は、単位時間当たりの接続許容数であってよい。
 例えば、輻輳制御実行部260は、判定部258によって第1レベルの輻輳制御を実行すると判定された場合、単位時間当たりの接続許容数を第1の数に設定し、判定部258によって第2レベルの輻輳制御を実行すると判定された場合、単位時間当たりの接続許容数を第1の数よりも少ない第2の数に設定する。具体例として、輻輳制御実行部260は、輻輳制御を実行しない場合のCAPS値が100アクセス/秒である場合に、第1レベルの輻輳制御におけるCAPS値を30アクセス/秒とし、第2レベルの輻輳制御におけるCAPS値を1アクセス/秒とする。すなわち、第1の数を30とし、第2の数を1とする。第1の数及び第2の数は、輻輳制御を実行しない場合の単位時間当たりのアクセス許容数より少なく、かつ、第2の数が第1の数よりも少なければ、どのような数が設定されてもよい。
 輻輳制御実行部260は、判定部258によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合とで、制御内容を異ならせてもよい。例えば、第1レベルの輻輳制御ではCAPS値の調整のみを行い、第2レベルの輻輳制御では、HO-IN Rejection及びMeasurements Reports discardedの少なくともいずれかを行う。また、第2レベルの輻輳制御では、CAPS値の調整と、HO-IN Rejection及びMeasurements Reports discardedの少なくともいずれかとを行ってもよい。HO-IN Rejectionは、ユーザ端末30のハンドオーバの受け入れを拒否することであってよい。Measurements Reports discardedは、ユーザ端末30から受信するMeasurement Reportを処理せずに破棄することであってよい。
 このような構成とすることにより、輻輳制御を実行するに当たり、CPU使用率が閾値より低い場合には、CAPS値の調整のみに留めることによって、必要以上にユーザ端末30の接続を拒否してしまわないようにでき、CPU使用率が閾値を超えた場合には、CAPS値をより少なくしたり、HO-IN Rejection及びMeasurements Reports discardedの少なくともいずれかを行ったりすることによって、基地局装置200に過度な負荷がかかってしまうことを防止できる。
 輻輳制御実行部260は、例えば、判定部258によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合と、第3レベルの輻輳制御を実行すると判定された場合とで、CAPS値を異なる値に設定して、輻輳制御を実行してよい。例えば、輻輳制御実行部260は、判定部258によって第1レベルの輻輳制御を実行すると判定された場合、単位時間当たりの接続許容数を第1の数に設定し、第2レベルの輻輳制御を実行すると判定された場合、単位時間当たりの接続許容数を第1の数よりも少ない第2の数に設定し、第3レベルの輻輳制御を実行すると判定された場合、単位時間当たりの接続許容数を第1の数と第2の数との間の数に設定する。
 輻輳制御実行部260は、判定部258によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合と、第3レベルの輻輳制御を実行すると判定された場合とで、制御内容を異ならせてもよい。例えば、第1レベルの輻輳制御では単位時間当たりの接続許容数を第1の数に設定し、第3レベルの輻輳制御では単位時間当たりの接続許容数を第1の数よりも少ない第2の数に設定し、第2レベルの輻輳制御では、単位時間当たりの接続許容数を第2の数に設定しつつ、HO-IN Rejection及びMeasurements Reports discardedの少なくともいずれかを実行する。
 情報取得部262は、各種情報を取得する。情報取得部262は、飛行体100が提供している無線通信サービスにおける通信トラフィックの履歴を取得してよい。情報取得部262は、通信処理部252から当該履歴を取得してよい。
 また、情報取得部262は、例えば、飛行体100が通信エリア202によってカバーしている地上エリアに関連する地上エリア関連情報を取得する。情報取得部262は、管理装置400から地上エリア関連情報を取得してよい。また、情報取得部262は、例えば、飛行体100が搭載するバッテリのバッテリ残量を取得する。
 設定部264は、使用状況取得部256が取得するCPUスタックメッセージキューに保持されているメッセージの数と比較するための数(メッセージ閾値と記載する場合がある。)を設定する。また、設定部264は、使用率取得部254が取得するCPU使用率と比較するための閾値(使用率閾値と記載する場合がある。)を設定する。設定部264は、飛行体100及び基地局装置200の少なくともいずれかの管理者による指示に従って、メッセージ閾値及び使用率閾値を設定してよい。
 また、設定部264は、情報取得部262が取得する情報に基づいて、使用率閾値を設定してよい。設定部264は、例えば、情報取得部262が取得する情報が予め定められた条件を満たす場合に、使用率閾値を変更する。設定部264は、情報取得部262が取得する情報に基づいて、メッセージ閾値を設定してよい。設定部264は、例えば、情報取得部262が取得する情報が予め定められた条件を満たす場合に、メッセージ閾値を変更する。
 設定部264は、例えば、情報取得部262が取得する地上エリア関連情報が予め定められた条件を満たす場合に、メッセージ閾値を変更する。具体例として、設定部264は、通信エリア202がカバーする地上エリアでイベントが開催される場合に、メッセージ閾値を低くする。これにより、イベントによって接続要求が多発することが予想される状況において、輻輳制御をより早く実行するように予め設定することができる。
 また、設定部264は、通信エリア202がカバーする地上エリアで災害が発生している場合に、メッセージ閾値を高くする。これにより、輻輳制御を実行しにくくして、極力多くのユーザ端末30が飛行体100と通信接続を確立できるようにすることができる。
 また、設定部264は、通信エリア202がカバーする地上エリアに地上のモバイルネットワークが配置されている場合、メッセージ閾値を低くする。これにより、輻輳制御をより早く実行することによって、地上のモバイルネットワークに積極的に補完させることができる。
 設定部264は、飛行体100が搭載するバッテリのバッテリ残量が予め定められた閾値より少ない場合、メッセージ閾値を低くする。これにより、輻輳制御をより早く実行するようにして、基地局装置200の処理負荷を低減することにより、バッテリ消費量を低減させることができる。
 学習実行部266は、情報取得部262が取得する通信トラフィックの履歴に基づく機械学習により、通信トラフィックの動向を予測する予測データを生成する。学習実行部266は、例えば、季節毎、時間毎、場所毎に通信トラフィックの履歴を分析し、機械学習することによって、季節毎、時間毎、場所毎の通信トラフィックの動向を予測する予測データを生成してよい。
 設定部264は、学習実行部266によって生成された予測データに基づいてメッセージ閾値及び使用率閾値の少なくともいずれかを設定してよい。例えば、設定部264は、予測データによって通信トラフィックが増加すると予測された場合、メッセージ閾値を低くする。これにより、接続要求が多発することが予想される状況において、輻輳制御をより早く実行するように予め設定することができる。
 設定部264によって設定されたメッセージ閾値及び使用率閾値は、他の飛行体100に送信されてもよい。例えば、通信処理部252は、通信処理部252が搭載されている飛行体100が、第1の地上エリアをカバーしており、第1の地上エリアのカバーを他の飛行体100と交代する場合に、当該他の飛行体100にメッセージ閾値及び使用率閾値を送信する。これにより、第1の地上エリアに適したメッセージ閾値及び使用率閾値を、交代する他の飛行体100に引き継ぐことができる。
 図3は、基地局装置200による処理の流れの一例を概略的に示す。ここでは、使用率取得部254が周期的にCPU使用率を取得し、使用状況取得部256が周期的にCPUスタックメッセージキューに保持されているメッセージの数(MsgQと記載する場合がある。)を取得している状況における、判定部258及び輻輳制御実行部260による処理の流れを説明する。
 ステップ(ステップをSと省略して記載する場合がある。)102では、MsgQがメッセージ閾値より多いか否かを、判定部258が判定する。多いと判定された場合、S104に進む。
 S104では、CPU使用率が使用率閾値より高いか否かを、判定部258が判定する。高いと判定された場合、S106に進み、低いと判定された場合、S108に進む。
 S106では、輻輳制御実行部260が、第2レベルの輻輳制御を実行するよう制御する。S108では、輻輳制御実行部260が、第2レベルよりも低い第1レベルの輻輳制御を実行するよう制御する。
 S110では、MsgQがメッセージ閾値より少ないか否かを、判定部258が判定する。少なくないと判定した場合、S104に戻り、少ないと判定した場合、S112に進む。
 S112では、輻輳制御実行部260が輻輳制御を停止する。S114では、判定部258が、終了指示を受領したか否かを判定する。受領していないと判定した場合、S102に戻り、受領したと判定した場合、処理を終了する。
 図4は、基地局装置200による処理の流れの一例を概略的に示す。ここでは、基地局装置200内のOS210と、Controlプレン220と、Userプレン230との間の処理の流れを示す。
 S202では、OS210が、CPU使用率及びMsgQ使用状況をControlプレン220に通知する。S204では、Controlプレン220が、輻輳制御を実行するか否かを判定し、輻輳制御を実行すると判定した場合、制御内容をUserプレン230に通知する。
 S206では、OS210が、予め設定された周期に従って、CPU使用率及びMsgQ使用状況をControlプレン220に通知する。このような流れに従って、基地局装置200は、輻輳制御を実行する。
 上記実施形態では、CPUスタックメッセージキューの使用状況及びCPU使用率に基づく輻輳制御を基地局装置200が主体的に行う場合を例に挙げて説明したが、これに限らない。飛行体100に搭載された、飛行制御装置等の基地局装置200以外の制御装置によって、基地局装置200の輻輳制御が管理されてもよい。
 図5は、基地局装置200の輻輳制御を行う制御装置300の機能構成の一例を概略的に示す。図5に示す構成は、飛行制御装置の一部であってよい。また、図5に示す制御装置300は、飛行制御装置とは別に飛行体100に搭載されてもよい。
 制御装置300は、使用率取得部302、使用状況取得部304、判定部306、輻輳制御実行部308、情報取得部310、設定部312、及び学習実行部314を備える。ここでは、使用率取得部254、使用状況取得部256、判定部258、輻輳制御実行部260、情報取得部262、設定部264、及び学習実行部266と異なる点を主に説明する。
 使用率取得部302は、基地局装置200のCPUのCPU使用率を取得する。使用率取得部302は、例えば、基地局装置200のOS(Operating System)からCPU使用率を受信する。
 使用状況取得部304は、基地局装置200のCPUのCPUスタックメッセージキューの使用状況を取得する。使用状況取得部304は、例えば、基地局装置200のOSから、CPUスタックメッセージキューの使用状況を受信する。
 判定部306は、使用状況取得部304が取得したCPUスタックメッセージキューの使用状況に基づいて、基地局装置200がユーザ端末30に対して提供している無線通信サービスにおける輻輳制御を実行するか否かを判定する。
 判定部306は、例えば、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、輻輳制御を実行しないと判定し、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合、輻輳制御を実行すると判定する。判定部306は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、CPU使用率に関わらず、輻輳制御を実行しないと判定してよい。判定部306は、使用状況取得部304が、CPUスタックメッセージキューの使用率を取得した場合、当該使用率が予め定められた値よりも多いか否かを判定することによって、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多いか否かを判定してよい。
 判定部306は、使用率取得部302が取得したCPU使用率に基づいて、輻輳制御の実行レベルを判定してよい。例えば、判定部306は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合において、CPU使用率が予め定められた第1閾値より低い場合、第1レベルの輻輳制御を実行すると判定し、CPU使用率が前記第1閾値より高い場合、第1レベルよりも高い第2レベルの輻輳制御を実行すると判定する。第1閾値は、任意に設定可能であってよく、また、変更可能であってよい。
 判定部306は、CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より多い場合において、CPU使用率が第1閾値より低い場合、第1レベルの輻輳制御を実行すると判定し、CPU使用率が第1閾値より高く、かつ、第1閾値より高い第2閾値より低い場合、第1レベルよりも高く、第2レベルよりも低い第3レベルの輻輳制御を実行すると判定し、CPU使用率が第2閾値より高い場合、第2レベルの輻輳制御を実行すると判定してよい。第1閾値及び第2閾値は、第2閾値が第1閾値より高ければ、任意に設定可能であってよく、また、変更可能であってよい。
 輻輳制御実行部308は、判定部306によって輻輳制御を実行すると判定された場合に、基地局装置200に輻輳制御を実行させる。輻輳制御実行部308は、例えば、判定部306によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合とで、CAPS値を異なる値に設定して、輻輳制御を基地局装置200に実行させる。輻輳制御実行部308は、判定部306によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合とで、制御内容を異ならせてもよい。
 輻輳制御実行部308は、例えば、判定部306によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合と、第3レベルの輻輳制御を実行すると判定された場合とで、CAPS値を異なる値に設定して、輻輳制御を実行してよい。輻輳制御実行部308は、判定部306によって第1レベルの輻輳制御を実行すると判定された場合と、第2レベルの輻輳制御を実行すると判定された場合と、第3レベルの輻輳制御を実行すると判定された場合とで、制御内容を異ならせてもよい。
 情報取得部310は、各種情報を取得する。情報取得部310は、飛行体100が提供している無線通信サービスにおける通信トラフィックの履歴を取得してよい。情報取得部310は、基地局装置200から当該履歴を取得してよい。また、情報取得部310は、例えば、飛行体100が通信エリア202によってカバーしている地上エリアに関連する地上エリア関連情報を取得する。情報取得部310は、管理装置400から地上エリア関連情報を取得してよい。また、情報取得部310は、例えば、飛行体100が搭載するバッテリのバッテリ残量を取得する。情報取得部310は、飛行体100から、バッテリ残量を受信してよい。
 設定部312は、メッセージ閾値を設定する。また、設定部312は、使用率閾値を設定する。設定部312は、情報取得部310が取得する情報に基づいて、使用率閾値を設定してよい。設定部312は、例えば、情報取得部310が取得する情報が予め定められた条件を満たす場合に、使用率閾値を変更する。設定部312は、情報取得部310が取得する情報に基づいて、メッセージ閾値を設定してよい。設定部312は、例えば、情報取得部310が取得する情報が予め定められた条件を満たす場合に、メッセージ閾値を変更する。
 学習実行部314は、情報取得部310が取得する通信トラフィックの履歴に基づく機械学習により、通信トラフィックの動向を予測する予測データを生成する。設定部312は、学習実行部314によって生成された予測データに基づいてメッセージ閾値及び使用率閾値の少なくともいずれかを設定してよい。
 図6は、基地局装置200又は制御装置300として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本発明の実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本発明の実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本発明の実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
 本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ1226、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブ1226は、DVD-ROMドライブ及びDVD-RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのようなレガシの入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
 CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
 通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブ1226は、プログラム又はデータをDVD-ROM1227等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
 ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。
 プログラムは、DVD-ROM1227又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
 例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD-ROM1227、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
 また、CPU1212は、記憶装置1224、DVDドライブ1226(DVD-ROM1227)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
 様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
 上で説明したプログラム又はソフトウェアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
 本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
 コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
 コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでよい。
 コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
 以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
 請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
20 ネットワーク、22 ゲートウェイ、30 ユーザ端末、50 通信衛星、100 飛行体、102 本体部、104 主翼部、106 プロペラ、108 スキッド、110 車輪、112 太陽電池パネル、200 基地局装置、202 通信エリア、204 サブセル、220 Controlプレン、230 Userプレン、252 通信処理部、254 使用率取得部、256 使用状況取得部、258 判定部、260 輻輳制御実行部、262 情報取得部、264 設定部、266 学習実行部、300 制御装置、302 使用率取得部、304 使用状況取得部、306 判定部、308 輻輳制御実行部、310 情報取得部、312 設定部、314 学習実行部、400 管理装置、1200 コンピュータ、1210 ホストコントローラ、1212 CPU、1214 RAM、1216 グラフィックコントローラ、1218 ディスプレイデバイス、1220 入出力コントローラ、1222 通信インタフェース、1224 記憶装置、1226 DVDドライブ、1227 DVD-ROM、1230 ROM、1240 入出力チップ

Claims (16)

  1.  飛行体に搭載され、地上に通信エリアを形成して前記通信エリア内のユーザ端末に無線通信サービスを提供する基地局装置であって、
     CPUと、
     前記CPUのCPUスタックメッセージキューの使用状況に基づいて、前記無線通信サービスにおける輻輳制御を実行するか否か判定する判定部と、
     前記判定部によって実行すると判定された場合に、前記輻輳制御を実行する輻輳制御実行部と
     を備える基地局装置。
  2.  前記判定部は、前記CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合には前記輻輳制御を実行しないと判定し、前記CPUスタックメッセージキューに保持されているメッセージの数が前記予め定められた数より多い場合には前記輻輳制御を実行すると判定する、請求項1に記載の基地局装置。
  3.  前記判定部は、前記CPUスタックメッセージキューに保持されているメッセージの数が予め定められた数より少ない場合、前記CPUのCPU使用率に関わらず、前記輻輳制御を実行しないと判定する、請求項2に記載の基地局装置。
  4.  前記判定部は、前記CPUスタックメッセージキューに保持されているメッセージの数が前記予め定められた数より多い場合において、前記CPUのCPU使用率が予め定められた第1閾値より低い場合、第1レベルの前記輻輳制御を実行すると判定し、前記CPU使用率が前記第1閾値より高い場合、前記第1レベルよりも高い第2レベルの前記輻輳制御を実行すると判定する、請求項2又は3に記載の基地局装置。
  5.  前記輻輳制御実行部は、前記判定部によって前記第1レベルの輻輳制御を実行すると判定された場合、単位時間当たりのアクセス許容数を第1の数に設定し、前記判定部によって前記第2レベルの輻輳制御を実行すると判定された場合、単位時間当たりのアクセス許容数を前記第1の数よりも少ない第2の数に設定する、請求項4に記載の基地局装置。
  6.  前記輻輳制御実行部は、前記判定部によって前記第2レベルの輻輳制御を実行すると判定された場合、ユーザ端末のハンドオーバの受け入れを拒否するように設定する、請求項5に記載の基地局装置。
  7.  前記輻輳制御実行部は、前記判定部によって前記第2レベルの輻輳制御を実行すると判定された場合、前記ユーザ端末から受信するMeasurement Reportを処理せずに破棄するよう制御する、請求項5又は6に記載の基地局装置。
  8.  前記判定部は、前記CPUスタックメッセージキューに保持されているメッセージの数が前記予め定められた数より多い場合において、前記CPU使用率が前記第1閾値より低い場合、前記第1レベルの輻輳制御を実行すると判定し、前記CPU使用率が前記第1閾値より高く、かつ、前記第1閾値より高い第2閾値より低い場合、前記第1レベルよりも高く、前記第2レベルよりも低い第3レベルの輻輳制御を実行すると判定し、前記CPU使用率が前記第2閾値より高い場合、前記第2レベルの輻輳制御を実行すると判定する、請求項4に記載の基地局装置。
  9.  前記予め定められた数を設定する設定部
     を備え、
     前記設定部は、予め定められた条件が満たされた場合に前記予め定められた数を変更する、請求項2から8のいずれか一項に記載の基地局装置。
  10.  前記通信エリアがカバーする地上エリアに関連する地上エリア関連情報を取得する情報取得部
     を備え、
     前記設定部は、前記地上エリア関連情報が予め定められた条件を満たす場合に前記予め定められた数を変更する、請求項9に記載の基地局装置。
  11.  前記設定部は、前記飛行体に搭載されているバッテリのバッテリ残量が予め定められた閾値より少ない場合に前記予め定められた数を変更する、請求項9又は10に記載の基地局装置。
  12.  前記基地局装置が提供する無線通信サービスにおける通信トラフィックの履歴に基づく機械学習により、前記通信トラフィックの動向を予測する予測データを生成する学習実行部
     を備え、
     前記設定部は、前記予測データに基づいて前記予め定められた数を変更する、請求項9から11のいずれか一項に記載の基地局装置。
  13.  コンピュータを、請求項1から12のいずれか一項に記載の基地局装置として機能させるためのプログラム。
  14.  飛行体に搭載され、地上に通信エリアを形成して前記通信エリア内の通信端末に無線通信サービスを提供する基地局装置を制御する制御装置であって、
     前記基地局装置のCPUのCPUスタックメッセージキューの使用状況に基づいて、前記無線通信サービスにおける輻輳制御を実行するか否か判定する判定部と、
     前記判定部によって実行すると判定された場合に、前記基地局装置に前記輻輳制御を実行させる輻輳制御実行部と
     を備える制御装置。
  15.  コンピュータを、請求項14に記載の制御装置として機能させるためのプログラム。
  16.  飛行体に搭載され、地上に通信エリアを形成して前記通信エリア内の通信端末に無線通信サービスを提供する基地局装置のCPUのCPUスタックメッセージキューの使用状況に基づいて、前記無線通信サービスにおける輻輳制御を実行するか否か判定する判定段階と、
     前記判定段階にいて実行すると判定された場合に、前記輻輳制御を実行する輻輳制御実行段階と
     を備える制御方法。
PCT/JP2019/031745 2018-10-18 2019-08-09 基地局装置、プログラム、制御装置及び制御方法 WO2020079936A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP19873060.8A EP3846541B1 (en) 2018-10-18 2019-08-09 Base station device, program, control device, and control method
US17/211,885 US11218905B2 (en) 2018-10-18 2021-03-25 Base station device, program, control device and control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018196551A JP7250472B2 (ja) 2018-10-18 2018-10-18 基地局装置、プログラム、制御装置及び制御方法
JP2018-196551 2018-10-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/211,885 Continuation US11218905B2 (en) 2018-10-18 2021-03-25 Base station device, program, control device and control method

Publications (1)

Publication Number Publication Date
WO2020079936A1 true WO2020079936A1 (ja) 2020-04-23

Family

ID=70283061

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/031745 WO2020079936A1 (ja) 2018-10-18 2019-08-09 基地局装置、プログラム、制御装置及び制御方法

Country Status (4)

Country Link
US (1) US11218905B2 (ja)
EP (1) EP3846541B1 (ja)
JP (1) JP7250472B2 (ja)
WO (1) WO2020079936A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021240980A1 (ja) * 2020-05-28 2021-12-02 Hapsモバイル株式会社 制御装置、システム、プログラム及び制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07298340A (ja) * 1994-03-02 1995-11-10 Fujitsu Ltd 移動通信システムおよび移動局
JP2002211496A (ja) 2001-01-17 2002-07-31 Honda Motor Co Ltd 成層圏プラットフォーム
JP2015103845A (ja) * 2013-11-21 2015-06-04 国立研究開発法人情報通信研究機構 無線通信システムにおける輻輳制御方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000358068A (ja) 1999-06-15 2000-12-26 Nec Corp インテリジェントネットワークの輻輳制御システム
US7092358B2 (en) * 2003-10-24 2006-08-15 Nokia Corporation System and method for facilitating flexible quality of service
US8824296B2 (en) * 2011-12-13 2014-09-02 Telefonaktiebolaget L M Ericsson (Publ) Handling congestion in a queue without discarding new messages received from a message sender
CN105940718B (zh) * 2014-01-22 2019-09-03 Lg电子株式会社 在无线接入系统中针对mo-sms的自适应限制控制的方法和设备
JP5876542B1 (ja) * 2014-07-28 2016-03-02 株式会社Nttドコモ 通信制御装置、通信制御システム及び通信制御方法
DE102015219785A1 (de) 2015-10-13 2017-04-13 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zur Konfiguration einer Datenübertragung über einen Übertragungskanal eines drahtlosen Kommunikationssystems mit dezentraler Überlastregelung
US9918234B2 (en) * 2016-03-07 2018-03-13 At&T Intellectual Property I, L.P. Supplementing network coverage with a fleet of autonomous drones
US10715442B2 (en) * 2016-08-23 2020-07-14 Netduma Software, LTD. Congestion control
US10523684B2 (en) * 2017-10-02 2019-12-31 Higher Ground Llc Forward path congestion mitigation for satellite communications
US10404358B2 (en) * 2017-10-02 2019-09-03 Higher Ground Llc Return path congestion mitigation for satellite communications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07298340A (ja) * 1994-03-02 1995-11-10 Fujitsu Ltd 移動通信システムおよび移動局
JP2002211496A (ja) 2001-01-17 2002-07-31 Honda Motor Co Ltd 成層圏プラットフォーム
JP2015103845A (ja) * 2013-11-21 2015-06-04 国立研究開発法人情報通信研究機構 無線通信システムにおける輻輳制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3846541A4

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021240980A1 (ja) * 2020-05-28 2021-12-02 Hapsモバイル株式会社 制御装置、システム、プログラム及び制御方法
JP2021190797A (ja) * 2020-05-28 2021-12-13 Hapsモバイル株式会社 制御装置、システム、プログラム及び制御方法
JP7121773B2 (ja) 2020-05-28 2022-08-18 Hapsモバイル株式会社 制御装置、システム、プログラム及び制御方法

Also Published As

Publication number Publication date
EP3846541A1 (en) 2021-07-07
JP7250472B2 (ja) 2023-04-03
EP3846541B1 (en) 2023-06-07
JP2020065192A (ja) 2020-04-23
US11218905B2 (en) 2022-01-04
US20210211929A1 (en) 2021-07-08
EP3846541C0 (en) 2023-06-07
EP3846541A4 (en) 2021-11-24

Similar Documents

Publication Publication Date Title
WO2020202743A1 (ja) 通信制御装置、通信システム、プログラム、及び通信制御方法
WO2020195107A1 (ja) 無線通信装置、システム、プログラム、及び制御方法
JP7019091B1 (ja) 制御装置、プログラム、システム、及び制御方法
US20230075260A1 (en) Control device, system, computer-readable storage medium, and control method
WO2020079936A1 (ja) 基地局装置、プログラム、制御装置及び制御方法
US11277196B2 (en) Base station device, program, control device, and control method
WO2022138391A1 (ja) 飛行体、通信管理システム、制御システム、及び制御方法
JP7289417B1 (ja) 制御装置、プログラム、及び飛行体
US20220232397A1 (en) Control apparatus, computer readable storage medium, control method, and flying object
US20230353231A1 (en) Control device, program, system, and control method
WO2022153922A1 (ja) 制御装置、プログラム、システム及び制御方法
WO2021084854A1 (ja) 基地局装置、システム、プログラム、飛行体、方法、管理装置、及び管理方法
US20220092867A1 (en) Arrangement determination apparatus, non-transitory computer-readable storage medium having stored thereon program, and arrangement determination method
US20230337195A1 (en) Base station apparatus, computer-readable storage medium, system, and control method
US11924586B2 (en) Control device, program, system, and method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19873060

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019873060

Country of ref document: EP

Effective date: 20210331

NENP Non-entry into the national phase

Ref country code: DE