fpgasystems / fpga-network-stack

Scalable Network Stack for FPGAs (TCP/IP, RoCEv2)
BSD 3-Clause "New" or "Revised" License
699 stars 256 forks source link

TCP windows size exeded then stall #21

Open Thales2 opened 3 years ago

Thales2 commented 3 years ago

Hi,

I adapted your code to run on the KC705 at 10Gbps. I tested ping, echo server, PC to FPGA custom data transfer and it work fine so far.

I have however an issue when the FPGA send the data to the PC.

I wrote a server (FPGA) that wait for a connection from a PC application and then send test data . (thing iperf3 with option -R i.e. server send) . I make sure I use the txMeta interface to reserve space before seeding a packet, but otherwise I send as fast as I can.

This work for a couple packet then the FPGA stall and stop to send packet and on wireshark I can see a lot on TCP WINDOWS UPDATE and it seen the PC cannot keep with the FPGA.

On chipscope, I stall on the SEND_PACKET state and more specifically on a txData.write() blocking statement.

My question is the stack support changing windows size ?

GraceDouX commented 9 months ago

Hi,do you know the tcp port number, i want to test TCP transform by using iperf but don't find the TCP port number.