IP Library Granted Patent US 10,055,264
Granted Patent B2
US 10,055,264 · App. 14/663,898 · Granted Aug 21, 2018

Reception according to a data transfer protocol of data directed to any of a plurality of destination entities

Inventors: Steven Leslie Pope (Cambridge, GB); Derek Edward Roberts (Cambridge, GB); David James Riddoch (Cambridge, GB); Greg Law (Cambridge, GB); Steve Grantham (Cambridgeshire, GB); Matthew Slattery (Cambridge, GB)
Assignee: Solarflare Communications, Inc.
G06F9/546G06F9/30181G06F13/00G06F15/16H04L49/901H04L49/9094H04L67/10H04L69/12H04L69/16H04L69/161H04L69/162H04L69/32G06F13/14
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,055,264
App. No.
14/663,898
Granted
Aug 21, 2018
Kind
B2
Abstract

A data processing system arranged for receiving over a network, according to a data transfer protocol, data directed to any of a plurality of destination identities, the data processing system comprising: data storage for storing data received over the network; and a first processing arrangement for performing processing in accordance with the data transfer protocol on received data in the data storage, for making the received data available to respective destination identities; and a response former arranged for: receiving a message requesting a response indicating the availability of received data to each of a group of destination identities; and forming such a response; wherein the system is arranged to, in dependence on receiving the said message.

Claims (42)

1. A data processing system comprising:

a data processor for executing instructions to support two or more processes configured to issue instructions for transmission of data to a remote receiver;

memory for storing data;

an interface whereby the data processor can transmit data to the remote receiver; and

a configuration store storing an identification of a mapping between a first area of the memory of the data processing system and a second area of a memory of the remote receiver, and an identification of a process, of the two or more processes, authorized to initiate transmission of the data in accordance with the mapping;

the interface being responsive to receiving an instruction of a predetermined form from the process, supported by the data processor specifying data in the first area of the memory, to read the specified data from the first area and transmit that data to the remote receiver together with the identification of the mapping and the identification of the process stored for the mapping in the configuration store.

2. The data processing system as claimed in claim 1 , wherein the configuration store is local to the interface.

3. The data processing system as claimed in claim 1 , wherein the data processor implements a plurality of queues for communication between the two or more processes and the interface, each queue being associated with a respective process, and the interface is arranged to identify which process an instruction is from by the queue on which it has received the instruction.

4. The data processing system as claimed in claim 1 , wherein the interface is arranged to read the data from the area by direct memory access.

5. The interface as claimed in claim 1 , wherein the interface is a network interface and is arranged to transmit the data to the receiver by means of a network protocol.

6. The interface as claimed in claim 5 , wherein the network protocol is TCP/IP.

7. The interface as claimed in claim 5 , wherein the interface is arranged to transmit the data over Ethernet.

8. The data processing system as claimed in claim 1 , wherein the interface is arranged to write the data from the area by direct memory access.

9. The interface as claimed in claim 1 , wherein the interface is a network interface and is arranged to receive the data by means of a network protocol.

10. The interface as claimed in claim 9 , wherein the network protocol is TCP/IP.

11. The interface as claimed in claim 9 , wherein the interface is arranged to receive the data over Ethernet.

12. The data processing system as claimed in claim 1 , wherein the mapping is a mapping between a first set of buffers of the data processing system and a second set of buffers of the remote receiver;

the configuration store further comprises an identification of the first set of buffers of the data processing system; and

the first set of buffers comprises at least one buffer comprising the first area of memory, and the second set of buffers comprises at least one buffer comprising the second area of memory.

13. The data processing system as claimed in claim 12 , wherein the first set of buffers comprises a plurality of buffers.

14. The data processing system as claimed in claim 12 , wherein the second set of buffers comprises a plurality of buffers.

15. The data processing system as claimed in claim 12 , wherein the data processor is configured to modify the identification of the first set of buffers to at least one of:

remove a buffer from the first set of buffers; and

add a buffer to the first set of buffers.

16. A data processing system comprising:

a data processor for executing instructions to support two or more processes configured to issue instructions for transmission of data to a remote receiver;

memory for storing data;

an interface whereby the data processor can receive data from a remote receiver; and

a configuration store storing an identification of a mapping between a first area of the memory of the data processing system and a second area of a memory of the remote receiver, and an identification of a process, of the two or more processes, on a remote receiver authorized to initiate transmission of the data in accordance with the mapping;

the interface being responsive to receiving, from the remote receiver, data directed to the first area of the memory together with an identification of a process, to check whether that identified process matches the identification of the process stored for the mapping in the configuration store and only if it does match to write that data to the first area of the memory.

17. The data processing system as claimed in claim 16 , wherein the configuration store is local to the interface.

18. The data processing system as claimed in claim 16 , wherein the interface is arranged to write the data from the area by direct memory access.

19. The interface as claimed in claim 16 , wherein the interface is a network interface and is arranged to receive the data by means of a network protocol.

20. The interface as claimed in claim 16 , wherein the interface is arranged to receive the data over Ethernet.

21. The data processing system as claimed in claim 16 , wherein the mapping is a mapping between a first set of buffers of the data processing system and a second set of buffers of the remote receiver;

the configuration store further comprises an identification of the first set of buffers of the data processing system; and

the first set of buffers comprises at least one buffer comprising the first area of memory, and the second set of buffers comprises at least one buffer comprising the second area of memory.

22. The data processing system as claimed in claim 21 , wherein the first set of buffers comprises a plurality of buffers.

23. The data processing system as claimed in claim 21 , wherein the second set of buffers comprises a plurality of buffers.

24. The data processing system as claimed in claim 21 , wherein the data processor is configured to modify the identification of the first set of buffers to at least one of:

remove a buffer from the first set of buffers; and

add a buffer to the first set of buffers.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2019
From: SOLARFLARE COMMUNICATIONS, INC.
To: XILINX, INC.
Reel/Frame 051108/0209 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jul 31, 2019
From: ALLY BANK
To: SOLARFLARE COMMUNICATIONS, INC.
Reel/Frame 049918/0440 →
RELEASE OF SECURITY INTEREST Recorded Jun 15, 2017
From: PACIFIC WESTERN BANK
To: SOLARFLARE COMMUNICATIONS, INC.
Reel/Frame 042820/0890 →
SECURITY INTEREST Recorded Mar 7, 2017
From: SOLARFLARE COMMUNICATIONS, INC.
To: ALLY BANK
Reel/Frame 041902/0527 →
SECURITY INTEREST Recorded Apr 6, 2016
From: SOLARFLARE COMMUNICATIONS, INC.
To: PACIFIC WESTERN BANK
Reel/Frame 038363/0589 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2015
From: POPE, STEVEN LESLIE; ROBERTS, DEREK EDWARD; RIDDOCH, DAVID JAMES; LAW, GREG; GRANTHAM, STEVE; SLATTERY, MATTHEW
To: SOLARFLARE COMMUNICATIONS, INC.
Reel/Frame 035216/0912 →
Priority Claims (8)
GB 0512219.7 · Jun 15, 2005 · national
GB 0512425.0 · Jun 17, 2005 · national
GB 0512532.3 · Jun 20, 2005 · national
GB 0512533.1 · Jun 20, 2005 · national
GB 0512534.9 · Jun 20, 2005 · national
GB 0512535.6 · Jun 20, 2005 · national
GB 0512536.4 · Jun 20, 2005 · national
GB 0512537.2 · Jun 20, 2005 · national
Continuity (3)
Continuation 13548308 · Jul 13, 2012
Division 11916973
Related Publication 20150201007A1 · Jul 16, 2015