IP Library Granted Patent US 10,200,499
Granted Patent B1
US 10,200,499 · App. 14/609,465 · Granted Feb 5, 2019

Systems and methods for reducing network traffic by using delta transfers

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,200,499
App. No.
14/609,465
Granted
Feb 5, 2019
Kind
B1
Abstract

The disclosed computer-implemented method for reducing network traffic by using delta transfers may include (1) receiving, from a client device, an original request message that requests at least one action from a server, (2) storing the original request message to serve as a foundation for a delta transfer that includes the original request message and at least one subsequent request message that builds upon the original request message, (3) receiving, from the client device, a subsequent request message that excludes at least a portion of the original request message to reduce redundancy between the original request message and the subsequent request message, and (4) applying the subsequent request message to the original request message to achieve the delta transfer while reducing the redundancy between the original request message and the subsequent request message. Various other methods, systems, and computer-readable media are also disclosed.

Claims (88)

1. A computer-implemented method for reducing network traffic by using delta transfers, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising:

receiving, from a client device, an original request message that requests that a security server send a notification about a security risk detected on the client device, wherein:

the original request message comprises a pre-defined header that includes an indication that the client device is able to facilitate delta transfers; and

the original request message comprises a HyperText Transfer Protocol (HTTP) request sent through an HTTP persistent connection used to send and respond to multiple HTTP request/response pairs without closing and reopening a new network connection between each request/response pair;

in response to the indication that the client device to able to facilitate delta transfers, creating a template based on content extracted from the original request message, the template comprising instructions for combining the content extracted from the original request message with content from subsequent request messages;

storing the template at the security server to serve as a foundation for a delta transfer that includes the original request message and at least one subsequent request message that builds upon the original request message;

receiving, from the client device, a plurality of subsequent request messages, sent through the HTTP persistent connection, that exclude at least a portion of the original request message to reduce redundancy between the original request message and each subsequent request message within the plurality of the subsequent request messages, wherein:

the plurality of subsequent request messages comprises at least one of:

a subsequent request message that requests that the security server send a subsequent notification about a subsequent security threat detected on the client device;

a subsequent request message that requests to change a policy governing the types of notifications to send to the client device; and

a subsequent request message that requests to change a policy governing how frequently to send notifications to the client device;

the amount of content excluded from the first subsequent request message within the plurality of subsequent request messages is smaller than a threshold size; and

the aggregate amount of content excluded from the plurality of subsequent request messages is above the threshold size; and

applying each subsequent request message within the plurality of subsequent request messages to the stored template to achieve the delta transfer while reducing the redundancy between the original request message and each of the subsequent request messages.

2. The computer-implemented method of claim 1 , wherein storing the template at the security server comprises caching the template at the security server in anticipation of applying the subsequent request message to the template to achieve the delta transfer.

3. The computer-implemented method of claim 1 , wherein the security server utilizes an endpoint management platform to provide security services for the client device.

4. The computer-implemented method of claim 1 , wherein the portion of the original request message excluded by each subsequent request message comprises at least one of:

information describing hardware of the client device;

information describing software of the client device;

registration information of the client device;

information to be used by the security server in performing an action requested by the subsequent request message; and

information that identifies an entity or a channel.

5. The computer-implemented method of claim 1 , wherein the portion of the original request message excluded by each subsequent request message comprises at least one of:

at least a portion of a header field of the original request message; and

at least a portion of a payload of the original request message.

6. The computer-implemented method of claim 1 , wherein the template comprises a dynamic template that is updated with data from each subsequent request message.

7. The computer-implemented method of claim 1 , wherein the original request message comprises at least one of:

an HTTP POST request;

an HTTP GET request; and

an HTTP PUT request.

8. The computer-implemented method of claim 1 , wherein the security server comprises a server hosting a security website.

9. The computer-implemented method of claim 8 , wherein receiving the original request message comprises receiving the original request message from a web browser of the client device.

10. The computer-implemented method of claim 1 , wherein each subsequent request message comprises a request message processed by the client device to exclude at least some content that is redundant to content included in the original request message.

11. The computer-implemented method of claim 1 , further comprising:

sending, to the client device, an original response message that includes content related to the action requested by the original request message; and

sending, to the client device, a subsequent response message that excludes at least a portion of the original response message to reduce redundancy between the original response message and the subsequent response message.

12. The computer-implemented method of claim 11 , wherein at least one of:

sending the original response message to the client device comprises sending the original response message using the HTTP persistent connection; and

sending the subsequent response message comprises sending the subsequent response message using the HTTP persistent connection.

13. The computer-implemented method of claim 11 , further comprising, prior to sending the subsequent response message, creating the subsequent response message by excluding, from the subsequent response message, information that identifies an entity or a channel.

14. The computer-implemented method of claim 1 , wherein:

receiving each subsequent request message comprises receiving a request message that includes content and an instruction directing the security server to at least one of:

add content to the original request message; and

subtract content from the original request message; and

applying each subsequent request message to the original request message comprises at least one of:

adding content to the original request message based at least in part on the instruction; and

subtracting content from the original request message based at least in part on the instruction.

15. A system for reducing network traffic by using delta transfers, the system comprising:

a receiving module, stored in memory, that:

receives, from a client device, an original request message that requests that a security server send a notification about a security risk detected on the client device, wherein:

the original request message comprises a pre-defined header that includes an indication that the client device is able to facilitate delta transfers; and

the original request message comprises a HyperText Transfer Protocol (HTTP) request sent through an HTTP persistent connection used to send and respond to multiple HTTP request/response pairs without closing and reopening a new network connection between each request/response pair;

creates, in response to the indication that the client device to able to facilitate delta transfers, a template based on content extracted from the original request message, the template comprising instructions for combining the content extracted from the original request message with content from subsequent request messages;

a storage module, stored in memory, that stores the template at the security server to serve as a foundation for a delta transfer that includes the original request message and at least one subsequent request message that builds upon the original request message;

wherein the receiving module receives, from the client device, a plurality of subsequent request messages, sent through the HTTP persistent connection, that exclude at least a portion of the original request message to reduce redundancy between the original request message and each subsequent request message within the plurality of subsequent request messages, wherein:

the plurality of subsequent request messages comprises at least one of:

a subsequent request message that requests that the security server send a subsequent notification about a subsequent security threat detected on the client device;

a subsequent request message that requests to change a policy governing the types of notifications to send to the client device; and

a subsequent request message that requests to change a policy governing how frequently to send notifications to the client device;

the amount of content excluded from the first subsequent request message within the plurality of subsequent request messages is smaller than a threshold size; and

the aggregate amount of content excluded from the plurality of subsequent request messages is above the threshold size;

a delta module, stored in memory, that applies each subsequent request message within the plurality of subsequent request messages to the stored template to achieve the delta transfer while reducing the redundancy between the original request message and each subsequent request message; and

at least one physical processor configured to execute the receiving module, the storage module, and the delta module.

16. The system of claim 15 , wherein the storage module stores the template by caching the template at the security server in anticipation of applying one or more subsequent request messages to the template to achieve the delta transfer.

17. The system of claim 15 , wherein the security server utilizes an endpoint management platform to provide security services for the client device.

18. The system of claim 15 , wherein the portion of the original request message excluded by each subsequent request message comprises at least one of:

information describing hardware of the client device;

information describing software of the client device;

registration information of the client device;

information to be used by the security server in performing an action requested by the subsequent request message; and

information that identifies an entity or a channel.

19. The system of claim 15 , wherein the portion of the original request message excluded by each subsequent request message comprises at least one of:

at least a portion of a header field of the original request message; and

at least a portion of a payload of the original request message.

20. A non-transitory computer-readable medium comprising one or more computer-readable instructions that, when executed by at least one processor of a computing device, cause the computing device to:

receive, from a client device, an original request message that requests that a security server send a notification about a security risk detected on the client device, wherein:

the original request message comprises a pre-defined header that includes an indication that the client device is able to facilitate delta transfers; and

the original request message comprises a HyperText Transfer Protocol (HTTP) request sent through an HTTP persistent connection used to send and respond to multiple HTTP request/response pairs without closing and reopening a new network connection between each request/response pair;

in response to the indication that the client device to able to facilitate delta transfers, create a template based on content extracted from the original request message, the template comprising instructions for combining the content extracted from the original request message with content from subsequent request messages;

store the template at the security server to serve as a foundation for a delta transfer that includes the original request message and at least one subsequent request message that builds upon the original request message;

receive, from the client device, a plurality of subsequent request messages, sent through the HTTP persistent connection, that exclude at least a portion of the original request message to reduce redundancy between the original request message and each subsequent request message of the plurality of subsequent request messages, wherein:

the plurality of subsequent request messages comprises at least one of:

a subsequent request message that requests that the security server send a subsequent notification about a subsequent security threat detected on the client device;

a subsequent request message that requests to change a policy governing the types of notifications to send to the client device; and

a subsequent request message that requests to change a policy governing how frequently to send notifications to the client device;

the amount of content excluded from the first subsequent request message within the plurality of subsequent request messages is smaller than a threshold size; and

the aggregate amount of content excluded from the plurality of subsequent request messages is above the threshold size; and

apply each subsequent request message within the plurality of subsequent request messages to the stored template to achieve the delta transfer while reducing the redundancy between the original request message and each of the subsequent request messages.

Assignments (6)
CHANGE OF NAME Recorded Feb 6, 2023
From: NORTONLIFELOCK INC.
To: GEN DIGITAL INC.
Reel/Frame 062714/0605 →
NOTICE OF SUCCESSION OF AGENCY (REEL 050926 / FRAME 0560) Recorded Sep 13, 2022
From: JPMORGAN CHASE BANK, N.A.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 061422/0371 →
SECURITY AGREEMENT Recorded Sep 13, 2022
From: NORTONLIFELOCK INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062220/0001 →
CHANGE OF NAME Recorded Feb 14, 2020
From: SYMANTEC CORPORATION
To: NORTONLIFELOCK INC.
Reel/Frame 051935/0228 →
SECURITY AGREEMENT Recorded Nov 4, 2019
From: SYMANTEC CORPORATION; BLUE COAT LLC; LIFELOCK, INC,; SYMANTEC OPERATING CORPORATION
To: JPMORGAN, N.A.
Reel/Frame 050926/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2015
From: SHAVELL, MICHAEL; CHAGNON, GREGORY
To: SYMANTEC CORPORATION
Reel/Frame 034849/0603 →
Cited By (1)
US 12,287,744