Node-by-node allocation and deallocation by the stubs is the default method of memory management for all parameters on both the client and the server. On the client side, the stub allocates each node with a separate call to midl_user_allocate. On the server side, rather than calling midl_user_allocate, private memory is used whenever possible. If midl_user_allocate is called, the server stubs will call midl_user_free to free the data. In most cases, using node-by-node allocation and deallocation instead of using allocate (all_nodes) will result in increased performance of the server side stubs.