Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

This Page is under development

Table of Contents
maxLevel1

Introduction

RDK-B devices provide multiple interfaces like MoCA, WiFi, Ethernet, etc. for clients to get connected. LMLite, a component within RDK-B, does the job of updating the Host table (Host table is a table containing the data of connected clients over various interfaces) based on the devices connected over MoCA, WiFi and Ethernet.

...

  • Client Host name
  • Mac Address
  • IP addresses
  • Lease information
  • Active/Inactive device status

...

Architecture

Figure 1 - LMLite High Level Architecture

...

LMLite interacts with other components of RDK-B stack over DBUS. Each of these components registers a "callback" function with respective HAL. The HAL performs a “callback” whenever there is an update in connected clients. This triggers a DBus call to LMLite with the necessary data. LMLite receives this data and adds it to the Host table.

Notifications

LMLite notifies the Notification component which in turn tells the interested PAs about the connection and disconnection of the connected devices.

...

NotifyMsg 1: Notification Message from the individual interface component to LMLite about any update of the existing connected devices or any new connections.
NotifyMsg 2: Notification Message from LMLite to the Notify component
NotifyMsg 3: Notification message from Notify component to the PA’s who have registered for notifications for connected device.

NotifyMsg 1

In this type of notification message the connected device components like WiFi, MoCA, Ethernet sets a dedicated parameter of LMLite. As and when this notify message comes from a component to LMLite, the dedicated parameter is parsed and the host table is updated accordingly.

Example: For WiFi the dedicated parameter is
“Device.Hosts.X_RDKCENTRAL-COM_LMHost_Sync_From_WiFi”.
This parameter is of string type and contains values for fields phyAddr, ssid, status, etc.

NotifyMsg 2

In this type of notification message, LMLite monitors the values of all the connected clients. For any connection/disconnection host table is updated, it updates the notify component. The data sent from LMLite to notify component is status, MAC, interface of the connected device.

NotifyMsg 3

Notify component maintains a table of parameters for which PAs are interested to be notified. Whenever the notify component receives a NotifyMsg 2 from LMLite, it search's this table and notifies the interested protocol agents.

...

ObjectDescriptionSupported Parameters
Device.Hosts.
Contains parameters depicting statistics of the connected devices.
  • Device.Hosts.X_CISCO_COM_ConnectedDeviceNumber
  • Device.Hosts.X_CISCO_COM_ConnectedWiFiNumber
  • Device.Hosts.X_RDKCENTRAL-COM_HostVersionId
  • Device.Hosts.X_RDKCENTRAL-COM_HostCountPeriod
  • Device.Hosts.Host.{i}.PhysAddress
  • Device.Hosts.Host.{i}.IPAddress
  • Device.Hosts.Host.{i}.DHCPClient
  • Device.Hosts.Host.{i}.HostName
  • Device.Hosts.Host.{i}.LeaseTimeRemaining
  • Device.Hosts.Host.{i}.X_RDKCENTRAL-COM_DeviceType
Device.XHosts.
Contains parameters for home security devices.
  • Device.XHosts.X_CISCO_COM_ConnectedDeviceNumber
  • Device.XHosts.XHost.{i}.Alias
  • Device.XHosts.XHost.{i}.PhysAddress
  • Device.XHosts.XHost.{i}.IPAddress
  • Device.XHosts.XHost.{i}.DHCPClient
  • Device.XHosts.XHost.{i}.HostName
  • Device.XHosts.XHost.{i}.LeaseTimeRemaining
  • Device.XHosts.XHost.{i}.X_RDKCENTRAL-COM_DeviceType
Device.X_RDKCENTRAL-COM_Report.
Contains parameters depicting network status and traffic.
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesStatus.Enabled
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesStatus.ReportingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesStatus.PollingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesStatus.Default.ReportingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesStatus.Default.PollingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesTraffic.Enabled
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesTraffic.ReportingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesTraffic.PollingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesTraffic.Default.ReportingPeriod
  • Device.X_RDKCENTRAL-COM_Report.NetworkDevicesTraffic.Default.PollingPeriod
  • Device.X_RDKCENTRAL-COM_Report.InterfaceDevicesWifiExtender.Enabled

Usecases

 How to get the connected client status in Raspberry PI?

...

Code Block
1) Login to RPI 
		$ ssh root@<rpiip >

2) Get the number of devices (connected and offline) in RPI
		$ dmcli eRT getv Device.Hosts.HostNumberOfEntries

3) Get your raspberry pi Wi-Fi SSID & password
		$ dmcli eRT getv Device.WiFi.SSID.1.SSID
		$ dmcli eRT getv Device.WiFi.AccessPoint.1.Security.KeyPassphrase

2)  Connect to your phone/tab to RPI Wi-Fi SSID

3) Verify the status

  • Using webui

Image Removed

    

  • Using dmcli commands
    • dmcli eRTgetv eRT getv Device.Hosts.HostNumberOfEntries
    • dmcli eRT getv Device.Hosts.X_CISCO_COM_ConnectedDeviceNumber

Logs 

...