About RIPE | Contact  | Search | Sitemap    
Homepage RIPE  
RIPE Community Mail Archives
search  
     
RIPE Navigation Ends
About RIPE Maillists
Maillists Archive
Global Lists
Non Active Lists
RIPE NCC Navigation Ends
Next Section
<<< Chronological >>> Author Index    Subject Index <<< Threads >>>

A summary of changes of RIPE-81++ from last RIPE meeting

  • From: Tony Bates < >
  • Date: Fri, 26 Aug 1994 16:23:56 +0200

This is the promised summary of changes of document to help focus
discussion at the forthcoming RIPE meeting.

URL: ftp://ftp.ripe.net/ripe/drafts/ripe-81++.changes.txt -- Text version
URL: ftp://ftp.ripe.net/ripe/drafts/ripe-81++.changes.ps  -- PS
version

		--Tony.









         Summary of changes in RIPE-81++ from previous RIPE
                              Meeting.





                             Tony Bates

                         23rd August, 1994






1.  Introduction

In an effort to focus discussion for the forthcoming RIPE meeting in
Lisbon  in  September  I have made a brief outline of the changes to
the RIPE-81++ draft from the last RIPE meeting. It is  divided  into
two  sections;  basic  and major changes.  The major changes section
will be most relevant for the forthcoming RIPE meeting and  in  par-
ticular  the  RIPE routing working group. The latest RIPE-81++ draft
is available from:
URL: ftp://ftp.ripe.net/ripe/drafts/ripe-81++.{ps,txt}

2.  Basic Agreed Changes

This sections details the changes that were  agreed  and  have  been
fully  incorporated  into  the  current draft of RIPE-81++.  All the
changes are with respect to the RIPE-81++  proposal  tabled  at  the
RIPE meeting in Amsterdam in May, 1994. In each case only very brief
detail is given as these changes have been agreed by consensus.

Network Lists.

Add the use of network lists in the routing policy  expression  com-
ponent.   This  will  be in the form proposed by Merit. i.e. list of
nets separate by commas within braces:

{ 35.0.0.0/8, 192.87.45.0/24 }


Extension to "default" attribute

There is a set  of  additional  OPTIONAL  components  added  to  the
default attribute.  See RIPE-81++ for more details.
                               - 2 -


Syntactic SUGAR

We added in  the  additional  reserved  words  to  make  the  syntax
clearer.  NOTE: the reserved words will all be in lower-case to dis-
tinguish them from special policy keywords and communities.

Here is a summary of current SUGAR to add and where.



        accept
        announce
        exclude
        from
        to
        transit


Examples of the usage of the reserved words are:

as-in: from neighborAS accept route

as-out: to neighborAS announce route

as-exclude: exclude ASpath to destination

as-transit: transit ASpath to destination

default: from neighborAS accept route

default: to neighborAS announce route


Note: that as-transit is an experimental attribute. See below.


Network Representation

We used the "prefix length" notation  documented  in  the  classless
proposal paper. i.e.

35.0.0.0/8
192.87.45.0/24



"as-reject" changed to "as-exclude"

The text remained the same. The name of the attribute changed.


3.  Major Changes

This section details the major changes with  respect  to  the  draft
                               - 3 -


presented at the RIPE meeting in Amsterdam in May, 1994.


The "component" attribute is gone

The component attribute was dropped as it was deemed to be too  com-
plex to understand and too difficult to maintain and guard. The out-
come of this is two new attributes and one new object  that  facili-
tate the functionality of the component attribute


1) withdrawn attribute
     Often is is useful to show a route that has been withdrawn from
     the  routing table. The has become very important now that CIDR
     is  deployed  as  service  providers  start  to  withdraw  more
     specific routes from an aggregate.


2) hole attribute
     For tools in can be very useful to indicate "holes" in  a  CIDR
     aggregate where there is currently no expected connectivity.


3) inet-rtr object
     This allows you to detail the interfaces of a router as well as
     the  AS  the  router  belong  to.  This is extremely useful for
     routes/networks which fall into the category of what used to be
     called  "inter-as  networks"  described  by  the proposed to be
     obsoleted "ias-int" attribute in  the  "inetnum"  object.  This
     object is described in:
     Bates, T., "Specifying an  `Internet  Router'  in  the  Routing
     Registry", July, 1994. DRAFT.
     URL: ftp://ftp.ripe.net/drafts/inet-rtr.{ps,txt}


The "interas-in" and "interas-out" attributes.

This is an additional set of attributes added to detail local  poli-
cies  between  any two ASes which have more than one interconnecting
link. This description is necessary only if the ASs are connected in
more  than  one  way and the routing policy and differs at these two
connections.


Example:


                LINK1
   193.0.1.1 +----------+ 193.0.1.2
             |          |
AS1------AS2==           ==AS3-----AS4
             |          |
   193.0.1.5 +----------+ 193.0.1.6
                 LINK2
                               - 4 -


Descriptions of interas policies do  not  replace  the  global  pol-
icy  described   in  as-in, as-out and other policy attributes which
always describes the  global  policy  between  the  two  ASes.   The
interas-in/out  attributes only specify local variations to the glo-
bal policy described in the other attributes. If the  global  policy
mentions  more  routes  than the local policy then local preferences
for these routes are assumed to be equal for all links.

A simple extendable syntax has  been  defined  for  this  additional
information.  For details of this refer to the ripe-81++ draft.


Possible outstanding issues with interas-in/interas-out

A major discussion point came from these attributes


The ordering
     There were two styles of ordering proposed.

     A) interas-in: <my id> [from] ASxx <neighbor id>  <pref>  <pol-
     icy>
     B) interas-in: [from] ASxxx <my id> <neighbor id> <pref>  <pol-
     icy>

     Fortunately, an executive decision has been made by  the  chair
     of  the RIPE routing group to go with option B. The main reason
     behind this is for consistency with the as-in and as-out attri-
     butes.


Clarification of evaluation of operators.

Some text has been added to clarify the ordering of how the  logical
operators  are evaluated in routing policy expressions and what they
actually mean. It was recognised that ripe-81++  was  weak  on  this
point.

This text is taken verbatim from the ripe-81++ draft:

 ....  <routing policy expression> can take the following formats.

     1.   A list of one or more ASes, AS Macros, Communities or Net-
          work Lists.

          A Network List is a list  of  network  numbers  in  prefix
          length  format,  separated  by  commas,  and surrounded by
          curly brackets (braces, i.e. `{' and '}').


          Examples:
                               - 5 -



               as-in: from AS1103 100 accept AS1103
               as-in: from AS786  105 accept AS1103
               as-in: from AS786   10 accept AS786 HEPNET
               as-in: from AS1755 110 accept AS1103 AS786
               as-in: from AS3333 100 accept {192.87.45.0/16, 128.141.0.0/16}


     2.   A set of KEYWORDS.  The  following  KEYWORD  is  currently
          defined:


          ANY  this means anything the neighbour AS knows.

     3.   A logical expression of either 1 or 2  above  The  current
          logical operators are defined as:

          AND
          OR
          NOT

          This operators are defined as true BOOLEAN operators  even
          if  the  operands  themselves do not appear to be BOOLEAN.
          Their operations are defined as follows:

          Operator       Operation      Example

             OR          UNION          AS1 OR AS2
                                        |
                                        +-> all routes in AS1 or AS2.

             AND         INTERSECTION   AS1 AND HEPNET
                                        |
                                        +-> a route in AS1 and belonging
                                            to community HEPNET.

             NOT         COMPLEMENT     NOT AS3
                                        |
                                        +-> any route except AS3 routes.

          Rules are grouped together using parenthesis i.e  "("  and
          ")".

          The ordering of evaluation of operators and there associa-
          tion is as follows:

          Operator        Associativity

             ()           left to right
            NOT           right to left
            AND           left to right
             OR           left to right
                               - 6 -


          NOTE: if no logical operator is given  between  ASes,  AS-
          macros,  Communities,  Network  Lists  and  KEYWORDS it is
          implicitly evaluated as an `OR' operation.  The OR can  be
          left  out for conciseness. However, please note the opera-
          tors are still evaluated as below so make sure you include
          parentheses  whenever needed.  To highlight this here is a
          simple example. If we denoted a  policy  of  for  example;
          from AS1755 I accept all routes except routes from AS1, A2
          and AS3 and you enter the following as-in line.


          as-in: from AS1755 100 accept NOT AS1 AS2 AS3


          This will be evaluated as:


          as-in: from AS1755 100 accept NOT AS1 OR AS2 OR AS3


          Which in turn would be evaluated like this:

          (NOT AS1) OR AS2 OR AS3
          -> ((ANY except AS1) union AS2) union AS3)
          --> (ANY except AS1)

          This is clearly incorrect and not the desired result.  The
          correct syntax should be:


          as-in: from AS1755 100 accept NOT (AS1 AS2 AS3)


          Producing the following evaluation:


          NOT (AS1 OR AS2 OR AS3)
          -> (ANY) except (union of AS1, AS2, AS3)


          Which depicts the desired routing policy.
          Note that can also be written as below  which  is  perhaps
          somewhat clearer:


          as-in: from AS1755 100 accept ANY AND NOT (AS1 OR AS2 OR AS3)



  • Post To The List:
<<< Chronological >>> Author    Subject <<< Threads >>>
 

Next Section
     About RIPE | Site Map | LIR Portal | About the RIPE NCC | Contact | © RIPE Community. All rights reserved.
RIPE.NET Homepage LIR Portal RIPE Community