Patent Description:
The 3GPP security standardization working group SA3 has finalized the security specification for the Release <NUM> of the <NUM> System in TS <NUM> [<NUM>]. The <NUM> System includes many new features that require the introduction of additional security mechanisms. For example, the <NUM> System integrates non-3GPP access (e.g. WLAN) alongside 3GPP access (New Radio and LTE) in a seamless manner. More precisely, in <NUM>, the UE can run the usual service access procedure independently of the underlying access.

The <NUM> System consists of the Access network (AN) and the Core Network (CN). The AN is the network that allows the UE to gain connectivity to the CN, e.g. the base station which could be a next generation node B (gNB) or a next generation evolved node B (ng-eNB) in <NUM>. The CN contains all the Network Functions (NF) ensuring a wide range of different functionalities such as session management, connection management, charging, authentication, etc. <FIG>, from TS <NUM> [<NUM>], provides a high overview of the <NUM> architecture for the non-roaming scenario.

The communication links between the UE and the network (AN and CN) can be grouped in two different strata. The UE may communicate with the CN over the Non-Access Stratum (NAS), and may communicate with the AN over the Access Stratum (AS). All the NAS communication takes place between the UE and the Access and connectivity Management Function (AMF) in the CN over the NAS protocol (N1 interface in <FIG>). Protection of the communications over this these strata is provided by the NAS protocol (for NAS) and the packet data convergence protocol (PDCP) protocol (for AS).

More details on the <NUM> security can be found in TS <NUM> [<NUM>]. In general, the security mechanisms for these protocols rely on multiple different security keys. In the <NUM> security specification, these keys are organized in a hierarchy. At the top level there is the long-term key part of the authentication credential and stored in the SIM card on the UE side and in the unified data management/authentication credential repository and processing function (UDM/ARPF) on the Home Public Land Mobile Network (PLMN) side.

A successful Primary Authentication between the UE and the AUSF in the Home PLMN may lead to the establishment of the KAUSF key which is the second level key in the hierarchy. This key is not intended to leave the Home PLMN and is used for new features introduced in the <NUM> System, such as for the provisioning of parameters to the UE from the Home PLMN. More precisely the KAUSF key may be used for the integrity protection of the messages delivered from the Home PLMN to the UE. As described in TS <NUM> [<NUM>], such new features include the Steering of Roaming (SoR) and the UDM parameter delivery procedures.

The KAUSF may be used to derive another key (KSEAF) that is sent to the serving PLMN. The serving PLMN key (KSEAF) may then be used to derive the subsequent NAS and AS protection keys. These lower level keys together with other security parameters such as the cryptographic algorithms, the UE security capabilities, the value of the counters used for replay protection in the different protocols, etc., constitute what is defined as the <NUM> security context in TS <NUM> [<NUM>]. KAUSF is not part of the <NUM> security context since <NUM> security context resides in the serving network.

The issue of the lack of synchronization between a UE and an AUSF with respect to a KAUSF is discussed in the NEC 3GPP submissions entitled "KAUSF desynchronization problem and solutions" (S3-<NUM>, Reno (USA), <NUM>-<NUM> May <NUM>) and "KAUSF desynchronization problem and solutions - updated version after conf call on <NUM> Apr" (S3-<NUM>, Reno (USA), <NUM>-<NUM> May <NUM>).

According to some embodiments of inventive concepts, a mechanism can be provided to determine which security key is to be used in protecting messages sent from a Home PLMN to an electronic device.

Aspects of the invention are set out in the independent claims appended hereto.

One advantage that may be provided is that the KAUSF key to be used for the SoR and UPU like procedures is synchronized between the Home PLMN and the electronic device. This advantage protects the integrity of information to be delivered from the Home PLMN to the electronic device. A further advantage that may be provided is that no additional signaling overhead between the electronic device and the network is necessary.

In TS <NUM>[<NUM>], there are two features that may make use of the KAUSF key.

The first feature of these two features is the Steering of Roaming (SoR) security mechanism described in clause <NUM> of TS <NUM> [<NUM>]. The SoR mechanism is used for the delivery of information about the list of preferred PLMNs from the UDM in the Home PLMN to the UE. This information is included in an integrity protected message where the KAUSF key may be used for the calculation of the Message Authentication Code (MAC) as described in Annex A. <NUM> of TS <NUM> [<NUM>].

The second feature of the two features is the UE parameters update (UPU) via UDM control procedure security mechanism specified in clause <NUM> of TS <NUM> [<NUM>]. This control procedure is for the delivery of UE parameter updates from the UDM in the Home PLMN to the UE. The UPU updates may be included in an integrity protected message where the KAUSF is used for the calculation of the MAC (see Annex A. <NUM> of TS <NUM> [<NUM>]).

In the <NUM> System, a UE can be simultaneously registered to the network via 3GPP and non-3GPP accesses. In such a case, the UE can establish and maintain two parallel NAS connections and run in parallel any of the NAS procedures to request resources and access services over each of the accesses independently and in parallel. The UE can also be registered simultaneously to two different PLMNs, each over a specific type of access as shown in <FIG>, which is from TS <NUM> [<NUM>].

In the scenario of <FIG>, the UE is registered over 3GPP access to a Visited PLMN (designated as VPLMN1 in <FIG>) and over non-3GPP access to a different Visited PLMN (designated as VPLMN2 in <FIG>). Thus, the UE may be communicating in parallel with two different Visited PLMNs. In order to secure the communication, the UE may be required to maintain and use in parallel two different <NUM> security contexts each associated with a specific PLMN as described in clause <NUM>. <NUM> of TS <NUM> [<NUM>]. These two <NUM> security context are resulting from two different independent Primary Authentication procedures involving the HPLMN, each for a specific VPLMN over the corresponding access. Each procedure would be typically performed during initial registration with each VPLMN.

An issue that may arise is that these Primary Authentications may lead to two different KAUSF keys in the HPLMN side and in the UE side. It may not be clear which of the two different KAUSF keys to use for services such as the SoR or the UDM parameter updates. If the UE and the AUSF KAUSF keys are not synchronized, then there is a risk that the UE and the AUSF may use different KAUSF keys for the SoR and SoR-like procedures leading to an integrity check failure. Consequently, the HPLMN information may not be delivered. The UE would not know whether the failure is due to some entity tampering with the information or due to the usage of the wrong KAUSF. This failure could also lead to a deadlock since if the UE does not acknowledge the receipt of the message due to integrity check failure, then the AUSF would simply attempt delivering it again which would only lead to the same failure.

<FIG> is a block diagram illustrating elements of an electronic device <NUM> (also referred to as a terminal, a mobile terminal, a mobile communication terminal, a wireless communication device, a wireless terminal, a wireless device, a wireless communication terminal, a wired device, user equipment, UE, a user equipment node/terminal/device, etc.) configured to provide communication according to embodiments of inventive concepts. The electronic device <NUM> may be a wired device or a wireless device. (When the electronic device <NUM> is a wireless device, the wireless device may be provided, for example, as discussed below with respect to wireless device <NUM> of <FIG>. ) As shown, when the electronic device <NUM> is a wireless electronic device, the wireless electronic device may include an antenna <NUM> (e.g., corresponding to antenna <NUM> of <FIG>), and transceiver circuitry <NUM> (also referred to as a transceiver, e.g., corresponding to interface <NUM> of <FIG>) including a transmitter and a receiver configured to provide uplink and downlink radio communications with a base station(s) (e.g., corresponding to network node <NUM> of <FIG>) of a radio access network. The electronic device <NUM> may also include processing circuitry <NUM> (also referred to as a processor, e.g., corresponding to processing circuitry <NUM> of <FIG>) coupled to the transceiver circuitry, and memory circuitry <NUM> (also referred to as memory, e.g., corresponding to device readable medium <NUM> of <FIG>) coupled to the processing circuitry. The memory circuitry <NUM> may include computer readable program code that when executed by the processing circuitry <NUM> causes the processing circuitry to perform operations according to embodiments disclosed herein. According to other embodiments, processing circuitry <NUM> may be defined to include memory so that separate memory circuitry is not required. The electronic device <NUM> may also include a network interface <NUM> coupled to processing circuitry <NUM> and configured to provide communications with a base station(s) and may include other interfaces (such as a user interface) coupled with processing circuitry <NUM>, to communicate with and/or electronic device may be incorporated in a vehicle.

As discussed herein, operations of electronic device <NUM> may be performed by processing circuitry <NUM> and/or transceiver circuitry <NUM>. For example, when the electronic device <NUM> is a wireless device, processing circuitry <NUM> may control transceiver circuitry <NUM> to transmit communications through transceiver circuitry <NUM> over a radio interface to a radio access network node (also referred to as a base station) and/or to receive communications through transceiver circuitry <NUM> from a RAN node over a radio interface. Moreover, modules may be stored in memory circuitry <NUM>, and these modules may provide instructions so that when instructions of a module are executed by processing circuitry <NUM>, processing circuitry <NUM> performs respective operations (e.g., operations discussed below with respect to Example Embodiments relating to electronic devices).

<FIG> is a block diagram illustrating elements of an AMF configured to provide communication. As shown the AMF may include at least one network interface circuit <NUM> (also referred to as a network interface) configured to provide communications with nodes (e.g., with SMFs, ANs, and/or core network nodes). The AMF may also include at least one processor circuit <NUM> (also referred to as a processor) coupled to the transceiver, and at least one memory circuit <NUM> (also referred to as memory) coupled to the processor. The memory circuit <NUM> may include computer readable program code that when executed by the processor <NUM> causes the processor <NUM> to perform operations according to examples disclosed herein. According to other examples, processor <NUM> may be defined to include memory so that a separate memory circuit is not required.

As discussed herein, operations of the AMF may be performed by processor <NUM> and/or network interface <NUM>. Modules may be stored in memory <NUM>, and these modules may provide instructions so that when instructions of a module are executed by processor <NUM>, processor <NUM> performs respective operations (e.g., operations discussed below with respect to Example Embodiments).

A network node may be implemented as a core network CN node without a transceiver. In such embodiments, transmission to an electronic device that is a wireless electronic device may be initiated by the network node so that transmission to the wireless electronic device is provided through a network node including a transceiver (e.g., through a base station or RAN node). Where the network node is a RAN node including a transceiver, initiating transmission may include transmitting through the transceiver.

<FIG> is a block diagram illustrating elements of a public land mobile network PLMN node (e.g., an AUSF node <NUM>) of a communication network configured to provide cellular communication. As shown, the AUSF node <NUM> may include network interface circuitry <NUM> (also referred to as a network interface) configured to provide communications with other nodes of the core network and/or the radio access network RAN. The AUSF node may also include a processing circuitry <NUM> (also referred to as a processor) coupled to the network interface circuitry, and memory circuitry <NUM> (also referred to as memory) coupled to the processing circuitry. The memory circuitry <NUM> may include computer readable program code that when executed by the processing circuitry <NUM> causes the processing circuitry to perform operations according to examples disclosed herein. According to other examples, processing circuitry <NUM> may be defined to include memory so that a separate memory circuitry is not required.

As discussed herein, operations of the AUSF node <NUM> may be performed by processing circuitry <NUM> and/or network interface circuitry <NUM>. For example, processing circuitry <NUM> may control network interface circuitry <NUM> to transmit communications through network interface circuitry <NUM> to one or more other network nodes and/or to receive communications through network interface circuitry from one or more other network nodes. Moreover, modules may be stored in memory <NUM>, and these modules may provide instructions so that when instructions of a module are executed by processing circuitry <NUM>, processing circuitry <NUM> performs respective operations (e.g., operations discussed below with respect to Example Embodiments relating to core network nodes).

In this group of embodiments, the electronic device <NUM> and the AUSF <NUM> in the Home PLMN maintain and use one KAUSF key regardless over whether the electronic device <NUM> is registered over one or both accesses and to which PLMNs (e.g., visited PLMN1 and/or visited PLMN2). In one of the embodiments, the AUSF <NUM> and the electronic device <NUM> may only use the latest KAUSF resulting from the latest (e.g., most recent) successful Primary Authentication run as illustrated in <FIG>.

Turning to <FIG>, in operation 1a, the electronic device <NUM> registers over an access type (e.g., 3GPP or non-3GPP) to the AMF <NUM><NUM> of a first visited PLMN1. The registration leads to a primary authentication with the AUSF <NUM> of the home PLMN in operation 1b. The AUSF <NUM> of the home PLMN and the electronic device <NUM> establish a first KAUSF key. For example, the AUSF <NUM> and electronic device <NUM> may generate the first KAUSF key as specified in clause <NUM>. <NUM> of TS <NUM>. The AUSF <NUM> and the electronic device <NUM> store the KAUSF key in operations 2a and 2b, respectively.

In operation 3a, the electronic device <NUM> registers over an access type (e.g., non-3GPP or 3GPP) to the AMF <NUM><NUM> of a second visited PLMN2. The registration leads to a primary authentication with the AUSF <NUM> of the home PLMN in operation 3b. The AUSF <NUM> of the home PLMN and the electronic device <NUM> establish a second KAUSF key. For example, the AUSF <NUM> and electronic device <NUM> may generate the second KAUSF key as specified in clause <NUM>. <NUM> of TS <NUM>. The AUSF <NUM> and the electronic device <NUM> store the KAUSF key and keeps track of the latest KAUSF key in operations 2a and 2b, respectively, as described below in <FIG>.

At some point in time, the UDM <NUM> in the home PLMN may decide to use the SoR feature to deliver a new or updated PLMN preferred list to the electronic device <NUM>. The UDM <NUM> may send a message protection request (e.g., a SoR protection request or a UPU protection request, etc.) to the AUSF <NUM> in the home PLMN. The AUSF <NUM> determines the latest KAUSF key and uses the latest KAUSF key in operation <NUM> to protect the message associated with the message protection request. In operation <NUM>, the AUSF <NUM> sends a protection message response to the UDM <NUM>.

In operation <NUM>, the UDM <NUM> transmits the protection message response (e.g., a protected SoR message, a protected UPU message, etc.) to the electronic device <NUM>. The electronic device <NUM> uses the latest stored KAUSF key to determine the contents of the protection message response in operation <NUM>.

Operations of an AUSF node <NUM> (implemented using the structure of <FIG>) will now be discussed with reference to the flow chart of <FIG>. For example, modules may be stored in memory <NUM> of <FIG>, and these modules may provide instructions so that when the instructions of a module are executed by respective AUSF node processing circuitry <NUM>, processing circuitry <NUM> performs respective operations of the flow chart.

In operation <NUM>, processing circuitry <NUM> may receive, via network interface <NUM>, a first registration and authentication request from a first PLMN to register and authenticate the electronic device <NUM>. The processing circuitry <NUM> may authenticate the electronic device <NUM> based on the SUPI (subscriber permanent identifier) of the electronic device <NUM> in the first registration and authentication request.

The processing circuitry in operation <NUM> may generate a first security key (i.e., a KAUSF key). In operation <NUM>, the processing circuitry <NUM> may store the first security key. Operations <NUM> and <NUM> may include generating a first time stamp indicating a time when the first security key is generated and associating the first time stamp with the first security key. In other examples, a counter may be incremented when the first security key is generated, and the value of the counter may be associated with the first security key.

In operation <NUM>, processing circuitry <NUM> may receive, via network interface <NUM>, a second registration and authentication request from a second PLMN to register and authenticate the electronic device <NUM>. The processing circuitry <NUM> may authenticate the electronic device <NUM> based on the SUPI of the electronic device <NUM> in the second registration and authentication request.

The processing circuitry in operation <NUM> may generate a second security key (i.e., a KAUSF key). In operation <NUM>, the processing circuitry <NUM> may store the first security key. Operations <NUM> and <NUM> may include generating a second time stamp indicating a time when the second security key is generated and associating the second time stamp with the second security key. In other examples, a counter may be incremented when the second security key is generated, and the value of the counter may be associated with the second security key.

As previously indicated, the UDM <NUM> in the home PLMN may decide to use the SoR feature to deliver a new or updated PLMN preferred list to the electronic device <NUM>. The UDM <NUM> may send a message protection request (e.g., a SoR protection request or a UPU protection request, etc.) to the AUSF node <NUM>. In operation <NUM>, the processing circuity <NUM> may receive, via the network interface <NUM>, a message protection request.

In operation <NUM>, the processing circuitry <NUM> may determine which of the first security key and the second security key is the latest security key. There are different methods of keeping track and determining which of the first security key and the second security key is the latest security key.

Turning to <FIG>, in one example, time stamps are used to determine which of the first security key and the second security key is the latest security key. As indicated above, time stamps may be generated when security keys are generated and/or stored. In operation <NUM>, the processing circuitry <NUM> may obtain the first time stamp associated with the first security key. In operation <NUM>, the processing circuitry <NUM> may obtain the second time stamp associated with the second security key.

In operation <NUM>, the processing circuitry <NUM> may make a determination to determine whether the time of the first time stamp is later than the time of the second time stamp. Responsive to the time of the first time stamp being later than the time of the second time stamp being determined in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the first security key is the latest security key. Responsive to the time of the second time stamp being later than the time of the first time stamp being determined in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the second security key is the latest security key.

Turning to <FIG>, in another example, a counter may be used to determine which of the first security key and the second security key is the latest security key. As indicated above, the value of a counter may be incremented when a security key is generated and/or stored. In operation <NUM>, the processing circuitry <NUM> may obtain the value of the counter associated with the first security key. In operation <NUM>, the processing circuitry <NUM> may obtain the value of the counter associated with the second security key.

In operation <NUM>, the processing circuitry <NUM> may determine whether the value of the counter that is associated with the first security key is higher than the value of the counter that is associated with the second security key. Responsive to the value of the counter associated with the first security key being higher than the value of the counter associated with the second security key being determined in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the first security key is the latest security key. Responsive to the value of the counter associated with the first security key being higher than the value of the counter associated with the second security key being determined in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the second security key is the latest security key.

Turning to <FIG>, in another example, the AUSF node <NUM> may dispose of the "old" security key (e.g., deletes the stored security key) when a new security key is generated and stored. In operation <NUM>, the processing circuitry may determine which of the first security key and the second security key is the stored security key, which is the latest security key. In other words, the processing circuity <NUM> may determine in operation <NUM> whether the first security key is the latest security key. Responsive to the first security key being the stored security key in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the first security key is the latest security key and delete the second security key (if the second security key was not previously deleted). Responsive to the first security key not being the stored security key (i.e., the second security key is the stored security key) in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the second security key is the latest security key and delete the first security key (if the first security key was not previously deleted).

Returning to <FIG>, in operation <NUM>, processing circuitry <NUM> may use the latest security key to protect the message in the message protection request.

Various operations from the flow chart of <FIG> may be optional with respect to some examples of AUSF nodes and related methods. For example, operations of block <NUM> of <FIG> may be optional when the AUSF node disposes of "old" security keys when a new security key is generated.

There may be situations where the electronic device <NUM> is simultaneously registered in two different VPLMNs (see, for example, <FIG>). According to TS <NUM> [<NUM>], a visited PLMN can at any time trigger a new re-authentication procedure leading to the establishment of a new security key. In the scenario illustrated in <FIG>, there is a risk of race condition and KAUSF desynchronization should both the visited PLMN1 and visited PLMN2 trigger a Primary Authentication procedure at a close or overlapping time interval. The solution to such a scenario may be implementation specific because the AUSF node <NUM> is in control of both procedures (SoR and Primary Authentication), and hence could for example stall some procedures in order to reduce the risk of mismatch of the KAUSF key between the electronic device <NUM> and the home PLMN.

In yet another example, different AUSF instances may be used in the HPLMN to run primary authentication for different access types. Thus, a first KAUSF key that is generated in a first primary authentication in a first AUSF instance may be required to be deleted when a second KAUSF key is generated in a second primary authentication in a second AUSF instance in situations where the AUSF node <NUM> disposes of "old" security keys when new security keys are generated. For these situations, the UDM receives confirmation from a second AUSF instance that the second AUSF instance has completed successful primary authentication for an electronic device over a Nudm_UEAuthenticate_ResultConfirmation service operation. The UDM may send an indication to the first AUSF instance to delete the first KAUSF key. This requires the use of a new service operation between UDM and the first AUSF e.g. Nudm_UEAuthenticate_Notification. Alternatively, if the AUSF realization is fully stateless each AUSF will be managing a single UE context for the electronic device <NUM> where a single KAUSF key will be stored.

Operations of the electronic device <NUM> (implemented using the structure of the block diagram of <FIG>) will now be discussed with reference to the flow chart of <FIG> according to some embodiments of inventive concepts. For example, modules may be stored in memory <NUM> of <FIG>, and these modules may provide instructions so that when the instructions of a module are executed by respective electronic device processing circuitry <NUM>, processing circuitry <NUM> performs respective operations of the flow chart.

In operation <NUM>, processing circuitry <NUM> may transmit, via network interface <NUM> (or may in the case of a wireless device, via transceiver <NUM>), a first registration and authentication request to a first PLMN to register and authenticate the electronic device <NUM>.

The processing circuitry <NUM> in operation <NUM> may generate a first security key (i.e., a KAUSF key). In operation <NUM>, the processing circuitry <NUM> may store the first security key. Operations <NUM> and <NUM> may include generating a first time stamp indicating a time when the first security key is generated and associating the first time stamp with the first security key. In other embodiments, a counter may be incremented when the first security key is generated, and the value of the counter may be associated with the first security key.

In operation <NUM>, processing circuitry <NUM> may transmit, via network interface <NUM> (or may in the case of a wireless device, via transceiver <NUM>), a second registration and authentication request to a second PLMN to register and authenticate the electronic device <NUM>.

The processing circuitry <NUM> in operation <NUM> may generate a second security key (i.e., a KAUSF key). In operation <NUM>, the processing circuitry <NUM> may store the first security key. Operations <NUM> and <NUM> may include generating a second time stamp indicating a time when the second security key is generated and associating the second time stamp with the second security key. In other embodiments, a counter may be incremented when the second security key is generated, and the value of the counter may be associated with the second security key.

In operation <NUM>, the processing circuity <NUM> may receive, via the network interface <NUM> (or may in the case of a wireless device, via transceiver <NUM>), a protected message.

Turning to <FIG>, in one embodiment, time stamps are used to determine which of the first security key and the second security key is the latest security key. As indicated above, time stamps may be generated when security keys are generated and/or stored. In operation <NUM>, the processing circuitry <NUM> may obtain the first time stamp associated with the first security key. In operation <NUM>, the processing circuitry <NUM> may obtain the second time stamp associated with the second security key.

Turning to <FIG>, in another embodiment, a counter may be used to determine which of the first security key and the second security key is the latest security key. As indicated above, the value of a counter may be incremented when a security key is generated and/or stored. In operation <NUM>, the processing circuitry <NUM> may obtain the value of the counter associated with the first security key. In operation <NUM>, the processing circuitry <NUM> may obtain the value of the counter associated with the second security key.

Turning to <FIG>, in another embodiment, the processing circuitry <NUM> may dispose of the "old" security key (e.g., deletes the stored "old" security key) when a new security key is generated and stored. In operation <NUM>, the processing circuitry <NUM> may determine which of the first security key and the second security key is the stored security key, which is the latest security key. In other words, the processing circuity <NUM> may determine in operation <NUM> whether the first security key is the latest security key. Responsive to the first security key being the stored security key in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the first security key is the latest security key and delete the second security key (if the second security key was not previously deleted). Responsive to the first security key not being the stored security key (i.e., the second security key is the stored security key) in operation <NUM>, the processing circuitry <NUM> may determine in operation <NUM> that the second security key is the latest security key and delete the first security key (if the first security key was not previously deleted).

Returning to <FIG>, in operation <NUM>, processing circuitry <NUM> may use the latest security key to determine the content of the protected message received from the home PLMN. The protected message may be a UDM parameter update message, a steering of roaming message, etc..

Various operations from the flow chart of <FIG> may be optional with respect to some embodiments of electronic devices and related methods. For example, operations of block <NUM> of <FIG> may be optional in embodiments where "old" security keys are disposed of when new security keys are generated.

Additional explanation is provided below.

<FIG> illustrates a wireless network in accordance with some embodiments.

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 wireless network, such as the example wireless network illustrated in <FIG>. For simplicity, the wireless network of <FIG> only depicts network <NUM>, network nodes <NUM> and 4160b, and WDs <NUM>, 4110b, and 4110c (also referred to as mobile terminals). In practice, a wireless network may further include any additional elements suitable to support communication between wireless devices or between a wireless device and another communication device, such as a landline telephone, a service provider, or any other network node or end device. Of the illustrated components, network node <NUM> and wireless device (WD) <NUM> are depicted with additional detail. The wireless network may provide communication and other types of services to one or more wireless devices to facilitate the wireless devices' access to and/or use of the services provided by, or via, the wireless network.

As used herein, wireless device (WD) refers to a device capable, configured, arranged and/or operable to communicate wirelessly with network nodes and/or other wireless devices. Unless otherwise noted, the term WD may be used interchangeably herein with user equipment (UE). Communicating wirelessly may involve transmitting and/or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and/or other types of signals suitable for conveying information through air. In some embodiments, a WD may be configured to transmit and/or receive information without direct human interaction. For instance, a WD 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 network. Examples of a WD include, but are not limited to, a smart phone, a mobile phone, a cell phone, a voice over IP (VoIP) phone, a wireless local loop phone, a desktop computer, a personal digital assistant (PDA), a wireless cameras, a gaming console or device, a music storage device, a playback appliance, a wearable terminal device, a wireless endpoint, a mobile station, a tablet, a laptop, a laptop-embedded equipment (LEE), a laptop-mounted equipment (LME), a smart device, a wireless customer-premise equipment (CPE). a vehicle-mounted wireless terminal device, etc. A WD may support device-to-device (D2D) communication, for example by implementing a 3GPP standard for sidelink communication, vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), vehicle-to-everything (V2X) and may in this case be referred to as a D2D communication device. As yet another specific example, in an Internet of Things (IoT) scenario, a WD 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 WD and/or a network node. The WD may in this case be a machine-to-machine (M2M) device, which may in a 3GPP context be referred to as an MTC device. As one particular example, the WD may be a UE implementing the 3GPP narrow band internet of things (NB-IoT) standard. Particular examples of such machines or devices are sensors, metering devices such as power meters, industrial machinery, or home or personal appliances (e.g. refrigerators, televisions, etc.) personal wearables (e.g., watches, fitness trackers, etc.). In other scenarios, a WD 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. A WD as described above may represent the endpoint of a wireless connection, in which case the device may be referred to as a wireless terminal. Furthermore, a WD as described above may be mobile, in which case it may also be referred to as a mobile device or a mobile terminal.

<FIG> illustrates a user Equipment in accordance with some embodiments.

UE <NUM> may be any UE identified by the 3rd Generation Partnership Project (3GPP), including a NB-IoT UE, a machine type communication (MTC) UE, and/or an enhanced MTC (eMTC) UE. UE <NUM>, as illustrated in <FIG>, is one example of a WD configured for communication in accordance with one or more communication standards promulgated by the 3rd Generation Partnership Project (3GPP), such as 3GPP's GSM, UMTS, LTE, and/or <NUM> standards.

Network connection interface <NUM> may be configured to provide a communication interface to network 4243a. Network 4243a may encompass wired and/or wireless networks such as a local-area network (LAN), a wide-area network (WAN), a computer network, a wireless network, a telecommunications network, another like network or any combination thereof. For example, network 4243a may comprise a Wi-Fi network.

In <FIG>, processing circuitry <NUM> may be configured to communicate with network 4243b using communication subsystem <NUM>. Network 4243a and network 4243b may be the same network or networks or different network or networks. Communication subsystem <NUM> may be configured to include one or more transceivers used to communicate with network 4243b.

Network 4243b may encompass wired and/or wireless networks such as a local-area network (LAN), a wide-area network (WAN), a computer network, a wireless network, a telecommunications network, another like network or any combination thereof. For example, network 4243b may be a cellular network, a Wi-Fi network, and/or a near-field network.

<FIG> illustrates a virtualization environment in accordance with some embodiments.

<FIG> illustrates a telecommunication network connected via an intermediate network to a host computer in accordance with some embodiments.

Access network <NUM> comprises a plurality of base stations 4412a, 4412b, 4412c, such as NBs, eNBs, gNBs or other types of wireless access points, each defining a corresponding coverage area 4413a, 4413b, 4413c. Each base station 4412a, 4412b, 4412c is connectable to core network <NUM> over a wired or wireless connection <NUM>. A first UE <NUM> located in coverage area 4413c is configured to wirelessly connect to, or be paged by, the corresponding base station 4412c. A second UE <NUM> in coverage area 4413a is wirelessly connectable to the corresponding base station 4412a.

<FIG> illustrates a host computer communicating via a base station with a user equipment over a partially wireless connection in accordance with some embodiments.

It is noted that host computer <NUM>, base station <NUM> and UE <NUM> illustrated in <FIG> may be similar or identical to host computer <NUM>, one of base stations 4412a, 4412b, 4412c and one of UEs <NUM>, <NUM> of <FIG>, respectively.

Wireless connection <NUM> between UE <NUM> and base station <NUM> is in accordance with the teachings of the embodiments described throughout this disclosure. One or more of the various embodiments may improve the performance of OTT services provided to UE <NUM> using OTT connection <NUM>, in which wireless connection <NUM> forms the last segment. More precisely, the teachings of these embodiments may improve the random access speed and/or reduce random access failure rates and thereby provide benefits such as faster and/or more reliable random access.

In certain embodiments, measurements may involve proprietary UE signaling facilitating host computer <NUM>' s measurements of throughput, propagation times, latency and the like.

<FIG> illustrates methods implemented in a communication system including a host computer, a base station and a user equipment in accordance with some embodiments.

As used herein, the terms "comprise", "comprising", "comprises", "include", "including", "includes", "have", "has", "having", or variants thereof are openended, and include one or more stated features, integers, elements, steps, components or functions but does not preclude the presence or addition of one or more other features, integers, elements, steps, components, functions or groups thereof.

Many variations and modifications can be made to the embodiments without substantially departing from the principles of the present inventive concepts. All such variations and modifications are intended to be included herein within the scope of present inventive concepts. Accordingly, the above disclosed subject matter is to be considered illustrative, and not restrictive, and the examples of embodiments are intended to cover all such modifications, enhancements, and other embodiments, which fall within the scope of present inventive concepts. Thus, to the maximum extent allowed by law, the scope of present inventive concepts are to be determined by the broadest permissible interpretation of the present disclosure including the examples of embodiments and their equivalents, and shall not be restricted or limited by the foregoing detailed description.

Explanations are provided below for various abbreviations/acronyms used in the present disclosure.

Claim 1:
A method in an electronic device (<NUM>) configured to communicate through a wireless air interface with a home public land mobile network, PLMN, and visited PLMNs, the method comprising:
transmitting (<NUM>) a first registration request to a first visited PLMN to register the electronic device (<NUM>);
generating (<NUM>) and storing (<NUM>) a first security key used for integrity protection of messages delivered from the home PLMN to the electronic device (<NUM>);
transmitting (<NUM>) a second registration request to a second visited PLMN that is authenticating the electronic device (<NUM>);
generating (<NUM>) a second security key used for integrity protection of the messages delivered from the home PLMN to the electronic device (<NUM>),
storing (<NUM>) the second security key whilst the first security key is stored;
receiving (<NUM>) a protected message from the home PLMN;
determining (<NUM>) which of the first security key and the second security key is a latest security key; and
using (<NUM>) the latest security key to determine contents of a message received from the home PLMN.