UNIX network performance analysis

In a follow-up to an article I did earlier this year on analyzing the structure and layout of your network using ping and other tools, I’ve written another article on similar lines, this time looking at how to monitor and then report on the performance of your network and how to identify and diagnose problems.

Knowing your UNIX network layout will go a long way with understanding your network and how it operates. But what happens when the performance of your UNIX network and the speed at which you can transfer files or connect to services suddenly reduces? How do you diagnose the issues and work out where in your network the problems lie? This article looks at some quick methods for finding and identifying performance issues and the steps to start resolving them.

Read: UNIX network performance analysis

UNIX network analysis

I have a new tutorial on analyzing networks, in terms of understanding your basic network configuration, the other machines and devices on the network, and the general topology. From the intro:

When accessing a new UNIX system, or even understanding an existing one, a key part of the puzzle to how the system operates is the network configuration. There are many aspects of the network that you need to know and understand to correctly identify problems and prevent future problems. By using some basic tools and commands you can determine a lot about the configuration of a single system, and through this basic understanding, a good idea of the configuration of the rest of the network. With some additional tools, you can expand that knowledge to cover more systems and services within your network.In this tutorial you will use some basic tools within the UNIX environment that can disclose information about the configuration of your system. By understanding these tools and the information they output, you will be able to gain a greater understanding of your system network configuration and how it works. You will also examine tools and solutions that can look at the wider network and gain more detailed information about your network, its potential security issues, and key points of information that will help you identify and diagnose problems when they do occur.

Read UNIX network analysis

Solutions for tracing UNIX applications

Tracing applications are something of a passion for me, especially with the introduction of DTrace in Solaris and Mac OS X. To support that, I have a new tutorial about the different methods available for tracing Unix applications. I tried to concentrate on tools and techniques that don’t require access to the source, like using truss and DTrace. From the intro:

Most developers and systems administrators know what should happen in their operating system and with their applications, but sadly, this isn’t always the case. There are times when an application has failed, or is not behaving as you expect, and you need to find out more information. By using your existing knowledge of how your application should work and some basic UNIX skills, you can trace the application to find out what is causing the problem. This tutorial will teach you the basic techniques of using tracing tools to find out what your application is doing behind the scenes.First, the tutorial looks at the distinction between debugging and tracing, and how the two solutions differ. Then it examines some specific examples of where tracing can be used to solve problems in your application. DTrace provides elements of both system tracing and debugging, and also provides you with the ability to time and benchmark applications. Finally, the tutorial shows how to trace the information being exchanged between network computers to help find problems in network applications.

Read Solutions for tracing UNIX applications

Synchronizing UNIX files

I have a new article on different ways in which you can synchronize your Unix files. From the intro:

There are many tools available that allow you to synchronize files across UNIX directories, but doing it effectively, and securely, takes a little bit more effort. This article looks at solutions for synchronizing files across UNIX filesystems and different computer systems securely, and at solutions that allow you to synchronize encrypted versions of your files for the purposes of backup.File synchronization is the process of adding, changing, or deleting a file in one location, and having the same file added to, changed, or deleted at another location. This article covers three utilties, cp, tar, and rsync, that can aid with synchronization of UNIX files. While cp and tar commands have limited synchronization abilities, rsync provides you with the full range of options; however, all three have their place.

Of particular interest is a script that provides an encrypted wrapper around rsync, which I use to provide a nice secure rsync-able backup. Read: Synchronizing UNIX files

LOSUG Presentation Slides Now Available

My presentation at LOSUG on tuesday went down like a house on fire – I think it would be safe to say that the phrase for the evening was ‘It’s a cache!’. For that to make sense, you need to look at the slides, which are now available here. Attendance was great, but it seems the last minute change of day meant that some people missed the session. We had 151 people register, and about 80 turned up on the night.

Systems Administration Toolkit: Using SNMP data

A new article on consuming and using the SNMP (Simple Network Management Protocol) data that is published and provided by different devices is now available:

The Simple Network Management Protocol (SNMP) is built in to many devices, but often the tools and software that can read and parse this information are too large and complicated when you only want to check a quick statistic or track a particular device or issue. This article looks at some simplified methods for getting SNMP information from your devices and how to integrate this information into the rest of your network’s data map.

Read: Systems Administration Toolkit: Using SNMP data

Systems Administration Toolkit: Understanding DNS

A new article on understanding the Domain Name System (DNS) is now available:

The Domain Name System (DNS) is the service that converts hostnames and domain details into the IP addresses required for application to communicate. Under UNIX, the primary DNS service is based on BIND, and DNS itself is a key part of most UNIX installations. This article looks at the basics of DNS setup, how servers and requests are distributed, and exchanged and how to set up and keep a DNS environment running smoothly.

Read: Systems Administration Toolkit: Understanding DNS

Systems Administration Toolkit: Log file basics

A new article on some basic log file information and maintenance is available:

A typical UNIX or Linux machine creates many log files during the course of its operation. Some of these contain useful information; others can be used to help you with capacity and resource planning. This article looks at the fundamental information recorded within the different log files, their location, and how that information can be used to your benefit to work out what is going on within your system.

Read: Systems Administration Toolkit: Log file basics

Systems Administration Toolkit: Network scanning

A new article on scanning your network for information, both in a general device/service level and at a more detailed data level is now available.

Discover how to scan your network for services and how to regularly monitor your services to keep uptimes to a maximum. A key way of ensuring the security of your network is to know what is on your network and what services individual machines are at risk of exposure. Unauthorized services, such as Web servers or file sharing solutions, not only degrade performance, but others can use these services as routes into your network. In this article, learn how to use these same techniques to ensure that genuine services remain available.

Read: Systems Administration Toolkit: Network scanning

Systems Administration Toolkit: Monitor user usage

Do you know what your users are doing? Do you know how frequently people are using your systems? As I explain in the intro:

Explore new ways to record UNIX logins and other system activities in a number of different logs, and take advantage of this information to monitor user usage. This can be helpful from a number of perspectives, either to use for chargeback reporting or just to get an idea of how busy and active individual users are on the system to help when planning and allocating resources.

Read: Systems Administration Toolkit: Monitor user usage