You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

This page is under development

Introduction

Cable operators are interested in deploying high-speed data communications systems on cable television systems. A series of interface specifications have been prepared that will permit the early definition, design, development, and deployment of packet data over cable systems.
The data over cable service interface specification (DOCSIS) specifies the protocol for exchanging bidirectional transfer of Internet protocol (IP) traffic, between the cable system headend and customer locations.

When a cable company offers Internet access over the cable, Internet information can use the same cables. Putting both upstream and downstream data on the cable television system requires two types of equipment: a cable modem on the customer end and a cable modem termination system (CMTS) at the cable provider's end.

The CMTS takes the traffic coming in from a group of customers on a single channel and routes it to an Internet service provider (ISP) for connection to the Internet. At the head-end, the cable providers will have, or lease space for a third-party ISP to have, servers for accounting and logging, Dynamic Host Configuration Protocol (DHCP) for assigning and administering the IP addresses of all the cable system's users, and control servers.

RDK-B was designed to support any wide area network (WAN) type e.g DOCSIS, EPON. Gateways using RDK-B may provide a DOCSIS interface, but that DOCSIS code is typically tied to a particular piece of silicon and may even be provided by that silicon vendor. And the core philosophy of RDK-B was to be hardware and WAN type independent.

To address this situation, RDK-B does not include DOCSIS. It only includes components that provide an abstraction layer software interface to third party WAN. For the DOCSIS WAN, this component is known as the Cable Modem (CM) Agent. CM Agent provides interfaces for integrating WAN interfaces with RDK-B. RDK-B is not tied to DOCSIS and may be used with any WAN interface. Other RDK-B software components can be created that provide interfaces to other WANs.

Architecture


  • CM Agent is a CCSP component that exposes TR181 parameters related to CM/DOCSIS interface characteristics.
  • CM agent provides info like: Upstream channels, downstream channels, boot file name, DOCSIS log etc along with CM interface details.
  • Maintains a TR181 data model XML file with dbus object path as /com/cisco/spvtg/ccsp/cm
  • Has a layered architecture similar to any other CCSP component

Access Layer

  • Access Layer interfaces with the CCSP message bus
  • Receives any set or get calls and passes them onto the DML layer to manage the data which is in request.

Data Model Management Layer

  • Maintains the parameter list specified in Data model XML file.
  • Data Model Management Layer loads all data model access APIs from the Datamodel XML file
  • The data model implementation in shared library interfaces HAL Integration (backend) Layer by calling backend integration APIs.

CM Agent HAL Integration (backend) Layer, a.k.a, component specific HAL

  • This layer make calls to underlying HAL functions, Linux system calls/commands, third party modules, open source modules etc.
  • This layer will be more component specific.

Code Flow


Objects

CMAgent object in its DML layer:

Device.X_RDKCENTRAL-COM_CableModem.

Retrieve value using dmcli

$ dmcli eRT getv Device.X_RDKCENTRAL-COM_CableModem.
CR component name is: eRT.com.cisco.spvtg.ccsp.CR
subsystem_prefix eRT.
getv from/to component(eRT.com.cisco.spvtg.ccsp.cm): Device.X_RDKCENTRAL-COM_CableModem.
Execution succeed.
Parameter    1 name: Device.X_RDKCENTRAL-COM_CableModem.DsOfdmChanNumberOfEntries
               type:       uint,    value: 0
Parameter    2 name: Device.X_RDKCENTRAL-COM_CableModem.UsOfdmaChanNumberOfEntries
               type:       uint,    value: 0
Parameter    3 name: Device.X_RDKCENTRAL-COM_CableModem.StatusOfdmaNumberOfEntries
               type:       uint,    value: 0

CM HAL

This hardware abstraction layer (HAL) concept is used for every interface.

The CM HAL provides a well-defined software interface that cable modem software developers can use to interface to RDK-B.

cm_hal.c provides function call prototypes and structure definitions used for the RDK-Broadband CM HAL.

Some example APIs are listed below:

cm_hal_InitDB
docsis_InitDS
docsis_InitUS
cm_hal_GetCPEList
docsis_GetCertStatus
docsis_getCMStatus
docsis_GetDOCSISInfo
cm_hal_GetDHCPInfo




  • No labels