As cable service offerings grow to include richer libraries of on-demand content, expanded choices of entertainment-quality long-tail content, over-the-top user-created video and more, the need to abstract services from the underlying network is an imperative. Resource management is necessary because the quadrature amplitude modulation (QAM) channels used for digital simulcast, switched digital video (SDV) and video on demand (VOD), along with the DOCSIS QAM channels in the cable modem termination system (CMTS) are all independent of each other and, consequently, do not allow for the sharing of services, resulting in stranded resources.
Two alternative resource management architectures are being discussed within the industry to meet these needs. Global session resource management is a tightly coupled (session manager to edge resource manager, or ERM) management scheme that typically uses both session managers and session resource managers (SRMs) that allocate and autonomously manage universal edge QAM resources, while edge resource management is a loosely coupled (session managers to ERM) management scheme that typically uses external SDV and VOD session managers that interact through a single ERM to manage edge assets. Definitions The global session resource management architecture typically leverages a global session resource manager (GSRM) and one or more SRMs, while edge resource management architectures typically leverage an ERM and one or more session managers. Although different, these architectures can achieve the same results when managing edge resources. Having two architectures can benefit the industry by promoting innovation and allowing choice to suit different needs. Global Session Resource Management Figure 1 shows the functions within an SRM, which include both a session manager and resource manager. The resource manager controls edge resources for the sessions that belong to the corresponding session manager within the SRM. Session management includes communicating with client software, generally residing in a set-top box, and setting up and tearing down VOD sessions or channel changes with SDV. The resource manager communicates directly with the QAM modulator in order to acquire or release resources for each session. Figure 2 shows the functions performed by the GSRM, which contains both session manager and resource manager functions as well as a global resource manager that allocates QAM resources to the other SRMs in the system. Allocation of resources to an SRM is generally made in bulk, meaning that some number of QAM channels will be assigned to each SRM based on expected peak traffic loading. Once the resources are assigned, the SRMs manage those resources without further intervention with the GSRM. The global resource manager (and hence the GSRM) arbitrates requests for edge resources at multiple levels, including system startup and when the SRMs may request additional capacity. To function at the highest level, the GSRM must be aware of how the resources are being allocated to the various services at all times to best prioritize the use of those resources.
Figure 3 shows how the GSRM and SRM interact with each other and a universal edge QAM modulator while they are starting up, apportioning resources and arbitrating resource requests during steady-state operation. The arrows are meant to illustrate that these steps generally occur once during startup, and the resource allocations are then static during the operation of the system. However, "static" is a relative term, and the SRMs can at times of peak usage request additional resources from the GSRM. By step 1, the global resource manager has been configured with information about, or performs an auto-discovery process with, the edge devices. In this way, the global resource manager learns of the capabilities of the edge devices over which it has control.
In step 2, the resource manager associated with the GSRM starts up and requests resources from the global resource manager, which then provides a bulk allocation of QAM channels to that resource manager. Similarly, in step 3 the resource managers associated with other SRMs start up and request QAM resources from the global resource manager. After the startup procedure, each of the resource managers will have been allocated QAM resources. The global resource manager uses various algorithms to allocate QAM channels to the SRMs, including allocating some of the QAM channels while holding some in reserve for times of peak usage.
Figure 4 shows how the GSRM architecture operates during steady-state operation. When a session request is received by a session manager, it requests resources from its resource manager; if successful, the resource manager assigns the resources on the edge device. The circular arrows are meant to illustrate how, during steady-state operation, the session managers and resource manager are interacting in real time with many transactions per second occurring, and, similarly, the resource managers are interacting with the universal edge QAM modulators to use the assigned QAM channels. In a steady-state mode, the session manager can only create sessions within the QAM resources that have been allocated to its resource manager; if the resource manager has no resources available for a session, that session will be blocked, and the user will receive an error message. Note also in the GSRM architecture that the QAM channel can have interfaces to multiple resource managers. Edge resource management This approach uses one ERM and one or more session managers, as shown in Figure 5. The ERM and session manager are considered separate functions that generally reside in separate network devices to allow each function to scale independently of the other. It is possible, however, for the functions to be implemented in a single physical device.
An ERM is the single device that communicates with and has knowledge of all edge resources, as shown in Figure 6. At initialization, the edge devices and ERM communicate to share information about the available edge resources. The session managers neither communicate directly with the edge device nor allocate edge resources. The session managers only do session management, and every time a session needs edge resources, that session manager requests those resources from the ERM. When a session ends, the session manager tears down the session and notifies the ERM that the resources associated with that session are no longer needed. The ERM in turn de-allocates the resources from the edge device, and these resources can now be used for another session. At steady state, the session managers are communicating with the ERM, and the ERM is communicating with the edge devices, as shown in Figure 7. The circular arrows are meant to illustrate how this is a real-time exchange with many transactions per second occurring. This figure illustrates how all the edge resources are managed by the ERM. In steady-state mode, the ERM will place a video session on whichever QAM channel it deems appropriate. The resource allocation algorithm applied by the ERM could either be static—that is, it uses pre-determined QAM channels for each service—or the ERM could place sessions from different services onto the same QAM channel. Comparing GSRM and ERM Both the GSRM and ERM approaches can be customized for a particular set of business rules and cable applications.
Within a GSRM architecture, the SRM is constrained to just the edge resources it has been allocated; however, a particular implementation may allow an SRM to request additional edge resources from the GSRM during periods of peak operation. If the GSRM allocates additional edge resources to the SRM, that SRM may manage within those resources as it sees fit and provide an opportunity for innovation within the session managers of emerging services.
Within the ERM architecture, the session manager can only request edge resources; all of the edge resources are allocated and managed by the ERM, which allows for centralized management of all edge devices. Centralized management could allow for more efficient allocation of edge resources between different services such as SDV and VOD. This efficiency, however, could come at the cost of more tightly constraining implementations and innovation in the session managers. QAM Resource Sharing This use case considers operation during peak usage when session managers or SRMs are requesting more sessions than resources allow. Figure 8 shows one way to implement QAM channel allocations between two services with a third set of QAM channels into which either service can overflow. When initializing a GSRM system, the SDV and VOD SRMs are each allocated QAM channels. If an SRM experiences a peak in sessions and needs additional QAM resource capacity, that SRM requests additional capacity from the GSRM. If the GSRM grants resources, the SRM can use those QAM channels, which is useful when the services have peak busy rates at different times during the day. Additionally, the system could manage QAM channels that have different capabilities; for example, QAM channels with session-based encryption could be managed in one pool, and QAM channels without encryption resources could be managed as another pool.
Continuing this use case, Figure 9 shows a scenario where one service can overflow into the resources assigned to another service. In this example, the VOD service is peaking, and its SRM has requested (and been assigned) all the overflow QAM channels and, based on business policy rules, has been assigned QAM channels that had previously belonged to the SDV SRM. When the GSRM de-allocates resources from the SDV SRM, the SDV SRM has to move SDV sessions from those QAM channels (which have been re-tasked to VOD) to other SDV QAM channels. The GSRM is the ultimate manager of edge resources, and the SRMs have to obey its orders and do what is necessary. In both Figures 8 and 9, the system needs a way to reclaim unused capacity when it is no longer needed by an SRM. Either the SRM can determine it has excess unused capacity and return that capacity to the GSRM, or the GSRM can poll the SRMs for their resource utilization and reclaim resources as needed.
While the use cases illustrated in Figures 8 and 9 were described for the GSRM architecture, they can be implemented within an ERM architecture. The ERM would just assign session manager requests to a particular QAM channel or set of QAM channels on a real-time basis and would manage the overflow of one service into a QAM channel or group of QAM channels. If one service needs additional resources, the ERM could instruct a session manager to free up QAM resources by either moving those sessions to another QAM channel or just tearing down sessions. For example, if the VOD SDV needed additional resources, initially the SDV session manager could tear down heuristics sessions; however, ultimately the ERM could be responsible for managing edge resources and could prioritize certain sessions based on business rules. Conclusion There are two emerging architectures for edge resource management. Additionally, the emergence of a universal edge QAM modulator that supports multiple services, including digital video and data, is a key benefit of edge resource management. By migrating to a universal edge QAM modulator, operators will have an option to defeat QAM silos, which have sprung up around individual services, thereby making their inventory management and operations easier. Edge resources are finite, and policy tools will emerge to allow those resources to be managed to achieve business goals. These tools will enable the ability to dynamically assign and repurpose services to universal QAM channels as needed to fit an ever-changing mix of services and business models.
Doug Jones is chief architect for BigBand Networks. Reach him at Doug.Jones@bigbandnet.com. Charles Hasek is principal engineer for Time Warner Cable. Reach him at firstname.lastname@example.org. This article is based on a paper presented at the SCTE 2008 Conference on Emerging Technologies.