From owner-freebsd-net Mon Jun 3 12:29:22 2002 Delivered-To: freebsd-net@freebsd.org Received: from iguana.icir.org (iguana.icir.org [192.150.187.36]) by hub.freebsd.org (Postfix) with ESMTP id CBE0E37B404 for ; Mon, 3 Jun 2002 12:29:14 -0700 (PDT) Received: (from rizzo@localhost) by iguana.icir.org (8.11.6/8.11.3) id g53JTDC78767; Mon, 3 Jun 2002 12:29:13 -0700 (PDT) (envelope-from rizzo) Date: Mon, 3 Jun 2002 12:29:13 -0700 From: Luigi Rizzo To: Lars Eggert Cc: net@FreeBSD.ORG Subject: Re: Dummynet WFQ Message-ID: <20020603122913.A78688@iguana.icir.org> References: <3CFB9BC4.9080506@isi.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: <3CFB9BC4.9080506@isi.edu>; from larse@ISI.EDU on Mon, Jun 03, 2002 at 09:39:32AM -0700 Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On Mon, Jun 03, 2002 at 09:39:32AM -0700, Lars Eggert wrote: > Hi, > > the Dummynet page has this example WFQ configuration: > > ipfw add queue 1 ip from any to 10.1.2.0/24 > ipfw queue 1 config weight 5 pipe 2 mask dst-ip 0x000000ff > ipfw pipe 2 config bw 300Kbit/s > > The 300Kbit/s seems to be the bandwidth limit of the uplink. I'd imagine > that extra uplink bandwidth would remain unused in this setup, right? Is > it possible to do WFQ when the uplink bandwidth is unknown/unspecified? the signal that tell the WFQ algorithm when you can transmit the next packet comes from the pipe. The latter ticks either at a predefined rate (as configured with the 'bw NNN bit/s' parameter), or from the tx interrupt coming from a device (e.g. you can say something like 'bw ed0' to get the transmit clock from device ed0). HOWEVER: i have implemented the necessary machinery in dummynet (it is a function called if_tx_rdy()) and in the user interface, "ipfw", but have not added the hooks to call if_tx_rdy() in each device driver because these calls are somewhat expensive, and you probably do not want them on a 100Mbit/s interface. See http://www.geocrawler.com/archives/3/165/2002/3/0/8222181/ on how to use them (a search for "dummynet if_tx_rdy()" should return some results). I should definitely commit this stuff on the slow interfaces, or perhaps in such a way that the callback is only invoked if there is a client for it, once 4.6R is released. cheers luigi To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message