Common network/protocol functions

Similar documents
Improving QOS in IP Networks. Principles for QOS Guarantees. Principles for QOS Guarantees (more) Principles for QOS Guarantees (more)

Chapter 7 outline. 7.5 providing multiple classes of service 7.6 providing QoS guarantees RTP, RTCP, SIP. 7: Multimedia Networking 7-71

16/5-05 Datakommunikation - Jonny Pettersson, UmU 2. 16/5-05 Datakommunikation - Jonny Pettersson, UmU 4

Mixer/Translator VOIP/SIP. Translator. Mixer

Overview. QoS, Traffic Engineering and Control- Plane Signaling in the Internet. Telematics group University of Göttingen, Germany. Dr.

6.6 Scheduling and Policing Mechanisms

Sources: Chapter 6 from. Computer Networking: A Top-Down Approach Featuring the Internet, by Kurose and Ross

CS640: Introduction to Computer Networks. Why a New Service Model? Utility curve Elastic traffic. Aditya Akella. Lecture 20 QoS

Integrated Service (IntServ) versus Differentiated Service (Diffserv)

QoS Parameters. Quality of Service in the Internet. Traffic Shaping: Congestion Control. Keeping the QoS

Internet Quality of Service

Quality of Service in the Internet. QoS Parameters. Keeping the QoS. Traffic Shaping: Leaky Bucket Algorithm

Lecture 16: Quality of Service. CSE 123: Computer Networks Stefan Savage

QoS in IP networks. Computer Science Department University of Crete HY536 - Network Technology Lab II IETF Integrated Services (IntServ)

Quality of Service versus Fairness. Inelastic Applications. QoS Analogy: Surface Mail. How to Provide QoS?

CS/ECE 438: Communication Networks. Internet QoS. Syed Faisal Hasan, PhD (Research Scholar Information Trust Institute) Visiting Lecturer ECE

MULTIMEDIA NETWORKING

Motivation. QoS Guarantees. Internet service classes. Certain applications require minimum level of network performance:

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

Analysis of IP Network for different Quality of Service

Real-time apps and Quality of Service

Multimedia Requirements. Multimedia and Networks. Quality of Service

CS 268: Lecture 13. QoS: DiffServ and IntServ

How To Provide Qos Based Routing In The Internet

4 Internet QoS Management

Quality of Service (QoS) EECS 122: Introduction to Computer Networks Resource Management and QoS. What s the Problem?

The network we see so far. Internet Best Effort Service. Is best-effort good enough? An Audio Example. Network Support for Playback

Network management and QoS provisioning - QoS in the Internet

A Review on Quality of Service Architectures for Internet Network Service Provider (INSP)

Distributed Systems 3. Network Quality of Service (QoS)

Network Management Quality of Service I

Quality of Service (QoS)) in IP networks

This lecture discusses the main principles underlying Internet QoS. We don t focus

18: Enhanced Quality of Service

Protocols with QoS Support

Investigation and Comparison of MPLS QoS Solution and Differentiated Services QoS Solutions

QoS : Computer Networking. Motivation. Overview. L-7 QoS. Internet currently provides one single class of best-effort service

Management of Telecommunication Networks. Prof. Dr. Aleksandar Tsenov

A Preferred Service Architecture for Payload Data Flows. Ray Gilstrap, Thom Stone, Ken Freeman

6.5 Quality of Service

"Charting the Course to Your Success!" QOS - Implementing Cisco Quality of Service 2.5 Course Summary

Faculty of Engineering Computer Engineering Department Islamic University of Gaza Network Chapter# 19 INTERNETWORK OPERATION

Technology Overview. Class of Service Overview. Published: Copyright 2014, Juniper Networks, Inc.

IMPLEMENTING CISCO QUALITY OF SERVICE V2.5 (QOS)

Improving Quality of Service

Quality of Service in ATM Networks

QUALITY OF SERVICE INTRODUCTION TO QUALITY OF SERVICE CONCEPTS AND PROTOCOLS

Implementing Cisco Quality of Service QOS v2.5; 5 days, Instructor-led

5 Performance Management for Web Services. Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology.

Does reality matter?: QoS & ISPs

Overview of QoS in Packet-based IP and MPLS Networks. Paresh Shah Utpal Mukhopadhyaya Arun Sathiamurthi

King Fahd University of Petroleum & Minerals Computer Engineering g Dept

Quality of Service for IP Videoconferencing Engineering White Paper

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT COMPUTER NETWORKS

Per-Flow Queuing Allot's Approach to Bandwidth Management

Quality of Service. Traditional Nonconverged Network. Traditional data traffic characteristics:

Integrated Services in the Internet Integrated Services on the Internet

Quality of Service (QoS) on Netgear switches

PART III. OPS-based wide area networks

Quality of Service on the Internet: Evaluation of the IntServ Architecture on the Linux Operative System 1

DOCSIS 1.1 Cable Modem Termination Systems

EXPERIMENTAL STUDY FOR QUALITY OF SERVICE IN VOICE OVER IP

VoIP network planning guide

Scheduling for QoS Management

Lecture 33. Streaming Media. Streaming Media. Real-Time. Streaming Stored Multimedia. Streaming Stored Multimedia

Differentiated Services

ERserver. iseries. Quality of service

ESTIMATION OF TOKEN BUCKET PARAMETERS FOR VIDEOCONFERENCING SYSTEMS IN CORPORATE NETWORKS

Indepth Voice over IP and SIP Networking Course

QoS scheduling. Scheduling algorithms

IP Marking, Metering, and Management

Performance Evaluation of the Impact of QoS Mechanisms in an IPv6 Network for IPv6-Capable Real-Time Applications

Network Layer: Network Layer and IP Protocol

02-QOS-ADVANCED-DIFFSRV

Figure 1: Network Topology

Introduction to Differentiated Services (DiffServ) and HP-UX IPQoS

iseries Quality of service

Highlighting a Direction

Overview : Computer Networking. Components of Integrated Services. Service Interfaces RSVP. Differentiated services

Policing and Shaping Overview

Fiber Channel Over Ethernet (FCoE)

Transport Layer Protocols

APPLICATION NOTE 209 QUALITY OF SERVICE: KEY CONCEPTS AND TESTING NEEDS. Quality of Service Drivers. Why Test Quality of Service?

Optimizing Converged Cisco Networks (ONT)

How To Solve A Network Communication Problem

QoS Strategy in DiffServ aware MPLS environment

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

Description: To participate in the hands-on labs in this class, you need to bring a laptop computer with the following:

Cisco CCNP Optimizing Converged Cisco Networks (ONT)

CS268 Exam Solutions. 1) End-to-End (20 pts)

This topic lists the key mechanisms use to implement QoS in an IP network.

Performance Analysis of Integrated Service over Differentiated Service for Next Generation Internet

IP Quality of Service: Theory and best practices. Vikrant S. Kaulgud

CS 78 Computer Networks. Internet Protocol (IP) our focus. The Network Layer. Interplay between routing and forwarding

Implement a QoS Algorithm for Real-Time Applications in the DiffServ-aware MPLS Network

Announcements. Midterms. Mt #1 Tuesday March 6 Mt #2 Tuesday April 15 Final project design due April 11. Chapters 1 & 2 Chapter 5 (to 5.

#43 D A N T E I N P R I N T. A First Step in the World of IP QoS. Nicolas Simar

Requirements of Voice in an IP Internetwork

VOIP TRAFFIC SHAPING ANALYSES IN METROPOLITAN AREA NETWORKS. Rossitza Goleva, Mariya Goleva, Dimitar Atamian, Tashko Nikolov, Kostadin Golev

Passive Queue Management

Transcription:

Common network/protocol functions Goals: Identify, study common architectural components, protocol mechanisms Synthesis: big picture Depth: Important topics not covered in introductory courses Overview: Signaling State Multiplexing / Resource Allocation Randomization Indirection Service location Network virtualization with slides from Leon-Garcia and Widjaja, Shenker and Stoica 1

Multiplexing Multiplexing: Sharing resource(s) among users of the resource. Users Resources In this lecture: The Resources are Bandwidth (Link Capacity) Queues (Buffers) The Users are Phone Calls TCP/UDP flows, packets Other types of resources: CPU Storage Frequency spectrum and other types of users? 2

The resources and the users H1 R1 R2 H4 H2 H5 H3 R1 output queue 1.5 Mbps bandwidth H6 3

From Multiplexing to QoS Basic facts of life: Bandwidth is finite. Cannot support traffic demands beyond capacity. 1 Mbps phone R1 R2 FTP server 1.5 Mbps Example: 1Mbps IP phone, FTP share 1.5 Mbps link Bursts of FTP can congest router, cause large delays/audio loss. What s to be done? Move away from the best-effort paradigm. provide Quality of Service (QoS). 4

QoS: What is it? QoS Network provides applications with levels of performance guarantees needed for applications to function. Types of guarantees (service classes) Best-effort (elastic apps) Hard real-time (real-time apps) e.g., bounded loss / delay Soft real-time (tolerant apps) e.g., probabilistic loss / delay How to implement QoS? A set of five principles 5

Principle 1. Traffic/Guarantees specification Two 1Mbps IP phones share 1.5 Mbps link Want applications to specify: 1) How much bandwidth they need, 2) What levels of guarantees they want. 1 Mbps phone 1 Mbps phone R1 1.5 Mbps Traffic/guarantees specification Principle 1 Traffic/guarantees specification (service contract) needed for router to plan whether it can provide certain levels of performance guarantees. R2 6

Principle 2. Traffic classification 1Mbps IP phone, FTP share 1.5 Mbps link Bursts of FTP can congest router, cause audio loss. Want to give priority to audio over FTP. Can FTP server declare how much bandwidth it needs? 1 Mbps phone R1 voice FTP packets R2 FTP server 1.5 Mbps packet marking Principle 2 Packet marking needed for router to distinguish between different classes; and new router policy to treat packets accordingly. 7

Principle 3. Traffic isolation What if applications misbehave (audio sends higher than declared rate)? Want to force source adhere to traffic specification. 1 Mbps phone R1 R2 FTP server 1.5 Mbps link packet policing / shaping Principle 3 Provide protection (isolation) for one class from others. 8

Principle 4. Call admission Bandwidth is finite Cannot support more than available. To provide isolation, some flows have to be sacrificed. 1 Mbps phone R1 R2 1 Mbps phone 1.5 Mbps link Principle 4 Call Admission: network may block call (e.g., busy signal) if it cannot meet needs. 9

Principle 5. Resource sharing Allocating fixed (non-sharable) bandwidth Inefficient if flows don t use it Circuit/packet switching; scheduling 1 Mbps phone R1 1 Mbps logical link R2 FTP server 1.5 Mbps link 0.5 Mbps logical link Principle 5 While providing isolation, it is desirable to use resources as efficiently as possible. 10

Service Classes vs. Principles Traffic / Guarantees Specification Traffic Classification Traffic Isolation Call Admission Resource Sharing Best Effort Yes/No????? Hard real-time Soft real-time?????????? 11

Back to Multiplexing: many dimensions resource unavailability block, drop queue guaranteed statistical reservations on demand shared among class packet burst call per user user granularity Other dimensions? time granularity 12

Outline Scheduling Policing Admission Control General class-based link sharing (multiplexing) Concrete IETF proposals to do things in practice IntServ DiffServ Focus on packet-level multiplexing! 13

Scheduling And Policing Packets Scheduling: choose next packet to send on link. FIFO (first in first out) scheduling: send in order of arrival to queue. Real-world example: Stop sign Discard policy: Tail drop: drop arriving packet RED 14

Scheduling Policies: more Strict Priority scheduling: Transmit highest priority queued packet. Multiple classes, with different priorities Class may depend on marking or other header info, e.g. IP source/dest, port numbers, etc.. Real-world example: Reservations versus walk-ins arrivals 2 1 3 4 5 time packet service 1 3 2 4 5 departures 1 time 3 2 4 5 15

Scheduling Policies: still more Round robin scheduling: Multiple classes Cyclically scan class queues, serving one from each class (if available). Real-world example: 4-way stop (distributed scheduling) 16

Scheduling Policies: still more Weighted Fair Queuing: Generalized Round Robin Each class gets weighted amount of service in each cycle. 17

Excursion: Fairness (1) How to divide a resource fairly? Philosophical question many notions of fairness exist! see also economics, law... (Gini index, Jain s fairness index, etc.) Important concept: max-min fairness Max-Min Fairness A max-min fair scheduler maximizes the minimum rate of any data flow. (First, the smallest rate is maximized, then the second smallest, etc.) 18

Excursion: Fairness (2) Max-min: Can only increase one rate if...?... there is not lower rate which would decrease Is FIFO max-min fair? No, larger flow gets larger share... Is Round Robin max-min fair? In case packets of the flows have same size: yes. Throughput compared to fixed division of resource? Max-min better, allows to exploit bandwidth not used by certain flows 19

Excursion: Fairness (3) Max-Min Algorithm 1. Start with all rates equal to 0 2. Grow all rates together at the same pace, until one or several link capacity limits are hit. The rates for the sources that use these links are not increased any more. 3. Continue increasing the rates for other sources. (All the sources that are stopped have a bottleneck link.) 4. The algorithm continues until it is not possible to increase. When the algorithm terminates, all sources have been stopped at some time and thus have a bottleneck link. 20

Policing Mechanisms Goal: limit traffic to not exceed declared parameters Bits/second Peak rate Average rate Burst size? Time Three commonly-used criteria: (Long term) Average Rate: How many pkts can be sent per unit time (in the long run) crucial question: what is interval length: 100 packets per sec or 6000 packets per min have same average! Peak Rate: e.g., 6000 pkts per min. (ppm) avg.; 15000 ppm peak rate (Max.) Burst Size: max. number of pkts sent consecutively (with no 21 intervening idle)

Leaky Bucket Algorithm Used to police arrival rate + burst size of a packet flow(s) water poured irregularly leaky bucket water drains at a constant rate Leak rate corresponds to long-term rate Bucket depth corresponds to maximum allowable burst arrival 1 packet per unit time Assume constant-length packet Let X = bucket content at last conforming packet arrival Let t a last conforming packet arrival time = depletion in bucket 22

Leaky Bucket Algorithm Arrival of a packet at time t a X = X - (t a - LCT) Depletion rate: 1 packet per unit time Current bucket content X < 0? Interarrival time Yes b = L+I = Bucket Depth I = increment per arrival, nominal interarrival time Non-empty No X = 0 Nonconforming packet Yes X > L? empty arriving packet would cause overflow No X = X + I LCT = t a conforming packet X = value of the leaky bucket counter X = auxiliary variable LCT = last conformance time conforming packet 23

Leaky Bucket Example I = 4 L = 6 Packet arrival Nonconforming Time L+I Bucket content I * * * * * * * * * Non-conforming packets not allowed into bucket & hence not included in calculations Time 24

Policing Mechanisms (more) Token bucket, WFQ combine to provide guaranteed upper bound on delay, i.e., QoS guarantee! arriving traffic token rate, r bucket size, b WFQ D = b/r max per-flow rate, R 25

Admission Control Users watch either one of two movies Star Wars (with the declared parameters) Silence of the Lambs (with the declared parameters) Concrete Problem: How many users can be admitted at a C=100Mbps link such that the delay for each user/movie is less than d=200ms? SW SOTL C=100Mbps 26

Admission Control (Contd.) Peak rate admission control Provides hard-guarantees The formula: Dual Leaky-bucket admission control Provides hard-guarantees The formula: Statistical admission control Provides soft-guarantees, e.g., (no formula here) Average rate admission control Only qualitative guarantees (e.g., delay is always finite) The formula: 27

Admission Control. Numerical Example Multiplexing Gain 28

General Model of Class-based Link Scheduling estimator class 1 class 2 classifier class 3 class 4 scheduler 29

Link sharing among classes The question: Sharing link among classes of packets in times of overload Isolation among classes Sharing between classes when link not fully used. link link flow1 flow2 flow3 NSF ARPA DOE 30

Link Scheduling Framework Each class guaranteed some share (fraction) of bandwidth (over suitable time interval) if needed Use it or lose it: unused bandwidth should be used by others who can use it Under-limit class: used less than guaranteed share Over-limit class: used more than guaranteed share. Not a bad thing if not needed by others! At-limit class Unsatisfied class: has a persistent backlog and is under limit (persistent backlog intentionally not defined) Satisfied: not unsatisfied 31

Link Scheduling Hierarchies link 50% 40% 10% Agency A Agency B Agency C ftp http smtp IP ATM rt nrt 30% 10% 10% 25% 15% 9% 1% Classes may be divided into subclasses, which can then further divide class bandwidth according to link scheduling guidelines 32

Link Scheduling Guidelines A class can continue unregulated if one of the following hold: the class is not overlimit the class has a notoverlimit ancestor at level i, and there are no unsatisfied classes in link sharing structure at levels lower than i Agency A link Agency B Agency C ftp http smtp IP ATM rt nrt 33

Example 1 link legend under limit at limit A B over limit satisfied unsatisfied backlog A1 A2 B1 B2 Q; Which classes need to be regulated? 34

Example 2 link legend under limit at limit A B over limit satisfied unsatisfied backlog A1 A2 B1 B2 Q; Which classes need to be regulated? 35

Example 3 link legend under limit at limit over limit satisfied unsatisfied backlog A1 A2 B1 B2 Q; Which classes need to be regulated? 36

Example 4 link legend under limit at limit over limit satisfied unsatisfied backlog A1 A2 B1 B2 Q; Which classes need to be regulated? 37

Link Sharing Summary Timescales over which persistent backlog and under/over limit defined are crucial Provide rationale basis for determining who is available to be scheduled in a multi-class, multi-objective system (elegantly) Devil is in the details E.g., malicious users, parallel flows... 38

QoS in the Internet. Part I. IETF Integrated Services Architecture for providing QOS guarantees in IP networks for individual application sessions Resource reservation: routers maintain state info (a la VC) of allocated resources, QoS req s Admit/deny new call setup requests: Question: can newly arriving flow be admitted with performance guarantees while not violated QoS guarantees made to already admitted flows? 39

Call Admission Arriving session must: Declare its QOS requirement R-spec: defines the QOS being requested Characterize traffic it will send into network T-spec: defines traffic characteristics Signaling protocol: Needed to carry R-spec and T-spec to routers (where reservation is required) RSVP 40

Intserv QoS: Service models [rfc2211, rfc 2212] Guaranteed service: Worst case traffic arrival: leaky-bucket-policed source Simple (mathematically provable) bound on delay [Parekh 1992, Cruz 1988] arriving traffic token rate, r Controlled load service: A quality of service closely approximating the QoS that same flow would receive from an unloaded network element." bucket size, b WFQ per-flow rate, R D = b/r max 41

Integrated Services Example Install per flow state Sender Receiver 42

Recall RSVP Signaling protocol for establishing per flow (soft) state Carry resource requests from hosts to routers Collect needed information from routers to hosts At each hop Consult admission control and policy module Set up admission state or informs the requester of failure Decouples routing from reservation 43

Integrated Services Example: Data Path Per-flow classification Sender Receiver 44

Integrated Services Example: Data Path Per-flow buffer management Sender Receiver 45

Integrated Services Example Per-flow scheduling Sender Receiver 46

How Things Fit Together Routing Messages Routing RSVP Admission Control Control Plane RSVP messages Data In Forwarding Table Route Lookup Classifier Per Flow QoS Table Scheduler Data Plane Data Out 47

QoS in the Internet. Part II. IETF Differentiated Services Want qualitative service classes behaves like a wire relative service distinction: Platinum, Gold, Silver Scalability: Simple functions in network core, relatively complex functions at edge routers (or hosts) Signaling, maintaining per-flow router state difficult with large number of flows Don t define service classes, provide functional components to build service classes 48

Diffserv Architecture Edge router: Per-flow traffic management Marks packets as in-profile and out-profile b r marking scheduling. Core router: Per class traffic management Buffering and scheduling based on marking at edge Preference given to in-profile packets 49

Edge-router Packet Marking Profile: pre-negotiated rate A, bucket size B Packet marking at edge based on per-flow profile Rate A B User packets Possible usage of marking: Class-based marking: packets of different classes marked differently Intra-class marking: conforming portion of flow marked differently than non-conforming one 50

Classification and Conditioning Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6 6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive 2 bits are currently unused 51

Classification and Conditioning May be desirable to limit traffic injection rate of some class: User declares traffic profile (e.g., rate, burst size) Traffic metered, shaped if non-conforming 52

Forwarding (PHB) PHB result in a different observable (measurable) forwarding performance behavior PHB does not specify what mechanisms to use to ensure required PHB performance behavior Examples: Class A gets x% of outgoing link bandwidth over time intervals of a specified length Class A packets leave first before packets from class B 53

Forwarding (PHB) PHBs being developed: Expedited Forwarding: pkt departure rate of a class equals or exceeds specified rate logical link with a minimum guaranteed rate Assured Forwarding: 4 classes of traffic each guaranteed minimum amount of bandwidth each with three drop preference partitions 54

Have a nice holiday! 55