This range is intended primarily for debugging new programs. The third group is reserved for applications that generate program numbers dynamically. The final groups are reserved for future use and should not be used. Assigning Version Numbers Most new protocols evolve into more efficient, stable, and mature protocols. The version number identifies which version of the protocol the caller is using.
Version numbers make it possible to use old and new protocols through the same server.
Just as remote program protocols may change over several versions, the actual RPC message protocol can also change. Therefore, the call message also contains the RPC version number. In the second version of the RPC protocol specification, the version number is always 2. The procedure number is documented in each program's protocol specification. For example, a file service protocol specification can list the read procedure as procedure 5 and the write procedure as procedure 12.