Can we (as a community) be leading the way for the NIC vendors? I mean, a few years ago I had the discussion with Chelsio to solve MPLS and GTP load balancing. They were happy to integrate the "requirements" in the roadmap....
So could we build a list of such "requirements" and publish it? NIC vendors are looking ways to differentiate from one another, so I assume this may help us get what we want. In addition to the NIC requirements we may polish an API to control those features in a standard way from DPDK. Fran?ois-Fr?d?ric > -----Message d'origine----- > De : dev [mailto:dev-bounces at dpdk.org] De la part de Prashant Upadhyaya > Envoy? : vendredi 6 d?cembre 2013 05:04 > ? : ???; Thomas Monjalon > Cc : dev at dpdk.org > Objet : Re: [dpdk-dev] generic load balancing > > Hi, > > Regarding this point ? > > If intel supports round robin distribution of packets in the same flow, > Intel needs to provide some way like Cavium's SSO(tag switch) to maintain > packet order in the same flow. And it is hard to do so because intel's cpu > and nic are decoupled > > My main submission is ? I understand there are issues like the above and > ooo stuff you pointed out. > But that is for the usecase implementer to solve in software logic. The > equivalent of tag switch can be attempted to be developed in the software > if the usecase so desires. > But atleast ?give? the facility in the NIC to fan out on round robin on > queues. > Somehow we are trying to find out reasons why we should not have it. > I am saying, give it in the NIC and let people use it in innovative ways. > People who don?t want to use it can always have the choice to not use it. > > Regards > -Prashant > > > From: ??? [mailto:ydwoo0722 at gmail.com] > Sent: Friday, December 06, 2013 7:47 AM > To: Thomas Monjalon > Cc: Michael Quicquaro; Prashant Upadhyaya; dev at dpdk.org > Subject: Re: [dpdk-dev] generic load balancing > > RSS is a way to distribute packets to multi cores while packets order in > the same flow still get maintained. > > Round robin distribution of packets may cause ooo(out of order) of packets > in the same flow. > We also meet this problem in ipsec vpn case. > The tunneled packets are rss to the same queue if they are on the same > tunnel. > But if we dispatch the packets to the other cores to process, ooo packets > may occur and tcp performance may be greatly hurt. > > If you enable rss on udp packets and some udp packets are ip fragmented, > rss of udp fragments(hash only calculated from ip addr) may be different > fom rss of udp non-fragment packets(hash with information of udp ports), > ooo may occur too. > So in kernel driver disables udp rss by default. > > If intel supports round robin distribution of packets in the same flow, > Intel needs to provide some way like Cavium's SSO(tag switch) to maintain > packet order in the same flow. And it is hard to do so because intel's cpu > and nic are decoupled. > > > > > 2013/12/6 Thomas Monjalon > <thomas.monjalon at 6wind.com<mailto:thomas.monjalon at 6wind.com>> > Hello, > > 05/12/2013 16:42, Michael Quicquaro : > > This is a good discussion and I hope Intel can see and benefit from it. > Don't forget that this project is Open Source. > So you can submit your patches for review. > > Thanks for participating > -- > Thomas > > > > > > =========================================================================== > ==== > Please refer to http://www.aricent.com/legal/email_disclaimer.html > for important disclosures regarding this electronic communication. > =========================================================================== > ====