US 11,991,153 B2
Systems and methods for providing communications between on-premises servers and remote devices
Harish Rawat, San Jose, CA (US); Sachin Gopaldas Totale, Pleasanton, CA (US); and Ahson M. Ahmad, Dublin, CA (US)
Assigned to OPEN TEXT CORPORATION, Waterloo (CA)
Filed by Open Text Corporation, Waterloo (CA)
Filed on May 17, 2023, as Appl. No. 18/319,160.
Application 18/319,160 is a continuation of application No. 17/353,871, filed on Jun. 22, 2021, granted, now 11,700,238.
Application 17/353,871 is a continuation of application No. 16/953,083, filed on Nov. 19, 2020, granted, now 11,349,815, issued on May 31, 2022.
Application 16/953,083 is a continuation of application No. 16/018,886, filed on Jun. 26, 2018, granted, now 10,873,567, issued on Dec. 22, 2020.
Claims priority of provisional application 62/524,844, filed on Jun. 26, 2017.
Prior Publication US 2023/0291716 A1, Sep. 14, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04L 9/40 (2022.01); H04L 12/46 (2006.01); H04L 67/02 (2022.01); H04L 67/56 (2022.01)
CPC H04L 63/029 (2013.01) [H04L 12/4633 (2013.01); H04L 63/0209 (2013.01); H04L 63/0281 (2013.01); H04L 63/083 (2013.01); H04L 63/0884 (2013.01); H04L 67/02 (2013.01); H04L 67/56 (2022.05)] 20 Claims
OG exemplary drawing
 
1. A system for communications between publicly accessible and publicly non-accessible servers and a remote device, comprising:
a processor; and
memory storing instructions that, when executed by the processor, causes the system to perform a set of operations for communications between servers and a remote device, the set of operations comprising:
receiving, at a proxy service for access to backend servers, a request from a remote device to access backend servers, the remote device physically outside the premises at which the backend servers reside;
when the backend server is publicly accessible, forwarding the request to the publicly accessible backend server, executing the request and returning results of the request to the remote device;
when the backend server is publicly non-accessible, executing:
determining, by the proxy service, a tunnel agent that implements a tunneling communication channel associated with the backend server and a tunnel service enabling secure access to the publicly non-accessible backend server;
forwarding the request to the tunnel service determined by the proxy service;
executing the request by the tunnel agent by way of a Hypertext Transfer Protocol (HTTP) request, the tunnel agent servicing the publicly non-accessible backend server;
forwarding the request to the publicly non-accessible backend server; and
executing the request and returning results of the request to the tunnel agent, the tunnel agent returning results to the tunnel service, the tunnel service returning results to the proxy service, the proxy service returning the results to the remote device.