[j-nsp] Multi Core on JUNOS?

Saku Ytti saku at ytti.fi
Thu Oct 8 12:46:26 EDT 2015

On 8 October 2015 at 18:45, Giuliano (WZTECH) <giuliano at wztech.com.br> wrote:


> And the change now announced on 15.1 (new release) using freebsd 10 will not help to solve it ?

It's the step#1, they can get the underlaying OS to support SMP.

But rpd is still 100% flat, run-to-completion. You can almost think of
FreeBSD as hypervisor and rpd as virtual pc on top of it, it has own
scheduler, memory management etc.
IOS-XE is almost same architecture, Linux with flat ios as process.
Otoh iosd is already slightly distributed and runs like 5 threads (but
no meaningful routing work is distributed).

Easy step#2 would be to give rpd affinity to push it on its own dedicated core.

Hard step#3 is to make rpd use multiple cores. JNPR seems to choose to
DIY inside rpd and just launch threads. I personally would like to see
rpd distributed to multiple OS processes, and capitalise more on
FreeBSD's memory management and scheduling. But I'm not sure how to
handle the IPC efficiently without large cost in data duplications
across processes.


More information about the juniper-nsp mailing list