High-level protocols

High-level protocols (HLP's) are the high-level languages of distributed systems. In a resource-sharing network, HLP's link processes working on a conmmn application. The design of an HLP is decomposed into three components: language, coding, and transport. The language expresses the commands and data passed between processes. It is designed to provide standardization and device independence, in order to use a small number of HLP's to address a range of applications implemented on a variety of computer systems. Coding converts the language into digital messages. Finally, a transport system is used to transmit the messages from one process to another-experience with HLP's has shown that different HLP's require different transport behaviors. This paper describes some examples of HLP's (ARPA network voice and graphics protocols), and argues that modern techniques for expressing structure and control in programming languages should be applied to analogous problems in communication among application processes in a network.

[1]  Niklaus Wirth,et al.  PASCAL User Manual and Report , 1974, Lecture Notes in Computer Science.

[2]  Jonathan B. Postel,et al.  The arpanet telnet protocol: Its purpose, principles, implementation, and impact on host operating system design , 1977, SIGCOMM.

[3]  William R. Crowther,et al.  Issues in packet switching network design , 1899, AFIPS '75.

[4]  Robert E. Kahn,et al.  The Organization of Computer Resources into a Packet Radio Network , 1977 .

[5]  Robert F. Sproull,et al.  A network graphics protocol , 1974, SIGGRAPH 1974.

[6]  Robert E. Kahn,et al.  Resource-sharing computer communications networks , 1972 .

[7]  David C. Walden,et al.  A system for interprocess communication in a resource sharing computer network , 1972, CACM.

[8]  Butler W. Lampson,et al.  On the transfer of control between contexts , 1974, Symposium on Programming.

[9]  Griffith Hamlin Configurable applications for satellite graphics , 1976, SIGGRAPH '76.

[10]  Robert H. Thomas,et al.  A resource sharing executive for the ARPANET , 1973, AFIPS National Computer Conference.

[11]  James W. Forgie,et al.  Speech transmission in packet-switched store-and-forward networks , 1899, AFIPS '75.

[12]  W. M. Newman,et al.  An approach to graphics system design , 1974 .

[13]  James E. White A high-level framework for network-based resource sharing , 1976, AFIPS '76.

[14]  Mary Shaw,et al.  Abstraction and verification in Alphard: Defining and specifying iteration and generators , 1977, Commun. ACM.

[15]  Robert E. Kahn,et al.  A Protocol for Packet Network Intercommunication , 1974 .

[16]  Craig Schaffert,et al.  Abstraction mechanisms in CLU , 1977, Commun. ACM.

[17]  Barry D. Wessler,et al.  Computer network development to achieve resource sharing , 1899, AFIPS '70 (Spring).

[18]  P. A. Woodsford The design and implementation of the GINO 3D graphics software package , 1971, Softw. Pract. Exp..

[19]  Jerome A. Feldman,et al.  Programming Distributed Systems , 1978, ACM Annual Conference.

[20]  Warren Teitelman,et al.  A Display Oriented Programmer's Assistant , 1977, IJCAI.

[21]  Vinton G. Cerf,et al.  HOST-HOST communication protocol in the ARPA network , 1899, AFIPS '70 (Spring).

[22]  D.R. Reddy,et al.  Speech recognition by machine: A review , 1976, Proceedings of the IEEE.

[23]  Danny Cohen,et al.  Issues in transnet packetized voice communication , 1977, SIGCOMM.