RFC 1277 PROPOSED STANDARD ADDRESSING · OSI

NSAP encoding: Encoding Network Addresses to Support Operation over Non-OSI Lower Layers

A way to carry TCP/IP and X.25 addressing inside OSI network addresses.

On rfc-editor.org ↗
PUBLISHED
November 1991
AUTHORS
S.E. Hardcastle-Kille
STREAM
IETF
IP ADDRESS FIELD IN THE TCP/IP FORMAT
12 digits
PORT NUMBER FIELD
5 digits, up to 65535
TRANSPORT SET FIELD
5 digits; 1 is TCP and 2 is UDP
NETWORK SPECIFIC ALLOCATION
27 digits for the Telex format
TELEX IDI FOR WELL KNOWN NETWORKS
007 28722
WELL KNOWN NETWORK PREFIXES
01 X.25, 02 Janet, 03 Internet, 06 IXI
DOI
10.17487/RFC1277

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                            S.E. Hardcastle-Kille
Requests for Comments 1277                   University College London
                                                         November 1991


                      Encoding Network Addresses
            to support operation over non-OSI lower layers




Status of this Memo
    This RFC specifies an IAB standards track protocol for the
    Internet community, and requests discussion and suggestions for
    improvements.  Please refer to the current edition of the ``IAB
    Official Protocol Standards'' for the standardization state and
    status of this protocol.  Distribution of this memo is unlimited.
Abstract

    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 use
    these Network Addresses to identify end systems.  Currently, OSI
    applications are often run over lower layers other than the OSI
    Network Service.  It is neither reasonable nor desirable for
    groups wishing to investigate and use OSI Applications in
    conjunction with the OSI Directory to be dependent on a global
    OSI Network Service.  This document defines a new network address
    format, and rules for using some existing network address
    formats.  The scope of this document is:

1.  Any TCP/IP network supporting COTS using RFC 1006.

2.  Any mapping of COTS onto X.25 (usually X.25(80)), where X.25 is
    not used to provide CONS (i.e., only DTE and not Network address
    is carried).


    The approach could also be extended to use with other means of
    providing COTS (or CLTS). It is not appropriate for use where
    CONS or CLNS is used to provide COTS (or CLTS).

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 use these Network
Addresses to identify end systems.
Currently, OSI applications are often run over lower layers other than
the OSI Network Service.  It is neither reasonable nor desirable for
groups wishing to investigate and use OSI Applications in conjunction
with the OSI Directory to be dependent on a global OSI Network
Service.  This RFCdefines mechanisms to encode addressing information
within Network Addresses, in order to support this type of working.
In particular, support is defined for RFC 1006 mapping of COTS onto
TCP/IP and COTS mapped onto X.25(1980) [RC87, CCI80].

Where an OSI application is run over CLNS on the internet, the NSAP
Guidelines of RFC 1237 should be followed [CGC91].
This document must be read in the context of ISO 8348 Addendum 2
[ISO87b].  It will not be meaningful on its own.


1.1  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 viability of the solution
demonstrated.







Hardcastle-Kille                                                Page 1

2  Problem Statement

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.
OSI applications are currently operated over the following lower
layers.


 o  An international X.25 network, which routes on the basis of 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 available.

 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  The Connectionless Network Service Protocol (CLNP) pilot,
    currently taking place in the NSFNet and NORDUNet communities.

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

 o  The DARPA/NSF Internet, using RFC 1006.

In general, these systems need to be interconnected by the use of
transport bridging or application relaying.  Operation of transport
bridges causes a number of problems which it is desirable to avoid.
Only some applications can support relaying, and this is not always
satisfactory.


2.1  The ``Right Solution''

It is worth noting briefly what the intended (OSI) solution is.  There
is a single global network service.  Network Addresses are globally
allocated, and do not imply anything about routing or location.  An


Hardcastle-Kille                                                Page 2

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 achieved by
network level routing mechanisms.
This can only work in a pure OSI environment with a single ubiquitous
network service (either connectionless or connection-oriented), and so
is not sufficient for the problem being addressed by this note.


2.2  General Approach

This section describes the use of network addresses, and gives a
functional overview of the problem being takceled.  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 1.

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.  There is currently no directory service to
provide step 2, and so this (interim) approach must be algorithmic.
All addressing information required for the network must be extracted
from the network address.
This note describes the use of Network Addresses for networks which do
not provide the OSI Network Service (CLNS or CONS), and places
constraints on the use of X.121 form network addresses when used for
an OSI Network Service.  The following types of Network Address are
discussed in this note:

----------------------------
    1. 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.


Hardcastle-Kille                                                Page 3

 o  Use of X.121 form Network Addresses.

 o  A special encoding of Telex form Network Addresses.


3  Network addresses with X.121 AFI

This note defines an approach for use of network addresses with the
X.121 AFI.
The IDP of network addresses is used to allow worldwide administration
of the NSAP address space.  As such, not all values of the IDP will in
practice have topological significance (which implies that in some
cases the IDP will not be sufficient for network layer routing).
However, it is recommended that any End System using the Connection
Oriented Network Service and with access to the international X.25
service uses the X.121 form of NSAP address relative to its access
point.  This allows routing across the worldwide X.25 based public
data networks to be based on the X.121 addresses.  Allocation of DSP
(Domain Specific Part) within this form of address is a private issue.

The IDP is primarily an allocation mechanism, and the user (end
system) cannot in principle assume any implied routing.  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).


4  New Network Address Format


This section defines a new network address format.  The scope of this
format is currently:

1.  Any TCP/IP network supporting COTS using RFC 1006.



Hardcastle-Kille                                                Page 4

2.  Any mapping of COTS onto X.25 (usually X.25(80)), where X.25 is
    not used to provide CONS (i.e., only DTE and not Network address
    is carried), except where the international X.25 service is used
    and no PID or CUDF is required.
    These exceptions are the cases which are handled by use of X.121
    AFI (Section 3).  The intention is to use the X.121 AFI wherever
    possible, and the formats defined in this section are for the
    remaining cases.

The approach could also be extended to use with other means of
providing COTS (or CLTS). It is not appropriate for use where CONS or
CLNS is used to provide COTS (or CLTS).


4.1  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 unlikely.

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.  (This RFConly uses well
    known information).

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

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



Hardcastle-Kille                                                Page 5

4.2  IDP Choice

The IDP is used with Telex AFI. The Telex AFI is used because:

 o  It gives the largest DSP

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


The following AFIs might have been chosen, but are not used for the
reasons given:

 o  Local (the values must be globally unique)

 o  X.121 (because it may be confused with other uses of OSI network
    addresses)

 o  DCC and ICD (because it may be confused with other uses of OSI
    network addresses)

The IDI should be assigned in a manner appropriate to the use of the
encoding.  For example, for operation on a private network within an
organisation, the telex number of that organisation would be a good
choice.  Some well known networks are given assignments in Appendix A.


4.3  The DSP Encoding

The network address is used as follows.


 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

The DSP format is now defined.  The top level format is independent of
the means used to provde COTS. Two formats for the remainder of the
DSP are then defined, for specific means of providing COTS.

A decimal abstract encoding is defined for the DSP. The ECMA 117
format might have been used, but it is not suitable.  [TC386].  Use of
a binary encoding, with the DSP structured in ASN.1 would have been a

Hardcastle-Kille                                                Page 6

very attractive approach.  However, there is insufficient space in the
Network Address for this to be feasible.
The following structure is defined:

                 ____________________________________
                 |_Digit___||1-2__|______3-27_______|_
                 |_Meaning_||PrefixN|etwork_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.


The IDP + 2 digit prefix identify a subnetwork in which the value of
the remainder of the DSP (Network Specific Part) is to be interpreted.

4.4  X.25(80) Network Specific Format

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___||1R|emainder_|
                       |_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:


Type This has the following values

    0 DTE only

    1 DTE + PID

Hardcastle-Kille                                                Page 7

    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_______________________|_
|Comp___|_|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____|__
|Ct_Dec_|_|54___|007_28722__|__02___|___2_____|_2_|____049050_000005111600____|_
|Ct_Bin_|_|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.


4.5  TCP/IP (RFC 1006) Network Specific Format

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:

      __________________________________________________________
      |_Digit___||_1-12____|13-17_(optional)_|18-22_(optional)_|_
      |_Meaning_||IP_Address_|____port_______|__Transport_Set__|_


Hardcastle-Kille                                                Page 8

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 up to
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.
Further values of this code are assigned by the IANA. If the transport
set is not there or no bits are set, it means ``default'' which is
TCP. This is encoded in 5 digits.
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__|__
|Cncrt_Dec_|_|54___|007_28722__|__03___|_010_000_000_006__|_00009_|_00002__|_
|Cncrt_Bin_|_|54___|00_72_87_22_|_03___|01_00_00_00_00_06_|00_00_9|0_00_02_|_

5  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].


6  References

References

[CCI80]  CCITT. Recommendation X.25, interface between DTE and DCE
         for packet mode terminals, 1980.

[CCI88]  The Directory --- overview of concepts, models and services,
         December 1988. CCITT X.500 Series Recommendations.

[CGC91]  R. Colella, E. Gardner, and R. Callon.  Guidelines for OSI
         NSAP Allocation in the Internet. Request for Comments 1237,


Hardcastle-Kille                                                Page 9

         NIST, July 1991.

[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.

[RC87]   Marshall T. Rose and Dwight E. Cass. ISO Transport Services
         on top of the TCP. Request for Comments 1006, Northrop
         Corporation Technology Center, May 1987.

[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.


7  Security Considerations

Security considerations are not discussed in this memo.


8  Author's Address

    Steve Hardcastle-Kille
    Department of Computer Science
    University College London


Hardcastle-Kille                                               Page 10

    Gower Street
    WC1E 6BT
    England

    Phone:  +44-71-380-7294


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





































Hardcastle-Kille                                               Page 11

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 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     |
               |_IXI________________|007_28722_06_____|

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 commits UCL not to reassign the portions of the
number space allocated here.
The DARPA/NSF Internet space (Prefix 03) is delegated to the IANA.














Hardcastle-Kille                                               Page 12

ISO Plain Language

On this page
PROBLEMThe OSI Directory identifies an end system by a Network Address, but OSI applications often run over lower layers such as TCP/IP or X.25, and there is no directory service that says which address to use or how to reach it.
MECHANISMThe RFC defines a new Network Address format whose Initial Domain Part names the address family and the network, and whose Domain Specific Part carries a prefix and the network specific information, including the IP address, port and transport set for TCP/IP and the DTE number for X.25.
WHY IT MATTERSEverything the network needs below the transport layer can then be read out of the address itself, so an OSI application can run over a non-OSI network without a transport bridge or a directory service that resolves addresses.

§1Introduction

The OSI Directory specifies an encoding of Presentation Address that uses OSI Network Addresses as defined in the OSI Network Layer standards. The directory, and any OSI application using it, must be able to use these Network Addresses to identify end systems. OSI applications are often run over lower layers other than the OSI Network Service, and it is neither reasonable nor desirable for groups wishing to investigate and use OSI applications together with the OSI Directory to depend on a global OSI Network Service. This RFC defines a new network address format, and rules for using some existing network address formats, so that the addressing information can be encoded inside the Network Address itself.

Support is defined for the RFC 1006 mapping of the Connection Oriented Transport Service onto TCP/IP, and for COTS mapped onto X.25(1980). Where an OSI application is run over CLNS on the Internet, the NSAP Guidelines of RFC 1237 should be followed instead. The document says it must be read in the context of ISO 8348 Addendum 2, and that it is not meaningful on its own.

A directory entry in the OSI world holds a network address, and that address is what the network uses to reach the system. This RFC asks that the address carry all the information the network needs, so that an OSI program can work over an ordinary TCP/IP or X.25 network.

§2The Problem

When the OSI Directory is used, the OSI location of an end system is determined by a Network Address taken from a Presentation Address and looked up in the directory. OSI applications are currently operated over several kinds of lower layer: an international X.25 network that routes on the basis of X.121 addresses, mostly X.25(80) but with some X.25(84) that carries Network Addresses as user data; large private X.25 networks without DNICs; isolated networks running the Connection Oriented Network Service; isolated networks running the Connectionless Network Service; the CLNP pilot taking place in the NSFNet and NORDUNet communities; isolated TCP/IP LANs using RFC 1006; and the DARPA/NSF Internet.

In general these systems have to be interconnected by the use of transport bridging or application relaying. Transport bridging causes a number of problems that are better avoided, and only some applications can support relaying, which is not always satisfactory.

The intended OSI solution is a single global network service, with globally allocated Network Addresses that imply nothing about routing or location. An End System is attached to one or more subnetworks at Subnetwork Points of Attachment, and Intermediate Systems join subnetworks in the same way. Routing is achieved by repeated binding of a Network Address to an SNPA, first at the Originating End System and then at each Intermediate System, using network level routing mechanisms. That only works in a pure OSI environment with a single ubiquitous network service, so it does not solve the problem this document addresses.

OSI applications run over many different networks, and joining those networks together normally needs a bridge at the transport layer or a relay at the application layer, both of which cause trouble. The address itself is the only thing an application has to work with, so the fix has to be in the address.

§2.2The General Approach

Connecting to a remote Application Entity broadly works in four steps. The Application Entity is looked up in the OSI Directory to obtain a Presentation Address. Each Network Address in that Presentation Address is extracted, and it is determined whether it can be used and how. An order of preference is determined for those Network Addresses. One or more of them is then tried.

This document is concerned with the second step, and will probably have implications for the third. There is currently no directory service to provide step 2, so this interim approach has to be algorithmic. All the addressing information the network requires must be extracted from the Network Address.

Two kinds of Network Address are discussed: the use of X.121 form Network Addresses, and a special encoding of Telex form Network Addresses. An Application Entity should strictly have only one Presentation Address, but in practice it may have several, and the network addresses of each Presentation Address should be considered.

Reaching a remote system normally means looking it up in the directory, then working out which of the addresses in the entry can actually be used and in what order to try them. There is no service that does the second part for you, so the rules have to be written into the address format itself.

§4The New Network Address Format

The scope of the new format is any TCP/IP network supporting COTS using RFC 1006, and any mapping of COTS onto X.25, usually X.25(80), where X.25 is not used to provide CONS, so that only the DTE and not a Network address is carried. The exceptions are the cases handled by the X.121 AFI in Section 3. The intention is to use the X.121 AFI wherever possible, and the formats defined in this section are for the remaining cases.

Six requirements govern the new format. The information for the layers below Transport must be obtainable from the Network Address, because the Network Address is the information available. The Network Addresses must be globally unique, since they can be looked up by anyone with access to the Directory. The address should be allocated so that confusion with a real network address, one that defines an NSAP using CONS or CLNS rather than X.25(80) or RFC 1006, is unlikely. The address must be interpretable on the basis of well known information, or of information obtainable from the OSI Directory, and this document only uses well known information. The identity of the network must be deducible from the Network Address. And all network specific addressing information, including the SNPA, must be deducible from the Network Address.

The IDP is used with the Telex AFI, chosen because it gives the largest DSP and because it is less likely than other forms to be used for real network addresses. The Local, X.121, DCC and ICD AFIs might have been chosen, but are not used: Local would not give globally unique values, and the others may be confused with other uses of OSI network addresses. The IDI should be assigned in a manner appropriate to the use of the encoding, and for a private network within an organisation the telex number of that organisation would be a good choice.

The new address has two halves. The first half says what kind of address this is and who issued it. The second half says which network it belongs to and how to reach the system on that network. Six rules make sure the address can always be read without asking anyone.

PARTS OF THE NEW NETWORK ADDRESS (RFC 1277)
  • Network Address Identifies an end system for the OSI Directory
    • IDP Initial Domain Part
      • AFI
      • IDI
    • DSP Domain Specific Part
      • Prefix, 1-2 digits
      • Network Specific Part

§4.3The Domain Specific Part Encoding

The network address is used so that a subnetwork is identified by the IDP and a small part of the DSP, and the remainder of the DSP encodes network specific information. The top level format is independent of the means used to provide COTS, and two formats for the remainder of the DSP are then defined for particular ways of providing it.

A decimal abstract encoding is defined for the DSP. The ECMA 117 format might have been used, but it is not suitable. A binary encoding, with the DSP structured in ASN.1, would have been a very attractive approach, but there is insufficient space in the Network Address for that to be feasible. The structure that is defined has a two digit prefix and a network specific part of up to 27 digits. The two digit prefix allows multiple uses of the same DSP without consuming all of it, and allows the DSP to be used with different encodings. The network specific allocation should be less than 20 digits if the structure is to be used with any IDI format, and this is increased to 27 for the Telex format.

The IDP together with the two digit prefix identify a subnetwork in which the value of the remainder of the DSP, the Network Specific Part, is to be interpreted.

The second half of the address starts with two digits that name the network, and the digits after it hold whatever that network needs. The whole thing is written in decimal, because there is not enough room in an address to hold it in binary form.

§4.4X.25(80) Network Specific Format

The IDP and prefix identify an X.25(80) subnetwork. There is a need to represent a DTE Number, and optionally an X.25 Protocol ID or CUDF, which many implementations require because of the shortage of X.121 address space, in the DSP. This is structured in one of two possible ways: either a DTE number alone, or a type field, a length in octets for the PID or CUDF, the PID or CUDF itself, and the DTE number.

The Type field has the values 0 for DTE only, 1 for DTE plus PID, 2 for DTE plus CUDF, and 3 to 9 reserved. The PID or CUDF takes as many digits as three times the length in octets, each octet being encoded as three decimal digits that represent its decimal value. The DTE is terminated by the end of the Network Address.

The document works through an example: the JANET DTE 000005111600 with the ASCII CUDF "12". In the concrete binary form, which the document calls the syntax most likely to be used in practice, octets are written in hexadecimal, and the two CUDF octets 049 and 050 map to six digits.

On an X.25 network the address has to carry the number of the data terminal, and often also a protocol identifier or a user data field. The address starts with a one digit type that says which of those it holds, and the rest of the digits are the terminal number.

X.25(80) NETWORK SPECIFIC TYPE VALUES (RFC 1277)
  • 0DTE only — The network specific part carries the DTE number and nothing else.
  • 1DTE + PID — The network specific part carries an X.25 Protocol ID and the DTE number.
  • 2DTE + CUDF — The network specific part carries a CUDF and the DTE number.
  • 3-9Reserved — Reserved for future use.

§4.5TCP/IP (RFC 1006) Network Specific Format

The IDP and the two digit prefix identify a TCP/IP network where RFC 1006 is applied. An IP Address has to be used, because there are insufficient bits to fit in a domain. The structure has three fields: an IP address, an optional port number, and a transport set that indicates what kind of IP-based transport protocol is used.

The port number can be up to 65535 and needs 5 digits; it is optional and is defaulted as defined in RFC 1006. The transport set is a decimal number from 0 to 65535, which is really a 16-bit flag word, where 1 is TCP and 2 is UDP, with further values of this code assigned by IANA. If the transport set is not there, or no bits are set, it means the default, which is TCP. It is encoded in 5 digits.

The example in the document is the IP Address 10.0.0.6 with port 9 over UDP, written with the Telex IDI 007 28722, the prefix 03, the address as 010 000 000 006, the port as 00009 and the transport set as 00002.

On a TCP/IP network the address holds three things in order: the IP address, the port number, and a number that says whether the traffic uses TCP or UDP. The port and the transport number may be left out, in which case the defaults apply.

TCP/IP NETWORK SPECIFIC PART STRUCTURE (RFC 1277)
The three fields of the TCP/IP network specific part
__________________________________________________________
|_Digit___||_1-12____|13-17_(optional)_|18-22_(optional)_|_
|_Meaning_||IP_Address_|____port_______|__Transport_Set__|_

§7Security Considerations

The memo says plainly that security considerations are not discussed in it. It does set out related requirements in Section 4.1: the Network Addresses must be globally unique, because they can be looked up by anyone with access to the OSI Directory, and the address should be allocated so that confusion with a real network address, one that defines an NSAP using CONS or CLNS, is unlikely.

The memo has no security section, because it is about how addresses are laid out rather than about protecting them. What it does say is that anyone with access to the directory can read the address, and that the numbers chosen should not be mistaken for addresses belonging to a real OSI network.

§9References

[RC87]RFC 1006Marshall T. Rose and Dwight E. Cass, "ISO Transport Services on top of the TCP", RFC 1006, May 1987.May 1987[CGC91]RFC 1237R. Colella, E. Gardner and R. Callon, "Guidelines for OSI NSAP Allocation in the Internet", RFC 1237, July 1991.July 1991
[CCI80]CCITT, "Recommendation X.25, interface between DTE and DCE for packet mode terminals", 1980.
[ISO87a]ISO, "Information processing systems - data communications - network services definition: Addendum 2 - network layer addressing", March 1987.
[ISO87b]ISO, "ISO DIS 7498-3 on naming and addressing", May 1987.