All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vadtec <vadtec@vadtec.net>
To: lartc@vger.kernel.org
Subject: Re: [LARTC] Question about how TC enforces bandwidth limiting
Date: Thu, 06 Sep 2007 17:43:03 +0000	[thread overview]
Message-ID: <46E03C27.3010104@vadtec.net> (raw)
In-Reply-To: <46D758ED.2030705@vadtec.net>

Ok, I messed around with 6 different setups over 10 hours yesterday. The 
only one I can get to work properly is my original one.

So, now I'm to the theory stage of trying to figure this out. I got a 
reply from a mailing list user saying I need to do egress filtering in 
two places.

While I could not understand what they were saying very well, it did 
leave me to ponder this theory. It seems to me the whole problem has 
been how I am handling ingress traffic on eth0 (WAN interface). As it 
stands, I do rate limit it and will drop if its coming in to fast. But 
is there anything thats stopping me from routing ingress traffic through 
the egress queues on its way to the LAN? Or will that seriously break 
traffic shaping?

Is what I'm thinking is, the ingress qdisc doesn't really control 
anything. So, if I were to route it (say with an iptables rule) to an 
egress qdisc on eth1, I could truly control ingress traffic.

I really don't think this will work as it seems like I am quashing all 
the traffic down one side of what should be a two sided link. While I 
cannot think of a way to visualize this with ASCII art, I can summarize 
the ingress and egress pathways in linear format, as such:

   Egress (LAN to Internet)
--------> LAN traffic ---> eth1 (egress) ---> eth0 (egress) ---> WAN 
------------------------------------------
|                                                                       
                                                                        
                           |
|                                                                       
                                                                        
                           |
|                                                                       
                                                                        
                           |
|  Ingress (Internet to LAN)                                            
                                                                        
             |
--------LAN <--- eth1 (ingress) <--- eth0 (egress to eth1 ingress) <--- 
eth0 (ingress) <--- WAN traffic <--------

or

   Egress (LAN to Internet)
--------> LAN traffic ---> eth1 (egress) ---> eth0 (egress) ---> WAN 
------------------------------------------
|                                                                       
                                                                        
                           |
|                                                                       
                                                                        
                           |
|                                                                       
                                                                        
                           |
|  Ingress (Internet to LAN)                                            
                                                                        
             |
--------LAN <--- eth1 (egress) <--- eth0 (ingress to eth1 ingress) <--- 
eth0 (ingress) <--- WAN traffic <--------

I hate to be so pessimistic. But so far all I've gotten is everyone 
saying "You need to filter ingress traffic" with no real or concrete 
examples of how to do such a thing. And the LARTC How To doesn't 
describe it very well either. It's like ingress filtering is just not 
done, and those that do it are using such complicated methods that it's 
not worth sharing them.

So, unless someone can provide me with a concrete example of true 
ingress filtering, or how to filter ingress on the LAN side or WAN side 
or whichever side I need to filter it on, I am completely stuck.

Vadtec
_______________________________________________
LARTC mailing list
LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

  parent reply	other threads:[~2007-09-06 17:43 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-30 23:55 [LARTC] Question about how TC enforces bandwidth limiting Vadtec
2007-09-03 12:05 ` Vadtec
2007-09-03 18:43 ` Martin A. Brown
2007-09-03 20:15 ` Vadtec
2007-09-04  2:09 ` Martin A. Brown
2007-09-04 12:27 ` Vadtec
2007-09-04 13:02 ` Martin A. Brown
2007-09-04 13:39 ` Vadtec
2007-09-06  1:13 ` Vadtec
2007-09-06  2:47 ` Martin A. Brown
2007-09-06  3:04 ` Vadtec
2007-09-06  4:08 ` Vadtec
2007-09-06 17:43 ` Vadtec [this message]
2007-09-06 17:57 ` David Boreham
2007-09-06 18:43 ` Vadtec
2007-09-06 19:32 ` David Boreham
2007-09-06 20:09 ` Vadtec
2007-09-06 20:09 ` Andy Furniss

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46E03C27.3010104@vadtec.net \
    --to=vadtec@vadtec.net \
    --cc=lartc@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.