IP Library Granted Patent US 7,860,997
Granted Patent B2
US 7,860,997 · App. 12/684,826 · Granted Dec 28, 2010

Method and apparatus for optimized flow control to increase the performance over long-latency links

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 7,860,997
App. No.
12/684,826
Granted
Dec 28, 2010
Kind
B2
Abstract

The invention increases performance of HTTP over long-latency links by pre-fetching objects concurrently via aggregated and flow-controlled channels. An agent and gateway together assist a Web browser in fetching HTTP contents faster from Internet Web sites over long-latency data links. The gateway and the agent coordinate the fetching of selective embedded objects in such a way that an object is ready and available on a host platform before the resident browser requires it. The seemingly instantaneous availability of objects to a browser enables it to complete processing the object to request the next object without much wait. Without this instantaneous availability of an embedded object, a browser waits for its request and the corresponding response to traverse a long delay link.

Claims (11)

1. A flow control apparatus, comprising: an agent associated with a browser and host platform; a gateway in communication with a source Web server; a long latency link between said agent and said gateway; an independent flow control mechanism for downloading Web page objects in parallel from said source Web server to said browser via said long latency link; and a cache associated with said host platform into which Web page objects are selectively downloaded in parallel as soon as said agent is aware of them, independently of an implementation of said browser and said source Web server; wherein selected embedded Web page objects are made locally available to said browser at said cache by said agent; and wherein said browser does not need to wait for a request and a corresponding response to traverse said long latency link before a Web object is available, said independent flow control mechanism further comprising a pre-fetcher for selectively pre-fetching certain objects; and said independent flow control mechanism operating concurrently with said browser to fetch said objects from said source Web server while said browser is still loading a page; wherein said objects are stored at said cache.

2. The apparatus of claim 1 , further comprising: a parser for parsing a Web page to determine if said Web page includes said certain objects.

3. The apparatus of claim 1 , wherein said objects comprise any of JavaScripts and Style Sheets.

4. The apparatus of claim 1 , said independent flow control mechanism further comprising: a module for measuring bandwidth of a path by sending at least two packets, one after another, across said long latency link; and a module for using said bandwidth to transmit packets over said long latency link in a controlled way.

5. A flow control method, comprising the steps of: providing an agent associated with a browser and host platform; providing a gateway in communication with a source Web server; providing a long latency link between said agent and said gateway; providing an independent flow control mechanism for downloading Web page objects in parallel from said source Web server to said browser via said long latency link; providing a cache associated with said host platform into which Web page objects are selectively downloaded in parallel as soon as said agent is aware of them, independently of an implementation of said browser and said source Web server; and making selected embedded Web page objects locally available to said browser at said cache by said agent; wherein said browser does not need to wait for a request and a corresponding response to traverse said long latency link before a Web object is available; using a pre-fetcher to selectively pre-fetch certain objects; and said independent flow control mechanism operating concurrently with said browser to fetch said objects from said source Web server while said browser is still loading a page; wherein said objects are stored at said cache.

6. The method of claim 5 , further comprising the steps of: for parsing a Web page to determine if said Web page includes said certain objects.

7. The method of claim 5 , wherein said objects comprise any of JavaScripts and Style Sheets.

8. The method of claim 5 , further comprising the steps of: measuring bandwidth of a path by sending at least two packets, one after another, across said long latency link; and using said bandwidth to transmit packets over said long latency link in a controlled way.

9. A flow control apparatus, comprising: an independent flow control mechanism for downloading Web page objects in parallel from a source Web server to a browser via a long latency link; and a cache associated with a host platform into which Web page objects are selectively downloaded in parallel as soon as an agent is aware of them, independently of an implementation of said browser and said source Web server; wherein selected embedded Web page objects are made locally available to said browser at said cache by said agent; and wherein said browser does not need to wait for a request and a corresponding response to traverse said long latency link before a Web object is available; using a pre-fetcher to selectively pre-fetch certain objects; and said independent flow control mechanism operating concurrently with said browser to fetch said objects from said source Web server while said browser is still loading a page; wherein said objects are stored at said cache.

10. A flow control method, comprising the steps of: downloading Web page objects in parallel from a source Web server to a browser via a long latency link with an independent flow control mechanism; and selectively downloading Web page objects in parallel into a cache associated with a host platform as soon as an agent is aware of them, independently of an implementation of said browser and said source Web server; and making selected embedded Web page objects locally available to said browser at said cache by said agent; wherein said browser does not need to wait for a request and a corresponding response to traverse said long latency link before a Web object is available; using a pre-fetcher to selectively pre-fetch certain objects; and said independent flow control mechanism operating concurrently with said browser to fetch said objects from said source Web server while said browser is still loading a page; wherein said objects are stored at said cache.

11. A non-transitory computer readable medium having stored thereon program instructions which, when executed by a processor, cause said processor to implement the flow control method of claim 10 .

Assignments (22)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2025
From: IP3 2024, SERIES 924 OF ALLIED SECURITY TRUST I
To: CYCLOPS TECHNOLOGIES LLC
Reel/Frame 072575/0871 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2025
From: VENTURI WIRELESS, INC.
To: IP3 2024, SERIES 924 OF ALLIED SECURITY TRUST I
Reel/Frame 069956/0719 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE NAME OF THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 49385 FRAME: 597. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 20, 2024
From: VENTURI WIRELESS, INC.
To: VENTURI WIRELESS, INC.
Reel/Frame 069746/0612 →
RELEASE OF SECURITY INTEREST Recorded Dec 19, 2024
From: COUNTY OF SANTA CLARA
To: VENTURI WIRELESS, INC.
Reel/Frame 069644/0933 →
RELEASE OF SECURITY INTEREST Recorded Dec 19, 2024
From: DRAWBRIDGE DSO SECURITIES LLC
To: VENTURI IP LLC
Reel/Frame 069644/0629 →
SECURITY INTEREST Recorded Dec 19, 2024
From: VENTURI WIRELESS, INC.
To: COUNTY OF SANTA CLARA
Reel/Frame 069644/0910 →
RELEASE OF SECURITY INTEREST Recorded Dec 19, 2024
From: COUNTY OF SANTA CLARA
To: VENTURI WIRELESS, INC.
Reel/Frame 069644/0925 →
SECURITY INTEREST Recorded Dec 19, 2024
From: VENTURI WIRELESS, INC.
To: COUNTY OF SANTA CLARA
Reel/Frame 069644/0929 →
RELEASE OF SECURITY INTEREST Recorded Dec 18, 2024
From: DRAWBRIDGE DSO SECURITIES LLC
To: VENTURI IP LLC
Reel/Frame 069627/0490 →
AFFIDAVIT FOR CONFIRMATION OF ENTITY NAME Recorded Dec 18, 2024
From: VENTURI WIRELESS
To: VENTURI WIRELESS, INC.
Reel/Frame 069736/0820 →
TRANSFER OF SECURITY INTEREST Recorded Dec 13, 2024
From: DRAWBRIDGE SPECIAL OPPORTUNITIES FUND LP
To: DRAWBRIDGE DSO SECURITIES LLC
Reel/Frame 069648/0507 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: DRAWBRIDGE DSO SECURITIES LLC
To: VENTURI WIRELESS, INC.
Reel/Frame 069583/0118 →
TRANSFER OF SECURITY INTEREST Recorded Dec 13, 2024
From: FORTRESS CREDIT CORP.
To: DRAWBRIDGE SPECIAL OPPORTUNITIES FUND LP
Reel/Frame 069648/0094 →
SECURITY INTEREST Recorded Nov 5, 2024
From: VENTURI WIRELESS, INC.
To: VENTURE LENDING & LEASING IV, INC. AND VENTURE LENDING & LEASING V, INC.
Reel/Frame 069150/0750 →
RELEASE OF SECURITY INTEREST Recorded Nov 5, 2024
From: VENTURE LENDING & LEASING IV, INC. AND VENTURE LENDING & LEASING V, INC.
To: VENTURI WIRELESS, INC.
Reel/Frame 069150/0774 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2019
From: RAMADAS, KRISHNA
To: VENTURI WIRELESS
Reel/Frame 049385/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2018
From: VENTURI IP LLC
To: VENTURI WIRELESS, INC.
Reel/Frame 047344/0866 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2016
From: VENTURI IP LLC
To: GRAN V4, LLC
Reel/Frame 040653/0708 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2016
From: ML TECH, LLC
To: VENTURI IP LLC
Reel/Frame 040653/0717 →
CHANGE OF NAME Recorded Dec 17, 2016
From: GRAN V4, LLC
To: ML TECH, LLC
Reel/Frame 041001/0974 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2013
From: VENTURI WIRELESS, INC.
To: VENTURI IP LLC
Reel/Frame 030001/0894 →
SECURITY AGREEMENT Recorded Mar 14, 2013
From: VENTURI IP LLC
To: FORTRESS CREDIT CORP.
Reel/Frame 030004/0001 →