US9009740B2

Invocation of additional processing using remote procedure calls

Summary by NHIP

Metadata-Enhanced RPC Invocation

The method receives a server function list and client-to-server mapping containing metadata describing non-standard processing. A client composes an RPC message with this metadata and an argument to invoke pre- or post-processing on the argument or output before standard execution.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

In one embodiment, a method for invoking additional processing at a remote computing device using remote procedure calls (RPCs) is provided. In this method, a list of functions supported by the remote computing device is received from the remote computing device. From the list of functions, a function that requires metadata about the function is identified. The metadata and argument required by the function is accessed, and an RPC message that includes the metadata and the argument is composed. The RPC message is then transmitted to the remote computing device. Here, the RPC message is transmitted to call the function with the argument as input and to invoke the additional processing based on the metadata.

US9009740B2, drawing sheet 1
Sheet 1 of 11

Term

5.1 yearsleft in the term

Expires 19 October 2031, including 98 days of term adjustment.

  1. Priority and filed
  2. Granted
  3. Today
  4. Expires

22 claims: 4 independent, 18 dependent

  1. 1
    Broadest claimClaim Score 59, broad(NHIP)A method comprising:receiving at a client device, from a server device a list of functions supported by the server device and a mapping of functions of the client device to the functions supported by the server device, the functions having associated metadata that describes additional processing associated with the functions not supported by standard RPC calls, wherein the metadata is defined by the client device;identifying at the client device, from the list of functions, a function;accessing at the client device, the metadata associated with the function and an argument required by the function;composing at the client device, an RPC message that comprises the metadata and the argument;and transmitting at the client device, the RPC message to the server device, the RPC message being transmitted to call the function with the argument as input and to use the metadata to invoke the additional processing that is otherwise not provided by execution of the function, the additional processing comprising an additional pre-processing on the argument before the server device executes the function and/or an additional post-processing on the output from the function.
  2. 10
    A method comprising:sending, at a server device, to a client device a list of functions supported by the server device and a mapping of functions of the client device to the functions supported by the server device, the functions having associated metadata that describes additional processing associated with the functions not supported by standard RPC calls, wherein the metadata is defined by the client device;receiving, at the server device, an RPC message from the client device, the RPC message calling an execution of a function and including metadata about the function and argument required for an execution of the function;extracting, at the server device, the metadata about the function from the RPC message;utilizing the metadata to invoke the additional processing that is otherwise not provided by execution of the function;and executing, at the server device, the function based on the argument, the additional processing comprising an additional pre-processing on the argument before the server device executes the function and/or an additional post-processing on the output from the function.
  3. 18
    A non-transitory, machine-readable medium that stores instructions, which, when performed by a machine, cause the machine to perform operations comprising:receiving, at a client device, from a server device a list of functions supported by the remote computing device and a mapping of functions of the client device to the functions supported by the server device, the functions having associated metadata that describes additional processing associated with the functions not supported by standard RPC calls, wherein the metadata is defined by the client device;identifying, from the list of functions, a function;accessing the metadata associated with the function and an argument required by the function;composing a remote procedure call (RPC) message that comprises the metadata and the argument;and transmitting the RPC message to the server device, the RPC message being transmitted to call the function with the argument as input and to use the metadata to invoke the additional processing that is otherwise not provided by execution of the function, the additional processing comprising an additional pre-processing on the argument before the server device executes the function and/or an additional post-processing on the output from the function.
  4. 21
    An enterprise system comprising:a client device comprising: at least one processor;and a memory in communication with the at least one processor, the memory being configured to store a client remote procedure call (RPC) service module that is executable by the at least one processor, the client RPC service module having instructions that when executed by the at least one processor, cause operations to be performed, the operations comprising: receiving from a server device a list of functions supported by the server device and a mapping of functions of the client device to the functions supported by the server device, the functions having associated metadata that describes additional processing associated with the functions that is not supported by standard RPC protocols, wherein the metadata is defined by the client device;identifying, from the list of functions, a function that requires metadata about the function;accessing the metadata associated with the function and an argument required by the function;composing an RPC message that comprises the metadata and the argument;and transmitting the RPC message to the server device, the RPC message being transmitted to call the function on the remote computing device and to use the metadata to invoke the additional processing that is otherwise not provided by execution of the function, the additional processing comprising an additional pre-processing on the argument before the server device executes the function and/or an additional post-processing on the output from the function.