IP Library Granted Patent US 7,908,509
Granted Patent B2
US 7,908,509 · App. 12/540,921 · Granted Mar 15, 2011

Method and apparatus for controlling an upper layer in a protocol stack to delay timeouts

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,908,509
App. No.
12/540,921
Granted
Mar 15, 2011
Kind
B2
Abstract

In a device communicating over a network, a proxy to delay timeout of an application on the device where the proxy is on a communications path between the application and the network, the proxy comprising means for registering a data request from the application to the network; a counter for measuring a predetermined time interval, the time interval selected to prevent timeout at the application; means to send preventative data to the application after the counter has expired but before a response is received; means for modifying a response received from the network to remove preventative data already sent to the application, creating a modified response; and means for forwarding the modified response to the application, wherein the proxy registers that a message has been sent and waits a predetermined interval, and if a response has not been received during that interval sends the preventative data to the application to delay a timeout.

Claims (36)

1. A wireless device comprising:

a communications subsystem;

a processor; and

memory for storing applications executable by said processor, said applications including:

a first application requesting data from a network utilizing said communications subsystem; and

a timeout delay application configured to delay timeout of the first application, timeout being caused by a response to the data request not being received within a timeout period, the timeout delay system consisting of:

a proxy configured to register the data request from the application to the network, the application running on a wireless device;

a counter for measuring a predetermined time interval, the time interval being selected to prevent timeout at the application;

output to send preventative data to the first application after the counter has expired but before an anticipated response is received, the preventative data forming part of the anticipated response to the data request;

the proxy configured to modify a response received from the network to remove preventative data already sent to the application, thereby creating a modified response; and

the output configured to forward the modified response to the application.

2. The wireless device of claim 1 , wherein the first application is an application employing the HTTP protocol for communication.

3. The wireless device of claim 2 , wherein a transport layer for the network is a TCP layer.

4. The wireless device of claim 2 , wherein the preventative data is a response header.

5. The wireless device of claim 4 , wherein the response header is a string having the characters “HTTP/1.”.

6. The wireless device of claim 5 , wherein the output for sending preventative data sends individual bytes of the response header.

7. The wireless device of claim 5 , wherein the output for sending preventative data sends multiple bytes of the response header.

8. The wireless device of claim 4 , wherein selecting the response header is subject to a finite amount of header information, the output being subject to availability of unique header information.

9. The wireless device of claim 1 , wherein the first application is a browser application.

10. A method for delaying a timeout of an application running on a wireless device communicating over a network, said timeout being caused by a response to a data request from the network not being received within a timeout period, the method comprising:

registering at a proxy that the data request has been sent by the application over the network, said proxy residing on a communications path between the application and the network;

waiting a predetermined time interval selected to prevent timeout at the application;

if the anticipated response to said data request has not been received from the network after the expiry of the predetermined time interval,

sending from the proxy preventative data to the application, said preventative data forming part of the anticipated response to the data request;

receiving at the application the preventative data as part of the anticipated response causing the application to postpone the timeout; and

repeating the waiting step; and

if the anticipated response to said data request is received from the network,

modifying at the proxy said received response to remove preventative data already sent to the application, thereby creating a modified response; and

forwarding from the proxy the modified response to the application;

wherein the application employs HTTP protocol for communication, the proxy is a local HTTP proxy on the wireless device, and the preventative data sent is a response header.

11. The method of claim 10 , wherein the application is a browser application.

12. The method of claim 10 , wherein a transport layer for the network is a TCP layer.

13. The method of claim 10 , wherein the response header is a string having the characters of “HTTP/1.”.

14. The method of claim 10 , wherein sending preventative data includes sending one byte of the response header after the predetermined time interval.

15. The method of claim 10 , wherein sending preventative data includes sending multiple bytes of the response header after the predetermined time interval.

16. The method of claim 10 , wherein selecting the response header is subject to a finite amount of header information, generating the preventative data being subject to availability of unique header information.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Feb 18, 2016
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 037856/0713 →