US10956287B2ActiveUtilityA1

Failover mechanism with minimized packet losses

Assignee: IBMPriority: Sep 18, 2018Filed: Sep 18, 2018Granted: Mar 23, 2021
Est. expirySep 18, 2038(~12.1 yrs left)· nominal 20-yr term from priority
Inventors:Juliet M. Kim
G06F 2009/45595H04L 41/0668G06F 11/0757G06F 9/45558G06F 11/2005G06F 11/1484G06F 11/3041
30
PatentIndex Score
0
Cited by
12
References
18
Claims

Abstract

Provided are techniques for implementing shared Ethernet adapter (SEA) failover, including receiving a first ARP packet at a first SEA coupled to a first switch; parsing, by the first SEA, a first MAC address and VLAN ID (VID) corresponding to the first ARP packet; transmitting the first MAC address and VID to a second SEA coupled to a second switch; detecting the first SEA has transitioned from a primary configuration to an inactive configuration and the second SEA has transitioned from a backup configuration to the primary configuration; and responsive to the detecting, transmitting a reverse ARP packet to the second switch notifying the second switch that the first SEA has transitioned to an inactive configuration and that the second SEA has transitioned to an active configuration; and configuring the first switch to forward any subsequent packets to the second switch rather than the first SEA.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method for implementing shared Ethernet adapter (SEA) failover, the computer-implemented method comprising:
 receiving a first address resolution protocol (ARP) packet at a first SEA coupled to a first switch; 
 parsing, by the first SEA, a first MAC address and VLAN ID (VID) corresponding to the first ARP packet; 
 transmitting the first MAC address and VID to a second SEA coupled to a second switch; 
 detecting that the first SEA has transitioned from a primary configuration to an inactive configuration and that the second SEA has transitioned from a backup configuration to the primary configuration; 
 responsive to the detecting, transmitting a reverse ARP packet to the second switch coupled to the second SEA notifying the second switch that the first SEA has transitioned to an inactive configuration and that the second SEA has transitioned to an active configuration; 
 configuring the first switch to forward any subsequent packets to the second switch rather than the first SEA; 
 storing the first MAC address and VID, and a second MAC address and VID corresponding to a second ARP packet; and 
 transmitting the second MAC address in conjunction with the transmitting of the first MAC address. 
 
     
     
       2. The computer-implemented method of  claim 1 , further comprising:
 detecting that the first SEA has transitioned from the backup configuration to the primary configuration and that the second SEA has transitioned from the primary configuration to the backup configuration; and 
 responsive to the detecting, transmitting a reverse ARP packet to the first switch coupled to the first SEA notifying, the first switch that the first SEA has transitioned to the primary configuration; and 
 configuring the second switch to forward any subsequent packets to the first switch rather than the second SEA. 
 
     
     
       3. The computer-implemented method of  claim 1 , wherein the transmitting the reverse ARP packet is based at least in part on the VID such that the reverse ARP packet is received by the first SEA. 
     
     
       4. The computer-implemented method of  claim 1 , wherein the claimed method is executed in conjunction with a hypervisor. 
     
     
       5. The computer-implemented method of  claim 4 , wherein the first SEA and the second SEA communicate via a control channel associated with the hypervisor. 
     
     
       6. A system for implementing a shared Ethernet adapter (SEA) failover comprising:
 a first SEA; 
 a first switch coupled to the first SEA; 
 a second SEA; 
 a second switch coupled to the second SEA; 
 a processor; 
 a computer-readable storage medium (CRSM) coupled to the processor, wherein the processor is configured to:
 receive a first address resolution protocol (ARP) packet at the first shared Ethernet adapter (SEA) coupled to the first switch; 
 parse, by the first SEA, a first MAC address and VLAN ID (VID) corresponding to the first ARP packet; 
 transmit the first MAC address and VID to the second SEA coupled to the second switch; 
 detect that the first SEA has transitioned from a primary configuration to an inactive configuration and that the second SEA has transitioned from a backup configuration to the primary configuration; 
 responsive to the detection, transmit a reverse ARP packet to the second switch coupled to the second SEA notifying the second switch that the first SEA has transitioned to an inactive configuration and that the second SEA has transitioned to an active configuration; 
 configure the first switch to forward any subsequent packets to the second switch rather than the first SEA; 
 store the first MAC address and VID, and a second MAC address and VID corresponding to a second ARP packet and 
 transmit the second MAC address in conjunction with the transmitting of the first MAC address. 
 
 
     
     
       7. The system of  claim 6 , wherein the processor is configured to:
 detect that the first SEA has transitioned from the backup configuration to the primary configuration and that the second SEA has transitioned from the primary configuration to the backup configuration; and 
 responsive to the detecting, transmit a reverse ARP packet to the first switch coupled to the first SEA notifying, the first switch that the first SEA has transitioned to the primary configuration; and 
 configuring the second switch to forward any subsequent packets to the first switch rather than the second SEA. 
 
     
     
       8. The system of  claim 6 , wherein the processor is configured to transmit the reverse ARP packet is based at least in part on the VID such that the reverse ARP packet is received by the first SEA. 
     
     
       9. The system of  claim 6 , further comprising a hypervisor, wherein the hypervisor is coupled to one or more logical partitions and servers. 
     
     
       10. The system of  claim 9 , wherein the servers comprise an SEA and an SEA controller. 
     
     
       11. The system of  claim 9 , further comprising a control channel coupling the first SEA and the second SEA communicate via a control channel associated with the hypervisor. 
     
     
       12. A computer program product for implementing a shared Ethernet adapter (SEA) failover, the computer program product comprising:
 a computer readable storage medium having program instructions stored thereon executable by a processor to cause the processor to:
 receive a first address resolution protocol (ARP) packet at a first shared Ethernet adapter (SEA) coupled to a first switch; 
 parse, by the first SEA, a first MAC address and VLAN ID (VID) corresponding to the first ARP packet; 
 transmit the first MAC address and VID to a second SEA coupled to a second switch; 
 update a local table with the first MAC address and VID; 
 detect that the first SEA has transitioned from a primary configuration to an inactive configuration and that the second SEA has transitioned from a backup configuration to the primary configuration; and 
 responsive to the detection, transmit a reverse ARP packet to the second switch coupled to the second SEA notifying the second switch that the first SEA has transitioned to an inactive configuration and that the second SEA has transitioned to an active configuration; and 
 configure the first switch to forward any subsequent packets to the second switch rather than the first SEA. 
 
 
     
     
       13. The computer program product of  claim 12 , wherein the instructions are further executable by the processor to cause the processor to:
 detect that the first SEA has transitioned from the backup configuration to the primary configuration and that the second SEA has transitioned from the primary configuration to the backup configuration; and 
 responsive to the detection, transmit a reverse ARP packet to the first switch coupled to the first SEA notifying, the first switch that the first SEA has transitioned to the primary configuration; and 
 configure the second switch to forward any subsequent packets to the first switch rather than the second SEA. 
 
     
     
       14. The computer program product of  claim 12 , wherein the transmitting the reverse ARP packet is based at least in part on the first MAC address and VID such that the reverse ARP packet is received by the first SEA. 
     
     
       15. The computer program product of  claim 12 , wherein the instructions are further executable by the processor to cause the processor to:
 store the first MAC address and VID, and a second MAC address corresponding to a second ARP packet; and 
 transmit the second MAC address in conjunction with the transmitting of the first MAC address and VID. 
 
     
     
       16. The computer program product of  claim 12 , wherein the instructions are executed in conjunction with a hypervisor. 
     
     
       17. The computer program product of  claim 16 , wherein the first SEA and the second SEA communicate via a control channel associated with the hypervisor. 
     
     
       18. The computer program product of  claim 17 , wherein the hypervisor is coupled to one or more logical partitions and servers, wherein the servers comprise an SEA and an SEA controller.

Join the waitlist — get patent alerts

Track US10956287B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.