Claims
- 1. A method in a transmitting communications device for transmitting a packet to a receiving communications device, the packet having a header and data, the method comprising:
receiving the packet; transmitting to the receiving communications device a first header of the received packet and a portion of the data as a first packet; detecting that the transmission of the packet is to be stopped; in response to detecting that the transmission of the packet is to be stopped, stopping the transmission of the packet; detecting that the transmission of the packet is to be restarted; and in response to detecting that the transmission of the packet is to be restarted, transmitting to the receiving communications device a second packet including a second header for the portion of the data not yet transmitted and the portion of the data not yet transmitted.
- 2. The method of claim 1 wherein the data includes fixed-sized blocks and wherein the stopping of the transmission of the packet occurs on a block boundary.
- 3. The method of claim 1 wherein the first packet includes an indication of an address associated with the data of the packet and including setting an indication of the address of the second packet to indicate the indicated address of the first packet offset by an amount corresponding to the portion of the data in the first packet.
- 4. The method of claim 3 wherein the address indicates where the data is to be stored.
- 5. The method of claim 3 wherein the address indicates from where the data was retrieved.
- 6. The method of claim 1 wherein the receiving communications device merges the first packet and the second packet into a single packet.
- 7. The method of claim 6 wherein the merged packet includes the header of the first packet.
- 8. The method of claim 1 wherein the receiving communications device identifies the end of a packet by receiving an out-of-band symbol.
- 9. The method of claim 1 wherein the transmitting communications device is a switch.
- 10. The method of claim 1 wherein the transmitting communications device is part of a storage area network.
- 11. The method of claim 1 wherein the receiving communications device is a data store device.
- 12. The method of claim 1 wherein the receiving communications device is a switch.
- 13. The method of claim 1 wherein the first packet and the second packet are transmitted via a same path to the receiving communications device.
- 14. The method of claim 1 wherein the first packet and the second packet are transmitted via different paths to the receiving communications device.
- 15. The method of claim 1 wherein receiving communications device is guaranteed to receive the first packet before the second packet.
- 16. The method of claim 1 wherein the detecting that the transmission of the packet is to stop includes receiving an XOFF indication.
- 17. A method in a transmitting communications device for segmenting a packet having a header and data, the method comprising:
transmitting to a receiving communications device a first header of the packet and a portion of the data as a first packet; and transmitting to the receiving communications device a second header for the portion of the data not yet transmitted and the portion of the data not yet transmitted as a second packet wherein the first and the second packets are segmented portions of the packet.
- 18. The method of claim 17 wherein the transmitting of the first packet is stopped as a result of detecting an indication not to continue transmitting the packet.
- 19. The method of claim 18 wherein the communications device has multiple ports and the first packet and the second packet are transmitted via different ports.
- 20. The method of claim 18 wherein the communications device has multiple ports and the first packet and the second packet are transmitted via a same port.
- 21. The method of claim 17 wherein the data includes fixed-sized blocks and wherein the first packet ends on block boundary.
- 22. The method of claim 17 wherein the first packet includes an indication of a location associated with the data in the first packet and the second packet includes an indication of a location associated with the data of the second packet.
- 23. The method of claim 22 wherein the indications indicate where the data is to be stored.
- 24. The method of claim 22 wherein the indications indicates from where the data was retrieved.
- 25. The method of claim 17 wherein the receiving communications device merges the first packet and the second packet into a single packet.
- 26. The method of claim 25 wherein the merged packet includes the header of the first packet.
- 27. The method of claim 17 wherein the communications devices are part of a storage area network.
- 28. The method of claim 17 wherein the receiving communications device is a data store device.
- 29. The method of claim 17 wherein the receiving communications device is a switch.
- 30. A method in a transmitting communications device for merging packets, the method comprising:
receiving a first packet including a first header, first data, and a first transaction indicator; receiving a second packet including a second header, second data, and a second transaction indicator; and when the received first and second packets have the same transaction indicator and the first data and second data are contiguous data within the identified transaction, transmitting the first data and second data as part of a merged packet.
- 31. The method of claim 30 wherein the first header includes an indication of a data store location for the first data and the second header includes an indication of a data store location for the second data and including identifying that the first data and the second data are contiguous data within the identified transaction by comparing the indication of the data store location and amount of the first data to the indication of the data store location of the second data.
- 32. The method of claim 30 wherein the transmitting communications device has multiple ports and the first packet and the second packet are received via different ports.
- 33. The method of claim 30 wherein the communications devices are part of a storage area network.
- 34. The method of claim 30 wherein the first data and the second data contain fixed-size blocks.
- 35. The method of claim 30 where the transmitting communications device is a switch.
- 36. A method in a receiving communications device for a receiving packet having a header and data, the method comprising:
receiving from a transmitting communications device a first header for the packet and data of the packet; while the data is being received, transmitting to the transmitting communications device and indication to stop transmitting data; receiving from the transmitting communications device an end-of-packet indication; transmitting to the transmitting communications device an indication to start transmitting data; and receiving from the transmitting communications device a second header for the packet of data along with the data of the packet not yet received.
- 37. The method of claim 36 wherein the communications devices are switches.
- 38. The method of claim 36 wherein the communications devices are part of a storage area network.
- 39. The method of claim 36 wherein the data contains fixed-size blocks.
- 40. The method of claim 36 wherein the first header and the second header contain indicators of the same transaction.
- 41. The method of claim 36 wherein the first header and the second header contain indicators of a start address for the data of the packet.
- 42. A communications device for segmenting a packet having a header and data, the method comprising:
a component for transmitting to a receiving communications device a first header of the packet and a portion of the data as a first packet; and a component for transmitting to the receiving communications device a second header for the portion of the data not yet transmitted and the portion of the data not yet transmitted as a second packet wherein the first and the second packets are segmented portions of the packet.
- 43. The communications device of claim 42 wherein the transmitting of the first packet is stopped as a result of detecting an indication not to continue transmitting the packet.
- 44. The communications device of claim 43 wherein the communications device has multiple ports and the first packet and the second packet are transmitted via different ports.
- 45. The communications device of claim 43 wherein the communications device has multiple ports and the first packet and the second packet are transmitted via the same port.
- 46. The communications device of claim 42 wherein the data includes fixed-sized blocks and wherein the first packet ends on block boundary.
- 47. The communications device of claim 42 including a component that merges packets.
- 48. The communications device of claim 42 wherein the communications device is part of a storage area network.
- 49. The communications device of claim 42 wherein the communications 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 Ser. No. ______ entitled “METHOD AND SYSTEM FOR PLESIOSYNCHRONOUS COMMUNICATIONS WITH NULL INSERTION AND REMOVAL” (Attorney Docket No. 371798002US); U.S. patent application Ser. No. ______, entitled “METHOD AND SYSTEM FOR TRANSITION-CONTROLLED SELECTIVE BLOCK INVERSION COMMUNICATIONS” (Attorney Docket No. 371798007US); U.S. patent application Ser. No. ______ entitled “COMMUNICATIONS ARCHITECTURE FOR STORAGE-BASED DEVICES” (Attorney Docket No. 371798008US1); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR PACKET ORDERING BASED ON PACKET TYPE” (Attorney Docket No. 371798013US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR HOST HANDLING OF COMMUNICATIONS ERRORS” (Attorney Docket No. 371798014US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR DYNAMIC SEGMENTATION OF COMMUNICATIONS PACKETS” (Attorney Docket No. 371798015US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR ASYMMETRIC PACKET ORDERING BETWEEN COMMUNICATIONS DEVICES” (Attorney Docket No. 371798016US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR COMMUNICATING CONTROL INFORMATION VIA OUT-OF-BAND SYMBOLS” (Attorney Docket No. 371798017US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR INTEGRATING PACKET TYPE INFORMATION WITH SYNCHRONIZTION SYMBOLS” (Attorney Docket No. 371798018US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR NESTING OF COMMUNICATIONS PACKETS” (Attorney Docket No. 371798019US); U.S. patent application Ser. No. ______ entitled “COMMUNICATIONS ARCHITECTURE FOR MEMORY-BASED DEVICES” (Attorney Docket No. 371798012US); U.S. patent application Ser. No. ______ entitled “METHOD AND SYSTEM FOR DC-BALANCING AT THE PHYSICAL LAYER” (Attorney Docket No. 371798020US); and U.S. patent application Ser. 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 |