Connection dropouts can be caused by a number of things...
A "Touch Phone" Plugged Into the Same Phone Line as Your Modem
Having a Touch Telephone of any kind plugged into the same line as your modem can cause the modem to disconnect at quite regular intervals (about every 15-20 minutes). These telephones derive power via the telephone line and must be disconnected when using the modem.
Call Waiting can cause a modem to disconnect. Modems do not like hearing those "beep-beep" noises indicating a "call waiting" and will usually hang-up in protest. Make sure it is turned off.
A "Bad" Line
Sometimes a particular phone line just will not support the data speed and frequently drops out. This is particularly so in country areas of Australia. This problem can often be solved by reducing the communication port speed.
For Example: The port speed for a 56K modem is usually 115200 bps. By reducing this to 57600 bps a stable connection can usually be achieved.
Line noise is sometimes enough to cause your link to drop particularly if your modem is a model that can not handle line noise well. Do you ever notice "crackly" noises on normal voice calls? If you do, you will most probably experience connection problems.
If you get disconnected from your ISP without warning and too often, try adding "S10=50" (without the quotes) to the initialisation string of the modem. This should extend the time period before the modem "hangs up".
Communications Port / Flow Control Problems
While these problems are not usually enough to cause carrier loss, they, in combination with other factors reviewed in this document, can seriously degrade performance.
You should have a fast serial card capable of handling the data speed required. Your modem's communications port should be running at 38,400 bps to 115,200 bps and you should be using hardware flow control.
If you are are resurrecting an older machine you should also test your serial port to see what speed it is capable of working at.
Modem Compression "dictionary" Fault
Some brands of modems suffer from a fault in their compression dictionary code which causes the dictionary buffer space to fill up and overflow, causing compression to bloat and slow down, and eventually causing a loss of carrier (they hang up).
This can happen slowly or over a period of time, depending on the data being transmitted. As a trial to try and diagnose the fault, try disabling modem compression (%C0) in the modem init string.
Other Modem Problems
Your modem itself may be having problems, either due to a fault or simply due to use of an incorrect initialisation string. AT&F (factory default) ATZ (modem reset) or are fairly standard init strings , but your's may require additional AT commands to actually function properly.
The string AT&F&C1&D2&K3&W is a fairly standard init string which works for most modems.
The "Public Switched Telephone Network"
Your telephone company may be testing the impedance of your line, rebooting the exchange, and so on.