The present invention is directed generally to communication networks and delivery of information over a Digital Subscriber Loop (DSL). More specifically, the present invention is directed to an improved method and apparatus for conveying multiple applications to and/or from the Customer Premises Equipment (CPE) requiring Virtual Circuits (VC) or other data paths of differing profiles or characteristics. Another aspect of the present invention is directed to an apparatus and method for dynamically re-partitioning the bandwidth allocated to each VC of differing profile on the DSL in order to optimize and utilize all available bandwidth on the DSL.
A conventional information delivery environment is represented generally by item 100 in
DSL Providers currently allocate bandwidth on a DSL in fixed proportions, based on the services that are being sold to the Subscriber. Typically the VC to each video STB 161 is provisioned with slowpath 143 to consume a particular fixed bandwidth Variable Bit Rate—Real Time (VBR-RT) VC on the DSL depending on the type of video subscribed, similarly this is repeated for each video channel required on the DSL. After all video applications are provisioned on the DSL 141, the remaining bandwidth on the DSL 141 is provisioned as Uncommitted Bit Rate (UBR) or generic VC 142 for use by the Subscriber for typically all other applications which are connected to the ISP 110. Since applications like gaming require fastpath, the remaining UBR channel is provisioned as fastpath. Once provisioned by the DSL Provider, these VCs remain static for each Subscriber indefinitely.
It is also a common practice of DSL Providers to simplify their networks and provisioning of DSL services by providing only one type of VC in the DSL, most often fastpath. This situation is shown generally by item 200 in
There are a number of shortcomings with the current art for the delivery of multiple applications over a single DSL to a Subscriber. When considering that all video VCs are not always in use at all times, it is apparent that the practice of the fixed provisioning of DSL bandwidth for video channels followed by the provisioning the balance of DSL bandwidth for all other applications is rigid and an inefficient use of bandwidth in that this does not allow the unused video bandwidth to be used for other applications. When a DSL link is provisioned with only one VC of low latency primarily to serve gaming applications, the delivery of other applications like video which require better immunity to noise require external circuits to add impulse noise protection to the transported data, which adds cost. Also, the rigidly provisioned VCs dedicated to a specific ISP or VSP, as required to accommodate the characteristics of the VC required to deliver the respective data, reduces the flexibility and choice of Subscribers to select from different ISPs or VSPs. For the DSL Provider, the requirement to provision each DSL VC for a specific collection of video channels and other applications sold to each Subscriber further complicate the provisioning process as it requires knowledge of each Subscriber installation, perhaps by survey or questionnaire when service is ordered or altered. Hence, further operation activities are necessary including collecting, provisioning, and administering the selections of each Subscriber all of which are prone to human error, and all of which add operation cost and slow the delivery of services.
An object of the preferred embodiments of the present invention is to obviate or mitigate one or more of the disadvantages inherent in conventional information delivery environments explained above.
In accordance with a preferred embodiment of the present invention, there is provided an apparatus which enhances the CO circuits delivering the DSL to the Subscriber. Preferably, for each Protocol Data Unit (PDU), the apparatus detects and classifies the type of media in the PDU and thus the corresponding type of application. Based on the detected media classification, the apparatus switches the PDU to a Virtual Circuit on the DSL that is suitable for that type of media PDU. In accordance with another preferred embodiment of the present invention there is provided an apparatus and method for monitoring each category of Virtual Circuit on the DSL to determine over a period of aggregation the relative utilization of each category of Virtual Circuit, and implementing a method or algorithm to dynamically re-provision the bandwidth of each Virtual Circuit periodically to reduce the bandwidth of underutilized Virtual Circuits and/or increase the size of categories of Virtual Circuits when increased data traffic for the Virtual Circuit increases. In accordance with further aspects of the preferred embodiments of the present invention, like concepts are applied at different parts of the information delivery environment, including, the Broadband Remote Access Server (BRAS), and the Subscriber CPE.
The preferred forms of the invention will now be described with reference to
Referring to
Referring to
The existing commercial CPE modems already deployed would be compatible with the invention as described, in that all ATM cells arriving on multiple VCs over the DSL are switched onto a shared network 151, which is usually ethernet but not limited to that protocol.
In yet another aspect of the present invention, the Media Classifier inspects all PDUs being transmitted to the Subscriber over DSL regardless of their source being either ISP, or VSP, or any other media provider. As a result, the Subscriber and DSL Provider are not bound to use specific ISP or VSP but rather may interact with many such providers, which gives the Subscriber and DSL Provider a wider choice of Service Provider.
In yet another aspect of the present invention, the Media Classifier provides a signal to the Bandwidth Manager each time a protocol data unit (PDU) requiring protection is switched. The Bandwidth Manager determines the appropriate allocation of bandwidth among the low latency, less protected VC, the higher latency, more protected VC, and any other VCs provisioned with differing characteristics. As the mechanisms for changing the allocation of bandwidth are slow compared with how fast the traffic content may change, the implementation of the Bandwidth Manager must have a fast attack and slow decay type of response. In other words when new data streams suitable for the protected path are identified by the Media Classifier the Bandwidth Manager must recognize the requirement for increased bandwidth on the selected path as quickly as possible; generally a response time on the order of milliseconds is required. On the other hand, when the data stream requiring protection ends the response of the Bandwidth Manager may be considerably slower; generally a response time on the order of seconds is acceptable. The Bandwidth Manager function can be more or less complex. Simple Bandwidth Manager implementations will rely on relatively crude estimates of the amount of bandwidth required for each stream requiring protection whereas more complex Bandwidth Manager functions will rely on a more complex and accurate estimates of the amount of bandwidth to allocate for the data streams requiring protection.
Referring to
A relatively simple implementation of the Bandwidth Manager is described. The Bandwidth Manager starts a separate timer for each unique stream by setting a counter to some pre-defined positive constant. At regular intervals, of the order of every few milliseconds, the Bandwidth Manager decrements the counters towards zero and counts the number of active timers. Each time a new signal is received for an existing unique id, the associated timer is reset to the pre-defined positive constant, thus preventing timeout of that stream. If the number of active timers has changed from the previous interval the Bandwidth Manager recalculates the bandwidth to be allocated. The calculation in this case is extremely simple with the bandwidth required to be set equal to some provisioned bandwidth “quanta” multiplied by the number of active timers. Once the new value of bandwidth is calculated the Bandwidth Manager communicates the new requirement to the modem function used to implement the physical layer reconfiguration necessary to adjust the bandwidth. The “fast attack” response time for increasing the protected bandwidth is determined by the fundamental interval used to update the timers. The “slow decay” response time is the multiple of the fundamental timer interval times the value of the pre-defined timer constant.
An alternate implementation of the Bandwidth Manager is described. This implementation offers the benefit of automatic adjustment in situations where multiple streams with significantly different bandwidth requirements require protection. For example multiple video streams may require widely varying amounts of bandwidth depending on the video resolution (e.g., standard definition versus high definition) and whether the encoding is real-time or off line (e.g., off line encoding of video sources typically achieves higher efficiency than on line encoding of video sources). In this implementation, the signal from the Media Classifier consists of the unique ID and a value indicating the size of the PDU. The adaptive Bandwidth Manager instantiates a digital filter. The filter output is updated at some regularly spaced fundamental time interval (e.g., on the order of milliseconds and obeying the principal of uniform sampling). The input to the digital filter at the end of each interval is the sum of the size values received in all of the signals received since the end of the previous interval. If no signals were received since the previous interval a zero value is input to the filter. The resulting variable at the output of the filter is an estimate of the total “data unit size per unit time” as conditioned by the filter. The attack and decay times can be adjusted by appropriate selection of the filter coefficients. The “data unit size per unit time” is translated to a bandwidth requirement estimate by dividing it by the time interval. The new bandwidth requirement estimate is compared to the currently allocated bandwidth. If the new estimate is larger or smaller than the current bandwidth estimate by a provisioned minimum amount a new value for the current bandwidth estimate is calculated by adding a provisioned value of excess bandwidth margin to the new estimate and rounding the result to an acceptable level of precision. This comparison approach combined with the technique of adding an amount of excess margin when recalculating the current bandwidth estimate provides a degree of hysterysis. This hysterysis is helpful in reducing the rate of bandwidth change requests. Once the new value of bandwidth is calculated the Bandwidth Manager communicates the new requirement to the modem.
A third implementation of the Bandwidth Manager is described. In this implementation the benefit of automatic adjustment to variable data rates is provided. The Media Classifier does not provide a direct indication of traffic requiring protection to the Bandwidth Manager. Instead after identification by the Media Classifier the traffic requiring protection is routed to a buffering function 333. The Bandwidth Manager monitors the depth of the buffer and operates in a closed loop fashion to maintain a desired (typically shallow) buffer depth. In this method, in addition to the buffering function, the adaptive Bandwidth Manager instantiates a digital filter. The input to the filter in this case is a value representing the depth of the data queued in the buffer minus a provisioned buffer depth target. The buffer depth variable is effectively a scaled version of the integral over time of the difference between the data inflow rate minus the data outflow rate. The filter output is updated at some regularly spaced fundamental time interval (e.g., on the order of milliseconds and obeying the principal of uniform sampling). The resulting variable at the output of the filter is an estimate of the average error in matching the desired target buffer depth. If the magnitude of the average depth error exceeds a provisioned threshold then a new bandwidth for the protected channel is calculated. This threshold provides an adjustable amount of hysterysis or “deadband.” Different thresholds may be used for positive and negative errors in which case the hysterysis provided is asymmetric. The asymmetry may be adjusted together with the filter coefficients to control the attack and decay times. The new value of bandwidth is increased for positive errors and decreased for negative errors. As in method one, once the new value of bandwidth is calculated, the Bandwidth Manager communicates the new requirement to the modem. The bandwidth increase or decrease can be implemented as either a fixed delta relative to the current bandwidth or a value proportional to the error.
The following consideration is given on the Bandwidth Manager algorithm dynamics and buffering requirements. The reprovisioning of the bandwidth of the collection of VCs in the VP always involve a degree of latency due to the reprovisioning protocol implemented by the modem. Thus, when the ingress rate of traffic requiring protection increases, there is a transient period when the ingress rate of the protected data exceeds the egress rate. For the most robust operation a FIFO buffering should be provided to absorb the excess data that accumulates during the transients. Appropriate margining of the bandwidth headroom will ensure that the excess accumulated data will “drain out” of the buffer once the bandwidth is increased, thus preventing a sustained buildup of data in the buffer. An alternative approach may be considered where some degree of data loss is tolerable. In this case the excess data may be discarded until the modem physical layer completes the bandwidth allocation request.
In yet another aspect of the present invention, the invention can be implemented in different part of the information delivery network. Referring to
In yet another aspect of the present invention, the same Media Classifier and Bandwidth Manager can be implemented in the CPE DSL modem for PDUs travelling upstream from the Subscriber to the CO.
Although the invention has been described with reference to certain specific embodiments, various modifications thereof will be apparent to those skilled in the art without departing from the spirit and scope of the invention as outlined in the claims appended hereto.
While this invention has been described as having a preferred design, it is understood that the preferred design can be further modified or adapted following in general the principles of the invention and including but not limited to such departures from the present invention as come within the known or customary practice in the art to which the invention pertains. The claims are not limited to the preferred embodiments and have been written to preclude such a narrow construction using the principles of claim differentiation.