IP Library Granted Patent US 10,243,846
Granted Patent B2
US 10,243,846 · App. 15/595,917 · Granted Mar 26, 2019

Defining routing domain for distributed packet processing

Inventors: Caixia Jiang (Beijing, CN); Jianjun Shen (Beijing, CN); Pankaj Thakkar (Cupertino, CA); Anupam Chanda (San Jose, CA); Ronghua Zhang (San Jose, CA); Ganesan Chandrashekhar (Campbell, CA); Vicky Liu (Beijing, CN); Da Wan (Beijing, CN); Frank Pan (Beijing, CN); Hua Wang (Beijing, CN); Donghai Han (Beijing, CN)
Assignee: NICIRA, INC.
H04L45/44H04L12/4633H04L12/4641H04L45/122
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,243,846
App. No.
15/595,917
Granted
Mar 26, 2019
Kind
B2
Abstract

For a managed network including multiple host machines implementing multiple logical networks, some embodiments provide a method that reduces the memory and traffic load required to implement the multiple logical networks. The method generates configuration data for each of multiple host machines including (i) data to configure a host machine to implement a set of logical forwarding elements that belong to a set of routing domains and (ii) identifiers for each routing domain in the set of routing domains. The method then receives data regarding tunnels endpoints operating on each of the host machines and an association with the routing identifiers sent to the host machines. The method then generates a routing domain tunnel endpoint list for each routing domain based on the data received from each of the host machines including a list of the tunnel endpoints associated with the routing domain which the host machines can use to facilitate packet processing.

Claims (36)

1. A method for facilitating implementation of logical routing by a plurality of managed forwarding elements (MFEs), the method comprising:

generating configuration data for configuring a particular MFE of the plurality of MFEs to implement a set of logical switches belonging to a set of routing domains, the configuration data comprising a unique identifier for each routing domain, wherein each MFE of the plurality of MFEs comprises at least one tunnel endpoint;

from each MFE of a set of the plurality of MFEs, receiving data regarding associations between routing domain identifiers and tunnel endpoints of the MFE;

based on the received data, generating, for each routing domain in the set of routing domains, a list of the tunnel endpoints associated with the routing domain; and

sending the list for each routing domain in the set of routing domains to the particular MFE to facilitate packet processing.

2. The method of claim 1 , wherein the particular MFE comprises a plurality of tunnel endpoints,

wherein a first tunnel endpoint of the MFE is associated with a first routing domain identifier, and

wherein a second tunnel endpoint of the MFE is associated with a second routing domain identifier.

3. The method of claim 1 , wherein the data regarding associations between routing domain identifiers and tunnel endpoints of each MFE is received from a local controller executing on a same host machine as the MFE.

4. The method of claim 1 , wherein the MFE uses the list sent for a particular routing domain to facilitate Address Resolution Protocol (ARP) packet processing.

5. The method of claim 4 , wherein using the list sent for the particular routing domain comprises:

using the list to identify a set of tunnel endpoints at a set of other MFEs in the plurality of MFEs that are in the particular routing domain; and

sending out an ARP packet to the identified set of tunnel endpoints.

6. The method of claim 5 , wherein the ARP packet is one of an ARP request packet and a gratuitous ARP (GARP) packet.

7. The method of claim 1 , wherein the tunnel endpoints are virtual extensible local area network (VXLAN) tunnel endpoints (VTEPs).

8. The method of claim 1 , wherein facilitating packet processing comprises comparing tunnel endpoint identifiers in the list for a particular routing domain to a tunnel endpoint identifier received as part of a particular ARP packet for the particular routing domain to determine whether the association between the tunnel endpoint identifier and a MAC address associated with the particular ARP packet will be learned by the MFE.

9. The method of claim 8 , wherein the association between the tunnel endpoint identifier and the MAC address associated with the particular ARP packet is learned only if the tunnel identifier matches a tunnel identifier in the list sent for the particular routing domain.

10. The method of claim 9 , wherein the learned association between the tunnel endpoint identifier and the MAC address associated with the particular ARP packet is used to send an ARP reply packet as a unicast packet.

11. A method for implementing logical routing, at a managed forwarding element (MFE) of a plurality of MFEs, the method comprising:

receiving, from a network controller, configuration data for implementing a set of logical switches belonging to a set of routing domains, the configuration data comprising a unique identifier for each routing domain in the set of routing domains;

sending to the network controller associations between the routing domain identifiers and tunnel endpoints of the MFE;

for each routing domain in the set of routing domains, receiving, from the network controller, a list that specifies the tunnel endpoints of the plurality of MFEs that are associated with the routing domain; and

wherein the received lists are used by the MFE for processing packets for the set of routing domains.

12. The method of claim 11 , wherein the MFE comprises a plurality of tunnel endpoints,

wherein a first tunnel endpoint of the MFE is associated with a first routing domain identifier, and

wherein a second tunnel endpoint of the MFE is associated with a second routing domain identifier.

13. The method of claim 11 , wherein the method is performed by a local controller executing on a same host machine as the MFE, the method further comprising providing the received lists to the MFE.

14. The method of claim 13 , wherein the MFE uses the list sent for a particular routing domain to facilitate ARP packet processing.

15. The method of claim 14 , wherein using the list sent for the particular routing domain comprises:

using the list to identify a set of tunnel endpoints at a set of other MFEs in the plurality of MFEs that are in the particular routing domain; and

sending out an ARP packet to the identified set of tunnel endpoints.

16. The method of claim 15 , wherein the ARP packet is one of an ARP request packet and a gratuitous ARP (GARP) packet.

17. The method of claim 11 , wherein the tunnel endpoints are virtual extensible local area network (VXLAN) tunnel endpoints (VTEPs).

18. The method of claim 11 , wherein using the received lists for packet processing comprises comparing tunnel endpoint identifiers in the list for a particular routing domain to a tunnel endpoint identifier received as part of a particular ARP packet for the particular routing domain to determine whether the association between the tunnel endpoint identifier and a MAC address associated with the particular ARP packet will be learned by the MFE.

19. The method of claim 18 , wherein the association between the tunnel endpoint identifier and the MAC address associated with the particular ARP packet is learned only if the tunnel identifier matches a tunnel identifier in the list sent for the particular routing domain.

20. The method of claim 19 , wherein the learned association between the tunnel endpoint identifier and the MAC address associated with the particular ARP packet is used to send an ARP reply packet as a unicast packet.

Assignments (4)
MERGER Recorded Jan 27, 2025
From: NICIRA, INC.
To: VMWARE LLC
Reel/Frame 070187/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2019
From: ZHANG, RONGHUA
To: NICIRA, INC.
Reel/Frame 047958/0294 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2019
From: CHANDA, ANUPAM
To: NICIRA, INC.
Reel/Frame 047929/0670 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2017
From: JIANG, CAIXIA; SHEN, JIANJUN; THAKKAR, PANKAJ; CHANDRASHEKHAR, GANESAN; LIU, VICKY; WAN, DA; PAN, FRANK; WANG, HUA; HAN, DONGHAI
To: NICIRA, INC.
Reel/Frame 042385/0900 →
Continuity (1)
Related Publication 20180331948A1 · Nov 15, 2018
Cited By (2)
US 12,255,804 US 12,399,886