define some rpc protocols