Overview
- Distributed platforms are becoming popular for real time applications
- This since distributed solutions are cost effective because they use several pieces of low cost hardware
- A distributed real time system needs support of real time communication not the traditional communication. This since
- traditional communication gives best effort service
- real time communication has specific quality of service demands like maximum possible delay, maximum loss rate and so on
Real time communication
- real time communication is one where once network accepts the connection it guarantees quality of service
- characteristics of a real time communication
- timeliness – message must be delivered in predefined deadlines
- predictability – must gurantee bounded delay and low jitter for each message
- determinism – transmission occurs with predictable timing not affcted by variable system or load
- reliability – minimal loss or corruption of data
- QoS – minimum quality of service levels
- prioritization – messages marked higher priority are delivered first
- synchronization – coordinated timing to align communication between distributed compontns
- Quality of service (QoS) – key parameters
- Bandwidth
- Maximum transmission delay
- Delay Jitter
- Loss Rate
- Blocking Probability
- Real time systems can be of types hard, firm, soft. And defining real time communication QoS for each of these is difficult
- Hence real time communication is classified as
- Real time communication
- examples: manufacturing automation, automatic chemical factory, internet banking, video conferencing, internet telephony
- Soft (non) real time communication
- example: Email, FTP
- QoS for soft real time communication – FTP
- loss free operation – in case of ftp even losing 1 packet will mean entire document becoming corrupted
- limit to average delay and average throughput
- QoS for soft real time communication – audio broadcasting, mulit media application
- stringent limits on jitter but insensitive to delays
- Real time communication
QoS Parameters
Delay Jitter
- Delay consists of 3 components
- propogation – 5ms / km
- transmission – packet size / link speed
- queuing delay
- Delay Jitter
- difference between maximum and minimum packet delay that can be encountered
- Why jitter happens?
- in case of high load queuing starts happening increasing delay
- each packet may take different paths to reach destination hence jitter
- How to fix delay jitter?
- A buffer at the receiver end can control jitter
- it is important to have right buffer size otherwise buffer overruns may happen
- buffer size = peak rate of arriving messages X delay jitter
- video source transmits 30 frames/sec with 1 frame=2MB and delay jitter of 5sec
- buffer size = 30 x 2MB x 5 = 300MB
Bandwidth
- It is the maximum throughput (bytes per sec) and could define the bounds on end to end delay
- Delay experience is inverse of the bandwidth
Loss Rate
- % of all transmitted packets that are lost
- Loss of packets could be due to
- delay bound variation – inconsistent maximum transmission delay making packets arrive too late for real time system
- delay jitter bound variation – excessive jitter can exceed what buffer can compensate leading to loss of packets
- buffer overflow – in case of burts or variations incoming data the buffer may overrun capacity leading to loss of packets
- data corruption – unintentional changes to data during transmission say due to noise, hardware faults
Blocking probability
- probability a connection is refused by admission control mechanism
- it may happen due to heavy load or lack of resources
Real time traffic
- Real time traffic is the data generated by a source for real time transmission over a network
- 3 types of Real time traffic
- Constant bit rate
- constant data generated by source
- example – data generated by sensor
- fixed message sizes are generated over fixed intervals
- Variable bit rate
- different rate of data generated at different time by source
- common VBR traffic is when transmission switches between fixed size packets and idle time
- example – audio signals generate from speech where during periods of silence there is no traffic
- Sporadic rate
- data generate in burst followed by long period of silence
- its a special case of VBR traffic
- example – fire alarm system
- when fire detected large messages are generated
- when fire is extinguished then it will become idle
- Constant bit rate
Types of Real time networks
- Bus network
- single line for communication
- used in small embedded systems
- example: CAN bus
- Switched network
- switches to connect nodes allowing multiple simultaneous paths
- example: ethernet
- basic model of real time communication
- nodes and switches – multiple nodes connected via switches providing simultaneous paths
- real time traffic flows – data organized into flows each with its own timing constraints
- scheduling and resource allocation – flow transmission scheduling to guarantee timing bounds
- buffers, protocols – buffers to hold data temporarily with protocols designed to ensure data is not lost, re-ordered or corrupted
- Ring network
- each node connects to 2 neighbours forming a ring
- data ciruclates around the ring
- Mesh network
- nodes are interconnected often with multiple paths between source and destination
- Wireless network
- used where mobility or ease of installation is required
- Hybrid network
- combines say ethernet (switched network) with wireless sensor branches