The evolution of commodity hardware makes it a very attractive platform to develop high–performance networking applications that are affordable to deploy. All but the most trivial applications must copy packets into user–space for further analysis. Therefore, the allocation of memory for these copies becomes a performance–critical operation. In this work, we present a multi–layer slice memory allocator specifically designed to take advantage of spatial and temporal locality in dealing with high–speed packet processing applications. Experimental results show that the proposed approach clearly outperforms existing memory allocators in common networking use–cases.
On Memory Allocation for High-Speed Packet Analysis Applications
BONELLI, NICOLA;GAZZARRINI, LORIS;GIORDANO, STEFANO;PROCISSI, GREGORIO;
2013-01-01
Abstract
The evolution of commodity hardware makes it a very attractive platform to develop high–performance networking applications that are affordable to deploy. All but the most trivial applications must copy packets into user–space for further analysis. Therefore, the allocation of memory for these copies becomes a performance–critical operation. In this work, we present a multi–layer slice memory allocator specifically designed to take advantage of spatial and temporal locality in dealing with high–speed packet processing applications. Experimental results show that the proposed approach clearly outperforms existing memory allocators in common networking use–cases.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.