[comp.protocols.tcp-ip] DDN X.25 question.

rja%batcomfs@Sun.COM (Robert Allen) (04/18/89)

    I'm working on adding some 1984 X.25 features to a 1980 X.25 implementation
    and I have a question about the facilites required by DDN X.25, as
    specified in the DDN X.25 spec. in Vol. 1 of the DDN Protocol Handbook.

    In section 2.1.2, it is noted that two facilities, type-of-service and
    call precedence, should be included *after* all CCITT X.25 facilities and
    must be preceded by a two byte facility marker, where each byte is of
    zero value.

    The type and location of the facility marker is counter to what is 
    documented in DIS 8208 "Info. Processing Systems - X.25 packet level
    protocol for data terminal equipment", which states that:
    
	(1) all CCITT specified facilities must come *after* "non-X.25
	facilities supported by the network...of the calling DTE...",
	which is what the DDN facilities are based on the facilities marker
	used to denote them.

	(2) that the facilites marker for X.25 specific facilities (which
	happens to be two zero bytes) must come BEFORE the CCITT facilites
	marker,

    If, as the DDN X.25 spec states, the DDN X.25 facilities must come after
    the CCITT facilities, *and* must use two zero bytes as the facilities
    marker of two zero bytes, then the two protocols, DDN X.25 and 1984 X.25,
    seem to not be compatible.  Is this correct?  If not, what am I mis-
    understanding here?

    Thanks in advance,

Robert Allen		"I'm the NRA" (and soon the ACLU too.)
rallen@sun.com		"Just say NO to the loss all our civil liberties."
Disclaimer: The opinions expressed are mine [so keep your hands off :-) ]

malis@BBN.COM (Andy Malis) (04/18/89)

Robert,

I'm not familiar with DIS 8208.  However, let me quote from the
CCITT Red Book (1984), Rec. X.25, section 7.1, p.209:

      Facility/registration markers, consisting of a single octet
      pair, are used to separate requests for X.25 facilities ...
      from other categories as defined above [non-X.25 facilities
      which may be provided by some networks] ...

      The first octet of the marker is a facility/registration
      code field and is set to zero.  The second octet is ... set
      to zero when the marker precedes requests for:

      - non-X.25 facilities provided by the network in case of
        intranetwork calls.

      ...

      Facility/registration codes for X.25 facilities and for
      the other categories of facilities may be simultaneously
      present.  However, requests for X.25 facilities must
      precede the other requests.


So, you must first have the CCITT-defined X.25 facilities, then
the marker, and then the non-X.25 facilities provided by the
network.

Cheers,
Andy Malis
BBNCC PSN Development

barns@GATEWAY.MITRE.ORG (Bill Barns) (04/18/89)

I think you have become lost in CCITT/ISOspeak.  This is no reflection
on your intelligence or diligence; their nomenclature is considerably
less than lucid.

I'm not sure where you got your #1 from in 8208, but I'm speculating
that you are looking near the end of clause 15.1.  The statement
actually made there is that "requests for X.25 facilities must precede
the other requests and requests for CCITT-Specified DTE facilities must
follow the other requests."  In both 8208 and 1984 X.25, X.25
facilities and CCITT-Specified DTE facilities are two disjoint subsets
of the facilities discussed in the documents.

By X.25 facilities, they mean those discussed in clauses 6 and 7 of
X.25(1984), which correspond to clause 13 of 8208.  By CCITT-Specified
DTE facilities, they mean those discussed in Annex G of X.25(1984),
which corresponds to clause 14 of 8208.  So the "non-X.25 facilities"
(which as you correctly deduced, is what the DDN Type of Service and
Precedence facilities are) are requested with "other requests".

Translation: The X.25 facilities come first, the non-X.25 facilities
(such as DDN's) come second, and the CCITT-Specified DTE facilities
come third.

Bear in mind that when the DDN X.25 spec in the Handbook was written,
X.25(1984) wasn't out yet.  Before X.25(1984), there was no such thing
as a "CCITT-Specified DTE facility" and thus no reason to clarify where
the DDN non-X.25 facilities belong in relation to them.  So, when the
DDN spec refers to "all CCITT X.25 facilities", it's unambiguous in
the author's frame of reference.  And strictly speaking, it isn't wrong
now, if you parse it as  (all (CCITT (X.25 facilities)))  rather than as
(all ((CCITT X.25) facilities))  since the CCITT-Specified DTE facilities
are not X.25 facilities even though CCITT specifies them in Annex G of
Rec X.25 and Annexes are considered an integral part of Recommendations.

Sigh.

(Fine print:  CCITT specifies the coding of the CCITT-Specified DTE
Facilities, but does not specify the procedures for using them, in the
CCITT sense of the word "procedures".  That issue is considered to be
in the realm of "international user organizations" by which they mean
ISO.  Likewise, they don't tell you how the two types of "other
requests" are positioned in relation to each other, only where they all
are in relation to the facilities which are in their domain to specify.
So the relative position of calling-DTE-specific-non-X.25-facility-requests
and called-<what I just said> is a local network matter.  You have to
ponder this for a bit to realize that an internetwork call between two
networks with conflicting rules doesn't make the conflict visible to
either network!)

The DDN doesn't specifically claim to support passing CCITT-Specified
DTE facilities at this time, and I have no idea what would happen if
you tried to do it.  If it doesn't work now, it will probably be added
on the next pass.

Does it all make sense now?  Hmm, let me rephrase that.  Does it all
seem consistent now?

Bill Barns / MITRE-Washington / barns@gateway.mitre.org