Bandwidth based selection for routing data
AssigneeCisco Technology, Inc.
InventorsDaniel A. Alvarez, Toerless Eckert
Life of this patent
Estimating the term…
Abstract
In one embodiment, a method for routing data flow during ECMP routing between two network nodes is provided. The method may comprise determining a bandwidth requirement of a data flow during ECMP routing, the data flow to be sent between at least two network nodes, the at least two network nodes communicating via a plurality of data paths. The method may further comprise determining the available bandwidth on each of the plurality of data paths and selecting the data path having sufficient bandwidth to accommodate the bandwidth of the data flow.
Claims18
A method comprising, at a network node:
- receiving from a requesting device an inbound multicast reception request for transmission of a multicast data flow to the requesting device via the network node, the requesting device being downstream of the network node for the multicast data flow;
- determining a bandwidth requirement of a the multicast data flow during equal-cost multi-path (ECMP) routing, the multicast data flow to be received by the network node from an upstream network node at one of a plurality of data path links at the network node, the upstream network node being upstream of the network node for the multicast data flow;
- determining respective bandwidth available for the multicast data flow via each of the plurality of data path links, and storing data indicative of the available bandwidth via each of the plurality of data path links in a memory;
- identifying from the plurality of data path links two or more candidate data path links, each candidate data path link individually satisfying the bandwidth requirement of the multicast data flow;
- using one or more processors, selecting a particular one of the two or more candidate data path links for reception of the multicast data flow, the particular data path link being selected based at least in part on the respective available bandwidth via each of the plurality of data path links;
- and
- communicating to the upstream network node the selection of the particular data path link for reception of the multicast data flow, to indicate that the upstream network node is to send the multicast data flow to the network node along only a particular data path, the particular data path corresponding to the particular data path link.
A system comprising:
- at least two network nodes comprising an upstream network node and a downstream network node that is downstream of the upstream network node for a multicast data flow;
- a multicast reception request processing module at the downstream network node to receive from a requesting node an inbound multicast reception request for transmission of the multicast data flow to the requesting node via the downstream network node, the requesting node being downstream of the downstream network node for the multicast data flow;
- a plurality of data paths extending between the at least two network nodes, the multicast data flow during equal-cost multi-path (ECMP) routing to be sent from the upstream network node to the downstream network node via one of the plurality of data paths;
- at the downstream network node, a plurality of data path links that connect the downstream network node to the plurality of data paths;
- a bandwidth determiner at the downstream network node to
- determine a required bandwidth of the multicast data flow,
- determine bandwidth respectively available for the multicast data flow via each of the plurality of data path links, and
- store bandwidth data indicative of the available bandwidth associated with each of the plurality of data links in a memory on the downstream network node;
- and
- a selector at the downstream network node to
- select, based at least in part on the bandwidth data, a particular data path link for reception of the multicast data flow from the upstream network node, the particular data path link being selected from or more of the plurality of data path links having sufficient available bandwidth to accommodate the bandwidth of the multicast data flow, and
- communicate to the upstream network node the selection of a particular data path by which the upstream network node is to send the multicast data flow to the downstream network node, the particular data path corresponding to the particular data path link.
A device comprising:
- an interface comprising a plurality of data path links to couple the device with a plurality of data paths capable of carrying data flows from an upstream network node to the device during equal-cost multi-path (ECMP) routing, so that the device is a downstream network node relative to the upstream network node for the data flows;
- a multicast reception request processing module to receive from a requesting node an inbound multicast reception request for transmission of a multicast data flow to the requesting node via the device, the requesting node being downstream of the device for the multicast data flow;
- a bandwidth determiner
- to determine a required bandwidth of the multicast data flow to be carried from, and
- to determine bandwidth available for the multicast data flow via each of the plurality of data path links;
- a memory to store bandwidth data indicative of the available bandwidth via each of the plurality of data path links;
- and
- a selector to select, based at least in part on the bandwidth data, a particular data path link from two or more of the plurality of data path links that have sufficient bandwidth to accommodate the bandwidth of the multicast data flow, and to communicate to the upstream network node selection of a particular data path by which the upstream network node is to send the multicast data flow to the device, the particular data path corresponding to the particular data path link.
Dependencies are inferred from the claim text.