Hacker News new | past | comments | ask | show | jobs | submit login

I used that as a kid, in place of Microsoft's internet connection sharing software that my dad had set up. I vaguely recall it worked better for multiplayer games.

Any layer 3 router is basically just a computer and software. Some of the more mechanical tasks can be accelerated in hardware, but that's only important with really high throughout setups. It is pretty impressive how much data you can shovel through a modest CPU, though. Part of that is the fact that CPUs process many bits in parallel. You could imagine a 20 year old CPU running at 100Mhz shovelling 50 million words per second between memory locations, which at 32-bits is 1.6Gbps.




I wouldn't overstate the software routing performance too much. That 100MHz cpu would probably struggle to route even 100Mbps, especially with conntrack or/and small packet sizes.

Also, in hardware routers packets are routed on dedicated custom silicon without them hitting the relatively slow general purpose CPU.


I was describing raw data shovelling throughput. Of course there's going to be per-packet overhead. 100Mbps internet connections were quite rare 20 years ago, so the point still stands that for a layman / average home LAN, general purpose CPUs can shovel an impressive amount of network traffic.

Sure, you'll likely need purpose-made hardware above a certain amount of throughput. I suspect that practical threshold these days is between 1Gps and 10Gbps, although it's a much grayer line than it was 20 years ago. The network interfaces are likely the bottleneck rather than the CPU's ability to shovel, and latency will always be higher than dedicated hardware.

There will of course always be a need for hardware to go faster than what a CPU can do. Tbps is becoming a unit folk use regularly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: