ipprecedence

Petri Helenius pete at he.iki.fi
Sun Jul 6 07:59:26 PDT 2003


Eugene Grosbein wrote:

>Luigi Rizzo wrote:
>
>  
>
>>
>>How could the scheduler decide when to drain the queue ?
>>    
>>
>
>It should move packets from zero-bw WFQ pipe the interface FIFO
>as soon as possible but should consider weights 
>(100 packets from one queue then 1 from another and so on).
>
>  
>
That would not be right because packets that need priority
might arrive later than you move non-priority packets into
the interface FIFO.

The "right" way to do this is like Luigi  mentioned, you
have a rather short (a few packets, depending on interface/pipe
bandwidth) hardware queue and then fill the hardware queue
from your scheduling algorithm. If you're lucky enough to
have more than one hardware queues, then it becomes an
issue of  doing the same thing but you can stuff the "bulk" data
into the low-priority queue with larger hardware window.

Any decent piece of hardware has at least 256 if not 1024 or 4096
transmit and receive descriptors, which is quite a long queue even at
100Mbps.

Pete




More information about the freebsd-net mailing list