Providing multiple TCP connections between a client and server

US12445540B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12445540-B2
Application numberUS-202418581683-A
CountryUS
Kind codeB2
Filing dateFeb 20, 2024
Priority dateOct 14, 2020
Publication dateOct 14, 2025
Grant dateOct 14, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

One example may include a process that includes establishing a connection between a client device and a server, monitoring communication over the connection to identify whether there is a communication delay based on one or more communication thresholds, establishing another connection between the client device and the server when a communication delay is detected based on the one or more communication thresholds, bonding the connection and the another connection permitting data packets associated with an application used by the client device to be split between the connection and the another connection, and forwarding a portion of the data packets associated with the application to the client device over the connection and concurrently forwarding a remaining portion of the data packets associated with the application over the another connection.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method comprising: establishing a connection between a client device and a server; establishing another connection between the client device and the server when a communication delay exceeding one or more monitored communication thresholds is detected on the connection; bonding the connection and the another connection causing a portion of data packets associated with an application used by the client device to be sent over the connection and a remaining portion of the data packets to be concurrently sent over the another connection; determining the one or more monitored communication thresholds are met by one or more of the connection and the another connection over a period of time; and removing one of the connection and the another connection based on the met one or more monitored communication thresholds. 2. The method of claim 1 , wherein the one or more monitored communication thresholds comprise one or more of a data rate threshold, an error rate threshold, and a latency threshold. 3. The method of claim 1 , wherein the connection is a transmission control protocol (TCP) connection and the another connection is a user datagram protocol (UDP) connection. 4. The method of claim 3 , comprising identifying UDP packets created by another application on the client device; receiving the UDP packets identified from the client device on the UDP connection; and receiving TCP packets identified from the application on the client device via the TCP connection. 5. The method of claim 4 , comprising determining no UDP packets are being sent by the client device for a period of time; and closing the UDP connection. 6. The method of claim 1 , comprising adding at least one third connection; and bonding the connection, the another connection and the third connection together as a single bonded channel. 7. The method of claim 6 , comprising determining the connection or the another connection has resumed to be above the one or more monitored communication thresholds; and removing one of the three connections. 8. A server comprising: a processor configured to establish a connection between a client device and the server; establish another connection between the client device and the server when a communication delay exceeding one or more communication thresholds is detected on the connection or more communication thresholds; bond the connection and the another connection to cause a portion of data packets associated with an application used by to the client device to be sent over the connection and a remaining portion of the data packets to be concurrently sent over the another connection; determine the one or more monitored communication thresholds are met by one or more of the connection and the another connection over a period of time; and remove one of the connection and the another connection based on the met one or more monitored communication thresholds. 9. The server of claim 8 , wherein the one or more monitored communication thresholds comprise one or more of a data rate threshold, an error rate threshold, and a latency threshold. 10. The server of claim 8 , wherein the connection is a transmission control protocol (TCP) connection and the another connection is a user datagram protocol (UDP) connection. 11. The server of claim 10 , wherein the processor is further configured to identify UDP packets created by another application on the client device; receive the UDP packets identified from the client device on the UDP connection; and receive TCP packets identified from the application on the client device via the TCP connection. 12. The server of claim 11 , wherein the processor is further configured to determine no UDP packets are being sent by the client device for a period of time; and close the UDP connection. 13. The server of claim 8 , wherein the processor is further configured to add at least one third connection; and bond the connection, the another connection and the third connection together as a single bonded channel. 14. The server of claim 13 , wherein the processor is further configured to determine the connection or the another connection has resumed to be above the one or more monitored connection thresholds; and remove one of the three connections. 15. A non-transitory computer readable storage medium configured to store instructions that when executed cause a processor to perform: establishing a connection between a client device and a server; establishing another connection between the client device and the server when a communication delay exceeding one or more monitored communication thresholds is detected on the connection; bonding the connection and the another connection causing a portion of data packets associated with an application used by the client device to be sent over the connection and a remaining portion of the data packets to be concurrently sent over the another connection; determining the one or more monitored communication thresholds are met by one or more of the connection and the another connection over a period of time; and removing one of the connection and the another connection based on the met one or more monitored communication thresholds. 16. The non-transitory computer readable storage medium of claim 15 , wherein the one or more monitored communication thresholds comprise one or more of a data rate threshold, an error rate threshold, and a latency threshold. 17. The non-transitory computer readable storage medium of claim 15 , wherein the connection is a transmission control protocol (TCP) connection and the another connection is a user datagram protocol (UDP) connection. 18. The non-transitory computer readable storage medium of claim 17 , wherein the processor is further configured to perform: identifying UDP packets created by another application on the client device; receiving the UDP packets identified from the client device on the UDP connection; and receiving TCP packets identified from the application on the client device via the TCP connection. 19. The non-transitory computer readable storage medium of claim 18 , wherein the processor is further configured to perform: determining no UDP packets are being sent by the client device for a period of time; and closing the UDP connection. 20. The non-transitory computer readable storage medium of claim 15 , wherein the processor is further configured to perform: adding at least one third connection; and bonding the connection, the another connection and the third connection together as a single bonded channel.

Assignees

Inventors

Classifications

  • Testing arrangements · CPC title

  • by checking connectivity · CPC title

  • Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272) · CPC title

  • Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70) · CPC title

  • Threshold monitoring · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12445540B2 cover?
One example may include a process that includes establishing a connection between a client device and a server, monitoring communication over the connection to identify whether there is a communication delay based on one or more communication thresholds, establishing another connection between the client device and the server when a communication delay is detected based on the one or more commu…
Who is the assignee on this patent?
Connectify Inc
What technology area does this patent fall under?
Primary CPC classification H04L69/161. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Oct 14 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).