[Xorp-hackers] Multiple protocol instances within the same process.
Bruce M Simpson
bms at incunabulum.net
Fri Sep 5 07:13:08 PDT 2008
Ben Greear wrote:
> Using one set of xorp processes per virtual router, we (Candela) can
> support 50+ on a high end machine ( 2 x 4-core system).
>
> In my opinion, the thing to do for more scalability would be to have all
> of the xorp processes for a single router
> in the same process (not 4+ processes like it is now). This would
> probably be a lot easier to support than
> having multiple virtual routing engines inside a single process, and
> would cut down on a lot of extraneous message
> passing between processes.
>
Sadly, it isn't a simple matter of doing what crunchgen on FreeBSD does;
it is similar in intention to busybox; it coalesces multiple executables
into a single image.
A single process approach is hard to achieve with the current
architecture, when one considers that there are things going on in
function main() individually for each process; it would require
refactoring a number of things e.g. folding everything into the same
EventLoop, changing calls which use getpid() to use a different form of
unique identifier, no doubt there are other things which need changing.
It's not impossible, it's just a lot of work. In the short to medium
term, to gain scalability, shared libraries are an easier change to make
(reduce memory footprint), followed by, perhaps, shared memory based
XRLs (streamline IPC latency).
Back to the original question:
We do support multiple instances of OSPFv3, but not for OSPFv2.
There hasn't been a requirement for it. I understand though that folk
might be interested in that for things like traffic engineering, vpn etc
when using OSPFv2 as their IGP.
If folk are willing to transplant the OSPFv3 instance tags to
OSPFv2, great stuff; it will involve some amount of refactoring.
When writing xorp_olsr last year I ended up importing xorp_ospf into
Bouml to understand how things were put together. I probably still have
the UML models somewhere if folk are interested in that.
thanks
BMS
More information about the Xorp-hackers
mailing list