IP Library Granted Patent US 9,864,999
Granted Patent B2
US 9,864,999 · App. 14/700,616 · Granted Jan 9, 2018

Method for identifying multiple devices belonging to the same group

Inventors: Hao Cheng (Santa Clara, CA); Rohit Chandra (Sunnyvale, CA); Jimmy Yang (Palo Alto, CA)
Assignee: YAHOO HOLDINGS, INC.
G06Q30/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,864,999
App. No.
14/700,616
Granted
Jan 9, 2018
Kind
B2
Abstract

The technologies described herein identify multiple electronic devices belonging to the same group. A computer system receives, from network accessing applications of a plurality of electronic devices, internet protocol (IP) trajectory information about the network accessing applications via a network. The IP trajectory information includes a user identifier, a list of IP addresses associated with each of the network accessing applications, and timestamps specifying times each of the network accessing applications accesses the network. The computer system identifies and removes commercial IP addresses from the list of IP addresses, analyzes IP trajectory information to retrieve a most commonly used IP address for each of the network accessing applications during a certain period, and determines that different network accessing applications belong to the same group if the most commonly used IP addresses for the different network accessing applications are the same.

Claims (76)

1. A method for identifying multiple electronic devices belonging to a same group, the method comprising:

receiving, from network accessing applications of a plurality of electronic devices, internet protocol (IP) trajectory information about the network accessing applications via a network,

wherein the IP trajectory information includes

a user identifier,

a list of IP addresses associated with each of the network accessing applications, at least some IP addresses of the list of IP addresses being dynamically assigned IP addresses assigned by a router for a particular network when two or more respective network accessing applications access the particular network through the router, and

timestamps specifying times each of the network accessing applications accesses a network including the particular network;

identifying commercial IP addresses among the list of IP addresses;

removing the commercial IP addresses from the list of IP addresses to produce revised IP trajectory information;

determining a time duration of overlap for the revised IP trajectory information for a plurality network accessing applications during a certain period of time;

determining a time duration of conflict for the revised IP trajectory information for the plurality of network accessing applications during the certain period of time to identify common patterns of changes in the IP trajectory information due to dynamic IP address assignment when the two or more respective network accessing applications access the network; and

determining that different network accessing applications belong to the same group if the time duration of overlap exceeds the time duration of conflict by a threshold value.

2. The method of claim 1 , wherein the network accessing applications comprise a web browser or mobile application.

3. The method of claim 1 , wherein the user identifier comprises a browser cookie, or a unique user identifier for a mobile device.

4. The method of claim 1 , wherein the certain period is one month.

5. The method of claim 1 , wherein the multiple electronic devices comprises portable electronic devices.

6. The method of claim 1 , wherein identifying commercial IP addresses among the list of IP addresses comprises analyzing various factors for the list of IP addresses including:

a number of user identifiers showing up on the IP addresses,

time of connecting activities,

repetition of connecting activities, and

metadata for the IP addresses.

7. The method of claim 1 , wherein the group comprises one or more family members of a same household.

8. The method of claim 1 , wherein receiving IP trajectory information comprises receiving at least some static IP addresses among the list of IP addresses.

9. A method for identifying multiple electronic devices belonging to a same group, the method comprising:

receiving, from network accessing applications of a plurality of electronic devices, internet protocol (IP) trajectory information about the network accessing applications via a network,

wherein the IP trajectory information includes

a user identifier,

a list of IP addresses associated with each of the network accessing applications, at least some IP addresses of the list of IP addresses being dynamically assigned addresses assigned by a particular network when two or more respective network accessing applications access the particular network, and

timestamps specifying times each of the network accessing applications accesses a network including the particular network;

identifying commercial IP addresses among the list of IP addresses;

removing the commercial IP addresses from the list of IP addresses to produce revised IP trajectory information;

analyzing patterns of changes of the revised IP trajectory information for a plurality of network accessing applications with reference to the timestamps included in the revised IP trajectory information during a certain period of time to identify common patterns of changes in the IP trajectory information due to dynamic IP address assignment when the two or more respective network accessing applications access the particular network; and

determining that the plurality of network accessing applications belong to the same group based on similarity of the patterns of changes.

10. The method of claim 9 , further comprising determining similarity of the patterns by calculating a length of time in which the IP addresses for the plurality of network accessing applications are the same.

11. The method of claim 10 , wherein determining similarity of the patterns comprises calculating a length of time in which the IP addresses for the plurality of network accessing applications are different.

12. The method of claim 10 , wherein determining that the plurality of network accessing applications belong to the same group comprises determining whether the length of time is more than 70% of the certain period of time.

13. The method of claim 9 , wherein the revised IP trajectory information include a first IP address at a first timestamp and a second IP address at a second timestamp following the first timestamp, and wherein an IP address during time between the first timestamp and the second timestamp is estimated to be either the first IP address or the second IP address.

14. The method of claim 9 , further comprising:

determining a time duration of overlap for the revised IP trajectory information for the plurality network accessing applications during the certain period of time;

determining a time duration of conflict for the revised IP trajectory information for the plurality of network accessing applications during the certain period of time; and

based on the time duration of overlap and the time duration of conflict, determining that the plurality of network accessing applications belong to the same group.

15. The method of claim 9 , wherein identifying commercial IP addresses among the list of IP addresses comprises analyzing various factors for the list of IP addresses including:

a number of user identifiers showing up on the IP addresses,

time of connecting activities,

repetition of connecting activities, and

metadata for the IP addresses.

16. The method of claim 9 , wherein receiving IP trajectory information about the network accessing applications comprises receiving IP trajectory information about two or more accessing applications that are executed on a same electronic device.

17. A method of providing same advertisements to multiple electronic devices belonging to a same group, the method comprising:

receiving, from network accessing applications of a plurality of electronic devices, internet protocol (IP) trajectory information about the network accessing applications via a network,

wherein the IP trajectory information includes

a user identifier,

a list of IP addresses associated with each of the network accessing applications, at least some IP addresses of the list of IP addresses being dynamically assigned IP addresses assigned by a router for a particular network when two or more respective network accessing applications access the particular network through the router, and

timestamps specifying times each of the network accessing applications accesses a network including the particular network;

identifying commercial IP addresses among the list of IP addresses;

removing the commercial IP addresses from the list of IP addresses to produce revised IP trajectory information;

determining a time duration of overlap for the revised IP trajectory information for a plurality network accessing applications during a certain period of time;

determining a time duration of conflict for the revised IP trajectory information for the plurality of network accessing applications during the certain period of time to identify common patterns of changes in the IP trajectory information due to dynamic IP address assignment when the two or more respective network accessing applications access the network;

determining that different network accessing applications belong to the same group if the time duration of overlap exceeds the time duration of conflict by a threshold value; and

providing same advertisements to the different network accessing applications belonging to the same group via the network.

18. The method of claim 17 , wherein the same group comprises one or more family members of a same household.

19. A method of providing same advertisements to multiple electronic devices belonging to a same group comprising:

receiving, from network accessing applications of a plurality of electronic devices, internet protocol (IP) trajectory information about the network accessing applications via a network,

wherein the IP trajectory information includes

a user identifier,

a list of IP addresses associated with each of the network accessing applications, at least some IP addresses of the list of IP addresses being dynamically assigned addresses assigned for a particular network when two or more respective network accessing applications access the particular network, and

timestamps specifying times each of the network accessing applications accesses a network including the particular network;

identifying commercial IP addresses among the list of IP addresses;

removing the commercial IP addresses from the list of IP addresses to produce revised IP trajectory information;

determining a time duration of overlap for the revised IP trajectory information for a plurality network accessing applications during a certain period of time;

determining a time duration of conflict for the revised IP trajectory information for the plurality of network accessing applications during the certain period of time to identify common patterns of changes in the IP trajectory information due to dynamic IP address assignment when the two or more respective network accessing applications access the network;

determining that the plurality of network accessing applications belong to the same group based on the time duration of overlap and the time duration of conflict; and

providing same advertisements to the plurality of network accessing applications belonging to the same group via the network.

20. The method of claim 19 , wherein identifying commercial IP addresses among the list of IP addresses comprises analyzing various factors for the list of IP addresses including:

a number of user identifiers showing up on the IP addresses,

time of connecting activities,

repetition of connecting activities, and

metadata for the IP addresses.

Assignments (6)
CHANGE OF NAME Recorded Mar 22, 2022
From: VERIZON MEDIA INC.
To: YAHOO AD TECH LLC
Reel/Frame 059471/0863 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2017
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 042963/0211 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDRESS OF THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 035538 FRAME: 0050. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 8, 2016
From: CHENG, HAO; CHANDRA, ROHIT; YANG, JIMMY
To: YAHOO! INC.
Reel/Frame 040576/0450 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2015
From: CHENG, HAO; CHANDRA, ROHIT; YANG, JIMMY
To: YAHOO! INC.
Reel/Frame 035538/0050 →
Continuity (1)
Related Publication 20160323239A1 · Nov 3, 2016