Work In Progress

Introduction

OpenSync :

  • OpenSync is designed to provide a Software Defined Network (SDN) platform, through which it virtualizes the networking and wireless management for easy service roll-out. It acts as a  silicon, CPE, and cloud-agnostic connection between in-home hardware devices and the cloud.   
  • It provides a modern set of utilities for collecting measurement and other telemetry data from devices. It also enables remote control and management of the devices, and advanced capabilities for specific services, including Wi-Fi meshing, access control, cybersecurity,
    parental controls, and IoT onboarding and telemetry.

OneWiFi :

  • The purpose of OneWifi project is to create a unified software architecture that preserves control plane and stats level functionality but is capable of running on both gateways and extenders. 

Scope of the work

            The scope of this activity to bring up Mesh functionality through opensync and onewifi components in RPI Router.

Target Audience  

  • RDK-B Operators
  • RDK-B SoC Vendors
  • RDK-B OEM's
  • RDK-B Application Vendors(Plume)
  • RDK-B System Integrators 


 High level Design / Architecture


System Architecture


OVSDB Manager 

               Cloud controller can configure Wi-Fi parameters in gateway, extender or  CPE using OVSDB & Manager entities. OVSDB is a database server that executes in RDK-B CPE. Any update of parameters in this database by cloud controller is notified to OneWifi process by OVSDB manager entity over RBUS. OneWifi process validates the parameter or set of parameters and applies the configuration in WiFi driver or baseband. If successfully applied, OneWifi also notifies OVSDB manager about the successful completion so that the database tables are updated with the right state of WiFi subsystem of the CPE.

OneWiFi Interface Map Table

VAP IndexNameComment
1private_ssid_2g2g user private ssid 
2private_ssid_5g5g user private ssid
12mesh_backhaul_2gMesh backhaul on 2g
13mesh_backhaul_5gMesh backhaul on 5g
14mesh_sta_2gMesh station on 2g
15mesh_sta_5gMesh station on 5g

Target Build Variant 

  •  RPI4 Kirkstone build with  kernel 5.15 

Identified task list

  • Need to learn how OpenSync work with OneWiFi - Communication is through DM/RBUS, not wifi hal. May need to refer Comcast device.

  • Need to compile OpenSync for OneWifi (some kconfig should be enabled)

  • Need to know how to start OpenSync through OneWiFi

  • Need to know OVSDB tables of OpenSync collaborate with OVSDB tables of OneWiFi(wifi.db)

  • Bringup OVSDB manager for synchronization

  • Wi-Fi interface alignment with Netgear wifi dongle and  Make sure existing wifi functionality won't be disturbed.

  • Netgear driver support with Kirkstone version

  • Conversion of Linux bridge into OVS bridge(brlan0) - OVSAgent is now part of rootfs but not operational

  • Update dnsmasq configuration for OpenSync backhaul AP feature (wifi2, wifi3)

  • Enable IP_GRE as kernel module

  • Home AP bringup in RPI GW

  • Backhaul AP bringup in RPI GW

  • Make sure that GRE tunnel is created for backhaul communication and it is stable (Need to be tested with Extender)

  • Need to make sure that onewifi existing functionality is not breaking

Check point

  • Need to confirm that rdk-wifi-hal is aligned for OpenSync [Already we have OpenSync in Comcast onewifi(driver based) enabled device]

Dependencies

  • Dongle's minimal support for 2AP and 1 STA.

  • If Netgear dongle is not providing such support, need to find new WiFi dongle.

  • Device provisioning in Plume Inventory (require Plume's support)

  • ovsdb manager/OVSM acts as medium between onewifi webconfig subdoc  and plume controller
  • OpenSync have run-time dependencies with ovsdb-server & openvswitch(ovsdb-server start up is part of ovsagent . currently, this server is not running in rpi).

Validation

  • Check opensync service / OpenSync process will be run by meshagent DM parameter

  • Check opensync managers

  • Check Manager table for Online status

  • Check synchronization of both OpenSync DB and RDKB Wifi DB tables during updates through Plume NOC / RDKB WebUI/ DMCLI
  • All Wi-Fi testcase should be working with Netgear Wi-Fi dongle in Kirkstone
  • Validation of Mesh will be done with SuperPOD as extender

Risks

  • Availability of OVSM for RDK Community is mandatory
  • Wireless interface names for Wifi dongle needs to be aligned for OpenSync convention

Flow Diagram/Pseudo Code


Sequence Diagrams


Build Instructions

TargetYocto versionBuild instruction
RPI4 32bitDunfell RPI 4B Model Reference Platform
RPI4 32bitKirkstonekirkstone RDK-B RPI4 32 bit
RPI4 64bitDunfellRPI 4B Model Reference Platform with 64bit Arch
RPI4 64bitKirkstoneKirkstone RDK-B RPI4 64 bit (Both User Space & Kernel Space)

Supported device  

  •       Raspberry Pi4 32 bit
  •       Raspberry Pi4 64 bit

Use Cases


Sanity Testing


References

https://opensync.atlassian.net/wiki/spaces/OCC/pages/39920173081/OpenSync+4.4

Onewifi Reference Porting Documentation

Porting Guide - OneWifi

EPIC/User Stories

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

  • No labels