Welcome!

@BigDataExpo Authors: Liz McMillan, Akhil Sahai, Elizabeth White, Rishi Bhargava, Pat Romanski

Related Topics: Microservices Expo, Java IoT, Linux Containers, IoT User Interface, Agile Computing, @BigDataExpo

Microservices Expo: Article

Understanding Application Performance on the Network | Part 5

Processing Delays

In Part IV, we wrapped up our discussions on bandwidth, congestion and packet loss. In Part V, we examine the four types of processing delays visible on the network, using the request/reply paradigm we outlined in Part I.

Server Processing (Between Flows)
From the network's perspective, we allocate the time period between the end of a request flow and the beginning of the corresponding reply flow to server processing. Generally speaking, the server doesn't begin processing a request until it has received the entire flow, i.e., the last packet in the request message; similarly, the server doesn't begin sending the reply until it has finished processing the request. We sometimes refer to these delays between flows as "pure" processing delays, distinct from another type of intra-flow processing delay we call starved for data and discuss later. Server processing delays occur as a result of a request message, and therefore always occur within a thread.

Transaction Trace Illustrations
These "pure" server processing delays are generally relatively simple to detect, to understand, and to prove. Transaction Trace's Node Processing table lists all of the observed processing delays for an operation in tabular format; by splitting this table with the Bounce Diagram and highlighting a row of interest, the Bounce Diagram will display the last packet of the request flow and the first packet of the corresponding reply flow, effectively diagramming the measurement.

Use the Node Processing Table split with the Bounce Diagram to illustrate node processing delay

You may also use the Thread Analysis split with the Bounce Diagram; this will provide a view of the request and reply packet flows as well as the processing measurement.

Split the Thread View with the Bounce Diagram to illustrate the request flow, node processing and reply flow

Starved for Data (Sending Node, Within a Flow)
Sometimes, the network interface will be able to transmit data at a rate faster than the sending application can deliver to the TCP socket. For example, a busy ftp server may momentarily interrupt sending a large file because of a disk, memory or CPU bottleneck. We refer to these pauses that occur in the middle of a flow as "starved for data" conditions; there is nothing on the network (no TCP flow control constraint) preventing the request or reply flow from continuing, so the cause must be internal to the sending node. Starved for data bottlenecks occur within a flow (instead of between flows), and are related to the sending node - either the client or server.

Transaction Trace Illustration
These cases can be more difficult to visualize. Since the condition is generally not too common, it is often best to rule out other performance bottlenecks first, before checking for data starvation. When it does occur, the condition has the effect of extending the duration of a request or reply flow, and starved for data delays are included in Transaction Trace's Node Sending measurements. Sort the rate column of the Node Sending Table and split the window with the Bounce Diagram; the Bounce Diagram will illustrate the packets associated with a sending measurement. For those sending measurements where you suspect a starved for data condition, look for idle periods of time where the sending node's flow has been interrupted. Importantly, a starved for data delay will terminate with the transmission of a data packet that resumes the sender's flow, not a TCP ACK from the receiver that might suggest a TCP or application window constraint.

The Node Sending table is split with the Bounce Diagram to help illustrate Starved for Data conditions; note the pause in transmission that resumes independent of any TCP ACK.

Client Processing (Between Flows)
From the network's perspective, we allocate the time period between the end of a reply flow and the beginning of the next request flow to client processing. Generally speaking, the client cannot begin processing a reply until it has received the entire reply flow, i.e., the last packet of the reply message; similarly, the client doesn't begin sending the next (new) request until it has completed processing the reply. (This correlation generally applies to request/reply flows on the same TCP connection.)

Transaction Trace Illustrations
Similar to server processing delays, client delays are relatively simple to understand. In most cases, client delays occur between threads; in other words, after one thread has completed but before the next thread begins. For tasks with thread-level decodes, Transaction Trace's Thread Analysis Gantt chart view can illustrate these delays well.

Gaps between threads are associated with client processing delays

Discounting Client Processing
Note that we assume strict adherence to the definition of "operation" here; click to screen update. If the trace has captured multiple steps - say the user navigates through a series of operations - then the user "think time" between steps will appear as client processing delay, with corresponding gaps between threads. You may still use these multi-step tasks for analysis, remembering to discount client processing delays. Alternatively, you can save each step as a separate task by selecting a sequence of threads from the Thread table.

For more network strategies, click here for the full article.

More Stories By Gary Kaiser

Gary Kaiser is a Subject Matter Expert in Network Performance Analytics at Dynatrace, responsible for DC RUM’s technical marketing programs. He is a co-inventor of multiple performance analysis features, and continues to champion the value of network performance analytics. He is the author of Network Application Performance Analysis (WalrusInk, 2014).

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@BigDataExpo Stories
Predictive analytics tools monitor, report, and troubleshoot in order to make proactive decisions about the health, performance, and utilization of storage. Most enterprises combine cloud and on-premise storage, resulting in blended environments of physical, virtual, cloud, and other platforms, which justifies more sophisticated storage analytics. In his session at 18th Cloud Expo, Peter McCallum, Vice President of Datacenter Solutions at FalconStor, discussed using predictive analytics to mon...
Most organizations prioritize data security only after their data has already been compromised. Proactive prevention is important, but how can you accomplish that on a small budget? Learn how the cloud, combined with a defense and in-depth approach, creates efficiencies by transferring and assigning risk. Security requires a multi-defense approach, and an in-house team may only be able to cherry pick from the essential components. In his session at 19th Cloud Expo, Vlad Friedman, CEO/Founder o...
"We host and fully manage cloud data services, whether we store, the data, move the data, or run analytics on the data," stated Kamal Shannak, Senior Development Manager, Cloud Data Services, IBM, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
With the proliferation of both SQL and NoSQL databases, organizations can now target specific fit-for-purpose database tools for their different application needs regarding scalability, ease of use, ACID support, etc. Platform as a Service offerings make this even easier now, enabling developers to roll out their own database infrastructure in minutes with minimal management overhead. However, this same amount of flexibility also comes with the challenges of picking the right tool, on the right ...
As organizations shift towards IT-as-a-service models, the need for managing and protecting data residing across physical, virtual, and now cloud environments grows with it. Commvault can ensure protection, access and E-Discovery of your data – whether in a private cloud, a Service Provider delivered public cloud, or a hybrid cloud environment – across the heterogeneous enterprise. In his general session at 18th Cloud Expo, Randy De Meno, Chief Technologist - Windows Products and Microsoft Part...
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develo...
SYS-CON Events announced today that MangoApps will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. MangoApps provides modern company intranets and team collaboration software, allowing workers to stay connected and productive from anywhere in the world and from any device.
The IETF draft standard for M2M certificates is a security solution specifically designed for the demanding needs of IoT/M2M applications. In his session at @ThingsExpo, Brian Romansky, VP of Strategic Technology at TrustPoint Innovation, explained how M2M certificates can efficiently enable confidentiality, integrity, and authenticity on highly constrained devices.
“We're a global managed hosting provider. Our core customer set is a U.S.-based customer that is looking to go global,” explained Adam Rogers, Managing Director at ANEXIA, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
"We've discovered that after shows 80% if leads that people get, 80% of the conversations end up on the show floor, meaning people forget about it, people forget who they talk to, people forget that there are actual business opportunities to be had here so we try to help out and keep the conversations going," explained Jeff Mesnik, Founder and President of ContentMX, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
DevOps at Cloud Expo – being held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Am...
"When you think about the data center today, there's constant evolution, The evolution of the data center and the needs of the consumer of technology change, and they change constantly," stated Matt Kalmenson, VP of Sales, Service and Cloud Providers at Veeam Software, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Internet of @ThingsExpo has announced today that Chris Matthieu has been named tech chair of Internet of @ThingsExpo 2016 Silicon Valley. The 6thInternet of @ThingsExpo will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
When people aren’t talking about VMs and containers, they’re talking about serverless architecture. Serverless is about no maintenance. It means you are not worried about low-level infrastructural and operational details. An event-driven serverless platform is a great use case for IoT. In his session at @ThingsExpo, Animesh Singh, an STSM and Lead for IBM Cloud Platform and Infrastructure, will detail how to build a distributed serverless, polyglot, microservices framework using open source tec...
The 19th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportuni...
“Being the one true cloud-agnostic and storage-agnostic software solution, more and more customers are coming to Commvault and saying ' What do you recommend? What's your best practice for implementing cloud?” explained Randy De Meno, Chief Technologist at Commvault, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Let’s face it, embracing new storage technologies, capabilities and upgrading to new hardware often adds complexity and increases costs. In his session at 18th Cloud Expo, Seth Oxenhorn, Vice President of Business Development & Alliances at FalconStor, discussed how a truly heterogeneous software-defined storage approach can add value to legacy platforms and heterogeneous environments. The result reduces complexity, significantly lowers cost, and provides IT organizations with improved efficienc...
From wearable activity trackers to fantasy e-sports, data and technology are transforming the way athletes train for the game and fans engage with their teams. In his session at @ThingsExpo, will present key data findings from leading sports organizations San Francisco 49ers, Orlando Magic NBA team. By utilizing data analytics these sports orgs have recognized new revenue streams, doubled its fan base and streamlined costs at its stadiums. John Paul is the CEO and Founder of VenueNext. Prior ...
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.
"My role is working with customers, helping them go through this digital transformation. I spend a lot of time talking to banks, big industries, manufacturers working through how they are integrating and transforming their IT platforms and moving them forward," explained William Morrish, General Manager Product Sales at Interoute, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.