Scope of Communities [was: Re: Last call for bgp-redistribution]
Jeffrey Haas
jhaas at nexthop.com
Fri Jul 26 18:23:13 UTC 2002
Trimming to:/cc: list.
On Fri, Jul 26, 2002 at 12:01:28PM -0400, William Waites wrote:
> I'm not sure I understand why it seems to be the common
> practice today to strip routes of their communities on
> ingres.
The impression I have been given from chatting with random operators
is that some implementations behave poorly memory-wise in response
to the presence of large numbers of communities.
> I think it can be argued that
>
> O(sum of all AS path lengths compared to number of routes) ==
> O(sum of all community attributes compared to number of routes)
The pathological case is you'll have a distinct community set per
route-instance learned per-peer.
In other words, you may find that this causes you to waste more
memory on a per route-instance basis than you otherwise would.
And operators are already annoyed at the number of prefixes in
the system.
In practice, I think we see that the number of community sets is
pretty reasonable and they tend to be occur multiple times.
This makes them refcountable to save memory.
Additionally, community sets tend to be shared with common
path attribute sets, so the entire path attribute set is refcountable.
This may vary depending on the route mixture. A snapshot of
several core border routers would be instructive.
A quick look at route-views shows the following:
: 120597 network entries and 5576578 paths using 211972329 bytes of memory
1757 bytes per network entry
: 949768 BGP path attribute entries using 49387936 bytes of memory
52 bytes per path attribute entry
: 740005 BGP AS-PATH entries using 18332774 bytes of memory
roughly 25 bytes per AS-PATH entry
: 3724 BGP community entries using 128818 bytes of memory
roughly 35 bytes per community entry.
> -w
--
Jeff Haas
NextHop Technologies
More information about the Ptomaine
mailing list