TweakHomePC

Dual-booting all versions of Windows and Linux

   Dual-Boot    |    Win 8    |    Win 7    |    Vista    |    Win XP/2K/NT    |    Win9x/Me    |    How to    |    Legacy 9x Tweaks    |    SiteMap   


 

Here: Home > Legacy 9x Tweaks > Modem & Net Tweaks


DOWNLOADS EXPLAINED

Learn How and Why

Downloading is explained in simple terms.

Understanding the principles behind downloading will be necessary for many home users.

How it works

Some Terms

How Downloads Work

This is a brief (layman's) explanation of how Internet access works.
The general principles are important.

Data is sent along a phone line from the ISP's modem to your modem, and it is then passed to your computer. The speed of transfer depends on the connection hardware-rating of your modem (e.g. a 56K modem), on the capacity of the phone line, and on the ISP's own capabilities.

All this is absolutely true, but it is an over simplification of what actually occurs. It is the items missing from this simple explanation that greatly influence download speeds.

We will assume you realise that a faster modem will produce faster connection rates (modem-to-modem) - provided you have the co-operation of your ISP! (If you are keen on purchasing a 56K /V90 modem, you FIRST need to check with your ISP to ensure he can, and will, supply a faster connection. If not, then you would waste your money. Likewise for a noisy phone line).

First a brief reminder of what happens with a downloading file. The target Site responds by sending the data, via a series of other servers (Routers), to your ISP whose modem then sends it to your own modem. The conduit used in a PPP connection is the phone line. Your CPU then collects the data, places it in memory, and you now have access to it.

While phone lines use a modulated analogue wave form, PCs use digital data. However modems convert digital data to a modulated analogue wave form and visaversa. This allows two digital computers to 'talk' to each other over an analogue phone line. Modem is an acronym for Modulator-Demodulator.

The data to be sent is split up into very many small Packets using an agreed procedure (a Protocol). To achieve efficient data transfer rates both communicating modems must use the same Protocols (TCP/IP) and agree the same usage of those Protocols , especially MaxMTU (or IPMTU for Windows 98).

[top of page]

The following diagram and explanation show how a download works when Hardware Compression is used :

How A Download Works

Note 1: The flow can be in either direction, downloading or uploading. The general principles are the same for both directions

Note 2: An ACKnowledgement is sent back for each successfully received group of data Packets - it is then 'deemed to be safe' to send the next group; otherwise all that data will be resent

Note 3: The terms Packets and Frames are nearly identical in meaning

Note 4: Some repetition is necessary in the following descriptions

Following the route  

Target Site < = = Routers = = > ISP modem

When you send a request for data (a file to download, get an email, view a page), many snippets of information are included with your request. These include such routine items as the file name, your address, your ISP's address, and so on.

More importantly your request contains your own TCP/IP Protocols. These ask that the data be sent to you in a specific manner - Packet size, etc. This information is included in the Header/Footer in each Packet of data sent back to you because Packets often take different routes and each 'router' needs this information or the Packet will be lost.

A Packet or Frame contains some of the requested file. It is comprised of a specifically-sized portion of the requested file, plus a Header/Footer which contains descriptions of that Packet. The Header/Footer contain your TCP/IP settings - part of the TCP/IP Protocols is to request Packets of a specific size.


It is in this area (the target, routers, and ISP modem) that your TCP/IP setting have their effect. If they are set to the International Standard then you can expect them to be complied with, and all is well - it is efficient.

If however they are not (e.g. MTU set to 1500 instead of the more usual 576), then your transfer rates (downloads) will suffer. For instance a requested data Packet of 1500 bytes may be split into four separate segments (each having its own Header) and each sent separately - this is inefficient and download rates would suffer. It is also possible that some frames may unnecessarily be resent further reducing download rates due to latency (failure to ACKnowledge in the required timescale).

The MTU setting (Packet size) is the most important of these Protocols.
RWIN (the number of Packets that can exist concurrently) may depend on your situation, but it is generally agreed it should be four times your MSS (MSS is the MTU minus 40 for the Header, and multiplied by 2, 4, 6, or 8 - it should be an integer multiplier).
TTL (the total number of hop between routers a Packet can take before it 'expires') needs to be increased now because of the busier Net; it is of lesser importance.

When the Internet is overcrowded then the overstretched network routers start dropping (discarding) data Packets, or route them onto slower, more congested links. It now takes time for the target to notice that the requester hasn't ACKnowledged Packets that had been sent - the target has to resend those Packets (which may also get dropped). The result is a general slowdown in apparent transmission speed, often with long gaps or pauses.

This problem can be diagnosed with the Ping and tracert utilities ( see Modems ). There is little we can do here except avoiding peak times and known slow sites.

Your ISP modem

The ISP will receive the data Packets and relay them to you in the agreed Protocol manner - provided there is agreement. It can be worthwhile checking with your ISP as to the Protocols he requires, just in case he does not adhere to the international standards.

He can/will send you compressed data.

If he is having temporary " problems " then it may be necessary to reduce (slow) some of your modem settings in order to maintain the connection.



ISP modem < = = = > your modem

This is your 'line connection' to the ISP and is referred to as the DCE speed. Its greatest speed is totally controlled by the hardware specifications of your modem e.g. a 28.8K, 33.6K or 56K modem (provided the ISP can, and does, service that speed).

This speed can NOT be exceeded. There are however occasions when it may be reduced automatically e.g. a noisy line, or an over busy ISP - the connection is maintained at a lower speed (32,100, 28,800, or less!) to prevent disconnection. Therefore it is usually best to have Only connect at this sped disabled.

It is here that compression comes to the fore. Basically, if you can download a file compressed at say 2:1 then your download speed of say 3.5Kbps is the equivalent of downloading that same, but uncompressed, file at 7.0Kbps! - or, if you like, it will take half the time to download that file.

Make sure you use Hardware Compression in Options - the majority of ISPs support this. Also ensure you use V.42 (if you have it), and, perhaps, switch off MNP5 compression. Yet again it has to be said that there are times when you may have to switch them off!

There is little else you can do here, EXCEPT ensuring you have the correct modem selection made when setting up your modem - do not select 28,800 if you have a 33,600!, and do not use 'generic' when you can nominate the correct modem!

Your modem

The basic function of the modem is to send data (a) to another modem and (b) in the opposite direction to the computer. To achieve either of these it must first alter the nature of the signal - change it to analogue ue for transmission along the phone line, and change it to digital when sending to the computer - computers are digital in nature, and this is how they 'talk' to each other over an analogue ue phone line.

The actual manufactured speed of the modem can not be exceeded, and it is likely the maximum transmission rate will never be achieved for a very large variety of reasons e.g. inherent and intermittent line noise, tardy ISP, slow or busy routers, etc.

When a byte for sending (10 bits) arrives at the modem, its start and stop bits are discarded and it is this byte (8 bits) that is sent - this in itself requires the Port sped to be at least 25% higher than the connection speed. Also when using hardware compression, compression (uploading) and decompression (downloading) occur at the modem. This is why the Port speed needs to be substantially higher than the connection speed.

When using software compression, the compressed data is passed through the Port into memory, and hence the Port speed need not be so much higher that the connection speed. However lowering the Port speed interferes with latency (time to ACKnowledge safe receipt), so it is best to maintain a high Port speed even then.

Modem < = = = > Port

What arrives at your modem is likely to be mostly compressed data. It is de-compressed by the modem (it is expanded to its natural size) and then sent along the serial cable to the Serial Com Port.

This transfer speed (modem-to-PC) is controlled by the throughput Maximum Speed in both Control Panel/Modems and in DUN. It is often referred to as the DTE speed

The amount of compression that occurs varies considerably with different types of files. Let's say data with compression of 2:1 arrives at the modem. When this is de-compressed it will then be twice the size of that sent (modem-to-modem) and this, now larger data, is sent through the Com Port.

Data like this is arriving at the modem continuously - making the modem-to-PC link work much faster just to keep up because it carries much more actual data. Hence the speed setting for Maximum speed (throughput) in Modems MUST be higher that the modem's hardware connection rate of say a 33.6K modem.

It makes sense that this speed should be close to, but not be greater than, the Port speed.

Serial Com Port

Think of the Port as a nautical port receiving a constant stream of cargo (requested packets of data), and the CPU as the stevedore who brings each cargo item (data) to, or from, its final destination (memory) - all very very rapidly.

The Port has a UART chip with a FIFO buffer, which normally has a size of 16 bytes (128 bits). The data is passed to this buffer one bit at time (Yes. It is fast!). Normally when FIFO (16 bytes capacity) is half full (its Rx set at 8 bytes) a request (an IRQ) to service the Port is made to the CPU to collect this data and place it in memory (into a 'socket' buffer).

Should the CPU be busy elsewhere (modems have low priority IRQ calls) then FIFO can continue to fill up to 16 bytes while waiting for the CPU to empty it. If the CPU is still late then newly arriving data will overwrite (Overrun) the existing FIFO data and damage it - this is a Buffer Overrun. That data will have to be sent again.

Overruns are not common with the introduction of FIFO some years ago - previous versions had a 1 byte buffer and had problems with Windows (which handles many IRQ calls during the clock cycles), though they were fine with DOS (few IRQ calls).

You can use the modem log to check for Overruns. If you get more than about 50 per hour then you need to investigate, more than 100 would be a real problem - it may, for instance, be a video card which is secretedly grabbing extra IRQs in an effort to increase its own performance! - try getting the latest driver and/or turn off its 'speed-up' option - or try reducing your FIFO buffer trigger (the COMM Port setting allows you to adjust the Receive Buffer from 1 to 14 - some experimentation may be necessary)

As previously stated it is evident that the speed of the Port MUST be substantially higher than the modem's connection speed - it must handle more data just to keep up. However setting it too high may cause unnecessary problems with little, if any, gain. Experience suggests that the optimal Com Port speed setting is about equal to that of the Maximum Speed of the modem.

It is also obvious that a fast CPU will help to move things along.

Memory

The newly arrived data is available to your Application software (browser, email, etc) after its arrival in memory. Winsock is a .DLL (Dynamic Link Library) and is the interface to TCP/IP and, from there, on out to the Internet.

Winsock.dll acts as a "layer" between your WinSock applications and your TCP/IP stack. Your Application tells Winsock.dll what to do; Winsock translates these commands to your TCP/IP stack, and your TCP/IP stack passes them on to the Internet.

As the TCP/IP Protocols work hand-in-hand with the Winsock software, it is likely a TCI/IP upgrade will also require a Winsock upgrade - they are a matching pair. If you have multiple versions of Winsock.dll floating on your hard disk, you may have problems. The Winsock.dll you're using must match the version of TCP/IP that you're running. Don't assume that because all Winsocks are called Winsock.dll that they're all the same--they're not - if you are using Microsoft's TCP/IP, you can't use Trumpet Winsock.

If Software Compression have been implemented, then decompression occurs in memory - Hardware Compression occurs at the modems.

[top of page]

Up to How It Works

Terms

This section provides simple explanations of some
terms encountered when dealing with modems

[ listed in order of association, rather than alphabetically ]

ISP:
(Internet Service Provider) This is the Server you have your account with. It provides your access to mail, World Wide Web, etc. Everything you send or receive is passed through him, so his performance is vital to you.
[ up to Terms ]


DUN
(Dial-Up Networking) This is the software that establishes your modem-to-ISPmodem connection.
[ up to Terms ]


LAN
(Local Area Network) A group of computers linked together by direct cable feed. A LAN computer's setup can be different from a stand-alone Home PC.
[ up to Terms ]


WAN
(Wide Area Network) A group of computers and/or LANs linked together via modems.
[ up to Terms ]


DCE:
Modem-to-modem Data Communications Equipment is the modem. DCE speed refers to the speed at which your modem talks to your ISP modem - it can/should carry compressed data. This is your highest hardware connection speed and you can not increase it above the manufacturers specifications.
[ up to Terms ]


DTE
Modem-to-computer Data Terminal Equipment is the computer. DTE speed refers to the speed at which your modem communicates with your computer - it usually contains non-compressed data (unless the original files were pre-compressed, like Zip files, or you use software compression). This is the Maximum speed in Control Panelnet/Properties and in Dial-up Networking. It should be set in both.
[ up to Terms ]


FTP
(File Transfer Protocol) FTP lets you transfer (upload and download) files from computer to computer. It was created to increase file-sharing between multiple users. FTPing is still the preferred method of sending files over the Net. Today's user-friendly programs like CuteFTP make file transfer easy.
[ up to Terms ]


URL
URL ia an individualistic and distinct Internet address. Every single thing you see on the Web has its own distinct address, or URL.
[ up to Terms ]


Domain Name
Each server has its very own IP address (Internet Protocol), which is a long string of numbers and dots (e.g. 194.133.125.13). However the domain name was created to make life easier for the user. The domain name in http://www.microsoft.com is the microsoft.com part, and it acts as a substitute for the IP numbers. If you really wanted to, you could type in a site's IP number, but it's much easier to use the domain name and let the server translate it using its DNS (Domain-Name-Server) software.
Each top-level domain name has a suffix that indicates what kind of organization it represents:
   com - commercial businesses
   edu - educational institutions
   gov - government agencies
   mil - military
   net - network organizations
   org - nonprofit organizations
[ up to Terms ]

[top of page]

Protocols:
Protocols are a set of international Internet 'Rules' for sending/receiving data Packets.

The Internet is a collection of routers (servers) that pass Packets of data from one computer to another along whatever pathway is available at that moment. Each data Packet may follow a completely different route through the various networks that make up the Net.

Any computer, with any OS, can use the system by following a few standard rules for sending and receiving data Packets. These sets of rules are the Protocols.

The different protocols are in layers, so two pieces of software running at the same layer can talk to one another over a Net connection.

At each layer there are settings whose values can determine the speed at which your computer can communicate over the Internet, or even if it will communicate at all.

TCP/IP are the important protocols that ask for a particular Packet size, number of Packets at a time, time a Packet will survive, and others. If these Protocols are incorrectly set then data transfer will suffer, or will terminate.
[ up to Terms ]

[top of page]

Packets or Frames:
A file sent, or received, is segmented into multiple small equally-sized data parts. Each of these parts has a small amount of data (the Header/Footer) attached to it for its ID number, source and destination addresses, and error-control data.

So a Packet comprises a small segment of data plus its Header. Each of these Packets is sent separately, and the Header is stripped off at the receiving computer after checking on the integrity of the included data part.

The Internet standard of Packet size is 576 (bytes); that is 40 bytes for the Header, and the remainder for the requested data segment.
[ up to Terms ]


Modem:
(Modulator/Demodulator). Computers work with digital data. This is incompatible with ordinary phone lines which carry analogue ue information (sound waves). However a modem is an analogue ue device. It converts digital to a modulated analogue ue wave form that can be transmitted over a normal analogue ue phone line, and visa versa. So one computer sends digital data to its modem, which converts it to analogue ue form. This analogue ue form is sent along the phone line to the receiving modem which converts it back to digital format and then sends it to its own computer. One computer can now 'talk digitally' to another.

It is important to understand the difference between "line speed" (the connection speed with which your modem talks to the other modem), and "DTE speed"(the speed with which your modem talks to your computer).

Each modem is known by its connection rate (modem-to-modem), often referred to as 'line speed', 'the modem', 'connection', 'hardware speed', and a variety of others. Modem-to-modem is the DCE speed. This rate can not be exceeded - a 33.6K modem can not exceed a 33,600Kbps connection between itself and its ISP. Modern modems will allow a lower connection speed to be used automatically when needed to maintain the connection.

Many people who have 28.8 or 33.6 kbps modems will never achieve these transfer rates due to phone line, and other, conditions. Note: 33.6Kbps is already pushing the speed limit of the current analogue ue phone system - to achieve more acceptable connection speeds we need a different method of communication (probably digital).

[The DTE speed is between modem-to-computer (the 'Maximum Speed' in Modems / Properties, and in DUN), and can be increased or decreased. You will see, later, it is important that this MUST be higher than the connection speed].

V.34 modems often speed up and down after the initial connection, and do so in a manner that is dependent on the particular connection as well as the particular equipment (including versions) at each end. This is necessary to maintain connection even in very varying conditions (such as a busy Net, a busy ISP, intermittent line noise).

A modem also uses Data Compression (hardware). If Hardware Compression is in use, then decompression occurs in the receiving modem. If Software Compression is used, then the compressed data is sent through the Port to the computer.

The operation of modems is explained in the How It Works section of this Page.
[ up to Terms ]

[top of page]

Bits & Bytes:
All files (data) are composed of a large number of bytes. These are the units which, together, make up a program. However every byte is itself composed of eight bits - different combinations of these bits make it possible to have bytes with different characteristics (and carry out different program code functions).

While a normal byte (a "character") contains 8 bits, start and stop bits (which are required for an asynchronous data stream) are added by the sending serial port's UART and removed by the receiving UART. However, with V.42 error control enabled, the start and stop bits are stripped away between the two modems - the data is actually sent synchronously, not asynchronously. (V.42 also adds, and strips off, error control checksum bytes for each block of characters sent.)

However there is some overhead. V.42 uses Packet framing for sending groups of data - this is roughly 5% added to each data segment in a Packet.

Take a case of a 33.6K modem. This can connect with the ISP modem at a maximum of 33,600 bits per second or 4,200 bytes per second (33,600 / 8 = 4,200). When we allow for the overhead of about 5%, the maximum real data transmission rate is about 3,990 bytes per sec (3.9Kb/sec) using V.42 and under ideal conditions (perfect phone line, solid connection to a perfect ISP, nobody else online!)

But there is good news. Much of what we access online comes in compressed format (either pre-compressed, or compressed for sending and decompressed on arrival). This means the 'real' data transfer can be much higher than the theoretically best rate of just 3.9Kb/sec.
[ up to Terms ]

[top of page]

Compression:
Hardware Compression: The transmitting modem examines the data file for repeated groups of characters. It replaces these with special codes. This can dramatically reduce the size of file to be sent (and hence the time taken to send it), even though the codes themselves are also sent. The receiving modem uses these codes to restore the data to it's original, uncompressed, form prior to its collection by the PC.

The compression (and decompression) takes place in the modems, and allows for transmission of fewer Packets of data between the two modems (faster downloading). Data travelling from the modem to the PC is not compressed (unless pre-compressed, like Zip files) - this means there is more data/sec travelling yourmodem-to-computer than ISPmodem-to-yourmodem.

While high speed modems generally won't be able to further compress files which are already compressed (such as zip, gif, jpg files), they will compress average text files about 2:1 and sparse files such as some spreadsheets and databases up to 4:1. Many people recommend setting the DTE speed to 4 times higher than your modem hardware speed (DCE), but unless you are transmitting lots of sparse files, that is normally not necessary and can in fact cause overruns and other problems that effectively reduce throughput. Much of what we download is pre-compressed so exceeding 115,200 (for a 33.6K modem) may be non-productive - 115,200 or 57,600 should be used.

Software Compression: In general terms hardware is always faster than software. If Software Compression is used then the compressed data is sent through the Port into memory where it is decompressed. This reduces the load on the Port - however it may cause latency problems.

The majority of modems will have a 'Hardware Compression' option - it should be enabled. Software compression is usually not necessary - it is best disabled.

Note: Data, or file, compression should not be confused with Header compression. A Header/Footer refers to that small amount of data added to every data Packet. Header compression gives a further gain.
[ up to Terms ]

Port:

Serial COM(munication) Port. This is the point of connection between the modem and the computer (even with internal modems). A Serial Port is a male-pin adapter. The serial is MALE, the parallel is FEMALE

[Digression:
Most home computers have two physical Ports (Com1 and Com2) and two 'logical' Ports (Com3 and Com4). External serial devices can be attached the physical Ports. Internal modems are most often linked to a logical Port (usually Com3).
In Windows 3.x Com1 and Com3 were linked. 1 and 3 could not really be used concurrently because they shared the same resources; IRQs. Likewise for 2 and 4.
Windows 95 has greater IRQ resources thereby reducing the possibility of conflict. If all four standard Ports have been assigned to devices, then Windows 95 automatically assigns the modem to Com5, or higher. "The communication APIs support the same number of logical ports as MS-DOS: 128 serial ports and 128 parallel ports. This enhanced limit allows use of multiport serial devices. The actual limitation on the number of ports usable is still based on the physical number of ports available to the computer"]

For downloads, when data flows from the modem it passes through the port on its way to the computer, and visa versa for uploads. Therefore is it important to use the correct setting, and this needs to be substantially higher than the speed of your modem e.g. a 33.6K modem. However setting the port speed excessively high will give no noticeable gain, and may actually cause problems (more on this elsewhere).

One Serial Com Port is used to enable communication from Modem-to-Computer. The default Ports setting of 9600 bits per second (bps) is changed when you install the modem. This setting should be checked any time you install or reinstall a modem. External modems must use one of the two physical Ports (Com2 is best). Internal modems usually use Com3, a 'logical' or 'internal' Port.

The modem-to-port link is made with the serial cable (for best performances use the purpose-built one supplied with the modem). It is similar with internal modems except the link is made via the motherboard.

- - < = = = > PORT UART [ <= FIFO => ] < = = = > CPU < = = = > Memory


The Com Port speed setting is the rate of transfer of data passing through it. It has a UART interface, which itself has a FIFO buffer (for temporary storage of data passing through the Port). The CPU collects the received data from the FIFO buffer and places in memory (in a Socket buffer).

It is easiest to think of the Port speed as the speed it fills its UART. The CPU must be able to collect the data at that speed (at least).

For optimal performance the Port speed should be similar to, but not higher than, that set for the modem's Maximum Speed. The modem's Maximum Speed is the throughput speed at which the modem will try to communicate with the computer.

Setting the speed too high can cause Overruns - data waiting for collection by the CPU being overwritten by newly arriving data. However the introduction of the FIFO buffer has made this much less likely.

The best situation is where you have the highest Port speed that does not produce Overruns. Overcautiously dropping the speed any further to protect against Overruns may needlessly slow data transfer. Fine tuning the TCP/IP in the hope that it alone will result in great downloading times has little chance of success if there are Overruns. The Port speed setting is the basis, and should be addressed first.

Text files will compress at about 2:1; spreadsheets and databases at up to 4:1. Pre-compressed files (zip, gif, jpeg) will not compress further; enabling software compression with such files actually makes them larger, and slows the download a little! Web pages are a mixture of uncompressed Text (HTML) files and compressed images (gif, jpg, etc).

Therefore the speed you set the Serial Com Port depends on your type of usage, as well as your modem. Some people try as high as 230,400bps! Many of us download lots of pre-compressed (downloads) or mixed files (browsing), and can be much more conservative. In practice, setting an extremely high speed will not produce any noticeable gain; a low setting will definitely have a detrimental effect. A speed of 57,600bps should be adequate for the majority of 33.6 modems used at home for browsing and downloading, though some may find 115,200bps to be optimal.
[ up to Terms ]


UART (& FIFO):
(Universal Asynchronous Receiver/Transmitter) The Serial Com Port has a UART interface chip (or emulated UART) to communicate with your PC. Basically, UARTs convert parallel data from your computer into a serial data stream, and vice-versa. The chip has a temporary storage area (buffer) in which it places the data one bit at a time - FIFO (First In First Out). An improperly setup system will cause characters to be lost, resulting in "CRC" or "Comm Overrun Errors". This old technology will be replaced soon(!) by the Universal Serial Bus (USB).

Internal modems are equipped with their own UARTS. External modems, however, utilize the UART incorporated into your PC's COMM port. If you are using an external modem, it is essential that you understand what type of UART your COMM port is using. If you use an internal modem there's a good chance the device will be equipped with a suitable UART. Nevertheless, you should check to confirm.

You can establish the type of UART installed on your machine by running the MSD.EXE (Microsoft System Diagnostics) utility which should be found in your DOS and/or Windows directories. Run the program and select the PORTS option. Be sure to run MSD in native DOS mode.

Increasing the Receive Buffer will improve UART performance - if you should get Overruns, then reduce it. The Receive Buffer is in Control Panel - Modems - Properties - Connection - Port Settings, and in DUN.

8250/16450 UART: Has a lack of built-in flow control, and buffers that can only hold a single character. OK in DOS, Overruns in the busier Windows.
16550 UART: Much better. Built-in flow control. Provides 16-character FIFO buffer. Much less chance of Overruns in Windows. Can call (IRQ) the CPU to collect data when only half full, and continue to fill if the CPU is busy at that moment - greatly reduces the risk of Overruns.
16650 UART: Like a 16550, but with a 32-character FIFO instead of a 16-character FIFO.
[ up to Terms ]


IRQ:
(Interrupt ReQuest) Many individual items in the computer need to be 'serviced' by the CPU. When an item is ready for processing it tells the CPU "Its my turn". - a large variety of these calls (IRQs) are made to the CPU during the clock cycles.

All IRQs have a priority rating to ensure more essential items are not left waiting. Items with a higher priority are allocated a higher IRQ number. The modem has a low priority and has to wait down the queue for the CPU's attention.

In many systems the IRQs will be made in something like this order of preference:

   hard disk controllers (IRQ 14/15)
   numeric data processor (13)
   PS/2 mouse (12)
   video card (11)
   sound card (10)
   CMOS/Real time clock (8)
   printer port (7)
   floppy disk controller (6)
   internal modem (5)
   Com Port 2 (4)
   Com Port 1 (3)
   interrupt controller (2)
   keyboard (1)
   system timer (0).

The details will vary from computer to computer, but the principle of higher priority will always be maintained e.g. the hard disk and video card are, correctly, more important than the modem to the operation of the computer system.
[ up to Terms ]


FIFO and Overruns:
The introduction of the FIFO (First In First Out) buffer has greatly reduced, but not eliminated, the chance of Overruns on receipt of data. Earlier modems had a one byte buffer; the 16550A has 16 byte FIFO buffers, and supports an adjustable trigger (Rx) levels - this is the point at which a call (IRQ) will be issued to the CPU asking it to collect the data just arrived.

With a default Rx set to 8 (bytes) there are a further 8 bytes that can be filled while waiting for collection. Now the CPU does not have to service the Serial Com Port so often.

However should the CPU still be late, then new data will overwrite the data awaiting collection - this is a Buffer Overrun; error checking will establish that the data has been corrupted, an ACKnowledgement of correct receipt is not sent, and the data has to be sent again (slowing the download).
[ up to Terms ]


Higher Port Speed
As a result of file compression, DCE and DTE are out of balance. DTE handles more data and has to be set to a speed higher than DCE in order to keep up.

If compressing a file (like a text file) to be sent, your Serial Com Port speed could be 2-4 times your modem connection speed (DCE). Sending/receiving a pre-compressed file (like a Zip file) requires a much more moderate increase, but you still need to set your computer-to-modem DTE speed higher than the maximum connect rate you expect your modem-to-ISP to achieve.
[ up to Terms ]

 

[top of page]

Please remember that you alone are responsible for the consequences of any changes you make to your computer hardware or software.

Copyright © LarryM 1998-2015 thpc@mail.com