The freezing might be a timeout problem. Unfortunatly there seems to be no easy way to fix that, this is all I found on it: Putty FAQ
If this helps that's well and good. But if you want to minimize problems with disconnects you should really start using screen The Persistence feature described below should be particularly interesting.
From wikipedia:
Features
GNU Screen can be thought of as a text
version of graphical window managers,
or as a way of putting virtual
terminals into any login session. It
is a wrapper that allows multiple text
programs to run at the same time, and
provides features that allow the user
to use the programs within a single
interface productively.
Persistence
Similar to VNC, GNU Screen allows the user to start applications from
one computer, and then reconnect from
a different computer and continue
using the same application without
having to restart it. This makes
migration between locations like work
and home simple. Screen provides
terminal-agnostic functionality so
that users can disconnect and
reconnect using different terminal
types, allowing applications to
continue running without being aware
of the change in terminals.
Multiple windows
Multiple terminal sessions can be created, each of which usually runs a
single application. The windows are
numbered, and the user can use the
keyboard to switch between them. Some
GUI terminal emulators provide tabs or
otherwise similar functionality to
this. Each window has its own
scroll-back buffer, so that output is
captured even when the window isn't
actively displayed, and that history
can be saved even when migrating to
another computer. Windows can be
split-screened. While some text
applications have this functionality
built in, Screen allows any
application to be split-screened
alongside any number of other
applications.
Session Sharing
Screen allows multiple computers to connect to the same session at
once, allowing collaboration between
multiple users. The same computer can
also be used to make multiple
simultaneous connections, providing
alternative functionality to
screen-splitting, particularly for
computers with multiple monitors.