A buffer management method for a multi-core processor on a modem board in a telecommunications network, comprising: providing a lock-less, zero copy buffer management for one or more Data Link Layer applications and providing at least a user space application interface to application software running in user space; performing the buffer management by the multi-core processor in a separate hardware component that comprises a plurality of separate pools of tokens and that arbitrates simultaneous access from multiple cores of the processor, the buffer management comprising managing separate pools of tokens, wherein the tokens comprise pointers to memory areas in kernel space memory external to the separate hardware component; and managing by a custom driver Data Path Acceleration Architecture (DPAA) resources including buffer pools and frame queues to be used for user plane data distributing, the DPAA being designed to optimize multicore network processing; providing by the custom driver lock-less, zero copy buffer management with pre-allocated memory for the buffer module, the providing comprising: acquiring a contiguous chunk of the external kernel space memory; mapping the contiguous chunk of kernel space memory to user space to allow user mode applications access to data stored in the external kernel space memory to eliminate data copy that otherwise occurs whenever data crosses a kernel-to-userspace boundary; initializing a number of pools, a number of tokens per pool, and a size of the buffers to which the tokens point; and seeding the pools with tokens, wherein the buffer manager is further operative to use lock-less hardware (DPAA) arbitration and de-queue a token from the pool after a packet arrives and, when a buffer is released, enqueue the token back onto the pool. providing a lock-less, zero copy buffer management for one or more Data Link Layer applications and providing at least a user space application interface to application software running in user space; performing the buffer management by the multi-core processor in a separate hardware component that comprises a plurality of separate pools of tokens and that arbitrates simultaneous access from multiple cores of the processor, the buffer management comprising managing separate pools of tokens, wherein the tokens comprise pointers to memory areas in kernel space memory external to the separate hardware component; and managing by a custom driver Data Path Acceleration Architecture (DPAA) resources including buffer pools and frame queues to be used for user plane data distributing, the DPAA being designed to optimize multicore network processing; providing by the custom driver lock-less, zero copy buffer management with pre-allocated memory for the buffer module, the providing comprising: acquiring a contiguous chunk of the external kernel space memory; mapping the contiguous chunk of kernel space memory to user space to allow user mode applications access to data stored in the external kernel space memory to eliminate data copy that otherwise occurs whenever data crosses a kernel-to-userspace boundary; initializing a number of pools, a number of tokens per pool, and a size of the buffers to which the tokens point; and seeding the pools with tokens, wherein the buffer manager is further operative to use lock-less hardware (DPAA) arbitration and de-queue a token from the pool after a packet arrives and, when a buffer is released, enqueue the token back onto the pool. acquiring a contiguous chunk of the external kernel space memory; mapping the contiguous chunk of kernel space memory to user space to allow user mode applications access to data stored in the external kernel space memory to eliminate data copy that otherwise occurs whenever data crosses a kernel-to-userspace boundary; initializing a number of pools, a number of tokens per pool, and a size of the buffers to which the tokens point; and seeding the pools with tokens, wherein the buffer manager is further operative to use lock-less hardware (DPAA) arbitration and de-queue a token from the pool after a packet arrives and, when a buffer is released, enqueue the token back onto the pool.