[dpdk-dev] Receiving packets on only one port
I found my problem that one of switches has VLAN option. So basic l3fwd cannot just look into the packets. Now I solved the problem. Thank you for your help. Regards, Daeyoung 2015-06-29 11:44 GMT-04:00 Keunhong Lee : > 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 : > >> 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 : >> >>> 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 : >>> >>>> 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 : >>>> >>>>> 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 : >>>>> >>>>>> 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 >>>>>> >>>>> >>>>> >>>> >>> >> >
[dpdk-dev] Receiving packets on only one port
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 : > 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 : > >> 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 : >> >>> 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 : >>> >>>> 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 >>>> >>> >>> >> >
[dpdk-dev] Receiving packets on only one port
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
[dpdk-dev] Packets lost
Hi all, I'm making 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 on promiscuous mode, I can see the packets on only one port. Do you have any idea of that? Could you give me advice? Thanks, Dan
[dpdk-dev] DPDK packet capture question
Hello, I am a newbie to DPDK. I'm making a packet capture program from the l3fwd sample application. When I tested my program in a virtual environment, it worked. But in a real world, it does not work correctly. In the virtual environment, there are 3 VMs. VM1 sends DNS packets to VM3 and VM3 also replies to VM1. VM2 as DPDK promiscuous mode captures the packets. In this settings, the port 0 receives all the packets, but the port 1 receives nothing. I want to get all the packets on both ports, but anyway it's fine. Now, in the real world, a client sends DNS packets to a DNS server, but between them, there are 3 switches. The DPDK port 0 is connected to the switch 1 and the port 1 is connected the switch 3. The port 0 receives only DNS queries and the port 1 receives only DNS responses. I use Intel I-350 NIC. The network looks like below. CLIENT -> SWITCH1 -> SWITCH2 -> SWITCH3 -> DNS | | PORT 0 PORT 1 I don't know how to fix it. When I tested with WireShark, it received both packets on both ports. Do you have any idea? Am I missing something? Thank you very much in advance. Dan