IP Library Granted Patent US 12695815
Granted Patent B2
US 12695815 · App. 18/958,385 · Granted Jul 28, 2026

Data communication protocols for data transmission and software assurance in a cloud environment

Inventor: Ravi Shankar Kamaraj (Karnataka, IN)
Assignee: Oracle International Corporation
H04L67/56H04L67/10
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 12695815
App. No.
18/958,385
Filed
Nov 25, 2024
Granted
Jul 28, 2026
Kind
B2
Art Unit
2451
USPC
709/203
Abstract

Techniques for data communication protocols for data transmission and software assurance in a cloud environment are disclosed. Data is received from a first component and at a first adapter using a first communication protocol. The data is transmitted, by the first adapter and to a proxy, using a second communication protocol. The proxy audits the data, and (i) blocks passage of the data, or (ii) forwards the data to a second adapter using the second communication protocol, to cause the second adapter to transmit the data to a second component using the first communication protocol. The proxy is within a tenancy of a cloud environment. The first adapter and the first component are within a first section of the cloud environment. The second adapter and the second component are within a second section of the cloud environment. Neither of the first or second sections is within the tenancy.

Claims (111)

1 . A non-transitory computer-readable medium including instructions that when executed by one or more processors, cause a system including the one or more processors to perform operations including:

receiving, at a first adapter and from a first component, data using a first communication protocol; and

transmitting, by the first adapter and to a proxy, the data using a second communication protocol, such that the proxy:

audits the data to check for non-permissible information within the data, and

performs one of:

(i) in response to detecting presence of the non-permissible information within the data, blocks passage of the data to its intended destination, or

(ii) in response to detecting absence of the non-permissible information within the data, allows passage of the data to a second adapter using the second communication protocol, to facilitate transmission of the data from the second adapter to a second component using the first communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.

2 . The non-transitory computer-readable medium of claim 1 , wherein the first section is located in a first country, and wherein the second section is located in a second country.

3 . The non-transitory computer-readable medium of claim 1 , wherein:

the tenancy is a first tenancy;

the first section is within a second tenancy of the cloud environment; and

the second section is within (i) the second tenancy of the cloud environment or (ii) a third tenancy of the cloud environment that is different from each of the first and second tenancies.

4 . The non-transitory computer-readable medium of claim 1 , wherein the operations further include:

receiving, at the second adapter and from the proxy, the data using the second communication protocol; and

transmitting, by the second adapter and to the second component, the data using the first communication protocol.

5 . The non-transitory computer-readable medium of claim 1 , wherein the operations further include:

accessing, by the first adapter, the first component, the second adapter, and the second component, an interface description language from a protocol library.

6 . The non-transitory computer-readable medium of claim 1 , wherein the operations further include:

accessing, by the first adapter and the first component, a first interface description language from a first protocol library; and

accessing, by the second adapter and the second component, a second interface description language from a second protocol library.

7 . The non-transitory computer-readable medium of claim 1 , wherein:

the first adapter comprises: (i) a server for accepting a connection from the first component for the first communication protocol, and acting as a reverse proxy, and (ii) a first protocol converter for establishing a bidirectional connection with the proxy using the second communication protocol; and

the second adapter comprises: (i) a client for establishing a connection with the second component using the first communication protocol, and acting as a forward proxy, and (ii) a second protocol converter for establishing a bidirectional connection with the proxy using the second communication protocol.

8 . The non-transitory computer-readable medium of claim 1 , wherein the first communication protocol is a remote procedure calls (RPC) protocol.

9 . The non-transitory computer-readable medium of claim 1 , wherein the first communication protocol is a gRPC (gRPC remote procedure calls) protocol.

10 . The non-transitory computer-readable medium of claim 1 , wherein the second communication protocol is a bidirectional persistent communication protocol.

11 . The non-transitory computer-readable medium of claim 1 , wherein the second communication protocol is a Websocket protocol.

12 . A non-transitory computer-readable medium including instructions that when executed by one or more processors, cause a system including the one or more processors to perform operations including:

receiving, at a proxy and from a first adapter, data using a first communication protocol, wherein the first adapter receives the data from a first component using a second communication protocol, and transmits the data to the proxy using the first communication protocol;

auditing, at the proxy, the data to check for non-permissible information within the data; and

performing one of:

(i) in response to detecting presence of the non-permissible information within the data, blocking passage of the data to its intended destination, or

(ii) in response to detecting absence of the non-permissible information within the data, allowing passage of the data to a second adapter using the first communication protocol, to facilitate transmission of the data from the second adapter to a second component using the second communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.

13 . The non-transitory computer-readable medium of claim 12 , wherein the first section is located in a first country, wherein the second section is located in a second country, and wherein the proxy is located within (i) the first country, (ii) the second country, or (iii) a third country different from each of the first and second countries.

14 . The non-transitory computer-readable medium of claim 12 , wherein:

the tenancy is a first tenancy;

the first section is within a second tenancy of the cloud environment; and

the second section is within (i) the second tenancy of the cloud environment or (ii) a third tenancy of the cloud environment that is different from each of the first and second tenancies.

15 . The non-transitory computer-readable medium of claim 12 , wherein the second communication protocol is a gRPC (gRPC remote procedure calls protocol) communication protocol.

16 . The non-transitory computer-readable medium of claim 12 , wherein the first communication protocol is a bidirectional persistent communication protocol.

17 . The non-transitory computer-readable medium of claim 12 , wherein the first communication protocol is a Websocket protocol.

18 . A computer implemented method comprising:

receiving, at a first adapter and from a first component, data using a first communication protocol; and

transmitting, by the first adapter and to a proxy, the data using a second communication protocol, such that the proxy audits the data to check for non-permissible information within the data, and performs one of: (i) in response to detecting presence of the non-permissible information within the data, blocks passage of the data to its intended destination, or (ii) in response to detecting absence of the non-permissible information within the data, allows passage of the data to a second adapter using the second communication protocol, to facilitate transmission of the data from the second adapter to a second component using the first communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.

19 . The method of claim 18 , wherein the first section is located in a first country, and wherein the second section is located in a second country.

20 . The method of claim 18 , wherein:

the tenancy is a first tenancy;

the first section is within a second tenancy of the cloud environment; and

the second section is within (i) the second tenancy of the cloud environment or (ii) a third tenancy of the cloud environment that is different from each of the first and second tenancies.

21 . A method comprising:

receiving, at a proxy and from a first adapter, data using a first communication protocol, wherein the first adapter receives the data from a first component using a second communication protocol, and transmits the data to the proxy using the first communication protocol;

auditing, at the proxy, the data to check for non-permissible information within the data; and

performing one of:

(i) in response to a detecting presence of the non-permissible information within the data, blocking passage of the data to its intended destination, or

(ii) in response to detecting absence of the non-permissible information within the data, allowing passage of the data to a second adapter using the first communication protocol, to facilitate transmission of the data from the second adapter to a second component using the second communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.

22 . The method of claim 21 , wherein:

the tenancy is a first tenancy;

the first section is within a second tenancy of the cloud environment; and

the second section is within (i) the second tenancy of the cloud environment or (ii) a third tenancy of the cloud environment that is different from each of the first and second tenancies.

23 . The method of claim 21 , wherein the first communication protocol is a bidirectional persistent communication protocol, and wherein the second communication protocol is a gRPC (gRPC remote procedure calls protocol) communication protocol.

24 . A system comprising:

one or more processors;

one or more non-transitory computer-readable media storing instructions, which, when executed by the system, cause the system to perform a set of actions including:

receiving, at a proxy and from a first adapter, data using a first communication protocol, wherein the first adapter receives the data from a first component using a second communication protocol, and transmits the data to the proxy using the first communication protocol;

auditing, at the proxy, the data to check for non-permissible information within the data; and

performing one of:

(i) in response to a detecting presence of the non-permissible information within the data, blocking passage of the data to its intended destination, or

(ii) in response to detecting absence of the non-permissible information within the data, allowing passage of the data to a second adapter using the first communication protocol, to facilitate transmission of the data from the second adapter to a second component using the second communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.

25 . The system of claim 24 , wherein:

the tenancy is a first tenancy;

the first section is within a second tenancy of the cloud environment; and

the second section is within (i) the second tenancy of the cloud environment or (ii) a third tenancy of the cloud environment that is different from each of the first and second tenancies.

26 . A system comprising:

one or more processors;

one or more non-transitory computer-readable media storing instructions, which, when executed by the system, cause the system to perform a set of actions including:

receiving, at a first adapter and from a first component, data using a first communication protocol; and

transmitting, by the first adapter and to a proxy, the data using a second communication protocol, such that the proxy:

audits the data to check for non-permissible information within the data, and

performs one of:

(i) in response to detecting presence of the non-permissible information within the data, blocks passage of the data to its intended destination, or

(ii) in response to detecting absence of the non-permissible information within the data, allows passage of the data to a second adapter using the second communication protocol, to facilitate transmission of the data from the second adapter to a second component using the first communication protocol;

wherein the first communication protocol and the second communication protocol are different,

wherein the proxy is within a tenancy of a cloud environment,

wherein the first adapter and the first component are within a first section of the cloud environment,

wherein the second adapter and the second component are within a second section of the cloud environment, and

wherein neither of the first section and the second section is within the tenancy of the cloud environment.