4 - Stream Sessions -- Deterministic Network Analysis

download 4 - Stream Sessions -- Deterministic Network Analysis

of 105

Transcript of 4 - Stream Sessions -- Deterministic Network Analysis

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    1/105

    Stream Sessions:Deterministic Network Analysis

    Hongwei Zhanghttp://www.cs.wayne.edu/~hzhang

    Acknowledgement: this lecture is partially based on the slides of Dr. D. Manjunath

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    2/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    3/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    4/105

    Introduction

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    5/105

    Introduction (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    6/105

    Model and notation

    Assume outputqueueing

    time

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    7/105

    Model and notation (contd.)

    Also called non-idling scheduler

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    8/105

    Model and notation (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    9/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    10/105

    Some simple analysis For work-conserving/non-idling schedulers

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    11/105

    Some simple analysis (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    12/105

    Finite buffer: a first look

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    13/105

    Finite buffer: conservation law

    See Exercise 4.1 (page 126 of R0)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    14/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    15/105

    Network calculus

    A view of network calculus: Work with sample paths of a random process.

    Networks see a sample path of a random process, e.g., X(t, )

    Network calculus is a sample path analysis in which the sample path satisfies

    certain properties.

    It can be assumed that these properties are satisfied by all sample paths. Thus

    network calculus or the deterministic analysis is a worst-case analysis.

    An example objective is to obtain X(t)from A(t) and C of a work conserving

    scheduler

    We are also interested in other processes such as D(t)and otherperformance

    parameters such as worst-case latency

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    16/105

    Reichs equation

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    17/105

    Reichs equation (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    18/105

    Reichs equation (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    19/105

    Reichs equation (contd.)

    Combine equations (-1) and (0), we get Reichs Equatoin

    The supremum is achieved when s = v, i.e., the last time

    before t when buffer was empty

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    20/105

    An equation for the departure process D(t)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    21/105

    Interpretation of Reichs Equation

    t

    A(t)

    X(t)A(s)

    timeb

    this line has slope C,and valueA(s) +C.(ts) att

    s t

    A(t)

    X(t)

    D(t)

    time

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    22/105

    Alternative/direct derivation of D(t) equation

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    23/105

    Direct derivation of D(t) (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    24/105

    A convolution operation

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    25/105

    Convolution operation (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    26/105

    Remarks

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    27/105

    Remarks (contd.)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    28/105

    Illustration

    slope rA(t) B(t)s

    t

    slopeC

    t

    slope r

    t

    slopeC

    B(t)

    (B*A)(t)

    B()+A(t-)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    29/105

    Compare * with standard convolution

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    30/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    31/105

    An example

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    32/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    33/105

    Properties of *

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    34/105

    Service curves

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    35/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    36/105

    Example network elements: packetizer

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    37/105

    Example elements: constant rate server

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    38/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    39/105

    Network elements: coder + packetizer

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    40/105

    Network elements in tandem

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    41/105

    Latency rate servers in tandem

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    42/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    43/105

    Delay in a service element

    D

    A

    timet1 ut2

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    44/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    45/105

    Stream traffic, QoS, envelop, regulator

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    46/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    47/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    48/105

    Regulator example: leaky bucket

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    49/105

    LB becomes empty

    buffer becomes empty

    buffer nonempty

    amount of data in the buffer

    departure proces

    time

    s

    LB full

    LB nonempty

    amount of tokens in LB

    Token arrivalprocess

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    50/105

    E(t) = 0 for t < 0

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    51/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    52/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    53/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    54/105

    Sequence of regulators

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    55/105

    An example

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    56/105

    Network performance and designWith envelop E(t)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    57/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    58/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    59/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    60/105

    Otherwise, Cmin is notthe minimum capacity(see book R0)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    61/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    62/105

    Theory applied in practice: an example

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    63/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    64/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    65/105

    Scheduling

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    66/105

    Generalized processor sharing (GPS)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    67/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    68/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    69/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    70/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    71/105

    Virtual time in GPS

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    72/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    73/105

    Arrival, service, departure processes in GPS

    jkd j

    kqueueintopacketarrivingththeofinstantdeparturethe

    )(

    =

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    74/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    75/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    76/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    77/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    78/105

    Implementing a GPS scheduler

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    79/105

    the departure instant will be the serviceinitiation instantfor the next packet inthe same queue as the departing packet

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    80/105

    Packetized GPS

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    81/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    82/105

    Example of PGPS

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    83/105

    Properties of PGPS

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    84/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    85/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    86/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    87/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    88/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    89/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    90/105

    PGPS d WFQ

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    91/105

    PGPS and WFQ

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    92/105

    Envelope of a peak-rate-controlled process shaped by a (, ) regulator; alsoshown is the lower service curve given to the source at WFQ server with min.

    rate c, total link rate C, and max. packet length Lmax

    Outline

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    93/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

    Application to a packet voice example

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    94/105

    Application to a packet voice example

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    95/105

    , upper bound on delay:

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    96/105

    May also use

    worst-case X

    Outline

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    97/105

    Outline

    Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

    RSVP and IntServ

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    98/105

    RSVP and IntServ

    Receiver

    Traffic source

    with shaper

    Packet

    network

    Router

    Router

    Router

    Router

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    99/105

    k= `k110 c C

    LAN

    KK1

    cc

    10

    WAN - LAN router

    max packetlengthL

    (, , R)

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    100/105

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    101/105

    How to compute c in RSVP?

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    102/105

    How to compute c in RSVP?

    Summary

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    103/105

    Summary Events and processes: universal concepts

    Deterministic traffic models and network calculus

    Scheduling

    Application to a packet voice example

    Connection setup: RSVP approach

    Additional reading

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    104/105

    Additional reading

    Yuming Jiang, A Basic Stochastic Network Calculus,

    ACM SIGCOMM06

    Maximum-(virtual)-backlog-centric (m.b.c) stochastic arrival

    curveand stochastic service curve

    Homework #3

  • 7/25/2019 4 - Stream Sessions -- Deterministic Network Analysis

    105/105

    Homework #3 Chapter 4 of R0

    Exercise 4.1 (page 126)

    Problems 4.3, 4.6

    Distribution of points: total = 100

    30 points for Exercise 4.1 and Problem 4.3 each

    40 points for Problem 4.6