Error detection/correction and fault detection/recovery – Pulse or data error handling – Error count or rate
Reexamination Certificate
1999-03-22
2001-01-30
De Cady, Albert (Department: 2784)
Error detection/correction and fault detection/recovery
Pulse or data error handling
Error count or rate
Reexamination Certificate
active
06182252
ABSTRACT:
FIELD OF THE INVENTION
This invention relates generally to methods of data communication and, more particularly, to a method and system for facilitating efficient, high-volume data transport.
BACKGROUND OF THE INVENTION
The operation of industrial equipment such as assembly lines, machine tools and processing equipment is often governed by an automation controller in accordance with a stored program. In conventional automation controllers, the control program is stored in a memory and includes instructions which are read out in rapid sequence and executed to examine the condition of selected sensing devices on the controlled equipment, or to energize or de-energize selected operating devices on the controlled equipment contingent on the status of one or more of the examined sensing devices.
Large controllers typically consist of a number of modules with different functions assigned to each module. For example, one module may execute the user control program, another may interface the controller to the remote sensing and operating devices, and yet another module may control communications with a host computer via a local area network. This arrangement permits one or more human operators to monitor and control an industrial process via computer workstations.
When a computer workstation in an industrial control system is initialized, it may become a “subscriber” to measurements provided by a number of different sources. Each measurement source with which the workstation is associated as a subscriber will typically provide a current measurement value, and will subsequently transmit an updated value in response to each change in the measured parameter. A measurement source will often supply more than a single type of measurement to a given subscriber (i.e., destination workstation). For example, the temperature and water level of a water tank could be provided by a single measurement source and delivered to the same subscriber.
In order to make efficient use of available data transport bandwidth, multiple measurements are commonly bundled together into packets. In accordance with certain data transport protocols, a measurement source will buffer measurement data until either a complete packet is ready for transmission to the same subscriber, or until the first buffered measurement has been held in excess of a predefined time period. When a packet is eventually sent to a subscriber, the measurement source waits for an acknowledgement from the subscriber prior to sending additional packets. That is, additional measurements are not sent to the subscriber between the time at which a packet is sent until receipt of an acknowledgement. This results in relatively inefficient use of available transport bandwidth, since some waiting period occurs following the sending of each packet. In addition, the waiting period increases the average latency (i.e., the average elapsed time between the taking of a measurement and subsequent delivery of measurement data) associated with the transport of measurement data to a subscriber.
Another consideration in the design of current industrial control systems is the potential for the flow of high volumes of data and message traffic between modules. For example, in particular control systems a temperature reading may be transmitted from its source to multiple computer workstations for real-time display. A human operator may be similarly presented with real-time data from hundreds of sensors distributed throughout a factory. In addition, certain applications may be required to subscribe to and effect centralized processing of sensor data originating from numerous local and geographically distant sources.
These scenarios raise the possibility that a particular module or workstation may be overwhelmed when measurement data is received faster than it can be processed. For example, a workstation may become overloaded if it is incapable of displaying measurement data at the rate it is received. Even when data is arriving at a rate less than the maximum rate at which it may be displayed, little or no processing capacity may remain available to carry out other necessary functions (e.g., responding to user commands made via a keyboard or mouse). In industrial automation environments, rapid response to operator commands and the like is critical to maintaining control of the subject industrial process.
One potential solution to the overload problem discussed above is to simply not send data continuously to a particular destination (e.g., a workstation), but to instead require that the destination reply with a “handshaking” acknowledgment upon completing processing of each received measurement packet. Unfortunately, this results in transport inefficiencies at low data transmission rates, since each new packet will not be sent until an acknowledgment is received. That is, each received data packet will be separated by an interval equivalent to the round-trip time required for a packet to be transported between the source and destination.
Another potential approach to overcoming the overload problem could involve configuring a destination to periodically send messages indicative of the amount of data which has been processed since establishment of the data connection. One drawback of this approach is that bandwidth is consumed by the periodic messages from the destination even in the absence of an overload condition. If it is attempted to conserve bandwidth by sending such periodic messages only infrequently, it is possible that an overload condition will develop during one of the intervals between messages.
The overload problem could also be potentially solved by buffering measurements received at the destination to memory. Processing or display of the received data could then be performed asynchronously relative to receipt of the data. However, in the event of a continuing overload condition the size of the buffer will tend to increase without limit. As a result of this increase all available memory could be consumed, potentially resulting in the occurrence of a system crash or other undesirable system performance. In addition, the average data latency tends to increase in proportion to the quantity of buffered data.
SUMMARY OF THE INVENTION
Briefly, the present invention is directed to a system and method for regulating data transmission between a source node and a destination node within a data communication system. The present invention contemplates monitoring performance of the system so as to detect when the system enters an overloaded state. In an exemplary embodiment such detection is effected by determining the extent of the time interval during which instructions are retained in a queue at the destination node awaiting execution. When this interval exceeds a maximum queuing time, the system is deemed to be in an overloaded state. Upon entry into an overloaded state, data transmission from the source node is suspended pending recovery of the system from the overloaded state.
In a preferred embodiment overload probe messages are periodically inserted into a message queue at the destination node. When such an overload probe message is determined to have been retained in the message queue in excess of the maximum queuing time, the system is deemed to be in an overloaded state and data transmission is suspended as described above. If it is subsequently determined that an overload probe message has been retained in the message queue for less than the maximum queuing time, data transmission from the source node is resumed.
REFERENCES:
patent: 5243594 (1993-09-01), Dasch et al.
patent: 5432903 (1995-07-01), Frid-Nielsen
patent: 5440741 (1995-08-01), Morales et al.
patent: 5764155 (1998-06-01), Kretesz
patent: 5815703 (1998-09-01), Copeland et al.
patent: 5822527 (1998-10-01), Post
patent: 5933601 (1999-08-01), Fanshier et al.
patent: 5974410 (1999-10-01), Copeland et al.
Knobbe Roger
Wong Steven
Abraham Esaw
Cady Albert De
Cooley & Godward LLP
Wonderware Corporation
Zimmer Kevin J.
LandOfFree
Method and system for efficient packet data transport does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for efficient packet data transport, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for efficient packet data transport will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2550645