cvs commit: src/sys/net if.h

Alfred Perlstein alfred at freebsd.org
Tue Jun 12 18:23:26 UTC 2007


* Robert Watson <watson at FreeBSD.org> [070611 17:24] wrote:
> 
> On Mon, 11 Jun 2007, Kip Macy wrote:
> 
> >>I think its a windowism, stands for Receive Side Scaling, and what it 
> >>means is multiple receive queues, each with an MSI/X vector so they can 
> >>interrupt different CPUs, or they can be tied to virtual guests, or MACs, 
> >>etc etc...
> >
> >AFAICT FreeBSD can't currently benefit from this as there is no cpu 
> >affinity for connections. I may be wrong, but I see lower 
> >single-connection throughput using a receive queue per core than using a 
> >single receive queue. RSS is done by hashing a TCP tuple (I'm deliberately 
> >vague because at least with cxgb there are multiple combinations, the 
> >default is the standard 4-tuple) to a receive queue.
> 
> If you're looking at concurrent TCP input processing, the tcbinfo lock is 
> likely one source of overhead due to high contention.  I had hoped to make 
> further progress on this for 7.0 (it's already better than 6.0 in a number 
> of ways), but the instability of 7.x over the last month scuttled that 
> project. It will have to be an 8.0 thing, but perhaps we can look at an MFC 
> if that goes well.  I have some initial protyping but have been waiting for 
> TCP to settle down again a bit before really digging in.

Robert, have you added placeholder fields to objects that require
them for support?  This would help the MFC effort.

-- 
- Alfred Perlstein


More information about the cvs-all mailing list