IP Library Granted Patent US 8,655,986
Granted Patent B2
US 8,655,986 · App. 13/466,023 · Granted Feb 18, 2014

Data path processing

Inventors: Michael Fox (San Diego, CA); Faisal Mushtaq (San Jose, CA); Karl Gierach (Irvine, CA)
Assignee: Allot Communications Ltd.
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,655,986
App. No.
13/466,023
Granted
Feb 18, 2014
Kind
B2
Abstract

An intermediate device receives a content data message addressed to a receiving device for a communication session between a source device and the receiving device. The intermediate device substitutes adapted content data for content data of the content data message and then sends the adapted content data to the receiving device such that it appears to the receiving device that the adapted content data originated from the source device. The communication from the source device to the receiving device is intercepted by the intermediate device in a manner that is transparent to the source device and receiving device.

Claims (22)

1. A method of streaming data over a network, the method comprising:

responsive to identifying a connection establishment message associated with establishment of a network connection to download a file to a receiving device, making a connection entry in a connection table of a source device for a first communication session with the receiving device;

receiving a first confirmation directed to the receiving device from the source device, the first confirmation indicating successful establishment of the first communication session between the receiving device and the source device;

forwarding the first confirmation to the receiving device;

receiving at least one first segment comprising first data from the source device, the first segment being directed to the receiving device as part of the first communication session;

creating at least one second segment of data by substituting second data for at least a portion of the first data, the second data being different than the first data;

sending the at least one second segment to the receiving device, the at least one second segment appearing to the receiving device as being from the source device and being part of the first communication session;

responsive to receiving the at least one first segment, sending at least one first acknowledgement message to the source device, the at least one first acknowledgement message appearing to the source device as being from the receiving device as part of the first communication session;

receiving at least one second acknowledgment message from the receiving device, the at least one second acknowledgement message being part of the first communication session; and

transforming the at least one acknowledgement message and forwarding the transformed at least one acknowledgement message to the source device, the transformed at least one acknowledgement message appearing to the source device as being from the receiving device as part of the first communication session.

2. The method of claim 1 , further comprising:

compressing the first data of the at least one first segment to form the second data.

3. The method of claim 1 , further comprising:

maintaining a first series of sequence numbers associated with the at least one first segment received from the data path management device; and

maintaining a second series of sequence numbers associated with the at least one second segment sent to the receiving device.

4. A computer system comprising:

a network interface through which data is sent and received over a computer network;

a processor configured to communicate with the network interface and respond to a connection establishment message, associated with establishment of a network connection for downloading a file to a receiving device, by making a connection entry in a connection table of a source device for a first communication session with the receiving device, the processor further configured to respond to a received first confirmation directed to the receiving device from the source device, the first confirmation indicating successful establishment of the first communication session between the receiving device and the source device, by forwarding the first confirmation to the receiving device, receiving at least one first segment comprising first data from the source device, the first segment being directed to the receiving device as part of the first communication session, and creating at least one second segment of data by substituting second data for at least a portion of the first data, the second data being different than the first data, and then send the at least one second segment to the receiving device, the at least one second segment appearing to the receiving device as being from the source device and being part of the first communication session;

wherein the processor is further configured to respond to receiving the at least one first segment by sending at least one first acknowledgement message to the source device, the at least one first acknowledgement message appearing to the source device as being from the receiving device as part of the first communication session;

wherein the processor is further configured to respond to receiving at least one second acknowledgment message from the receiving device, the at least one second acknowledgement message being part of the first communication session, by transforming the at least one acknowledgement message and forwarding the transformed at least one acknowledgement message to the source device, the transformed at least one acknowledgement message appearing to the source device as being from the receiving device as part of the first communication session.

5. The computer system of claim 4 , wherein the processor is further configured to compress the first data of the at least one first segment to form the second data.

6. The computer system of claim 4 , wherein the processor is further configured to maintain a first series of sequence numbers associated with the at least one first segment received from the data path management device, and maintain a second series of sequence numbers associated with the at least one second segment sent to the receiving device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2025
From: ALLOT COMMUNICATIONS LTD.
To: SERIES 122 OF ALLIED SECURITY TRUST I
Reel/Frame 071426/0347 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2013
From: FOX, MICHAEL; MUSHTAQ, FAISAL; GIERACH, KARL
To: ORTIVA WIRELESS
Reel/Frame 031216/0652 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2012
From: ORTIVA WIRELESS, INC.
To: ALLOT COMMUNICATIONS LTD.
Reel/Frame 029383/0057 →
Continuity (2)
Provisional Application 61483492 · May 6, 2011
Related Publication 20120284373A1 · Nov 8, 2012