Patent ID: 12231306

DESCRIPTION OF EMBODIMENTS

One embodiment of the present invention is now described in detail with reference to the drawings.

FIG.1andFIG.2are each a diagram for illustrating an example of a communication system1in the one embodiment of the present invention.FIG.1is an illustration drawn with attention being given to locations of a data center group included in the communication system1.FIG.2is an illustration drawn with attention being given to various computer systems implemented in the data center group included in the communication system1.

As illustrated inFIG.1, the data center group included in the communication system1is classified into central data centers10, regional data centers12, and edge data centers14.

For example, several central data centers10are dispersedly arranged in an area (for example, in Japan) covered by the communication system1.

For example, tens of regional data centers12are dispersedly arranged in the area covered by the communication system1. For example, when the area covered by the communication system1is the entire area of Japan, one or two regional data centers12may be arranged in each prefecture.

For example, thousands of edge data centers14are dispersedly arranged in the area covered by the communication system1. In addition, each of the edge data centers14can communicate to/from a communication facility18provided with an antenna among antennae16a,16b, and16c. In this case, as illustrated inFIG.1, one edge data center14may be capable of communicating to/from several communication facilities18. The communication facility18may include a computer, for example, a server computer. The communication facility18in this embodiment performs radio communication to/from a user equipment (UE) among UEs20a,20b,20c,20d, and20evia the antenna.

A plurality of servers are arranged in each of the central data centers10, the regional data centers12, and the edge data centers14in this embodiment.

In this embodiment, for example, the central data centers10, the regional data centers12, and the edge data centers14can communicate to/from one another. Communication can also be performed between the central data centers10, between the regional data centers12, and between the edge data centers14.

As illustrated inFIG.2, the communication system1in this embodiment includes a marketplace system (MPS)30, a network operation system (NOS)32, a plurality of purchaser terminals34, a plurality of vendor terminals36, a plurality of radio access networks (RANs)38, a plurality of core network systems40, and a plurality of UEs20a,20b,20c,20d, and20e. The purchaser terminal34and the vendor terminal36are also illustrated inFIG.1. The core network system40, the RAN38, and the UE among UE20a,20b,20c,20d, and20ecooperate with each other to implement a mobile communication network.

The RAN38is a computer system, which is provided with the antenna, and corresponds to an eNodeB (eNB) in 4G and an NR base station (gNB) in 5G. The RANs38in this embodiment are implemented mainly by server groups arranged in the edge data centers14and the communication facilities18. A part of the RAN38(for example, virtual distributed unit (vDU) or virtual central unit (vCU) in 4G or distributed unit (DU) or central unit (CU) in 5G may be implemented by the central data center10or the regional data center12instead of the edge data center14.

The core network system40is a system corresponding to an evolved packet core (EPC) 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”). The core network systems40in this embodiment are implemented mainly by server groups arranged in the central data centers10or the regional data centers12.

The MPS30in this embodiment is configured, for example, on a cloud platform and includes a processor30a, a storage unit30b, and a communication unit30c, as illustrated inFIG.2. The processor30ais a program control device, for example, a microprocessor which operates in accordance with a program installed in the MPS30. The storage unit30bis, for example, a storage element such as a ROM or RAM, a solid state drive (SSD), a hard disk drive (HDD), or the like. The storage unit30bstores a program to be executed by the processor30a, and the like. The communication unit30cis, for example, a communication interface such as a network interface card (NIC) or a wireless LAN module. Software-defined networking (SDN) may be implemented in the communication unit30c. The communication unit30cexchanges data with the NOS32and the purchaser terminal34.

It is assumed that the MPS30in this embodiment is implemented by a server group arranged in the central data center10. The MPS30may be implemented by a server group arranged in the regional data center12.

The NOS32in this embodiment is configured, for example, on a cloud platform and includes a processor32a, a storage unit32b, and a communication unit32c, as illustrated inFIG.2. The processor32ais a program control device, for example, a microprocessor which operates in accordance with a program installed in the NOS32. The storage unit32bis, for example, a storage element such as a ROM or RAM, a solid state drive (SSD), a hard disk drive (HDD), or the like. The storage unit32bstores a program to be executed by the processor32a, and the like. The communication unit32cis, for example, a communication interface such as an NIC or a wireless LAN module. Software-defined networking (SDN) may be implemented in the communication unit32c. The communication unit32cexchanges data with the MPS30, the vendor terminal36, the RAN38, and the core network system40.

In this embodiment, the NOS32is implemented by a server group arranged in the central data center10. The NOS32may be implemented by a server group arranged in the regional data center12.

In this embodiment, for example, in response to a purchase request for a network service (NS) by a purchaser, the network service for which the purchase request has been made is constructed in the RAN38or the core network system40. Then, the constructed network service is provided to the purchaser.

For example, a network service such as a voice communication service, a data communication service, or the like is provided to the purchaser who is a mobile virtual network operator (MVNO). The voice communication service or the data communication service provided in this embodiment is eventually provided to a customer (end user) for the purchaser (MVNO in the above-mentioned example), who uses each of the UEs20a,20b,20c,20d, and20eillustrated inFIG.1andFIG.2. The end user can perform voice communication or data communication to/from other users via the RAN38or the core network system40. The UE of the end user can also access a data network, for example, the Internet, via the RAN38or the core network system40.

In addition, in this embodiment, an IoT service may be provided to an end user who uses a robot arm, a connected car, or the like. In this case, an end user who uses a robot arm, a connected car, or the like may be a purchaser of the network service in this embodiment.

In this embodiment, a container-type application execution environment, for example, Docker, is installed in the servers arranged in the central data center10, the regional data center12, and the edge data center14, and containers can be deployed in those servers and operated.

The network service provided to the purchaser in this embodiment is formed of one or a plurality of functional units (for example, network function (NF)). In this embodiment, the functional unit is implemented by a containerized network function (CNF) being a container-based functional unit.

The purchaser terminal34in this embodiment is, for example, a general computer used by the purchaser described above, such as a smartphone, a tablet terminal, or a personal computer.

In this embodiment, for example, the above-mentioned purchaser can purchase a network service through a screen displayed on the purchaser terminal34. In this case, the purchaser can input service requirements for a network service to be purchased on the screen. For example, the purchaser can input, on the screen, service requirements including the type of service (for example, voice communication service, data communication service, or IoT service), a service scale (for example, the number of subscribers), whether or not to allow shared slices, an opposite IP, a target area, and the like. The purchaser can also input a password on the screen.

In this embodiment, for example, when a predetermined purchase operation is executed after service requirements and a password are input, service requirement data indicating the input service requirements and password is transmitted from the purchaser terminal34to the MPS30.

Then, the MPS30cooperates with the NOS32to construct, based on the service requirement data, a network service that satisfies the service requirements indicated by the service requirement data, and the constructed network service is provided to the purchaser.

As described above, according to this embodiment, a network service that satisfies various purchaser's needs is flexibly constructed. Without being aware of the detailed implementation of the network service, the purchaser can receive the provision of a desired network service by only specifying some service requirements.

FIG.3is a diagram for schematically illustrating an example of a functional unit group constructed in the communication system1in this embodiment.FIG.4is a diagram for schematically illustrating an example of a network slice to which functional units illustrated inFIG.3belongs. The functional unit groups in 5G are illustrated inFIG.3andFIG.4, but functional unit groups in 4G may be constructed in the communication system1in this embodiment.

In the example ofFIG.3, a gNB56including a DU50, a central unit-control plane (CU-CP)52, a central unit-user plane (CU-UP)54a, a CU-UP54b, and a CU-UP54cis illustrated. In this embodiment, for example, it is assumed that a plurality of gNBs including this gNB56are arranged in a certain edge data center14.

Further, as illustrated inFIG.3, an access-and-mobility management function (AMF)60, a session management function (SMF)62, a user plane function (UPF)64a, and a UPF64bare arranged in the central data center10, and a UPF64cis arranged in the regional data center12.

Further, in this embodiment, the plurality of UEs20a,20b,20c,20d, and20ecan also access a service66aimplemented in the central data center10via the UPF64a. The plurality of UEs20a,20b,20c,20d, and20ecan also access a service66bimplemented in the central data center10via the UPF64b. The plurality of UEs20a,20b,20c,20d, and20ecan also access a service66cimplemented in the regional data center12via the UPF64c.

As illustrated inFIG.4, the DU50, the CU-UP54a, and the UPF64abelong to a network slice68a. Meanwhile, the DU50, the CU-UP54b, and the UPF64bbelong to a network slice68band a network slice68c. The DU50, the CU-UP54c, and the UPF64cbelong to the network slice68d. InFIG.4, it is schematically illustrated that one DU50, one CU-UP54, and one UPF64belong to each network slice68, but in general, a plurality of DUs50, a plurality of CU-UPs54, and a plurality of UPFs64belong to one network slice68.

FIG.5is a diagram for schematically illustrating an example of links between elements constructed in the communication system1in this embodiment.

As illustrated inFIG.5, a network service (NS)503, a network function (NF)504, a containerized network function component (CNFC)505, a pod506, and a container507have a hierarchical structure.

The NS corresponds to an element having a granularity, for example, a 5GC, an EPC, a 5G RAN (gNB), or a 4G RAN (eNB).

In 5G, the NF corresponds to an element having a granularity, for example, the AMF60, the SME62, the UPF64, the CU-CP52, the CU-UP54, or the DU50. In 4G, the NF corresponds to an element having a granularity, for example, a mobility management entity (MME), a home subscriber server (HSS), a serving gateway (S-GW), a vDU, or a vCU. In this embodiment, for example, one NS includes one or a plurality of NFs. That is, one or a plurality of NEs are under the control of one NS.

The CNFC corresponds to an element having a granularity, for example, DU mgmt or DU processing. The CNFC may be a microservice deployed on a server as one or more containers. For example, some CNFCs may be microservices that provide a part of the functions of the DU50, the CU-CP52, the CU-UP54, and the like. Some CNFCs may be microservices that provide a part of the functions of the AME60, the SMF62, the UPF64, and the like. In this embodiment, for example, one NF includes one or a plurality of CNFCs. That is, one or a plurality of CNFCs are under the control of one NF.

The pod refers to, for example, the minimum unit for managing a Docker container by Kubernetes. In this embodiment, for example, one CNFC includes one or a plurality of pods. That is, one or a plurality of pods are under the control of one CNFC.

In this embodiment, for example, one pod includes one or a plurality of containers. That is, one or a plurality of containers are under the control of one pod.

In addition, as illustrated inFIG.5, a network slice (NSI)501and a network slice subnet instance (NSSI)502have a hierarchical structure.

The NSIs can be said to be end-to-end virtual circuits that span a plurality of domains (for example, from the RAN38to the core network system40). Each NSI may be a slice for high-speed and high-capacity communication (for example, eMBB), a slice for high-reliability and low-latency communication (for example, URLLC), or a slice for connecting a large quantity of terminals (for example, mMTC). The NSSIs can be said to be single domain virtual circuits dividing an NSI. Each 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.

In this embodiment, for example, one NSI includes one or a plurality of NSSIs. That is, one or a plurality of NSSIs are under the control of one NSI. In this embodiment, a plurality of NSIs may share the same NSSI.

In addition, as illustrated inFIG.5, the NSSI and the NS generally have a many-to-many relationship.

In addition, as described with reference toFIG.4, in this embodiment, for example, one NF can belong to one or a plurality of network slices. Specifically, for example, network slice selection assistance information (NSSAI) including one or a plurality of pieces of sub-network slice selection assist information (S-NSSAI) can be set for one NF. In this case, the S-NSSAI is information associated with the network slice. The NF is not required to belong to the network slice.

The vendor terminal36in this embodiment is a general computer used by a vendor, for example, a service provider related to the network service, such as a smartphone, a tablet terminal, a personal computer, or the like.

In this embodiment, the vendor is provided with a continuous integration (CI)/continuous delivery (CD) pipeline including a development environment, a verification environment, and a test environment. In this embodiment, a verified bundle file corresponding to the network service to be provided to the purchaser, which is created by the vendor, is on-boarded by an onboarding process utilizing the CI/CD pipeline.

The bundle file in this embodiment is, for example, a file obtained by compressing a file group having a predetermined directory structure (for example, a file having tar.gz format).

FIG.6is a diagram for illustrating an example of data structure of the bundle file in this embodiment. As illustrated inFIG.6, the bundle file in this embodiment includes business section data601, technology section data602, security section data603, and operation section data604.

The business section data indicates business requirements of the network service such as the name of the network service, license requirements, and the definition of service level agreement (SLA). Further, the business section data in this embodiment includes data indicating mandatory input items and optional input items for the service requirements of the network service.

The technology section data indicates, for example, the configuration of each element described with reference toFIG.5. The technology section data also includes template data indicating a workflow script, various logics, and the like which are described below.

The security section data indicates, for example, the security definition of the network service, for example, installation credentials.

The operation section data indicates, for example, monitoring policies relating to network services, for example, a performance index value (for example, key performance indicator (KPI) or metric) of a monitoring target and a monitoring interval.

The performance index values indicated by the operation section data may include performance index values regarding performance indices described in, for example, “TS 28.552, Management and orchestration; 5G performance measurements” or “TS 28.554, Management and orchestration; 5G end to end Key Performance Indicators (KPI).”

The operation section data may also include, for example, monitoring script data indicating a monitoring script. The monitoring script data may include calculation logic data indicating a calculation logic for calculating a desired performance index value.

The operation section data may also include a script template (Helm chart), a container image, and template data which are described below.

FIG.7is a diagram for illustrating an example of an onboarding screen displayed on the vendor terminal36in this embodiment. In this embodiment, when the vendor specifies a path in which the bundle file is arranged and then clicks an “ONBOARDING” button70, the bundle file becomes on-boarded.

As described above, in this embodiment, the vendor can easily perform onboarding of the network service without being aware of the actual location at which a developed file group is on-boarded.

The functions of the MPS30and the NOS32in this embodiment and processes to be executed by the MPS30and the NOS32are further described in the following.

FIG.8is a functional block diagram for illustrating an example of functions implemented by the MPS30and the NOS32in this embodiment. The plurality of functional blocks illustrated in the block diagram of the present application can be configured from, in terms of hardware, a circuit block, a memory, and other LSIs, and in terms of software, can be implemented by the CPU executing a program loaded onto the memory. Consequently, a person skilled in the art would understand that those functional blocks can be implemented in various forms by only hardware, by only software, or by a combination of hardware and software. The MPS30and the NOS32in this embodiment are not required to implement all of the functions illustrated inFIG.8and may implement functions other than those illustrated inFIG.8.

As illustrated inFIG.8, the MPS30functionally includes, for example, a product management module80, a product catalog storage82, and a purchase management module84.

The product management module80and the purchase management module84are implemented mainly by the processor30aand the communication unit30c. The product catalog storage82is implemented mainly by the storage unit30b.

The above-mentioned functions may be implemented by executing, by the processor30a, a program that is installed in the MPS30, which is a computer, and that includes instructions corresponding to the above-mentioned functions. This program may be supplied to the MPS30via a computer-readable information storage medium such as an optical disc, a magnetic disk, a magnetic tape, a magneto-optical disc, a flash memory, or the like, or via the Internet or the like.

In addition, as illustrated inFIG.8, for example, the NOS32functionally includes a bundle development module90, a service management module92, a service catalog storage94, an orchestration (end-to-end-orchestration (E2EO)) module96, an inventory management module98, a configuration management module100, a monitoring management module102, a security setting module104, a plurality of container management modules106a,106b, and106c, a repository module108, an inventory database110, and a bare metal management module112. In addition, the E2EO module96includes an active inventory114.

The bundle development module90is implemented mainly by the processor32aand the communication unit32c. The service management module92and the bare metal management module112are each implemented mainly by the processor32a. The service catalog storage94, the repository module108, and the inventory database110are implemented mainly by the storage unit32b. The E2EO module96is implemented mainly by the processor32a, the storage unit32b, and the communication unit32c. The inventory management module98, the configuration management module100, the monitoring management module102, the security setting module104, and each of the container management modules106a,106b, and106care each implemented mainly by the processor32aand the storage unit32b.

The above-mentioned functions may be implemented by executing, by the processor32a, a program that is installed in the NOS32, which is a computer, and that includes instructions corresponding to the above-mentioned functions. This program may be supplied to the NOS32via a computer-readable information storage medium such as an optical disc, a magnetic disk, a magnetic tape, a magneto-optical disc, a flash memory, or the like, or via the Internet or the like.

Further,FIG.8also shows a plurality of servers120a,120b, and120cincluded in the RANs38and the core network systems40illustrated inFIG.2and dispersedly arranged at various locations. Each of the plurality of container management modules106a,106b, and106cin this embodiment is associated with a server group that is a part of the plurality of servers120a,120b, and120c.

In each of the plurality of container management modules106a,106b, and106cin this embodiment, for example, a container management tool such as Kubernetes, and a package manager such as Helm are installed. Each of the container management modules106a,106b, and106cexecutes life cycle management of a container including the construction of the container such as the deployment and setting of the container for a server group (a plurality of servers120a,120b, and120c) associated with the respective container management module.

The plurality of container management modules106a,106b, and106cis not required to be included in the NOS32. The modules106a,106b, and106cmay be provided in, for example, a server120among servers120a,120b, and120c(that is, the RAN38or the core network system40) managed by the plurality of container management modules106a,106b, and106c, or a server that is annexed to the server.

For example, in this embodiment, the bundle development module90receives a bundle file from the vendor terminal36. Then, for example, in this embodiment, the bundle development module90generates a data group having structure illustrated inFIG.9, based on the received bundle file. The data group illustrated inFIG.9is obtained by reconstructing the contents of the bundle file received by the bundle development module90.

As illustrated inFIG.9, the data group generated by the bundle development module90includes product catalog data901, service catalog data902, inventory template data903, CM template data904, monitoring script data905, security script data906, Helm chart data907, and container image data908.

The product catalog data is, for example, data corresponding to business section data included in a bundle file. As described above, the product catalog data indicates information regarding business requirements of the network service, such as the name of the network service displayed on the screen of the purchaser terminal34, license requirements, and the definition of the service level agreement (SLA).

Further, the product catalog data in this embodiment includes data indicating mandatory input items and optional input items for the service requirements of the network service. In this embodiment, a screen to be displayed on the purchaser terminal34is generated based on, for example, the product catalog data.

The service catalog data is, for example, data corresponding to a part of the technology section data included in the bundle file. The service catalog data contains a workflow script for constructing the network service.

The service catalog data may also include information relating to a threshold value (for example, threshold value for abnormality detection) to be compared to the calculated performance index value.

Further, the service catalog data may include requirement configuration correspondence data indicating the correspondence between a value of the above-mentioned service requirement data and the configuration of a functional unit group (for example, NF group) constructed in response to a purchase request.

For example, the service catalog data may include requirement configuration correspondence data indicating the correspondence between the value of the service requirement data, the type of a functional unit group, and the number of functional units for each type. The requirement configuration correspondence data may indicate correspondences between, for example, “the number n1 of subscribers and one UPF,” “the number n2 of subscribers and one SMF,” “the number n3 of subscribers and one AMF,” “the number n4 of subscribers and one CU-CP,” “the number n5 of subscribers and one CU-UP,” and “the number n6 of subscribers and one DU.” What is associated with the service requirement data is not limited to the type and the number of 5G components, and the service requirement data and the type and the number of 4G components may be associated with each other.

Further, for example, the requirement configuration correspondence data may indicate the correspondence between the value of the service requirement data and a location at which each functional unit included in a functional unit group constructed in response to a purchase request is to be constructed. In this case, the location associated with the value of the service requirement data in the requirement configuration correspondence data may be different depending on functional units included in the functional unit group to be constructed.

In addition, the service catalog data may include, for example, service template data indicating the logic to be used by the E2EO module96, which includes information required for the E2EO module96to construct the network service. Specifically, for example, the service template data includes information defining the NS, the NF, and the CNFC, and information indicating an NS-NF-CNFC correspondence relationship.

The service catalog data may also include, for example, a slice template indicating the logic to be used by the E2EO module96, which includes information required for the E2EO module96to execute the instantiation of the network slice.

The slice template data includes information on a “generic network slice template” defined by the GSM Association (GSMA) (“GSM is a trademark”). Specifically, the slice template data includes network slice template data (NST), network slice subnet template data (NSST), and network service template data. The slice template data includes information indicating the hierarchical structure of those elements which is illustrated inFIG.5.

The inventory template data is, for example, data corresponding to a part of the technology section data and a part of the security section data included in the bundle file. The inventory template data is, for example, template data indicating the logic used by the inventory management module98.

The CM template data is, for example, data corresponding to a part of the technology section data and a part of the operation section data included in the bundle file, and is, for example, template data indicating the logic used by the configuration management module100.

The monitoring script data is, for example, data corresponding to a part of the operation section data included in the bundle file, and is, for example, data indicating a monitoring script executed by the monitoring management module102. As described above, the monitoring script data may include the above-mentioned calculation logic data.

The security script data is, for example, data corresponding to a part of the security section data included in the bundle file, and is, for example, data indicating a script regarding security executed by the security setting module104.

The Helm chart data is, for example, data corresponding to a part of the operation section data included in the bundle file, and is data indicating a script template (Helm chart) used by the plurality of container management modules106a,106b, and106c.

The container image data is, for example, data corresponding to a part of the operation section data included in the bundle file, and is, for example, data of container image of a container included in the functional unit group that achieves the network service. The container image data includes one or a plurality of container images. A container image ID, which is an identifier of the container image, is linked to each of the one or the plurality of container images.

In this embodiment, in response to the reception of a bundle file, the bundle development module90determines a bundle ID that corresponds to a data group generated based on the bundle file. A bundle ID is uniquely assigned to each generated data group.

Then, the bundle development module90links the product catalog data included in the data group corresponding to the bundle ID to the determined bundle ID, and then transmits the product catalog data to the MPS30.

Further, the bundle development module90outputs the service catalog data included in the data group to the service management module92after linking the service catalog data to the determined bundle ID. Then, the service management module92stores the service catalog data in the service catalog storage94.

Further, the bundle development module90links the inventory template data, the CM template data, the monitoring script data, the security script data, the Helm chart data, and the container image data to the bundle ID corresponding to the data group, and then stores the pieces of data in the inventory management module98, the configuration management module100, the monitoring management module102, the security setting module104, the plurality of container management modules106a,106b, and106c, and the repository module108, respectively.

As described above, in this embodiment, the product catalog data, the service catalog data, the inventory template data, the CM template data, the monitoring script data, the security script data, the Helm chart data, and the container image data become linked to one another by the bundle ID.

Further, in this embodiment, the vendor can easily provide the network service by a simple operation of, for example, specifying a path of the bundle file.

In this embodiment, for example, the product management module80receives the product catalog data linked to the bundle ID transmitted from the bundle development module90. Then, the product management module80stores the received product catalog data in the product catalog storage82.

In this embodiment, for example, the product catalog storage82stores the product catalog data linked to the bundle ID as described above.

In this embodiment, for example, the purchase management module84receives from the purchaser terminal34a network service construction request, such as a purchase request for a network service, which is linked to the bundle ID and the service requirement data. A bundle ID linked to a purchase request is hereinafter referred to as “purchase bundle ID,” and service requirement data linked to a purchase request is hereinafter referred to as “purchase service requirement data.”

Then, the purchase management module84transmits the purchase service requirement data linked to the purchase bundle ID to the E2EO module96in response to the reception of the purchase request described above. The E2EO module96receives the purchase service requirement data indicating the service requirements.

In this embodiment, the inventory database110is, for example, a database in which inventory information for a plurality of servers120a,120b, and120cmanaged by the NOS32and arranged in the RAN38and the core network system40is stored.

In this embodiment, for example, the inventory database110stores inventory data including the physical inventory data and the logical inventory data. The inventory data indicates the current statuses of the configuration of an element group included in the communication system1and the link between the elements. In addition, the inventory data indicates the status of resources managed by the NOS32(for example, resource usage status).

FIG.10is a diagram for illustrating an example of the data structure of the physical inventory data. The physical inventory data illustrated inFIG.10is associated with one server among servers120a,120b, and120c. The physical inventory data illustrated inFIG.10includes, for example, a server ID1001, location data1002, building data1003, floor number data1004, rack data1005, specification data1006, network data1007, and operating container ID list1008.

The server ID included in the physical inventory data is, for example, an identifier of the server among servers120a,120b, and120cassociated with the physical inventory data.

Location data included in the physical inventory data is, for example, data indicating the location of the server among servers120a,120b, and120c(for example, the address of the location) associated with the physical inventory data.

Building data included in the physical inventory data is, for example, data indicating a building (for example, a building name) in which the server among servers120a,120b, and120cassociated with the physical inventory data is arranged.

Floor number data included in the physical inventory data is, for example, data indicating a floor number at which the server among servers120a,120b, and120cassociated with the physical inventory data is arranged.

Rack data included in the physical inventory data is, for example, an identifier of a rack in which the server among servers120a,120b, and120cassociated with the physical inventory data is arranged.

The specification data included in the physical inventory data is data indicating the specifications, such as the number of cores, the memory capacity, and the hard disk capacity, of the server among servers120a,120b, and120cassociated with the physical inventory data.

The network data included in the physical inventory data is, for example, data indicating an NIC included in the server among servers120a,120b, and120cassociated with the physical inventory data, the number of ports included in the NIC, and the like.

The operating container ID list included in the physical inventory data is, for example, data indicating a list of identifiers (container IDs) of one or a plurality of container instances operating in the server among servers120a,120b, and120cassociated with the physical inventory data.

In addition, the logical inventory data includes topology data for a plurality of elements included in the communication system1, which indicates the current status of such link between the elements as illustrated inFIG.5. For example, the logical inventory data includes topology data including an identifier of a certain NS and an identifier of one or a plurality of NEs under the control of the certain NS. In addition, for example, the logical inventory data includes topology data including an identifier of a certain network slice and an identifier of one or a plurality of NFs belonging to the certain network slice.

FIG.11is a diagram for schematically illustrating an example of the topology data. The topology data illustrated inFIG.11schematically indicates an example of the current statuses of the gNB56illustrated inFIG.3and the link between the elements (hierarchical structure) between the element group under the control thereof.

FIG.12is a diagram for schematically illustrating an example of the topology data. The topology data illustrated inFIG.12schematically indicates an example of the current statuses of the network slice68billustrated inFIG.4and the elements (for example, NS and NF) belonging to the network slice68b.

InFIG.11andFIG.12, the topology data is represented as data including nodes130associated with elements included in the communication system1and links132each connecting the nodes130associated with respective two elements linked to each other. More specifically, inFIG.11andFIG.12, the topology data is represented as tree structure data in which a hierarchical structure between the elements is represented by a parent-child relationship.

A node130ahaving an identifier of “gNB #1,” which is illustrated inFIG.11, is associated with the gNB56illustrated inFIG.3. A node130bhaving an identifier of “DU #1” is associated with the DU50illustrated inFIG.3. A node130chaving an identifier of “CU-CP #1” is associated with the CU-CP52illustrated inFIG.3. A node130dhaving the identifier of “CU-UP #1” is associated with the CU-UP54aillustrated inFIG.3. A node130ehaving an identifier of “CU-UP #2” is associated with the CU-UP54billustrated inFIG.3. A node130fhaving an identifier of “CU-UP #3” is associated with the CU-UP54cillustrated inFIG.3.FIG.11also shows a node130gand a node130hcorresponding to the CNFCs included in the DU50.

FIG.11also shows a link132aconnecting the node130aand the node130bthat is a node130being a child of the node130a.FIG.11also shows a link132bconnecting the node130aand the node130cthat is a node130being a child of the node130a.FIG.11also shows a link132cconnecting the node130aand the node130dthat is a node130being a child of the node130a.FIG.11also shows a link132dconnecting the node130aand the node130ethat is a node130being a child of the node130a.FIG.11also shows a link132econnecting the node130aand the node130fthat is a node130being a child of the node130a.FIG.11also shows a link132fconnecting the node130band the node130gthat is a node130being a child of the node130b.FIG.11also shows a link132gconnecting the node130band the node130hthat is a node130being a child of the node130b.

Further, a node130ihaving an identifier of “eMBB #1,” which is illustrated inFIG.12, is associated with the network slice68billustrated inFIG.4. A node130jhaving the identifier of “gNB #1” is associated with the gNB56illustrated inFIG.3. A node130khaving an identifier of “Core #1” is associated with the NS of the core network system40belonging to the network slice68b. A node130lhaving the identifier of “DU #1” is associated with the DU50illustrated inFIG.3andFIG.4. A node130mhaving the identifier of “CU-UP #2” is associated with the CU-UP54billustrated inFIG.3andFIG.4. A node130nhaving an identifier of “UPF #2” is associated with the UPF64billustrated inFIG.3andFIG.4.

FIG.12also shows a link132hconnecting the node130iand the node130jthat is a node130being a child of the node130i.FIG.12also shows a link132iconnecting the node130iand the node130kthat is a node130being a child of the node130i.FIG.12also shows a link132jconnecting the node130jand the node130lthat is a node130being a child of the node130j.FIG.12also shows a link132kconnecting the node130jand the node130mthat is a node130being a child of the node130j.FIG.12also shows a link132lconnecting the node130kand the node130nthat is a node130being a child of the node130k.

In addition, the logical inventory data may include NSI data being data indicating attributes such as an identifier of an instance of a network slice and the type of the network slice. In addition, the logical inventory data may include NSSI data being data indicating attributes such as an identifier of an instance of a network slice subnet and the type of the network slice subnet.

The logical inventory data may also include NS data being data indicating attributes such as an identifier of an instance of an NS and the type of the NS. The logical inventory data may also include NF data indicating attributes such as an identifier of an instance of an NF and the type of the NF. The logical inventory data may also include CNFC data indicating attributes such as the identifier of a CNFC instance and the type of the CNFC. The logical inventory data may also include pod data indicating attributes such as an identifier of an instance of a pod included in the CNFC and the type of the pod. The logical inventory data may also include container data indicating attributes such as a container ID of an instance of a container included in the pod and the type of the container.

With the container ID of the container data included in the logical inventory data and the container ID included in the operating container ID list included in the physical inventory data, an instance of the container and the server among servers120a,120b, and120con which the instance of the container is operating become linked to each other.

Further, data indicating various attributes such as the host name and the IP address may be set in the above-mentioned data included in the logical inventory data. For example, the container data may include data indicating the IP address of a container corresponding to the container data. Further, for example, the CNFC data may include data indicating the IP address and the host name of a CNFC indicated by the CNFC data.

The logical inventory data may also include data indicating NSSAI including one or a plurality of pieces of S-NSSAI, which is set for each NF.

Further, in this embodiment, at least a part of the inventory data stored in the inventory database110is also stored in the active inventory114. The inventory data stored in the active inventory114and the inventory data stored in the inventory database110are basically synchronized with each other. When a process such as registration, update, or deletion of inventory data occurs, the inventory management module98executes the process on the inventory database110after executing the process on the active inventory114.

Further, the inventory management module98can appropriately grasp the resource status in cooperation with the plurality of container management modules106a,106b, and106c. Then, the inventory management module98appropriately updates the inventory data stored in the active inventory114and the inventory database110based on the latest resource status.

In this embodiment, the E2EO module96and the inventory management module98identify the configuration of the element group for achieving a network service that satisfies the service requirements indicated by the service requirement data based on, for example, the inventory data and the service requirement data received from the purchase management module84.

For example, the E2EO module96acquires, from the service catalog storage94, service catalog data corresponding to a purchase bundle ID linked to the purchase service requirement data received from the purchase management module84. The E2EO module96executes a workflow script indicated by the service catalog data.

The E2EO module96and the inventory management module98determine the configuration of a network service to be purchased based on the purchase service requirement data received from the purchase management module84, the service catalog data linked to the purchase bundle ID, the inventory template data linked to the purchase bundle ID, and the inventory data.

In this case, for example, the E2EO module96may identify the respective types of functional unit groups that achieve the network service to be purchased and the number of functional units for each type, based on the purchased service requirement data and the requirement configuration correspondence data included in the service catalog data.

Further, based on the purchase service requirement data, the E2EO module96may identify the location at which each of the functional units included in the constructed functional unit group is constructed. For example, the E2EO module96may determine the location of each functional unit included in the constructed functional unit group based on the target area indicated by the purchase service requirement data and the requirement configuration correspondence data included in the service catalog data. A different location may be determined for each functional unit.

Further, based on the purchase service requirement data, the E2EO module96may identify, for each of a plurality of locations, the type and the number of functional units constructed at the location. In this case, in accordance with the location that is identified based on the purchase service requirement data, the E2EO module96may determine the number of functional units for each type that are constructed at the location. Further, the E2EO module96may determine the number of functional units for each type that are constructed for each location based on a weight set for each location identified based on the purchase service requirement data.

An example of the weight set for each location is the population of an area covered by one or a plurality of cells under the control of the data center linked to the location. That is, in determining the number of functional units of each type, which are constructed for each location, weighting may be performed based on the population of the covered area. For example, as the population of the area covered by a location becomes larger, more functional units may be allocated at the location.

In this case, the E2EO module96may store assumed busy level data for each of a plurality of locations, which indicates the population of the area covered by one or a plurality of cells under the control of the data center linked to the location. The value of the assumed busy level data is an example of the weight set for each location described above. The assumed busy level data for the data center of the core network system40may indicate, for example, the population of the area covered by the cells of the RAN38communicating to/from the core network system40. For example, as the population at a location which is indicated by the assumed busy level data becomes larger, more functional units may be deployed at the location.

Then, the E2EO module96and the inventory management module98register the inventory data associated with the newly constructed element group in the active inventory114and the inventory database110based on the number and the location of functional units, which are determined as described above, and the inventory data.

In this case, the inventory management module98may determine a host name and an IP address that are to be allocated to the newly constructed element group based on the inventory data. In this case, for example, a host name and an IP address may be determined so as not to overlap with the already used host name and the already used IP address. Then, the inventory data in which the determined host name and IP address are set may be registered in the active inventory114and the inventory database110.

In addition, the E2EO module96and the inventory management module98may identify the existing element group to which a new setting is to be input, based on the number and the location of functional units, which are determined as described above, and the inventory data. Then, the inventory data indicating the new setting to be input may be registered in the active inventory114and the inventory database110.

A planned attribute is set for the inventory data registered in response to the reception of the service requirement data as described above. The inventory data for which the planned attribute is set is hereinafter referred to as “planned data.” The planned data registered in this manner is linked to an inventory key being an identifier of the planned data, the above-mentioned purchase bundle ID, and a user ID being an identifier of the purchaser (user) who has made the purchase request.

The E2EO module96and the inventory management module98may determine whether to construct a new element or to use an existing element as an element included in the purchased NS based on the current status (for example, operation status or availability status) of the element group indicated by the inventory data. Then, the E2EO module96and the inventory management module98may register, based on the determination, in the active inventory114and the inventory database110, the planned data associated with the newly constructed element group and the planned data indicating a new setting to be input to the existing elements.

In this embodiment, based on, for example, the configuration of the element group identified as described above and template data in which the configuration is acceptable as a parameter, the E2EO module96and the configuration management module100identify a construction procedure of the element group. The construction procedure includes, for example, a procedure of container configuration management such as deploying a container and setting the deployed container and a container related to the deployed container. This process is executed, for example, with the execution of the workflow script by the E2EO module96as a trigger.

Then, the E2EO module96, the configuration management module100, and the plurality of container management modules106a,106b, and106cconstruct an element group that achieves the network service based on the configuration identified as described above. The E2EO module96, the configuration management module100, and the plurality of container management modules106a,106b, and106cconstruct an element group by executing, for example, the identified construction procedure. This process is also executed, for example, with the execution of the workflow script by the E2EO module96as a trigger. Each of the elements included in the element group may be constructed at a location identified for the element. Further, for example, the number of element groups identified based on the purchase service requirement data may be constructed. Further, for example, for each of a plurality of locations, an identified number of elements of a type identified for the location may be constructed.

The configuration management module100and the bare metal management module112secure, for example, a hardware resource (for example, the server among servers120a,120b, and120cin this case) in which a new element group is deployed.

Further, the configuration management module100and the bare metal management module112perform a system software setup in accordance with a specific type of element on an unused hardware resource. In this embodiment, for example, the configuration management module100or the bare metal management module112stores a script (for example, an Ansible script) for performing a setup for the above-mentioned specific type of element. The script describes, for example, a procedure of installing a host OS, which have a specific type or a specific version, serving as a platform of a container execution environment, a procedure of setting a kernel of the host OS, and a procedure of setting a basic input output system (BIOS). Then, by the execution of the script by the bare metal management module112, a system software setup in accordance with the specific type of element is performed on a free server. For example, the setup of the host OS and the BIOS of the container execution environment is performed on the free server.

When the hardware resource for deploying a new element group is secured, the E2EO module96instructs the plurality of container management modules106a,106b, and106cto deploy the new element group, for example, based on the above-mentioned planed data and service template data linked to the purchase bundle ID stored in the E2EO module96. The service template data can accept a part or all of the planned data as a parameter.

A CNF descriptor (CNFD) is an example of the above-mentioned service template data. The E2EO module96generates, for example, a day 0 parameter (CNF instance) based on the planned data and the CNFD. For example, the day 0 parameter in which a host name and the value of an IP address of the CNED are set is generated.

The CNFD may include a template associated with each of a plurality of deployment flavors. Then, for example, the E2EO module96may generate the day 0 parameter based on a template corresponding to a deployment flavor in accordance with the purchase service requirement data.

The E2EO module96may identify the location of the output destination of the day 0 parameter. For example, one or a plurality of container management modules106a,106b, and106cthat serve as output destinations of the day 0 parameter may be identified. For example, a container management module106among container management module106a,106b, and106cassociated with a server among servers120a,120b, and120carranged at the location of an element indicated by the planned data may be identified. Then, a day 0 parameter that is output to each of identified locations may be generated. For example, a day 0 parameter that is output to each of one or a plurality of container management modules106a,106b, and106cthat serve as the output destinations may be generated.

Then, the E2EO module96outputs each of the generated one or plurality of day 0 parameters to a container management module among container management module106a,106b, and106cserving as the location of the output destination of the day 0 parameter. A purchase bundle ID is linked to the day 0 parameter.

Then, the container management module106deploys a new element group based on the received day 0 parameter. The container management module identifies a container image to be deployed and the server among servers120a,120b, and120cin which the container is deployed, for example, based on Helm chart data associated with the purchase bundle ID and on the received day 0 parameter. Then, the container management module acquires the container image from the repository module108and deploys a container corresponding to the container image in the identified server among servers120a,120b, and120c. For example, a manifest file is generated based on the Helm chart data associated with the purchase bundle ID and on the received day 0 parameter. Then, the deployment of a container is executed through use of the manifest file.

In this embodiment, each of the plurality of servers120a,120b, and120cmay be allocated to a resource pool. In this case, the container management module may identify a container image to be deployed and a resource pool in which the container is deployed, for example, based on Helm chart data associated with the purchase bundle ID and on the received day 0 parameter. Then, the container management module may acquire the container image from the repository module108and deploy a container corresponding to the container image in the identified resource pool.

Further, the configuration management module100generates planned CM data including a day 1 parameter, for example, based on the above-mentioned planned data and CM template data stored in the configuration management module100and linked to the purchase bundle ID. The CM template data can accept a part or all of the planned data as a parameter.

The day 1 parameter indicates, for example, a configuration management procedure, for example, the settings of a deployed element group and at least one element related to the element group (for example, an element communicating to/from the deployed element group). A day 1 parameter relating to the RAN38indicates, for example, radio field intensity, the direction and angle of each of the antennae16a,16b, and16c, a serial number, and the like. A day 1 parameter relating to a UPF indicates, for example, information indicating an opposite node.

Then, the configuration management module100executes configuration management, for example, the setting of the element group, based on the day 1 parameter included in the generated planned CM data. Those processes are executed, for example, with the execution of the workflow script by the E2EO module96as a trigger. In this embodiment, for example, configuration management is executed for a newly constructed element group or an existing element to which a new setting is to be input.

Then, the E2EO module96executes, for example, instantiation of a network slice pertaining to a network service to be purchased, based on the above-mentioned planned data and slice template data linked to the purchase bundle ID stored in the E2EO module96. The slice template data can accept a part or all of the planned data as a parameter. This process is executed, for example, with the execution of the workflow script by the E2EO module96as a trigger.

The E2EO module96includes a network slice management function (NSMF) and a network slice sub-network management function (NSSMF) described in the 3GPP specification “TS28 533.” The NSMF is a function for generating and managing network slices, and provides NSI management. The NSSMF is a function for generating and managing network slice subnets forming a part of a network slice, and provides NSSI management.

The E2EO module96may output a configuration management instruction related to the instantiation of the network slice to the configuration management module100. Then, the configuration management module100may execute configuration management, for example, settings in accordance with the configuration management instruction.

For example, the configuration management module100constructs the NSI and the NSSI on each server120a,120b, and120cby using known segment routing technology (for example, SRv6 (segment routing IPV6)) based on the setting information passed from the E2EO module96. For example, the configuration management module100may generate an NSI and NSSI extending over a plurality of NFs to be set by issuing, to the plurality of NFs to be set, a command to set a common virtual local area network (VLAN) and a command to assign a bandwidth and a priority indicated by the setting information to the VLAN.

Further, for example, the configuration management module100may execute configuration management regarding new element groups when the deployment of the new element groups is completed, and then execute configuration management related to the instantiation of the network slice.

As another example, the configuration management module100may update a once-generated day 1 parameter based on the configuration management instruction received from the E2EO module96. Then, the configuration management module100may collectively perform the configuration management related to the new element groups and the instantiation of the network slice.

In this embodiment, for example, the monitoring management module102identifies a monitoring policy indicated by the purchase service requirement data based on the above-mentioned planned data and monitoring script data linked to the purchase bundle ID stored in the monitoring management module102. Then, the monitoring management module102executes a monitoring setting in accordance with the identified monitoring policy.

Then, in accordance with the identified monitoring policy, the monitoring management module102monitors an element group which is constructed. For example, monitoring of a monitoring target indicated by the purchase service requirement data may be executed at a monitoring interval indicated by the purchase service requirement data. This process is executed, for example, with the execution of the workflow script by the E2EO module96as a trigger.

In this embodiment, the monitoring management module102executes monitoring at various levels, for example, a slice level, an NS level, an NF level, a CNFC level, and a level of hardware, for example, the server among servers120a,120b, and120c.

For example, the monitoring management module102may set a module for outputting metric data in the hardware, for example, the server among servers120a,120b, and120c, or an element illustrated inFIG.5so that monitoring can be performed at the various levels described above. In this case, for example, the NF may output the metric data indicating a metric that can be measured by the NF to the monitoring management module102. Further, the server may output the metric data indicating a metric relating to the hardware that can be measured by the server to the monitoring management module102.

In addition, for example, the monitoring management module102may deploy, in the server, a sidecar container for aggregating the metric data indicating the metrics output from a plurality of containers in units of CNFCs (microservices). This sidecar container may include an agent called “exporter.” The monitoring management module102may repeatedly execute a process for acquiring the metric data aggregated in units of microservices from the sidecar container, at monitoring intervals indicated by the purchase service requirement data through use of the mechanism of Prometheus.

Further, the elements such as the network slice, the NS, the NF, the CNFC that are included in the communication system1and the hardware, for example, the server among servers120a,120b, and120c, notify the monitoring management module102of various alerts (for example, notify the monitoring management module102of an alert with the occurrence of a failure as a trigger).

For example, in this embodiment, the security setting module104executes a security setting, for example, a password setting, in accordance with the value of the purchase service requirement data based on, for example, the above-mentioned planned data and the security script data stored in the security setting module104and linked to the purchase bundle ID.

When the inventory management module98ends a series of processes including the construction of the element group and the configuration management in the above-mentioned manner, the inventory management module98updates the inventory data so as to indicate the configuration of the constructed element group. In this case, for example, the inventory management module98cancels the setting of the planned attribute regarding the planned data. In this manner, the inventory data, which has played a role of the planned data, has the role shifted from the role of the planned data to a role of the inventory data indicating the current status of the configuration of the element group actually constructed in the communication system1and the current status of the link between the elements.

In this case, the monitoring executed by the monitoring management module102is further described.

As described above, in this embodiment, the inventory data stored in the inventory database110and the active inventory114indicates the current status of the configuration of the element group included in the communication system1and the current status of the link between the elements included in the communication system1.

Further, as described above, the monitoring management module102acquires metric data indicating the metric measured by an element from the element included in the communication system1.

Then, in this embodiment, the monitoring management module102executes the monitoring script included in the monitoring script data stored in the monitoring management module102, to thereby calculate a desired performance index value such as the KPI of a specific type of element (for example, slice, NS, or NF) based on the acquired metric data.

In addition, in this embodiment, as described above, the monitoring script data includes the calculation logic data. In this embodiment, a part of the calculation logic indicated by the calculation logic data is a parameter (variable), and this parameter is substituted by a value determined based on the inventory data.

Now, as a first example, consideration is given to a case in which the calculation logic data indicates a calculation logic for calculating, for a specific type of NS (for example, gNB), an average value of the availability of all NFs (parameter x1) under the control of the NS as the availability of the NS.

In this case, it is assumed that the monitoring management module102has acquired, for every NE, the metric data indicating the availability of the NE.

In this case, the monitoring management module102refers to the inventory data to identify one or a plurality of NSes of the specific type indicated by the inventory data. In this case, one of the NSes identified in this manner is referred to as “NS of interest.” In this case, for example, it is assumed that the gNB56has been identified as the NS of interest.

Then, the monitoring management module102identifies all the NEs under the control of the NS of interest based on the inventory data. In this case, for example, the monitoring management module102identifies the CU-CP52, the CU-CP54a, the CU-CP54b, and the CU-CP54cas the NFs under the control of the NS of interest based on the topology data illustrated inFIG.11.

Then, the monitoring management module102substitutes one or a plurality of NEs identified in this manner as the value of the parameter x1 of the above-mentioned calculation logic data. Then, the monitoring management module102calculates the value of the availability of the NS of interest in accordance with the calculation logic indicated by the calculation logic data. In this case, for example, the monitoring management module102identifies the availability of one or a plurality of NEs set as the value of the parameter x1. Then, the monitoring management module102calculates an average value of the identified availability as the value of the availability of the NS of interest.

In this embodiment, for example, the above-mentioned process is executed for all the identified NSes of the specific type.

Now, as a second example, consideration is given to a case in which the calculation logic data indicates a calculation logic for calculating, for a specific type of network slice, an average value of the availability of all NFs (parameter x2) belonging to the network slice as the availability of the network slice.

In this case, it is assumed that the monitoring management module102has acquired the metric data indicating the availability of every NF. In this case, it is conceivable that the NF belongs to a plurality of network slices. In this case, the monitoring management module102acquires the metric data indicating the availability of every NF for each network slice.

In this case, the monitoring management module102refers to the inventory data to identify one or a plurality of network slices of the specific type indicated by the inventory data. In this case, one of the network slices identified in this manner is referred to as “network slice of interest.” In this case, for example, it is assumed that the network slice68bhas been identified as the network slice of interest.

Then, the monitoring management module102identifies all the NFs belonging to the network slice of interest based on the inventory data. In this case, for example, the monitoring management module102identifies the DU50, the CU-UP54b, and the UPF64bas the NFs belonging to the network slice of interest based on the topology data illustrated inFIG.12.

Then, the monitoring management module102substitutes one or a plurality of NFs identified in this manner as the value of the parameter x2 of the above-mentioned calculation logic data.

Then, the monitoring management module102calculates the value of the availability of the network slice of interest in accordance with the calculation logic indicated by the calculation logic data. In this case, for example, the monitoring management module102identifies the availability of one or a plurality of NFs set as the value of the parameter x2 in regard to the network slice of interest. As illustrated inFIG.4, the DU50, the CU-UP54b, and the UPF64ball belong to a plurality of network slices, but in this case, the availability regarding the network slice68bis identified. Then, the monitoring management module102calculates an average value of the identified availability as the value of the availability of the network slice of interest.

In this embodiment, for example, the above-mentioned process is executed for all the identified network slices of the specific type.

In the second example, the monitoring management module102may identify all the NSes belonging to the network slice for each network slice of interest. For example, the NSes corresponding to the node130jand the node130kmay be identified.

Then, the monitoring management module102may identify, for each of the identified NSes, all the NFs belonging to the network slice under the control of the NS. In this case, for example, the NFs corresponding to the node130land the node130mmay be identified as the NEs under the control of the node130j. Meanwhile, the NF corresponding to the node130nmay be identified as the NF under the control of the node130k.

Then, the monitoring management module102may calculate, for each of the identified NSes, an average value of the availability of all the NFs belonging to the network slice under the control of the NS in regard to the network slice of interest as the value of the availability of the NS. For example, an average value of the availability of the NEs respectively corresponding to the node130land the node130min regard to the network slice corresponding to the node130imay be calculated as the value of the availability of the NS corresponding to the node130jin regard to the network slice corresponding to the node130i. Meanwhile, the value of the availability of the NF corresponding to the node130nin regard to the network slice corresponding to the node130imay be calculated as the value of the availability of the NS corresponding to the node130kin regard to the network slice corresponding to the node130i.

Then, the monitoring management module102may calculate an average value of the values of the availability calculated for the respective NSes as the value of the availability of the network slice of interest. For example, an average value of the value of the availability of the NS corresponding to the node130jin regard to the network slice corresponding to the node130iand the value of the availability of the NS corresponding to the node130kin regard to the network slice corresponding to the node130imay be calculated as the value of the availability of the network slice corresponding to the node130i.

In this case, for example, the calculation logic data may indicate a calculation logic for calculating a weighted average value of the values of the availability calculated for the respective NSes as the value of the availability of the network slice.

Then, the monitoring management module102may calculate the weighted average value of the values of the availability calculated for the respective NSes as the value of the availability of the network slice.

For example, the calculation logic data may indicate a calculation logic for calculating “(p1×99+p2)/100” as the availability of the network slice. In this case, p1 represents the average value of the availability of the NFs included in the RAN38, and p2 represents the average value of the availability of the NFs included in the core network system40.

Then, in this case, the monitoring management module102may calculate the value of the availability of the network slice of interest by applying the above-mentioned calculation logic. For example, the value of the availability of the NS corresponding to the node130jin regard to the network slice corresponding to the node130iis represented by p1, and the value of the availability of the NS corresponding to the node130kin regard to the network slice corresponding to the node130iis represented by p2. In this case, the value calculated by the mathematical expression “(p1×99+p2)/100” may be calculated as the value of the availability of the network slice corresponding to the node130i.

In this embodiment, as described above, the NOS32may store the inventory data indicating the current status of the link between the elements included in the communication system1.

Then, the NOS32may store a calculation logic data indicating a calculation logic for calculating the performance index value of a specific type of element based on the performance index value of the element group linked to the element. The calculation logic data may indicate a calculation logic for calculating the performance index value of a specific type of element based on the performance index value of the element group of the child of the element. As described in the first example, the calculation logic data may also indicate a calculation logic for calculating the performance index value of a specific type of NS based on the performance index value of an NF group under the control of the NS. As described in the second example, the calculation logic data may also indicate a calculation logic for calculating the performance index value of a specific type of network slice based on the performance index value of an NF group belonging to the network slice.

Then, the monitoring management module102may identify the above-mentioned specific type of element included in the communication system1based on the inventory data and the calculation logic data. For example, as described in the first example, the monitoring management module102may identify a specific type of NS included in the communication system1based on the inventory data and the calculation logic data. As described in the second example, the monitoring management module102may also identify a specific type of network slice included in the communication system1based on the inventory data and the calculation logic data.

Then, the monitoring management module102may identify the performance index value of each of the plurality of elements included in the element group linked to the identified specific type of element. For example, as described in the first example, the monitoring management module102may identify the performance index value of each of the plurality of NFs included in an NF group under the control of the identified specific type of NS. As described in the second example, the monitoring management module102may also identify the performance index value of each of the plurality of NEs included in an NF group belonging to the identified specific type of network slice in regard to the network slice.

Then, the monitoring management module102may calculate the performance index value of a specific type of element by applying the calculation logic indicated by the calculation logic data to the performance index value identified for each of the plurality of elements. For example, as described in the first example, the monitoring management module102may calculate the performance index value of a specific type of NS by applying the calculation logic indicated by the calculation logic data to the performance index value identified for each of the plurality of NFs. As described in the second example, the monitoring management module102may also calculate the performance index value of a specific type of network slice by applying the calculation logic indicated by the calculation logic data to the performance index value identified for each of the plurality of NFs. In this case, the type of the performance index represented by the performance index value identified for each of the plurality of elements and the type of the performance index represented by the performance index value calculated by applying the calculation logic indicated by the calculation logic data to the performance index value may be the same or different from each other.

Further, in this embodiment, as described above, the NOS32may store the inventory data indicating the current status of the configuration of the element group included in the communication system1.

The NOS32may also store the calculation logic data indicating a condition to be satisfied by an element used for calculating the desired performance index value, a monitoring item for the element, and a calculation logic for calculating the desired performance index value.

For example, in regard to the calculation logic data described in the first example, the condition that the NF is under the control of a specific type of NS corresponds to the “condition to be satisfied by an element used for calculating the desired performance index value.” The availability of the NF corresponds to the “monitoring item for the element.” The calculation logic for calculating the average value of the availability of all the NEs under the control of the NS as the availability of the NS corresponds to the “calculation logic for calculating the desired performance index value.”

Meanwhile, in regard to the calculation logic data described in the second example, the condition that the NF belongs to a specific type of network slice corresponds to the “condition to be satisfied by an element used for calculating the desired performance index value.” The availability of the NF in regard to the network slice corresponds to the “monitoring item for the element.” The calculation logic for calculating the average value of the availability of all the NFs belonging to the network slice as the availability of the network slice corresponds to the “calculation logic for calculating the desired performance index value.”

Then, the monitoring management module102may identify an element that satisfies the above-mentioned condition from the element group indicated by the inventory data based on the inventory data and the calculation logic data.

Then, the monitoring management module102may calculate a desired performance index value by applying the calculation logic indicated by the calculation logic data to the performance index value of the above-mentioned monitoring item for the identified element.

The element for which the calculation logic for calculating the performance index value is indicated by the calculation logic data is not limited to the network slice (NSI) or the network service (NS). For example, a calculation logic for calculating the performance index value of the NSSI or the NF may be indicated. For example, the calculation logic data may indicate a calculation logic for calculating a total value of throughputs of all the CNFCs under the control of a specific type of NF as a throughput of the NF. In this case, a condition that the CNFCs are under the control of the NF corresponds to the above-mentioned “condition to be satisfied by an element used for calculating the desired performance index value.” In addition, the throughput corresponds to the above-mentioned “monitoring item for the element.”

In this embodiment, for example, the monitoring management module102also notifies the E2EO module96of the value of the KPI calculated as described above. Then, the E2EO module96executes the workflow script associated with the condition when a predetermined condition that, for example, the value of the KPI exceeds a threshold value defined in advance or the value of the KPI is smaller than a threshold value defined in advance, is satisfied. In this manner, for example, scale-out corresponding to the condition is executed. In this embodiment, the scale-out that cannot be handled by Kubernetes of the container management module among container management module106a,106b, and106ccan be executed. The information of the threshold value may be included in technology service catalog data of a bundle file. As described above, the information of the threshold value may also be included in the service catalog data.

In the scale-out, the same process as a process performed when a new element is constructed is executed. For example, the inventory management module98updates the inventory data stored in the active inventory114and the inventory database110so as to conform to changes in current statuses of the configuration of the element group and the link between the elements due to the scale-out.

For example, it is assumed that the scale-out has been executed, to thereby add the CU-UP54under the control of the gNB56and update the topology data illustrated inFIG.11to topology data illustrated inFIG.13. In the topology data illustrated inFIG.13, a node1300having an identifier of “CU-UP #101” has been added. In addition, a link132mconnecting the node130aand the node1300to each other has been added.

Further, for example, it is assumed that the scale-out has been executed, to thereby add the UPF64belonging to the network slice68band update the topology data illustrated inFIG.12to topology data illustrated inFIG.14. In the topology data illustrated inFIG.14, a node130phaving an identifier of “UPF #101” has been added. In addition, a link132nconnecting the node130kand the node130pto each other has been added.

Even when such a topology change as described above occurs, in this embodiment, only the value substituted into the parameter of the above-mentioned calculation logic data is changed, and it is not required to change the calculation logic itself indicated by the calculation logic data.

For example, the values substituted as the value of the above-mentioned parameter x1 are only changed from the NFs corresponding to the node130b, the node130c, the node130d, the node130e, and the node130fto the NFs corresponding to the node130b, the node130c, the node130d, the node130e, the node130f, and the node1300. Further, the values substituted as the value of the above-mentioned parameter x2 are only changed from the NEs corresponding to the node130l, the node130m, and the node130nto the NFs corresponding to the node130l, the node130m, the node130n, and the node130p.

Accordingly, it is not required to change monitoring settings, for example, change targets to be aggregated, each time there is a change in current status of the link between elements, such as addition or deletion of a functional unit under the control of the network service. In addition, it is not required to set the calculation logic for calculating the performance index value to be monitored in accordance with the current status of a constructed functional block group.

In this manner, according to this embodiment, it is possible to reduce time and labor required in the operation of the communication system1.

The topology change in this embodiment is not limited to the scale-out. For example, scale-in or replacement may be handled as the topology change in this embodiment.

Further, it is assumed that an NF belonging to a specific network slice has been added by the scale-out in this embodiment. In this case, an NF added in this manner is not only added to an element substituted into the parameter in the calculation of the desired performance index value for an NS having the NF under the control thereof but also added to an element substituted into the parameter in the calculation of the desired performance index value for a network slice to which the NF belongs. That is, the addition of such an NF affects both the calculation of the desired performance index value for the NS having the NE under the control thereof and the calculation of the desired performance index value for the network slice to which the NF belongs.

Flows of processes executed by the vendor terminal36, the MPS30, and the NOS32when the “ONBOARDING” button70is clicked by a vendor on an onboarding screen illustrated inFIG.7is described with reference to flow charts illustrated inFIG.15AandFIG.15B.

First, the vendor terminal36transmits bundle data arranged in a path specified on the onboarding screen to the bundle development module90of the NOS32(Step S101).

Then, the bundle development module90develops the bundle data received in the process step of Step S101and generates a data group illustrated inFIG.9(Step S102).

Then, the bundle development module90determines a bundle ID corresponding to the data group generated in the process step of Step S102(Step S103).

The bundle development module90then transmits product catalog data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103to the product management module80of the MPS30. Then, the product management module80of the MPS30stores the received product catalog data in the product catalog storage82(Step S104).

The bundle development module90then outputs to the service management module92service catalog data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103. Then, the service management module92stores the received service catalog data in the service catalog storage94(Step S105).

The bundle development module90stores inventory template data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103in the inventory management module98(Step S106).

The bundle development module90then stores CM template data included in the data group illustrated in Step S102that is linked to the bundle ID determined in the process step of Step S103in the configuration management module100(Step S107).

The bundle development module90stores monitoring script data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103in the monitoring management module102(Step S108).

Then, the bundle development module90stores security script data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103in the security setting module104(Step S109).

The bundle development module90then stores Helm chart data included in the data group generated in the process step of Step S102that is linked to the bundle ID determined in the process step of Step S103(Step S110) in the container management module among container management module106a,106b, and106c. For example, the bundle development module90may store the Helm chart included in the data group generated in the process step of Step S102in a plurality of container management modules106a,106b, and106c. Further, Helm chart data associated with the container management module may be stored in the container management module.

Then, the bundle development module90stores container image data included in the data group generated in the process step of S102that is linked to the bundle ID determined in the process step of Step S103(Step S111) in the repository module108, and the process illustrated in this process example is ended.

Next, a flow of processes executed by the purchaser terminal34, the MPS30, and the NOS32in accordance with a purchase operation of a network service, which is performed by the purchaser, is described with reference to a flow chart illustrated inFIG.16.

First, the purchaser terminal34transmits a purchase request for a network service linked to the purchase bundle ID and the purchase service requirement data to the purchase management module84of the MPS30(Step S201).

Then, the purchase management module84transmits to the E2EO module96the purchase request linked to the purchase bundle ID and the purchase service requirement data received in the process step of Step S201(Step S202).

The E2EO module96then identifies service catalog data corresponding to the purchase bundle ID linked to the received purchase request (Step S203).

Then, the E2EO module96acquires the service catalog data identified in the process step of Step S203from the service catalog storage94and executes the workflow script indicated by the service catalog data (Step S204), and the process illustrated in this process example is ended.

The details of the process step of Step S204is now described with reference to the flow charts illustrated inFIG.17AtoFIG.17F.

First, the E2EO module96and the inventory management module98generate planned data based on the purchase service requirement data linked to the purchase request, service catalog data, inventory template data, and inventory data (Step S301).

Then, the inventory management module98stores the generated planned data in the active inventory114(Step S302).

Then, the inventory management module98stores the generated planned data in the inventory database110(Step S303).

The inventory management module98then outputs an inventory key included in the generated planned data to the E2EO module96(Step S304).

Then, the E2EO module96outputs the inventory key that has been received to the configuration management module100(Step S305).

The configuration management module100then acquires planned data including the received inventory key from the active inventory114(Step S306). In this case, the planned data may be acquired from the inventory database110.

Then, the configuration management module100generates and holds planned CM data including a day 1 parameter based on the planned data acquired in the process step of Step S306(Step S307).

The configuration management module100outputs an instruction for a setup, for example, securing required hardware resources, to the bare metal management module112(Step S308), and the bare metal management module112executes a setup, for example, securing hardware resources in accordance with the instruction (Step S309). At this time, the setup of system software in accordance with a specific type of functional unit and addition of a free server to the resource pool are executed as required.

In this embodiment, a free server may be added to the resource pool with an enough margin (buffer). For example, a plurality of servers120a,120b, and120cmay be collectively added to the resource pool.

Then, the bare metal management module112outputs a completion notification to the configuration management module100(Step S310).

Then, the configuration management module100outputs a completion notification to the E2EO module96(Step S311).

Then, the E2EO module96acquires the planned data including the inventory key received in the process step of Step S304from the active inventory114(Step S312). In this case, the planned data may be acquired from the inventory database110. Then, the E2EO module96identifies a location at which the element group is deployed based on the planned data acquired in the process step of Step S312(Step S313).

The E2EO module96then generates a day 0 parameter (CNF instance) for each location identified in the process step of Step S313(Step S314).

Then, to a container management module among container management module106a,106b, and106ccorresponding to each location identified in the process step of Step S313, the E2EO module96outputs a day 0 parameter corresponding to the container management module (Step S315).

The container management module then executes the deployment of a container based on the day 0 parameter that has been received (Step S316).

Then, the container management module outputs the completion notification to the E2EO module96(Step S317).

The E2EO module96then outputs a configuration management instruction that is based on the day 1 parameter to the configuration management module100(Step S318).

Then, the configuration management module100executes the configuration management of a container group that is based on the day 1 parameter included in the held planned CM data (Step S319).

The configuration management module100then outputs a completion notification to the E2EO module96(Step S320).

Then, the E2EO module96executes the instantiation of a network slice based on the planned data acquired in the process step of Step S312(Step S321). In the process step of Step S321, for example, as described above, the E2EO module96may output a configuration management instruction related to the instantiation of the network slice to the configuration management module100. Then, the configuration management module100may execute configuration management, for example, settings in accordance with the configuration management instruction.

Further, as described above, the configuration management module100may update the day 1 parameter based on the configuration management instruction received from the E2EO module96in the process step of Step S321without executing the process steps of from Step S318to Step S320. Then, the configuration management module100may execute configuration management, for example, settings in accordance with the configuration management instruction.

The E2EO module96then outputs the inventory key received in the process step of Step S304to the monitoring management module102(Step S322).

Then, the monitoring management module102acquires planned data including the received inventory key from the active inventory114(Step S323). In this case, the planned data may be acquired from the inventory database110.

Based on the planned data acquired in the process step of Step S323, the monitoring management module102then executes a monitoring setting in accordance with a monitoring policy indicated by the purchase service requirement data (Step S324). Then, the monitoring management module102outputs a completion notification to the E2EO module96(Step S325).

The E2EO module96then outputs the inventory key received in the process step of Step S304to the security setting module104(Step S326).

Then, the security setting module104acquires planned data including the received inventory key from the active inventory114(Step S327). In this case, the planned data may be acquired from the inventory database110.

The security setting module104then executes a security setting based on the planned data acquired in the process step of Step S327(Step S328).

Then, the security setting module104outputs a completion notification to the E2EO module96(Step S329).

Then, the E2EO module96outputs a completion notification to the inventory management module98(Step S330).

Then, the inventory management module98updates the inventory data so that the setting of the planned attribute regarding the planned data stored in the active inventory114and the inventory database110is canceled (Step S331), and the process illustrated in this process example is ended.

Next, a flow of a process executed by the monitoring management module102of the NOS32is described with reference to a flow chart illustrated inFIG.18.FIG.18is an illustration of a process for calculating a desired performance index value for one specific element based on one specific calculation logic data.

First, the monitoring management module102identifies the condition to be satisfied by an element used for calculating the desired performance index value in the calculation logic data (Step S401).

Then, the monitoring management module102searches the inventory data to identify one or a plurality of elements that satisfy the condition identified in the process step of Step S401(Step S402). In the process step of Step S402, for example, an element corresponding to the node130being a child of the node130corresponding to the element for which the desired performance index value is to be calculated is identified.

Then, the monitoring management module102substitutes the element identified in the process step of Step S402as the value of the parameter of the calculation logic indicated by the calculation logic data (Step S403).

Then, the monitoring management module102identifies the performance index value indicated as the monitoring item for the element in the calculation logic data for the element substituted as the value of the parameter in the process step of Step S403(Step S404).

Then, the monitoring management module102calculates the desired performance index value by applying the calculation logic indicated by the calculation logic data to the performance index value identified in the process step of Step S404(Step S405), and the process illustrated in this process example is ended.

Note that, the present invention is not limited to the embodiment described above.

For example, in this embodiment, the calculation logic indicated by the calculation logic data may include a calculation expression for accumulating the performance index values of lower-level elements in the topology data and calculating the performance index value of an upper-level element. Further, in this embodiment, the performance index values of the CNFC, the NF, the NS, and the network slice may be calculated in order by tracing back the hierarchical structure indicated by the topology data. Further, the performance index value of the NSSI may be calculated based on the performance index value of the NF or the NS.

Further, the performance index represented by the performance index value in this embodiment may be a throughput or a connection completion rate. Further, the performance index value may include (1) the target value or guaranteed value of the throughput, (2) the target value or guaranteed value of the connection completion rate, and (3) the target value or guaranteed value of the number of simultaneous connections.

Further, the performance index value of the NS may include (1) a radio resource control (RRC) connection completion rate (KPI of RAN domain NS), (2) an attach success rate (KPI of core domain NS), and (3) an EPS radio access bearer (ERAB) established success rate (KPI of core domain NS). Further, as the performance index value (for example, connection completion rate) of an NSI (or NSSI) at a higher-level of the NS, there may be calculated the product of (1) the average value of the RRC connection completion rate, (2) the average value of the attach success rate, and (3) the average value of the ERAB established success rate. Further, the average value of the RRC connection completion rate over a plurality of gNBs belonging to the same NSI (or NSSI) may be used as the average value of the RRC connection completion rate.