Provisioning business functions at the edge
By provisioning lightweight runtime binaries on edge devices through 5G network slices and node edge servers, the system addresses network complexity and latency issues, enabling efficient execution of ultra-low latency applications.
Patent Information
- Application Number
- JP2025507787
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-08-23
- Filing Date
- 2023-07-12
- Publication Date
- 2025-09-09
AI Technical Summary
Existing systems face challenges in efficiently executing business functions outside current networks, leading to increased network complexity and latency issues in edge computing environments.
Provisioning and executing virtualized business functions on edge devices using lightweight runtime binaries, leveraging 5G network slices and node edge servers to manage and scale resources dynamically.
Enables efficient execution of ultra-low latency applications with reduced network complexity by ensuring edge devices have the necessary resources and configurations, meeting service level agreements and user demands.
Smart Images

Figure 2025529769000001_ABST
Abstract
Description
[Background technology]
[0001] 1. Field The present disclosure relates generally to edge computing, and more particularly to provisioning and executing business functions in an edge computing environment by providing runtime binaries on the edge. 2. Description of Related Technology
[0002] Edge computing is a topology in a distributed computing environment in which computation and data storage occur close to where they are needed. Thus, instead of all computation and data storage occurring in the cloud, computation and data storage occur at the edge of the network. Specifically, computation and data storage occur at the device or application that requires real-time data processing and storage. In many cases, consumers require services from service providers according to an agreed-upon quality of service (e.g., a service level agreement). Communications service providers are embracing cloud and virtualization to offer new fifth-generation (5G) and edge computing services that will drive growth and improve customer experience. Summary of the Invention
[0003] According to one exemplary embodiment, a computer-implemented method for provisioning a business function is provided. A computer sends a runtime binary launch code to a node edge server having the runtime binaries necessary for a set of edge devices to execute the business function. The computer establishes a secure shell protocol connection with root operating system access to the node edge server having the necessary runtime binaries to execute the runtime binary launch code. According to another exemplary embodiment, a computer system and computer program product for provisioning a business function are provided. [Brief explanation of the drawings]
[0004] [Figure 1] 1 is a pictorial representation of a computing environment in which an exemplary embodiment may be implemented;
[0005] [Figure 2] 1 is a diagram illustrating an example of a business capability provisioning system in accordance with an illustrative embodiment;
[0006] [Figure 3] 1 is a diagram illustrating an example of a business capability provisioning process in accordance with an illustrative embodiment;
[0007] [Figure 4A] 10 is a flowchart illustrating a process for provisioning business capabilities in accordance with an illustrative embodiment. [Figure 4B] 10 is a flowchart illustrating a process for provisioning business capabilities in accordance with an illustrative embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0008] Various aspects of the present disclosure are described through text, flowcharts, block diagrams of computer systems, and / or block diagrams of machine logic included in embodiments of a computer program product (CPP). With respect to any flowchart, operations may be performed in a different order than shown in a given flowchart, depending on the technology involved. For example, two operations shown in successive flowchart blocks may be performed in the reverse order, as a single integrated step, simultaneously, or in an at least partially overlapping manner, also depending on the technology involved.
[0009] A computer program product embodiment ("CPP embodiment" or "CPP") is a term used in this disclosure to describe any set of one or more storage media (also referred to as "media") collectively contained in a set of one or more storage devices that collectively contain machine-readable code corresponding to instructions and / or data for performing the computer operations specified in a given CPP claim. A "storage device" is any tangible device that can hold and store instructions for use by a computer processor. The computer-readable storage medium may be, but is not limited to, an electronic storage medium, a magnetic storage medium, an optical storage medium, an electromagnetic storage medium, a semiconductor storage medium, a mechanical storage medium, or any suitable combination of the foregoing. Some known types of storage devices that include these media include diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded device (such as a punch card or pits / lands formed on the major surface of a disk), or any suitable combination of the foregoing. Computer-readable storage media, as the term is used in this disclosure, is not to be construed as storage in the form of a transient signal per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses passing through fiber optic cables, electrical signals transmitted through wires, and / or other transmission media. As one skilled in the art will appreciate, data is typically moved at some irregular time during the normal operation of the storage device, such as during access, defragmentation, or garbage collection, but the above does not qualify a storage device as transient because the data is not transient while it is stored.
[0010] Referring now to the figures, and in particular to Figures 1-2, diagrams of data processing environments are provided in which illustrative embodiments may be implemented. It should be understood that Figures 1-2 are intended as examples only and are not intended to assert or imply any limitation with regard to the environments in which different embodiments may be implemented. Many modifications to the depicted environments may be made.
[0011] 1 illustrates a pictorial representation of a computing environment in which an exemplary embodiment may be implemented. Computing environment 100 includes an example environment for executing at least a portion of computer code involved in performing the inventive method, such as business function provisioning code 200. For example, business function provisioning code 200 provisions and executes virtualized business functions on edge devices associated with node edge servers in the edge computing environment by providing runtime binaries to the edge devices via the associated node edge servers. In addition to business function provisioning code block 200, computing environment 100 includes, for example, computer 101, wide area network (WAN) 102, end user device (EUD) 103, remote server 104, public cloud 105, and private cloud 106. In this embodiment, computer 101 includes a set of processors 110 (including processing circuitry 120 and cache 121), a communications fabric 111, volatile memory 112, persistent storage 113 (as identified above), an operating system 122 (including business function provisioning code block 200), a set of peripheral devices 114 (including a set of user interface (UI) devices 123, storage 124, and a set of Internet of Things (IoT) sensors 125), and a network module 115. Remote server 104 includes a remote database 130. Public cloud 105 includes a gateway 140, a cloud orchestration module 141, a set of host physical machines 142, a set of virtual machines 143, and a set of containers 144.
[0012] Computer 101 may take the form of a desktop computer, a laptop computer, a tablet computer, a smartphone, a smartwatch or other wearable computer, a mainframe computer, a quantum computer, or any other form of computer or mobile device now known or later developed that is capable of executing programs, accessing a network, or querying a database, such as remote database 130. As is well understood in the field of computer technology, and depending on the technology, the performance of a computer-implemented method may be distributed among multiple computers and / or multiple locations. However, in this description of computing environment 100, for purposes of brevity, the detailed discussion focuses on a single computer, specifically computer 101. Although computer 101 is not shown in FIG. 1 within a cloud, it may be located within a cloud. However, computer 101 is not required to reside within a cloud except to any extent that may be expressly indicated.
[0013] Processor set 110 includes one or more computer processors of any type now known or later developed. Processing circuitry 120 may be distributed across multiple packages, e.g., multiple linked integrated circuit chips. Processing circuitry 120 may implement multiple processor threads and / or multiple processor cores. Cache 121 is memory located within the processor chip package and is typically used for data or code that should be available for fast access by threads or cores executing on processor set 110. Cache memory is typically organized into multiple levels depending on relative proximity to the processing circuitry. Alternatively, some or all caches for a processor set may be located “off-chip.” In some computing environments, processor set 110 may be designed to operate with qubits and perform quantum computing.
[0014] Computer-readable program instructions are typically loaded onto computer 101 to cause processor set 110 of computer 101 to perform a series of operational steps, thereby realizing a computer-implemented method, such that the instructions so executed instantiate the method specified in the flowcharts and / or descriptions of the computer-implemented methods contained herein (collectively referred to as the "methods of the present invention"). These computer-readable program instructions are stored in various types of computer-readable storage media, such as cache 121 and other storage media discussed below. The program instructions and associated data are accessed by processor set 110 to control and direct the execution of the methods of the present invention. In computing environment 100, at least a portion of the instructions for executing the methods of the present invention may be stored in business capability provisioning code block 200 in persistent storage 113.
[0015] Communications fabric 111 is the signal-conducting pathway that allows various components of computer 101 to communicate with one another. Typically, this fabric is made up of switches and conductive pathways, such as the switches and conductive pathways that make up buses, bridges, physical input / output ports, etc. Other types of signal communication pathways may be used, such as fiber optic and / or wireless communication pathways.
[0016] Volatile memory 112 may be any type of volatile memory now known or later developed. Examples include dynamic random access memory (RAM) or static RAM. Typically, volatile memory 112 is characterized by random access, although this is not required unless expressly stated. In computer 101, volatile memory 112 is located in a single package and is internal to computer 101; however, alternatively or additionally, volatile memory may be distributed across multiple packages and / or located external to computer 101.
[0017] Persistent storage 113 is any form of non-volatile storage for a computer, now known or later developed. The non-volatility of this storage means that stored data remains regardless of whether power is supplied to computer 101 and / or directly to persistent storage 113. Persistent storage 113 may be read-only memory (ROM), but typically, at least a portion of persistent storage allows data to be written, data to be erased, and data to be rewritten. Some well-known forms of persistent storage include magnetic disks and solid-state storage devices. Operating system 122 may take several forms, such as various known proprietary operating systems employing a kernel or open-source Portable Operating System Interface-type operating systems. The business function provisioning code included in block 200 typically includes at least a portion of the computer code involved in performing the method of the present invention.
[0018] Peripheral device set 114 includes a set of peripheral devices of computer 101. Data communication connections between peripheral devices and other components of computer 101 may be implemented in various ways, such as Bluetooth connections, near field communication (NFC) connections, connections via cables (such as Universal Serial Bus (USB)-type cables), insertable connections (e.g., Secure Digital (SD) cards), connections via local area communication networks, and even connections via wide area networks such as the Internet. In various embodiments, UI device set 123 may include components such as display screens, speakers, microphones, wearable devices (such as goggles and smartwatches), keyboards, mice, printers, touchpads, game controllers, and haptic devices. Storage 124 may be external storage, such as an external hard drive, or insertable storage, such as an SD card. Storage 124 may be persistent and / or volatile. In some embodiments, storage 124 may take the form of a quantum computing storage device for storing data in the form of qubits. In embodiments where computer 101 is required to have a large amount of storage (e.g., where computer 101 stores and manages a large database locally), this storage may be provided by a peripheral storage device designed to store very large amounts of data, such as a storage area network (SAN) shared by multiple, geographically distributed computers. IoT sensor set 125 consists of sensors that may be used in Internet of Things applications. For example, one sensor may be a thermometer and another sensor may be a motion detector.
[0019] Network module 115 is a collection of computer software, hardware, and firmware that enables computer 101 to communicate with other computers over WAN 102. Network module 115 may include hardware such as a modem or Wi-Fi signal transceiver, software for packetizing and / or depacketizing data for communication network transmission, and / or web browser software for communicating data over the Internet. In some embodiments, the network control and network forwarding functions of network module 115 are performed on the same physical hardware device. In other embodiments (e.g., embodiments utilizing Software-Defined Networking (SDN)), the control and forwarding functions of network module 115 are performed on physically separate devices, such that the control function manages several different network hardware devices. Computer-readable program instructions for implementing the methods of the present invention may be downloaded to computer 101 from an external computer or external storage device, typically through a network adapter card or network interface included in network module 115.
[0020] WAN 102 is any wide area network (e.g., the Internet) capable of communicating computer data over non-local distances using any technology for communicating computer data now known or later developed. In some embodiments, WAN 102 may be replaced and / or supplemented by a local area network (LAN) designed to communicate data between devices located in a local area, such as a Wi-Fi network. WANs and / or LANs typically include copper transmission cables, optical fiber transmissions, wireless transmissions, and computer hardware such as routers, firewalls, switches, gateway computers, or edge servers.
[0021] End-user device (EUD) 103 is any computer system used and controlled by an end user (e.g., a customer of the enterprise operating computer 101) and may take any of the forms described above in connection with computer 101. EUD 103 typically receives useful and useful data from the operation of computer 101. For example, in the hypothetical case where computer 101 is designed to provide recommendations to end users, the recommendations would typically be communicated from computer 101's network module 115 over WAN 102 to EUD 103. In this manner, EUD 103 can display or otherwise present the recommendations to the end user. In some embodiments, EUD 103 may be a client device such as a thin client, a heavy client, a mainframe computer, a desktop computer, and the like.
[0022] Remote server 104 is any computer system that provides at least some data and / or functionality to computer 101. Remote server 104 may be controlled and used by the same entity that operates computer 101. Remote server 104 represents a machine that collects and stores useful and useful data for use by other computers, such as computer 101. For example, in the hypothetical case where computer 101 is designed and programmed to provide recommendations based on historical data, then this historical data may be provided to computer 101 from remote database 130 of remote server 104.
[0023] Public cloud 105 is any computer system available for use by multiple entities that provides on-demand availability of computer system resources and / or other computer functionality, particularly data storage (cloud storage) and computing capacity, without direct active management by users. Cloud computing typically leverages resource sharing to achieve consistency and economies of scale. Direct active management of public cloud 105's computing resources is performed by computer hardware and / or software in cloud orchestration module 141. The computing resources provided by public cloud 105 are typically implemented by virtual computing environments running on various computers comprising host physical machine set 142, the universe of physical computers within and / or available to public cloud 105. Virtual computing environments (VCEs) typically take the form of virtual machines from virtual machine set 143 and / or containers from container set 144. It is understood that these VCEs may be stored as images and can be transferred among and between various physical machine hosts, either as images or after instantiation of the VCEs. Cloud orchestration module 141 manages the transfer and storage of images, deploys new instantiations of VCE, and manages active instantiations of VCE deployments. Gateway 140 is a collection of computer software, hardware, and firmware that enables public cloud 105 to communicate over WAN 102.
[0024] Some further description of virtualized computing environments (VCEs) is now provided. A VCE can be stored as an "image." A new, active instance of a VCE can be instantiated from the image. Two well-known types of VCEs are virtual machines and containers. A container is a VCE that uses operating system-level virtualization. This refers to a feature of an operating system in which the kernel allows the existence of multiple isolated user space instances, called containers. These isolated user space instances typically behave as actual computers from the perspective of programs running within them. A computer program running on a typical operating system can utilize all of the computer's resources, such as connected devices, files and folders, network shares, CPU power, and quantifiable hardware capabilities. However, a program running inside a container can only use the contents of the container and the devices assigned to that container; this feature is known as containerization.
[0025] A private cloud 106 is similar to a public cloud 105, except that its computing resources are available only for use by a single enterprise. While the private cloud 106 is shown in communication with the WAN 102, in other embodiments, the private cloud may be completely disconnected from the Internet and accessible only through a local / private network. A hybrid cloud is a composite of multiple clouds of different types (e.g., private, community, or public cloud types), often implemented by different vendors. While each of the multiple clouds remains a separate, discrete entity, the larger hybrid cloud architecture is bound together by standardized or proprietary technologies that enable orchestration, management, and / or data / application portability between the constituent clouds. In this embodiment, both the public cloud 105 and the private cloud 106 are part of a larger hybrid cloud.
[0026] As used herein, a "set," when used in reference to items, means one or more items. For example, a set of clouds means one or more different types of cloud environments. Similarly, "some," when used in reference to items, means one or more items.
[0027] Furthermore, the term "at least one of," when used in conjunction with a list of items, means that different combinations of one or more listed items may be used, and only one of each item in the list may be required. In other words, "at least one" means that any combination of the items and number of items in the list may be used, but not all items in the list are required. An item may be a particular object, thing, or category.
[0028] For example, without limitation, "at least one of item A, item B, or item C" may include item A, item A and item B, or item B. This example may also include item A, item B and item C, or item B and item C. Of course, any combination of these items may be present. In some illustrative examples, "at least one" may be, without limitation, for example, two of item A, one of item B, ten of item C, four of item B and seven of item C, or other suitable combinations.
[0029] Currently, when a user requests a service outside of their current network or within the Internet network range, it is not straightforward to execute that service. Even if the service could be executed in such a scenario, the central host server managing the service does not inherit the benefits of edge computing in driving the user's service request. As a result, bringing everything within the network increases network complexity. However, exemplary embodiments use the framework disclosed herein to provide a hybrid experience at the edge.
[0030] An exemplary embodiment provisions and executes virtualized business functions (i.e., edge business functions) on the edge by providing lightweight runtime binaries on the edge. The runtime binaries are runtime configurations that obtain resources needed by a set of edge devices to invoke narrowband-based network slices of a 5G network to execute corresponding business functions. The set of edge devices that execute business functions are associated with a node edge server. The node edge server corresponds to a central host server in the edge computing environment. In an exemplary embodiment, the central host server is utilized to scale up the required runtime binaries on the node edge server in real time on the fly and scale down the runtime binaries on the node edge server when the edge devices finish or complete execution of the corresponding business functions.
[0031] The node edge server transmits a request for a narrowband-based network slice of the 5G network consisting of a specified bandwidth for a specified period of time (i.e., a specified start time and end time). In response to receiving the request from the node edge server, the central host server performs a runtime binary identification process to determine which runtime binaries are needed by the set of edge devices associated with the node edge server and migrates the required runtime binaries to the node edge server. The node edge server then transmits the required runtime binaries to the set of edge devices, which then invoke the narrowband-based network slice of the 5G network to perform a business function (e.g., automatically operate a set of irrigation systems for a set of farms for a specified period of time and with a specified bandwidth). Note that the set of edge devices are the only devices that can access the narrowband-based network slice of the 5G network that is provisioned for the particular business function. Of course, the business function may be any type of function related to an ultra-low latency application that automatically performs a set of tasks or operations requested by a user from a service provider for that business function over the 5G network. For example, applications such as smart factory applications, smart power grid applications, smart agriculture applications, and augmented reality-assisted surgery applications are classified as ultra-low latency applications. Ultra-low latency applications perform high-speed processing of data and have low tolerance for delays (i.e., network latency).
[0032] In an exemplary embodiment, a 5G service provider broker or marketplace is utilized to select geographically nearby 5G service providers and orchestrate business function services to meet user demand. The 5G service provider broker identifies an appropriate 5G service provider that provides a narrowband-based network slice of the 5G network for the edge devices to perform the business function, for example, based on proximity to the service request, cost, etc. A central host server performs a provisioning process to obtain the narrowband-based network slice of the 5G network for the set of edge devices to perform the business function (i.e., the exact start time, end time, and bandwidth of the selected 5G service provider). The selected 5G service provider ensures that a synchronized state of the set of edge devices is available at the edge. The central host server configures the business function services of the node edge server based on the acceptable network latency, for example, defined by a service level agreement, contract, etc. An exemplary embodiment can create a node edge server instance along with the corresponding runtime binary, and then remove the node edge server instance and its runtime binary once the business function transaction is completed or terminated.
[0033] The node edge server triggers a request for available services through the 5G service provider broker, which orchestrates the service request and activates the edge-provisioned service. Thus, the 5G service provider broker establishes a brokering platform that allows service providers (e.g., business function service providers, 5G service providers, etc.) and other participants in the business function to interact.
[0034] Because network latency can cause failures in ultra-low latency applications, selected 5G service providers will ensure availability at the edge of node edge server locations. This can be done if the host server is able to identify where and how a business function transaction is supported and provision the appropriate node edge server with new or updated runtime binaries to fulfill that business function transaction, in order to meet the specific response required to satisfy a given business function transaction.
[0035] The illustrative embodiments ensure that an appropriately sized configuration of node edge server instances with up-to-date runtime binaries is available to fulfill the corresponding business function transactions. The illustrative embodiments achieve this by automatically provisioning the runtime binaries with the set of services (e.g., resources) required to support the business function transactions. If such runtime binaries are available regionally or in a zone geographically close to the point of business function processing, the illustrative embodiments can clone the runtime binaries or spawn new instances of the runtime binaries.
[0036] In response to identifying an appropriate node edge server, the exemplary embodiment either migrates the required runtime binaries from the edge provisioning server to that particular node edge server, or clones the required runtime binaries from the geographically closest node edge server in the same zone. The exemplary embodiment determines whether to migrate or clone the required runtime binaries based on a mismatch between the initial and final configuration that initiated the migration of the runtime binaries (i.e., runtime binary changes required for different edge devices in different locations to perform the business function).
[0037] The central host server migrates the required runtime binaries from the edge provisioning server to a node edge server only if a geographically proximate node edge server in the same zone as the node edge server does not have the required runtime binaries available for cloning on that node edge server. After identifying the 5G service provider in the activation process, the host server utilizes a node orchestrator component to determine whether new or updated runtime binaries are required based on the received business function details. The host server also utilizes a node state manager to store state information for all runtime binaries on all node edge servers. Based on the initial and final runtime binary configuration state on the node edge server, the exemplary embodiment performs either migration or cloning of the runtime binaries on that node edge server.
[0038] Therefore, the exemplary embodiments provide one or more technical solutions that overcome the technical problems associated with users requesting business function services that run outside of current networks on the edge. As a result, these one or more technical solutions provide technical advantages and practical applications in the field of edge computing.
[0039] Referring now to Figure 2, a diagram illustrating an example of a business capability provisioning system is shown, according to an exemplary embodiment. The business capability provisioning system 201 may be implemented in a computing environment such as the computing environment 100 of Figure 1. The business capability provisioning system 201 is a system of hardware and software components for provisioning and executing business capabilities on edge devices associated with node edge servers by providing runtime binaries to the edge devices via the associated node edge servers.
[0040] In this example, business capability provisioning system 201 includes business capability service provider 202, third-party business capability analysis service provider 204, 5G service provider 206, and 5G service provider broker 208. However, it should be noted that business capability provisioning system 201 is intended as an example only and is not intended to limit the exemplary embodiments. In other words, business capability provisioning system 201 may include any number of business capability service providers, third-party business capability analysis service providers, 5G service providers, 5G service provider brokers, and other providers and components not shown.
[0041] Business function service provider 202 provides a set of services corresponding to business functions of ultra-low latency applications requested by customers via client devices, such as end user device 103 in FIG. 1. For example, business function service provider 202 may support a business function to automatically operate a set of irrigation systems (i.e., a set of edge devices) on a set of farms at a specified set of time intervals and with a specified bandwidth. Third-party business function analysis service provider 204 provides analytics corresponding to the business functions supported by business function service provider 202. For example, third-party business function analysis service provider 204 may provide business function service provider 202 with information regarding the irrigation system business function, such as air temperature, soil temperature, soil moisture content, rainfall, solar radiation, soil composition, vegetation growth rate, etc.
[0042] The 5G service provider 206 provides a 5G network to the business function service provider 202 to perform the requested business function corresponding to the ultra-low latency application. The 5G service provider broker 208 selects an appropriate 5G service provider (e.g., the 5G service provider 206) and provides the 5G network to perform the requested business function. In other words, the 5G service provider broker 208 is an interface between the business function service provider 202 and the 5G service provider 206.
[0043] In this example, business function service provider 202 includes host server 210 and node edge server 212. However, it should be noted that business function service provider 202 may include any number of host servers and node edge servers. Host server 210 is a central computer that controls and coordinates operations at multiple node edge servers, such as node edge server 212, in an edge computing environment.
[0044] In this example, host server 210 includes a host processor 214, a node orchestrator 216, a node state manager 218, and a node spawner 220. However, it should be noted that host server 210 may include more components than shown, such as, for example, a persistent writer, a persistent database, etc.
[0045] Host server 210, utilizing host processor 214, receives a cryptographic object corresponding to a service request including details of a business function transaction that a user (e.g., a customer) has requested to be performed. Host processor 214 decrypts the received cryptographic object. In response to successfully decrypting the cryptographic object, host processor 214 validates the corresponding service request. Additionally, host processor 214 can provision a narrowband-based network slice of a 5G network, such as 5G network slice 228 corresponding to 5G service provider 206, for an edge device that performs the corresponding business function based on the business function details received by host processor 214.
[0046] In response to the host processor 214 validating the given service request, the host processor 214 sends a node edge server invocation request and details of the business function to the node orchestrator 216. The host server 210 utilizes the node orchestrator 216 to determine, based on the details of the business function, whether new or updated runtime binaries are required for the set of edge devices to execute the business function. Furthermore, the host server 210 utilizes the node orchestrator 216 to migrate the runtime binaries 222 to the node edge servers. The node edge servers then transmit the runtime binaries 222 to the associated edge devices, causing the edge devices to invoke narrowband-based network slices of the 5G network to execute the corresponding business function transactions. The runtime binaries 222 are runtime configurations that cause the edge devices to invoke narrowband-based network slices of the 5G network to obtain the resources necessary to execute the corresponding business function transactions. Furthermore, the host server 210 utilizes the node state manager 218 to store state information for all runtime binaries stored in all node edge servers within the edge computing environment. Thus, at any given time, the host server 210 knows the state of the particular runtime binaries loaded on a given node edge server.
[0047] The host server 210 uses the node spawner 220 to generate and send runtime binary activation code to the node edge server for the edge device to execute the business function. The node spawner 220 also establishes a network connection using a secure shell protocol with root access to the node edge server's operating system to execute the runtime binary activation code that provides the node edge server with new functionality. The host server 210 can also use the node spawner 220 to add new virtual node edge servers as needed to execute business function transactions.
[0048] The node edge server 212 is an edge computer in an edge computing environment. The node edge server 212 manages the operation of a set of edge devices to automatically execute a set of business functions. The set of edge devices automatically execute a corresponding set of business functions according to an associated narrowband-based network slice of the 5G network. The set of edge devices invoke the narrowband-based network slice of the 5G network using a specific runtime binary provided by the node edge server 212. The node edge server 212 utilizes a node complement 224 to request the runtime binary required for the edge device to execute the corresponding business function.
[0049] The 5G service provider broker 208 includes a 5G service provider catalog 226. The 5G service provider broker 208 utilizes the 5G service provider catalog 226 to select an appropriate 5G service provider based on, for example, customer price, customer service level agreements, geographic location of the service request, geographic location of the edge device performing the business function transaction, etc.
[0050] The 5G service provider 206 provides the business function service provider 202 with 5G network slices 228 of the 5G network to execute the business functions. The 5G network slices 228 represent multiple narrowband-based network slices of the 5G network for edge devices to execute corresponding business function transactions. The narrowband-based network slices have a specified start time, end time, and bandwidth of the 5G network. A set of edge devices associated with the node edge server 212 has its own narrowband-based network slice for executing the corresponding business function, and only that set of edge devices can access that particular narrowband-based network slice.
[0051] 3, a diagram illustrating an example of a business capability provisioning process is shown, according to an illustrative embodiment. Business capability provisioning process 300 may be implemented in a business capability provisioning system, such as business capability provisioning system 201 in FIG. 2, for example.
[0052] In this example, business function provisioning process 300 includes host processor 302, node orchestrator 304, node alternate 306, node state manager 308, node spawner 310, and node edge server 312. Also, note that host processor 302, node orchestrator 304, node state manager 308, and node spawner 310 are components of a central host server, such as host processor 214, node orchestrator 216, node state manager 218, and node spawner 220 of host server 210 in Figure 2. Node alternate 306 is a component of node edge server 312 or edge provisioning server.
[0053] At 314, host processor 302 receives a service request as a cryptographic object from a user's client device over the network, the cryptographic object having details of a business function to be performed by a set of edge devices in the edge computing environment corresponding to host processor 302. The client device may be, for example, end user device 103 in FIG. 1. The user may be, for example, a customer of a business function service provider, such as business function service provider 202 in FIG. 2. The network may be, for example, WAN 102 in FIG. 1.
[0054] At 316, the host processor 302 verifies the service request in response to successfully decrypting the cryptographic object including details of the business function to be performed by the set of edge devices. At 318, in response to verifying the service request, the host processor 302 sends a node edge server invocation request to the node orchestrator 304 along with the details of the business function. At 320, in response to receiving the node edge server invocation request and the details of the business function, the node orchestrator 304 determines, based on the received business function details, whether new or updated runtime binaries are required for the set of edge devices to perform the business function. In response to determining that new or updated runtime binaries are not required for the set of edge devices to perform the business function (e.g., the current runtime binaries corresponding to the business function are correct and up to date), the node orchestrator 304 migrates the current runtime binaries corresponding to the business function from the host server to the set of edge devices via the associated node edge server.
[0055] At 322, in response to determining that the set of edge devices requires new or updated runtime binaries to perform the business function, the node orchestrator 304 sends an indication that the node runtime binaries are required to the node alternate 306. At 324, in response to the node alternate 306 receiving the indication that the set of edge devices requires node runtime binaries to perform the business function, the node state manager 308 receives a request from the node alternate 306 to identify a node edge server that has the required runtime binaries. Note that the node state manager 308 stores the state of all runtime binaries on all node edge servers in the edge computing environment that correspond to the business function service provider.
[0056] At 326, the node state manager 308 sends to the node alternate 306 the identification of a node edge server that has the runtime binaries required for the set of edge devices to perform the business function. The node alternate 306 interacts with the node state manager 308 to obtain up-to-date information regarding which node edge server has the latest runtime binaries required to perform the business function. At 328, the node spawner 310 receives a request from the node alternate 306 to set the node edge server that has the required runtime binaries as active in response to the node alternate 306 receiving the identification of the node edge server. The node spawner 310 is a component of the host server for generating runtime binary startup code (e.g., new infrastructure as code to provide new functionality) at the node edge server, if necessary, that corresponds to the required runtime binaries.
[0057] At 330, the node spawner 310 is activated and sends the runtime binary launch code to the node edge server 312, which is the identified node edge server that has the runtime binaries necessary for the set of edge devices to execute the business function. Also, at 332, the node spawner 310 establishes a secure shell protocol connection with root operating system access to the node edge server 312 and executes the runtime binary launch code. Alternatively, at 334, instead of executing steps 330 and 332 above, the node spawner 310 can clone the necessary runtime binaries onto the node edge server 312 that is closest to the node edge server 312 based on the details of the business function.
[0058] In response to determining that the set of edge devices have finished executing the business function, the node state manager 308 records the state of the node edge server 312 as inactive. Additionally, in response to the set of edge devices having finished executing the business function, the node orchestrator 304 deletes or removes the runtime binaries loaded on the node edge server 312.
[0059] For example, below is an exemplary implementation that evaluates the likelihood of completing a business function transaction on a set of edge devices associated with a node edge server within a specified time window at a specified bandwidth. [Table 1]
[0060] Variable definitions: [Table 2]
[0061] Exemplary embodiments achieve the invocation of a business function by modifying the required state of the business function, referred to as the configuration of the runtime binary. k is the initial configuration and the final configuration of partition p j If the runtime binaries are not required, which virtualization node is the edge server? i From s k Partition p to j There should also be no migration of runtime binaries. This is formulated as follows:
number
[0062] Otherwise, from equation (7), the exemplary embodiment sets up a scenario where duplication or cloning is required to obtain the complement as follows:
number
[0063] Partition p j Runtime binaries for node edge servers k Some virtualized nodes will be migrated to edge servers i There is also:
number
[0064] An exemplary embodiment is a node edge server s k In the initial configuration, partition p j If you don't have a runtime binary, you can capture the need for a runtime binary migration as follows:
number
[0065] This activation is proof of establishing valid access to meet customer demand that is outside the scope of the service catalog. In an exemplary embodiment, the service is identified through a 5G service provider broker that is invoked on the host server, and in response, the host server creates a virtualized business function.
number
[0066] 4A-4B, a flowchart illustrating a process for provisioning a business function is shown, according to an exemplary embodiment. The process illustrated in Figures 4A-4B may be implemented on a host server computer, such as computer 101 of Figure 1 or host server 210 of Figure 2. For example, the process illustrated in Figures 4A-4B may be implemented in business function provisioning code 200 of Figure 1.
[0067] The process begins when a host server computer receives a service request from a user's client device over a network, the service request including details of a business function to be performed by a set of edge devices in an edge computing environment corresponding to the host server computer, as a cryptographic object (step 402). The host server computer verifies the service request in response to successfully decrypting the cryptographic object including details of the business function to be performed by the set of edge devices (step 404).
[0068] The host server computer then determines, based on the details of the business function, whether the set of edge devices require either new or updated runtime binaries to execute the business function (step 406). If the host server computer determines, based on the details of the business function and the output of step 406, that new or updated runtime binaries are not required for the set of edge devices to execute the business function, the host server computer migrates the current runtime binaries corresponding to the business function to the set of edge devices via the associated node edge server (step 408). The process then ends. If the host server computer determines, based on the details of the business function and the "yes" output of step 406, that the set of edge devices require either new or updated runtime binaries to execute the business function, the host server computer sends an indication that a runtime binary is required to the node alternate of the edge provisioning server (step 410).
[0069] The host server computer then receives a request from the node alternate identifying a node edge server that has the required runtime binaries in response to the node alternate receiving an indication that runtime binaries are required for the set of edge devices to perform the business function (step 412). The host server computer stores the state of each runtime binary loaded on each node edge server in the edge computing environment. The host server computer sends to the node alternate the identification of the node edge server that has the runtime binaries required for the set of edge devices to perform the business function (step 414).
[0070] The host server computer receives the request and, in response to the node alternate receiving the node edge server's identification, configures the node edge server having the necessary runtime binaries to be active from the node alternate (step 416). In response to receiving the request, the host server computer generates runtime binary launch code corresponding to the necessary runtime binaries (step 418). The host server computer sends the runtime binary launch code to the node edge server having the runtime binaries necessary for the set of edge devices to perform the business function (step 420). The host server computer also establishes a secure shell protocol connection with root operating system access to the node edge server having the necessary runtime binaries to execute the runtime binary launch code (step 422).
[0071] Thereafter, the host server computer, in response to determining that the set of edge devices have finished executing the business function, records the state of the node edge server as inactive (step 424). Further, the host server computer, in response to the set of edge devices having finished executing the business function, removes the necessary runtime binaries from the node edge server (step 426). Further, the host server computer stores the necessary runtime binaries removed from the node edge server on the host server computer (step 428). Thereafter, the process ends.
[0072] Thus, exemplary embodiments of the present invention provide a computer-implemented method, computer system, and computer program product for provisioning and running virtualized business functions on an edge computing environment by providing runtime binaries on the edge. The description of various embodiments of the present invention has been presented for purposes of illustration and is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terminology used herein has been selected to best explain the principles of the embodiments, practical applications, or technical improvements over technologies found in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. 1. A computer-implemented method for provisioning business capabilities, the computer-implemented method comprising: transmitting, by the computer, the runtime binary activation code to a node edge server having the runtime binaries necessary for the set of edge devices to perform the business function; and establishing a secure shell protocol connection with the computer for root operating system access to the node edge server having the necessary runtime binaries and executing the runtime binary launch code; A computer-implemented method comprising:
2. receiving, by the computer, a request from a node alternate in response to the node alternate receiving an identification of the node edge server to activate a node edge server having the necessary runtime binaries; and generating, by the computer, a runtime binary activation code corresponding to the required runtime binary in response to receiving a request to activate the node edge server having the required runtime binary; The computer-implemented method of claim 1 further comprising:
3. receiving, by the computer, from a user's client device via a network, a service request as a cryptographic object, the service request including details of a business function to be performed by a set of edge devices in an edge computing environment corresponding to the computer; and validating, by the computer, the service request in response to successfully decrypting a cryptographic object containing details of the business function to be performed by the set of edge devices. The computer-implemented method of claim 1 further comprising:
4. determining, by the computer, based on details of the business function, whether the set of edge devices require new or updated runtime binaries to perform the business function; in response to determining, by the computer, based on details of the business function, that the set of edge devices require either new or updated runtime binaries to perform the business function, sending an indication that a runtime binary is required to a node alternate of an edge provisioning server; receiving, by the computer, a request from the node alternate identifying the node edge server having the required runtime binaries in response to the node alternate receiving the indication that the runtime binaries are required for the set of edge devices to perform the business function; and transmitting, by the computer, to the node alternate, an identification of the node edge server that has the necessary runtime binaries on the set of edge devices to perform the business function. The computer-implemented method of claim 1 further comprising:
5. and migrating, by the computer, current runtime binaries corresponding to the business function to the set of edge devices via associated node edge servers in response to the computer determining, based on the details of the business function, that new or updated runtime binaries are not required for the set of edge devices to perform the business function. The computer-implemented method of claim 4 further comprising:
6. recording, by the computer, a state of the node edge server as inactive in response to determining that the set of edge devices have finished performing the business function; removing, by the computer, the necessary runtime binaries from the node edge server in response to the set of edge devices completing execution of the business function; and storing, by the computer, the necessary runtime binaries that were removed from the node edge server on the computer. The computer-implemented method of claim 1 further comprising:
7. The computer-implemented method of claim 1 , wherein the computer stores a state of each runtime binary loaded on each node edge server of an edge computing environment corresponding to the computer.
8. 2. The computer-implemented method of claim 1, wherein the required runtime binaries are runtime configurations that obtain resources needed by the set of edge devices to invoke a narrowband-based network slice of a fifth-generation (5G) network to perform the business function.
9. 9. The computer-implemented method of claim 8, wherein the narrowband-based network slice of the 5G network is configured with a specified start time, end time, and bandwidth, and wherein only the set of devices can access the narrowband-based network slice of the 5G network to perform the business function.
10. The computer-implemented method of claim 1 , wherein the business function relates to an ultra-low latency application.
11. 1. A computer system for provisioning a business function, the computer system comprising: communications fabric; a storage device coupled to the communications fabric, wherein the storage device stores program instructions; and a processor coupled to the communications fabric, wherein the processor executes the program instructions to: Sending runtime binary launch code to a node edge server that has runtime binaries required for the set of edge devices to perform the business function; and Establishing a secure shell protocol connection with root operating system access to the node edge server having the required runtime binaries and executing the runtime binary launch code. Processor A computer system comprising:
12. The processor further executes the program instructions to: receiving a request from a node alternate in response to the node alternate receiving an identification of the node edge server, the request setting the node edge server having the required runtime binaries to active; and 12. The computer system of claim 11, wherein in response to receiving a request to set the node edge server having the required runtime binaries to active, the computer system generates the runtime binary launch code corresponding to the required runtime binaries.
13. The processor further executes the program instructions to: receiving a service request from a user's client device via a network as a cryptographic object, the service request including details of the business function to be performed by the set of edge devices in an edge computing environment corresponding to the computer system; and 12. The computer system of claim 11, wherein the service request is validated in response to successfully decrypting the cryptographic object containing details of the business function performed by the set of edge devices.
14. The processor further executes the program instructions to: determining, based on the details of the business function, whether the set of edge devices requires new or updated runtime binaries to perform the business function; In response to determining, based on the details of the business function, that the set of edge devices requires either a new or updated runtime binary to perform the business function, sending an indication that a runtime binary is required to a node alternate of an edge provisioning server; receiving a request from the node alternate identifying a node edge server having the required runtime binaries in response to the node alternate receiving an indication that the runtime binaries are required for the set of edge devices to perform the business function; and 12. The computer system of claim 11, further comprising: transmitting to the node alternate an identification of the node edge server that has the necessary runtime binaries on the set of edge devices to perform the business function.
15. The processor further executes the program instructions to:
15. The computer system of claim 14, wherein, in response to determining based on the details of the business function that new or updated runtime binaries are not required for the set of edge devices to execute the business function, current runtime binaries corresponding to the business function are migrated to the set of edge devices via an associated node edge server.
16. 1. A computer program product for provisioning a business function, the computer program product comprising a computer-readable storage medium having program instructions embodied therein, the program instructions causing a computer to: sending, by the computer, a runtime binary activation code to a node edge server having runtime binaries necessary for a set of edge devices to perform a business function; and establishing, by the computer, a secure shell protocol connection for root operating system access to the node edge server having the necessary runtime binaries and executing the runtime binary launch code. a computer program product executable by the computer to cause the computer to perform a method comprising:
17. receiving, by the computer, a request from a node alternate in response to the node alternate receiving the node edge server's identification information to activate a node edge server having the necessary runtime binaries; and generating, by the computer, a runtime binary activation code corresponding to the required runtime binary in response to receiving a request to activate the node edge server having the required runtime binary; 17. The computer program product of claim 16, further comprising:
18. receiving, by the computer, from a user's client device via a network, a service request as a cryptographic object, the service request including details of the business function to be performed by the set of edge devices in an edge computing environment corresponding to the computer; and validating, by the computer, a service request in response to successfully decrypting a cryptographic object containing details of the business function to be performed by the set of edge devices.
17. The computer program product of claim 16, further comprising:
19. determining, by the computer, based on details of the business function, whether the set of edge devices require new or updated runtime binaries to perform the business function; in response to determining, by the computer, based on details of the business function, that the set of edge devices require either new or updated runtime binaries to perform the business function, sending an indication that a runtime binary is required to a node alternate of an edge provisioning server; receiving, by the computer, a request from the node alternate identifying the node edge server having the required runtime binaries in response to the node alternate receiving the indication that the runtime binaries are required for the set of edge devices to perform the business function; and transmitting, by the computer, to the node alternate, an identification of the node edge server that has the necessary runtime binaries on the set of edge devices to perform the business function.
17. The computer program product of claim 16, further comprising:
20. and migrating, by the computer, current runtime binaries corresponding to the business function to the set of edge devices via associated node edge servers in response to the computer determining, based on the details of the business function, that new or updated runtime binaries are not required for the set of edge devices to perform the business function.
20. The computer program product of claim 19, further comprising: