From owner-freebsd-net@FreeBSD.ORG Tue Jul 17 10:55:28 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1C157106564A; Tue, 17 Jul 2012 10:55:28 +0000 (UTC) (envelope-from venkatduvvuru.ml@gmail.com) Received: from mail-gg0-f182.google.com (mail-gg0-f182.google.com [209.85.161.182]) by mx1.freebsd.org (Postfix) with ESMTP id B61858FC0C; Tue, 17 Jul 2012 10:55:27 +0000 (UTC) Received: by ggnm2 with SMTP id m2so268224ggn.13 for ; Tue, 17 Jul 2012 03:55:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=T6+Axv4ldeSB3i/M4iXJZyXwydEZSuVudE9HAf85MsE=; b=BA1Jldpc9bFFAe4Gb4pP2C+p5IS1knnBgu/odRCJ1M9j+aozkXCJrlh1jDGu2M67+o s+6sysRAjV6j1oNdhdsRUWNu0LH2+Zi9abfwkMrZ4SaFtzB386xmtJUV1UcRgrVo04r4 5l45Y1NeNXKLm3Z5Ko17uqmjVsq8pbY8HyxKSerA3LiyINNzlDbgrkvYMYrjAjKRwqjc 8GFWO2nzcW61ix7wq06YFKjcxrA4CCn2hJQhf0v5i1BhcFcZ+SL6aKadBLrRDONeC4QF OSGVd6H67hE/uq8bDZQzXiLnFvhI9OH83PVYqIOKFfEveuKawFwbN1B2JJMUR++tOQI3 r5tg== MIME-Version: 1.0 Received: by 10.50.184.198 with SMTP id ew6mr903852igc.27.1342522526659; Tue, 17 Jul 2012 03:55:26 -0700 (PDT) Received: by 10.64.106.202 with HTTP; Tue, 17 Jul 2012 03:55:26 -0700 (PDT) In-Reply-To: <174885088.20120517122111@serebryakov.spb.ru> References: <174885088.20120517122111@serebryakov.spb.ru> Date: Tue, 17 Jul 2012 16:25:26 +0530 Message-ID: From: Venkat Duvvuru To: lev@freebsd.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-net@freebsd.org Subject: Re: IPv6 flowid hash calculation X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Jul 2012 10:55:28 -0000 Hi Lev, Thanks for your response. I browsed through Freebsd's network stack code and here is my observation. If driver sets the queue index in receive path and sets FLOWID flag in mbuf then this information will be stored in tcp control block and the same queue index will be used while transmitting and further in the stack, the same information will be used irrespective of enabling and disabling FLOWTABLE. But I observed that irrespective of on which queue, the ipv6 packet is received, transmit is happening always on queue 0. /Venkat On Thu, May 17, 2012 at 1:51 PM, Lev Serebryakov wrote: > Hello, Venkat. > You wrote 16 =D0=BC=D0=B0=D1=8F 2012 =D0=B3., 10:09:29: > > VD> This question is related to the hash calculation done as part of > selecting > VD> the transmit queue for IPv6 traffic. > VD> I observed that no matter how many queues you use in the driver, the = tx > VD> traffic is always coming on queue 0. > VD> Did anybody else observed this behaviour? > VD> Note: IPv4 traffic is coming on all the tx queues. > flowid is specified by MS & Intel only for IPv4 traffic (hash > function, which is used to determine queue is defined only for IPv4 > packet header). All other traffic (PPPoE, IPv6, etc.) goes into queue > 0. There is nothing could be done on driver level, it is firmware (and > "standard") problem. > > I was told, that top-level ("server-grade") 1G and 10G Intel NICs > have configurable user-defined filters (think: firewall and QoS in > hardware), and, may be, it could be done on this level, but I don't > know any open-source drivers, which support this feature. > > -- > // Black Lion AKA Lev Serebryakov > >