Chapter 17

38
1 Chapter 17 Chapter 17 Integrated Integrated Services & Services & Differentiated Differentiated Services Services

description

Chapter 17. Integrated Services & Differentiated Services. Introduction. Modern Internet applications demand services not provided by a best-effort service model Two complementary, yet fundamentally different, traffic management frameworks have evolved: - PowerPoint PPT Presentation

Transcript of Chapter 17

Page 1: Chapter 17

1

Chapter 17Chapter 17

Integrated Services & Integrated Services & Differentiated Differentiated ServicesServices

Page 2: Chapter 17

Chapter 17: Integrated and Differentiated Services2

IntroductionIntroduction Modern Internet applications demand services Modern Internet applications demand services

not provided by a best-effort service modelnot provided by a best-effort service model Two complementary, yet fundamentally Two complementary, yet fundamentally

different, traffic management frameworks have different, traffic management frameworks have evolved:evolved:– Integrated ServicesIntegrated Services (IS, ISA, IntServ): (IS, ISA, IntServ): reserve reserve

resourcesresources per session and per session and limit total demandlimit total demand to the to the capacity that can be handled by the networkcapacity that can be handled by the network

– Differentiated ServicesDifferentiated Services (DS, DiffServ): classify traffic (DS, DiffServ): classify traffic into a number of into a number of traffic groupstraffic groups and handle traffic and handle traffic based on its groupbased on its group

Traffic control mechanisms: Traffic control mechanisms: queuing discipline, queuing discipline, packet discard policypacket discard policy

Services are specified within a given Services are specified within a given domaindomain

Page 3: Chapter 17

Chapter 17: Integrated and Differentiated Services3

ElasticElastic Traffic Traffic– traffic that can adapt, over a wide traffic that can adapt, over a wide

range, to delay and throughput changesrange, to delay and throughput changes– typically TCP/UDPtypically TCP/UDP– QoS perceived based on applicationQoS perceived based on application

InelasticInelastic Traffic Traffic– traffic does not adapt welltraffic does not adapt well– requires guarantees on: throughput, requires guarantees on: throughput,

delay, jitter, packet lossdelay, jitter, packet loss– e.g. traffic generated by real-time e.g. traffic generated by real-time

applicationsapplications

Internet TrafficInternet Traffic

elastictraffic muststill besupported

Page 4: Chapter 17

Chapter 17: Integrated and Differentiated Services4

IntServ ApproachIntServ Approach Two Two key featureskey features form core of architecture form core of architecture

– Resource reservation – routers must maintain Resource reservation – routers must maintain state of available resource reserved for each state of available resource reserved for each “session”“session”

– Call/session setup – each router on the session’s Call/session setup – each router on the session’s path must verify availability of required path must verify availability of required resources for a session and admit sessions only resources for a session and admit sessions only if requirements can be metif requirements can be met

Call AdmissionCall Admission process (more later) process (more later)– Traffic characterization (Tspec)Traffic characterization (Tspec)– Desired QoS caharterizatio (Rspec)Desired QoS caharterizatio (Rspec)– Reservation signaling (RSVP, RFC 2210)Reservation signaling (RSVP, RFC 2210)– Per-element call admission per Tspec and RspecPer-element call admission per Tspec and Rspec

Page 5: Chapter 17

Chapter 17: Integrated and Differentiated Services5

IntServ ImplementationIntServ Implementation Associate Associate each packeteach packet with a “ with a “flowflow””

– a a distinguishable streamdistinguishable stream of related IP packets that of related IP packets that result from a result from a single user activitysingle user activity and demand the and demand the same QoSsame QoS (per RFC 1633)(per RFC 1633)

– unidirectional, can have multiple recipientsunidirectional, can have multiple recipients– typically identified by: source & destination IP typically identified by: source & destination IP

addresses, port numbers and protocol typeaddresses, port numbers and protocol type Provide for Provide for enhanced router functionsenhanced router functions to to

manage flows:manage flows:– Admission controlAdmission control based on requested QoS and based on requested QoS and

availability of required network resourcesavailability of required network resources– Routing protocolRouting protocol based on QoS (like OSPF/MOSPF) based on QoS (like OSPF/MOSPF)– Queuing/scheduling disciplinesQueuing/scheduling disciplines based on QoS based on QoS– Packet discard policyPacket discard policy based on QoS based on QoS

Page 6: Chapter 17

Chapter 17: Integrated and Differentiated Services6

IntServ Architecture (ISA) - IntServ Architecture (ISA) - requirements at each requirements at each routerrouter

RSVP

BackgroundFunctions

Primary ForwardingFunctions

Page 7: Chapter 17

Chapter 17: Integrated and Differentiated Services7

ISA: 3 Categories of ServiceISA: 3 Categories of Service Guaranteed ServiceGuaranteed Service

– assured capacity (data rate)assured capacity (data rate)– specified upper bound on queuing delay specified upper bound on queuing delay

through the networkthrough the network– no queuing loss (i.e., no buffer overflow)no queuing loss (i.e., no buffer overflow)

Controlled LoadControlled Load– roughly equivalent to best-effort under no-roughly equivalent to best-effort under no-

load conditions (dload conditions (dpropprop + d + dtranstrans))– no specified upper bound on queuing no specified upper bound on queuing

delay, but will approximate minimum delay, but will approximate minimum expected transit delayexpected transit delay

– almost no queuing lossalmost no queuing loss Best EffortBest Effort

Page 8: Chapter 17

Chapter 17: Integrated and Differentiated Services8

Leaky Bucket SchemeLeaky Bucket Scheme

Note that, during any time period T, the amount of data sent cannot exceed RT+B, and Maximum queuing delay by a packet is B/R.

Used to:Used to:1.1. Characterize traffic Characterize traffic

in a flow.in a flow.2.2. Describe the load Describe the load

imposed by a flow.imposed by a flow.3.3. Traffic policing.Traffic policing.

Page 9: Chapter 17

Chapter 17: Integrated and Differentiated Services9

Queuing DisciplinesQueuing DisciplinesSingle FIFO queues have numerous Single FIFO queues have numerous

drawbacks relative to QoS demandsdrawbacks relative to QoS demands– no special treatment based on no special treatment based on prioritypriority– larger packetslarger packets get better service get better service– connections can get an connections can get an unfairunfair share of share of

resourcesresources IntServ allows for multiple queuesIntServ allows for multiple queues

– one per flowone per flow– separate discipline per flowseparate discipline per flow– fair queuing policyfair queuing policy

Page 10: Chapter 17

Chapter 17: Integrated and Differentiated Services10

Queuing Disciplines Queuing Disciplines (Scheduling)(Scheduling)

Drawbacks?

FIFO FIFO (First-Come-First-Served)(First-Come-First-Served) Round Robin Round Robin (Fair Queuing)(Fair Queuing)

Drawbacks?• Flows with busy (greedy)

sources crowd out others• Flows with shorter packets

are penalized

• Flows with shorter packets are penalized

Page 11: Chapter 17

Chapter 17: Integrated and Differentiated Services11

Processor Sharing ApproachProcessor Sharing ApproachProcessor Sharing (PS)Processor Sharing (PS)

– ideal, but not a practical policyideal, but not a practical policy– transmit only one bit per round per transmit only one bit per round per

queuequeue– with N queues, each queue receives with N queues, each queue receives

exactly 1/N of the available capacityexactly 1/N of the available capacity– consider each queue independently to consider each queue independently to

calculate “virtual” start and finish times calculate “virtual” start and finish times for each transmissionfor each transmission

EXAMPLE QUEUE QUEUE QUEUE Packet 1 Packet 2 Packet 1 Packet 2 Packet 1Real arrival time, i 0 2 1 2 3Transmission time, Pi 3 1 1 4 2Virtual start time, Si 0 3 1 2 3Virtual finish time, Fi 3 4 2 6 5

Page 12: Chapter 17

Chapter 17: Integrated and Differentiated Services12

Bit-Round Fair QueuingBit-Round Fair QueuingBit-Round Fair Queuing (BRFQ)Bit-Round Fair Queuing (BRFQ)

– emulates PS round-robin approach for emulates PS round-robin approach for packets and multiple synchronous queuespackets and multiple synchronous queues

– uses packet length and flow identification uses packet length and flow identification (queue) to schedule packets(queue) to schedule packets

– calculate calculate SSii and and FFii as though PS were as though PS were runningrunning

– when a packet finishes transmission, send when a packet finishes transmission, send next packet based on smallest value of next packet based on smallest value of FFi i over all queuesover all queues

– algorithm is fair on the basis of amount of algorithm is fair on the basis of amount of data transmitted instead of number of data transmitted instead of number of packetspackets

Page 13: Chapter 17

Chapter 17: Integrated and Differentiated Services13

PS vs. BRFQ ExamplePS vs. BRFQ Example

Drawback?

No precedence or priority weighting of flows.

Page 14: Chapter 17

Chapter 17: Integrated and Differentiated Services14

Queuing Discipline Queuing Discipline ExamplesExamples

Load equals capacity

Page 15: Chapter 17

Chapter 17: Integrated and Differentiated Services15

Load exceeds capacity

Queuing Discipline Queuing Discipline ExamplesExamples

Drawbacks?

Page 16: Chapter 17

Chapter 17: Integrated and Differentiated Services16

Queuing Discipline – Priority Queuing Discipline – Priority QueuingQueuing

Data Communications andNetworking, Forouzan, 2004

Page 17: Chapter 17

Chapter 17: Integrated and Differentiated Services17

Queuing Discipline – Weighted Queuing Discipline – Weighted Fair QueuingFair Queuing

Data Communications andNetworking, Forouzan, 2004

Page 18: Chapter 17

Chapter 17: Integrated and Differentiated Services18

Weighted Fair Queue (WFQ)Weighted Fair Queue (WFQ)

Di Bi (Ki-1)Li Ki Lmax

Ri Ri m=1 Cm

Maximum delay for flow i

Di = max. delay for flow iBi = token bucket size for flow iRi = token rate for flow iKi = number of nodes in flow i

pathLi = max. packet size for flow iLmax = max. packet length for all

flows through all nodes on flow i path

Cm = outgoing link capacity at node m

Guaranteed Rate (weight) = .5

Guaranteed Rate = .05 FFii = S = Sii ++

PPii , , = =

weightweight

Page 19: Chapter 17

Chapter 17: Integrated and Differentiated Services19

Scheduling vs. Queue Scheduling vs. Queue Management Management (see RFC 2309)(see RFC 2309)

Closely related, but different Closely related, but different performance issues…performance issues…

SchedulingScheduling: managing allocation : managing allocation of bandwidth between flows by of bandwidth between flows by determining which packet to send determining which packet to send next (next (queuing disciplinequeuing discipline))

Queue ManagementQueue Management: managing : managing the length of packet queues by the length of packet queues by proactively dropping packets when proactively dropping packets when necessary (necessary (packet discard policypacket discard policy))

Page 20: Chapter 17

Chapter 17: Integrated and Differentiated Services20

Random Early Detection Random Early Detection (RED)(RED)Queuing discipline with proactive Queuing discipline with proactive

packet discardpacket discard– anticipate anticipate congestion congestion and take early and take early

avoidance action avoidance action – improved performance for improved performance for elastic traffic elastic traffic

by not penalizing bursty trafficby not penalizing bursty traffic– avoids “avoids “global synchronizationglobal synchronization” ”

phenomenon at congestion onsetphenomenon at congestion onset– control control average queue lengthaverage queue length (buffer (buffer

size) within deterministic bounds… size) within deterministic bounds… therefore, control average queuing therefore, control average queuing delaydelay

Page 21: Chapter 17

Chapter 17: Integrated and Differentiated Services21

RED Buffer ManagementRED Buffer Management

Discard probability is calculated for each packet Discard probability is calculated for each packet arrivalarrival

at the output queue based on:at the output queue based on:• the current weighted average queue size, and the current weighted average queue size, and • the number of packets sent since the previous the number of packets sent since the previous

packet discardpacket discard

Page 22: Chapter 17

Chapter 17: Integrated and Differentiated Services22

Generalized RED AlgorithmGeneralized RED Algorithmcalculate the average queue size, calculate the average queue size, avgavg

ifif avgavg < < THTHminmin

queue the packetqueue the packetelse ifelse if THTHminmin avgavg < < THTHmax max

calculate probability calculate probability PPaa

with probability with probability PPaa

discard the packetdiscard the packetelse with probabilityelse with probability 1 – 1 – PPaa

queue the packetqueue the packetelse if else if avgavg THTHmaxmax discard the packetdiscard the packet

See Figure 17.8,page 489

Page 23: Chapter 17

Chapter 17: Integrated and Differentiated Services23

RED AlgorithmRED Algorithm avgavg lags considerably behind changes lags considerably behind changes

in actual queue size (weight, in actual queue size (weight, wwqq, is , is small… typ. 0.002)small… typ. 0.002)– avg avg (1 – w (1 – wqq)avg + w)avg + wqqqq– prevents reaction to short burstsprevents reaction to short bursts

countcount, number of packets passed , number of packets passed without discard, increases without discard, increases incrementally while Thincrementally while Thminmin < avg < Th < avg < Thmaxmax– probability of discard, Pprobability of discard, Paa, increases as , increases as

count increasescount increases– helps ensure fairness across multiple flowshelps ensure fairness across multiple flows

Page 24: Chapter 17

Chapter 17: Integrated and Differentiated Services24

RED Probability FunctionRED Probability Function(Increasing F)(Increasing F)

F = THmax - THmin avg - THmin

Pa = 1/(F x Pmax) - count

1

Page 25: Chapter 17

Chapter 17: Integrated and Differentiated Services25

RED Probability FunctionRED Probability Function(Constant F)(Constant F)

Fconst = THmax - THmin avg - THmin

Pa = 1/Pb - count

1

Pb =

F x Pmax

Page 26: Chapter 17

Chapter 17: Integrated and Differentiated Services26

RED Performance (vs. Drop RED Performance (vs. Drop Tail Queuing Policy)Tail Queuing Policy)

Pmax = 0.02

Page 27: Chapter 17

27

Chapter 17 continuedChapter 17 continued

Differentiated Differentiated ServicesServices

Page 28: Chapter 17

Chapter 17: Integrated and Differentiated Services28

Differentiated Services (DS)Differentiated Services (DS) ISA and RSVP deployment drawbacksISA and RSVP deployment drawbacks

– relatively complexrelatively complex– may not scale well for large traffic volumesmay not scale well for large traffic volumes

DiffServDiffServ solution ( solution (RFC2475RFC2475, , 32603260))– designed as a simple, easily-implemented, low-overhead tooldesigned as a simple, easily-implemented, low-overhead tool– offers a range of services in differentiated service offers a range of services in differentiated service

categories… categories… scalablescalable and and flexibleflexible service classification service classification Key Key characteristicscharacteristics

– uses existing IPv4 TOS field or IPv6 Traffic Class field (for DS uses existing IPv4 TOS field or IPv6 Traffic Class field (for DS field)field)

– SLASLA established in advance… no application changes established in advance… no application changes requiredrequired

– built-in aggregation mechanism based on traffic categorybuilt-in aggregation mechanism based on traffic category– routers queue and forward based on information carried in routers queue and forward based on information carried in

the DSthe DS

Page 29: Chapter 17

Chapter 17: Integrated and Differentiated Services29

DS DomainsDS Domains Contiguous portion of the Internet over which a Contiguous portion of the Internet over which a

consistent set of DS policiesconsistent set of DS policies are agreed and are agreed and administeredadministered

Typically under control of a Typically under control of a single management single management entityentity

Services in a domain defined by a Services in a domain defined by a Service Level Service Level Agreement (SLA) – Agreement (SLA) – a contract between service a contract between service provider and user/another domain which provider and user/another domain which specifies QoS parametersspecifies QoS parameters– detailed service parameters: throughput, drop detailed service parameters: throughput, drop

probability, latencyprobability, latency– ingress/egress constraintsingress/egress constraints– service-based traffic profilesservice-based traffic profiles– disposition of excess (in violation of SLA) trafficdisposition of excess (in violation of SLA) traffic

DS field carries a DS field carries a traffic classtraffic class as specified by the as specified by the SLASLA

Page 30: Chapter 17

Chapter 17: Integrated and Differentiated Services30

DiffServ TerminologyDiffServ Terminology

Traffic Traffic conditioninconditioning functionsg functions

Page 31: Chapter 17

Chapter 17: Integrated and Differentiated Services31

DS TerminologyDS Terminology Service Level Agreement (per RFC Service Level Agreement (per RFC

3260):3260):– A A Service Level SpecificationService Level Specification (SLS) is a set (SLS) is a set

of parameters and their values which of parameters and their values which together define the service offered to a together define the service offered to a traffic stream by a DS domain. traffic stream by a DS domain.

– A A Traffic Conditioning SpecificationTraffic Conditioning Specification (TCS) is (TCS) is a set of parameters and their values which a set of parameters and their values which together specify a set of classifier rules and together specify a set of classifier rules and a traffic profile. A TCS is an integral element a traffic profile. A TCS is an integral element of an SLS. of an SLS.

Page 32: Chapter 17

Chapter 17: Integrated and Differentiated Services32

DS and IPv4 TOS FieldsDS and IPv4 TOS Fields

Replaces

6-bit DS code point, in three pools Pool 1: xxxxx0 - standards-based use (e.g. 000000, xxx000) Pool 2: xxxx11 – experimental/local use Pool 3: xxxx01 – experimental/local use, future standards

IP ECN Field,per RFC 3168 & RFC 3260

Page 33: Chapter 17

Chapter 17: Integrated and Differentiated Services33

DS Domains/RegionsDS Domains/Regions

Interior node: typically only PHB mechanisms

Border node: Per Hop Behavior (PHB) plus traffic conditioning mechanisms

Page 34: Chapter 17

Chapter 17: Integrated and Differentiated Services34

DS Traffic Classifier/ConditionerDS Traffic Classifier/Conditioner

Separate traffic into classes based on fields as specified in the TCS (source IP, dest. IP, source port #, dest. port #, …)

Mark with a DS codepoint, or re-mark as necessary (at domain ingress node, or at boundary between domains)

Police traffic and drop packets if rate exceeds that specified in the SLA (per metering function)

Conformance test per SLA(e.g peak rate, burstiness, …)

Regulate traffic flow to achieve a specified traffic rate (e.g. with a token bucket)

Page 35: Chapter 17

Chapter 17: Integrated and Differentiated Services35

Per-Hop BehaviorPer-Hop Behavior RFC 2475 definition: RFC 2475 definition:

– ““a description of the externally observable forwarding a description of the externally observable forwarding behavior of a DiffServ node applied to a particular behavior of a DiffServ node applied to a particular DiffServ behavior aggregate.”DiffServ behavior aggregate.”

Two standard PHBs defined:Two standard PHBs defined:– Expedited Forwarding (RFC 2598)Expedited Forwarding (RFC 2598)– Assured Forwarding (RFC 2597)Assured Forwarding (RFC 2597)

Expedited ForwardingExpedited Forwarding– ““Premium service” with low delay, low-loss, Premium service” with low delay, low-loss,

low jitter, and assured bandwidthlow jitter, and assured bandwidth– Domain Domain boundary nodesboundary nodes control traffic control traffic

aggregate to limit its characteristics (i.e. aggregate to limit its characteristics (i.e. controlled rate and burstiness)controlled rate and burstiness)

– Interior nodesInterior nodes ensure that the aggregate’s ensure that the aggregate’s maximum arrival rate is less than its minimum maximum arrival rate is less than its minimum departure rate (i.e. limit the queuing effect)departure rate (i.e. limit the queuing effect)

Page 36: Chapter 17

Chapter 17: Integrated and Differentiated Services36

Per-Hop Behavior (cont.)Per-Hop Behavior (cont.)Assured ForwardingAssured Forwarding

– designed to offer a service level that is designed to offer a service level that is superior to best-effort servicesuperior to best-effort service

– based on based on explicit allocation conceptexplicit allocation concept choice of classes offered, each with different traffic choice of classes offered, each with different traffic

profileprofile monitor traffic at boundary nodes, and mark as monitor traffic at boundary nodes, and mark as in in

oror out out based on conformance to profilebased on conformance to profile interior nodes handle packets based only on in or interior nodes handle packets based only on in or

out markout mark in congestion, drop outs before insin congestion, drop outs before ins

implementation defines implementation defines four AF classesfour AF classes and and replaces in/out mark with a replaces in/out mark with a drop precedence drop precedence codepointcodepoint

– simple and easy to implement in nodessimple and easy to implement in nodes

Page 37: Chapter 17

Chapter 17: Integrated and Differentiated Services37

Differentiated ServicesDifferentiated ServicesAssured Forwarding PHBAssured Forwarding PHB

ECNECN

Designated AF1x, AF2x, AF3x, AF4x

RFC 2597

Page 38: Chapter 17

Chapter 17: Integrated and Differentiated Services38

Differentiated ServicesDifferentiated ServicesAssured Forwarding PHBAssured Forwarding PHB

001001010100 010010010100 011011010100 100100010100001001101000 010010101000 011011101000 100100101000001001111100 010010111100 011011111100 100100111100

LowMediumHigh

AF1 AF2 AF3 AF4AF1 AF2 AF3 AF4