From: 周介龙 <dil...@12...> - 2012-12-24 11:56:39
|
Hi Alex, thanks for your reply. I used an Agilent N2X packet generator to generate and send TCP packets. The generator could be configured to send all kinds of network packets. I configured it to send 150 byte long TCP packets, 7.35M packets per second (about 10Gbps). The sended TCP packets have normal format: EthernetHeader + IPHeader + TCPHeader + TCPPayload The TCP header of packets is configured as below:(every sended packet has same configuration) TCP Header: Source port: [1-2000, Increment] Destination port: [1-2000, Increment] Sequence number 0 Ackowledge number 0 Data offset: 5 Reserved: 0x00 Code Bits: URG: 0 ACK: 1 PSH: 0 RST: 0 SYN: 0 FIN: 0 Window Size: 0 Checksum: 0x2D71 (automated, differ from packet) Urgent pointer: 0 TCP options: None Sending packets with above configuration causes a lot of rx_missed_error(drop) at the receiving 82599 NIC. But if I just set any flag(in Code Bits field) other than ACK to 1, there would be no errors or drops. Thanks,If any other info is needed, please let me known. Dillan 在 2012-12-21 02:03:15,"Alexander Duyck" <ale...@in...> 写道: >On 12/20/2012 05:56 AM, 周介龙 wrote: >> Hi all, >> I am testing the receive side performance of a 82599EB NIC, using the newest stable driver ixgbe3.11. When receiving 10Gbps tcp pkts with (and only with) ACK flag, I found a lot of drop statistics in the result of ifconfig command and rx_missed_error in the result of ethtool -S. And the cpu utilized percent if less than 40%. If tcp pkts have any flag other than ACK, or have any optional tcp header, the NIC would never drop any pkts. I think it may be caused by RSC feature, but after disabling RSC by "ethtool -C eth* rx-usecs 0" or adding MACRO "-DIXGBE_NO_HW_RSC" in Makefile, the NIC still drops pkts. Also, the RFCTL.RSC_DIS register can not be set to 1. I have also run the same test on different motherboards, CPUs, kernels, and drivers, and got the same result... This problem has been puzzling me for a few months, is there any way to solve it? >> Thanks, >> Dillan Zhou >> > >Hi Dillan, > >It would help if you could explain your test setup. For example how is >it you are generating the TCP frames with the ACK flag set? Also what >rate is it you are sending these packets at? > >Thanks, > >Alex |