IP Library Granted Patent US 10,524,016
Granted Patent B2
US 10,524,016 · App. 15/838,937 · Granted Dec 31, 2019

System and method for content monitoring and filtering to improve network efficiency

Inventor: David J. Stern (Fort Meade, MD)
Assignee: Stern IP Holder I, LLC
H04N21/64738G06F16/735H04N21/4542H04N21/4545
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 10,524,016
App. No.
15/838,937
Granted
Dec 31, 2019
Kind
B2
Abstract

A system and method of conserving network bandwidth by controlling access to resources. A filtering service determines if a resource should be blocked or allowed to pass between computers on the network based on information about the resource including the path and any query parameters in the URI along with any available metadata about the resource. The metadata may be retrieved from the remote hose, generated based on the content of the resource, or any combination thereof. One or more filtering algorithms may be engaged to compare the information about the resource to filtering rules to determine whether access to the resource is allowed. The information about the resource, and the result of the filtering algorithm may be stored to reduce the time required to make future determinations for the same resource, or for similar resources.

Claims (28)

1. A method, comprising:

using a filtering service to accept from a local computer a request for an evaluation of a remote resource stored on a remote computer, wherein the remote resource has associated with it a resource identifier that includes a name of the remote computer, a path specifying where to find the resource on the remote computer, and a query string representing data to be sent to the remote computer, wherein the request for the evaluation includes data specifying a type of evaluation to make with respect to the remote resource, and wherein the local computer and the remote computer communicate via a computer network;

using the filtering service to determine a filtering algorithm based on the type of evaluation specified in the request for an evaluation, the path of the remote resource, and optionally on the query string of the remote resource;

using the filtering service to obtain one or more evaluation parameter values from the request for an evaluation, wherein the evaluation parameters values include the resource identifier and metadata about the remote resource;

using the filtering service to execute the filtering algorithm using the evaluation parameter values, wherein the algorithm is programmed to compare aspects of the resource identifier and the metadata with one or more rules associated with the data specifying the type of evaluation to make, and wherein the algorithm is programmed to evaluate at least the path, the evaluation parameter values, and optionally the query string to determine if the remote resource should be allowed to transfer from the remote computer to the local computer and consume a portion of the available data bandwidth; and

using the filtering service to block access to the remote resource to conserve data bandwidth of the computer network.

2. The method of claim 1 , wherein obtaining one or more filtering parameter values includes retrieving metadata about the remote resource from the remote computer using the filtering service.

3. The method of claim 2 , wherein the algorithm is programmed to evaluate a fragment portion of the resource identifier, the fragment portion being after the path and the query string in the URI.

4. The method of claim 1 , comprising:

using the filtering service to initiate a request to the remote computer for the remote resource using the resource identifier; and

automatically analyzing the remote resource using the filtering service, wherein the filtering service compares aspects of the remote resource to parameters in the request for an evaluation to generate metadata about the remote resource.

5. The method of claim 4 , wherein the remote resource is a video, and wherein analyzing the remote resource includes:

extracting one or more individual frames from the video resource as one or more individual image files using the filtering service;

comparing the image files to one or more shapes associated with the type of determination requested in the request for the evaluation using the filtering service; and

using the filtering service to generate a confidence level for each of the one or more shapes compared using the filtering service, the confidence level indicating the likelihood that the individual frames from the video resource include a the corresponding shape.

6. The method of claim 5 , wherein the filtering algorithm includes a confidence level rule that blocks access the remote resource if the confidence levels for each of the one or more shapes compared by the filtering service is above a predetermined minimum threshold.

7. The method of claim 4 , comprising:

storing the evaluation parameters used by the filtering algorithm in a repository.

8. The method of claim 1 , further comprising:

accepting input from a user defining the request for the remote resource stored on a remote server using an input device of the local computer; and

using a client application executing on the local computer to determine whether the request for an evaluation of the remote resource should be sent to the filtering service, wherein the client application includes filtering software with rules programmed to match aspects of the request for the remote resource to one or more configuration parameter values to determine when the request should be evaluated by the filtering service.

9. The method of claim 1 , comprising:

using a network computer to accept a request for the remote resource sent from the local computer to a remote computer, wherein the network computer and the local computer communicate via a private network, and the network computer and the remote computer communicate via a public network; and

using the network computer to determine whether the request for an evaluation of the remote resource should be sent to the filtering service, wherein the network computer uses filtering software with rules programmed to match aspects of the request for the remote resource to one or more configuration parameter values to determine when the request should be evaluated by the filtering service.

10. The method of claim 9 , wherein the request for the remote resource is encrypted by the local computer, and wherein the network computer decrypts the request for the remote resource before determining whether the request for an evaluation should be sent to the filtering service.

11. The method of claim 9 , wherein the filtering service is executed on the network computer.

12. The method of claim 9 , wherein the filtering service blocks the local computer from accessing the remote resource by indicating to the local computer that the remote resource does not exist on the remote computer.

13. The method of claim 9 , wherein the filtering service responds to the local computer with a filtering result that includes a command redirecting the request for the remote resource to a request for a blocked access resource available on the private network.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2024
From: STERN IP HOLDER I, LLC
To: STERN IP HOLDER I, LLC
Reel/Frame 068657/0311 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2018
From: STERN, DAVID J.
To: STERN IP HOLDER I, LLC
Reel/Frame 045343/0625 →
Continuity (1)
Related Publication 20190182558A1 · Jun 13, 2019