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

Compare with Current View Page History

« Previous Version 24 Next »

Scope

Target is to provide a IMP/Gateway speedtest reference implementation to RDK-B community as part of banana Pi R4


Types of speedtests

  • IMP/Gateway speed test

    • Between CPE and ISP's Edge Router/Gateway to test upstream and downstream
  • Client speed test

    • Between connected client and gateway

Block diagram

  • t2speed-bpir4

Components involved

Backend ecosystems involved

  • Xconf

  • Kibana/Elastic or simple json upload with Markers

  • USP controller or webpa server 

  • Speedtest analytics engine  (An application running on top of Rest API's)

  • iperf3 server (Linux machine running with iperf3 server)


RDK-B Customer perspective

  • As an RDK-B operator/OEM/SoC how can use my vendor speedtest implementation 

    • [Response - Just replace iperf3 client in RDK-B BPI R4 with your custom vendor implementation - refer orange colored 
  • How about server

    • Replace iperf3 server with your actual server - refer orange colored
  • Does this cover client speed test

    • No

Technical requirements of gateway speed test

State machine design for Bananapi R4

  • High level design

    • Initial Setup:
      • User enables speed test by setting Enable_Speedtest=true
      • This is validated through cosa_ip_dml.c
      • Parameter is stored in TR-181
    • Test Execution:
      • User triggers test by setting Run=true
      • System checks Enable_Speedtest status
      • If enabled
          • /usr/ccsp/tad/speedtest.sh # Launches with lowest priority

    • Download Phase:
      • speedtest-client initiates download
      • BBHM updates tracked in real-time:
        • pStats->TestBytesReceived += s_result;

        • pStats->TotalBytesReceived += s_result;

      • Timing parameters updated:
        • ROMTime (start)
        • TCPOpenRequestTime
        • BOMTime (begin of measurement)
    • Upload Phase:
      • Similar flow to download
        • pStats->TotalBytesSent += s_result;

    • Completion:
      • Final statistics stored in BBHM
      • All parameters accessible via TR-181
      • Run parameter set back to false
    • The entire process is managed by the Test and Diagnostics framework, with:

      • Real-time statistics collection
      • Proper error handling
      • Persistent storage of results
      • TR-181 parameter updates throughout the test


  • Low level design

Reference

FAQ's

  • TBD






  • No labels