A few weeks ago Zaid from GenieACS suggested we added this software to our list of open source TR-069 efforts. We are now posting an interview with Zaid where we discuss his efforts around GenieACS and his take on TR-069.
TR-069 Central: Can you give us on some background on yourself?
I currently work at an ISP (fanoos.iq) in Kurdistan, Iraq, leading a small team of developers. Though I have been programming (professionally and as a hobby) for a very long time, I am relatively new to the telecom industry.
How did you end up developing a TR-069 ACS?
We were originally using Huawei’s APManager where I work. We had interoperability issues with devices from other vendors and could not determine whether the ACS or the devices were the issue. We tried Wi-Cam from Wi-Tribe and faced similar issues. We then looked at OpenACS but it did not seem to work with our devices, or we could not configure it properly, and it was not as user friendly as we would have wanted. At that point, developing our own solution or building on top of an existing open source one was on the table, but did not seem likely as it is a major undertaking and I was the only developer at time who could work on this. Perl-cwmp got my interest and I considered enhancing it and building a GUI for it, but I was worried about performance given our medium size network. We eventually settled on building our own.
The project was later open sourced (most of it anyway), but development was slowing down after we had our major requirements covered. Due to our busy schedule at work, I decided to fork it and continue enhancing it and support the community in my spare time.
Is GenieACS used outside of your current employer?
I know of at least two other ISPs in the region using it in a production environment. Based on the issue tickets in github, it is likely that it is being used or tested by other operators around the world.
Being open source, any one is welcome to try it out. You could also now request a free hosted trial to try it and test your devices’ compatibility without going through the installation process yourself. Expect some delay in response as that process it not yet automated.
You put the emphasize on speed for GenieACS. Can you give us an idea on how it compares with some of the commercial ACS you tested?
In terms of performance, it can vary based on the hardware and the complexity of your setup. In one of deployment, I have seen over 1,500 requests per second on a single decently spec’ed server, and it was not even at its maximum utilization. I would say you should realistically get about 2,000 requests per seconds at peak (HTTP/SOAP requests, not CWMP sessions).
To put that in perspective, you could have 100,000 online devices configured with a 5 minute Periodic Inform interval.
There is actually a virtual CPE simulator included in the code that can be used to simulate many devices so that everyone can check the performance of their setup.
Scalability benefits aside, with high performance it is no longer just a tool you use when you want to troubleshoot a device or push updates or firmware upgrades. You could do things like near-real time monitoring of certain parameters across your network. And you will (soon) be also be able to get the ACS to automatically do non-trivial operations such as modifying parameters using a given logic based on time of day or customer activity.
You have probably noticed that OpenACS pulled support. Do you believe it should open up a good position for GenieACS or is that a bad sign as to the telco industry’s readiness to base their work on open source efforts?
I heard the unfortunate news about OpenACS. I see it as more of a bad news than an opportunity. Though I am not too sure about that either because in my opinion OpenACS could have been better presented (both in terms of system UI and project website).
This interview was led between TR-069 Central and Zaid Abdulla, developer of GenieACS. You can reach Zaid for further details on LinkedIn or via email at zaid@genieacs.com.