Embedded subscriber identity module route discovery service endpoint discovery
Patent Information
- Application Number
- JP2022574609
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-06-16
- Filing Date
- 2021-06-16
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2041-06-16
Smart Images

Figure 0007631378000001 
Figure 0007631378000002 
Figure 0007631378000003
Abstract
Description
[Technical field]
[0001] Technical Field The present disclosure relates to embedded subscriber identification module (eSIM) route discovery service endpoint discovery. [Background technology]
[0002] background Telephony devices such as mobile phones and tablets contain subscriber identification modules (SIMs) that are used by service operators, i.e., mobile network operators (MNOs) or virtual MNOs (MVNOs), to identify and authenticate network subscribers. When a subscriber purchases a new embedded SIM (eSIM)-enabled device, the eSIM-enabled device needs to obtain an eSIM profile (also called a subscription profile) to operate the device on the service provider's network. Currently, the Global System for Mobile Communications Association (GSMA) has defined a procedure for obtaining an eSIM profile that requires eSIM-enabled devices to access a central server called a Subscription Manager-Discovery Server (SM-DS) to check whether an eSIM profile is available on the device by providing their globally unique eSIM ID. If available, the SM-DS redirects the eSIM-enabled device to the appropriate subscription manager (SM) server to download the eSIM subscription. However, the industry trend is toward original equipment manufacturers (OEMs) of eSIM-enabled devices using their own discovery servers, and service providers are responsible for determining which discovery servers they need to register available eSIM profiles with so that the appropriate discovery servers can redirect eSIM-enabled devices to their SM servers to obtain the eSIM profiles.This places a burden on service providers to track which eSIM-enabled devices are associated with which OEMs and determine the appropriate discovery server. Summary of the Invention
[0003] overview An aspect of the disclosure provides a computer-implemented method that, when executed on data processing hardware, causes the data processing hardware to perform operations. The operations include receiving a request to provision an embedded subscriber identity module (eSIM) profile to an eSIM-enabled device. The request includes a proxy eSIM identifier (EID) prefix. The eSIM profile is associated with a service provider of a mobile communication service to which a user of the eSIM-enabled device subscribes. The operations further include determining whether the proxy EID prefix includes an address of a target discovery server to which the eSIM-enabled device is configured to connect. If the proxy EID prefix includes an address of the target discovery server, the operations further include extracting an address of the target discovery server from the proxy EID prefix. The operations further include registering a discovery event with the target discovery server using the address of the target discovery server extracted from the proxy EID prefix. The discovery event indicates that the service provider has reserved the eSIM profile for the proxy EID or the actual EID assigned to the eSIM-enabled device.
[0004] Implementations of the present disclosure may include one or more of any of the following features: In some implementations, determining whether the proxy EID prefix includes an address of the target discovery server includes determining whether the proxy EID prefix encodes a fully qualified domain name of the target discovery server. In other implementations, determining whether the proxy EID prefix includes an address of the target discovery server includes determining whether the proxy EID prefix includes a compression of the fully qualified domain name of the target discovery server.
[0005] The target discovery server may be operated by the manufacturer of the eSIM-enabled device. Additionally or alternatively, the service provider may include a mobile network operator (MNO) or a mobile virtual network operator (MVNO).
[0006] In some examples, if the proxy EID prefix does not include an address of the target discovery server, the operations further include accessing a proxy EID-EID translation table to resolve an address of the target discovery server from the proxy EID prefix, and registering a discovery event with the target discovery server using the address of the target discovery server resolved from the proxy EID prefix by accessing the proxy EID-EID translation table. The data processing hardware may be present on a service provider server associated with the service provider. The service provider service may include a profile server, the profile server configured to provision and reserve an eSIM profile for the proxy EID or the actual EID assigned to the eSIM-enabled device. In some implementations, the profile server includes a subscription manager (SM), a subscription manager data preparation (SM-DP), a subscription manager data preparation plus (SM-DP+), a subscription manager secure routing (SM-SR), a profile delivery platform, or a profile delivery server.
[0007] Another aspect of the disclosure provides a system comprising data processing hardware and memory hardware storing instructions that, when executed on the data processing hardware, cause the data processing hardware to perform operations. The operations include receiving a request to provision an embedded subscriber identity module (eSIM) profile to an eSIM-enabled device. The request includes a proxy eSIM identifier (EID) prefix. The eSIM profile is associated with a service provider of a mobile communication service to which a user of the eSIM-enabled device subscribes. The operations further include determining whether the proxy EID prefix includes an address of a target discovery server to which the eSIM-enabled device is configured to connect. If the proxy EID prefix includes an address of the target discovery server, the operations further include extracting an address of the target discovery server from the proxy EID prefix. The operations further include registering a discovery event with the target discovery server using the address of the target discovery server extracted from the proxy EID prefix. The discovery event indicates that the service provider has reserved an eSIM profile for a proxy EID or real EID assigned to the eSIM-enabled device.
[0008] Implementations of the present disclosure may include one or more of any of the following features: In some implementations, determining whether the proxy EID prefix includes an address of the target discovery server includes determining whether the proxy EID prefix encodes a fully qualified domain name of the target discovery server. In other implementations, determining whether the proxy EID prefix includes an address of the target discovery server includes determining whether the proxy EID includes a compression of the fully qualified domain name of the target discovery server. In these implementations, the compression of the fully qualified domain name includes a compressed IPv6 address.
[0009] The target discovery server may be operated by the manufacturer of the eSIM-enabled device. Additionally or alternatively, the service provider may include a mobile network operator (MNO) or a mobile virtual network operator (MVNO).
[0010] In some examples, if the proxy EID prefix does not include an address of the target discovery server, the operations further include accessing a proxy EID-EID translation table to resolve an address of the target discovery server from the proxy EID prefix, and registering a discovery event with the target discovery server using the address of the target discovery server resolved from the proxy EID prefix by accessing the proxy EID-EID translation table. The data processing hardware may be present on a service provider server associated with the service provider. The service provider service may include a profile server, the profile server configured to provision and reserve an eSIM profile for the proxy EID or the actual EID assigned to the eSIM-enabled device. In some implementations, the profile server includes a subscription manager (SM), a subscription manager data preparation (SM-DP), a subscription manager data preparation plus (SM-DP+), a subscription manager secure routing (SM-SR), a profile delivery platform, or a profile delivery server.
[0011] The details of one or more implementations of the disclosure are set forth in the accompanying drawings and the description below. Other aspects, features, and advantages will become apparent from the description and drawings, and from the claims. [Brief description of the drawings]
[0012] [Figure 1A]FIG. 1 is a schematic diagram illustrating an example of a discovery server-based activation procedure for activating a new eSIM-enabled telephony device. [Figure 1B] FIG. 1 is a schematic diagram illustrating an example of a discovery server-based activation procedure for activating a new eSIM-enabled telephony device. [Diagram 2] FIG. 13 is a schematic diagram illustrating an example of a proxy EID defined to resolve the address of a target discovery server. [Diagram 3] FIG. 13 is a schematic diagram illustrating an example of a proxy EID-EID conversion table. [Figure 4A] FIG. 11 is a schematic diagram illustrating an example of operations performed by a service provider server to resolve the address of a target discovery server to which an eSIM-enabled device connects. [Figure 4B] FIG. 11 is a schematic diagram illustrating an example of operations performed by a service provider server to resolve the address of a target discovery server to which an eSIM-enabled device connects. [Figure 4C] FIG. 11 is a schematic diagram illustrating an example of operations performed by a service provider server to resolve the address of a target discovery server to which an eSIM-enabled device connects. [Figure 4D] FIG. 11 is a schematic diagram illustrating an example of operations performed by a service provider server to resolve the address of a target discovery server to which an eSIM-enabled device connects. [Diagram 5] 1 is a flowchart illustrating an example arrangement of operations of a method for contacting a given profile server to download a corresponding eSIM profile therefrom for activation on a new device. [Figure 6] FIG. 1 is a schematic diagram illustrating an example of a computing device that can be used to implement the systems and methods described herein.
[0013] Like reference numbers in the various drawings indicate like elements. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0014] Detailed Description Telephony devices such as mobile phones, watches, and tablets contain an embedded subscriber identity module (eSIM) that is used by a service provider, e.g., a mobile network operator (MNO) or a mobile virtual network operator (MVNO), to identify and authenticate network subscribers. When a subscriber purchases a new device, the device must download an eSIM profile (also called a subscription profile or an operation profile) from a profile server associated with the service provider in order for the device to operate on the service provider's network. Traditionally, a service provider activates a new device on its network using a procedure defined by the GSMA, in which the service provider notifies a central route discovery service, e.g., a subscription manager-discovery server (SM-DS), that an eSIM profile is available for the new device with a globally unique eSIM identifier (EID). In this way, the new device can simply access the route discovery service and provide the EID, which can then use the EID to redirect the device to a profile server to download the eSIM profile to complete the device activation. In this scenario, the service provider simply generates a new eSIM profile in the profile server for the new device and provides the route discovery server operated by GSMA with a pairing of the address of the profile server holding the eSIM profile and the EID that uniquely identifies the device, so that the route discovery server can redirect the device to the profile server upon recognition of the EID. In recent years, original equipment manufacturers (OEMs) have launched their own route discovery services outside of the GSMA, leaving service providers unable to determine which profile server is the EID-based target discovery server that they should contact.
[0015] Implementations herein are directed to assigning a proxy EID to a new eSIM-enabled telephony device for use in identifying an appropriate OEM-based discovery server to contact, so that the service provider can redirect the telephony device to a predefined profile server to download a corresponding eSIM profile for activation. As will become apparent, the service provider can use the proxy EID uniquely assigned to the eSIM of the new telephony device to uniquely identify the new telephony device. The proxy EID further serves as an identifier based on the discovery service that the service provider server uses to identify an appropriate target discovery server 150 for the telephony device to initially contact during device activation. As used herein, the terms targeted discovery service, targeted route discovery service, and OEM-based discovery service are used interchangeably.
[0016] 1A and 1B are schematic diagrams illustrating an example of a discovery server-based activation procedure 100 for activating a new eSIM-enabled telephony device (also referred to as a "device") 10 on an operator network of a given service provider (e.g., MNO or MVNO) 102. As used herein, activating the device 10 includes the device 10 downloading an eSIM profile 14 from a profile server 104 associated with the service provider 102. The eSIM profile 14 has been authorized by the service provider 102 for accessing the operator network. The profile server 104 is configured to generate and provide the eSIM profile 14 for use by the device 10 on the operator network. For example, the device 10 may be associated with a (new or existing) subscriber of the service provider 102, and the device 10 may be used to access the operator network if the service provider 102 authorizes the respective eSIM profile 14 downloaded from the profile server 104. The profile server 104 may be a Subscription Manager (SM), Subscription Manager Plus (SM+), Subscription Manager Data Preparation (SM-DP), Subscription Manager Data Preparation Plus (SM-DP+), Subscription Manager Secure Routing Plus (SM-SR+), a profile delivery platform, a profile delivery server, or any other server or combination of servers capable of provisioning an eSIM profile. The service provider 102 may include multiple profile servers 104.
[0017] The device 10 may include a smartphone, smartwatch, tablet, or other computing device with cellular capabilities. The original equipment manufacturer (OEM) of the device 10 configures the device with a specific address for a target discovery server 150 operated by the OEM, as opposed to a centralized discovery server maintained and operated by the GSMA. In some examples, the device 10 is manufactured for a specific region of the world, allowing the OEM to launch and support one or more root discovery servers in each region. Additionally, the device 10 is provisioned with a unique eSIM identifier (EID) 12 that uniquely identifies the device 10. In some examples, once the profile server 104 reserves an eSIM profile 14 for the device 10, the profile server 104 registers a discovery event with the target discovery server 150 by registering a pairing between the EID (or EID prefix) 12, 13 and the address of the profile server 104.
[0018] In some implementations, a proxy EID 13 is assigned to the device 10 to resolve the address of a target discovery server 150 associated with an OEM to which the device 10 is configured to connect. The proxy EID 13 includes a proxy EID prefix 13, 13p that serves as a discovery server-based identifier. The proxy EID prefix 13p is unique to the eSIM-enabled device 10 and is assigned to the eSIM-enabled device 10 by the OEM of the device 10, such that the proxy EID prefix 13p is paired with a corresponding discovery server 150 operated by the OEM and the EID 12 of the device 10. In one example, the address of the target discovery server 150 includes a target SM-DS fully qualified domain name (FQDN), such as "aRootDs.com," that points to the target discovery server 150. Thus, the service provider server 110 can execute a discovery server endpoint resolver (DSER) routine to obtain the address of the target discovery server 150 to which the device 10 directly contacts from the proxy EID 13 assigned to the device 10. The proxy EID 13 can be derived from the actual EID 12 by replacing the EID prefix (which may include a portion of the actual EID indicating the issuer of the eSIM) with the proxy EID prefix 13p, whereby the proxy EID prefix 13p includes information for resolving the address of the target discovery server 150. The service provider server 110 can then provision the appropriate subscription manager (e.g., SM-DP+) 104 with the eSIM profile 14 and register a discovery event with the target discovery server 150 to redirect the device 10 to the subscription manager 104 to download the eSIM profile 14.The service provider servers 110 may include a profile server (eg, a subscription manager) 104 or some other server associated with the service provider.
[0019] In other implementations, if the proxy EID does not include the address of the target discovery server to which the device is configured to connect, the service provider server executes a DSER routine that resolves the address of the target discovery server from the proxy EID prefix by accessing a proxy EID-EID translation table. Here, the DSER routine can use the table to convert or translate the proxy EID prefix 13p to an FQDN that points to the target discovery server (e.g., target SM-DS) 150. When the service provider server 110 registers a discovery event with the target discovery server 150 using the FQDN, the target discovery server 150 can then return the correct EID prefix 13p to the service provider's server 110, which can then provision the eSIM profile 14 by the appropriate subscription manager (e.g., SM-DP+) 104 associated with the service provider 102. The service provider server 110 can now instruct the target discovery server 150 to provision the eSIM profile 14 to the appropriate subscription manager (e.g., SM-DP+) 104 and direct the device 10 to that subscription manager 104 to download the eSIM profile 14.
[0020] FIG. 1A shows a device 10 packaged in a box 8 and delivered by the device's OEM to a retail store from which an end user purchases the device. The retail store may include non-operator channels. Steps 1-5 show steps performed by the device 10 to activate the device 10 on an operator network during a discovery server-based activation procedure, and steps A-G show steps performed by the service provider 102. More specifically, steps A-D show steps performed by the service provider 102 before the start of discovery server-based activation, such as the OEM assigning the device 10 a specific address of a target discovery server 150 operated by the OEM (step A), shipping the device 10 to the retail store (step B), an agent at the retail store selecting a boxed device 8,10 from inventory (step C), and a service provider agent scanning the device information code (or EID) 12 from the box 8 of the device 10 (step D). In some examples, an end user purchases the device 10 from a retailer not affiliated with the service provider 102 and then takes the purchased device 10 to the service provider 102 to activate the device. The device information code 12 may include a proxy EID 13 or other globally unique identifier assigned to the device.Meanwhile, steps E-G show steps that the service provider 102 executes as part of a discovery server-based activation procedure, in which the service provider server 110 receives the scanned device information code (step E), executes a DSER routine to resolve the device information code 12, 13 to a target discovery server's address (e.g., SM-DS FQDN) (step F), and registers a discovery event with the target discovery server 150 by providing the target discovery server 150 with the device information code 12, 13 paired with the address 15 of a profile server 104 (e.g., SM-DP+) that has an eSIM profile 14 available for the device 10 to download (step G). Between steps F and G, the service provider server determines that the device's eSIM is eligible to receive an eSIM profile 14 compatible with the device capabilities of the device 10, and then executes a profile download preparation and subscription activation process with the profile server (e.g., subscription manager) 104. For example, the profile server 104 may receive relevant information (e.g., SM-DS FQDN / address, contract identifier, signed service provider authentication token, etc.) for registering a discovery event with the target discovery server 150. The profile server 104 may further receive device specific information (e.g., EID and / or prefix EID) 12, 13 for the process of downloading the eSIM profile 14. In particular, the service provider server 110 may perform steps A-G while the device is offline.
[0021] During step 1, a user of the device 10 unboxes the device purchased from a retail store and initiates an activation process to download an available eSIM profile provisioned by the service provider 102 to allow operation by the device on the service provider's operator network. Now, the user can power on the device, and the device can display a graphical user interface 11 that guides the user through the activation process to download the eSIM profile 14. For example, the device 10 may execute an application that displays the graphical user interface 11, or the device may connect to a web-based application that displays the graphical user interface 11. In response to a user input prompt indicating consent by the user to initiate the activation process, the device connects to a target discovery server 150 (step 2). Now, the user provides a device information code 12, 13 that uniquely identifies the device to the target discovery server 150 to check whether the eSIM on the device is eligible to receive an eSIM profile 14 that is compatible with the capabilities of the device. For example, the target discovery server 150 may determine in step G that the device information code 12, 13 provided by the user matches the device information code 12, 13 of the discovery event registered with the target discovery server 150 by the service provider server 110. Once the discovery server 150 identifies an available eSIM profile 14 by matching the device information code 12, 13 to the registered discovery event, the target discovery server 150 obtains and returns the address 15 of the profile server (SM-DP+) 104 and forwards the device 10 to the profile server 104.The device then checks for the eSIM profile 14 in the profile server (step 4 ) and, if available, downloads the eSIM profile 14 from the profile server 104 (step 5 ) to complete remote SIM provisioning of the user device 10 .
[0022] In contrast to the discovery server-based activation procedure of FIG. 1A where the device is powered off and offline, FIG. 1B illustrates a discovery server-based activation procedure while the device 10 is powered on and online. Here, a user has purchased the device 10 somewhere and initiates the activation procedure by simply powering on the device. Steps 1-5 illustrate steps performed by the device 10 to activate the device on the operator network during the discovery server-based activation procedure, and steps A-D illustrate steps performed by the service provider. More specifically, step A illustrates a step performed by the service provider 102 prior to the start of the discovery server-based activation, where the service provider 102 scans a device information code (or EID or proxy EID) 12, 13 displayed on the screen 9 of the device 10. Here, a quick response (QR) code 30 or other unique graphic can be scanned to obtain the device information code (or EID or proxy EID) 12, 13. Alternatively, an agent of the service provider 102 may access a device configuration menu to obtain the device information code 12, 13. Meanwhile, steps B-D show steps that the service provider 102 performs as part of a discovery server-based activation procedure, in which the service provider server 110 receives the device information code 12, 13 (step B), executes a DSER routine to resolve the device information code to an address of a target discovery server (e.g., SM-DS FQDN) (step C), and registers a discovery event with the target discovery server 150 by providing the target discovery server 150 with the device information code 13 paired with the address 15 of a profile server (e.g., SM-DP+) 104 having an eSIM profile 14 available for the device to download (step D).Between step C and step D, the service provider server 110 determines that the eSIM of the device is eligible to receive an eSIM profile 14 compatible with the device capabilities of the device, and then performs a profile download preparation and subscription activation process with the profile server (e.g., subscription manager) 104. For example, the profile server 104 can receive relevant information (e.g., SM-DS FQDN / address, contract identifier, signed service provider authentication token, etc.) for registering a discovery event with the target discovery server 150. The profile server 104 can further receive device specific information (e.g., EID or proxy EID) for the process of downloading the eSIM profile 14.
[0023] Steps 1-4 performed by the device 10 of Figure 1B are substantially similar to steps 2-5 performed by the device of Figure 1A. However, in step 1 of Figure 1B, the device displays an EID 12 assigned to the device, or a QR code 30 or other unique graphic that can be selected to initiate an activation procedure by connecting to a target discovery server 150 and providing the device information code (EID or proxy EID) 12, 13 to the target discovery server 150.
[0024] FIG. 2 is a schematic diagram 200 illustrating an example of a proxy EID 13 defined to resolve the address 152 (e.g., FQDN) of a target discovery server 150. The proxy EID 13 is derived from the actual EID 12. As mentioned above, the EID is a globally unique identifier assigned to the eSIM of the device. Typically, the EID 12 is a very long number (e.g., EID89049032005008882600033452944865) that is difficult for a user to read while displayed on a graphical user interface, let alone for a customer service agent or retailer to dictate. In the illustrated example, the EID 12 may include an EID prefix and a body portion. The EID prefix may include a single field of, for example, 10 digits, and the EID body portion may include a first field of 20 digits and a second field of 2 digits. The proxy EID 13 includes a proxy EID prefix 13p configured to replace the EID prefix portion of the original EID. The proxy EID 13 includes a body portion 13b that is the same as the EID body portion of the original EID 12. Here, the proxy EID prefix 13p is illustrated as including two fields: an 8-digit key field and a 2-digit ext field. The service provider server 110 can execute a DSER routine to resolve the target discovery server's address 152 (e.g., SM-DS FQDN) from the proxy EID prefix 13p. For example, the DSER routine can only resolve the target discovery server's address (e.g., aRootDs.com), and the service provider server 110 must then query the target discovery server 150 with the EID body (which is identical between the proxy EID and the original EID) to obtain the original EID prefix. In another example, the DESR routine resolves both the target discovery server's address 152 and the actual EID prefix.
[0025] The DESR routine can resolve the address of the target discovery server using one of three methods, depending on the information provided by the proxy EID prefix. In a scenario where the service provider server 110 receives a proxy EID prefix 13p that does not encode or otherwise provide the address 152 of the target discovery server 150, the DESR routine uses the first method of obtaining the address 152 of the target discovery server 150 by accessing a proxy EID 13-to-EID translation table. For example, upon receiving the proxy EID prefix 13p, the service provider server 110 can determine whether the proxy EID prefix 13p includes the encoded or compressed FQDN address 152 of the target service provider 150. FIG. 3 illustrates an example of a proxy EID-EID translation table 300 having two proxy EID prefix (PEP) columns, an EID prefix column, and a target discovery server address column. An OEM can generate a set of unique PEPs associated with target discovery servers 150 operated by the OEM, such that each of the PEPs points to the same address (e.g., FQDN) 152 associated with the target discovery server 150. Thus, table 300 may include multiple sets of unique PEPs, each set associated with a corresponding target discovery server 150 and its address 152, where each row represents a respective PEP assigned to a corresponding eSIM-enabled device with a globally unique EID. The PEP column includes a PEP column and a PEP ext column, where the PEP key indicates the manufacturer of the device that can be used to identify the corresponding target discovery server operated by the manufacturer.The EID prefix column indicates the EID prefix assigned to each corresponding eSIM-enabled device, whereby the EID prefix in each row corresponds to one of the PEPs assigned to the respective eSIM-enabled device, along with the corresponding address (e.g., SM-DS FQDN) of the target discovery server that the device contacts to activate the device. Thus, if the DESR routine cannot directly obtain the address of the target discovery server from the EID prefix, the DESR routine can access the proxy EID-EID translation table 300 to resolve the address. The table 300 is publicly available and can be actively maintained. The service provider server 300 can access the table 300 at all times, whereby the DESR routine can resolve the target discovery server address only from the proxy EID prefix assigned to a given eSIM-enabled device.
[0026] In an additional implementation, the DESR routine resolves the target discovery server's address using a second method where the target discovery server's address is encoded in the proxy EID prefix using Decimal ASCII. Here, the target discovery server's address can be encoded using values converted from a Decimal ASCII table. For example, if the address is an FQDN of "rds.co", Decimal ASCII can use values 65-90 to specify uppercase letters A-Z and values 97-122 to specify lowercase letters a-z. Uppercase letters can be used to conserve digits in the EID prefix (minimum 6 digits). Continuing with the example, "RDS.CO" in uppercase would be encoded in the proxy EID prefix as "82 68 83 46 67 79". Thus, upon receiving the proxy EID prefix, a DESR routine running at the service provider server may extract the encoded proxy EID prefix of 826883466779 and use an ASCII table to convert the extracted proxy EID prefix to a corresponding address of the target discovery server. Thus, the service provider server (i.e., at the profile server) may use the resolved FQDN address to register a discovery event with the appropriate target discovery server.
[0027] The DESR routine uses a third method to perform a reverse DNS-like approach on the received proxy EID prefix if the received proxy EID prefix is formatted as a compressed IPv6 address prefix. Here, the target discovery service takes an IPv6 address prefix (e.g., 2620:0:800 / 40) and creates a DNS record that associates the 2620:0:800:1 IPV6 address with the address (e.g., FQDN) of the target discovery server. In this example, the proxy EID prefix is 40 bits long and the value provided by the device is "262000000800". Thus, the DESR routine receives the proxy EID prefix (e.g., 262000000800) and converts it to an IPV6 address by adding zeros to the remaining 87 bits and a 1 to the last bit, thereby providing 2620:0:800::1. The DESR routine then performs a reverse DNS lookup function to extract the address (e.g., FQDN) of the target discovery server, so that the service provider server (i.e., profile server) can use the resolved FQDN address to register a discovery event with the appropriate target discovery server.
[0028] 4A-4D are schematic diagrams illustrating example operations of state diagrams 400a-400d executed by the service provider server 110 during a DESR routine for resolving the address 152 of the target discovery server 150 to which the eSIM-enabled device 10 connects. The vertical Y-axis of each of FIGS. 4A-4D indicates time increasing from top to bottom. An eSIM-enabled device includes eSIM (e.g., eUICC) 42 technology that allows the device to download an eSIM profile 14 (also called a "carrier profile" or "subscription profile" or "operational profile") to enable the device to operate on the network of a service provider (e.g., MNO or MVNO) 102 without a physical SIM card. The eSIM 42 thus enables remote SIM provisioning (RSP) of the device by the service provider 102. The device also includes a local profile assistant (LPA) 44 that resides on the device as a standalone system app for managing the SIM profile on the eSIM (i.e., eUICC chip). Specifically, the LPA acts as a bridge between the eUICC chip and a remote service provider server, which includes a profile server / subscription manager (SM-DP+) that prepares, stores, and delivers eSIM profiles to the device. The service provider server 110 is associated with the service provider and may include an MNO or MVNO server 106 and a profile server (e.g., SM-DP+) 104. The profile server 104 is configured to generate and subscribe eSIM profiles 14 to the EID 42 associated with the device 10. In the illustrated example, the SM-DS corresponds to a target discovery server 150 operated by the manufacturer of the eSIM-enabled device 10.
[0029] 4A, the service provider server 110 executes a DESR routine to resolve the proxy EID prefix 13p to the address 152 of the target discovery server 150, and then obtains the actual EID prefix from the target discovery server 150. The service provider server 110 includes data processing hardware 610 (FIG. 6) and memory hardware 620 (FIG. 6) that communicates with the data processing hardware 610 and stores instructions that perform operations when executed on the data processing hardware 610. At time 1, the LPA 44 of the eSIM enabled device 10 subscribes to the services of a target discovery server (SM-DS) 150 operated by the manufacturer of the eSIM enabled device 10, and at time 2, the target discovery server 150 assigns a unique proxy EID prefix 13p to the eSIM enabled device. Thus, a target discovery server 150 operated by the device OEM may generate a unique proxy EID prefix that may be assigned to an eSIM-enabled device manufactured by the OEM. This may occur while the device is offline. In another example, the target discovery server 150 generates and assigns a unique proxy EID prefix 13p when the device is powered on and online.
[0030] At time 3, the LPA 44 queries the eSIM (eUICC) 42 to obtain the globally unique EID 12 assigned to the eSIM 42, and converts the EID 12 to a corresponding proxy EID 13 using the unique proxy EID prefix 13p assigned by the target discovery server 150 at time 4. Here, because the proxy EID 13 includes the same EID body portion as the actual EID 12, this conversion may simply involve the proxy EID prefix 13p replacing the prefix portion of the actual EID 12. Thus, when the device 10 is purchased and the end user wants to activate the device on the carrier network of the service provider 102, the service provider server 110 can request the EID 42 from the LPA 44 at time 5, and then receive the converted proxy EID 13 from the LPA 44. At time 6, the MNO server 106 of the service provider server 110 issues a download and confirmation order with the profile server (SM-DP+) 104 using the proxy EID 13. Here, the profile server 104 is configured to reserve the eSIM profile 14 to the proxy EID 13. At time 7, the profile server (SM-DP+) 104 executes a DESR routine to resolve only the address 152 of the target discovery server 150 from the proxy EID prefix 13p. The DESR routine can use one of the three methods described above depending on the information contained in the proxy EID prefix 13p. At time 8, the profile server 104 contacts the target discovery server 150 using the resolved address 152 to register a discovery event with the target discovery server 150. The discovery event can specify the address 15 of the profile server 104 paired with the proxy EID 13 (as shown in step G of FIG. 1A and step D of FIG. 2A). Here, the profile server 104 can also query the target discovery server 150 using the body part 13b of the proxy EID 13 to obtain the original EID prefix.Therefore, at time 9, the target discovery server 150 can convert the proxy EID prefix to the actual EID 12 and return the actual EID 12 to the profile server 104. At time 10, the profile server 104 returns the actual EID 12 to the MNO server 106. In some examples, the profile server 104 is configured not to need the actual EID 12, but instead to reserve the eSIM profile 14 to the proxy EID 13. At time 11, the LPA 44 checks the target discovery server 150 for a discovery event to see if the eSIM profile 14 is available for download, whereby the target discovery server 150 redirects the device 10 to the profile server 104 to allow the device 10 to download the eSIM profile 14 therefrom. Now, the LPA 44 can check for a discovery event using the actual EID 12 or the proxy EID 13 (if the steps at times 9 and 10 are not performed).
[0031] Figure 4B is substantially similar to Figure 4A, except that when the service provider performs the DESR routine, in addition to resolving the address of the target discovery server, the service provider also resolves the actual EID prefix from the proxy EID prefix. Thus, the service provider can register a discovery event with the target discovery server using the actual EID prefix without requesting the actual EID from the discovery server.
[0032] 4C and 4D show that the service provider's MNO or MVNO server executes the DESR routine instead of the profile server. For example, FIG. 4C shows that the MNO or MVNO server executes the DESR routine to resolve both the target discovery server's address and the actual EID prefix from the proxy EID provided by the LPA. Similar to FIG. 4A, at time 6, the service provider's MNO server issues a download and confirmation order with the profile server (SM-DP+) using the resolved actual EID. Here, the download and confirmation order includes the resolved address of the target discovery server (e.g., SM-DS FQDN) to enable the profile server to register a discovery event at the target discovery server. In contrast, FIG. 4D shows that the execution of the DESR routine at the MNO or MVNO server only resolves the target discovery server's address (e.g., SM-DS FQDN), so that the profile server becomes responsible for issuing a discovery event similar to FIG. 4A at time 8 to obtain the actual EID from the target discovery server. Optionally, the profile server may not require an actual EID, but instead reserve the eSIM profile to a proxy EID, where a discovery event registered with the target discovery server pairs the proxy EID with the address of the profile server, such that the end user need only check the target discovery server for discovery without providing the proxy EID.
[0033] 5 is a flow chart illustrating an example arrangement of operations of a method 500 for assigning a proxy EID 13 to a new eSIM enabled device 10 for contacting a predefined profile server 104 from which to download a corresponding eSIM profile 14 for activation of the device 10. The method 500 may be executed on a data processing hardware 610 (FIG. 6) of the service provider server 110 based on instructions stored in a memory hardware 620 (FIG. 6) of the service provider server 110. At operation 502, the method 500 comprises receiving a request to provision an embedded subscriber identity module (eSIM) profile 14 to the eSIM enabled device 10, where the request includes a proxy eSIM identifier (EID) prefix 13p. The provisioned eSIM profile 14 is associated with a service provider 102 of a mobile communication service to which a user of the eSIM enabled device 10 subscribes.
[0034] At operation 504, the method 500 comprises determining whether the proxy EID prefix 13p includes an address 152 of a target discovery server 150 to which the eSIM enabled device 10 is configured to connect. At operation 506, if the proxy EID prefix 13p includes an address 152 of the target discovery server 150, the method 500 comprises extracting the address 152 of the target discovery server 150 from the proxy EID prefix 13p.
[0035] At operation 506, using the address 152 of the target discovery server 150 extracted from the proxy EID prefix 13p, the method 500 comprises registering a discovery event with the target discovery server 150. The discovery event indicates that the service provider 102 has reserved an eSIM profile 14 for the proxy EID 13 or the actual EID 12 assigned to the eSIM-enabled device.
[0036] A software application (i.e., a software resource) may refer to computer software that causes a computing device to perform tasks. In some examples, a software application may be referred to as an "application," an "app," or a "program." Examples of applications include, but are not limited to, system diagnostic applications, system management applications, system maintenance applications, word processing applications, spreadsheet applications, messaging applications, media streaming applications, social networking applications, and gaming applications.
[0037] Non-transient memory may be a physical device used to temporarily or permanently store programs (e.g., sequences of instructions) or data (e.g., program state information) for use by a computing device. Non-transient memory may be volatile and / or non-volatile addressable semiconductor memory. Examples of non-volatile memory include, but are not limited to, flash memory and read-only memory (ROM) / programmable read-only memory (PROM) / erasable programmable read-only memory (EPROM) / electronically erasable programmable read-only memory (EEPROM) (e.g., typically used for firmware such as boot programs). Examples of volatile memory include, but are not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), phase change memory (PCM), and disk or tape.
[0038] 6 is a schematic diagram illustrating an example of a computing device 600 that may be used to implement the systems and methods described herein. The computing device 600 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The components shown, their connections and relationships, and their functions are merely exemplary and are not intended to limit the practice of the invention described and / or claimed herein.
[0039] Computing device 600 includes a processor 610, a memory 620, a storage device 630, a high-speed interface / controller 640 that connects to memory 620 and high-speed expansion port 650, and a low-speed interface / controller 660 that connects to low-speed bus 670 and storage device 630. Each of components 610, 620, 630, 640, 650, and 660 are interconnected using various buses and may be implemented on a common motherboard or in other manners as desired. Processor (e.g., data processing hardware) 610 can process instructions for execution within computing device 600, including instructions stored in memory 620 or on storage device 630, to display graphical information for a graphical user interface (GUI) on an external input / output device, such as a display 680 coupled to high-speed interface 640. In other implementations, multiple processors and / or multiple buses may be used along with multiple memories and multiple types of memories as desired. Also, multiple computing devices 600 may be connected, with each device providing a portion of the required operations (eg, as a bank of servers, as a group of blade servers, or as a multi-processor system).
[0040] The memory (e.g., memory hardware) 620 stores information in the computing device 600 non-transiently. The memory 620 may be a computer-readable medium, a volatile memory unit(s), or a non-volatile memory unit(s). The non-transient memory 620 may be a physical device used to temporarily or permanently store programs (e.g., sequences of instructions) or data (e.g., program state information) for use by the computing device 600. Examples of non-volatile memory include, but are not limited to, flash memory and read-only memory (ROM) / programmable read-only memory (PROM) / erasable programmable read-only memory (EPROM) / electronically erasable programmable read-only memory (EEPROM) (e.g., typically used for firmware such as boot programs). Examples of volatile memory include, but are not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), phase change memory (PCM), and disk or tape.
[0041] The storage device 630 can provide mass storage for the computing device 600. In some implementations, the storage device 630 is a computer-readable medium. In various different implementations, the storage device 630 may be a floppy disk device, a hard disk device, an optical disk device, or an array of devices including a tape device, a flash memory or other similar solid-state memory device, or a device in a storage area network or other configuration. In yet another implementation, a computer program product is tangibly embodied in an information carrier. The computer program product includes instructions that, when executed, perform one or more methods, such as the methods described above. The information carrier is a computer-readable or machine-readable medium, such as the memory 620, the storage device 630, or a memory on the processor 610.
[0042] The high-speed controller 640 manages bandwidth-intensive operations for the computing device 600, and the low-speed controller 660 manages less bandwidth-intensive operations. This division of roles is merely exemplary. In some implementations, the high-speed controller 640 is coupled to the memory 620, the display 680 (e.g., via a graphics processor or accelerator), and a high-speed expansion port 650 that may accept various expansion cards (not shown). In some implementations, the low-speed controller 660 is coupled to the storage device 630 and the low-speed expansion port 690. The low-speed expansion port 690, which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet), may be coupled to one or more input / output devices, such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., via a network adapter.
[0043] The computing device 600 may be implemented in a number of different forms, as shown in the figure, for example as a standard server 600a, or multiple times within a group of such servers 600a, as a laptop computer 600b, or as part of a rack server system 600c.
[0044] Various implementations of the systems and techniques described herein may be realized in digital electronic and / or optical circuitry, integrated circuits, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementations in one or more computer programs executable and / or interpretable on a programmable system including at least one programmable processor, which may be specialized or general purpose, coupled to send and receive data and instructions from a storage system, at least one input device, and at least one output device.
[0045] These computer programs (also known as programs, software, software applications or codes) contain machine instructions for a programmable processor and may be implemented in a high-level procedural and / or object-oriented programming language and / or in an assembly / machine language. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, non-transitory computer-readable medium, apparatus and / or device (e.g., magnetic disk, optical disk, memory, programmable logic device (PLD)) used to provide machine instructions and / or data to a programmable processor, including machine-readable media that receive machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and / or data to a programmable processor.
[0046] The processes and logic flows described herein can be executed by one or more programmable processors, also referred to as data processing hardware, to execute one or more computer programs to perform functions by performing operations on input data and generating outputs. The processes and logic flows can also be executed by special purpose logic circuitry, for example, FPGAs (field programmable gate arrays) or ASICs (application specific integrated circuits). Processors suitable for executing computer programs include, by way of example, both general purpose and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor receives instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include one or more mass storage devices, for example, magnetic, magneto-optical, or optical disks, for storing data, or be operatively coupled to receive data from or transfer data to them, or both. However, a computer need not have such devices. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and memory devices, including, by way of example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
[0047] To provide for user interaction, one or more aspects of the present disclosure can be implemented on a computer having a display device, such as a CRT (cathode ray tube), LCD (liquid crystal display) monitor, or touch screen, for displaying information to the user, and optionally a keyboard and pointing device, such as a mouse or trackball, by which the user can provide input to the computer. Other types of devices can also be used to provide user interaction, for example, the feedback provided to the user can be any form of sensory feedback, for example visual feedback, auditory feedback, or tactile feedback, and input from the user can be received in any form, including acoustic, speech, or tactile input. Additionally, the computer can interact with the user by sending and receiving documents to a device used by the user, for example, by sending a web page to a web browser on the user's client device in response to a request received from the web browser.
[0048] Although several implementations have been described, it will be understood that various modifications can be made without departing from the spirit and scope of the disclosure. Accordingly, other implementations are within the scope of the following claims.
Claims
1. A computer-implemented method (500) that, when executed on data processing hardware (610) residing on a service provider server (110) associated with a service provider (102), causes the data processing hardware (610) to perform an operation, the operation comprising: Receiving a request to provision an embedded subscriber identity module (eSIM) profile (14) on an eSIM enabled device (10); requesting a globally unique EID (12) for said eSIM enabled device (10); receiving a proxy eSIM identifier (EID) (13) derived from said globally unique EID (12); determining whether a proxy EID prefix (13p) of the proxy EID (13) includes an address (152) of a target discovery server (150) to which the eSIM enabled device (10) is configured to connect; extracting the address (152) of the target discovery server (150) from the proxy EID prefix (13p) if the proxy EID prefix (13p) includes the address (152) of the target discovery server (150); and registering a discovery event with the target discovery server (150) using the address (152) of the target discovery server (150) extracted from the proxy EID prefix (13p), the discovery event indicating that the service provider (102) has reserved the eSIM profile (14) to a proxy EID (13) or an actual EID (12) assigned to the eSIM enabled device (10).
2. 2. The method (500) of claim 1, wherein determining whether the proxy EID prefix (13p) includes the address (152) of the target discovery server (150) comprises determining whether the proxy EID prefix (13p) encodes a fully qualified domain name of the target discovery server (150).
3. 3. The method (500) of claim 1 or 2, wherein determining whether the proxy EID prefix (13p) includes the address (152) of the target discovery server (150) comprises determining whether the proxy EID (13p) includes a compression of a fully qualified domain name of the target discovery server (150).
4. 4. The method (500) of claim 3, wherein the compression of the fully qualified domain name includes a compressed IPv6 address (152).
5. The method (500) of any one of claims 1 to 4, wherein the target discovery server (150) is operated by a manufacturer of the eSIM enabled device (10).
6. The operations further include, if the proxy EID prefix (13p) does not include the address (152) of the target discovery server (150): accessing a proxy EID-EID translation table (300) to resolve said address (152) of said target discovery server (150) from said proxy EID prefix (13p); and registering the discovery event with the target discovery server (150) using the address (152) of the target discovery server (150) resolved from the proxy EID prefix (13p) by accessing the proxy EID-EID translation table (300).
7. The method (500) of any one of claims 1 to 6, wherein the service provider server (110) includes a profile server (104), the profile server (104) configured to provision and reserve the eSIM profile (14) for the proxy EID (13) or the actual EID (12) assigned to the eSIM enabled device (10).
8. 8. The method of claim 7, wherein the profile server comprises a Subscription Manager (SM), a Subscription Manager Data Preparation (SM-DP), a Subscription Manager Data Preparation Plus (SM-DP+), a Subscription Manager Secure Routing (SM-SR), a Profile Delivery Platform, or a Profile Delivery Server.
9. The method (500) of any one of claims 1 to 8, wherein the service provider (102) comprises a Mobile Network Operator (MNO) or a Mobile Virtual Network Operator (MVNO).
10. A system (600), data processing hardware (610) residing on a service provider server (110) associated with the service provider (102); and memory hardware (620) in communication with the data processing hardware (610), the memory hardware (620) storing instructions that, when executed on the data processing hardware (610), cause the data processing hardware (610) to perform operations, the operations including: Receiving a request to provision an embedded subscriber identity module (eSIM) profile into an eSIM enabled device (10); requesting a globally unique EID (12) for said eSIM enabled device (10); receiving said proxy EID (13) derived from said globally unique EID (12); determining whether a proxy EID prefix (13p) of the proxy EID (13) includes an address (152) of a target discovery server (150) to which the eSIM enabled device (10) is configured to connect; extracting the address (152) of the target discovery server (150) from the proxy EID prefix (13p) if the proxy EID prefix (13p) includes the address (152) of the target discovery server (150); and registering a discovery event with the target discovery server (150) using the address (152) of the target discovery server (150) extracted from the proxy EID prefix (13p), the discovery event indicating that the service provider (102) has reserved the eSIM profile (14) to a proxy EID (13) or an actual EID (12) assigned to the eSIM enabled device (10).
11. Determining whether the proxy EID prefix (13p) includes the address (152) of the target discovery server (150) includes determining whether the proxy EID prefix (13p) encodes a fully qualified domain name of the target discovery server (150), or 11. The system (600) of claim 10, further comprising: determining whether the proxy EID (13) includes a compression of a fully qualified domain name of the target discovery server (150), the compression of the fully qualified domain name including a compressed IPv6 address (152).
12. The operations further include, if the proxy EID prefix (13p) does not include the address (152) of the target discovery server (150): accessing a proxy EID-EID translation table (300) to resolve said address (152) of said target discovery server (150) from said proxy EID prefix (13p); and registering the discovery event with the target discovery server (150) using the address (152) of the target discovery server (150) resolved from the proxy EID prefix (13p) by accessing the proxy EID-EID translation table (300).
13. The system (600) of any one of claims 10 to 12, wherein the service provider server (110) includes a profile server (104) configured to provision and reserve the eSIM profile (14) for the proxy EID (13) or the actual EID (12) assigned to the eSIM enabled device (10).
14. The system (600) of claim 13, wherein the profile server (104) comprises a Subscription Manager (SM), Subscription Manager Data Preparation (SM-DP), Subscription Manager Data Preparation Plus (SM-DP+), Subscription Manager Secure Routing (SM-SR), a profile delivery platform, or a profile delivery server.
Citation Information
Patent Citations
Method and apparatus for providing a profile
US20170180349A1
Method and apparatus for downloading profile in wireless communication system
US20180070224A1