Memory system for a high performance IP processor
First Claim
1. A data processing apparatus for processing Internet Protocol data transfers during Internet sessions, including:
- a. at least one internal memory on said data processing apparatus containing as database entries, frequently or recently used IP session information for processing said data transfers;
b. a global memory on said data processing apparatus on or off said data processing apparatus, said global memory coupled to said at least one internal memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently used or less recently used than the IP session information contained in said at least one internal memory; and
c. an additional memory located on or off said data processing apparatus, said additional memory containing as database entries, IP session information for processing said data transfers said IP session information contained said additional memory being less frequently or less recently used than the IP session information contained in said global memory.
5 Assignments
0 Petitions
Accused Products
Abstract
A memory system for a high performance IP processor is disclosed. The memory system allows the architecture for an IP processor that may provide capabilities to transport and process Internet Protocol (IP) packets from Layer 2 through transport protocol layer and may also perform packet inspection through Layer 7. 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.
134 Citations
31 Claims
-
1. A data processing apparatus for processing Internet Protocol data transfers during Internet sessions, including:
-
a. at least one internal memory on said data processing apparatus containing as database entries, frequently or recently used IP session information for processing said data transfers;
b. a global memory on said data processing apparatus on or off said data processing apparatus, said global memory coupled to said at least one internal memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently used or less recently used than the IP session information contained in said at least one internal memory; and
c. an additional memory located on or off said data processing apparatus, said additional memory containing as database entries, IP session information for processing said data transfers said IP session information contained said additional memory being less frequently or less recently used than the IP session information contained in said global memory.
-
- 2. A hardware processor for Internet Protocol data transfers, said processor including at least one packet processor having an internal memory containing as database entries, frequently or recently used IP session information for processing said data transfers.
-
5. A hardware processor having at least one packet processor engine for Internet Protocol data transfers over an IP Network, said hardware processor including:
-
a. a first memory internal to said at least one packet processor engine and containing as database entries frequently or recently used IP session information for processing said data transfers;
b. a global memory located on or off said hardware processor, said global memory accessible by said at least one packet processor engine and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said first memory; and
c. a third memory located on or off the hardware processor, said third memory coupled to said global memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said third memory being less frequently or less recently used than the IP session information contained in said global memory.
-
- 6. A hardware processor for Internet data transfer on an IP Network, and including at least one packet processor engine for processing said data transfers and further comprising a global memory located on or off said hardware processor, said global memory coupled to said at least one packet processor engine for use as a memory by said packet processor, said global memory containing as database entries IP session information for processing said data transfers, said IP session information in said global memory being frequently or recently used IP session information for said data transfer.
-
8. A hardware processor having at least one packet processor engine for Internet Protocol data transfers over an IP Network, and including:
-
a. a global memory located on or off said hardware processor, said global memory coupled to said at least one packet processor engine for use as a memory of said at least one packet processor engine, said global memory containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being frequently or recently used IP session information for said data transfers; and
b. an additional memory located on or off the hardware processor and coupled to said global memory, said additional memory containing as database entries, IP session information being less frequently or less recently used than the IP session information contained in said global memory.
-
-
9. A data processing apparatus for Internet Protocol data transfers over IP networks during Internet sessions, including:
-
a. at least one memory in said data processing apparatus for containing as database entries frequently or recently used IP session information for processing said Internet Protocol data transfers;
b. a global memory located on or off said data processing apparatus, said global memory coupled to said at least one internal memory and containing as database entries, IP session information for processing said Internet Protocol data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said at least one internal memory. - View Dependent Claims (10)
-
-
11. A data processing apparatus capable of processing Internet Protocol data transfers during Internet sessions, including:
-
a. at least one internal memory on said data processing apparatus containing as database entries, frequently or recently used IP session information for processing said data transfers;
b. a global memory on said data processing apparatus or off said data processing apparatus, said global memory coupled to said at least one internal memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently used or less recently used than the IP session information contained in said at least one internal memory; and
c. an additional memory located on or off said data processing apparatus, said additional memory containing as database entries, IP session information for processing said data transfers said IP session information contained said additional memory being less frequently or less recently used than the IP session information contained in said global memory.
-
-
12. A processor for processing Internet data packets in one or more sessions, said processor including a session memory for storing frequently or recently used session information for a plurality of sessions.
- 13. For use in a processor for Internet Protocol data transfers on an IP Network in IP sessions, a session memory containing as database entries, frequently or recently used IP session information for processing said data transfers.
-
16. For use in a processor for Internet Protocol data transfers over an IP Network in IP sessions, a memory system comprising:
-
a. a session memory containing as database entries frequently or recently used IP session information for processing said data transfers;
b. a global memory accessible by said session memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said session memory; and
c. a third memory accessible by global memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said third memory being less frequently or less recently used than the IP session information contained in said global memory.
-
- 17. For use in a processor capable of executing a transport layer RDMA protocol on an IP Network for Internet Protocol data transfers in IP sessions, a session memory containing as database entries, frequently or recently used IP session information for processing said data transfers.
-
20. For use in a processor capable of executing a transport layer RDMA protocol over an IP Network for Internet Protocol data transfers in IP sessions a memory system comprising:
-
a. a session memory containing as database entries frequently or recently used IP session information for processing said data transfers;
b. a global memory accessible by said session memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said session memory; and
c. a third memory accessible by global memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said third memory being less frequently or less recently used than the IP session information contained in said global memory.
-
-
22. A hardware processor having at least one packet processor engine and capable of executing a transport layer RDMA protocol over an IP Network for Internet Protocol data transfers, and including:
-
a. a first memory internal to said at least one packet processor and containing as database entries frequently or recently used IP session information for processing said data transfers;
b. a global memory located on or off said hardware processor, said global memory accessible by said at least one packet processor and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said first memory; and
c. a third memory located on or off the hardware processor, said third memory coupled to said global memory and containing as database entries, IP session information for processing said data transfers, said IP session information contained in said third memory being less frequently or less recently used than the IP session information contained in said global memory.
-
- 23. A hardware processor capable of executing a transport layer RDMA protocol on an IP Network for Internet data transfer, and including at least one packet processor engine for processing said data transfers, and further comprising a global memory located on or off said hardware processor, said global memory coupled to said at least one packet processor for use as a memory by said packet processor engine, said global memory containing as database entries IP session information for processing said data transfers, said IP session information in said global memory being frequently or recently used IP session information for said data transfer.
-
25. A hardware processor having at least one packet processor engine and capable of executing a transport layer RDMA protocol over an IP Network for Internet Protocol data transfers, and including:
-
a. a global memory located on or off said hardware processor, said global memory coupled to said at least one packet processor engine for use as a memory of said at least one packet processor, said global memory containing as database entries, IP session information for processing said data transfers, said IP session information contained in said global memory being frequently or recently used IP session information for said data transfers; and
b. an additional memory located on or off the hardware processor and coupled to said global memory, said additional memory containing as database entries, IP session information being less frequently or less recently used than the IP session information contained in said global memory.
-
-
26. A data processing apparatus capable of executing a transport layer RDMA protocol over IP networks for Internet Protocol data transfers during Internet sessions, including:
-
a. at least one memory in said data processing apparatus for containing as database entries frequently or recently used IP session information for processing said Internet Protocol data transfers;
b. a global memory located on or off said data processing apparatus, said global memory coupled to said at least one internal memory and containing as database entries, IP session information for processing said Internet Protocol data transfers, said IP session information contained in said global memory being less frequently or less recently used than the IP session information contained in said at least one internal memory. - View Dependent Claims (27)
-
-
28. A hardware processor providing a transport layer remote direct memory access (RDMA) capability, said processor for enabling data transfer over a network using TCP over IP in one or more session connections, said processor including a TCP/IP stack, said stack including an interface to upper layer functions to transport data traffic, said stack further comprising memory for storing a database to maintain various information regarding said active sessions or connections and TCP/IP state information for each of the sessions or connections.
- 29. For use in a processor capable of executing a transport layer RDMA protocol on an IP Network for Internet Protocol data transfers in IP sessions, a session memory containing as database entries, frequently or recently used IP session information for processing said data transfers.
Specification