[dpdk-dev] Guidance about how to carry out flow control at L2

nisarg joshi njnisarg at gmail.com
Mon Jan 27 14:46:18 CET 2020


Hello community,
I am working on a project in ns-3(network simulator) where we have a
NetDevice implemented called "DpdkNetDevice" which emulates a net device
using dpdk. The traffic control module/layer having the qdisc is a part of
ns-3 and the transmit ring is a part of the dpdk environment. Both the
queues are not in sync and we want to implement flow control between these
2 queues. We have a mechanism where we can signal the tc qdisc to stop and
start, but for that, we require to know the empty space in the transmit
ring. Can you please help us out with the correct API we should be using?
Or is there some mechanism that dpdk has implemented for signaling the
upper layers from the transmit ring? We have come across a function called
rte_eth_tx_descriptor_status  using which we are planning to check the
status of the tail to judge if there is empty space. Can you guys help us
in any way regarding this?

Thank you
Regards


More information about the dev mailing list