Home | Pauline's Pages | Howto Articles | Uniquely NZ | Small Firms | Search |
Maximising Modem Performance for the Internet |
Most modern modems and software will work straight
away without complex configuration or a need for a detailed understanding.
There are however a number of simple things which one can do to
maximise the speed of transfers achieved and the reliability of
the connection. This document gives some hints on how to get the
maximum out of your modem and some shortcuts when configuring,
for example, for Internet connections. It also explains some of
the jargon which is endemic in the communications field. Windows
95 has made communications much easier but it is still a poorly
documented maze.
In order to get the best from a modem it helps to
understand a little about how the data communication takes place.
The latest modems contain considerable in-built computing power (or in some cases of internal PCI modems use the main CPU's power) which
allows them to carry out error correction and data compression
to get high speed data communication over noisy low bandwidth
telephone lines. They are capable of negotiating with other modems
to ensure the type and speed of connection is optimised. You do
not have to know what is at the other end but you one thing you
can be sure of is that all the facilities available on his equipment
will be enabled by an Internet Service Provider (ISP) or service such
as CompuServe or AOL or they would rapidly go out of business.
What you have to make sure that your modem has all the facilities
it has available turned on. In many cases this will be the default
when the modem is turned on but your software must either leave
them turned on or know about how to use them - more of that latter.
So far we have been speaking about the link between
the two modems over the telephone lines - there is however the
link between the computer and the modem and it is here that many
users lose performance. This is also the link most likely to be
left to the user to configure. The first and most important thing
is that the speed must be set as high as possible the modem will
try and usually succeed in establishing a connection where the
data is compressed which increases the effective transmission
speed. For example a 28.8K V34 modem will use try to use the V42bis
protocol which can compress by up to four times allowing a data
throughput of up to 115.2K.. If you only set 28.8K there will
a bottleneck into the computer which will not create errors just
slow the transfers without the naive user ever realising! Do not
however expect an overall improvement of 4x as compression varies
on the type of data and many of the big downloads you will do
are of data which has already been compressed where there will
be few benefits. The best known type of compressed data is Zipped
data (.ZIP). Graphic data is also usually in a compressed form
(eg the .GIF and .JPG files used on Web sites) where again you
will not see all the benefits.
As well as setting a speed most programmes will need
to be told what sort of modem you have. In most cases everything
will work if you either let the system autodetect the modem or
just tell it that it is a Standard Modem but this may not allow
all the facilities to be accessed. Windows 95 has a large number
of Modems you can choose otherwise the Modem supplier will probably
have provided you with a disk with a suitable driver to install.
This is worth doing once you have got the system all up and running
and you will then find that a number of boxes in the Windows 95
modem configuration are no longer "greyed out" and you
can not only explicitly turn on data compression and error correction
but also specify that you will only accept such connections. This
ensures robust links and, as explained above, can give dramatic
improvements. There is a separate page covering Installing a Modem under Windows 95/98
If you are using a programme which does not use the
Windows 95 Modem software, which is however quiet unusual these days, then you need to do the same sort of
configuration but it may not be possible to use the drivers provided
and here it become more difficult. Early versions of CompuServe, for example, provided
quite a lot of drivers and then the ability to fine tune by setting
up the modem commands for turning on and off particular facilities.
The commands for configuring are sent down the serial line as
text strings before the Modem starts to send and receive data
and the basic set are almost always what are called Hayes Compatible
as Hayes produced the first modems using this type of set up and
hence the de facto standard. The modem also sends back responses
as text strings which the software recognises. The problem is
that many of the advanced features are not completely standard
between modems and you may have to read the manuals very carefully
and experiment unless the modem provider extracts the relevent
information for you.
Even if you use the Windows 95 Modem there are a
few things which can catch the unwary. The Modem software sends
the various strings to configure the Modem and looks at the responses
to see that they make sense. It then dials the number you set
up and again checks to see that there is dial tone and that a
connection has been established and tells you what the modem has
reported. Different modems report in different ways however and
when Windows 95 (or other programmes) tell you that you have a
connection at 28.8K this can mean different things. Some Modems
report the speed between the Computer and the Modem so you always
get what you set - others will report the speed of connection
which has been established. Most are also capable of reporting
the actual protocols which have been negotiated for error correction
and data compression which depend , as discussed above, on the
modems at each end of the line and the quality of line. Windows
95 only gives the speed when it tells you are connected so you
only have part of the story. You can however generate a log file
of what has gone on by checking a box and this is worth doing
whilst you are optimising the system and this will tell you what
has been sent and received by the modem (but not all the data!).
You should not leave the log file on permanently as the information
is appended so it gets bigger and bigger!
You can experiment with the commands by using a terminal
programme in the computer connected to the correct port. The modem
will work out the speed but in this case there is no point in
setting it too high as the computer may not keep up. Windows 3.1
has a terminal programme which made this simple but Windows 95
is too sophisticated and the Hyperterminal does not expect you
to want to do simple things and you have to create a test connection
with, for example, your own number. You can alternatively creating
a dummy Dial Up Network connection and turning on check box to
bring up the terminal screen before dialling. Try simple commands
such as AT <return> which does nothing but echo back OK
and AT&F which does a reset and replies OK. This is also the
first thing to do if you have any doubts about whether the Modem
is working. You can then work through the commands you have decided
are what are needed to get the best out of the modem and dial
up and even see what is reported for a connection. I should however
emphasise that you should not need to do this if the Modem Supplier
gives proper support.
I will now go on to how to connect to Internet from
Windows 95. In the early days this caused a great deal of grief but in
practice I have found it very easy although we do run
straight back into the alphabet soup. I did not get any real success
until I understood a little of how the Internet works and the
way that a PC couples into it. This is best thought of as a
series of layers. The top layer is your application programme
such as your Browser. This connects through a Windows Socket which
is a programme (More correctly a Dynamic Linking Library (DLL))
called Winsock.dll. Winsock.dll sits in the machine and when Internet Explorer
or any other application wants to communicate it takes control
of the modem and dials up a connection to your Internet Provider
(IP) (a Point of Presence PoP in the jargon) and establishes a
your link. This socket Winsock.dll usually remembers your password
as well as the telephone numbers etc. once it has been configured.
It also needs to know lots of other pieces of information to set
up the Internet connection.
We have now got to Internet Provider which is really
just another computer with lots of modems connected which routes
the communications. The type of connection used is normally called
a PPP (Point To Point) connection and the protocol is TCP/IP - you need to know
that much to help understand how to configure your connection . You
also need to understand how the information is sent around to
understand other bits of jargon.
Firstly every user and site on the World Wide Web
(Internet) has a unique address - this is the 12 figure number
you sometimes see on the browser status displays in 4 groups of
three figure numbers separated by periods. This is fixed in the
case of Web sites but may be transient for users connecting through
a service provider which will have been allocated a big block
of addresses one of which is allocated to you for as long as you
are connected. The familiar addresses, otherwise know as domains,
such as www.microsoft.com have to be translated to the numeric
addresses. This is done by what is called a domain name server
(DNS) - a big look up table at your provider for common sites
which also knows other DNSs to search for sites it does not hold
locally. These DNSs have addresses just like any other site.
Once the address is known the data is sent off in
an appropriate direction in little packets each of which has a
header so it knows where it came from and where it is going (like
an envelope round a letter). They may have to go through many
machines to get to there destination and there are many different
routes they can take between the interconnected machines and the
route will depend on which routes are available and their loading.
Not all packets making up a message need go the same way but usually
do. There is built in error checking and correction in that when
the message is received a confimatory message is sent back - if
a confirmation is not received then another set of packets is
sent off. All this is completely invisible but explains why the
times can vary so much and why the addresses are so important.
Your communications software needs to know what your address is
for the replies and where to start to look up the absolute address
of the destination. Hint: All the major providers I have tried
allocate a name to you and also tell you the DNS so when you configure
the system all you need to do is check the boxes marked Server
Assigned IP address and Server Assigned DNS.
Windows 95 does a lot of the hard work for you in
setting up the connection and hides from you things like Winsock.dll
which is fine if you only use what is called Dial Up Networking
(DUN) to connect to the Internet. Although it is unlikely these days it is worth noting that is that
DUN does create and use a Winsock.dll which may overwrite or conflict
with the ones installed already by early versions of service providers software.
If you think you may have legacy software then start by searching for all the winsock.dll on the system.
There should be two from Microsoft in Windows Folders which are
about 42K in length and those are the ones you need. The other
thing to remember is that the Windows 95 Dial Up networking is
for 32 bit programmes - this is correct for most of the new software
you will want to use including the excellent new free Browser
from Microsoft, Internet Explorer 3.0 (shows when this was first written - we are now on IE 5) . Windows 98 has an upgraded Winsock (version 2) which can be downloaded for use with Windows 95 - this is suggested with some software.
You may ask why it is called a Dial Up Networking
connection - this is because the Internet is just regarded as
any other network connect made over the telephone by Windows 95.
This does mean that Dial Up Networking must be installed and configured
to include TCP/IP as one of its network protocols before you start
the real business. It also means that you have to make sure you
are configured as a user with a log in password otherwise the
system is not considered secure and it refuses to save your Internet
Provider password, quite logical but not made clear in any documentation
I have found.
The above all makes it sound very difficult to set up Windows for Internet connections. It took me several hours the first time mainly because I did not understand what or why I was doing things, hopefully the information above combined with some specific instructions will make it much easier for you. The last time certainly only took me a few minutes to configure an additional connection to a new service provider. A number of ISPs such as FreeServe are covered explicitely in the Howto Technical Articles series on how to do this and a Guide to Selecting an ISP
Copyright © Peter and Pauline Curtis Content revised: First Written: 3rd October, 1996 Content revised: 29th July 1999 |