# US 9,521,542 B2 · Matching client device to appropriate data package

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,521,542 B2
- Document ID: US9521542B2
- Status: Granted
- Kind: B2
- Application number: 15/047,513
- Filed: 2016-02-18
- Published: 2016-06-16
- Granted: 2016-12-13
- Earliest claimed: 2011-07-26
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Fabian Nunez-Tejerina; Kurt A. Geisel; Noel Anderson; Samer Fouad Sawaya
- Web page: https://patentgrep.com/patent/US9521542B2

## CPC

- H04W 8/18: Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
- G06F 8/60: Software deployment
- H04L 12/6418: {Hybrid transport}
- H04L 45/563: {Software download or update}
- H04W 4/18: Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
- H04L 67/306: User profiles
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

One or more techniques and/or systems are disclosed for matching a client device with an appropriate network service provider data package. A device ID for the client device can be decomposed to one or more device ID ranges in a device decomposition set. One or more ranges of client ID can be assigned to a network service provider data package, which can be decomposed into a set of package decomposition ranges in a package decompositions set. The device decomposition set can be compared to the package decomposition set, and if an intersection is identified between the sets, the network service provider data package can be provided to the client device.

## Claims

### Claim 1

A computer system comprising:
one or more processors; and
at least one computer-readable storage medium coupled to the one or more processors, the at least one computer-readable storage medium having instructions stored thereon which, when executed by the one or more processors cause the system to perform operations comprising:
receiving a device identification (ID) for a client device;
receiving a package decomposition set for a network service provider data package, the package decomposition set comprising one or more ranges of client IDs associated with the network service provider data package, the network service provider data package corresponding to a first network service provider;
determining that the client device is associated with the first network service provider based upon at least a portion of the device ID falling within at least some of the one or more ranges of client IDs associated with the network service provider data package; and
providing the network service provider data package to the client device in response to the determination that the client device is associated with the first network service provider.

### Claim 2 (depends on 1)

The computer system of claim 1, wherein the client device comprises a mobile device.

### Claim 3 (depends on 1)

The computer system of claim 1, wherein the operations comprise determining a device decomposition set associated with the device ID.

### Claim 4 (depends on 1)

The computer system of claim 1, wherein the operations comprise encoding the device ID.

### Claim 5 (depends on 4)

The computer system of claim 4, wherein the encoding comprises:
hashing at least a portion of the device ID resulting in a device hash value.

### Claim 6 (depends on 4)

The computer system of claim 4, wherein the encoding comprises:
obscuring at least a portion of the device ID.

### Claim 7 (depends on 4)

The computer system of claim 4, wherein the encoding comprises:
removing at least a portion of the device ID.

### Claim 8 (depends on 1)

The computer system of claim 1, wherein the first network service provider comprises a mobile network operator.

### Claim 9 (depends on 1)

The computer system of claim 1, wherein the first network service provider comprises a mobile virtual network operator.

### Claim 10 (depends on 1)

The computer system of claim 1, wherein the client device comprises at least one of a mobile phone or a SIM card.

### Claim 11 (depends on 1)

The computer system of claim 1, wherein the operations comprise encoding the package decomposition set.

### Claim 12 (depends on 11)

The computer system of claim 11, wherein the encoding comprises:
hashing at least a portion of the package decomposition set resulting in a package hash value.

### Claim 13

A computer-implemented method comprising:
receiving a device identification (ID) for a client device;
receiving a package decomposition set for a network service provider data package, the package decomposition set comprising one or more ranges of client IDs associated with the network service provider data package, the network service provider data package corresponding to a first network service provider;
determining that the client device is associated with the first network service provider based upon at least a portion of the device ID falling within at least some of the one or more ranges of client IDs associated with the network service provider data package; and
providing the network service provider data package to the client device in response to the determination that the client device is associated with the first network service provider.

### Claim 14 (depends on 13)

The method of claim 13, further comprising determining a device decomposition set associated with the device ID.

### Claim 15 (depends on 13)

The method of claim 13, further comprising determining the package decomposition set.

### Claim 16 (depends on 13)

The method of claim 13, further comprising encoding one or more of:
the device ID; or
the package decomposition set.

### Claim 17 (depends on 13)

The method of claim 13, further comprising hashing at least a portion of the device ID for encoding the device ID.

### Claim 18 (depends on 13)

The method of claim 13, wherein the client device comprises at least one of a mobile phone or a SIM card.

### Claim 19 (depends on 13)

The method of claim 13, wherein the first network service provider comprises a mobile network operator.

### Claim 20

A computer readable device comprising computer executable instructions that when executed via a processing unit perform a method, comprising:
receiving a device identification (ID) for a client device;
receiving a package decomposition set for a network service provider data package, the package decomposition set comprising one or more ranges of client IDs associated with the network service provider data package, the network service provider data package corresponding to a first network service provider;
determining that the client device is associated with the first network service provider based upon at least a portion of the device ID falling within at least some of the one or more ranges of client IDs associated with the network service provider data package; and
providing the network service provider data package to the client device in response to the determination that the client device is associated with the first network service provider.
