Parameters Optimization of Omada SDN Controller for a Better Performance under Large-Scale Network
Considering the computer specifications and network performance, we set an upper limit as 1500 EAPs to be managed by one Omada SDN Controller, which can meet most of the usage scenarios.
If it is necessary to manage more than 1500 EAPs with one controller, this document will help by doing some configurations to adjust the upper limit of EAPs and optimize the system performance when the server specification is limited.
Note: INSTALLATION_FOLDER indicates the installation folder of the Omada SDN Controller, and the default path is “C:\Users\YOURACCOUNTNAME\Omada Controller”, where YOURACCOUNTNAME is the system account name.
Omada server means the computer or server running the Omada SDN Controller program.
Before modification, please backup the corresponding files. Please login to the Controller page, go to Maintenance – Backup & Restore and save the backup file. Meanwhile, before you modify the “start.bat” and “omada.properties” files below, please backup the source files at first.
Upgrading the software will overwrite the previous modified configuration. It is recommended to record the modified configuration items, and then modify them after upgrading. Do not backup the previous configuration file and directly replace the file after upgrading.
1. What to do to manage more than 1500 EAPs with one controller?
To increase the number of managed EAPs, please use the text editing tools to open “INSTALLATION_FOLDER\properties\omada.properties” file, and modify “# max.device=1500” parameter. Correspondingly, “device.msg.thread” parameter indicates the processing thread numbers, which need to be modified in proportion.
For example, if you would like to change the upper limit to 3000, the parameters should be modified as “max.device=3000” and “device.msg.thread=32”, because 3000/1500*16=32. Please note that the number sign # needs to be deleted.
Managing more EAPs requires a more powerful server. The below table indicates the minimum specifications for the Omada server.
EAP Numbers |
Processor |
Memory |
Bandwidth |
3000 |
7th i7 |
16GB RAM |
100Mbps |
The above operation will help increase the upper limit, however significantly increase the system load. Below is some advice to optimize the system performance when encountering similar issues.
2. What to do when the CPU is chronically overloaded?
Generally speaking, chronic CPU overload is caused by the limited capacity of the heap memory, which can be understood as the RAM assigned dedicated to controller operation. At this point, a simple and effective solution is to expand the RAM capacity of the server.
If your Omada server is dedicated to running the controller program and more heap memory capacity assigned will not influence the system operation, the below configurations will also help.
Please use the text editing tools to open “INSTALLATION_FOLDER\bin\start.bat” file, and modify the values after “-Xms” and “-Xmx”. For example, “java -Xms2048m -Xmx2048m -XX:MaxHeapFreeRatio=60 -XX:MinHeapFreeRatio=30 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="%~dp0” means to assign 2 GB heap memory to the controller program.
Besides, if you want assign more than 4 GB heap memory, please add another parameter, “–XX:+UseG1GC” for a better performance. For example, “-XX:+UseG1GC”, i.e., “java –Xms4096m –Xmx4096m -XX:MaxHeapFreeRatio=60 -XX:MinHeapFreeRatio=30 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="%~dp0 –XX:+UseG1GC”.
3. What to do when failing to adopt a large number of EAPs simultaneously?
If you fail to adopt a large number of EAPs at the same time, that indicates that the CPU and RAM of the Omada server cannot provide sufficient performance.
In addition to expanding the RAM capacity, you can also do the below modifications. Please open “omada.properties” file and adjust “max.device.adopt.each.batch” value. For example, the default value is 100, you may decrease it to 50 or others according to the system performance.
It should be noted that this will prolong the duration to adopt all the EAPs.
4. What to do if encountering failure without reason when upgrading a large number of EAPs simultaneously?
If you encounter a failure notification but without reasons when trying to upgrade a large number of EAPs, it is most likely because of the adopting timeout, and you can increase the value to increase the adopting rate. For example, you may open “omada.properties” file and modify the value of “upgrade.recovery.timeout” to 1200.
Is this faq useful?
Your feedback helps improve this site.