Encapsulated accelerator
First Claim
1. A data processing system comprising;
- a host computer system;
a plurality of software domains supported by the host computer system, the plurality of software domains comprising a privileged software domain and a first software domain having an application, wherein the privileged software domain is configured to present an operating platform to the first software domain, the data processing system comprising;
a network interface device for connection to a network, the host computer system and network interface device being coupled together by means of a data bus, the network interface device comprising;
a controller unit having a first data port for connection to a network, a second data port, and a data bus interface connected to said data bus, the controller unit being configured to perform, in dependence on the network endpoints to which data packets received at the network interface device are directed, switching of data packets between the first and second data ports and communication queues at the host computer system; and
an accelerator module having an interface coupled to said second data port of the controller unit and a processor configured to perform one or more functions in hardware on data packets received at the accelerator module, the interface being configured to support one or more first network endpoints.
2 Assignments
0 Petitions
Accused Products
Abstract
A data processing system comprising: a host computer system supporting a software entity and a receive queue for the software entity; a network interface device having a controller unit configured to provide a data port for receiving data packets from a network and a data bus interface for connection to a host computer system, the network interface device being connected to the host computer system by means of the data bus interface; and an accelerator module arranged between the controller unit and a network and having a first medium access controller for connection to the network and a second medium access controller coupled to the data port of the controller unit, the accelerator module being configured to: on behalf of the software entity, process incoming data packets received from the network in one or more streams associated with a first set of one or more network endpoints; encapsulate data resulting from said processing in network data packets directed to the software entity; and deliver the network data packets to the data port of the controller unit so as to cause the network data packets to be written to the receive queue of the software entity.
258 Citations
16 Claims
-
1. A data processing system comprising;
-
a host computer system; a plurality of software domains supported by the host computer system, the plurality of software domains comprising a privileged software domain and a first software domain having an application, wherein the privileged software domain is configured to present an operating platform to the first software domain, the data processing system comprising; a network interface device for connection to a network, the host computer system and network interface device being coupled together by means of a data bus, the network interface device comprising; a controller unit having a first data port for connection to a network, a second data port, and a data bus interface connected to said data bus, the controller unit being configured to perform, in dependence on the network endpoints to which data packets received at the network interface device are directed, switching of data packets between the first and second data ports and communication queues at the host computer system; and an accelerator module having an interface coupled to said second data port of the controller unit and a processor configured to perform one or more functions in hardware on data packets received at the accelerator module, the interface being configured to support one or more first network endpoints. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
Specification