IP Library Granted Patent US 9,705,776
Granted Patent B1
US 9,705,776 · App. 14/833,606 · Granted Jul 11, 2017

Wireless network polling and data warehousing

Inventors: Reginald N. Workman (Austin, TX); Edward J. Keenan (Syosset, NY); Brian Daniels (Commack, NY); Christopher Cioffi (Holbrook, NY); John Nicastro (Smithtown, NY); Bryn L. Chung (North Babylon, NY)
Assignee: CSC Holdings, LLC
H04L43/10H04L43/04H04L43/0882H04L67/18H04W64/006
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,705,776
App. No.
14/833,606
Granted
Jul 11, 2017
Kind
B1
Abstract

Methods and systems are provided to collect and update data on client devices connected to WiFi access points is provided. An inventory of WiFi cable modems and WiFi access points coupled to the WiFi cabled modems within a specific network is periodically collected. Internet Protocol (IP) addresses of WiFi cable modems and WiFi access points coupled to the WiFi cabled modems are periodically updated. Traps are periodically received from the WiFi access points. The traps are parsed to collect an inventory of client devices wirelessly connected to the WiFi access points and a time at which a client device connected to the WiFi access point. The WiFi access points are periodically polled to collect data on client devices, the data including a period of time that a client device has been connected to a WiFi access point and a physical location of the client device.

Claims (71)

1. A method to collect data on at least one client device wirelessly coupled to a device, comprising:

receiving a notification from the device;

parsing the notification to collect an inventory of the at least one client device coupled to the device and a time at which the at least one client device is coupled to the device; and

polling the device to collect the data, the data including a period of time that the at least one client device has been coupled to the device and a physical location of the at least one client device.

2. The method of claim 1 , further comprising:

collecting an inventory of at least one WiFi cable modem coupled to the device.

3. The method of claim 2 , wherein the polling comprises:

polling the device based on an Internet Protocol (IP) address of the at least one WiFi cable modem.

4. The method of claim 1 , wherein the data includes information about a number of client devices attempting to access a particular device.

5. The method of claim 1 , wherein the physical location of the at least one client device includes approximate Global Positioning Satellite (GPS) coordinates of the at least one client device.

6. The method of claim 2 , wherein the collecting comprises:

connecting to a cable modem termination system (CMTS) to collect the inventory of the at least one WiFi cable modem coupled to the CMTS;

grouping WiFi cable modems based on the CMTS that the WiFi cable modems are coupled to;

connecting to the at least one WiFi cable modem through an associated CMTS to collect an inventory of at least one device, including the device, associated with the at least one WiFi cable modem;

connecting to the at least one device associated with the at least one WiFi cable modem to determine an address of the device; and

creating a record in a database, the record including at least the address of the at least one device and an Internet Protocol (IP) address of the at, least one device.

7. The method of claim 1 , wherein the parsing comprises:

determining a first media access control (MAC) address and a first Internet Protocol (IP) address of the device based on data from a trap;

determining an access point index, stored in a database, for the device based on the IP address;

determining, based on the trap, a second MAC address and a second IP address for the at least one client device that caused the trap to be generated;

determining a client device index for the at least one client device based on the second IP address;

creating a new client index in the database based on the second MAC address if the client device index is not found for the at least one client device;

creating a record with the client index and a device index in the database if the client index is found and the record is not present in the database for that client index for a pre-determined period of time; and

updating the record for the at least one client device with a timestamp that indicates when the trap was generated by the at least one client device, if the record is found for the client index in the database.

8. The method of claim 1 , wherein the polling comprises:

determining whether the device has been active for a first pre-determined period of time;

polling the device when it is determined that the device has been active for the first pre-determined period of time to determine the at least one client device which is wirelessly coupled to the device;

determining whether the at least one client device has been coupled to the device for more than a second pre-determined period of time; and

determining whether a client device index is present in a database using an address of the device.

9. A system to collect data on at least one client device coupled to at least one device, comprising:

a first component configured to receive a notification from the at least one device and to parse the notification to collect an inventory of the at least one client device coupled to the at least one device and a time at which the at least one client device is coupled to the at least one device; and

a second component configured to poll the at least one device to collect the data, the data including a period of time that the at least one client device is coupled to the at least one device and a physical location of the at least one client device.

10. The system of claim 9 , wherein the second component is configured to poll the at least one device based on Internet Protocol (IP) addresses of WiFi cable modems coupled to the at least one device.

11. The system of claim 9 , wherein the data includes information about a number of client devices attempting to access a particular device within a specific network.

12. The system of claim 9 , wherein the physical location of the at least one client device includes approximate Global Positioning Satellite (GPS) coordinates of the at least one client device.

13. The system of claim 9 , further comprising:

a cable modem termination system (CMTS);

at least one WiFi cable modem, coupled to the CMTS, wherein the at least one device is coupled to the at least one WiFi cable modem and is configured to generate and send the notification to the at least one WiFi cable modem upon receiving a connection, an attempted connection or a login from the at least one client device; and

a master headend system coupled to the CMTS and configured to collect an inventory of the at least one WiFi cable modem and the at least one device coupled to the at least one WiFi cable modem, and to update an Internet Protocol (IP) address of the at least one WiFi cable modem and the at least one device.

14. The system of claim 13 , wherein the master headend system is further configured to:

connect to the CMTS to collect the inventory of the at least one WiFi cable modem;

group WiFi cable modems based on the CMTS that the WiFi cable modems are coupled to;

connect to the at least one WiFi cable modem through its associated CMTS to collect an inventory of at least one device associated with the at least one WiFi cable modem;

connect to the at least one device associated with the at least one WiFi cable modem to determine an address of the at least one device; and

create a record in a database, the record including at least the address of the at least one device and an IP address of the at least one device.

15. The system of claim 13 , wherein the master headend system is further configured to:

periodically retrieve a list of WiFi cable modems in a database;

determine a current IP address for the at least one WiFi cable modem by connecting to the CMTS associated with the at least one WiFi cable modem;

compare the current IP address of the at least one WiFi cable modem to an IP address stored for the at least one WiFi cable modem in the database; and

update the stored IP address in the database for the at least one WiFi cable modem with the current IP address for the at least one WiFi cable modem if the current IP address for the at least one WiFi cable modem is not equal to the stored IP address for the at least one WiFi cable modem.

16. The system of claim 13 , wherein the master headend system is further configured to:

group the at least one device based on the CMTS the at least one device is associated with;

determine a current IP address for the at least one device by connecting to the CMTS associated with the at least one device; and

update a stored IP address in the database for the at least one device if the current IP address for the at least one device is not equal to the stored IP address in the database for the at least one device.

17. The system of claim 9 , wherein the first component is further configured to:

determine a media access control (MAC) address and an Internet Protocol (IP) address of the at least one device that originated at least one notification based on information in the at least one notification;

determine an access point index, stored in a database, for the at least one device based on the IP address of the at least one device;

determine a MAC address and an IP address for the at least one client device that caused the at least one notification to be generated by the at least one device;

determine a client device index, stored in the database, for the at least one client device based on the IP address for the at least one client device;

create a new client device index in the database based on the MAC address of the at least one client device if the client device index is not found for the at least one client device;

create a record with the client device index and a device index in the database if the client device index is found and the record is not present in the database for that client device index for a pre-determined period of time; and

update the record for the at least one client device with a timestamp that indicates when the notification was generated by the at least one client device, if the record is found for the client index in the database.

18. A system to collect data on at least one client device coupled to a device, comprising:

a processor; and

a memory coupled to the processor, the memory configured to store a plurality of processing instructions for directing the processor to:

receive a notification from the device;

parse the notification to collect an inventory of the at least one client device coupled to the device and a time at which the at least one client device is coupled to the device; and

poll the device to collect the data, the data on the at least one client device including a period of time that the at least one client device has been coupled to the device and a physical location of the at least one client device.

19. The system of claim 18 , wherein the memory is further configured to store instructions for directing the processor to:

collect an inventory of WiFi cable modems coupled to the device.

20. The system of claim 18 , wherein the data includes information about a number of client devices attempting to access the device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2015
From: CHUNG, BRYN L.
To: CSC HOLDINGS, LLC
Reel/Frame 036409/0656 →
CHANGE OF NAME Recorded Aug 25, 2015
From: CABLEVISION SYSTEMS CORPORATION
To: CSC HOLDINGS, LLC
Reel/Frame 036410/0367 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2015
From: WORKMAN, REGINALD; KENNAN, EDWARD J., JR.; DANIELS, BRIAN; CIOFFI, CHRISTOPHER; NICASTRO, JOHN
To: CABLEVISION SYSTEMS CORPORATION
Reel/Frame 036410/0433 →
Continuity (2)
Continuation 13863711 · Apr 16, 2013
Continuation 12490153 · Jun 23, 2009