> They are all software based routers... It really shouldn't matter > whether an Appliance Application (i.e. some routing program is running > on a minimal runtime environment ) or a routing program is running as > part of an OS or as an Application on an OS. It is all Software until > it > becomes silicon. > > The only issue is how far off the metal you are and its not hardware > based routing really until there is no OS, no development environment, > no software involved right?
As has been pointed out, hardware/appliance/software can be a highly semantic issue, at least for some people. OP seemed like a specific question couched in vague terms - I'd rather have a discussion about what OP was trying to accomplish than rehash "Vyatta as a BRAS". What's specifically important is the distinction between an 'appliance' platform (like a MIPS or Cisco routing switch), and what I presume OP infers a 'software' platform to be (an x86 box running iptables or Quagga). In that case, I would tell OP that the PCI/PCI-e bus architecture isn't built to handle the rampant interrupts (or polling) that a real routing/switching workload generates. The bus controller is built/sized to pump data to and from a video card/IO controller/etc, not to ship Ethernet packets up to the CPU and back out again in 8 different directions. On the other hand, moving packets between 8 interfaces is exactly what a routing switch like a Cisco 3750 is built to do. So, I wanted to retrieve the values of 'software router' and 'appliance' from OP to see if that's where he was going. Best Regards, Nathan Eisenberg