WO2023218663A1 - 実行基盤決定システム及び実行基盤決定方法 - Google Patents

実行基盤決定システム及び実行基盤決定方法 Download PDF

Info

Publication number
WO2023218663A1
WO2023218663A1 PCT/JP2022/020272 JP2022020272W WO2023218663A1 WO 2023218663 A1 WO2023218663 A1 WO 2023218663A1 JP 2022020272 W JP2022020272 W JP 2022020272W WO 2023218663 A1 WO2023218663 A1 WO 2023218663A1
Authority
WO
WIPO (PCT)
Prior art keywords
execution platform
execution
value
application
data
Prior art date
Application number
PCT/JP2022/020272
Other languages
English (en)
French (fr)
Inventor
真也 北
Original Assignee
楽天モバイル株式会社
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 楽天モバイル株式会社 filed Critical 楽天モバイル株式会社
Priority to PCT/JP2022/020272 priority Critical patent/WO2023218663A1/ja
Publication of WO2023218663A1 publication Critical patent/WO2023218663A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Definitions

  • the present invention relates to an execution platform determination system and an execution platform determination method.
  • Patent Document 1 discloses that a product order purchased by a customer is broken down into VNF (Virtualized Network Function) units, and NFVI (Network Functions Virtualization Infrastructure) The technology to be deployed is described above.
  • VNF Virtualized Network Function
  • NFVI Network Functions Virtualization Infrastructure
  • Patent Document 1 When building an application as described in Patent Document 1, it is common for applications to be built on execution platforms in a round-robin manner.
  • the present invention has been made in view of the above circumstances, and one of its purposes is to provide an execution platform determination system and an execution platform determination method that can effectively utilize the resources of the execution platform on which applications are built. be.
  • the execution platform determination system provides a performance value that specifies the actual value of resource usage on each execution platform for each of a plurality of execution platforms on which an application to be added can be executed. and for each of the plurality of execution platforms, specifying a predicted value of the resource usage status on the execution platform when the application is built on the execution platform, based on the actual value related to the execution platform.
  • a predicted value specifying means for determining, based on the predicted value, the degree of leveling of resource usage on each of the plurality of execution platforms when the application is built on the execution platform;
  • a leveling index value specifying means for specifying a leveling index value indicating at least one of the degrees of leveling of the resource usage status among the plurality of execution platforms, and based on the leveling index value,
  • Execution platform determining means for determining an execution platform on which the application is built from among the plurality of execution platforms.
  • the actual value identifying means identifies a total of actual values of the resource usage status of each of the applications executed on the execution platform as the actual value of the resource usage status on the execution platform. do.
  • the predicted value specifying means specifies the predicted value based on the actual value of the resource usage status of an currently running application of the same type as the application scheduled to be added.
  • the predicted value specifying means specifies the predicted value for each period type, and the leveling index value specifying means determines the leveled value based on the predicted value for each period type. Identify the index value.
  • the leveling index value specifying means specifies the leveling index value indicating a variation in the predicted value for each period type on the execution platform when the application is built on the execution platform
  • the execution platform determining means may determine the execution platform on which the application is built based on the smallness of variation indicated by the leveling index value.
  • the leveling index value specifying means may include the leveling index indicating a difference between a maximum value and a minimum value of the predicted value for each period type in the execution platform when the application is built on the execution platform.
  • the execution platform determining means may determine the execution platform on which the application is built based on the smallness of the difference indicated by the leveling index value.
  • the leveling index value specifying means determines, for each of the plurality of execution platforms, how the resources between the plurality of execution platforms are determined when the application is placed on the execution platform.
  • the leveling index value indicating the variation in the predicted value of the usage status is specified, and the execution platform determining means determines the execution platform on which the application is built based on the smallness of the variation indicated by the leveling index value. do.
  • the leveling index value specifying means determines, for each of the plurality of execution platforms, resource usage on each of the plurality of execution platforms when the application is placed on the execution platform.
  • the leveling index value indicating the total absolute value of the difference between the predicted value of the situation and the predetermined value is specified, and the execution base determining means determines the leveling index value based on the smallness of the total absolute value of the difference indicated by the leveling index value. Based on this, the execution infrastructure on which the application is built is determined.
  • one aspect of the present invention further includes a construction unit for constructing the application on the determined execution platform.
  • the execution platform is a Kubernetes cluster.
  • the application is an application included in a communication system.
  • the application may be a network function.
  • the resource usage status is at least one of CPU usage status, memory usage status, storage usage status, network usage status, or power usage status. be.
  • the execution platform determination method includes the steps of: specifying, for each of a plurality of execution platforms on which an application to be added can be executed, the actual value of resource usage on the execution platform; a step of identifying a predicted value of the resource usage status on the execution platform when the application is built on the execution platform based on the actual value related to the execution platform; For each of the plurality of execution platforms, when the application is built on the execution platform, the degree of leveling of resource usage on the execution platform, or the level of resource usage among the plurality of execution platforms. a step of identifying a leveling index value indicating at least one of the degrees of leveling of the usage status; and an execution platform on which the application is constructed from among the plurality of execution platforms based on the leveling index value. and determining.
  • FIG. 1 is a diagram showing an example of a communication system according to an embodiment of the present invention.
  • 1 is a diagram showing an example of a communication system according to an embodiment of the present invention.
  • FIG. 1 is a diagram schematically showing an example of a network service according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of association between elements constructed in a communication system according to an embodiment of the present invention.
  • FIG. 2 is a functional block diagram illustrating an example of functions implemented in a platform system according to an embodiment of the present invention.
  • FIG. 3 is a diagram illustrating an example of a data structure of physical inventory data.
  • FIG. 3 is a diagram showing an example of usage status performance value data. It is a figure which shows an example of AP resource data.
  • FIG. 3 is a diagram showing an example of predicted usage value data. It is a flow diagram showing an example of the flow of processing performed in the platform system according to one embodiment of the present invention.
  • FIG. 1 and 2 are diagrams showing an example of a communication system 1 according to an embodiment of the present invention.
  • FIG. 1 is a diagram focusing on the locations of a data center group included in a communication system 1.
  • FIG. 2 is a diagram focusing on various computer systems implemented in a data center group included in the communication system 1.
  • the data center group included in the communication system 1 is classified into a central data center 10, a regional data center 12, and an edge data center 14.
  • central data centers 10 are distributed within the area covered by the communication system 1 (for example, within Japan).
  • regional data centers 12 are distributed within the area covered by the communication system 1. For example, if the area covered by the communication system 1 is the entire country of Japan, one or two regional data centers 12 may be placed in each prefecture.
  • each of the edge data centers 14 is capable of communicating with a communication facility 18 equipped with an antenna 16.
  • Communication equipment 18 may include a computer such as a server computer.
  • the communication equipment 18 according to the present embodiment performs wireless communication with a UE (User Equipment) 20 via the antenna 16.
  • the communication equipment 18 equipped with the antenna 16 is provided with, for example, an RU (Radio Unit), which will be described later.
  • a plurality of servers are arranged in each of the central data center 10, regional data center 12, and edge data center 14 according to this embodiment.
  • the central data center 10, the regional data center 12, and the edge data center 14 can communicate with each other.
  • the central data centers 10, the regional data centers 12, and the edge data centers 14 can also communicate with each other.
  • the communication system 1 includes a platform system 30, multiple radio access networks (RAN) 32, multiple core network systems 34, and multiple UEs 20.
  • the core network system 34, RAN 32, and UE 20 cooperate with each other to realize a mobile communication network.
  • the RAN 32 is a computer system equipped with an antenna 16, which corresponds to an eNB (eNodeB) in 4G or a gNB (NR base station) in 5G.
  • the RAN 32 according to this embodiment is mainly implemented by a server group and communication equipment 18 located in the edge data center 14.
  • a part of the RAN 32 for example, vDU (virtual Distributed Unit) and vCU (virtual Central Unit) in 4G, DU (Distributed Unit) and CU (Central Unit) in 5G
  • vDU virtual Distributed Unit
  • vCU virtual Central Unit
  • DU Distributed Unit
  • CU Central Unit
  • the core network system 34 is an EPC (Evolved Packet Core) in a fourth generation mobile communication system (hereinafter referred to as 4G) or a 5G core (5GC) in a fifth generation mobile communication system (hereinafter referred to as 5G). This is an equivalent system.
  • the core network system 34 according to this embodiment is mainly implemented by a group of servers located in the central data center 10 and the regional data center 12.
  • the platform system 30 is configured on a cloud infrastructure, for example, and includes a processor 30a, a storage section 30b, and a communication section 30c, as shown in FIG.
  • the processor 30a is a program-controlled device such as a microprocessor that operates according to a program installed in the platform system 30.
  • the storage unit 30b is, for example, a storage element such as ROM or RAM, a solid state drive (SSD), a hard disk drive (HDD), or the like.
  • the storage unit 30b stores programs and the like executed by the processor 30a.
  • the communication unit 30c is, for example, a communication interface such as a NIC or a wireless LAN module. Note that SDN (Software-Defined Networking) may be implemented in the communication unit 30c.
  • the communication unit 30c exchanges data with the RAN 32 and the core network system 34.
  • the platform system 30 is implemented by a group of servers located in the central data center 10. Note that the platform system 30 may be implemented by a group of servers located in the regional data center 12.
  • the requested network service is constructed in the RAN 32 or the core network system 34.
  • the constructed network service is then provided to the purchaser.
  • network services such as voice communication services and data communication services are provided to purchasers who are MVNOs (Mobile Virtual Network Operators).
  • the voice communication service and data communication service provided by this embodiment are ultimately provided to the customer (end user) of the purchaser (MVNO in the above example) using the UE20 shown in FIGS. 1 and 2.
  • the end user can perform voice communication and data communication with other users via the RAN 32 and the core network system 34. Further, the end user's UE 20 can access a data network such as the Internet via the RAN 32 and the core network system 34.
  • IoT services may be provided to end users who use robot arms, connected cars, and the like.
  • an end user who uses a robot arm, a connected car, etc. may become a purchaser of the network service according to this embodiment.
  • a container-type application execution environment such as Docker is installed on the servers located at the central data center 10, regional data center 12, and edge data center 14, and these It is now possible to deploy containers on a server and run them.
  • a cluster Kernetes cluster
  • a container management tool such as Kubernetes may be constructed.
  • processors on the constructed cluster may execute container-type applications.
  • the network service provided to the purchaser is composed of one or more functional units (for example, a network function (NF)).
  • the functional unit is implemented by a CNF (Containerized Network Function), which is a container-based functional unit.
  • the functional unit according to this embodiment may correspond to a network node.
  • FIG. 3 is a diagram schematically showing an example of a network service in operation.
  • the network service shown in FIG. 3 includes NFs such as a plurality of RUs 40, a plurality of DUs 42, a plurality of CUs 44, and a plurality of UPFs (User Plane Functions) 46 as software elements.
  • NFs such as a plurality of RUs 40, a plurality of DUs 42, a plurality of CUs 44, and a plurality of UPFs (User Plane Functions) 46 as software elements.
  • the network service also includes other software elements such as AMF (Access and Mobility Management Function) and SMF (Session Management Function), but the description of these elements will be omitted.
  • network services are implemented on computer resources (hardware elements) such as a plurality of servers.
  • a communication service in a certain area is provided by the network service shown in FIG.
  • a plurality of RUs 40, a plurality of DUs 42, a plurality of CUs 44, and a plurality of UPFs 46 shown in FIG. 3 belong to one end-to-end network slice.
  • FIG. 4 is a diagram schematically showing an example of the association between elements constructed in the communication system 1 in this embodiment.
  • the network service (NS), network function (NF), CNFC (Containerized Network Function Component), pod, and container have a hierarchical structure.
  • An NS corresponds to, for example, a network service composed of multiple NFs.
  • the NS may correspond to a granular element such as 5GC, EPC, 5G RAN (gNB), 4G RAN (eNB), etc., for example.
  • NF corresponds to granular elements such as DU42, CU44, UPF46, etc. Further, NF corresponds to a granularity element such as AMF and SMF. Furthermore, in 4G, NF corresponds to granular elements such as MME (Mobility Management Entity), HSS (Home Subscriber Server), S-GW (Serving Gateway), vDU, and vCU.
  • MME Mobility Management Entity
  • HSS Home Subscriber Server
  • S-GW Serving Gateway
  • vDU Visitor Gateway
  • vCU vCU.
  • one NS includes one or more NFs. In other words, one or more NFs are under one NS.
  • CNFC corresponds to granular elements such as DU mgmt and DU Processing, for example.
  • a CNFC may be a microservice that is deployed on a server as one or more containers.
  • a certain CNFC may be a microservice that provides some of the functions of the DU 42, CU 44, etc.
  • a certain CNFC may be a microservice that provides some of the functions of the UPF 46, AMF, SMF, and the like.
  • one NF includes one or more CNFCs.
  • one or more CNFCs are under one NF.
  • a pod refers to the minimum unit for managing docker containers in Kubernetes.
  • one CNFC includes one or more pods.
  • one or more pods are under one CNFC.
  • one pod includes one or more containers.
  • one or more containers are under one pod.
  • the network slice (NSI) and network slice subnet instance (NSSI) have a hierarchical structure.
  • NSI can also be said to be an end-to-end virtual circuit that spans multiple domains (for example, from the RAN 32 to the core network system 34).
  • NSI may be a slice for high-speed, large-capacity communication (e.g., eMBB), a slice for highly reliable and low-latency communication (e.g., URLLC), or a slice for connection of a large number of terminals (e.g., mmTC). good.
  • NSSI can also be said to be a single domain virtual circuit that is divided from NSI.
  • the NSSI may be a slice of a RAN domain, a slice of a Mobile Back Haul (MBH) domain, or a slice of a core network domain.
  • MMH Mobile Back Haul
  • one NSI includes one or more NSSIs.
  • one or more NSSIs are under one NSI.
  • multiple NSIs may share the same NSSI.
  • NSSI and NS generally have a many-to-many relationship.
  • one NF can belong to one or more network slices.
  • one NF can be configured with NSSAI (Network Slice Selection Assistance Information) including one or more S-NSSAI (Sub Network Slice Selection Assist Information).
  • NSSAI Network Slice Selection Assistance Information
  • S-NSSAI Subscribe Network Slice Selection Assist Information
  • S-NSSAI is information associated with a network slice. Note that the NF does not need to belong to a network slice.
  • FIG. 5 is a functional block diagram showing an example of functions implemented in the platform system 30 according to the present embodiment. Note that the platform system 30 according to this embodiment does not need to implement all of the functions shown in FIG. 5, and functions other than those shown in FIG. 5 may be implemented.
  • the platform system 30 functionally includes, for example, an operation support system (OSS) section 50, an orchestration (E2EO: End-to-End-Orchestration) section 52, and a service It includes a catalog storage section 54, an AI/big data processing section 56, a monitoring function section 58, an SDN controller 60, a configuration management section 62, a container management section 64, and a repository section 66.
  • the OSS section 50 includes an inventory database 70, a ticket management section 72, a fault management section 74, and a performance management section 76.
  • the E2EO section 52 includes a policy manager section 80, a slice manager section 82, and a life cycle management section 84. These elements are mainly implemented as a processor 30a, a storage section 30b, and a communication section 30c.
  • the above functions may be implemented by having the processor 30a execute a program installed in the platform system 30, which is a computer, and including instructions corresponding to the above functions.
  • This program may be supplied to the platform system 30 via a computer-readable information storage medium such as an optical disk, a magnetic disk, a magnetic tape, a magneto-optical disk, or a flash memory, or via the Internet.
  • the above functions may be implemented using a circuit block, memory, or other LSI. Further, those skilled in the art will understand that the above functions can be realized in various ways using only hardware, only software, or a combination thereof.
  • the container management unit 64 executes container life cycle management, including container construction such as container deployment and configuration.
  • the platform system 30 may include a plurality of container management units 64.
  • Each of the plurality of container management units 64 may have a container management tool such as Kubernetes installed, and a package manager such as Helm.
  • Each of the plurality of container management units 64 may perform container construction such as container deployment on a server group (Cubanetes cluster) associated with the corresponding container management unit 64, respectively.
  • the container management unit 64 does not need to be included in the platform system 30.
  • the container management unit 64 is provided, for example, in a server managed by the container management unit 64 (that is, the RAN 32 or the core network system 34), or in a server attached to a server managed by the container management unit 64. You can leave it there.
  • the repository unit 66 stores, for example, a container image of a container included in a functional unit group (for example, NF group) that realizes a network service.
  • a functional unit group for example, NF group
  • the inventory database 70 is, for example, a database that stores inventory information about a plurality of servers managed by the platform system 30 and arranged in the RAN 32 and the core network system 34.
  • the inventory database 70 stores inventory data including physical inventory data and logical inventory data.
  • the inventory data shows the configuration of the element groups included in the communication system 1 and the current status of the relationships between the elements.
  • the inventory data also indicates the status of resources managed by the platform system 30 (for example, resource usage status).
  • FIG. 6 is a diagram showing an example of the data structure of physical inventory data.
  • the physical inventory data shown in FIG. 6 is associated with one server.
  • the physical inventory data shown in FIG. 6 includes, for example, server ID, location data, building data, floor number data, rack data, specification data, network data, operating container ID list, cluster ID, and the like.
  • the server ID included in the physical inventory data is, for example, the identifier of the server associated with the physical inventory data.
  • the location data included in the physical inventory data is, for example, data indicating the location (for example, the address of the location) of the server associated with the physical inventory data.
  • the building data included in the physical inventory data is, for example, data indicating a building (eg, building name) in which a server associated with the physical inventory data is located.
  • the floor number data included in the physical inventory data is, for example, data indicating the floor number where the server associated with the physical inventory data is located.
  • the rack data included in the physical inventory data is, for example, the identifier of the rack in which the server associated with the physical inventory data is located.
  • the spec data included in the physical inventory data is data indicating the specs of the server, such as the number of cores, memory capacity, hard disk capacity, etc. of the server associated with the physical inventory data.
  • the network data included in the physical inventory data is, for example, data indicating the NIC included in the server associated with the physical inventory data, the number of ports included in the NIC, the port ID of each port, and the like.
  • the operating container ID list included in the physical inventory data is, for example, data indicating a list of instance identifiers (container IDs) of one or more containers operating on the server associated with the physical inventory data.
  • the cluster ID included in the physical inventory data is, for example, the identifier of the cluster (for example, the Kubernetes cluster) to which the server associated with the physical inventory data belongs.
  • the logical inventory data includes topology data indicating the current status of the association between elements as shown in FIG. 4 for a plurality of elements included in the communication system 1.
  • the logical inventory data includes topology data that includes an identifier of a certain NS and identifiers of one or more NFs under the NS.
  • the logical inventory data includes topology data including an identifier of a certain network slice and identifiers of one or more NFs belonging to the network slice.
  • the inventory data may indicate the current status such as geographical relationships and topological relationships between elements included in the communication system 1.
  • the above-mentioned inventory data includes location data indicating the locations where elements included in the communication system 1 are operating, that is, the current locations of the elements included in the communication system 1. From this, it can be said that the above-mentioned inventory data shows the current state of geographical relationships between elements (for example, geographical proximity between elements).
  • the logical inventory data may include NSI data, which is data indicating attributes such as an identifier of a network slice instance and the type of the network slice. Further, the logical inventory data may include NSSI data, which is data indicating attributes such as the identifier of the instance of the network slice subnet and the type of the network slice.
  • the logical inventory data may include NS data that is data indicating attributes such as an identifier of an NS instance and a type of the NS. Further, the logical inventory data may include NF data indicating attributes such as an identifier of an NF instance and a type of the NF. Further, the logical inventory data may include CNFC data indicating attributes such as an identifier of a CNFC instance and a type of the CNFC. Further, the logical inventory data may include pod data indicating attributes such as an identifier of a pod instance included in the CNFC and a type of the pod. Further, the logical inventory data may include container data indicating attributes such as the container ID of the container instance included in the pod and the type of the container.
  • the container instance and the server on which the container instance is running are associated by the container ID of the container data included in the logical inventory data and the container ID included in the active container ID list included in the physical inventory data. It will be.
  • data indicating various attributes such as a host name and an IP address may be set in the above-mentioned data included in the logical inventory data.
  • the container data may include data indicating the IP address of the container corresponding to the container data.
  • the CNFC data may include data indicating the IP address and host name of the CNFC indicated by the CNFC data.
  • the logical inventory data may include data indicating NSSAIs set in each NF, including one or more S-NSSAIs.
  • the inventory database 70 cooperates with the container management unit 64 to be able to grasp the status of resources as appropriate. Then, the inventory database 70 appropriately updates the inventory data stored in the inventory database 70 based on the latest status of the resource.
  • inventory database 70 updates inventory data stored in inventory database 70.
  • the service catalog storage unit 54 stores, for example, service catalog data.
  • the service catalog data may include, for example, service template data indicating logic used by the life cycle management unit 84.
  • This service template data includes information necessary to construct a network service.
  • the service template data includes information defining NS, NF, and CNFC, and information indicating a correspondence relationship between NS-NF-CNFC.
  • the service template data includes a workflow script for constructing a network service.
  • NSD Network Descriptor
  • the NSD is associated with a network service, and indicates the types of a plurality of functional units (for example, a plurality of CNFs) included in the network service.
  • the NSD may indicate the number of functional units included in the network service for each type of functional unit such as CNF.
  • the NSD may indicate a file name of a CNFD, which will be described later, related to a CNF included in the network service.
  • CNFD CNF Descriptor
  • the CNFD may indicate computer resources (CPU, memory, hard disk, etc.) required by the CNF.
  • the CNFD may indicate computer resources (CPU, memory, hard disk, etc.) required by each of a plurality of containers included in the CNF.
  • the service catalog data may include information regarding a threshold value (for example, an abnormality detection threshold value) used by the policy manager unit 80 to be compared with the calculated performance index value.
  • a threshold value for example, an abnormality detection threshold value
  • the service catalog data may include slice template data indicating the logic used by the slice manager section 82, for example.
  • Slice template data includes information necessary to perform network slice instantiation.
  • the slice template data includes information on "Generic Network Slice Template” defined by GSMA (GSM Association) ("GSM” is a registered trademark). Specifically, the slice template data includes network slice template data (NST), network slice subnet template data (NSST), and network service template data. Further, the slice template data includes information indicating the hierarchical structure of these elements as shown in FIG.
  • the life cycle management unit 84 constructs a new network service for which a purchase request has been made in response to a purchase request for an NS by a purchaser.
  • the life cycle management unit 84 may execute a workflow script associated with the network service to be purchased in response to a purchase request. Then, by executing the script of this workflow, the life cycle management unit 84 may instruct the container management unit 64 to deploy a container included in a new network service to be purchased. Then, the container management unit 64 may obtain a container image of the container from the repository unit 66 and deploy a container corresponding to the container image to the server.
  • the life cycle management unit 84 executes scaling and replacement of elements included in the communication system 1, for example.
  • the life cycle management unit 84 may output a container deployment instruction or deletion instruction to the container management unit 64.
  • the container management unit 64 may execute processing such as deploying a container or deleting a container in accordance with the instruction.
  • the lifecycle management unit 84 can perform scaling and replacement that cannot be handled by the container management unit 64, Kubanetes.
  • the life cycle management unit 84 may output configuration management instructions to the configuration management unit 62 for a newly constructed element group or an existing element to which new settings are input. Then, the configuration management unit 62 may perform configuration management such as setting according to the configuration management instruction.
  • life cycle management unit 84 may output to the SDN controller 60 an instruction to create a communication path between the two IP addresses, which is associated with the two IP addresses.
  • the slice manager unit 82 executes, for example, instantiation of a network slice.
  • the slice manager unit 82 instantiates a network slice by executing logic indicated by a slice template stored in the service catalog storage unit 54, for example.
  • the slice manager unit 82 includes, for example, the functions of NSMF (Network Slice Management Function) and NSSMF (Network Slice Sub-network Management Function) described in the 3GPP (registered trademark) specification “TS28 533”. be done.
  • NSMF Network Slice Management Function
  • NSSMF Network Slice Sub-network Management Function
  • NSMF Network Slice Management Function
  • TS28 533 3GPP (registered trademark) specification “TS28 533”. be done.
  • NSMF is a function that generates and manages network slices, and provides management of NSI.
  • NSSMF is a function that generates and manages a network slice subnet that forms part of a network slice, and provides management of NSSI.
  • the slice manager unit 82 may output configuration management instructions related to instantiation of the network slice to the configuration management unit 62. Then, the configuration management unit 62 may perform configuration management such as setting according to the configuration management instruction.
  • the slice manager unit 82 may output to the SDN controller 60 an instruction to create a communication path between the two IP addresses, which is associated with the two IP addresses.
  • the configuration management unit 62 executes configuration management such as setting of element groups such as NF in accordance with configuration management instructions received from the life cycle management unit 84 and the slice manager unit 82, for example.
  • the SDN controller 60 creates a communication path between two IP addresses associated with the creation instruction, for example, in accordance with a communication path creation instruction received from the life cycle management unit 84 or the slice manager unit 82.
  • the SDN controller 60 may use segment routing technology (for example, SRv6 (segment routing IPv6)) to construct NSI or NSSI for aggregation routers, servers, etc. that exist between communication paths. .
  • segment routing technology for example, SRv6 (segment routing IPv6)
  • the SDN controller 60 issues a command to configure a common VLAN (Virtual Local Area Network) to multiple NFs to be configured, and a command to allocate the bandwidth and priority indicated by the configuration information to the VLAN. By doing so, it is possible to generate NSI and NSSI across the plurality of NFs to be configured.
  • VLAN Virtual Local Area Network
  • the SDN controller 60 may change the upper limit of the bandwidth that can be used for communication between two IP addresses without constructing a network slice.
  • the monitoring function unit 58 monitors, for example, a group of elements included in the communication system 1 according to a given management policy.
  • the monitoring function unit 58 may monitor the element group, for example, according to a monitoring policy specified by the purchaser when purchasing the network service.
  • the monitoring function unit 58 executes monitoring at various levels, such as the slice level, the NS level, the NF level, the CNFC level, and the hardware level such as a server.
  • the monitoring function unit 58 may set a module that outputs metric data in hardware such as a server or a software element included in the communication system 1 so as to perform monitoring at the various levels described above.
  • the NF may output metric data indicating a measurable (identifiable) metric in the NF to the monitoring function unit 58.
  • the server may output metric data indicating metrics related to hardware that can be measured (specified) in the server to the monitoring function unit 58.
  • the monitoring function unit 58 may deploy a sidecar container on the server that aggregates metric data indicating metrics output from a plurality of containers in units of CNFC (microservices).
  • This sidecar container may contain agents called exporters.
  • the monitoring function unit 58 may use the mechanism of Prometheus to repeatedly execute the process of acquiring metric data aggregated for each microservice from the sidecar container at a given monitoring interval.
  • the monitoring function unit 58 monitors performance indicators regarding the performance indicators listed in “TS 28.552, Management and orchestration; 5G performance measurements” or “TS 28.554, Management and orchestration; 5G end to end Key Performance Indicators (KPI)”. Values may be monitored.
  • the monitoring function unit 58 may also acquire metric data indicating the performance index value to be monitored.
  • the monitoring function unit 58 outputs the metric data to the AI/big data processing unit 56.
  • elements such as a network slice, NS, NF, and CNFC included in the communication system 1 and hardware such as a server send notifications of various alerts to the monitoring function unit 58 (for example, an alert triggered by the occurrence of a failure). notification).
  • the monitoring function unit 58 outputs the notification to the AI/big data processing unit 56.
  • the AI/big data processing unit 56 accumulates, for example, metric data and alert notifications output from the monitoring function unit 58. Further, in the present embodiment, the AI/big data processing unit 56 stores, for example, a trained machine learning model in advance.
  • the AI/big data processing unit 56 performs, for example, future prediction processing of the usage status and service quality of the communication system 1 based on the accumulated metric data and the above-mentioned machine learning model. Execute estimation processing such as The AI/big data processing unit 56 may generate estimation result data indicating the result of estimation processing.
  • the performance management unit 76 calculates, for example, a performance index value (for example, KPI) based on a metric indicated by a plurality of metric data.
  • the performance management unit 76 calculates a performance index value (for example, a performance index value related to an end-to-end network slice) that is a comprehensive evaluation of multiple types of metrics that cannot be calculated from a single metric data. Good too.
  • the performance management unit 76 may generate comprehensive performance index value data indicating a performance index value that is a comprehensive evaluation.
  • the performance management unit 76 may acquire the metric data from the monitoring function unit 58 via the AI/big data processing unit 56 as shown in FIG. 5, or directly from the monitoring function unit 58. Good too. Furthermore, the performance management unit 76 may calculate the performance index value based on the above-mentioned estimation result data.
  • the failure management unit 74 is configured to determine whether the communication system 1 is configured based on at least one of the above-mentioned metric data, the above-mentioned alert notification, the above-mentioned estimation result data, and the above-mentioned comprehensive performance index value data. Detect occurrence of failure. For example, the failure management unit 74 may detect the occurrence of a failure that cannot be detected from a single metric data or a single alert notification based on a predetermined logic. The fault management unit 74 may generate detected fault data indicating the detected fault.
  • the failure management unit 74 may acquire metric data and alert notifications directly from the monitoring function unit 58 or via the AI/big data processing unit 56 or the performance management unit 76. Furthermore, the failure management unit 74 may acquire estimation result data directly from the AI/big data processing unit 56 or via the performance management unit 76.
  • the policy manager unit 80 is configured to provide at least one of the above-mentioned metric data, the above-mentioned alert notification, the above-mentioned estimation result data, the above-mentioned comprehensive performance index value data, and the above-mentioned detected failure data. Based on this, a predetermined determination process is executed.
  • the policy manager section 80 may execute an action according to the result of the determination process.
  • the policy manager unit 80 may output a network slice construction instruction to the slice manager unit 82.
  • the policy manager section 80 may output an instruction for scaling or replacing an element to the life cycle management section 84 according to the result of the determination process.
  • the ticket management unit 72 generates a ticket indicating the content to be notified to the administrator of the communication system 1, for example.
  • the ticket management unit 72 may generate a ticket indicating the content of the occurred failure data. Further, the ticket management unit 72 may generate a ticket indicating the value of performance index value data or metric data. Further, the ticket management unit 72 may generate a ticket indicating the determination result by the policy manager unit 80.
  • the ticket management unit 72 notifies the administrator of the communication system 1 of the generated ticket.
  • the ticket management unit 72 may, for example, send an e-mail with the generated ticket attached to the e-mail address of the administrator of the communication system 1.
  • the monitoring function unit 58 monitors the usage status of resources in each of a plurality of execution platforms (for example, a Kubernetes cluster, a server, etc.) included in the communication system 1. Further, in this embodiment, for example, the monitoring function unit 58 monitors the usage status of resources in each of the applications executed on the execution platform.
  • a plurality of execution platforms for example, a Kubernetes cluster, a server, etc.
  • the monitored resource usage status may be at least one of CPU usage status, memory usage status, storage usage status, network usage status, and power usage status. .
  • CPU usage status is the CPU usage rate.
  • memory usage status include memory usage and memory usage rate.
  • storage usage status include storage usage amount and storage usage rate.
  • network usage status include bandwidth usage and bandwidth usage rate.
  • power usage status is power consumption.
  • the monitoring function unit 58 outputs metric data indicating the monitoring results to the AI/big data processing unit 56. In this way, metric data is accumulated in the AI/big data processing unit 56.
  • an application that has been decided to be added to the communication system 1 that is, an application scheduled to be added to the communication system 1
  • an application scheduled to be added an application scheduled to be added.
  • the AI/big data processing unit 56 identifies an execution platform on which the application scheduled to be added can be executed from among the plurality of execution platforms included in the communication system 1. do.
  • requirements related to the execution platform on which the application of the type can be executed may be determined in advance for each type of application.
  • the requirements may be, for example, requirements related to hardware (hereinafter referred to as hardware requirements).
  • Hardware requirements include, for example, SRIOV (Single Root I/O Virtualization), GPU (Graphics Processing Unit), and FPGA (field-programmable gate array). , etc.
  • hardware requirements include, for example, the number of GPUs installed is a predetermined number or more, the size of the installed memory is a predetermined size or more, and the size of the installed storage is a predetermined size or more. , etc.
  • the requirements may be, for example, requirements regarding the location where the execution platform is located.
  • the above requirements may be written in, for example, the CNFD stored in the service catalog storage unit 54. Then, the AI/big data processing unit 56 may identify the above requirements by referring to the CNFD stored in the service catalog storage unit 54.
  • the application AI/big data processing unit 56 selects an execution platform that can execute the application to be added from among the plurality of execution platforms included in the communication system 1, based on the above-mentioned requirements associated with the type of application to be added.
  • the base may be specified.
  • the execution platform specified as an execution platform on which the application scheduled to be added can be executed will be referred to as a candidate platform.
  • the AI/big data processing unit 56 extracts, for example, metric data indicating the resource usage status in the most recent period for each of the plurality of candidate platforms. For example, metric data indicating the resource usage status over the most recent predetermined period (for example, one month) may be extracted.
  • the AI/big data processing unit 56 identifies, for example, the actual value of the resource usage status on each of the plurality of candidate platforms. For example, in the present embodiment, the AI/big data processing unit 56 calculates the actual value of the resource usage status of each of the plurality of candidate platforms based on the metric data extracted for the candidate platform. Identify.
  • the usage status for which the actual value is specified is, for example, at least one of the following: CPU usage status, memory usage status, storage usage status, network usage status, or power usage status, as described above. It may be one.
  • the AI/big data processing unit 56 may extract metric data indicating the resource usage status for each application being executed on the candidate platform. Then, the AI/big data processing unit 56 calculates the total of the actual values of the resource usage status of each of the applications executed on the candidate platform, which is indicated by the extracted metric data, and calculates the total of the actual value of the resource usage status of each of the applications executed on the candidate platform. It may be specified as an actual value.
  • the AI/big data processing unit 56 generates usage status performance value data indicating the actual value of the resource usage status in the candidate platform, as illustrated in FIG. 7, based on the extracted metric data. Good too.
  • the usage status performance value data may include a plurality of individual performance value data, each of which indicates the usage status of a different type of resource.
  • the usage status actual value data includes five individual actual value data (CPU actual value data, memory actual value data, storage actual value data, network actual value data, and power consumption actual value data). is included.
  • the individual performance value data may include a plurality of period performance value data each associated with the period type.
  • actual values of the resource usage status are specified for 16 period types, each of which is associated with 8 time periods every 3 hours on weekdays and holidays. be done. Then, the specified performance value is set to the value of the period performance value data of the period type associated with the performance value.
  • metric data indicating the CPU usage status for the time period from 0:00 to 3:00 on weekdays may be specified from among the metric data indicating the resource usage status in the most recent month. Then, based on the specified metric data, the value of period performance value data included in the CPU performance value data and associated with 0:00 to 3:00 on weekdays may be determined.
  • the representative value a1 such as the average value or maximum value of the CPU usage rate indicated by the specified metric data, is the value of the period performance value data that is associated with the period from 0:00 to 3:00 on weekdays included in the CPU performance value data. may be set to .
  • memory performance value data is generated based on metric data indicating the memory usage status in the most recent month.
  • storage performance value data is generated based on metric data indicating the usage status of storage in the most recent month.
  • network performance value data is generated based on metric data indicating the usage status of the network in the most recent month.
  • actual power consumption value data is generated based on metric data indicating the power usage status in the most recent month.
  • the AI/big data processing unit 56 performs the following operations, for example, when an application scheduled to be added to the candidate platform is built for each of the plurality of candidate platforms based on the above-mentioned performance values related to the candidate platform. Specify the predicted value of the resource usage status on the relevant execution platform. The AI/big data processing unit 56 may specify the above predicted value for each period type.
  • the amount of resources required by the application scheduled to be added may be determined in advance.
  • the amount of resources required by the application scheduled to be added may be described in the above-mentioned CNFD.
  • the AI/big data processing unit 56 may identify the amount of resources required by the application scheduled to be added by referring to the CNFD stored in the service catalog storage unit 54.
  • the amount of required resources may be specified for each of the CPU, memory, storage, network, and power consumption. Further, the required amount of resources may be specified for each of the plurality of period types described above.
  • the AI/big data processing unit 56 may generate AP resource data indicating the amount of resources associated with the application, as illustrated in FIG.
  • the AP resource data may be, for example, data indicating the amount of resources required by the application scheduled to be added.
  • the AP resource data may include a plurality of pieces of individual AP resource data, each of which indicates the amount of resources for different types of resources.
  • the AP resource data includes five individual AP resource data (CPU AP resource data, memory AP resource data, storage AP resource data, network AP resource data, and power consumption AP resource data).
  • the individual AP resource data may include a plurality of period AP resource data each associated with a period type.
  • the individual AP resource data includes period AP resource data for 16 period types similar to the period performance value data included in the usage status performance value data shown in FIG.
  • the AI/big data processing unit 56 adds information to the candidate platform based on the above-mentioned usage status actual value data and the above-mentioned AP resource data that are associated with the candidate platform.
  • a predicted value of the resource usage status on the candidate platform when the planned application is constructed may be specified.
  • the AI/big data processing unit 56 may generate usage situation predicted value data, which is illustrated in FIG. 9 and indicates the predicted value identified in this way.
  • the usage status predicted value data may include a plurality of individual predicted value data, each of which indicates the usage status of a different type of resource.
  • the usage status predicted value data includes five individual predicted value data (CPU predicted value data, memory predicted value data, storage predicted value data, network predicted value data, and power consumption predicted value data). is included.
  • the individual predicted value data may include a plurality of period predicted value data each associated with a period type.
  • predicted values of the resource usage status for the above-mentioned 16 period types are specified.
  • the specified predicted value is set to the value of period predicted value data of the period type associated with the predicted value.
  • a value c1 obtained by adding the value b1 of the CPUAP resource data for the time period from 0:00 to 3:00 on weekdays shown in FIG. 8 to the value a1 shown in FIG. 7 is included in the CPU performance value data. It may be determined as a value of period predicted value data associated with 0:00 to 3:00 on weekdays. Then, the value c1 may be set to the value of period predicted value data included in the CPU predicted value data and associated with 0:00 to 3:00 on weekdays.
  • the CPU predicted value data shown in FIG. 9 is generated by determining the values of other period predicted value data included in the CPU predicted value data.
  • memory predicted value data is generated based on memory AP resource data and memory actual value data.
  • storage predicted value data is generated based on the storage AP resource data and the storage performance value data.
  • network predicted value data is generated based on the network AP resource data and the network actual value data.
  • power consumption predicted value data is generated based on the power consumption AP resource data and the power consumption actual value data.
  • the amount of resources required by the application scheduled to be added may be determined based on the type of execution platform (for example, the scale and specifications of the execution platform). Then, AP resource data may be generated for each type of execution platform. Then, usage status predicted value data of the candidate platform may be generated based on usage status actual value data of the candidate platform and AP resource data generated based on the type of the candidate platform.
  • the AI/big data processing unit 56 determines the resources on the candidate platform based on the actual value of the resource usage status of the running application of the same type as the application to be added. A predicted value of usage status may be specified.
  • the AI/big data processing unit 56 calculates the actual value of the resource usage before the application was added on an execution platform on which an application of the same type as the application to be added is running, and the actual value of the resource usage status before the application was added.
  • a trained machine learning model that has learned the correspondence with the actual value of the subsequent resource usage status may be stored. This trained machine learning model may output predicted usage value data in response to input of actual usage value data and data indicating the type of application to be added, for example.
  • the AI/big data processing unit 56 generates predicted usage value data by inputting actual usage value data and data indicating the type of application to be added into this trained machine learning model. You may.
  • the trained machine learning model is a conservative model that has learned training data about the execution platform where there was a noticeable difference in resource usage before and after adding the application. There may be. For example, for each period type, an execution platform with the largest difference in resource usage in the period type before and after the application is added may be identified. The AI/big data processing unit 56 then calculates, for each period type, the actual value of the resource usage before the application was added for the execution platform identified in this way, and the actual value of the resource usage before the application was added. A machine learning model may be made to learn the correspondence with the actual value of the subsequent resource usage status. Then, the usage situation predicted value data may be generated using the learned machine learning model learned for each period type in this way.
  • the predicted usage value data may be generated based on the actual usage value data and a given calculation formula or correspondence rule that indicates the relationship between the actual usage value and the predicted value. .
  • the number of period types is 16, but the number of period types is not limited to 16.
  • the period types according to the present embodiment may be two time periods, daytime and nighttime, for each day of the week, for a total of 14 period types. Note that it is desirable to suppress the number of period types to a value that does not cause an excessive amount of calculation.
  • the AI/big data processing unit 56 constructs, for each of the plurality of candidate platforms, an application to be added to the candidate platform based on the predicted value specified as described above.
  • a leveling index value indicating at least one of the degree of leveling of the resource usage status in the candidate platform or the leveling level of the resource usage status among the plurality of candidate platforms is specified.
  • the AI/big data processing unit 56 may specify the leveling index value based on the above-mentioned predicted value for each period type.
  • the AI/big data processing unit 56 may specify a leveling index value that indicates the dispersion of predicted values for each period type on the candidate platform when an application scheduled to be added is built on the candidate platform.
  • the AI/big data processing unit 56 calculates, for each of the five pieces of individual predicted value data associated with the candidate platform, 16 period predictions included in the individual predicted value data.
  • the distribution of values in the value data may also be determined.
  • the AI/big data processing unit 56 uses the weighted linear sum of the variances specified for the five pieces of individual predicted value data, which have been given a given weight, as the leveling index value associated with the candidate base. May be specified. Note that the leveling index value may be specified based on the standard deviation instead of the variance.
  • the leveling index value identified in this way corresponds to an example of a leveling index value that indicates the degree of leveling of resource usage on the candidate platform when an application scheduled to be added to the candidate platform is built. .
  • the AI/big data processing unit 56 may generate a leveling index value that indicates the difference between the maximum value and the minimum value of predicted values for each period type on the candidate platform when an application scheduled to be added is built on the candidate platform. may be specified.
  • the AI/big data processing unit 56 calculates, for each of the five pieces of individual predicted value data associated with the candidate platform, 16 period predictions included in the individual predicted value data.
  • the difference between the maximum value and the minimum value among the values of the value data may be specified.
  • the AI/big data processing unit 56 uses the weighted linear sum of the differences specified for the five individual predicted value data, which are given a given weight, as the leveling index value associated with the candidate base. May be specified.
  • the leveling index value identified in this way corresponds to an example of a leveling index value that indicates the degree of leveling of resource usage on the candidate platform when an application scheduled to be added to the candidate platform is built. .
  • the AI/big data processing unit 56 may also specify a leveling index value that indicates the dispersion of predicted values of resource usage among a plurality of candidate platforms when an application scheduled to be added is placed on a candidate platform. good.
  • the AI/big data processing unit 56 stores, for each of the plurality of candidate platforms, a predicted value and a predetermined value of the resource usage status in each of the plurality of candidate platforms when an application scheduled to be added is placed on the candidate platform. You may specify the leveling index value which shows the sum of the absolute value of the difference with.
  • the value of the predicted usage value data corresponds to the predicted value of the resource usage status for the candidate platform.
  • the value of the actual usage status value data corresponds to the predicted value of the usage status of the resource.
  • the AI/big data processing unit 56 calculates, for example, the actual resource usage rate associated with the candidate platform based on the actual usage value data associated with the candidate platform for each of the n candidate platforms. may be calculated. For example, for each of multiple period types, the representative value of the actual value of the CPU usage rate, the representative value of the actual value of the memory usage rate, the representative value of the actual value of the storage usage rate, and the representative value of the actual value of the bandwidth usage rate. A representative value may be calculated. Then, the representative value of these four representative values may be calculated as the actual resource usage rate associated with the candidate platform.
  • the AI/big data processing unit 56 calculates the predicted resource usage rate associated with the candidate platform based on the predicted usage value data associated with the candidate platform. It may be calculated. For example, for each of multiple period types, the representative value of predicted value of CPU usage rate, the representative value of predicted value of memory usage rate, the representative value of predicted value of storage usage rate, and the representative value of predicted value of bandwidth usage rate. A representative value may be calculated. Then, the representative value of these four representative values may be calculated as the predicted resource usage rate associated with the candidate platform.
  • Examples of the above-mentioned representative values include the average value and the maximum value.
  • examples of the above-mentioned "representative values for the four representative values" include the average value of the above-mentioned four average values, the maximum value of the above-mentioned four average values, and the above-mentioned four maximum values. Examples include an average value, the maximum value of the above-mentioned four maximum values, and the like.
  • the AI/big data processing unit 56 calculates the leveling index value associated with the candidate base for each of the n candidate bases based on the above-mentioned actual resource usage rate and the above-mentioned predicted resource usage rate. It may be calculated.
  • the predicted resource usage rate value of a platform of interest which is a certain candidate platform
  • the actual resource usage rate values of other (n-1) candidate platforms may be specified.
  • the variance or standard deviation of the n specified values may be calculated as the leveling index value associated with the base of interest.
  • the difference between the predicted resource usage rate for the platform of interest and a predetermined value (for example, 70%) and the actual resource usage rate for other (n-1) candidate platforms and the predetermined value (for example, , 70%) may be identified. Then, the sum of the absolute values of the n identified differences may be calculated as the leveling index value associated with the base of interest.
  • the leveling index value identified in this way corresponds to an example of a leveling index value that indicates the degree of leveling of resource usage among a plurality of candidate platforms.
  • a first leveling index value indicating the degree of leveling of the resource usage status in the candidate platform, and a The leveling index value associated with the candidate platform may be specified based on the second leveling index value indicating the degree of leveling of the resource usage status.
  • the average value of the first leveling index value and the second leveling index value may be specified as the leveling index value associated with the candidate base.
  • a weighted average value of the first leveling index value and the second leveling index value with a given weight may be specified as the leveling index value associated with the candidate base.
  • the policy manager unit 80 determines the execution platform on which the application to be added will be built from among the plurality of candidate platforms based on the leveling index value specified as described above.
  • the execution platform on which the application to be added is built may be determined.
  • the leveling index value when a leveling index value is specified that indicates the dispersion of predicted values of resource usage among multiple candidate platforms when an application scheduled to be added is placed on a candidate platform, the leveling index value is The candidate platform on which the application to be added is built may be determined based on the smallness of the variation shown.
  • the candidate platform associated with the smallest value among the leveling index values indicating dispersion associated with each of the plurality of candidate platforms may be determined as the execution platform on which the application to be added is built.
  • the leveling index value indicating the difference between the maximum and minimum predicted values for each period type on the candidate platform is specified
  • the leveling index value The execution platform on which the application to be added is built may be determined based on the smallness of the difference indicated by the index value. For example, the candidate platform associated with the smallest value among the leveling index values indicating the difference associated with each of the plurality of candidate platforms may be determined as the execution platform on which the application to be added is built. .
  • a leveling index value is specified that indicates the sum of the absolute values of the differences between the predicted value and a predetermined value of the resource usage status on each of a plurality of candidate platforms.
  • the execution platform on which the application to be added is built may be determined based on the smallness of the sum of the absolute values of the differences indicated by the leveling index value. For example, the candidate platform that is associated with the smallest value among the leveling index values that indicate the sum of the absolute values of the differences that are associated with each of the multiple candidate platforms is the execution platform on which the application to be added is built. may be determined.
  • the life cycle management unit 84, the container management unit 64, and the configuration management unit 62 construct the application to be added on the execution platform determined as the execution platform on which the application to be added is constructed as described above.
  • the higher the degree of leveling the smaller the leveling index value becomes.
  • a leveling index value may be used that increases as the degree of leveling increases.
  • the candidate platform associated with the largest value among the leveling index values associated with each of the plurality of candidate platforms will be determined as the execution platform on which the application to be added will be built.
  • the resources of the execution platform may not be utilized effectively. For example, if the population of the area covered by the application executed on the execution platform varies, variations may occur in the usage status of resources depending on the execution platform.
  • the execution platform on which the application to be added is built is determined based on the above-mentioned leveling index value, so the resources of the execution platform can be effectively utilized.
  • leveling evaluation value according to the present embodiment may indicate the degree of improvement in leveling the resource usage status before and after the scheduled addition application is added.
  • candidate platforms associated with predicted resource usage rates exceeding a predetermined threshold may be excluded from the execution platforms on which the scheduled addition application will be built. That is, the execution platform on which the application to be added is built may be determined from among the candidate platforms associated with predicted resource usage rates that do not exceed a predetermined threshold.
  • the AI/big data processing unit 56 identifies a plurality of candidate platforms from among the plurality of execution platforms (for example, the Kubernetes cluster) included in the communication system 1 (S101).
  • the AI/big data processing unit 56 generates usage status performance value data associated with the candidate platform (S102).
  • the AI/big data processing unit 56 generates usage status predicted value data associated with the candidate platform (S103).
  • the AI/big data processing unit 56 identifies, for each of the plurality of candidate platforms, the leveling index value associated with the candidate platform (S104).
  • the leveling index value associated with the candidate platform is specified based on the predicted usage value data associated with the candidate platform. Good too.
  • each of a plurality of candidate platforms is associated with the candidate platform based on predicted usage value data associated with the candidate platform and actual usage value data associated with other candidate platforms.
  • a leveling index value may be specified.
  • the policy manager unit 80 selects an application to be added from among the plurality of candidate platforms specified in the process shown in S101 based on the leveling index value specified for each of the plurality of candidate platforms in the process shown in S104.
  • the execution platform on which the system is constructed is determined (S105).
  • life cycle management unit 84, container management unit 64, and configuration management unit 62 construct the application to be added on the execution platform determined in the process shown in S105 (S106), and perform the process shown in this processing example. will be terminated.
  • the execution platform according to this embodiment may be a Kubernetes cluster.
  • the execution platform according to this embodiment may be a server.
  • the application scheduled to be added according to the present embodiment may be a network function included in the communication system 1, or may be an application other than a network function, such as an application for big data analysis or AI. .
  • the leveling index value is calculated based on all of the CPU usage status, memory usage status, storage usage status, network usage status, and power usage status.
  • the leveling index value may be calculated based on some of these.
  • the leveling index value may be calculated based on any one of CPU usage, memory usage, storage usage, network usage, or power usage.
  • the functional units according to this embodiment are not limited to those shown in FIG. 3.
  • the functional unit according to this embodiment may be a network node such as AMF (Access and Mobility Management Function) or SMF (Session Management Function).
  • AMF Access and Mobility Management Function
  • SMF Session Management Function
  • the functional unit according to this embodiment does not need to be an NF in 5G.
  • the functional units according to this embodiment include eNodeB, vDU, vCU, P-GW (Packet Data Network Gateway), S-GW (Serving Gateway), MME (Mobility Management Entity), HSS (Home Subscriber Server), etc. , it may be a network node in 4G.
  • the functional unit according to this embodiment is not a CNF but a VNF (Virtualized Network Function), which is a VM (Virtual Machine)-based functional unit using hypervisor-type or host-type virtualization technology, good.
  • the functional unit according to this embodiment does not need to be implemented by software, and may be implemented by hardware such as an electronic circuit. Further, the functional unit according to this embodiment may be implemented by a combination of an electronic circuit and software.

Abstract

アプリケーションが構築される実行基盤のリソースを有効に活用できる実行基盤決定システム及び実行基盤決定方法を提供する。AI・ビッグデータ処理部(56)は、複数の候補基盤のそれぞれについて、当該候補基盤に追加予定アプリケーションが構築された場合における、当該候補基盤におけるリソースの使用状況の平準化の程度、又は、当該複数の候補基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定する。ポリシーマネージャ部(80)は、平準化指標値に基づいて、複数の候補基盤のうちから追加予定アプリケーションが構築される実行基盤を決定する。

Description

実行基盤決定システム及び実行基盤決定方法
 本発明は、実行基盤決定システム及び実行基盤決定方法に関する。
 ネットワークファンクション等のアプリケーションの実行基盤への構築に関する技術の一例として、特許文献1には、顧客が購入した製品のオーダを、VNF(Virtualized Network Function)単位に分解し、NFVI(Network Functions Virtualization Infrastructure)上にデプロイする技術が記載されている。
国際公開第2018/181826号
 特許文献1に記載されているようなアプリケーションの構築では、実行基盤に対してアプリケーションがラウンドロビンで構築されていくことが一般的である。
 しかし、このようにすると、例えば実行基盤で実行されるアプリケーションがカバーするエリアの人口がまちまちであるような場合に、実行基盤によってリソースの使用状況にばらつきが生じ、実行基盤のリソースを有効に活用できないことがあった。
 本発明は上記実情に鑑みてなされたものであって、その目的の一つは、アプリケーションが構築される実行基盤のリソースを有効に活用できる実行基盤決定システム及び実行基盤決定方法を提供することにある。
 上記課題を解決するために、本発明に係る実行基盤決定システムは、追加予定のアプリケーションが実行可能な複数の実行基盤のそれぞれについて、当該実行基盤におけるリソースの使用状況の実績値を特定する実績値特定手段と、前記複数の実行基盤のそれぞれについて、当該実行基盤に係る前記実績値に基づいて、当該実行基盤に前記アプリケーションが構築された場合の当該実行基盤におけるリソースの使用状況の予測値を特定する予測値特定手段と、前記予測値に基づいて、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが構築された場合における、当該実行基盤におけるリソースの使用状況の平準化の程度、又は、前記複数の前記実行基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定する平準化指標値特定手段と、前記平準化指標値に基づいて、前記複数の前記実行基盤のうちから前記アプリケーションが構築される実行基盤を決定する実行基盤決定手段と、を含む。
 本発明の一態様では、前記実績値特定手段は、前記実行基盤で実行されているアプリケーションのそれぞれにおけるリソースの使用状況の実績値の合計を、当該実行基盤におけるリソースの使用状況の実績値として特定する。
 また、本発明の一態様では、前記予測値特定手段は、前記追加予定のアプリケーションと同種の実行中のアプリケーションにおけるリソースの使用状況の実績値に基づいて、前記予測値を特定する。
 また、本発明の一態様では、前記予測値特定手段は、期間種別ごとの前記予測値を特定し、前記平準化指標値特定手段は、前記期間種別ごとの前記予測値に基づいて、前記平準化指標値を特定する。
 この態様では、前記平準化指標値特定手段は、前記実行基盤に前記アプリケーションが構築された場合における当該実行基盤における前記期間種別ごとの前記予測値のばらつきを示す前記平準化指標値を特定し、前記実行基盤決定手段は、前記平準化指標値が示すばらつきの小ささに基づいて、前記アプリケーションが構築される実行基盤を決定してもよい。
 あるいは、前記平準化指標値特定手段は、前記実行基盤に前記アプリケーションが構築された場合における当該実行基盤における前記期間種別ごとの前記予測値の最大値と最小値との差を示す前記平準化指標値を特定し、前記実行基盤決定手段は、前記平準化指標値が示す差の小ささに基づいて、前記アプリケーションが構築される実行基盤を決定してもよい。
 また、本発明の一態様では、前記平準化指標値特定手段は、前記複数の前記実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが配置された場合における前記複数の前記実行基盤間におけるリソースの使用状況の予測値のばらつきを示す前記平準化指標値を特定し、前記実行基盤決定手段は、前記平準化指標値が示すばらつきの小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する。
 また、本発明の一態様では、前記平準化指標値特定手段は、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが配置された場合における前記複数の実行基盤のそれぞれにおけるリソースの使用状況の予測値と所定値との差の絶対値の合計を示す前記平準化指標値を特定し、前記実行基盤決定手段は、前記平準化指標値が示す差の絶対値の合計の小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する。
 また、本発明の一態様では、決定される前記実行基盤に前記アプリケーションを構築する構築手段、をさらに含む。
 また、本発明の一態様では、前記実行基盤は、クバネテスクラスタである。
 また、本発明の一態様では、前記アプリケーションは、通信システムに含まれるアプリケーションである。
 この態様では、前記アプリケーションは、ネットワークファンクションであってもよい。
 また、本発明の一態様では、前記リソースの使用状況は、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、又は、電力の使用状況、のうちの少なくとも1つである。
 また、本発明に係る実行基盤決定方法は、追加予定のアプリケーションが実行可能な複数の実行基盤のそれぞれについて、当該実行基盤におけるリソースの使用状況の実績値を特定するステップと、前記複数の実行基盤のそれぞれについて、当該実行基盤に係る前記実績値に基づいて、当該実行基盤に前記アプリケーションが構築された場合の当該実行基盤におけるリソースの使用状況の予測値を特定するステップと、前記予測値に基づいて、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが構築された場合における、当該実行基盤におけるリソースの使用状況の平準化の程度、又は、前記複数の前記実行基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定するステップと、前記平準化指標値に基づいて、前記複数の前記実行基盤のうちから前記アプリケーションが構築される実行基盤を決定するステップと、を含む。
本発明の一実施形態に係る通信システムの一例を示す図である。 本発明の一実施形態に係る通信システムの一例を示す図である。 本発明の一実施形態に係るネットワークサービスの一例を模式的に示す図である。 本発明の一実施形態に係る通信システムに構築される要素間の関連付けの一例を示す図である。 本発明の一実施形態に係るプラットフォームシステムで実装される機能の一例を示す機能ブロック図である。 物理インベントリデータのデータ構造の一例を示す図である。 使用状況実績値データの一例を示す図である。 APリソースデータの一例を示す図である。 使用状況予測値データの一例を示す図である。 本発明の一実施形態に係るプラットフォームシステムで行われる処理の流れの一例を示すフロー図である。
 以下、本発明の一実施形態について図面に基づき詳細に説明する。
 図1及び図2は、本発明の一実施形態に係る通信システム1の一例を示す図である。図1は、通信システム1に含まれるデータセンタ群のロケーションに着目した図となっている。図2は、通信システム1に含まれるデータセンタ群で実装されている各種のコンピュータシステムに着目した図となっている。
 図1に示すように、通信システム1に含まれるデータセンタ群は、セントラルデータセンタ10、リージョナルデータセンタ12、エッジデータセンタ14に分類される。
 セントラルデータセンタ10は、例えば、通信システム1がカバーするエリア内(例えば、日本国内)に分散して数個配置されている。
 リージョナルデータセンタ12は、例えば、通信システム1がカバーするエリア内に分散して数十個配置されている。例えば、通信システム1がカバーするエリアが日本国内全域である場合に、リージョナルデータセンタ12が、各都道府県に1~2個ずつ配置されてもよい。
 エッジデータセンタ14は、例えば、通信システム1がカバーするエリア内に分散して数千個配置される。また、エッジデータセンタ14のそれぞれは、アンテナ16を備えた通信設備18と通信可能となっている。ここで図1に示すように、1つのエッジデータセンタ14が数個の通信設備18と通信可能になっていてもよい。通信設備18は、サーバコンピュータなどのコンピュータを含んでいてもよい。本実施形態に係る通信設備18は、アンテナ16を介してUE(User Equipment)20との間で無線通信を行う。アンテナ16を備えた通信設備18には、例えば、後述のRU(Radio Unit)が設けられている。
 本実施形態に係るセントラルデータセンタ10、リージョナルデータセンタ12、エッジデータセンタ14には、それぞれ、複数のサーバが配置されている。
 本実施形態では例えば、セントラルデータセンタ10、リージョナルデータセンタ12、エッジデータセンタ14は、互いに通信可能となっている。また、セントラルデータセンタ10同士、リージョナルデータセンタ12同士、エッジデータセンタ14同士も互いに通信可能になっている。
 図2に示すように、本実施形態に係る通信システム1には、プラットフォームシステム30、複数の無線アクセスネットワーク(RAN)32、複数のコアネットワークシステム34、複数のUE20が含まれている。コアネットワークシステム34、RAN32、UE20は、互いに連携して、移動通信ネットワークを実現する。
 RAN32は、4GにおけるeNB(eNodeB)や、5GにおけるgNB(NR基地局)に相当する、アンテナ16を備えたコンピュータシステムである。本実施形態に係るRAN32は、主に、エッジデータセンタ14に配置されているサーバ群及び通信設備18によって実装される。なお、RAN32の一部(例えば、4GにおけるvDU(virtual Distributed Unit)やvCU(virtual Central Unit)、5GにおけるDU(Distributed Unit)やCU(Central Unit))は、エッジデータセンタ14ではなく、セントラルデータセンタ10やリージョナルデータセンタ12で実装されてもよい。
 コアネットワークシステム34は、第4世代移動通信システム(以下、4Gと呼ぶ。)におけるEPC(Evolved Packet Core)や、第5世代移動通信システム(以下、5Gと呼ぶ。)における5Gコア(5GC)に相当するシステムである。本実施形態に係るコアネットワークシステム34は、主に、セントラルデータセンタ10やリージョナルデータセンタ12に配置されているサーバ群によって実装される。
 本実施形態に係るプラットフォームシステム30は、例えば、クラウド基盤上に構成されており、図2に示すように、プロセッサ30a、記憶部30b、通信部30c、が含まれる。プロセッサ30aは、プラットフォームシステム30にインストールされるプログラムに従って動作するマイクロプロセッサ等のプログラム制御デバイスである。記憶部30bは、例えばROMやRAM等の記憶素子や、ソリッドステートドライブ(SSD)、ハードディスクドライブ(HDD)などである。記憶部30bには、プロセッサ30aによって実行されるプログラムなどが記憶される。通信部30cは、例えば、NICや無線LANモジュールなどといった通信インタフェースである。なお、通信部30cにおいて、SDN(Software-Defined Networking)が実装されていてもよい。通信部30cは、RAN32、コアネットワークシステム34、との間でデータを授受する。
 本実施形態では、プラットフォームシステム30は、セントラルデータセンタ10に配置されているサーバ群によって実装されている。なお、プラットフォームシステム30が、リージョナルデータセンタ12に配置されているサーバ群によって実装されていてもよい。
 本実施形態では例えば、購入者によるネットワークサービス(NS)の購入要求に応じて、購入要求がされたネットワークサービスがRAN32やコアネットワークシステム34に構築される。そして、構築されたネットワークサービスが購入者に提供される。
 例えば、MVNO(Mobile Virtual Network Operator)である購入者に、音声通信サービスやデータ通信サービス等のネットワークサービスが提供される。本実施形態によって提供される音声通信サービスやデータ通信サービスは、図1及び図2に示すUE20を利用する、購入者(上述の例ではMVNO)にとっての顧客(エンドユーザ)に対して最終的に提供されることとなる。当該エンドユーザは、RAN32やコアネットワークシステム34を介して他のユーザとの間で音声通信やデータ通信を行うことが可能である。また、当該エンドユーザのUE20は、RAN32やコアネットワークシステム34を介してインターネット等のデータネットワークにアクセスできるようになっている。
 また、本実施形態において、ロボットアームやコネクテッドカーなどを利用するエンドユーザに対して、IoTサービスが提供されても構わない。そして、この場合において、例えば、ロボットアームやコネクテッドカーなどを利用するエンドユーザが本実施形態に係るネットワークサービスの購入者となっても構わない。
 本実施形態では、セントラルデータセンタ10、リージョナルデータセンタ12、及び、エッジデータセンタ14に配置されているサーバには、ドッカー(Docker)などのコンテナ型のアプリケーション実行環境がインストールされており、これらのサーバにコンテナをデプロイして稼働させることができるようになっている。これらのサーバにおいて、クバネテス(Kubernetes)等のコンテナ管理ツールによって管理されるクラスタ(クバネテスクラスタ)が構築されていてもよい。そして、構築されたクラスタ上のプロセッサがコンテナ型のアプリケーションを実行してもよい。
 そして本実施形態において購入者に提供されるネットワークサービスは、1又は複数の機能ユニット(例えば、ネットワークファンクション(NF))から構成される。本実施形態では、当該機能ユニットは、コンテナベースの機能ユニットであるCNF(Containerized Network Function)によって実装される。また、本実施形態に係る機能ユニットは、ネットワークノードに相当するものであってもよい。
 図3は、稼働中のネットワークサービスの一例を模式的に示す図である。図3に示すネットワークサービスには、複数のRU40、複数のDU42、複数のCU44、及び、複数のUPF(User Plane Function)46などのNFがソフトウェア要素として含まれている。なお、当該ネットワークサービスには、AMF(Access and Mobility Management Function)や、SMF(Session Management Function)などといった他のソフトウェア要素も含まれるが、これらの要素については記載を省略する。また、ネットワークサービスは、複数のサーバ等のコンピュータリソース(ハードウェア要素)上に実装されている。
 そして、本実施形態では例えば、図3に示すネットワークサービスによって、あるエリアにおける通信サービスが提供される。
 そして、本実施形態では、図3に示す複数のRU40、複数のDU42、複数のCU44、及び、複数のUPF46が、1つのエンド・ツー・エンドのネットワークスライスに所属していることとする。
 図4は、本実施形態において通信システム1に構築される要素間の関連付けの一例を模式的に示す図である。
 図4に示すように、ネットワークサービス(NS)、ネットワークファンクション(NF)、CNFC(Containerized Network Function Component)、pod、及び、コンテナは、階層構成となっている。
 NSは、例えば、複数のNFから構成されるネットワークサービスに相当する。ここで、NSが、例えば、5GC、EPC、5GのRAN(gNB)、4GのRAN(eNB)、などの粒度の要素に相当するものであってもよい。
 NFは、5Gでは、例えば、DU42、CU44、UPF46、などの粒度の要素に相当する。また、NFは、AMF、SMFなどの粒度の要素に相当する。また、NFは、4Gでは、例えば、MME(Mobility Management Entity)、HSS(Home Subscriber Server)、S-GW(Serving Gateway)、vDU、vCUなどの粒度の要素に相当する。本実施形態では例えば、1つのNSには、1又は複数のNFが含まれる。すなわち、1又は複数のNFが、1つのNSの配下にあることとなる。
 CNFCは、例えば、DU mgmtやDU Processingなどの粒度の要素に相当する。CNFCは、1つ以上のコンテナとしてサーバにデプロイされるマイクロサービスであってもよい。例えば、あるCNFCは、DU42、CU44等の機能のうち一部の機能を提供するマイクロサービスであってもよい。また、あるCNFCは、UPF46、AMF、SMF等の機能のうちの一部の機能を提供するマイクロサービスであってもよい。本実施形態では例えば、1つのNFには、1又は複数のCNFCが含まれる。すなわち、1又は複数のCNFCが、1つのNFの配下にあることとなる。
 podは、例えば、クバネテスでドッカーコンテナを管理するための最小単位を指す。本実施形態では例えば、1つのCNFCには、1又は複数のpodが含まれる。すなわち、1又は複数のpodが、1つのCNFCの配下にあることとなる。
 そして、本実施形態では例えば、1つのpodには、1又は複数のコンテナが含まれる。すなわち、1又は複数のコンテナが、1つのpodの配下にあることとなる。
 また、図4に示すように、ネットワークスライス(NSI)とネットワークスライスサブネットインスタンス(NSSI)とは階層構成となっている。
 NSIは、複数ドメイン(例えばRAN32からコアネットワークシステム34)に跨るエンド・ツー・エンドの仮想回線とも言える。NSIは、高速大容量通信用のスライス(例えば、eMBB)、高信頼度かつ低遅延通信用のスライス(例えば、URLLC)、又は、大量端末の接続用のスライス(例えば、mMTC)であってもよい。NSSIは、NSIを分割した単一ドメインの仮想回線とも言える。NSSIは、RANドメインのスライス、MBH(Mobile Back Haul)ドメインのスライス、又は、コアネットワークドメインのスライスであってもよい。
 本実施形態では例えば、1つのNSIには、1又は複数のNSSIが含まれる。すなわち、1又は複数のNSSIが、1つのNSIの配下にあることとなる。なお、本実施形態において、複数のNSIが同じNSSIを共有してもよい。
 また、図4に示すように、NSSIとNSとは、一般的には、多対多の関係となる。
 また、本実施形態では例えば、1つのNFは、1又は複数のネットワークスライスに所属できるようになっている。具体的には例えば、1つのNFには、1又は複数のS-NSSAI(Sub Network Slice Selection Assist Information)を含むNSSAI(Network Slice Selection Assistance Information)を設定できるようになっている。ここで、S-NSSAIは、ネットワークスライスに対応付けられる情報である。なお、NFが、ネットワークスライスに所属していなくてもよい。
 図5は、本実施形態に係るプラットフォームシステム30で実装される機能の一例を示す機能ブロック図である。なお、本実施形態に係るプラットフォームシステム30で、図5に示す機能のすべてが実装される必要はなく、また、図5に示す機能以外の機能が実装されていても構わない。
 図5に示すように、本実施形態に係るプラットフォームシステム30には、機能的には例えば、オペレーションサポートシステム(OSS)部50、オーケストレーション(E2EO:End-to-End-Orchestration)部52、サービスカタログ記憶部54、AI・ビッグデータ処理部56、監視機能部58、SDNコントローラ60、構成管理部62、コンテナ管理部64、リポジトリ部66、が含まれている。そして、OSS部50には、インベントリデータベース70、チケット管理部72、障害管理部74、性能管理部76、が含まれている。そして、E2EO部52には、ポリシーマネージャ部80、スライスマネージャ部82、ライフサイクル管理部84、が含まれている。これらの要素は、プロセッサ30a、記憶部30b、及び、通信部30cを主として実装される。
 以上の機能は、コンピュータであるプラットフォームシステム30にインストールされた、以上の機能に対応する指令を含むプログラムをプロセッサ30aで実行することにより実装されてもよい。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等のコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどを介してプラットフォームシステム30に供給されてもよい。また、以上の機能が、回路ブロック、メモリ、その他のLSIで実装されてもよい。また、以上の機能が、ハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところである。
 コンテナ管理部64には、本実施形態では例えば、コンテナのデプロイや設定などといったコンテナの構築を含む、コンテナのライフサイクル管理を実行する。
 ここで、本実施形態に係るプラットフォームシステム30に、複数のコンテナ管理部64が含まれていてもよい。そして、複数のコンテナ管理部64のそれぞれには、クバネテス等のコンテナ管理ツール、及び、ヘルム(Helm)等のパッケージマネージャがインストールされていてもよい。そして、複数のコンテナ管理部64は、それぞれ、当該コンテナ管理部64に対応付けられるサーバ群(クバネテスクラスタ)に対して、コンテナのデプロイ等のコンテナの構築を実行してもよい。
 なお、コンテナ管理部64は、プラットフォームシステム30に含まれている必要はない。コンテナ管理部64は、例えば、当該コンテナ管理部64によって管理されるサーバ(すなわち、RAN32やコアネットワークシステム34)、あるいは、当該コンテナ管理部64によって管理されるサーバに併設されているサーバに設けられていてもよい。
 リポジトリ部66は、本実施形態では例えば、ネットワークサービスを実現する機能ユニット群(例えば、NF群)に含まれるコンテナのコンテナイメージを記憶する。
 インベントリデータベース70は、本実施形態では例えば、プラットフォームシステム30で管理されている、RAN32やコアネットワークシステム34に配置されている複数のサーバについてのインベントリ情報が格納されたデータベースである。
 本実施形態では例えば、インベントリデータベース70には、物理インベントリデータ、及び、論理インベントリデータを含む、インベントリデータが記憶されている。インベントリデータには、通信システム1に含まれる要素群の構成や要素間の関連付けの現況が示されている。また、インベントリデータには、プラットフォームシステム30で管理されているリソースの状況(例えば、リソースの使用状況)が示されている。
 図6は、物理インベントリデータのデータ構造の一例を示す図である。図6に示す物理インベントリデータは、1つのサーバに対応付けられる。図6に示す物理インベントリデータには、例えば、サーバID、ロケーションデータ、建物データ、階数データ、ラックデータ、スペックデータ、ネットワークデータ、稼働コンテナIDリスト、クラスタID、などが含まれる。
 物理インベントリデータに含まれるサーバIDは、例えば、当該物理インベントリデータに対応付けられるサーバの識別子である。
 物理インベントリデータに含まれるロケーションデータは、例えば、当該物理インベントリデータに対応付けられるサーバのロケーション(例えばロケーションの住所)を示すデータである。
 物理インベントリデータに含まれる建物データは、例えば、当該物理インベントリデータに対応付けられるサーバが配置されている建物(例えば建物名)を示すデータである。
 物理インベントリデータに含まれる階数データは、例えば、当該物理インベントリデータに対応付けられるサーバが配置されている階数を示すデータである。
 物理インベントリデータに含まれるラックデータは、例えば、当該物理インベントリデータに対応付けられるサーバが配置されているラックの識別子である。
 物理インベントリデータに含まれるスペックデータは、例えば、当該物理インベントリデータに対応付けられるサーバのコア数、メモリ容量、ハードディスク容量、などといった、当該サーバのスペックを示すデータである。
 物理インベントリデータに含まれるネットワークデータは、例えば、当該物理インベントリデータに対応付けられるサーバが備えるNICや当該NICが備えるポート数、各ポートのポートIDなどを示すデータである。
 物理インベントリデータに含まれる稼働コンテナIDリストは、例えば、当該物理インベントリデータに対応付けられるサーバで稼働する1又は複数のコンテナのインスタンスの識別子(コンテナID)のリストを示すデータである。
 物理インベントリデータに含まれるクラスタIDは、例えば、当該物理インベントリデータに対応付けられるサーバが所属するクラスタ(例えば、クバネテスクラスタ)の識別子である。
 そして、論理インベントリデータには、通信システム1に含まれる複数の要素についての、図4に示されているような要素間の関連付けの現況を示すトポロジーデータが含まれている。例えば、論理インベントリデータには、あるNSの識別子と当該NSの配下にある1又は複数のNFの識別子とを含むトポロジーデータが含まれる。また、例えば、論理インベントリデータには、あるネットワークスライスの識別子と当該ネットワークスライスに所属する1又は複数のNFの識別子とを含むトポロジーデータが含まれる。
 また、インベントリデータに、通信システム1に含まれる要素間の地理的な関係やトポロジー的な関係などの現況が示されていてもよい。上述のインベントリデータには、通信システム1に含まれる要素が稼働しているロケーション、すなわち、通信システム1に含まれる要素の現在のロケーションを示すロケーションデータが含まれている。このことから、上述のインベントリデータには、要素間の地理的な関係(例えば、要素間の地理的な近さ)の現況が示されていると言える。
 また、論理インベントリデータに、ネットワークスライスのインスタンスの識別子や当該ネットワークスライスの種類等の属性を示すデータであるNSIデータが含まれていてもよい。また、論理インベントリデータに、ネットワークスライスサブネットのインスタンスの識別子や当該ネットワークスライスの種類等の属性を示すデータであるNSSIデータが含まれていてもよい。
 また、論理インベントリデータに、NSのインスタンスの識別子や当該NSの種類等の属性を示すデータであるNSデータが含まれていてもよい。また、論理インベントリデータに、NFのインスタンスの識別子や当該NFの種類等の属性を示すNFデータが含まれていてもよい。また、論理インベントリデータに、CNFCのインスタンスの識別子や当該CNFCの種類等の属性を示すCNFCデータが含まれていてもよい。また、論理インベントリデータに、CNFCに含まれるpodのインスタンスの識別子や当該podの種類等の属性を示すpodデータが含まれていてもよい。また、論理インベントリデータに、podに含まれるコンテナのインスタンスのコンテナIDや当該コンテナの種類等の属性を示すコンテナデータが含まれていてもよい。
 論理インベントリデータに含まれるコンテナデータのコンテナIDと、物理インベントリデータに含まれる稼働コンテナIDリストに含まれるコンテナIDと、によって、コンテナのインスタンスと、当該コンテナのインスタンスが稼働しているサーバとが関連付けられることとなる。
 また、ホスト名やIPアドレスなどの各種の属性を示すデータが論理インベントリデータに含まれる上述のデータに設定されていても構わない。例えば、コンテナデータに、当該コンテナデータに対応するコンテナのIPアドレスを示すデータが含まれていてもよい。また、例えば、CNFCデータに、当該CNFCデータが示すCNFCのIPアドレス及びホスト名を示すデータが含まれていてもよい。
 また、論理インベントリデータに、各NFに設定されている、1又は複数のS-NSSAIを含むNSSAIを示すデータが含まれていてもよい。
 また、インベントリデータベース70は、コンテナ管理部64と連携して、リソースの状況を適宜把握できるようになっている。そして、インベントリデータベース70は、リソースの最新の状況に基づいて、インベントリデータベース70に記憶されているインベントリデータを適宜更新する。
 また、例えば、通信システム1に含まれる新規要素の構築、通信システム1に含まれる要素の構成変更、通信システム1に含まれる要素のスケーリング、通信システム1に含まれる要素のリプレース、などのアクションが実行されることに応じて、インベントリデータベース70は、インベントリデータベース70に記憶されているインベントリデータを更新する。
 サービスカタログ記憶部54は、本実施形態では例えば、サービスカタログデータを記憶する。
 サービスカタログデータには、例えば、ライフサイクル管理部84によって利用されるロジックなどを示すサービステンプレートデータが含まれていてもよい。このサービステンプレートデータには、ネットワークサービスを構築するために必要な情報が含まれる。具体的には例えば、サービステンプレートデータは、NS、NF及びCNFCを定義する情報と、NS-NF-CNFCの対応関係を示す情報を含む。また、例えば、サービステンプレートデータは、ネットワークサービスを構築するためのワークフローのスクリプトを含む。
 サービステンプレートデータの一例として、NSD(NS Descriptor)が挙げられる。NSDは、ネットワークサービスに対応付けられるものであり、当該ネットワークサービスに含まれる複数の機能ユニット(例えば複数のCNF)の種類などが示されている。なお、NSDに、CNF等の機能ユニットの種類ごとについての、当該ネットワークサービスに含まれる数が示されていてもよい。また、NSDに、当該ネットワークサービスに含まれるCNFに係る、後述するCNFDのファイル名が示されていてもよい。
 また、サービステンプレートデータの一例として、CNFD(CNF Descriptor)が挙げられる。CNFDに、当該CNFが必要とするコンピュータリソース(CPU、メモリ、ハードディスクなど)が示されていてもよい。例えば、CNFDに、当該CNFに含まれる複数のコンテナのそれぞれについての、当該コンテナが必要とするコンピュータリソース(CPU、メモリ、ハードディスクなど)が示されていてもよい。
 また、サービスカタログデータに、ポリシーマネージャ部80によって利用される、算出された性能指標値と比較する閾値(例えば異常検出用閾値)に関する情報が含まれていてもよい。
 また、サービスカタログデータに、例えば、スライスマネージャ部82によって利用されるロジックを示すスライステンプレートデータが含まれていてもよい。スライステンプレートデータには、ネットワークスライスのインスタンス化を実行するために必要な情報が含まれる。
 スライステンプレートデータは、GSMA(GSM Association)(「GSM」は登録商標)が定める「Generic Network Slice Template」の情報を含む。具体的には、スライステンプレートデータは、ネットワークスライスのテンプレートデータ(NST)、ネットワークスライスサブネットのテンプレートデータ(NSST)、ネットワークサービスのテンプレートデータを含む。また、スライステンプレートデータは、図4に示したような、これらの要素の階層構成を示す情報を含む。
 ライフサイクル管理部84は、本実施形態では例えば、購入者によるNSの購入要求に応じて、購入要求がされた新たなネットワークサービスを構築する。
 ライフサイクル管理部84は、例えば、購入要求に応じて、購入されるネットワークサービスに対応付けられるワークフローのスクリプトを実行してもよい。そして、このワークフローのスクリプトを実行することで、ライフサイクル管理部84は、コンテナ管理部64に、購入される新たなネットワークサービスに含まれるコンテナのデプロイを指示してもよい。そして、コンテナ管理部64は、当該コンテナのコンテナイメージをリポジトリ部66から取得して、当該コンテナイメージに対応するコンテナを、サーバにデプロイしてもよい。
 また、ライフサイクル管理部84は、本実施形態では例えば、通信システム1に含まれる要素のスケーリングやリプレースを実行する。ここで、ライフサイクル管理部84は、コンテナのデプロイ指示や削除指示をコンテナ管理部64に出力してもよい。そして、コンテナ管理部64が、当該指示に従った、コンテナのデプロイやコンテナの削除等の処理を実行してもよい。本実施形態ではライフサイクル管理部84によって、コンテナ管理部64のクバネテスでは対応できないようなスケーリングやリプレースを実行できるようになっている。
 また、ライフサイクル管理部84が、新規に構築される要素群や、新たな設定が投入される既設の要素に対する、構成管理指示を構成管理部62に出力してもよい。そして、構成管理部62が、当該構成管理指示に従った設定等の構成管理を実行してもよい。
 また、ライフサイクル管理部84は、SDNコントローラ60に、2つのIPアドレスに関連付けられた、これら2つのIPアドレス間の通信経路の作成指示を出力してもよい。
 スライスマネージャ部82は、本実施形態では例えば、ネットワークスライスのインスタンス化を実行する。スライスマネージャ部82は、本実施形態では例えば、サービスカタログ記憶部54に記憶されているスライステンプレートが示すロジックを実行することで、ネットワークスライスのインスタンス化を実行する。
 スライスマネージャ部82は、例えば、3GPP(登録商標)の仕様書「TS28 533」に記載される、NSMF(Network Slice Management Function)と、NSSMF(Network Slice Sub-network Management Function)の機能を含んで構成される。NSMFは、ネットワークスライスを生成し、管理する機能であり、NSIのマネジメントを提供する。NSSMFは、ネットワークスライスの一部を構成するネットワークスライスサブネットを生成し、管理する機能であり、NSSIのマネジメントを提供する。
 ここで、スライスマネージャ部82が、ネットワークスライスのインスタンス化に関係する構成管理指示を構成管理部62に出力してもよい。そして、構成管理部62が、当該構成管理指示に従った設定等の構成管理を実行してもよい。
 また、スライスマネージャ部82は、SDNコントローラ60に、2つのIPアドレスに関連付けられた、これら2つのIPアドレス間の通信経路の作成指示を出力してもよい。
 構成管理部62は、本実施形態では例えば、ライフサイクル管理部84やスライスマネージャ部82から受け付ける構成管理指示に従って、NF等の要素群の設定等の構成管理を実行する。
 SDNコントローラ60は、本実施形態では例えば、ライフサイクル管理部84又はスライスマネージャ部82から受け付ける通信経路の作成指示に従って、当該作成指示に関連付けられている2つのIPアドレス間の通信経路を作成する。
 ここで例えば、SDNコントローラ60は、セグメントルーティング技術(例えばSRv6(セグメントルーティングIPv6))を用いて、通信経路間に存在するアグリゲーションルータや、サーバなどに対して、NSIやNSSIを構築してもよい。また、SDNコントローラ60は、複数の設定対象のNFに対して、共通のVLAN(Virtual Local Area Network)を設定するコマンド、及び、当該VLANに設定情報が示す帯域幅や優先度を割り当てるコマンドを発行することにより、それら複数の設定対象のNFにわたるNSI及びNSSIを生成してもよい。
 なお、SDNコントローラ60は、ネットワークスライスを構築することなく、2つのIPアドレス間の通信で利用可能な帯域幅の上限の変更などを実行してもよい。
 監視機能部58は、本実施形態では例えば、通信システム1に含まれる要素群を、所与の管理ポリシーに従って監視する。ここで、監視機能部58は、例えば、ネットワークサービスの購入の際に購入者によって指定される監視ポリシーに従って、要素群を監視してもよい。
 監視機能部58は、本実施形態では例えば、スライスのレベル、NSのレベル、NFのレベル、CNFCのレベル、サーバ等のハードウェアのレベル、などといった、様々なレベルでの監視を実行する。
 監視機能部58は、例えば、上述の様々なレベルでの監視が行えるよう、メトリックデータを出力するモジュールをサーバ等のハードウェアや通信システム1に含まれるソフトウェア要素に設定してもよい。ここで例えば、NFが、当該NFにおいて測定可能(特定可能)なメトリックを示すメトリックデータを監視機能部58に出力するようにしてもよい。また、サーバが、当該サーバにおいて測定可能(特定可能)なハードウェアに関するメトリックを示すメトリックデータを監視機能部58に出力するようにしてもよい。
 また、例えば、監視機能部58は、サーバに、複数のコンテナから出力されたメトリックを示すメトリックデータをCNFC(マイクロサービス)単位に集計するサイドカーコンテナをデプロイしてもよい。このサイドカーコンテナは、エクスポーターと呼ばれるエージェントを含んでもよい。監視機能部58は、プロメテウス(Prometheus)の仕組みを利用して、マイクロサービス単位に集計されたメトリックデータをサイドカーコンテナから取得する処理を、所与の監視間隔で繰り返し実行してもよい。
 監視機能部58は、例えば、「TS 28.552, Management and orchestration; 5G performance measurements」または「TS 28.554, Management and orchestration; 5G end to end Key Performance Indicators (KPI)」に記載された性能指標についての性能指標値を監視してもよい。そして、監視機能部58は、監視される性能指標値を示すメトリックデータを取得してもよい。
 そして、監視機能部58は、例えば、上述のメトリックデータを取得すると、当該メトリックデータをAI・ビッグデータ処理部56に出力する。
 また、通信システム1に含まれるネットワークスライス、NS、NF、CNFC等の要素や、サーバ等のハードウェアは、監視機能部58に、各種のアラートの通知(例えば、障害の発生をトリガとしたアラートの通知)を行う。
 そして、監視機能部58は、例えば、上述のアラートの通知を受け付けると、当該通知をAI・ビッグデータ処理部56に出力する。
 AI・ビッグデータ処理部56は、本実施形態では例えば、監視機能部58から出力されるメトリックデータやアラートの通知を蓄積する。また、AI・ビッグデータ処理部56には、本実施形態では例えば、学習済の機械学習モデルが予め記憶されている。
 そして、AI・ビッグデータ処理部56は、本実施形態では例えば、蓄積されるメトリックデータと、上述の機械学習モデルと、に基づいて、例えば、通信システム1の利用状況やサービス品質の将来予測処理などの推定処理を実行する。AI・ビッグデータ処理部56は、推定処理の結果を示す推定結果データを生成してもよい。
 性能管理部76は、本実施形態では例えば、複数のメトリックデータに基づいて、これらのメトリックデータが示すメトリックに基づく性能指標値(例えば、KPI)を算出する。性能管理部76は、単一のメトリックデータからは算出できない、複数の種類のメトリックの総合評価である性能指標値(例えば、エンド・ツー・エンドのネットワークスライスに係る性能指標値)を算出してもよい。性能管理部76は、総合評価である性能指標値を示す総合性能指標値データを生成してもよい。
 なお、性能管理部76は、メトリックデータを、図5に示すように監視機能部58からAI・ビッグデータ処理部56を経由して取得してもよいし、監視機能部58から直接取得してもよい。また、性能管理部76は、上述の推定結果データに基づいて、性能指標値を算出してもよい。
 障害管理部74は、本実施形態では例えば、上述のメトリックデータ、上述のアラートの通知、上述の推定結果データ、上述の総合性能指標値データのうちの少なくともいずれかに基づいて、通信システム1における障害の発生を検出する。障害管理部74は、例えば、所定のロジックに基づいて、単一のメトリックデータや単一のアラートの通知からでは検出できないような障害の発生を検出してもよい。障害管理部74は、検出された障害を示す検出障害データを生成してもよい。
 なお、障害管理部74は、メトリックデータやアラートの通知を、監視機能部58から直接取得してもよいし、AI・ビッグデータ処理部56や性能管理部76を介して取得してもよい。また、障害管理部74は、推定結果データを、AI・ビッグデータ処理部56から直接取得してもよいし、性能管理部76を介して取得してもよい。
 ポリシーマネージャ部80は、本実施形態では例えば、上述のメトリックデータ、上述のアラートの通知、上述の推定結果データ、上述の総合性能指標値データ、上述の検出障害データ、のうちの少なくともいずれかに基づいて、所定の判定処理を実行する。
 そして、ポリシーマネージャ部80は、判定処理の結果に応じたアクションを実行してもよい。例えば、ポリシーマネージャ部80は、スライスマネージャ部82にネットワークスライスの構築指示を出力してもよい。また、ポリシーマネージャ部80は、判定処理の結果に応じて、要素のスケーリングやリプレースの指示をライフサイクル管理部84に出力してもよい。
 チケット管理部72は、本実施形態では例えば、通信システム1の管理者に通知すべき内容が示されたチケットを生成する。チケット管理部72は、発生障害データの内容を示すチケットを生成してもよい。また、チケット管理部72は、性能指標値データやメトリックデータの値を示すチケットを生成してもよい。また、チケット管理部72は、ポリシーマネージャ部80による判定結果を示すチケットを生成してもよい。
 そして、チケット管理部72は、生成されたチケットを、通信システム1の管理者に通知する。チケット管理部72は、例えば、生成されたチケットが添付された電子メールを、通信システム1の管理者の電子メールアドレスに宛てて送信してもよい。
 以下、実行基盤(例えば、クバネテスクラスタやサーバなど)へのNF等のアプリケーションの追加に関する処理について、さらに説明する。
 本実施形態では例えば、監視機能部58が、通信システム1に含まれる複数の実行基盤(例えば、クバネテスクラスタやサーバなど)のそれぞれにおけるリソースの使用状況を監視する。また、本実施形態では例えば、監視機能部58は、実行基盤で実行されているアプリケーションのそれぞれにおけるリソースの使用状況を監視する。
 ここで、監視されるリソースの使用状況は、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、及び、電力の使用状況、のうちの少なくとも1つであってもよい。
 CPUの使用状況の一例としては、CPU使用率が挙げられる。メモリの使用状況の一例としては、メモリ使用量やメモリ使用率が挙げられる。ストレージの使用状況の一例としては、ストレージ使用量やストレージ使用率が挙げられる。ネットワークの使用状況の一例としては、帯域幅使用量や帯域幅使用率などが挙げられる。電力の使用状況の一例としては、消費電力量などが挙げられる。
 そして、監視機能部58は、監視の結果を示すメトリックデータを、AI・ビッグデータ処理部56に出力する。このようにして、AI・ビッグデータ処理部56には、メトリックデータが蓄積される。
 ここで、本実施形態において、通信システム1にアプリケーションを追加することが決定されたとする。例えば、NSの購入をトリガとした新規のNFの構築、あるいは、負荷の増加をトリガとしたNFのスケールアウト、などの処理を実行することが決定されたとする。
 以下、通信システム1に追加されることが決定されたアプリケーション、すなわち、通信システム1に追加予定のアプリケーションを、追加予定アプリケーションと呼ぶこととする。
 通信システム1への追加予定アプリケーションの追加が決定されると、AI・ビッグデータ処理部56は、通信システム1に含まれる複数の実行基盤のうちから、追加予定アプリケーションが実行可能な実行基盤を特定する。
 ここで本実施形態において、アプリケーションの種類ごとに、当該種類のアプリケーションが実行可能な実行基盤に係る要件が予め定められていてもよい。
 当該要件は、例えば、ハードウェアに係る要件(以下、ハードウェア要件と呼ぶ。)であってもよい。ハードウェア要件は、例えば、SRIOV(Single Root I/O Virtualization)が実装されていること、GPU(Graphics Processing Unit)が搭載されていること、FPGA(field-programmable gate array)が搭載されていること、などであってもよい。また、ハードウェア要件は、例えば、実装されているGPUの数が所定数以上である、実装されているメモリのサイズが所定のサイズ以上である、実装されているストレージのサイズが所定のサイズ以上である、などであってもよい。
 また、当該要件は、例えば、実行基盤が配置されているロケーションに係る要件であってもよい。
 なお、上述の要件は、例えば、サービスカタログ記憶部54に記憶されているCNFDに記述されていてもよい。そして、AI・ビッグデータ処理部56は、サービスカタログ記憶部54に記憶されているCNFDを参照することで、上述の要件を特定してもよい。
 そして、アプリAI・ビッグデータ処理部56は、追加予定アプリケーションの種類に対応付けられる上述の要件に基づいて、通信システム1に含まれる複数の実行基盤のうちから、追加予定アプリケーションが実行可能な実行基盤を特定してもよい。以下、追加予定アプリケーションが実行可能な実行基盤として特定された実行基盤を、候補基盤と呼ぶこととする。
 そして、AI・ビッグデータ処理部56は、例えば、複数の候補基盤のそれぞれについて、直近の期間におけるリソースの使用状況を示すメトリックデータを抽出する。例えば、直近の所定長(例えば、1ヶ月)における、リソースの使用状況を示すメトリックデータが抽出されてもよい。
 そして、AI・ビッグデータ処理部56は、本実施形態では例えば、複数の候補基盤のそれぞれについて、当該候補基盤におけるリソースの使用状況の実績値を特定する。例えば、AI・ビッグデータ処理部56は、本実施形態では例えば、複数の候補基盤のそれぞれについて、当該候補基盤について抽出されたメトリックデータに基づいて、当該候補基盤におけるリソースの使用状況の実績値を特定する。実績値が特定される当該使用状況は、例えば、上述のように、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、又は、電力の使用状況、のうちの少なくとも1つであってもよい。
 ここで、AI・ビッグデータ処理部56は、候補基盤で実行されているアプリケーションごとの、リソースの使用状況を示すメトリックデータを抽出してもよい。そして、AI・ビッグデータ処理部56は、抽出されたメトリックデータが示す、候補基盤で実行されているアプリケーションのそれぞれにおけるリソースの使用状況の実績値の合計を、当該候補基盤におけるリソースの使用状況の実績値として特定してもよい。
 また、AI・ビッグデータ処理部56は、抽出されたメトリックデータに基づいて、図7に例示されている、候補基盤におけるリソースの使用状況の実績値を示す、使用状況実績値データを生成してもよい。
 本実施形態に係る使用状況実績値データには、それぞれが互いに異なる種類のリソースの使用状況を示す複数の個別実績値データが含まれていてもよい。図7の例では、使用状況実績値データには、5個の個別実績値データ(CPU実績値データ、メモリ実績値データ、ストレージ実績値データ、ネットワーク実績値データ、及び、消費電力実績値データ)が含まれる。
 そして、個別実績値データには、期間種別にそれぞれ対応付けられる複数の期間実績値データが含まれていてもよい。本実施形態では例えば、図7に示すように、平日と休日についての、3時間ごとの8つの時間帯にそれぞれが対応付けられる、16個の期間種別についてのリソースの使用状況の実績値が特定される。そして、特定される実績値が、当該実績値に対応付けられる期間種別の期間実績値データの値に設定される。
 例えば、直近の1ヶ月におけるリソースの使用状況を示すメトリックデータのうちから、平日の0時~3時の時間帯についてのCPUの使用状況を示すメトリックデータが特定されてもよい。そして、特定されたメトリックデータに基づいて、CPU実績値データに含まれる平日の0時~3時に対応付けられる期間実績値データの値が決定されてもよい。ここで例えば、特定されたメトリックデータが示すCPU使用率の平均値や最大値などといった代表値a1が、CPU実績値データに含まれる平日の0時~3時に対応付けられる期間実績値データの値に設定されてもよい。
 同様にして、CPU実績値データに含まれるその他の期間実績値データの値も決定されることで、図7に示すCPU実績値データは生成される。
 また、同様にして、直近の1ヶ月におけるメモリの使用状況を示すメトリックデータに基づいて、メモリ実績値データが生成される。また、直近の1ヶ月におけるストレージの使用状況を示すメトリックデータに基づいて、ストレージ実績値データが生成される。また、直近の1ヶ月におけるネットワークの使用状況を示すメトリックデータに基づいて、ネットワーク実績値データが生成される。また、直近の1ヶ月における電力の使用状況を示すメトリックデータに基づいて、消費電力実績値データが生成される。
 そして、AI・ビッグデータ処理部56は、本実施形態では例えば、複数の候補基盤のそれぞれについて、当該候補基盤に係る上述の実績値に基づいて、当該候補基盤に追加予定アプリケーションが構築された場合の当該実行基盤におけるリソースの使用状況の予測値を特定する。AI・ビッグデータ処理部56は、期間種別ごとの上述の予測値を特定してもよい。
 ここで例えば、追加予定アプリケーションが必要とするリソース量が予め定められていてもよい。例えば、追加予定アプリケーションが必要とするリソース量が、上述のCNFDに記述されていてもよい。そして、AI・ビッグデータ処理部56は、サービスカタログ記憶部54に記憶されているCNFDを参照することで、追加予定アプリケーションが必要とするリソース量を特定してもよい。
 ここで例えば、CPU、メモリ、ストレージ、ネットワーク、消費電力のそれぞれについて、必要とするリソース量が特定されてもよい。また、上述の複数の期間種別のそれぞれについて、必要とするリソース量が特定されてもよい。
 ここで、AI・ビッグデータ処理部56は、図8に例示されている、アプリケーションに対応付けられるリソース量を示すAPリソースデータを生成してもよい。APリソースデータは、例えば、追加予定アプリケーションが必要とするリソース量を示すデータであってもよい。
 本実施形態に係るAPリソースデータには、それぞれが互いに異なる種類のリソースについてのリソース量を示す複数の個別APリソースデータが含まれていてもよい。図8の例では、APリソースデータには、5個の個別APリソースデータ(CPUAPリソースデータ、メモリAPリソースデータ、ストレージAPリソースデータ、ネットワークAPリソースデータ、及び消費電力APリソースデータ)が含まれる。
 そして、個別APリソースデータには、期間種別にそれぞれ対応付けられる複数の期間APリソースデータが含まれていてもよい。本実施形態では例えば、個別APリソースデータには、図7に示されている使用状況実績値データに含まれる期間実績値データと同様の16個の期間種別についての期間APリソースデータが含まれる。
 そして、AI・ビッグデータ処理部56は、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる上述の使用状況実績値データと、上述のAPリソースデータとに基づいて、当該候補基盤に追加予定アプリケーションが構築された場合の当該候補基盤におけるリソースの使用状況の予測値を特定してもよい。また、AI・ビッグデータ処理部56は、このようにして特定される予測値を示す、図9に例示されている、使用状況予測値データを生成してもよい。
 本実施形態に係る使用状況予測値データには、それぞれが互いに異なる種類のリソースの使用状況を示す複数の個別予測値データが含まれていてもよい。図9の例では、使用状況予測値データには、5個の個別予測値データ(CPU予測値データ、メモリ予測値データ、ストレージ予測値データ、ネットワーク予測値データ、及び、消費電力予測値データ)が含まれる。
 そして、個別予測値データには、期間種別にそれぞれ対応付けられる複数の期間予測値データが含まれていてもよい。本実施形態では例えば、図8に示すように、上述の16個の期間種別についてのリソースの使用状況の予測値が特定される。そして、特定される予測値が、当該予測値に対応付けられる期間種別の期間予測値データの値に設定される。
 例えば、図8に示されている、平日の0時~3時の時間帯についてのCPUAPリソースデータの値b1を、図7に示す値a1に加えた値c1が、CPU実績値データに含まれる平日の0時~3時に対応付けられる期間予測値データの値として決定されてもよい。そして、値c1が、CPU予測値データに含まれる平日の0時~3時に対応付けられる期間予測値データの値に設定されてもよい。
 同様にして、CPU予測値データに含まれるその他の期間予測値データの値も決定されることで、図9に示すCPU予測値データは生成される。
 また、同様にして、メモリAPリソースデータと、メモリ実績値データと、に基づいて、メモリ予測値データが生成される。また、ストレージAPリソースデータと、ストレージ実績値データと、に基づいて、ストレージ予測値データが生成される。また、ネットワークAPリソースデータと、ネットワーク実績値データと、に基づいて、ネットワーク予測値データが生成される。また、消費電力APリソースデータと、消費電力実績値データと、に基づいて、消費電力予測値データが生成される。
 なお、追加予定アプリケーションが必要とするリソース量は、実行基盤の種類(例えば、実行基盤の規模やスペックなど)に基づいて決定されるものであってもよい。そして、実行基盤の種類ごとに、APリソースデータが生成されるようにしてもよい。そして、候補基盤の使用状況実績値データと、当該候補基盤の種類に基づいて生成されるAPリソースデータと、に基づいて、当該候補基盤の使用状況予測値データが生成されてもよい。
 なお、使用状況予測値データの生成方法は、上述の方法には限定されない。
 例えば、AI・ビッグデータ処理部56が、追加予定アプリケーションと同種の実行中のアプリケーションにおけるリソースの使用状況の実績値に基づいて、候補基盤に追加予定アプリケーションが構築された場合の当該候補基盤におけるリソースの使用状況の予測値を特定してもよい。
 例えば、AI・ビッグデータ処理部56が、追加予定アプリケーションと同種のアプリケーションが動作している実行基盤における、当該アプリケーションが追加される前のリソースの使用状況の実績値と、当該アプリケーションが追加された後のリソースの使用状況の実績値と、の対応を学習した学習済の機械学習モデルを記憶してもよい。この学習済の機械学習モデルは、例えば、使用状況実績値データと、追加予定アプリケーションの種類を示すデータと、の入力に応じて、使用状況予測値データを出力するものであってもよい。
 そして、AI・ビッグデータ処理部56は、この学習済の機械学習モデルに、使用状況実績値データと、追加予定アプリケーションの種類を示すデータと、を入力することで、使用状況予測値データを生成してもよい。
 ここで、本実施形態に係る学習済の機械学習モデルが、アプリケーションの追加前と追加後とのリソースの使用状況の違いが顕著であった実行基盤についての教師データを学習した、コンサバティブなモデルであってもよい。例えば、各期間種別について、アプリケーションの追加前と追加後との当該期間種別におけるリソースの使用状況の違いが最も大きな実行基盤が特定されてもよい。そして、AI・ビッグデータ処理部56が、各期間種別について、このようにして特定される実行基盤についての当該アプリケーションが追加される前のリソースの使用状況の実績値と、当該アプリケーションが追加された後のリソースの使用状況の実績値と、の対応を機械学習モデルに学習させてもよい。そして、このようにして各期間種別について学習した学習済の機械学習モデルを用いて、使用状況予測値データが生成されるようにしてもよい。
 また、使用状況の実績値と予測値との関係を示す所与の算出式や対応規則と、使用状況実績値データと、に基づいて、使用状況予測値データが生成されるようにしてもよい。
 図7~図9の例では、期間種別の数は16であるが、期間種別の数は16には限定されない。例えば、本実施形態に係る期間種別が、各曜日についての昼間と夜間の2つの時間帯、計14の期間種別であってもよい。なお、期間種別の数は、計算量が過大にならない程度の数に抑えることが望ましい。
 そして、AI・ビッグデータ処理部56は、本実施形態では例えば、上述のようにして特定される予測値に基づいて、複数の候補基盤のそれぞれについて、当該候補基盤に追加予定アプリケーションが構築された場合における、当該候補基盤におけるリソースの使用状況の平準化の程度、又は、複数の候補基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定する。
 ここで、AI・ビッグデータ処理部56は、期間種別ごとの上述の予測値に基づいて、平準化指標値を特定してもよい。
 例えば、AI・ビッグデータ処理部56は、候補基盤に追加予定アプリケーションが構築された場合における当該候補基盤における期間種別ごとの予測値のばらつきを示す平準化指標値を特定してもよい。
 例えば、AI・ビッグデータ処理部56は、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる5個の個別予測値データのそれぞれについて、当該個別予測値データに含まれる16個の期間予測値データの値の分散を特定してもよい。
 そして、AI・ビッグデータ処理部56は、所与の重み付けがされた、5個の個別予測値データについて特定される分散の重み付き線形和を、当該候補基盤に対応付けられる平準化指標値として特定してもよい。なお、分散の代わりに標準偏差に基づいて、平準化指標値が特定されてもよい。
 このようにして特定される平準化指標値は、候補基盤に追加予定アプリケーションが構築された場合における、当該候補基盤におけるリソースの使用状況の平準化の程度を示す平準化指標値の一例に相当する。
 また、例えば、AI・ビッグデータ処理部56は、候補基盤に追加予定アプリケーションが構築された場合における当該候補基盤における期間種別ごとの予測値の最大値と最小値との差を示す平準化指標値を特定してもよい。
 例えば、AI・ビッグデータ処理部56は、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる5個の個別予測値データのそれぞれについて、当該個別予測値データに含まれる16個の期間予測値データの値のうちの最大値と最小値との差を特定してもよい。
 そして、AI・ビッグデータ処理部56は、所与の重み付けがされた、5個の個別予測値データについて特定される差の重み付き線形和を、当該候補基盤に対応付けられる平準化指標値として特定してもよい。
 このようにして特定される平準化指標値は、候補基盤に追加予定アプリケーションが構築された場合における、当該候補基盤におけるリソースの使用状況の平準化の程度を示す平準化指標値の一例に相当する。
 また、AI・ビッグデータ処理部56は、候補基盤に追加予定アプリケーションが配置された場合における、複数の候補基盤間におけるリソースの使用状況の予測値のばらつきを示す平準化指標値を特定してもよい。
 あるいは、AI・ビッグデータ処理部56は、複数の候補基盤のそれぞれについて、当該候補基盤に追加予定アプリケーションが配置された場合における当該複数の候補基盤のそれぞれにおけるリソースの使用状況の予測値と所定値との差の絶対値の合計を示す平準化指標値を特定してもよい。
 これらの場合、ある候補基盤に追加予定アプリケーションが配置された場合における平準化指標値を特定するにあたって、当該候補基盤については、使用状況予測値データの値が、リソースの使用状況の予測値に相当し、他の候補基盤については、使用状況実績値データの値が、リソースの使用状況の予測値に相当することとなる。
 例えば、候補基盤の数がn個であるとする。この場合、AI・ビッグデータ処理部56は、例えば、n個の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況実績値データに基づいて、当該候補基盤に対応付けられる実績リソース使用率を算出してもよい。例えば、複数の期間種別のそれぞれについて、CPU使用率の実績値の代表値、メモリ使用率の実績値の代表値、ストレージ使用率の実績値の代表値、及び、帯域幅使用率の実績値の代表値が算出されてもよい。そして、これら4個の代表値についての代表値が、当該候補基盤に対応付けられる実績リソース使用率として算出されてもよい。
 また、AI・ビッグデータ処理部56は、例えば、n個の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況予測値データに基づいて、当該候補基盤に対応付けられる予測リソース使用率を算出してもよい。例えば、複数の期間種別のそれぞれについて、CPU使用率の予測値の代表値、メモリ使用率の予測値の代表値、ストレージ使用率の予測値の代表値、及び、帯域幅使用率の予測値の代表値が算出されてもよい。そして、これら4個の代表値についての代表値が、当該候補基盤に対応付けられる予測リソース使用率として算出されてもよい。
 上述の代表値の一例としては、平均値や最大値が挙げられる。また、上述の「4個の代表値についての代表値」の一例としては、上述の4個の平均値の平均値、上述の4個の平均値の最大値、上述の4個の最大値の平均値、上述の4個の最大値の最大値、などが挙げられる。
 そして、AI・ビッグデータ処理部56は、上述の実績リソース使用率と上述の予測リソース使用率とに基づいて、n個の候補基盤のそれぞれについて、当該候補基盤に対応付けられる平準化指標値を算出してもよい。
 例えば、ある候補基盤である着目基盤の予測リソース使用率の値と、他の(n-1)個の候補基盤の実績リソース使用率の値と、が特定されてもよい。そして、特定されるn個の値の分散又は標準偏差が、当該着目基盤に対応付けられる平準化指標値として算出されてもよい。
 あるいは、着目基盤についての予測リソース使用率の値と所定値(例えば、70%)との差と、他の(n-1)個の候補基盤についての実績リソース使用率の値と所定値(例えば、70%)との差が特定されてもよい。そして、特定されるn個の差の絶対値の合計が、当該着目基盤に対応付けられる平準化指標値として算出されてもよい。
 このようにして特定される平準化指標値は、複数の候補基盤間におけるリソースの使用状況の平準化の程度を示す平準化指標値の一例に相当する。
 また、本実施形態において、候補基盤に追加予定アプリケーションが構築された場合における、当該候補基盤におけるリソースの使用状況の平準化の程度を示す第1の平準化指標値と、複数の候補基盤間におけるリソースの使用状況の平準化の程度を示す第2の平準化指標値と、に基づいて、当該候補基盤に対応付けられる平準化指標値が特定されてもよい。
 例えば、第1の平準化指標値と第2の平準化指標値との平均値が、当該候補基盤に対応付けられる平準化指標値として特定されてもよい。あるいは、例えば、所与の重みによる第1の平準化指標値と第2の平準化指標値との重み付き平均値が、当該候補基盤に対応付けられる平準化指標値として特定されてもよい。
 そして、ポリシーマネージャ部80が、以上のようにして特定される平準化指標値に基づいて、複数の候補基盤のうちから追加予定アプリケーションが構築される実行基盤を決定する。
 例えば、候補基盤に追加予定アプリケーションが構築された場合における当該候補基盤における期間種別ごとの予測値のばらつきを示す平準化指標値が特定される場合に、当該平準化指標値が示すばらつきの小ささに基づいて、追加予定アプリケーションが構築される実行基盤が決定されてもよい。
 また、例えば、候補基盤に追加予定アプリケーションが配置された場合における複数の候補基盤間におけるリソースの使用状況の予測値のばらつきを示す平準化指標値が特定される場合に、当該平準化指標値が示すばらつきの小ささに基づいて、追加予定アプリケーションが構築される候補基盤が決定されてもよい。
 例えば、複数の候補基盤のそれぞれに対応付けられる、ばらつきを示す平準化指標値のうちの、最も小さな値に対応付けられる候補基盤が、追加予定アプリケーションが構築される実行基盤に決定されてもよい。
 また、例えば、候補基盤に追加予定アプリケーションが構築された場合における当該候補基盤における期間種別ごとの予測値の最大値と最小値との差を示す平準化指標値が特定される場合に、当該平準化指標値が示す差の小ささに基づいて、追加予定アプリケーションが構築される実行基盤が決定されてもよい。例えば、複数の候補基盤のそれぞれに対応付けられる、差を示す平準化指標値のうちの、最も小さな値に対応付けられる候補基盤が、追加予定アプリケーションが構築される実行基盤に決定されてもよい。
 また、例えば、候補基盤に追加予定アプリケーションが配置された場合における複数の候補基盤のそれぞれにおけるリソースの使用状況の予測値と所定値との差の絶対値の合計を示す平準化指標値が特定される場合に、平準化指標値が示す差の絶対値の合計の小ささに基づいて、追加予定アプリケーションが構築される実行基盤が決定されてもよい。例えば、複数の候補基盤のそれぞれに対応付けられる、差の絶対値の合計を示す平準化指標値のうちの、最も小さな値に対応付けられる候補基盤が、追加予定アプリケーションが構築される実行基盤に決定されてもよい。
 そして、ライフサイクル管理部84、コンテナ管理部64、及び、構成管理部62が、以上のようにして追加予定アプリケーションが構築される実行基盤として決定される実行基盤に、追加予定アプリケーションを構築する。
 以上で説明した平準化指標値では、平準化の程度が高いほど平準化指標値は小さくなる。ここで、平準化の程度が高いほど値が大きくなるような平準化指標値が用いられてもよい。この場合は、複数の候補基盤のそれぞれに対応付けられる平準化指標値のうちの、最も大きな値に対応付けられる候補基盤が、追加予定アプリケーションが構築される実行基盤として決定されることとなる。
 例えば、実行基盤に対してアプリケーションがラウンドロビンで構築されるようにすると、実行基盤のリソースを有効に活用できないことがある。例えば、実行基盤で実行されるアプリケーションがカバーするエリアの人口がまちまちであるような場合に、実行基盤によってリソースの使用状況にばらつきが生じることがある。
 本実施形態では、上述の平準化指標値に基づいて追加予定アプリケーションが構築される実行基盤が決定されるので、実行基盤のリソースを有効に活用できることとなる。
 なお、本実施形態に係る平準化評価値が、追加予定アプリケーションが追加される前と追加される後とにおける、リソースの使用状況の平準化の改善度を示すものであってもよい。
 また、所定の閾値を超える予測リソース使用率に対応付けられる候補基盤については、追加予定アプリケーションが構築される実行基盤から除外されるようにしてもよい。すなわち、所定の閾値を超えない予測リソース使用率に対応付けられる候補基盤のうちから、追加予定アプリケーションが構築される実行基盤が決定されてもよい。
 ここで、本実施形態に係るプラットフォームシステム30で、通信システム1にアプリケーションが追加されることの決定をトリガとして行われる処理の流れの一例を、図10に例示するフロー図を参照しながら説明する。本処理例においても、追加されることが決定されたアプリケーションを追加予定アプリケーションと呼ぶこととする。
 まず、AI・ビッグデータ処理部56が、通信システム1に含まれる複数の実行基盤(例えば、クバネテスクラスタ)のうちから、複数の候補基盤を特定する(S101)。
 そして、AI・ビッグデータ処理部56が、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況実績値データを生成する(S102)。
 そして、AI・ビッグデータ処理部56が、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況予測値データを生成する(S103)。
 そして、AI・ビッグデータ処理部56が、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる平準化指標値を特定する(S104)。上述のように、S104に示す処理では、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況予測値データに基づいて、当該候補基盤に対応付けられる平準化指標値が特定されてもよい。あるいは、複数の候補基盤のそれぞれについて、当該候補基盤に対応付けられる使用状況予測値データと、他の候補基盤に対応付けられる使用状況実績値データと、に基づいて、当該候補基盤に対応付けられる平準化指標値が特定されてもよい。
 そして、ポリシーマネージャ部80が、S104に示す処理で複数の候補基盤のそれぞれについて特定された平準化指標値に基づいて、S101に示す処理で特定された複数の候補基盤のうちから、追加予定アプリケーションが構築される実行基盤を決定する(S105)。
 そして、ライフサイクル管理部84、コンテナ管理部64、及び、構成管理部62が、S105に示す処理で決定された実行基盤に、追加予定アプリケーションを構築して(S106)、本処理例に示す処理は終了される。
 なお、本発明は上述の実施形態に限定されるものではない。
 例えば、本実施形態に係る実行基盤は、クバネテスクラスタであってもよい。また、本実施形態に係る実行基盤は、サーバであってもよい。
 また、本実施形態に係る追加予定アプリケーションは、通信システム1に含まれるネットワークファンクションであってもよいし、例えば、ビッグデータ解析用のアプリケーションやAIなどといった、ネットワークファンクション以外のアプリケーションであってもよい。
 また、以上の説明では、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、及び、電力の使用状況のすべてに基づいて、平準化指標値が算出されているが、これらのうちの一部に基づいて、平準化指標値が算出されてもよい。例えば、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、又は、電力の使用状況のいずれか1つに基づいて、平準化指標値が算出されてもよい。
 また、本実施形態に係る機能ユニットは図3に示したものには限定されない。例えば、本実施形態に係る機能ユニットが、AMF(Access and Mobility Management Function)、SMF(Session Management Function)などといったネットワークノードであっても構わない。
 また、本実施形態に係る機能ユニットは、5GにおけるNFである必要はない。例えば、本実施形態に係る機能ユニットが、eNodeB、vDU、vCU、P-GW(Packet Data Network Gateway)、S-GW(Serving Gateway)、MME(Mobility Management Entity)、HSS(Home Subscriber Server)などといった、4Gにおけるネットワークノードであっても構わない。
 また、本実施形態に係る機能ユニットが、CNFでなく、ハイパーバイザ型やホスト型の仮想化技術を用いた、VM(Virtual Machine)ベースの機能ユニットであるVNF(Virtualized Network Function)であってもよい。また、本実施形態に係る機能ユニットがソフトウェアによって実装されている必要はなく、電子回路等のハードウェアによって実装されていてもよい。また、本実施形態に係る機能ユニットが、電子回路とソフトウェアとの組合せによって実装されていてもよい。

Claims (14)

  1.  追加予定のアプリケーションが実行可能な複数の実行基盤のそれぞれについて、当該実行基盤におけるリソースの使用状況の実績値を特定する実績値特定手段と、
     前記複数の実行基盤のそれぞれについて、当該実行基盤に係る前記実績値に基づいて、当該実行基盤に前記アプリケーションが構築された場合の当該実行基盤におけるリソースの使用状況の予測値を特定する予測値特定手段と、
     前記予測値に基づいて、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが構築された場合における、当該実行基盤におけるリソースの使用状況の平準化の程度、又は、前記複数の前記実行基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定する平準化指標値特定手段と、
     前記平準化指標値に基づいて、前記複数の前記実行基盤のうちから前記アプリケーションが構築される実行基盤を決定する実行基盤決定手段と、
     を含むことを特徴とする実行基盤決定システム。
  2.  前記実績値特定手段は、前記実行基盤で実行されているアプリケーションのそれぞれにおけるリソースの使用状況の実績値の合計を、当該実行基盤におけるリソースの使用状況の実績値として特定する、
     ことを特徴とする請求項1に記載の実行基盤決定システム。
  3.  前記予測値特定手段は、前記追加予定のアプリケーションと同種の実行中のアプリケーションにおけるリソースの使用状況の実績値に基づいて、前記予測値を特定する、
     ことを特徴とする請求項1又は2に記載の実行基盤決定システム。
  4.  前記予測値特定手段は、期間種別ごとの前記予測値を特定し、
     前記平準化指標値特定手段は、前記期間種別ごとの前記予測値に基づいて、前記平準化指標値を特定する、
     ことを特徴とする請求項1から3のいずれか一項に記載の実行基盤決定システム。
  5.  前記平準化指標値特定手段は、前記実行基盤に前記アプリケーションが構築された場合における当該実行基盤における前記期間種別ごとの前記予測値のばらつきを示す前記平準化指標値を特定し、
     前記実行基盤決定手段は、前記平準化指標値が示すばらつきの小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する、
     ことを特徴とする請求項4に記載の実行基盤決定システム。
  6.  前記平準化指標値特定手段は、前記実行基盤に前記アプリケーションが構築された場合における当該実行基盤における前記期間種別ごとの前記予測値の最大値と最小値との差を示す前記平準化指標値を特定し、
     前記実行基盤決定手段は、前記平準化指標値が示す差の小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する、
     ことを特徴とする請求項4に記載の実行基盤決定システム。
  7.  前記平準化指標値特定手段は、前記複数の前記実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが配置された場合における前記複数の前記実行基盤間におけるリソースの使用状況の予測値のばらつきを示す前記平準化指標値を特定し、
     前記実行基盤決定手段は、前記平準化指標値が示すばらつきの小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する、
     ことを特徴とする請求項1から6のいずれか一項に記載の実行基盤決定システム。
  8.  前記平準化指標値特定手段は、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが配置された場合における前記複数の実行基盤のそれぞれにおけるリソースの使用状況の予測値と所定値との差の絶対値の合計を示す前記平準化指標値を特定し、
     前記実行基盤決定手段は、前記平準化指標値が示す差の絶対値の合計の小ささに基づいて、前記アプリケーションが構築される実行基盤を決定する、
     ことを特徴とする請求項1から6のいずれか一項に記載の実行基盤決定システム。
  9.  決定される前記実行基盤に前記アプリケーションを構築する構築手段、をさらに含む、
     ことを特徴とする請求項1から8のいずれか一項に記載の実行基盤決定システム。
  10.  前記実行基盤は、クバネテスクラスタである、
     ことを特徴とする請求項1から9のいずれか一項に記載の実行基盤決定システム。
  11.  前記アプリケーションは、通信システムに含まれるアプリケーションである、
     ことを特徴とする請求項1から10のいずれか一項に記載の実行基盤決定システム。
  12.  前記アプリケーションは、ネットワークファンクションである、
     ことを特徴とする請求項11に記載の実行基盤決定システム。
  13.  前記リソースの使用状況は、CPUの使用状況、メモリの使用状況、ストレージの使用状況、ネットワークの使用状況、又は、電力の使用状況、のうちの少なくとも1つである、
     ことを特徴とする請求項1から12のいずれか一項に記載の実行基盤決定システム。
  14.  追加予定のアプリケーションが実行可能な複数の実行基盤のそれぞれについて、当該実行基盤におけるリソースの使用状況の実績値を特定するステップと、
     前記複数の実行基盤のそれぞれについて、当該実行基盤に係る前記実績値に基づいて、当該実行基盤に前記アプリケーションが構築された場合の当該実行基盤におけるリソースの使用状況の予測値を特定するステップと、
     前記予測値に基づいて、前記複数の実行基盤のそれぞれについて、当該実行基盤に前記アプリケーションが構築された場合における、当該実行基盤におけるリソースの使用状況の平準化の程度、又は、前記複数の前記実行基盤間におけるリソースの使用状況の平準化の程度のうちの少なくとも一方を示す平準化指標値を特定するステップと、
     前記平準化指標値に基づいて、前記複数の前記実行基盤のうちから前記アプリケーションが構築される実行基盤を決定するステップと、
     を含むことを特徴とする実行基盤決定方法。
PCT/JP2022/020272 2022-05-13 2022-05-13 実行基盤決定システム及び実行基盤決定方法 WO2023218663A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/020272 WO2023218663A1 (ja) 2022-05-13 2022-05-13 実行基盤決定システム及び実行基盤決定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/020272 WO2023218663A1 (ja) 2022-05-13 2022-05-13 実行基盤決定システム及び実行基盤決定方法

Publications (1)

Publication Number Publication Date
WO2023218663A1 true WO2023218663A1 (ja) 2023-11-16

Family

ID=88730212

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/020272 WO2023218663A1 (ja) 2022-05-13 2022-05-13 実行基盤決定システム及び実行基盤決定方法

Country Status (1)

Country Link
WO (1) WO2023218663A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014167713A (ja) * 2013-02-28 2014-09-11 Fujitsu Ltd 情報処理装置、情報処理システム、情報処理装置管理プログラム及び情報処理装置管理方法
JP2017215933A (ja) * 2016-05-26 2017-12-07 富士通株式会社 情報処理装置、及び、負荷分散制御方法
JP2020160775A (ja) * 2019-03-26 2020-10-01 日本電気株式会社 コンテナ起動ホスト選択装置、コンテナ起動ホスト選択システム、コンテナ起動ホスト選択方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014167713A (ja) * 2013-02-28 2014-09-11 Fujitsu Ltd 情報処理装置、情報処理システム、情報処理装置管理プログラム及び情報処理装置管理方法
JP2017215933A (ja) * 2016-05-26 2017-12-07 富士通株式会社 情報処理装置、及び、負荷分散制御方法
JP2020160775A (ja) * 2019-03-26 2020-10-01 日本電気株式会社 コンテナ起動ホスト選択装置、コンテナ起動ホスト選択システム、コンテナ起動ホスト選択方法及びプログラム

Similar Documents

Publication Publication Date Title
US10812395B2 (en) System and method for policy configuration of control plane functions by management plane functions
US10481953B2 (en) Management system, virtual communication-function management node, and management method for managing virtualization resources in a mobile communication network
US10481935B2 (en) Management system, overall management node, and management method for managing virtualization resources in a mobile communication network
US10057109B2 (en) Defining interdependent virtualized network functions for service level orchestration
EP3053041B1 (en) Method, system, computer program and computer program product for monitoring data packet flows between virtual machines, vms, within a data centre
US9929918B2 (en) Profile-based SLA guarantees under workload migration in a distributed cloud
US20230043362A1 (en) Computer system and network slice management method
WO2023218663A1 (ja) 実行基盤決定システム及び実行基盤決定方法
WO2023218664A1 (ja) リプレースシステム及びリプレース方法
WO2023188185A1 (ja) 配置システム及び配置方法
WO2024069948A1 (ja) 通信システムに含まれるハードウェアリソースの管理
WO2024069949A1 (ja) 通信システムに含まれるハードウェアリソースの管理
WO2024047774A1 (ja) 通信システムに係る所与の予測目的で用いられる機械学習モデルの決定
WO2023157200A1 (ja) スケーリング制御システム及びスケーリング制御方法
WO2023157199A1 (ja) 妥当性検証システム及び妥当性検証方法
WO2024047775A1 (ja) 通信システムに係る所与の予測目的で用いられる機械学習モデルの決定
WO2024004102A1 (ja) キューに格納されている性能指標値データに基づく通信システムの状態判定
WO2023188186A1 (ja) 通信経路決定システム及び通信経路決定方法
WO2024024106A1 (ja) ネットワーク負荷の予測開始タイミングの制御
WO2024024107A1 (ja) ネットワーク負荷の予測開始タイミングの制御
WO2023233470A1 (ja) ネットワークの異常の原因推定
WO2023188187A1 (ja) 通信経路決定システム及び通信経路決定方法
WO2023233471A1 (ja) ネットワークの異常の原因推定
Abderrahim et al. Dependability integration in cloud-hosted telecommunication services
WO2024004103A1 (ja) 通信システムに含まれる要素の適切なスケールアウトの実行

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

Country of ref document: EP

Kind code of ref document: A1