Check that whether you are polling all RX queues of your program. You said that your configuration works well with Wireshark. So I don't think that this is the problem.
You can check your port statistics for the number of received packets. If the statistics show 2 packets, but you received 1 packet, then your program might have mistakes. Keunhong. 2015-06-30 0:39 GMT+09:00 Daeyoung Kim <kdy1029 at gmail.com>: > OK, I see. My program uses RSS. Is it related to my problem? If the > testpmd application does not work, the switch configuration might be wrong. > Am I right? > > Thank you for your answer. > > Regards, > Daeyoung > > 2015-06-29 11:28 GMT-04:00 Keunhong Lee <dlrmsghd at gmail.com>: > >> Actually I have no idea why this happens. >> If your switch configuration is correct, your program should work just >> like Wireshark does. >> I wander whether your program uses RSS. >> In my opinion, program bug is the most probable reason. >> >> Keunhong. >> >> >> 2015-06-29 23:32 GMT+09:00 Daeyoung Kim <kdy1029 at gmail.com>: >> >>> Hi Keunhong, >>> >>> Thank you for your help. Here is the network topology. >>> >>> DNS Client - Switch 1 - Switch 2 - Switch 3 - DNS Server >>> | | >>> port 0 port 1 >>> >>> DPDK port 0 receives packets using from the Switch 1 port mirroring and >>> port 1 receives packets from the Switch 2 using port mirroring as well. As >>> I already said, when I send DNS packets, the wireshark simultaneously gets >>> all the packets on two ports. I'm sorry what I told you is incorrect. Using >>> my program with promiscuous mode, the port 0 receives only DNS queries from >>> the DNS client, but the port 1 receives only DNS replies from the DNS >>> server. I'd like to know why it happens. >>> >>> Thank you very much! >>> >>> Regards, >>> Daeyoung >>> >>> 2015-06-28 20:22 GMT-04:00 Keunhong Lee <dlrmsghd at gmail.com>: >>> >>>> I don't know your situation exactly, but here are possible problems. >>>> >>>> 1. Your switch learned MAC addresses of two ports. >>>> 2. Your program bug. >>>> 3. l3fwd itself contains some bug. >>>> 4. You did not set all ports in promiscuous mode. >>>> >>>> You'd better try 'pktgen' application to test your environment. >>>> >>>> Keunhong. >>>> >>>> >>>> >>>> 2015-06-27 0:45 GMT+09:00 Daeyoung Kim <kdy1029 at gmail.com>: >>>> >>>>> Hello, >>>>> >>>>> I'm writing a packet capture program from the l3fwd. When I send DNS >>>>> packets, the wireshark simultaneously gets all the packets on two >>>>> ports. >>>>> However, using my program with promiscuous mode, one port receives all >>>>> the >>>>> packets, but the other port gets nothing. Do you know why it happens? >>>>> Could >>>>> it be network topology problem using DPDK, a DPDK design like >>>>> forwarding >>>>> mechanism, or just my program bugs? Any comments would be appreciated. >>>>> >>>>> Thanks, >>>>> Daeyoung >>>>> >>>> >>>> >>> >> >