RTU (Remote Terminal Unit) role in SCADA systems - Time & Space Complexity
We want to understand how the RTU's work time changes as it handles more devices or data points.
How does the RTU's processing time grow when the number of sensors or commands increases?
Analyze the time complexity of the following RTU polling code snippet.
for sensor in sensors_list:
data = read_sensor(sensor)
process_data(data)
send_to_central(data)
wait_for_acknowledgment()
This code polls each sensor one by one, processes its data, sends it to the central system, and waits for confirmation.
Look at what repeats as the RTU runs.
- Primary operation: Loop over each sensor in the list.
- How many times: Once per sensor, so as many times as there are sensors.
As the number of sensors grows, the RTU does more work in a straight line.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 | 10 sensor reads and sends |
| 100 | 100 sensor reads and sends |
| 1000 | 1000 sensor reads and sends |
Pattern observation: The work grows directly with the number of sensors; doubling sensors doubles work.
Time Complexity: O(n)
This means the RTU's time to complete polling grows in direct proportion to the number of sensors it handles.
[X] Wrong: "The RTU processes all sensors instantly, so time stays the same no matter how many sensors there are."
[OK] Correct: The RTU must read and send data for each sensor one after another, so more sensors mean more time.
Understanding how RTU processing time grows helps you explain system limits and plan for scaling in real-world SCADA setups.
"What if the RTU could read multiple sensors at the same time? How would the time complexity change?"