Apparatus for transferring blocks of information from one node to a second node in a computer network
First Claim
1. A digital data processing system including a source node and a destination node, each including a host computer, and a common bus, said source node further including a source buffer means for storing a block of information to be transferred, said source buffer means being identified by a source buffer name, and said destination node further including destination buffer means for receiving a block of information, said destination buffer being identified by a destination buffer name, and said destination node including means for identifying the name of the destination buffer means to the source node;
- A. said source node further including;
i. message assembly means connected to said source buffer means for assembling a packet comprising a plurality of fields including;
(a) an information field including information from said source buffer means,(b) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node,(c) a destination name field including the name of said destination buffer means,ii. source port means connected to said message assembly means and said common bus responsive to the generation of a packet by said message assembly means for transmitting the packet over said common busB. said second node including;
i. destination port means connected to said common bus for rceiving packets from said bus;
ii. means for selectively writing a received packet to the destination memory buffer comprising;
(a) packet type decoding means for decoding the contents of the packet type field in the received packet to determine whether the packet contains information for the destination buffer means; and
(b) directing means connected to said packet type decoding means responsive to the packet type decoding means determining that the packet contains information for the destination buffer means and further responsive to the contents of the destination name field for directing the contents of the packet to the identified destination buffer.
2 Assignments
0 Petitions
Accused Products
Abstract
Method and apparatus for transfer of packet-type information from the memory (24B) of one node (14) in a computer network to the memory (24C) of another node (16) in the network. The invention is of particular utility in transfers over serial buses (e.g., 18). Packets are sent from a named memory buffer (25A) at a first node (14) to a named memory buffer (25C) at a second node (16), allowing random access by the first node to the memory of the second node without either node having to have knowledge of the memory structure of the other, the source and destination buffer names are contained right in the transmitted packet.
The first node (14) can both write to and read from the second node (16). An opcode (40A) sent in each packet signifies whether a read or write operation is to be performed. For reading from the second node, the opcode actually causes the second node to write back to the first node; in this situation, the second node, upon detecting the appropriate opcode, places the remainder of the received packet on a command queue (202), to be executed with the commands locally generated at the second node, without need for host interruption.
-
Citations
37 Claims
-
1. A digital data processing system including a source node and a destination node, each including a host computer, and a common bus, said source node further including a source buffer means for storing a block of information to be transferred, said source buffer means being identified by a source buffer name, and said destination node further including destination buffer means for receiving a block of information, said destination buffer being identified by a destination buffer name, and said destination node including means for identifying the name of the destination buffer means to the source node;
-
A. said source node further including; i. message assembly means connected to said source buffer means for assembling a packet comprising a plurality of fields including; (a) an information field including information from said source buffer means, (b) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node, (c) a destination name field including the name of said destination buffer means, ii. source port means connected to said message assembly means and said common bus responsive to the generation of a packet by said message assembly means for transmitting the packet over said common bus B. said second node including; i. destination port means connected to said common bus for rceiving packets from said bus; ii. means for selectively writing a received packet to the destination memory buffer comprising; (a) packet type decoding means for decoding the contents of the packet type field in the received packet to determine whether the packet contains information for the destination buffer means; and (b) directing means connected to said packet type decoding means responsive to the packet type decoding means determining that the packet contains information for the destination buffer means and further responsive to the contents of the destination name field for directing the contents of the packet to the identified destination buffer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A source node for connection to a common bus in a digital data processing system including a destination node connected to said common bus, each node including a host computer, and a common bus, said source node further including a source buffer means for storing a block of information to be transferred, said source buffer means being identified by a source buffer name, and said destination node further including destination buffer means for receiving a block of information, said destination buffer being identified by a destination buffer name, and said destination node including means for identifying the name of the destination buffer means to the source node, said source node further including:
-
i. message assembly means connected to said source buffer means for assembling a packet comprising a plurality of fields including; (a) an information field including information from said source buffer means, (b) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node, (c) a destination name field including the name of said destination buffer means, and ii. source port means connected to said message assembly means and said common bus responsive to the generation of a packet by said message assembly means for transmitting the packet over said common bus. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A destination node for connection to a digital data processing system including a source node, each including a host computer, and a common bus, said source node further including a source buffer means for storing a block of information to be transferred, said source buffer means being identified by a source buffer name, and said destination node further including destination buffer means for receiving a block of information, said destination buffer being identified by a destination buffer name, and said destination node further including means for identifying the name of the destination buffer means to the source node;
- said source node assembling a packet comprising a plurality of fields including (a) an information field including information from said source buffer means, (b) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node and (c) a destination name field including the name of said destination buffer means and transmitting the packet over said common bus;
said destination node further including;i. destination port means connected to said common bus for receiving packets from said bus; ii. means for selectively writing a received packet to the destination memory buffer comprising; (a) packet type decoding means for decoding the contents of the packet type field in the received packet to determine whether the packet contains information for the destination buffer means; and (b) means connected to said packet type decoding means responsive to the packet type decoding means determining that the packet contains information for the destination buffer means and further responsive to the contents of the destination name field for directing the contents of the packet to the identified destination buffer. - View Dependent Claims (19, 20, 21, 22, 23, 24)
- said source node assembling a packet comprising a plurality of fields including (a) an information field including information from said source buffer means, (b) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node and (c) a destination name field including the name of said destination buffer means and transmitting the packet over said common bus;
-
25. A node for connection to digital data processing system including a plurality of nodes, each including a host computer, attached to a common bus, said node further including a source buffer means for storing a block of information to be transferred, said source buffer means being identified by a source buffer name, and destination buffer means for receiving a block of information, said destination buffer means identified by a destination buffer name;
- said data processing system further including at least one other node also including a destination buffer means identified by a destination buffer name and means for identifying the destination buffer names to all of said nodes, said node further including;
A. source means comprising; i. message assembly means connected to said source buffer means for assembling a packet comprising a plurality of fields including; (a) an information field including information from said source buffer means, (c) a packet type field containing a packet type that identifies the packet as containing information for the destination buffer means or as containing a command to be executed by said destination node (b) a destination name field including the name of a destination buffer means, ii. source port means for connection to said message assembly means and said common bus responsive to the generation of a packet by said message assembly means for transmitting the packet over said common bus; B. destination means comprising; i. destination port means for connection to said common bus for receiving packets from said bus; ii. means for selectively writing a received packet to the destination memory buffer comprising; (a) packet type decoding means for decoding the contents of the packet type field in the received packet to determine whether the packet contains information for the destination buffer means; and (b) means connected to said packet type decoding means responsive to the packet type decoding means determining that the packet contains information for the destination buffer means and further responsive to the contents of the destination name field for directing the contents of the packet to the identified destination buffer. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34)
- said data processing system further including at least one other node also including a destination buffer means identified by a destination buffer name and means for identifying the destination buffer names to all of said nodes, said node further including;
-
35. An interface unit for connection to a host digital computer system and a common bus in a digital data processing system, said host computer including processor unit means and memory means, said interface unit generating packets for transmitting information over said common bus and receiving packets containing information from said common bus and comprising:
-
A. interface means for connection to said common bus for transmitting packets over and receiving packets from said common bus; B. storage means connected to said interface means and for connection to said memory means, said storage means containing a plurality of storage locations for storing information from said memory means and for storing packets received by said interface means; and C. port processor means connected to said interface means and said storage means and for connection to said processor unit means responsive to commands from said processor unit means, said port processor means including; i. information retrieval means for connection to said memory means and said storage means for enabling information to be transferred from said memory means to said storage means, ii. message assembly means connected to said storage means for generating a message comprising at least one packet including a plurality of fields including (a) an information field including information from said buffer means, (b) a packet type field containing a packet type that identifies the packet as containing information or as containing a command to be executed and (c) a destination name field identifying the node to receive the packet, iii. transmission enabling means connected to said message assembly means and said interface means for enabling said interface means to transmit the assembled message over said common bus, and iv. control means for connection to said processor unit means and connected to said information retrieval means, said message assembly means, and said transmission enabling means for receiving commands from said processor unit means for enabling each said means in response to commands from said processor unit means. - View Dependent Claims (36, 37)
-
Specification