On 11/28/2012 02:58 AM, Ashutosh Gautam wrote:
Hi, I want to drop the packet on the basis of aging of the queue. Aging is the time for which packet can reside in the queue.If packet remains in the queue more than aging time then we have to drop the packet. For this i have added a field in the skb structure lets say qInTime which will be updated at the time of enqueing to the queue with the time of enqueue.We can calculate the aging time (time of dequeue - skb->qInTime) while dequeing the packet.Depending on the configured/custom aging of queue we have to drop the packet.I have added field aging in Qdisc structure for aging. I have added code for dropping packet in the dequeue function of the queue (RED and FIFO) used on the basis of aging time.Ideally the number of packets going in to htb tree is equal to the number of packets coming out from htb tree.As we are consuming (dropping) packets in the htb tree of traffic control so it is showing warning as "pfifo qdisc 300: is non-work-conserving?". Please suggest the way/place for dropping packet on the basis of aging.Please help me ASAP.
Have you looked at "codel" or "fq_codel" in the more recent kernels? The COntrolled DELay algorithm/heuristic does something that sounds rather like what you are looking for, albeit with a couple tweaks.
rick jones -- To unsubscribe from this list: send the line "unsubscribe lartc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html