IP Library Granted Patent US 8,848,587
Granted Patent B2
US 8,848,587 · App. 10/831,245 · Granted Sep 30, 2014

Multicasting network 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 8,848,587
App. No.
10/831,245
Granted
Sep 30, 2014
Kind
B2
Abstract

Multicasting network packets is disclosed. A total number of copies of a frame, t, to be sent is determined. A number of copies of the frame, m, which is less than a total number of copies of the frame, t, to be made during a current iteration is determined. M copies of the frame are made. The m copies of the frame are then sent to their destinations. The original input frame is provided as output with an indication that the frame should be returned for further processing. Processing of the frame is discontinued during an interval in which other frames are processed. The process is repeated until t copies have been sent.

Claims (36)

1. A method for multicasting a data frame comprising:

preparing at a network processor m copies of the frame, the number m being less than a total number of copies of the frame, t, to be sent, wherein the number m is predetermined and wherein the number m is user configurable;

providing the m copies to a traffic manager configured to queue each copy in its respective input queue;

providing the original input frame to the traffic manager with an indication that the frame should be returned to the network processor for further processing;

discontinuing processing the frame at the network processor during an interval during which one or more frames other than the frame being multicast may be processed; and

repeating until t copies have been sent.

2. A method for multicasting as in claim 1 further comprising determining the number of copies m to be prepared.

3. A method for multicasting as in claim 2 wherein determining the number of copies m to be prepared depends on the number of copies of the frame that have already been sent.

4. A method for multicasting as in claim 2 wherein determining the number of copies m to be prepared depends on the total number of copies of the frame, t, to be sent.

5. A method for multicasting as in claim 2 wherein determining the number of copies m to be prepared depends on a traffic level.

6. A method for multicasting as in claim 2 wherein determining the number of copies m to be prepared depends on a priority level associated with the frame.

7. A method for multicasting as in claim 1 further comprising receiving the frame back at the network processor and preparing at the network processor the next set of m copies in response to receiving the frame back.

8. A method for multicasting as in claim 1 wherein a copy of the frame may be different than one or more other copies of the frame.

9. A method for multicasting as in claim 1 wherein the number m is determined at least in part by one or more of the following factors: a total number of destinations to which the frame will be sent, a number of copies of the frame already sent, a number of copies of the frame remaining to be sent, a load of the network processor, a priority level of the frame, and a time of day.

10. A method for multicasting as in claim 1 wherein successive iterations of receiving the frame, preparing m copies, providing the m copies to the traffic manager, providing the original frame to the traffic manager, and discontinuing processing the frame during an interval during which one or more frames other than the frame being multicast may be processed are completed until all t copies of the frame have been prepared and provided to the traffic manager.

11. A device for multicasting a data frame comprising:

an input interface configured to receive the frame; and

a frame processor configured to:

prepare m copies of the frame, the number m being less than a total number of copies of the frame, t, to be sent, wherein the number m is predetermined and wherein the number m is user configurable;

provide the m copies to a traffic manager configured to queue each copy in its respective input queue;

provide the original input frame to the traffic manager with an indication that the frame should be returned to the frame processor for further processing; and

discontinue processing the frame during an interval during which one or more frames other than the frame being multicast may be processed.

12. A device as in claim 11 wherein the processing further comprises a further iteration of preparing m copies of the frame, providing the m copies to the traffic manager, and discontinuing processing the frame during an interval during which one or more frames other than the frame being multicast may be processed.

13. A device as in claim 12 in which successive iterations of receiving the frame, preparing m copies, providing the m copies to the traffic manager, providing the original frame to the traffic manager, and discontinuing processing the frame during an interval during which one or more frames other than the frame being multicast may be processed are completed until all t copies of the frame have been prepared and provided to the traffic manager.

14. A device as in claim 11 wherein the frame processor is further configured to determine the number of copies m to be prepared.

15. A device as in claim 11 wherein the number m is determined at least in part by one or more of the following factors: a total number of destinations to which the frame will be sent, a number of copies of the frame already sent, a number of copies of the frame remaining to be sent, a load of the frame processor, a priority level of the frame, and a time of day.

16. A device as in claim 11 wherein a copy of the frame may be different than one or more other copies of the frame.

17. A computer program product for multicasting a data frame, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

preparing at a network processor m copies of the frame, the number m being less than a total number of copies of the frame, t, to be sent, wherein the number m is predetermined and wherein the number m is user configurable;

providing the m copies to a traffic manager configured to queue each copy in its respective input queue;

providing the original input frame to the traffic manager with an indication that the frame should be returned to the network processor for further processing;

discontinuing processing the frame at the network processor during an interval during which one or more frames other than the frame being multicast may be processed; and

repeating until t copies have been sent.

18. A computer program product as in claim 17 wherein successive iterations of receiving the frame, preparing m copies, providing the m copies to the traffic manager, providing the original frame to the traffic manager, and discontinuing processing the frame during an interval during which one or more frames other than the frame being multicast may be processed are completed until all t copies of the frame have been prepared and provided to the traffic manager.

19. A computer program product as in claim 17 wherein the number m is determined at least in part by one or more of the following factors: a total number of destinations to which the frame will be sent, a number of copies of the frame already sent, a number of copies of the frame remaining to be sent, a load of the network processor, a priority level of the frame, and a time of day.

20. A computer program product as in claim 17 wherein a copy of the frame may be different than one or more other copies of the frame.

Assignments (12)
SECURITY INTEREST Recorded Jun 1, 2021
From: WSOU INVESTMENTS, LLC
To: OT WSOU TERRIER HOLDINGS, LLC
Reel/Frame 056990/0081 →
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: OCO OPPORTUNITIES MASTER FUND, L.P. (F/K/A OMEGA CREDIT OPPORTUNITIES MASTER FUND LP
To: WSOU INVESTMENTS, LLC
Reel/Frame 049246/0405 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2017
From: ALCATEL LUCENT
To: WSOU INVESTMENTS, LLC
Reel/Frame 044000/0053 →
SECURITY INTEREST Recorded Sep 21, 2017
From: WSOU INVESTMENTS, LLC
To: OMEGA CREDIT OPPORTUNITIES MASTER FUND, LP
Reel/Frame 043966/0574 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033949/0016 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2014
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 033523/0959 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →
MERGER Recorded Nov 10, 2011
From: ALCATEL USA SOURCING, INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 027210/0684 →
CHANGE OF NAME Recorded Nov 3, 2011
From: ALCATEL USA SOURCING, L.P.
To: ALCATEL USA SOURCING, INC.
Reel/Frame 027172/0684 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2006
From: ALCATEL IP NETWORKS
To: ALCATEL USA MARKETING, INC.
Reel/Frame 018449/0460 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 25, 2006
From: ALCATEL USA MARKETING, INC.
To: ALCATEL USA SOURCING, L.P.
Reel/Frame 018449/0475 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2004
From: SMALLWOOD, MARK A. L.; CLARKE, MICHAEL J.; FRENCH, MARK A.; LEA, MARTIN R.
To: ALCATEL IP NETWORKS, INC.
Reel/Frame 015265/0852 →