Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

OPNET Assignment

Solving Application Performance Problems using ACE

In today’s IT organizations, there has been increasing need of detailed, quantitative understanding of
the complex interactions among applications, servers, and networks on which the performance of
networked applications depend. OPNET’s ACE can directly address these challenges. ACE enables
you to capture, filter, and synchronize application traces from multiple network segments. ACE
applies expert knowledge to captured application data for automated troubleshooting. It provides
both a network-layer and an application-layer view of an application exchange. This helps you
pinpoint the individual components of application and network delay, and thereby see how your
network affects-and does not affect-an application’s performance. ACE also uses AppDoctor, which
provides instant, comprehensive diagnoses of your network and application’s performance and thus
helps identify bottlenecks and their possible causes. These key features expedite the resolution of
performance problems, boosting the productivity of IT organizations.

For the purpose of this assignment, let us consider a two-tier Oracle Application. The Oracle server
and the Oracle client are within the same LAN.

1. Set up the ACE capture agent


a) Bring up OPNET IT Guru
b) Select File New Application Characterization
c) Select Application Capture Manager from the ACE Capture Wizard dialog box
• The OPNET Application Capture Manager dialog box appears
d) Find the IP address of your PC
• Type in ipconfig in the MSDOS command prompt
e) Select Add Agent in the Application Capture Manager dialog box
f) In the Remote Application Capture Agent Editor
• Specify IP address of your PC in the text box corresponding to Hostname
• Take all the other defaults
• Select OK
2. Capture application trace file and import trace file into ACE
a) You should be back in the Application Capture Manager screen
b) Select the Update Status button (lower left corner)
c) Status should show Agent is idle
d) In the text box corresponding to Next Capture Name: specify a suitable name, say
OracleApplicationTask1
Your Application Capture Manager screen will look similar to the one below.
3. Bring up your Oracle SQL Plus Client
a) Select Start Programs Oracle-ORA8i_HOME Application Development SQL Plus
or Start Programs Oracle for Windows NT SQL Plus 8.0
b) Type in User Name: ism6225 Password: ism6225 Host String: vdb3.world or vdb3 to
connect to the database. One of the host strings to work.
c) First type the command set autotrace traceonly at the SQL prompt.
d) Next, type the following query at the SQL prompt
select rs.sitename, a.agency_name, rd.year, rd.measured_value from agency a, rainfall_data
rd, rainfall_site rs where rd.siteid=rs.siteid and rd.agency=a.agency and rd.year>1960;
e) Without executing the query (DO NOT press Enter key), minimize the SQL Plus window.
4. Capture the Application
a) Go back to the Application Capture Manager window
b) Select Start Capture, maximize the SQL Plus window and hit the enter key
c) The query takes some time to execute. Once the SQL prompt returns indicating the
successful execution of the query, go back to the Application Capture Manager and select
Finish Capture
5. Import application trace file into ACE
a) Select Import Trace
b) You should now be in the ACE Import: Choose Capture File(s) dialog box, with the
capture file already selected
c) Select OK
d) In ACE Import: Rename Hosts dialog box, select Next
• Use this dialog box to rename tiers. The tier name is often an IP address; this
dialog box allows you to give the tier a more meaningful name. When a tier is
renamed, subsequent references use the new name rather than the address
• Rename your hostname (IP address) to Oracle_Client
• Rename 131.247.93.245 to Oracle_Server
e) In ACE Import: Specify Tier Locations dialog box select Next
f) In ACE Import: Specify Bandwidth/Latency dialog box for segment select Next
g) In ACE Import: Specify Bandwidth/Latency dialog box between locations select Next
h) In Save Import Configuration dialog box select Finish
i) View captured file in ACE Data Exchange Chart, which depicts the flow of application
traffic between tiers.
ACE displays the transaction at both the application message level (Application Message Chart) and
network packet level (Network Packet Chart) to provide a clear view of the transaction dynamics of
the network. Application Message Chart shows the application requests and responses between the
server and the client. Network Packet chart shows packets at the network level.
Note: We are interested in the data exchange between Oracle_Server and Oracle_Client only. We
need to filter out traffic at other tiers if we find extraneous traffic. An easy way to identify and
remove extraneous traffic is to use the Tier Pair Circle, which shows communication between tier
pairs. Traffic can be visualized and sorted according to many different statistics (total traffic,
retransmissions, application turns, etc.).

You need to do the following if and only if you find extraneous traffic. For isolating extraneous
traffic:
a) Select AppDoctor Tier Pair Circle or click the TIER PAIR action

button
b) Use the View Statistic pull-down menu at the top of the dialog box to view the list
of different statistics available
c) Select the Average Network Packet Payload Size (Bytes) statistic. Notice that
each statistic re-colors the conversation pair arrows.

d) Select the Network Packet Bytes (Directional) statistic.


• The Tier Pair Circle will show the majority of tier pairs including a
particular IP address. This is a broadcast address and is not related to the
Oracle transaction. This traffic should be removed.
• Select the IP address label. Right-click and select Permanently Delete
Selected Items from the pop-up menu.
• You have now removed the extraneous traffic, but now the two
remaining tier pairs, Oracle_Server and Oracle_Client, are crowded
together. Select the Oracle_Server label and drag it to the opposite side
of the circle so both tier pairs are easier to see.
6) Now that we have filtered the traffic, we can analyze the application in more detail, using the Data
Exchange Chart.

a) Click the DATA EX. action button to open the Data Exchange Chart. If the remaining
traffic doesn’t fill the entire screen, right-click in the workspace and select Full Zoom
The Data Exchange Chart appears. It is shown below
The colors of the application messages represent the size of the messages.
b) Differentiate the messages flowing in different directions. Select View Split Groups
Now the messages are split into two groups and you can detect more details.
c) View the tool tip by resting the mouse over the first group of messages
d) You may want to have a closer look at the application messages. To do this, click on the
Zoom action button. Drag the cursor to create box around the target area. If you are not
happy with your initial zoom, you can select the Unzoom action button from the menu and
try again. Once you have adjusted the zoom level, you can use the arrow keys to scroll in all
directions. You can study the individual messages. The arrowhead indicates the direction that
a message flows.
Questions
1. At what time does the data flow between the Oracle_Server and Oracle_Client begin and at what
time does it end?
2. Which tier has the most processing time?

AppDoctor

Now, we will do analysis using AppDoctor. AppDoctor shows you exactly where the application is
stalling and itemizes all delays by address and type into an “AppDoctor Diagnosis” report. Problems
are identified and recommendations are provided. AppDoctor’s Summary of Delays provides insight
into the root cause of the overall application delay. It decomposes the total application response time
into four components:
• Application delay, calculated separately for each tier, is the amount of time that the
application was being processed by each host.
• Propagation delay is the component of delay due to latency in the network. (Latency is the
time it takes for 1 bit to be transmitted across the network.)
• Transmission delay is the component of delay caused by the limited bandwidth of the
network.
• The Protocol/congestion component of delay is a metric of network restriction to packet
flow. This restriction may be caused by packet queuing in the network (congestion) or by
flow control mechanisms of the network protocols (TCP, for example, has several built-in
flow control mechanisms).

1) Select AppDoctor Summary of Delays or click the SUMMARY action button.


The Summary of Delays dialog box appears

AppDoctor’s Diagnosis provides a more granular view of the potential bottlenecks affecting this
transaction. Diagnosis tests the current transaction against issues that often cause performance
problems in network-based applications, grouped by category. Values that cross a specified threshold
(user-settable) are marked as bottlenecks or potential bottlenecks.

2) Close the Summary of Delays window.


3) Select AppDoctor Diagnosis
The AppDoctor Diagnosis dialog box appears.
4) Click on the word Bottleneck to see a description of the diagnosis.
5) Close the Diagnosis window.

AppDoctor also provides summary statistics for the application transaction.


6) Select AppDoctor Statistics. View the statistics
7) Close the Statistics window.
Questions
What is the largest contributing factor to the application response time?

What do you see as the major bottleneck to performance?

What are your major observations from the statistics?

Tree View

Next, we will look at the Tree View, which gives us a hierarchical view of tiers, connections,
application messages and network packets. Each individual frame and frame grouping (tier pair,
message flow group, etc.) is displayed on a separate line, with summary information arranged in

columns across each row. Select the Tree View action button for the Tree View to be
displayed. You can see the application level data.
(Try to think about a question here)

Protocol Decodes

Let us now examining ACE Decodes using the Protocol decode viewer. To do this,
a) Bring up the Data Exchange Chart
b) Right-click on any application message group and select Show Protocol Decodes
for Selected Items from the pop-up menu.
The Protocol Decodes Viewer appears.
It looks somewhat similar to the one below.

c) Expand one or two frames by clicking on the + sign.


The Protocol Decodes viewer lists all the messages
d) The highest level provides Source, Destination, Size, Send Time, Receive Time,
Decode and Decode Summary.
e) If you like, drill down further into the individual packets to see more details.
f) Close the Protocol Decodes Viewer.
(Try to think about a question here)

Select File Save to save your work.

We will now view the Graph Statistics. Select the Graph statistics action button

Select the statistics as shown in the figure below and Click Show
The Graphs appear in separated windows
Select File Save to save your work.

Generating the Network

Now, we will use ACE with OPNET’s simulation environment to explore solutions and “what-if”
scenarios. ACE automatically creates baseline network topologies with application profiles from
network analyzer traces and also selects some statistics for collection-giving you a ready-to-use
simulation model with which to perform response time and what-if scenario studies including
performance analysis, technology migration, bandwidth, sizing, and more as we saw in the first 2
assignments. The import wizard allows you to control certain aspects of the topology and
application; others can be customized after the import is complete.
a) Select SIMULATE action button
b) In the next dialog box enter
• Project Name: Oracle_Application_Study
• Scenario Name: Initial_topology
• Select OK
c) In Startup Wizard: Initial Topology dialog box enter:
• Import from ACE
• Select Next
d) In Configure ACE application dialog box enter:
• Application Name: Oracle ACE Application
• Repeat Application: 2 times per hour
• Select Add Task
• In ACE Trace File column click on the word specify
• In the pop-up menu, select the file OracleApplicationTask1
• Select Next
e) In the Create ACE Topology dialog box
• Leave all defaults
• Select Create
f) The network topology will be appear in the Project Editor. It will look somewhat
similar to the following

g) From the IT Guru top menu select


• Simulation Configure Simulation
h) Specify the Simulation duration to half-an-hour.
i) Run the Simulation
j) After simulation completes, select Results View Results
k) In the View Results dialog box
• Under Global Statistics, expand the ACE hierarchy
• Click on Task Response Time (secs). You may also want to see the
average task response time.
• Select Show

Questions
What is the application task response time? Suggest ways to improve the application task response
time. Make suitable upgradations to the existing model and run the simulation and see if there are any
improvements in the application task response time. Turn in the statistic graph for the upgraded
model. Rerun the simulation by specifying the number of clients as 8. The easiest way to this is to
Duplicate the existing scenario. Copy and paste the existing Oracle Client 7 times on the project
editor and connect them to the switch. What was the impact on response time? What other changes
would you make to test out possible improvements to application response time (if any)?

Publishing ACE Data


You can create a web report of an ACE model from within the Data Exchange Chart by
choosing File Generate ACE web report. Click OK in the dialog box that appears. You will see
the generated reports in your browser.
a) Click on the AppDoctor Diagnosis link.
b) Click on View the Values link. The default is View the diagnosis.
c) You will see the numeric values and the percentages for each statistic.
d) Click on the individual links to see what each value implies.

Turn in the AppDoctor Diagnosis Values web report.

You might also like