IP Library Granted Patent US 11,641,321
Granted Patent B2
US 11,641,321 · App. 16/030,772 · Granted May 2, 2023

Packet processing for logical datapath sets

Inventors: Teemu Koponen (San Francisco, CA); Keith E. Amidon (Los Altos, CA); Paul S. Ingram (Menlo Park, CA); Martin Casado (Portola Valley, CA)
Assignee: NICIRA, INC.
H04L45/22H04L9/40H04L41/0896H04L45/00H04L45/74H04L47/00H04L49/25H04L69/329
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 11,641,321
App. No.
16/030,772
Granted
May 2, 2023
Kind
B2
Abstract

Some embodiments provide a method that processes network data through a network. The method receives a packet destined for a network host associated with a logical datapath set implemented by a set of managed edge switching elements and a set of managed non-edge switching elements in the network. The method determines whether the packet is a known packet. When the packet is a known packet, the method forwards the packet to a managed switching element in the set of managed edge switching elements for forwarding to the network host. When the packet is not a known packet, the method forwards the packet to a managed switching element in the set of managed non-edge switching elements for further processing.

Claims (32)

1. For a managed non-edge switching element (MNESE), a method for processing packets for a logical datapath set (LDPS) implemented by the MNESE and a plurality of managed edge switching elements (MESEs), the method comprising:

at a first MESE coupled to a source machine:

providing a first packet, having a destination address associated with the LDPS, along a first tunnel to the MNESE after a determination that the first MESE does not know the destination address of the first packet made by performing a lookup operation on a forwarding table to determine whether the destination address is known; and

providing other packets with destination addresses associated with the LDPS along other tunnels to other MESEs when the first MESE knows the destination addresses of the other packets; and

at the MNESE:

receiving the first packet from the first MESE, wherein each particular MESE that implements the LDPS has at least one machine associated with the LDPS coupled directly to the particular MESE; and

forwarding the first packet to the destination address through a second MESE of the plurality of other MESEs, wherein the MNESE stores data for forwarding packets to a plurality of destination addresses and does not receive packets directly from the machines associated with the LDPS.

2. The method of claim 1 , wherein the MNESE does not receive a second packet for which the first MESE determines that the destination is known by performing a lookup operation on a forwarding table that includes an entry that matches a media access control (MAC) address that is specified in a header of the second packet.

3. The method of claim 2 , wherein the MAC address is a destination MAC address.

4. The method of claim 1 , wherein the destination address of the first packet is determined to be unknown when the forwarding table does not include an entry that matches a MAC address that is specified in a header of the first packet.

5. The method of claim 1 , wherein the plurality of MESEs comprises a set of managed software switching elements.

6. The method of claim 1 , wherein the plurality of MESEs comprises a set of managed virtual switching elements.

7. The method of claim 1 , wherein the plurality of MESEs comprises a set of managed hardware switching elements.

8. The method of claim 1 further comprising:

when the MNESE does not know the destination address, flooding a network with a set of packets, each particular packet in the set of packets including a broadcast MAC address specified in the header of the particular packet as the particular packet's destination MAC address; and

using a reply to the set of packets to identify the second MESE as an MESE in the plurality of MESEs associated with the destination address of the first packet,

wherein the forwarding comprises forwarding the first packet to the destination address through the second MESE after identifying the second MESE as being associated with the destination address.

9. The method of claim 1 further comprising identifying the destination address of the packet before transmitting the first packet to the second MESE.

10. A system for processing packets for a logical datapath set (LDPS) implemented by a managed non-edge switching element (MNESE) and a plurality of managed edge switching elements (MESEs), the system comprising:

a first MESE of the plurality of MESEs that is coupled to a source machine and that is configured (i) to provide a first packet, having a destination address determined not to be known to the first MESE based on the first MESE performing a lookup operation on a forwarding table to determine whether the destination address is known, along a first tunnel to the MNESE and (ii) to provide other packets associated with the LDPS and having destination addresses determined to be known to the first MESE along other tunnels to other MESEs of the plurality of MESEs, wherein each particular MESE that implements the LDPS has at least one machine associated with the LDPS coupled directly to the particular MESE, wherein the first MESE is stored on a non-transitory machine-readable medium of a computing device and executed by at least one processing unit of the computing device; and

the MNESE that is configured (i) to receive the first packet from the first MESE along the first tunnel, and (ii) to forward the first packet to the destination address through a second MESE of the plurality of other MESEs, wherein the MNESE stores data for forwarding packets to a plurality of destination addresses and docs not receive packets directly from the machines associated with the LDPS.

11. The system of claim 10 , wherein the MNESE does not receive a second packet for which the first MESE determines that the destination is known by performing a lookup operation on a forwarding table that includes an entry that matches a media access control (MAC) address that is specified in a header of the second packet.

12. The system of claim 11 , wherein the MAC address is a destination MAC address.

13. The system of claim 10 , wherein the destination address of the first packet is determined to be unknown when the forwarding table does not include an entry that matches a MAC address that is specified in a header of the first packet.

14. The system of claim 10 , wherein the plurality of MESEs comprises a set of managed software switching elements.

15. The system of claim 10 , wherein the plurality of MESEs comprises a set of managed virtual switching elements.

16. The system of claim 10 , wherein the plurality of MESEs comprises a set of managed hardware switching elements.

17. The system of claim 10 wherein:

when the MNESE does not know the destination address, the MNESE floods a network with a set of packets, each particular packet in the set of packets including a broadcast MAC address specified in the header of the particular packet as the particular packet's destination MAC address; and

the MNESE uses a reply to the set of packets to identify the second MESE as an MESE in the plurality of MESEs associated with the destination address of the first packet,

wherein the forwarding comprises forwarding the first packet to the destination address through the second MESE after identifying the second MESE as being associated with the destination address.

18. The system of claim 10 , wherein the MNESE identifies the destination address of the first packet before transmitting the first packet to the second MESE.

Assignments (2)
MERGER Recorded Jan 27, 2025
From: NICIRA, INC.
To: VMWARE LLC
Reel/Frame 070187/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2023
From: KOPONEN, TEEMU; AMIDON, KEITH E.; CASADO, MARTIN
To: NICIRA, INC.
Reel/Frame 062275/0707 →