I am a beginner in DPDK. I have trouble in understanding the ring library in DPDK. What is the importance of it and where is it used?