Priority delivery apparatus and method
First Claim
1. A method for transmitting target track updates over a network to a client processor, said method comprising the steps of:
- generating target track updates representative of at least a position of a target;
associating a priority to each of said target track updates, which associated priority is one of CRITICAL or at least one other lesser priority;
providing a target track update queue for sending said target track updates to said client processor;
determining the priority of a current target track update, and,(i) if said priority is determined to be CRITICAL,(a) sending said current target track update to said target track update queue, and(b) incrementing a client processor time workload by a time increment,(ii) if said priority is less than CRITICAL,(a) determining a channel priority,(b) comparing said channel priority with said priority of the current target track update,(c) if said channel priority is greater than said priority of said current target track update, dropping said current target track update, and(d) if said priority of the current target track update is greater than or equal to said channel priority, sending said current target track update to said target track update queue, adjusting said client processor time workload by adding said time increment, and adjusting a time at which the last target track update was received.
1 Assignment
0 Petitions
Accused Products
Abstract
A method conveys information over a network to client processors, each with a maximum analysis rate. Sensed signals include target track updates generated at an aggregate track update rate depending on the number of targets and sensors. The track updates are prioritized. The prioritized updates are analyzed, for each client, in view a channel-priority representing the time rate of updates previously sent to the client. The selected higher-priority updates are destined for the client at an average rate no greater than the maximum analysis rate of the client. The lower-priority track updates not destined for the client are deleted. The selected updates are transmitted to their client processors.
22 Citations
20 Claims
-
1. A method for transmitting target track updates over a network to a client processor, said method comprising the steps of:
-
generating target track updates representative of at least a position of a target; associating a priority to each of said target track updates, which associated priority is one of CRITICAL or at least one other lesser priority; providing a target track update queue for sending said target track updates to said client processor; determining the priority of a current target track update, and, (i) if said priority is determined to be CRITICAL, (a) sending said current target track update to said target track update queue, and (b) incrementing a client processor time workload by a time increment, (ii) if said priority is less than CRITICAL, (a) determining a channel priority, (b) comparing said channel priority with said priority of the current target track update, (c) if said channel priority is greater than said priority of said current target track update, dropping said current target track update, and (d) if said priority of the current target track update is greater than or equal to said channel priority, sending said current target track update to said target track update queue, adjusting said client processor time workload by adding said time increment, and adjusting a time at which the last target track update was received. - View Dependent Claims (2, 3)
-
-
4. A method for conveying information over a network to one or more client processors, each of which client processors having a maximum analysis rate, said method comprising:
-
providing sensed signals representing at least one target, said sensed signals including individual track updates generated at an aggregate track update rate that depends at least upon the number of targets and the number of sensors providing the sensed signals; setting a priority of individual track updates based on predetermined relatively higher and lower priority criteria, to produce relatively higher-priority and lower-priority track-prioritized individual track updates; for each of said client processors, analyzing said track-prioritized individual track updates of aggregate track updates in view of the priority of said track-prioritized individual track updates and a channel-priority established by time rate of track updates previously conveyed to said client processor, for selecting those individual higher-priority track updates destined for the client processor at an average rate no greater than a maximum analysis rate of the client processor, and for deleting those individual lower-priority track updates which are not destined for the client processor; transmitting to said client processor said selected ones of said individual track updates at an average rate no greater than the maximum analysis rate of the client processor; and at each said client processor, processing said individual track updates to produce processed track updates. - View Dependent Claims (5, 6, 7)
-
-
8. A system comprising:
-
a plurality of ships and a data network extending therebetween, at least some of said ships including sensors for generating target track information including target track updates representing at least the location of a target; one or more client processors located aboard at least some of said ships; a track file provider located on each of said ships, which track file provider aggregates the target track updates generated aboard ownship with those received over said data network, and which makes the aggregated target track updates available on a separate path for each of said client processors; a data queue associated with each of said separate paths, each said data queue coupled to a corresponding one of said client processors for accepting target track updates and for, so long as said data queue does not reach a full condition, transmitting queued target track updates to the associated client processor, and for discarding oldest data in the data queue if said data queue reaches a full condition; a workload analysis device coupled in each said separate path between said track file provider and said corresponding data queue, for determining a priority of a current target track update, which associates a priority to each of said target track updates, which associated priority is one of CRITICAL or at least one other lesser priority, and, (i) if said priority is determined to be CRITICAL, (a) sending the current target track update to an input port of said data queue and (b) incrementing a client processor time workload by a time increment, where said time increment is an estimated time for said associated client processor to process said current target track update, (ii) if said priority is less than CRITICAL, (a) determining a channel priority, (b) comparing said channel priority with said priority of the current target track update, (c) if said channel priority is greater than said priority of said current target track update, dropping said current target track update, and (d) if said priority of the current target track update is greater than or equal to said channel priority, sending said current target track update to said data queue, adjusting said client processor time workload by adding said time increment, and adjusting a time at which the last target track update was received. - View Dependent Claims (9, 10)
-
-
11. A method for transmitting target track updates over a network to a client processor, said method comprising the steps of:
-
generating target track updates representative of at least a position of a target; associating a priority to each of said target track updates, which associated priority is one of CRITICAL or at least one other lesser priority; providing a target track update queue including an input port and an output port from which output port said target track updates can be sent to said client processor; determining the priority of a current target track update, and, (i) if said priority is determined to be CRITICAL, (a) sending said current target track update to said input port of said target track update queue, and (b) incrementing a client processor time workload by a time increment, where said time increment is an estimated time for said client processor to process said current target track update, (ii) if said priority is less than CRITICAL, (a) determining a channel priority by summing a client processor time workload with the time that the last update was sent to the client minus the current time to form a sum, and dividing said sum by said time increment, (b) comparing said channel priority with said priority of the current target track update, (c) if said channel priority is greater than said priority of said current target track update, dropping said current target track update, and (d) if said priority of the current target track update is greater than or equal to said channel priority, sending said current target track update to said input port of said target track update queue, adjusting said client processor time workload by adding said time increment, and adjusting a time at which the last target track update was received.
-
-
12. A method for conveying information over a network to one or more client processors, each of which client processors has a maximum analysis rate, said method comprising:
-
providing sensed signals representing at least one target, said sensed signals including individual track updates generated at an aggregate track update rate; setting a priority of individual track updates based on predetermined relatively higher and lower priority criteria; for each of said client processors, analyzing said track prioritized individual track updates for selecting those relatively higher-priority track updates to be sent to the client processor at an average rate no greater than a maximum analysis rate of the client processor, and for deleting those relatively lower-priority track updates; and transmitting to said client processor said selected higher-priority track updates at an average rate no greater than the maximum analysis rate of the client processor. - View Dependent Claims (13, 14, 15)
-
-
16. A system comprising:
-
a plurality of ships and a data network extending therebetween, at least some of said ships including sensors for generating target track information including target track updates representing at least the location of a target; one or more client processors located aboard at least some of said ships, at least first and second client processors having throughput or processing rates which are different from each other; a track file provider located on each of said ships, which track file provider aggregates the target track updates generated aboard ownship with those received over said data network, and which makes the aggregated target track updates available on a separate path for each of said client processors; a data queue associated with each of said separate paths, each said data queue including a target track update output port coupled to a corresponding one of said client processors and also including a target track update input port for accepting target track updates at said target track update input port and for, so long as said data queue does not reach a full condition, transmitting queued target track updates to the associated client processor, and for discarding oldest data in the queue if said data queue reaches a full condition; and a workload analyzer coupled in each said separate path between said track file provider and said input port of a corresponding data queue, for determining a priority of a current target track update, which associates a priority to each of said target track updates, which associated priority is one of CRITICAL or at least one other lesser priority, and, (i) if said priority is determined to be CRITICAL, (a) sending the current target track update to said input port, and (b) incrementing a client processor time workload by a time increment, where said time increment is an estimated time for said associated client processor to process said current target track update, (ii) if said priority is less than CRITICAL, (a) determining a channel priority by summing a client processor time workload with a time that a last update was sent to the client minus the current time to form a sum, and dividing said sum by said time increment, (b) comparing said channel priority with said priority of the current target track update, (c) if said channel priority is greater than said priority of said current target track update, dropping said current target track update, and (d) if said priority of the current target track update is greater than or equal to said channel priority, sending said current target track update to said input port of said queue, adjusting said client processor time workload by adding said time increment, and adjusting a time at which the last target track update was received. - View Dependent Claims (17, 18, 19, 20)
-
Specification