Mike Canney. Application Performance Analysis



Similar documents
Mike Canney Principal Network Analyst getpackets.com

Capturing Network Traffic With Wireshark

Key Components of WAN Optimization Controller Functionality

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

Visualizations and Correlations in Troubleshooting

Application Performance Analysis and Troubleshooting

Using TrueSpeed VNF to Test TCP Throughput in a Call Center Environment

Solving complex performance problems in TCP/IP and SNA environments.

Network Security: Workshop. Dr. Anat Bremler-Barr. Assignment #2 Analyze dump files Solution Taken from

Challenges of Sending Large Files Over Public Internet

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Sample Network Analysis Report

Optimize Your Microsoft Infrastructure Leveraging Exinda s Unified Performance Management

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit

AKAMAI WHITE PAPER. Delivering Dynamic Web Content in Cloud Computing Applications: HTTP resource download performance modelling

The Data Replication Bottleneck: Overcoming Out of Order and Lost Packets across the WAN

VDI Solutions - Advantages of Virtual Desktop Infrastructure

TFTP TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008

Troubleshooting LANs with Wirespeed Packet Capture and Expert Analysis

Fundamental Approaches to WAN Optimization. Josh Tseng, Riverbed

24x7 Monitoring and Troubleshooting Distributed Application Performance

High-Performance Oracle: Proven Methods for Achieving Optimum Performance and Availability

Network Probe. Figure 1.1 Cacti Utilization Graph

Network Connect & Junos Pulse Performance Logs on Windows

The Problem with TCP. Overcoming TCP s Drawbacks

Application Note. Windows 2000/XP TCP Tuning for High Bandwidth Networks. mguard smart mguard PCI mguard blade

How To Gather Log Files On A Pulse Secure Server On A Pc Or Ipad (For A Free Download) On A Network Or Ipa (For Free) On An Ipa Or Ipv (For An Ubuntu) On Your Pc

Performance in the Infragistics WebDataGrid for Microsoft ASP.NET AJAX. Contents. Performance and User Experience... 2

Comparing the Network Performance of Windows File Sharing Environments

How To Make Your Database More Efficient By Virtualizing It On A Server

Troubleshooting TCP/IP Networks with Wireshark

D1.2 Network Load Balancing

Computer Networks. Chapter 5 Transport Protocols

A Talari Networks White Paper. Turbo Charging WAN Optimization with WAN Virtualization. A Talari White Paper

I3: Maximizing Packet Capture Performance. Andrew Brown

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

COMP 3331/9331: Computer Networks and Applications. Lab Exercise 3: TCP and UDP (Solutions)

Storage at a Distance; Using RoCE as a WAN Transport

Riverbed SaaS. 04 de Setembro de Copyright 2015 Data Systems, todos os direitos reservados.

Enabling Cloud Architecture for Globally Distributed Applications

SILVER PEAK ACCELERATION WITH EMC VSPEX PRIVATE CLOUD WITH RECOVERPOINT FOR VMWARE VSPHERE

WAN Performance Analysis A Study on the Impact of Windows 7

Expert Reference Series of White Papers. Troubleshooting Slow Networks with Wireshark

EasyConnect. Any application - Any device - Anywhere. Faster, Simpler & Safer Networks

T2-6: Trace File Analysis - The Elephant Coming From Behind: Full Window, Window Update and TCP Keep-Alive s

Diagnosing the cause of poor application performance

Lab Exercise Objective. Requirements. Step 1: Fetch a Trace

Performance Evaluation of Linux Bridge

Application-Centric Analysis Helps Maximize the Value of Wireshark

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

Hardware Performance Optimization and Tuning. Presenter: Tom Arakelian Assistant: Guy Ingalls

WAN Optimization and Cloud Computing. Josh Tseng, Riverbed

Scaling out a SharePoint Farm and Configuring Network Load Balancing on the Web Servers. Steve Smith Combined Knowledge MVP SharePoint Server

Ten top problems network techs encounter

Advanced Computer Networks Project 2: File Transfer Application

Delivering SharePoint Solutions with Citrix Application Delivery Infrastructure

Using Steelhead Appliances and Stingray Aptimizer to Accelerate Microsoft SharePoint WHITE PAPER

Distributed applications monitoring at system and network level

Measure wireless network performance using testing tool iperf

SQL*Net PERFORMANCE TUNING UTILIZING UNDERLYING NETWORK PROTOCOL

How to Build a Massively Scalable Next-Generation Firewall

Application Latency Monitoring using nprobe

VPN over Satellite A comparison of approaches by Richard McKinney and Russell Lambert

Network Connect Performance Logs on MAC OS

Large-Scale TCP Packet Flow Analysis for Common Protocols Using Apache Hadoop

Deploying in a Distributed Environment

How To Migrate To A Network (Wan) From A Server To A Server (Wlan)

Monitoring System Status

Running SAP Solutions in the Cloud How to Handle Sizing and Performance Challenges. William Adams SAP AG

LCMON Network Traffic Analysis

Frequently Asked Questions

Job Reference Guide. SLAMD Distributed Load Generation Engine. Version 1.8.2

Multipath TCP in Practice (Work in Progress) Mark Handley Damon Wischik Costin Raiciu Alan Ford

TCP in Wireless Mobile Networks

Quantifying the Performance Degradation of IPv6 for TCP in Windows and Linux Networking

Mobile Application Performance

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

VMWARE WHITE PAPER 1

WHITE PAPER Windows File Sharing (CIFS) Optimization

Distributed Monitoring Pervasive Visibility & Monitoring, Selective Drill-Down

Sage ERP Accpac Online

Cisco Application Networking for Citrix Presentation Server

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, Page 1

UNIFIED PERFORMANCE MANAGEMENT

Home Networking Evaluating Internet Connection Choices for a Small Home PC Network

First Midterm for ECE374 03/09/12 Solution!!

Network Performance Optimisation and Load Balancing. Wulf Thannhaeuser

Increasing Driver Performance

RFC 6349 Testing with TrueSpeed from JDSU Experience Your Network as Your Customers Do

ALTIRIS Package Server

How To Model A System

Transcription:

Mike Canney Application Performance Analysis 1

Welcome to Sharkfest 12 contact Mike Canney, Principal Network Analyst, Tektivity, Inc. canney@getpackets.com 319-365-3336 www.getpackets.com 2

Agenda agenda So why focus on the application? Creating a CDA (Capture to Disk Appliance) Using Pilot for back in time troubleshooting with your CDA and Wireshark Application QA Lifecycle Top Causes for Application Performance issues Application Turns TCP Layer 7 Issues TCP Retransmissions Using Wireshark to create custom profiles to troubleshoot CIFS/SMB 3

So why focus on the Application? focus In many cases it is the Network Engineers that have the tool set to help pinpoint where the problem exists. It s not the Network! - The Network is guilty until proven innocent. Application performance issues can impact your business/customers ability to make money. User Response time is Relative. Intermittent performance issues (moving target). 4

The moving target target Analyzer placement - Two options Move the analyzers as needed Capture anywhere and everywhere To defend the Network multiple capture points of the problem is the best solution. 5

Commercial vs. Free Capture capture Define your capture strategy Data Rates What are my goals? Troubleshooting vs. Statistical information. Do I need to capture every packet? 6

Capture to Disk Appliance (on a budget) budget What is needed? dumpcap is a command line utility included with the Wireshark download to enable ring buffer captures. Use an inexpensive PC or laptop (best to have 2 NICs or more). Basic batch file to initiate capture. Cascade Pilot (optional but recommended) 7

Dumpcap Example example cd \program files (x86)\wireshark dumpcap -i 1 -s 128 -b files:100 -b filesize: 2000000 w c:\traces\internet \headersonly1.pcap This is a basic batch file that will capture off of interface 1, slice the packets to 128 bytes, write 100 trace files of ~2 Gigabytes, and write the trace file out to a pcap file. 8

So why did I write multiple 2 Gig trace files? trace file Pilot! Pilot can easily read HUGE trace files. This allows us to utilize our CDA in ways no other analyzer can. I personally have sliced and diced 50 GB trace files in Pilot in a matter of seconds. 9

So how does this all work together? practice Directory full of 2GB trace files, all time stamped based on when they were written to disk. User calls in and complains that the network is slow. Locate that trace file based on time and date and launch Pilot. 10

Instructor Demo demo Troubleshooting user Network Issue 11

Think about the possibilities hmmm From a multix GB trace file we were able to: Look at the total Network throughput. See what applications were consuming the bandwidth. Identify the user that was responsible for consuming the bandwidth. Identify the URI s the user was hitting and what the response times were. Drill down to the packets involved in the slow web response time in Wireshark. All in a matter of a few seconds. 12

Why are there so many application issues? help Applications are typically developed in a golden environment Fastest PCs High Bandwidth/low latency When applications move from test (LAN) to production (WAN) the phone starts ringing with complaints coming in. 13

The Application QA Lifecycle qa cycle In most organizations, applications go through a QA process Typical QA/App developers test the following: Functional tests Regression tests Stress tests (server) Rinse and Repeat What is often missing is Networkability testing All QA Lifecycles should include Networkability testing 14

Application Networkablility Testing testing Identify key business transactions, number of users and network conditions the application will be deployed in. Simulation vs. Emulation Simulation is very quick, often gives you rough numbers of how an application will perform over different network conditions. Emulation is the only way to determine when an application will fail under those conditions. A Combination of both is recommended. 15

Top Causes for Poor Application Performance top 5 Application Turns TCP Layer 7 Bottlenecks Congestion (network) Processing Delay 16

Causes for Slow Application Performance turns Application Turns 17

Application Turns turns An Application Turn is a request/response pair For each turn the application must wait the full round trip delay. The greater the number of turns, the worse the application will perform over a WAN (latency bound). 18

App Turn Begin End 19

Example in Wireshark Display Filter: 882 Application Turns in this trace 20

App Turns and Latency latency It is fairly easy to determine App Turns impact on end user response time Multiply the number of App Turns by the round trip delay: 10,000 turns *.050 ms delay = 500 seconds due to latency Note, this has nothing to do with Bandwidth or the Size of the WAN Circuit 21

So what causes all these App Turns? cause Size of a fetch in a Data Base call Number of files that are being accessed Loading single images in a Web Page instead of using an image map Number of bytes being retrieved and how they are being retrieved (block size) 22

Causes for Slow Application Performace TCP tcp 23

TCP Window Size size The TCP Window Size defines the host s receive buffer. Large Window Sizes can sometimes help overcome the impact of latency. Depending on how the application was written, advertised TCP Window Size may not have an impact at all (more on this later). 24

TCP Inflight Data inflight The amount of unacknowledged TCP data that is on the wire at any given time. TCP inflight data in limited by the following: TCP Retransmissions TCP Window Size Application block size The amount of TCP inflight data will never exceed the receiving devices advertised TCP Window Size. 25

26 TCP Inflight Data in Wireshark

TCP Inflight Data in Wireshark The Bytes in Flight Column shows us how much payload is in each packet. 27

TCP Inflight Data in Wireshark The Bytes in Flight Column shows us how much payload is in each packet. 28

29 TCP Inflight Data in Wireshark

TCP Inflight Data in Wireshark Graphed in Excel 30

31 Easier way for SMB/CIFS

TCP Retransmissions tcp Every time a TCP segment is sent, a retransmission timer is started. When the Acknowledgement for that segment is received the timer is stopped. If the retransmission timer expires before the Acknowledgement is received, the TCP segment is retransmitted. 32

TCP Retransmissions tcp flow Excessive TCP Retransmissions can have a huge impact on application performance. Not only does the data have to get resent, but TCP flow control (Slow Start) kicks into action. 33

Application Performance demo Layer 7 Bottlenecks 34

ULPs (upper layer protocols) ulp TCP often gets blamed for the ULPs problem. The application hands down to TCP amount of data to go retrieve (application block size) TCP then is responsible for reliably getting that data back to the application layer TCP has certain parameters in which to work with and can usually be tuned based on bandwidth and latency Many times too much focus is put on tuning TCP as the fix for poor performance in the network If the TCP advertised receive window is set to 64K and the application is only handing down to TCP requests for 16K, where is the bottleneck? 35

ULPs (upper layer protocols) Case in point: CIFS/SMB ulp 36

Troubleshooting CIFS/SMB Cifs/smb Arguably the most common File Transfer method used in businesses today. SMB was NOT developed with the WAN in mind. One of the most chatty protocols/ applications I run into (with the exception of poorly written SQL). 37

CIFS/SMB Quiz What is faster using MS File Sharing? Pushing a file to a file server? Pulling a file from a file server? quiz 38

39 ULPs (upper layer protocols)

40 ULPs (upper layer protocols)

CIFS/SMB cifs/smb What is faster using MS File Sharing? Pushing a file to a file server? Pulling a file from a file server? SMB Write (Pushing the file) can almost be 2X as fast as pulling (SMB Read) Depends on the Latency 41

CIFS/SMB Tuning tuning SMB Maximum Transmit Buffer Size Negotiated MaxBufferSize in the Negotiate Protocol response Default for Windows servers is typically 16644 (dependent upon physical memory) Client default typically 4356 42

43 CIF/SMB Tuning

CIFS/SMB Tuning tuning Caveat: SMB is extremely dependent upon the API Even though you set the max buffer size to 64K, windows share data will always get truncated to 60K (61440) even though the server can support 64K 44

CIFS/SMB Tuning Custom SMB APIs tuning The Windows limitation can be exceeded by programs written to use SMB as they file transfer protocol 45

CIFS/SMB Tuning Note the SMB writes of 65,536 This is a file transfer using a custom API on a Windows XP machine 46

CIFS/SMB Tuning (Preallocation) 47 Prealloca:on sets the file info for SMB Writes and can dras:cally reduce some of the cha@yness of SMB

Instructor Demo of SMB Profiles demo Demo of SMB Tracefiles 48

49 My personal SMB Profile

Take Away Points points Building your own CDA is easy to do and may fit in a majority of the areas you need to capture from Pilot, Pilot, Pilot, it s not just a fancy reporting engine for Wireshark! Test your applications Networkability before they hit production. Use the Wireshark Profiles, they will save you a ton of time. 50

Mike Canney Principal Network Analyst 51