I am using tcp-direct technology to optimize my client program.
When sending a request every 100 nanoseconds or more, everything is normal.
But when calling the zft_send_single interface without sleep to send a request, only a few dozen packets can be successfully sent out.
Using Wireshark to capture packets, a large number of 【TCP-Retransmission】and 【TCP Out-Of-Order】 packets appear.
At the same time as the request, I also called ztf_send_space to query available space in the send queue, After sending dozens of packets, the available buffer keeps decreasing to 0, and then the program crashes。
My question:
How to use TCP direct technology to achieve continuous data transmission without sleep? I have used the ztf_send_space interface to query available space in the send queue, but the buffer will not recover until the program crashes.
Please help me, this problem has been bothering me for two weeks now.