Method and apparatus for testing

AU2025223584A1Pending Publication Date: 2026-08-20TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
AU2025223584
Authority / Receiving Office
AU · AU
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-18
Filing Date
2025-01-29
Publication Date
2026-08-20

AI Technical Summary

Technical Problem

Existing testing solutions for new features in communication networks, such as 5GS, face issues with complexity and indeterministic selection of network functions during canary testing, especially when maintaining a fully operative network function during upgrades and requiring deterministic selection.

Method used

A method for network nodes to obtain and select network nodes based on profiles indicating suitability for both testing and normal service, using a canary test indication and network repository functions to manage network function instances, ensuring deterministic selection.

Benefits of technology

This approach simplifies network management by maintaining existing sessions and avoiding unnecessary complexity, allowing for deterministic selection of network nodes for testing, thus meeting customer expectations and reducing operational challenges.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide method and apparatus for testing. A method performed by a first network node may comprise obtaining a profile of a third network node. The method further comprises, if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, selecting the third network node.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR TESTINGTECHNICAL FIELD

[0001] The non-limiting and exemplary embodiments of the present disclosure generally relate to the technical field of communications, and specifically to methods and apparatuses for testing.BACKGROUND

[0002] This section introduces aspects that may facilitate a better understanding of the disclosure. Accordingly, the statements of this section are to be read in this light and are not to be understood as admissions about what is in the prior art or what is not in the prior art.

[0003] In communication networks such as fifth generation system (5GS) as defined by 3rd Generation Partnership Project (3GPP), a new feature (e.g. software feature) may be tested in a small scale before its large-scale deployment. For example, Annex D of 3GPP TS 29.510 V18.5.0, the disclosure of which is incorporated by reference herein in its entirety, describes Support of "Canary Release" testing in the Network Repository Function (NRF).SUMMARY

[0004] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

[0005] There may be some issues for the existing testing solutions such as the solution described in Annex D of 3GPP TS 29.510 V18.5.0.

[0006] Annex D of 3GPP TS 29.510 V18.5.0 contains the following Editor's Note that needs to be addressed.

[0007] Editor's Note: It is for future study (FFS) to consider if a more detailed description is needed of the scenario where an NF instance is intended to be fully operational and, at the same time, be able to "canary test" some of its services.

[0008] The scenario that the Editor's Note refers to, is based on the request by operators to be able to maintain an NF as "selectable" by existing consumers, and to be fully operative, while simultaneously to be able to control the traffic sent to the instance to test new features.

[0009] The Annex D of 3GPP TS 29.510 V18.5.0 indicates one way to address this scenario, where the NF instance can deploy multiple service instances, and some of them can be kept witha "REGISTERED" status, while other NF instances can be set their status to "CANARY RELEASE" value.

[0010] However, the deployment of multiple service instances is not always desirable. For example, some customers would like to keep a logical network function (NF) fully operative also during upgrade (i.e., In-Service Software Upgrade (ISSU)) and to not put the logical NF into quarantine. It means that the scenario of Canary Test on an upgraded NF fully operative (keep serving traffic to any consumer) needs to be used.

[0011] FIG. la shows an example of a scenario of canary test on an upgraded NF fully operative (keep serving traffic to any consumer). Though only two NF service instances are shown in FIG. la, there may be any other suitable number of NF service instances in other embodiments. Though Session Management Function (SMF) is shown in FIG. la, there may be any other suitable NF in other embodiments.

[0012] As shown in FIG. la, the left figure shows NF service instance before upgrade, i.e., SMF-1 : SMF-Instance-1. The right figure shows NF service instances after upgrade, i.e., SMF-1 : SMF-Instance-1 and SMF-Instance-2.

[0013] SMF-1 is upgraded to a new software (SW) version and added a new NF service instance with Status “CANARY RELEASE”. The original service instance is still kept as “REGISTERED” serving existing sessions and legacy traffic. The new canary service instance is subject to canary test based on at least one selected condition.

[0014] The information for Service Instance 1 may be as below:

[0015] servicelnstanceld: smf-srvinst-01

[0016] serviceName: nsmf-pdusession

[0017] NFServiceStatus: “REGISTERED”

[0018] The information for Service Instance 2 may be as below:

[0019] servicelnstanceld: smf-srvinst-02

[0020] serviceName: nsmf-pdusession

[0021] NFServiceStatus: “CANARY RELEASE”

[0022] selectionconditions: [feature, SUPI range. . . ]

[0023] SUPI denotes Subscription Permanent Identifier.

[0024] This however introduces some negative consequences like unnecessary complexity and a model which is very difficult to maintain. For example, it is over complicated (e.g. read unpredictable and / or error prone) to have service instance- 1 running on an old software version and service instance-2 running on a new software version with new feature(s) activated.

[0025] Additionally, the Geo-Redundancy solution, based on NF (service) Set, may be very complex to manage by adding / removing temporary service instances.

[0026] Additionally, the selection of NF producer is indeterministic. As described in Annex D of 3GPP TS 29.510 V18.5.0, if multiple candidate producers are available with NF (Service) status set to "REGISTERED" or "CANARY RELEASE", the consumer shall preferably select a producer in "CANARY RELEASE" status. The “preferably select” may cause the selection of NF producer is indeterministic. No automated solution can be created as long as the NF selection is not always deterministic.

[0027] To overcome or mitigate at least one of above mentioned issues or other issues, the embodiments of the present disclosure propose an improved solution for testing.

[0028] In a first aspect of the disclosure, there is provided a method performed by a first network node. The method may comprise obtaining a profile of a third network node. The method may comprise, if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, selecting the third network node.

[0029] In an embodiment, the first network node is providing an Access and Mobility Management Function (AMF) and the third network node is providing a Session Management Function (SMF).

[0030] In an embodiment, selecting the third network, if performed when the profile of the third network node comprises first information, may comprise maintaining existing service sessions with the third network node.

[0031] In an embodiment, the first information may comprise a canary test indication set to true.

[0032] In an embodiment, the profile of the third network node may comprise a network function instance status set to registered.

[0033] In an embodiment, the method may further comprise, if the profile of the third network node comprises second information indicating that the third network node can be selected for testing, selecting the third network node.

[0034] In an embodiment, selecting the third network, if performed when the profile of the third network node comprises second information, may comprise emptying existing service sessions with the third network node.

[0035] In an embodiment, the second information may comprise a network function instance status set to canary release.

[0036] In an embodiment, the profile of the third network node may comprise at least one selection condition, the method may further comprise obtaining information to be matched with the at least one selection condition. The method may comprise matching the obtained information with the at least one selection condition. Selecting the third network node maycomprise selecting the third network node if the obtained information is matched to the at least one selection condition.

[0037] In an embodiment, the profile of the third network node may further comprise third information indicating only selecting the third network node, and selecting the third network node may comprise only selecting the third network node based on the third information.

[0038] In an embodiment, obtaining a profile of a third network node may comprise sending a first discovery request to a second network node and receiving a first discovery response comprising the profile of the third network node from the second network node.

[0039] In an embodiment, the second network node comprises a network repository node.

[0040] In an embodiment, the second network node is providing a Network Repository Function (NRF).

[0041] In an embodiment, obtaining a profile of a third network node may comprise, if the profile of the third network node is stored or configured in the first network node, obtaining the profile of the third network node locally.

[0042] In an embodiment, the first network node may comprise at least one of a network function consumer, a network function service consumer, or a service communication proxy.

[0043] In an embodiment, the third network node may comprise at least one of a network function producer, or a network function service producer.

[0044] In an embodiment, the network function consumer or the network function service consumer may comprise an Access and Mobility Management Function (AMF).

[0045] In an embodiment, the network function producer or the network function service producer may comprise an SMF.

[0046] In a second aspect of the disclosure, there is provided a method performed by a second network node. The method may comprise receiving a first discovery request from a first network node. The method may comprise sending a first discovery response comprising a profile of a third network node to the first network node.

[0047] In an embodiment, the first network node is providing an Access and Mobility Management Function (AMF), the second network node is providing a Network Repository Function (NRF) and the third network node is providing a Session Management Function (SMF).

[0048] In an embodiment, the profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0049] In an embodiment, the first information may be incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the thirdnetwork node that has been received by the second network node from the third network node that the third network node can be selected for both testing and normal service during canary test.

[0050] In an embodiment, the second information may be incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the third network node that has been received by the second network node from the third network node that the third network node can be selected for testing only during canary test.

[0051] In an embodiment, the first information may comprise a canary test indication set to true.

[0052] In an embodiment, the profile of the third network node may comprise a network function instance status set to registered.

[0053] In an embodiment, the second information may comprise a network function instance status set to canary release.

[0054] In an embodiment, the profile of the third network node may further comprise third information indicating only selecting the third network node.

[0055] In an embodiment, the method may comprise receiving a register request comprising the profile of the third network node from the third network node.

[0056] In an embodiment, the method may comprise storing the profile of the third network node.

[0057] In an embodiment, the method may comprise receiving an update request comprising an updated profile of the third network node from the third network node.

[0058] In an embodiment, the method may comprise storing the updated profile of the third network node.

[0059] In an embodiment, the updated profile of the third network node may comprise the first information or the second information.

[0060] In an embodiment, the second network node may comprise a network repository node.

[0061] In an embodiment, the first network node may comprise at least one of a network function consumer, a network function service consumer, or a service communication proxy.

[0062] In an embodiment, the third network node may comprise at least one of a network function producer, or a network function service producer.

[0063] In an embodiment, the network function consumer or the network function service consumer may comprise an AMF.

[0064] In an embodiment, the network function producer or the network function service producer may comprise an SMF.

[0065] In a third aspect of the disclosure, there is provided a method performed by a third network node. The method may comprise sending a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node.

[0066] In an embodiment, the second network node is providing a Network Repository Function (NRF) and the third network node is providing a Session Management Function (SMF).

[0067] In an embodiment, the profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0068] In an embodiment, the updated profile of the third network node may comprise the first information or the second information.

[0069] In an embodiment, the first information may be incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for both testing and normal service during canary test.

[0070] In an embodiment, the second information may be incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for testing during canary test.

[0071] In an embodiment, the first information may comprise a canary test indication set to true.

[0072] In an embodiment, the profile or the updated profile of the third network node may comprise a network function instance status set to registered.

[0073] In an embodiment, the second information may comprise a network function instance status set to canary release.

[0074] In an embodiment, the profile or the updated profile of the third network node may further comprise third information indicating only selecting the third network node.

[0075] In an embodiment, the second network node may comprise a network repository node.

[0076] In an embodiment, the third network node may comprise at least one of a network function producer, or a network function service producer.

[0077] In an embodiment, the network function producer or the network function service producer may comprise a SMF.

[0078] In a fourth aspect of the disclosure, there is provided a first network node. The first network node comprises a processor and a memory coupled to the processor. Said memory contains instructions executable by said processor. Said first network node is operative to obtaina profile of a third network node. Said first network node is operative to, if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, select the third network node.

[0079] In an embodiment, the first network node is operative to perform any of the methods according to the first aspect.

[0080] In a fifth aspect of the disclosure, there is provided a first network node. The first network node comprises a processor and a memory coupled to the processor. Said memory contains instructions executable by said processor. Said second network node is operative to receive a first discovery request from a first network node. Said second network node is operative to send a first discovery response comprising a profile of a third network node to the first network node. The profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0081] In an embodiment, the second network node is operative to perform any of the methods according to the second aspect.

[0082] In a sixth aspect of the disclosure, there is provided a third network node. The third network node comprises a processor and a memory coupled to the processor. Said memory contains instructions executable by said processor. Said third network node is operative to send a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node. The profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing. The updated profile of the third network node comprises the first information or the second information.

[0083] In an embodiment, the third network node is operative to perform any of the methods according to the third aspect.

[0084] In a seventh aspect of the disclosure, there is provided a computer program product comprising instructions which when executed by at least one processor, cause the at least one processor to perform the method according to any one of the first to third aspects.

[0085] In an eighth aspect of the disclosure, there is provided a computer-readable storage medium storing instructions which when executed by at least one processor, cause the at least one processor to perform the method according to any one of the first to third aspects.

[0086] Embodiments herein may provide many advantages, of which a non-exhaustive list of examples follows. In some embodiments herein, it can fulfill customer expectations and avoid the existing problems stated above. In some embodiments herein, it is no need to add multipleservice instances and existing sessions can be kept. In some embodiments herein, the NF consumer which doesn’t support the new attribute (e.g. CanaryTestlndication) may still select the service instance and run legacy features. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” attribute will steer the traffic matched with the selectionconditions (new features, SUPI range) to this NF service instance. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” and “ExclusiveCanary” attributes shall only select an NF producer that has its NF status set to "CANARY RELEASE" and the CanaryTestlndication is set to TRUE. The embodiments herein are not limited to the features and advantages mentioned above. A person skilled in the art will recognize additional features and advantages upon reading the following detailed description.BRIEF DESCRIPTION OF THE DRAWINGS

[0087] The above and other aspects, features, and benefits of various embodiments of the present disclosure will become more fully apparent, by way of example, from the following detailed description with reference to the accompanying drawings, in which like reference numerals or letters are used to designate like or equivalent elements. The drawings are illustrated for facilitating better understanding of the embodiments of the disclosure and not necessarily drawn to scale, in which:

[0088] FIG. la shows an example of a scenario of Canary Test on an upgraded NF fully operative (keep serving traffic to any consumer);

[0089] FIG. lb shows a flowchart of scenario 1;

[0090] FIG.2 schematically shows a high level architecture in a 5G network according to an embodiment of the present disclosure;

[0091] FIG.3a-FIG.3e show flowcharts of methods according to embodiments of the present disclosure;

[0092] FIG.4a-FIG.4c show flowcharts of methods according to embodiments of the present disclosure;

[0093] FIG.5 shows a flowchart of a method according to another embodiment of the present disclosure;

[0094] FIG.6a shows an example of a scenario of Canary Test on an upgraded NF fully operative (keep serving traffic to any consumer) according to an embodiment of the present disclosure;

[0095] FIG.6b shows a flowchart of a method according to another embodiment of the present disclosure;

[0096] FIG.7 is a block diagram showing an apparatus suitable for practicing some embodiments of the disclosure;

[0097] FIG.8a is a block diagram showing a first network node according to an embodiment of the disclosure;

[0098] FIG.8b is a block diagram showing a second network node according to an embodiment of the disclosure;

[0099] FIG.8c is a block diagram showing a third network node according to an embodiment of the disclosure;

[0100] FIG.9 shows an example of a communication system according to an embodiment of the disclosure;

[0101] FIG.10 shows a UE in accordance with some embodiments;

[0102] FIG.11 shows a network node in accordance with some embodiments;

[0103] FIG.12 is a block diagram of a host according to an embodiment of the disclosure;

[0104] FIG.13 is a block diagram illustrating a virtualization environment in which functions implemented by some embodiments may be virtualized; and

[0105] FIG.14 shows a communication diagram of a host communicating via a network node with a UE over a partially wireless connection according to an embodiment of the disclosure.DETAILED DESCRIPTION

[0106] The embodiments of the present disclosure are described in detail with reference to the accompanying drawings. It should be understood that these embodiments are discussed only for the purpose of enabling those skilled persons in the art to better understand and thus implement the present disclosure, rather than suggesting any limitations on the scope of the present disclosure. Reference throughout this specification to features, advantages, or similar language does not imply that all of the features and advantages that may be realized with the present disclosure should be or are in any single embodiment of the disclosure. Rather, language referring to the features and advantages is understood to mean that a specific feature, advantage, or characteristic described in connection with an embodiment is included in at least one embodiment of the present disclosure. Furthermore, the described features, advantages, and characteristics of the disclosure may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize that the disclosure may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments that may not be present in all embodiments of the disclosure.

[0107] As used herein, the term “network” refers to a network following any suitable communication standards such as new radio (NR), long term evolution (LTE), LTE-Advanced, wideband code division multiple access (WCDMA), high-speed packet access (HSPA), Code Division Multiple Access (CDMA), Time Division Multiple Address (TDMA), Frequency Division Multiple Access (FDMA), Orthogonal Frequency-Division Multiple Access (OFDMA), Single carrier frequency division multiple access (SC-FDMA) and other wireless networks. A CDMA network may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), etc. UTRA includes WCDMA and other variants of CDMA. A TDMA network may implement a radio technology such as Global System for Mobile Communications (GSM). An OFDMA network may implement a radio technology such as Evolved UTRA (E-UTRA), Ultra Mobile Broadband (UMB), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, Flash-OFDMA, Ad-hoc network, wireless sensor network, etc. In the following description, the terms “network” and “system” can be used interchangeably. Furthermore, the communications between two devices in the network may be performed according to any suitable communication protocols, including, but not limited to, the communication protocols as defined by a standard organization such as 3GPP. For example, the communication protocols may comprise the first generation (1G), 2G, 3G, 4G, 4.5G, 5G, 6G communication protocols, and / or any other protocols either currently known or to be developed in the future.

[0108] The term “network device” or “network node” or “network function” refers to any suitable function which can be implemented in a network entity (physical or virtual) of a communication network. For example, the network function can be implemented either as a network element on a dedicated hardware, as a software instance running on a dedicated hardware, or as a virtualized function instantiated on an appropriate platform, e.g. on a cloud infrastructure. For example, the 5G system (5GS) may comprise a plurality of NFs such as Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Service Function (AUSF), Unified Data Management (UDM), Policy Control Function (PCF), Application Function (AF), Network Exposure Function (NEF), User plane Function (UPF) and Network Repository Function (NRF), radio access network (RAN), service communication proxy (SCP), network data analytics function (NWDAF), Network Slice Selection Function (NSSF), Network Slice-Specific Authentication and Authorization Function (NSSAAF), etc. In other embodiments, the network function may comprise different types of NFs for example depending on a specific network.

[0109] 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 a provider edge node and relates to an implementation inwhich at least a portion of the functionality is implemented as one or more virtual components (e.g., via one or more applications, components, functions, virtual machines or containers executing on one or more physical processing nodes in one or more networks).

[0110] In some embodiments, some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines implemented in one or more virtual environments hosted by one or more of hardware nodes. Further, in embodiments in which the virtual node is not a radio access node or does not require radio connectivity (e.g., a core network node), then the provider edge node or PE may be entirely virtualized.[OHl] The functions may be implemented by one or more applications (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) operative to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein. Applications are run in virtualization environment which provides hardware comprising processing circuitry and memory. Memory contains instructions executable by processing circuitry whereby application is operative to provide one or more of the features, benefits, and / or functions disclosed herein.

[0112] Virtualization environment, comprises general -purpose or special-purpose network hardware devices comprising a set of one or more processors or processing circuitry, which may be commercial off-the-shelf (COTS) processors, dedicated Application Specific Integrated Circuits (ASICs), or any other type of processing circuitry including digital or analog hardware components or special purpose processors. Each hardware device may comprise memory which may be non-persistent memory for temporarily storing instructions or software executed by processing circuitry. Each hardware device may comprise one or more network interface controllers (NICs), also known as network interface cards, which include physical network interface. Each hardware device may also include non-transitory, persistent, machine-readable storage media - having stored therein software and / or instructions executable by processing circuitry. Software may include any type of software including software for instantiating one or more virtualization layers (also referred to as hypervisors), software to execute virtual machines as well as software allowing it to execute functions, features and / or benefits described in relation with some embodiments described herein.

[0113] Virtual machines, comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer or hypervisor. Different embodiments of the instance of virtual appliance may be implemented on one or more of virtual machines, and the implementations may be made in different ways.

[0114] During operation, processing circuitry executes software to instantiate the hypervisor or virtualization layer, which may sometimes be referred to as a virtual machine monitor (VMM). Virtualization layer may present a virtual operating platform that appears like networking hardware to virtual machine.

[0115] The term “terminal device” refers to any end device that can access a communication network and receive services therefrom. By way of example and not limitation, the terminal device refers to a mobile terminal, user equipment (UE), or other suitable devices. The UE may be, for example, a Subscriber Station (SS), a Portable Subscriber Station, a Mobile Station (MS), or an Access Terminal (AT). The terminal device may include, but not limited to, a portable computer, an image capture terminal device such as a digital camera, a gaming terminal device, a music storage and a playback appliance, a mobile phone, a cellular phone, a smart phone, a voice over IP (VoIP) phone, a wireless local loop phone, a tablet, a wearable device, a personal digital assistant (PDA), a portable computer, a desktop computer, a wearable terminal device, a vehicle-mounted wireless terminal device, a wireless endpoint, a mobile station, a laptop-embedded equipment (LEE), a laptop-mounted equipment (LME), a USB dongle, a smart device, a wireless customer-premises equipment (CPE) and the like. In the following description, the terms “terminal device”, “terminal”, “user equipment” and “UE” may be used interchangeably. As one example, a terminal device may represent a UE configured for communication in accordance with one or more communication standards promulgated by the 3GPP (3rd Generation Partnership Project), such as 3GPP LTE standard or NR standard. As used herein, a “user equipment” or “UE” may not necessarily have a “user” in the sense of a human user who owns and / or operates the relevant device. In some embodiments, a terminal device may be configured to transmit and / or receive information without direct human interaction. For instance, a terminal device may be designed to transmit information to a network on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the communication network. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but that may not initially be associated with a specific human user.

[0116] As yet another example, in an Internet of Things (loT) scenario, a terminal device 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 terminal device and / or network equipment. The terminal device may in this case be a machine-to-machine (M2M) device, which may in a 3GPP context be referred to as a machine-type communication (MTC) device. As one particular example, the terminal device may be a UE implementing the 3GPP narrow band internet of things (NB-IoT) standard. Particular examples of such machines ordevices are sensors, metering devices such as power meters, industrial machinery, or home or personal appliances, for example refrigerators, televisions, personal wearables such as watches etc. In other scenarios, a terminal device may represent a vehicle or other equipment that is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.

[0117] References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” and the like indicate that the embodiment described may include a particular feature, structure, or characteristic, but it is not necessary that every embodiment includes 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.

[0118] It shall be understood that although the terms “first” and “second” etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of example embodiments. As used herein, the term “and / or” includes any and all combinations of one or more of the associated listed terms.

[0119] As used herein unless expressly stated to the contrary, the phrase “at least one of A and B” or “at least one of A or B” should be understood to mean any of the following “only A, only B, or both A and B.” The phrase “A and / or B” should be understood to mean any of the following “only A, only B, or both A and B”.

[0120] As used herein unless expressly stated to the contrary, the phrase “a plurality of’ followed by a conjunctive list of enumerated items (e.g., “A and B”, “A, B, and C”) is intended to mean “multiple items, with each item selected from the list consisting of’ the enumerated items. For example, “a plurality of A and B” is intended to mean any of the following: more than one A; more than one B; or at least one A and at least one B.

[0121] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of example embodiments. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises”, “comprising”, “has”, “having”, “includes” and / or “including”, when used herein, specify the presence of stated features, elements, and / or components etc., but do not preclude the presence or addition of one or more other features, elements, components and / or combinations thereof.

[0122] It is noted that these terms as used in this document are used only for ease of description and differentiation among nodes, devices or networks etc. With the development of the technology, other terms with the similar / same meanings may also be used.

[0123] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skills in the art to which this disclosure belongs.

[0124] Annex D (normative) of 3GPP TS 29.510 V18.5.0: Support of "Canary Release" testing in the NRF

[0125] This feature allows a network operator to deploy new software features in a Network Function (NF) in a controlled manner, by isolating the NF (Service) Instances that implement the new features, and steering solely a part of the traffic that, otherwise, would be sent towards such NF (Service) Instance producer.

[0126] This is achieved by means of the following mechanisms:

[0127] - Setting the NFStatus, or NF ServiceStatus, of the NF service producer, to the value "CANARY RELEASE"

[0128] - Defining in the NFProfile or NFService of the NF service producer a set of selection conditions, that will be evaluated by an NF service consumer when attempting to select a candidate producer

[0129] The set of conditions may include, e.g. :

[0130] - The NF type of the consumer

[0131] - A feature number that is required by the consumer to select (and send traffic to) a producer

[0132] - A set of specific UEs (e.g. based on Subscription Permanent Identifier (SUPI) ranges, Generic Public Subscription Identifier (GPSI) ranges, Internet protocol (IP) Multimedia PUblic identity (IMPU) / IP Multimedia Private Identity (IMPI) ranges, list of Permanent Equipment Identifiers (PEIs))

[0133] - Any UE camping on a Tracking Area Identity (TAI) within a set of TAI ranges

[0134] - A list of Data Network Names (DNNs)

[0135] In order to allow flexibility in the definition of the selection conditions, the above conditions can be combined by means of "and" / "or" logical operators.

[0136] EXAMPLE: An Session Management Function (SMF) is deployed with a new software feature, and the operator wishes to test it by carrying traffic to it with the following conditions:

[0137] - The SMF shall only be selected by an Access and Mobility Management Function (AMF), a Network Exposure Function (NEF), or an Network Data Analytics Function (NWDAF)

[0138] - The SMF shall only be selected by the AMF when:

[0139] - its selection requires the support of the " Access Traffic Steering, Switching, Splitting (ATSSS)" feature (which corresponds with feature number #2 in the "nsmf-pdusesssion" service)

[0140] - the UE belongs to a certain range of SUPIs

[0141] - the UE is camping on a TAI belonging to a range of TAIs

[0142] - When the SMF is selected by the NEF, it shall only do it for a certain DNN

[0143] - When the SMF is selected by the NWDAF, it shall onlly do it when the UE is camping on a TAI belonging to a range of TAIs

[0144] An example of the "selectionconditions" attribute could be as follows (note that there might be different logical expressions to encode the same logic):"selectionconditions": {"or": [{"and": [{ "consumerNfType": [ "AMF" ] },{ "serviceFeature": 2 },{ "supiRange": { "start": "1234511111", "end": " 1234599999" } },{ "taiRange": {"plmnld": { "mcc": "123", "mnc": "45" },"tacRangeList": [{ "start": "000011", "end": "OOOOff }]}}]},{"and": [{ "consumerNfType": [ "NEF" ] },{ "dnnList": [ "internet.operator.com" ] }]},{"and": [{ "consumerNfType": [ "NWDAF" ] },{ "taiRange": {"plmnld": { "mcc": "123", "mnc": "45" },"tacRangeList": [{ "start": "000011", "end": "000022" }]}}]}]}

[0145] or, alternatively, with a more simplified encoding, based on the fact that the individual conditions (attributes) inside Conditionitem (see clause 6.1.6.2.124) are evaluated following the "AND" logical operator:"selectionconditions": {"or": [{"consumerNfType": [ "AMF" ],"serviceFeature": 2,"supiRange": { "start": " 1234511111", "end": "1234599999" },"taiRange": {"plmnld": { "mcc": " 123", "mnc": "45" },"tacRangeList": [{ "start": "000011", "end": "OOOOff }]}},{"consumerNfType": [ "NEF" ],"dnnList": [ "internet.operator.com" ]},{"consumerNfType": [ "NWDAF" ],"taiRange": {"plmnld": { "mcc": " 123", "mnc": "45" },"tacRangeList": [{ "start": "000011", "end": "000022" }]}}]}

[0146] As described in Annex D, if multiple candidate producers are available with NF (Service) status set to "REGISTERED" or "CANARY RELEASE", the consumer shall preferably select a producer in "CANARY RELEASE" status. The “preferably select” may make the solution of Annex D becomes indeterministic. However it would like to have a solution option that always selects the Canary Test NF or none.

[0147] Annex D may cover 2 different scenarios.

[0148] Scenario 1: Canary Test on an upgraded NF with empty session contexts

[0149] The existing sessions are emptied on the NF service instance before upgrade. NF Service Instance is software-upgraded. NF Service Instance with new software registers in NRF with status "CANARY RELEASE" and includes the set of conditions for selection (e.g. a SUPI range). Consumer performs selection from the list of candidate NFs and, if the status of the producer NF is "CANARY_RELEASE", such NF shall only be selected if the selectionconditions match (e.g. it shall only be selected if the SUPI matches the SUPI range indicated by the producer NF).

[0150] Scenario 2: Canary Test on an upgraded NF fully operative (keep serving traffic to any consumer)

[0151] In certain cases, the operator may want to maintain the NF instance fully operative (so it keeps serving traffic to any consumer), at the same time testing the new software features. In such case, the operator may deploy distinct service instances, some of which may keep the old software version and keep the "REGISTERED" NF ServiceStatus, while other service instances may be deployed with the new software version, and set the NFServiceStatus to "CANARY RELEASE", to ensure that it is only selected by consumers when the desired conditions are met.

[0152] FIG. lb shows a flowchart of scenario 1.

[0153] Step 1. Normal upgrade procedure is performed. SMF upgrade preparation is initiated. SMF sends NF Status = Undiscoverable to NRF. SMF empties SMF from existing sessions. SMF sends NF Status = Deregistered to NRF. Then it can upgrade the SMF.

[0154] Step 2. SMF may verify that the Single Network Slice Selection Assistance Information (S-NSSAI) combined with Data Network Name (DNN) configuration to support the Test UE exist in SMF.

[0155] Step 3. It may set the NF Status to “CANARY_RELEASE” and NF Selection Conditions to “TAIRange” via command in the SMF. SMF sends NF Status = CANARY RELEASE and NFSelectionConditions = TAIRange to NRF.

[0156] Step 4. In the AMF, it may configure a link between the actual Tracking Area Information(TAI) and the NFProfiles that holds the NF Status = CANARY RELEASE and NF Selection Conditions = TAIRange (including the TAI). AMF may verify the new SW on the SMF including Canary tests.

[0157] Step 5. When the UE initiates the PDU Session Establishment procedure, the AMF shall follow 3GPP specifications such as 3GPP TS23.502 VI 8.4.0. AMF sends NF Discovery = S-NSSAI, DNN to NRF.

[0158] Step 6. When the NRF returns the suitable NF profiles (for all SMFs, including the ones with NF Status = CANARY RELEASE). The AMF shall look at the local configuration and select the SMF that will undergo the Canary tests.

[0159] Step 7. It may run at least one test.

[0160] Step 8. Once all tests are passed, SMF may set the NF Status to “REGISTERED”, via a command in the SMF. SMF may send NF Status = Registered to NRF.

[0161] System architecture description

[0162] Although the subject matter described herein may be implemented in any appropriate type of system using any suitable components, the embodiments disclosed herein are described in relation to a communication system complied with the exemplary system architecture illustrated in FIG.2. For simplicity, the system architecture of FIG.2 only depicts some exemplary elements. In practice, a communication system may further include any additional elements suitable to support communication between terminal devices or between a wireless device and another communication device, such as a landline telephone, a service provider, or any other network node or terminal device. The communication system may provide communication and various types of services to one or more terminal devices to facilitate the terminal devices’ access to and / or use of the services provided by, or via, the communication system.

[0163] FIG.2 schematically shows a high level architecture in a 5G network according to an embodiment of the present disclosure. For example, the fifth generation network may be 5G system (5GS). The architecture of FIG.2 may be similar to Figure 4.2.3-1 of 3GPP TS 23.501 VI 8.4.0, the disclosure of which is incorporated by reference herein in its entirety. The system architecture of FIG.2 may comprise a plurality of network functions (NFs) such as Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Service Function (AUSF), Unified Data Management (UDM), Policy Control Function (PCF), Application Function (AF), Network Exposure Function (NEF), User plane Function (UPF) and Network Repository Function (NRF), (radio) access network ((R)AN), service communication proxy (SCP), Network Slice Selection Function (NSSF), network slice-Specific Authentication and Authorization Function (NSSAAF), Edge Application Server Discovery Function (EASDF), NSACF (network slice Admission Control Function), NWDAF, etc.

[0164] In accordance with an exemplary embodiment, the UE can establish a signaling connection with the AMF over the reference point Nl, as illustrated in FIG.2. This signaling connection may enable NAS (Non-access stratum) signaling exchange between the UE and the core network, comprising a signaling connection between the UE and the (R)AN and the N2 connection for this UE between the (R)AN and the AMF. The (R)AN can communicate with the UPF over the reference point N3. The UE can establish a protocol data unit (PDU) session to the DN (data network, e.g. an operator network or Internet) through the UPF over the reference point N6.

[0165] As further illustrated in FIG.2, the exemplary system architecture also contains the service-based interfaces such as Nnrf, Nnef, Nausf, Nudm, Npcf, Namf, Nnsacf, Neasdf, Nnssf, Nnwdaf and Nsmf exhibited by NFs such as the NRF, the NEF, the AUSF, the UDM, the PCF, the AMF, the NSACF, the EASDF, the NSSF, the NWDAF and the SMF. In addition, FIG.2also shows some reference points such as Nl, N2, N3, N4, N6 and N9, which can support the interactions between NF services in the NFs. For example, these reference points may be realized through corresponding NF service-based interfaces and by specifying some NF service consumers and providers as well as their interactions in order to perform a particular system procedure.

[0166] Various NFs shown in FIG.2 may be responsible for functions such as session management, mobility management, authentication, security, etc. The AUSF, AMF, DN, NEF, NRF, NSSF, PCF, SMF, UDM, UPF, AF, UE, (R)AN, SCP, NSACF, NSSAAF, EASDF may include the functionality for example as defined in clause 6.2 of 3GPP TS 23.501 V18.4.0.

[0167] Methods according to embodiments of the present disclosure

[0168] FIG.3a shows a flowchart of a method according to an embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a first network node or communicatively coupled to the first network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 300 as well as means or modules or circuits for accomplishing other processes in conjunction with other components.

[0169] At block 302, the first network node may obtain a profile of a third network node.

[0170] Block 302 may be performed due to various reasons and the present disclosure has no limit on it. For example if a procedure, a service or an event requires the first network node to select a network node, the first network node may obtain the profile of the third network node.

[0171] In an embodiment, the first network node may obtain two or more profiles of two or more third network nodes at block 302.

[0172] The first network node may be any suitable network device or network node or network function or network entity, which can implement any suitable network function.

[0173] In an embodiment, the first network node may comprise at least one of a network function consumer, a network function service consumer, or a service communication proxy.

[0174] For example, the network function consumer may be similar to the NF consumer as described in various 3GPP specifications such as 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0175] For example, the network function service consumer may be similar to the NF service consumer as described in various 3GPP specifications such as 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0176] For example, the service communication proxy may be similar to the SCP as described in various 3GPP specifications such as 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0177] In an embodiment, the network function consumer or the network function service consumer may comprise an AMF as described in 3GPP TS23.501 V18.4.0 or 3GPP TS23.502V18.4.0.

[0178] In an embodiment, the network function consumer or the network function service consumer may comprise the network function consumer or the network function service consumer in the NF selection as described in following clauses of 3GPP TS23.501 V18.4.0:

[0179] 6.3.2 SMF discovery and selection

[0180] 6.3.3 User Plane Function Selection

[0181] 6.3.4 AUSF discovery and selection

[0182] 6.3.5 AMF discovery and selection

[0183] 6.3.6 Non-3GPP InterWorking Function (N3IWF) selection

[0184] 6.3.7 PCF discovery and selection

[0185] 6.3.8 UDM discovery and selection

[0186] 6.3.9 Unified Data Repository (UDR) discovery and selection

[0187] 6.3.10 Short Message Service Function (SMSF) discovery and selection

[0188] 6.3.11 Charging Function (CHF) discovery and selection

[0189] 6.3.12 Trusted Non-3GPP Access Network selection

[0190] 6.3.13 NWDAF discovery and selection

[0191] 6.3.14 NEF Discovery

[0192] 6.3.15 UE radio Capability Management Function (UCMF) Discovery and Selection

[0193] 6.3.16 SCP discovery and selection

[0194] 6.3.17 NSSAAF discovery and selection

[0195] 6.3.18 5G-Equipment Identity Register (5G-EIR) discovery and selection

[0196] 6.3.19 Data Collection Coordination Function (DCCF) discovery and selection

[0197] 6.3.20 Analytics Data Repository Function (ADRF) discovery and selection

[0198] 6.3.21 Messaging Framework Adaptor Function (MFAF) discovery and selection

[0199] 6.3.22 NSACF discovery and selection

[0200] 6.3.23 EASDF discovery and selection

[0201] 6.3.24 Time Sensitive Communication and Time Synchronization Function (TSCTSF)Discovery

[0202] 6.3.25 AF Discovery and Selection

[0203] 6.3.26 NRF discovery and selection

[0204] The third network node may be any suitable network device or network node or network function or network entity, which can implement any suitable network function.

[0205] In an embodiment, the third network node may comprise at least one of a network function producer or a network function service producer.

[0206] For example, the network function producer may be similar to the NF producer as described in various 3GPP specifications such as 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0207] For example, the network function service producer may be similar to the NF service producer as described in various 3GPP specifications such as 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0208] In an embodiment, the network function producer or the network function service producer may comprise an SMF as described in 3GPP TS23.501 V18.4.0 or 3GPP TS23.502 V18.4.0.

[0209] In an embodiment, the network function producer or the network function service producer may comprise the network function producer or the network function service producer in the NF selection as described in above clauses of 3GPP TS23.501 V18.4.0.

[0210] The first network node may obtain the profile of the third network node in various ways and the present disclosure has no limit on it. For example, the first network node may obtain the profile of the third network node from another network node, which may store the profile of the third network node. Alternatively, the first network node may obtain the profile of the third network node locally if the profile of the third network node is configured in the first network node.

[0211] The profile of the third network node may comprise any suitable information and the present disclosure has no limit on it. In an embodiment, the profile of the third network node may comprise any suitable information of NF profile as described in clause 6.2.6.2 of 3GPP TS23.501 V18.4.0.

[0212] At block 304, if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, the first network node may select the third network node.

[0213] In an embodiment, the profile of the third network node may comprise a network function instance status set to registered.

[0214] Block 304 may be performed due to various reasons and the present disclosure has no limit on it. For example if a procedure, a service or an event requires the first network node to select a network node e.g. for testing service, the first network node may obtain the profile of the third network node and select the third network node for testing service.

[0215] In an embodiment, if the first network node wants to select a network node for a testing service and obtains two or more profiles of two or more third network nodes, each of whichcomprises the first information, the first network node may select one of the two or more third network nodes e.g. based on a local policy or a priority.

[0216] In an embodiment, if the profile of the third network node comprises the first information and the first network node selects the third network node, the first network node may maintain existing service sessions with the third network node. The third network node shall not empty the existing service sessions.

[0217] This embodiment can enable canary test on an upgraded NF fully operative (keep serving traffic to any consumer). For example, in certain cases, the operator may want to maintain the NF instance fully operative (so it keeps serving traffic to any consumer), at the same time testing the new software features. In such case, the operator may deploy an NF service instance with the new software version and keep the "REGISTERED" NF service status and introduces the first information in the NF Profile to ensure that the NF service instance can be selected and used for both testing and normal service.

[0218] The first information may be any suitable information such as a bit, an indicator, a flag, etc. For example, the first information may be a Boolean value. The first information may be present if the third network node can be selected and used for both testing and normal service.

[0219] In an embodiment, the first information may comprise a canary test indication set to true.

[0220] As an example, when present, the canary test indication may be set as follows:

[0221] - True: the third network node can be selected and used for both testing and normal service.

[0222] - False (default): the third network node can be selected and used for normal service.

[0223] In another embodiment, the first information may comprise a canary test indication set to true and a network function instance status set to registered.

[0224] As an example, when present, the canary test indication may be set as follows:

[0225] - True: the third network node can be selected and used for testing service.

[0226] - False (default): the third network node cannot be selected and used for testing service.

[0227] In an embodiment, if the canary test indication is not present, it may means that the third network node can be selected and used for normal service.

[0228] The network function instance status set to registered may mean that the third network node can be selected and used for normal service.

[0229] FIG.3b shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a first network node or communicatively coupled to the first network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 310 as well asmeans or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0230] At block 312, the first network node may obtain a profile of a third network node. Block 312 is same as block 302.

[0231] At block 314, if the profile of the third network node comprises second information indicating that the third network node can be selected for testing, the first network node may select the third network node.

[0232] Block 314 may be performed due to various reasons and the present disclosure has no limit on it. For example if a procedure, a service or an event requires the first network node to select a network node e.g. for testing service, the first network node may obtain the profile of the third network node and select the third network node for testing service.

[0233] In an embodiment, if the first network node wants to select and use a network node for a testing service and obtains two or more profiles of two or more third network nodes, each of which comprises the second information, the first network node may select one of the two or more third network nodes e.g. based on a local policy or priority.

[0234] The second information may be any suitable information such as a bit, an indicator, a flag, etc. In an embodiment, the second information comprises a network function instance status set to canary release such as CANARY RELEASE as described in 3GPP TS 29.510 V18.5.0.

[0235] In an embodiment, if the profile of the third network node comprises the second information and the first network node selects the third network node, the first network node may or shall empty existing service sessions with the third network node. For example, the third network node may or shall empty the existing sessions on the third network node before upgrade. The third network node is upgraded e.g. software-upgraded. The third network node with new software registers in NRF with status "CANARY RELEASE" and includes the set of conditions for selection (e.g. a SUPI range). The first network node performs selection from the list of candidate producer NFs and, if the status of the producer NF is "CANARY RELEASE", such NF shall only be selected if the selection conditions match (e.g. it shall only be selected if the SUPI matches the SUPI range indicated by the producer NF).

[0236] FIG.3c shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a first network node or communicatively coupled to the first network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 320 as well as means or modules or circuits for accomplishing other processes in conjunction with othercomponents. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0237] At block 322, if the profile of the third network node further comprises at least one selection condition, the first network node may obtain information to be matched with the at least one selection condition.

[0238] The at least one selection condition may be any suitable selection condition and the present disclosure has no limit on it. For example, the selection condition may be same as the selection condition as described in Annex D of 3GPP TS 29.510 V18.5.0.

[0239] The first network node may obtain information to be matched with the at least one selection condition locally or from another network node.

[0240] For example, if the first network node is a network function consumer or a network function service consumer, the selection of a candidate producer may be done by the first network node. In that case, the first network node needs to be able to evaluate the selection conditions for those producers in "CANARY RELEASE" status, or in “REGISTERED” status and canary test indication set to true.

[0241] For example, if the first network node is a service communication proxy such as SCP, the selection of a candidate producer may be done by the service communication proxy. In that case, the service communication proxy needs to be able to evaluate the selection conditions for those producers in "CANARY RELEASE" status, or in “REGISTERED” status and canary test indication set to true. Since the service communication proxy does not count with this information at its disposal (e.g. the different identities of the UE for which a service request is invoked via the service communication proxy), it shall be provided by the consumer, e.g. by including the "3gpp-Sbi-Correlation-Info" Hypertext Transfer Protocol (HTTP) header or by including the corresponding discovery headers ("3ggp-Sbi-Discovery") containing the UE identities involved in the specific traffic case.

[0242] At block 324, the first network node may match the obtained information with the at least one selection condition.

[0243] At block 326, the first network node may select the third network node if the obtained information is matched to the at least one selection condition.

[0244] In an embodiment, the profile of the third network node may further comprise third information indicating only selecting the third network node. In this case the first network node may only select the third network node based on the third information.

[0245] The third information may be any suitable information such as a bit, an indicator, a flag, etc. For example, the third information may be a Boolean value. The third information may be present if the first network node only can select an NF producer that has its NF status set to“CANARY_RELEASE" or only can select an NF producer that has its NF status set to “REGISTERED " and the canary test indication is set to true.

[0246] As an example, when present, the third information may be set as follows:

[0247] - True: the first network node only can select an NF producer that has its NF status set to “CANARY RELEASE" or an NF producer that has its NF status set to “REGISTERED " and the canary test indication is set to true.

[0248] - False (default): the first network node is not necessary to select an NF producer that has its NF status set to “CANARY_RELEASE" or an NF producer that has its NF status set to “REGISTERED " and the canary test indication is set to true.

[0249] For example, if the third network node is under testing, it may set the third information as true in the NRF. After the third network node passes testing, it may set the third information as false in the NRF.

[0250] FIG.3d shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a first network node or communicatively coupled to the first network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 330 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0251] At block 332, the first network node may send a first discovery request to a second network node.

[0252] The second network node may be any suitable network device or network node or network function or network entity, which may store the profile of the third network node or can obtain the profile of the third network node. In an embodiment, the second network node may comprise a network repository node such as NRF.

[0253] The first discovery request may be any suitable discovery request such as existing or new discovery request. In an embodiment, the first discovery request may be similar to Nnrf_NFDiscovery_Request as described in 3GPP TS23.502 VI 8.4.0.

[0254] At block 334, the first network node may receive a first discovery response comprising the profile of the third network node from the second network node.

[0255] The first discovery response may be any suitable discovery response such as existing or new discovery response. In an embodiment, the first discovery response may be similar to Nnrf_NFDiscovery_Request Response as described in 3GPP TS23.502 VI 8.4.0.

[0256] In an embodiment, the NF / NF service discovery procedures of clause 4.17 of 3GPP TS23.502 V18.4.0 may be used to obtain the profile of the third network node.

[0257] FIG.3e shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a first network node or communicatively coupled to the first network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 340 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0258] At block 342, if the profile of the third network node is stored or configured in the first network node, the first network node may obtain the profile of the third network node locally.

[0259] FIG.4a shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a second network node or communicatively coupled to the second network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 400 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0260] At block 402, the second network node may receive a first discovery request from a first network node.

[0261] At block 404, the second network node may send a first discovery response comprising a profile of a third network node to the first network node.

[0262] In an embodiment, the profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0263] In an embodiment, the second network node may comprise a network repository node.

[0264] In an embodiment, the first network node may comprise at least one of a network function consumer, a network function service consumer, or a service communication proxy,

[0265] In an embodiment, the third network node may comprise at least one of a network function producer, or a network function service producer.

[0266] In an embodiment, the network function consumer or the network function service consumer may comprise an AMF.

[0267] In an embodiment, the network function producer or the network function service producer may comprise an SMF.

[0268] In an embodiment, the first information may be incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the third network node that has been received by the second network node from the third network nodethat the third network node can be selected for both testing and normal service during canary test.

[0269] In an embodiment, the second information may be incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the third network node that has been received by the second network node from the third network node that the third network node can be selected for testing only during canary test.

[0270] In an embodiment, the first information may comprise a canary test indication set to true.

[0271] In an embodiment, the profile of the third network node may comprise a network function instance status set to registered.

[0272] In an embodiment, the second information may comprise a network function instance status set to canary release.

[0273] In an embodiment, the profile of the third network node may further comprise third information indicating only selecting the third network node.

[0274] FIG.4b shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a second network node or communicatively coupled to the second network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 410 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0275] At block 412, the second network node may receive a register request comprising the profile of the third network node from the third network node.

[0276] At block 414, the second network node may store the profile of the third network node.

[0277] The register request may be any suitable register request such as existing or new register request. In an embodiment, the register request may be similar to Nnrf_NFManagement_NFRegister Request as described in 3GPP TS23.502 VI 8.4.0.

[0278] The second network node may acknowledge the register request is accepted via a register response such as Nnrf_NFManagement_NFRegister response as described in 3GPP TS23.502 V18.4.0.

[0279] In an embodiment, the NF service Registration procedures of clause 4.17.1 of 3GPP TS23.502 V18.4.0 may be used for the method 410.

[0280] FIG.4c shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a second network node or communicatively coupled to the second network node. As such, the apparatusmay provide means or modules or circuits for accomplishing various parts of the method 420 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0281] At block 422, the second network node may receive an update request comprising an updated profile of the third network node from the third network node.

[0282] At block 424, the second network node may store the updated profile of the third network node.

[0283] In an embodiment, the updated profile of the third network node may comprise the first information or the second information.

[0284] The update request may be any suitable update request such as existing or new update request. In an embodiment, the update request may be similar to Nnrf_NFManagement_NFUpdate Request as described in 3GPP TS23.502 VI 8.4.0.

[0285] The second network node may acknowledge the update request is accepted via a update response such as Nnrf_NFManagement_NFUpdate response as described in 3GPP TS23.502 V18.4.0.

[0286] In an embodiment, the NF service update procedures of clause 4.17.2 of 3GPP TS23.502 V18.4.0 may be used for the method 420.

[0287] FIG.5 shows a flowchart of a method according to another embodiment of the present disclosure, which may be performed by an apparatus implemented in or at or as a third network node or communicatively coupled to the third network node. As such, the apparatus may provide means or modules or circuits for accomplishing various parts of the method 500 as well as means or modules or circuits for accomplishing other processes in conjunction with other components. For some parts which have been described in the above embodiments, the description thereof is omitted here for brevity.

[0288] At block 502, the third network node may send a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node.

[0289] In an embodiment, the profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0290] In an embodiment, the updated profile of the third network node may comprise the first information or the second information.

[0291] In an embodiment, the third network node may receive a register response or an update response from the second network node.

[0292] In an embodiment, the first information may be incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for both testing and normal service during canary test.

[0293] In an embodiment, the second information may be incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for testing during canary test.

[0294] In an embodiment, the first information may comprise a canary test indication set to true.

[0295] In an embodiment, the profile or the updated profile of the third network node may comprise a network function instance status set to registered.

[0296] In an embodiment, the second information may comprise a network function instance status set to canary release.

[0297] In an embodiment, the profile or the updated profile of the third network node further may comprise third information indicating only selecting the third network node.

[0298] In an embodiment, the second network node may comprise a network repository node.

[0299] In an embodiment, the third network node may comprise at least one of a network function producer, or a network function service producer.

[0300] In an embodiment, the network function producer or the network function service producer may comprise an SMF.

[0301] In an embodiment, the proposed solution can avoid multiple canary service instances but still support canary with NF fully operative.

[0302] FIG.6a shows an example of a scenario of Canary Test on an upgraded NF fully operative (keep serving traffic to any consumer) according to an embodiment of the present disclosure.

[0303] Though only one NF service instance is shown in FIG.6a, there may be any other suitable number of NF service instances in other embodiments. Though SMF is shown in FIG.6a, there may be any other suitable NF in other embodiments.

[0304] As shown in FIG.6a, the left figure shows NF service instance before upgrade, i.e., SMF-1 : SMF-Instance-1. The right figure shows NF service instances after upgrade, i.e., SMF-1 : SMF-Instance-1.

[0305] SMF-1 is upgraded to a new software (SW) version and added a new NF service instance with status “REGISTERED”. The original service instance is still kept as “REGISTERED” serving existing sessions and legacy traffic. It can upgrade NF to a new software (SW) version and keep the NF service instance with status “REGISTERED”, but a newattribute “CanaryTestlndication” (and also selection conditions) is added to the NF service profile. The NF consumer that supports this new “CanaryTestlndication” attribute may steer the traffic matched with the selection conditions to this NF service instance.

[0306] The information for Service Instance 1 before upgrade may be as below:

[0307] servicelnstanceld: smf-srvinst-01

[0308] serviceName: nsmf-pdusession

[0309] NFServiceStatus: “REGISTERED”

[0310] The information for Service Instance 1 after upgrade may be as below:

[0311] servicelnstanceld: smf-srvinst-01

[0312] serviceName: nsmf-pdusession

[0313] NFServiceStatus: “REGISTERED”

[0314] New Attribute: “CanaryTestlndication”

[0315] selectionconditions: [feature, SUPI range. . . ]

[0316] With this embodiment, it is no need to add multiple service instances and existing sessions can be kept. The NF consumer which doesn’t support the new attribute (e.g. CanaryTestlndication) may still select the service instance and run legacy features. The NF consumer which supports this new “CanaryTestlndication” attribute will steer the traffic matched with the selectionconditions (new features, SUPI range) to this NF service instance.

[0317] In an embodiment, it can avoid selecting a non-upgraded producer NF by looking at the new attribute “exclusiveCanary” into the same places as the attribute above.

[0318] These combinations of NF Status, CanaryTestlndication and exclusiveCanary can create solution flexibility like below Table 1.Table 1

[0319] FIG.6b shows a flowchart of a method according to another embodiment of the present disclosure.

[0320] SMF upgrade preparation is initiated and the SMF is upgraded.

[0321] Step 1. SMF may verify that the S-NSSAI+DNN configuration to support the Test UE exist in SMF

[0322] Step 2. NEW: SMF may set the NF service attribute CanaryTestinglndicator to TRUE and NF Selection Conditions to “TAIRange” via a command in the SMF. SMF sends NF Service Profile Attribute CanaryTestlndicator = TRUE and NFSelectionConditions = TAIRange to NRF.

[0323] Step 3. In the AMF, it may configure a link between the actual Tracking Area Information (TAI) and the NF Service Profiles that holds the attribute CanaryTestlndicator = TRUE and NF Selection Conditions = TAIRange (including the TAI).

[0324] Step 4. When the UE initiates the PDU Session Establishment procedure, the AMF shall follow 3GPP specifications such as 3GPP TS23.502 VI 8.4.0. AMF sends NF Discovery = S-NSSAI, DNN to NRF.

[0325] Step 5. NEW: When the NRF returns the suitable NFProfiles (for all SMFs, including the ones with the attribute CanaryTestlndicator = TRUE). The AMF shall look at the local configuration and select the SMF that will undergo the Canary tests.

[0326] Step 6. It may run at least one test.

[0327] Step 7. NEW: Once all tests are passed, it may set the attribute CanaryTestlndicator = FALSE, via a command in the SMF.

[0328] Some steps (such as 2, 5 and 7) of FIG.6b may be enhanced according to various embodiments of the present disclosure. The other steps may be same as or similar to the corresponding steps as described in various 3GPP specifications such as 3GPP TS23.502 V18.4.0, 3GPP TS TS29.510 V18.4.0, etc.

[0329] In an embodiment, an additional mechanism is proposed here, that can be used simultaneously to the existing mechanism for Canary Test control. The proposal is to keep the status of the NF instance as "REGISTERED", so it can be discovered and selected by legacy consumers, normally, so the instance is fully operative. Then, a new flag ("CanaryTestlndicator") is added to the NFProfile / NF Service data, where it is indicated whether the NF (Service) instance should be considered to be under Canary Test condition, even if the status indicates "REGISTERED".

[0330] Given that this flag will only be understood by consumers supporting the Canary Release feature, it can serve the purpose of regulating the traffic sent to the instance (via the selectionconditions attribute), while at the same time the flag will be ignored by legacy consumers (so they will still send traffic to it).

[0331] In an embodiment, it may introduce a new Boolean flag "CanaryTestlndicator" on the NF profile data structure and describe its usage in different applicable clauses.

[0332] With the existing solution, the only option to keep operative an NF instance in Canary Test condition is to deploy new service instances, which is too restrictive. With the proposed solution, it can avoid multiple canary service instances but still support canary with NF fully operative.

[0333] Embodiments herein may provide many advantages, of which a non-exhaustive list of examples follows. In some embodiments herein, it can fulfill customer expectations and avoid the existing problems stated above. In some embodiments herein, it is no need to add multiple service instances and existing sessions can be kept. In some embodiments herein, the NF consumer which doesn’t support the new attribute (e.g. CanaryTestlndication) may still select the service instance and run legacy features. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” attribute will steer the traffic matched with the selectionconditions (new features, SUPI range) to this NF service instance. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” and “ExclusiveCanary” attributes shall only select an NF producer that has its NF status set to "CANARY RELEASE" and the CanaryTestlndication is set to TRUE. The embodiments herein are not limited to the features and advantages mentioned above. A person skilled in the art will recognize additional features and advantages upon reading the following detailed description.

[0334] Apparatuses according to embodiments of the present disclosure

[0335] FIG.7 is a block diagram showing an apparatus suitable for practicing some embodiments of the disclosure. For example, the first network node, the second network node, or the third network node described above may be implemented as or through the apparatus 700.

[0336] The apparatus 700 comprises at least one processor 721, such as a digital processor (DP), and at least one memory (MEM) 722 coupled to the processor 721. The apparatus 700 may further comprise a transmitter TX and receiver RX 723 coupled to the processor 721. The MEM 722 stores a program (PROG) 724. The PROG 724 may include instructions that, when executed on the associated processor 721, enable the apparatus 700 to operate in accordance with the embodiments of the present disclosure. A combination of the at least one processor 721 and the at least one MEM 722 may form processing means 725 adapted to implement various embodiments of the present disclosure.

[0337] Various embodiments of the present disclosure may be implemented by computer program executable by one or more of the processor 721, software, firmware, hardware or in a combination thereof.

[0338] The MEM 722 may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memories and removable memories, as non-limiting examples.

[0339] The processor 721 may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on multicore processor architecture, as non-limiting examples.

[0340] In an embodiment where the apparatus is implemented as or at the first network node, the memory 722 contains instructions executable by the processor 721, whereby the first network node operates according to any of the methods performed by the first network node as described above.

[0341] In an embodiment where the apparatus is implemented as or at the second network node, the memory 722 contains instructions executable by the processor 721, whereby the second network node operates according to any of the methods performed by the second network node as described above.

[0342] In an embodiment where the apparatus is implemented as or at the third network node, the memory 722 contains instructions executable by the processor 721, whereby the third network node operates according to any of the methods performed by the third network node as described above.

[0343] FIG.8a is a block diagram showing a first network node according to an embodiment of the disclosure. As shown, the first network node 830 may comprise a first obtaining module 831 configured to obtain a profile of a third network node. The first network node 830 may further comprise a first selecting module 832 configured to, if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, select the third network node

[0344] In an embodiment, the first network node 830 may further comprise a second selecting module 833 configured to, if the profile of the third network node comprises second information indicating that the third network node can be selected for testing, select the third network node.

[0345] In an embodiment, the profile of the third network node further comprises at least one selection condition, the first network node 830 may further comprise a second obtaining module 834 configured to obtain information to be matched with the at least one selection condition. The first network node 830 may further comprise a matching module 835 configured to match the obtained information with the at least one selection condition. The first / second selectingmodule may select the third network node if the obtained information is matched to the at least one selection condition.

[0346] FIG.8b is a block diagram showing a second network node according to an embodiment of the disclosure. As shown, the second network node 850 may comprise a first receiving module 851 configured to receive a first discovery request from a first network node. The second network node 850 may comprise a first sending module 852 configured to send a first discovery response comprising a profile of a third network node to the first network node. The profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

[0347] In an embodiment, the second network node 850 may comprise a second receiving module 853 configured to receive a register request comprising the profile of the third network node from the third network node.

[0348] In an embodiment, the second network node 850 may comprise a first storing module 854 configured to store the profile of the third network node.

[0349] In an embodiment, the second network node 850 may comprise a third receiving module 855 configured to receive an update request comprising an updated profile of the third network node from the third network node.

[0350] In an embodiment, the second network node 850 may comprise a second storing module 856 configured to store the updated profile of the third network node. The updated profile of the third network node may comprise the first information or the second information.

[0351] FIG.8c is a block diagram showing a third network node according to an embodiment of the disclosure. As shown, the third network node 860 may comprise a sending module 861 configured to send a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node. The profile of the third network node may comprise first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing. The updated profile of the third network node may comprise the first information or the second information.

[0352] With function units, the first network node, the second network node, or the third network node may not need a fixed processor or memory, any computing resource and storage resource may be arranged from the first network node, the second network node, or the third network node in the communication system. The introduction of virtualization technology and network computing technology may improve the usage efficiency of the network resources and the flexibility of the network.

[0353] Further, the exemplary overall commutation system including the terminal device or UE and the network node (such as the first network node, the second network node, or the third network node) will be introduced as below.

[0354] FIG.9 shows an example of a communication system 9100 in accordance with some embodiments.

[0355] In the example, the communication system 9100 includes a telecommunication network 9102 that includes an access network 9104, such as a radio access network (RAN), and a core network 9106, which includes one or more core network nodes 9108. The access network 9104 includes one or more access network nodes, such as network nodes 9110a and 9110b (one or more of which may be generally referred to as network nodes 9110), or any other similar 3rd Generation Partnership Project (3 GPP) access nodes or non-3GPP access points. Moreover, as will be appreciated 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 9102 includes one or more Open-RAN (ORAN) network nodes. An ORAN network node is a node in the telecommunication network 9102 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 9102, including one or more network nodes 9110 and / or core network nodes 9108.

[0356] 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 or a non-real time control application, 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 9110 facilitatedirect or indirect connection of user equipment (UE), such as by connecting UEs 9111a, 9112, 9111c, and 911 Id (one or more of which may be generally referred to as UEs 9112) to the core network 9106 over one or more wireless connections.

[0357] 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 9100 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 9100 may include and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.

[0358] The UEs 9112 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 9110 and other communication devices. Similarly, the network nodes 9110 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs 9112 and / or with other network nodes or equipment in the telecommunication network 9102 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 9102.

[0359] In the depicted example, the core network 9106 connects the network nodes 9110 to one or more hosts, such as host 9116. 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 9106 includes one more core network nodes (e.g., core network node 9108) 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 9108. 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).

[0360] The host 9116 may be under the ownership or control of a service provider other than an operator or provider of the access network 9104 and / or the telecommunication network 9102,and may be operated by the service provider or on behalf of the service provider. The host 9116 may host a variety of applications to provide one or more service. 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.

[0361] As a whole, the communication system 9100 of FIG.9 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 Mobile Telecommunications 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.

[0362] In some examples, the telecommunication network 9102 is a cellular network that implements 3 GPP standardized features. Accordingly, the telecommunications network 9102 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 9102. For example, the telecommunications network 9102 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.

[0363] In some examples, the UEs 9112 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 9104 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 9104. 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).

[0364] In the example, the hub 9114 communicates with the access network 9104 to facilitate indirect communication between one or more UEs (e.g., UE 9111c and / or 91 l id) and networknodes (e.g., network node 9110b). In some examples, the hub 9114 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 9114 may be a broadband router enabling access to the core network 9106 for the UEs. As another example, the hub 9114 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 9110, or by executable code, script, process, or other instructions in the hub 9114. As another example, the hub 9114 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 9114 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub 9114 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub 9114 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub 9114 acts as a proxy server or orchestrator for the UEs, in particular if one or more of the UEs are low energy loT devices.

[0365] The hub 9114 may have a constant / persistent or intermittent connection to the network node 9110b. The hub 9114 may also allow for a different communication scheme and / or schedule between the hub 9114 and UEs (e.g., UE 9111c and / or 91 l id), and between the hub 9114 and the core network 9106. In other examples, the hub 9114 is connected to the core network 9106 and / or one or more UEs via a wired connection. Moreover, the hub 9114 may be configured to connect to an M2M service provider over the access network 9104 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 9110 while still connected via the hub 9114 via a wired or wireless connection. In some embodiments, the hub 9114 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 9110b. In other embodiments, the hub 9114 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 9110b, but which is additionally capable of operating as a communication start and / or end point for certain data channels.

[0366] FIG.10 shows a UE 10200 in accordance with some embodiments. 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 device, playback appliance, wearable terminal device, wireless endpoint, mobilestation, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), smart 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) LTE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.

[0367] A UE may support device-to-device (Did) communication, for example by implementing a 3 GPP standard for sidelink communication, Dedicated Short-Range Communication (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).

[0368] The UE 10200 includes processing circuitry 10202 that is operatively coupled via a bus 10204 to an input / output interface 10206, a power source 10208, a memory 10210, a communication interface 10212, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in FIG.10. 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.

[0369] The processing circuitry 10202 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 10210. The processing circuitry 10202 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 10202 may include multiple central processing units (CPUs).

[0370] In the example, the input / output interface 10206 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 anycombination thereof. An input device may allow a user to capture information into the UE 10200. 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 any combination 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.

[0371] In some embodiments, the power source 10208 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 10208 may further include power circuitry for delivering power from the power source 10208 itself, and / or an external power source, to the various parts of the UE 10200 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source 10208. Power circuitry may perform any formatting, converting, or other modification to the power from the power source 10208 to make the power suitable for the respective components of the UE 10200 to which power is supplied.

[0372] The memory 10210 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 read-only memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory 10210 includes one or more application programs 10214, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data 10216. The memory 10210 may store, for use by the UE 10200, any of a variety of various operating systems or combinations of operating systems.

[0373] The memory 10210 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 circuitcard (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 10210 may allow the UE 10200 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 10210, which may be or comprise a device-readable storage medium.

[0374] The processing circuitry 10202 may be configured to communicate with an access network or other network using the communication interface 10212. The communication interface 10212 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna 10222. The communication interface 10212 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 10218 and / or a receiver 10220 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter 10218 and receiver 10220 may be coupled to one or more antennas (e.g., antenna 10222) and may share circuit components, software or firmware, or alternatively be implemented separately.

[0375] In the illustrated embodiment, communication functions of the communication interface 10212 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 / internet protocol (TCP / IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.

[0376] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface 10212, 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 severalsensors), 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).

[0377] 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 the control 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.

[0378] 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 head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), 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 10200 shown in FIG.10.

[0379] 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 3GPP 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.

[0380] 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 speedinformation (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.

[0381] FIG.11 shows a network node 11300 in accordance with 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 NR NodeBs (gNBs)), 0-RAN nodes or components of an 0-RAN node (e.g., 0-RU, 0-DU, O-CU).

[0382] 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).

[0383] 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).

[0384] The network node 11300 includes a processing circuitry 11302, a memory 11304, a communication interface 11306, and a power source 11308. The network node 11300 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 11300 comprisesmultiple 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 11300 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 11304 for different RATs) and some components may be reused (e.g., a same antenna 11310 may be shared by different RATs). The network node 11300 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 11300, 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 11300.

[0385] The processing circuitry 11302 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 11300 components, such as the memory 11304, to provide network node 11300 functionality.

[0386] In some embodiments, the processing circuitry 11302 includes a system on a chip (SOC). In some embodiments, the processing circuitry 11302 includes one or more of radio frequency (RF) transceiver circuitry 11312 and baseband processing circuitry 11314. In some embodiments, the radio frequency (RF) transceiver circuitry 11312 and the baseband processing circuitry 11314 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 11312 and baseband processing circuitry 11314 may be on the same chip or set of chips, boards, or units.

[0387] The memory 11304 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 11302. The memory 11304 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more oflogic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry 11302 and utilized by the network node 11300. The memory 11304 may be used to store any calculations made by the processing circuitry 11302 and / or any data received via the communication interface 11306. In some embodiments, the processing circuitry 11302 and memory 11304 is integrated.

[0388] The communication interface 11306 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, the communication interface 11306 comprises port(s) / terminal(s) 11316 to send and receive data, for example to and from a network over a wired connection. The communication interface 11306 also includes radio front-end circuitry 11318 that may be coupled to, or in certain embodiments a part of, the antenna 11310. Radio front-end circuitry 11318 comprises filters 11320 and amplifiers 11322. The radio front-end circuitry 11318 may be connected to an antenna 11310 and processing circuitry 11302. The radio front-end circuitry may be configured to condition signals communicated between antenna 11310 and processing circuitry 11302. The radio front-end circuitry 11318 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 11318 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 11320 and / or amplifiers 11322. The radio signal may then be transmitted via the antenna 11310. Similarly, when receiving data, the antenna 11310 may collect radio signals which are then converted into digital data by the radio front-end circuitry 11318. The digital data may be passed to the processing circuitry 11302. In other embodiments, the communication interface may comprise different components and / or different combinations of components.

[0389] In certain alternative embodiments, the network node 11300 does not include separate radio front-end circuitry 11318, instead, the processing circuitry 11302 includes radio front-end circuitry and is connected to the antenna 11310. Similarly, in some embodiments, all or some of the RF transceiver circuitry 11312 is part of the communication interface 11306. In still other embodiments, the communication interface 11306 includes one or more ports or terminals 11316, the radio front-end circuitry 11318, and the RF transceiver circuitry 11312, as part of a radio unit (not shown), and the communication interface 11306 communicates with the baseband processing circuitry 11314, which is part of a digital unit (not shown).

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

[0391] The antenna 11310, communication interface 11306, and / or the processing circuitry 11302 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 11310, the communication interface 11306, and / or the processing circuitry 11302 may be configured to perform any transmitting operations described herein 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.

[0392] The power source 11308 provides power to the various components of network node 11300 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 11308 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 11300 with power for performing the functionality described herein. For example, the network node 11300 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 11308. As a further example, the power source 11308 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.

[0393] Embodiments of the network node 11300 may include additional components beyond those shown in FIG.11 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 11300 may include user interface equipment to allow input of information into the network node 11300 and to allow output of information from the network node 11300. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 11300.

[0394] FIG.12 is a block diagram of a host 12400, which may be an embodiment of the host 9116 of FIG.9, in accordance with various aspects described herein. As used herein, the host 12400 may be or comprise various combinations hardware and / or software, including a standalone server, a blade server, a cloud-implemented server, a distributed server, a virtual machine, container, or processing resources in a server farm. The host 12400 may provide one or more services to one or more UEs.

[0395] The host 12400 includes processing circuitry 12402 that is operatively coupled via a bus 12404 to an input / output interface 12406, a network interface 12408, a power source 12410, and a memory 12412. Other components may be included in other embodiments. Features of these components may be substantially similar to those described with respect to the terminal devices, such that the descriptions thereof are generally applicable to the corresponding components of host 12400.

[0396] The memory 12412 may include one or more computer programs including one or more host application programs 12414 and data 12416, which may include user data, e.g., data generated by a UE for the host 12400 or data generated by the host 12400 for a UE. Embodiments of the host 12400 may utilize only a subset or all of the components shown. The host application programs 12414 may be implemented in a container-based architecture and may provide support for video codecs (e.g., Versatile Video Coding (VVC), High Efficiency Video Coding (HEVC), Advanced Video Coding (AVC), MPEG, VP9) and audio codecs (e.g., FLAC, Advanced Audio Coding (AAC), MPEG, G.711), including transcoding for multiple different classes, types, or implementations of UEs (e.g., handsets, desktop computers, wearable display systems, heads-up display systems). The host application programs 12414 may also provide for user authentication and licensing checks and may periodically report health, routes, and content availability to a central node, such as a device in or on the edge of a core network. Accordingly, the host 12400 may select and / or indicate a different host for over-the-top services for a UE. The host application programs 12414 may support various protocols, such as the HTTP Live Streaming (HLS) protocol, Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Dynamic Adaptive Streaming over HTTP (MPEG-DASH), etc.

[0397] FIG.13 is a block diagram illustrating a virtualization environment 13500 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 13500 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 virtualization environment 13500 includes components defined by the 0-RAN Alliance, such as an O-Cloudenvironment orchestrated by a Service Management and Orchestration Framework via an 0-2 interface.

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

[0399] Hardware 13504 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 13506 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 13508 A and 13508B (one or more of which may be generally referred to as VMs 13508), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein. The virtualization layer 13506 may present a virtual operating platform that appears like networking hardware to the VMs 13508.

[0400] The VMs 13508 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 13506. Different embodiments of the instance of a virtual appliance 13502 may be implemented on one or more of VMs 13508, 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.

[0401] In the context of NFV, a VM 13508 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 13508, and that part of hardware 13504 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 13508 on top of the hardware 13504 and corresponds to the application 13502.

[0402] Hardware 13504 may be implemented in a standalone network node with generic or specific components. Hardware 13504 may implement some functions via virtualization. Alternatively, hardware 13504 may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration 13510, which, among others, oversees lifecycle management of applications13502. In some embodiments, hardware 13504 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 13512 which may alternatively be used for communication between hardware nodes and radio units.

[0403] FIG.14 shows a communication diagram of a host 14602 communicating via a network node 14604 with a UE 14606 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE 9111a of FIG.9), network node (such as network node 9110a of FIG.9), and host (such as host 9116 of FIG.9 and / or host 12400 of FIG.12) discussed in the preceding paragraphs will now be described with reference to FIG.14.

[0404] Like host 12400, embodiments of host 14602 include hardware, such as a communication interface, processing circuitry, and memory. The host 14602 also includes software, which is stored in or accessible by the host 14602 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE 14606 connecting via an over-the-top (OTT) connection 14650 extending between the UE 14606 and host 14602. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection 14650.

[0405] The network node 14604 includes hardware enabling it to communicate with the host 14602 and UE 14606. The connection 14660 may be direct or pass through a core network (like core network 9106 of FIG.9) and / or one or more other intermediate networks, such as one or more public, private, or hosted networks. For example, an intermediate network may be a backbone network or the Internet.

[0406] The UE 14606 includes hardware and software, which is stored in or accessible by UE 14606 and executable by the UE’s processing circuitry. The software includes a client application, such as a web browser or operator-specific “app” that may be operable to provide a service to a human or non-human user via UE 14606 with the support of the host 14602. In the host 14602, an executing host application may communicate with the executing client application via the OTT connection 14650 terminating at the UE 14606 and host 14602. In providing the service to the user, the UE's client application may receive request data from the host's host application and provide user data in response to the request data. The OTT connection 14650 may transfer both the request data and the user data. The UE's clientapplication may interact with the user to generate the user data that it provides to the host application through the OTT connection 14650.

[0407] The OTT connection 14650 may extend via a connection 14660 between the host 14602 and the network node 14604 and via a wireless connection 14670 between the network node 14604 and the UE 14606 to provide the connection between the host 14602 and the UE 14606. The connection 14660 and wireless connection 14670, over which the OTT connection 14650 may be provided, have been drawn abstractly to illustrate the communication between the host 14602 and the UE 14606 via the network node 14604, without explicit reference to any intermediary devices and the precise routing of messages via these devices.

[0408] As an example of transmitting data via the OTT connection 14650, in step 14608, the host 14602 provides user data, which may be performed by executing a host application. In some embodiments, the user data is associated with a particular human user interacting with the UE 14606. In other embodiments, the user data is associated with a UE 14606 that shares data with the host 14602 without explicit human interaction. In step 14610, the host 14602 initiates a transmission carrying the user data towards the UE 14606. The host 14602 may initiate the transmission responsive to a request transmitted by the UE 14606. The request may be caused by human interaction with the UE 14606 or by operation of the client application executing on the UE 14606. The transmission may pass via the network node 14604, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step 14612, the network node 14604 transmits to the UE 14606 the user data that was carried in the transmission that the host 14602 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step 14614, the UE 14606 receives the user data carried in the transmission, which may be performed by a client application executed on the UE 14606 associated with the host application executed by the host 14602.

[0409] In some examples, the UE 14606 executes a client application which provides user data to the host 14602. The user data may be provided in reaction or response to the data received from the host 14602. Accordingly, in step 14616, the UE 14606 may provide user data, which may be performed by executing the client application. In providing the user data, the client application may further consider user input received from the user via an input / output interface of the UE 14606. Regardless of the specific manner in which the user data was provided, the UE 14606 initiates, in step 14618, transmission of the user data towards the host 14602 via the network node 14604. In step 14620, in accordance with the teachings of the embodiments described throughout this disclosure, the network node 14604 receives user data from the UE 14606 and initiates transmission of the received user data towards the host 14602. In step 14622, the host 14602 receives the user data carried in the transmission initiated by the UE 14606.

[0410] One or more of the various embodiments improve the performance of OTT services provided to the UE 14606 using the OTT connection 14650, in which the wireless connection 14670 forms the last segment. More precisely, in some embodiments herein, it can fulfill customer expectations and avoid the existing problems stated above. In some embodiments herein, it is no need to add multiple service instances and existing sessions can be kept. In some embodiments herein, the NF consumer which doesn’t support the new attribute (e.g. CanaryTestlndication) may still select the service instance and run legacy features. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” attribute will steer the traffic matched with the selectionconditions (new features, SUPI range) to this NF service instance. In some embodiments herein, the NF consumer that supports this new “CanaryTestlndicator” and “ExclusiveCanary” attributes shall only select an NF producer that has its NF status set to "CANARY RELEASE" and the CanaryTestlndication is set to TRUE.

[0411] In an example scenario, factory status information may be collected and analyzed by the host 14602. As another example, the host 14602 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host 14602 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host 14602 may store surveillance video uploaded by a UE. As another example, the host 14602 may store or control access to media content such as video, audio, VR or AR which it can broadcast, multicast or unicast to UEs. As other examples, the host 14602 may be used for energy pricing, remote control of non-time critical electrical load to balance power generation needs, location services, presentation services (such as compiling diagrams etc. from data collected from remote devices), or any other function of collecting, retrieving, storing, analyzing and / or transmitting data.

[0412] In some examples, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve. There may further be an optional network functionality for reconfiguring the OTT connection 14650 between the host 14602 and UE 14606, in response to variations in the measurement results. The measurement procedure and / or the network functionality for reconfiguring the OTT connection may be implemented in software and hardware of the host 14602 and / or UE 14606. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection 14650 passes; the sensors may participate in the measurement procedure by supplying values of the monitored quantities exemplified above, or supplying values of other physical quantities from which software may compute or estimate the monitored quantities. The reconfiguring of the OTT connection 14650 may include message format, retransmission settings, preferred routing etc.; the reconfiguring need not directly alterthe operation of the network node 14604. Such procedures and functionalities may be known and practiced in the art. In certain embodiments, measurements may involve proprietary UE signaling that facilitates measurements of throughput, propagation times, latency and the like, by the host 14602. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection 14650 while monitoring propagation times, errors, etc.

[0413] Although the computing devices described herein (e.g., UEs, network nodes, hosts) 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.

[0414] 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 theprocessing 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.

[0415] The term unit or module may have conventional meaning in the field of electronics, electrical devices and / or electronic devices and may include, for example, electrical and / or electronic circuitry, devices, modules, processors, memories, logic solid state and / or discrete devices, computer programs or instructions for carrying out respective tasks, procedures, computations, outputs, and / or displaying functions, and so on, as such as those that are described herein.

[0416] According to an aspect of the disclosure it is provided a computer program product being tangibly stored on a computer readable storage medium and including instructions which, when executed on at least one processor, cause the at least one processor to carry out any of the methods as described above.

[0417] According to an aspect of the disclosure it is provided a computer-readable storage medium storing instructions which when executed by at least one processor, cause the at least one processor to carry out any of the methods as described above.

[0418] In addition, the present disclosure may also provide a carrier containing the computer program as mentioned above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or computer readable storage medium. The computer readable storage medium can be, for example, an optical compact disk or an electronic memory device like a RAM (random access memory), a ROM (read only memory), Flash memory, magnetic tape, CD-ROM, DVD, Blue-ray disc and the like.

[0419] The techniques described herein may be implemented by various means so that an apparatus implementing one or more functions of a corresponding apparatus described with an embodiment comprises not only prior art means, but also means for implementing the one or more functions of the corresponding apparatus described with the embodiment and it may comprise separate means for each separate function, or means that may be configured to perform two or more functions. For example, these techniques may be implemented in hardware (one or more apparatuses), firmware (one or more apparatuses), software (one or more modules), or combinations thereof. For a firmware or software, implementation may be made through modules (e.g., procedures, functions, and so on) that perform the functions described herein.

[0420] Exemplary embodiments herein have been described above with reference to block diagrams and flowchart illustrations of methods and apparatuses. It will be understood that each block of the block diagrams and flowchart illustrations, and combinations of blocks in the block diagrams and flowchart illustrations, respectively, can be implemented by various means including computer program instructions. These computer program instructions may be loadedonto a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus create means for implementing the functions specified in the flowchart block or blocks.

[0421] Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are contained in the above discussions, these should not be construed as limitations on the scope of the subject matter described herein, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination.

[0422] While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any implementation or of what may be claimed, but rather as descriptions of features that may be specific to particular embodiments of particular implementations. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.

[0423] It will be obvious to a person skilled in the art that, as the technology advances, the inventive concept can be implemented in various ways. The above described embodiments are given for describing rather than limiting the disclosure, and it is to be understood that modifications and variations may be resorted to without departing from the spirit and scope of the disclosure as those skilled in the art readily understand. Such modifications and variations are considered to be within the scope of the disclosure and the appended claims. The protection scope of the disclosure is defined by the accompanying claims.

[0424] In an embodiment, 3GPP TS 29.510 V18.5.0 may be amended as following.6.1.9 Features supported by the NFManagement serviceThe syntax of the supportedFeatures attribute is defined in clause 5.2.2 of 3GPP TS 29.571 [7],The following features are defined for the Nnrf_NFManagement service.Table 6.1.9-1: Features of supportedFeatures attribute used by Nnrf NFManagement service6.1.6.2.2 Type: NFProfileTable 6.1.6.2.2-1: Definition of type NFProfile(only attributes that are effected by the invention are shown)The same information, CanaryTestlndication, may be added also into the NF Service information element under 6.1.6.2.3 Type: NFService. From a 3GPP perspective the solution may only result in including the information in one place but from an IvD completeness / coverage perspective it’s best to cover both options.The following also needs to be added to 3GPP in order to describe the indicator.6.1.6.2.xxx Type: CanaryTestlndicationTable 6.1.6.2.xxx-1: Definition of type CanaryTestlndication6.1.6.2.xxx Type: ExclusiveCanaryTable 6.1.6.2.xxx-1: Definition of type ExclusiveCanaryThen finally update Annex D (in 3GPP TS 29.510) accordingly e.g.,In certain cases, the operator may want to maintain the NF Instance fully operative (so it keeps serving traffic to any consumer), at the same time as testing the new software features; in such case,- the operator may deploy distinct service instances, some of which may keep the old software version and keep the "REGISTERED" NFServiceStatus, while other service instances may he deployed with the new software version, and set the NFServiceStatus to "CANARY RELEASE", to ensure that it is only selected by consumers when the desired conditions are met, or- the operator may not deploy distinct service instances, but add CanaryTestlndication attribute together with selectionConditions in the NF profile or NF Service Profile after upgrade the NF Instance to the new software version, to allow selection and test execution on the NF that is fully operational inside the same NF Service instance when the desired conditions are met.Once the producer has defined the selection conditions in its NFProfile, registered at the NRF, the sequence of steps for selection an NF after it is deployed with a "canary" software release, would he as follows:1. NF Service Instance to he software -upgraded changes its status to "UNDISCOVERABLE", and potential consumers are notified2. NF Service Instance gets progressively emptied of existing sessions, until no sessions remain3. NF Service Instance may optionally change its status to "SUSPENDED", to ensure that no residual traffic is sent to the NF Service Instance, and potential consumers are notified4. NF Service Instance is software -upgraded5. NF Service Instance with new software registers in NRF with status "CANARY RELEASE" and includes the set of conditions for selection (e.g. a SUPI range)6. Consumer NF sends discovery to NRF with usual discovery parameters and gets matching NF Instances containing NF Services with status "REGISTERED" or "CANARY RELEASE"Consumer performs selection from the list of candidate NFs and, if the status of the producer NF is "CANARY RELEASE", such NF shall only he selected if the selection conditions match (e.g. it shall only he selected if the SUPI matches the SUPI range indicated by the producer NF).The selection of the candidate producers shall take into account the attributes of the discovered NFProfiles, and in addition, the consumer shall evaluate the attributes in the selection conditions, which shall take precedence over the attributes of the NFProfile of the producer, for those NF (Service) Instances in "CANARY RELEASE" status.If multiple candidate producers are available with NF (Service) status set to "REGISTERED" or "CANARY RELEASE", the consumer shall preferably select a producer in "CANARY RELEASE" status.If multiple candidate producers are available with NF (Service) status set to "REGISTERED " or "CANARY RELEASE", and the attribute ExclusiveCanary equals TRUE then the consumer shall only select a producer in "CANARY RELEASE" status.

Claims

WHAT IS CLAIMED IS:

1. A method (300) performed by a first network node, comprising: obtaining (302) a profile of a third network node; and if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, selecting (302) the third network node.

2. The method according to claim 1, wherein selecting the third network, if performed when the profile of the third network node comprises first information, comprises maintaining existing service sessions with the third network node.

3. The method according to any of claims 1 or 2, wherein the first information comprises a canary test indication set to true.

4. The method according to any of claims 1-3, wherein the profile of the third network node comprises a network function instance status set to registered.

5. The method according to any of claims 1-4, further comprising: if the profile of the third network node comprises second information indicating that the third network node can be selected for testing, selecting (314) the third network node.

6. The method according to claim 5, wherein selecting the third network, if performed when the profile of the third network node comprises second information, comprises emptying existing service sessions with the third network node.

7. The method according to claim 5 or 6, wherein the second information comprises a network function instance status set to canary release.

8. The method according to any of claims 1-7, wherein the profile of the third network node further comprises at least one selection condition, the method further comprises: obtaining (322) information to be matched with the at least one selection condition; and matching (324) the obtained information with the at least one selection condition, wherein selecting the third network node comprises selecting the third network node if the obtained information is matched to the at least one selection condition.

9. The method according to any of claims 1-8, wherein the profile of the third network node further comprises third information indicating only selecting the third network node, and selecting the third network node comprises only selecting the third network node based on the third information.

10. The method according to any of claims 1-9, wherein obtaining a profile of a third network node comprises: sending (332) a first discovery request to a second network node; andreceiving (334) a first discovery response comprising the profile of the third network node from the second network node.

11. The method according to claim 10, wherein the second network node comprises a network repository node.

12. The method according to any of claims 1-9, wherein obtaining a profile of a third network node comprises: if the profile of the third network node is stored or configured in the first network node, obtaining (342) the profile of the third network node locally.

13. The method according to any of claims 1-12, wherein the first network node comprises at least one of a network function consumer, a network function service consumer, or a service communication proxy, wherein the third network node comprises at least one of a network function producer, or a network function service producer.

14. The method according to claim 13, wherein the network function consumer or the network function service consumer comprises an Access and Mobility Management Function, AMF, wherein the network function producer or the network function service producer comprises a Session Management Function, SMF.

15. A method (400) performed by a second network node, comprising: receiving (402) a first discovery request from a first network node; and sending (404) a first discovery response comprising a profile of a third network node to the first network node, wherein the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

16. The method according to claim 15, wherein the first information is incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the third network node that has been received by the second network node from the third network node that the third network node can be selected for both testing and normal service during canary test, and wherein the second information is incorporated into the profile of the third network node that is sent to the first network node, if it is indicated in a profile of the third network node that hasbeen received by the second network node from the third network node that the third network node can be selected for testing only during canary test.

17. The method according to claim 15 or 16, wherein the first information comprises a canary test indication set to true.

18. The method according to any of claims 15-17, wherein the profile of the third network node comprises a network function instance status set to registered.

19. The method according to claim 15 or 16, wherein the second information comprises a network function instance status set to canary release.

20. The method according to any of claims 15-19, wherein the profile of the third network node further comprises third information indicating only selecting the third network node.

21. The method according to any of claims 15-20, further comprising: receiving (412) a register request comprising the profile of the third network node from the third network node; and storing ( 14) the profile of the third network node.

22. The method according to any of claims 15-21, further comprising: receiving (422) an update request comprising an updated profile of the third network node from the third network node; and storing (424) the updated profile of the third network node, wherein the updated profile of the third network node comprises the first information or the second information.

23. The method according to any of claims 15-22, wherein the second network node comprises a network repository node.

24. The method according to any of claims 15-23, wherein the first network node comprises at least one of: a network function consumer, a network function service consumer, or a service communication proxy, wherein the third network node comprises at least one of: a network function producer, or a network function service producer.

25. The method according to claim 24, wherein the network function consumer or the network function service consumer comprises an Access and Mobility Management Function, AMF, wherein the network function producer or the network function service producer comprises a Session Management Function, SMF.

26. A method (500) performed by a third network node, comprising: sending (502) a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node, wherein the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing, wherein the updated profile of the third network node comprises the first information or the second information.

27. The method of claim 26, wherein the first information is incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for both testing and normal service during canary test, and wherein the second information is incorporated into the profile or the updated profile by the third network node, if the third node is detecting a configuration that is indicating that the third network node can be selected for testing during canary test.

28. The method according to claim 26 or 27, wherein the first information comprises a canary test indication set to true.

29. The method according to claim 28, wherein the profile or the updated profile of the third network node comprises a network function instance status set to registered.

30. The method according to any of claims 26-29, wherein the second information comprises a network function instance status set to canary release.

31. The method according to any of claims 26-30, wherein the profile or the updated profile of the third network node further comprises third information indicating only selecting the third network node.

32. The method according to any of claims 26-31, wherein the second network node comprises a network repository node.

33. The method according to any of claims 26-32, wherein the third network node comprises at least one of a network function producer, or a network function service producer.

34. The method according to claim 33, wherein the network function producer or the network function service producer comprises a Session Management Function, SMF.

35. A first network node (700), comprising: a processor (721); and a memory (722) coupled to the processor (721), said memory (722) containing instructionsexecutable by said processor (721), whereby said first network node (700) is operative to: obtain a profile of a third network node; and if the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service, select the third network node.

36. The first network node according to claim 35, wherein the first network node is further operative to perform the method of any one of claims 2 to 14.

37. A second network node (700), comprising: a processor (721); and a memory (722) coupled to the processor (721), said memory (722) containing instructions executable by said processor (721), whereby said second network node (700) is operative to: receive a first discovery request from a first network node; and send a first discovery response comprising a profile of a third network node to the first network node, wherein the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing.

38. The second network node according to claim 37, wherein the second network node is further operative to perform the method of any one of claims 16 to 25.

39. A third network node (700), comprising: a processor (721); and a memory (722) coupled to the processor (721), said memory (722) containing instructions executable by said processor (721), whereby said third network node (700) is operative to: send a register request comprising a profile of the third network node or an update request comprising an updated profile of the third network to a second network node, wherein the profile of the third network node comprises first information indicating that the third network node can be selected for both testing and normal service or second information indicating that the third network node can be selected for testing, wherein the updated profile of the third network node comprises the first information or the second information.

40. The third network node according to claim 39, wherein the third network node is further operative to perform the method of any one of claims 27 to 34.

41. A computer-readable storage medium storing instructions which when executed by at least one processor, cause the at least one processor to perform the method according to any one of claims 1 to 34.

42. A computer program product comprising instructions which when executed by at least one processor, cause the at least one processor to perform the method according to any one of claims 1 to 34.