Skip to main content

Unleash your ADSL horses!


Hello! I just made a discovery I want to share with you:
As a few of you may know, on broadcom based adsl modems/routers there is a command line utility which allows to tweak the adsl physical connection.
This command is adslctl and accepts many parameters.
One of them is SNR which is used to force a lower (or higher) SNR.
On the information page you will see that there is a maximum speed achievable on your own line due to noise, distance and quality and then you read the actual connection speed.
An example:
Max(Kbps): 18420 1027
Rate (Kbps): 17972 1013
If you issue the command
adslctl configure --snr 1
You are telling the modem to set the minimum SNR
(it may not give you any performance improves on a very noisy line)
thus allowing the modem to 'hook' at higher speed.
Since my line performed very well with snr=1 I wondered if it could be possible to lower the snr below 1. Then I thought that the variable used in the code is a signed WORD so
since a negative value is not possible why not trying an overflow ?
adslctl configure --snr 65440
This corresponds to -106 and it proved to be the best value on my line.
Now my connection details are:
Max(Kbps): 17740 1027
Rate (Kbps): 22237 1027
Yes! You read it right!
You can try values from 65400 to 65500.
Don't push the lower or the line will be so noisy that the remote dslam will degradate it's connection parameters and it will take long to come back to normal without a dslam reset!
Some stats:
URL http://na.mirror.garr.it/mirrors/ubuntu-releases/intrepid/ubuntu-8.10-desktop-i386.iso
Completed 698.82 M
Total Time 00:05:16
Average Speed 2264.53 KB/s
$ wget -O /dev/null http://na.mirror.garr.it/mirrors/Slackware/slackware-current/isolinux/initrd.img
Length: 13,477,400 (13M) [text/plain]
100%[====================================>] 13,477,400 2.25M/s ETA 00:00

Comments

  1. Hi Zibri, I've been intrigue ever since I saw this, but I dont have ADSL, just cable, its there a way to do this on cable?

    thanks for the hard work!!!

    cristv77

    ReplyDelete
  2. I believe there used to be a way to force old style (motorola surfboard) cable modems to give higher speeds by running your own tftp server on the same IP as the providers tftp server, then pinging from your tftp server - the modem then assumed this was the "correct" tftp server and downloaded configuration info from your server instead of the providers. I don't whether the more modern cable modems use the same configuration method.

    ReplyDelete
  3. Hi Zibri, well that is a unix command line, how can i use that line on windows?
    Thank you.

    (Ciao Zibri, ho un moden broadcom, e volevo provare a usare la tua command line per l'SNR, come posso usarla su Windows 7? Grazie )

    ReplyDelete
  4. Same question as Frederico... any way to do it on Windows?

    ReplyDelete
  5. It's the router that's basically running a linux system... you run commands from a telnet client (Putty in Windows). You'll need of course to open/hack the telnet port.

    Anyway this suggestion let me get a full 8000 Mbs from 6500 Mbs at best! Option "mod" set to "d" G.DMT was useful too.

    Thanks Zibri!!!

    ReplyDelete
  6. hmm the modulation should not change anything since it's the dslam that set it.

    g.dmt is the ADSL standard (till 8mb/s)

    if you want to see the real speed between your router and the dslam you can do:

    adslctl bert --start 16

    then after 16 seconds:

    adslctl --show

    then you get the hex number of bits tested and divide by 16
    that's the real speed you have.
    Everything else slowing you is you pc comfiguration and your provider greed :)

    ReplyDelete
  7. Don't know why, but it seems that if I let it sync with Adsl2 modulation, the speed will be lower. It might have been just bad luck with my test; "snr" is the setting that changed the game.

    ReplyDelete

Post a Comment

Popular posts from this blog

TP-LINK Configuration file encrypt and decrypt.

Here we go! TP-Link is another company that thinks that security by obscurity could ever work. If you "backup" the configuration from most TP-Link routers, you will get a .BIN file which is "encrypted". Use this utility below, to decrypt it (so you can edit it) and encrypt it again. Have fun. Drop files here or

Powerline Ethernet fun and secrets.

Many 200 Mb/s powerline adapters nowadays are based on the INTELLON 6300 chipset. Despite what can be thought looking at them, they are all using the same hardware and firmwares. I heard many people with Netgear XAV101 or Linksys PLK 200 or PLE 200 having problems after firmware updates and many other people with other brands having much more problems because of lack of support or configuration/upgrade utilities. So let me explain a few things I learnt studying them. Many of 200 Mb/s powerline ethernet adapters follow the "HomePlug AV" standard. (85 Mb adapters use HomePlug 1.0 standard which is completely different). This standard uses ethernet broadcast packets using the HomePlug AV protocol. The interesting thing is that their firmware is made of two different parts: a .PIB file (Parameter Information Block) and a .NVM file (the code itself). In the P.I.B. there are many interesting things: The branding (mac address, device name, etc) and the tone map. I test

Your own CORS ANYWHERE proxy on CLOUDFLARE

Hello again! Many of you probably hate as I do CORS because it hinders the very nature of internet, which is SHARING. There are some services to circumvent this commercial  restriction, one of these is the famous "cors anywhere". So yesterday I decided to make my own and allow you to make your own in only 2 minutes. To do so you just need a cloudflare account (can be set up in 1 minute). The you can upload my worker on it and have your personal very fast cors proxy! So, enough talk, just head to:  https://github.com/Zibri/cloudflare-cors-anywhere The is also a demo online at: https://test.cors.workers.dev Enjoy! Zibri