| To: | hadi@xxxxxxxxxx |
|---|---|
| Subject: | Re: [PATCH 2/4] deferred drop, __parent workaround, reshape_fail , netdev@oss.sgi.com , |
| From: | sandr8 <sandr8_NOSPAM_@xxxxxxxxxxxx> |
| Date: | Tue, 17 Aug 2004 15:40:58 +0200 |
| Cc: | laforge@xxxxxxxxxxxxx, devik@xxxxxx, netdev@xxxxxxxxxxx, netfilter-devel@xxxxxxxxxxxxxxxxxxx |
| In-reply-to: | <1092743526.1038.47.camel@jzny.localdomain> |
| References: | <411C0FCE.9060906@crocetta.org> <1092401484.1043.30.camel@jzny.localdomain> <20040816072032.GH15418@sunbeam2> <1092661235.2874.71.camel@jzny.localdomain> <4120D068.2040608@crocetta.org> <1092743526.1038.47.camel@jzny.localdomain> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mozilla Thunderbird 0.7.3 (Windows/20040803) |
jamal wrote: It is used all over the stack. Lets defer this part of the discussion - even if we never "fix" this it doesnt matter. sorry, i meant the two new inline functions something like enqueue(dev) that will indirectly call dev->qdisc->enqueuei was wondering if it would be and handle in that single place that stuff that does not fit well in net/core/dev.c Dropping packets at the policer is policy definition. Dropping packets at the qdisc due to full queue is an accident. An accident that in a good system shouldnt happen. why it should not happen in a good system? it is an accident that is a sympthom of something. when we encounter that accident we detect that "sympthom" at the scheduler. the way the scheduler reacts to that sympthom is imho part of the policy. i'm somehow advocating that the policer is something more than the mere filter, but the filter + that part of the scheduler that decides what to drop... from that viewpoint there is no big difference between the filter drop and the "accidental drop" performed nevertheless in compliance with a given policy. For the accident part i agree with why not in the other case? :'''( well, since later on you ask me what i have in mind, it would be more clear there why i personally would need it in any case. Yes, this is a hard question. Did you see the suggestion i proposed if it is the centralization of the stats with the reason code that, for what concerns the ACCT, says wheter to bill or unbill i think it is _really_ great :) still, for what concerns the multiple interface delivery of the same packet i don't see how it would be solved... would there be any magic to have some conntrack data per device without having to execute the actual tracking twice but without locking the whole conntrack either? what could be the "magic" to let the conntrack do the hard work just once and handle the additional traffic policing information separately, in an other data structure that is mantained on a device basis? that could also be the place where to count how much a given flow is backlogged on a given interface... which could help in choosing the dropping action... sorry, am i going too much further? I mean it is grabbed from the qdisc and a DMA of the packet isso, after (maybe better to say while :) qdisc is run and dequeues the packet. well, your approach seems to be the most coherent one... I believe the cost of using you mean having a fine grained lock just for the stats? it is not ready, but to say it shortly, i'm trying to serve first who has beenthis because it would force me to have more complexity in the enqueue _served_ the less. from the first experiments i have made this behaves pretty well and smootly, but i've noticed that _not_ unbilling can be pretty unfair towards udp flows, since they always keep sending. it simply has a priority dequeue that is manained ordered on the attained service.i think that in that case, i'd better duplicate the work and account that if no drop occours, then accounting before enqueueing simply forecasts the service that will have been attained up to the packet currenlty being enqueued when it will be dequeued. [ much easier to code than to say... ] cheers, jamal ciao ;) |
| Previous by Date: | Re: [PATCH] SLAB_PANIC cleanup, James Morris |
|---|---|
| Next by Date: | Re: [PATCH 2/4] deferred drop, __parent workaround, reshape_fail, sandr8 |
| Previous by Thread: | Re: [PATCH 2/4] deferred drop, __parent workaround, reshape_fail, jamal |
| Next by Thread: | Billing 1: WAS (Re: [PATCH 2/4] deferred drop, __parent workaround, reshape_fail , netdev@oss.sgi.com ,, jamal |
| Indexes: | [Date] [Thread] [Top] [All Lists] |