Network Working Group                                    S.E. Kille
INTERNET--DRAFT                           University College London
                                                       January 1991









          An interim approach to use of Network Addresses









Status of this Memo

The OSI Directory specifies an encoding of Presentation Address,
which utilises OSI Network Addresses as defined in the OSI Network
Layer standards [CCI88] [ISO87a].  The OSI Directory, and any OSI
application utilising the OSI Directory must be able to deal with
these Network Addresses.  Currently, most environments cannot cope
with them.  It is not reasonable or desirable for groups wishing to
investigate and use OSI Applications in conjunction with the OSI
Directory to have to wait for the lower layers to sort out.  This
note is a proposal for mechanisms to utilise Network Addresses.

This draft document will be submitted to the RFC editor as a
protocol specification.  Distribution of this memo is unlimited.
Please send comments to the author or to the discussion group
<osi-ds@CS.UCL.AC.UK>.



INTERNET--DRAFT        Interim Network Addresses       January 1991


1  Introduction

The OSI Directory specifies an encoding of Presentation Address,
which utilises OSI Network Addresses as defined in the OSI Network
Layer standards [CCI88] [ISO87a].  The OSI Directory, and any OSI
application utilising the OSI Directory must be able to deal with
these Network Addresses.  Currently, most environments cannot cope
with them.  It is not reasonable or desirable for groups wishing to
investigate and use OSI Applications in conjunction with the OSI
Directory to have to wait for the lower layers to sort out.  This
note is a proposal for mechanisms to utilise Network Addresses.  It
defines, in Appendix A, some allocated values.

This document must be read in the context of ISO 8348 Addendum 2
[ISO87b].  It will not be meaningful on its own.


2  Historical Note

This document was originally published as UCL Research Note
RN/89/13 and as a project THORN internal document [Kil89].  It was
devised in response to two projects which faced this requirement,
and was agreed as a common approach.  The projects were:


  o The THORN project, which is an Esprit Project building an OSI
    Directory [SA88].

  o The ISODE project [Ros90], and in particular the QUIPU
    directory being developed at UCL [Kil88].


The proposal has been implemented, and the viablity of the solution
demonstrated.


3  The Problem

When utilising the OSI Directory, the OSI location of an End System
will be determined by a Network Address, which is taken from a
Presentation Address, looked up in the OSI Directory.

The ``real world'' of OSI (at least the one the author is in)
consists of:


  o An international X.25 network, which routes on the basis of


Kille                                                        Page 1



INTERNET--DRAFT        Interim Network Addresses       January 1991


    X.121 addresses.  By and large this is X.25(80), but some parts
    are now X.25(84) and will carry Network Addresses as user data.
    OSI Transport is mapped onto the variant of X.25 which is to
    hand.

  o Large private X.25 networks, which do not have DNICs, but are
    otherwise similar to the previous (in particular Janet).

  o Isolated networks running Connection Oriented Network Service
    (e.g., Pink Book Ethernets).

  o Isolated networks running Connectionless Network Service (e.g.,
    MAP LANs).

  o Isolated TCP/IP LANs, utilising RFC 1006 to support the OSI
    Transport Service[RC87].

  o The DARPA/NSF Internet, also using RFC 1006.


In general, these systems need to be interconnected by the
unfortunate mechanisms of transport bridging --- but this is
another story.  It is hoped that the mechanisms described in this
note will reduce the need for Transport Bridging, and make more of
these networks behave as subnetworks (OSI Terminology).

Where End Systems do have access to Network Service, there is no
general mechanism for Network Address to SNPA binding (local table
lookup is the norm)(1).


4  The ``Right Solution''

Before diving into ugliness, it is worth noting briefly what the
intended solution is.  Network Addresses are globally allocated,
and do not imply anything about routing or location.  An End System
is attached to one or more subnetworks at Subnetwork Points of
Attachment (SNPAs).  Intermediate Systems join subnetworks, again
being attached at SNPAs.  Routing is achieved by repeated binding
of Network Address to SNPA (initially at the Originating End
System, and then at each Intermediate System).  This binding is
___________________________
(1)The current ES-IS work does solve some aspects of this, but it
is only applicable to CLNS and makes restrictions as to how Network
Addresses are structured.  These are sensible restrictions, but the
mechanism is no longer general purpose.



Kille                                                        Page 2



INTERNET--DRAFT        Interim Network Addresses       January 1991


achieved by use of a directory service(2).

The rest of this section is a polemic --- mainly to make the author
feel better.  Network Addresses have been designed for general
purpose allocation.  Whilst this is one important characteristic of
a Network Address, others have been entirely neglected.  The
practicalities of routing and lookup in directory service appear to
have been ignored in the design.  The issue of building the
mechanisms for routing are being discussed as some sort of
afterthought.  This is sad, and it seems to the author that the
network address specification will need to be entirely rewritten
before large scale OSI can become a reality(3).


5  The General Approach Proposed

The means of connecting to a remote Application Entity is broadly
as follows.


 1. Look up the Application Entity in the OSI Directory to obtain
    the Presentation Address (4).

 2. Extract each Network Address from the Presentation Address, and
    determine if it can be used (and how).

 3. Determine an order of preference for the Network Addresses.

 4. Attempt to connect to one or more of the Network Addresses.


This note is concerned with the second step, and will probably have
implications on the third.  The following mechanisms for Network
Address are discussed in this note:


__o_X.121_form_____________

(2)The OSI Directory is almost certainly inappropriate for this
function --- a special purpose network directory is needed.
(3)Restrictions on use of network addresses within the ES-IS work
may be an initial basis for this rewrite.
(4)Strictly an Application Entity should have only one
Presentation Address.  In practice
it may have several, and the network addresses of each Presentation
Address should be considered.



Kille                                                        Page 3



INTERNET--DRAFT        Interim Network Addresses       January 1991


  o A special encoding for networks which do not provide Network
    Service.

  o Other forms


6  X.121 Form

In principle, the IDP is only an allocation mechanism, and has no
routing implications.  However, due to the lack of a network
directory service, it is recommended that any End System with
Connection Oriented Network Service and access to the international
X.25 service uses X.121 form relative to its access point.
Allocation of DSP (Domain Specific Part) is a private issue.

Conversely it is recommended that if an X.121 IDP (Initial Domain
Part) form Network Address is interpreted, then the X.121 address
will provide a route (by defining an SNPA on the international X.25
network).  There may be additional and perhaps preferable routes
which can be determined by private means.

If the DSP is absent, the form should be interpreted as implying a
mapping of Transport onto X.25(80).


7  Requirements

The requirements for use of OSI over existing networks not
supporting CONS or CLNS, when using the OSI Directory are:


 1. The information for the layers below Transport must be obtained
    from the Network Address.  This is essential, because we wish
    to use the OSI Directory in a standard manner, and the Network
    Address is the information available.

 2. The Network Addresses must be globally unique, as they can be
    looked up by anyone with access to the Directory.

 3. The Network Address should be allocated so that confusion with
    a ``real'' Network Address (i.e., one which defines an NSAP
    using CONS or CLNS as opposed to X.25(80) or RFC 1006) is
    minimal.

 4. Network Addresses must be interpretable on the basis of a well
    known information, or on information which can be obtained from
    the (application level) OSI Directory.


Kille                                                        Page 4



INTERNET--DRAFT        Interim Network Addresses       January 1991


 5. The identity of the network in question must be deduceable from
    the Network Address

 6. All network specific addressing information (including the
    SNPA) must be deducible from the Network Address


8  Proposal

The following approach is proposed.


  o A (sub)network is identified by the IDP and a small part of the
    DSP.

  o The remainder of the DSP encodes network specific information

  o It is suggested that the following IDPs are not used:

    -- Local (the values must be globally unique)

    -- X.121 (because it will be confused with real Network
       Addresses)

    -- DCC and ICD (because they are very likely to be confused
       with real Network Addresses)

  o It is suggested that a Telex form IDP is used because:

    -- It gives the largest DSP

    -- It is less likely than other forms to be used for ``real''
       Network Addresses


The scope of the proposed encoding is where:


  o The value of the IDP is recognised

  o The encoding of the DSP is abstract decimal

  o The first two digits of the DSP are recognised


In these cases, the IDP + 2 digit prefix identify a subnetwork in
which the value of the DSP is to be interpreted.


Kille                                                        Page 5



INTERNET--DRAFT        Interim Network Addresses       January 1991


9  The DSP Encoding

It is proposed to use a decimal abstract encoding for the DSP. This
is a new encoding, as the only alternative on the table (ECMA 117)
[TC386], is not entirely suitable.  Use of a binary encoding, with
the DSP structured in ASN.1 would have been a very attractive
approach.  However, it appears that there is insufficient space in
the Network Address for this to be feasible.

The following structure is proposed:

               ____________________________________
               |_Digit___|_|1-2___|_____3-27_______|
               |_Meaning_|P|refix_|Network_Specific_|



2 digits Prefix.  This allows for multiple usage of the same DSP,
    by not consuming it all.  It also allows for the DSP to be used
    with different encodings.

Network Specific The network specific allocation should be less
    than 20 digits if this DSP structure is to be used with any IDI
    format.  This is increased to 27 for the Telex format.


9.1  X.25(80) Allocation

The IDP/Prefix identifies an X.25(80) subnetwork.  There is a need
to represent a DTE Number, and optionally an X.25 Protocol ID or
CUDF (many implementations require these due to shortage of X.121
address space) in the DSP. This is structured in one of two
possible ways:


                     ________________________
                     |_Digit___|1||Remainder_|
                     |_Meaning_|0||___DTE____|

   ____________________________________________________________

   |_Digit___|_|1____|_______2________|3_--_(n*3)+2_|Remainder|_
   |_Meaning_|_|Type__|PID/CUDF_Length_|_PID/CUDF___|___DTE___|_
   |_Values__|1|or_2_|_______n________|_____________|_________|_


The network specific part is structured as follows:


Kille                                                        Page 6



INTERNET--DRAFT        Interim Network Addresses       January 1991


Type This has the following values
    0 DTE only

    1 DTE + PID

    2 DTE + CUDF

    3-9 Reserved

PID/CUDF Length The length of the PID/CUDF in octets
PID/CUDF The PID/CUDF takes as many digits as indicated by 3 times
    octet 2.  Each octet of the PID/CUDF is encoded as three
    decimal digits, representing the decimal value of the octet.

DTE The DTE is terminated by the end of the Network Address.




For example, the JANET DTE 000005111600 with ASCII CUDF ``12''
would be encoded in the following way.  The first lines describe
the abstract notation.  Note that where the IDI is not of maximum
length, that the translation to concrete decimal is not mechanical


______________________________________________________________________________________
|Part__________|_|_____IDP_________|_______________________DSP_______________________|_

|Component_____|_|AFI__|___IDI_____|Prefix_|Dte+Cudf_|Len|________CUDF_+_DTE_________|_
|Octet_________|_|____|____________|_1-2___|___3_____|_4_|___________5-20____________|_
|Value_________|T|elex_|007_28722__|__02___|___2_____|_2_|____049050_000005111600____|__
|Cncrt_Decimal_|_|54___|007_28722__|__02___|___2_____|_2_|____049050_000005111600____|_
|Cncrt_Binary__|_|54___|00_72_87_22_|_02___|_____22______|04_90_50_00_00_51_11_60_0f_|_


Note that concrete binary is representing octets in hexadecimal.
This is the syntax most likely to be used in practice.  The CUDF is
represented by two octets 049 and 050 (decimal), which map to six
digits.


9.2  TCP/IP (RFC 1006) Allocation

The IDP and 2 digit prefix identifies a TCP/IP network where RFC
1006 is applied.  It is necessary to use an IP Address, as there
are insufficient bits to fit in a domain.  It is structured as
follows:


Kille                                                        Page 7



INTERNET--DRAFT        Interim Network Addresses       January 1991

    __________________________________________________________
    |_Digit___|_|_1-12____|13-17_(optional)_|18-22_(optional)_|
    |_Meaning_|I|P_Address_|_____port_______|_Transport_Set___|


For TCP/IP there shall be a 20 digit long network-specific part.
First 12 digits are for the IP address.  The port number can be
upto 65535, and needs 5 digits (this is optional, and is defaulted
as defined in RFC 1006).  Finally, there is a third part to the
address, which is defined here as ``transport set'' that indicates
what kind of IP-based transport protocols is used.  This is a
decimal number from 0-65535 which is really a 16-bit flag word.  1
is TCP, 2 is UDP. If the transport set is not there or no bits are
set, it means ``default'' which is TCP. This is encoded in 5
digits.

Note that RFC 986 is not appropriate [CB87], as this currently
applies to a different architecture (we are considering RFC 1006
here).

For example, the IP Address 10.0.0.6 with port 9 over UDP is
encoded as:


___________________________________________________________________________________
|Part_____________|_|_____IDP_________|____________________DSP____________________|_
|Component________|_|AFI__|___IDI_____|Prefix_|___IP_Address_____|_Port__|_T_Set__|_
|Octet____________|_|____|____________|_1-2___|______3-14________|_15-19_|_20-24__|_
|Value____________|T|elex_|007_28722__|__03___|_010_000_000_006__|_00009_|_00002__|__

|Concrete_Decimal_|_|54___|007_28722__|__03___|_010_000_000_006__|_00009_|_00002__|_
|Concrete_Binary__|_|54___|00_72_87_22_|_03___|01_00_00_00_00_06_|00_00_9|0_00_02_|_


10  Other Forms

Recognition of other forms of address is a local matter.


11  Transport Bridges

The provision of this form of Network Address encoding will
facilitate the transparent use of Transport Bridges.  Whenever a
protocol is used which can carry the Network Address, this can be
used to contact a transport bridge as if it was the end system (5).
___________________________
(5)This suggests that it would be beneficial to extend RFC 1006 to
carry Network Addresses.


Kille                                                        Page 8



INTERNET--DRAFT        Interim Network Addresses       January 1991


The hex (concrete) form of network address should be used.


12  Encoding

This document describes allocation of Network Addresses, with the
DSP considered in Abstract Decimal.  The encoding of this for use
in protocols (typically as Concrete Binary) is described in ISO
8348 Addendum 2 [ISO87a].


13  Conclusions

This is all pretty horrible, but there do not appear to be any
better choices.


14  References

References

[CB87]   R. Callon and H. Braun. Guidelines for the use of
         internet-ip addresses in the iso connectionless-mode
         network protocol. Request for Comments 986, DDN Network
         Information Center, SRI International, November 1987.
[CCI88]  The directory - overview of concepts, models and services,
         December 1988. CCITT X.500 Series Recommendations.

[ISO87a] Information processing systems - data communications -
         network services definition:  Addendum 2 - network layer
         addressing, March 1987. ISO TC 97/SC 6.

[ISO87b] ISO DIS 7498-3 on naming and addressing, May 1987.
         ISO/IEC/JTC-1/SC 21.
[Kil88]  S.E. Kille. The QUIPU directory service. In IFIP WG 6.5
         Conference on Message Handling Systems and Distributed
         Applications, pages 173--186. North Holland Publishing,
         October 1988.

[Kil89]  S.E. Kille. An interim approach to use of network
         addresses. Research Note RN/89/13, Department of Computer
         Science, University College London, February 1989.
         Internet Draft:  DRAFT-UCL-KILLE-NETWORKADDRESSES-00.PS.1.
[RC87]   Marshall T. Rose and Dwight E. Cass. ISO Transport
         Services on top of the TCP. Request for Comments 1006,
         DDN Network Information Center, SRI International, May
         1987.


Kille                                                        Page 9



INTERNET--DRAFT        Interim Network Addresses       January 1991


[Ros90]  M.T. Rose. The ISO development environment:  User's
         manual (version 6.0), January 1990.
[SA88]   F. Sirovich and M. Antonellini. The THORN X.500
         distributed directory environment. In Esprit Conference
         Week, November 1988.

[TC386]  ECMA TC32. Domain specific part of network layer
         addresses. ECMA Standard 117, ECMA, June 1986.



15  Security Considerations

Security considerations are not discussed in this INTERNET--DRAFT .


16  Author's Address

    Steve Kille
    Department of Computer Science
    University College London
    Gower Street
    WC1E 6BT
    England


    Phone:  +44-71-380-7294



    EMail:  S.Kille@CS.UCL.AC.UK


















Kille                                                       Page 10



INTERNET--DRAFT        Interim Network Addresses       January 1991


A  Allocations for well known networks

A.1  Values

This appendix gives an allocation for three well known networks.
All are allocated on the basis of the supposed Telex number
00728722.  This might be the University College London Telex
number, dependent on whether the UK Telex code is 007, 51, or 051.
This number is being used in pilot operations, and so is retained
here.

              _______________________________________
              |________Net___________Telex___Prefix_|_
              | International X.25|007 28722 01     |
              | Janet             |007 28722 02     |
              |_Darpa/NSF_Internet|007_28722_03_____|_


The international X.25 allocation is only used where a CUDF or PID
is needed.  In other cases, an X.121 form Network Address with no
DSP should be used.


A.2  Delegation

The values assigned in this document are now in widespread use.  As
the number is arbitrary, it would be undesirable to change the
numbers without a sound technical reason.  However, it is important
to guarantee that the numbers are stable.

This Internet Draft comits UCL not to reassign the portions of the
number space allocated here.

The DARPA/NSF Internet space (Prefix 03) is delegated to
appropriate Internet body.














Kille                                                       Page 11