19
Page 1 of 19 Lab 3 TCOM631 Overview The goal of this lab is to teach you how simulation and modeling can be used in analyzing applications and networks. You will use Riverbed (OPNET) Modeler, simulation and modeling software, to study performance of several voice codes given different IP network conditions (packet loss, network latency). MOS is a typical measure of this performance. You will also make some changes to SIP and H.323 models and observe their operation. All of these modeling scenarios will use something know as Discrete Event Simulation (DES). Objectives Get familiar with the software and VoIP modeling capabilities Analyze performance of the following voice codecs: G.711 Silence, G.726 32K, G.726 32K Silence, G.728 16K, G.723.1 5.3K, G.729A, G.729A Silence Specify operation of SIP and H323 signaling/control protocols and measure GoS and signaling latency Discuss additional details, answer several questions on the way through the lab, collect results and produce reports with your observations Write your names here: _________________

Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Embed Size (px)

Citation preview

Page 1: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 1 of 19

Lab 3 – TCOM631

Overview

The goal of this lab is to teach you how simulation and modeling can be used in analyzing applications and

networks. You will use Riverbed (OPNET) Modeler, simulation and modeling software, to study performance

of several voice codes given different IP network conditions (packet loss, network latency). MOS is a typical

measure of this performance. You will also make some changes to SIP and H.323 models and observe their

operation. All of these modeling scenarios will use something know as Discrete Event Simulation (DES).

Objectives

Get familiar with the software and VoIP modeling capabilities

Analyze performance of the following voice codecs: G.711 Silence, G.726 32K, G.726 32K Silence, G.728 16K, G.723.1 5.3K, G.729A, G.729A Silence

Specify operation of SIP and H323 signaling/control protocols and measure GoS and signaling latency

Discuss additional details, answer several questions on the way through the lab, collect results and produce reports with your observations

Write your names here: _________________

Page 2: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 2 of 19

Instructions

1) Open OPNET Modeler 17.1 (32-bit verison)

2) Go to File Open… and open project named VoIP_design_TCOM590 (located in C:\App_Data\Cadence\SPB_Data\ op_models_GMU\ directory)

The network model you open should look like this.

The network model that you are looking into has been imported from real network device configurations (Cisco

routers). You might be able to click with the right mouse button over SntClarita_Ceo router and select View Imported Configuration File to see one of these configurations. If it doesn’t work and you want to see it, remind me and I will bring one configuration file to demo it to you during one of the upcoming classes.

Page 3: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 3 of 19

Close configuration file window. Each component you see in this network model is a node with underlining

state machine that models protocol and communication behavior. Double click on SntClarita_Ceo router to

open the node model.

Now double click on “ip” component to expand IP process model (state machine).

Close Process Model and Node Model windows. These node and process models can be reconfigured using C

and C++ programing language to meet standard protocol specifications or to experiment with new technologies

and standards.

3) You can also bring additional information, relevant for modeling, from other external sources (i.e. network

performance). In this example network delay has been measured between all access routers (i.e. routers

connected to the Service Provider). These usually come directly from the network monitoring tools or you

might calculate them knowing some network specifics.

Page 4: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 4 of 19

Go to …\OPNET\op_models_GMU\Performance Metrics and open “Propagation delays.csv” file to observe

propagation delays that were measured.

Question 1: Would you rather use Min, Average or Max delay values for VoIP performance studies? Explain

your reasoning. ____________________________________________________________

__________________________________________________________________________

__________________________________________________________________________

Close “Propagation delays.csv” file.

4) Go to Topology Import Performance Metrics From Text File…

5) Choose the file …OPNET\op_models_GMU\Performance Metrics\Propagation delays.csv and click Import.

6) After the import, the Import log will come up.

Page 5: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 5 of 19

Delay performance across different links in the model can be assigned by modifying model attributes.

Click with the right mouse button on top of one of the links in the model and choose Edit Attributes

(Advanced). The pop up window similar to the one bellow will pop up. Look for delay attribute and instead

distance based type 0.05 to specify to specify 50ms delay for this link. Click ok to close the window. Any

attribute in the model can be changed this way, but you would need to get familiarized with the attribute

hierarchy for individual objects. There are other more automated ways to change attributes and model

characteristics, however, we will not explore these for now.

Go to File -> Close to close this project. Click Don’t Save since we don’t need to save it.

Let me know if you have any questions before we continue.

Page 6: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 6 of 19

NOTE: Before you start look into Appendix A, at the end of this document, to setup modeling repository.

Simulations will not work without it.

7) We will now open another project. Go to File Open… and open project named Voice project located in C:\OPNET\17.5A\models\std\example_networks. You can get to it easier if you click on a Windows icon

circled in red on the following image. This batten can be used to switch between Windows and

Riverbed(OPNET) specific browsing modes.

8)

Change scenario to SIP by selecting Scenarios –> Switch to Scenario -> SIP

Page 7: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 7 of 19

You will now see SIP scenario as shown in the following screen capture.

SIP Scenario

Stop now, after SIP Scenario is opened, and wait for other classmates to get to the same point. You may take a

quick break and come back. I will guide you through the remaining part of the lab manual from this point on.

Let’s continue together… (High level instructions are also available to remind you once you start doing the lab

on your own.)

9) Visit “Application Config” and “Profile Config” objects within the SIP scenario to observe codecs being

assigned to the VoIP application and to define how VoIP profile configuration is executed (call initiations

and durations). You can do this by clicking with the right mouse button on the top of these objects and by

choosing Edit Attributes. We will start by getting into “Application Config” object first. Once you click with

the right mouse button, navigate to app all the way till you get to the codec selection (Application

Definitions -> Voice - IP Telephony -> Description -> Voice). This is the place you will use later on to

change codecs and complete your lab assignment. See the image on the left. Close all open application

definition windows for now.

The next step is to inspect configuration of the Profile Config object. We will use this object to define call

behavior characteristics. Set the call duration to 300 seconds (constant) and inter-call time to 300sec

(constant). See the image on the right. Navigate to Profile Configuration -> Voice - IP Telephony ->

Applications and use the Duration attribute to set call durations and Repeatability attributes to set call

execution patterns.

Application Config Profile Config

Page 8: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 8 of 19

10) Cloud object allows you change network performance parameters - packet loss, delay (Change “ip cloud”

delay attribute to 0.02 constant (20ms) as shown on the following image). You can get to these attributes by

clicking the right mouse button on the top of the IP Cloud object and choosing Edit Attributes.

11) Navigate to Performance Matrices -> Packet Discard Ratio for packet loss specification and to

Performance Matrices -> Packet Latency to specify network packet latency within the network.

12) You will now need to go to the DES tab in the top menu and define what SIP and voice-related statistics will

be collected during the simulation. (You will find these under Node Statistics including MOS, jitter, etc).

Question 2: How do you define MOS? Does MOS capture and measure SIP signaling

performance?________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________ ___________________________________________________________________________

Question 3: How do you define GoS?

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________ ___________________________________________________________________________

13) Follow these screenshots to choose statistics the following statistics (all voice application, calling and called

party statistics; all SIP UAC and UAS statistics; and all RTP statistics):

Page 9: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 9 of 19

14) Before you start running your simulation let’s see how these applications and profiles get assigned to the

VoIP terminals (UA clients). Open the caller location by double clicking on San Francisco subnet. Right

mouse click on the caller and chose Edit Attributes once again. On the caller side you assign VoIP (or any

Page 10: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 10 of 19

other app) by going into Applications -> Application: Supported Profiles section. The Voice – IP Telephony

profile has already been assigned. Once here we will look into SIP specific attributes and find the Proxy

Server specification. This is the server that has already been added to the scenario and you will look into just

a bit later. You can close this window and move to the callee side now.

Return to the parent subnet by clicking with the right mouse button somewhere on the project screen (but not on

any of the objects in the window) and selecting Go to Parent Subnet option from the list. Once you are in the

parent subnet double click on the Pittsburgh subnet to visit callee side of the scenario. Once there, right mouse

click on the callee and chose Edit Attributes once again. On the callee side you assign VoIP (or any other app)

by going into Applications -> Application: Supported Services section. The Voice – IP Telephony application

has already been assigned. You can close this window and move to the proxy server side. You probably noticed,

VoIP application is defined in one direction only. You could repeat and define it for the opposite direction but

you will not need to do it for this lab.

Jump back to the parent subnet and go to the Dallas subnet. There is a proxy_server object there. The only

parameter you will need to change for the second part of the lab is Maximum Simultaneous Calls. We will leave

it for now to be unlimited. Class the proxy_server attribute window and move to the parent subnet.

Page 11: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 11 of 19

15) Let’s now run Discrete Event Simulation (DES) and collect results we will be analyzing. Go to DES ->

Configure/Run Discrete Event Simulation...

After DES completes look at those collected results/statistics. Go to DES -> Results -> View Results…

Page 12: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 12 of 19

Choose DES Graphs as shown (browse and select node-level statistics). Go to San Francisco and expand the

three to the left to get to MOS checkbox. Select the checkbox and you should see he graph in the panel to the

right of the window.

Now change the Presentation from As Is to average and click Show button to open the panel. Click with the

right mouse button in the graph and choose Export Graph Data to Spreadsheet to obtain all values you will use

for codec MOS analysis. Use these values to calculate mean, min, max, 95th percentile and Standard Deviation.

You can now start experimenting and analyzing performance of standard voice codecs using the different

network characteristics. Here are few examples:

- Change codec to g.711 and no compress/decompress delay (Observe difference in MOS).

Page 13: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 13 of 19

- Continue changing codecs (G.711 Silence, G.726 32K, G.726 32K Silence, G.728 16K, G.723.1 5.3K,

G.729A, G.729A Silence) and observe different MOS values.

- Change network delay (210ms; constant) and observe MOS impact.

- Bring delay back to 20ms, change network packet loss to 9%, and observe MOS impact.

RECORD your results in the table listing codes and observed results.

Summarize codec performance under different scenarios and identify what is the best and worst performing codec (for these three network condition) as

part of your lab report.

Once you are done with the first part:

16) Add there more callers and callees at both ends/subnets (copy and paste those you already have in this

scenario). Use standard Windows copy/paste methods to complete this action. Click to place the node and

then connect it to the router.

-

Set “Maximum Simultaneous Calls” attribute on the proxy server to 2 (Observe DES results for proxy server -

calls that are blocked, calls that are completed, etc.). Change call arrival and duration distributions from

constant to exponential and look into DES proxy server results.

Calculate GoS taking simulation results from this scenario.

17) There is one more activity you will have to complete in this lab and that is latency comparison for H.323

direct endpoint call signaling (peer-to-peer) and the gate-keeper routed call signaling methods.

Page 14: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 14 of 19

- You will use the same Voice project but different scenario. Go to Scenarios -> Switch to Scenario ->

H323. There are two subnets in this scenario, San Francisco and Pittsburgh. You probably already think

there is a caller in one of them and a callee in the other one. And you are certainly right. Well, stop for a

second. There is no SIP server (and it shouldn’t be there with H.323 terminals) and there is no

Gatekeeper. You are right again. First of all you will experiment with the peer-to-peer call setup

between two H.323 terminals, collect statics and then add H.323 Gatekeeper connecting it to the router

in San Francisco (as we mentioned during the first part of the lab you would most likely end up

connecting these systems to the Ethernet switch but for simplicity we have direct connection to the

router once again.

- Make sure to collect Setup Time statistics for H323 before you start running the simulation.

- Run DES and export call “setup time” statistics for San Francisco caller. You will compare these to

those obtained by running the scenario with the gatekeeper-routed call setup.

18) Add one Gatekeeper within San Francisco subnet.

- Go to San Francisco scenario.

- Chose Topology -> Open Object Palette from the top menu. A new window will pop up.

- Type gatekeeper in the Search by name: box and click Find Next button. Double click on

H323_Gatekeeper object and move the mouse to the subnet window to add gatekeeper to the model.

Page 15: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 15 of 19

Once in the subnet click with the left mouse button and then Esc button on the keyboard to stop adding

additional gatekeeper objects. You should see the gatekeeper added to the subnet. Change the name of

this object from node_0 to Gatekeeper. You can do this by clicking the right mouse button on the top of

the object and choosing the Set Name option.

- You will now need to connect gatekeeper to the router by adding the link between two objects. You can

do this by copying and pasting link model that already connects workstation to the router. - Change delay on this link from Distance Based to 245ms (0.245). Make sure you click OK once you are

done with the change.

- Change call signaling mode on a caller workstation from Direct Endpoint Call Signaling to Gatekeeper-

routed Signaling for H323 specific attributes on this workstation.

Page 16: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 16 of 19

19) You are now ready to run another DES simulation.

- Go back to the parent scenario and run DES one more time.

- Export caller’s setup time statistics

Compare delay statistics from both DES runs and provide your observations

to me.

END

Page 17: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 17 of 19

Appendix A

Making sure model repositories are set correctly for Discrete Event Simulation. The release of

the OPNET software you are working on is probably newer, thus, some of the windows will

look different.

- Click on Edit and select Preferences.

- Type “repos” and click the Find button.

Page 18: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 18 of 19

“Network Simulation Repository” will be selected.

Open the “Value” field for this preference.

Click on the Insert button ‘stdmod” valu:

Page 19: Lab 3 TCOM631 - George Mason Universitymason.gmu.edu/~dhrnjez/TCOM631_Lab3.pdfPage 1 of 19 Lab 3 – TCOM631 Overview The goal of this lab is to teach you how simulation and modeling

Page 19 of 19

And click “OK” twice.