IP Library Granted Patent US 11,425,089
Granted Patent B2
US 11,425,089 · App. 16/711,579 · Granted Aug 23, 2022

Method and system for near real-time IP user mapping

Inventors: Dong Li (Santa Clara, CA); Deyu Hu (Palo Alto, CA); Jing Chen (Palo Alto, CA)
Assignee: Beijing DiDi Infinity Technology and Development Co., Ltd.
H04L61/203H04L61/2046H04L61/2557
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 11,425,089
App. No.
16/711,579
Granted
Aug 23, 2022
Kind
B2
Abstract

Systems and methods are provided for near real-time IP user mapping. Such methods may include obtaining IP address assignment data points from different sources including an authentication, authorization, and accounting (AAA) server of a private network, a service provider that provides a computer-based service within the private network, and user devices that have access to the private network. The methods may also include applying an IP mapping rule to the obtained IP address assignment data points to generate IP address mapping.

Claims (43)

1. A method comprising:

obtaining at least one first IP address assignment data point indicating a correspondence between an IP address and a first user identifier at a first point in time, wherein the at least one first IP address assignment data point is obtained from an authentication, authorization, and accounting (AAA) server of a private network;

obtaining at least one second IP address assignment data point indicating a correspondence between the IP address and a second user identifier at a second point in time, wherein the at least one second IP address assignment data point is obtained from at least one device that has access to the private network;

determining whether a conflict exists between the at least one first IP address assignment data point and the at least one second IP address assignment data point, wherein the conflict exists when the first point in time is within a predetermined period of time from the second point in time, and the first user identifier is different from the second user identifier;

in response to determining the conflict exists, applying a priority criteria indicating that the at least one first IP address assignment data point is prioritized based on a rule that IP address assignment data points from the AAA server are prioritized over IP address assignment data points from other sources;

based on the applying of the priority criteria, dropping the at least one second IP address assignment data point; and

generating an IP address mapping based on non-dropped data points.

2. The method of claim 1 , wherein the generating the IP address mapping based on non-dropped data points comprises:

obtaining at least one third IP address assignment data point indicating a correspondence between the IP address and a third user identifier at a third point in time;

dropping the at least one third IP address assignment data point when a conflict exists between the at least one third IP address assignment data point and either the at least one first IP address assignment data point or the at least one second IP address assignment data point; and

generating the IP address mapping based on non-dropped data points.

3. The method of claim 1 , wherein the first user identifier and the second user identifier include a user name of a user using a user device.

4. The method of claim 1 , wherein the first user identifier and the second user identifier include a user device identifier of a user device.

5. The method of claim 1 , wherein each of the non-dropped data points indicates a correspondence between the IP address and a user at a point in time, and the generating the IP address mapping based on non-dropped data points comprises:

generating an IP address mapping rule indicating that the IP address has been assigned to the user for a corresponding period of time, the corresponding period of time comprising the shorter of: a predetermined period of time ending at the point in time and a period from the point in time back to a previous point in time indicated by another non-dropped data point.

6. A computing system, comprising one or more processors and one or more non-transitory computer-readable memories coupled to the one or more processors and configured with instructions executable by the one or more processors to cause the computing system to perform operations comprising:

obtaining at least one first IP address assignment data point indicating a correspondence between an IP address and a first user identifier at a first point in time, wherein the at least one first IP address assignment data point is obtained from an authentication, authorization, and accounting (AAA) server of a private network;

obtaining at least one second IP address assignment data point indicating a correspondence between the IP address and a second user identifier at a second point in time, wherein the at least one second IP address assignment data point is obtained from at least one device that has access to the private network;

determining whether a conflict exists between the at least one first IP address assignment data point and the at least one second IP address assignment data point, wherein the conflict exists when the first point in time is within a predetermined period of time from the second point in time, and the first user identifier is different from the second user identifier;

in response to determining the conflict exists, applying a priority criteria indicating that the at least one first IP address assignment data point is prioritized based on a rule that IP address assignment points from the AAA server are prioritized over IP address assignment data points from other sources;

based on the applying of the priority criteria, dropping the at least one second IP address assignment data point; and

generating an IP address mapping based on non-dropped data points.

7. The computing system of claim 6 , wherein the generating the IP address mapping based on non-dropped data points comprises:

obtaining at least one third IP address assignment data point indicating a correspondence between the IP address and a third user identifier at a third point in time;

dropping the at least one third IP address assignment data point when a conflict exists between the at least one third IP address assignment data point and either the at least one first IP address assignment data point or the at least one second IP address assignment data point; and

generating the IP address mapping based on non-dropped data points.

8. The computing system of claim 6 , wherein the first user identifier and the second user identifier include a user name of a user using a user device.

9. The computing system of claim 6 , wherein the first user identifier and the second user identifier include a user device identifier of a user device.

10. The computing system of claim 6 , wherein each of the non-dropped data points indicates a correspondence between the IP address and a user at a point in time, and the generating the IP address mapping based on non-dropped data points comprises:

generating an IP address mapping rule indicating that the IP address has been assigned to the user for a corresponding period of time, the corresponding period of time comprising the shorter of: a predetermined period of time ending at the point in time and a period from the point in time back to a previous point in time indicated by another non-dropped data point.

11. A non-transitory computer-readable storage medium configured with instructions executable by one or more processors to cause the one or more processors to perform operations comprising:

obtaining at least one first IP address assignment data point indicating a correspondence between an IP address and a first user identifier at a first point in time, wherein the at least one first IP address assignment data point is obtained from an authentication, authorization, and accounting (AAA) server of a private network;

obtaining at least one second IP address assignment data point indicating a correspondence between the IP address and a second user identifier at a second point in time, wherein the at least one second IP address assignment data point is obtained from at least one device that has access to the private network;

determining whether a conflict exists between the at least one first IP address assignment data point and the at least one second IP address assignment data point, wherein the conflict exists when the first point in time is within a predetermined period of time from the second point in time, and the first user identifier is different from the second user identifier;

in response to determining the conflict exists, applying a priority criteria indicating that the at least one first IP address assignment data point is prioritized based on a rule that IP address assignment data points from the AAA server are prioritized over IP address assignment data points from other sources;

based on the applying of the priority criteria, dropping the at least one second IP address assignment data point; and

generating an IP address mapping based on non-dropped data points.

12. The non-transitory computer-readable storage medium of claim 11 , wherein each of the non-dropped data points indicates a correspondence between the IP address and a user at a point in time, and the generating the IP address mapping based on non-dropped data points comprises:

generating an IP address mapping rule indicating that the IP address has been assigned to the user for a corresponding period of time, the corresponding period of time comprising the shorter of: a predetermined period of time ending at the point in time and a period from the point in time back to a previous point in time indicated by another non-dropped data point.

13. The non-transitory computer-readable storage medium of claim 11 , wherein the generating the IP address mapping based on non-dropped data points comprises:

obtaining at least one third IP address assignment data point indicating a correspondence between the IP address and a third user identifier at a third point in time;

dropping the at least one third IP address assignment data point when a conflict exists between the at least one third IP address assignment data point and either the at least one first IP address assignment data point or the at least one second IP address assignment data point; and

generating the IP address mapping based on non-dropped data points.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2020
From: DIDI (HK) SCIENCE AND TECHNOLOGY LIMITED
To: BEIJING DIDI INFINITY TECHNOLOGY AND DEVELOPMENT CO., LTD.
Reel/Frame 053180/0456 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2020
From: DIDI RESEARCH AMERICA, LLC
To: DIDI (HK) SCIENCE AND TECHNOLOGY LIMITED
Reel/Frame 053081/0934 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2019
From: LI, DONG; HU, DEYU; CHEN, JING
To: DIDI RESEARCH AMERICA, LLC
Reel/Frame 051260/0328 →
Continuity (2)
Continuation 15924575 · Mar 19, 2018
Related Publication 20200120063A1 · Apr 16, 2020