IP Library Granted Patent US 12,289,365
Granted Patent B2
US 12,289,365 · App. 18/514,017 · Granted Apr 29, 2025

Systems, methods, and apparatuses for dynamically determining data center transmissions by implementing load balancers in an electronic network

Inventors: Jagadish Babu Bandarupalli (St. Johns, FL); Terry Lynn Miller (Huntersville, NC)
Assignee: BANK OF AMERICA CORPORATION
H04L67/101H04L43/08
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 12,289,365
App. No.
18/514,017
Granted
Apr 29, 2025
Kind
B2
Abstract

Systems, computer program products, and methods are described herein for dynamically determining data center transmissions by implementing load balancers in an electronic network. The present invention is configured to receive data associated with at least one available data center, wherein the at least one available data center is associated with a primary network; receive a data transmission; upload the data transmission to a demilitarized zone (DMZ); apply the data transmission to the DMZ load balancer to generate a demilitarized data transmission (DMZ data transmission); determine an available primary internal network of the primary network; transmit the DMZ data transmission to the available primary internal network; apply the DMZ data transmission to the primary internal network load balancer to generate a primary internal network data transmission; determine a selected data center from the least one available data center; and transmit the primary internal network data transmission to the selected data center.

Claims (55)

1. A system for dynamically determining data center transmissions, the system comprising:

a memory device with computer-readable program code stored thereon;

at least one processing device operatively coupled to the at least one memory device and the at least one communication device, wherein executing the computer-readable code is configured to cause the at least one processing device to:

receive a data transmission, wherein the data transmission is associated with a data center of a primary network;

upload the data transmission to a demilitarized zone (DMZ), wherein the DMZ comprises a demilitarized zone load balancer (DMZ load balancer);

apply the data transmission to the DMZ load balancer to generate a demilitarized data transmission (DMZ data transmission);

determine, based on an output of the DMZ load balancer, an available primary internal network of the primary network;

transmit the DMZ data transmission to the available primary internal network, wherein the available primary internal network comprises a primary internal network load balancer;

apply the DMZ data transmission to the primary internal network load balancer to generate a primary internal network data transmission;

determine, based on an output of the primary internal network load balancer, a selected data center associated with the primary network; and

transmit the primary internal network data transmission to the selected data center.

2. The system of claim 1 , wherein the selected data center is determined based on a number of current data transmissions for a plurality of data centers associated with the primary network.

3. The system of claim 2 , wherein the at least one processing device is further configured to:

receive data associated with the current data transmissions for each data center of the plurality of data centers;

compare the data associated with the current data transmissions; and

determine, based on the comparison of the data associated with the current data transmissions, the selected data center, wherein the selected data center comprises a lowest number of current data transmissions.

4. The system of claim 1 , wherein the primary network is associated with a primary entity.

5. The system of claim 1 , wherein the primary network and a secondary network are part of a distributed network.

6. The system of claim 5 , wherein the secondary network comprises a secondary internal network and a secondary demilitarized zone (secondary DMZ).

7. The system of claim 6 , wherein the secondary DMZ comprises a secondary demilitarized zone load balancer (secondary DMZ load balancer) and wherein the secondary internal network comprises a secondary internal network load balancer.

8. The system of claim 5 , wherein the secondary network is associated with a secondary entity.

9. The system of claim 1 , wherein the receipt of data associated with the at least one available data center associated with the primary network is received after the DMZ data transmission is generated.

10. The system of claim 9 , wherein the selected data center is determined before the application of the DMZ data transmission to the primary internal network load balancer.

11. A computer program product for dynamically determining data center transmissions, wherein the computer program product comprises at least one non-transitory computer-readable medium having computer-readable program code portions embodied therein, the computer-readable program code portions which when executed by a processing device are configured to cause a processor to:

receive a data transmission, wherein the data transmission is associated with a data center of a primary network;

upload the data transmission to a demilitarized zone (DMZ), wherein the DMZ comprises a demilitarized zone load balancer (DMZ load balancer);

apply the data transmission to the DMZ load balancer to generate a demilitarized data transmission (DMZ data transmission);

determine, based on an output of the DMZ load balancer, an available primary internal network of the primary network;

transmit the DMZ data transmission to the available primary internal network, wherein the available primary internal network comprises a primary internal network load balancer;

apply the DMZ data transmission to the primary internal network load balancer to generate a primary internal network data transmission;

determine, based on an output of the primary internal network load balancer, a selected data center associated with the primary network; and

transmit the primary internal network data transmission to the selected data center.

12. The computer program product of claim 11 , wherein the selected data center is determined based on a number of current data transmissions for a plurality of data centers associated with the primary network.

13. The computer program product of claim 12 , wherein the processing device is configured to cause the processor to:

receive data associated with the current data transmissions for each data center of the plurality of data centers;

compare the data associated with the current data transmissions; and

determine, based on the comparison of the data associated with the current data transmissions, the selected data center, wherein the selected data center comprises a lowest number of current data transmissions.

14. The computer program product of claim 11 , wherein the receipt of data associated with the at least one available data center associated with the primary network is received after the DMZ data transmission is generated.

15. The computer program product of claim 14 , wherein the selected data center is determined before the application of the DMZ data transmission to the primary internal network load balancer.

16. A computer-implemented method for dynamically determining data center transmissions, the computer-implemented method comprising:

receiving a data transmission, wherein the data transmission is associated with a data center of a primary network;

uploading the data transmission to a demilitarized zone (DMZ), wherein the DMZ comprises a demilitarized zone load balancer (DMZ load balancer);

applying the data transmission to the DMZ load balancer to generate a demilitarized data transmission (DMZ data transmission);

determining, based on an output of the DMZ load balancer, an available primary internal network of the primary network;

transmitting the DMZ data transmission to the available primary internal network, wherein the available primary internal network comprises a primary internal network load balancer;

applying the DMZ data transmission to the primary internal network load balancer to generate a primary internal network data transmission;

determining, based on an output of the primary internal network load balancer, a selected data center associated with the primary network; and

transmitting the primary internal network data transmission to the selected data center.

17. The computer-implemented method of claim 16 , wherein the selected data center is determined based on a number of current data transmissions for a plurality of data centers associated with the primary network.

18. The computer-implemented method of claim 17 , further comprising:

receiving data associated with the current data transmissions for each data center of the plurality of data centers;

comparing the data associated with the current data transmissions; and

determining, based on the comparison of the data associated with the current data transmissions, the selected data center, wherein the selected data center comprises a lowest number of current data transmissions.

19. The computer-implemented method of claim 16 , wherein the receipt of data associated with the at least one available data center associated with the primary network is received after the DMZ data transmission is generated.

20. The computer-implemented method of claim 19 , wherein the selected data center is determined before the application of the DMZ data transmission to the primary internal network load balancer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2023
From: BANDARUPALLI, JAGADISH BABU; MILLER, TERRY LYNN
To: BANK OF AMERICA CORPORATION
Reel/Frame 065618/0684 →
Continuity (2)
Continuation 18100125 · Jan 23, 2023
Related Publication 20240251011A1 · Jul 25, 2024
References Cited (39)
US 9088502B2 · Thubert et al. · 2015 [cited by applicant]
US 9143493B2 · Chaudhry · 2015 [cited by applicant]
US 9467290B2 · Vanheyningen et al. · 2016 [cited by applicant]
US 9722934B2 · Muniraju · 2017 [cited by applicant]
US 9736234B2 · Hopen et al. · 2017 [cited by applicant]
US 9979657B2 · Batrouni et al. · 2018 [cited by applicant]
US 10027588B2 · Thibeault et al. · 2018 [cited by applicant]
US 10146593B2 · Gong et al. · 2018 [cited by applicant]
US 10498611B1 · Kloberdans et al. · 2019 [cited by applicant]
US 10757600B2 · Beale · 2020 [cited by applicant]
US 10944769B2 · Singh · 2021 [cited by applicant]
US 11160000B2 · Kim et al. · 2021 [cited by applicant]
US 11709804B1 · Korepanov · 2023 [cited by examiner]
US 11895182B1 · Bandarupalli · 2024 [cited by examiner]
US 20060031536A1 · Eydelman · 2006 [cited by examiner]
US 20060098583A1 · Baker · 2006 [cited by examiner]
US 20080025230A1 · Patel · 2008 [cited by examiner]
US 20090138592A1 · Overcash · 2009 [cited by examiner]
US 20160323145A1 · Anderson et al. · 2016 [cited by applicant]
US 20160373372A1 · Gillon et al. · 2016 [cited by applicant]
US 20180054458A1 · Marck · 2018 [cited by examiner]
US 20180115482A1 · Kelley, Jr. · 2018 [cited by applicant]
US 20180295033A1 · Madimirskiy et al. · 2018 [cited by applicant]
US 20190089673A1 · Berhorst, II · 2019 [cited by applicant]
US 20200014659A1 · Chasman et al. · 2020 [cited by applicant]
US 20200119952A1 · Mayya et al. · 2020 [cited by applicant]
US 20210105221A1 · Malloy et al. · 2021 [cited by applicant]
US 20210233163A1 · Tosmur · 2021 [cited by examiner]
US 20210266290A1 · Batouq · 2021 [cited by examiner]
US 20220180345A1 · Tosmur · 2022 [cited by examiner]
US 20220215948A1 · Bardot · 2022 [cited by examiner]
CN 102113274A · 2011 [cited by applicant]
CN 105264865A · 2016 [cited by applicant]
CN 105308929B · 2016 [cited by applicant]
CN 105308930A · 2016 [cited by applicant]
CN 105308931A · 2016 [cited by applicant]
CN 107645444A · 2018 [cited by applicant]
EP 2327024B1 · 2017 [cited by applicant]
JP 6445621B2 · 2018 [cited by applicant]