Slashdot Mirror


Why Do We Have To Restart Routers?

jaypaulw writes "I've owned a WRT54G, some cheap D-Link home Wi-Fi/firewall/routers, and now an Apple Airport Extreme (100/10 ethernet ports). In the context of the discussion about the worst uses of Windows — installation in places where an embedded device is superior — I've gotten to wondering why it's necessary to reboot these devices so frequently, like every few days. It seems like routers, purpose-built with an embedded OS, should be the most stable devices on my network."

16 of 936 comments (clear)

  1. My theory... by Anonymous Coward · · Score: 3, Interesting

    I base this on absolutely nothing, but my primary suspect is the cheapskate power supplies that these devices come with. However I've never cared enough to test it out.

    1. Re:My theory... by Cramer · · Score: 4, Interesting

      The AC adapters they've bundled in recent years are smaller than a deck of cards, yet I'm supposed to believe that they can put out 3 amps of current at 5VDC indefinitely?

      Yes and no. Yes, a power supply the size of 2 US quarters can (and does) generate stable 5VDC@3A forever provided you never exceed specs (lightning, bath tubs, overheating, etc.) However, these things cost more than the pennies cheap hardware makers are willing to put into the process. They go as cheap as possible... huge coil of chinese wire (read: transformer), a diode, capacitor, and regulator (ala 7805) (if it's a "good" one.) [Note: most cheap hardware has the regulator in the unit, not the wall-wart.] [Note 2: USR/3com is even cheaper... the wall-wart is 100% transformer. It turns 120AC into 20AC.]

  2. It shouldn't be... by evilviper · · Score: 4, Interesting

    I've gotten to wondering why it's necessary to reboot these devices so frequently, like every few days.

    It's cheap, fast development... Not bothering to pay attention to correctness, not watching for memory leaks, etc., etc.

    It shouldn't be that way, of course. I got an old K6-2 system, underclocked it to 100MHz, removed CPU fan and replaced the PSU fan with a very slow and quiet model to make a nearly-silent 8watt system. Then installed OpenBSD on a 32MB CF card (stripped of unnecessary binaries for size, but otherwise completely normal), and have been using that for years. It will run indefinitely, without a reboot. My record for uptime so far is 5 months, and it's only that short because of power outages, and I don't feel the need for a UPS for my router...

    It seems like routers, purpose-built with an embedded OS, should be the most stable devices on my network.

    There's nothing about being "an embedded OS" that should make it any more or less stable.

    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  3. BitTorrent?? by Anonymous Coward · · Score: 4, Interesting

    I had a WRT54GX for years that never needed a reset, until I started using BitTorrent. Then its 4KB (?) connections table would fill up and the device would hang. Had to build an OpenBSD firewall to handle the many active and inactive connections you get with BT.

  4. You're doing it wrong? by Kattspya · · Score: 3, Interesting

    I've used some Zyxel router that needed restarting every few days until I found out the maximum amount of open connections and bandwidth it could take then it usually only crashed once a month.

    Now I've got an old PII with a CF as HDD running monowall and maximum uptime so far is about two months. It would appear that the modem is more flaky than the router so I've restarted it needlessly a few times. I'm inclined to think it's hardware causing problems when the router crashes on its own. It's a bare motherbord sitting ontop a cabinet with four NIC's (I had an abundance of NIC's but no switch) and it gets a bit jangled from time to time in its exposed position. I'm amazed that it works at all.

    Try to limit the amount of open connections if you're running bittorrent and maybe the bandwidth too. If that doesn't help you should probably build your own router. m0n0wall works for me and I've heard good things about IPCop.

  5. Ironic Connection Sharing by irlyh8d2 · · Score: 3, Interesting

    I just use a cheap Pentium 2 running Windows XP with Internet Connection Sharing. Disabled the automatic updates and firewalled it properly over 18 months ago, and haven't had to touch the machine since.

  6. Re:TCP Timeout by sr.+bigotes · · Score: 4, Interesting

    That sounds like an excellent candidate. These cheap home routers have very small routing tables (probably less than 512 entries for the WRT54G). If they're not ejecting old entries because of these extremely long timeouts and the table fills up, you're not going to be able to connect to anything new.

  7. The most likely causes by jd · · Score: 3, Interesting
    ...for a router to require rebooting are memory leaks (especially for the routing tables or ARP tables), buffer overflows (same), a portscan or other attack - say by a zombie or skriptkiddie - putting the system into an unrecoverable state (eg: resources exhausted), or a kernel (likely driver) bug putting the kernel into an unrecoverable deadlock. There's almost nothing else that can possibly go wrong in a software router, at least to the point of locking the system up.

    Ok, the router software - likely ripd, xorp, quagga or zebra for any domestic ADSL router - might crash, but the worst that will happen then is that you don't learn new routes. Since DSL providers don't tend to switch their internal IP addresses very often, that should not impact any existing subnet. It means tunnels can't be generated on-the-fly, it also means your next-door neighbor can't connect their LAN party to your wireless connection, but it shouldn't impact you in the slightest.

    The next question, however, is how on Earth are you noticing the router needs rebooting? The kernel is quite capable of rebooting itself under many (but not all) soft lockups. Linux provides several such mechanisms for doing just that. A simple watchdog circuit, using a bistable circuit, a couple of capacitors, a relay and a trigger line that has to change state, could be added by a manufacturer for maybe a couple of dollars. It probably doesn't even need to be that complex.

    When it does reboot, LinuxBIOS is under 3 seconds and I don't imagine OpenBIOS is that much slower. Intel's Tiano probably is, but it's open source so you can rip out anything that's useless. Therefore, recovery times should be barely detectable to an end user. (Most websites vary in download times by more than 3 seconds between visits. Unless you're playing Netrek or WoW at that precise moment, I seriously doubt you'll notice a 3 second outage.)

    Finally, however, why isn't the router using carrier-grade software? Again, carrier-grade Linux exists, which should give you 5N uptimes in the worst possible case. Domestic routers are not worst-possible. Even data centers rarely get the kind of stress that could be expected to force an unrecoverable state. If your router is not overheating, has plenty of RAM, and needs rebooting more than once every other year, there is something seriously defective in the software or hardware.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  8. Re:The most likely reason by nuintari · · Score: 5, Interesting

    mod parent up, as I came here to say that.

    Also, the Linksys WRT54G up to version 4 was a fine router, plenty of memory, ran Linux, was very stable. Then Linksys decided that quality wasn't nearly as important as driving me batshit insane, and we started getting tons of complaints about users needing to reboot Linksys routers, which came _highly_ recommended from the geek squad over at worst buy.

    The modern WRT54G, and anything past version 4, that doesn't have an 'L' in the name is an utter piece of crap, firmware revisions to the VXworks OS they now run have helped, but they are still lockup city.

    --

    --Nuintari

    slashdot : where an opinion can be wrong.

  9. Re:The most likely reason by bangthegong · · Score: 4, Interesting

    I have to agree on the first point about power. i have experienced that power has a big impact on stability, especially on linksys. I have had several linksys devices (WRT54G, WAP54G, WRT150N) and they all got flaky when too many devices were powered from the same outlet (I have a multiple monitor setup with a KVM and multiple computers). Moving these routers to another outlet in all cases helped, but it unfortunately was not convenient. I didn't try a UPS, but that seems logical. I have found that my Airport Extreme is less sensitive to the power on the same outlet. So I repurposed the Linksys devices, and keep the Airport near my desk, but lesson learned.

  10. Re:The most likely reason by badasscat · · Score: 4, Interesting

    Also, the Linksys WRT54G up to version 4 was a fine router, plenty of memory, ran Linux, was very stable.

    Yeah, I have a 1.1, which I didn't even know until right now (checked the sticker), and I don't think I've rebooted that thing once in the entire time I've owned it. It's been running continuously right now for at least six months 24/7, and before that had a stint of probably 2 years uninterrupted. (I was forced to use Verizon's POS FiOS router for a little while.)

    I was about to leave a comment wondering what the hell the submitter was talking about, because to me the WRT54G is probably the most stable router that exists. It really couldn't *be* anymore stable. But I didn't realize there were such problems with version 4 and above.

  11. Re:The most likely reason by thegrassyknowl · · Score: 4, Interesting

    All the Linux-based ones (decidedly few, admittedly) I have seen use the same DNS proxy (dnsmasq). I guess it's just not perfectly stable but I haven't seen a reboot anymore than once every few months.

    I gave up on mine and turned it into a dumb PPPoE bridge. An OpenBSD box at the border handles the dirty guff of PPP sessions and NAT. Now my connection is perfectly stable and the modem never needs to be rebooted. To top it all off I trust the BSD box and the firewall I created on it more than I trust the router to do it properly.

    --
    I drink to make other people interesting!
  12. Re:embedded network devices by bwy · · Score: 5, Interesting

    Funny, I think everyone here has had to reboot their router to solve problems in the past. But, in typical slashdot fashion, 99.9 percent of the posts are people telling the author of the question that he is stupid, lacks intellectual ability, must be a high school drop out, or has some bastardized sexual persuasion that prevents his router from working.

    As you say, it could be an unrelated issue that resetting the state machine fixes. In this case though I guess I superior device could do this on its own.

  13. Re:The most likely reason by Malc · · Score: 4, Interesting

    Is that OpenBSD on a 12W device that sits silently on a shelf?

    Personally I prefer to use a decent modem. I have a SpeedTouch DSL modem that seems to be more functional than most consumer routers, as well as being one of the more stable modems I've used on a marginal line. I connect my wireless devices to my network just on the switch side (use them as wireless access points and not routers). Very stable set up.

  14. Re:The most likely reason by Captain+Segfault · · Score: 3, Interesting

    Bottom line is that after three hard drive failures in the course of a little over a month (yes, I have a third Seagate drive misbehaving massively, randomly corrupting data)

    Are you /sure/ your power supply is sufficient and your drive(s) are sufficiently cooled?

  15. Re:The most likely reason by Nemo's+Night+Sky · · Score: 3, Interesting

    It could easily be a uPnP thing.