Flooding packets on a per-virtual-network basis
First Claim
1. A switch, comprising:
- one or more ports;
lookup circuitry configured to determine an internal virtual network identifier for a packet based on an entry in a data structure in a local storage device, wherein the entry maps a virtual local area network (VLAN) identifier and a Virtual Private Network (VPN) identifier associated with the packet to the internal virtual network identifier;
determining circuitry configured to, in response to determining that the packet needs flooding, determine a set of egress ports from the one or more ports for flooding the packet based on the internal virtual network identifier; and
flooding circuitry configured to;
determine whether to filter the packet for flooding at a first port in the set of egress ports based on whether the first port is associated with the VPN identifier;
in response to determining not to filter the packet, associate the packet with the first port as an output port.
7 Assignments
0 Petitions
Accused Products
Abstract
Methods and techniques for flooding packets on a per-virtual-network basis are described. Some embodiments provide a method (e.g., a switch) which determines an internal virtual network identifier based on one or more fields in a packet'"'"'s header. Next, the method performs a forwarding lookup operation based on the internal virtual network identifier. If the forwarding lookup operation succeeds, the method can process and forward the packet accordingly. However, if the forwarding lookup operation fails, the method can determine a set of egress ports based on the internal virtual network identifier. Next, for each egress port in the set of egress ports, the method can flood the packet if a virtual network identifier in the packet'"'"'s header is associated with the egress port. Flooding packets on a per-virtual-network basis can substantially reduce the amount of resources required to flood the packet when a forwarding lookup operation fails.
-
Citations
24 Claims
-
1. A switch, comprising:
-
one or more ports; lookup circuitry configured to determine an internal virtual network identifier for a packet based on an entry in a data structure in a local storage device, wherein the entry maps a virtual local area network (VLAN) identifier and a Virtual Private Network (VPN) identifier associated with the packet to the internal virtual network identifier; determining circuitry configured to, in response to determining that the packet needs flooding, determine a set of egress ports from the one or more ports for flooding the packet based on the internal virtual network identifier; and flooding circuitry configured to; determine whether to filter the packet for flooding at a first port in the set of egress ports based on whether the first port is associated with the VPN identifier; in response to determining not to filter the packet, associate the packet with the first port as an output port. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
a processor; and a memory storing instructions that when executed by the processor cause the system to perform a method, the method comprising; determining an internal virtual network identifier for a packet based on an entry in a data structure in a local storage device, wherein the entry maps a virtual local area network (VLAN) identifier and a Virtual Private Network (VPN) identifier associated with the packet to the internal virtual network identifier; in response to determining that the packet needs flooding, determining a set of egress ports for flooding the packet based on the internal virtual network; determining whether to filter the packet for flooding at a first port in the set of egress ports based on whether the first port is associated with the VPN identifier; and in response to determining not to filter the packet, associating the packet with the first port as an output port. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method, comprising:
-
determining, by a computing system, an internal virtual network identifier for a packet based on an entry in a data structure in a local storage device, wherein the entry maps a virtual local area network (VLAN) identifier and a Virtual Private Network (VPN) identifier associated with the packet to the internal virtual network identifier; in response to determining that the packet needs flooding, determining a set of egress ports for flooding the packet based on the internal virtual network identifier; determining whether to filter the packet for flooding at a first port in the set of egress ports based on whether the first port is associated with the VPN identifier; and in response to determining not to filter the packet, associating the packet with the first port as an output port. - View Dependent Claims (20, 21, 22, 23, 24)
-
Specification