All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leonardo Balliache <leoball@opalsoft.net>
To: lartc@vger.kernel.org
Subject: [LARTC] HTB burstable for 2 interface , how ?
Date: Mon, 07 Jul 2003 03:54:41 +0000	[thread overview]
Message-ID: <marc-lartc-105755016511036@msgid-missing> (raw)
In-Reply-To: <marc-lartc-105722285902235@msgid-missing>

Hi, Don:

  > INTERNET
  > |
  > |eth0 202.14.41.1
  > BW.Manager
  > | |
  > | +----eth1----192.168.1.0/24
  > |
  > +------eth2----192.168.2.0/24
  >
  > Total incoming bandwidth to eth0 is 1024kbps
  > should be shared to eth1 and eth2, which mean each get 512Kbps and
  > burstable to 1024Kbps if other host is idle.

 > This doesn't make sense to me.
 > The fact that an internal host is idle does not justify not sending
 > traffic TO it.
 >
 > The suggestions to use IMQ+HTB seem to miss the problem that
 > if someone sends 1024 to eth1 then nobody has a chance to even
 > begine to send anything to eth2.

Why not?

Ignore those bandwidth controller devices for a moment.

TCP flows compete to cope the available bandwidth. If your link capacity is 
1024kbit and you start sending 1024kbit to the interface eth1 and sometime 
later (the time you want) begin to send 1024 kbit to interface eth2, you 
can be truly sure that when flows stabilize each of them will be try to 
cope 50% of the available bandwidth defined by the link capacity. Finally 
each flow will be 512kbit.

Now put on your controller devices. They can control the upper level of the 
flows but no the flows themselve. TCP is always testing the bandwidth 
availability trying to get more share from it. What stop this? When a 
packet is dropped the inner congestion control mechanism is fired and TCP 
reduce automatically its rate. Finally the fight converge to every flow 
sharing the upper level defined by the controller device, as soon as those 
flows have enough packets to reclaim it.

Conclusion: use your bandwidth controllers but never forget the TCP natural 
behavior.

Best regards,

Leonardo Balliache




_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

  parent reply	other threads:[~2003-07-07  3:54 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-03  8:56 [LARTC] HTB burstable for 2 interface , how ? rio
2003-07-03  9:12 ` Stef Coene
2003-07-03  9:12 ` ???????? ?????
2003-07-03  9:18 ` Martin Devera
2003-07-03  9:38 ` rio
2003-07-03  9:50 ` Stef Coene
2003-07-03 11:45 ` Joel
2003-07-04 16:39 ` Don Cohen
2003-07-07  3:54 ` Leonardo Balliache [this message]
2003-07-09  3:22 ` Leonardo Balliache

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=marc-lartc-105755016511036@msgid-missing \
    --to=leoball@opalsoft.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.