US-12627605-B2 - Systems and methods for balancing communication loads across computer networks for computer communication tasks with variable transmission confirmations and network delivery locations
Abstract
Systems and methods balance communication loads across computer networks. In particular, the systems and methods balance the communication loads across computer networks in instances of computer communication tasks that have variable transmission confirmations and network delivery locations. Additionally or alternatively, the systems and methods balance communication loads across computer networks for computer communication tasks based on real-time confirmation of network resource availability.
Inventors
- Lee Haefele
- Sean Hanson
- James Kennedy
- Jacob Moody
Assignees
- CAPITAL ONE SERVICES, LLC
Dates
- Publication Date
- 20260512
- Application Date
- 20230306
Claims (19)
- 1 . A system for balancing communication loads across computer networks for computer communication tasks with variable transmission confirmations and network delivery locations, the system comprising: one or more processors; and a non-transitory, computer-readable medium comprising instructions that, when executed by the one or more processors, cause operations comprising: receiving a communication related to a credit account, wherein the communication comprises a plurality of communication tasks for execution at a plurality of available network locations, wherein each of the plurality of communication tasks comprises a respective content identifier and a respective communication task name, and wherein a first communication task of the plurality of communication tasks corresponds to approving a first credit account portion for a first item and a second communication task of the plurality of communication tasks corresponds to approving a second credit account portion for a second item; determining for each communication task of the plurality of communication tasks respective network loads, wherein the respective network loads comprise the first credit account portion and the second credit account portion; determining an initial allocation from the credit account for the plurality of communication tasks to the plurality of available network locations, wherein the initial allocation comprises allocating each of the plurality of communication tasks to a respective available network location of the plurality of available network locations, and wherein the initial allocation comprises a summation of the first credit account portion and the second credit account portion; allocating the plurality of communication tasks to the plurality of available network locations based on the initial allocation; receiving a first network location transmission confirmation from a first network location of the plurality of available network locations, wherein receiving the first network location transmission confirmation further comprises: receiving a first unique identifier corresponding to the first communication task of the plurality of communication tasks; and verifying the first unique identifier; determining a respective network load corresponding to the first communication task and the second communication task, wherein determining the respective network load comprises releasing the first credit account portion or the second credit account portion; and determining, based on receipt of the first network location transmission confirmation, a secondary allocation for the plurality of communication tasks to the plurality of available network locations, wherein the secondary allocation comprises a difference between the summation and the respective network load.
- 2 . A method of balancing communication loads across computer networks for computer communication tasks with variable transmission confirmations and network delivery locations, the method comprising: receiving a communication, wherein the communication comprises a plurality of communication tasks for execution at a plurality of available network locations; determining for each communication task of the plurality of communication tasks respective network loads; determining an initial allocation for the plurality of communication tasks to the plurality of available network locations, wherein the initial allocation comprises allocating each of the plurality of communication tasks to a respective available network location of the plurality of available network locations, and wherein the initial allocation comprises a summation of the respective network loads for each of the plurality of available network locations; allocating the plurality of communication tasks to the plurality of available network locations based on the initial allocation; receiving a first network location transmission confirmation from a first network location of the plurality of available network locations, wherein receiving the first network location transmission confirmation further comprises: receiving a first unique identifier corresponding to one of the plurality of communication tasks; retrieving a required delivery time; determining a current time; and verifying that the current time corresponds to the required delivery time; and determining, based on receipt of the first network location transmission confirmation, a secondary allocation for the plurality of communication tasks to the plurality of available network locations.
- 3 . The method of claim 2 , further comprising: reserving an amount of network resources for the communication based on the initial allocation; and adjusting the amount of the network resources based on the secondary allocation.
- 4 . The method of claim 2 , further comprising: reserving an amount of network resources for the communication based on the initial allocation; and releasing a resource portion of the amount of the network resources corresponding to the secondary allocation.
- 5 . The method of claim 2 , further comprising: receiving a user request for a status of the communication; and generating for display, on a user interface, a user update based on the initial allocation.
- 6 . The method of claim 2 , further comprising: determining a first estimated network load for a first communication task of the plurality of communication tasks based on first data in the communication; and determining a second estimated network load for a second communication task of the plurality of communication tasks based on second data in the communication.
- 7 . The method of claim 2 , wherein receiving the first network location transmission confirmation further comprises: verifying that the first unique identifier is a known respective unique identifier for a first communication task.
- 8 . The method of claim 2 , wherein receiving the first network location transmission confirmation further comprises: verifying that the first unique identifier corresponds to a known delivery identifier.
- 9 . The method of claim 2 , further comprising: retrieving metadata for the communication; and determining the plurality of communication tasks based on the metadata.
- 10 . The method of claim 2 , wherein determining the initial allocation further comprises: determining respective amounts for each of the respective network loads; and summing the respective amounts.
- 11 . The method of claim 2 , wherein allocating each of the plurality of communication tasks to the respective available network location of the plurality of available network locations further comprises: receiving respective entity identifiers; and matching one of the respective entity identifiers to the one of the plurality of communication tasks.
- 12 . The method of claim 2 , wherein receiving the first network location transmission confirmation further comprises: retrieving first user record data from a first entity and second user record data from a second entity, wherein the first user record data comprises a communication task name for one or more of the plurality of communication tasks, and wherein the first entity corresponds to one or more of the plurality of available network locations; and comparing the first user record data to the second user record data.
- 13 . The method of claim 2 , wherein receiving the first network location transmission confirmation further comprises: retrieving first user record data from a first entity and second user record data from a second entity, wherein the first user record data comprises a content identifier for one or more of the plurality of communication tasks, and wherein the first entity corresponds to one or more of the plurality of available network locations; and comparing the first user record data to the second user record data.
- 14 . A non-transitory, computer-readable medium comprising instructions that, when executed by one or more processors, cause operations comprising: receiving a communication related to a delivery of content, wherein the communication comprises a plurality of communication tasks for execution at a plurality of available network locations; determining for each communication task of the plurality of communication tasks respective network loads; determining an initial allocation for the plurality of communication tasks to the plurality of available network locations, wherein the initial allocation comprises allocating each of the plurality of communication tasks to a respective available network location of the plurality of available network locations, and wherein the initial allocation comprises a summation of the respective network loads for each of the plurality of available network locations; allocating the plurality of communication tasks to the plurality of available network locations based on the initial allocation; receiving a first network location transmission confirmation from a first network location of the plurality of available network locations, wherein receiving the first network location transmission confirmation further comprises: receiving a first unique identifier corresponding to one of the plurality of communication tasks: determining a current time; and verifying that the current time corresponds to a required delivery time; and determining, based on receipt of the first network location transmission confirmation, a secondary allocation for the plurality of communication tasks to the plurality of available network locations.
- 15 . The non-transitory, computer-readable medium of claim 14 , further comprising: reserving an amount of network resources for the communication based on the initial allocation; and adjusting the amount of the network resources based on the secondary allocation.
- 16 . The non-transitory, computer-readable medium of claim 14 , further comprising: reserving an amount of network resources for the communication based on the initial allocation; and releasing a resource portion of the amount of the network resources corresponding to the secondary allocation.
- 17 . The non-transitory, computer-readable medium of claim 14 , further comprising: receiving a user request for a status of the communication; and generating for display, on a user interface, a user update based on the initial allocation.
- 18 . The non-transitory, computer-readable medium of claim 14 , wherein determining the secondary allocation further comprises: determining a first estimated network load for a first communication task based on first data in the communication; and determining a second estimated network load for a second communication task based on second data in the communication.
- 19 . The non-transitory, computer-readable medium of claim 14 , wherein receiving the first network location transmission confirmation further comprises: verifying that the first unique identifier is a known unique identifier for a first communication task.
Description
BACKGROUND In recent years, telecommunication systems have grown increasingly complex. These systems are no longer limited to individual network locations and instead may span numerous locations across numerous computer networks, the Internet, and/or other platform or operating systems. Moreover, even the communications themselves are becoming more complex. For example, communications increasingly require encryption, decryption, validations, reformatting, etc., in order to be properly sent and received. Not only do each of these different “tasks” need to be completed for a given communication, but often these tasks must be undertaken by specific systems at specific locations. As the number and complexity of these communication tasks increases, the technical difficulty in efficiently balancing the load on a system created by a plurality of communications exponentially increases as well. SUMMARY Systems and methods are described herein for balancing communication loads across computer networks. In particular, the systems and methods balance the communication loads across computer networks in instances of computer communication tasks that have variable transmission confirmations and network delivery locations. Additionally or alternatively, the systems and methods balance communication loads across computer networks for computer communication tasks based on real-time confirmation of network resource availability. For example, conventional systems may allocate one or more communication tasks to one or more network locations based on an expected time and/or processing power (e.g., estimated network load) required to handle the request. Following this initial allocation, however, the actual time and/or processing power (e.g., actual network load) for a given request may change. That is, when thousands of communications are being allocated and/or handled in parallel, any difference between the estimated network load and the actual network load may create inefficiencies in the system. However, simply reallocating pending and/or queued communications according to the actual network load also results in inefficiencies as some communications require specific functions to be performed at specific network locations. Accordingly, the methods and systems describe balancing loads by reallocating communications, not only based on network load estimates, but by determining the plurality of communication tasks involved in a given communication and reallocating network loads based on load estimates corresponding to the individual communication tasks themselves. For example, individual network locations may have transmission confirmations (e.g., constraints) specific to those network locations. These individual transmission confirmations and their effect on the overall system must be considered. Accordingly, to efficiently reallocate, the system must consider numerous variables with exponentially increasing communication tasks, network locations, and status changes all in a model that can process the variables quickly enough to increase efficiency. In some aspects, systems and methods for balancing communication loads across computer networks for computer communication tasks with variable transmission confirmations and network delivery locations are described herein. For example, the system may receive a communication, wherein the communication comprises a plurality of communication tasks for execution at a plurality of available network locations. The system may determine for each communication task of the plurality of communication tasks respective network loads. The system may determine an initial allocation for the plurality of communication tasks to the plurality of available network locations, wherein the initial allocation comprises allocating each of the plurality of communication tasks to a respective available network location of the plurality of available network locations, and wherein the initial allocation comprises a summation of the respective network loads for each of the plurality of available network locations. The system may allocate the plurality of communication tasks to the plurality of available network locations based on the initial allocation. The system may receive respective network location transmission confirmations from one or more of the plurality of available network locations. The system may determine a respective network load corresponding to the respective network location transmission confirmations. The system may determine a secondary allocation for the plurality of communication tasks to the plurality of available network locations, wherein the secondary allocation comprises a difference between the summation and the respective network load. In some aspects, systems and methods for balancing communication loads across computer networks for computer communication tasks based on real-time confirmation of network resource availability are described. For example, the system may receive a commun