RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
Table of Contents | ||
---|---|---|
|
Info |
---|
This page is under development |
This section summarises technical specifications for the operation of Multimedia Over Coax Alliance (MoCA) devices (“nodes”) using in-home coaxial wiring for the transport of multimedia content. It describes the MoCA node protocol stack and the physical network model.
The MoCA system network model creates a coax network which that supports communications between a convergence layer in one MoCA node to the corresponding convergence layer in another MoCA node. The protocol stack of a MoCA node is shown in Figure 1-1. The MoCA specification does not include layers above the convergence layer.
draw.io Diagram | ||||
---|---|---|---|---|
|
Figure 1-1: MoCA Node Protocol Stack
Physical Network Model
Typical in-home coaxial networks are configured as a branching tree topology. The point of connection to to the first splitter is called the Root Node. The MoCA nodes inside the home communicate with each other by having their signals traverse across one or more splitters. The signal path transmission between two MoCA nodes is the superposition of several individual paths. Each individual signal path may have a different magnitude and delay resulting in an aggregate signal path with frequency nulls, large attenuation, and significant delay spread. The MoCA Network will operate under these channel conditions.
draw.io Diagram | ||||
---|---|---|---|---|
|
Figure 1-2: A Typical In-home MoCA Network
MoCA object in its DML layer:
Code Block |
---|
Device.MoCA.Interface.
Device.MoCA.Interface.1.Enable
Device.MoCA.Interface.1.Status
Device.MoCA.Interface.1.Alias
Device.MoCA.Interface.1.Name
Device.MoCA.Interface.1.LastChange
Device.MoCA.Interface.1.LowerLayers
Device.MoCA.Interface.1.Upstream
Device.MoCA.Interface.1.MACAddress
Device.MoCA.Interface.1.FirmwareVersion
Device.MoCA.Interface.1.MaxBitRate
Device.MoCA.Interface.1.MaxIngressBW
Device.MoCA.Interface.1.MaxEgressBW
Device.MoCA.Interface.1.HighestVersion
Device.MoCA.Interface.1.CurrentVersion
Device.MoCA.Interface.1.NetworkCoordinator
Device.MoCA.Interface.1.NodeID
Device.MoCA.Interface.1.MaxNodes
Device.MoCA.Interface.1.PreferredNC
Device.MoCA.Interface.1.BackupNC
Device.MoCA.Interface.1.PrivacyEnabledSetting
Device.MoCA.Interface.1.PrivacyEnabled
Device.MoCA.Interface.1.FreqCapabilityMask
Device.MoCA.Interface.1.FreqCurrentMaskSetting
Device.MoCA.Interface.1.FreqCurrentMask
Device.MoCA.Interface.1.CurrentOperFreq
Device.MoCA.Interface.1.LastOperFreq
Device.MoCA.Interface.1.KeyPassphrase
Device.MoCA.Interface.1.TxPowerLimit
Device.MoCA.Interface.1.PowerCntlPhyTarget
Device.MoCA.Interface.1.BeaconPowerLimit
Device.MoCA.Interface.1.NetworkTabooMask
Device.MoCA.Interface.1.NodeTabooMask
Device.MoCA.Interface.1.TxBcastRate
Device.MoCA.Interface.1.TxBcastPowerReduction
Device.MoCA.Interface.1.QAM256Capable
Device.MoCA.Interface.1.PacketAggregationCapability
Device.MoCA.Interface.1.X_CISCO_COM_Reset
Device.MoCA.Interface.1.X_CISCO_COM_MixedMode
Device.MoCA.Interface.1.X_CISCO_COM_ChannelScanning
Device.MoCA.Interface.1.X_CISCO_COM_AutoPowerControlEnable
Device.MoCA.Interface.1.X_CISCO_COM_EnableTabooBit
Device.MoCA.Interface.1.X_CISCO_COM_CycleMaster
Device.MoCA.Interface.1.AutoPowerControlPhyRate
Device.MoCA.Interface.1.X_CISCO_COM_BestNetworkCoordinatorID
Device.MoCA.Interface.1.X_CISCO_NetworkCoordinatorMACAddress
Device.MoCA.Interface.1.X_CISCO_COM_ChannelScanMask
Device.MoCA.Interface.1.X_CISCO_COM_NumberOfConnectedClients
Device.MoCA.Interface.1.LinkUpTime
Device.MoCA.Interface.1.AssociatedDeviceNumberOfEntries
Device.MoCA.Interface.1.X_CISCO_COM_PeerTableNumberOfEntries
Device.MoCA.Interface.1.X_RDKCENTRAL-COM_MeshTableNumberOfEntries
Device.MoCA.Interface.1.Stats.BytesSent
Device.MoCA.Interface.1.Stats.BytesReceived
Device.MoCA.Interface.1.Stats.PacketsSent
Device.MoCA.Interface.1.Stats.PacketsReceived
Device.MoCA.Interface.1.Stats.ErrorsSent
Device.MoCA.Interface.1.Stats.ErrorsReceived
Device.MoCA.Interface.1.Stats.UnicastPacketsSent
Device.MoCA.Interface.1.Stats.UnicastPacketsReceived
Device.MoCA.Interface.1.Stats.DiscardPacketsSent
Device.MoCA.Interface.1.Stats.DiscardPacketsReceived
Device.MoCA.Interface.1.Stats.MulticastPacketsSent
Device.MoCA.Interface.1.Stats.MulticastPacketsReceived
Device.MoCA.Interface.1.Stats.BroadcastPacketsSent
Device.MoCA.Interface.1.Stats.BroadcastPacketsReceived
Device.MoCA.Interface.1.Stats.UnknownProtoPacketsReceived
Device.MoCA.Interface.1.Stats.Reset
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtAggrAverageTx
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtAggrAverageRx
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtCounterTableNumberOfEntries
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtAggrCounterTableNumberOfEntries
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtAggrCounterTable.1.Tx
Device.MoCA.Interface.1.Stats.X_CISCO_COM_ExtAggrCounterTable.1.Rx
Device.MoCA.Interface.1.QoS.X_CISCO_COM_Enabled
Device.MoCA.Interface.1.QoS.EgressNumFlows
Device.MoCA.Interface.1.QoS.IngressNumFlows
Device.MoCA.Interface.1.QoS.FlowStatsNumberOfEntries
Device.MoCA.Interface.1.X_CISCO_COM_PeerTable.1.PeerSpeed
Device.MoCA.Interface.1.X_CISCO_COM_PeerTable.2.PeerSpeed |
Moca Component registers with the CR using config files and xml files.
CcspMoCA.cfg specifies the datamodel, XmlConfig file CcspMoCADM.cfg which in turn specifies DmXml TR181-MoCA.XML
Column |
---|
CcspMoCA.cfg : Component> CcspMoCADM.cfg: <DataModels> |
Moca Component registers with the CR using config files and XML files.
CcspMoCA.cfg specifies the datamodel, XmlConfig file CcspMoCADM.cfg which in turn specifies DmXml TR181-MoCA.XML
Column |
---|
CcspMoCA.cfg : Component> CcspMoCADM.cfg: <DataModels> |
...
Data model south bound southbound API(board_sbapi) calls HAL APIs which which abstract hardware configuration and status fetching.
The implementation of HAL APIs depends on platform SDK because different SoC vendors have different implementations for Moca.
When When dmcli command is used to get or set a value, cosa_moca_dml.c in middle_layer_src is invoked.
...
Once the system is fully initialized, set the health as Green
g_pComponent_COMMON_moca->Health = CCSP_COMMON_COMPONENT_HEALTH_Green;
...
* ssp_CcdIfGetComponentAuthor
Some example APIs are listed below:
Code Block |
---|
moca_GetIfConfig / moca_SetIfConfig
moca_IfGetStaticInfo
moca_IfGetDynamicInfo
moca_IfGetStats
moca_GetNumAssociatedDevices
moca_GetAssociatedDevices
moca_FreqMaskToValue
moca_GetMocaCPEs
moca_HardwareEquipped |
Retrieve value using dmcli command
...
MoCA object in its DML layer:
Panel |
---|
Device.MoCA.Interface. |
Retrieve value using dmcli command
Code Block |
---|
$ dmcli eRT getv Device.MoCA.Interface.1.AssociatedDevice. CR component name is: eRT.com.cisco.spvtg.ccsp.CR subsystem_prefix eRT. getv from/to component(eRT.com.cisco.spvtg.ccsp.moca): Device.MoCA.Interface.1.AssociatedDevice. Execution succeed. Parameter 1 name: Device.MoCA.Interface.1.AssociatedDevice. |
...
Code Block |
---|
CR component name is: eRT.com.cisco.spvtg.ccsp.CR subsystem_prefix eRT. getv from/to component(eRT.com.cisco.spvtg.ccsp.moca)1.MACAddress type: string, value: 12:BF:60:2E:4F:0D Parameter 2 name: Device.MoCA.Interface.1.AssociatedDevice.1. Execution succeed.NodeID type: uint, value: 0 Parameter 13 name: Device.MoCA.Interface.1.AssociatedDevice.1.MACAddressX_CISCO_COM_RxBcastRate type: stringuint, value: 12:BF:60:2E:4F:0D630 Parameter 24 name: Device.MoCA.Interface.1.AssociatedDevice.1.NodeIDPreferredNC type: uintbool, value: 0false Parameter 35 name: Device.MoCA.Interface.1.AssociatedDevice.1.X_CISCO_COM_RxBcastRateHighestVersion type: uintstring, value: 63020 Parameter 46 name: Device.MoCA.Interface.1.AssociatedDevice.1.PreferredNCPHYTxRate type: booluint, value: false658 Parameter 57 name: Device.MoCA.Interface.1.AssociatedDevice.1.HighestVersionPHYRxRate type: stringuint, value: 20674 Parameter 68 name: Device.MoCA.Interface.1.AssociatedDevice.1.PHYTxRateTxPowerControlReduction type: uint, value: 65830 Parameter 79 name: Device.MoCA.Interface.1.AssociatedDevice.1.PHYRxRateRxPowerLevel type: uintint, value: 674-47 Parameter 810 name: Device.MoCA.Interface.1.AssociatedDevice.1.TxPowerControlReductionTxBcastRate type: uint, value: 30641 Parameter 911 name: Device.MoCA.Interface.1.AssociatedDevice.1.RxPowerLevelRxBcastPowerLevel type: intuint, value: -470 Parameter 1012 name: Device.MoCA.Interface.1.AssociatedDevice.1.TxBcastRateTxPackets type: uint, value: 6415509 Parameter 1113 name: Device.MoCA.Interface.1.AssociatedDevice.1.RxBcastPowerLevelRxPackets type: uint, value: 020680 Parameter 1214 name: Device.MoCA.Interface.1.AssociatedDevice.1.TxPacketsRxErroredAndMissedPackets type: uint, value: 55090 Parameter 1315 name: Device.MoCA.Interface.1.AssociatedDevice.1.RxPacketsQAM256Capable type: uintbool, value: 20680true Parameter 1416 name: Device.MoCA.Interface.1.AssociatedDevice.1.RxErroredAndMissedPacketsPacketAggregationCapability type: uint, value: 01 Parameter 1517 name: Device.MoCA.Interface.1.AssociatedDevice.1.QAM256CapableRxSNR type: booluint, value: true8 Parameter 1618 name: Device.MoCA.Interface.1.AssociatedDevice.1.PacketAggregationCapabilityActive type: uintbool, value: 1true Parameter 1719 name: Device.MoCA.Interface.1.AssociatedDevice.1.RxSNRX_CISCO_COM_NumberOfClients type: uint, value: 80 Parameter 1820 name: Device.MoCA.Interface.1.AssociatedDevice.12.ActiveMACAddress type: boolstring, value: trueD4:0A:A9:1B:5D:5C Parameter 1921 name: Device.MoCA.Interface.1.AssociatedDevice.1.X_CISCO_COM_NumberOfClients2.NodeID type: uint, value: 02 Parameter 2022 name: Device.MoCA.Interface.1.AssociatedDevice.2.MACAddressX_CISCO_COM_RxBcastRate type: stringuint, value: D4:0A:A9:1B:5D:5C271 Parameter 2123 name: Device.MoCA.Interface.1.AssociatedDevice.2.NodeIDPreferredNC type: uintbool, value: 2true Parameter 2224 name: Device.MoCA.Interface.1.AssociatedDevice.2.X_CISCO_COM_RxBcastRateHighestVersion type: uintstring, value: 27111 Parameter 2325 name: Device.MoCA.Interface.1.AssociatedDevice.2.PreferredNCPHYTxRate type: booluint, value: true277 Parameter 2426 name: Device.MoCA.Interface.1.AssociatedDevice.2.HighestVersionPHYRxRate type: stringuint, value: 11272 Parameter 2527 name: Device.MoCA.Interface.1.AssociatedDevice.2.PHYTxRateTxPowerControlReduction type: uint, value: 27729 Parameter 2628 name: Device.MoCA.Interface.1.AssociatedDevice.2.PHYRxRateRxPowerLevel type: uintint, value: 272-53 Parameter 2729 name: Device.MoCA.Interface.1.AssociatedDevice.2.TxPowerControlReductionTxBcastRate type: uint, value: 29274 Parameter 2830 name: Device.MoCA.Interface.1.AssociatedDevice.2.RxPowerLevelRxBcastPowerLevel type: intuint, value: -530 Parameter 2931 name: Device.MoCA.Interface.1.AssociatedDevice.2.TxBcastRateTxPackets type: uint, value: 2744198 Parameter 3032 name: Device.MoCA.Interface.1.AssociatedDevice.2.RxBcastPowerLevelRxPackets type: uint, value: 0102237 Parameter 3133 name: Device.MoCA.Interface.1.AssociatedDevice.2.TxPacketsRxErroredAndMissedPackets type: uint, value: 41980 Parameter 3234 name: Device.MoCA.Interface.1.AssociatedDevice.2.RxPacketsQAM256Capable type: uintbool, value: 102237true Parameter 3335 name: Device.MoCA.Interface.1.AssociatedDevice.2.RxErroredAndMissedPacketsPacketAggregationCapability type: uint, value: 01 Parameter 3436 name: Device.MoCA.Interface.1.AssociatedDevice.2.QAM256CapableRxSNR type: booluint, value: true8 Parameter 3537 name: Device.MoCA.Interface.1.AssociatedDevice.2.PacketAggregationCapabilityActive type: uintbool, value: 1true Parameter 3638 name: Device.MoCA.Interface.1.AssociatedDevice.2.RxSNRX_CISCO_COM_NumberOfClients type: uint, value: 80 Parameter 3739 name: Device.MoCA.Interface.1.AssociatedDevice.23.ActiveMACAddress type: boolstring, value: true38:5F:66:16:2C:D1 Parameter 3840 name: Device.MoCA.Interface.1.AssociatedDevice.2.X_CISCO_COM_NumberOfClients3.NodeID type: uint, value: 03 Parameter 3941 name: Device.MoCA.Interface.1.AssociatedDevice.3.MACAddressX_CISCO_COM_RxBcastRate type: stringuint, value: 38:5F:66:16:2C:D1629 Parameter 4042 name: Device.MoCA.Interface.1.AssociatedDevice.3.NodeIDPreferredNC type: uintbool, value: 3false Parameter 4143 name: Device.MoCA.Interface.1.AssociatedDevice.3.X_CISCO_COM_RxBcastRateHighestVersion type: uintstring, value: 62920 Parameter 4244 name: Device.MoCA.Interface.1.AssociatedDevice.3.PreferredNCPHYTxRate type: booluint, value: false684 Parameter 4345 name: Device.MoCA.Interface.1.AssociatedDevice.3.HighestVersionPHYRxRate type: stringuint, value: 20674 Parameter 4446 name: Device.MoCA.Interface.1.AssociatedDevice.3.PHYTxRateTxPowerControlReduction type: uint, value: 68430 Parameter 4547 name: Device.MoCA.Interface.1.AssociatedDevice.3.PHYRxRateRxPowerLevel type: uintint, value: 674-50 Parameter 4648 name: Device.MoCA.Interface.1.AssociatedDevice.3.TxPowerControlReductionTxBcastRate type: uint, value: 30641 Parameter 4749 name: Device.MoCA.Interface.1.AssociatedDevice.3.RxPowerLevelRxBcastPowerLevel type: intuint, value: -500 Parameter 4850 name: Device.MoCA.Interface.1.AssociatedDevice.3.TxBcastRateTxPackets type: uint, value: 6412081 Parameter 4951 name: Device.MoCA.Interface.1.AssociatedDevice.3.RxBcastPowerLevelRxPackets type: uint, value: 08589 Parameter 5052 name: Device.MoCA.Interface.1.AssociatedDevice.3.TxPacketsRxErroredAndMissedPackets type: uint, value: 20810 Parameter 5153 name: Device.MoCA.Interface.1.AssociatedDevice.3.RxPacketsQAM256Capable type: uintbool, value: 8589true Parameter 5254 name: Device.MoCA.Interface.1.AssociatedDevice.3.RxErroredAndMissedPacketsPacketAggregationCapability type: uint, value: 01 Parameter 5355 name: Device.MoCA.Interface.1.AssociatedDevice.3.QAM256CapableRxSNR type: booluint, value: true8 Parameter 5456 name: Device.MoCA.Interface.1.AssociatedDevice.3.PacketAggregationCapabilityActive type: uintbool, value: 1true Parameter 5557 name: Device.MoCA.Interface.1.AssociatedDevice.3.RxSNR.X_CISCO_COM_NumberOfClients type: uint, value: 8 Parameter 56 name: Device.MoCA.Interface.1.AssociatedDevice.3.Active type: bool, value: true Parameter 57 name: Device.MoCA.Interface.1.AssociatedDevice.3.X_CISCO_COM_NumberOfClients type: uint, value: 0 |
...
0 |
Some example APIs are listed below:
APIs |
---|
moca_GetIfConfig |
moca_SetIfConfig |
moca_IfGetStaticInfo |
moca_IfGetDynamicInfo |
moca_IfGetStats |
moca_GetNumAssociatedDevices |
moca_GetAssociatedDevices |
moca_GetResetCount |
moca_GetFlowStatistics |
moca_HardwareEquipped |
moca_getIfScmod |
moca_getIfAcaStatus |
moca_cancelIfAca |
moca_getIfAcaConfig |
moca_setIfAcaConfig |
moca_GetFullMeshRates |
moca_FreqMaskToValue |
moca_GetMocaCPEs |
moca_IfGetExtAggrCounter |
moca_IfGetExtCounter |
...