IP Library Granted Patent US 8,705,532
Granted Patent B2
US 8,705,532 · App. 11/356,614 · Granted Apr 22, 2014

Methods, systems, and computer program products for selective layer 2 port blocking using layer 2 source addresses

Inventors: Donald B. Grosser (Apex, NC); Daniel V. Wade (Pleasanton, CA)
Assignee: Extreme Networks, Inc.
H04L45/745H04L63/0236H04L12/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 8,705,532
App. No.
11/356,614
Granted
Apr 22, 2014
Kind
B2
Abstract

Methods, systems, and computer program products for selective layer 2 port blocking using layer 2 source addresses are disclosed. According to one method, a layer 2 frame is received. An I/O port block list is identified based on a layer 2 source address in the layer 2 frame. A set of ports to which the layer 2 fame should be forwarded is identified. The frame is blocked from being forwarded to ports in the set that are also in the I/O port block list.

Claims (36)

1. A method for selective layer 2 port blocking based on a layer 2 source address, the method comprising:

at a port in a layer 2 switching device:

(a) storing different I/O port block lists for different layer 2 source addresses within a common VLAN, wherein at least one of the I/O port block lists specifies plural member ports to block within the VLAN based on a frame's layer 2 source address;

(b) receiving a layer 2 frame;

(c) identifying, during a layer 2 learning phase lookup and based on a layer 2 source address in the layer 2 frame, an input/output (I/O) port block list from the different I/O port block lists, wherein identifying the I/O port block list includes matching the frame's layer 2 source address with a layer 2 address associated with the I/O port block list;

(d) performing a forwarding phase lookup to identify a set of ports to which the frame should be forwarded; and

(e) blocking forwarding of the layer 2 frame to ports in the set that are also in the I/O port block list.

2. The method of claim 1 wherein performing the forwarding phase lookup includes performing a lookup in a layer 2 forwarding table and identifying the set of ports including members of a VLAN corresponding to a VLAN tag in the layer 2 frame.

3. The method of claim 1 wherein performing the forwarding phase lookup includes identifying the packet as a layer 3 multicast packet and performing a lookup in a layer 3 forwarding table to determine the set of layer 2 ports to which the frame should be forwarded.

4. The method of claim 1 wherein performing the forwarding phase lookup includes identifying the frame as a layer 3 unicast frame and performing a lookup in a layer 3 forwarding table to identify the set of ports to which the frame should be forwarded.

5. The method of claim 1 wherein each I/O port block list is represented by a bitmap having bits indicating ports to which the layer 2 frame should not be forwarded, wherein the set of ports identified during the forwarding phase lookup is represented by a bitmap having bits indicating the set of ports to which the layer 2 frame should be forwarded and wherein blocking forwarding of the layer 2 frame to ports in the set that are in the list includes masking the bitmap representing the ports to which the frame should be forwarded using the bitmap representing the I/O port block list.

6. The method of claim 1 wherein the layer 2 frame comprises an Ethernet frame and wherein receiving a layer 2 frame includes receiving the layer 2 frame at an Ethernet switch.

7. The method of claim 1 wherein the layer 2 frame comprises an Ethernet frame with an Internet protocol (IP) payload and wherein receiving a layer 2 frame includes receiving a layer 2 frame at an IP router.

8. A system for selective layer 2 port blocking using a layer 2 source address, the system comprising:

(a) a forwarding database associated with a layer 2 port and including entries having layer 2 forwarding information, wherein at least two of the entries include input/output (I/O) port block lists indicating ports to which a received layer 2 frame should not be forwarded, wherein the at least two entries correspond to a common VLAN and specify different sets of ports to which a frame within the VLAN should not be forwarded based on a frame's layer 2 source address; and

(b) a forwarding engine for receiving a layer 2 frame, for locating, during a layer 2 learning phase lookup and based on a layer 2 source address in the layer 2 frame, one of the I/O port block lists, wherein locating the I/O port block list includes matching the frame's layer 2 source address with a layer 2 address associated with the I/O port block list, for determining a set of ports to which the frame should be forwarded, and for blocking forwarding of the frame to ports in the set that are in the I/O port block list located for the frame.

9. The system of claim 8 wherein the forwarding engine is adapted to identify the set of ports to which the frame should be forwarded by performing a lookup in the forwarding database based on a layer 2 destination address in the layer 2 frame.

10. The system of claim 8 wherein the forwarding engine is adapted to identify the frame as a layer 3 multicast frame and to identify the set of ports to which the frame should be forwarded by performing a lookup in a layer 3 forwarding table in the forwarding database.

11. The system of claim 8 wherein the forwarding engine is adapted to identify the frame as a layer 3 unicast frame and to identify the set of ports to which the frame should be forwarded by performing a lookup in a layer 3 forwarding table in the forwarding database.

12. The system of claim 8 wherein each I/O port block list is represented by a bitmap having bits indicating the ports to which the frame should not be forwarded, wherein the set of ports to which the frame should be forwarded is represented by a bitmap having bits indicating the ports to which the frame should be forwarded and wherein the forwarding engine is adapted to implement the blocking by masking the bitmap corresponding to the set of ports to which the frame should be forwarded with the I/O port block list bitmap.

13. The system of claim 8 wherein the forwarding engine comprises a layer 2 forwarding engine and wherein the forwarding database comprises a layer 2 forwarding database.

14. The system of claim 8 wherein the forwarding engine comprises a layer 3 forwarding engine and wherein the forwarding database comprises a layer 3 forwarding database.

15. The system of claim 8 wherein the forwarding engine comprises a layer 2 and layer 3 forwarding engine and wherein the forwarding database includes a layer 2 and a layer 3 forwarding table.

16. A computer program product comprising computer executable instructions embodied in a non-transitory computer readable medium for performing steps comprising:

at a port in a layer 2 switching device:

(a) storing different I/O port block lists for different layer 2 source addresses within a common VLAN, wherein at least one of the I/O port block lists specifies plural member ports to block within the VLAN based on a frame's layer 2 source address;

(b) receiving a layer 2 frame;

(c) identifying, during a layer 2 learning phase lookup and based on a layer 2 source address in the layer 2 frame, an input/output (I/O) port block list from the different I/O port block lists, wherein identifying the I/O port block list includes matching the frame's layer 2 source address with a layer 2 address associated with the I/O port block list;

(d) performing a forwarding phase lookup to identify a set of ports to which the frame should be forwarded; and

(e) blocking forwarding of the layer 2 frame to ports in the set that are also in the I/O port block list.

17. The computer program product of claim 16 wherein performing the forwarding phase lookup includes performing a lookup in a layer 2 forwarding table and identifying the set of ports including members of a VLAN corresponding to a VLAN tag in the layer 2 frame.

18. The computer program product of claim 16 wherein performing the forwarding phase lookup includes identifying the packet as a layer 3 multicast packet and performing a lookup in a layer 3 forwarding table to determine the set of layer 2 ports to which the frame should be forwarded.

19. The computer program product of claim 16 wherein performing the forwarding phase lookup includes identifying the frame as a layer 3 unicast frame and performing a lookup in a layer 3 forwarding table to identify the set of ports to which the frame should be forwarded.

20. The computer program product of claim 16 wherein each I/O port block list is represented by a bitmap having bits indicating ports to which the layer 2 frame should not be forwarded, wherein the set of ports identified during the forwarding phase lookup is represented by a bitmap having bits indicating the set of ports to which the layer 2 frame should be forwarded and wherein blocking forwarding of the layer 2 frame to ports in the set that are in the list includes masking the bitmap representing the ports to which the frame should be forwarded using the bitmap representing the I/O port block list.

21. The computer program product of claim 16 wherein the layer 2 frame comprises an Ethernet frame and wherein receiving a layer 2 frame includes receiving the layer 2 frame at an Ethernet switch.

22. The computer program product of claim 16 wherein the layer 2 frame comprises an Ethernet frame with an Internet protocol (IP) payload and wherein receiving a layer 2 frame includes receiving a layer 2 frame at an IP router.

Assignments (10)
RELEASE OF PATENT AND TRADEMARK SECURITY INTEREST AT REEL/FRAME NO. 46050/0546 Recorded Jul 30, 2026
From: BANK OF MONTREAL, AS AGENT
To: EXTREME NETWORKS, INC.
Reel/Frame 076081/0088 →
SECURITY INTEREST Recorded Jul 29, 2026
From: EXTREME NETWORKS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 076078/0590 →
AMENDED SECURITY AGREEMENT Recorded Aug 18, 2023
From: EXTREME NETWORKS, INC.; AEROHIVE NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 064782/0971 →
SECURITY INTEREST Recorded May 1, 2018
From: EXTREME NETWORKS, INC.
To: BANK OF MONTREAL
Reel/Frame 046050/0546 →
RELEASE OF SECURITY INTEREST Recorded May 1, 2018
From: SILICON VALLEY BANK
To: EXTREME NETWORKS, INC.
Reel/Frame 046051/0775 →
THIRD AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 044639/0300 →
SECOND AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Jul 14, 2017
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 043200/0614 →
AMENDED AND RESTATED PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Oct 31, 2016
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 040521/0762 →
SECURITY AGREEMENT Recorded Jul 27, 2015
From: EXTREME NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 036189/0284 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2006
From: GROSSER, DONALD B.; WADE, DANIEL V.
To: EXTREME NETWORKS, INC.
Reel/Frame 017449/0251 →
Continuity (1)
Related Publication 20070195793A1 · Aug 23, 2007