`
`
`
`
`
`
`
`
`
`
`PROCEEDINGSOF THE IEEE, VOL. 71, NO. 12, DECEMBER 1983
`
`
`
`
`
`
`The OSI Reference Model
`
`
`
`
`
`
`JOHN D. DAY anp HUBERT ZIMMERMANN
`
`
`
`
`Invited Paper
`
`
`
`
`[sevens began to achieve considerable attention. The early
`
`I.
`
`
`
`
`
`
`
`
`
`Abstract—The early successes of computer networks in the mid-1970’s
`made it apparent that to utilize the full potential of computer networks,
`international standards would be required. In 1977,
`the International
`Standards Organization (ISO) initiated work on Open Systems Intercon-
`nection (OSI) to address these
`i
`This paper briefly describes
`the OSI Reference Model. The OSI Reference Model is the highest level
`of abstraction in the OSI scheme. The paper first describes the basic
`building blocks used to construct the network model. Then the particular
`seven-layer model used by OSI is briefly described, followed by a discus-
`sion of outstanding issues and future extensions for the model.
`
`
`INTRODUCTION
`
`
`
`
`
`
`
`N THE mid-1970’s, the development and use of computer
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`successes of the ARPANET [1] and CYCLADES [2],
`the
`
`
`
`
`
`
`immediate commercial potential of packet switching,satellite and
`
`
`
`
`
`
`
`
`local network technology, and the declining cost of hardware
`
`
`
`
`
`
`
`
`made it apparent that computer networking was quickly becom-
`
`
`
`
`
`
`
`
`
`
`
`
`ing an importantfield. It was also apparentthat to utilize the full
`
`
`
`
`
`
`
`potential of computer networks, international standards to ensure
`
`
`
`
`interworking would be required.
`
`
`
`
`
`
`
`the International Organization for Standardization
`In 1978,
`
`
`
`
`
`
`
`
`(ISO) Technical Committee 97 on Information Processing, recog-
`
`
`
`
`
`
`
`
`nizing that standards for networks of heterogeneous systems were
`
`
`
`
`
`
`
`
`urgently required, created a new subcommittee (SC16) for “Open
`
`
`
`
`
`
`
`
`Systems Interconnection.” The term “open” was chosen to em-
`
`
`
`
`
`
`
`
`
`
`phasize that by conforming to OSI standards, a system would be
`
`
`
`
`
`
`
`
`open to communication with any other system obeying the same
`
`
`
`
`
`standards anywhere in the world.
`
`
`
`
`
`
`
`
`
`
`In 1978, it was clear that the commercial endeavors to exploit
`
`
`
`
`
`
`
`the emerging communication technology would wait neither for
`
`
`
`
`
`
`
`
`
`SC16 to leisurely develop communication standards nor for the
`
`
`
`
`
`research community to answer most of the outstanding questions.
`
`
`
`
`
`
`
`
`
`
`If there was to be a consistent set of international standards, OSI
`
`
`
`
`
`
`
`
`
`would have to lead rather than follow commercial development
`
`
`
`
`
`
`
`
`
`
`
`and make use of the most recent research work when available.
`
`
`
`
`
`
`
`
`
`
`
`
`Thesize of the task would require the work to be divided among
`
`
`
`
`
`
`
`several working groups each developing standards; however, close
`
`
`
`
`
`overall coordination would also be necessary.
`
`
`
`
`
`
`
`
`
`
`The first meeting of SC16 was held in March 1978. Initial
`
`
`
`
`
`
`
`
`discussions revealed [3] that a consensus could be reached rapidly
`
`
`
`
`
`
`
`
`on a basic layered architecture which would satisfy most require-
`
`
`
`
`
`
`
`
`
`
`
`
`ments of OSI and which could be extended later to meet new
`
`
`
`
`
`
`
`
`
`
`requirements. SC16 decided to give the highest priority to the
`
`
`
`
`
`
`
`
`
`development of a standard Model of Architecture which would
`
`
`
`
`
`
`
`
`constitute the framework for the development of standard proto-
`
`cols.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`After less than 18 months of discussions, this task was com-
`
`
`
`
`
`
`
`pleted, and the Reference Model of Open Systems Interconnec-
`
`
`
`
`
`
`
`
`
`tion, was transmitted by SC16 to TC97 along with recommenda-
`
`
`
`
`
`
`
`
`
`
`
`tions to start a number of projects for developing an initial set of
`
`
`
`
`
`
`
`standard protocols for OSI. These recommendations were adopted
`
`
`
`
`
`
`
`
`
`
`
`
`by TC97 at the end of 1979 as the basis for development of
`
`
`
`
`
`
`
`standards for Open Systems Interconnection within the ISO. The
`
`
`
`
`
`
`
`
`
`OSI Reference Model was also recognized by the CCITT Rap-
`
`
`
`
`
`
`
`
`porteur’s Group on Public Data Network Services. At this time,
`
`
`
`
`
`
`
`
`
`SC16 began development of standard OSI Protocols for the
`
`
`
`
`
`
`
`
`
`
`upper four layers. These are discussed in more detail in subse-
`
`
`
`
`
`
`quentarticles in this special issue.
`
`
`
`
`
`
`
`
`
`In late 1980, SC16 recommended that the Reference Model be
`
`
`
`
`
`forwarded as a Draft Proposal (DP) for an International Stan-
`
`
`
`
`
`
`
`
`
`
`dard. After two rounds of comments, the Reference Model was
`
`
`
`
`
`
`
`
`progressed as a Draft International Standard (DIS) in the Spring
`
`
`
`
`
`
`
`
`
`
`
`
`of 1982. Comments on this vote were processed late in 1982, and
`
`
`
`
`
`
`
`
`the Basic Reference Model became an International Standard
`
`
`
`
`
`
`
`
`(ISO 7498) [4] in the Spring of 1983.
`
`
`
`
`
`
`
`
`
`
`
`In most cases, the job of a standards committee is to take sets
`
`
`
`
`
`
`
`
`
`of commercial practices and the current research results when
`
`
`
`
`
`
`
`
`
`applicable and codify these procedures into a single standard that
`
`
`
`
`
`
`
`
`
`
`can be utilized by commercial products. SC16 was presented with
`
`
`
`
`
`
`
`
`a somewhat different problem: develop a set of standards which
`
`
`
`
`
`
`
`
`emerging products could converge to before the commercial
`
`
`
`
`
`
`
`
`
`practices were in place and while many of the more fundamental
`
`
`
`
`
`
`
`research problems remained unsolved. It would be presumptious
`
`
`
`
`
`
`
`
`
`
`
`to say that SC16 solved this problem. They did, however, find a
`
`
`
`
`
`
`
`
`
`
`
`
`way to cope with the problem in such a way as to maximize
`
`
`
`
`
`
`
`
`
`
`
`flexibility and to minimize the impact of change brought on by
`
`
`
`
`
`new technologies or new techniques.
`
`
`
`
`
`
`
`
`
`
`The approach adopted by SC16 was to use a layered architec-
`
`
`
`
`
`
`
`
`
`
`
`ture to break up the problem into manageable pieces. The OSI
`
`
`
`
`
`
`
`
`Reference Model is a framework for coordinating the develop-
`
`
`
`
`
`
`
`
`
`
`ment of OSI standards. In OSI, the problem is approached in a
`
`
`
`
`
`
`
`
`
`top-down fashion, starting with a description at a high level of
`
`
`
`
`
`
`
`
`abstraction which imposes few constraints, and proceeding to
`
`
`
`
`
`
`
`
`
`more and more refined descriptions with tighter and tighter
`
`
`
`
`
`
`
`
`
`
`
`constraints. In the world of OSI, three levels of abstractions are
`
`
`
`
`
`
`
`explicitly recognized: the architecture, the service specifications,
`
`
`
`
`
`
`
`and the protocol specifications (see Fig. 1).
`
`
`
`
`
`
`
`
`
`
`The OSI Architecture is the highest level of abstraction in the
`
`
`
`
`
`
`
`
`
`
`OSI scheme. The term “architecture” can be a very tricky term. It
`
`
`
`
`
`
`
`has been used to describe everything from a framework for
`
`
`
`
`
`
`
`
`development, to a particular form of organization, to hardware. A
`
`
`
`
`
`
`
`
`
`
`
`
`good way to think about the term is to consider the difference
`
`
`
`
`
`
`
`between an architecture and a building built to that architecture.
`
`
`
`
`
`
`
`
`
`
`For example, Victorian architecture is a set of rules and stylistic
`
`
`
`
`
`
`
`conventions that characterize a particular form. A Victorian
`
`
`
`
`
`
`
`
`
`
`building is a building built to those rules and conventions. You
`
`
`
`
`
`
`
`
`
`
`
`cannot walk into a Victorian architecture; you can walk into a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Manuscript received March 1, 1983; revised August 20, 1983.
`
`
`
`
`
`
`
`
`J. Day is with Codex Corporation, Mansfield, MA 02046.
`
`
`
`
`H. Zimmermann is with the Centre National d’Etudes des Télécommunica-
`
`
`
`
`
`
`
`
`tions, 92131 Issy-Les-Moulineaux, France.
`
`
`
`
`
`
`
`0018-9219/83/1200-1334$01.00 ©1983 IEEE
`Petitioner Valve - Ex. 1017, Page 1334
`Petitioner Riot Games,Inc. - Ex. 1017, p. 1334
`
`Petitioner Riot Games, Inc. - Ex. 1017, p. 1334
`
`Petitioner Valve - Ex. 1017, Page 1334
`
`
`
`
`DAY AND ZIMMERMANN:THE OSI REFERENCE MODEL
`
`
`
`
`
`
`
`
`OS! Reference Model
`
`
`os)
`Protocols
`
`
`
` # of possible
`
`# of implementations
`
`
`
`
`
`services, protocols,
`
`
`and implementations
`
`
`Fig. 1.
`
`
`
`
`
`
`The OSI Reference Model, Services, and Protocols are successively
`
`
`
`
`
`
`
`
`
`more detailed and therefore more constraining specifications.
`
`
`
`
`
`
`
`# of protocols and
`
`
`
`implementations
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1335
`
`
`
`
`
`
`
`
`Fig. 2. Network layering.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`protocols, The OSI Reference Model cannot be implemented,
`
`
`
`
`
`
`
`and it does not represent a preferred implementation approach.It
`
`
`
`
`
`
`
`
`
`
`is a model for describing the concepts for coordinating the
`
`
`
`
`
`
`parallel development of interprocess communication standards.
`
`
`
`
`
`
`
`
`
`
`
`One must rememberthat in the world of OSI, only OSI protocols
`
`
`
`
`
`
`
`
`
`can be implemented and products can only conform to OSI
`
`
`
`
`
`
`
`
`
`protocols. Thus the statement “this product conforms to the OSI
`
`
`
`
`
`
`
`
`
`
`Reference Model” does not imply the ability to interwork with
`
`
`
`
`
`
`
`
`other products which may make the same claim.
`
`
`
`
`
`
`
`
`
`
`The purpose of OSIis to allow any computer anywhere in the
`
`
`
`
`
`
`
`
`
`
`world to communicate with any other, as long as both obey the
`
`
`
`
`
`
`
`
`OSI standards. OSI standards and the degree of compatibility
`
`
`
`
`
`
`
`
`required to meet this goal make formal description methods a
`
`
`
`
`
`
`
`necessity. SC16/WG1 on Architecture established a group early
`
`
`
`
`
`
`
`
`
`
`in its work to develop formal description methods for defining
`
`
`
`
`
`
`
`
`the protocols so that they could be implemented unambiguously
`
`
`
`
`
`
`
`
`
`
`
`by people all over the world without having to consult with a few
`
`
`
`
`
`
`
`
`
`
`
`
`experts on how to interpret the standard. Thearticle in this issue
`
`
`
`
`
`
`
`
`
`
`
`by Vissers, Tenney, and Bochmann gives more details on the OSI
`
`
`
`
`
`
`formal description methods as used by ISO.
`
`
`
`
`
`
`
`
`
`
`
`In the remainder of this paper we describe the basic concepts
`
`
`
`
`
`
`
`
`
`
`used in the Reference Model, then give a brief description of each
`
`
`
`
`
`
`
`
`
`of the seven layers and identify a few of the outstanding archi-
`
`
`tectural issues.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IJ. THE ELEMENTS OF THE ARCHITECTURE
`
`
`
`
`
`
`
`
`
`
`ISO 7498, the document describing the basic OSI Reference
`
`
`
`
`
`
`
`
`
`
`is divided into two major sections. The first of these
`Model,
`
`
`
`
`
`
`
`
`
`describes the elements of the architecture. These constitute the
`
`
`
`
`
`
`
`
`
`
`building blocks that are used to construct the seven-layer model.
`
`
`
`
`
`
`
`The second describes the services and functions of the layers.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Victorian building. In computer science we often mistakenly refer
`
`
`
`
`
`
`
`
`
`to a building as an architecture. More formally this can also be
`
`
`
`
`
`
`
`
`
`
`considered as the distinction between the type of an object
`
`
`
`
`
`
`
`
`
`
`(architecture) and an instance of that object (building). The OSI
`
`
`
`
`
`
`
`
`
`
`
`Reference Model defines types of objects that are used to de-
`
`
`
`
`
`
`
`
`
`
`
`scribe an open system, the general relations among these types of
`
`
`
`
`
`
`
`
`
`
`objects, and the general constraints on these types of objects and
`
`
`
`
`
`
`
`
`
`relations. Specifications for the lower levels of abstractions may
`
`
`
`
`
`
`
`
`
`define other relations and tighter constraints for their purposes,
`
`
`
`
`
`
`
`
`
`but these must be consistent with those defined in the Reference
`
`Model.
`
`
`
`
`
`
`
`
`
`The document which describes the OSI Architecture, ISO 7498,
`
`
`
`
`
`
`
`
`
`defines these objects, relations, and constraints, and also defines
`
`
`
`
`
`
`
`a seven-layer model for interprocess communication constructed
`
`
`
`
`
`
`
`
`
`from these objects, relations, and constraints. These are used as a
`
`
`
`
`
`
`
`
`framework for coordinating the development of layer standards
`
`
`
`
`
`
`
`
`by OSI committees, as well as the development of standards built
`
`
`
`
`on top of OSI.
`
`
`
`
`
`
`
`
`The OSI Service Specifications represent a lower level of ab-
`
`
`
`
`
`
`
`
`
`straction that define in greater detail the service provided by each
`
`
`
`
`
`
`
`
`
`
`
`layer. This concept is defined in greater detail in the article by
`
`
`
`
`
`
`
`
`Linington in this issue. The service specification will define
`
`
`
`
`
`
`
`
`
`tighter constraints than the Reference Model on the protocols
`
`
`
`
`
`
`
`
`
`and implementations that will satisfy the requirements of the
`
`
`
`
`
`
`
`
`
`layer. A service specification defines the facilities provided to the
`
`
`
`
`
`
`
`
`
`
`user of the service independent of the mechanisms used to
`
`
`
`
`
`
`
`
`
`
`accomplish the service. It also defines an abstract interface for
`
`
`
`
`
`
`
`
`
`
`
`
`the layer, in the sense that it defines the primitives that a user of
`
`
`
`
`
`
`
`
`
`
`
`
`the layer may request with no implication of how or if that
`
`
`
`interface is implemented.
`
`
`
`
`
`
`
`
`
`The OSI Protocol Specifications represent the lowest level of
`
`
`
`
`
`
`A. Systems, Layer, and Entities
`
`
`
`
`
`
`
`abstraction in the OSI standards scheme. Each protocol specifica-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tion defines precisely what control information is to be sent and
`The OSI Reference Model is an abstract description of inter-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`what procedures are to be used to interpret this control informa-
`processes communication. OSI is concerned with standards for
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tion. The protocol specifications represent the tightest constraints
`communication between systems. In the OSI Reference Model,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`placed on implementations built to conform to OSI standards.
`communication takes place between application processes run-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`As shown in Fig. 1, the three levels of abstraction used by OSI
`ning in distinct systems. A system is considered to be one or
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`define successively tighter constraints on what will satisfy OSI.
`more autonomous computers and their associated software, pe-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`There are many services and protocols that satisfy the constraints
`ripherals, and users that are capable of information processing
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`required by the Reference Model. There are fewer protocols that
`and/or transfer. Although OSI techniques could be used within a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`satisfy both the Reference Model and the OSI Service Specifica-
`system (and it would be desirable for intra- and inter-system
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tions. Finally, the Protocol Specifications constrain implementa-
`communication to appear as similar as possible to the user),it is
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tions sufficiently to allow open systems to communicate while
`not the intent of OSI to standardize the internal operation of a
`
`
`
`
`
`
`system.
`still allowing differences in implementations.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Products can satisfy the much weaker constraints imposed by
`Layering is used as a structuring technique to allow the net-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the Reference Model, but may not be able to communicate with
`work of open systems to be logically decomposed in iadependent,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`open systems unless they also conform the OSI services and
`smaller swbsystems (see Fig. 2). Each individual system itself is
`Petitioner Valve - Ex. 1017, Page 1335
`Petitioner Riot Games,Inc. - Ex. 1017, p. 1335
`
`Petitioner Riot Games, Inc. - Ex. 1017, p. 1335
`
`Petitioner Valve - Ex. 1017, Page 1335
`
`
`
`1336
`
`
`
`
`
`
`
`
`
`
`PROCEEDINGSOF THE IEEE, VOL. 71, NO. 12, DECEMBER 1983
`
`
`
`
`
`
`
`
`
`Highest layer { N+ tHayer
`
`
`
`
`
`
`
`
`
`
`
`
`
`important to note. that not all functions performed within the
`
`
`
`
`
`
`
`
`(N}-layer are services. Only those capabilities that can be seen
`
`
`
`
`
`
`from the layer above are services.
`
`
`
`
`
`
`
`(N)}-entities distributed among the interconnected open sys-
`
`
`
`
`
`
`
`
`tems work collectively to provide the (N)-service to (N + 1)-
`
`
`
`
`
`
`
`
`
`entities as illustrated in Fig. 4. In other words, the (N)-entities
`
`
`
`
`
`
`
`
`
`
`
`add value to the (N — 1) service they get from the (N — 1)-layer
`
`
`
`
`
`
`
`
`
`
`and offer this value-added service, ie., the (N)-service to the
`
`
`(N + lpentities.
`
`
`
`
`
`
`
`
`
`the
`The (N)-services are offered to the (N + 1)-entities at
`
`
`
`
`
`
`
`
`
`(N)-service access points, or (N)-SAP’s for short, which repre-
`
`
`
`
`
`
`
`
`
`
`sent the logical interfaces between the (N)-entities and the (N +
`
`
`
`
`
`
`
`1)-entities. An (N + 1)-entity communicates with an (N)-entity
`
`
`
`
`
`
`
`
`
`
`
`in the same system through an (N)-SAP. An (N)-SAP can be
`
`
`
`
`
`
`
`
`
`
`
`served by only one (¥)-entity and used by only one (N + 1)-
`
`
`
`
`
`
`
`
`
`
`
`entity, but one (N)-entity can serve several (N)-SAP’s and one
`
`
`
`
`
`
`
`
`(N + 1}entity can use several (N)-SAP’s. An (N)-SAP is located
`
`
`
`
`
`
`by its (Naddress (see Section II-D).
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Fig. 4. Entities, service access points (SAP's), and protocols.
`
`
`
`
`
`C. Functions and Protocols
`
`
`
`
`
`
`
`
`
`
`
`An (N)}-function is part of the activity of an (N)-entity. Flow
`
`
`
`
`
`
`
`
`control, sequencing, data transformation are all examples of
`
`
`
`
`
`
`
`(N)-functions. Cooperation among (N)-entities is governed by
`
`
`
`
`
`
`
`
`
`
`one or more (N)-protocols. An (N)}-protocol is the set of nules
`
`
`
`
`
`
`
`and formats which govern the communication between (N)-enti-
`
`
`
`
`
`
`
`
`ties performing the (N)-functions in different open systems. In
`
`
`
`
`
`
`
`particular, direct communication between the (NV )-entities in the
`
`
`
`
`
`
`
`
`
`
`same system, e.g.,
`for sharing resources,
`is not visible from
`
`
`
`
`
`
`
`
`
`
`
`outside the system and thus is not covered by the OSI Architec-
`
`ture,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`viewed as being logically composed of a succession of subsys-
`
`
`
`
`
`
`
`
`tems, each subsystem corresponding to the intersection of the
`
`
`
`
`
`
`
`
`
`
`
`
`system with a layer. In other words, a layer is viewed as being
`D, Naming
`
`
`
`
`
`
`
`
`
`
`locally composed of subsystems of the same rank in all inter-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Objects within a layer or at the boundary between adjacent
`connected systems. Each subsystem, in turn, is viewed as being
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`layers need to be uniquely identifiable, e.g., in order to establish a
`made of one or several entities. A layer, therefore, comprises
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`connection between two SAP’s, one must be able to identify them
`many entities distributed among interconnected open systems.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`uniquely. The OSI Architecture defines identifiers for entities,
`Entities in the same layer are termed peer entities.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SAP’s, and connections as well as relations between these identi-
`For simplicity, any layer is referred to as the (N)-layer, while
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`fiers, as briefly outlined below.
`
`its next
`lower and next higher layers are referred to as the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Each (N)-entity is identified with a global title which is unique
`(N — 1)-layer and the (N + 1)-layer, respectively. The same no-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`and identifies the same (N)-entity anywhere in the network of
`tation is used to designate all concepts relating to layers, e.g.,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`open systems. Within more limited domains, an (N)-entity can
`entities in the (N)-layer are termed ()-entities, and illustrated
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`be identified with a local
`title which uniquely identifies the
`in Figs. 3 and 4.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(N)-entity only in that domain. For instance, within the domain
`The basic idea of layering is that each layer adds value to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`corresponding to the (N}-layer, (N)-entities are identified with
`services provided by the set of lower layers in such a way that the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(N)-global titles which are unique within the (N)-layer.
`highest layer is offered the full set of services needed to run
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Each (N)}-SAP is identified by an (N)-address which uniquely
`distributed applications. Layering thus divides the total problem
`
`
`
`
`
`
`
`
`
`
`
`
`
`locates the (N)-SAP at the boundary between the (N}-layer and
`into smaller pieces.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the (N + 1)-layer. The concepts of titles and addresses are il-
`Another basic principle of layering is to ensure independence
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`lustrated in Fig. 6.
`of each layer by defining services provided by a layer to the next
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Bindings between (N)-entities and the (N — 1)-SAP’s they
`higher layer, independent of how these services are performed.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`use (i.e., SAP’s through which they can access each other and
`This permits changes to be made in the way a layer or a set of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`communicate) are defined in an (N)-directory which indicates
`layers operate, provided they still offer the same service to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`correspondence between global titles of (N)-entities and (N)}-
`next higher layer. This technique is similar to the one used in
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`addresses through which they can be reached.
`structured programming where only the functions performed by a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Correspondence between (N)-addresses served by an (N)-
`
`module (and notits internal functioning) are known byits users.
`
`
`
`
`
`
`
`
`
`
`entity and the (N — 1)-addresses used for this purpose is per-
`
`
`
`
`
`
`
`
`
`formed by an (N)-mapping function. In addition to the simplest
`
`
`
`
`
`
`
`
`case of one-to-one mapping, mapping may,
`in particular, be
`
`
`
`
`
`
`
`
`hierarchical with the (N)-address being made of an (N — 1)-
`
`
`
`
`
`
`
`
`
`address and an (N)-suffix. Mapping may also be performed “by
`
`
`table lookup.”
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`B. Services and Service Access Points
`
`
`
`
`
`
`
`
`
`
`Each layer provides services to the layer above (with the
`
`
`
`
`
`
`
`
`
`
`
`
`exception of the highest layer). A service is a capability of the
`
`
`
`
`
`
`
`
`
`(N)-layer which is provided to the (N + 1}entities. But it is
`
`
`
`
`
`
`Petitioner Valve - Ex. 1017, Page 1336
`Petitioner Riot Games,Inc. - Ex. 1017, p. 1336
`
`Petitioner Riot Games, Inc. - Ex. 1017, p. 1336
`
`Petitioner Valve - Ex. 1017, Page 1336
`
`
`
`
`
`
`DAY AND ZIMMERMANN:THE OSI REFERENCE MODEL
`
`
`
`
`
`1337
`
`
`
`
`
`
`
`ControHinformation
`
`(N}Protocol-Data
`Units
`
`(N}CEP
`(N)connection
`
`
`
`
`
`
`
`
`Fig. 5. Connections and connection endpoints (CEP’s).
`
`(N- tHntertace-
`Control
`
`Data
`
`Data-Unit
`
`(N+ tylayer
`
`
`Fig. 7.
`
`
`
`
`
`
`Interrelationship between data units.
`
`
`
`information (N- 1) Interface=|(N- +}interface
`
` weeee (N+ I)title
`(N— THayer
`
`
`
`
`
`
`
`
`Fig. 6. Titles, addresses, and CEP identifiers.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`As work has progressed in OSI, two distinctions have come to
`
`
`
`
`
`
`
`
`
`
`be recognized as critical
`to the naming problem. First is the
`
`
`
`
`
`
`
`
`
`recognition that one must distinguish and be able to name
`
`
`
`
`
`
`
`
`
`separately and uniquely types and instances. Second, there are
`
`
`
`
`
`
`
`
`two types of names: primitive and descriptive. Primitive names
`
`
`
`
`
`
`
`
`
`are unique and assigned by some domain administrator, ¢.g.,
`
`
`
`
`
`
`
`
`phone numbers, social security numbers, etc. Descriptive names
`
`
`
`
`
`
`
`
`
`are composites of primitive names, keywords, etc., that can be
`
`
`
`
`
`
`
`
`
`resolved to primitive names by interpretation, ¢.g., my name and
`
`
`
`
`
`
`
`
`address. Relative few types and instances require primitive names.
`
`
`
`
`
`
`
`
`
`Descriptive names for everything else can be built from these as
`
`
`
`
`
`
`
`weil as synonyms for objects with primitive names. This greatly
`
`
`
`
`
`
`simplifies the administration of naming in OSI.
`
`
`
`
`
`
`
`
`
`E. Connections
`
`
`
`
`
`
`
`
`A common service offered by all layers consists of providing
`
`
`
`
`
`
`
`
`associations between peer SAP’s which can be used in particular
`
`
`
`
`
`
`
`to transfer data (as well as for other purposes such as to synchro-
`
`
`
`
`
`
`
`
`
`nize the served entities participating in the association). More
`
`
`
`
`
`
`
`
`
`precisely (see Fig. 5), the (N)-layer offers (N)}-connections be-
`
`
`
`
`
`
`
`
`
`
`tween (N)-SAP’sas part of the (N’)}-services. The most usual type
`
`
`
`
`
`
`
`
`
`
`of connection is the point-to-point connection, but there are also
`
`
`
`
`
`
`
`multi-endpoint connections which correspond to multiple associ-
`
`
`
`
`
`
`
`ations between entities (e.g., broadcast or multidrop communica-
`
`
`
`
`
`
`
`
`
`
`
`tions). The end of an (N)-connection at an (N)-SAP is called an
`
`
`
`
`
`
`
`(N)-connection-endpoint or (N)-CEP for short. Several connec-
`
`
`
`
`
`
`
`
`
`
`tions may coexist between the same pair (or n-tuple) of SAP's.
`
`
`
`
`
`
`
`
`Each (N)-CEP is uniquely identified within its (N’)-SAP by an
`
`
`
`
`
`
`
`
`
`
`
`(N)-CEP identifier which is used by the (N)-entity and the
`
`
`
`
`
`
`
`
`
`
`(N + 1)-entity on both sides of the (N)-SAP to identify the
`
`
`
`
`
`
`
`(N)}-connection, as illustrated in Fig. 6. This is necessary since
`
`
`
`
`
`
`
`several (N)-connections may end at the same (N’)-SAP.
`
`
`
`
`
`
`The Basic Reference Model currently restricts communications
`
`
`
`
`
`
`
`
`
`between (N)-entities to “connection mode.” In this mode, the
`
`
`
`
`
`
`
`
`
`(N — 1}service requires that an (N — 1)-connection be estab-
`
`
`
`
`
`
`
`
`lished between (N — 1)-SAP’s before any communication be-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Fig. 8. Logical relationship between data units in adjacent layers.
`
`
`
`
`
`
`
`
`
`
`tween (N)-entities can take place. Conversely, when the (’)-enti-
`
`
`
`
`
`
`
`
`ties need no longer communicate, the (N — 1)-connection can be
`
`
`
`
`
`
`
`released. This connection mode covers traditional teleprocessing.
`
`
`
`
`
`
`
`
`For newer applications, a “connectionless” mode is currently
`
`
`
`
`
`
`
`being developed within ISO as a complement to the connection
`
`mode.
`
`
`
`
`
`
`
`
`1) Establishment and Release of Connections: When an (N +
`
`
`
`
`
`
`
`
`1)-entity requests the establishment of an (N)-connection from
`
`
`
`
`
`
`
`
`
`one of the (N’)-SAP’s it uses to another (N)-SAP, it must provide
`
`
`
`
`
`
`
`
`
`
`at the local (N)-SAP the (N)-address of the distant (N)-SAP.
`
`
`
`
`
`
`
`
`Whenthe (N’)-connection is established, both the (N + 1}entity
`
`
`
`
`
`
`
`and the (N)-entity will use the (N’)-CEP identifier to designate
`
`
`the (V)-connection.
`
`
`
`
`
`
`
`(N)-connections may be established and released dynamically
`
`
`
`
`
`
`
`
`on top of (N — 1)-connections. Establishment of an (N)-connec-
`
`
`
`
`
`
`
`
`
`tion implies the availability of an (N — 1)-connection between
`
`
`
`
`
`
`
`
`
`
`the two entities. If not available, the (N — 1)-connection must be
`
`
`
`
`
`
`
`
`established. This
`requires
`the availability of an (N — 2)-
`
`
`
`
`
`
`
`
`connection. The same consideration applies downwards until an
`
`
`
`available connection is encountered.
`
`
`
`
`
`
`
`
`In somecases, the (N)-connection may beestablished simuita-
`
`
`
`
`
`
`
`
`neously with its supporting (N — 1)-connection provided the
`
`
`
`
`
`
`
`(N — 1)-connection establishmentservice permits (N)-entities to
`
`
`
`
`
`
`exchange information necessary to establish the (N)-connection.
`
`
`
`
`
`
`
`2) Data Transfer on a Connection:
`Information is transferred
`
`
`
`
`
`
`
`
`
`
`in various types of data units between peer entities and between
`
`
`
`
`
`
`
`
`
`
`entities attached to a specific service access point. The data units
`
`
`
`
`
`
`
`
`
`are defined below and the interrelationship among several of
`
`
`
`
`
`
`them is illustrated in Figs. 7 and 8.
`
`
`
`
`
`(N)-protocol control
`information is information exchanged
`
`
`
`
`
`
`
`
`between two (N)-entities, using an (N — 1)-connection, to coor-
`
`
`
`
`dinate their joint operation.
`
`
`
`
`
`
`
`
`
`
`Petitioner Valve - Ex. 1017, Page 1337
`Petitioner Riot Games,Inc. - Ex. 1017, p. 1337
`
`Petitioner Riot Games, Inc. - Ex. 1017, p. 1337
`
`Petitioner Valve - Ex. 1017, Page 1337
`
`
`
`1338
`
`
`
`
`
`
`
`
`
`
`(N)-user-data are the data transferred between two (N)-enti-
`
`
`
`
`
`
`
`
`
`ties on behalf of the (N + 1)-entities for whom the (N)-entities
`
`
`
`are providing services.
`
`
`
`
`
`
`
`An (N)-protocol-data-unit is a unit of data which contains
`
`
`
`(N)-protocol-control-information and possibly (NV )-user-data.
`
`
`
`(N)-interface-control-information is
`information exchanged
`
`
`
`
`
`
`
`
`between an (N + 1)-entity and an (N)-entity to coordinate their
`
`
`joint operation.
`
`
`
`
`
`(N)-interface-data-unit is the amount of (N — 1)-interface-data
`
`
`
`
`
`
`
`
`
`whose identity is preserved from one end of an (N — 1)-
`
`
`
`
`
`
`
`
`
`
`connection to the other. Data may be held within a connection
`
`
`
`
`
`
`
`
`
`
`until a complete service data unit is put into the connection.
`
`
`
`
`
`Expedited (N)-service-data-unit is a small (N)-service-data-
`
`
`
`
`
`
`
`
`
`unit whose transfer is expedited. The (N — 1)-layer ensures that
`
`
`
`
`
`
`
`
`
`
`an expedited data-unit will not be delivered before any subse-
`
`
`
`
`
`
`
`
`quentservice-data-unit or expedited data-unit sent on that con-
`
`
`
`
`
`
`nection. An expedited (N)-service-data-unit may also be referred
`
`
`to as an (N)-expedited-data-unit.
`
`
`
`
`
`Note: An (N)-protocol-data-unit may be mapped one-
`
`
`
`
`
`
`
`
`to-one onto an (N — 1)-service-data-unit (see Fig. 8).
`
`
`
`
`
`
`
`
`3) Elements of Layer Operation: There are a numberof func-
`
`
`
`
`
`
`
`
`
`tions which are recognized as part of layer operation. These
`
`
`
`
`
`
`
`
`include such things as multiplexing,
`flow control, and error
`
`
`
`
`
`
`
`
`
`
`control. As the Reference Model matures other elements will be
`
`
`
`
`
`
`
`
`
`
`added. In the Reference Model, these elements are described in
`
`
`
`
`
`
`general without reference to a particular layer.
`
`
`
`
`
`
`Three particular types of construction of (N)-connections on
`
`
`
`
`
`top of (N — 1)-connections are distinguished.
`
`
`
`
`
`
`a) One-to-one correspondence, where each (N)-connection is
`
`
`
`
`built on one (N — 1)-connection.
`
`
`
`
`
`
`
`b) Multiplexing, where several (N)-connections are multi-
`
`
`
`
`
`plexed on one single (N — 1)-connection.
`
`
`
`
`
`
`
`
`
`
`c) Splitting, where one single (N)-connection is built on top of
`
`
`
`
`
`
`
`several (N — 1)-connections,
`the traffic on the (N)-connection
`
`
`
`
`
`
`
`being divided between the various (N — 1)-connections.
`
`
`
`
`
`
`
`
`
`
`Two forms of flow control