US5583859A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Data labeling technique for high performance protocol processing
Assignee: Nytell Software LLC
•
Filing: 1994-08-30
•
Granted: 1996-12-10
•
Expires: 2014-08-30
Abstract
Abstract In accordance with the present invention, data is transmitted through a network in chunks. Chunks are self-describing units designed for high speed protocol processing. Packets act as envelopes for carrying chunks across a network. The self-describing nature of chunks allow them to be processed as they arrive at the receiver regardless of any misordering. The ability to process data without intermediate buffering for reordering or reassembly improves protocol processing performance. The chunks also distribute protocol data units control overhead over multiple packets.
Inventors
- 👤 David C. Feldmeier
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-02 06:46
CPC Classifications
H; H04; H04Q; H04Q11/00; H04Q11/04; H04Q11/0428; H04Q11/0478; H04L; H04L9/00; H04L9/40; H04L12/00; H04L12/54; H04L12/56; H04L12/5601; H04L2012/5629; H04L2012/563; H04L2012/5638; H04L2012/5646; H04L2012/5652; H04L69/00; H04L69/10; H04L69/30; H04L69/32; H04L69/322; H04L69/324; H04L69/326
Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
159 words
A method of transmitting data from a transmitting station via a network to a receiving station, said data including a plurality of basic data units which together comprise a protocol data unit, said method comprising the steps of, at said transmitting station, transmitting said data in said network in units of chunks, each said chunk comprising one or more basic data units, and a chunk header common to all of the basic data units of the chunk and which indicates: (a) the type of basic data units in the chunk, (b) protocol data units to which each basic data unit in the chunk belongs, (c) the relative position of the basic data units in said protocol data units, (d) the size of each basic data unit in the chunk and the number of basic data units in the chunk, and (e) boundaries of the protocol data units, and, at said receiving station, receiving and processing said basic data units.
Claim 2
Independent Claim
159 words
A method of transmitting data from a transmitting station via a network to a receiving station, said data including a plurality of basic data units which together comprise a protocol data unit, said method comprising the steps of, at said transmitting station, transmitting said data in said network in units of chunks, each said chunk comprising one or more basic data units, and a chunk header common to all of the basic data units of the chunk and which indicates: (a) the type of basic data units in the chunk, (b) protocol data units to which each basic data unit in the chunk belongs, (c) the relative position of the basic data units in said protocol data units, (d) the size of each basic data unit in the chunk and the number of basic data units in the chunk, and (e) boundaries of the protocol data units, and, at said receiving station, receiving and processing said basic data units.
Claim 3
Dependent Claim
24 words
The method of claim 1 wherein the types of basic data units in each chunk are application data and various types of control data.
Claim 4
Dependent Claim
16 words
The method of claim 1 wherein said protocol data units include transport layer protocol data units.
Claim 5
Dependent Claim
16 words
The method of claim 3 wherein said protocol data units also include connection protocol data units.
Claim 6
Dependent Claim
16 words
The method of claim 4 wherein said protocol data units also include external protocol data units.
Claim 7
Dependent Claim
48 words
The method of claim 1 wherein said transmitting step further includes the step of fragmenting a chunk into a plurality of smaller sized chunk units, each of said smaller sized chunk units having its own chunk header with a format identical to that of the original chunk header.
Claim 8
Dependent Claim
37 words
The method of claim 1 wherein said transmitting step further includes the step of assembling a plurality of smaller chunk units, each with its own chunk header, into a single chunk unit with a single chunk header.
Claim 9
Dependent Claim
32 words
The method of claim 1 wherein said network is a packet network and said transmitting step comprises transmitting packets containing one or more chunks from said transmitting station to said receiving station.
Claim 10
Dependent Claim
38 words
The method of claim 1 wherein said method further comprises the step of at said receiving station, processing the data contained in each said chunk without depending on the arrival of any other chunk at the receiving station.
Claim 11
Dependent Claim
38 words
The method of claim 1 further comprising the step of performing end-to-end error detection on said chunks, said error detection step comprising the step of applying an error detection code to an invariant of a protocol data unit.
Claim 12
Independent Claim
163 words
A method of transmitting data in a packet network having a transmitting station and a receiving station comprising the steps of: at said transmitting station connected to said network, organizing said data into chunks, each chunk comprising one or more basic data units, and a chunk header which indicates the data type, one or more protocol units to which the basic data units in the chunk belong, the relative position of the basic data units of said one or more protocol data units, the number of basic data units in the chunk, the size of the basic data units, and if a last of said basic data units is the last basic data unit of a protocol data unit, at said transmitting station, placing one or more of said chunks into a plurality of data packets; transmitting said data packets via said network; and at said receiving station, removing said chunks from said packets and then processing said data in each said chunk.
Claim 13
Independent Claim
163 words
A method of transmitting data in a packet network having a transmitting station and a receiving station comprising the steps of: at said transmitting station connected to said network, organizing said data into chunks, each chunk comprising one or more basic data units, and a chunk header which indicates the data type, one or more protocol units to which the basic data units in the chunk belong, the relative position of the basic data units of said one or more protocol data units, the number of basic data units in the chunk, the size of the basic data units, and if a last of said basic data units is the last basic data unit of a protocol data unit, at said transmitting station, placing one or more of said chunks into a plurality of data packets; transmitting said data packets via said network; and at said receiving station, removing said chunks from said packets and then processing said data in each said chunk.
Claim 14
Dependent Claim
29 words
The method of claim 11 further comprising the step of: in said network, fragmenting said chunks into smaller chunks, each of said smaller chunks having its own chunk header.
Claim 15
Dependent Claim
32 words
The method of claim 11 further comprising the step of: assembling a plurality of said chunks, each with its own chunk header, into a single larger chunk with a single chunk header.
Claim 16
Dependent Claim
37 words
The method of claim 11 wherein said step of processing at said receiving station comprises the step of starting to process each said chunk without depending on the arrival of any other chunk at said receiving station.
Claim 17
Independent Claim
291 words
A method for transmitting data between a transmitting station having a first processing unit for executing protocols organized in a first protocol stack and a receiving station having a second processing unit for executing protocols organized in a second protocol stack, peer protocol entities in said first and second stacks communicating logically in protocol data units, said transmitting station and said receiving station communicating physically by transmitting data packets through a network connecting said transmitting station and said receiving station, said method comprising the steps of: at said transmitting station, organizing said data to be transmitted into chunks, each chunk comprising one or more basic data units and a chunk header common to all of the basic data units, said chunk header being descriptive of all said basic data units, said chunk header identifying (a) one or more protocol data units to which said basic data units belong, (b) the relative position of said basic data units in said protocol data units and if a last of the basic data units in the chunk is the last basic data unit of said protocol data units, (c) the size of the basic data unit and the number of basic data units in the chunk, and (d) the type of data in said basic data units, so that the basic data units of the chunk can be processed in a peer protocol entity in the second protocol stack at said receiving station without depending on the arrival of any chunk from any other peer protocol entity in the second protocol stack at said receiving station, each of said packets containing one or more chunks, and at said receiving station, receiving each said chunk and processing said basic data units of each said chunk.
Claim 18
Independent Claim
291 words
A method for transmitting data between a transmitting station having a first processing unit for executing protocols organized in a first protocol stack and a receiving station having a second processing unit for executing protocols organized in a second protocol stack, peer protocol entities in said first and second stacks communicating logically in protocol data units, said transmitting station and said receiving station communicating physically by transmitting data packets through a network connecting said transmitting station and said receiving station, said method comprising the steps of: at said transmitting station, organizing said data to be transmitted into chunks, each chunk comprising one or more basic data units and a chunk header common to all of the basic data units, said chunk header being descriptive of all said basic data units, said chunk header identifying (a) one or more protocol data units to which said basic data units belong, (b) the relative position of said basic data units in said protocol data units and if a last of the basic data units in the chunk is the last basic data unit of said protocol data units, (c) the size of the basic data unit and the number of basic data units in the chunk, and (d) the type of data in said basic data units, so that the basic data units of the chunk can be processed in a peer protocol entity in the second protocol stack at said receiving station without depending on the arrival of any chunk from any other peer protocol entity in the second protocol stack at said receiving station, each of said packets containing one or more chunks, and at said receiving station, receiving each said chunk and processing said basic data units of each said chunk.
Claim 19
Independent Claim
198 words
A method for communicating data in packets between a transmitting station and a receiving station over an intervening network, said data including protocol data units and said method comprising the steps of: at said transmitting station, assembling said data into units of chunks, each chunk being self-describing and comprising one or more basic data units and a chunk header common to all of the basic data units of the chunk and containing the self-describing information which indicates: (a) the type of basic data units in the chunk, (b) one or more protocol data units to which the basic units in the chunk belong; (c) the relative position of the basic data units in said one or more protocol data units; and (d) the boundaries of the one or more protocol data units, inserting a plurality of said chunks into individual ones of said packets, and transmitting said packets over said network to said receiving station; and at said receiving station, receiving said packets, selectively removing some of the chunks from individual ones of said packets in accordance with the self-describing information in the chunk headers of the chunks, and processing the data contained in the chunks thus removed.
Claim 20
Independent Claim
198 words
A method for communicating data in packets between a transmitting station and a receiving station over an intervening network, said data including protocol data units and said method comprising the steps of: at said transmitting station, assembling said data into units of chunks, each chunk being self-describing and comprising one or more basic data units and a chunk header common to all of the basic data units of the chunk and containing the self-describing information which indicates: (a) the type of basic data units in the chunk, (b) one or more protocol data units to which the basic units in the chunk belong; (c) the relative position of the basic data units in said one or more protocol data units; and (d) the boundaries of the one or more protocol data units, inserting a plurality of said chunks into individual ones of said packets, and transmitting said packets over said network to said receiving station; and at said receiving station, receiving said packets, selectively removing some of the chunks from individual ones of said packets in accordance with the self-describing information in the chunk headers of the chunks, and processing the data contained in the chunks thus removed.
Claim 21
Dependent Claim
42 words
The method in accordance with claim 16, wherein each said chunk header of each said chunk inserted in said packets also indicates the size of each basic data unit in the chunk and the number of basic data units in the chunk.
References Cited (Backward Citations)
US5050166A
Cited
US5136584A
Cited
US5124984A
Cited
US5280476A
Cited
US5163045A
Cited
US5278834A
Cited
US5371852A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1999-12-10 | 2000-06-10 | 2000-12-10 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2003-12-10 | 2004-06-10 | 2004-12-10 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2007-12-10 | 2008-06-10 | 2008-12-10 | $7700.00 | Window Closed / Lapsed |