Subject: ALTQ: help with altq_etherclassify
To: None <current-users@netbsd.org>
From: Lista de NetBSD current <list11@sepc.edu.mx>
List: current-users
Date: 02/20/2002 10:01:21
Hello

I am running -current (Feb 2 2002) i386, my kernel was
compiled with the "altq most common options". After to run
/etc/rc.d/altqd start, I got a lot of error messages:

altq_etherclassify: headers span multiple mbufs: 14 < 34
altq_etherclassify: headers span multiple mbufs: 14 < 34
altq_etherclassify: headers span multiple mbufs: 14 < 34

I have compiled the kernel again with NMBCLUSTERS=4096
and "make USETOOLS=no depend all", but when I reboot the
machine and start altqd, the same messages appears,
exactly with the numbers 14 and 34 (a lot of times).

My reason of use ALTQ is for limit the bandwidth of the
service 1214/tcp (kazaa, morpheus, audiogalaxy)

This is my network diagram
Exposed LAN
------------------
      |ex0
------------
| -current |
| i386 with|
| ALTQ     |
------------
      |ex1
      |ex0
------------
|1.5.2/i386|
|ipf/ipnat |
| squid    |
------------
      |ex1
------------------
Hidden LAN

This is my altq.conf (adapted from sample0)

#
# configuration file for 1Mbps link
#
interface ex0 bandwidth 1M cbq
class cbq ex0 root NULL pbandwidth 100
#
# meta classes
#
class cbq ex0 ctl_class root pbandwidth 4 control
class cbq ex0 def_class root borrow pbandwidth 95 default
#
class cbq ex0 bulk def_class borrow pbandwidth 40
class cbq ex0 misc def_class borrow pbandwidth 20
class cbq ex0 intr def_class borrow pbandwidth 30
#
# leaf classes
#
#  bulk data classes
#
class cbq ex0 tcp bulk borrow pbandwidth 10 red
        filter ex0 tcp 0 0 0 0 6        # other tcp
class cbq ex0 ftp bulk borrow pbandwidth 10 red
        filter ex0 ftp 0 0 0 20 6       # ftp-data
        filter ex0 ftp 0 20 0 0 6       # ftp-data
class cbq ex0 http bulk borrow pbandwidth 20 red
        filter ex0 http 0 0 0 80 6      # http
        filter ex0 http 0 80 0 0 6      # http
#
# misc (udp) classes
#
class cbq ex0 udp misc borrow pbandwidth 10 red
        filter ex0 udp 0 0 0 0 17       # other udp
#
# interactive classes
#
class cbq ex0 kazaa intr borrow pbandwidth 15 red
        filter ex0 kazaa 0 0 0 1214 6      # kazaa
        filter ex0 kazaa 0 1214 0 0 6      # kazaa
class cbq ex0 raudio intr borrow pbandwidth 15 red
        filter ex0 raudio 0 0 0 7070 6    # raudio
        filter ex0 raudio 0 7070 0 0 6    # raudio


Does somebody can tell me some hints?

Thanks in advance

Heron Gallegos
Centro Siglo XXI - Informatica Educativa
Saltillo Coahuila, Mexico
-------------------------------------
# ALTQ options "altq most common options"
#
options 	ALTQ		#alternate queueing
options 	ALTQ_CBQ	#class based queueing
options 	ALTQ_WFQ	#weighted fair queueing
options 	ALTQ_FIFOQ	#fifo queueing
options 	ALTQ_RED	#random early detection
#options 	ALTQ_FLOWVALVE	#flowvalve for RED (needs RED)
options 	ALTQ_RIO	#triple red for diffserv (needs RED)
#options 	ALTQ_LOCALQ	#local use
options 	ALTQ_HFSC	#hierarchical fair service curve
#options 	ALTQ_ECN	#ecn extention to tcp (needs RED)
#options 	ALTQ_IPSEC	#check ipsec in IPv4
options 	ALTQ_CDNR	#diffserv traffic conditioner
#options 	ALTQ_BLUE	#blue by wu-chang feng
options 	ALTQ_PRIQ	#priority queue
#options 	ALTQ_NOPCC	#don't use processor cycle counter
#options 	ALTQ_DEBUG	#for debugging