I only want to monitor all the Linux buffers exist between TX to RX. I dont want to add any more queues. I try to find the bottleneck of the communication, where the drop are, what the state of those buffers at given time. Im working with communication between android phones.
Im monitoring my kernel message with ftrace. But i can't see the function invoke from the ring buffer which is in the NIC.
Maybe i can monitor the queue at socket buffer with proc/net/udp
and maybe i can count up how much bytes is occupied in the socket buffer by ftrace and reading out malloc_skb,put_skb,push_skb,kfree_skb etc and how many byte involved.
But im having difficulties with queueing discipline,backlog and tx and rx ring buffer since its in different level than socket buffer. Also, i dont know how can i get the information about how much buffers space is occupied at any given time. Where to look it?
Any idea? Anyone has been working with Linux networking buffers?
|