QoS Scheduling

  • View
    225

  • Download
    3

Embed Size (px)

Text of QoS Scheduling

  • 8/13/2019 QoS Scheduling

    1/132

    Quality of Service & Scheduling

    C. Pham

    Univ. Lyon 1

    Slides mostly taken from Shivkumar Kalyanaraman which are based in part

    on slides of Ion Stoica, Jim Kurose, Srini Seshan, Srini Keshav

  • 8/13/2019 QoS Scheduling

    2/132

    Multimedia, real time on the Internet

    Real-time applications Interactive applications are sensitive to packet delays

    (telephone)

    Non- interactive applications can adapt to a wider range

    of packet delays (audio, video broadcasts) Guarantee of maximum delay is useful

    ArrivalOffset

    Graph

    Playout

    Point

    Sampled Audio

    Playout Buffer must be

    small for interactiveapplications

  • 8/13/2019 QoS Scheduling

    3/132

    Time-constrained applications

    Elastic applications

    Interactive data transfer (e.g. HTTP, FTP)

    Sensitive to the average delay, not to the distribution tail

    Bulk data transfer (e.g. mail and news delivery)

    Delay insensitive

    Best effort works well

    Document

    Document is only useful

    when it is completely

    received. This means

    average packet delay is

    important, not

    maximum packet delay.Document

  • 8/13/2019 QoS Scheduling

    4/132

    Discussion

    What is the problem? Different applications have different delay, bandwidth,

    and jitter needs

    Some applications are very sensitive to changing network

    conditions: the packet arrival time distribution isimportant

    Solutions

    Make applications adaptive

    Build more flexibility into network

  • 8/13/2019 QoS Scheduling

    5/132

    Why Better-than-Best-Effort (QoS)?

    To support a wider range of applications Real-time, Multimedia, etc

    To develop sustainable economic models and new

    private networking services

    Current flat priced models, and best-effort services donot cut it for businesses

  • 8/13/2019 QoS Scheduling

    6/132

    Qualit y of Ser vice: What is it ?

    Multimedia applications:network audio and video

    network provides

    application with level ofperformance needed forapplication to function.

    QoS

  • 8/13/2019 QoS Scheduling

    7/132

  • 8/13/2019 QoS Scheduling

    8/132

    What is QoS (contd) ?

    These parameters can be measured at severalgranularities:

    micro flow, aggregate flow, population.

    QoS considered better if a) more parameters can be specified

    b) QoS can be specified at a fine-granularity.

    QoS spectrum:

    Best Effort Leased Line

  • 8/13/2019 QoS Scheduling

    9/132

    I mpr oving QOS in I P Net wor ks

    IETF groups are working on proposals to providebetter QOS control in IP networks, i.e., goingbeyond best effort to provide some assurance forQOS

    Work in Progress includes RSVP, Differentiated

    Services, and Integrated Services Simple model

    for sharing andcongestionstudies:

  • 8/13/2019 QoS Scheduling

    10/132

    Pr inciples f or QOS Guar ant ees

    Consider a phone application at 1Mbps and an FTPapplication sharing a 1.5 Mbps link.

    bursts of FTP can congest the router and cause audiopackets to be dropped.

    want to give priority to audio over FTP

    PRI NCI PLE 1: Marking of packets is needed f orrouter to distinguish between different classes;and new router policy to treat packetsaccordingly

  • 8/13/2019 QoS Scheduling

    11/132

    Pr inciples f or QOS Guar ant ees (mor e)

    Applications misbehave (audio sends packets at a rate higherthan 1Mbps assumed above);

    PRINCIPLE 2: provide protection (isolation) for one classfrom other classes

    Require Policing Mechanisms to ensure sources adhere tobandwidth requirements; Marking and Policing need to be

    done at the edges:

  • 8/13/2019 QoS Scheduling

    12/132

    Pr inciples f or QOS Guar ant ees (mor e)

    Alternative to Marking and Policing: allocate a setportion of bandwidth to each application flow; canlead to inefficient use of bandwidth if one of theflows does not use its allocation

    PRI NCI PLE 3: While providing isolat ion, it is

    desirable to use resources as efficiently aspossible

  • 8/13/2019 QoS Scheduling

    13/132

    Pr inciples f or QOS Guar ant ees (mor e)

    Cannot support traffic beyond link capacity PRINCIPLE 4: Need a Call Admission Process;

    application flow declares its needs, network mayblock call if it cannot satisfy the needs

  • 8/13/2019 QoS Scheduling

    14/132

    Summary

  • 8/13/2019 QoS Scheduling

    15/132

    Fundamental Problems

    In a FIFO service discipline, the performanceassigned to one flow is convoluted with the arrivalsof packets from all other flows!

    Cant get QoS with a free-for-all

    Need to use new scheduling disciplines which provide

    isolation of performance from arrival rates ofbackground traffic

    B

    Scheduling DisciplineFIFO

    B

  • 8/13/2019 QoS Scheduling

    16/132

    How t o upgr ade t he I nt er net f or QoS?

    Approach: de-couple end-system evolution fromnetwork evolution

    End-to-end protocols: RTP, H.323 etc to spur thegrowth of adaptive multimedia applications

    Assume best-effort or better-than-best-effort clouds

    Network protocols: IntServ, DiffServ, RSVP,MPLS, COPS

    To support better-than-best-effort capabilities at thenetwork (IP) level

  • 8/13/2019 QoS Scheduling

    17/132

    CONGESTI ON CONTROL

  • 8/13/2019 QoS Scheduling

    18/132

    La congestion de plus prs

    Une congestion peut survenir lorsque trop depaquets sont injects dans le rseau et prennentdes routes similaires. Il y a alors augmentation du

    temps d'attente et risque perdre des paquets.

    Une congestion peut aussi survenir du fait de la

    diffrence de puissance de traitement d'unrouteur l'autre. L'agrgation du trafic est unesource de congestion importante et difficile matriser dans les rseaux.

    10 Mbps

    100 Mbps

    1.5 Mbps

  • 8/13/2019 QoS Scheduling

    19/132

  • 8/13/2019 QoS Scheduling

    20/132

  • 8/13/2019 QoS Scheduling

    21/132

  • 8/13/2019 QoS Scheduling

    22/132

    Congestion: A Close-up View

    kneepointafter which throughput increases

    very slowly

    delay increases fast

    cliffpointafter which throughput starts to

    decrease very fastto zero (congestioncollapse)

    delay approachesinfinity

    Note (in anM/M/1

    Load

    Load

    knee cliff

    congestion

    collapse

    packetloss

  • 8/13/2019 QoS Scheduling

    23/132

    Congestion Control vs. Congestion

    Avoidance

    Congestion control goal stay left of cliff

    Congestion avoidance goal stay left of knee

    Right of cliff:

    Congestion collapse

    Load

    knee cliff

    congestion

    collapse

  • 8/13/2019 QoS Scheduling

    24/132

    Le contrle de congestion: principes

    Ractif lorsque la congestion est dtecte, informer les noeuds en

    amont et en aval,

    puis, marquer des paquets, rejeter des paquets, traiter lespaquets prioritaires.

    Prventif diffusion priodique d'informations d'tats (taille des buffers)

    contrle continue de la source (Leacky Bucket, Token Bucket...), contrle de flux, contrle d'admission.

    De bout en bout

    pas de retour du rseau

    la congestion est estime grce l'observation des pertes etdes dlais de bout-en-bout

    Assist par le rseau bit d'annonce de congestion (SNA, DECbit, TCP/ECN, FR, ATM)

  • 8/13/2019 QoS Scheduling

    25/132

  • 8/13/2019 QoS Scheduling

    26/132

    Pr oblme dun rseau t r op f aible

  • 8/13/2019 QoS Scheduling

    27/132

    Le cont r le de f lux pour le r seau

    Ex: principe du contrle de congestion dans TCP chaque metteur maintient une deuxime fentre de

    congestion pour le rseau,

    la quantit d'information qu'il est autoris transmettrepar anticipation est le minimum des 2 fentres

    initialement, la fentre de congestion est mise K

    octets, l'metteur envoie les donnes et arme untemporisateur,

    si les donnes sont acquittes avant l'expiration dutemporisateur, on augmente K, et ainsi de suite jusqu' (i)l'expiration d'un temporisateur ou, (ii) la taille de lafentre du rcepteur a t atteinte.

    C'est le principe du "slow start"

  • 8/13/2019 QoS Scheduling

    28/132

  • 8/13/2019 QoS Scheduling

    29/132

    Le cont r le de congest ion dans TCP

    seuil initial a 64K, on augmente K exponentiellement avant et

    linairement aprs (congestion avoidance),

    si perte, divise le seuil par 2, et on recommence avec K=1

  • 8/13/2019 QoS Scheduling

    30/132

    Ut ilisat ion du Round Tr ip Time

    1

    One RTT

    One pkt time

    0R

    2

    1R

    3

    4

    2R

    567

    83R

    91011

    1213

    1415

    1

    2 3

    4 5 6 7

  • 8/13/2019 QoS Scheduling

    31/132

    Slow Start Sequence Plot

    Time

    Sequence No

    .

    ..

    La fentre decongestion double

    chaque aller/retour

  • 8/13/2019 QoS Scheduling

    32/132

    TCP Reno (Jacobson 1990)

    SStime

    window

    CA

    SS: Slow Start

    CA: Congestion Avoidance Fast retransmission/fast recovery

  • 8/13/2019 QoS Scheduling

    33/132

    TCP Vegas (Brakmo & Peterson 1994)

    SStime

    window

    CA

    Converges, no retransmission

    provided buffer is large enough