The gateway part on these little appliance-boxes is usually pretty solid (with any problems people experience usually being line or head-end problems); it's the router part that has all the shite code. (Remember, at least for cable Internet, all the gateways are sitting on a shared medium. If the gateway logic in the box wasn't solid, it'd be causing the ISP problems, by interfering with other customers. By the anthropic principle, the gateways that survive to be purchased+distributed by ISPs are the ones that don't cause them such problems, and therefore the ones that have robust gateway code.)