Network Design Performance Evaluation, And Simulation - ITTC

Transcription

Network DesignPerformance Evaluation, andSimulation#6Network Performance.1Network Design Problem Goal Given– QoS metric, e.g., Average delayLoss probability– Characterization of the traffic, e.g., Average interarrival time (arrival rate)Average holding time (message length)Design the systemThree systems will be studied:– Circuit switch, e.g., determine the # lines System 1 M/M/S/S (M/M/S/S / )– Ideal router output port, e.g., determine link capacity System 2 M/M/1 (M/M/1/ / )– Real router output port, e.g., determine link capacity and buffer size System 3 M/M/1/N (M/M/1/N / )Network Performance.2

Network Performance Evaluation Solution methodologies:Mathematical analysis–Model this type of process as a QueueingSystem good for initial design Simulation techniques good for moredetailed analysisNetwork Performance.3Network Simulation Define network simulationDiscuss attributes and application of simulationPresent implementation of simulation systemsDiscuss analysis of simulation resultsDiscuss selection of simulation toolsProvide an overview of ExtendSim8. On the start upExtendsim window there is: A button for tutorials and a video showing how to buildmodels A link to “ExtendSim for DESS Textbook”, a that is a tutorialon the tool. Other useful tools. There is a link to getting the whole user manual on the classweb page. (It is long DO NOT PRINT the whole pdf file.)Network Performance.4

A Definition of Communication NetworkSimulationCommunication network simulation involvesgenerating pseudo-random sequences of message lengthsand interarrival times (or other input processes, e.g. timevarying link quality) then using these sequences toexercise an algorithmic description of the networkoperation.Network Performance.5Attributes of Simulation Simulation Is a Very Flexible Evaluation Tool Simulation Models Can Be Expensive to Construct General Network Characteristics (Sources, Topology,Protocols, Etc.)Minute DetailHuman EffortSimulation Models Can Be Expensive to Run Computer Effort Statistical Analysis of the Results Can Be Difficult Difficult to Gain Insight Into System Behavior Requires Careful InterpretationSimulate Only a Set of Specific ScenariosNetwork Performance.6

When to Use Simulation Whenever Mathematical Analysis Is Difficult or Impossible For Validating Analytic Models and Approximations For Studying Transient Behavior of NetworksFor Systems With Adaptive RoutingFor Systems With Adaptive Flow ControlFor Systems With Blocking (Finite Buffers)For Systems With General Message Interarrival StatisticsHow Accurate Is the Model?Do Approximations Distort the Results?For Experimentation Without Disturbing an OperationalSystem Test Possible Modifications and AdjustmentsNetwork Performance.7Modeling Elements for CommunicationNetworks Traffic and Input Processes Message Arrival Process– Often Interarrival Times Message LengthsOther Message Attributes– Service Class– Error models Algorithmic Descriptions of NetworkProcessing ProtocolsLinks and QueuesRoutingNetwork Performance.8

Sample Realization of an Input ProcessArrivalEvents &LengthsNetwork Performance.9Time Step Approach to NetworkSimulation Approaches to Discrete Event Simulation Time Step Approach (Fixed Increment Time Advance)Event-Scheduling ApproachFixed Increment Time Advance Choice of Increment ImportantToo Large: Multiple Events Happen In Single StepToo Small: Wasted Processing TimeUpdate System States at End of Each Fixed Time IntervalNetwork Performance.10

Event Scheduling Approach to NetworkSimulation Variable Time Advance Update System State Only When Events Occur Advance Time To Next Occurring EventFor Example, Arrivals or DeparturesEvent Calendar Events: Instantaneous Occurrences That Change the State ofthe SystemAn Event is Described by– The Time the Event is to Occur– The Activity to Take Place at the Event Time The Calendar is a Time-Ordered List of EventsNetwork Performance.11Event Scheduling Approach: SimplifiedFlow ControlAn Executive(or Mainline)Controls theSelection of NextEventUse Event Listto determine nextevent to processAdvance simulationclock to event timeUpdate system stateusing event routinesUpdate event listusing event routinesNetwork Performance.12

Event Scheduling for Simple StatisticalMultiplexerNetwork Performance.13Verification and Validation of SimulationModels Model Verification Mathematical (Algorithmic) Description of Behaviour of “RealThing”Determining Whether the Simulation Model Performs As IntendedIn Programming Terminology, “Debugging”Example: Is M/M/1 Model Producing Exponential MessageLengths?Validation Determining Whether the Simulation Model Itself Is an “Accurate”Representation of the Communication Network Under Study (the“Real Thing”)Example: Is the Assumption of Exponential Message LengthsAccurate?Network Performance.14

Verification Methods Modular Development and Verification BreakLarge System Into Smaller Components Verify Component-by-Component Structured Walk-Through Step-by-StepAnalysis of Behavior for Simple CaseNetwork Performance.15Verification Methods Event Trace Detailed Analysis of Model BehaviorCompare to Walk-Through AnalysisModel Simplification and Comparison toAnalytic ResultsGraphical Display of Network Status As theModel Progresses To “See” What Is Happening As It HappensNetwork Performance.16

Some Comments on Validation Simulation Models Are Always ApproximationsA Simulation Model Developed for One ApplicationMay Not Be Valid for OthersModel Development and Validation Should Be DoneSimultaneouslySpecific Modeling Assumptions Should Be TestedSensitivity Analysis Should Be PerformedAttempt to Establish That the Model ResultsResemble the Expected Performance of the ActualSystemGenerally, Validation Is More Difficult ThanVerificationNetwork Performance.17Analysis of Results: StatisticalConsiderations Starting Rules Overcoming Initial TransientsAn Initial Transient Period Is Present Which Can Bias the ResultsAchieving Steady State– Use a Run-in Period: Determine Tb Such That the Long-Run Distribution Adequately Describes theSystem for t Tb– Use a “Typical” Starting Condition (State) to Initialize the Model Quality of Performance Estimates Variance of Estimated Performance MeasuresNetwork Performance.18

Quality of Performance Estimates Simulation results are like laboratorymeasurements, they can be modeled asrandom variablesPerformance estimates should haveacceptable varianceThe more observation reduces the variance.HOWEVER Observations taken fromnetwork simulation will be correlated Cannot directly apply standard statisticalapproaches based on iid (Independent, IdenticallyDistributed) observationsNetwork Performance.19Dealing with Lack of Independence Simple Replication:Multiple SimulationRuns Assume Results for EachReplication AreIndependentCan be InefficientBecause of MultipleStartup PeriodsNetwork Performance.20

Criteria for Selecting a NetworkSimulation Tool Availability CostUsageDocumentationEase of LearningComputation EfficiencyFlexibilityPortabilityUser InterfaceExtendibilityCommon Toolsns-3(http://www.nsnam.org/) Opnet(http://www.opnet.com/) QualNet(http://www.scalable-networks.com ExtendSim Network Performance.21Guidelines to Network Modeling andSimulation Things to Know Know the CustomerKnow the NetworkKnow the Important Performance MetricsThings to Do Establish a Credible ModelExpect the Model to Evolve Plan for successApply Good Software Management TechniquesNetwork Performance.22

ConclusionsSimulation Can Be an Important Tool forCommunication Network Design and Analysis Care and Thought Must Go Into Construction ofCommunication Network Models Care and Thought Must Go Into Interpretation ofModel Output Network Performance.23Extend Overview Allows Graphical Description of Networks Sources,Links, Nodes, Etc.Data Flow Block Diagrams Hierarchical Structure to Control Complexity Be sure and create libraries when creating complexmodels Network Performance.24

Network Performance Evaluation: Elements ofa Queueing verBlockedcustomersNetwork Performance.25Network Performance Evaluation: Elements ofa Queueing er in systemNetwork Performance.26

Network Performance Evaluation: Specific casesfor theoretical analysis Assumptions: Interarrival times are exponentially distributedService times are exponentially distributed– Holding time– Packet length Types of systems– One server (Stat Mux) Infinite memoryFinite memory– S servers and a system size of S (Circuit Switch)Network Performance.27Network Performance Evaluation:Approach Analysis of a pure birth process to characterizearrival processesExtension to general birth/death processes to modelarrivals and departuresSpecialization to the specific cases to find: Probability of system occupancy, Average buffer size, Delay, Blocking probabilityGoal: Design and analyze statisticalmultiplexers and circuit switchingsystemsNetwork Performance.28

Network Performance Evaluation:Analysis of a Pure Birth ProcessArrivals and no departuresλ0λ1λ Arrival rateλλ2 .KOnly Births (Arrivals) AllowedK System State (number in system)-number of arrivals for 0 to t sec-number in system at time tGoal: Find Prob [k arrivals in a t sec interval]Network Performance.29Network Performance.30Network Performance Evaluation:Analysis of a Pure Birth ProcessArrivalsInterarrival Time

Network Performance Evaluation:Analysis of a Pure Birth Process The number represents the State of the system. In networksthis is usually the number in the buffer plus the number inservice. The system includes the server.The time to clock the message bits onto the transmissionfacility is the service time. The server is the model for thetransmission facility.Goal: Find Prob [k arrivals in a t sec interval]Network Performance.31Network Performance Evaluation:Analysis of a Pure Birth Process: Assumptions Prob[ 1 arrivals in t sec ] λ tProb[ 0 arrivals in t sec ] 1- λ tNumber of arrivals in non-overlapping intervals oftimes are statistically independent randomvariables, i.e.,Prob [ N arrivals in t, t T AND M arrivals in t T, t T τ] Prob [ N arrivals in t, t T]*[M arrivals in t T, t T τ]Network Performance.32

Network Performance Evaluation:StateHow to get to state k att t?kk-1tt ttimeNetwork Performance.33Network Performance Evaluation:Analysis Define probability of k in the system at time t Prob[k, t] Probability of k in the system at time t t Prob[k, t t] Prob[(k in the system attime t and 0 arrivals in t) or (k-1 in thesystem at time t and 1 arrival in t)] (1- λ t ) Prob[k,t] λ t Prob[k-1,t]Network Performance.34

Network Performance Evaluation:Analysis Rearranging terms(Prob[k, t t] - Prob[k,t])/ t λProb[k,t] λ Prob[k-1,t] Letting t -- 0 results in the followingdifferential equation:Network Performance.35Network Performance.36Network Performance Evaluation:Analysis For k 0 the solution is: Prob[0,t] For k 1 the solution is: Prob[1,t] For k 2 the solution is: Prob[2,t]

Network Performance Evaluation:Analysis In general the solution is a Poisson probability massfunction of the form:Network Performance.37Network Performance Evaluation: Analysis A Possion pmf of this from has the followingmoments:Poisson Arrival ProcessThe number of arrivals in any T second intervalfollows a Poisson probability mass function.Network Performance.38

Network Performance Evaluation: InterarrivalTime AnalysisArrivalTaArrivalTa interarrival time λ tProb[t Ta t t] Prob[0 arrivals in t sec and1 arrival in t]Prob[t Ta t t] Prob[k 0,t]Prob[k 1, t]tProb[t Ta t t] Network Performance.39Network Performance Evaluation: InterarrivalTime AnalysisLet t -- 0 results in the followingNetwork Performance.40

Network Performance Evaluation:Interarrival Time AnalysisMAIN RESULT:The interarrival timefor a Poisson arrival process followsan exponential probability density function.Network Performance.41Network Performance Evaluation:Birth/Death Process AnalysisNow allow arrivals and departures.The Model for the Birth/Death ProcessNetwork Performance.42

Network Performance Evaluation:Birth/Death Process AnalysisArrivalsDeparturesNetwork Performance.43Network Performance Evaluation: Birth/DeathProcess Analysis The departure process is Poisson-Prob[ 1 departure in t sec when the systemis in state k ] µk tProb[ 0 departure in t sec when the systemis in state k ] 1- µk tNumber of departures in non-overlappingintervals of times are statisticallyindependent random variablesProbability[arrival AND departure in t] 0Network Performance.44

Network Performance Evaluation: Birth/DeathProcess AnalysisPoisson service processimpliesan exponentialprobability density function for themessage lengthNetwork Performance.45Network Performance Evaluation: Birth/DeathProcess AnalysisTo solve for the stateprobabilities:Follow the procedureused for the pure birthprocess and use thetransitions shownNetwork Performance.46

Network Performance Evaluation: Birth/DeathProcess Analysis Specific queueing systems aremodeled by Settingstate dependent arrival rates,λk Setting the state dependent servicerates, µk Solving for the steady stateprobabilitiesFor details see: Queueing Systems. Volume 1: Theoryby Leonard Kleinrock, Wiley, 1975(or any queueing theory book)Network Performance.47Network Performance Evaluation:Queueing System Notation (Kendall's notation)A/b/m/K/L A type of arrival process b type of service process m number of servers K maximum number of elements allowed in thesystem system size L population size (if L missing then )Network Performance.48

Network Performance Evaluation: Specialcases: A / b / m / K / L A M the arrival process is Poisson and theinterarrival times are independent, identicallydistributed exponential random variables. (M Markov)b M the service process is Poisson and theinterdeparture times are independent, identicallydistributed exponential random variables.A or b G times are independent, identicallydistributed general random variables.A or b D times are deterministic, i.e., fixed timesExamples: M/M/1/ / (Ideal router output port)M/M/1/N / (Real-finite-buffer router output port) In Homework will doM/D/1 for VoIP analysisM/M/S/S / (Circuit Switch)Network Performance.49Network Performance Evaluation: M/M/1 Nolimitation on buffer size means that thearrival rate is independent of state or Only one server means that the service rate isindependent of state orNetwork Performance.50

Network Performance Evaluation: M/M/1Solving forthe stateoccupancyprobabilities load traffic intensityNote ρ λL/C rin/CNetwork Performance.51Network Performance Evaluation: M/M/1If the load is greater than 1 then the systems isnot stable and the buffer occupancy grows without bound.Network Performance.52

Network Performance Evaluation: M/M/1Load 0.5E[K] 1Network Performance.53Network Performance Evaluation: M/M/1Load 0.95E[K] 19 Final simulated value 12.05Network Performance.54

Network PerformanceEvaluation: M/M/1Load 0.95E[K] 19Network Performance.55Network Performance Evaluation: M/M/1/NOnly one server means that the service rate isindependent of state or The limitation on system size means that the arrivalrate is dependent of state or Network Performance.56

Network Performance Evaluation: M/M/1/NSolving for the state occupancy probabilitiesNetwork Performance.57Network Performance Evaluation: M/M/1/N The Quality of Service (QoS) metric in this case is theprobability of blocking.For a M/M/1/N queue the blocking probability isgiven byDesign Problem: Given PB and ρ find N(recommend constructing a spread sheet)Network Performance.58

Network Performance Evaluation: M/M/1/NWhat is going on during this time?Average Holding Time 0.95 Arrival rate 1(load 0.95) Theory PB 0.23Simulated PB 0.219Network Performance.59Network Performance Evaluation: M/M/S/NThe limitation on system size means thatthe arrival rate is dependent of state orNetwork Performance.60

Network Performance Evaluation: M/M/S/NMultiple servers means thatNetwork Performance.61Network Performance Evaluation: M/M/S/NThis model is difficult to solve in general.The case of special interest is S N.This case models a circuit switch system with Ntransmission facilities. A call arriving to the system withall transmission facilities busy is blocked.1Call ArrivalsNo BufferNNetwork Performance.62

Network Performance Evaluation: Erlang BformulaSolving for thestateoccupancyprobabilitiesk 0 NRelationship amongP N ρBfound using provided tableor web Erlang B calculatorNetwork Performance.63Network Performance Evaluation: M/M/S/NHolding time 3min,Arrival rate 0.833 calls/minN 4Load 3*0.833 2.5 Erlangs Theory PB 0.15(From Erlang B table)Simulated PB 0.198Network Performance.64

Network Performance Evaluation: ExampleDesign of a building phone system. The design goal isto minimize the number of lines needed between thebuilding and the phone company. The blocking QoS isspecified to be 5%. A building has four floors, on each floor is a separatedepartment. Each department has 22 phones, eachbusy 10% of the time during the busy hour. Network Performance.65Network Performance Evaluation: ExampleCase A Acquireone telephone switch for eachfloor. 2.2 Erlangs/floor & B 5% gives: 5 lines/floor or 20 lines for thebuilding.Network Performance.66

Network Performance Evaluation: ExampleCase B Acquireone telephone switch for the building. 88 phones @ .1 Erlang/phone 8.8 Erlangs 8.8 Erlangs & B 5% gives: 13 lines for the building Select Case BNetwork Performance.67Network Performance Evaluation: DelayAnalysis for M/M/1 Averagedelay average transmission time queueing time Queueingtime (average number of messages in system ahead)*(average time to serve each message)Network Performance.68

Network Performance Evaluation: DelayAnalysis for M/M/1Network Performance.69Network Performance.70

Network Performance Evaluation:Example Which is better?Network Performance.71Network Performance Evaluation:ExampleAssume you have 10 PC’s each with a 100 kb/s line toa server. Assume 1000 bits/packet Assume 50 packets/sec/PC Service time 1000bits/100,000 b/s 10ms Traffic intensity 50*1000/100,000 0.5 Average delay 10ms/.5 20ms Network Performance.72

Network Performance Evaluation:Example-continued Assume the 10 PC’s are connected to a statisticalmultiplexer at 1 Mb/s Traffic intensity 0.5 Service time 1 ms Average delay 2 ms The show that traffic aggregation helpsBetterNetwork Performance.73Do the Design Problem:Find the link capacity between the stat mux andthe server such that the delay is 20 ms.Network Performance.74

Network Performance Evaluation:Design ExamplePrinter501LinkSpeed C b/s155ComputerCenterYoungbergHallNetwork Performance.75Network Performance Evaluation:ExampleAssume each customer and printer isconnected using Ethernet, i.e. at 1 Gb/s How fast does the link betweenYoungberg and the computer centerhave to be to guarantee all thecustomers can use the 1 Gb/s. C 55 Gb/s Too expensive Network Performance.76

Network Performance Evaluation:Design Example Customer performance requirements: Delay 100 ms (use M/M/1 analysis to find C) Loss 10% (use M/ M/ 1/N analysis to find N)Assume customer traffic: Average packet length 9000 bytes/packet 55 sources Packets are generated at a rate of 2 per second/sourceNetwork Performance.77Network Performance Evaluation:Design Example Μ/Μ/1 analysis to find C M/M/1/K analysis to find system size(K) λ 55*2 110 packets/secΕ[Τ] 100 ms 1/10 1/(µ λ)µ 120C µ L 120 * 9000 Bytes/packet*8 bits/Byte 8.64 Mb/sRate in (110 packets/sec) * 9000 Bytes/packet*8 bits/Byte 7.92Mb/sρ Rate in/C (7.92Mb/s)/(8.64 Mb/s) µ/λ 110/120 0.916ρ 0.916 and Blocking Prob 0.1 K 7Final design is: C 8.64 Mb/s Average system size 7 packetsNetwork Performance.78

Network Performance. 1 Network Design Performance Evaluation, and Simulation #6 Network Performance. 2 Network Design Problem Goal Given - QoSmetric, e.g., Average delay Loss probability - Characterization of the traffic, e.g., Average interarrivaltime (arrival rate) Average holding time (message length) Design the system Three systems .