Dynamically delisting and relisting multicast destinations in a network switching node
First Claim
1. A method of reducing congestion in a network switching node, the method comprising:
- masking destination port designations that correspond to congested destinations in the switching node from a destination port field included in a first packet in a multicast queue of the switching node if a drop eligibility value within the packet indicates that destination port designations may be masked; and
dequeuing the first packet from the multicast queue to be forwarded to destination ports indicated by unmasked destination port designations in the destination port field, the dequeuing permitting advance of other packets in the multicast queue.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for reducing congestion in a network switching node. A congestion mask that indicates which of a plurality of destination ports in a network switching node are congested is generated and combined with a destination port field included in a packet in a multicast queue of the switching node to mask destination port designations in the destination port field that are indicated by the congestion mask to be congested if a drop eligibility field within the packet indicates that destination port designations are permitted to be masked. The packet is dequeued from the multicast queue to be forwarded to destination ports in the network switching node indicated by destination port designations in the destination port field not masked by the combination of the congestion mask with the destination port field.
100 Citations
39 Claims
-
1. A method of reducing congestion in a network switching node, the method comprising:
-
masking destination port designations that correspond to congested destinations in the switching node from a destination port field included in a first packet in a multicast queue of the switching node if a drop eligibility value within the packet indicates that destination port designations may be masked; and
dequeuing the first packet from the multicast queue to be forwarded to destination ports indicated by unmasked destination port designations in the destination port field, the dequeuing permitting advance of other packets in the multicast queue. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
generating a congestion mask that indicates which of a plurality of destination ports in the network switching node are congested; and
combining the congestion mask with the destination port designations in the destination port field to suppress destination port designations for the destination ports that are congested.
-
-
3. The method of claim 2 wherein generating the congestion mask comprises asserting a respective speedup signal for each of a plurality of virtual output queues in the switching node that is unable to receive incoming cells at an assigned rate, each speedup signal forming a portion of the congestion mask.
-
4. The method of claim 2 wherein generating the congestion mask comprises generating the congestion mask based on congestion information received from the destination ports.
-
5. The method of claim 1 further comprising:
-
issuing a request to a switching fabric included in the switching node to forward the first packet to the destination ports indicated by the unmasked destination port designations in the destination port field;
receiving a grant indication from the switching fabric granting the request to forward the first packet to the destination ports indicated by the unmasked destination port designations; and
wherein said dequeuing the first packet from the multicast queue is performed in response to the grant indication.
-
-
6. The method of claim 5 wherein masking destination port designations comprises generating a dynamic destination port mask by combining the destination port designations with a congestion mask that indicates which of a plurality of destination ports are congested, and wherein issuing a request to the switching fabric comprises transmitting information representative of the dynamic destination port mask to the switching fabric.
-
7. The method of claim 1 wherein masking destination port designations comprises generating a dynamic destination port mask by combining the destination port designations with a congestion mask that indicates which of a plurality of destination ports are congested, the destination port designations in the destination port field in the first packet remaining unchanged.
-
8. The method of claim 1 further comprising unmasking a previously masked destination port designation from a destination port field included in a second packet in the multicast queue in response to determining that a previously congested destination port that corresponds to the previously masked destination port designation has become uncongested.
-
9. The method of claim 1 wherein the first packet is a fixed length cell.
-
10. The method of claim 1 wherein the network switching node is an asynchronous transfer mode (ATM) switch.
-
11. The method of claim 1 further comprising determining whether the drop eligibility value exceeds a predetermined threshold, the drop eligibility value indicating that destination port designations may be masked if the drop eligibility value exceeds the predetermined threshold.
-
12. A method of reducing congestion in a network switching node, the method comprising:
-
generating a congestion mask that indicates which of a plurality of destination ports in the switching node are congested;
combining the congestion mask with a destination port field included in a packet in a multicast queue of the switching node to mask destination port designations in the destination port field that are indicated by the congestion mask to be congested if a drop eligibility field within the packet indicates that destination port designations are permitted to be masked; and
dequeuing the packet from the multicast queue to be forwarded to destination ports in the network switching node indicated by destination port designations in the destination port field not masked by said combining the congestion mask with the destination port field. - View Dependent Claims (13, 14, 15, 16)
-
-
17. An apparatus comprising:
-
a multicast queue to store a data packet destined for multiple network destinations; and
port mask generation circuitry to combine congestion information with a destination port field included in the data packet and a drop eligibility field included in the data packet to generate a dynamic destination port mask that indicates destination ports in a network switching node to which the data packet is to be forwarded, at least one destination port designation in the destination port field being masked in the dynamic destination port mask if the congestion information indicates that a corresponding one of the destination ports is congested and if the drop eligibility field contains a value that exceeds a predetermined threshold. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A network switching node comprising:
-
a switching fabric; and
a plurality of line cards coupled to the switching fabric, each of the line cards constituting at least one destination port in the network switching node, each of the line cards including a multicast queue to store a data packet destined for multiple network destinations, and port mask generation circuitry to combine congestion information with a destination port field included in the data packet and a drop eligibility field included in the data packet to generate a dynamic destination port mask that indicates to which of the destination ports in the network switching node the data packet is to be forwarded, at least one destination port designation in the destination port field being masked in the dynamic destination port mask if the congestion information indicates that a corresponding one of the destination ports is congested and if the drop eligibility field contains a value that exceeds a predetermined threshold. - View Dependent Claims (23)
-
-
24. An apparatus comprising:
-
a multicast queue to store a data packet destined for multiple network destinations; and
port mask generation circuitry to combine congestion information with a destination port field associated with the data packet and a drop eligibility field associated with the data packet to generate a dynamic destination port mask that indicates destination ports in a network switching node to which the data packet is to be forwarded, wherein a destination port designation in the destination port field is masked in the dynamic destination port mask if the congestion information indicates that a corresponding one of the destination ports is congested and if the drop eligibility field contains a value that indicates that the packet is eligible to be dropped. - View Dependent Claims (25, 26, 27, 28)
-
-
29. An apparatus for reducing congestion in a network switching node, the apparatus comprising:
-
means for masking destination port designations that correspond to congested destinations in the switching node from a destination port field associated with a first packet in a multicast queue of the switching node if a drop eligibility value within the packet indicates that destination port designations may be masked; and
means for dequeuing the first packet from the multicast queue to be forwarded to destination ports indicated by unmasked destination port designations in the destination port field, the dequeuing permitting advance of other packets in the multicast queue. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
means for generating a congestion mask that indicates which of a plurality of destination ports in the network switching node are congested; and
means for combining the congestion mask with the destination port designations in the destination port field to suppress destination port designations for the destination ports that are congested.
-
-
31. The apparatus of claim 30 wherein the means for generating the congestion mask further comprises means for asserting a respective speedup signal for each of a plurality of virtual output queues in the switching node that is unable to receive incoming cells at an assigned rate, each speedup signal forming a portion of the congestion mask.
-
32. The apparatus of claim 30 wherein the means for generating the congestion mask further comprises means for generating the congestion mask based on congestion information received from the destination ports.
-
33. The apparatus of claim 29 further comprising:
-
means for issuing a request to a switching fabric included in the switching node to forward the first packet to the destination ports indicated by the unmasked destination port designations in the destination port field; and
means for receiving a grant indication from the switching fabric granting the request to forward the first packet to the destination ports indicated by the unmasked destination port designations, wherein said dequeuing the first packet from the multicast queue is performed in response to the grant indication.
-
-
34. The apparatus of claim 33 wherein the means for masking destination port designations further comprises means for generating a dynamic destination port mask by combining the destination port designations with a congestion mask that indicates which of a plurality of destination ports are congested, and wherein the means for issuing a request to the switching fabric further comprises means for transmitting information representative of the dynamic destination port mask to the switching fabric.
-
35. The apparatus of claim 29 wherein the means for masking destination port designations further comprises means for generating a dynamic destination port mask by combining the destination port designations with a congestion mask that indicates which of a plurality of destination ports are congested, the destination port designations in the destination port field associated with the first packet remaining unchanged.
-
36. The apparatus of claim 29 further comprising means for unmasking a previously masked destination port designation from a destination port field associated with a second packet in the multicast queue in response to determining that a previously congested destination port that corresponds to the previously masked destination port designation has become uncongested.
-
37. The apparatus of claim 29 wherein the first packet is a fixed length cell.
-
38. The apparatus of claim 29 wherein the network switching node is an asynchronous transfer mode (ATM) switch.
-
39. The apparatus of claim 29 further comprising means for determining whether the drop eligibility value indicates that the packet is eligible to be dropped, the drop eligibility value indicating that destination port designations may be masked if the drop eligibility value indicates that the packet is eligible to be dropped.
Specification