IP Library Granted Patent US 8,843,639
Granted Patent B2
US 8,843,639 · App. 12/605,042 · Granted Sep 23, 2014

System and method for creating a transparent data tunnel

Inventor: Timothy R. Jewell (Toronto, CA)
Assignee: Acpana Business Systems Inc.
H04L63/08H04L61/2592H04L12/4633H04L63/029H04L29/06625
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,843,639
App. No.
12/605,042
Granted
Sep 23, 2014
Kind
B2
Abstract

A method of transparently transferring data between a network application running on a first processor and a target service running on a second processor through a tunnel server running on a third processor, the method comprising: connecting a target program running on the second processor to the tunnel server; connecting a client program running on the first processor to the tunnel server; connecting the network application to the client program through a network adapter running on the first processor; sending data from network application to the tunnel server through the client program; connecting the target program to the target service through a network adapter running on the second processor; and relaying data from the tunnel server to the target service through the target program.

Claims (56)

1. A method of transparently sending data between a network application running on a first processor and a target service running on a second processor through a tunnel server running on a third processor, the method comprising:

a) connecting a target program running on the second processor to the tunnel server;

b) connecting a client program running on the first processor to the tunnel server;

c) connecting the network application to the client program through a selected port on a network adapter, the network adapter running on the first processor;

d) sending data from the network application to the tunnel server through the client program, wherein the network application sends the data to the client program on the selected port;

e) connecting the target program to the target service through a network adapter running on the second processor; and

f) relaying data from the tunnel server to the target service through the target program.

2. The method of claim 1 , further comprising:

a) wrapping data received by the client program from the network application in a control protocol packet before sending it to the tunnel server; and

b) unwrapping data in the control protocol packet received by the target program from tunnel server before forwarding the data to the target service.

3. The method of claim 2 , further comprising:

a) reading as much data as is available into the client program from the network application before wrapping the data in a control protocol packet; and

b) sending the control protocol packet to the target service in entirety before continuing with reading.

4. The method of claim 2 , further comprising:

a) sending the control protocol packet in entirety to the tunnel server before continuing with reading; and

b) reading the control protocol packet in entirety into the target program from the tunnel server before unwrapping the control protocol packet.

5. The method of claim 1 wherein the network adapter running on the first processor is a loopback adapter.

6. The method of claim 1 wherein the network adapter running on the second processor is a loopback adapter.

7. The method of claim 1 wherein the tunnel server authenticates user information upon connection.

8. The method of claim 1 wherein the data passes through an unconfigured firewall.

9. The method of claim 8 wherein the data is not interrogated or cached.

10. The method of claim 8 wherein the data travels over port 443.

11. The method of claim 1 , further comprising:

a) sending response data from the target service to the tunnel server through the target program; and

b) forwarding response data from the tunnel server to the network application through the client program.

12. A system of transparently transferring data comprising:

a) a first processor running a network application and a client program configured to connect to each other through a selected port on a network adapter, the network adapter running on the first processor;

b) a second processor running a target service and a target program configured to connect to each other through a network adapter running on the second processor;

c) a third processor running a tunnel server configured to connect to the client program and the target program such that data can be sent between the network application to the target server;

d) send data from the network application to the tunnel server through the client program, wherein the network application sends the data to the client program on the selected port; and

e) relay data from the tunnel server to the target service through the target program.

13. The system of claim 12 , further configured to:

a) wrap data received by the client program from the network application in a control protocol packet before sending it to the tunnel server; and

b) unwrap data in the control protocol packet received by the target program from tunnel server before forwarding the data to the target service.

14. The system of claim 13 , further configured to:

a) read as much data as is available into the client program from the network application before wrapping the data in a control protocol packet; and

b) send the control protocol packet to the target service in entirety before continuing with reading.

15. The system of claim 13 , further configured to:

a) send the control protocol packet in entirety to the tunnel server before continuing with reading; and

b) read the control protocol packet in entirety into the target program from the tunnel server before unwrapping the control protocol packet.

16. The system of claim 12 , wherein the network adapter running on the first processor is a loopback adapter.

17. The system of claim 12 , wherein the network adapter running on the second processor is a loopback adapter.

18. The system of claim 12 , wherein the tunnel server authenticates user information upon connection.

19. The system of claim 12 , wherein the data passes through an unconfigured firewall.

20. The system of claim 19 , wherein the data is not interrogated or cached.

21. The system of claim 19 , wherein the data travels over port 443.

22. The system of claim 12 , further configured to:

a) send response data from the target service to the tunnel server through the target program; and

b) forward response data from the tunnel server to the network application through the client program.

23. A physical non-transitory computer-readable medium comprising instructions for sending data transparently between a network application running on a first processor and a target service running on a second processor through a tunnel server running on a third processor, the instructions comprising:

a) connecting a target program running on the second processor to the tunnel server;

b) connecting a client program running on the first processor to the tunnel server;

c) connecting the network application to the client program through a selected port on a network adapter, the network adapter running on the first processor;

d) sending data from the network application to the tunnel server through the client program, wherein the network application sends the data to the client program on the selected port;

e) connecting the target program to the target service through a network adapter running on the second processor; and

f) relaying data from the tunnel server to the target service through the target program.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Jun 30, 2025
From: THE TORONTO-DOMINION BANK
To: HOSTPAPA, INC.
Reel/Frame 071764/0150 →
SECURITY INTEREST Recorded Jun 2, 2025
From: HOSTPAPA USA, INC.; HOSTPAPA, INC.
To: BANK OF MONTREAL
Reel/Frame 071287/0305 →
SECURITY INTEREST Recorded Jul 19, 2023
From: HOSTPAPA, INC.
To: THE TORONTO-DOMINION BANK
Reel/Frame 064309/0148 →
CHANGE OF NAME Recorded Jul 17, 2023
From: 1246598 B.C. LTD.
To: 1000029250 ONTARIO LTD.
Reel/Frame 064292/0369 →
MERGER AND CHANGE OF NAME Recorded Jul 17, 2023
From: 1241017 B.C. LTD.; DATA DEPOSIT BOX INC.; 1246598 B.C. LTD.
To: 1246598 B.C. LTD.
Reel/Frame 064292/0270 →
MERGER Recorded Jul 17, 2023
From: 1000029250 ONTARIO LTD.; HOSTPAPA, INC.; 1932713 ONTARIO INC.
To: HOSTPAPA, INC.
Reel/Frame 064332/0085 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2018
From: 1932713 ONTARIO INC.
To: DATA DEPOSIT BOX INC.
Reel/Frame 046044/0585 →
MERGER AND CHANGE OF NAME Recorded Jun 7, 2018
From: ACPANA BUSINESS SYSTEMS INC.; 2441043 ONTARIO INC.; 1932713 ONTARIO INC.
To: 1932713 ONTARIO INC.
Reel/Frame 046012/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2010
From: JEWELL, TIMOTHY R.
To: ACPANA BUSINESS SYSTEMS INC.
Reel/Frame 023775/0135 →
Continuity (1)
Related Publication 20110099619A1 · Apr 28, 2011