PNM Series: The Business Case for a Common Collection Framework

Jason Rupe
Principal Architect

Nov 7, 2017

This is the second in our series on Proactive Network Maintenance (PNM). If you missed our introduction to PNM, you can check out the first entry which explains some background on the subject.

PNM is our CableLabs project focused on assuring cable service provider companies can maintain the network at a level of quality so that major impacts to service are avoided. The proactive part means the maintenance happens before the customer’s service is impacted. But, to do this well, a service provider must collect data from the network. However, collecting data from the network in a way that doesn’t impact service is not easy.

What is the Common Collection Framework?

The Common Collection Framework is a set of Python software modules that handle the task of collecting PNM data from the network elements and presenting the data to PNM applications. It provides the data in a common form so that software applications don’t have to talk network language to get the data it needs. It also protects the network from overly frequent data requests, which can impact service.

CableLabs created a DOCSIS® Common Collection Framework (DCCF) and a Wi-Fi Common Collection Framework (WCCF). We have also started the creation of an optical-centered collection framework. We may even create an in-home wired (MoCA) framework if members express the need. To keep the usage model simple, CableLabs intends to join these frameworks into a combined Common Collection Framework (XCCF). Because cable services are provided over a network comprised of many different technologies, CableLabs is making it easy for members to use the right mix of collection frameworks to get data from the right network elements for their needs.

CableLabs recently released an architecture document to the public that describes the DCCF in detail. You can obtain a copy at this link and reference it in your work. The document describes what the DCCF is, as well as the intended architecture for XCCF. There is also a partner document reporting on the Wireless Common Collection Framework, available here.

What’s Under the Hood?

Briefly, the XCCF is a set of Python modules that work in concert to set up the network for polling using Simple Network Management Protocol (SNMP), manages requests for PNM data, and stores Trivial File Transfer Protocol (TFTP) output in native form or SNMP results in JavaScript Object Notation (JSON) files. If that seems confusing, just know that we are providing the network data in easy to use forms. Applications can then request data from the XCCF data based on time parameters and data types. So, if the needed data are already there, the applications can receive what they need right away. Or, if the data are not there, then the XCCF can obtain the needed data and provide it in a timely manner. There are a lot of actions that can go wrong in these transactions, so CableLabs has worked hard to build a flexible architecture that supports many possible PNM approaches.

Because the PNM data are presented in the formats presented by the network, existing applications shouldn’t have trouble connecting to the XCCF to obtain its data. Translator software takes the output from the network and gets it ready for applications to use.

Why did CableLabs build it?

A PNM application or program needs data to drive it - obtaining the data required can be a significant request to network elements. Service providers need to know that the network isn’t impacted by PNM requests, so they need some level of control to assure service is the priority. Further, there are potentially numerous PNM applications that need the same data, so having every application impact the network in uncoordinated ways is not efficient, and not necessarily customer friendly. A PNM program that utilizes multiple applications needs a common collection capability to support the applications and relieve the network.

There are clear advantages to using the XCCF to support network operations:

  • It provides one polling mechanism to manage, serving all applications.
  • Building your own applications, and supporting purchased applications, becomes easier with the XCCF.
  • The network isn’t overly taxed with data requests, so it can be ruled out as a cause when there is a problem.
  • You get clear separation from the network and the applications, which fits the way operations are usually organized.
  • Updating is easy between the applications and the network when you have the XCCF as the point to manage those changes, and XCCF is built to support that.
  • XCCF is extensible, and we have loads of great ideas to consider on the roadmap.
  • Because XCCF is based on SDN architecture concepts, scaling is understood, and high reliability is supported.
  • Because it is accessible by all CableLabs members, any member can use it to test out a PNM capability in a field trial to learn about its benefits to their business.

There is quantifiable business value here too!

  • Testing a new PNM capability within operations is easier and more realistic when the data are already presented to the applications in a common way, reducing the uncertainty in the payback of a PNM business case.
  • Using the XCCF can streamline implementation of PNM applications in a PNM program, making the business case for PNM pay back faster.
  • CAPEX is lower because simpler, cheaper PNM solutions can enter operations and scale better when small applications can be pointed to existing XCCF instances.
  • OPEX is lower because applications are separate from the network, and the XCCF interface can be rapidly, easily maintained.
  • PNM advantages are achievable because a significant effort in any PNM program is solved with the XCCF. It avoids scaling risks that could otherwise increase the OPEX of a PNM program.

For all these reasons, CableLabs heard from our members that an XCCF capability was needed, so we responded.

Where do I get a copy?

CableLabs members can obtain a copy here. Vendors who are willing to sign the necessary CableLabs agreements can also obtain a copy. We hope our community can contribute feedback, and potentially contribute code as well, to the XCCF. We also look toward the community to drive our roadmap for the XCCF, providing input to what capabilities need to be supported with the highest priorities.

Don't forget to subscribe to our blog to read more about PNM in the future.