📄 rfc1085.txt
字号:
Network Working Group M. RoseRequest for Comments: 1085 TWG December 1988 ISO Presentation Services on top of TCP/IP-based internetsStatus of this Memo This memo proposes a standard for the Internet community. Distribution of this memo is unlimited.1. Introduction [RFC1006] describes a mechanism for providing the ISO transport service on top of the Transmission Control Protocol (TCP) [RFC793] and Internet Protocol (IP) [RFC791]. Once this method is applied, one may implement "real" ISO applications on top of TCP/IP-based internets, by simply implementing OSI session, presentation, and application services on top of the transport service access point which is provided on top of the TCP. Although straight-forward, there are some environments in which the richness provided by the OSI application layer is desired, but it is nonetheless impractical to implement the underlying OSI infrastructure (i.e., the presentation, session, and transport services on top of the TCP). This memo describes an approach for providing "stream-lined" support of OSI application services on top of TCP/IP-based internets for such constrained environments.2. Terminology In as much as this memo is concerned primarily with concepts defined in the framework of Open Systems Interconnection (OSI) as promulgated by the International Organization for Standardization (ISO), the terminology used herein is intended to be entirely consistent within that domain of discourse. This perspective is being taken despite the expressed intent of implementing the mechanism proposed by this memo in the Internet and other TCP/IP-based internets. For those more familiar with the terminology used in this latter domain, the author is apologetic but unyielding. Although no substitute for the "correct" definitions given in the appropriate ISO documents, here is a short summary of the terms used herein.Rose [Page 1]RFC 1085 ISO Presentation Services December 1988 Application Context: The collection of application service elements which cooperatively interact within an application-entity. Application Service Element: A standardized mechanism, defined by both a service and a protocol, which provides a well-defined capability, e.g., ROSE - the Remote Operations Service Element, which orchestrates the invocation of "total" operations between application-entities [ISO9066/2]. ACSE - the Association Control Service Element, which manages associations between application entities [ISO8650]. Object Identifier: An ordered set of integers, used for authoritative identification. Presentation Service: A set of facilities used to manage a connection between two application-entities. The fundamental responsibility of the presentation service is to maintain transfer syntaxes which are used to serialize application protocol data units for transmission on the network and subsequent de-serialization for reception. Protocol Data Unit (PDU): A data object exchanged between service providers. Serialization: The process of applying an abstract transfer notation to an object described using abstract syntax notation one (ASN.1) [ISO8824] in order to produce a stream of octets. De-serialization is the inverse process. It is assumed that the reader is familiar with terminology pertaining to the reference model [ISO7498], to the service conventions in the model [ISO8509], and to the connection-oriented presentation service [ISO8822].3. Scope The mechanism proposed by this memo is targeted for a particular class of OSI applications, namely those entities whose application context contains only an Association Control Service Element (ACSE) and a Remote Operations Service Element (ROSE). In addition, aRose [Page 2]RFC 1085 ISO Presentation Services December 1988 Directory Services Element (DSE) is assumed for use by the application-entity, but only in a very limited sense. The organization of such an entity is as follows: +------------------------------------------------------------+ | | | Application-Entity | | | | +------+ +------+ +------+ | | | ACSE | | ROSE | | DSE | | | +------+ +------+ +------+ | | | +------------------------------------------------------------+ | | | Presentation Services | | | | P-CONNECT P-RELEASE P-DATA | | P-U-ABORT | | P-P-ABORT | | | +------------------------------------------------------------+ The mechanism proposed by this memo is not applicable to entities whose application context is more extensive (e.g., contains a Reliable Transfer Service Element). The mechanism proposed by this memo could be modified to support additional elements. However, such extensions would, at this time, merely serve to defeat the purpose of providing the minimal software infrastructure required to run the majority of OSI applications. The motivation for this memo was initially derived from a requirement to run the ISO Common Management Information Protocol (CMIP) in TCP/IP-based internets. In its current definition, CMIP uses precisely the application service elements provided for herein. It may be desirable to offer CMIP users a quality of service different than the one offered by a connection with a high-quality level of reliability. This would permit a reduced utilization of connection- related resources. This memo proposes a mechanism to implement this less robust -- and less costly -- quality of service.4. Approach The approach proposed by this memo relies on the following architectural nuances:Rose [Page 3]RFC 1085 ISO Presentation Services December 1988 - the TCP is a stream-oriented transport protocol - ASN.1 objects, when represented as a stream of octets are self-delimiting - The ISO presentation service permits the exchange of ASN.1 objects - The ACSE and ROSE require the following presentation facilities: The Connection Establishment Facility The Connection Termination Facility The Information Transfer Facility (P-DATA service only) - The majority of the parameters used by the services which provide these facilities can be "hard-wired" to avoid negotiation In principle, these nuances suggest that a "cheap" emulation of the ISO presentation services could be implemented by simply serializing ASN.1 objects over a TCP connection. This approach is precisely what is proposed by this memo. Given this perspective, this memo details how the essential features of the ISO presentation service may be maintained while using a protocol entirely different from the one given in [ISO8823]. The overall composition proposed by this memo is as follows: +-----------+ +-----------+ | PS-user | | PS-user | +-----------+ +-----------+ | | | PS interface PS interface | | [ISO8822] | | | +----------+ ISO Presentation Services on the TCP +----------+ | client |-----------------------------------------| server | +----------+ (this memo) +----------+ | | | TCP interface TCP interface | | [RFC793] | | |Rose [Page 4]RFC 1085 ISO Presentation Services December 1988 In greater detail, the "client" and "server" boxes implement the protocol described in this memo. Each box contains three modules: - a dispatch module, which provides the presentation services interface, - a serialization module, containing a serializer, which takes an ASN.1 object and applies the encoding rules of [ISO8825] to produce a stream of octets, and a de-serializer, which performs the inverse operation, and - a network module, which manages a TCP connection. The software architecture used to model a network entity using this approach is as follows: +---------+ +----------+ +-----+ | | | | output +---------------+ input | n | | | | |<--------| de-serializer |<--------| e | | | | | queue +---------------+ queue | t | | PS-user |----| dispatch | | w | | | | | input +---------------+ output | o | | | | |-------->| serializer |-------->| r | | | | | queue +---------------+ queue | k | +---------+ +----------+ +-----+ |---- serialization module ----| The ISO presentation layer is concerned primarily with the negotiation of transfer syntaxes in addition to the transformation to and from transfer syntax. However, using the mechanism proposed by this memo, no negotiation component will be employed. This memo specifies the fixed contexts which exist over each presentation connection offered. This memo further specifies other constants which are used in order to eliminate the need for presentation layer negotiation.5. Fundamental Parameters There are certain parameters which are used by the presentation service and are defined here. 1. Presentation address: The structure of a presentation address is presented in Addendum 3 to [ISO7498]. This memo interprets a presentation address as anRose [Page 5]RFC 1085 ISO Presentation Services December 1988 ordered-tuple containing: - one or more network addresses - a transport selector - a session selector - a presentation selector Each selector is an uninterpreted octet string of possibly zero length. The mechanism proposed in this memo completely ignores the values of these selectors. Note however that the value of the presentation selector is preserved by the provider. A network address is interpreted as containing three components: - a 32-bit IP address - a set indicating which transport services are available at the IP address (currently only two members are defined: TCP and UDP; as experience is gained, other transport services may be added); as a local matter, if a member is present it may have an "intensity" associated with it: either "possibly present" or "definitely present" - a 16-bit port number As a consequence of these interpretations, any application-entity residing in the network can be identified by its network address. 2. Presentation context list A list of one or more presentation contexts. Each presentation context has three components: - a presentation context identifier (PCI), an integer - an abstract syntax name, an object identifier - an abstract transfer name, an object identifier The range of values these components may take is severely restricted by this memo. In particular, exactly two contexts are defined: one for association control and the other for the specific application service element which is being carried as ROS APDUs (see the section on connection establishment for the precise values). In addition, if the presentation context list appears in a "result" list (e.g., the Presentation context result listRose [Page 6]RFC 1085 ISO Presentation Services December 1988 parameter for the P-CONNECT service), a fourth component is present: - an acceptance indicator which indicates if the context was accepted by both the service provider and the remote peer. If the context was not accept, a brief reason, such as "abstract syntax not supported" is given. For the novice reader, one might think of the abstract syntax notation as defining the vocabulary of some language, that is, it lists the words which can be spoken. In contrast, the abstract transfer notation defines the pronunciation of the language. 3. User data User data passes through the presentation service interface as
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -