System and method for provisioning a quality of service within a switch fabric
First Claim
1. A method for routing packets through a router in a network, comprising:
- receiving a bandwidth allocation request for routing a plurality of packets in the router, the bandwidth allocation request including a start time, a total data size, and a period of time for which to reserve the bandwidth, the router including a switch fabric configured to switch packets from one or more ingress line cards to one or more egress line cards;
measuring available bandwidth in the switch fabric in the router;
reserving bandwidth in the switch fabric for the period of time when the available bandwidth in the switch fabric is sufficient to support the requested bandwidth for the period of time; and
setting up a data connection when the bandwidth has been reserved and sending an error message otherwise to indicate that the bandwidth has not been reserved.
2 Assignments
0 Petitions
Accused Products
Abstract
To address the resources of the switch fabric, one embodiment of the invention provides a system and method for measuring the bandwidth of a switch fabric in addition to measuring the bandwidth in the line cards. The measured bandwidth is compared to the requirements of a routing request received in a controller. If the measured bandwidth of all resources, including the switch fabric, are sufficient to route data traffic in accordance with a predetermined SLA, then the controller reserves bandwidth in the switch fabric as well as in the line cards. Data can then be classified and queued in the line cards, and switched in the switch fabric, in accordance with the bandwidth reservations. Competing data traffic cannot rob the bandwidth in the switch fabric from the data having a bandwidth reservation. Thus, latency is controlled, and a predetermined QoS is met.
-
Citations
19 Claims
-
1. A method for routing packets through a router in a network, comprising:
-
receiving a bandwidth allocation request for routing a plurality of packets in the router, the bandwidth allocation request including a start time, a total data size, and a period of time for which to reserve the bandwidth, the router including a switch fabric configured to switch packets from one or more ingress line cards to one or more egress line cards; measuring available bandwidth in the switch fabric in the router; reserving bandwidth in the switch fabric for the period of time when the available bandwidth in the switch fabric is sufficient to support the requested bandwidth for the period of time; and setting up a data connection when the bandwidth has been reserved and sending an error message otherwise to indicate that the bandwidth has not been reserved. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for routing a data packet through a router in a network, comprising:
-
receiving the data packet at an ingress line card; measuring available bandwidth in a switch fabric in the router; reserving bandwidth, in the switch fabric in the router for routing the data packet based on the available bandwidth and a bandwidth request that includes a start time, a total data size, and a duration, the switch fabric configured to switch packets from one or more ingress line cards to one or more egress line cards; determining a next hop address for the data packet; determining a classification for the data packet; segmenting the data packet into a plurality of cells at the ingress line card; switching each of the plurality of cells through the switch fabric based on the classification for the data packet and using the reserved bandwidth in the switch fabric; queuing each of the plurality of cells in an egress line card after the switching; and aggregating at the egress line card the plurality of cells into the data packet before sending the packet out of the router. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for routing at least one packet through a node in a network, comprising:
-
means for receiving the data packet at an ingress line card; means for measuring available bandwidth in a switch fabric in the router; means for reserving bandwidth, in the switch fabric in the node for routing the data packet based on the available bandwidth and a bandwidth request that includes a start time, a total data size, and a duration, the switch fabric configured to switch packets from one or more ingress line cards to one or more egress line cards; means for determining a next hop address for the data packet; means for determining a classification for the data packet; means for segmenting the data packet into a plurality of cells at the ingress line card; means for switching each of the plurality of cells through the switch fabric based on the classification for the data packet and using the reserved bandwidth in the switch fabric; means for queuing in an egress line card each of the plurality of cells after the switching; and means for aggregating at the egress line card the plurality of cells into the data packet before sending the packet out of the node.
-
-
16. A system for routing a data packet through a network node, comprising:
-
a controller configured to determining a next hop address for the data packet; an ingress line card coupled to the controller and having its own processor, the processor of the ingress line card being configured to determine a classification of the data packet, segment the data packet into a plurality of cells, and queue each of the plurality of cells based on the classification and a predetermined reservation of bandwidth in the ingress line card; a switch fabric coupled to the ingress line card, the switch fabric configured to receive each of the plurality of cells from the ingress line card; and an egress line card coupled to the switch fabric, the switch fabric configured to switch each of the plurality of cells from the ingress line card to the egress line card based on a predetermined reservation of bandwidth in the switch fabric for a start time, a total data size, and a predetermined period of time, the bandwidth being reserved in the switch fabric for the period of time after measuring available bandwidth in the switch fabric and when there is enough available bandwidth in the switch fabric, the predetermined reservation being performed before the data packet is sent, the egress line card configured to aggregate the plurality of cells into the data packet before sending the packet out of the node.
-
-
17. A method for routing packets through a router in a network, comprising:
-
receiving a bandwidth allocation request in the router for a data traffic flow, the bandwidth allocation request including a bandwidth reservation with a start time, a duration, and a total amount of data to be transferred using the bandwidth reservation, wherein the bandwidth allocation is terminated after the total amount of data has been transferred, the router including a switch fabric configured to switch packets from one or more ingress line cards to one or more egress line cards; measuring available bandwidth in the switch fabric in the router; reserving bandwidth in the switch fabric for the bandwidth allocation request when the measuring indicates that bandwidth is available in the switch fabric to support the bandwidth reservation and the total amount of data; and replying to the bandwidth allocation request with a request succeeded message when bandwidth has been reserved and replying with an error message otherwise. - View Dependent Claims (18, 19)
-
Specification