From: George Bonser <george@thebackrow.net>
To: lartc@vger.kernel.org
Subject: [LARTC] I know there must be a way ...
Date: Tue, 11 Dec 2001 22:10:12 +0000 [thread overview]
Message-ID: <marc-lartc-100810869803719@msgid-missing> (raw)
Looking through all the advanced routing docs I can find, I think I have
dug up enough parts to cobble something together to do what I need but I
am befuddled. Here is a description of my problem:
Two providers. A primary I will call provider-A and a backup that I will
call provider-B. I collect full routes from both by BGP. My aggregate
traffic output varies from about 130MB in the middle of the night up to
about 300MB during the day ... a little lower on the weekends. Provider-B
is more expensive and has a 50MB minimum. I have fiddled with my BGP so
that I end up sending about 45-50MB of traffic to provider-B during my
peak time of the day. What I would like to do is pretty much nail
provider-B to 50MB at all times using a Linux box in the traffic path.
A bit more detail on what I am trying to do:
A packet arriving from inside my network has 4 possible dispositions.
1. There is a route to the destination from both providers (most likely).
2. There is a route only from Provider-A.
3. There is a route only from Provider-B.
4. There is no route from either provider.
I can make zebra put routes into realms. I can then check arriving packets
to see if a realm has a route to the destination. Packets in disposition 2
must go to provider-A, packets in disposition 3 must go to provider-B.
Packets in disposition 1 are what I call "the pool" and may go to either A
or B to get to their distination.
What I want to do is create three streams ... A, B, and Pool. I need to
mark A so that it gets routed to provider-A (with FWMARK or some other
means ... say TOS), mark stream B so that it is nailed to provider B, BUT
when stream B is below 50MB, I want to pull in packets from the pool to
bring it up to 50. I do NOT want to rate-limit at 50 because if I loose my
link to provider-A or they have a peering issue, more than 50MB might need
to go to B, I just want to stop pulling traffic from the pool at that
point. Any traffic in the pool remaining after B has pulled what it wants
would be marked for provider-A.
What I end up with is something like this:
Traffic that can only be routed to A goes to A
Traffic that can only be routed to B goes to B
If B is less than 50MB, get some of the traffic that could go to either A
or B to make up the difference
Remaining traffic goes to A.
Is anyone here ever done this?
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://ds9a.nl/lartc/
next reply other threads:[~2001-12-11 22:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-11 22:10 George Bonser [this message]
2001-12-11 23:00 ` [LARTC] I know there must be a way bert hubert
2001-12-11 23:19 ` bert hubert
2001-12-12 20:10 ` George Bonser
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-100810869803719@msgid-missing \
--to=george@thebackrow.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox