IP Library › Granted Patent US 10,917,262
Granted Patent B2
US 10,917,262 · App. 16/358,191 · Granted Feb 9, 2021

VXLAN packet forwarding method, device, and system

Inventors: Yuan Gao (Nanjing, CN); Wenhui Li (Nanjing, CN); Shenyu Ding (Nanjing, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
H04L12/4675H04L12/4633H04L12/4641H04L45/22H04L45/28H04L45/302H04L61/103H04L47/125
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 10,917,262
App. No.
16/358,191
Granted
Feb 9, 2021
Kind
B2
Abstract

A virtual extensible local area network (VXLAN) packet forwarding method, device, and system, where the method includes setting, by a local VXLAN tunnel end point (VTEP) device based on a priority of a VXLAN tunnel, tunnel states of at least two VXLAN tunnels coupled to the local VTEP device, sending the tunnel states of the VXLAN tunnels to at least two peer VTEP devices, where the at least two VXLAN tunnels are in a one-to-one correspondence with the at least two peer VTEP devices, and separately confirming, by the at least two peer VTEP devices, the received tunnel states of the VXLAN tunnels. A VXLAN tunnel in an active state is in a working state, and a VXLAN tunnel in an inactive state is in a non-working state, thereby improving a redundancy protection capability of a VXLAN network.

Claims (86)

1. A virtual extensible local area network (VXLAN) packet forwarding method, comprising:

setting, by a first VXLAN tunnel end point (VTEP) device and based on a priority of a first VXLAN tunnel, a tunnel state of the first VXLAN tunnel to an active state, the first VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a second VTEP device;

setting, by the first VTEP device and based on a priority of a second VXLAN tunnel, a tunnel state of the second VXLAN tunnel to an inactive state, the second VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a third VTEP device, the priority of the first VXLAN tunnel being higher than the priority of the second VXLAN tunnel, and an Internet Protocol (IP) address of the second VTEP device being different from an IP address of the third VTEP device;

notifying, by the first VTEP device and through the first VXLAN tunnel, the second VTEP device of first state information carrying the active state, the first state information indicating the tunnel state of the first VXLAN tunnel;

notifying, by the first VTEP device and through the second VXLAN tunnel, the third VTEP device of second state information carrying the inactive state, the second state information indicating the tunnel state of the second VXLAN tunnel; and

forwarding, by the first VTEP device, a VXLAN packet through the first VXLAN tunnel in the active state.

2. The method of claim 1 , wherein before forwarding the VXLAN packet through the first VXLAN tunnel in the active state, the method further comprises:

receiving, by the first VTEP device and through the first VXLAN tunnel, first reply information for the first state information from the second VTEP device, the first reply information instructing the second VTEP device to confirm the tunnel state of the first VXLAN tunnel as the active state; and

receiving, by the first VTEP device and through the second VXLAN tunnel, second reply information for the second state information from the third VTEP device, the second reply information instructing the third VTEP device to confirm the tunnel state of the second VXLAN tunnel as the inactive state.

3. The method of claim 1 , wherein after forwarding the VXLAN packet through the first VXLAN tunnel in the active state, the method further comprises:

setting, by the first VTEP device, the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state when the first VTEP device determines that a failure occurs in the first VXLAN tunnel;

notifying, by the first VTEP device and through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receiving, by the first VTEP device and through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forwarding, by the first VTEP device, the VXLAN packet through the second VXLAN tunnel in the active state.

4. The method of claim 1 , wherein after forwarding the VXLAN packet through the first VXLAN tunnel in the active state, the method further comprises:

receiving, by the first VTEP device and through the first VXLAN tunnel, a link failure message from the second VTEP device, the link failure message indicating that a failure occurs in a link between the second VTEP device and an IP network, and the IP network sending traffic to a host coupled to the first VTEP device and receiving traffic from the host coupled to the first VTEP device;

setting, by the first VTEP device, the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state;

notifying, by the first VTEP device and through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receiving, by the first VTEP device and through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forwarding, by the first VTEP device, the VXLAN packet through the second VXLAN tunnel in the active state.

5. The method of claim 1 , further comprising:

receiving, by the first VTEP device, an Address Resolution Protocol (ARP) request packet from a host, the ARP request packet requesting a Media Access Control (MAC) address of a VXLAN gateway; and

sending, by the first VTEP device and respectively through the first VXLAN tunnel and the second VXLAN tunnel, the ARP request packet to the second VTEP device and the third VTEP device to enable the second VTEP device and the third VTEP device to generate ARP entries based on the ARP request packet.

6. The method of claim 5 , further comprising:

generating, by the first VTEP device, an ARP entry based on the ARP request packet;

storing, by the first VTEP device, the ARP entry;

sending the ARP request packet to a destination VTEP device through a failure-recovered VXLAN tunnel when the first VTEP device determines that a failure of the failure-recovered VXLAN tunnel is recovered; and

sending the ARP request packet to the destination VTEP device through a new VXLAN tunnel when the first VTEP device determines that the new VXLAN tunnel is established.

7. A first virtual extensible local area network (VXLAN) tunnel end point (VTEP) device, comprising:

a non-transitory memory storing instructions; and

a processor coupled to the non-transitory memory, the instructions, when executed by the processor, causing the first VTEP device to be configured to:

set, based on a priority of a first VXLAN tunnel, a tunnel state of the first VXLAN tunnel to an active state, the first VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a second VTEP device;

set, based on a priority of a second VXLAN tunnel, a tunnel state of the second VXLAN tunnel to an inactive state, the second VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a third VTEP device, the priority of the first VXLAN tunnel being higher than the priority of the second VXLAN tunnel, and an Internet Protocol (IP) address of the second VTEP device being different from an IP address of the third VTEP device;

notify, through the first VXLAN tunnel, the second VTEP device of first state information carrying the active state, the first state information indicating the tunnel state of the first VXLAN tunnel;

notify, through the second VXLAN tunnel, the third VTEP device of second state information carrying the inactive state, the second state information indicating the tunnel state of the second VXLAN tunnel; and

forward a VXLAN packet through the first VXLAN tunnel in the active state.

8. The first VTEP device of claim 7 , wherein before forwarding the VXLAN packet through the first VXLAN tunnel in the active state, the instructions, when executed by the processor, further cause the first VTEP device to be configured to:

receive, through the first VXLAN tunnel, first reply information for the first state information from the second VTEP device, the first reply information instructing the second VTEP device to confirm the tunnel state of the first VXLAN tunnel as the active state; and

receive, through the second VXLAN tunnel, second reply information for the second state information from the third VTEP device, the second reply information instructing the third VTEP device to confirm the tunnel state of the second VXLAN tunnel as the inactive state.

9. The first VTEP device of claim 7 , wherein the instructions, when executed by the processor, further cause the first VTEP device to be configured to:

set the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state when the first VTEP device determines that a failure occurs in the first VXLAN tunnel;

notify, through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receive, through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forward the VXLAN packet through the second VXLAN tunnel in the active state.

10. The first VTEP device of claim 7 , wherein the instructions, when executed by the processor, further cause the first VTEP device to be configured to:

receive, through the first VXLAN tunnel, a link failure message from the second VTEP device, the link failure message indicating that a failure occurs in a link between the second VTEP device and an IP network, and the IP network sending traffic to a host coupled to the first VTEP device and receiving traffic from the host coupled to the first VTEP device;

set the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state;

notify, through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receive, through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forward the VXLAN packet through the second VXLAN tunnel in the active state.

11. The first VTEP device of claim 7 , wherein the instructions, when executed by the processor, further cause the first VTEP device to be configured to:

receive an Address Resolution Protocol (ARP) request packet from a host, the ARP request packet requesting a Media Access Control (MAC) address of a VXLAN gateway; and

send, respectively through the first VXLAN tunnel and the second VXLAN tunnel, the ARP request packet to the second VTEP device and the third VTEP device to enable the second VTEP device and the third VTEP device to generate ARP entries based on the ARP request packet.

12. The first VTEP device of claim 11 , wherein the instructions, when executed by the processor, further cause the first VTEP device to be configured to:

generate an ARP entry based on the ARP request packet;

store the ARP entry;

send the ARP request packet to a destination VTEP device through a failure-recovered VXLAN tunnel when a failure of the failure-recovered VXLAN tunnel is recovered; and

send the ARP request packet to the destination VTEP device through a new VXLAN tunnel when the new VXLAN tunnel is established.

13. A computer program product comprising computer-executable instructions embodied on a non-transitory computer-readable medium that, when executed by a processor, cause first virtual extensible local area network (VXLAN) tunnel end point (VTEP) device to:

set, based on a priority of a first VXLAN tunnel, a tunnel state of the first VXLAN tunnel to an active state, the first VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a second VTEP device;

set, based on a priority of a second VXLAN tunnel, a tunnel state of the second VXLAN tunnel to an inactive state, the second VXLAN tunnel being a VXLAN tunnel between the first VTEP device and a third VTEP device, the priority of the first VXLAN tunnel being higher than the priority of the second VXLAN tunnel, and an Internet Protocol (IP) address of the second VTEP device being different from an IP address of the third VTEP device;

notify, through the first VXLAN tunnel, the second VTEP device of first state information carrying the active state, the first state information indicating the tunnel state of the first VXLAN tunnel;

notify, through the second VXLAN tunnel, the third VTEP device of second state information carrying the inactive state, the second state information indicating the tunnel state of the second VXLAN tunnel; and

forward a VXLAN packet through the first VXLAN tunnel in the active state.

14. The computer program product of claim 13 , wherein the instructions further cause the first VTEP device to:

receive, through the first VXLAN tunnel, first reply information for the first state information from the second VTEP device, the first reply information instructing the second VTEP device to confirm the tunnel state of the first VXLAN tunnel as the active state; and

receive, through the second VXLAN tunnel, second reply information for the second state information from the third VTEP device, the second reply information instructing the third VTEP device to confirm the tunnel state of the second VXLAN tunnel as the inactive state.

15. The computer program product of claim 13 , wherein the instructions further cause the first VTEP device to:

set the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state when the first VTEP device determines that a failure occurs in the first VXLAN tunnel;

notify, through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receive, through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forward the VXLAN packet through the second VXLAN tunnel in the active state.

16. The computer program product of claim 13 , wherein the instructions further cause the first VTEP device to:

receive, through the first VXLAN tunnel, a link failure message from the second VTEP device, the link failure message indicating that a failure occurs in a link between the second VTEP device and an IP network, and the IP network sending traffic to a host coupled to the first VTEP device and receiving traffic from the host coupled to the first VTEP device;

set the tunnel state of the first VXLAN tunnel to the inactive state and the tunnel state of the second VXLAN tunnel to the active state;

notify, through the second VXLAN tunnel, the third VTEP device of third state information carrying the active state, the third state information indicating the tunnel state of the second VXLAN tunnel;

receive, through the second VXLAN tunnel, third reply information for the third state information from the third VTEP device, the third reply information instructing the third VTEP device to update the tunnel state of the second VXLAN tunnel to the active state; and

forward the VXLAN packet through the second VXLAN tunnel in the active state.

17. The computer program product of claim 13 , wherein the instructions further cause the first VTEP device to:

receive an Address Resolution Protocol (ARP) request packet from a host, the ARP request packet requesting a Media Access Control (MAC) address of a VXLAN gateway; and

send, respectively through the first VXLAN tunnel and the second VXLAN tunnel, the ARP request packet to the second VTEP device and the third VTEP device to enable the second VTEP device and the third VTEP device to generate ARP entries based on the ARP request packet.

18. The computer program product of claim 13 , wherein the instructions further cause the first VTEP device to:

generate an ARP entry based on the ARP request packet;

store the ARP entry;

send the second ARP request packet to a destination VTEP device through a failure-recovered VXLAN tunnel when a failure of the failure-recovered VXLAN tunnel is recovered; and

send the third ARP request packet to the destination VTEP device through a new VXLAN tunnel when the new VXLAN tunnel is established.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2020
From: GAO, YUAN; LI, WENHUI; DING, SHENYU
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 054684/0683 →
Priority Claims (1)
CN 2016 1 0836569 · Sep 20, 2016 · national
Continuity (2)
Continuation PCTCN2017093887 · Jul 21, 2017
Related Publication 20190215190A1 · Jul 11, 2019
Cited By (1)
US 12,231,262