Claims
- 1. A method for transmitting packets through a network between a first communications node and a second communications node, the method comprising:
transmitting from the first communications node to the network a first
sequence of packets; transmitting from the network to the second communications node the first
sequence of packets in sequential order; transmitting from the second communications node to the network a
second sequence of packets; and transmitting from the network to the first communications node the second
sequence of packets in a non-sequential order whereby sequential order is guaranteed when packets are received by the
second communications node and is not guaranteed when packets are received by the first communications node.
- 2. The method of claim I wherein the network includes multiple paths from the first communications node to the second communications node.
- 3. The method of claim 2 wherein all packets of the first sequence are transmitted along the same path.
- 4. The method of claim I wherein the network includes multiple paths from the second communications node to the first communications node and at least two packets of the second sequence are transmitted along different paths.
- 5. The method of claim 1 wherein the first communications node is a host and the second communications node is a data store device.
- 6. The method of claim 5 wherein the host executes a program that provides data to be written to the data store device and the host caches the provided data so that the program can continue its execution while the data is being transmitted to the data store device as a sequence of packets whose sequential order is guaranteed.
- 7. The method of claim 5 wherein the host executes a program that indicates that data is to be read from the data store device and the program suspends its execution until the data is received from the data store device.
- 8. The method of claim I wherein the second communications node does not have a capability to reorder a sequence of packets.
- 9. The method of claim 8 wherein the second communications node is a data store device.
- 10. The method of claim 1 wherein the first communications node has a capability to reorder a sequence of packets.
- 11. The method of claim 1 wherein the network includes switches that transmit the packets of the second sequence on different paths to effect load balancing.
- 12. The method of claim 1 wherein a sequence of packets are within a same transaction.
- 13. The method of claim 1 wherein sequential order is only guaranteed for packets within the same transaction.
- 14. The method of claim 1 wherein the first communications node, the second communications node, and the network are part of a storage area network.
- 15. The method of claim 14 wherein the second communications node is a data store device.
- 16. The method of claim 14 wherein the second communications node does not have an ability to reorder packets of a transaction.
- 17. A method for transmitting packets from a first communications device to a second communications device, the method comprising:
transmitting a sequence of packets from the first communications device to
the second communications device wherein the packets arrive at the second communications device in an order that is guaranteed to be sequential; and transmitting a sequence of packets from the second communications
device to the first communications device wherein the packets arrive at the first communications device in an order that is not guaranteed to be sequential.
- 18. The method of claim 17 wherein a sequence of packets are packets of a single transaction.
- 19. The method of claim 17 wherein packets are transmitted between the first communications device and the second communications device via a switching network.
- 20. The method of claim 19 wherein packets of a sequence transmitted from the first communications device to the second communications device are transmitted via the same path through the network.
- 21. The method of claim 19 wherein packets of a sequence transmitted from the second communications device to the first communications device may be transmitted via different paths through the network.
- 22. The method of claim 19 wherein the first communications device, the second communications device, and the network are part of a storage area network.
- 23. The method of claim 22 wherein the second communications device is a data store device.
- 24. The method of claim 17 wherein the second communications device is a data store device.
- 25. A device for transmitting packets of a transaction between a host to a data store device comprising:
a component that receives in sequential order packets of a transaction that
are to be transmitted from the host and for transmitting in sequential order the packets of the transaction to the data store device wherein the packets of the transaction arrive at the data store device in an order that is guaranteed to be sequential; and a component that receives packets of a transaction from the data store
device and for transmitting the packets of the transaction to the host wherein the packets of the transaction arrive at the host in an order that is not guaranteed to be sequential.
- 26. The device of claim 25 wherein the device is a switch.
- 27. The device of claim 25 wherein the host, data store device, and device are part of a storage area network.
- 28. The device of claim 25 wherein the device has multiple ports and wherein packets of each transaction received from the host are transmitted to the data store device via the same port.
- 29. The device of claim 25 wherein the device has multiple ports and wherein packets of each transaction received from the data store device may be transmitted to the host via different ports.
- 30. The device of claim 25 wherein the data store device is a disk storage device.
- 31. A device for transmitting packets of transactions, the packets of a transaction having a sequential order, comprising:
means for transmitting packets of a transaction originating from a first node
and destined to a second node, wherein sequential order of arrival of the packets of the transaction at the second node is assured; and means for transmitting packets of a transaction originating from the second
node and destined to the first node, wherein sequential order of arrival of the packets of the transaction at the first node is not assured.
- 32. The device of claim 30 wherein the device is a switch.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/252,724 entitled “METHOD AND APPARATUS FOR STORAGE I/O WITH FULL-DUPLEX ONE-TIME BLOCK I/O TRANSFER AND ADAPTIVE PAYLOAD SIZING,” filed Nov. 22, 2000, and is related to U.S. patent application No. __________entitled “METHOD AND SYSTEM FOR PLESIOSYNCHRONOUS COMMUNICATIONS WITH NULL INSERTION AND REMOVAL” (Attorney Docket No. 371798002US); U.S. patent application No.____ entitled “METHOD AND SYSTEM FOR TRANSITION-CONTROLLED SELECTIVE BLOCK INVERSION COMMUNICATIONS” (Attorney Docket No. 371798007US); U.S. patent application No._______entitled “COMMUNICATIONS ARCHITECTURE FOR STORAGE-BASED DEVICES” (Attorney Docket No. 371798008US1); U.S. patent application No._______entitled “METHOD AND SYSTEM FOR PACKET ORDERING BASED ON PACKET TYPE” (Attorney Docket No. 371798013US); U.S. patent application No. entitled “METHOD AND SYSTEM FOR HOST HANDLING OF COMMUNICATIONS ERRORS” (Attorney Docket No. 371798014US); U.S. patent application No.______entitled “METHOD AND SYSTEM FOR DYNAMIC SEGMENTATION OF COMMUNICATIONS PACKETS” (Attorney Docket No. 371798015US); U.S. patent application No.______ entitled “METHOD AND SYSTEM FOR ASYMMETRIC PACKET ORDERING BETWEEN COMMUNICATIONS DEVICES” (Attorney Docket No. 371798016US); U.S. patent application No._______entitled “METHOD AND SYSTEM FOR COMMUNICATING CONTROL INFORMATION VIA OUT-OF-BAND SYMBOLS” (Attorney Docket No. 371798017US); U.S. patent application No._______ entitled “METHOD AND SYSTEM FOR INTEGRATING PACKET TYPE INFORMATION WITH SYNCHRONIZATION SYMBOLS” (Attorney Docket No. 371798018US); U.S. patent application No. entitled “METHOD AND SYSTEM FOR NESTING OF COMMUNICATIONS PACKETS” (Attorney Docket No. 371798019US); U.S. patent application No.______entitled “COMMUNICATIONS ARCHITECTURE FOR MEMORY-BASED DEVICES” (Attorney Docket No. 371798012US); U.S. patent application No._______entitled “METHOD AND SYSTEM FOR DC-BALANCING AT THE PHYSICAL LAYER” (Attorney Docket No. 371798020US); and U.S. patent application No._______ entitled “MULTISECTION MEMORY BANK SYSTEM” (Attorney Docket No. 371798021 US, which are all hereby incorporated by reference in their entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60252724 |
Nov 2000 |
US |