IP Library Granted Patent US 8,050,251
Granted Patent B2
US 8,050,251 · App. 12/421,651 · Granted Nov 1, 2011

VPN optimization by defragmentation and deduplication apparatus and method

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 8,050,251
App. No.
12/421,651
Granted
Nov 1, 2011
Kind
B2
Abstract

An apparatus for optimizing a virtual private network operates by defragmenting and deduplicating transfer of variable sized blocks. A large data object is converted to a plurality of data paragraphs by a fingerprinting method. Each data paragraph is cached and hashed. The hashes are transmitted between a primary and a satellite apparatus. Only data paragraphs which are not cached at both the primary and satellite are transferred. The data object is integrated from data paragraphs stored in cache and transmitted to its destination IP address.

Claims (41)

1. A method for operating a system to optimize a virtual private network by defragmentation and deduplication of large data transmissions, the system comprising: a wide area network coupling a satellite apparatus to a primary apparatus, a satellite apparatus comprising: a circuit to receive a data object and determine a plurality of data paragraphs, a circuit to compute a hash for each data paragraph, a circuit to pack a packet with a plurality of hashes; a primary apparatus comprising: a data paragraph cache store, a circuit to receive a packed packet from a satellite apparatus, a circuit to integrate data paragraphs into a data object, and network interfaces and means for sending and receiving TCP packets in each apparatus; the method comprising:

opening a virtual private network connection between a satellite apparatus and a primary apparatus,

establishing a persistent TCP connection between a satellite apparatus and a primary apparatus through a wide area network,

setting a maximum TCP buffer size at both the satellite apparatus and the primary apparatus,

setting a TCP window scale to support large transmission sizes,

transmitting at least one packed packet comprising a plurality of hashes and a destination IP address between a satellite apparatus and a primary apparatus,

within the primary apparatus:

receiving data paragraphs and hashes from a satellite apparatus until all data paragraphs are available,

receiving a packed packet comprising a plurality of hashes and a destination IP address,

integrating a data object by retrieving data paragraphs from data paragraph cache store and

transmitting the data object to the destination IP address;

within the satellite apparatus:

receiving a data object and a destination IP address,

determining a plurality of data paragraphs by computing fingerprints on the data object,

packing a packet with hashes computed from each data paragraph and with the destination IP address,

checking a transfer diary to determine if data paragraphs are available in the primary cache,

queuing data paragraphs for transmission to primary cache,

transmitting a hash to a primary apparatus for each data paragraph queued for transmission to said primary apparatus,

determining that all data paragraphs required for a data object are available at the primary apparatus, and

transmitting the packed packet to the primary apparatus.

2. The method of claim 1 wherein determining a plurality of data paragraphs by computing fingerprints on the data object comprises:

within the satellite apparatus:

incrementally reading a data object as a string of text,

delimiting a data paragraph after a minimum length,

delimiting a data paragraph at a maximum length,

delimiting a data paragraph upon matching a fingerprint to a masked key prior to a maximum length,

computing the fingerprint upon reading each additional byte of the data object after a minimum length and prior to a maximum length, and

delimiting a data paragraph upon reaching the end of the data object.

3. The method of claim 1 wherein receiving data paragraphs and hashes from a satellite apparatus until all data paragraphs are available, comprises

within the primary apparatus:

receiving a hash from a satellite apparatus,

checking a diary store to determine if a data paragraph having a hash is available,

receiving and storing data paragraphs into data paragraph cache store if needed, and

signaling to a satellite apparatus when all queued data paragraphs are available in data paragraph cache store.

4. The method of claim 1 further comprising:

receiving a plurality of packets having a common destination IP corresponding to fragmentation of a data object intended to be transmitted through a virtual private network from a source in a local area network coupled to the satellite apparatus to a destination IP address in a local area network coupled to the primary apparatus,

terminating the connection, and

defragmenting the data object.

5. The method of claim 1 further comprising:

determining that a data paragraph queued for transmission from a satellite apparatus to a primary apparatus is unnecessary and

signaling the satellite apparatus to remove it from the transmission queue.

Assignments (12)
SECURITY INTEREST Recorded Mar 17, 2025
From: BARRACUDA NETWORKS, INC.
To: OAKTREE FUND ADMINISTRATION, LLC, AS COLLATERAL AGENT
Reel/Frame 070529/0123 →
SECURITY INTEREST Recorded Sep 3, 2022
From: BARRACUDA NETWORKS, INC.
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 061377/0208 →
SECURITY INTEREST Recorded Sep 3, 2022
From: BARRACUDA NETWORKS, INC.
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 061377/0231 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN IP RECORDED AT R/F 045327/0877 Recorded Aug 16, 2022
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: BARRACUDA NETWORKS, INC.
Reel/Frame 061179/0602 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN IP RECORDED AT R/F 054260/0746 Recorded Aug 16, 2022
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: BARRACUDA NETWORKS, INC.
Reel/Frame 061521/0086 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Oct 30, 2020
From: BARRAUDA NETWORKS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 054260/0746 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY RECORDED AT R/F 045327/0934 Recorded Apr 15, 2019
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: BARRACUDA NETWORKS, INC.
Reel/Frame 048895/0841 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 14, 2018
From: BARRACUDA NETWORKS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045327/0934 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 14, 2018
From: BARRACUDA NETWORKS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045327/0877 →
RELEASE OF SECURITY INTEREST Recorded Jan 8, 2018
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: BARRACUDA NETWORKS, INC.
Reel/Frame 045027/0870 →
SECURITY INTEREST Recorded Oct 12, 2012
From: BARRACUDA NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 029218/0107 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2009
From: ONGOLE, SUBRAHMANYAM, MR.; SRINIVASAN, SRIDHAR, MR.
To: BARRACUDA NETWORKS, INC.
Reel/Frame 022549/0006 →