Patent ID: 7929539

Claim:
A method for controlling access by processes running on a host device to a communication network, the method comprising: allocating a plurality of instances of a communication service on the network, by a driver of the network interface adapter that couples the host device to the network, to be provided via the adapter, to at least some of the processes on the host device, such that each of the instances is allocated to a particular one of the processes, wherein allocating the instances comprises allocating multiple instances to a single one of the processes; assigning to each of the processes a single respective doorbell address in an address range, in an address space of the host device, for the each process to submit only thereto requests to access the multiple instances that are allocated to the each process; receiving a request submitted by a given one of the processes to its respective doorbell address, by the network interface adapter, to access one of the allocated service instances, which is specified in the request; and conveying data over the network using the specified instance of the service, subject to verifying, based on the doorbell address to which the request was submitted, that the specified instance was allocated to the given process.