Systems and methods recovering from the failure of a server load balancer

US11119871B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11119871-B2
Application numberUS-201715656603-A
CountryUS
Kind codeB2
Filing dateJul 21, 2017
Priority dateJul 13, 2010
Publication dateSep 14, 2021
Grant dateSep 14, 2021

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.

The invention provides, in one aspect, a server load balancer (SLB) recovery method that replicates a primary SLB's connection data after the primary SLB experiences a failure, as opposed to before it experiences a failure as is currently done in the known hot stand-by recovery method. In some embodiments, this is made possible by (1) employing a replication agent on each target processing unit (e.g., each processing unit on which a server application runs) and (2) transmitting, from the primary SLB, connection data information (i.e., information comprising a session identifier) to the replication agent running on the target processing unit to which the session is mapped, which replication agent will store the data until it is required to transmit the data to a cold stand-by SLB.

First claim

Opening claim text (preview).

The invention claimed is: 1. A cold stand-by method for recovering from a failure of a primary server load balancer (SLB), the method comprising: the primary SLB receiving a first packet; the primary SLB obtaining data included in the received first packet; the primary SLB using the obtained data to generate a first session identifier identifying a first session; the primary SLB determining whether the packet corresponds to a new session; in response to determining that the packet corresponds to a new session, the primary SLB selecting a first target processing unit from a plurality of available target processing units, the plurality of available target processing units comprising the first target processing unit and a second target processing unit; after selecting the first target processing unit, the primary SLB forwarding the packet to the first target processing unit; an SLB monitor detecting that the primary SLB has experienced a failure; in response to detecting that the primary SLB has experienced a failure, the SLB monitor causing the first target processing unit to transmit to a stand-by SLB a message comprising the first session identifier and a first target processing unit identifier identifying the first target processing unit; in response to receiving the message, the stand-by SLB storing information linking the first session identifier with the first target processing unit identifier; the stand-by SLB receiving a second packet; the stand-by SLB obtaining data included in the received second packet; the stand-by SLB using the obtained data to generate a second session identifier; the stand-by SLB determining whether the packet corresponds to a new session; in response to determining that the packet does not correspond to a new session, the stand-by SLB obtaining a target processing unit identifier with which the second session identifier is linked; after obtaining the target processing unit identifier with which the second session identifier is linked, the stand-by SLB forwarding the second packet to a target processing unit identified by the target processing unit identifier with which the second session identifier is linked. 2. The method of claim 1 , wherein the obtained data comprises a network source address, a network destination address, a source port number and a destination port number. 3. The method of claim 2 , wherein using the obtained data to generate the first session identifier comprises using the network source address, the network destination address, the source port number and the destination port number to generate the first session identifier. 4. The method of claim 1 , wherein determining whether the packet corresponds to a new session comprises determining whether the packet includes a request to establish a connection. 5. The method of claim 1 , wherein determining whether the packet corresponds to a new session comprises determining whether the first session identifier matches a session identifier stored in a connection data structure that is used to store session identifiers for active sessions. 6. The method of claim 1 , wherein causing the first target processing unit to transmit to the stand-by SLB the message comprising the first session identifier consists of transmitting a control message to a replication agent running on the first target processing unit. 7. The method of claim 1 , wherein the SLB monitor is a component of the stand-by SLB. 8. A system for recovering from the failure of a primary server load balancer (SLB) that is operable to balance traffic across a plurality of target processing units using connection data that comprises information mapping sessions with target processing units, the system comprising: an SLB monitor; and a stand-by SLB, wherein the SLB monitor is configured to detect when the primary SLB has experienced a failure; the SLB is further configured such that, in response to detecting that the primary SLB has experienced a failure, the SLB monitor causes a target processing unit to transmit to the stand-by SLB a message comprising a session identifier and a target processing unit identifier identifying the target processing unit; the stand-by SLB is configured such that, in response to receiving the message, the stand-by SLB stores information linking the session identifier with the target processing unit identifier; and the stand-by SLB is further configured such that, in response to the stand-by SLB receiving a packet, the stand-by SLB: obtains data included in the received packet; uses the obtained data to generate a second session identifier; determines whether the packet corresponds to a new session; in response to determining that the packet does not correspond to a new session, the stand-by SLB obtains a target processing unit identifier with which the second session identifier is linked; and after obtaining the target processing unit identifier with which the second session identifier is linked, forwards the packet to a target processing unit identified by the target processing unit identifier with which the second session identifier is linked. 9. The system of claim 8 , wherein the obtained data comprises a network source address, a network destination address, a source port number and a destination port number. 10. The system of claim 9 , wherein using the obtained data to generate the second session identifier comprises using the network source address, the network destination address, the source port number and the destination port number to generate the second session identifier. 11. The system of claim 8 , wherein determining whether the packet corresponds to a new session comprises determining whether the packet includes a request to establish a connection. 12. The system of claim 8 , wherein determining whether the packet corresponds to a new session comprises determining whether the second session identifier matches a session identifier stored in a connection data structure that is used to store session identifiers for active sessions. 13. The system of claim 8 , wherein the SLB monitor is configured to cause the first target processing unit to transmit to the stand-by SLB the message comprising the first session identifier by transmitting a control message to a replication agent running on the first target processing unit. 14. The system of claim 8 , wherein the SLB monitor is a component of the stand-by SLB. 15. A primary server load balance (SLB) for balancing traffic across a plurality of target processing units, wherein the primary SLB is operable to: receive a packet corresponding to a session; obtain data included in the received first packet; use the obtained data to generate a session identifier identifying the session; determine whether the session to which the packet corresponds is a new session; and in response to determining that the session to which the packet corresponds is a new session: (a) use a load balancing procedure to select a particular target processing unit from the plurality of target processing units, (b) update the stored connection data so that the connection data will comprise information mapping the session with the selected target processing unit, and (c) transmit to a replication agent running on the selected target processing unit a connection data update message comprising the generated session identifier identifying the session. 16. A method performed by a primary server load balance (SLB) for balancing traffic across a plurality of target processing units, the method comprising: receiving a packet corresponding to a session; obt

Assignees

Inventors

Classifications

  • H04L69/40Primary

    for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection (management of faults, events, alarms or notifications in data switching networks H04L41/06) · CPC title

  • for accessing one among a plurality of replicated servers · CPC title

  • using redundant communication controllers · CPC title

  • Electricity · mapped topic

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 US11119871B2 cover?
The invention provides, in one aspect, a server load balancer (SLB) recovery method that replicates a primary SLB's connection data after the primary SLB experiences a failure, as opposed to before it experiences a failure as is currently done in the known hot stand-by recovery method. In some embodiments, this is made possible by (1) employing a replication agent on each target processing unit…
Who is the assignee on this patent?
Ericsson Telefon Ab L M
What technology area does this patent fall under?
Primary CPC classification H04L69/40. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 14 2021 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).