QoS Architectures in Computer Networks - PowerPoint PPT Presentation

About This Presentation
Title:

QoS Architectures in Computer Networks

Description:

Sender starts the setup of a reservation by sending characteristics and resource ... Once reservation is setup successfully, application can start sending data ... – PowerPoint PPT presentation

Number of Views:56
Avg rating:3.0/5.0
Slides: 93
Provided by: Comp754
Category:

less

Transcript and Presenter's Notes

Title: QoS Architectures in Computer Networks


1
QoS Architectures in Computer Networks
  • Prof. A. Sahoo
  • KReSIT
  • IIT Bombay

2
Introduction
  • For Many Years Internet was primarily used for
    networking research. File transfer, email were
    the most popular application They do not need
    any performance guarantee from underlying
    network.
  • New applications such as VoIP, video
    conferencing, e-commerce apps are sensitive to
    network performance.

3
Introduction (contd)
  • Internet cannot provide any resource guarantees
    the service is best effort
  • Internet does not provide service differentiation
    all packets are treated equal.
  • But applications such as VoIP require low delay,
    jitter and packet loss whereas file transfer app
    can tolerate fair amount of delay and loss. Thus
    there is a need to differentiate between packets
    of such applications.

4
Current State of Internet
  • Uses best-effort service model
  • No guarantee of timeliness or delivery
  • No service discrimination
  • Bandwidth and network congestion problems
  • Unpredictable network response time

5
What is QoS
  • The capability to provide resource assurance and
    service differentiation so that delay, jitter or
    loss sensitive applications can perform
    satisfactorily is often referred to as quality of
    service (QoS).
  • can be provided through relative prioritization
    of resource allocation to different flows/packets
    in the network.

6
Resource Allocation
  • Many problems in the Internet come down to issue
    of resource allocation.
  • Packets get delayed or dropped because network
    resource cannot meet the traffic demands.
  • A network consists of shared resources
    bandwidth, buffer, serving traffic from competing
    users.
  • To support QoS network must allocate resources
    and decide who should get how much resources.

7
Resource Allocation (contd)
  • Current Internet does not support active resource
    allocation.
  • Network treats all packets equally and serves
    them FCFS.
  • Hence current Internet offers best effort
    service.
  • Adequate for some apps (e.g. file transfer), but
    not suitable for realtime apps.

8
Integrated Services (Intserv)
9
Integrated Services
  • Based on per flow resource reservation.
  • Apps must make a reservation before transmitting
    traffic.
  • App characterize its traffic and resource
    requirement.
  • Network uses routing protocol to find a path.
  • A reservation protocol is used to install the
    reservation state along that path.

10
Integrated Services (contd)
  • At each hop admission control checks whether
    sufficient resources are available to accept the
    new reservation.
  • Resource reservation enforced by packet
    classification and scheduling mechanisms.
  • Two new service models were introduced
    guaranteed service and controlled load.
  • Guaranteed service provides deterministic worst
    case delay
  • Controlled load provides less firm guarantee
    its close to a lightly loaded best-effort
    network.

11
Integrated Services (contd)
  • Overhead of setting up reservation is high.
  • Scalability problem Backbone will have a large
    number of flows and keeping flow information is
    not feasible.

12
Basic Approach
  • A set of mechanisms and protocols is used for
    making explicit resource reservation.
  • To receive performance guarantee from the network
    resource reservation must be set up before the
    application can start transmitting packets.

13
Basic Approach (Contd)
  • Sender starts the setup of a reservation by
    sending characteristics and resource requirement
    of the flow.
  • The network can accept the new application flow
    only if sufficient resource is there.
  • Once reservation is setup successfully,
    application can start sending data packets.

14
Key Components
QoS routing agent
Admission control
Reservation setup agent
Resource reservation table
Control plane
Flow identification
Packet scheduler
Data plane
15
Key Component (contd)
  • Control Plane sets up resource reservation.
  • Data plane forwards data packets based on
    reservation state.
  • To setup reservation, app first characterizes its
    traffic flow and specifies QoS requirements
    referred to as flow specification
  • The reservation setup request is then sent to the
    network.

16
Key Component (contd)
  • Router upon getting the request, interacts with
    QoS routing agent to find the next hop.
  • It then coordinates with the admission control
    module to determine if there are sufficient
    resources to meet the requested resources.
  • Once reservation set up is successful, the
    information for the reserved flow is installed
    into the resource reservation table.
  • Info. in the resource reservation table is used
    to configure flow identification module and the
    packet scheduling module in the data plane.

17
Route Selection
  • IntServ does not specify any route selection of
    its own.
  • It relies on existing routing protocols to
    forward its control packets further.
  • Obviously a more efficient routing protocol which
    can find a path that is likely to have sufficient
    resources is desired.

18
Reservation Setup
  • To setup reservation a reservation set up
    protocol is needed that goes hop by hop along the
    path to install the reservation state in the
    routers.
  • The reservation protocol must also deal with
    changes in the network topology.
  • In IntServ, RSVP has been developed as the
    resource reservation protocol.

19
Admission Control
  • In order to provide guaranteed resources for
    reserved flows, a network must monitor its
    resource usage and admit a new flow only if it
    has sufficient resource.
  • It has two functions to determine if a new flow
    reservation can be set up based on the admission
    control policies and to monitor and measure the
    available resources.

20
Flow Identification
  • Router must examine every incoming packet and
    decide whether the packet belongs to one of the
    reserved flows.
  • IP flow is identified by src addr, dest addr,
    proto ID, src port, dst port five-tuple.
  • These five fields of the incoming packet is
    compared against the five-tuple of all the flows
    in the reservation table for flow identification.

21
Packet Scheduling
  • Packet scheduler responsible for resource
    allocation
  • Directly affects delay, jitter and packet loss
  • Primary task is to select a packet to transmit
    when outgoing link is ready such that the QoS
    promised to flows is provided

22
Service Models
  • Describe interface between the network and its
    users.
  • IntServ has standardized two basic service
    models
  • Guaranteed service
  • Controlled load service

23
Flow Specification
  • A service contract that specifies the traffic
    that the source will send
  • If application violates the contract then it may
    not get the QoS expected.
  • This is done by policing the traffic to ensure
    that it conforms to its traffic description.

24
Flow characterization
  • Peak rate highest rate at which a source can
    generate traffic.
  • Can be calculated from packet size and the
    spacing between two packets.
  • Average rate The avg. transmission rate over a
    time interval.
  • Typically calculated with a moving time window.
  • Burst The max amount of data that can be
    injected at peak rate.

25
Flow specification (contd)
  • In IntServ, traffic is described in terms of
    leaky bucket parameters.
  • It has two parameters token arrival rate r and
    bucket depth b.
  • Token gets into bucket at the rate r and packet
    is sent only if there are enough tokens.
  • When a packet is sent, tokens equal to the packet
    size is removed from the bucket.

26
Guaranteed Service
  • Provides guaranteed bandwidth and strict bounds
    for delay.
  • Intended for apps that require highest assurance
    on bw and delay mission critical apps,
    intolerant playback apps.
  • Can be viewed as a virtual circuit with
    guaranteed bw.
  • Provides bounds on maximal queuing delay.

27
Controlled load service
  • Strict bw assurance and delay bound comes at a
    price resources have to be reserved for the
    worst case.
  • For some apps a service model with less strict
    guarantees and lower cost would better serve
    their needs.
  • End-to-end behavior somewhat vague.
  • A very high percentage of packets will be
    successfully delivered by the network to the
    receivers.
  • The transit delay experienced by a very high
    percentage of packets will not greatly exceed min
    delay.

28
RSVP
  • A resource reservation protocol defined under
    IntServ.
  • Used by hosts to communicate service requirements
    to the network and by routers in the network to
    establish reservation state along a path

29
Basic Features
  • Simplex Reservation
  • Makes reservation only in one direction.
  • Treats sender as logically distinct from a
    receiver
  • For two way communication, the two ends must
    establish reservation for both directions.
  • Receiver Oriented
  • Receivers of a flow initiates and maintains the
    resource reservation.

30
Basic Features (Contd)
  • Routing Independent
  • Designed to operate with current and future
    unicast and multicast routing protocols
  • The path for a flow is done separately by routing
    protocols
  • Policy Independent
  • RSVP transports and maintains traffic control and
    policy control parameters that are opaque to RSVP
  • Control params are passed to relevant control
    modules for processing.

31
Basic Features (Contd)
  • Soft State
  • RSVP maintains soft states providing graceful
    support for dynamic membership changes and
    automatic adaptation to routing changes.
  • Reservation state has a timer associated with the
    state. When timer expires, the state is
    automatically deleted.
  • RSVP periodically refreshes the reservation state
    to maintain the state along the paths.

32
Basic Features (Contd)
  • Reservation Style
  • RSVP provides several reservation models or
    styles to fit a variety of applications
  • Can be used to share a reservation among traffic
    streams from multiple senders or to select a
    particular sender.

33
Protocol Overview
34
Protocol Overview (Contd)
  • Two primary RSVP msgs PATH and RESV
  • PATH msgs are sent from source towards the
    receivers.
  • Used to pass characteristics of the path.
  • Installs path state in each node along the way
  • Includes IP address of previous hop (needed to
    send RESV msg)
  • After receiving PATH msg receiver can request a
    reservation by sending RESV msg.

35
Protocol Overview (Contd)
  • RESV must follow the exact same reverse path
    upstream.
  • They create reservation state in each node along
    the paths
  • After receiving RESV msg sender can start sending
    data packets.

36
IntServ References
  • R. Braden, D. Clark, S. Shenker, Integrated
    Services in the Internet Architecture an
    Overview, RFC1633
  • J. Wroclawski, The Use of RSVP with IETF
    Integrated Services, RFC2210.
  • J. Wroclawski , Specification of the
    Controlled-Load Network Element Service, RFC2211
  • S. Shenker, C. Patridge, R. Guerin,
    Specification of Guaranteed Quality of Service,
    RFC2212
  • R. Braden, L.Zhang et. al., Resource Reservation
    Protocol (RSVP), RFC2205

37
Differentiated Service
38
DiffServ
  • Differentiated Services (DiffServ) is proposed by
    IETF as a scalable QoS solution for the next
    generation Internet.
  • Developed for relatively simple, coarse methods
    of providing different levels of service for
    Internet traffic.
  • Divides traffic into a small number of classes
    and allocates resources on a per class basis.
  • Core of a diffserv network distinguishes between
    small number of forwarding classes rather than
    individual flows.

39
DiffServ (cont.)
  • Complex per-flow classification and scheduling
    used in intServ (causes scalability) not needed.
  • Operates on a per-hop behavior (PHB) basis
  • Classifies packets by marking the headers
    Routers discriminate packets based on their
    markings
  • Packet marking is done on the basis of a service
    level agreement (SLA) between the host and the
    ISP
  • Provides service assurances but no QoS guarantee

40
Basic Approach
  • Traffic is divided into a small number of groups
    called forwarding classes
  • Forwarding class that a packet belongs to is
    encoded into a field in the IP packet header.
  • Each forwarding class represents a predefined
    forwarding treatment in terms of drop priority
    and bandwidth allocation.

41
Basic Approach(cont.)
  • Achieves scalability by implementing traffic
    classification and conditioning functions at
    network boundary nodes
  • Classification involves mapping packets to
    different forwarding classes.
  • Conditioning checking whether traffic flows
    meet the service agreement and dropping/remarking
    non-conformant packets.
  • Interior nodes forward packets based solely on
    the forwarding class.

42
Basic Approach(cont.)
  • Resource allocation for aggregated traffic rather
    than individual flows
  • Performance assurance to individual flows in a
    forwarding class provided through prioritization
    and provisioning rather than per-flow reservation
  • Traffic policing on the edge and class-based
    forwarding in the core
  • Define forwarding behaviors not services

43
Basic Approach(cont.)
  • Guarantee by provisioning rather than reservation
  • Allocate resources to forwarding class and
    control the amount of traffic for these classes
  • Provides only service assurance no bw or delay
    guarantee
  • Based on SLAs, not dynamic signaling
  • Focus on a single domain, not end-to-end
  • Forwarding classes can be defined for a single
    domain and between domains service providers can
    extend or map their definitions through bilateral
    agreement

44
Per Hop Behavior (PHB)
  • Forwarding treatments at a node
  • Each PHB is represented by a 6-bit value called
    DSCP
  • All packets with the same code points are
    referred to as a behavior aggregate (BA) and they
    receive the same forwarding treatment.
  • Basic building block in diffserv for resource
    allocation to different BAs.

45
PHB (cont.)
  • May describe forwarding behavior in either
    relative or absolute terms
  • Minimal bw for BA absolute term
  • Allocate bw proportionally relative
  • Typically implemented by means of buffer
    management and packet scheduling.

46
Services
  • Describes the overall treatment of a customers
    traffic within a DS domain or end-to-end.
  • This is what is visible to the customers PHBs
    are hidden inside the network node.
  • Realizing a service involves many components to
    work together mapping of traffic to specific
    PHBs, traffic conditioning at the boundary,
    network provisioning, PHB-based forwarding in the
    core

47
Services (cont.)
  • In diffserv, services are defined in the form of
    a Service Level Agreement (SLA) between a
    customer and its service provider
  • One important element of SLA in diffserv is the
    traffic conditioning agreement (TCA).
  • TCA details the service parameters for traffic
    profiles and policing actions.

48
Services (cont.)
  • This may include
  • Traffic profiles, such as token bucket parameters
    for each of the classes
  • Performance metrics throughput, delay
  • Actions for non-conformant packets
  • In addition to TCA, an SLA may also contain other
    characteristics and business-related agreements
    such as availability, security, monitoring,
    auditing, billing.

49
Services (cont.)
  • SLAs may be static or dynamic
  • Services can be defined in either quantitative or
    qualitative terms
  • Services may have different scopes
  • All traffic from ingress node A and any egress
    nodes
  • All traffic between ingress node A and egress
    node B

50
Diffserv Architecture
Leaf marker
Intermediate marker
BB
Leaf marker
--end user
--edge router
--core router
51
Packet Classifier and Traffic Conditioner
52
Classifier
  • Divides an incoming packet stream into multiple
    groups based on predefined rules
  • Two basic types of classifiers
  • Behavior aggregate (BA)
  • Multifield (MF)
  • BA classifier selects packets based solely on
    DSCP value in the packet header
  • BA classifier is used when DSCP has been set
    (marked) before the packet reaches the classifier

53
Classifier (Cont.)
  • MF classifier uses a combination of one or more
    fields of the five-tuple (src addr, src port,
    dest addr, dest port, proto ID) in the packet
    header for classification
  • Classification policies may specify a set of
    rules and corresponding DSCP values for marking
    the matched packets

54
Traffic Conditioner
  • Performs traffic policing function to enforce the
    TCA between customer and service providers
  • Four basic elements meter, marker, shaper and
    dropper

55
Meter
  • For each forwarding class meter measures the
    traffic flow from a customer against its traffic
    profile
  • In-profile packets are allowed to enter the
    network
  • Out-profile packets are further conditioned based
    on TCA

56
Marker
  • Sets the DS field of a packet to a particular
    DSCP, adding marked packet to forwarding class.
  • May act on unmarked packets or remark previously
    marked packets.
  • Can occur at different locations
  • Can be marked by the application
  • Marked by the first-hop routers on LAN
  • Such marking is usually associated with an MF
    classification

57
Marker (cont.)
  • Marking can be done on non-conforming packets
  • Packets may be marked with a special DSCP to
    indicate non-conformance
  • These packets would be dropped first in the event
    of network congestion
  • Since packets travel through different domains,
    packets that have been marked may be remarked (to
    a different DSCP).

58
Marker (cont.)
  • When packet remarked with new DSCP receives worse
    forwarding treatment than from previous DSCP
    PHB demotion
  • With better forwarding treatment PHB promotion

59
Shaper
  • Shapers delay non-conformance packets in order to
    bring the stream into compliance.
  • A stronger form of policing than marking
  • Shaping may also be needed at a boundary node to
    a different domain (to make sure that the traffic
    is conformant before entering the next domain)
  • Usually has finite buffer, so may also drop
    packets when buffer is full

60
Dropper
  • Discards packets in a traffic stream in order to
    bring the stream into compliance with a traffic
    profile.
  • Strongest policing entity
  • Can be implemented as a special case of a shaper
    by setting the shaper buffer size to zero.

61
Differentiated Services Field
  • Uses 6 bits in the IP header to encode forwarding
    treatment
  • These 6 bits are those out of the IP TOS field (8
    bits long)
  • DiffServ redefines existing IP TOS field to
    indicate forwarding behavior
  • Replacement field, called DS field supersedes
    existing definition of TOS
  • First 6 bits used as DSCP to encode the PHB,
    remaining 2 bits are currently unused (CU).

62
Differentiated Services Field (cont.)
  • xxxxx0 standard action
  • xxxx11 experimental and local use
  • xxxx01 experimental and local use but may be
    subject to standard action (in case pool 1 is
    exhausted)

63
Assured Forwarding (AF)
  • One of the two PHB groups standardized by IETF.
  • Four forwarding classes and three drop
    precedences within each forwarding class.
  • The three drop precedences within each forwarding
    class are used to select which packet to drop
    during congestion
  • Highest drop precedence is dropped first.

64
Assured Forwarding (AF)
65
Expedited Forwarding (EF)
  • Proposed to characterize a forwarding treatment
    similar to that of a simple priority queuing.
  • Forwarding treatment of traffic aggregate must
    equal or exceed a configurable rate
  • Should receive this rate independent of load of
    other traffic passing through the node
  • Provides low delay and low loss service
  • Code point lt101110gt used for EF PHB

66
References
  • An Architecture for Differentiated Services
    RFC 2475
  • A Framework for Integrated Services Operation
    over Diffserv Networks RFC 2998
  • Random Early Detection Gateways for Congestion
    Avoidance IEEE/ACM Trans. On Networking vol.
    1, No-4, August 1993
  • Explicit Allocation of Best-Effort Packet
    Delivery Service IEEE/ACM Trans. On
    Networking, vol. 6, no-4, August 1998.

67
Multi Protocol Label Switching (MPLS)
68
MPLS Basics
  • Multi Protocol Label Switching is arranged
    between Layer 2 and Layer 3

69
MPLS Basics (cont.)
  • MPLS Characteristics
  • Mechanisms to manage traffic flows of various
    granularities (Flow Management)
  • Is independent of Layer-2 and Layer-3 protocols
  • Maps IP-addresses to fixed length labels
  • Interfaces to existing routing protocols (RSVP,
    OSPF)
  • Supports ATM, Frame-Relay and Ethernet

70
Label
  • Generic label format

71
Label (cont.)
  • Label distribution
  • MPLS does not specify a single method for label
    distribution
  • BGP has been enhanced to piggyback the label
    information within the contents of the protocol
  • RSVP has also been extended to support
    piggybacked exchange of labels.

72
Label (cont.)
  • IETF has also defined a new protocol known as the
    label distribution protocol (LDP) for explicit
    signaling and management
  • Extensions to the base LDP protocol have also
    been defined to support explicit routing based on
    QoS requirements.

73
Label Edge Router - LER
  • Resides at the edge of an MPLS network and
    assigns and removes the labels from the packets.
  • Support multiple ports connected to dissimilar
    networks (such as frame relay, ATM, and
    Ethernet).

74
Label Switching Router - LSR
  • Is a high speed router in the core on an MPLS
    network.
  • ATM switches can be used as LSRs without changing
    their hardware. Label switching is equivalent to
    VP/VC switching.

75
Positions of LERs LSRs
76
Forward Equivalence Class - FEC
  • Is a representation of a group of packets that
    share the same requirements for their transport.
  • The assignment of a particular packet to a
    particular FEC is done just once (when the packet
    enters the network).

77
Label-Switched Paths - LSPs
  • A path is established before the data
    transmission starts.
  • A path is a representation of a FEC.

78
LSP Details
  • MPLS provides two options to set up an LSP
  • hop-by-hop routing
  • Each LSR independently selects the next hop for
    a given FEC.
  • explicit routing
  • Is similar to source routing. The ingress LSR
    specifies the list of nodes through which the
    packet traverses.
  • The LSP setup for an FEC is unidirectional. The
    return traffic must take another LSP!

79
MPLS Operation
  • The following steps must be taken for a data
    packet to travel through an MPLS domain.
  • label creation and distribution
  • table creation at each router
  • label-switched path creation
  • label insertion/table lookup
  • packet forwarding

80
Step 1
  • Label creation and label distribution
  • Before any traffic begins the routers make the
    decision to bind a label to a specific FEC and
    build their tables.
  • In LDP, downstream routers initiate the
    distribution of labels and the label/FEC binding.
  • In addition, traffic-related characteristics and
    MPLS capabilities are negotiated using LDP.
  • A reliable and ordered transport protocol should
    be used for the signaling protocol.

81
Step 2
  • Table creation
  • On receipt of label bindings each LSR creates
    entries in the label information base (LIB).
  • The contents of the table will specify the
    mapping between a label and an FEC.
  • mapping between the input port and input label
    table to the output port and output label table.
  • The entries are updated whenever renegotiation of
    the label bindings occurs.

82
Example of LIB Table
83
MPLS Operation Example
84
Step 3
  • Label switched path creation
  • The LSPs are created in the reverse direction to
    the creation of entries in the LIBs.

85
MPLS Operation Example
86
Step 4
  • Label insertion/table-lookup
  • The first router (LER1) uses the LIB table to
    find the next hop and request a label for the
    specific FEC.
  • Subsequent routers just use the label to find the
    next hop.

87
MPLS Operation Example
88
Step 5
  • Packet forwarding
  • When a packet arrives at LER1, it determines the
    FEC of the packet.
  • LER1 inserts the label for that FEC, finds the
    next hop the FEC (which is LSR1) and forward the
    packet to LSR1.
  • Each subsequent LSR, i.e., LSR2 and LSR3, will
    examine the label in the received packet, replace
    it with the outgoing label and forward it.
  • When the packet reaches LER4, it will remove the
    label because the packet is departing from an
    MPLS domain and deliver it to the destination.
  • The actual data path followed by the packet is
    indicated by the broken red lines.

89
MPLS Operation Example
90
Advantages of Label Switching
  • Simpler packet forwarding paradigm
  • IP lookup involves longest-prefix match, which
    requires extensive preprocessing and multiple
    memory access. With label switching, packets are
    forwarded by doing an exact match against a short
    label by looking up the label switching table
  • Makes forwarding independent of routing
    architectures. Once Label Switching Paths (LSP)
    are established packet forwarding is always the
    same. Thus new routing schemes can be developed
    without changes in the forwarding logic

91
Advantages of Label Switching (cont.)
  • Better forwarding granularity. For current IP
    based routing granularity is destination-based.
    But sometimes more granularity is desired e.g. an
    ISP may want to know from which interface a
    particular packet came from. Label switching
    allows multiple granularities e.g. packets from a
    particular ingress interface can be put into an
    LSP.
  • Can be used for traffic engineering

92
References
  • Multiprotocol Label Switching Architecture
    RFC 3031
  • MPLS Technology and Applications Bruce Davie,
    Yakov Rekhter, Morgan Kaufmann Publishers
  • RSVP-TE Extensions to RSVP for LSP Tunnels
    RFC 3209
  • LDP Specification RFC 3036
Write a Comment
User Comments (0)
About PowerShow.com