SYSTEM AND METHOD FOR TRANSFORMING SLICE MANAGER INVENTORY DATA - Patent application

The slice manager inventory translator decouples slice managers from system inventories, enhancing availability and resilience by converting data into a slice manager's model, addressing integration challenges and maintaining operation even during inventory system downtime.

JP7824494B2Active Publication Date: 2026-03-04RAKUTEN MOBILE INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025526565
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-01-24
Publication Date
2026-03-04
Estimated Expiration
2043-01-24

AI Technical Summary

Technical Problem

Existing slice managers are hindered by the need for customization with each new inventory system integration, leading to reduced availability and resilience due to direct integration with system inventories, causing downtime and maintenance issues.

Method used

The implementation of a slice manager inventory translator that decouples the slice manager from system inventories, using an interfacing system to convert inventory data into a slice manager's data model, ensuring independent operation and increased availability through a persistence layer and temporary data retention.

Benefits of technology

Enhances the availability and resilience of slice managers by allowing them to operate independently of system inventories, reducing downtime and improving performance by preprocessing data conversion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007824494000001
    Figure 0007824494000001
  • Figure 0007824494000002
    Figure 0007824494000002
  • Figure 0007824494000003
    Figure 0007824494000003
Patent Text Reader

Abstract

The method includes generating, by the processor and based on a network slice design submitted by a user, a network slice, and automatically generating, by the processor, a network slice selection aiding information ID (nSSAI ID) for the network slice.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present description relates to a system for transforming slice manager inventory data and methods of using same. [Background technology]

[0002] A cellular network is a communication system in which mobile devices (e.g., mobile phone devices) communicate over radio waves through one or more local antennas at cellular base stations (e.g., cell towers). The coverage area served is divided into small geographic areas called cells. Each cell is served by a separate low-power multi-channel transceiver and antenna at the cell tower. Mobile devices within a cell communicate through that cell's antenna on multiple frequencies and separate frequency channels assigned by the base station from the pool of frequencies used by the cellular network.

[0003] The Radio Access Network (RAN) is the part of a communications system that implements radio access technology. The RAN resides between devices such as mobile phones, computers, and remotely operated machines, providing connectivity to the Core Network (CN). Depending on the standard, mobile phones and other wirelessly connected devices are known as User Equipment (UE), Terminal Equipment (TE), Mobile Station (MS), etc. Summary of the Invention [Means for solving the problem]

[0004] In some embodiments, a method includes receiving, by a processor, a request for inventory data from a slice manager; requesting, by the processor, the inventory data from one or more system inventories; receiving, by the processor, the requested inventory data from the inventories; converting, by the processor, the requested inventory data into a slice manager data model; and transmitting, by the processor, the converted requested data.

[0005] In some embodiments, an apparatus includes a processor and memory storing instructions that, when executed by the processor, cause the apparatus to receive a request for inventory data from a slice manager, request the inventory data from one or more system inventories, receive the requested inventory data from the inventories, convert the requested inventory data to a slice manager data model, and transmit the converted requested data.

[0006] In some embodiments, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause a device to receive a request for inventory data from a slice manager, request the inventory data from one or more system inventories, receive the requested inventory data from the inventories, convert the requested inventory data to a slice manager data model, and transmit the converted requested data. [Brief explanation of the drawings]

[0007] Aspects of the present embodiments are understood when read in conjunction with the accompanying drawings. In accordance with standard industry practice, various features are not drawn to scale. In some embodiments, the dimensions of various features are arbitrarily increased or decreased for clarity of discussion.

[0008] FIG. 1 is a diagrammatic representation of a system for network slice design (NSD), according to some embodiments.

[0009] FIG. 2 is a flow diagram of a method for designing a network slice according to some embodiments.

[0010] FIG. 3 is a block diagram of a slice manager inventory translator system according to some embodiments.

[0011] FIG. 4 is a block diagram of an inventory translator, according to some embodiments.

[0012] FIG. 5 is an example of nSSAI ID rules, according to some embodiments.

[0013] FIG. 6 is a high-level functional block diagram of a processor-based system according to some embodiments. DETAILED DESCRIPTION OF THE INVENTION

[0014] The following embodiments provide many different examples for implementing different features of the subject matter discussed. Examples of components, values, operations, materials, arrangements, etc. are described below to simplify the present embodiments. These are, of course, examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, etc. are also contemplated. For example, the formation of a first feature above or on a second feature in the following description includes embodiments in which the first and second features are formed in direct contact, and further includes embodiments in which an additional feature is formed between the first and second features such that the first and second features are not in direct contact. Additionally, the present disclosure repeats reference numerals and / or letters in many examples. This repetition is for simplicity and clarity and is not intended to dictate a relationship between the various embodiments and / or configurations discussed.

[0015] Additionally, spatially relative terms such as "beneath," "below," "lower," "above," "upper," and the like are used herein for ease of description to describe the relationship of one element or feature to another element or feature as illustrated in the figures. Spatially relative terms are intended to encompass different orientations of the device in use or operation in addition to the orientation shown in the figures. With the device otherwise oriented (rotated 90 degrees or at other orientations), the spatially relative descriptors used herein will be interpreted accordingly.

[0016] Network slicing is a method of creating multiple unique logical and virtualized networks on a common multi-domain infrastructure. Using software-defined networking (SDN), network functions virtualization (NFV), orchestration, analytics, and automation, network operators manually create network slices to support specific applications, services, sets of users, or networks. Network slices can be configured across multiple network domains, such as access networks (user networks such as RANs that connect subscribers to service providers and, through transport networks, to other networks such as the Internet), core networks (central conduits designed for high-speed forwarding of network traffic), and transport networks (public communications infrastructure that enables communication between defined network termination points), deployed across multiple network operators.

[0017] Network slicing supports services with different network requirements, from "connected vehicles" to voice telephony, which require different throughput, latency, and reliability compared to data communications with Internet of Things (IoT) devices. With network slicing, each slice is configured with a different architecture, management, and security to support a specific use case. Functional components and resources are shared between network slices, but capabilities such as data speed, capacity, connectivity, quality, latency, reliability, and service are customized for each slice to meet specific service level agreements (SLAs) with vendors.

[0018] A network slice is decomposed into Network Service (NS) subnets, where each subnet is dedicated to a domain (e.g., RAN, CN, transport domain, or E2E, each of which includes). A transport domain refers to a communication transmission facility where voice, data, and video communications are distributed among remote locations for shared use. Within a NS, a subnet is one or more network services. Within a network, a service is one or more network functions.

[0019] In some embodiments, a slice manager inventory translator is discussed. In some embodiments, a method for translating a slice manager inventory is discussed.

[0020] A slice manager interface with various functions is implemented by each layer (e.g., service layer, network function layer, infrastructure layer) to coherently manage each slice request. The slice manager enables efficient and flexible reconfigurable slice creation. The slice manager provides end-to-end (E2E) service management, including mapping various service instances expressed in terms of SLA requirements to appropriate network functions that can satisfy the service constraints. The slice manager also provides slice lifecycle management, such as slice performance monitoring, to dynamically reconfigure each slice to accommodate possible SLA requirement changes.

[0021] In other approaches, the slice manager runs in conjunction with a vendor-specific inventory. In some embodiments, a translator service makes the interaction between the slice manager and the inventory more efficient.

[0022] In other approaches, the resilience and availability of a slice manager are affected by the system inventory. In computer networking, resilience is the ability to provide and maintain an acceptable level of service in the face of failures and challenges to normal operation. Availability is the probability that an item will operate satisfactorily at a given time when used under stated conditions in an ideal support environment.

[0023] Different inventories / vendors bring different data models, and these data models are converted within the slice manager application. For every new inventory system integration, the slice manager application is called to be customized. This is a barrier to integrating slice manager with different types of inventory systems.

[0024] A data model is an abstract model that organizes elements of data and standardizes how elements of data relate to each other and to the properties of real-world entities. For example, a data model might specify that a data element representing a car is composed of several other elements that describe the car's color and size, and that define its owner. A data model explicitly determines the structure of the data.

[0025] The system inventory is the data source for the slice manager to understand the data center infrastructure. The system inventory is accessed by the slice manager to perform configuration. For this reason, the slice manager is not deployable independently of the system inventory.

[0026] Because the slice manager directly integrates with the system inventory, any kind of outage and maintenance on the system inventory will result in downtime for the slice manager, thus reducing the availability and resilience of the system.

[0027] In some embodiments, the slice manager is decoupled from the inventory and interacts with an interfacing system called the slice manager inventory translator, which completely abstracts the system inventory or any other inventory. In some embodiments, the translator system allows for configuration of input / output (communication between the system inventory and the slice manager) based on the output data model of the system inventory.

[0028] In some embodiments, an inventory translator interface system converts inventory data into the slice manager's data model. In some embodiments, the inventory translator system has a persistence layer (a software layer that allows program state to persist over time) so that the slice manager can operate independently of the system inventory over a period of time. In some embodiments, the slice manager integrates with different types of inventory systems. In some embodiments, the slice manager increases availability and resilience. In some embodiments, the slice manager is deployed independently without the system inventory. In some embodiments, slice manager performance is increased because the conversion is performed in advance.

[0029] In some embodiments, an inventory translator retrieves data from the inventory system and converts the data into the Slice Manager data model. In some embodiments, upon successful conversion of the data, the data is retained in a temporary inventory. In some embodiments, the process continues periodically or on an on-demand basis. In some embodiments, the inventory translator is configured to manually fetch data from the inventory system.

[0030] In some embodiments, a slice manager, orchestrator (which provides configuration automation, coordination, and management of computer systems and software), correlation and policy engine (CPE), or any other external service interacts directly with the inventory through the inventory translator. A CPE is a software application that programmatically understands relationships. A CPE is configured for use in system management tools to aggregate, normalize, and analyze event data. Event correlation is a technique for making sense of a large number of events and identifying a small number of events that are significant in a mass of information. This is achieved by exploring and analyzing relationships between events. Additionally, a CPE is a program or process that receives machine-readable policies and applies them to specific problem domains to constrain the behavior of network resources.

[0031] In some embodiments, in response to the inventory system going down, the slice manager, orchestrator, CPE, or any other external service runs on data provided by the holding inventory translator.

[0032] In some embodiments, the slice manager translator includes a data model mapper, a vendor, an application programming interface (API), a plugin mapper, a scheduler, a retention service, and an availability service. An API is a way for two or more computer programs to communicate with each other. An API is a type of software interface that provides services to other pieces of software. An API connects computers or pieces of software to each other.

[0033] In some embodiments, the mapping is a one-to-one relationship between each element in the data model and the corresponding element of the data model in the database. The mapping transforms each operation that represents an element in the database into a corresponding data model element using the data model.

[0034] In some embodiments, a data model mapper converts system inventory data into a slice manager-specific data model. In a non-limiting example, depending on different system inventories that include different slice IDs (specifics) (e.g., slice_id, instance_id, SLICE ID, slice_no, where instance_id, SLICE ID, slice_no are slice IDs of different system inventories), the data model mapper maps the different inventory IDs to slice IDs defined in the slice manager data model.

[0035] In some embodiments, a vendor API and plugin mapper maps system inventory API details based on the vendor. In some embodiments, a scheduler periodically checks the system inventory API according to a time scheduled in the scheduler, and a slice manager translator fetches data from the system inventory. In some embodiments, a persistence service stores inventory data in a temporary inventory. In some embodiments, in response to the system inventory service going down, the slice manager runs independently for a predetermined period of time. In some embodiments, an availability service checks whether the system inventory service is available. In response to the system inventory becoming available, the availability service notifies the slice manager to work directly with the system inventory. In response to the system inventory becoming unavailable, the availability service notifies the slice manager to get data from the temporary inventory database.

[0036] FIG. 1 is a diagrammatic representation of a system 100 for network slice design (NSD), according to some embodiments.

[0037] The NSD system 100 includes a CN 102 communicatively coupled to a RAN 104 through a transport network 106, which is communicatively coupled to base stations 108A and 108B (hereinafter base stations 108) having antennas 110 wirelessly connected to UEs 112 located in geographic coverage cells 114A and 114B (hereinafter geographic coverage cells 114). The CN 102 includes one or more service providers 116, a KPI server 118, and a network slicing module (NSDM) 120.

[0038] The CN 102 (also known as a backbone) is a domain that is part of a computer network that interconnects networks, providing a pathway for the exchange of information between different local area networks (LANs) or subnetworks. In some embodiments, the CN 102 ties together various networks across a wide geographic area, in different buildings in a campus environment, or even within the same building.

[0039] In some embodiments, the RAN 104 is an access network domain. In some embodiments, the RAN 104 is a global system for mobile communications (GSM) RAN, a GSM / EDGE RAN, a universal mobile telecommunications system (UMTS) RAN (UTRAN), an evolved UMTS terrestrial radio access network (E-UTRAN), an open RAN (O-RAN), or a cloud-RAN (C-RAN). The RAN 104 resides between the UE 112 (e.g., a mobile phone, a computer, any remotely controlled machine) and the CN 102. In some embodiments, for simplicity of presentation and discussion, the RAN 104 is a C-RAN. In some embodiments, a baseband unit (BBU) replaces the C-RAN.

[0040] In traditional distributed cellular networks, the equipment at the bottom and top of a cell site's base station is the BBU. BBUs are radio equipment that connect UEs to the CN and process billions of bits of information per hour. Traditionally, BBUs are located in an enclosure or shelter at the bottom of a base station. C-RAN, in contrast, uses the large signal transmission capacity of optical fiber to centralize many BBUs in dedicated pool locations or base stations. This reduces the amount of equipment at the base station and offers many other benefits, including lower latency.

[0041] In a hierarchical communication network, the transport network 106 of the NSD system 100 includes intermediate links between the CN 102 and the RAN 104. Two primary methods of mobile backhaul implementation are fiber-based backhaul and wireless point-to-point backhaul. Higher capacity and latency requirements in 4G and 5G networks are making other methods, such as copper-based wireline, satellite communications, and point-to-multipoint wireless technologies, obsolete. Backhaul refers to the side of the network that communicates with the Internet. The connection between the base station 108 and the UE 112 begins with the transport network 106, which connects to the CN 102. In some embodiments, the transport network 106 includes wireline, fiber optic, and wireless components. The wireless section includes using microwave, mesh, and edge network topologies that use high-capacity wireless channels to transmit packets over microwave or fiber links.

[0042] In some embodiments, the base station 108 is a lattice or self-supporting tower, a guide tower, a monopole tower, a concealed tower (e.g., a tower designed to resemble a tree, cactus, water tower, sign, light standard, or other type of structure), or the like. In some embodiments, the base station 108 is a cellular-enabled mobile device site where antennas and electronic communications equipment are located (typically on a radio mast, tower, or other elevated structure) to create a cell (or adjacent cells) in the network. The elevated structure typically supports an antenna 110 and one or more sets of transmitters / receivers (transceivers), digital signal processors, control electronics, remote radio heads (RRHs), primary and backup power sources, and sheltering. Base stations are known by other names, such as base transceiver stations, cellular masts, cell towers, etc. In some embodiments, the base station is replaced or supplemented by an edge device configured to communicate wirelessly with UEs. The edge device provides an entry point into a service provider CN, such as the CN 102. Examples include routers, routing switches, integrated access devices (IADs), multiplexers, and various metropolitan area network (MAN) and wide area network (WAN) access devices.

[0043] In at least one embodiment, antenna 110 is a sector antenna. In some embodiments, antenna 110 may be a type of directional microwave antenna with a sector-shaped radiation pattern. In some embodiments, the sector angle may be a 60°, 90°, or 120° design, with a few extra degrees to ensure overlap. Furthermore, if wider or full-circle coverage is desired, multiple sector antennas may be mounted. In some embodiments, antenna 110 is a rectangular antenna, sometimes called a panel antenna or radio antenna, used to transmit and receive waves or data between mobile devices or other devices and base stations. In some embodiments, antenna 110 is a circular antenna. In some embodiments, antenna 110 operates at microwave or ultra-high frequency (UHF) frequencies (300 MHz to 3 GHz). In other examples, antennas 110 are chosen for their size and directionality. In some embodiments, antenna 110 is a multiple-input, multiple-output (MIMO) antenna that transmits and receives more than one data signal simultaneously over the same wireless channel by taking advantage of multipath transmission.

[0044] In some embodiments, the UE 112 is a computer or computing system. Additionally or alternatively, the UE 112 has a liquid crystal display (LCD), light emitting diode (LED), or organic light emitting diode (OLED) screen interface, such as a user interface (UI) 1822 ( FIG. 18 ), which provides a touchscreen interface with digital buttons and a keyboard or physical buttons along with a physical keyboard. In some embodiments, the UE 112 connects to the Internet and interconnects with other devices. Additionally or alternatively, the UE 112 integrates an integrated camera, the ability to make and receive voice and video calls, video games, and global positioning system (GPS) capabilities. Additionally or alternatively, the UE runs an operating system (OS) that allows for the installation and execution of specialized third-party apps for capabilities. In some embodiments, the UE 112 is a computer (such as a tablet computer, netbook, digital media player, digital assistant, graphing calculator, handheld game console, handheld personal computer (PC), laptop, mobile internet device (MID), personal digital assistant (PDA), pocket calculator, portable media player, ultra-mobile PC, etc.), a mobile phone (such as a camera phone, feature phone, smartphone, phablet, etc.), a digital camera (such as a digital camcorder or digital still camera (DSC), digital video camera (DVC) or front camera), a pager, a personal navigation device (PND), a wearable computer (such as a calculator watch, smartwatch, head-mounted display, earphones, biometric device, etc.), or a smart card.

[0045] In some embodiments, the geographic coverage cell 114 includes a shape and size. In some embodiments, the geographic coverage cell 114 is a macrocell (covering 1 km to 30 km), a microcell (covering 200 m to 2 km), or a picocell (covering 4 m to 200 m). In some embodiments, the geographic coverage cell is circular, elliptical ( FIG. 1 ), sectored, or lobed, although the geographic coverage cell 114 may be configured in any shape or size. The geographic coverage cell 114 represents the geographic area in which the antennas 110 and the UEs 112 are configured to communicate.

[0046] A service provider 116 is a business, vendor, customer, or organization that sells bandwidth or network access to subscribers (using UEs) by providing direct Internet backbone access to Internet service providers or, typically, by providing access to a Network Access Point (NAP). A service provider may also be referred to as a backbone provider, Internet provider, or vendor. Service providers include telecommunications companies, data carriers, wireless communication providers, Internet service providers, and cable television operators that offer high-speed Internet access.

[0047] The KPI server 118 generates both predictive and live network data. Live network data (KPIs, UE / cell / MDT (minimization of drive test) traces, and crowd-sourced data) enables network traffic modeling, hotspot identification, and wireless signal transmission. RF drive testing is a method for measuring and assessing the coverage, capacity, and quality of service (QoS) of mobile wireless networks, such as the RAN 104. The technique involves using vehicles containing mobile wireless network air interface measurement equipment to detect and record various physical and virtual parameters of mobile cellular service in each geographic area. By measuring the experience of wireless network subscribers in an area, wireless carriers can make direct changes to the network that provide better coverage and service to their customers. Drive testing typically consists of a vehicle with attached drive test measurement equipment. The equipment is typically a highly specialized electronic device that interfaces to an original equipment manufacturer (OEM) mobile handset (UE). This ensures that measurements are realistic and comparable to actual user experience. For mobile networks, crowdsourcing methods utilize a collection of participants (e.g., mobile subscribers) to collect network measurements manually or automatically through mobile applications, or directly from the network using call traces.

[0048] UE / cell / MDT traces, collected in an Operations Support System (OSS) or through dedicated tools, provide user-level information to the service provider 116. Once geographically localized, the UE / cell / MDT traces are used to improve path loss calculations and prediction plots, and to identify and locate problem areas and traffic hotspots. The KPI server 118 enables the service provider 116 to use the UE / cell / MDT traces with the NSDM 120 for network optimization.

[0049] In some embodiments, the NSD module 120 is configured to allow a user to design one or more network slices. In some embodiments, the network slice design is GUI-based. In some embodiments, operations include a user entering basic information such as a network slice name, slice type, domain, shared or non-shared slice selection, etc. Other operations include defining a slice as requested by a northbound interface (e.g., within the system or manually from a user), such as service profile parameters (including original requirements for a communication service instance, such as latency, data rate, mobility level, etc.), and translating service profile parameters into slice profile parameters (including slice subnet parameter information for different network domain slice subnet instances (NSSIs), such as RAN, transport network (TN), and CN NSSI).

[0050] FIG. 2 is a flow diagram of a method 200 for designing a network slice, according to some embodiments.

[0051] In some embodiments, NSD method 200 describes the process tasks of network slice design. Although the operations of NSD method 200 are discussed and illustrated as having a particular order, the operations in NSD method 200 are configured to be performed in any order unless otherwise specified. NSD method 200 is implemented as a set of operations, such as operations 202-220.

[0052] In operation 202 of the NSD method 200, the NSDM 120 receives input from a user to initiate network slice design. In some embodiments, a graphical user interface (GUI) is presented to the user indicating that a network slice design application is starting. The process flows from operation 202 to operation 204.

[0053] A GUI is a form of user interface (UI) that allows users to interact with electronic devices through graphical icons and audio indicators, such as primary notation, instead of text-based UI, typed command labels, or text navigation. Actions in a GUI are usually performed through direct manipulation of graphical elements.

[0054] In operation 204 of NSD method 200, NSDM 120 presents a list of slice templates through a GUI. In some embodiments, each network slice in the slice template list includes a status (e.g., active or inactive), a name, a slice service type (e.g., eMBB, uRLLC, mIoT, or custom), a service category (home automation, rapid transit, etc.), a domain (RAN, TN, CN, or E2E), a vendor, a version, shared (or not shared), a creation date, and a last update date. The term “template” refers to a feature of a software application that defines a unique non-executable file format specifically intended for that application. The process flows from operation 204 to operation 206.

[0055] In operation 206 of NSD method 200, NSDM 120 receives user input through the GUI indicating a selection of a slice template. In some embodiments, the user points to and clicks on a slice template. In some embodiments, the user clicks on a user selection button to begin the process of creating a new slice with the selected slice template. The process flows from operation 206 to operation 208.

[0056] In operation 208 of NSD method 200, a GUI is presented through which a user enters basic slice information. In some embodiments, the user enters a slice name, selects a slice type (e.g., an eMBB, URLLC-type slice, etc.), selects a domain, and selects whether the slice is shared or dedicated. For example, the user selects a shared or dedicated slice subnet for each domain (RAN, CN, TN, or a combination of each) and coverage area of ​​the network slice. In some embodiments, the process flows from operation 208 to operation 210, where public land mobile network (PLMN) selection is based on the selected coverage area.

[0057] In operation 210 of NSD method 200, a GUI is presented for a user to configure network slice parameters. In some embodiments, the slice parameter GUI presents and configures service profile SLA parameters so that the user can modify the parameters if necessary (e.g., depending on the SLA). In a non-limiting example, the user modifies the expected latency to fit the network slice specifications (e.g., set it to 300 ms). In some embodiments, the slice manager calculates slice profile parameters for each domain (RAN, CN, TN) to meet the service profile SLA. In some embodiments, this process is repeated for each domain. The process flows from operation 210 to operation 212.

[0058] In operation 212 of NSD method 200, a GUI is presented in which the user selects a subnet profile, such as a domain-specific network service (shared network service or dedicated network service) that has already been deployed. In some embodiments, the user navigates to the slice subnet profile GUI, where the user selects a network slice subnet name for each domain. In some embodiments, the network services associated with the slice subnet are displayed. In some embodiments, the user can further select a network service template in response to a network service not existing or not associated with the network slice subnet.

[0059] In some embodiments, a GUI is presented, and a select network service pop-up box is presented to the user. In some embodiments, each of the network services, such as a user plane function (UPF is responsible for packet routing and forwarding, packet inspection, quality of service (QoS) handling, and external protocol data unit (PDU) sessions for interconnecting data networks (DNs) in the 5G architecture), a network repository function (NRF acts as a central service broker for all network functions (NFs) in the 5G core), or a session management function (SMF is responsible for interacting with the separated data plane, creating, updating, and removing PDU sessions, and managing session context with the UPF), is in the network service box. In a non-limiting example, the user selects UPF (shown as "highlighted"), and an indication that the UPF network service is shared (e.g., "true") is presented to the user. The user selects a network service from the network service list, and the box displays the network functions associated with the network service selected by the user from the network service list.

[0060] Alternatively, the GUI displays NRF as "highlighted" in the network service box, and "false" is presented in the shared user input field to indicate that the NRF network service is not shared. The user enters network service information into a template for a dedicated network service. The user selects a network service template in the NS template user selection field. In response to the selection of a network service template (e.g., UPF NST), a network function box is presented to the user. In the network function box, the user selects a network function (e.g., UPF application and UPF DB, where the user selects a distributed unit type, distributed unit code, cluster ID, etc.).

[0061] The GUI presented after each of the domains (RAN, Core, Transport) includes the network services. Once each domain includes the network services, the NSDM 120 determines whether the selected network services are ready to be served in the new network slice.

[0062] In some embodiments, in response to a feasibility test failing for one or more domains (e.g., the RAN domain), a GUI is presented, in some embodiments, a user selects another slice subnet and rechecks the feasibility.

[0063] In some embodiments, when the feasibility test is successful for each domain, a GUI is presented. In response to the success of the feasibility test, the user deploys the network slice. In some embodiments, without a successful feasibility test, the user cannot proceed with the network slice design. The process flows from operation 212 to operation 214.

[0064] In operation 214 of the method 200, a GUI is presented in which a user selects SLA parameters, such as parameters and KPIs, to be monitored for a network slice based on one or more SLA agreements. In some embodiments, the user searches for parameters or KPIs for the selected domain. In some embodiments, the user drags and drops parameters / KPIs. Furthermore, in response to deploying the slice and selecting parameters / KPIs to be monitored, the user selects policies for a slice auto-healing use case. Auto-healing is a feature that automatically detects disabled access points and repairs the wireless network. The process flows from operation 214 to operation 216.

[0065] In operation 216 of the method 200, the designed network slices are displayed on a GUI for user review. In some embodiments, the GUI is displayed with a list of network slices. The process flows from operation 216 to operation 218.

[0066] In operation 218 of method 200, a user deploys the designed network slice by clicking on a desired network slice in a list of network slices that displays a pop-up box. In some embodiments, the slice manager makes an API call to an orchestrator (not shown) to deploy the designed slice. The process flows from operation 218 to operation 220.

[0067] In operation 220 of method 200, the status of the designed slice is updated. In some embodiments, the status of the network slice is updated from designed to deployed. Other statuses include running, activation failed, and deployment failed.

[0068] FIG. 3 is a block diagram of a slice manager inventory translator system 300 according to some embodiments.

[0069] The slice manager-inventory translator system 300 includes an inventory translator 302 operatively connected to and interacting with a slice manager 304 and inventory systems 306, such as inventory systems 306A, 306B1, and 306B2. The inventory translator 302 is further operatively connected to an orchestrator 312, a CPE 314, and a temporary inventory 310 included in a persistence layer 308. As described above, the inventory translator 302 translates inventory data from each inventory system 306 into data that can be utilized by the slice manager 304 utilizing a data model. In some embodiments, performance is significantly improved because the slice manager 304 no longer utilizes processing power to perform inventory translation. In some embodiments, the inventory translator 302 pre-processes data for use by the slice manager 304, improving processing time. In some embodiments, the inventory translation is performed before the slice manager 304 requests the translation.

[0070] 3, the slice manager 304 is separated from the inventory systems 306A, 306B1, 306B2 and instead operatively connects to and interacts with a slice manager inventory translator 302 that abstracts the system inventories 306A, 306B1, 306B2. As discussed, the slice manager translator system 300 provides the inventory translator 302 that is configured to provide translated inventory data to the slice manager 304 through mapping an inventory data model to a slice manager data model.

[0071] The inventory translator 302 further includes a retention layer 308 that enables the slice manager 304 to operate independently of the inventory system 306 for a period of time by storing the temporary inventory in a database 310. In some embodiments, the retention layer 308 is a software layer that enables the slice manager 302, orchestrator 312, and / or CPE 314 to remain operational even when the inventory systems 306A, 306B1, 306B2 are down for a period of time (e.g., 100 ms, 100 seconds, 100 minutes, 100 hours). In some embodiments, the retention layer 308 uses a subordinate database, such as the temporary inventory database 310, to achieve retention. In some embodiments, the temporary inventory database 310 stores sufficient data from inventory systems 306, such as inventory systems 306A, 306B1, 306B2, to allow the slice manager 304, orchestrator 312, and / or CPE 314 to operate for a period of time if the inventory system 306 goes down or is not operational.

[0072] The slice manager 304, orchestrator 312, CPE 314, or any other external service interacts directly with the inventory 306A, 306B1, 306B2 through the inventory translator 302. In response to a slice manager inventory system 300, such as inventory systems 306A, 306B1, 306B2, going down, the slice manager 304, orchestrator 312, CPE 314, or any other external service provides data through the retention layer 308 and works with the inventory translator 302 to retrieve and exchange data with the temporary inventory 310 for a period of time.

[0073] FIG. 4 is a block diagram of the inventory translator 302, according to some embodiments.

[0074] In some embodiments, the inventory translator 302 is similar to the slice manager inventory translator 302 of Figure 3. The inventory translator 302 includes a data model mapper 420, a vendor, API, and plugin mapper 422, a persistence service 424, a scheduler 426, and an availability service 428.

[0075] In some embodiments, data model mapper 420 is a data access layer that performs bidirectional transfer of data between a persistent data store (e.g., inventory systems 306A, 306B1, 306B2) and an in-memory data representation (the domain layer). The purpose of the data model is to keep the in-memory representation and persistent data store independent of each other and of data mapper 420. This is useful when strict business processes need to be modeled and enforced on data in the domain layer that does not map neatly to the persistent data store. Layers are composed of one or more mappers (or data access objects) within data model mapper 420 that perform the data transfer. In some embodiments, data model mapper 420 is a mapper that handles many different domain entity types (e.g., vendor inventory). In some embodiments, data model mapper 420 is a specialized mapper that handles one or more domain entity types.

[0076] The data model mapper 420 maps a one-to-one relationship between each element in one or more data models included with the data model mapper 420 and a corresponding element in a database, such as inventory 306A, 306B1, 306B2, etc. The data model mapper 420 represents data elements in an inventory, such as inventory 306A, 306B1, 306B2, and uses the data models to translate the data into a corresponding data model element that is sent to a slice manager, such as slice manager 304, an orchestrator, such as orchestrator 312, or a CPE, such as CPE 314.

[0077] In some embodiments, in situations where different system inventories, such as inventories 306A, 306B1, 306B2, have slices in their respective data models, the data model mapper 420 maps the different inventory slice IDs to a single slice ID defined in the slice manager data model.

[0078] The vendor API and plugin mapper 422 maps system inventory API details, such as system inventory APIs 430A, 430B1, 430B2, to vendor information. In some embodiments, the vendor API and plugin mapper 422 maps the correct API for communication between the system inventory and the inventory translator 302. In some embodiments, selected APIs are plugged in to implement communication between the system inventory and the inventory translator 302.

[0079] In some embodiments, vendor API and plug-in mapper 422 pins APIs such as APIs 430A, 430B1, 430B2, etc. to obtain information about the APIs. Next vendor API and plug-in mapper 422 maps different APIs to vendor information. Next vendor API and plug-in mapper 422 schedules the time to be sent in scheduler 426.

[0080] In computing, scheduling is the action of assigning resources to execute tasks. A task can be a thread, a process, or a data flow. Scheduling activities are performed by the scheduler 426. The scheduler 426 is designed to keep computer resources busy (as in load balancing) and allow multiple users, such as the slice manager 304, orchestrator 312, and CPE 314, to effectively share system resources or achieve a target Quality of Service (QoS). The scheduler 426 periodically checks system inventory APIs, such as system inventory APIs 430A, 430B1, and 430B2. The inventory translator 302 then fetches data from the system inventories, such as inventories 306A, 306B1, and 306B2, according to the time scheduled in the scheduler 426.

[0081] In computer science, persistence describes the property of a system's state that outlives (persists) the processes that created it. This is achieved by storing the state as data in computer data storage, such as temporary inventory 310. Persistence service 424 transfers data to and from storage devices, such as inventories 306A, 306B1, 306B2, and provides mappings from native programming language data structures to storage device data structures.

[0082] The retention service 424 stores inventory data from the system inventory in the temporary inventory 310 through the retention layer 308. In response to the system inventory service going down, the slice manager 304, orchestrator 312, and / or CPE 314 function independently for a predetermined period of time.

[0083] The availability service 428 determines whether system inventory, such as inventory 306A, 306B1, 306B2, is available. In response to the system inventory becoming available, the availability service 428 notifies the slice manager 304, the orchestrator 312, and / or the CPE 314 to work directly with the system inventory. And, in response to the system inventory 306 becoming unavailable, the availability service 428 notifies the slice manager 304, the orchestrator 312, and / or the CPE 314 to retrieve data from the temporary inventory 310.

[0084] FIG. 5 is a data flow diagram of a method 500 for transforming inventory data for a slice manager, according to some embodiments.

[0085] 5 is discussed to provide an understanding of the operation of the slice manager inventory translator system 300 and / or the inventory translator 302 through a method 500 for translating inventory data for a slice manager. In some embodiments, the method 500 for translating inventory data for a slice manager is a functional overview of the slice manager inventory translator system 300 and / or the inventory translator 302. In some embodiments, the method 500 for translating inventory data for a slice manager is performed by a processing circuit 602 described below with respect to FIG. 6. In some embodiments, some or all of the operations of the method 500 for translating inventory data for a slice manager are performed according to instructions corresponding to instructions 606 described below with respect to FIG. 6.

[0086] The method 500 for transforming inventory data for a slice manager includes operations 502-510, although the operations are not necessarily performed in the order shown. Operations may be added, rearranged, reordered, and / or removed as appropriate, consistent with the spirit and scope of the embodiments. In some embodiments, one or more of the operations of the method 500 for transforming inventory data for a slice manager are repeated. In some embodiments, unless otherwise specified, the operations of the method 500 for transforming inventory data for a slice manager are performed in order.

[0087] In operation 502 of the method 500 for translating inventory data for a slice manager, the inventory translator 302 receives a request for inventory data. The process flows from operation 502 to operation 504.

[0088] In operation 504 of the method 500 for translating inventory data for a slice manager, the inventory translator 302 requests inventory data from the system inventory 306. In some embodiments, the inventory translator 302 makes the request periodically based on received inventory requests. In some embodiments, the inventory translator 302 makes the request for inventory data on demand. In some embodiments, the inventory translator 302 is configured to manually fetch data from the inventory system 306. The process flows from operation 504 to operation 506.

[0089] In operation 506 of the method 500 for translating inventory data for a slice manager, the inventory translator 302 receives data from the inventory system 306. The process flows from operation 506 to operation 508.

[0090] In operation 508 of the method 500 for translating inventory data for a slice manager, the inventory translator 302 translates the inventory data into a data model called by the slice manager 304. The process flows from operation 508 to operation 510.

[0091] In operation 510 of the method 500 for translating inventory data for a slice manager, in response to successfully translating the data, the inventory translator 302 retains the data in the temporary inventory 310. The process flows from operation 510 to operation 512.

[0092] In operation 512 of the method 500 for translating inventory data for a slice manager, the inventory translator 302 sends the requested inventory data to the slice manager 304 .

[0093] 6 is a block diagram of a processing circuit 600, according to some embodiments. In some embodiments, the processing circuit 600 is a general-purpose computing device that includes a hardware processor 602 and a non-transitory computer-readable storage medium 604. The storage medium 604 is encoded with (i.e., stores) computer program code 606 (i.e., a set of executable instructions for an algorithm or method 200, 500, etc.), among other things. Execution of the instructions 606 by the hardware processor 602 represents (at least in part) a slice manager inventory translator application that implements some or all of the methods (hereinafter referred to as processes and / or methods) described herein, according to one or more embodiments.

[0094] The processor 602 is electrically coupled to a computer-readable storage medium 604 via a bus 608. The processor 602 is further electrically coupled to an I / O interface 610 by the bus 608. A network interface 612 is further electrically connected to the processor 602 via the bus 608. The network interface 612 is connected to a network 614, via which the processor 602 and the computer-readable storage medium 604 can be connected to external elements. The processor 602 is configured to execute computer program code 606 encoded on the computer-readable storage medium 604 to enable the processing circuit 600 to perform some or all of the processes and / or methods described above. In one or more embodiments, the processor 602 is a central processing unit (CPU), a multiprocessor, a distributed processing system, an application specific integrated circuit (ASIC), and / or other suitable processing unit.

[0095] In one or more embodiments, computer-readable storage medium 604 is an electronic, magnetic, optical, electromagnetic, infrared, and / or semiconductor system (or apparatus or device). For example, computer-readable storage medium 604 includes a semiconductor or solid-state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and / or an optical disk. In one or more embodiments using an optical disk, computer-readable storage medium 604 includes a compact disk read-only memory (CD-ROM), a compact disk read / write (CD-R / W), and / or a digital video disk (DVD).

[0096] In one or more embodiments, the storage medium 604 stores computer program code 606 configured to enable the processing circuit 600 to perform some or all of the processes and / or methods described above. In one or more embodiments, the storage medium 604 further stores information, such as algorithms, that facilitate the performance of some or all of the processes and / or methods described above.

[0097] Processing circuit 600 includes an I / O interface 610. I / O interface 610 is coupled to external circuitry. In one or more embodiments, I / O interface 610 includes a keyboard, keypad, mouse, trackball, trackpad, touchscreen, and / or cursor direction keys for communicating information and commands to processor 602.

[0098] The processing circuit 600 further includes a network interface 612 coupled to the processor 602. The network interface 612 allows the processing circuit 600 to communicate with a network 614 to which one or more other computer systems are connected. The network interface 612 may include a wireless network interface such as BLUETOOTH, WIFI, WIMAX, GPRS, WCDMA, etc., or a wired network interface such as ETHERNET, USB, IEEE-864, etc. In one or more embodiments, some or all of the processes and / or methods described above are implemented in two or more processors 602.

[0099] The processing circuit 600 is configured to receive information through an I / O interface 610. The information received through the I / O interface 610 includes one or more instructions, data, rules, and / or other parameters for processing by the processor 602. The information is transferred to the processor 602 via the bus 608. The processing circuit 600 is configured to receive information related to a UI 622 through the I / O interface 610. The information is stored on the computer-readable medium 604 as a user interface (UI) 622.

[0100] In some embodiments, some or all of the foregoing processes and / or methods are implemented as stand-alone software applications for execution by a processor. In some embodiments, some or all of the foregoing processes and / or methods are implemented as software applications that are part of additional software applications. In some embodiments, some or all of the foregoing processes and / or methods are implemented as plug-ins to a software application.

[0101] In some embodiments, a method includes receiving, by a processor, a request for inventory data from a slice manager; requesting, by the processor, the inventory data from one or more system inventories; receiving, by the processor, the requested inventory data from the inventories; converting, by the processor, the requested inventory data into a slice manager data model; and transmitting, by the processor, the converted requested data.

[0102] In some embodiments, the method further includes storing, by the processor, the transformed requested data in persistent storage.

[0103] In some embodiments, requesting inventory data from one or more system inventories includes periodically requesting inventory data from the one or more system inventories.

[0104] In some embodiments, requesting inventory data from one or more system inventories includes requesting inventory data on-demand from one or more system inventories.

[0105] In some embodiments, the inventory includes two or more system inventories.

[0106] In some embodiments, the method further includes mapping, by the processor, the system inventory data to the slice manager data.

[0107] In some embodiments, the method further includes identifying, by the processor, vendors that store inventory data in the system inventory.

[0108] In some embodiments, the method further includes scheduling, by the processor, a system inventory API to schedule data transformation for the one or more utilities.

[0109] In some embodiments, an apparatus includes a processor and memory storing instructions that, when executed by the processor, cause the apparatus to receive a request for inventory data from a slice manager, request the inventory data from one or more system inventories, receive the requested inventory data from the inventories, convert the requested inventory data to a slice manager data model, and transmit the converted requested data.

[0110] In some embodiments, the device is further configured to store the transformed requested data in persistent storage.

[0111] In some embodiments, the device requests inventory data from one or more system inventories by periodically requesting inventory data from one or more system inventories.

[0112] In some embodiments, a device requests inventory data from one or more system inventories by requesting inventory data on-demand from one or more system inventories.

[0113] In some embodiments, the inventory includes two or more system inventories.

[0114] In some embodiments, the device further performs mapping of system inventory data to slice manager data.

[0115] In some embodiments, the device further performs identifying vendors that store inventory data in the system inventory.

[0116] In some embodiments, the device further executes a scheduling system inventory API to schedule data conversion for one or more utilities.

[0117] In some embodiments, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause a device to receive a request for inventory data from a slice manager, request the inventory data from one or more system inventories, receive the requested inventory data from the inventories, convert the requested inventory data to a slice manager data model, and transmit the converted requested data.

[0118] In some embodiments, the device is further configured to store the transformed requested data in persistent storage.

[0119] In some embodiments, the device requests inventory data from one or more system inventories by periodically requesting inventory data from one or more system inventories.

[0120] In some embodiments, a device requests inventory data from one or more system inventories by requesting inventory data on-demand from one or more system inventories.

[0121] The foregoing outlines features of several embodiments so that those skilled in the art may better understand aspects of the present disclosure. Those skilled in the art should appreciate that they may readily use this disclosure as a basis for designing or modifying other processes and structures to achieve the same purposes and / or advantages of the embodiments presented herein. Those skilled in the art should also recognize that such equivalent constructions do not depart from the spirit and scope of the present disclosure, and that various changes, substitutions, and alterations can be made thereto without departing from the spirit and scope of the present disclosure.

Claims

1. receiving, by a processor, a request for inventory data from a slice manager; requesting, by the processor, the inventory data from one or more system inventories; receiving, by the processor, the requested inventory data from an inventory; converting, by the processor, the requested inventory data into a slice manager data model; transmitting, by the processor, the converted requested data; A method for providing

2. The method of claim 1 , further comprising storing, by the processor, the transformed requested data in persistent storage.

3. The method of claim 1 , wherein the requesting the inventory data from the one or more system inventories comprises periodically requesting the inventory data from the one or more system inventories.

4. The method of claim 1 , wherein the requesting the inventory data from the one or more system inventories comprises requesting the inventory data on-demand from the one or more system inventories.

5. The method of claim 1 , wherein the inventory includes two or more system inventories.

6. The method of claim 1 further comprising mapping, by the processor, system inventory data to slice manager data.

7. The method of claim 1 further comprising identifying, by the processor, a vendor storing the inventory data in a system inventory.

8. The method of claim 1 , further comprising scheduling, by the processor, a system inventory API to schedule data conversion for one or more utilities.

9. a processor; When executed by the processor, receiving a request for inventory data from a slice manager; requesting the inventory data from one or more system inventories; receiving the requested inventory data from an inventory; converting the requested inventory data into a slice manager data model; transmitting the converted requested data; a memory storing instructions for causing the device to execute the An apparatus comprising:

10. The apparatus of claim 9 , further comprising: storing the transformed requested data in persistent storage.

11. The apparatus of claim 9 , wherein the apparatus requests the inventory data from the one or more system inventories by periodically requesting the inventory data from the one or more system inventories.

12. The apparatus of claim 9 , wherein the apparatus requests the inventory data from the one or more system inventories by requesting the inventory data on-demand from the one or more system inventories.

13. The apparatus of claim 9 , wherein the inventory includes two or more system inventories.

14. The apparatus of claim 9 , further comprising: mapping system inventory data to slice manager data.

15. The apparatus of claim 9 , further comprising identifying a vendor that stores the inventory data in a system inventory.

16. The apparatus of claim 9 , further comprising: scheduling a system inventory API to schedule data transformations for one or more utilities.

17. When executed by a processor, receiving a request for inventory data from a slice manager; requesting the inventory data from one or more system inventories; receiving the requested inventory data from an inventory; converting the requested inventory data into a slice manager data model; transmitting the converted requested data; A non-transitory computer-readable medium storing instructions that cause a device to execute the method.

18. 20. The non-transitory computer-readable medium of claim 17, wherein the device is further configured to store the converted requested data in persistent storage.

19. 20. The non-transitory computer-readable medium of claim 17, wherein the device requests the inventory data from the one or more system inventories by periodically requesting the inventory data from the one or more system inventories.

20. 20. The non-transitory computer-readable medium of claim 17, wherein the device requests the inventory data from the one or more system inventories by requesting the inventory data on-demand from the one or more system inventories.

Citation Information

Patent Citations

  • Systems and methods for designing network slices using extensible components

    US20220141760A1