Many times when I choose to write about a SQL Server utility in the Tool Time column it’s because a friend or colleague specifically points the tool out to me. Other times I write the column because the creator, a SQL Server enthusiast, or perhaps a program manager at Microsoft reaches out to me to discuss the tool. But in the case of this month’s tool, I had a specific need for a tool and found that this excellent free tool fit the bill perfectly.
I wanted to see how much network bandwidth was consumed specifically by SQL Server answering requests from a SQL Server Reporting Services (SSRS) application. All of the standard tools, such as the PerfMon counters for network utilization, just weren’t detailed and granular enough to tell me what I needed to know. That’s where the Microsoft Network Monitor comes in. It lets you capture detailed information about network traffic, view it, and analyze it.
In addition, you can download (or even write your own) specific parsers, such as the parsers for SQL Server, which provide ready-made templates to determine how the network is being used in just about any and every conceivable context. It’ll answer lots of questions about SQL Server network utilization that might otherwise be very hard to answer. For example, you can use it to determine how much bandwidth a particular web application uses, how much traffic moves between SharePoint and SQL Server, how much SQL Server traffic is replication compared to the total network traffic, or whether the reporting front end to an application consumes lots of bandwidth.
I recommend starting the process of learning about Network Monitor at the frequently updated Network Monitor blog at blogs.technet.com. From there, you can download Network Monitor from the Microsoft article “Information about Network Monitor 3” at Microsoft Support or directly from TechNet. In addition, the parser template that’s specifically matched to SQL Server is available at nmparsers.codeplex.com. Network Monitor’s key features include
- An intuitive and easy-to-use GUI
- Command-line functionality to better support scripting through NMCap.exe (For more information, click here. A training video is available here.)
- Concurrent live capture sessions
- High-performance filtering, which can reduce the overall overhead of Network Monitor while capturing heavy network traffic loads
- A script-based parser model with frequent updates
- The ability to monitor network conversations between client requests and server responses and process tracking
- Color-rules to differentiate network traffic by client, server, application, local traffic, port, and more
- An open framework and API to access the capture and parsing engine, plus ability to write your own parsers (refer to the Network Monitor Expert Analysis Tools for examples of plug-ins for Network Monitor)
- Wireless Monitor Mode Capturing
Network Monitor needs fairly substantial system resources, which is a big reason Microsoft recommends you refrain from running it on production systems. In terms of hardware, the minimum suggested specifications include a 1GHz or faster processor, 1GB or more of memory, and at least 60MB available space on the hard disk, with much more additional hard disk space available to store the captured files. Network Monitor runs on Windows 7, Windows Server 2008, Windows Vista, Windows XP, and Windows Server 2003, and it takes advantage of the available features in each.
Note that if you take the defaults when capturing a Network Monitor trace, the captured files can grow to be quite enormous. (Network Monitor will stop capturing data when less than 2 percent of the disk remains free.) It can also be memory intensive, particularly if you leave the Conversation feature enabled, which is the default.
Network Monitor is well documented and supported by an active and enthusiastic community that quickly responds to questions asked in the forum. In addition, you can find support for this tool on the following Microsoft websites:
- Network Monitor TechNet forum
- Network Monitor blog and landing page
- Network Monitor FAQ and Wiki
- Channel 9 Network Monitor Videos
- Network Monitor Open Source Parsers, where you can download the latest Microsoft SQL Server parsers
- Network Monitor Expert Analysis Tools
As always, I’d love to hear your feedback about this tool and others on the Tool Time with Kevin Kline discussion forum at www.sqlmag.com/go/ToolTimeForum.
Benefits: Microsoft Network Monitor lets you monitor essential aspects of SQL Server network consumption, including the traffic created by specific backups, applications, and database operations.
System Requirements: 1GHz or faster processor; 1GB or more memory; at least 60MB available space on the hard disk; Windows 7, Windows Server 2008, Windows Vista, Windows XP, or Windows Server 2003
How to Get It: You can download the Microsoft Network Monitor from support.microsoft.com/?kbid=933741.