High performance IP processor using RDMA
First Claim
1. A method of using a hardware-implemented processor for enabling storage or retrieval of data in a memory subsystem, in a target system comprising a host processor and coupled to a TCP/IP network consisting of TCP/IP protocol and comprising a transport layer and a network layer wherein the transport layer and network layer consist of TCP/IP, the method comprising:
- (a) receiving a request to register a region of memory from an application running on the target system;
(b) making the region of memory available to one or more peers of the application running on the target system that made the request;
(c) receiving data packets, by the hardware-implemented processor, via the network consisting of TCP/IP, at the target system;
(d) receiving a remote direct memory access request in the data packets transmitted via the network consisting of TCP/IP, the remote direct memory access request including a location of a region of memory registered for the remote direct access memory operation;
(e) in response to the receiving acts in parts (c) and (d), storing data to or retrieving data from the memory subsystem with the hardware-implemented processor, without the host processor controlling memory access during the storing or retrieving; and
(f) wherein the remote direct memory access request specifies the data stored or retrieved.
4 Assignments
0 Petitions
Accused Products
Abstract
An architecture provides capabilities to transport and process Internet Protocol (IP) packets from Layer 2 through transport protocol layer and may also provide packet inspection through Layer 7. A set of engines may perform pass-through packet classification, policy processing and/or security processing enabling packet streaming through the architecture at nearly the full line rate. A scheduler schedules packets to packet processors for processing. An internal memory or local session database cache stores a session information database for a certain number of active sessions. The session information that is not in the internal memory is stored and retrieved to/from an additional memory. An application running on an initiator or target can in certain instantiations register a region of memory, which is made available to its peer(s) for access directly without substantial host intervention through RDMA data transfer.
-
Citations
8 Claims
-
1. A method of using a hardware-implemented processor for enabling storage or retrieval of data in a memory subsystem, in a target system comprising a host processor and coupled to a TCP/IP network consisting of TCP/IP protocol and comprising a transport layer and a network layer wherein the transport layer and network layer consist of TCP/IP, the method comprising:
-
(a) receiving a request to register a region of memory from an application running on the target system; (b) making the region of memory available to one or more peers of the application running on the target system that made the request; (c) receiving data packets, by the hardware-implemented processor, via the network consisting of TCP/IP, at the target system; (d) receiving a remote direct memory access request in the data packets transmitted via the network consisting of TCP/IP, the remote direct memory access request including a location of a region of memory registered for the remote direct access memory operation; (e) in response to the receiving acts in parts (c) and (d), storing data to or retrieving data from the memory subsystem with the hardware-implemented processor, without the host processor controlling memory access during the storing or retrieving; and (f) wherein the remote direct memory access request specifies the data stored or retrieved. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
Specification