Planning and orchestrating a resilient temporary network

A management node using a distributed ledger plans and orchestrates resilient temporary networks from multiple domain managers, addressing the inefficiencies of conventional systems by ensuring rapid activation and up-to-date resilience, thus overcoming the challenges of large-scale network failures.

WO2025211996A1PCT designated stage Publication Date: 2025-10-09TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/SE2024/050308
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-04
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Conventional network orchestration systems are not designed to handle large-scale failures caused by catastrophic events such as natural disasters or wars, requiring over-dimensioning that leads to resource underutilization and is not profitable, and collaboration among network operators to restore connectivity is time and resource-intensive during emergencies.

Method used

A management node uses a distributed ledger to obtain and plan resilient temporary networks by selecting network resources from multiple domain managers, determining resilience levels, and activating them when needed, with the ability to update resilience parameters dynamically.

Benefits of technology

Enables rapid activation of resilient temporary networks during emergencies, ensuring efficient resource utilization and adherence to predefined resilience requirements, while maintaining up-to-date resilience levels.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure SE2024050308_09102025_PF_FP_ABST
    Figure SE2024050308_09102025_PF_FP_ABST
Patent Text Reader

Abstract

A method performed by a management node to plan one or more temporary networks that use network resources that are under domains of a plurality of domain managers The method includes obtaining, from a distributed ledger that is accessible to the plurality of domain managers, information regarding the network resources under the domains of the plurality of domain managers, including resilience levels of the network resources under the domains of the plurality of domain managers, planning the one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domain managers, determining network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources, and determining whether the network resilience levels of the one or more temporary networks meet a predefined resilience requirement.
Need to check novelty before this filing date? Find Prior Art

Description

PLANNING AND ORCHESTRATING A RESILIENT TEMPORARY NETWORKTECHNICAL FIELD

[0001] Embodiments disclosed herein relate to the field of computer networks, and more specifically, to planning and orchestrating a resilient temporary network.BACKGROUND

[0002] During emergency situations such as natural disasters (e.g., earthquakes, flooding, hurricanes, etc.), wars, and other high-risk scenarios, network infrastructure that connects critical organizations and people may be impacted by massive failures. For example, during wars, the network infrastructure may be targeted by physical attacks (e.g., with missiles and / or bombs) and / or cyber-attacks, which can result in the loss of network services.

[0003] During such emergency situations, the network operator should be able to preserve the most critical functions of its network so that the network can provide essential network services such as connectivity for government, shelters, and / or communities. The network operator should be able to provide a resilient network that can withstand large-scale catastrophic events.

[0004] Conventional network orchestration systems are designed to optimize the deployment of network services according to the network conditions and the traffic demand. They typically leverage software defined networking (SDN) controllers and path computation engines (PCEs) to preserve quality of service (QoS) and service level agreement (SLA) characteristics in the network. Conventional network orchestration systems may react to changes to network conditions such as localized failures or congestion and are typically designed to serve each network operator independently. However, networks and network orchestration systems are not designed to deal with large-scale failures of the network infrastructure caused by catastrophic events such as natural disasters, wars, and other high-risk scenarios (e.g., in which human activities purposefully destroy or hijack the network infrastructure itself), as this would require over-dimensioning the network, which would result in the under-usage of resources and would not be profitable.

[0005] During an emergency situation, it may be beneficial for network operators to collaborate with each other to restore network connectivity and / or to alleviate traffic congestion in specific geographies areas. A network operator might possess spare capacity (e.g., reserved for network expansion or traffic variations) that can be used by other network operators operating in the same geographical area to restore critical services in that geographical area.

[0006] However, such collaboration among network operators may require efforts by the network operators to share information about their networks with each other, agree on a plan torestore network services, and execute that plan. Such efforts may take much time and resources that may be scarce, particularly during emergency situations.SUMMARY

[0007] An embodiment is a method performed by a management node to plan one or more temporary networks that use network resources that are under domains of a plurality of domain managers. The method includes obtaining, from a distributed ledger that is accessible to the plurality of domain managers, information regarding the network resources under the domains of the plurality of domain managers, including resilience levels of the network resources under the domains of the plurality of domain managers, planning the one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domain managers, determining network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources, and determining whether the network resilience levels of the one or more temporary networks meet a predefined resilience requirement.

[0008] An embodiment is a non-transitory machine-readable storage medium comprising computer program code which when executed by a network device implementing a management node carries out operations for planning one or more temporary networks that use network resources that are under domains of a plurality of domain managers. The operations include obtaining, from a distributed ledger that is accessible to the plurality of domain managers, information regarding the network resources under the domains of the plurality of domain managers, including resilience levels of the network resources under the domains of the plurality of domain managers, planning the one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domain managers, determining network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources, and determining whether the network resilience levels of the one or more temporary networks meet a predefined resilience requirement.

[0009] An embodiment is a network device configured to function as a management node that plans one or more temporary networks that use network resources that are under domains of a plurality of domain managers. The network device includes one or more processors and a non- transitory machine-readable storage medium that stores instructions, which when executed by the one or more processors, causes the network device to perform operations for planning one or more temporary networks that use network resources that are under domains of a plurality of domain managers. The operations include obtaining, from a distributed ledger that is accessibleto the plurality of domain managers, information regarding the network resources under the domains of the plurality of domain managers, including resilience levels of the network resources under the domains of the plurality of domain managers, planning the one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domain managers, determining network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources, and determining whether the network resilience levels of the one or more temporary networks meet a predefined resilience requirement.BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The invention may best be understood by referring to the following description and accompanying drawings that are used to illustrate particular embodiments of the invention. In the drawings:

[0011] Figure 1 is a diagram showing an environment in which temporary networks can be planned and orchestrated, according to some embodiments.

[0012] Figure 2 is a diagram showing component interactions for planning a resilient temporary network, according to some embodiments.

[0013] Figure 3 is a flow diagram of a method for planning a temporary network, according to some embodiments.

[0014] Figure 4 is a flow diagram of a method for orchestrating a temporary network, according to some embodiments.

[0015] Figure 5 is a diagram showing a multi-operator network resource sharing architecture, according to some embodiments.

[0016] Figure 6 is a flow diagram of a method for planning temporary networks, according to some embodiments.

[0017] Figure 7 is a flow diagram of a method for orchestrating a temporary network, according to some embodiments.

[0018] Figure 8 is a diagram showing an example of a communication system, according to some embodiments.

[0019] Figure 9 is a diagram showing a UE, according to some embodiments.

[0020] Figure 10 is a diagram showing a network node, according to some embodiments.

[0021] Figure 11 is a block diagram showing a virtualization environment 1100 in which functions implemented by some embodiments may be virtualized.

[0022] Figure 12 is a diagram showing three examples of a network device that may be used to implement embodiments.DETAILED DESCRIPTION

[0023] The following description describes methods and apparatus for planning and orchestrating a resilient temporary network that uses network resources that are under the domains of multiple domain managers. In the following description, numerous specific details such as logic implementations, opcodes, means to specify operands, resource partitioning / sharing / duplication implementations, types and interrelationships of system components, and logic partitioning / integration choices are set forth in order to provide a more thorough understanding of embodiments. It will be appreciated, however, by one skilled in the art that embodiments may be practiced without such specific details. In other instances, control structures, gate level circuits and full software instruction sequences have not been shown in detail in order not to obscure the description. Those of ordinary skill in the art, with the included descriptions, will be able to implement appropriate functionality without undue experimentation.

[0024] References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.

[0025] Bracketed text and blocks with dashed borders (e.g., large dashes, small dashes, dotdash, and dots) may be used herein to illustrate optional operations that add additional features to embodiments. However, such notation should not be taken to mean that these are the only options or optional operations, and / or that blocks with solid borders are not optional in certain embodiments.In the following description and claims, the terms “coupled” and “connected,” along with their derivatives, may be used. These terms are not intended as synonyms for each other. “Coupled” is used to indicate that two or more elements, which may or may not be in direct physical or electrical contact with each other, co-operate or interact with each other. “Connected” is used to indicate the establishment of communication between two or more elements that are coupled with each other.

[0026] An electronic device stores and transmits (internally and / or with other electronic devices over a network) code (which is composed of software instructions and which is sometimes referred to as computer program code or a computer program) and / or data usingmachine-readable media (also called computer-readable media), such as machine-readable storage media (e.g., magnetic disks, optical disks, solid state drives, read only memory (ROM), flash memory devices, phase change memory) and machine-readable transmission media (also called a carrier) (e.g., electrical, optical, radio, acoustical or other form of propagated signals - such as carrier waves, infrared signals). Thus, an electronic device (e.g., a computer) includes hardware and software, such as a set of one or more processors (e g., wherein a processor is a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application specific integrated circuit, field programmable gate array, other electronic circuitry, a combination of one or more of the preceding) coupled to one or more machine-readable storage media to store code for execution on the set of processors and / or to store data. For instance, an electronic device may include non-volatile memory containing the code since the non-volatile memory can persist code / data even when the electronic device is turned off (when power is removed), and while the electronic device is turned on that part of the code that is to be executed by the processor(s) of that electronic device is typically copied from the slower nonvolatile memory into volatile memory (e g., dynamic random access memory (DRAM), static random access memory (SRAM)) of that electronic device. Typical electronic devices also include a set of one or more physical network interface(s) (NI(s)) to establish network connections (to transmit and / or receive code and / or data using propagating signals) with other electronic devices. For example, the set of physical NIs (or the set of physical NI(s) in combination with the set of processors executing code) may perform any formatting, coding, or translating to allow the electronic device to send and receive data whether over a wired and / or a wireless connection. In some embodiments, a physical NI may comprise radio circuitry capable of receiving data from other electronic devices over a wireless connection and / or sending data out to other devices via a wireless connection. This radio circuitry may include transmitter(s), receiver(s), and / or transceivers) suitable for radiofrequency communication. The radio circuitry may convert digital data into a radio signal having the appropriate parameters (e.g., frequency, timing, channel, bandwidth, etc.). The radio signal may then be transmitted via antennas to the appropriate recipient(s). In some embodiments, the set of physical NI(s) may comprise network interface controller(s) (NICs), also known as a network interface card, network adapter, or local area network (LAN) adapter. The NIC(s) may facilitate in connecting the electronic device to other electronic devices allowing them to communicate via wire through plugging in a cable to a physical port connected to a NIC. One or more parts of an embodiment may be implemented using different combinations of software, firmware, and / or hardware.

[0027] A network device (ND) is an electronic device that communicatively interconnects other electronic devices on the network (e.g., other network devices, end-user devices). Somenetwork devices are “multiple services network devices” that provide support for multiple networking functions (e.g., routing, bridging, switching, Layer 2 aggregation, session border control, Quality of Service, and / or subscriber management), and / or provide support for multiple application services (e.g., data, voice, and video).

[0028] As mentioned above, during an emergency situation, it may be beneficial for network operators to collaborate with each other to restore network connectivity and / or to alleviate traffic congestion in specific geographies areas. However, such collaboration among network operators may require efforts by the network operators to share information about their networks with each other, agree on a plan to restore network services, and execute that plan. Such efforts may take much time and resources that may be scarce, particularly during emergency situations.

[0029] Embodiments are disclosed herein that allow a management node to plan and orchestrate a resilient temporary network during emergency situations. In an embodiment, the management node may obtain, from a distributed ledger, information regarding network resources under the domains of a plurality of domain managers, including the resilience levels of those network resources. The resilience level of a network resource may indicate how resilient the network resource is against potential attacks or disasters. In an embodiment, the resilience level of a network resource is a numeric value generated using a resilience determination algorithm. The management node may plan one or more temporary networks based on selecting one or more of the network resources under the domains of the domain managers for use in the one or more temporary networks. The management node may determine the network resilience level of each of the one or more temporary networks based on the resilience levels of the one or more network resources that were selected to be used in the temporary network. The network resilience level of a temporary network may indicate how resilient the temporary network as a whole is against potential attacks or disasters. The management node may then determine whether the network resilience level of the temporary network meets a resilience requirement. The resilience requirement may indicate a minimum network resilience level needed for a temporary network to be considered sufficiently resilient (e.g., sufficiently resilient for use during emergency situations). If the network resilience level of a temporary network meets the resilience requirement, the management node may generate and store a plan of the temporary network (e.g., in the distributed ledger) for future use. The plan may include, among other information, a list of the network resources selected to be used in the temporary network and possibly their configurations. Otherwise, if the network resilience level of a temporary network does not meet the resilience requirement, the management node may determine which of the network resources that were selected to be used in the temporary network are primary responsible for the temporary network not meeting the resilience requirement. The managementnode may then send a list of such network resources to an administrator or other entity that can take remedial action. The remedial action may involve selecting additional network resources to be used in the temporary network to improve the resilience of the temporary network, replacing certain network resource that were selected to be used in the temporary network with more resilient network resources, and / or negotiating with domain managers to improve the resilience of certain network resources that were selected to be used in the temporary network.

[0030] When an emergency situation occurs (e g., a natural disaster or bombing of network infrastructure that causes a loss of network services), the management node may obtain a plan of a temporary network (e.g., from the distributed ledger). The management node may then determine the network resources that were selected to be used in the temporary network based on the obtained plan of the temporary network and send requests to the appropriate domain managers to preempt those network resources for use by the temporary network. The management node may then activate the temporary network. The temporary network may provide emergency network services using network resources that are under the domains of multiple domain managers (e.g., network resources belonging to multiple network operators). The temporary network may be resilient against potential attacks or disasters (since they have been designed to have a network resilience level that meets a resilience requirement).

[0031] When the emergency situation ends, the management node may deactivate the temporary network and send requests to the appropriate domain managers to release the preempted network resources from preemption (e.g., so that they can be returned back to the network operators).

[0032] In an embodiment, the management node is a dedicated orchestrator that is responsible for coordinating with multiple domain managers (e.g., of multiple network operators) to orchestrate temporary networks. In another embodiment, the management node is one of the domain managers that is nominated to act as the master domain manager (and the other domain managers act as participating domain managers). The master domain manager may be nominated at runtime based on the domain managers collectively participating in a nomination process.

[0033] In an embodiment, the management node determines resilience parameters that are to be used for evaluating the resilience levels of network resources and stores these resilience parameters in the distributed ledger. The management node may then send a request to each domain manager to update the resilience levels of the network resources under the domain of the domain manager. Responsive to receiving such a request from the management node, a domain manager may determine the resilience levels of the network resources under its domain using a shared resilience determination algorithm and the resilience parameters stored in the distributedledger. The domain manager may then store the resilience levels of the network resources under its domain in the distributed ledger. The management node may distribute the shared resilience determination algorithm to the domain managers so that the domain managers use the same algorithm to determine the resilience levels of the network resources under their respective domains. The management node may periodically update the resilience parameters or do so in response to some triggering event (e.g., in response to receiving a request to update the resilience parameters or detecting an unanticipated change in conditions). In an embodiment, the management node customizes the resilience parameters for a particular condition / situation (e.g., a particular emergency situation such as earth, flooding, war, etc.). Following such an update, the management node may send requests to the domain managers to update the resilience levels of the network resources under their respective domains in the distributed ledger (so that the domain managers use the updated resilience parameters when determining resilience levels of network resources). This allows resilience levels of network resources to stay relevant and up-to-date in the distributed ledger.

[0034] Thus, embodiments can plan and orchestrate a resilient temporary network that can be used to provide network services during emergency situations. An advantage of embodiments is that the management node is able to activate a resilient temporary network as soon as it is needed because the temporary network is pre-planned (e.g., a plan of the temporary network is pre-stored in the distributed ledger). Also, an advantage of embodiments is that the management node can customize / update the resilience parameters that are used for determining the resilience levels of network resources, as needed, and can cause the domain managers to update the resilience levels of the network resources under their respective domains using the updated resilience parameters. This allows the resilience levels stored in the distributed ledger to stay relevant and up-to-date. Since resilience levels can change over time, it is important that they be re-evaluated when an event occurs that can cause the resilience levels to change.

[0035] The ability to plan and orchestrate temporary networks in response to emergency situations may become part of future government regulations. In such case, embodiments may be used to plan and orchestrate a temporary network that can leverage network resources that are under the domains of multiple domain managers to provide network services during emergency situations (e.g., a large-scale service outage in a particular geographic area due to a natural disaster).

[0036] Embodiments are now described with reference to the accompanying figures.

[0037] Figure 1 is a diagram showing an environment in which temporary networks can be planned and orchestrated, according to some embodiments.

[0038] As shown in the diagram, the environment includes components that are operated / controlled by a first network operator (“network operator A”) including domain manager 140A and network 150A. Also, the environment includes components that are operated / controlled by a second network operator (“network operator M”) including domain manager MOM and network 150M. Although the diagram only shows two network operators, it should be appreciated that the environment can include additional network operators and components that are operated / controlled by those additional network operators.

[0039] Network 150A may provide network services for users / customers of network operator A. Similarly, network 150M may provide network services for users / customers of network operator M. In an embodiment, a network 150 is a mobile network such as a Third Generation Partnership Project (3GPP) Fifth Generation (5G) mobile network or similar mobile network. In an embodiment, a network 150 is a non-mobile network (e g., a fixed cabled network). A network 150 may include various network resources 165 that can be used to provide network services. For example, as shown in the diagram, network 150A may include network resources 165A, 165B, and 165C among other network resources. Also, as shown in the diagram, network 150M may include network resources 165D, 165E, and 165F among other network resources. In an embodiment where a network 150 is a mobile network, a network resource 165 may be, for example, a core network resource, a radio access network (RAN) resource, and / or a cloud computing resource.

[0040] A domain manager 140 may be responsible for managing the network resources of a particular domain. For example, domain manager 140A may be responsible for managing the network resources 165 of network 150A. Similarly, domain manager MOM may be responsible for managing the network resources 165 of network 150M. In this example, each network 150 corresponds to a domain. However, in other embodiments, domains may have a different level of granularity. For example, a network 150 operated by a single network operator may be divided into regions (e.g., geographical regions or logical partitions) and each region of the network 150 may correspond to a single domain. The management functionality performed by the domain manager 140 may include monitoring, configuring, updating, and / or troubleshooting network resources 165 under its domain.

[0041] A domain manager 140 may maintain a network resource database 145. For example, as shown in the diagram, domain managerMOA may maintain network resource database 145A and domain manager MOM may maintain network resource database 145M. A network resource database 145 may store various information regarding the network resources 165 under a domain. For example, network resource database 145A may store various information regarding the network resources 165 of network 150A and network resource database 145Mmay store various information regarding the network resources 165 of network 150M. The information stored in a network resource database 145 may include various attributes of the network resources 165.

[0042] In an embodiment, the domain managers 140 collectively participate in a nomination process to nominate a domain manager 140 that is to act as a master domain manager. As will be described in additional detail herein, the master domain manager may be responsible for coordinating with other domain managers, referred to as participating domain managers, to plan and / or orchestrate temporary networks. The nomination process may be designed to nominate a domain manager that has the requisite characteristics in terms of redundancy, security, and / or computational power to act as the master domain manager. In an embodiment, the nomination process is designed to nominate the domain manager based on domain manager’s level of resilience, the number / percentage of “shared” network resources (network resources that are proffered to be used in temporary networks) in the domain managed by the domain manager, and / or the geopolitical rating associated with the domain manager. The nomination process may use or be based on existing consensus algorithms such as proof of stake. In this example, it is assumed that domain manager 140A is nominated to be the master domain manager (thus the other domain managers such as domain manager MOM are participating domain managers). In some embodiments, the environment includes a dedicated multi -operator orchestrator 110 that can coordinate with the domain managers 140 and there is no need to nominate a master domain manager. The entity that coordinates with the domain managers 140 to plan and orchestrate temporary networks (whether it be dedicated orchestrator 110 or a master domain manager) may be referred to more generally as a management node. Thus, the management node functionality may be carried out by a dedicated centralized orchestrator or be carried out by one of the domain managers that is nominated to act as the master domain manager using a distributed nomination process. The management node may communicate with domain managers 140 using one or more application programming interfaces (APIs), for example, to send requests to the domain managers 140 to update resilience levels of network resources 165, preempt network resources 165, and / or release network resources 165 from preemption. In the following description, it is assumed that domain manager 140A is nominated to act as the master domain manager and functions as the management node. It should be appreciated, however, that the dedicated orchestrator 110 can perform similar operations as the master domain manager to plan and / or orchestrate temporary networks.

[0043] Each domain manager 140 may have access to a distributed ledger 120 (e.g., and thus be able to store information in the distributed ledger 120 and / or obtain information from the distributed ledger 120). As will be described in additional detail herein, the distributedledger 120 may be used for storing resilience parameters 175, resilience levels of network resources 180, preemption indicators 185, and release indicators 190. In an embodiment, the distributed ledger 120 is a blockchain. A benefit of using block chains is that they can provide high resilience via distributed database, full data encryption, and protection against hacking and double-booking of resources.

[0044] The management node may determine the resilience parameters that are to be used for evaluating the resilience levels of network resources and store the resilience parameters in the distributed ledger 120. For example, domain manager 140A, in its role as the management node, may determine the resilience parameters that are to be used for evaluating the resilience levels of network resources and store them in the distributed ledger 120 as resilience parameters 175.

[0045] Resilience parameters may be parameters that have been determined to be relevant to the resilience of a network resource 165. As a non-limiting example, the resilience parameters may include the vulnerability level of the network resource 165, the disaster risk of the network resource 165, the network resource’s proximity to borders (e g., borders with a hostile country), the security level of the location of the network resource 165, the level of energy power autonomy of the network resource 165, and / or other parameters. It should be appreciated that the resilience parameters can include parameters that are different from those specifically listed above.

[0046] The management node may send requests to domain managers 140 to update the resilience levels of the network resources 165 under their respective domains. For example, domain manager 140A, in its role as the management node, may send a request to domain manager MOM to update the resilience levels of the network resources 165 under the domain of domain manager MOM.

[0047] Responsive to receiving a request to update resilience levels from the management node, a domain manager 140 may obtain resilience parameters 175 from the distributed ledger 120 and determine the resilience levels of the network resources 165 under its domain using a shared resilience determination algorithm and the obtained resilience parameters 175. The domain manager 140 may then store the determined resilience levels in the distributed ledger 120. The resilience level of a network resource may indicate how resilient the network resource is against potential attacks or disasters. For example, responsive to receiving a request to update resilience levels from domain manager 140A (acting in its role as a management node), domain manager MOM may obtain the previously-stored resilience parameters 175 from the distributed ledger 120 and determine the resilience levels of network resources 165D, 165E, and 165F under its domain using a shared resilience determination algorithm and the obtainedresilience parameters 175. Domain manager MOM may then store the determined resilience levels in the distributed ledger 120 as part of resilience levels 180. The management node may send similar requests to multiple domain managers 140 to cause each of those domain managers 140 to update the resilience levels of the network resources 165 under their respective domains in the distributed ledger 120.

[0048] Domain managers 140 may make certain network resources under their domains available for use in temporary networks by storing information regarding such network resources, including the resilience levels of those network resources, in the distributed ledger 120. Such network resources 165 may form an ultra-resilient network layer 160 that includes network resources 165 (e.g., network resources 165A-F) that can be used in temporary networks during emergency situations.

[0049] The management node may distribute the resilience determination algorithm to the domain managers 140 so that the domain managers 140 can use the same algorithm to determine resilience levels of network resources. For example, domain manager 140A, in its role as a management node, may distribute the resilience determination algorithm to domain manager MOM and other domain managers 140. In an embodiment, the management node distributes the resilience determination algorithm by storing the resilience determination algorithm in the distributed ledger 120. Domain managers 140 may then obtain the resilience determination algorithm from the distributed ledger 120. Thus, each domain manager 140 may have access to the same resilience determination algorithm and the same resilience parameter 175 when determining the resilience levels of network resource under its domain.

[0050] The resilience determination algorithm may be an algorithm that is used to determine the resilience levels of network resources 165. As previously mentioned, the resilience level of a network resource 165 may indicate how resilient the network resource 165 is against potential attacks or disasters. The resilience level may take into account the availability, security, safety, trust, and / or performance of the network resource 165.

[0051] The resilience determination algorithm may determine the resilience level of a network resource 165 based on parameter values of the network resource 165 corresponding to the resilience parameters (e.g., resilience parameters 175). As an example, the resilience level of a network resource 165 may be determined using the below formula. stx = nr=i 5't (

[0052] In the above formula, Stx is the resilience level of network resource x, Stxtis the resilience parameter value of network resource x for a particular resilience parameter z, n is a multiplication / product operation, and n is the number of resilience parameters. In an embodiment, each of the resilience parameter values can be weighted based on its importance.Ways to determine the resilience levels (also sometimes referred to as “sturdiness levels”) of network resources are described in Patent Cooperation Treaty (PCT) application number PCT / SE2023 / 050649, titled “AGENT FOR DETERMINING AND SHARING STURDINESS LEVELS OF NETWORK RESOURCES IN A SECURE MANNER,” which is incorporated herein by reference. While a particular way to determine the resilience level of a network resource 165 is described above, it should be appreciated that there can be other ways to determine the resilience level of a network resource 165.

[0053] While an example is described above where the management node sends requests to the domain managers 140 to update resilience levels of network resources in the distributed ledger 120, in some embodiments, the domain managers 140 update resilience levels in the distributed ledger 120 on their own initiative (e.g., periodically update resilience levels in the distributed ledger 120 without receiving an explicit request from the management node).

[0054] Once all of the domain managers 140 have updated the resilience levels of the network resources 165 under their respective domains in the distributed ledger 120, the management node may obtain information regarding the network resources 165 under the domains of the domain managers 140 from the distributed ledger 120, including the resilience levels of the network resources. The management node may then plan one or more temporary networks based on selecting one or more of the network resources 165 for use in the one or more temporary networks (e g., based on the information obtained from the distributed ledger 120). For example, domain manager 140A, in its role as a management node, may obtain information regarding the network resources 165D, 165E, and 165F that are under the domain of domain manager MOM, including the resilience levels of those network resources 165, from the distributed ledger 120. Domain manager 140A may also obtain information regarding other network resources 165 that are under the domains of other domain managers 140 (other than domain manager MOM) as well. Domain manager 140A, in its role as a management node, may then plan a temporary network based on selecting network resources 165D and 165F (among other network resources) for use in the temporary network. Planning may involve determining the network resources 165 that are to be used in the temporary network and generating a plan of the temporary network. In an embodiment, the management node stores the plan of the temporary network in the distributed ledger 120.

[0055] The management node may then determine a network resilience level of the temporary network based on the resilience levels of the network resources 165 that were selected to be used in the temporary network. The network resilience level of a temporary network may indicate how resilient the temporary network as a whole is against potential attacks or disasters. For example, domain manager 140A, in its role as a management node, may determine the networkresilience of the temporary network based on the resilience levels of network resources 165D and 165F (among other network resources 165) that were selected to be used in the temporary network.

[0056] In an embodiment, the network resilience level of a temporary network is determined based on multiplying the resilience levels of the network resources 165 that were selected to be used in the temporary network (such approach / algorithm to determining the network resilience level may be referred to as an all-components resilience approach / algorithm). For example, the following formula may be used to determine the resilience level of a temporary network: ^=rix=i5tx

[0057] In the above formula, St is the network resilience level of the temporary network, Stxis the resilience level of network resource x that was selected to be included in the temporary network, and z is the number of network resources that were selected to be used in the temporary network.

[0058] In an embodiment, each resilience level is weighted by an exponential factor when being multiplied. For example, the resilience level of the temporary network may be determined using the following formula:St = flx=i st^x

[0059] In the above formula, Ax is the weight associated with network resource x. The weight may be an exponential factor, considering that the resilience level of a network resource (St*) is a value that is less than 1. In this case, a weight (Ax) between 0 and 1 will have the effect of increasing the importance of the associated network resource, while a weight greater than 1 will have the effect of decreasing the importance of the associated network resource.

[0060] The management node may then determine whether the network resilience level of the temporary network meets a resilience requirement. The resilience requirement may indicate a minimum network resilience level needed for a temporary network to be considered sufficiently resilient (e g., considered sufficiently resilient for use during emergency situations). The resilience requirement may be predefined and configurable (e.g., defined / configured by an administrator). For example, domain manager 140A, in its role as a management node, may determine whether the network resilience level of the temporary network (which may be a numerical value) is above (or greater than) a predefined threshold network resilience level (which may also be a numerical value).

[0061] If the network resilience level of the temporary network meets the resilience requirement, the management node may store a plan of the temporary network in the distributed ledger 120 for future use. Otherwise, if the resilience level of the temporary network does not meet the resilience requirement, the management node may determine and send a list of thenetwork resources that are primary responsible for the temporary network not meeting the resilience requirement to an administrator or other entity that can take remedial action. The remedial action may involve selecting additional network resources 165 to be used in the temporary network to improve the resilience of the temporary network, replacing certain network resource 165 that were selected to be used in the temporary network with more resilient network resources 165, and / or negotiating with domain managers 140 to improve the resilience of certain network resources 165 that were selected to be used in the temporary network. In an embodiment, the management node takes such remedial action or assists with carrying out such remedial action.

[0062] If the management node determines that the temporary network should be activated (e.g., due to detecting an emergency situation), the management node may obtain the plan of the temporary network from the distributed ledger 120 (if it does not already have it stored locally). The management node may then determine the network resources 165 that were selected to be used in the temporary network based on the plan of the temporary network. The management node may then send requests to the appropriate domain managers 140 to preempt the network resources 165 that were selected to be used in the temporary network. For example, if domain manager 140A, in its role as a management node, determines that the temporary network should be activated, domain manager 140A may obtain the plan of the temporary network from the distributed ledger 120 and determine that network resources 165D and 165F, which are under the domain of domain manager 140M, were selected (among other network resources 165) to be used in the temporary network based on the plan of the temporary network. Domain manager 140A, in its role as a management node, may thus send a request to domain manager 140M to preempt those network resources.

[0063] Responsive to receiving a request to preempt network resources 165 from the management node, a domain manager 140 may preempt the network resources 165 for use by the temporary network. Preempting a network resource 165 for use by the temporary network may involve reallocating the network resource 165 for use by the temporary network (which may include applying a particular configuration to the network resource 165 so that it is suitable for use in the temporary network). The domain manager 140 may then store a preemption indicator in the distributed ledger 120 to indicate that the network resources 165 have been preempted. For example, responsive to receiving a request to preempt network resources 165D and 165F from domain manager 140A (acting as a management node), domain manager 140M may preempt network resources 165D and 165F (e.g., by reallocating those network resources 165 for use in the temporary network) and store a preemption indicator in thedistributed ledger 120 indicating that network resources 165D and 165F are preempted, as part of preemption indicators 185.

[0064] Once all of the network resources 165 that were selected to be used in the temporary network have been preempted, the management node may activate the temporary network. The activated temporary network may temporarily provide reliable network services (e.g., during the emergency situation).

[0065] When the management node determines that the temporary network is to be deactivated (e.g., because the emergency situation has ended), the management node may deactivate the temporary network. The management node may then send requests to the appropriate domain managers 140 to release the preempted network resources 165 from preemption. For example, if domain manager 140 A, in its role as a management node, determines that the temporary network should be deactivated, domain manager 140A may deactivate the temporary network and send a request to domain manager 140M to release preempted network resources 165D and 165F from preemption. Domain manager 140A, in its role as a management node, may send requests to other domain managers 140 to release other network resources 165 used in the temporary network from preemption.

[0066] Responsive to receiving a request to release network resources 165 from preemption from the management node, a domain manager 140 may release the network resources 165 from preemption. Releasing a network resource 165 from preemption may involve reallocating the network resource 165 for use by the network operator’s own network (which may include applying a particular configuration to the network resource 165 so that it is suitable to be used by the network operator’s own network). The domain manager 140 may then store a release indicator in the distributed ledger 120 to indicate that the network resources 165 have been released from preemption. For example, responsive to receiving a request to release network resources 165D and 165F (which were used by the temporary network) from preemption from domain manager 140 A (acting as a management node), domain manager MOM may release network resources 165D and 165F from preemption (e.g., by reallocating those network resources 165 for use by network 150M) and store a release indicator in the distributed ledger 120 indicating that network resources 165D and 165F have been released from preemption, as part of release indicators 190.

[0067] In an embodiment, the distributed ledger 120 stores network operator policies that govern the usage of the network resources belonging to different network operators. The management node may adhere to such policies when planning and orchestrating temporary networks. A policy might indicate how to select network resources to be used in a temporary network when there are multiple possible network resources that can be used (e.g., the policymight indicate to select the network resource associated with the lowest (financial) cost). In an embodiment, the distributed ledger 120 stores the rules / algorithm for nominating the master domain manager. The domain managers 140 may follow such rules / algorithm when deciding which domain manager is to be the master domain manager.

[0068] Thus, embodiments can plan and orchestrate a resilient temporary network that can be used to provide network services during emergency situations. An advantage of embodiments is that the management node is able to activate a resilient temporary network as soon as it is needed because the temporary network is pre-planned (e.g., a plan of the temporary network is pre-stored in the distributed ledger). Also, an advantage of embodiments is that the management node can update the resilience parameters that are used for determining the resilience levels of network resources, as needed, and can cause the domain managers to update the resilience levels of the network resources under their respective domains using the updated resilience parameters. This allows the resilience levels stored in the distributed ledger to stay relevant and up-to-date.

[0069] Figure 2 is a diagram showing component interactions for planning a resilient temporary network, according to some embodiments.

[0070] The components involved in the interactions include a management node 200, domain manager 140B, domain manager MOM, and a distributed ledger 120. The management node 200 may be a domain manager 140 that is nominated to be a master domain manager (e.g., domain manager 140A in the example shown in Figure 1) or may be a dedicated orchestrator (e.g., orchestrator 110 in the example shown in Figure 1).

[0071] As shown in the diagram, if the management node 200 detects a triggering event, the management node 200 determines resilience parameters that are to be used for evaluating the resilience levels of network resources. The management node 200 may store the resilience parameters in the distributed ledger 120. The participants of the distributed ledger 120 may verify the resilience parameters using a consensus mechanism before the resilience parameters can be stored in the distributed ledger 120. The triggering event may be receiving a request to update the resilience parameters or an expiration of a timer.

[0072] The management node 200 may send a request to domain manager MOB to update the resilience levels of the network resources under its domain. Responsive to receiving the request, domain manager MOB may send a request to the distributed ledger 120 for the resilience parameters and obtain the resilience parameters from the distributed ledger 120 as a response. Domain manager MOB may then determine the resilience levels of the network resources under its domain (which it is making available for use in temporary networks) using the resilience parameters and store the resilience levels in the distributed ledger 120. For example, domain manager MOB may provide the resilience levels of network resources R1 to R / z under itsdomain, as well as the resilience parameter values that were used to determine the resilience levels of those network resources, to the distributed ledger 120. The participants of the distributed ledger 120 may verify the resilience levels of network resources R1 to R / / using a consensus mechanism before the resilience levels can be stored in the distributed ledger 120 (e.g., verify that the resilience levels have been correctly determined using the correct resilience determination algorithm and using the correct resilience parameter values). The use of the consensus mechanism may help prevent faked records from being stored in the distributed ledger 120 and / or help prevent the unauthorized modification of records stored in the distributed ledger 120. Domain manager MOB may then send an acknowledgement to the management node 200 that it has updated the resilience levels of the network resources under its domain in the distributed ledger 120. The acknowledgement may include the ID of domain manager MOB (e g., domain manager (DM) ID #1). The ID of the domain manager may be any ID that uniquely identifies the domain manager.

[0073] Similarly, the management node 200 may send a request to domain manager MOM to update the resilience levels of the network resources under its domain. Responsive to receiving the request, domain manager MOM may send a request to the distributed ledger 120 for the resilience parameters and obtain the resilience parameters from the distributed ledger 120 as a response. Domain manager MOM may then determine the resilience levels of the network resources under its domain (which it is making available for use in temporary networks) using the resilience parameters and store the resilience levels in the distributed ledger 120. For example, domain manager MOM may provide the resilience levels of network resources R1 to Rz under its domain, as well as the resilience parameter values that were used to determine the resilience levels of those network resources, to the distributed ledger 120. The participants of the distributed ledger 120 may verify the resilience levels of network resources R1 to Rz using a consensus mechanism before the resilience levels can be stored in the distributed ledger 120 (e.g., verify that the resilience levels have been correctly determined using the correct resilience determination algorithm and using the correct resilience parameter values). Domain manager MOM may then send an acknowledgement to the management node 200 that it has updated the resilience levels of the network resources under its domain in the distributed ledger 120. The acknowledgement may include the ID of domain manager MOM (e.g., DM ID #M).

[0074] Subsequently, the management node 200 may send a request to the distributed ledger 120 for information regarding network resources under the domains of various domain managers 140. The request may include the IDs of the domain managers (DM IDs). The management node 200 may obtain, as a response to the request, information regarding network resourcesunder the domains of the respective domain managers, including their resilience levels. For example, the management node 200 may obtain information regarding network resources Rl-R / z that are under the domain of domain manager 140B and information regarding network resources Rl-Rz that are under the domain of domain manager 140M.

[0075] After obtaining the information regarding network resources from the distributed ledger 120, the management node 200 may plan one or more temporary networks based on selecting some of the network resources for use in the temporary network (e.g., based on their resilience levels and possibly other attributes). The management node 200 may then determine the network resilience levels of the temporary networks and determine whether the network resilience levels of the temporary networks meet a resilience requirement. If the network resilience level of a temporary network meets the resilience requirement, the management node 200 may store a plan of the temporary network (e g., which may include a list of network resources that were selected to be used in the temporary network and possibly their configurations). In an embodiment, the plan is stored in the distributed ledger 120. If the network resilience level of a temporary network does not meet the resilience requirement (i.e., the temporary network does not comply with the resilience requirement), the management node 200 may determine which of the network resources that were selected to be used in the temporary network are primary responsible for the network resilience level of the temporary network not meeting the resilience requirement and send a list of these network resources to an administrator or other entity (e g., to allow the administrator or other entity to take remedial action).

[0076] Figure 3 is a flow diagram of a method for planning a temporary network, according to some embodiments.

[0077] At operation 305, the management node determines whether it has received an explicit request to update resilience parameters. If the management node determines that it has received an explicit request to update resilience parameters, the flow moves to operation 315. Otherwise, if the management node determines that it has not received an explicit request to update resilience parameters, at operation 310, the management node determines whether a timer has expired. If the management node determines that the timer has not expired, then the flow moves to operation 305. Otherwise, if the management node determines that the timer has expired, then the flow moves to operation 315. The request to update resilience parameters may be received as a result of the occurrence or predicted occurrence of an emergency situation that could require orchestrating a temporary network to provide network services (e.g., a hostile act of another country (e.g., in this case, the proximity to borders resilience parameter becomes important to include in the resilience level determination), the prediction of a hacker attack, theprediction of an earthquake, or the exhaustion or the difficulty of supplying an energy resource (e.g., methane)).

[0078] At operation 315, the management node determines updated resilience parameters. The resilience parameters may be designed / customized for a particular situation (e.g., the resilience parameters that are relevant for an earthquake might be different from the resilience parameters that are relevant for a hostile act of another country).

[0079] At operation 320, the management node stores the resilience parameters in the distributed ledger.

[0080] At operation 325, the management node sends requests to domain managers to update the resilience levels of the network resources under the respective domains of the domain managers.

[0081] At operation 330, the management node plans a temporary network based on selecting network resources proffered by the domain managers for use in the temporary network.

[0082] At operation 335, the management node determines the network resilience level of the temporary network and determines whether the network resilience level of the temporary network meets the resilience requirement. If the management node determines that the network resilience level of the temporary network does not meet the resilience requirement, at operation 340, the management node reports the non-compliance of the temporary network. Otherwise, if the management node determines that the network resilience level of the temporary network meets the resilience requirement, at operation 345, the management node stores the plan of the temporary network in the distributed ledger for future use.

[0083] Figure 4 is a flow diagram of a method for orchestrating a temporary network, according to some embodiments.

[0084] At operation 405, the management node determines whether a temporary network is to be activated. If the management node determines that a temporary network is not to be activated, then the management node waits until it determines that a temporary network is to be activated. Otherwise, if the management node determines that a temporary network is to be activated, at operation 410, the management node obtains the plan of the temporary network from the distributed ledger.

[0085] At operation 415, the management node determines the network resources that were selected to be used in the temporary network (based on the plan) and sends requests to one or more domain managers to preempt the network resources that were selected to be used in the temporary network so that they can be used in the temporary network.

[0086] At operation 420, the management node activates the temporary network.

[0087] At operation 425, the management node determines whether the temporary network failed. If the management node determines that the temporary network failed, the flow may move to operation 410 so that the management node can start a new temporary network. Otherwise, if the management node has not determined that the temporary network failed, at operation 430, the management node determines whether to deactivate the temporary network. If the management node determines that the temporary network is not to be deactivated yet, the flow moves to operation 425. Otherwise, if the management node determines that the temporary network is to be deactivated, at operation 435, the management node deactivates the temporary network.

[0088] At operation 440, the management node sends requests to the one or more domain managers to release the preempted network resources from preemption.

[0089] Figure 5 is a diagram showing a multi-operator network resource sharing architecture, according to some embodiments.

[0090] The diagram shows a multi-operator network resource sharing architecture, and more specifically, a multi-operator radio access network (MORAN) architecture. As shown in the diagram, network operator A 530A may operate radio access network A 540A. Communication service provider A 520A may provide communication services to communication service customer A 510A using radio network A 540A of network operator A 530A. Thus, communication service provider A 520A may be considered to be a provider of the communication service and communication service customer A 510A may be considered to be a client or customer of communication service provider A 520A.

[0091] Similarly, as shown in the diagram, network operator B 530B may operate radio access network B 540B. Communication service provider B 520B may provide communication services to communication service customer B 510B using radio network B 540B of network operator B 530B. Thus, communication service provider B 520B may be considered to be a provider of the communication service and communication service customer B 510B may be considered to be a client or customer of communication service provider B 520B.

[0092] As shown in the diagram, network operator A 530A may have a domain manager 550A that manages the network resources of radio network A 540A. Similarly, network operator B 530B may have a domain manager 550B that manages the network resources of radio network B 540B.

[0093] Also, as shown in the diagram, a management node 560 may communicate with domain manager 550A and domain manager 550B for the purpose of planning and orchestrating resilient temporary networks during emergency situations, as described herein above. In an embodiment, the management node 560 is a domain manager of a network operator (e.g., anetwork operator that is different from network operator A 530A and network operator B 530B) that was nominated to be the master domain manager. In another embodiment, the management node 560 is a dedicated orchestrator.

[0094] MORAN and multi -operator core network (MOCN) refer to the ability to share physical or virtual network resources among different operators in the RAN and cloud domain. In RAN and / or core network sharing scenarios, the deployment and operation of shared network resources are typically entrusted to a single actor / operator that is commonly referred to as the master operator (MOP). The master operator may provide network and operations, administration, maintenance, and provisioning (OAM&P) services to other operators referred to as participating operators (POPs). A participating operator may be an actor / operator that shares, alongside other participating operators, their network resources (RAN resources and / or core network resources). Typically, the master operator is the only one to have a direct OAM&P connection from its domain manager to the shared network resources. Mobile network sharing according to Third Generation Partnership Project (3GPP) is specified in 3GPP standards including Technical Specification (TS) 23.251, TS 32.130, and Technical Report (TR) 28.825.

[0095] Embodiments may provide a level of abstraction on top of the MORAN and / or MOCN architectures, where each domain manager acts as controller of the allocation of the shared network resources via the usage of smart contracts, blockchain, or alternative database to share network resources for use in temporary networks. Embodiments can be used with MORAN and / or MOCN architectures to maintain a register of available and unavailable (e.g., due to preemption) network resources allocated to the shared pool, and for providing the resilience levels of those shared network resources. In an embodiment, a domain manager of the MOP acts as the master domain manager and the domain managers of POPs act as participating domain managers. For example, the management node 560 may be the domain manager of the MOP and domain managers 550A and 550B may be domain managers of the POPs.

[0096] In a mobile network, the handover or roaming of user equipment (UE) devices to the temporary network can be managed using existing handover / roaming procedures, either at runtime or based on failover methods normally implemented by smart UE devices. The notification of a major network outage and the handover to a temporary network can be implemented and managed according to local regulations.

[0097] Figure 6 is a flow diagram of a method for planning temporary networks, according to some embodiments. In an embodiment, the method is performed by a management node.

[0098] The operations in the flow diagrams will be described with reference to the example embodiments of the other figures. However, it should be understood that the operations of the flow diagrams can be performed by embodiments other than those discussed with reference tothe other figures, and the embodiments discussed with reference to these other figures can perform operations different than those discussed with reference to the flow diagrams.

[0099] While the flow diagrams in the figures show a particular order of operations performed by certain embodiments, it should be understood that such order is provided by way of example and should not be regarded as limiting (e.g., alternative embodiments may perform the operations in a different order, combine certain operations, overlap certain operations, etc.).

[0100] In an embodiment, at operation 605, the management node determines whether a triggering event was detected. If a triggering event was not detected, the management node waits until a triggering event is detected. If a triggering event is detected, the flow moves to operation 610. In an embodiment, the triggering event is receiving a request to update resilience parameters or an expiration of a timer.

[0101] In an embodiment, at operation 610, the management node determines resilience parameters that are to be used for evaluating resilience levels of network resources. In an embodiment, the resilience parameters relate to one or more of: a vulnerability level of a network resource, a disaster risk of a network resource, a network resource’s proximity to borders, a security level of a location of a network resource, and an energy power autonomy level of a network resource.

[0102] In an embodiment, at operation 615, the management node stores the resilience parameters in a distributed ledger that is accessible to a plurality of domain managers.

[0103] In an embodiment, at operation 620, the management node sends a request to each of the plurality of domain managers to update resilience levels of network resources under a domain of the domain manager, wherein each of the plurality of domain managers is to determine resilience levels of the network resources under the domain of the domain manager using a shared resilience determination algorithm and the resilience parameters stored in the distributed ledger and store the determined resilience levels in the distributed ledger responsive to receiving the request.

[0104] At operation 625, the management node obtains, from the distributed ledger, information regarding the network resources under the domains of the plurality of domain managers, including the resilience levels of the network resources under the domains of the plurality of domain managers. In an embodiment, the network resources under the domains of the plurality of domain managers include one or more of: RAN resources and core network resources.

[0105] At operation 630, the management node plans one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domainmanagers (e.g., based on the resilience levels of the network resources and possibly other attributes).

[0106] At operation 635, the management node determines network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources. In an embodiment, the network resilience level of a given one of the one or more temporary networks is determined based on multiplying resilience levels of the one or more network resources that were selected to be used in the given temporary network. In an embodiment, each of the resilience levels of the one or more network resources that were selected to be used in the given temporary network is weighted by an exponential factor when being multiplied.

[0107] Operations 640-650 may be performed for each of the one or more temporary networks.

[0108] At operation 640, the management node determines whether the network resilience level of the temporary network meets a predefined resilience requirement. If the network resilience level of the temporary network meets the predefined resilience requirement, the flow moves to operation 645, at which the management node stores a plan of the temporary network (e.g., in the distributed ledger) for future use. Otherwise, if the network resilience level of the temporary network does not meet the predefined resilience requirement, the flow moves to operation 650, at which the management node takes remedial action. For example, the management node may revise the plan of the temporary network so that its network resilience level meets the resilience requirement.

[0109] In an embodiment, the management node is a domain manager that is nominated to act as a master domain manager for the plurality of domain managers and other domain managers are nominated to act as participating domain managers as a result of participating in a nomination process. In an embodiment, the management node, which is the domain manager that is nominated to act as the master domain manager, distributes the shared resilience determination algorithm to the domain managers that are nominated to act as participating domain managers to cause the domain managers that are nominated to act as participating domain managers to use the shared resilience determination algorithm to update the resilience levels of the network resources under their respective domains in the distributed ledger.

[0110] In an embodiment, responsive to detecting another triggering event, the management node determines different resilience parameters that are to be used for evaluating resilience levels of network resources (resilience parameters that are different from the resilience parameters determined at operation 610) and stores the different resilience parameters in the distributed ledger. In an embodiment, the resilience parameters and the different resilienceparameters are designed to increase an availability of the one or more temporary networks during particular situations.

[0111] Figure 7 is a flow diagram of a method for orchestrating a temporary network, according to some embodiments. In an embodiment, the method is performed by a management node.

[0112] At operation 705, the management node determines whether a temporary network is to be activated. If a temporary network is not to be activated, the management node waits until a temporary network is to be activated. Otherwise, if a temporary network is to be activated, the flow moves to operation 710.

[0113] At operation 710, the management node obtains a plan of the temporary network (e.g., from a distributed ledger).

[0114] At operation 715, the management node determines one or more network resources that were selected to be used in the temporary network that is to be activated (e.g., based on the plan of the temporary network).

[0115] At operation 720, the management node sends one or more requests to one or more of the plurality of domain managers to preempt the one or more network resources that were selected to be used in the temporary network so that the one or more network resources can be used in the temporary network.

[0116] At operation 725, the management node activates the temporary network.

[0117] At operation 730, the management node determines whether the temporary network is to be deactivated. If the temporary network is not to be deactivated, the management node waits until the temporary network is to be deactivated. Otherwise, if the temporary network is to be deactivated, the flow moves to operation 735.

[0118] At operation 735, the management node deactivates the temporary network.

[0119] At operation 740, the management node sends one or more requests to the one or more of the plurality of domain managers to release the one or more preempted network resources from preemption.

[0120] Figure 8 is a diagram showing an example of a communication system, according to some embodiments.

[0121] In the example, the communication system 800 includes a telecommunication network 802 that includes an access network 804, such as a radio access network (RAN), and a core network 806, which includes one or more core network nodes 808. The access network 804 includes one or more access network nodes, such as network nodes 810a and 810b (one or more of which may be generally referred to as network nodes 810), or any other similar 3rdGeneration Partnership Project (3GPP) access nodes or non-3GPP access points. Moreover, as will beappreciated by those of skill in the art, a network node is not necessarily limited to an implementation in which a radio portion and a baseband portion are supplied and integrated by a single vendor. Thus, it will be understood that network nodes include disaggregated implementations or portions thereof. For example, in some embodiments, the telecommunication network 802 includes one or more Open-RAN (ORAN) network nodes. An ORAN network node is a node in the telecommunication network 802 that supports an ORAN specification (e.g., a specification published by the O-RAN Alliance, or any similar organization) and may operate alone or together with other nodes to implement one or more functionalities of any node in the telecommunication network 802, including one or more network nodes 810 and / or core network nodes 808.

[0122] Examples of an ORAN network node include an open radio unit (O-RU), an open distributed unit (O-DU), an open central unit (O-CU), including an O-CU control plane (O-CU- CP) or an O-CU user plane (O-CU-UP), a RAN intelligent controller (near-real time or non-real time) hosting software or software plug-ins, such as a near-real time control application (e.g., xApp) or a non-real time control application (e.g., rApp), or any combination thereof (the adjective “open” designating support of an ORAN specification). The network node may support a specification by, for example, supporting an interface defined by the ORAN specification, such as an Al, Fl, Wl, El, E2, X2, Xn interface, an open fronthaul user plane interface, or an open fronthaul management plane interface. Moreover, an ORAN access node may be a logical node in a physical node. Furthermore, an ORAN network node may be implemented in a virtualization environment (described further below) in which one or more network functions are virtualized. For example, the virtualization environment may include an O-Cloud computing platform orchestrated by a Service Management and Orchestration Framework via an O-2 interface defined by the O-RAN Alliance or comparable technologies. The network nodes 810 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs 812a, 812b, 812c, and 812d (one or more of which may be generally referred to as UEs 812) to the core network 806 over one or more wireless connections.

[0123] Example wireless communications over a wireless connection include transmitting and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system 800 may include any number of wired or wireless networks, network nodes, UEs, and / or any other components or systems that may facilitate or participate in the communication of data and / or signals whether via wired or wireless connections. The communication system 800 mayinclude and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.

[0124] The UEs 812 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and / or operable to communicate wirelessly with the network nodes 810 and other communication devices. Similarly, the network nodes 810 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs 812 and / or with other network nodes or equipment in the telecommunication network 802 to enable and / or provide network access, such as wireless network access, and / or to perform other functions, such as administration in the telecommunication network 802.

[0125] In the depicted example, the core network 806 connects the network nodes 810 to one or more host computing systems, such as host 816. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network 806 includes one more core network nodes (e.g., core network node 808) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and / or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node 808. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription Identifier De-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and / or a User Plane Function (UPF).

[0126] The host 816 may be under the ownership or control of a service provider other than an operator or provider of the access network 804 and / or the telecommunication network 802. The host 816 may host a variety of applications to provide one or more services. Examples of such applications include live and pre-recorded audio / video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.

[0127] As a whole, the communication system 800 of Figure 8 enables connectivity between the UEs, network nodes, and hosts. In that sense, the communication system may be configured to operate according to predefined rules or procedures, such as specific standards that include, but are not limited to: Global System for Mobile Communications (GSM); Universal MobileTelecommunications System (UMTS); Long Term Evolution (LTE), and / or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); wireless local area network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards (WiFi); and / or any other appropriate wireless communication standard, such as the Worldwide Interoperability for Microwave Access (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and / or any low-power wide-area network (LPWAN) standards such as LoRa and Sigfox.

[0128] In some examples, the telecommunication network 802 is a cellular network that implements 3 GPP standardized features. Accordingly, the telecommunications network 802 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 802. For example, the telecommunications network 802 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and / or Massive Machine Type Communication (mMTC) / Massive loT services to yet further UEs.

[0129] In some examples, the UEs 812 are configured to transmit and / or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network 804 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 804. Additionally, a UE may be configured for operating in single- or multi -RAT or multi-standard mode. For example, a UE may operate with any one or combination of Wi-Fi, NR (New Radio) and LTE, i.e. being configured for multi-radio dual connectivity (MR-DC), such as E-UTRAN (Evolved-UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).

[0130] In the example, the hub 814 communicates with the access network 804 to facilitate indirect communication between one or more UEs (e.g., UE 812c and / or 812d) and network nodes (e.g., network node 810b). In some examples, the hub 814 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 814 may be a broadband router enabling access to the core network 806 for the UEs. As another example, the hub 814 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes 810, or by executable code, script, process, or other instructions in the hub 814. As another example, the hub 814 may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub 814 may be a content source. For example, for a UE that is a Virtual Reality (VR) device, display, loudspeaker, or other media delivery device, the hub 814 may retrieve VR assets, video, audio, or other media or data related tosensory information via a network node, which the hub 814 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub 814 acts as a proxy server or orchestrator for the UEs, in particular if one or more of the UEs are low energy loT devices.

[0131] The hub 814 may have a constant / persistent or intermittent connection to the network node 810b. The hub 814 may also allow for a different communication scheme and / or schedule between the hub 814 and UEs (e.g., UE 812c and / or 812d), and between the hub 814 and the core network 806. In other examples, the hub 814 is connected to the core network 806 and / or one or more UEs via a wired connection. Moreover, the hub 814 may be configured to connect to a machine to machine (M2M) service provider over the access network 804 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 810 while still connected via the hub 814 via a wired or wireless connection. In some embodiments, the hub 814 may be a dedicated hub - that is, a hub whose primary function is to route communications to / from the UEs from / to the network node 810b. In other embodiments, the hub 814 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 810b, but which is additionally capable of operating as a communication start and / or end point for certain data channels.

[0132] The telecommunication network 802 may be an example of a network 150 that includes network resources that can be shared / proffered for use in temporary networks.

[0133] Figure 9 is a diagram showing a UE, according to some embodiments. The UE 900 presents additional details of some embodiments of the UE 812 of Figure 8. As used herein, a UE refers to a device capable, configured, arranged and / or operable to communicate wirelessly with network nodes and / or other UEs. Examples of a UE include, but are not limited to, a smart phone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage / playback device, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), an Augmented Reality (AR) or Virtual Reality (VR) device, wireless customer-premise equipment (CPE), vehicle, vehicle-mounted or vehicle embedded / integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

[0134] A UE may support device-to-device (D2D) communication, for example by implementing a 3 GPP standard for sidelink communication, Dedicated Short-RangeCommunication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle- to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and / or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller). Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).

[0135] The UE 900 includes processing circuitry 902 that is operatively coupled via a bus 904 to an input / output interface 906, a power source 908, a memory 910, a communication interface 912, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in Figure 9 The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.

[0136] The processing circuitry 902 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory 910. The processing circuitry 902 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field- programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry 902 may include multiple central processing units (CPUs).

[0137] In the example, the input / output interface 906 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and / or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE 900. Examples of an input device include a touch-sensitive or presence-sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or anycombination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.

[0138] In some embodiments, the power source 908 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source 908 may further include power circuitry for delivering power from the power source 908 itself, and / or an external power source, to the various parts of the UE 900 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source 908. Power circuitry may perform any formatting, converting, or other modification to the power from the power source 908 to make the power suitable for the respective components of the UE 900 to which power is supplied.

[0139] The memory 910 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable readonly memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory 910 includes one or more application programs 914, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data 916. The memory 910 may store, for use by the UE 900, any of a variety of various operating systems or combinations of operating systems.

[0140] The memory 910 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital data storage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and / or ISIM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as ‘ SIM card.’ The memory 910 may allow the UE 900 to access instructions, application programs and the like, stored on transitory or non-transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory 910, which may be or comprise a device-readable storage medium.

[0141] The processing circuitry 902 may be configured to communicate with an access network or other network using the communication interface 912. The communication interface 912 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna 922. The communication interface 912 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter 918 and / or a receiver 920 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter 918 and receiver 920 may be coupled to one or more antennas (e.g., antenna 922) and may share circuit components, software or firmware, or alternatively be implemented separately.

[0142] In the illustrated embodiment, communication functions of the communication interface 912 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short- range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and / or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol / intemet protocol (TCP / IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.

[0143] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface 912, via a wireless connection to a network node. Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).

[0144] As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts thecontrol surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.

[0145] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door / window sensor, a flood / moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an loT device comprises circuitry and / or software in dependence of the intended application of the loT device in addition to other components as described in relation to the UE 900 shown in Figure 9.

[0146] As yet another specific example, in an loT scenario, a UE may represent a machine or other device that performs monitoring and / or measurements, and transmits the results of such monitoring and / or measurements to another UE and / or a network node. The UE may in this case be an M2M device, which may in a 3 GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3 GPP NB-IoT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipment that is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

[0147] In practice, any number of UEs may be used together with respect to a single use case. For example, a first UE might be or be integrated in a drone and provide the drone’s speed information (obtained through a speed sensor) to a second UE that is a remote controller operating the drone. When the user makes changes from the remote controller, the first UE may adjust the throttle on the drone (e.g., by controlling an actuator) to increase or decrease the drone’s speed. The first and / or the second UE can also include more than one of the functionalities described above. For example, a UE might comprise the sensor and the actuator, and handle communication of data for both the speed sensor and the actuators.

[0148] Figure 10 is a diagram showing a network node, according to some embodiments. As used herein, network node refers to equipment capable, configured, arranged and / or operable to communicate directly or indirectly with a UE and / or with other network nodes or equipment, in a telecommunication network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points), base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs) and NRNodeBs (gNBs)), O-RAN nodes or components of an 0-RAN node (e.g., O-RU, 0-DU, O-CU).

[0149] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units, distributed units (e g., in an O-RAN access node) and / or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).

[0150] Other examples of network nodes include multiple transmission point (multi-TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi-cell / multicast coordination entities (MCEs), Operation and Maintenance (O&M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and / or Minimization of Drive Tests (MDTs).

[0151] The network node 1000 includes a processing circuitry 1002, a memory 1004, a communication interface 1006, and a power source 1008. The network node 1000 may be composed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node 1000 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node 1000 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 1004 for different RATs) and somecomponents may be reused (e g., a same antenna 1010 may be shared by different RATs). The network node 1000 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 1000, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node 1000.

[0152] The processing circuitry 1002 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and / or encoded logic operable to provide, either alone or in conjunction with other network node 1000 components, such as the memory 1004, to provide network node 1000 functionality.

[0153] In some embodiments, the processing circuitry 1002 includes a system on a chip (SOC). In some embodiments, the processing circuitry 1002 includes one or more of radio frequency (RF) transceiver circuitry 1012 and baseband processing circuitry 1014. In some embodiments, the radio frequency (RF) transceiver circuitry 1012 and the baseband processing circuitry 1014 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry 1012 and baseband processing circuitry 1014 may be on the same chip or set of chips, boards, or units.

[0154] The memory 1004 may comprise any form of volatile or non-volatile computer- readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and / or any other volatile or non-volatile, non-transitory device-readable and / or computer-executable memory devices that store information, data, and / or instructions that may be used by the processing circuitry 1002. The memory 1004 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry 1002 and utilized by the network node 1000. The memory 1004 may be used to store any calculations made by the processing circuitry 1002 and / or any data received via the communication interface 1006. In some embodiments, the processing circuitry 1002 and memory 1004 is integrated.

[0155] The communication interface 1006 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, thecommunication interface 1006 comprises port(s) / terminal(s) 1016 to send and receive data, for example to and from a network over a wired connection. The communication interface 1006 also includes radio front-end circuitry 1018 that may be coupled to, or in certain embodiments a part of, the antenna 1010. Radio front-end circuitry 1018 comprises filters 1020 and amplifiers 1022. The radio front-end circuitry 1018 may be connected to an antenna 1010 and processing circuitry 1002. The radio front-end circuitry may be configured to condition signals communicated between antenna 1010 and processing circuitry 1002. The radio front-end circuitry 1018 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry 1018 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 1020 and / or amplifiers 1022. The radio signal may then be transmitted via the antenna 1010. Similarly, when receiving data, the antenna 1010 may collect radio signals which are then converted into digital data by the radio front-end circuitry 1018. The digital data may be passed to the processing circuitry 1002. In other embodiments, the communication interface may comprise different components and / or different combinations of components.

[0156] In certain alternative embodiments, the network node 1000 does not include separate radio front-end circuitry 1018, instead, the processing circuitry 1002 includes radio front-end circuitry and is connected to the antenna 1010. Similarly, in some embodiments, all or some of the RF transceiver circuitry 1012 is part of the communication interface 1006. In still other embodiments, the communication interface 1006 includes one or more ports or terminals 1016, the radio front-end circuitry 1018, and the RF transceiver circuitry 1012, as part of a radio unit (not shown), and the communication interface 1006 communicates with the baseband processing circuitry 1014, which is part of a digital unit (not shown).

[0157] The antenna 1010 may include one or more antennas, or antenna arrays, configured to send and / or receive wireless signals. The antenna 1010 may be coupled to the radio front-end circuitry 1018 and may be any type of antenna capable of transmitting and receiving data and / or signals wirelessly. In certain embodiments, the antenna 1010 is separate from the network node 1000 and connectable to the network node 1000 through an interface or port.

[0158] The antenna 1010, communication interface 1006, and / or the processing circuitry 1002 may be configured to perform any receiving operations and / or certain obtaining operations described herein as being performed by the network node. Any information, data and / or signals may be received from a UE, another network node and / or any other network equipment. Similarly, the antenna 1010, the communication interface 1006, and / or the processing circuitry 1002 may be configured to perform any transmitting operations describedherein as being performed by the network node. Any information, data and / or signals may be transmitted to a UE, another network node and / or any other network equipment.

[0159] The power source 1008 provides power to the various components of network node 1000 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 1008 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 1000 with power for performing the functionality described herein. For example, the network node 1000 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source 1008. As a further example, the power source 1008 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.

[0160] Embodiments of the network node 1000 may include additional components beyond those shown in Figure 10 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and / or any functionality necessary to support the subject matter described herein. For example, the network node 1000 may include user interface equipment to allow input of information into the network node 1000 and to allow output of information from the network node 1000. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 1000. In some embodiments providing a core network node, such as core network node 808 of FIG. 8, some components, such as the radio front-end circuitry 1018 and the RF transceiver circuitry 1012 may be omitted.

[0161] Figure 11 is a block diagram showing a virtualization environment 1100 in which functions implemented by some embodiments may be virtualized. In the present context, virtualizing means creating virtual versions of apparatuses or devices which may include virtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments 1100 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized. In some embodiments, the virtualizationenvironment 1100 includes components defined by the O-RAN Alliance, such as an O-Cloud environment orchestrated by a Service Management and Orchestration Framework via an 0-2 interface. Virtualization may facilitate distributed implementations of a network node, UE, core network node, or host.

[0162] Applications 1102 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment 1100 to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein.

[0163] Hardware 1104 includes processing circuitry, memory that stores software and / or instructions executable by hardware processing circuitry, and / or other hardware devices as described herein, such as a network interface, input / output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers 1106 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 1108a and 1108b (one or more of which may be generally referred to as VMs 1108), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein. The virtualization layer 1106 may present a virtual operating platform that appears like networking hardware to the VMs 1108.

[0164] The VMs 1108 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 1106. Different embodiments of the instance of a virtual appliance 1102 may be implemented on one or more of VMs 1108, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.

[0165] In the context of NFV, a VM 1108 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs 1108, and that part of hardware 1104 that executes that VM, be it hardware dedicated to that VM and / or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs 1108 on top of the hardware 1104 and corresponds to the application 1102.

[0166] Hardware 1104 may be implemented in a standalone network node with generic or specific components. Hardware 1104 may implement some functions via virtualization. Alternatively, hardware 1104 may be part of a larger cluster of hardware (e.g., such as in a datacenter or CPE) where many hardware nodes work together and are managed via management and orchestration 1110, which, among others, oversees lifecycle management of applications 1102. In some embodiments, hardware 1104 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system 1112 which may alternatively be used for communication between hardware nodes and radio units.

[0167] Although the computing devices described herein (e.g., UEs, network nodes) may include the illustrated combination of hardware components, other embodiments may comprise computing devices with different combinations of components. It is to be understood that these computing devices may comprise any suitable combination of hardware and / or software needed to perform the tasks, features, functions and methods disclosed herein. Determining, calculating, obtaining or similar operations described herein may be performed by processing circuitry, which may process information by, for example, converting the obtained information into other information, comparing the obtained information or converted information to information stored in the network node, and / or performing one or more operations based on the obtained information or converted information, and as a result of said processing making a determination. Moreover, while components are depicted as single boxes located within a larger box, or nested within multiple boxes, in practice, computing devices may comprise multiple different physical components that make up a single illustrated component, and functionality may be partitioned between separate components. For example, a communication interface may be configured to include any of the components described herein, and / or the functionality of the components may be partitioned between the processing circuitry and the communication interface. In another example, non-computationally intensive functions of any of such components may be implemented in software or firmware and computationally intensive functions may be implemented in hardware.

[0168] Figure 12 is a diagram showing examples of how a ND 1200 (e.g., a network device that can implement a management node and / or domain manager) may be implemented in certain embodiments of the described solution including: 1) a special-purpose network device 1202 that uses custom processing circuits such as application-specific integrated-circuits (ASICs) and a proprietary operating system (OS); and 2) a general purpose network device 1204 that usescommon off-the-shelf (COTS) processors and a standard OS which has been configured to provide one or more of the features or functions disclosed herein.

[0169] Special-purpose network device 1202 includes hardware 1210 comprising processor(s) 1212, and interface 1216, as well as memory 1218 having stored therein software 1220. In one embodiment, the software 1220 implements the modules described with regard to the previous figures. During operation, the software 1220 may be executed by the hardware 1210 to instantiate a set of one or more software instance(s) 1222. Each of the software instance(s) 1222, and that part of the hardware 1210 that executes that software instance (be it hardware dedicated to that software instance, hardware in which a portion of available physical resources (e g., a processor core) is used, and / or time slices of hardware temporally shared by that software instance with others of the software instance(s) 1222), form a separate virtual network element 1230A-R. Thus, in the case where there are multiple virtual network elements 1230A-R, each operates as one of the network devices from the preceding figures.

[0170] In an embodiment, software 1220 includes a management node module, which when executed by hardware 1210, causes the special-purpose network device 1202 to perform operations of a management node described herein above. Additionally or alternatively, in an embodiment, software 1220 includes a domain manager module, which when executed by hardware 1210, causes the special-purpose network device 1202 to perform operations of a domain manager described herein above.

[0171] Returning to Figure 12, the example general purpose network device 1204 includes hardware 1240 comprising a set of one or more processor(s) 1242 (which are often COTS processors) and interface 1246, as well as memory 1248 having stored therein software 1250. During operation, the processor(s) 1242 execute the software 1250 to instantiate one or more sets of one or more applications 1264A-R. While certain embodiments do not implement virtualization, alternative embodiments may use different forms of virtualization. For example, in certain alternative embodiments virtualization layer 1254 represents the kernel of an operating system (or a shim executing on a base operating system) that allows for the creation of multiple instances 1262A-R called software containers that may each be used to execute one (or more) of the sets of applications 1264A-R. In this embodiment, software containers 1262A-R (also called virtualization engines, virtual private servers, or jails) are user spaces (typically a virtual memory space) that may be separate from each other and separate from the kernel space in which the operating system is run. In certain embodiments, the set of applications running in a given user space, unless explicitly allowed, may be prevented from accessing the memory of the other processes. In other such alternative embodiments virtualization layer 1254 may representa hypervisor (sometimes referred to as a virtual machine monitor (VMM)) or a hypervisor executing on top of a host operating system; and each of the sets of applications 1264A-R may run on top of a guest operating system within an instance 1262A-R called a virtual machine (which in some cases may be considered a tightly isolated form of software container that is run by the hypervisor). In certain embodiments, one, some or all of the applications are implemented as unikemel(s), which can be generated by compiling directly with an application only a limited set of libraries (e.g., from a library operating system (LibOS) including drivers / libraries of OS services) that provide the particular OS services needed by the application. .As a unikemel can be implemented to run directly on hardware 1240, directly on a hypervisor (in which case the unikernel is sometimes described as running within a LibOS virtual machine), or in a software container, embodiments can be implemented fully with unikernels running directly on a hypervisor represented by virtualization layer 1254, unikernels running within software containers represented by instances 1262A-R, or as a combination of unikernels and the above-described techniques (e.g., unikemels and virtual machines both run directly on a hypervisor, unikernels and sets of applications that are run in different software containers).

[0172] The instantiation of the one or more sets of one or more applications 1264A-R, as well as virtualization if implemented are collectively referred to as software instance(s) 1252. Each set of applications 1264A-R, corresponding virtualization construct (e.g., instance 1262A- R) if implemented, and that part of the hardware 1240 that executes them (be it hardware dedicated to that execution and / or time slices of hardware temporally shared by software containers 1262A-R), forms a separate virtual network element(s) 1260A-R.

[0173] The virtual network element(s) 1260A-R perform similar functionality to the virtual network element(s) 1230A-R. This virtualization of the hardware 1240 is sometimes referred to as network function virtualization (NFV)). Thus, NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which could be located in for example data centers and customer premise equipment (CPE). However, different embodiments may implement one or more of the software container(s) 1262A-R differently. While embodiments are illustrated with each instance 1262A-R corresponding to one VNE 1260A-R, alternative embodiments may implement this correspondence at a finer level granularity; it should be understood that the techniques described herein with reference to a correspondence of instances 1262A-R to VNEs also apply to embodiments where such a finer level of granularity and / or unikernels are used.

[0174] In an embodiment, software 1250 includes a management node module, which when executed by hardware 1240, causes the general -purpose network device 1204 to performoperations of a management node described herein above. Additionally or alternatively, in an embodiment, software 1250 includes a domain manager module, which when executed by hardware 1240, causes the general-purpose network device 1204 to perform operations of a domain manager described herein above.

[0175] The third exemplary ND implementation in Figure 12 is a hybrid network device 1206, which includes both custom ASICs / proprietary OS and COTS processors / standard OS in a single ND or a single card within an ND. In certain embodiments of such a hybrid network device, a platform virtual machine (VM), such as a VM that that implements the functionality of the special -purpose network device 1202, could provide for para-virtualization to the hardware present in the hybrid network device 1206.

[0176] Some portions of the preceding detailed descriptions have been presented in terms of algorithms and symbolic representations of transactions on data bits within a computer memory These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consi stent sequence of transactions leading to a desired result. The transactions are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.

[0177] It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the above discussion, it is appreciated that throughout the description, discussions utilizing terms such as "processing" or "computing" or "calculating" or "determining" or "displaying" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.

[0178] The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method transactions. The required structure for a variety of these systems will appear from the description above. In addition, embodiments arenot described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of embodiments as described herein.

[0179] In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer- readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer- readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and / or by end users and a wireless network generally.

[0180] An embodiment may be an article of manufacture in which a non-transitory machine- readable storage medium (such as microelectronic memory) has stored thereon instructions (e g., computer code) which program one or more data processing components (generically referred to here as a “processor”) to perform the operations described above. In other embodiments, some of these operations might be performed by specific hardware components that contain hardwired logic (e.g., dedicated digital filter blocks and state machines). Those operations might alternatively be performed by any combination of programmed data processing components and fixed hardwired circuit components.

[0181] Throughout the description, embodiments have been presented through flow diagrams. It will be appreciated that the order of transactions and transactions described in these flow diagrams are only intended for illustrative purposes and not intended to be limiting. One having ordinary skill in the art would recognize that variations can be made to the flow diagrams.

[0182] In the foregoing specification, embodiments have been described with reference to specific exemplary embodiments thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of the disclosure provided herein. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.

Claims

CLAIMSWhat is claimed is:

1. A method performed by a management node to plan one or more temporary networks that use network resources that are under domains of a plurality of domain managers, the method comprising: obtaining (625), from a distributed ledger that is accessible to the plurality of domain managers, information regarding the network resources under the domains of the plurality of domain managers, including resilience levels of the network resources under the domains of the plurality of domain managers; planning (630) the one or more temporary networks based on selecting one or more of the network resources under the domains of the plurality of domain managers; determining (635) network resilience levels of the one or more temporary networks based on the resilience levels of the selected one or more network resources; and determining (640) whether the network resilience levels of the one or more temporary networks meet a predefined resilience requirement.

2. The method of claim 1, further comprising: responsive to a determination that the network resilience level of a given one of the one or more temporary networks meets the resilience requirement, storing (645) a plan of the given network for future use.

3. The method of claim 1, wherein plans of the one or more temporary networks are stored in the distributed ledger.

4. The method of claim 1, further comprising: responsive to a determination (730) that a given one of the one or more temporary network is to be activated, obtaining (710) a plan of the given temporary network; determining (715) the one or more network resources that were selected to be used in the given temporary network that is to be activated; sending (720) one or more requests to one or more of the plurality of domain managers to preempt the one or more network resources that were selected to be used in the given temporary network so that the one or more network resources can be used in the temporary network; and activating (725) the given temporary network.

5. The method of claim 4, further comprising: responsive to a determination (730) that the given temporary network is to be deactivated, deactivating (735) the given temporary network and sending (740) one or more requests to the one or more of the plurality of domain managers to release the one or more preempted network resources from preemption.

6. The method of claim 1, wherein the management node is a domain manager that is nominated to act as a master domain manager for the plurality of domain managers and other domain managers are nominated to act as participating domain managers as a result of participating in a nomination process.

7. The method of claim 6, wherein the management node, which is the domain manager that is nominated to act as the master domain manager, distributes a resilience determination algorithm to the domain managers that are nominated to act as participating domain managers to cause the domain managers that are nominated to act as participating domain managers to use the resilience determination algorithm to update the resilience levels of the network resources under their respective domains in the distributed ledger.

8. The method of claim 1, further comprising: responsive to detecting a triggering event (605), determining (610) resilience parameters that are to be used for evaluating resilience levels of network resources and storing (615) the resilience parameters in the distributed ledger; and sending (620) a request to each of the plurality of domain managers to update resilience levels of network resources under the domain of the domain manager, wherein each of the plurality of domain managers is to determine resilience levels of the network resources under the domain of the domain manager using a shared resilience determination algorithm and the resilience parameters stored in the distributed ledger and store the determined resilience levels in the distributed ledger responsive to receiving the request.

9. The method of claim 8, wherein the resilience parameters relate to one or more of: a vulnerability level of a network resource, a disaster risk of a network resource, a network resource’s proximity to borders, a security level of a location of a network resource, and an energy power autonomy level of a network resource.

10. The method of claim 8, further comprising: responsive to detecting another triggering event, determining different resilience parameters that are to be used for evaluating resilience levels of network resources and storing the different resilience parameters in the distributed ledger.

11. The method of claim 10, wherein the resilience parameters and the different resilience parameters are designed to increase an availability of the one or more temporary networks during particular situations.

12. The method of any one of claims 8-11, wherein the triggering event is receiving a request to update resilience parameters or an expiration of a timer.

13. The method of claim 1, wherein the network resilience level of a given one of the one or more temporary networks is determined based on multiplying resilience levels of the one or more network resources that were selected to be used in the given temporary network.

14. The method of claim 13, wherein each of the resilience levels of the one or more network resources that were selected to be used in the given temporary network is weighted by an exponential factor when being multiplied.

15. The method of claim 1, wherein the network resources under the domains of the plurality of domain managers include one or more of: radio access network (RAN) resources and core network resources.

16. A non-transitory machine-readable medium comprising computer program code which when executed by a network device implementing a management node carries out the method steps of any of claims 1-15.

17. A network device (1204) to implement a management node, the network device comprising: one or more processors (1242); and a non-transitory machine-readable storage medium (1248) that stores instructions, which when executed by the one or more processors, causes the network device to perform the method steps of any one of claims 1-15.

Citation Information

Patent Citations

  • Agent for determining and sharing sturdiness levels of network resources in a secure manner

    WO2024263072A1

  • Technologies for dynamically managing the reliability of disaggregated resources in a managed node

    US20180150343A1