Design Article
Multicores can transform IP-based wired/wireless networking
Eric Carmes
9/23/2009 12:00 AM EDT
The explosion of IP-based applications and services heralds in a convergence of telecommunications and IT toward IP architectures. This simplifies the networking architecture but leads to major challenges. A summary of challenges includes:
- The communications layer for the next generation network (NGN) will need tremendous performance enhancements and sophistication.
- IT systems (such as application servers and billing systems) will have to manage multi-10 Gbps traffic.
- The IP layer to be implemented in each piece of equipment becomes a critical component.
- Green computing will be essential to limit power consumption.
Important technical design complexities are inherent in progressing toward multicore, but the advantages are many. Developing embedded networking software for multicore can be perceived as complex because standard software cannot fully benefit from multicore improvements and requires some long and costly redesign phases for each protocol. No matter the roadblocks, the shift from running a processor at a higher frequency, as previously the only solution to increase processing capabilities, is well underway. Rightly so, as multicore allows several processors working in parallel to do the load while keeping power consumption under acceptable limits.
So, it's important to ensure complete layer 2-4 software functionalities for multicore. This includes:
- A new need for embedded networking software specifically for multicore that includes an efficient fast path architecture to make the best use of multicore performance according to the number of cores; It can be achieved using a specific multicore execution environment (MCEE), which provides APIs to implement lock-free packet processing that optimizes memory bandwidth contention and leads to unrivalled performance, compared with a standard operating system.
- A flexible distribution of the control plane/slow path/fast path over the cores, and a complete synchronization between these three elements running in separate environments.




embedded_enthusiast
9/24/2009 8:34 AM EDT
Perhaps you should but every sentence on a separate page. Then you could have 800 pages.
Sign in to Reply
embedded_enthusiast
9/24/2009 8:34 AM EDT
but=put
Sign in to Reply
eric.carmes
9/24/2009 3:48 PM EDT
Thanks for your interesting comment. Next time, try to make it shorter (it will avoid typos).
Sign in to Reply
codinflu
10/15/2009 2:45 PM EDT
Thanks, for the article, which is very unique and make great influence on me.
Referring to application that runs on the fast path cores, you say:
"The programming model used in a bare-metal environment is the: Run to Completion model: as soon as a packet has been allocated to a core, all the processing on this packet will be done by this core."
do you know any open-source project to use on fast path cores(while running linux on control plane)?
How about LwIP? eCos? Any examples?
Sign in to Reply
eric.carmes
10/16/2009 1:25 PM EDT
Hi
Thanks for your comments. I'm happy to know you find the article interesting.
To answer your questions, I'm not aware of Open Source projects on Multicore Fast Path-based packet processing.
Regarding LwIP, ecos, I think OS stacks (even if there are "light") are not adapted to multicore Fast Path. To have a detailed answer, I suggest you should check the following link on the Multicore Packet Processing Forum:
www.multicorepacketprocessing.com
http://www.multicorepacketprocessing.com/os-networking-stacks-like-linux-are-not-well-adapted-to-multicore-packet-processing/
It should give you some interesting information.
Thanks again for your post.
Sign in to Reply