INTERNET-DRAFT Carol Orange
Expires May 26, 1998 RIPE NCC
<draft-ietf-rps-transition-02.txt> David Kessens
ISI
21 November 1997
RIPE-181 to RPSL Transition Plan
Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working docu-
ments of the Internet Engineering Task Force (IETF), its areas, and its
working groups. Note that other groups may also distribute working doc-
uments as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet- Drafts as reference material
or to cite them other than as "work in progress."
To view the entire list of current Internet-Drafts, please check the
"1id-abstracts.txt" listing contained in the Internet-Drafts Shadow
Directories on ftp.is.co.za (Africa), ftp.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
Abstract
The standardization of RPSL (Routing Policy Specification Language) is
imminent, and there is a user community eager to make use of the power-
ful features it offers in the Routing Registry (IRR). Thus, a plan of
action is needed to assure a successful transition from the RIPE-181
language currently employed to describe routing policies in the IRR to
the more expressive RPSL. This document describes such a plan, which
the authors believe can be used to bring about a successful transition
in a timely fashion with a minimum of disruption to the IRR and its cur-
rent role in Internet routing. This document will be modified to
reflect the progress of the transition if appropriate.
1. Introduction
The Routing Registry (IRR) is a set of 5 (soon to be more) public
databases in which network operators can publish their routing policies
and their routing announcements such that other network operators can
make use of the data. In addition to making Internet topology visible,
the IRR is used by network operators to check on peering agreements,
determine optimal policies, and more recently, to configure their
routers.
Orange, Kessens Expires May 26, 1998 [Page 1]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
Currently, the language used to describe peering policies is that
described in RIPE-181 [1]. The usefulness of the IRR has inspired the
development of a more powerful language, namely the Routing Policy Spec-
ification Language (RPSL). The primary benefits of RPSL in comparison to
RIPE-181 result from its increased expressiveness. More specifically,
network operators are able to express precisely the specifications they
use to configure their routers. This results in an easy mapping between
the router configuration language and the data contained in the IRR.
In this document, we describe a transition plan for moving the IRR from
RIPE-181 to RPSL. The transition plan is designed to meet the following
criteria:
Stability
The IRR is currently used both as a source of information, and as a
tool in performing daily operations such as router configuration.
Therefore, it must remain stable and operational throughout the
transition.
User Support
Whereas RPSL brings a wealth of improvements to the IRR, at no
point in time should current users face uncertainties about its
state and how to make the best use of it. If users become confused
about the proper mechanisms and language at some point in time,
they may turn their backs on the IRR, and stop using it altogether.
As the IRR is only as useful as the data maintained in it, this can
put the success of the current system at risk, rather than allow us
to benefit from RPSL.
Timeliness
Certainly with the specification of RPSL in its final stages, many
people are keen to make use of the new language features. The tran-
sition should therefore take place as quickly as feasible.
In the remainder of this document, we will describe a plan designed to
meet the criteria listed above. Before doing so, we will review briefly
the set of changes to take place.
2. Changes
Before discussing how to perform the transition from RIPE-181 to RPSL,
let's consider briefly the differences in these two languages.
The information maintained in the Routing Registry is stored in a number
of RIPE database objects [2]. Peering policies are described in aut-num
objects; routing announcements in route objects, and a group of AS's can
be defined in an as-macro object. The syntax used in these objects is
referred to as RIPE-181 [1].
Orange, Kessens Expires May 26, 1998 [Page 2]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
The RPSL language is also expressed in a set of RIPE database objects.
Any expression that can be described in RIPE-181 can be described in
RPSL. Much of the RPSL language cannot, of course, be described in
RIPE-181. The key differences are:
More Expressive Syntax
The syntax to describe routing policies in aut-num objects is simi-
lar to that of RIPE-181, but significantly richer. This allows net-
work operators to register real world routing policies precisely
and concisely.
A RIPE-181 route object translated to RPSL is almost identical to
its original form. However, the RPSL route object syntax is far
more expressive. For example, one can describe the route type
(static, aggregate, etc.).
New as-set Object
The new as-set object in RPSL replaces the as-macro object in
RIPE-181. The syntax is slightly different.
New route-set Object
The route-set object in RPSL has no equivalent in RIPE-181. It
allows the grouping of address prefixes, and can be used, for exam-
ple to limit the set of address space for which routes will be
accepted from an AS.
A good introduction to RPSL can be found in [3], and the definitive lan-
guage description is in [4].
3. Transition Plan
In this section, we describe the RIPE-181 to RPSL transition in terms of
four stages. The four stages are distinguished by the user view of the
database, and in particular which specification language can be written
to the authoritative database, and in what language the data can be
read. Each of these stages is intended to be stable and to facilitate
some specific parts of the transition process.
3.1. Phase 1: Write RIPE-181, Read RIPE-181
This is the phase we are in at the time of this writing. During this
phase, the RIPE-181 IRR continues to be used.
Activities currently underway are:
Software Development
Software is currently being written to parse the RPSL language.
Orange, Kessens Expires May 26, 1998 [Page 3]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
User Documentation
Both [2] and [3] provide some good information to new users of
RPSL.
Coordination
It is important that the current users be well informed of the
transition plan, which is of course the purpose of this document.
Transition Software
Software must be developed to support various mechanisms required
for the transition.
Additional work that must take place before we can proceed:
RPSL Extensions for RIPE Database software
Modifications required to support RPSL must be incorporated into
the RIPE database code and thoroughly tested.
Schedule
Work on the coding of RPSL has been going on since the start of 1997,
and is expected to be completed by the end of the year.
The code required to support the first transition step (convert RIPE-181
to RPSL for reading) has been done. See http://www.isi.edu/ra/rps/tran-
sition/ for more information.
The new RPSL code will be incorporated into the core RIPE database code
as soon as it is made available. This process, including testing, is
expected to be completed sometime during the first quarter of 1998.
3.2. Phase 2: Write RIPE-181, Read Both
During the second phase, users are able to continue working as usual,
both writing and reading RIPE-181. However, they can query an RPSL mir-
ror of the database, and view the objects they enter in the new specifi-
cation language. This gives users the opportunity to start modifying
their local tools to parse RPSL syntax rather than RIPE-181. It is
important to remember, however, that only a small subset of RPSL can be
studied in this phase, namely that which can already be expressed in
RIPE-181. This means that the as-set and route-set objects cannot yet be
worked with, nor can the more powerful policy specification mechanisms
to be used in aut-num objects.
In order to allow users to gain more experience in both reading and
writing policies in RPSL, we will allow aut-num objects to be written
and read from the RPSL data set as well as the RIPE-181 set. There are
a number of key points to be made about this setup:
Orange, Kessens Expires May 26, 1998 [Page 4]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
+ Changes made to the RPSL data set will not be reflected in the
RIPE-181 data set.
+ Changes made to an aut-num object in the RPSL data set will gener-
ate a lock so that the object will not be overwritten the next time
the object is updated in the RIPE-181 data set. This is so one can
both operate normally, and experiment with the new language. The
lock will generate a warning when RIPE-181 changes are made, so one
can select to remove the RPSL changes.
+ The old RIPE-181 object which is converted to RPSL will reappear in
the RPSL mirror when the updated RPSL version is deleted by the
user.
+ RIPE-181 will continue to be used by most people as the authorita-
tive data set. Changes made to the RPSL data set will therefore not
be noted by the majority of users.
+ Modifications to objects which cannot be expressed in RIPE-181 are
unlikely to be correctly interpreted by tools written by others due
to the rarity of their appearance.
Development efforts that will take place during the second phase are in
the area of getting as many users as possible aware of the upcoming
changes and how to work with RPSL. This means improving the documenta-
tion available. Whereas, (as pointed out in Section 3.1) there is some
good documentation available, there is no extensive documentation on how
to exploit the expressive language features provided by RPSL.
Moreover, during this phase a significant training effort should be
underway. This includes but is not limited to:
+ the creation of an interactive web based training,
+ offering public workshops in conjunction with appropriate meetings
(RIPE, NANOG, APRICOT, IETF, etc.), and
+ the set up of a 1-2 day course program as proved successful in the
PRIDE project.
Schedule
It is expected that we can move into Phase 2, in the first quarter of
1998.
3.3. Phase 3: Write Both, Read RPSL
Orange, Kessens Expires May 26, 1998 [Page 5]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
In the third phase, we move to RPSL as the key working language in the
IRR. Those who haven't had time to prepare to work exclusively with RPSL
can continue to submit objects in RIPE-181, but objects will automati-
cally be converted to RPSL and stored as such in the database.
Ideally, all registries participating in the IRR will transition to this
phase simultaneously. This will prevent confusion among users, and maxi-
mize the benefits for the users who make the transition.
Prerequisites
Because this phase forces users to move to RPSL (for all intents and
purposes), there are a number of conditions which must be met before
this step is taken. This is so we can meet the criteria for a successful
transition stipulated in the introduction.
+ There must be a solid body of user documentation available. Reg-
istries then have somewhere to point users when numerous questions
start coming about the new syntax and objects.
+ Training as described in the previous section should be well under-
way.
+ The setup described for Phase 3 should have already been running
for a number of months on a local test site of each registry. This
will allow the following to take place:
1. Tool development based on the full RPSL language.
2. Users can adjust to the new language.
3. Problems (which you probably do not ever want to have happen on
the live database) can be detected and corrected.
4. A system will be in place for the training of users.
+ Individual Registry Requirements. (For RIPE this means a go ahead
from the Routing WG, Database WG, and Local IR WGs. Other reg-
istries will have other restrictions.)
Schedule
The schedule should be determined by the users and if possible coordi-
nated among the participating registries.
Orange, Kessens Expires May 26, 1998 [Page 6]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
3.4. Phase 4: Write RPSL, Read RPSL
In this phase, we simply remove the final support for RIPE-181. We
assume that the prerequisites for Phase 3 have been met.
Schedule
Again, the schedule will be determined by the users and hopefully coor-
dinated among the participating registries.
4. Summary
We have described a plan for the transition of the IRR from using the
current RIPE-181 language to using RPSL. The plan is designed to ensure
continuity and stability of the IRR, to help the user community adjust
to the transition, and finally to be performed in a timely fashion, with
hopes of completion during 1998. Given the scale and the distribution
of the IRR and the user community, which requires this transition to be
carefully coordinated, we consider this plan to be both optimistic and
realistic.
Acknowledgements
The ideas presented here, while consolidated by the authors, are the
result of a fruitful discussion with Cengiz Alaettinoglu, Chris
Fletcher, Daniel Karrenberg, Joachim Schmitz, and Wilfried Woeber.
Scott Huddle, Jake Kuhoun, Cleveland Mickles, John Stewart, Gerald Win-
ters and Jeff Young also contributed useful input. Any errors in design
or detail are, however, the responsibilities of the authors.
References
1. Tony Bates, Elise Gerich, Laurent Joncheray, Jean-Michel Jouanigot,
Daniel Karrenberg, Marten Terpstra, and Jessica Yu, "Representation
of IP Routing Policies in a Routing Registry," RFC1786 (October
1994).
2. A.M.R. Magee, "RIPE NCC Database Documentation," RIPE-157 (May
1997).
3. David Meyer, Joachim Schmitz, and Cengiz Alaettinoglu, "Application
of Routing Policy Specification Language (RPSL) on the Internet,"
<draft-ietf-rps-appl-rpsl-01.txt> (July 1997).
4. Cengiz Alaettinoglu, Tony Bates, Elise Gerich, Daniel Karrenberg,
David Meyer, Marten Terpstra, and Curtis Villamizer, "Routing Pol-
icy Specification Language (RPSL)," <draft-ietf-rps-
Orange, Kessens Expires May 26, 1998 [Page 7]
Internet Draft RIPE-181 to RPSL Transition Plan November 21, 1997
rpsl-04.txt,.ps> (November 1997).
Authors' Addresses
Carol Orange
RIPE NCC
Singel 258
1016 AB Amsterdam
The Netherlands
Email: orange@ripe.net
David Kessens
ISI
4676 Admiralty Way, Suite 1001
Marina del Rey, CA 90292-6695
USA
Email: davidk@isi.edu
Orange, Kessens Expires May 26, 1998 [Page 8]