What's new

Custom firmware build for R9000

Voxel

Very Senior Member
I publish beta version of my custom firmware for R9000 owners. Primary goal is to check is there any interest to my custom build for this router too. Many thanks to NETGEAR Guy who provided me this router.

Key changes in this version vs official stock firmware are similar to my changes for R7800 discussed here:

https://www.snbforums.com/threads/custom-firmware-build-for-r7800.36859/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-22sf.37222/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-23sf-v-1-0-2-24sf.37477/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-25sf-v-1-0-2-29sf.38032/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-30sf.38366/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-31sf.39142/
https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-32sf.39657/

I.e.

1. More optimal compiler options are used for compilation to utilize full power of router’s CPU/FPU (Alpine AL-514, Cortex-A15).
2. New toolchain (compilation tools) is used (stability, more optimal codes).
3. SSH server is included (dropbear).
4. Possibility to extend the functionality of router with additional software packages (Entware-ng/Entware-3x, more than 2000 additional packages and/or chroot-ed Debian).
5. OpenSSL is optimized with assembler optimization, so OpenVPN should work much faster.
6. Possibility to use own CA/CERT/KEY/DH files for OpenVPN (your own OpenVPN server settings)
7. Additional packages such as e.g. Transmission, bittorent cient with its own GUI, dnscrypt-proxy (your privacy) etc.
8. Upgraded a lot of old packages used in stock FW to most recent versions taken from OpenWRT/LEDE. I.e. increase of stability, speed, closed security holes, corrected bugs.


Etc. etc. etc.

Some benchmarks, OpenSSL test:

Stock firmware:
Code:
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha1             19729.61k    54213.54k   111554.18k   150575.10k   168700.40k
des cbc          33284.58k    34141.59k    34585.00k    34665.81k    34553.86k
des ede3         12548.81k    12727.87k    12788.65k    12801.71k    12782.25k
aes-128 cbc      57205.07k    60562.69k    62545.32k    63109.12k    63310.51k
aes-192 cbc      50571.55k    52632.14k    53764.35k    54159.02k    54274.73k
aes-256 cbc      44746.83k    45857.66k    47048.96k    47419.08k    47363.41k
sha256           13311.57k    29732.76k    50673.44k    61281.28k    65227.43k
sha512            3768.93k    14927.25k    21400.58k    29089.11k    32216.41k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.036533s 0.001101s     27.4    908.0
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.012148s 0.013405s     82.3     74.6
My build:
Code:
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
sha1             21691.86k    67717.40k   163728.90k   251297.48k   296394.75k
des cbc          33224.61k    34769.92k    35351.13k    35573.21k    35370.33k
des ede3         13231.06k    13375.81k    13498.79k    13595.49k    13485.29k
aes-128 cbc      76702.52k    80093.80k    83207.17k    84156.70k    83875.16k
aes-192 cbc      61568.46k    66469.16k    70230.95k    71435.13k    71363.24k
aes-256 cbc      55345.12k    57141.60k    58567.85k    58935.30k    59026.09k
sha256           24173.65k    56915.65k   102226.09k   128476.16k   139047.56k
sha512           11151.64k    44457.20k    66356.57k    93356.71k   105865.22k
                  sign    verify    sign/s verify/s
rsa 2048 bits 0.008718s 0.000212s    114.7   4709.8
                  sign    verify    sign/s verify/s
dsa 2048 bits 0.002358s 0.002485s    424.1    402.4
It could be flashed from WebGUI of your stock firmware and all your settings should be kept.

http://www.voxel-firmware.com

Voxel.
 
Last edited:

cybrnook

Senior Member
Very cool! I think this should gain a good amount of interest once the word gets out.

Is the CPU still running at full speed, or is it throttling down when possible? And I assume you added the ability to use OpenVPN client, same as your 7800 build? Any thoughts about adding future support for something like split tunneling, instead of all or nothing?
 

Voxel

Very Senior Member
Very cool! I think this should gain a good amount of interest once the word gets out.

Is the CPU still running at full speed, or is it throttling down when possible? And I assume you added the ability to use OpenVPN client, same as your 7800 build? Any thoughts about adding future support for something like split tunneling, instead of all or nothing?
CPU: it is funny, but there was a script in the stock firmware, the same as for R7800. I.e. it tried to set CPU settings using features of IPQ806x. It just does not work (errors if to run it manually). I've removed it. No changes for CPU behavior (yet).

OpenVPN client. I've added it. But did not test. Should work with high probability.

Split tunneling: not yet.

Overall: this FW has practically the same features as my build for R7800. All packages upgraded for R7800 are upgraded for R9000 too. Optimal compilation options. The same add-ons. IMO it should be at least better :).

Voxel.
 

Charles

Occasional Visitor
Excellent work Voxel. I'd love to try this out if I can pick up a good deal on an R9000. I have seen it drop from time to time.

Otherwise, at retail prices, I'd prefer to use 2 x (or more) R7800 instead!
 

jrfaulkin

Occasional Visitor
Voxel, just downloaded and installed this firmware. I plan to test it and get back to you. I don't see the OpenVPN client. Would you point me in the right direction?
 

Voxel

Very Senior Member
Voxel, just downloaded and installed this firmware. I plan to test it and get back to you. I don't see the OpenVPN client. Would you point me in the right direction?
Sorry, it is "hot" beta. I did not change my instructions yet. Just read my readme.docx re: how-to OpenVPN client for R7800. The same should be for R9000.

Voxel.
 

jrfaulkin

Occasional Visitor
Sorry, it is "hot" beta. I did not change my instructions yet. Just read my readme.docx re: how-to OpenVPN client for R7800. The same should be for R9000.

Voxel.
Thanks, Voxel! Works as it should. I used the manual method from your doc. I'm using PIA and connecting from Houston to a Midwest server residing in Chicago. I've got QoS disabled. With OpenVPN stopped I get ~96Mbps down/~20Mbps up. Through the VPN I get ~6.5Mbps down/~4.5Mbps up. I take it this isn't using hardware acceleration like the DD-WRT "Kong mod," correct?
 

Voxel

Very Senior Member
Thanks, Voxel! Works as it should. I used the manual method from your doc. I'm using PIA and connecting from Houston to a Midwest server residing in Chicago. I've got QoS disabled. With OpenVPN stopped I get ~96Mbps down/~20Mbps up. Through the VPN I get ~6.5Mbps down/~4.5Mbps up. I take it this isn't using hardware acceleration like the DD-WRT "Kong mod," correct?
Well, while good news are that it is working :)

Regarding OpenVPN client: work is still in progress, thanks to kamoj who tests and tunes it with R7800 (the same scheme is used fir R9000). He was able to tune his ovpn files and got good results. Maybe he will post his tuning here.

Voxel.
 

Voxel

Very Senior Member
Forgot to say, my build is using hardware acceleration because it uses drivers from a stock firmware.

Voxel.
 

jrfaulkin

Occasional Visitor
Forgot to say, my build is using hardware acceleration because it uses drivers from a stock firmware.

Voxel.
Everything is working really well. I haven't had any issues with this build. Also, I disabled IGMP proxy on the R9000, and disabled IGMP snooping on my switches. Now the speed tests rival the kong mod dd-wrt firmware. So, probably my configuration issue. Speeds with the same PIA VPN as yesterday are now ~61Mbps down/~19Mbps up on a 100Mbps connection. Very good performance indeed over a tunnel. Thank you!
 

Voxel

Very Senior Member
Has the qos gotten any better since release?

Sent from my Nexus 6 using Tapatalk
I do not quite understand your question. If you mean something like: is QoS DB upgrade is performed, then "yes". After flashing I had:

Code:
Current Performance Optimization Database on Router
    Version: netgear-detection-db-v1.3
    Release Date: Mar 22 2017
but after "Upgrade Now":

Code:
 Current Performance Optimization Database on Router
    Version: netgear-detection-db-v1.12
    Release Date: May 25 2017
Voxel.
 

matthew johnson

Regular Contributor
Sorry what I meant was alot of reviews of the unit claims that qos has lack of customization/configuration. So basically in a nut shell I would like to know if qos runs good and well cause I have multiple video game systems and phones and tablets.

Sent from my Nexus 6 using Tapatalk
 

Voxel

Very Senior Member
Sorry what I meant was alot of reviews of the unit claims that qos has lack of customization/configuration. So basically in a nut shell I would like to know if qos runs good and well cause I have multiple video game systems and phones and tablets.

Sent from my Nexus 6 using Tapatalk
Better if other owners of R9000 write their impression, I got this device only about 10 days ago :) (thanks to NETGEAR Guy). But it uses Trend Micro QoS, and as far as I know people like QoS from TM...

Voxel.
 

psychopomp1

Senior Member
Voxel, when do you expect to release the first non-beta firmware for the R9000?
Cheers
Psycho
 

Voxel

Very Senior Member
Voxel, when do you expect to release the first non-beta firmware for the R9000?
Cheers
Psycho
You do not like the word "beta"? Me too ;). Do not be so afraid: I had about 10 my internal builds before I published this release. And most of my changes are the same as for R7800, so it was used as an emulator of R9000. But I need real feedback from R9000 owners.

Primary goal is to check is there any interest to my custom build for this router too.
Voxel.
 

psychopomp1

Senior Member
Thanks mate, in that case I will take the plunge and get your firmware installed on my R9000.

Will provide feedback shortly, cheers :)
 

proditaki

Occasional Visitor
Thank you.
I aqcuired the R9000 some time ago after continuous problems with my previous (non netgear) router.
I like the stock firmware, it is very stable, but i would like to have more functionality.

I will flash your custom firmware tonight and give feedback on it shortly.
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top