Being a happy Curitiba citizen now (as Conectiva office is in Curitiba), one of the first and probably one of the most important things for any technology-related human being (well, in my opinion) task was to find an internet connection for myself . So, after choosing for some time, I came to GVT, which offered me 10MBits ADSL connection for a quite attractive price.
In the next few days, I received the visit from the technician who installed the telephone line and gave me a Opticom DSLINK 260e modem.
Well, I have to assume that I am very suspicious of the unknown models of modems and hardware, and any piece of hardware that has something similar to dlink in its name is suspicious by default, unfortunately.
As I soon figured out, my 6th sense was right. The internet was working, working, working… and then suddently it came to a full stop for some seconds, and then came back alive. I was unable to figure out any consistent pattern for it. It was just weird, and what fun is there in having a 10MBits if you can use it on a random basis?
So my first guess was to do some google searches, in any possible language and combination of the words ‘dslink’, ‘opticom’, ’260e’, ‘network’, ‘connection’, ‘problem’ and similar.
In some hours, I learned truly a lot about SNR margins, Line attenuation, ADSL protocol and technology, and many other cool stuff. However, among all the hundreds of reported problems there was no solution except similars to ‘give this modem a fire exercise with help of a Zippo lighter and some alcohol’ - which was not acceptable in my case.
(Of course, there was an option to call technical support and ask for help, but there were two drawbacks in this: 1) technical support is for wimps, and 2) I did not had any telephone adapter around, and my Motorola Milestone phone stood true to Motorola fame and managed to stop responding to any touchscreen events. This is not surprising if we look at Motorola history and the way it treats its engineers, but it once again made me promise to myself to never never-ever again buy anything that has ‘Motorola’ label on it. But let’s back to the topic).
So, here was I, with a randomly working connection, no possible solution found on google, and login/password to access the modem administration page which GVT was kind enough to put into the manual (kudos for GVT for this, it was truly a great surprise to receive a piece of hardware which you can actually manage on yourself without relying solely on technical support).
After some hours playing with ADSL parameters, I came to the conclusion that ADSL connection was fine. The problem was with the modem. So I tried a last attempt – telnetting to it and loggin in with the admin login/password.
After playing with some of the nice options, I finally found out the console command… and this is where the fun begun!
Yep, the console had LOTS of commands. But one that triggered the bell was the event one, which listed thousands of /task/ipforw: Pool 20809b60 no memory for 336 bytes messages. Yes, THOUSANDS! A bit suspicious, no?
I have to assume that the console of this piece of software was extremely powerful. Its debug interface allows to do ANYTHING with the software. Read memory, write memory, list pool allocation, list individual memory blocks, show detailed memory allocation, allocate/free memory, and so on…
But, no matter what I did, there was not much to do with this memory error. I managed to reduce the memory allocation error to mere /task/ipforw: Pool 20809b60 no memory for 32 bytes, but this was it. Without source code – and somehow more safe way of debugging then telnet-based, I could not proceed any further.
So I took some last screenshot with this system’s variant of cat /proc/cpuinfo, uname -a and cat /proc/meminfo (sort of), and started googling.
Surprisingly, I could not find out what system is that. Some pointers suggested that it is probably something coming from JUNGO.COM, but from what I found it out it is not open-source. So, unfortunately, I could not play any more with it.
But, besides all this learning, I still had the problem at hands. A randomly working network connection. So my only guess was related to this ipforw task name. Which looked surprisingly similar to ip forwarding… so I tried some simple thing, disabled the routing mode, switched to bridged one, installed rp-pppoe packages and configured a new DSL connection in my Network Manager.
And… it worked! No more memory-related errors, no more sudden and random connection losses. I was a happy 10MBits-powered user again .
So, considering that I haven’t found this simple solution in the Internet, no matter how hard I looked for it, I came with the following plan. If anyone suffering with Opticom DSLINK 260e modem dropping connectivity will do another google search, hopefully this page will come to help him.
Ahh, and of course, what is the moral of this story?
“If you know linux/hex/asm/telnet/gdb/network/debugging/computers, you are your own technical support”.
And this just proved to be true once again .