Sequential bidirectional migration in edge environments
The framework for continuous sequential bidirectional migration of runtime binaries using 5G network slices addresses inefficiencies in edge computing by optimizing network provisioning and resource management, ensuring synchronized execution of ultra-low latency applications.
Patent Information
- Application Number
- JP2025506159
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-08-11
- Filing Date
- 2023-08-01
- Publication Date
- 2025-09-09
AI Technical Summary
Current solutions do not optimally utilize the power of edge computing, particularly in ultra-low latency applications, by efficiently provisioning and migrating runtime binaries to edge devices for 5G network slices, leading to suboptimal network latency and resource management.
The implementation of a framework for continuous sequential bidirectional migration of runtime binaries from a central host server to node edge servers, utilizing narrowband-based 5G network slices, allowing real-time scaling and synchronization of resources to match business function requirements, ensuring efficient execution of ultra-low latency applications.
This approach optimizes network provisioning time and resource allocation, ensuring consistent and synchronized execution of business functions across edge devices, enhancing the performance of ultra-low latency applications like smart factory and augmented reality-assisted surgery.
Smart Images

Figure 2025529693000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates generally to edge computing, and more particularly to providing continuous sequential bidirectional migration of runtime binaries from a central host server computer to a node edge server computer, including optimizing network provisioning time for launching fifth generation (5G) narrowband-based network slices. [Background technology]
[0002] Edge computing is a topology in a distributed computing environment in which computing and data storage are located close to where they are needed. Thus, rather than performing all computing and data storage in the cloud, computing and data storage are performed at the edge of the network. Specifically, computing and data storage are performed in the device or application where real-time data processing and storage are required. In most cases, consumers require services from service providers according to an agreed-upon quality of service (e.g., a service level agreement). For example, applications such as smart factory applications, smart power grid applications, smart agriculture applications, augmented reality-assisted surgery applications, and the like are classified as ultra-low latency applications. Ultra-low latency applications require high-speed processing of data and have low tolerance for delay (i.e., network latency). These types of applications and network requirements make edge computing an ideal candidate. Communication service providers are adopting cloud and virtualization to offer new 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 runtime binary migration is provided. The computer provisions a slice of a 5G network based on duration and bandwidth requirements according to a service level agreement corresponding to a customer requesting execution of a business function transaction. The computer migrates a runtime binary to a node edge server for invoking the slice of the 5G network so that a set of edge devices associated with the node edge server execute the business function transaction using the slice of the 5G network. According to other exemplary embodiments, a computer system and computer program product for runtime binary migration 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] FIG. 1 illustrates an example of a runtime binary migration system according to an exemplary embodiment.
[0006] [Figure 3] FIG. 1 illustrates an example of a runtime binary migration process according to an exemplary embodiment.
[0007] [Figure 4] 1 is a flowchart illustrating a process for runtime binary migration according to an example embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0008] Various aspects of the present invention are described through text, flowcharts, block diagrams of computer systems, and / or block diagrams of machine logic included in computer program product (CPP) embodiments. With respect to any flowchart, depending on the technology involved, operations may be performed in an order different from that shown in a given flowchart. For example, again depending on the technology involved, 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.
[0009] A computer program product embodiment ("CPP embodiment" or "CPP") is a term used herein 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 a computer operation specified in a given media 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 disc read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded devices (such as punch cards or pits / lands formed on a 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 transitory 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 communicated through wires, and / or other transmission media.As will be appreciated by those skilled in the art, data typically moves at some infrequent time during the normal operation of a storage device, such as during access, defragmentation, or garbage collection, but the above does not make a storage device transient, as 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 shows a pictorial representation of a computing environment in which an exemplary embodiment may be implemented. Computing environment 100 includes an example of an environment for execution of at least a portion of the computer code involved in performing the method of the present invention, such as runtime binary migration code 200. In addition to runtime binary migration 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 (including operating system 122 and runtime binary migration code block 200 as identified above), 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 art of computer technology, and depending on the technology, execution of a computer-implemented method may be distributed among multiple computers and / or among multiple locations. While in this presentation of computing environment 100, to keep the presentation as concise as possible, the detailed discussion focuses on a single computer, specifically computer 101. Although computer 101 is not depicted in the cloud of FIG. 1 , it may be located in 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 coordinated 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 execute a series of operational steps, thereby realizing a computer-implemented method, whereby the instructions so executed instantiate the method specified in the flowcharts and / or descriptions of the computer-implemented method 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 some of the instructions for executing the methods of the present invention may be stored in a runtime binary migration 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 those that make up buses, bridges, physical input / output ports, and the like. 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 type random access memory (RAM) or static type RAM. Typically, volatile memory 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 is maintained regardless of whether or not direct power is supplied to computer 101 and / or to persistent storage 113. While persistent storage 113 may be read-only memory (ROM), typically at least a portion of persistent storage allows data to be written, data to be deleted, 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 or open-source Portable Operating System Interface-type operating systems employing a kernel. The runtime binary migration code included in block 200 typically includes at least a portion of the computer code involved in executing the method of the present invention.
[0018] The peripheral device set 114 includes a set of peripheral devices of the computer 101. Data communication connections between the peripheral devices and other components of the computer 101 may be implemented in various ways, such as Bluetooth connections, Near-Field Communication (NFC) connections, connections made by cable (such as a universal serial bus (USB)-type cable), insertion-type connections (e.g., a secure digital (SD) card), connections made over a local area communication network, and even connections made over a wide area network such as the Internet. In various embodiments, the UI device set 123 may include components such as a display screen, speakers, microphones, wearable devices (such as goggles and smartwatches), keyboards, mice, printers, touchpads, game controllers, and haptic devices. The storage 124 may be external storage, such as an external hard drive, or insertable storage, such as an SD card. The 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., computer 101 locally stores and manages large databases), 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 can 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 can 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 by any technology for communicating computer data, now known or later developed. In some embodiments, a WAN 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, and 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 discussed 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 the end user, the recommendations would typically be communicated from network module 115 of computer 101 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, etc.
[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, 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 power, without direct active management by users. Cloud computing typically leverages resource sharing to achieve coherence 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 (VCEs) running on various computers that comprise host physical machine set 142, the universe of physical computers in 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 discussion 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 an operating system feature where 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 in them. A computer program running on a normal 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 the container; this feature is known as containerization.
[0025] A private cloud 106 is similar to a public cloud 105, except that the computing resources are available only for use by a single enterprise. While the private cloud 106 is shown as communicating with the WAN 102, in other embodiments, the private cloud may be entirely 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 each implemented by a different vendor. 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, when used in reference to an item, a "set of" means one or more of that item. For example, a set of clouds is one or more different types of cloud environments. Similarly, when used in reference to an item, a "number of" means one or more of that item.
[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 of the listed items may be used, and that only one of each item in the list may be required. In other words, "at least one of" means that any combination and number of items may be used from the list, but not all items in the list are required. An item may be a specific 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 of" may be, for example, without limitation, two items A; one item B; and ten items C; four items B and seven items C; or other suitable combinations.
[0029] The exemplary embodiments enable a novel edge provisioning process to provide a novel solution to existing technical shortcomings of current solutions that do not optimally utilize the power of edge computing. Leveraging the power of narrowband-based network slices of a 5G network corresponding to a 5G service provider, the exemplary embodiments build a virtualized network function corresponding to a defined business function from an existing clone with specifications for adjusting resources (e.g., scaling resources up or down) to match the exemplary embodiment's provision of bandwidth in the narrowband-based network slice of the 5G network to perform the defined business function. A set of edge devices requires a narrowband-based network slice of the 5G network from the 5G network in terms of, for example, start time, end time, bandwidth, and the like, to perform the defined business function. The virtualized network function provisions the narrowband-based network slice of the 5G network for the defined business function. The existing clone is a copy of runtime binaries that indicate the resources needed by the set of edge devices to perform the defined business function. The exemplary embodiments migrate and upload the existing clone of the runtime binaries to the set of edge devices. It should be noted that the set of edge devices are the only devices that are able to access the narrowband-based network slice of the 5G network provisioned for that particular business function. It should also be noted that example embodiments can adjust the amount of time available in the slice and / or scale the amount of bandwidth in the slice for different edge devices using runtime binary partitioning.
[0030] Exemplary embodiments provision and execute virtualized network functions on the edge by providing lightweight runtime binaries. The runtime binaries are runtime configurations for launching a narrowband-based network slice of a 5G network and executing its specific business function transactions (e.g., for obtaining any resources required by a set of edge devices). Exemplary embodiments utilize a central host server to scale up the runtime binaries needed on the node edge servers on the fly in real time and scale down the runtime binaries on the node edge servers when the edge devices finish or complete execution of the corresponding business function. Exemplary embodiments provide continuous bidirectional migration of runtime binaries from the central host server to the node edge servers and vice versa, which also includes network provisioning time optimization for launching a performance-enhancing 5G narrowband-based network slice (e.g., reducing the time to provision a 5G narrowband-based network slice).
[0031] The node edge server transmits a request for a narrowband-based network slice of the 5G network, including a specified bandwidth for a specified time period. 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 corresponding to the node edge server. In response to determining the appropriate runtime binaries, the central host server replicates the runtime binaries geographically closest to the node edge server and migrates the replicated runtime binaries to that node edge server. The node edge server then transmits the replicated runtime binaries to the set of edge devices to activate the narrowband-based network slice of the 5G network to perform a defined business function (e.g., automatically operate a set of water sprinkler systems for a set of farms for a specified time period and at a specified bandwidth). Of course, the defined business function may be any type of function associated with an ultra-low latency application that automatically performs a set of tasks or actions requested by a customer to a service provider for that function over the 5G network.
[0032] The node edge server triggers a request for a narrowband-based network slice of the 5G network. A 5G service provider broker or marketplace identifies a suitable 5G service provider to provide the requested narrowband-based network slice of the 5G network. The central host server executes a provisioning process in which a set of edge devices obtains the narrowband-based network slice of the 5G network (i.e., a strict amount of time and bandwidth from the selected 5G service provider) to perform a defined business function. The selected 5G service provider ensures that a synchronized state of the set of edge devices is available at the edge of the 5G network. Depending on the resource requirements, the central host server determines the runtime binary provisioning. For example, based on an acceptable network latency defined by a service level agreement, contract, or the like, the central host server configures the service in the node edge server.
[0033] The central host server migrates runtime binaries from a node edge server only if there is no geographically nearby edge server in the same zone that has the required runtime binaries that can be replicated. After identifying the 5G service provider during the provisioning process, the state manager of the central host server determines whether new runtime binaries are needed. The central host server uses the state manager to store state details of all runtime binaries stored on all node edge servers. In other words, the state manager identifies which runtime binaries are appropriate for a particular node edge server and which runtime binaries need to be replicated or migrated. Based on the initial and final configuration states on a particular node edge server, the central host server either migrates or deletes the runtime binaries.
[0034] Exemplary embodiments ensure parallel execution between origin host servers and node edge servers through continuous sequential migration of runtime binaries or runtime binary partitions supported by a distributed ledger-based 5G service provider broker connected to multiple 5G service providers. A runtime binary partition is only a portion or segment of a runtime binary required by a given edge device or set of edge devices to execute a specific business function. Exemplary embodiments optimize the total time required for all ongoing runtime binary migrations and halt the service request validation process until an acknowledgement is received from the node edge server. Additionally, upon completion of a business function transaction, exemplary embodiments scale down all corresponding runtime binaries from the node edge server so that the runtime binaries are migrated back to the central host server. Exemplary embodiments serialize and align all business function transactions on a distributed ledger, which uses cryptographic objects to verify the idempotence or invalidity of each respective business function transaction.
[0035] Therefore, the exemplary embodiments provide a framework for edge provisioning by ensuring that all current runtime binaries are available according to the service request received from the customer. Based on the geographic location of the service request and the state of the runtime binaries at the node edge server, the exemplary embodiments determine whether to initiate a migration of the runtime binaries to the node edge server because the state of the runtime binaries on the node edge server may be out of sync with the updated runtime binaries on the central host server. In other words, the runtime binaries on the node edge server may be out of date and not the ones the node edge server needs to launch the correct narrowband-based network slice of the 5G network for a set of edge devices to perform a defined business function.
[0036] The continuous sequential migration of runtime binaries ensures that exemplary embodiments migrate runtime binaries from the same source host server to the same destination node edge server, and that the state of the runtime binaries on the source and destination are synchronized. The continuous bidirectional migration of runtime binaries ensures that, in response to a shift in business function transaction density, exemplary embodiments remove the runtime binaries on the node edge server and migrate all runtime binaries back to the central host server, thereby ensuring consistency of the runtime binary state, as exemplary embodiments may need to spin up new runtime binaries on new node edge servers. A shift in business function transaction density means that a business function is moved to a different geographic location, and therefore exemplary embodiments need to migrate the corresponding runtime binaries to the nearest node edge server associated with the set of edge devices that will execute that particular business function. The 5G service provider broker supports all business function transactions and ensures that security constraints are not violated throughout the migration of runtime binaries across the 5G network from the central host server to the node edge servers.
[0037] The exemplary embodiment writes each respective business function transaction as a data block to a persistent database of a central host server after serialization of a cryptographic object that persists the 5G slice requirements corresponding to the business function transaction. The exemplary embodiment utilizes a data block model resulting from a time-series, unstructured schema definition for persistence, which enables selected data block replication instead of file-driven replication. The exemplary embodiment copies the data block corresponding to each respective business function to a persistent database of a node edge server. For example, a host persistent writer of the central host server copies the persisted request for the 5G slice requirements corresponding to the business function transaction as a cryptographic object and sends the cryptographic object to an appropriate node edge server associated with the set of edge devices that will perform the business function. The node edge server writes the cryptographic object, which stores the 5G slice requirements corresponding to the business function, to its persistent database. The node edge server then acknowledges receipt of the cryptographic object to the host persistent writer. In response to receiving the acknowledgment from the node edge server, the host persistent writer calculates 5G network slice requirements, e.g., start time, end time, bandwidth, and the like, for the performance of the business function by the set of edge devices associated with the node edge server. Example embodiments provision a 5G network according to the calculated 5G network slice requirements.
[0038] The node edge server initially sends a business function transaction acknowledgement to the central host server to identify the 5G slice requirements (i.e., time and bandwidth) that will be required for the execution of the business function by the set of edge devices. In response to receiving the business function transaction acknowledgement, the host persistent writer calculates 5G slice requirement details and shares the 5G slice requirement details with the host processor of the central host server. The host processor provisions the 5G network based on the 5G slice requirement details input from the host persistent writer. Each time the node edge server executes a business function transaction on the set of edge devices, the node edge server sends a cryptographic object having the business function transaction details to the central host server for storage on the host persistent database.
[0039] Therefore, the exemplary embodiments provide one or more technical solutions to overcome the technical problem by providing migration of runtime binaries from a central host server computer to a node edge server computer using narrowband-based network slices of a 5G network for edge devices to perform defined business functions. As a result, these one or more technical solutions provide technical effects and practical applications in the field of edge computing.
[0040] Referring now to Figure 2, a diagram illustrating an example of a runtime binary migration system is shown, according to an exemplary embodiment. The runtime binary migration system 201 may be implemented in a computing environment, such as the computing environment 100 in Figure 1. The runtime binary migration system 201 is a system of hardware and software components for continuous sequential bidirectional migration of runtime binaries from a central host server computer to node edge server computers, including network provisioning time optimization for launching 5G narrowband-based network slices.
[0041] In this example, runtime binary migration system 201 includes business function service provider 202, 5G service provider 204, and 5G service provider broker 206. However, it should be noted that runtime binary migration system 201 is intended only as an example and not as a limitation on the exemplary embodiment. In other words, runtime binary migration system 201 may include any number of business function service providers, 5G service providers, 5G service provider brokers, and other providers and components not shown.
[0042] Business function service provider 202 provides 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. 5G service provider 204 provides a 5G network to execute the requested business functions of the ultra-low latency applications. 5G service provider broker 206 selects an appropriate 5G service provider (e.g., 5G service provider 204) to provide a 5G network to execute the requested business functions. In other words, 5G service provider broker 206 is an interface between business function service provider 202 and 5G service provider 204.
[0043] Business function service provider 202 includes a host server 208 and a node edge server 210. Host server 208 is a central computer that controls and coordinates the operations of multiple node edge servers, such as node edge server 210, in a hybrid edge environment. In this example, host server 208 includes a host node spawner 212, a host processor 214, a host persistent writer 216, a host persistent database 218, and a state manager 220. However, it should be noted that host server 208 may include additional components beyond those shown, such as, for example, a node edge orchestrator and the like.
[0044] Host server 208 uses host node spawner 212 to receive cryptographic objects that store details of business function transactions requested to be performed by customers. Additionally, host server 208 uses host node spawner 212 to add new virtual node edge servers as needed to perform the business function transactions. Host server 208 uses host processor 214 to provision narrowband-based network slices of the 5G network, such as 5G network slice 228 corresponding to 5G service provider 204, for edge devices to perform the business function transactions based on the slice requirements calculated by host persistent writer 216. Host persistent writer 216 calculates the slice requirements based on the business function transaction details received by host node spawner 212.
[0045] Furthermore, the host processor 214 migrates the runtime binaries 222 to multiple node edge servers. The node edge servers send the runtime binaries 222 to associated edge devices to activate the narrowband-based network slice of the 5G network so that the edge devices can execute their corresponding business function transactions. The runtime binaries 222 are runtime configurations that acquire resources required by the edge devices to activate the narrowband-based network slice of the 5G network and execute their corresponding business function transactions. Furthermore, the host persistent writer 216 writes the slice requirements, business function transaction details, and runtime binaries corresponding to each specific node edge server to the host persistent database 218. Therefore, the host server 208 knows which specific node edge servers have which specific runtime binaries. Furthermore, the host server 208 utilizes the state manager 220 to store state details of all runtime binaries stored on all node edge servers in the hybrid edge environment.
[0046] The node edge server 210 is an edge computer in the hybrid edge environment. The node edge server 210 manages the operation of a set of edge devices to automatically execute a set of business function transactions. The set of edge devices automatically execute their corresponding sets of business function transactions according to their associated narrowband-based network slices of the 5G network. The set of edge devices activate the narrowband-based network slices of the 5G network using specific runtime binaries provided by the node edge server 210. The node edge server 210 stores the runtime binaries migrated to the node edge server 210 by the host processor 214 in the node edge persistent database 224.
[0047] The 5G service provider broker 206 includes a 5G service provider catalog 226. The 5G service provider broker 206 utilizes the 5G service provider catalog 226 to select an appropriate 5G service provider based on, for example, customer price, customer service level agreement, geographic location of the service request, geographic location of the edge device for performing the business function transaction, and the like.
[0048] 5G service provider 204 provides 5G network slices 228 of the 5G network corresponding to 5G service provider 204. 5G network slices 228 represent multiple narrowband-based network slices of the 5G network for edge devices to perform their corresponding business function transactions. The narrowband-based network slices have a specified start point, end point, and bandwidth of the 5G network. Each set of edge devices has its own narrowband-based network slice for performing its corresponding business function transactions, and only that set of edge devices can access that particular narrowband-based network slice.
[0049] 3, a diagram illustrating an example of a runtime binary migration process is shown, according to an exemplary embodiment. Runtime binary migration process 300 may be implemented in a runtime binary migration system, such as runtime binary migration system 201 in FIG. 2. For example, runtime binary migration process 300 illustrates the migration of runtime binaries from a central host server to a given node edge server.
[0050] In this example, runtime binary migration process 300 includes node edge server 302, host node spawner 304, host processor 306, host persistent writer 308, host persistent database 310, and node edge persistent database 312. Node edge server 302, host node spawner 304, host processor 306, host persistent writer 308, host persistent database 310, and node edge persistent database 312 may be, for example, node edge server 210, host node spawner 212, host processor 214, host persistent writer 216, host persistent database 218, and node edge persistent database 224 in Figure 2. It should also be noted that host processor 306, host persistent writer 308, and host persistent database 310 are included in a host server, such as, for example, host server 208 in Figure 2.
[0051] At 314, the host node spawner 304 receives from the node edge server 302 a cryptographic object that stores details of the business function transaction requested to be performed by the customer. The host node spawner 304 decrypts the cryptographic object to ensure the authenticity of the business function transaction. At 316, in response to receiving the cryptographic object with the details of the business function transaction request, the host node spawner 304 sends a completion request for the business function transaction to the host processor 306. At 318, in response to receiving the business function transaction completion request from the host node spawner 304, the host processor 306 executes a business function transaction completion script that serializes a data block that stores the details of the business function transaction retrieved from the cryptographic object.
[0052] At 320, the host processor 306 sends the cryptographic object and the data block storing the details of the business function transaction to the host persistent writer 308. At 322, the host persistent writer 308 adds the data block storing the details of the business function transaction as a new entry in the host persistent database 310. Additionally, at 324, the host persistent writer 308 sends a persistence request corresponding to the runtime binary as a cryptographic object to the node edge server 302. At 326, the node edge server 302 writes the cryptographic object storing the persistence request corresponding to the runtime binary to the node edge persistent database 312 of the node edge server 302. Furthermore, at 328, the host persistent writer 308 receives an acknowledgement indicating that the node edge server 302 is ready to receive the runtime binary to activate the slice of the 5G network for the set of edge devices to perform the business function transaction.
[0053] At 330, in response to receiving the acknowledgment from the node edge server 302, the host persistent writer 308 calculates the duration and bandwidth requirements for the slice of the 5G network for the set of edge devices to perform the business function transaction. The host persistent writer 308 calculates the duration and bandwidth requirements for the slice of the 5G network using details of the business function transaction stored in the host persistent database 310. At 332, the host persistent writer 308 sends a billing request to the host processor 306 obtaining the calculated duration and bandwidth requirements for the slice of the 5G network.
[0054] At 334, in response to receiving the billing request, the host processor 306 provisions a 5G network slice based on the calculated duration and bandwidth requirements in accordance with a service level agreement corresponding to the service request by the customer requesting execution of the business function transaction. It should be noted that 334 is a validation stage. In other words, the host processor 306 validates the customer's service request using the service level agreement (e.g., allowed network latency, and the like). At 336, the host processor 306 sends the network rules and details corresponding to provisioning the 5G network slice, along with a runtime binary for initiating the 5G network slice so that a set of edge devices executes the business function transaction, to the host persistent writer 308 to write the network rules and details, along with the runtime binary, to the host persistent database 310. Further, at 338, the host processor 306 migrates the runtime binary for initiating the 5G network slice to the node edge server 302. The node edge server 302 then transmits the runtime binary to a set of edge devices associated with the node edge server 302 to execute business function transactions using the time-sensitive 5G network slice. Additionally, at 340, the node edge server 302 writes the runtime binary to the node edge persistent database 312.
[0055] The source host server S for the next time instance t+1 i From the destination node edge server s k Partition P to j To ensure the migration of the runtime binary, the host persistent writer 308 sets a migration indicator in progress and a variable x until the host processor 306 has migrated the entire runtime binary. i,j,k,t+1Set to 1. For example, the host processor 306 for runtime binary migration may utilize the following definitions and expressions: [Table 1]
[0056] However, it should be noted that the above definitions and formulas are intended as examples only and not as limitations on the exemplary embodiments. Additionally, the host processor 306 may extend the total migration time to include all runtime binary migrations in progress and then stop the runtime binary migration process utilizing the following exemplary formula:
number
number
[0057] Referring now to Figure 4, a flowchart illustrating a process for runtime binary migration according to an example embodiment is shown. The process illustrated in Figure 4 may be implemented, for example, in a host server computer, such as computer 101 in Figure 1 or host server 208 in Figure 2. For example, the process illustrated in Figure 4 may be implemented in runtime binary migration code 200 in Figure 1.
[0058] The process begins when a host server computer receives a cryptographic object storing details of a business function transaction requested to be performed by a customer from a node edge server computer associated with a set of edge devices to perform the business function transaction (step 402). The host server computer executes a business function transaction completion script that serializes a data block storing details of the business function transaction extracted from the cryptographic object received from the node edge server computer (step 404). The host server computer adds the data block storing details of the business function transaction as a new entry to a host persistent database of the host server computer (step 406).
[0059] Additionally, the host server computer sends a persistent request corresponding to the runtime binary as a cryptographic object to the node edge server computer (step 408). The host server computer then receives an acknowledgement indicating that the node edge server computer is ready to receive the runtime binary to activate a slice of the selected 5G service provider's 5G network for the set of edge devices to perform the business function transaction (step 410). In response to receiving the acknowledgement from the node edge server computer, the host server computer determines a duration and bandwidth requirements for the slice of the 5G network for the set of edge devices to perform the business function transaction utilizing the business function transaction details stored in the host persistent database (step 412).
[0060] The host server computer then provisions the 5G network slice based on the determined time period and bandwidth requirements in accordance with a service level agreement corresponding to the customer requesting execution of the business function transaction (step 414). Additionally, the host server computer writes network rules and details corresponding to provisioning the 5G network slice to a host persistent database (step 416), along with runtime binaries for invoking the 5G network slice so that a set of edge devices associated with the node edge server computer execute the business function transaction (step 418). The process then terminates.
[0061] Therefore, exemplary embodiments of the present invention provide a computer-implemented method, computer system, and computer program product for providing continuous sequential bidirectional migration of runtime binaries from a central host server computer to a node edge server computer, including network provisioning time optimization for launching 5G narrowband-based network slices. 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 commercially available technologies, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. 1. A computer-implemented method for runtime binary migration, comprising: provisioning, by a computer, a slice of a fifth generation (5G) network based on duration and bandwidth requirements in accordance with a service level agreement corresponding to a customer requesting execution of a business function transaction; and and migrating, by the computer, a runtime binary to the node edge server for invoking the slice of the 5G network so that a set of edge devices associated with the node edge server can execute the business function transaction using the slice of the 5G network. A computer-implemented method comprising:
2. 2. The computer-implemented method of claim 1, wherein the slice of the 5G network is a narrowband-based network slice consisting of a specified start point, end point, and bandwidth.
3. 3. The computer-implemented method of claim 2, wherein the runtime binary is a runtime configuration that obtains resources needed by the set of edge devices to activate the narrowband-based network slice of the 5G network and perform the business function transaction.
4. determining, by the computer, in response to receiving an acknowledgment from the node edge server indicating that the node edge server is ready to receive the runtime binary, the time period and bandwidth requirements for the slice of the 5G network for the set of edge devices to execute the business function transaction utilizing details of the business function transaction stored in a persistent database of the computer. The computer-implemented method of claim 1 further comprising:
5. receiving, by the computer, from the node edge server associated with the set of edge devices for executing the business function transaction, a cryptographic object storing the details of the business function transaction requested to be executed by the customer; executing, by the computer, a business function transaction completion script that serializes a data block storing the details of the business function transaction retrieved from the cryptographic object received from the node edge server; and adding, by said computer, said data block storing said details of said business function transaction to said persistent database of said computer. The computer-implemented method of claim 4 further comprising:
6. sending, by the computer, a persistent request corresponding to the runtime binary as a cryptographic object to the node edge server; and receiving, by the computer, the acknowledgment indicating that the node edge server is ready to receive the runtime binary to activate the slice of the 5G network so that the set of edge devices executes the business function transaction. The computer-implemented method of claim 4 further comprising:
7. writing, by the computer, network rules and details corresponding to provisioning the slice of the 5G network along with the runtime binary for initiating the slice of the 5G network so that the set of edge devices perform the business function transactions to a persistent database of the computer. The computer-implemented method of claim 1 further comprising:
8. The computer-implemented method of claim 1 , wherein the business function transaction is associated with an ultra-low latency application.
9. 2. The computer-implemented method of claim 1, wherein a 5G service provider broker selects a 5G service provider to provide the slice of the 5G network.
10. 10. The computer-implemented method of claim 9, wherein the 5G service provider broker supports business function transactions and ensures that security constraints are not violated throughout the transition of the runtime binary across the 5G network from the computer to the node edge server.
11. 1. A computer system for runtime binary migration, comprising: communications fabric; a storage device coupled to the communications fabric, wherein the storage device stores program instructions; and a processor connected to said communications fabric, said processor comprising: Provisioning a slice of a fifth generation (5G) network based on duration and bandwidth requirements in accordance with a service level agreement corresponding to a customer requesting the execution of a business function transaction; and and migrating a runtime binary to the node edge server for invoking the slice of the 5G network so that a set of edge devices associated with the node edge server can execute the business function transaction using the slice of the 5G network. executing the program instructions to A computer system comprising:
12. 12. The computer system of claim 11, wherein the slice of the 5G network is a narrowband-based network slice consisting of a specified start point, end point, and bandwidth.
13. 13. The computer system of claim 12, wherein the runtime binary is a runtime configuration that obtains resources needed by the set of edge devices to activate the narrowband-based network slice of the 5G network and execute the business function transaction.
14. 1. A computer program product for runtime binary migration, the computer program product comprising a computer-readable storage medium having program instructions embodied thereon, the program instructions causing a computer to: provisioning, by the computer, a slice of a fifth generation (5G) network based on duration and bandwidth requirements in accordance with a service level agreement corresponding to a customer requesting execution of a business function transaction; and and migrating, by the computer, a runtime binary to the node edge server for invoking the slice of the 5G network so that a set of edge devices associated with the node edge server can execute the business function transaction using the slice of the 5G network. A computer program product executable by said computer to cause said computer to perform the method of claim 1.
15. 15. The computer program product of claim 14, wherein the slice of the 5G network is a narrowband-based network slice consisting of a specified start point, end point, and bandwidth.
16. 16. The computer program product of claim 15, wherein the runtime binary is a runtime configuration that obtains resources needed by the set of edge devices to activate the narrowband-based network slice of the 5G network and perform the business function transaction.
17. determining, by the computer, in response to receiving an acknowledgment from the node edge server indicating that the node edge server is ready to receive the runtime binary, the time period and bandwidth requirements for the slice of the 5G network for the set of edge devices to execute the business function transaction utilizing details of the business function transaction stored in a persistent database of the computer. The computer program product of claim 14 further comprising:
18. receiving, by the computer, from the node edge server associated with the set of edge devices for executing the business function transaction, a cryptographic object storing the details of the business function transaction requested to be executed by the customer; executing, by the computer, a business function transaction completion script that serializes a data block storing the details of the business function transaction extracted from the cryptographic object received from the node edge server; and adding, by said computer, said data block storing said details of said business function transaction to said persistent database of said computer.
20. The computer program product of claim 17, further comprising:
19. sending, by the computer, a persistent request corresponding to the runtime binary as a cryptographic object to the node edge server; and receiving, by the computer, the acknowledgment indicating that the node edge server is ready to receive the runtime binary to activate the slice of the 5G network so that the set of edge devices executes the business function transaction.
20. The computer program product of claim 17, further comprising:
20. writing, by the computer, network rules and details corresponding to provisioning the slice of the 5G network along with the runtime binary for initiating the slice of the 5G network so that the set of edge devices perform the business function transactions to a persistent database of the computer. The computer program product of claim 14 further comprising: