Hello, all I am now debugging an issue observed in echo server/client. If nclients == small number, then everything goes smoothly, but if nclients is big, such as 500, 1000, echo client will hang without printing final report, and debug shows that echo client is waiting for response from server as it is expecting server to send bytes_to_receive to client. The problems occurs in both TCP and TLS protocol.
if (sp->bytes_to_receive > 0) { delete_session = 0; } My assumption is that due to the big traffic, some packet is missing and re-transmission does not work well. Below the info for normal case, where nclients == 100. DBGvpp# show error Count Node Reason 600 session-queue Packets transmitted 100 tcp4-rcv-process Pure ACKs received 100 tcp4-rcv-process FINs received 600 tcp4-established Packets pushed into rx fifo 600 tcp4-established Pure ACKs received 32 ip4-glean address overflow drops 1 ip4-glean ARP requests sent 1 arp-input ARP request IP4 source address learned Server: DBGvpp# show error Count Node Reason 600 session-queue Packets transmitted 100 tcp4-listen SYNs received 200 tcp4-rcv-process Pure ACKs received 600 tcp4-established Packets pushed into rx fifo 600 tcp4-established Pure ACKs received 100 tcp4-established FINs received 1 arp-input ARP replies sent Below is the info when nclients == 500. Client: DBGvpp# show error Count Node Reason 3104 session-queue Packets transmitted 498 tcp4-rcv-process Pure ACKs received 498 tcp4-rcv-process FINs received 2998 tcp4-established Packets pushed into rx fifo 2892 tcp4-established Pure ACKs received 106 tcp4-established Duplicate ACK Server: DBGvpp# show error Count Node Reason 2998 session-queue Packets transmitted 500 tcp4-listen SYNs received 998 tcp4-rcv-process Pure ACKs received 2996 tcp4-established Packets pushed into rx fifo/ 2 tcp4-established OOO packets pushed into rx fifo 2476 tcp4-established Pure ACKs received 498 tcp4-established FINs received We can see that in clients side, packets transmission is 3104, which is bigger than normal case 600*5, but in the server side, the recived packet is only 2996, which is below 3000, which causes only 498 FIN is sent from client, so 2 live session makes "test echo" hang until timeout. Thanks Ping
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#10233): https://lists.fd.io/g/vpp-dev/message/10233 Mute This Topic: https://lists.fd.io/mt/24876529/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-