If I understand correctly, this would allow us also easier peering with other networks as quagga supports also redistribution of routes and so on. So if we decide for OSPF, it will be easy also to setup BGP on border nodes within the single daemon, no?
Yes, quagga has BGP, but depending on your organizational structure, it might be easier to use OSPF on your peering links. It depends on your peers. If its The Internet, then you probably have little choice, you need BGP. However, if your peer is another mesh network, you can decide for your self what routing protocol to use.
How CPU and memory heavy it is to run it on consumer routers like TP-links and so on? Probably depends on number of routes and not on itself? But is there a big penalty of running it on all nodes?
I've used quagga on Gateworks Cambria devices, with a Xscale CPU, 667MHz, 128Mbytes RAM. These tend to have more RAM than typical consumer devices, but i've no idea how much is actually consumed.
Andrew