outline

61
Outline Outline Economic principles Economic principles Traffic models Traffic models Traffic classes Traffic classes Time scales - Mechanisms Time scales - Mechanisms

Upload: tass

Post on 05-Jan-2016

33 views

Category:

Documents


2 download

DESCRIPTION

Outline. Economic principles Traffic models Traffic classes Time scales - Mechanisms. Traffic classes. Networks should match offered service to source requirements (corresponds to utility functions) Example: telnet requires low bandwidth and low delay - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Outline

OutlineOutline Economic principlesEconomic principles

Traffic modelsTraffic models

Traffic classesTraffic classes

Time scales - Mechanisms Time scales - Mechanisms

Page 2: Outline

Traffic classes Networks should match offered service to Networks should match offered service to

source requirements (corresponds to utility source requirements (corresponds to utility functions)functions)

Example: telnet requires low bandwidth and Example: telnet requires low bandwidth and low delay low delay utility increases with decrease in delayutility increases with decrease in delay network should provide a low-delay servicenetwork should provide a low-delay service or, telnet belongs to the low-delay traffic or, telnet belongs to the low-delay traffic

classclass Traffic classes encompass both Traffic classes encompass both useruser

requirements and requirements and networknetwork service offerings service offerings

Page 3: Outline

Traffic classes - details Basic division: guaranteed service & best effortBasic division: guaranteed service & best effort

like flying with reservation or standbylike flying with reservation or standby Guaranteed-serviceGuaranteed-service

utility is utility is zerozero unless application gets a min unless application gets a min level of service quality - bandwidth, delay, losslevel of service quality - bandwidth, delay, loss

open-loop open-loop flow control with admission controlflow control with admission control e.g. telephony, audio/video conf. , VOD , e.g. telephony, audio/video conf. , VOD ,

interactive multiplayer games, remote sensinginteractive multiplayer games, remote sensing Best-effortBest-effort

utility utility does notdoes not degrade significantly with a degrade significantly with a drop in service quality (send and pray)drop in service quality (send and pray)

closed-loopclosed-loop flow control flow control e.g. email, net news, FTP, Webe.g. email, net news, FTP, Web

Page 4: Outline

GS vs. BE Degree of synchronyDegree of synchrony

time scale at which peer endpoints interacttime scale at which peer endpoints interact GS are typically synchronous or interactiveGS are typically synchronous or interactive

interact on the timescale of a RTT timeinteract on the timescale of a RTT timee.g. telephone conversation or telnete.g. telephone conversation or telnet

BE are typically asynchronous or non-BE are typically asynchronous or non-interactiveinteractive interact on longer time scales - e.g. Emailinteract on longer time scales - e.g. Email

Sensitivity to time and delaySensitivity to time and delay GS apps are real-timeGS apps are real-time

utility depends on real timeutility depends on real time BE apps are typically in different to real timeBE apps are typically in different to real time

automatically scale back during overloadautomatically scale back during overload

Page 5: Outline

Traffic subclasses ATM Forum ATM Forum

based on sensitivity based on sensitivity to to bandwidthbandwidth

GS GS CBR, VBR-rtCBR, VBR-rtVBR-nrtVBR-nrt

BEBEABRABRUBRUBR

IETFIETF based on sensitivity based on sensitivity

to to delaydelay GSGS

intolerant intolerant toleranttolerant

BEBE interactive burstinteractive burst interactive bulkinteractive bulkasynchronous asynchronous

bulkbulk

Page 6: Outline

OutlineOutline Economic principlesEconomic principles

Traffic models Traffic models

Traffic classesTraffic classes

Time scales - Mechanisms Time scales - Mechanisms

Page 7: Outline

Time scalesTime scales Some actions are taken once per callSome actions are taken once per call

tell network about traffic characterization tell network about traffic characterization and request resourcesand request resources

in ATM networks, finding a path from s to din ATM networks, finding a path from s to d Other actions are taken during the call, every Other actions are taken during the call, every

few round trip timesfew round trip times feedback flow controlfeedback flow control

Still others are taken very rapidly, during the Still others are taken very rapidly, during the data transferdata transfer schedulingscheduling policing and regulationpolicing and regulation

Traffic management mechanisms must deal Traffic management mechanisms must deal with a range of traffic classes at a range of with a range of traffic classes at a range of time scalestime scales

Page 8: Outline

Summary of mechanisms at Summary of mechanisms at each time scaleeach time scale

Less than one round-trip-time (cell-level, Less than one round-trip-time (cell-level, packetpacket) ~) ~μs ----> μs ----> nsns

e.g. 1KB / 10 Gbps = 0.8 μse.g. 1KB / 10 Gbps = 0.8 μs Scheduling and buffer management K9, 14.6 Scheduling and buffer management K9, 14.6

Regulation and policing K13.3Regulation and policing K13.3 Policy routing (datagram networks) K11Policy routing (datagram networks) K11

One or more round-trip-times (burst-level) ~One or more round-trip-times (burst-level) ~msms Feedback flow control / Feedback flow control / TCPTCP congestion ctl congestion ctl

K13.4K13.4 RetransmissionRetransmission K12.4 K12.4

Page 9: Outline

Summary (cont.)Summary (cont.) Session (call-level, Session (call-level, flowflow)) ~ ~ second second

Renegotiation (burst?) K14.7Renegotiation (burst?) K14.7 SignalingSignaling K14.8K14.8 Admission controlAdmission control K14.9K14.9 Service pricingService pricing K14.2K14.2 Routing (connection-oriented networks, Routing (connection-oriented networks,

MPLSMPLS) K11) K11 DayDay

Peak load pricingPeak load pricing K14.10K14.10 Weeks or monthsWeeks or months

Capacity planningCapacity planning K14.11K14.11

Page 10: Outline

OutlineOutline Economic principlesEconomic principles Traffic modelsTraffic models Traffic classesTraffic classes Mechanisms at each time scaleMechanisms at each time scale

Faster than one RTTFaster than one RTT One RTTOne RTT SessionSession

RenegotiationRenegotiationSignalingSignalingAdmission controlAdmission control

Day Day Weeks to monthsWeeks to months

Page 11: Outline

RenegotiationRenegotiation An option for guaranteed-service trafficAn option for guaranteed-service traffic StaticStatic descriptors don’t make sense for many descriptors don’t make sense for many

real traffic sourcesreal traffic sources e.g. interactive videoe.g. interactive video

Multiple-time-scale traffic Multiple-time-scale traffic burst T ~ 10 sburst T ~ 10 s for zero loss, descriptors (P,0), (A, B)for zero loss, descriptors (P,0), (A, B)

P = peak rate, A = average P = peak rate, A = average B ~ (P-A)TB ~ (P-A)T T large => serving even slightly below P T large => serving even slightly below P

leads to large buffering requirementsleads to large buffering requirements burst size B that lasts for time T burst size B that lasts for time T B ~ 15 MBB ~ 15 MB one-shot one-shot leaky-bucketleaky-bucket descriptor is descriptor is

inadequateinadequate --> need Renegotiation--> need Renegotiation

Page 12: Outline

Renegotiation (cont.)Renegotiation (cont.) Renegotiation matches service rate to trafficRenegotiation matches service rate to traffic Renegotiating service rate about once every Renegotiating service rate about once every

ten secondsten seconds is sufficient to reduce bandwidth is sufficient to reduce bandwidth requirement nearly to average rate requirement nearly to average rate + 5%+ 5% works well in conjunction with optimal works well in conjunction with optimal

smoothingsmoothing Fast buffer reservation -- for each burstFast buffer reservation -- for each burst

each burst of data preceded by a reservation each burst of data preceded by a reservation of bufferof buffer

Renegotiation is Renegotiation is not freenot free signalingsignaling overhead overhead call admissioncall admission (measurement-based control) (measurement-based control)

Page 13: Outline

RCBR - Renegotiate CBRRCBR - Renegotiate CBR

Extreme viewpointExtreme viewpoint All traffic sent as CBRAll traffic sent as CBR Renegotiate CBR rate if necessaryRenegotiate CBR rate if necessary No need for complicated scheduling!No need for complicated scheduling! Buffers at edge of networkBuffers at edge of network

much cheapermuch cheaper Easy to priceEasy to price Open questionsOpen questions

when to renegotiate?when to renegotiate? how much to ask for?how much to ask for? admission controladmission control what to do on renegotiation failurewhat to do on renegotiation failure

Page 14: Outline

OutlineOutline Economic principlesEconomic principles Traffic modelsTraffic models Traffic classesTraffic classes Mechanisms at each time scaleMechanisms at each time scale

Faster than one RTTFaster than one RTT One RTTOne RTT SessionSession

RenegotiationRenegotiationSignalingSignalingAdmission controlAdmission control

Day Day Weeks to monthsWeeks to months

Page 15: Outline

SignalingSignaling How a source tells the network its utility How a source tells the network its utility

functionfunction

Two partsTwo parts

how to carry the message (transport)how to carry the message (transport) how to interpret it (semantics)how to interpret it (semantics)

Useful to separate these mechanismsUseful to separate these mechanisms

Page 16: Outline

Signaling semanticsSignaling semantics Classic scheme: sender initiatedClassic scheme: sender initiated SETUP, SETUP_ACK, SETUP_RESPONSE, ACKSETUP, SETUP_ACK, SETUP_RESPONSE, ACK Admission controlAdmission control Tentative resource reservation and confirmationTentative resource reservation and confirmation Simplex and duplex setupSimplex and duplex setup Doesn’t work for multicastDoesn’t work for multicast

Page 17: Outline

Resource translationResource translation Application asks forApplication asks for end-to-end end-to-end quality quality

How to How to translatetranslate to to per-hopper-hop requirements? requirements?

E.g. end-to-delay bound of 100 ms E.g. end-to-delay bound of 100 ms What should be bound at each hop? What should be bound at each hop? propagation 25 mspropagation 25 ms share 100-25 = 75 msshare 100-25 = 75 ms

Two-passTwo-pass

forward: maximize (denial!)forward: maximize (denial!) reverse: relaxreverse: relax open problem!open problem!

Page 18: Outline

Signaling: transportSignaling: transport Telephone network: Signaling System 7 (Telephone network: Signaling System 7 (SS7SS7))

Carried on Common Channel Interoffice Carried on Common Channel Interoffice Signaling (CCIS) networkSignaling (CCIS) network

CCIS is a datagram networkCCIS is a datagram network SS7 protocol stack is loosely modeled on SS7 protocol stack is loosely modeled on

ISO (but predates it)ISO (but predates it) Signaling in ATM networks uses Signaling in ATM networks uses Q.2931 Q.2931

standardstandard part of User Network Interface (UNI)part of User Network Interface (UNI) complexcomplex layered over SSCOP ( a reliable transport layered over SSCOP ( a reliable transport

protocol) and AAL5protocol) and AAL5

Page 19: Outline

Internet signaling transport: RSVP Internet signaling transport: RSVP (Resource ReSerVation Protocol )(Resource ReSerVation Protocol )

Main motivation is to efficiently support Main motivation is to efficiently support multipoint multipoint multicastmulticast with resource with resource reservationsreservations

ProgressionProgression a) Unicasta) Unicast b) Naïve multicastb) Naïve multicast c) Intelligent multicastc) Intelligent multicast d) Naïve multipoint multicastd) Naïve multipoint multicast e) RSVPe) RSVP

Page 20: Outline

RSVP motivation

Page 21: Outline

RSVP Sender sends Sender sends periodicalperiodical PATHPATH message via message via

the data delivery paththe data delivery path PATH sets up next hop towards source(s)PATH sets up next hop towards source(s) Receiver initiatedReceiver initiated reservations reservations Receiver sends Receiver sends RESV RESV message on the reverse message on the reverse

pathpath RESV makes reservationRESV makes reservation Travel as far back up as necessaryTravel as far back up as necessary

how does receiver know of success? how does receiver know of success? Reservation state per group, instead of per Reservation state per group, instead of per

connectionconnection Decouple the routing from reservationDecouple the routing from reservation

Page 22: Outline

Traffic Parameters in IntServTraffic Parameters in IntServ

Page 23: Outline

Resource ReSerVation Protocol (RSVP)-1

Page 24: Outline

Resource ReSerVation Protocol (RSVP)-2

Page 25: Outline

The multicasts panning tree for hosts

Page 26: Outline

Reservation exampleReservation example

Page 27: Outline

Soft state State in switch controllers (routers) is State in switch controllers (routers) is

periodically refreshedperiodically refreshed

On a link failure, automatically find another On a link failure, automatically find another routeroute

Transient!Transient!

But, probably better than with ATMBut, probably better than with ATM

Page 28: Outline

Why is signaling hard ? Complex servicesComplex services

Feature interactionFeature interaction

call screening + call forwardingcall screening + call forwarding Tradeoff between performance and Tradeoff between performance and

reliabilityreliability

Extensibility and maintainabilityExtensibility and maintainability

Page 29: Outline

OutlineOutline Economic principlesEconomic principles Traffic modelsTraffic models Traffic classesTraffic classes Mechanisms at each time scaleMechanisms at each time scale

Faster than one RTTFaster than one RTT One RTTOne RTT SessionSession

RenegotiationRenegotiationSignalingSignalingAdmission controlAdmission control

Day Day Weeks to monthsWeeks to months

Page 30: Outline

Admission controlAdmission control Can a call be admitted?Can a call be admitted?

CBR admission controlCBR admission control

simplesimple on failure: try again, reroute, or holdon failure: try again, reroute, or hold

Best-effort admission controlBest-effort admission control

trivialtrivial if minimum bandwidth needed, use CBR if minimum bandwidth needed, use CBR

testtest

Page 31: Outline

VBR admission controlVBR admission control VBRVBR

burstinessburstiness -- peak rate differs from average r -- peak rate differs from average r if we reserve bandwidth at the peak rate, if we reserve bandwidth at the peak rate,

wastes bandwidthwastes bandwidth if we reserve at the average rate, may drop if we reserve at the average rate, may drop

packets during peakpackets during peak key decision: how much to overbookkey decision: how much to overbook

Four known approachesFour known approaches peak rate admission controlpeak rate admission control worst-case (delay) admission controlworst-case (delay) admission control admission control with statistical guaranteeadmission control with statistical guarantee measurement-based admission controlmeasurement-based admission control

Page 32: Outline

1. 1. Peak-rate admission controlPeak-rate admission control Reserve at a connection’s peak rateReserve at a connection’s peak rate ProsPros

simple (can use FIFO scheduling)simple (can use FIFO scheduling) connections get zero loss & zero (fluid) delay connections get zero loss & zero (fluid) delay works well for a small number of sourcesworks well for a small number of sources

ConsCons wasteswastes bandwidth bandwidth peak rate peak rate may increasemay increase because ofbecause of scheduling jitterscheduling jitter

time

rate

Page 33: Outline

2. 2. Worst-case (delay) admission controlWorst-case (delay) admission control Characterize source by ‘average’ rate and burst Characterize source by ‘average’ rate and burst

size (LBAP: size (LBAP: leaky-bucketleaky-bucket)) Use Use WFQ or rate-controlledWFQ or rate-controlled discipline to discipline to

reserve bandwidth at reserve bandwidth at averageaverage rate rate ProsPros

may use may use less bandwidthless bandwidth than with peak rate than with peak rate can get an end-to-end can get an end-to-end delay guaranteedelay guarantee

ConsCons for low delay bound, for low delay bound, need to reserve atneed to reserve at more than peak ratemore than peak rate!! e.g. WFQe.g. WFQ ImplementationImplementation complexitycomplexity

time

rate

Page 34: Outline

Parekh-Gallager theorem for WFQParekh-Gallager theorem for WFQ WFQ emulates GPS WFQ emulates GPS

serve packets in order of their (GPS) finish timesserve packets in order of their (GPS) finish times Let it be Let it be leaky-bucket leaky-bucket regulated such that # regulated such that #

bits sent in time [tbits sent in time [t11, t, t22] <= ρ(t] <= ρ(t22 - t - t11) + σ ) + σ Let a connection be allocated weights at each WFQ Let a connection be allocated weights at each WFQ

scheduler along its path, so that the least bandwidth scheduler along its path, so that the least bandwidth it is allocated is it is allocated is g -- gg -- g<<gg((kk))

Let the connection pass through Let the connection pass through KK schedulers, where schedulers, where the the kkth scheduler has a link rate th scheduler has a link rate r(k)r(k)

Let largest packet allowed in the network be Let largest packet allowed in the network be PP

1

1 1

)(/)(//__K

k

K

k

krPkgPgdelayendend

Page 35: Outline

Key insight is that as Key insight is that as # calls increases# calls increases, probability that , probability that multiple sources send a burst decreasesmultiple sources send a burst decreases sum of connection rates is increasingly sum of connection rates is increasingly smoothsmooth

With enough sources, traffic from each source can be With enough sources, traffic from each source can be assumed to arrive at its assumed to arrive at its average rateaverage rate

Put in Put in enough buffersenough buffers to make probability of to make probability of loss lowloss low Ex 14.6 ---- 10 sources: each rate=a, on/off Ex 14.6 ---- 10 sources: each rate=a, on/off pp=0.1/0.9 =0.1/0.9

ppnn=(=(nn

1010) (0.1)) (0.1)nn(0.9)(0.9)10-n10-n

C=10a C=10a overflow p=0,overflow p=0, C=8a C=8a overflowoverflow p=pp=p1010+p+p99

<1E-6 <1E-6 buffer buffer lower p lower p

3. 3. AdmissionAdmission with with statistical guaranteesstatistical guarantees(1)(1)

Page 36: Outline

3. 3. AdmissionAdmission with with statistical guaranteesstatistical guarantees(2)(2)

Assume that traffic from a source is Assume that traffic from a source is sent tosent to a buffer of a buffer of size size BB which is drained at a constant ratewhich is drained at a constant rate e e leaky-bucketleaky-bucket If source sends a burst, its delay goes upIf source sends a burst, its delay goes up If the burst is too large, bits are lostIf the burst is too large, bits are lost

Equivalent bandwidthEquivalent bandwidth of the sourceof the source is the rate at which is the rate at which we need to drain this buffer so that the probability of we need to drain this buffer so that the probability of lossloss is less than is less than ll and the and the delaydelay in leaving the buffer is in leaving the buffer is less than less than dd

Equivalent bandwidth of an ensemble of connections is Equivalent bandwidth of an ensemble of connections is the the sum of their equivalent bandwidthssum of their equivalent bandwidths

Three approach -- p480,Three approach -- p480, + approach for + approach for LRDLRD (open problems) (open problems)

If many sources share a buffer, the equivalent If many sources share a buffer, the equivalent bandwidth of each source decreases (why? Smooth, bandwidth of each source decreases (why? Smooth, but LDR?)but LDR?)

Page 37: Outline

3. Admission with statistical guarantees(3)

When a source arrives, use its performance When a source arrives, use its performance requirements and current network state to requirements and current network state to assign it an equivalent bandwidthassign it an equivalent bandwidth

Admission control: Admission control: sum of equivalent sum of equivalent bandwidthsbandwidths at the link should be at the link should be < < link link capacitycapacity

ProsPros can trade off a small loss probability for a can trade off a small loss probability for a

large decrease in bandwidth reservationlarge decrease in bandwidth reservation can obtain delay boundscan obtain delay bounds mathematicalmathematical treatment possible treatment possible

ConsCons assumes uncorrelated sources assumes uncorrelated sources LRD ?LRD ? hairy mathematicshairy mathematics

Page 38: Outline

4. Measurement-based admission For traffic that cannot describe itselfFor traffic that cannot describe itself

also renegotiated trafficalso renegotiated traffic MeasureMeasure ‘real’ ‘real’ averageaverage load load Users tell peak (of new flow)Users tell peak (of new flow) If If peak + averagepeak + average < capacity, admit < capacity, admit Over time, new call becomes part of averageOver time, new call becomes part of average Problems: Problems:

assumes: past behavior is indicative of the assumes: past behavior is indicative of the futurefuture

how long to measure?how long to measure? when to forget about the past?when to forget about the past? -> -> prediction basedprediction based

Page 39: Outline

OutlineOutline Economic principlesEconomic principles Traffic modelsTraffic models Traffic classesTraffic classes Mechanisms at each time scaleMechanisms at each time scale

Faster than one RTTFaster than one RTT One RTTOne RTT SessionSession DayDay

Peak load pricingPeak load pricing Weeks to monthsWeeks to months

Page 40: Outline

Cyclic demand and load pricing and load pricing Traffic: strong daily peaks => Traffic: strong daily peaks => cycliccyclic demand demand

if capacity C1, then waste capacityif capacity C1, then waste capacity if capacity C2, overloaded part of the timeif capacity C2, overloaded part of the time

Can Can shift shift demand to off-peak times using demand to off-peak times using pricing pricing (Charge more during peak hours)(Charge more during peak hours) priceprice is a is a signalsignal to users about network preferences to users about network preferences helps both the network provider and the userhelps both the network provider and the user

Page 41: Outline

ExampleExample Suppose Suppose

network capacity = Cnetwork capacity = C peak demand = 100, off peak demand = 10peak demand = 100, off peak demand = 10 useruser’s utility = ’s utility = - total price - overload- total price - overload networknetwork’s utility = ’s utility = revenue - idlenessrevenue - idleness

Price = 1Price = 1 per unit during peak and off peak times per unit during peak and off peak times revenue = 100 + 10 = 110revenue = 100 + 10 = 110 user’s utility = -110 - (peak-C) = -110 - (100-C)user’s utility = -110 - (peak-C) = -110 - (100-C) network’s utility = 110 - (C – off peak) network’s utility = 110 - (C – off peak)

= 110 - (C – 10)= 110 - (C – 10) if if C = 100C = 100, user’s utility = , user’s utility = -110-110, net’s utility = , net’s utility = 2020 if if C = 60C = 60, user’s utility = , user’s utility = -150-150, net’s utility = , net’s utility = 6060 increase in user’s utility comes as the cost of increase in user’s utility comes as the cost of

network’s utilitynetwork’s utility

Page 42: Outline

Example (cont.)Example (cont.) Peak price = 1Peak price = 1, , off-peak price = 0.2off-peak price = 0.2 Suppose this decreases peak load toSuppose this decreases peak load to 60 60, and , and

off peak load increases to off peak load increases to 5050 Revenue = 60*1 + 50*0.2 = 70Revenue = 60*1 + 50*0.2 = 70

lower than beforelower than before But peak is 60, so set But peak is 60, so set C = 60C = 60 User’s utility = -70-0 = User’s utility = -70-0 = -70-70 (> -110, > -150)(> -110, > -150) Network’s utility = 70-(60-50) = Network’s utility = 70-(60-50) = 6060 (> 20, =60)(> 20, =60) Thus, with peak-load pricing, user’s utility Thus, with peak-load pricing, user’s utility

increases at no cost to networkincreases at no cost to network Network can gain some increase in utility Network can gain some increase in utility

while still increasing user’s utilitywhile still increasing user’s utility

Page 43: Outline

LessonsLessons Pricing can control user’s behaviorPricing can control user’s behavior

Careful pricing helps both users and network Careful pricing helps both users and network operatorsoperators

Pricing is a Pricing is a signalsignal of network’s preferences of network’s preferences

Rational users help the system by helping Rational users help the system by helping themselvesthemselves

Page 44: Outline

Outline Economic principlesEconomic principles Traffic modelsTraffic models Traffic classesTraffic classes Mechanisms at each time scaleMechanisms at each time scale

Faster than one RTTFaster than one RTT One RTTOne RTT SessionSession Day Day Weeks to monthsWeeks to months

Capacity planningCapacity planning

Page 45: Outline

Capacity planningCapacity planning How to modify network How to modify network topologytopology, link , link

capacitycapacity, and , and routingrouting to most efficiently use to most efficiently use existing resources, or alleviate long-term existing resources, or alleviate long-term congestioncongestion

Usually a matter of Usually a matter of trialtrial and and errorerror

A more systematic approach: stepsA more systematic approach: steps

measure network during its busy hourmeasure network during its busy hour create traffic matrixcreate traffic matrix decide topologydecide topology assign capacityassign capacity

Page 46: Outline

1. Measure network during busy hour Traffic ebbs and flows during day, week and Traffic ebbs and flows during day, week and

yearyear A good rule of thumb is to build for the worst A good rule of thumb is to build for the worst

case trafficcase traffic Measure traffic for some period of time, then Measure traffic for some period of time, then

pick the busiest hourpick the busiest hour Usually Usually add a fudgeadd a fudge factor for future growth factor for future growth Measure bits sent from each Measure bits sent from each endpointendpoint to to

each each endpointendpoint we are assuming that endpoint remain the we are assuming that endpoint remain the

same, only the internal network topology same, only the internal network topology is being redesignedis being redesigned

Page 47: Outline

2. 2. Create traffic matrixCreate traffic matrix # # of bits sent from each source to each of bits sent from each source to each

destinationdestination We assume that the pattern We assume that the pattern predicts futurepredicts future

behaviorbehavior probably a weak assumptionprobably a weak assumption

what if a web site suddenly becomes what if a web site suddenly becomes popular!popular!

Traffic over shorter time scales may be far Traffic over shorter time scales may be far heavierheavier

Doesn’t work if we are adding a new endpointDoesn’t work if we are adding a new endpoint can assume that it is similar to an existing can assume that it is similar to an existing

endpointendpoint

Page 48: Outline

3. Decide topology Graph theoryGraph theory

Topology depends on three considerationsTopology depends on three considerations

kk-connectivity-connectivitypath should exist between any two path should exist between any two

points despite single node or link points despite single node or link failuresfailures

geographical considerationsgeographical considerationssome links may be easier to build than some links may be easier to build than

othersothers existing capacityexisting capacity

Page 49: Outline

4. 4. Assign capacityAssign capacity Assign sufficient cAssign sufficient capacityapacity to carry busy hour traffic to carry busy hour traffic Unfortunately, actual path of traffic depends on Unfortunately, actual path of traffic depends on

routing protocols which measure instantaneous routing protocols which measure instantaneous load and link status. So, we cannot directly load and link status. So, we cannot directly influence path taken by trafficinfluence path taken by traffic

Circular relationshipCircular relationship between between capacitycapacity allocation allocation and and routingrouting makes problem worse makes problem worse higher chigher capacityapacity link is more attractive to routing link is more attractive to routing thus carries more trafficthus carries more traffic thus requires more capacity and so on…thus requires more capacity and so on…

Easier to assign capacities if routing is Easier to assign capacities if routing is staticstatic and and links are always up (as in telephone network)links are always up (as in telephone network)

Page 50: Outline

Telephone network capacity planningTelephone network capacity planning How to size a link so that the call blocking How to size a link so that the call blocking

probability is less than a target?probability is less than a target? Solution due to Erlang (1927) Solution due to Erlang (1927) M/M/m/mM/M/m/m Assume Assume we know mean # calls (erlangs) on a trunkwe know mean # calls (erlangs) on a trunk

Mean call arrival rate = l Mean call arrival rate = l λλ Mean call holding time = m Mean call holding time = m 1/μ1/μ Then, call load A = lm Then, call load A = lm λ/μ=ρmλ/μ=ρm Let trunk capacity = N Let trunk capacity = N (m),(m), infinite # of sourcesinfinite # of sources

Er’s BEr’s B formula gives blocking probability formula gives blocking probability ppmm

e.g. N = 5, A = 3, blocking probability = 0.11e.g. N = 5, A = 3, blocking probability = 0.11 For a fixed load, as N increases, the call For a fixed load, as N increases, the call

blocking probability decreases exponentiallyblocking probability decreases exponentially

Page 51: Outline

Sample Erlang curvesSample Erlang curves

Page 52: Outline

Capacity allocationCapacity allocation Assume traffic on links is independent, B(Assume traffic on links is independent, B(ii) )

is blocking probability on link is blocking probability on link ii Then, blocking probability Then, blocking probability along a pathalong a path

(n links)(n links) isis

1- Π [1-B(1- Π [1-B(ii)] )]

Traffic matrix + routing table (topology) tells Traffic matrix + routing table (topology) tells us load on a linkus load on a link

Assign capacity to each link given load and Assign capacity to each link given load and target blocking probabilitytarget blocking probability

Or, add a new link and change the routing Or, add a new link and change the routing tabletable

Page 53: Outline

Capacity planning on the InternetCapacity planning on the Internet Trial and errorTrial and error Some rules of thumb helpSome rules of thumb help Measurements indicate that sustained Measurements indicate that sustained

bandwidth per active user is about 50 Kbpsbandwidth per active user is about 50 Kbps add a fudge factor of 2 to get 100 Kbpsadd a fudge factor of 2 to get 100 Kbps

During busy hour, about 40% of potential During busy hour, about 40% of potential users are active –> users are active –> 40Kbps per user 40Kbps per user ??????

So, a link of capacity C can support So, a link of capacity C can support C/40Kbps = 2.5C/100 Kbps usersC/40Kbps = 2.5C/100 Kbps users

e.g. e.g. 1 Gbps campus1 Gbps campus (?) (?) network can support network can support 25000 users25000 users TJU: TJU: 1 - 10 Gbps1 - 10 Gbps

Page 54: Outline

Capacity planning on the InternetCapacity planning on the Internet (cont.)(cont.)

About 10% of campus traffic enters InternetAbout 10% of campus traffic enters Internet A 25,000-person campus uses A 25,000-person campus uses 155Mbps155Mbps (?) (?)

(close to 100 Mbps)(close to 100 Mbps) TJU: 155Mbps TJU: 155Mbps 2.5 Gbps 2.5 Gbps

Regional and backbone providers buy the Regional and backbone providers buy the fastest links they canfastest links they can

Try to get a speedup of 10-30 over access Try to get a speedup of 10-30 over access linkslinks

Page 55: Outline

Faster Backbone / AbileneFaster Backbone / Abilene 2.4 2.4 Gbps (OC48) among gigaPoPs, Gbps (OC48) among gigaPoPs,

increasing to increasing to 9.6 Gbps9.6 Gbps (OC192) (OC192) 100 Gbps (2007)100 Gbps (2007)

Connections at 622 Mbps (OC12) or 155 Connections at 622 Mbps (OC12) or 155 Mbps (OC3)Mbps (OC3)

Access PoPs very close to almost all of the Access PoPs very close to almost all of the anticipated university gigaPoPs anticipated university gigaPoPs

IP over Sonet technologyIP over Sonet technology IP over DWDMIP over DWDM

OC-768 - 40 Gbps OC-768 - 40 Gbps 128×40 Gbps -> 128×40 Gbps -> 10 Tbps10 Tbps

Page 56: Outline

Traffic prediction based planningTraffic prediction based planning Measuring the dial-up network traffic such as Measuring the dial-up network traffic such as

TJ-2163, TJ-163, TJ-169 and so on TJ-2163, TJ-163, TJ-169 and so on Analyzing TJ-2163 traffic Analyzing TJ-2163 traffic

Spectrum analysisSpectrum analysis The TJ-2163 traffic shows seasonal The TJ-2163 traffic shows seasonal

characteristicscharacteristics Building seasonal models for TJ-2163 traffic Building seasonal models for TJ-2163 traffic Doing traffic prediction for TJ-2163 networkDoing traffic prediction for TJ-2163 network VerificationVerification

Comparing the predicted traffic with the Comparing the predicted traffic with the actual trafficactual traffic

Page 57: Outline

TJ-2163 traffic in 2000TJ-2163 traffic in 2000

Page 58: Outline

Spectrum analysisSpectrum analysis A peak - 0.14 (1/day)A peak - 0.14 (1/day)

period: period: 7 days7 days (week) (week) Another peak – 0.28 second harmonic Another peak – 0.28 second harmonic

traffic asymmetry in a weektraffic asymmetry in a week

Page 59: Outline

Seasonal ARIMA modelsSeasonal ARIMA models The TJ-2163 traffic shows seasonal The TJ-2163 traffic shows seasonal

characteristics:characteristics: period: period: 7 days7 days

Multiplicative Multiplicative seasonal ARIMA(p,d,q)seasonal ARIMA(p,d,q) model model (autoregressive integrated moving average)(autoregressive integrated moving average) Tool: Tool: S-PlusS-Plus

ARIMA(p,d,q) modelARIMA(p,d,q) model Building models and Doing traffic prediction Building models and Doing traffic prediction

Building an model to describe TJ-2163 trafficBuilding an model to describe TJ-2163 traffic

ARIMA (1,0,1) X ARIMA (1,1,1)ARIMA (1,0,1) X ARIMA (1,1,1)77

Page 60: Outline

Traffic predictionTraffic prediction Minimum mean square error forecastsMinimum mean square error forecasts Predicting TJ-2163 trafficPredicting TJ-2163 traffic

Using 2000 year’s traffic traceUsing 2000 year’s traffic trace Predict 2001 year’s traffic valuePredict 2001 year’s traffic value

Verification: Verification: Comparing the predicted traffic with the Comparing the predicted traffic with the

actual traffic (in Jan. –Feb. 2001)actual traffic (in Jan. –Feb. 2001)

Page 61: Outline

Problems with capacity planningProblems with capacity planning

Routing and link capacity Routing and link capacity interactinteract

MeasurementsMeasurements of traffic matrix of traffic matrix

Survivability Survivability ~ network changes too ~ network changes too fast ?fast ?