Distributed applications have fostered the standardization of applicat
ion programming interfaces for the underlying communication services.
Three popular communication models-remote procedure calls, messaging a
nd queuing, and conversations-support distributed applications across
different networking protocols and physical media. Access to the conve
rsational services of Advanced Program-to-Program Communication and Op
en Systems Interconnection-Distributed Transaction Processing is provi
ded by the Common Programming Interface for Communications (CPI-C), a
standard, easy-to-use interface for communication programming. This pa
per introduces the basic concepts of CPI-C, describes the conversation
services available to programs, and presents examples of CPI-C progra
mming.