[curtis@ans.net: Re: [curtis@ans.net: Re: BGP4 stuff: Local Preference Computation]]

Cristina Radulescu-Banu <cristina@midnight.com> Fri, 06 September 1996 15:58 UTC

Received: from ietf.org by ietf.org id aa08992; 6 Sep 96 11:58 EDT
Received: from cnri by ietf.org id aa08988; 6 Sep 96 11:58 EDT
Received: from merit.edu by CNRI.Reston.VA.US id aa09842; 6 Sep 96 11:58 EDT
Received: (from daemon@localhost) by merit.edu (8.7.5/merit-2.0) id LAA16031 for idr-outgoing; Fri, 6 Sep 1996 11:12:15 -0400 (EDT)
Received: from interlock.ans.net (interlock.ans.net [147.225.5.5]) by merit.edu (8.7.5/merit-2.0) with SMTP id LAA16026 for <bgp@merit.edu>; Fri, 6 Sep 1996 11:12:12 -0400 (EDT)
Received: by interlock.ans.net id AA24478 (InterLock SMTP Gateway 3.0 for bgp@ans.net); Fri, 6 Sep 1996 11:12:04 -0400
Received: by interlock.ans.net (Internal Mail Agent-2); Fri, 6 Sep 1996 11:12:04 -0400
Received: by interlock.ans.net (Internal Mail Agent-1); Fri, 6 Sep 1996 11:12:04 -0400
Date: Fri, 6 Sep 1996 11:14:58 -0400
Message-Id: <199609061514.LAA00341@rasarit.midnight.com>
Sender: ietf-archive-request@ietf.org
From: Cristina Radulescu-Banu <cristina@midnight.com>
To: curtis@ans.net
Cc: bgp@ans.net, rwoundy@vnet.ibm.com, jgs@ieng.com
Subject: [curtis@ans.net: Re: [curtis@ans.net: Re: BGP4 stuff: Local Preference Computation]]
Reply-To: Cristina Radelescu-Banu 617/890-1001 <cristina@midnight.com>
X-Orig-Sender: owner-idr@merit.edu
Precedence: bulk

------- Start of forwarded message -------
Return-Path: <curtis@brookfield.ans.net>
To: cristina@midnight.com (Cristina Radelescu-Banu 617/890-1001)
Cc: curtis@ans.net, bgp@ans.net, rwoundy@vnet.ibm.com, jgs@ieng.com
Reply-To: curtis@ans.net
Subject: Re: [curtis@ans.net: Re: BGP4 stuff: Local Preference Computation] 
In-Reply-To: Your message of "Thu, 05 Sep 1996 13:04:58 EDT."
             <9609051704.AA05271@tick.midnight.com> 
Date: Thu, 05 Sep 1996 14:55:28 -0400
From: Curtis Villamizar <curtis@ans.net>

In his  message Thu, 05 Sep 1996 14:55:28 -0400, Curtis Villamizar writes:

In message <9609051704.AA05271@tick.midnight.com>om>, Cristina Radulescu-Banu writ
es:
> ------- Start of forwarded message -------
> Return-Path: <curtis@brookfield.ans.net>
> To: cristina@midnight.com (Cristina Radelescu-Banu 617/890-1001)
> Cc: bgp@ans.net, rwoundy@vnet.ibm.com, jgs@ieng.com
> Reply-To: curtis@ans.net
> Subject: Re: BGP4 stuff: Local Preference Computation 
> In-Reply-To: Your message of "Wed, 04 Sep 1996 15:34:29 EDT."
>              <199609041934.PAA00467@rasarit.midnight.com> 
> Date: Wed, 04 Sep 1996 18:54:46 -0400
> From: Curtis Villamizar <curtis@ans.net>
> 
> 	In message received from Curtis Vilamizar, he wrote:
> 
> In message <199609041934.PAA00467@rasarit.midnight.com>om>, Cristina Radulescu-B
> an
> u writes:
> > 
> > 	I have some problems in implementing BGP4, and if you could
> > clarify some of them , this would be great.
> > 
> > 	I understood that LOCAL_PREF is used as degree of preference only for
> > the BGP4 speakers located in the SAME Autonomous System. The Degree of
> 
> That's MED.  LOCAL_PREF has always been compared regardless of AS.
> 
> 	At least from what I read, it doesn't seem like that.
> 	I will quote from RFC 1771:
> 
>          e) LOCAL_PREF (Type Code 5):
> 
>             LOCAL_PREF is a well-known discretionary attribute that is a
>             four octet non-negative integer. It is used by a BGP speaker
>             to inform other BGP speakers in its own autonomous system of
>                                                ~~~~~~~~~~~~~~~~~~~~~~~
>             the originating speaker's degree of preference for an
>             advertised route. Usage of this attribute is described in
>             5.1.5.
> 
> and:
> 
> 	5.1.5   LOCAL_PREF
> 
>    LOCAL_PREF is a well-known discretionary attribute that shall be
>    included in all UPDATE messages that a given BGP speaker sends to the
>    other BGP speakers located in its own autonomous system. A BGP
>                                  ~~~~~~~~~~~~~~~~~~~~~~~~~
>    speaker shall calculate the degree of preference for each external
>    route and include the degree of preference when advertising a route
>    to its internal peers. The higher degree of preference should be
>    preferred. A BGP speaker shall use the degree of preference learned
>    via LOCAL_PREF in its decision process (see section 9.1.1).
> 
>    A BGP speaker shall not include this attribute in UPDATE messages
>    that it sends to BGP speakers located in a neighboring autonomous
>    system. If it is contained in an UPDATE message that is received
>    from a BGP speaker which is not located in the same autonomous
>                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~            
>         
>    system as the receiving speaker, then this attribute shall be
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    ignored by the receiving speaker.
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This means don't send LOCAL_PREF to an EBGP peer.

> 9.1.1 Phase 1: Calculation of Degree of Preference
>  
> 	   For each newly received or replacement feasible route, the local BGP
>    speaker shall determine a degree of preference. If the route is
>    learned from a BGP speaker in the local autonomous system, either the
>                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
>    value of the LOCAL_PREF attribute shall be taken as the degree of
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    preference, or the local system shall compute the degree of
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    preference of the route based on preconfigured policy information. If
>  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    the route is learned from a BGP speaker in a neighboring autonomous
> 
>    system, then the degree of preference shall be computed based on
>    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    preconfigured policy information.  The exact nature of this policy
>    information and the computation involved is a local matter.  The
>    local speaker shall then run the internal update process of 9.2.1 to
>    select and advertise the most preferable route.

The preconfigured policy information is then put into the LOCAL_PREF
attribute.  This text should be more clear.  It seems that everyone
who has already implemented BGP4 agrees on the interpretation but the
text was never very clear.

Don't send LOCAL_PREF to an EBGP peer.  Don't accept LOCAL_PREF from
an EBGP peer.  Decide what your preference is based on configured
policy.  Then put that into LOCAL_PREF.  Then use LOCAL_PREF as the
first value in a comparison.

This is exactly what I have done; (it's pretty clear in RFC; the
confusing thing was the message about  Local Preference Computation,
which I think should be the Degree of Preference Computation )

	BTW, one of the device I tested doesn't accept ANY Update
packet if the LOCAL_PREF is not defined, even if the 2 peers are in
different AS . So, for them this LOCAL_PREF is mandatory. I think 
a good thing which should appear in RFC is  the one "John
G. Scudder" pointed out, that the LOCAL_PREF should be FORBIDDEN on 
external links. 


Curtis

------- End of forwarded message -------

-- 
			Cristina

...............................................................................
Cristina Radulescu-Banu : Midnight Networks 200 Fifth Avenue Waltham MA 02154
cristina@midnight.com  : Vox 617/890-1001 Fax 0028 The Best in Network Software
	
   I'm trying so much to communicate my thoughts by speaking that I
		     can't move my arms anymore.