Ensuring Application Performance
Applications have grown in complexity, developing multiple layers, which can make maintaining performance like walking a tightrope. Luckily, we have ideas for managing these layers and keeping application performance in perfect balance. Read more.

     
   
  Peeling back the layers of Multi-Tiered Apps
Today’s CRM packages, accounting platforms, and other complex database driven applications are almost impossible to house on a single system. Instead, these applications have evolved into multi-tiered applications which consist of multiple server tiers handling different application processes.

 

In a multi-tiered environment, the client makes a request to application servers, which relays it to the middleware tier. The middleware layer connects to multiple database servers to handle the various requests and inquiries. Each request then spawns responses as the data is sent back to the client.

The Troubleshooting Challenge
These layers present a unique troubleshooting challenge: how do you identify and track latency amongst the various components that make up the multi-tiered application?

Most monitoring tools track only client-application tier interactions, and are unable to identify and correlate the other conversations generated by an application request. As a consequence, slow overall response time to the client is identifiable but locating the source is difficult.

Record and Resolve
Enter the GigaStor™. Because this device captures and saves every network conversation, it's a straightforward process to rewind the network and investigate application problems. Let's look at how you'd identify conversations relating to the multi-tier application and pinpoint the cause of delay.

A user complains CRM database searches are extremely slow. You need to obtain information on the search, including the customer's name. With a lot of network between the client and the application servers, it’s important to first answer the age-old question: is it the network or the application that’s at fault?

First, determine whether network delay appears slow, select the specific conversation and then look up network delay and response times (Select Capture > Analyze > Expert Analysis Tab > TCP Events > locate statistics per conversation). Because the network delay was higher than normal, we use MultiHop Analysis to identify whether the application or network is the source of delay. In this case, we determine the application response time is responsible for the delay.

We'll now locate the specific conversations and components that compose the application, by searching for a data string or unique identifier present in all conversations. Isolate a GigaStor capture around the time of the user's CRM search. Using the Observer 13 search functionality, as shown in the Tech Spotlight article, the customer last name serves as a unique identifier to locate and filter the three conversations pertaining to the CRM search.

In the end, you'll have a time-synchronized capture showing communication between the application components laid out in the decode window. You'll then be able to identify which component is the source of delay. Here, we find the delay between the application and middleware. At this point, review the middleware's hardware and software components using Link Analyst® to resolve the problem.

While multi-tiered applications are necessary for meeting the demands of large business processes, it can be a nightmare to accurately diagnose delay problems. Capturing and storing all communications is the key to digging deep into the underlying components and accurately pinpointing the source of delay.

 

     
   
  Finding Multi-Tiered Conversation Components
We've shown you how to troubleshoot multi-tiered applications. Now you'll learn how to identify the component conversations that make up the application. In this scenario, a user complains the CRM database is slow, while looking up an existing customer, Michael Brown.

Within the decode you view a GigaStor capture performed around the time of the search. Now, we'll learn how to identify the appropriate conversations associated with the CRM program.
  1. From the overhead menu select Tools > Find


  2. In the Find Packet Window, select Raw Packet Data as the Search Area, because the customer name is considered to be raw text. Enter the customer's last name in the Find Sequence space and click "Find All Conversations Containing Search Sequence." This will generate a list of all conversations that contain the specific keyword.


  3. The TCP/UDP Conversations Containing Search Sequence Window shows all conversations including the last name Brown. From here, select the relevant conversations and click Post Filter to decode specific packets. You'll also be able to identify all conversations and components of the multi-tiered application.




     
 
february 2009  


Last Month's Answer
Internet Relay Chat (IRC) was originally assigned to port 194/TCP by the Internet Assigned Numbers Authority (IANA).

Congrats to last month's winner, Julio Kato of Sao Paolo, Brazil.

This month's question:
MAC addresses are a feature of what OSI model layer?

Submit your answer and be entered to win a Network Instruments® polo shirt.

Understanding Applications
White Paper

Tackling application performance

Recession-Proof Your IT Dept
8 Steps for IT in turbulent economic times

Destination: Performance
We're bringing the latest in troubleshooting to you

Unified Communications
London (Booth 810)
March 11-12

NIU in Kent, UK
March 17-19

NIU in Chicago
March 23 - 26