Differences Between TI-RPC and TS-RPC
The major differences between transport-independent RPC and transport-specific RPC are
illustrated in the following table. Also see Comparison Examples for code examples comparing TS-RPC with TI-RPC.
Table 15 Differences Between TI-RPC and TS-RPC
| | |
Default Transport Selection
| TI-RPC uses the TLI interface.
| TS-RPC uses the socket interface.
|
RPC Address Binding
| TI-RPC uses rpcbind() for service binding. rpcbind() keeps address in universal address format.
| TS-RPC uses portmap for service binding.
|
Transport Information
|
Transport information is kept in a local file,
/etc/netconfig. Any transport identified in
netconfig is accessible.
| Only TCP and UDP transports are supported.
|
Loopback Transports
| rpcbind service requires a secure loopback transport
for server registration.
| TS-RPC services do not require a loopback transport.
|
Host Name Resolution
| The order of host-name resolution in TI-RPC depends on the order of
dynamic libraries identified by entries in /etc/netconfig.
| Host-name resolution is done by name services. The order is set by the
state of the hosts database.
|
File Descriptors
| Descriptors are assumed to be TLI endpoints.
| Descriptors are assumed to be sockets.
|
Libraries
|
TI-RPC requires that applications be linked to the
libnsl library.
|
All TS-RPC functionality is provided in
libc.
|
MT Support
| Multithreaded RPC clients and servers are supported.
| Multithreaded RPC is not supported.
|
|