Patent US5767494A successfully refreshed from Google Patents.
Patent US5948060A successfully refreshed from Google Patents.
US5948060A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Speeding-up communication rates on links transferring data structures by a method of handing scatter/gather of storage blocks in commanded computer systems
Assignee: Google LLC
•
Filing: 1997-01-24
•
Granted: 1999-09-07
•
Expires: 2017-01-24
Abstract
Abstract Speeds up a commanded system to read or write data for a large number of data frames transmitted on a link by executing a TRANSFER STRUCTURE instruction that automatically controls the reading or writing of a large number of scattered storage blocks in the storage of the commanded system containing, or to contain, the data transmitted on the link.
Inventors
- 👤 Thomas Anthony Gregg
- 👤 Kulwant Mundra Pandey
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 07:48
CPC Classifications
H; H04; H04L; H04L49/00; H04L49/90; H04L49/9047; H04L49/901
Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
405 words
A method of transferring a data structure using a plurality of frames over an intersystem link connected between a commanding computer (commanding entity) and a commanded computer (commanded entity) in either direction by performing read and write operations for the data structure at opposite ends of the intersystem link, the data structure being storable in noncontiguous blocks in a computer storage at each entity, the method comprising the steps of: sending a message command from the commanding entity to the commanded entity for requesting a transmission of a data structure on the link in either direction by transmitting a message control block over the link to the commanded entity indicating the direction of transfer and containing a data structure identifier (structure ID) to identify to the commanded entity the data structure to be transferred, specifying for each entity a particular frame size for frame data to be transmitted for the storage blocks for the data structure, and indicating for each entity a predetermined frame-to-block ratio for the blocks of the data structure, wherein the frame-to-block ratio enables each entity to determine the number of frames stored in each storage block of the data structure at each entity, executing microcode within the commanded entity for preparing and initiating execution of a transfer data structure (TS) instruction, and executing the TS instruction to efficiently control movement of data for the identified data structure between a link buffer and blocks of the data structure in a memory of the commanded entity as data frames transmit the data structure on the link, sending on the link by the receiving entity to the sending entity an acknowledge frame or a reject frame to indicate to the sending entity if a last transmitted frame was received error free or with an error condition, responding to a received acknowledge frame by the sending entity sending on the link a next data frame for the data structure, each frame containing a link control word (LCW) for controlling the transmission of each next frame in the data structure, an A bit in the LCW controlling a sequencing of the frames in each data structure being transmitted on the link, the A bit indicating the end of each data structure being transmitted, and responding to a received reject frame by the sending entity re-transmitting on the link a last transmitted frame retained in a link buffer of the sending entity associated with the reject frame.
Claim 2
Independent Claim
405 words
A method of transferring a data structure using a plurality of frames over an intersystem link connected between a commanding computer (commanding entity) and a commanded computer (commanded entity) in either direction by performing read and write operations for the data structure at opposite ends of the intersystem link, the data structure being storable in noncontiguous blocks in a computer storage at each entity, the method comprising the steps of: sending a message command from the commanding entity to the commanded entity for requesting a transmission of a data structure on the link in either direction by transmitting a message control block over the link to the commanded entity indicating the direction of transfer and containing a data structure identifier (structure ID) to identify to the commanded entity the data structure to be transferred, specifying for each entity a particular frame size for frame data to be transmitted for the storage blocks for the data structure, and indicating for each entity a predetermined frame-to-block ratio for the blocks of the data structure, wherein the frame-to-block ratio enables each entity to determine the number of frames stored in each storage block of the data structure at each entity, executing microcode within the commanded entity for preparing and initiating execution of a transfer data structure (TS) instruction, and executing the TS instruction to efficiently control movement of data for the identified data structure between a link buffer and blocks of the data structure in a memory of the commanded entity as data frames transmit the data structure on the link, sending on the link by the receiving entity to the sending entity an acknowledge frame or a reject frame to indicate to the sending entity if a last transmitted frame was received error free or with an error condition, responding to a received acknowledge frame by the sending entity sending on the link a next data frame for the data structure, each frame containing a link control word (LCW) for controlling the transmission of each next frame in the data structure, an A bit in the LCW controlling a sequencing of the frames in each data structure being transmitted on the link, the A bit indicating the end of each data structure being transmitted, and responding to a received reject frame by the sending entity re-transmitting on the link a last transmitted frame retained in a link buffer of the sending entity associated with the reject frame.
Claim 3
Dependent Claim
110 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 1, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: inhibiting the overlaying of data in the link buffer of the sending entity until an acknowledge signal is received on the link from the receiving entity that the data frame was received by the receiving entity without error.
Claim 4
Dependent Claim
118 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 2, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: sizing the link buffer and each of the data blocks of the structure in the commanded entity to be a number of bytes equal to a power of two, of which the size of the link buffer and of each block have an integer predetermined ratio.
Claim 5
Dependent Claim
98 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 1, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: the commanding entity being a central processing complex, and the commanded entity being a coupling facility comprised of a processor and a very large electronic storage.
Claim 6
Dependent Claim
175 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 1, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: signaling by one of the commands of the commanding entity to the commanded entity a set of parameters including a parameter indicating a size in storable data units for the identified structure to be transmitted over the intersystem link, accessing by the commanded entity of a pointer list representing locations of data blocks of predetermined size containing the data structure in the memory of the commanded entity, and utilizing pointers in the pointer list for addressing data blocks of the structure which may be scattered in the memory of the commanded entity until a last block is transmitted error free for the structure.
Claim 7
Dependent Claim
128 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 1, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: responding to a reject frame received by the commanded entity by retransmitting a plurality of last transmitted frames for one or more storage blocks in the commanded entity associated with the reject frame when the storage block ratio in the commanded entity indicates a plurality of frames are contained in each block in the commanded entity.
Claim 8
Dependent Claim
222 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 6, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: locating a structure pointer list of the TS instruction for addressing in the memory of the commanded entity a storage boundary having a power of two byte address containing right zeros for addressing a location for a first frame of a first block of the structure, writing or reading plural frames of each storage block of the commanded entity transmitted on the link starting at the first block location addressed by a first pointer in the structure pointer list and incrementing the address to a next frame location in the block until the end of the block is reached, and acting in the commanded entity on a a re-transmission for a current reject frame by the TS instruction resetting to a predetermined number of right zeros in the pointer address for the current block to access the location of the first data frame of the current block having the retransmission.
Claim 9
Dependent Claim
137 words
A method of transmitting a data structure between a commanding entity and a commanded entity in either direction over an intersystem link, as defined in claim 7, a sending entity being either the commanding or commanded entity sending the structure as frames on the link, and a receiving entity being the other of the commanding or commanded entity receiving the frames of the structure from the link, further comprising the steps of: storing a location of a first pointer for each data frame in a TS instruction's pointer list, and acting for a current reject frame by resetting the current structure pointer for the TS instruction to a location in the commanded entity's memory at which each next re-transmitted block is to be accessed for writing or reading plural frames in a block of the commanded entity.
References Cited (Backward Citations)
US5708769A
Cited
US5363484A
Cited
US5537574A
Cited
US5327570A
Cited
US5572678A
Cited
US5357608A
Cited
US5455831A
Cited
US5509122A
Cited
US5463736A
Cited
US5561809A
Cited
US5339427A
Cited
US5659690A
Cited
US5592628A
Cited
US5377337A
Cited
US5629948A
Cited
US5574945A
Cited
US5581705A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-09-06 | 2003-03-08 | 2003-09-07 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-09-06 | 2007-03-08 | 2007-09-07 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-09-06 | 2011-03-08 | 2011-09-07 | $7700.00 | Window Closed / Lapsed |