TR143-Datamodel-support-on-Genie

TR143 is supported out of the box by Genie… TR143 is another data model extension to the TR069 spec.

As such, you will need to add the necessary infrastructure to your environment, depending on what your CPEs support.

Example, we are doing TR143 upload/download and UDP Echo diag. We added a FTP server, created 5m,10m,25m,50m,100m,250m,500m and 1gb files. Depending on the customers speed, we set the InternetGatewayDevice.DownloadDiagnostics.DownloadURL to ftp://foo.com/<appropriately_sized_file_for_30_second_test>.bin

Then set the InternetGatewayDevice.DownloadDiagnostics.DiagnosticsState value to Requested and wait for the CPE to send back a diag complete event, then refresh the InternetGatewayDevice.DownloadDiagnostics parameters and collect the results.

Upload is performed much the same way, except you can set either TestFileLength or TimeBasedTestDuration depending on what your CPE supports, poing the CPE to an open FTP server, set the DiagnosticsState and wait.

UDPEchoDiagnostics is much more involved and a bit of a pain in the ass honestly. You can use this udpserver.c I modified. Its based on the UDP echo server by CMU and fixes an issue where the server would only echo back bytes until it got to a \0. The SmartRG CPES send 24 null bytes instead of ASCII text and so I had to break out wireshark to figure out what was really going on… As one of my best friends says "The packets don’t lie…"

The rest of the implementation details I’m going to leave as an exercise to the reader (calculating speed, etc).

6 Likes