System and method for fast, reliable byte stream transport
First Claim
1. A method for quickly and reliably transmitting a byte stream from a sending node having a number of credits with an established connection to a receiving node in a communication environment having a plurality of nodes and a plurality of interconnectable paths, the method comprising:
- transmitting a predetermined number of bytes of a byte stream from a sending node to a receiving node, said predetermined number of bytes corresponding to the number of credits present at said sending node;
transmitting a predetermined number of credits from said receiving node to said sending node when a predetermined event occurs; and
transmitting a predetermined number of negative acknowledgements from said receiving node to said sending node, when at least one transmitted byte is lost or corrupted.
2 Assignments
0 Petitions
Accused Products
Abstract
Reliable byte stream transfer protocols play an important role in modern networks. The present invention implements such a protocol using credits for flow control and negative acknowledgements for reliable delivery. The credit mechanism uses credit transfer in installments and is immune to the losses or corruptions of intermediate credit installments. Negative acknowledgements are used to solicit the retransmission of data stream component. The present invention provides full compatibility at the programming interface with reliable byte transfer protocols, such as TCP, and also allows fall interoperability among hosts running the aforesaid standard protocol or the protocol of the present invention.
-
Citations
76 Claims
-
1. A method for quickly and reliably transmitting a byte stream from a sending node having a number of credits with an established connection to a receiving node in a communication environment having a plurality of nodes and a plurality of interconnectable paths, the method comprising:
-
transmitting a predetermined number of bytes of a byte stream from a sending node to a receiving node, said predetermined number of bytes corresponding to the number of credits present at said sending node;
transmitting a predetermined number of credits from said receiving node to said sending node when a predetermined event occurs; and
transmitting a predetermined number of negative acknowledgements from said receiving node to said sending node, when at least one transmitted byte is lost or corrupted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for quickly and reliably transmitting a byte stream from a sending node having credits with an established connection to a receiving node in a communication environment having a plurality of nodes and with a plurality of interconnectable paths, where the bytes of said byte stream are formed into a plurality of data packets of a protocol, the method comprising:
-
providing a predetermined identifier associated with data packets;
if said predetermined identifier indicates a credit and negative acknowledgement transport system, transmitting a predetermined number of bytes of a byte stream from a sending node to a receiving node, corresponding to the number of credits present at said sending node;
transmitting a predetermined number of credits from said receiving node to said sending node when a predetermined even occurs; and
transmitting a predetermined number of negative acknowledgements from said receiving node to said sending node, when at least one transmitted byte is lost or corrupted. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A system for quickly and reliably transmitting a byte stream from a sending node having credits with an established connection to a receiving node in a communication environment having a plurality of nodes with a plurality of interconnectable paths, comprising:
-
means for transmitting a predetermined number of bytes of a byte stream from a sending node to a receiving node, said predetermined number of bytes corresponding to the number of credits present at said sending node;
means for transmitting a predetermined number of credits from said receiving node to said sending node when a predetermined event occurs; and
means transmitting a predetermined number of negative acknowledgements from said receiving node to said sending node, when at least one transmitted byte is lost or corrupted. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
-
-
57. A system for quickly and reliably transmitting a byte stream from a sending node having credits with an established connection to a receiving node in a communication environment having a plurality of nodes and with a plurality of interconnectable paths, where the bytes of said byte stream are formed into a plurality of data packets of a protocol, the system comprising:
-
a predetermined identifier associated with data packets;
means for transmitting a predetermined number of bytes of a byte stream from a sending node to a receiving node, corresponding to the number of credits present at said sending node, if said predetermined identifier indicates a credit and negative acknowledgement transport system;
means for transmitting a predetermined number of credits from said receiving node to said sending node when a predetermined even occurs; and
means for transmitting a predetermined number of negative acknowledgements from said receiving node to said sending node, when at least one transmitted byte is lost or corrupted. - View Dependent Claims (58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76)
-
Specification