Putty is is a great piece of software. Because it works and it’s free I find it installed on most corporate desktops as the default software for terminal client on Windows. ((After all, Microsoft doesn’t supply any SSH in Windows or even telnet capability in Vista)). Not many people seems to realise that Putty is highly customisable and has a number of features that will improve your working environment.
Set the Rows & Scrollback Lines
By default Putty only keeps the last 200 lines of text displayed on your screen in the scrollback buffer. For a typical network engineer, this isn’t enough to show the configuration, must less any decent amount of text. Typically I would set the default to be 20000 lines. And since most screens allows more than 25 rows, I would increase the Window Rows to forty. If you change the Windows Rows to forty, then you should also change your device terminal settings to use forty lines as well. See IOS – Setting the Terminal Windows Length for a good-ish description of this.
Note that every Putty session will allocate a block of memory sufficient to hold those lines in a buffer. Making it too large may impact your computer by reducing the amount of memory available.
Using Font Aliasing
The choice to use Antialiased or aliased fonts is a bit complicated, but its a serious decision affecting how easy on the eyes ad how quickly you can read the screen. Less reading errors results in better work performance.
The best choice here is ClearType.
It’s common for me to have more than ten putty sessions open at a single time. With that many windows you need a way to tell them apart, thus, some names on the box would be useful in identifying. them.
And the result will look something like this:
Keepalives and enabling Nagle’s Algorithm
Nagle’s algorithm is particularly useful when attempting to transfer a lot of information in the terminal. For example, when logging at high speed or pasting large configurations to your console (there are many other criteria that affect this, but this is one of them).
Nagle’s algorithm, named after John Nagle, is a means of improving the efficiency of TCP/IP networks by reducing the number of packets that need to be sent over the network.
Nagle’s document, Congestion Control in IP/TCP Internetworks (RFC896) describes what he called the ‘small packet problem’, where an application repeatedly emits data in small chunks, frequently only 1 byte in size. Since TCP packets have a 40 byte header (20 bytes for TCP, 20 bytes for IPv4), this results in a 41 byte packet for 1 byte of useful information, a huge overhead. This situation often occurs in Telnet sessions, where most keypresses generate a single byte of data which is transmitted immediately. Worse, over slow links, many such packets can be in transit at the same time, potentially leading to congestion collapse.
Keepalives are most useful when running terminal sessions through firewalls. If a telnet/ssh terminal doesn’t keep traffic flowing then it will mark the session for timeout. Once the session times out you will need to reconnect and go through the login procedure again.
Lets looks at some of the SSH Connection Options and which items you should think about.
Putty has a default that selects SSH Version 2 but will fallback to SSH Version 1 if needed. This is the best choice for defaults and recommend that you do NOT change this.
Note that early versions of IOS did not support Version 2 (SSHv2 was introduced in June 2007 in IOS Version 12.1.19E, SSHv1 was Sep 2005 around IOS Version 12.1.3T ), and only Version 1 and some versions of Putty did not fall back gracefully. For these cases, you would need to configure the version for that session only, not as a default for your global default.
It’s generally accepted that DES is insecure (for practical purposes). However, if you have a Cisco device that doesn’t have an Strong Encryption license (it is free, all you have to do is supply the serial number and fill out the form on Cisco’s web site to meet the US government requirements that says you aren’t a terrorist – www.cisco.com/go/license) then you might want to set this for a single session. I wouldn’t set this as a global default.
SSH Secure Shell uses GNU ZLIB (LZ77) for compression. The “zlib” compression is described in RFC 1950 and in RFC 1951.
The client can request a compression level with a number after +C (from +C1 to +C9). In this case, the compression level is between the levels requested by the client and offered by the server. For example, if the server offers level 6 (the default) and the client asks for level 1, level 2 is used.
Compression is worth using if your connection is slow (for example a modem connection). The efficiency of the compression depends on the type of the file, and varies widely. It is close to 0% for already compressed files like zip and often 50% or even more for text files.((http://www.ssh.com/support/documentation/online/ssh/adminguide/32/Compression.html))
As far as I can tell, Cisco IOS does not support compression. I believe that it wouldn’t make any difference since transferring large volumes of data is not the normal condition when connecting to terminal sessions.
Can be safely left alone.
Putty did not always have serial capability. If it doesn’t show then you need to download a later version and get it installed. Putty Home Page.
Since 9600,N,8,1 is the default serial configuration for Cisco equipment, I would not change this. I have seen some companies who have a standard configuration for IOS devices that set the serial port bit rate to 38400, however, I would still not change the global default.
Saving the Global Default
This post covers saving these default settings for every new connection that you make with putty.
That’s enough for this post I think, I have some more things that I think are worth documenting, but I will do them later on. You can see all the posts by checking the Console Mastery series button at the top of the page, which lists all the post in the Console Mastery series.
If you have any tips or tricks for putty, either get in contact via the Contact Form or drop me an email myetherealmind -£$- gmail dot com.