Let's suppose the following (egress) flow:
[app (nginx)]-->[send_buffer(tcp_wmem)]-->(qdisc txqueuelen)-->[tx_ring]<--(dma)-->[nic]
For the tx_ring buffer I can use the driver script to ensure the affinity and for the qdisc I can use fq_codel but for the application (nginx) I do have cpu_worker_affinity but how I can make sure that the nginx worker N on CPU/core X is on the same (network) flow of X ?
Do the nginx worker N running on X always get the send/rcv buffer of X? (ensured by the kernel?)
No comments:
Post a Comment