One of the first acts of the server application is to specify the protocol sequences over which it can communicate with clients.
The protocol sequence is a character string that represents a valid combination of an RPC protocol (such as "ncacn"), a transport protocol (such as "tcp"), and a network protocol (such as "ip"). Microsoft RPC supports the following protocol sequences:
Protocol sequence | Description |
Supporting Platforms |
---|---|---|
ncacn_nb_tcp | Connection-oriented NetBIOS over TCP | Client only: MS-DOS, Windows 3.x Client and server: Windows NT |
ncacn_nb_ipx | Connection-oriented NetBIOS over IPX | Client only: MS-DOS, Windows 3.x Client and server: Windows NT |
ncacn_nb_nb | Connection-oriented NetBEUI | Client only: MS-DOS, Windows 3.x Client and server: Windows NT, Windows 95 |
ncacn_ip_tcp | Connection-oriented TCP/IP | Client only: MS-DOS,Windows 3.x, and Apple® Macintosh® Client and server: Windows 95 and Windows NT |
ncacn_np | Connection-oriented named pipes | Client only: MS-DOS, Windows 3.x, Windows 95 Client and server: Windows NT |
ncacn_spx | Connection-oriented SPX | Client only: MS-DOS, Windows 3.x Client and server: Windows NT, Windows 95 |
ncacn_dnet_nsp | Connection-oriented DECnet | Client only: MS-DOS, Windows 3.x |
ncacn_at_dsp | Connection-oriented AppleTalk DSP | Client: Apple Macintosh |
ncacn_vns_spp | Connection-oriented Vines SPP transport | Client and Server: Windows NT |
ncadg_ip_udp | Datagram (connectionless) UDP/IP | Client only: MS-DOS, Windows 3.x Client and server: Windows NT |
ncadg_ipx | Datagram (connectionless) IPX |
Client only: MS-DOS, Windows 3.x Client and server: Windows NT |
ncalrpc | Local procedure call | Client and server: Windows NT and Windows 95 |
The server application specifies a single protocol sequence by calling one of the functions that starts with the prefix "RpcServerUseProtseq." The server specifies all supported protocol sequences by calling RpcServerUseAllProtseqs.
The function you choose to specify protocol sequences also specifies information about the endpoint. The endpoint can be specified explicitly (RpcServerUseProtseqEp), culled from the IDL file (RpcServerUseProtseqIf, RpcServerUseAllProtseqsIf), or selected for the application by the run-time library (RpcServerUseProtseq, RpcServerUseAllProtseqs). These are the choices:
"Protseq" function | Description |
---|---|
RpcServerUseAllProtseqs | Registers all protocols using dynamic endpoints. |
RpcServerUseAllProtseqsIf | Registers all protocols with endpoints from the IDL file. |
RpcServerUseProtseq | Registers one protocol using a dynamic endpoint. |
RpcServerUseProtseqEp | Registers one protocol with the specified endpoint. |
RpcServerUseProtseqIf | Registers one protocol with the endpoint in the IDL file. |
The server application specifies endpoint information at the same time it specifies the protocol sequence by calling the RPC function that starts with the prefix "RpcServerUseProtseq" or "RpcServerUseAllProtseqs." The endpoint specifies the communication port through which clients make remote procedure calls to the server. For more information about endpoints, see Endpoints.