RDKB – IOT GATEWAY INTODUCTION
Khem Raj
Linaro Connect BKK16
BKK16-205 March 8, 2016
•  What is RDKB ?
•  Unique Features
•  Why Use RDKB ?
•  Component based Architecture.
•  Components
•  High Level Architecture
•  Getting Access
•  QA
AGENDA
•  RDKB – Broadband profile for RDK
•  Shared BSP infrastructure with RDKVideo
•  Shared logging, crash reporting, system management
•  Over 2 million devices deployed
INTRODUCTION
•  DOCSIS 3.0
•  eMTA
•  Private Wi-Fi
•  Public Wi-FI
•  MoCa 2.0
•  eMTA
•  Local Admin Pages
•  MoCA extender support
•  Bridge Mode support
•  IPv6
•  Cloud Gateway support (VRG)
•  HNAP protocol support for Home Security
•  2.4/5G Band support
•  Provisioning
•  WPS
•  SNMP
•  TR-69
RDKB FEATURES
•  Http Code Download
•  Xconf support for finer control of code download
•  WebPA Support
•  RDK Logs
•  RDK Metrics
•  Video over Wi-Fi
•  Wi-Fi-MoCA bridge forVideo
•  IP table for packet tracking
•  Support for Cloud Admin
•  Forced Wi-Fi personalization
•  Connect/Disconnect Notification
•  RSSI Reporting
•  Self Healing
RDKB UNIQUE FEATURES
•  Zigbee HA 1.2 Hub
•  Thread
•  Bluetooth LE
•  Device System Bridge to connect Zigbee/Thread/BLE
•  Alljoyn/OIC Connectors
•  IoT Cloud Adapter for Cloud Connectivity
•  Local Rules Engine
•  Easy Onboarding of devices
IOT FEATURES
•  High SoftwareVelocity
–  Architecture supports plug-in component modules – all using Linux D-Bus
–  Teams can create components in parallel
–  Leverages open source within Architecture Framework and within components
•  Supports multiple management protocols and data models
–  TR-069 withTR-181,WEBPA withTR-181, SNMP, CLI via UART/SSH, easily extensible
•  Support single and multi-core CPU architectures
•  No component level code change needed to repartition software
–  D-Bus extends common architecture across CPUs
•  Easily portable to support multiple SoC vendors
–  Supported through component level abstraction layers
–  Leverages the ability to repartition across single core, multi-core and multi-CPU
•  Supports IOT
–  AllJoin
–  Iotivity (Part of OE/Yocto supported layer, can be pulled in on demand)
–  Thread
•  Integrated logging infrastructure with head-end
ADVANTAGES OF RDKB
•  WEB-PA
–  Complete solution for
•  Device Manageability
•  Control
•  UnderstandsTR-181 model
•  Head-end component available for adoption
–  Is available as opensource contribution.
•  Built onYocto Project/OpenEmbedded Build infrastructure
–  Vast set of packages available
–  Support wide range of SOCs out of box
•  RDKB Emulator implementations as reference onYocto/OE available
•  Licensed under RDKM Apache license.
•  Value addons from other infrastructures available
–  E.g. OpenWRT packages
•  Clean separation between modem, voice and data
ADVANTAGES OF RDKB
COMPONENT BASED ARCHITECTURE
•  Standard message primitives used for all components
•  Messages are passed over D-Bus IPC mechanism
•  Adding new services doesn’t change APIs ( RunTime APIs )
–  only adds new parameters
CCSP Message BUS (D-Bus)
Provisioning &
Management
TR-181 Data DM
(no WiFi/Diag)
Test & Diagnostics
TR-181 DM (Diag)
WiFi Provisioning
& Management
TR-181 DM (WiFi)
IP v4/v6
Bridge
…
WiFi
Persistent
Storage
Manager
getParameterValues
setParameterValues
AddTblRow
DelTblRow
……
getParameterValues
setParameterValues
AddTblRow
DelTblRow
……
getParameterValues
setParameterValues
AddTblRow
DelTblRow
……
getParameterValues
setParameterValues
AddTblRow
DelTblRow
……
Component
Registry
RDKB COMPONENT DIAGRAM
SOC
Kernel DOCSIS MTA ePON HAL
OEM Boot Loader
MoCA Drivers
MoCA MIBSCM Ext HAL MTA Ext HAL
GW Prov Abs
Layer
Multi Lan
Config
Open
Source
Net SNMP
MLD ProxyDHCP V4/V6
VLAN Utils
IGMP
Proxy
DSLite
DNS Proxy
UPNP IGDBridge Utils
IPRoute/
IPTables
BlueZ
Stack
IPV4/IPV6 Wireless Tools
Prefix Delegation
CCSP
Components
CM Agent
MTA Agent
Provisioning &
Mgmt
GW Prov App
Home Security
TR69 PA
Common Library
WiFI Prov &
Mgmt
Component
Registry
PSM.
Native UI PASNMP PA
Utopia
Utilities
Xfinity Hotspot
CLI PAHNAP PA WEBPA
CISCO
Open
Source
OEM Comcast
SNMP
MGT
ACS
HNAP
MGT
WEB
Browser
SSH
Board SOC
WiFI HAL
WiFI Drivers
WiFI SoC MoCA SoC
Battery HAL
Platform Software
WEBPA
Server
ZIGBE SDK
Harvester
Dynamic Channel
Selection
Self Healing Logger WIFI-ATM
•  Common Library
–  CCSP msg bus
–  Security / OpenSSL
•  Provisioning & Management
–  Moca
•  Multicast IP forVideo (MDC)
•  Self healing
–  WiFi Spectrum Analyzer
–  WiFi DCS
–  WiFi Band Steering
–  WiFi DFS
–  Harvester
–  Process Monitoring
–  Telemetry
RDKB CORE COMPONENTS
•  IoT
–  Zigbee Stack
–  Thread
•  Logging
•  IP DVR (SD Flash, NAS)
•  Utopia
–  Firewall / Parental Control
•  Gateway Provisioning for EPON/DOCSIS
•  DVR Cache
•  WebPA Client
•  CLI PA
•  HNAP PA
•  TR-069 PA
•  SNMP PA
•  DHCP Client
•  Net SNMP
•  IPTables
•  IPRoute
•  DSLite
•  IP Stack
•  Bridge Utils
•  VLAN Utils
•  UPnP IGD
•  DNS Proxy
•  MLD Proxy
•  IGMP Proxy
RDKB OPEN SOURCE COMPONENTS
•  Prefix Delegation
•  Bluez stack
•  PHP runtime
•  python runtime
•  system initialization and device
management
•  IPC implementation (d-bus)
•  alljoyn
•  web server
•  SSH
•  dnsmasq
•  TFTP
•  Linux Kernel 
•  Base Linux OS (libraries + utilities)
•  DOCSIS 
•  Voice Modem (eMTA)
•  WiFi Driver (RDKB defined HAL)
•  MoCA Driver
•  Thread Driver
RDKB SOC / CHIP VENDOR COMPONENTS
•  Bluetooth Driver 
•  Zigbee Driver
•  Fast Path GRE
•  EPON
•  Watchdog
•  ProfilingTools
•  Packaging/Image Creation
•  SigningTools
•  Platform software
RDKB OEM COMPONENTS
•  Hotspot Setup (e.g. xfinitywifi)
•  Home Security 
•  IoT Rules Engine
•  IPTable Configurations
•  Local UI (Captive Portal, Config, Diagnostics)
•  WiFi RRM
•  WiFi ATM
•  Broadband Profiling (SamKnows, SpeedTest, etc)
•  Code Download and system upgrade management (XCONF)
RDKB MSO COMPONENTS
RDK-B HIGH LEVEL ARCHITECTURE
Local UI
PA
ACS
Provisioning &
Management
TR-181 Data DM
CCSP Message
BUS
WIFI
Drivers
WiFi Provisioning &
Management
TR-181 DM
WEB
Browser
SSH
HNAP
MGT
Open
•  IPV4/IPV6
•  DHCPv4/6
•  IPRoute/IPTables
•  DSLite
•  Prefix Delegation
•  Bridge Utils
Source
•  VLAN
•  Wireless Tools
•  IGMP and MLB Proxy
•  DNS Proxy
•  RIP
•  UPNP IGD
CM HAL MTA HAL
RDKB
Open
Source
SOC Comcast
TR-69 PA
Component
Registry
Persistent
Storage
Manager
SNMP PA
SNMP
MGT
CLI PA HNAP PA
Application Env
Manager
WiFI Abstract Layer
MDC PA
MDC
CM Ext MTA Ext
GW provisioning AppGW Provisioning Abstraction
WEBPA
Server
WEB PA
•  Hosted by RDK Management
–  Anonymous Read Access
•  CCSP - https://code.rdkcentral.com/r/#/admin/projects/?filter=rdkb
•  WebPA – In preparation to be opened on git://github.com/comcast
–  RDK community Access
•  Manifest - https://code.rdkcentral.com/r/plugins/gitiles/manifests/+/master
•  RDK OE Layer– https://code.rdkcentral.com/r/#/admin/projects/components/generic/rdk-oe/meta-rdk
•  Emulator BSP Layer - https://code.rdkcentral.com/r/#/admin/projects/components/asp/rdk-oe/meta-rdk-bsp-emulator
–  OE/Yocto
•  Upstream daisy branch
RDKB - GETTING ACCESS
ThankYou !

BKK16-205 RDK-B IoT

  • 1.
    RDKB – IOTGATEWAY INTODUCTION Khem Raj Linaro Connect BKK16 BKK16-205 March 8, 2016
  • 2.
    •  What isRDKB ? •  Unique Features •  Why Use RDKB ? •  Component based Architecture. •  Components •  High Level Architecture •  Getting Access •  QA AGENDA
  • 3.
    •  RDKB –Broadband profile for RDK •  Shared BSP infrastructure with RDKVideo •  Shared logging, crash reporting, system management •  Over 2 million devices deployed INTRODUCTION
  • 4.
    •  DOCSIS 3.0 • eMTA •  Private Wi-Fi •  Public Wi-FI •  MoCa 2.0 •  eMTA •  Local Admin Pages •  MoCA extender support •  Bridge Mode support •  IPv6 •  Cloud Gateway support (VRG) •  HNAP protocol support for Home Security •  2.4/5G Band support •  Provisioning •  WPS •  SNMP •  TR-69 RDKB FEATURES
  • 5.
    •  Http CodeDownload •  Xconf support for finer control of code download •  WebPA Support •  RDK Logs •  RDK Metrics •  Video over Wi-Fi •  Wi-Fi-MoCA bridge forVideo •  IP table for packet tracking •  Support for Cloud Admin •  Forced Wi-Fi personalization •  Connect/Disconnect Notification •  RSSI Reporting •  Self Healing RDKB UNIQUE FEATURES
  • 6.
    •  Zigbee HA1.2 Hub •  Thread •  Bluetooth LE •  Device System Bridge to connect Zigbee/Thread/BLE •  Alljoyn/OIC Connectors •  IoT Cloud Adapter for Cloud Connectivity •  Local Rules Engine •  Easy Onboarding of devices IOT FEATURES
  • 7.
    •  High SoftwareVelocity – Architecture supports plug-in component modules – all using Linux D-Bus –  Teams can create components in parallel –  Leverages open source within Architecture Framework and within components •  Supports multiple management protocols and data models –  TR-069 withTR-181,WEBPA withTR-181, SNMP, CLI via UART/SSH, easily extensible •  Support single and multi-core CPU architectures •  No component level code change needed to repartition software –  D-Bus extends common architecture across CPUs •  Easily portable to support multiple SoC vendors –  Supported through component level abstraction layers –  Leverages the ability to repartition across single core, multi-core and multi-CPU •  Supports IOT –  AllJoin –  Iotivity (Part of OE/Yocto supported layer, can be pulled in on demand) –  Thread •  Integrated logging infrastructure with head-end ADVANTAGES OF RDKB
  • 8.
    •  WEB-PA –  Completesolution for •  Device Manageability •  Control •  UnderstandsTR-181 model •  Head-end component available for adoption –  Is available as opensource contribution. •  Built onYocto Project/OpenEmbedded Build infrastructure –  Vast set of packages available –  Support wide range of SOCs out of box •  RDKB Emulator implementations as reference onYocto/OE available •  Licensed under RDKM Apache license. •  Value addons from other infrastructures available –  E.g. OpenWRT packages •  Clean separation between modem, voice and data ADVANTAGES OF RDKB
  • 9.
    COMPONENT BASED ARCHITECTURE • Standard message primitives used for all components •  Messages are passed over D-Bus IPC mechanism •  Adding new services doesn’t change APIs ( RunTime APIs ) –  only adds new parameters CCSP Message BUS (D-Bus) Provisioning & Management TR-181 Data DM (no WiFi/Diag) Test & Diagnostics TR-181 DM (Diag) WiFi Provisioning & Management TR-181 DM (WiFi) IP v4/v6 Bridge … WiFi Persistent Storage Manager getParameterValues setParameterValues AddTblRow DelTblRow …… getParameterValues setParameterValues AddTblRow DelTblRow …… getParameterValues setParameterValues AddTblRow DelTblRow …… getParameterValues setParameterValues AddTblRow DelTblRow …… Component Registry
  • 10.
    RDKB COMPONENT DIAGRAM SOC KernelDOCSIS MTA ePON HAL OEM Boot Loader MoCA Drivers MoCA MIBSCM Ext HAL MTA Ext HAL GW Prov Abs Layer Multi Lan Config Open Source Net SNMP MLD ProxyDHCP V4/V6 VLAN Utils IGMP Proxy DSLite DNS Proxy UPNP IGDBridge Utils IPRoute/ IPTables BlueZ Stack IPV4/IPV6 Wireless Tools Prefix Delegation CCSP Components CM Agent MTA Agent Provisioning & Mgmt GW Prov App Home Security TR69 PA Common Library WiFI Prov & Mgmt Component Registry PSM. Native UI PASNMP PA Utopia Utilities Xfinity Hotspot CLI PAHNAP PA WEBPA CISCO Open Source OEM Comcast SNMP MGT ACS HNAP MGT WEB Browser SSH Board SOC WiFI HAL WiFI Drivers WiFI SoC MoCA SoC Battery HAL Platform Software WEBPA Server ZIGBE SDK Harvester Dynamic Channel Selection Self Healing Logger WIFI-ATM
  • 11.
    •  Common Library – CCSP msg bus –  Security / OpenSSL •  Provisioning & Management –  Moca •  Multicast IP forVideo (MDC) •  Self healing –  WiFi Spectrum Analyzer –  WiFi DCS –  WiFi Band Steering –  WiFi DFS –  Harvester –  Process Monitoring –  Telemetry RDKB CORE COMPONENTS •  IoT –  Zigbee Stack –  Thread •  Logging •  IP DVR (SD Flash, NAS) •  Utopia –  Firewall / Parental Control •  Gateway Provisioning for EPON/DOCSIS •  DVR Cache •  WebPA Client •  CLI PA •  HNAP PA •  TR-069 PA •  SNMP PA
  • 12.
    •  DHCP Client • Net SNMP •  IPTables •  IPRoute •  DSLite •  IP Stack •  Bridge Utils •  VLAN Utils •  UPnP IGD •  DNS Proxy •  MLD Proxy •  IGMP Proxy RDKB OPEN SOURCE COMPONENTS •  Prefix Delegation •  Bluez stack •  PHP runtime •  python runtime •  system initialization and device management •  IPC implementation (d-bus) •  alljoyn •  web server •  SSH •  dnsmasq •  TFTP
  • 13.
    •  Linux Kernel  • Base Linux OS (libraries + utilities) •  DOCSIS  •  Voice Modem (eMTA) •  WiFi Driver (RDKB defined HAL) •  MoCA Driver •  Thread Driver RDKB SOC / CHIP VENDOR COMPONENTS •  Bluetooth Driver  •  Zigbee Driver •  Fast Path GRE •  EPON •  Watchdog •  ProfilingTools
  • 14.
    •  Packaging/Image Creation • SigningTools •  Platform software RDKB OEM COMPONENTS
  • 15.
    •  Hotspot Setup(e.g. xfinitywifi) •  Home Security  •  IoT Rules Engine •  IPTable Configurations •  Local UI (Captive Portal, Config, Diagnostics) •  WiFi RRM •  WiFi ATM •  Broadband Profiling (SamKnows, SpeedTest, etc) •  Code Download and system upgrade management (XCONF) RDKB MSO COMPONENTS
  • 16.
    RDK-B HIGH LEVELARCHITECTURE Local UI PA ACS Provisioning & Management TR-181 Data DM CCSP Message BUS WIFI Drivers WiFi Provisioning & Management TR-181 DM WEB Browser SSH HNAP MGT Open •  IPV4/IPV6 •  DHCPv4/6 •  IPRoute/IPTables •  DSLite •  Prefix Delegation •  Bridge Utils Source •  VLAN •  Wireless Tools •  IGMP and MLB Proxy •  DNS Proxy •  RIP •  UPNP IGD CM HAL MTA HAL RDKB Open Source SOC Comcast TR-69 PA Component Registry Persistent Storage Manager SNMP PA SNMP MGT CLI PA HNAP PA Application Env Manager WiFI Abstract Layer MDC PA MDC CM Ext MTA Ext GW provisioning AppGW Provisioning Abstraction WEBPA Server WEB PA
  • 17.
    •  Hosted byRDK Management –  Anonymous Read Access •  CCSP - https://code.rdkcentral.com/r/#/admin/projects/?filter=rdkb •  WebPA – In preparation to be opened on git://github.com/comcast –  RDK community Access •  Manifest - https://code.rdkcentral.com/r/plugins/gitiles/manifests/+/master •  RDK OE Layer– https://code.rdkcentral.com/r/#/admin/projects/components/generic/rdk-oe/meta-rdk •  Emulator BSP Layer - https://code.rdkcentral.com/r/#/admin/projects/components/asp/rdk-oe/meta-rdk-bsp-emulator –  OE/Yocto •  Upstream daisy branch RDKB - GETTING ACCESS
  • 18.