Systems and methods for assured communications with quality of service
First Claim
Patent Images
1. A method for communicating data, the method including:
- performing the following steps by at least one processing device;
receiving a block of data to be transmitted to a destination node;
prioritizing the block of data to be transmitted to the destination node by assigning a priority to the block of data based in part on a ranking of a first data source relative to a ranking of at least one second data source and a prioritization rule selected from a set of prioritization rules included in a dynamically configured profile, wherein the dynamically configured profile is used for throughput management functions comprising optimizing available bandwidth;
after prioritizing the block of data to be transmitted to the destination node, setting an indicator in a header of the block of data, wherein the indicator indicates that reliable delivery of the block of data is desired, wherein the indicator is set based at least in part on a reliability rule selected from a set of reliability rules included in the dynamically configured profile that determine whether reliable delivery is desired for the block of data based on characteristics of the block of data, and wherein the indicator is set on a per-message basis;
transmitting the block of data to the destination node; and
retransmitting the block of data to the destination node when a predetermined time has elapsed and when an acknowledgement of delivery of the block of data has not been received from the destination node;
wherein at least the prioritizing and setting steps occur at a transport layer of a protocol stack.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the present invention provide systems and methods for facilitating communication of data. A method includes communicating data including prioritizing a block of data, setting an indicator in a header of the block of data, transmitting the block of data, and retransmitting the block of data. The indicator indicates that reliable delivery of the block of data is desired. The indicator is set based at least in part on a rule. The indicator is set on a per-message basis. The block of data is retransmitted when a predetermined time has elapsed and when an acknowledgement of delivery of the block of data has not been received.
-
Citations
20 Claims
-
1. A method for communicating data, the method including:
-
performing the following steps by at least one processing device; receiving a block of data to be transmitted to a destination node; prioritizing the block of data to be transmitted to the destination node by assigning a priority to the block of data based in part on a ranking of a first data source relative to a ranking of at least one second data source and a prioritization rule selected from a set of prioritization rules included in a dynamically configured profile, wherein the dynamically configured profile is used for throughput management functions comprising optimizing available bandwidth; after prioritizing the block of data to be transmitted to the destination node, setting an indicator in a header of the block of data, wherein the indicator indicates that reliable delivery of the block of data is desired, wherein the indicator is set based at least in part on a reliability rule selected from a set of reliability rules included in the dynamically configured profile that determine whether reliable delivery is desired for the block of data based on characteristics of the block of data, and wherein the indicator is set on a per-message basis; transmitting the block of data to the destination node; and retransmitting the block of data to the destination node when a predetermined time has elapsed and when an acknowledgement of delivery of the block of data has not been received from the destination node; wherein at least the prioritizing and setting steps occur at a transport layer of a protocol stack. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A data communication system for providing content-based quality of service in a network, the system including:
-
receiver circuitry configured to receive data from a source node and a destination node; transmitter circuitry configured to transmit data to a source node and a destination node; circuitry configured to prioritize a block of data to be transmitted to the destination node by assigning a priority to the data based at least in part on a ranking of a first data source relative to a ranking of at least one second data source and a prioritization rule selected from a set of prioritization rules included in a dynamically configured profile;
wherein the dynamically configured profile is used for throughput management functions comprising optimization available bandwidth;circuitry configured to perform reliability processing on the block of data to be transmitted to the destination node by setting a reliability indicator in the block of data, after the block of data is prioritized, based at least in part on a reliability rule selected from a set of available reliability rules included in the dynamically configured profile that determine whether reliable delivery is desired for the block of data based on characteristics of the block of data, and to cause the transmitter circuitry to send an acknowledgement message to a source node based at least in part on a reliability indicator in a block of data received from a source node; and wherein the data prioritization and the reliability processing operate at a transport layer of a protocol stack. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A device comprising a non-transitory computer-readable medium, having stored thereon a computer program for data communication, the computer program having a plurality of code sections, the code sections executable by a computer to cause the computer to perform the steps of:
-
receiving data from a source node; prioritizing the data received from the source node by assigning a priority to the data based at least in part on a ranking of a first data source relative to a ranking of at least one second data source and a prioritization rule selected from a set of prioritization rules defined by a dynamically configured profile, wherein the dynamically configured profile is used for throughput management functions comprising optimizing available bandwidth, and wherein the data includes a reliability indicator that is set after the data is prioritized by the source node and is based at least in part on a reliability rule selected from a set of reliability rules included in the dynamically configured profile which is shared with the source node; and on a condition that the data received from the source node includes a reliability indicator indicating that reliability is desired and that the data contains no errors, sending an acknowledgement message based at least in part on the reliability indicator; wherein at least the prioritizing and sending steps occur at a transport layer of a protocol stack.
-
Specification