Re: How do I know my driver support RSS?

From: Yuehai Xu
Date: Sat Mar 03 2012 - 23:31:15 EST


On Sat, Mar 3, 2012 at 7:10 PM, Ben Hutchings <bhutchings@xxxxxxxxxxxxxx> wrote:
> On Sat, 2012-03-03 at 16:25 -0500, Yuehai Xu wrote:
> [...]
>> Since I read the following statements from a paper, "we use a separate
>> hardware receive and transmit queue for each core and configure the
>> IXGBE to inspect the port number in each incoming packet header, place
>> the packet on the queue dedicated to the associated memcached's core,
>> and deliver the receive interrupt to that core." and the background of
>> this configuration is that each memcached is pinned to a separate core
>> and has its own UDP port. It seems that IXGBE's driver can detect UDP
>> packets according to their port numbers and put these packets into
>> corresponding receive queues in the hardware, is this achieved by
>> configuring RSS in IXGBE? If it is, I am wondering whether bnx2
>> supports RSS and whether it can configure in the same way.
>>
>> I appreciate any help for this.
>
> You're confusing RSS (flow hashing) with flow steering.  These are both
> explained in Documentation/network/scaling.txt.
>
> Ben.
>
I appreciate your replying!! What confuses me is that for each UDP
socket with exclusive port number, it has RX queue in transport layer,
and network card might also have multiple RX queues. These two queues
are definitely different. So, is it possible to configure network card
to put packets to queues(RX queues in network card) according to hash?
I read the codes of RPS/RFS, it seems that packets are put into queues
in transport layer of sockets instead of queues in network card. Am I
correct?

I appreciate any replies.

Yuehai
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/