IP Library Granted Patent US 10,432,520
Granted Patent B2
US 10,432,520 · App. 15/011,689 · Granted Oct 1, 2019

Traffic forwarding between geographically dispersed sites

Inventors: Qin Li (Beijing, CN); Shailesh Urhekar (Pune, IN); Amit Chopra (Pune, IN); Ayyappan Veeraiyan (Palo Alto, CA); Uday Masurekar (Palo Alto, CA)
Assignee: NICIRA, INC.
H04L45/74H04L12/4641
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,432,520
App. No.
15/011,689
Granted
Oct 1, 2019
Kind
B2
Abstract

Example methods are provided to perform traffic forwarding between geographically dispersed first site and second site and to support traffic forwarding via a trunk interface. In one example, the method may comprise receiving, by a first edge device at the first site, network traffic comprising a plurality of packets via a trunk interface of the first edge device from a virtual tunnel endpoint, the virtual tunnel endpoint having decapsulated the packets prior to communicating the packets through the trunk interface. The method may further comprise reading an overlay network identifier from each of the packets to identify a source overlay network of the received network traffic from the multiple overlay networks; modifying each of the packets to include a virtual local area network (VLAN) identifier; and forwarding modified network traffic to a second edge device at the second site to identify the destination network based on the VLAN identifier.

Claims (47)

1. A method to perform traffic forwarding between geographically dispersed first site and second site, the method comprising:

receiving, by a first edge device at the first site, network traffic comprising a plurality of packets via a trunk interface of the first edge device from a virtual tunnel endpoint, the virtual tunnel endpoint having decapsulated the packets prior to communicating the packets through the trunk interface, wherein the trunk interface is configured to receive traffic originating from multiple overlay networks in communication with the first edge device at the first site;

reading, by the first edge device, an overlay network identifier from each of the packets to identify a source overlay network of the received network traffic from the multiple overlay networks;

modifying, by the first edge device, each of the packets to include a virtual local area network (VLAN) identifier that associates the identified source overlay network with a destination network at the second site and remove the overlay network identifier, thereby generating modified network traffic; and

forwarding, by the first edge device, the modified network traffic to a second edge device at the second site to identify the destination network based on the VLAN identifier.

2. The method of claim 1 , wherein modifying each of the packets to remove the overlay network identifier comprises:

decapsulating a pseudo header that includes the overlay network identifier from each of the packets, wherein a source layer-2 address, a destination layer-2 address, a source layer-3 address and a destination layer-3 address in the pseudo header are set to zero.

3. The method of claim 1 , wherein the overlay network identifier is included in each of the packets after the packets are decapsulated by the virtual tunnel endpoint and before the packets are communicated through the trunk interface.

4. The method of claim 1 , wherein the destination network is one of multiple overlay networks in communication with the second edge device at the second site.

5. The method of claim 4 , wherein modifying each of the packets further comprises:

based on the overlay network identifier of the identified source overlay network, retrieving the VLAN identifier from a mapping table storing multiple VLAN identifiers that associate the multiple overlay networks at the first site with the multiple overlay networks at the second site.

6. The method of claim 1 , further comprising:

receiving ingress network traffic comprising a plurality of packets from the second edge device;

reading a VLAN identifier from each of the packets to identify a destination overlay network of the received ingress network traffic from the multiple overlay networks at the first site;

modifying each of the packets to include an overlay network identifier corresponding to the identified destination overlay network, thereby generating modified ingress network traffic; and

forwarding the modified ingress network traffic to the virtual tunnel endpoint via the trunk interface to reach the destination overlay network based on the overlay network identifier.

7. The method of claim 6 , wherein generating the modified ingress network traffic comprises:

generating a pseudo header that includes the overlay network identifier corresponding to the identified destination overlay network;

setting a source layer-2 address, a destination layer-2 address, a source layer-3 address and a destination layer-3 address in the pseudo header to zero; and

encapsulating each of the ingress packets with the pseudo header.

8. A non-transitory computer-readable storage medium that includes a set of instructions which, in response to execution by a processor of a computing device, cause the processor to perform a method of traffic forwarding between geographically dispersed first site and second site, the method comprising:

receiving, by a first edge device at the first site, network traffic comprising a plurality of packets via a trunk interface of the first edge device from a virtual tunnel endpoint, the virtual tunnel endpoint having decapsulated the packets prior to communicating the packets through the trunk interface, wherein the trunk interface is configured to receive traffic originating from multiple overlay networks in communication with the first edge device at the first site;

reading, by the first edge device, an overlay network identifier from each of the packets to identify a source overlay network of the received network traffic from the multiple overlay networks;

modifying, by the first edge device, each of the packets to include a virtual local area network (VLAN) identifier that associates the identified source overlay network with a destination network at the second site and remove the overlay network identifier, thereby generating modified network traffic; and

forwarding, by the first edge device, the modified network traffic to a second edge device at the second site to identify the destination network based on the VLAN identifier.

9. The non-transitory computer-readable storage medium of claim 8 , wherein modifying each of the packets to remove the overlay network identifier comprises:

decapsulating a pseudo header that includes the overlay network identifier from each of the packets, wherein a source layer-2 address, a destination layer-2 address, a source layer-3 address and a destination layer-3 address in the pseudo header are set to zero.

10. The non-transitory computer-readable storage medium of claim 8 , wherein the overlay network identifier is included in each of the packets after the packets are decapsulated by the virtual tunnel endpoint and before the packets are communicated through the trunk interface.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the destination network is one of multiple overlay networks in communication with the second edge device at the second site.

12. The non-transitory computer-readable storage medium of claim 11 , wherein modifying each of the packets further comprises:

based on the overlay network identifier of the identified source overlay network, retrieving the VLAN identifier from a mapping table storing multiple VLAN identifiers that associate the multiple overlay networks at the first site with the multiple overlay networks at the second site.

13. The non-transitory computer-readable storage medium of claim 8 , further comprising:

receiving ingress network traffic comprising a plurality of packets from the second edge device;

reading a VLAN identifier from each of the packets to identify a destination overlay network of the received ingress network traffic from the multiple overlay networks at the first site;

modifying each of the packets to include an overlay network identifier corresponding to the identified destination overlay network, thereby generating modified ingress network traffic; and

forwarding the modified ingress network traffic to the virtual tunnel endpoint via the trunk interface to reach the destination overlay network based on the overlay network identifier.

14. The non-transitory computer-readable storage medium of claim 13 , wherein generating the modified ingress network traffic comprises:

generating a pseudo header that includes the overlay network identifier corresponding to the identified destination overlay network;

setting a source layer-2 address, a destination layer-2 address, a source layer-3 address and a destination layer-3 address in the pseudo header to zero; and

encapsulating each of the ingress packets with the pseudo header.

15. A computing device configured to perform traffic forwarding between geographically dispersed first site and second site, the computing device being a first edge device at the first site and comprising:

a processor; and

a non-transitory computer-readable medium having stored thereon instructions that, when executed by the processor, cause the processor to:

receive network traffic comprising a plurality of packets via the trunk interface from a virtual tunnel, the virtual tunnel endpoint having decapsulated the packets prior to communicating the packets through the trunk interface, wherein the trunk interface is configured to receive traffic originating from multiple overlay networks in communication with the first edge device at the first site;

read an overlay network identifier from each of the packets to identify a source overlay network of the received network traffic from the multiple overlay networks;

modify each of the packets to include a virtual local area network (VLAN) identifier that associates the identified source overlay network with a destination network at the second site and remove the overlay network identifier, thereby generating modified network traffic; and

forward the modified network traffic to a second edge device at the second site to identify the destination network based on the VLAN identifier.

Assignments (2)
MERGER Recorded Jan 27, 2025
From: NICIRA, INC.
To: VMWARE LLC
Reel/Frame 070187/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2016
From: LI, QIN; URHEKAR, SHAILESH; CHOPRA, AMIT; VEERAIYAN, AYYAPPAN; MASUREKAR, UDAY
To: NICIRA, INC.
Reel/Frame 037628/0981 →