Mojtaba <mespio@xxxxxxxxx> wrote: > Then let me describe what i am doing. > In VoIP networks, One of the ways to solve the one-way audio issue is > TURN. In this case both endpoint have to send their media (voice as > RTP) to server. In this conditions the server works as B2BUA. Because > of the server is processing the media (get media from one hand and > relay it to another hand), It usages a lot of resource of server. So I > am implementing a new module to do this in kernel level. I test this > idea in my laboratory by adding conntrack entry manually in server and > all things works great. But i need to get more idea to do this > project in best way and high performance, because the QoS very > importance in VoIP networks. What is the best way? Let me know more > about this. In that case I wonder why you need nfqueue at all. Isn't it enough for the proxy to inject a conntrack entry with the expected endpoint addresses of the media stream? I would expect that your proxy consumes/reads the sdp messages from the client already, or are you doing that via nfqueue? I would probably use tproxy+normal socket api for the signalling packets and insert conntrack entries for the rtp/media streams via libnetfilter_conntrack, this way, the media streams stay in kernel.