IP Library Granted Patent US 9,281,953
Granted Patent B1
US 9,281,953 · App. 14/034,200 · Granted Mar 8, 2016

Systems and methods for routing multicast packets

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 9,281,953
App. No.
14/034,200
Granted
Mar 8, 2016
Kind
B1
Abstract

Method and system for a network device are provided. The device includes a port for receiving a multicast packet and a multicast data structure for maintaining information regarding a multicast group to which the multicast packet is to be sent. When the port is a part of a link aggregation group (LAG), then any port that is a member of the LAG is removed from the multicast group such that the multicast packet is not sent to any member of the LAG.

Claims (30)

1. A network device, comprising:

a port for receiving a multicast packet;

a multicast data structure for maintaining information regarding a multicast group to which the multicast packet is to be sent; wherein the multicast data structure stores a multicast vector having a bit for each port of the network device and a bit setting indicates when any port is part of the multicast group; and

a link aggregation group (LAG) data structure for storing a LAG vector that stores bit settings indicating which port is part of a LAG;

wherein when the multicast packet is received by the port, then a corresponding multicast vector and a corresponding LAG vector are obtained and any port that is a member of the LAG is removed from the multicast group such that the multicast packet is not sent to any member of the LAG.

2. The network device of claim 1 , wherein the network device is a switch coupled to one or more devices.

3. The network device of claim 1 , further comprising: a plurality of sub-ports, wherein one of the plurality of sub-ports is configured to operate as a Fibre Channel port.

4. The network device of claim 3 , wherein one of the plurality of sub-ports is configured to operate as an Ethernet port or a Fibre Channel over Ethernet port (FCoE).

5. The network device of claim 3 , wherein when LAG is not used, then the port receiving the multicast packet is removed from the multicast vector to avoid a multicast storm.

6. The network device of claim 1 , wherein a plurality of LAG vectors corresponding to different packet tags are used to determine LAG members.

7. A machine implemented for a network device having a plurality of ports for sending and receiving information, comprising:

maintaining a multicast data structure at a port of the network device for storing information regarding a multicast group; wherein the multicast data structure stores a multicast vector having a bit for each port of the network device and a bit setting indicates when any port is part of the multicast group;

maintaining a link aggregation group (LAG) data structure for storing a LAG vector that stores bit settings indicating which port from among the plurality of ports is part of a LAG;

receiving a multicast packet at the port of the network device; and

obtaining a multicast vector from the multicast data structure and a LAG vector from the LAG data structure corresponding to the multicast packet for removing any port that is a member of a LAG such that the multicast packet is only transmitted to non-LAG members and is not transmitted to any LAG member.

8. The method of claim 7 , wherein the network device is a switch coupled to one or more devices.

9. The method of claim 7 , wherein the network device include a plurality of sub-ports, where one of the plurality of sub-ports is configured to operate as a Fibre Channel port.

10. The method of claim 9 , wherein one of the plurality of sub-ports is configured to operate as an Ethernet port or a Fibre Channel over Ethernet port (FCoE).

11. The method of claim 7 , wherein when LAG is not used, then the port receiving the multicast packet is removed from the multicast vector to avoid a multicast storm.

12. The method of claim 7 , wherein a plurality of LAG vectors corresponding to different packet tags are used to determine LAG members.

13. A non-transitory, storage medium, machine readable storage medium having stored thereon instructions for performing a method, for a network device having a plurality of ports for sending and receiving information, comprising machine executable code which when executed by at least one machine, causes the machine to:

store a multicast data structure at a port of the network device for storing information regarding a multicast group; wherein the multicast data structure stores a multicast vector having a bit for each port of the network device and a bit setting indicates when any port is part of the multicast group;

store a link aggregation group (LAG) data structure for storing a LAG vector that stores bit settings indicating which port from among the plurality of ports is part of a LAG;

receive a multicast packet at the port of the network device; and

obtain a multicast vector from the multicast data structure and a LAG vector from the LAG data structure corresponding to the multicast packet for removing any port that is a member of a LAG such that the multicast packet is only transmitted to non-LAG members and are not transmitted to any LAG member.

14. The non-transitory, storage medium of claim 13 , wherein the network device is a switch coupled to one or more devices.

15. The non-transitory, storage medium of claim 13 , wherein the network device include a plurality of sub-ports, where one of the plurality of sub-ports is configured to operate as a Fibre Channel port.

16. The non-transitory, storage medium of claim 15 , wherein one of the plurality of sub-ports is configured to operate as an Ethernet port or a Fibre Channel over Ethernet port (FCoE).

17. The non-transitory, storage medium of claim 13 , wherein when LAG is not used, then the port receiving the multicast packet is removed from the multicast vector to avoid a multicast storm.

18. The non-transitory, storage medium of claim 13 , wherein a plurality of LAG vectors corresponding to different packet tags are used to determine LAG members.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2013
From: DROPPS, FRANK R.
To: QLOGIC, CORPORATION
Reel/Frame 031261/0127 →