Introduction to Real-Time Communications. Real-Time and Embedded Systems (M) Lecture 15

Similar documents
Priority Traffic CSCD 433/533. Advanced Networks Spring Lecture 21 Congestion Control and Queuing Strategies

Chapter -6 IMPROVED CONGESTION CONTROL MECHANISM FOR REAL TIME DATA TRANSMISSION

What Is Congestion? Effects of Congestion. Interaction of Queues. Chapter 12 Congestion in Data Networks. Effect of Congestion Control

Lecture 17: Distributed Multimedia

Network Management & Monitoring

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols

ECE 158A: Lecture 13. Fall 2015

Medium Access Control. IEEE , Token Rings. CSMA/CD in WLANs? Ethernet MAC Algorithm. MACA Solution for Hidden Terminal Problem

Reminder: Datalink Functions Computer Networking. Datalink Architectures

Media Access Control. Networked Systems (H) Lecture 5

IEEE , Token Rings. 10/11/06 CS/ECE UIUC, Fall

Communications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall

DISTRIBUTED REAL-TIME SYSTEMS

Contention Protocols and Networks

Local Area Networks (LANs) SMU CSE 5344 /

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

Multiple Access Protocols

Introduction to Real-time Systems. Advanced Operating Systems (M) Lecture 2

Problem Set Name the 7 OSI layers and give the corresponding functionalities for each layer.

Basics (cont.) Characteristics of data communication technologies OSI-Model

Quality of Service (QoS)

QUALITY of SERVICE. Introduction

COMP 249 Advanced Distributed Systems Multimedia Networking. Performance of Multimedia Delivery on the Internet Today

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

Ethernet. Introduction. CSE 3213 Fall 2011

2 Network Basics. types of communication service. how communication services are implemented. network performance measures. switching.

Episode 4. Flow and Congestion Control. Baochun Li Department of Electrical and Computer Engineering University of Toronto

ETSF10 Internet Protocols Transport Layer Protocols

Latency on a Switched Ethernet Network

AirTight: A Resilient Wireless Communication Protocol for Mixed- Criticality Systems

Chapter -5 QUALITY OF SERVICE (QOS) PLATFORM DESIGN FOR REAL TIME MULTIMEDIA APPLICATIONS

Latency on a Switched Ethernet Network

DiffServ Architecture: Impact of scheduling on QoS

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert

CHAPTER 3 EFFECTIVE ADMISSION CONTROL MECHANISM IN WIRELESS MESH NETWORKS

Review of Topology and Access Techniques / Switching Concepts

CS321: Computer Networks Congestion Control in TCP

Wireless Challenges : Computer Networking. Overview. Routing to Mobile Nodes. Lecture 24: Mobile and Wireless

CARRIER SENSE MULTIPLE ACCESS (CSMA):

Department of Electrical and Computer Systems Engineering

TDDD82 Secure Mobile Systems Lecture 6: Quality of Service

Episode 5. Scheduling and Traffic Management

CS 716: Introduction to communication networks. - 8 th class; 17 th Aug Instructor: Sridhar Iyer IIT Bombay

Lecture 14: Congestion Control"

Unit 2 Packet Switching Networks - II

Introduction to Quality of Service

What Is Congestion? Computer Networks. Ideal Network Utilization. Interaction of Queues

ECEN 5032 Data Networks Medium Access Control Sublayer

High Level View. EE 122: Ethernet and Random Access protocols. Medium Access Protocols

Congestion Control in Communication Networks

Worst-case Ethernet Network Latency for Shaped Sources

Convergence of communication services

Homework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca

QoS metrics and requirements

Announcements / Wireless Networks and Applications Lecture 9: Wireless LANs Wireless. Regular Ethernet CSMA/CD.

4 rd class Department of Network College of IT- University of Babylon

Stop-and-Go Service Using Hierarchical Round Robin

Congestion in Data Networks. Congestion in Data Networks

Network Management & Monitoring Network Delay

Shared, Multi-Hop Networks and End-to-End Arguments

Real-Time Protocol (RTP)

Quality of Service II

Comparison of the Quality of Service (QoS) on the IEEE e and the g Wireless LANs

Interface The exit interface a packet will take when destined for a specific network.

Can Congestion-controlled Interactive Multimedia Traffic Co-exist with TCP? Colin Perkins

EE 122: Ethernet and

Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015

different problems from other networks ITU-T specified restricted initial set Limited number of overhead bits ATM forum Traffic Management

ECE 333: Introduction to Communication Networks Fall Lecture 19: Medium Access Control VII

Wireless Communications

Systems. Roland Kammerer. 10. November Institute of Computer Engineering Vienna University of Technology. Communication Protocols for Embedded

Lecture 5: Performance Analysis I

CSE 461. TCP and network congestion

Communication and Networks. Problems

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

ECE453 Introduction to Computer Networks. Broadcast vs. PPP. Delay. Lecture 7 Multiple Access Control (I)

Chapter 6: Congestion Control and Resource Allocation

Communication Fundamentals in Computer Networks

Name Student ID Department/Year. Final Examination. Introduction to Computer Networks Class#: Fall :20-11:00 Tuesday January 13, 2004

Protocol Overview. TCP/IP Performance. Connection Types in TCP/IP. Resource Management. Router Queues. Control Mechanisms ITL

Wireless Networks (CSC-7602) Lecture 8 (15 Oct. 2007)

End-to-End Mechanisms for QoS Support in Wireless Networks

Efficient and Accurate Ethernet Simulation

Congestion Control. Tom Anderson

Real-Time (Paradigms) (47)

Multimedia Networking

ANALYSIS OF THE CORRELATION BETWEEN PACKET LOSS AND NETWORK DELAY AND THEIR IMPACT IN THE PERFORMANCE OF SURGICAL TRAINING APPLICATIONS

Transport Layer Protocols TCP

Efficient and Accurate Ethernet Simulation

QoS provisioning. Lectured by Alexander Pyattaev. Department of Communications Engineering Tampere University of Technology

G Robert Grimm New York University

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 21: Network Protocols (and 2 Phase Commit)

CS 716: Introduction to communication networks. - 9 th class; 19 th Aug Instructor: Sridhar Iyer IIT Bombay

Digital Asset Management 5. Streaming multimedia

Lecture 8 The Data Link Layer part I. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Links. CS125 - mylinks 1 1/22/14

Lecture 14: Performance Architecture

Distributed Systems COMP 212. Lecture 15 Othon Michail

Computer Networking. Queue Management and Quality of Service (QOS)

Transcription:

Introduction to Real-Time Communications Real-Time and Embedded Systems (M) Lecture 15

Lecture Outline Modelling real-time communications Traffic and network models Properties of networks Throughput, delay and jitter Examples Clock skew Congestion and loss Controller area networks Ethernet Material corresponds to chapter 11 of Liu s book

Real Time Communications In most data communications, important that data arrives reliably Would like it to be fast, but prefer reliable E.g. web, email, p2p, etc. Often characterised as elastic applications In real time communications it is important that the message arrives in a timely manner Timeliness may be more important than reliability Messages may have priority Examples: A drive by wire system in a car Packet voice and telephony applications

Modelling Real Time Traffic Assume a packet-based network Real-time traffic on circuit switched network trivial after connection setup Traffic falls into two categories: Synchronous periodic flows Produced and consumed in a continuous basis, according to some schedule Generally require some performance guarantee Can be generated by periodic tasks Fixed rate ( isochronous ) flows (e.g. sensor data, speech) Characterise by inter-packet spacing, message length, reception deadline Can be generated by sporadic tasks Variable rate flows (e.g. MPEG-2 video, control traffic) Characterise by average throughput + maximum burst size Aperiodic (asynchronous) messages No deadline, best effort delivery, but want to keep delays small Characterise by average delivery time

Modelling Sources of Timing Variation Ideally the network delivers messages to receiver with no delay, preserving timing In reality there is: Queuing delay at sender Network not always ready to accept a packet when it becomes available; data may be queued if produced faster than the network can deliver it Queuing delay at receiver Application not always ready to accept packets arriving from network Network may deliver data in bursts Queuing delay in the network Due to cross-traffic or bottleneck links Network transit time Fixed propagation delay

Model of Hosts TPH = Transport Protocol Handler NACH = Network Access Control Handler Need to model timing of messages sent between applications Packet Generation Processes TPH Applications TPH 3 Transport Layer 1 NACH Network Interface NACH Need to model sources of latency: 1) Queuing delay at sender 2) Network transit time 3) Queuing delay at receiver 2 Communication Network

Model of Packet Switched Networks Host Host Host Packet switched network with n 0 switches Host Links have constant propagation delay 1 1 Switches queue packets for transmission if output link busy (additional variable delay) Choice of job scheduling algorithm on the output link is critical for real time traffic Input buffer 2 3 4 2 3 4 Output queues

Performance Metrics and Constraints From these models, derive performance metrics: Throughput and delay Jitter and buffer requirements Miss rates, when jitter causes a deadline to be missed Packet loss and invalid rates Characterise traffic and network according to metrics to schedule communications Need to meet application timing constraints

Throughput, Delay and Jitter Sender Original packet stream Router The throughput is a measure of the number of packets that the network can deliver per unit time The delay (latency) is time taken to deliver a packet Fixed minimum propagation delay due to speed of light Variation due to queuing on path The jitter is variance of the delay Constant inter-packet spacing Multi-Hop Packet Network Network induces timing jitter into the media stream Router Received packet stream Variable inter-packet spacing Receiver Throughput, delay and jitter vary according to router scheduling algorithms Possible to derive bounds for delay/jitter in some cases Lecture 16

Throughput and Delay Clear that throughput and delay depend on the capacity of each link, and on the queuing delay at each hop Queuing delay will vary based on the traffic Throughput variation may cause queues to build up at bottleneck links Leads to packet pair techniques; see S. Keshav, A Control-theoretic Approach to Flow Control, SIGCOMM 2001. Input Traffic Queue occupancy Output Traffic Cross traffic will also affect queue occupancy Throughput may be limited by an intermediate link, which cannot be directly observed by sender and receiver How to tell if the throughput is limited by the network, or by other traffic using the network? Cannot know if capacity available, unless requirements signalled in advance

Throughput and Delay Delay matters for some applications, but not others Interactive applications need low delay Telephony, video conferencing and games Control applications often need low delay in the sensor controller actuator loop Limiting factor often propagation delay; queuing delay an important and controllable factor Non-interactive applications are less delay sensitive Video on demand, TV and radio distribution Throughput typically very important Need to sustain a certain rate, to support the application May wish to use scheduling algorithms to prioritise which packets are to be sent, and guarantee throughput

Jitter and Buffering Requirements Delay jitter is the variation in delay across a network path For isochronous traffic, often talk about absolute value and standard deviation of packet inter-arrival time Assumes we can characterise the jitter see examples later Jitter imposes requirement for receiver buffering Isochronous applications must be fed data correctly spaced Buffer Variable inter-packet spacing Constant inter-packet spacing Need buffer to smooth and reconstruct timing Larger jitter implies more buffering is needed Packet scheduling algorithms can bound jitter

Jitter and Miss Rate Frequency of occurrence Ideal Distribution Packets discarded due to late arrival Gaussian distribution Actual distribution Packet interarrival time Minimum network transit time Want to characterise jitter distribution Hope for something approximating a Gaussian distribution simple statistics to derive the miss rate Fraction of packets lost due to jitter Actual distribution will be more complex

Clock Skew and Synchronisation Sender and receiver are typically widely distributed Clocks are often free-running and unsynchronised Results in a steady increase or decrease in the inter-packet spacing observed at the receiver Problematic for isochronous applications: Queues can build up in the receiver or in intermediate systems Eventually buffer space will be exceeded Some data will be dropped Queues can empty in the receiver Initial queue created, to buffer for jitter Sender is slightly slower than receiver Queue slowly empties, eventually there is no data to process How to resolve? May be able to tune clock frequency to match May have to discard/generate data to compensate Application knowledge needed

Congestion and Loss Assumed that no traffic is ever blocked or lost because there is no space in the ready queue when it becomes available for execution Usually valid for operating systems and LAN communication Not valid for many wide-area communication systems Too expensive to provision buffering in all routers Provision for typical load plus a safety factor, not worst case Queues may overflow, hence packets are dropped The loss rate gives the fraction of packets that are dropped Patterns of loss may also be important: affected by packet scheduling algorithms Packets may also be dropped due to corruption or other errors Not discussed further, since not affected by scheduling

Congestion and Loss Implication: not only may we cause overloads and congestion, so might the cross traffic Temporary congestion will cause queuing delays Persistent congestion will result in queues that stay full, hence packets may be lost How to avoid this? Control the amount of traffic at a bottleneck link Applications need to signal their requirements Network needs to perform admission control Or prioritise traffic, to give preference to important flows What scheduling algorithm to use? May allow real-time traffic, but discard best effort data traffic when the network is overloaded

Visualising Disruption to Packet Timing Arrival Time 45º line: clocks are running at the same rate Queuing jitter causes variation in inter-packet arrival time Discontinuity due to route change Non-45º slope shows presence of clock skew Transit Time Transmission Time

Characterisation of Networks Real-world performance constraints force us to characterise the timing behaviour of a network Prove/demonstrate that throughput, latency, and jitter are within appropriate bounds for the application Some network technologies allow this, others do not Examples: CAN, Ethernet

Example: Controller Area Networks Shared serial bus, send at 1Mbps, maximum bus length is 50 metres All stations hear transmissions within a fraction of a bit time Connections wired together as a logical AND function Stations only see a 1 bit on the bus if all transmitters are sending a 1 bit Packets start with an ID, then control and data Slotted CSMA/CD: wait until start of slot, then begin to send with the ID field, but: Stop if you hear a 0 on the bus when you are sending a 1 Packet with smallest ID is sent first; priority network protocol Controller Area Network Bus ID Control Data Start of Packet

Example: Controller Area Networks Widely used in automotive systems, for example Allows communications to be scheduled using the fixed priority scheduling algorithms we have discussed Look at the communications patterns, assign deadlines to each message exchange Use deadline monotonic scheduling to assign priorities 11 bit ID field, implies 2048 priority levels Treat sporadic messages as periodic messages, according to worse case assumptions Waste capacity, but ensures schedulability The CAN will not interrupt a message once it has started Low utilisation, but can prove that all messages will be delivered before their deadlines and calculate jitter Standard schedulability analysis, as for any set of jobs

Example: Ethernet Recall that Ethernet uses CSMA/CD with exponential back off Try to transmit, listening for collision If a collision occurs, stop sending, wait before retry Random binary exponential back-off After i collisions back-off by up to 2i slots, randomly chosen Potentially unbounded delay on busy network Cannot schedule transmissions to avoid collision No prioritisation of messages Implications: Cannot easily reason about timing properties Difficult to schedule messages to ensure timely delivery

Summary What is real time communication Factors that affect real time communication Throughput, delay and jitter Clock skew Congestion and loss Examples of networks and their timing properties Some networks provide timing guarantees, others do not