Patent ID: 7330475
Filing Date: 2008-02-12
Classification: H04L

Abstract:
1. A method for sharing the available switching bandwidth for transferring cells of unicast and multicast flows in an asynchronous switching node, the method comprising: n1 input modules (ITM said cell switching network routes a cell transmitted by an input module to a single given recipient output module (OTMd) in the case of a cell of a unicast flow, and to N given recipient output modules (OTMa, . . . , OTMn), among the n2 output modules of the node, in the case of a cell of a multicast flow, said cell switching network generating the corresponding N copied cells from the cell transmitted by an input module for the multicast flow; each input module is equipped with buffer stores for temporarily storing cells of said unicast and multicast flows, and the departure of said stored cells from said buffer stores to said switching network is controlled at service times that depend on a cell service rate attributed to each of the flows of cells; an internal flow control mechanism performs a first step for preparing a bandwidth request parameter (BRi/j) for each of the module pairs (ITMi/OTMj) relating to a given input module (ITMi) and a given output module (OTMj), by cumulating the various individual bandwidth requests (U BR[i/j]p) of the various unicast flows (UF[i/j]p) associated with this module pair, then a second step for sharing, for each given output module (OTMj), the bandwidth available for the cell traffic from all the unicast flows having this same given output module (OTMj) as recipient, according to the respective bandwidth request parameters (BRi/j) prepared for the various module pairs (ITMi, OTMj) having this same given output module (OTMj) as recipient, then a third step for supplying, to each of the input modules (ITMi) and for each of the module pairs (ITMi/OTMj), a bandwidth allocation parameter (BGi/j), and finally a fourth step for distribution, for each of the module pairs (ITMi, OTMj), determining, based on the bandwidth allocation parameter (BGi/j) for this pair, the individual bandwidth allocation (U-BG[i/j]p) distributed for each of the unicast flows (UF[i/j]p) associated with this pair, this bandwidth allocation (U-BG[i/j]p) forming said cell service rate (SSR[i/j]p) attributed to each of these flows; wherein the transfer of a cell of a multicast flow (MF[i/a . . . n]q) via the switching network to N given recipient output modules (OTMa, . . . , OTMn) is considered as being equivalent to the simultaneous transfer of N cells of N respective virtual unicast flows (VUF[i/a]q, . . . , VUF[i/n]q) to these same N recipient output modules (OTMa, . . . , OTMn); wherein the method further comprises a fifth step for converting before said first step, in each of the input modules (ITMi), the individual bandwidth request (M BR[i/a . . . n]q) of each multicast flow (MF[i/a . . . n]q) to N individual bandwidth requests (VU-BR[i/a]q, . . . , VU-BR[i/n]q) associated with said N equivalent virtual unicast flows (VUF[i/a]q, . . . , VUF[i/n]q) associated with this multicast flow; wherein said first step for preparing, for each of the module pairs (ITMi, OTMj), a bandwidth request parameter (BRi/j) is performed therefore by cumulating the individual bandwidth requests (U-BR[i/j]p) of the various real unicast flows (UF[i/j]p) associated with this module pair, and the individual bandwidth requests (VU-BR[i/j]q) converted for the various virtual unicast flows (VUF[i/j]q), also associated with this module pair; wherein said internal flow control mechanism performs said second step of sharing and third step of supplying, based on bandwidth request parameters (BRi/j) and bandwidth allocation parameters (BGi/j), per module pair (ITMi/OTMj), thus obtained; wherein said fourth step of distribution, of said internal flow control mechanism, then determines, based on each of the bandwidth allocation parameters (BGi/j) per module pair, the individual bandwidth allocation (U BG[i/j]p) distributed for each of the real unicast flows (UF[i/j]p) associated with this pair, and the individual bandwidth allocation (VU-BG[i/j]q) distributed for each of the virtual unicast flows (VUF[i/j]q), also associated with this module pair, which correspond to multicast flows (MF[i/a . . . n]q) having the output module (OTMj) of this pair among its N recipient output modules; and wherein the method further comprises a sixth step for determining the individual bandwidth allocation (M-BG[i/a . . . n]q) for each of the multicast flows (MF[i/a . . . n]q), taking into account the various individual bandwidth allocations (VU-BG[I/a]q, VU-BG[i/n]q) distributed for each of the N equivalent virtual unicast flows (VUF[i/a]q, VUF[i/n]q) associated with this multicast flow (MF[i/a . . . n]q).