A communications link depends on a set of communications protocols. A communications protocol is a clearly defined set of operational rules and procedures for communications.
Communications protocols include a transport protocol (from the Transport Layer of the OSI network architecture) such as the Transmission Control Protocol (TCP) or the User Datagram Protocol (UDP); and the corresponding network protocol (from the OSI Network Layer) such as the Internet Protocol (IP).
For an RPC client and server to communicate, their RPC runtimes must use at least one identical communications protocol, including a common RPC protocol, transport protocol, and network protocol. An RPC protocol is a communications protocol that supports the semantics of the DCE RPC API and runs over specific combinations of transport and network protocols. DCE RPC provides two RPC protocols: the connectionless RPC protocol and the connection-oriented RPC protocol.
· Connectionless (Datagram) RPC protocol
This protocol runs over a connectionless transport protocol such as UDP. The connectionless protocol supports broadcast calls.
· Connection-oriented RPC protocol
This protocol runs over a connection-oriented transport protocol such as TCP.
Each binding uses a single RPC protocol and a single pair of transport and network protocols. Only certain combinations of communications protocols are functionally valid (are actually useful for interoperation); for instance, the RPC connectionless protocol cannot run over connection-oriented transport protocols such as TCP. DCE RPC supports the following combinations of communications protocols (as provided by OSF):
· RPC connection-oriented protocol over the Internet Protocol Suite, Transmission Control Protocol (TCP/IP)Protocol
· RPC connectionless protocol over the Internet Protocol Suite, User Datagram Protocol (UDP/IP)