vortal internetowy
artykuły
Powrót do listy artykułów
Temat artykułu: Flow Control
Tekst napisał pitt2k dnia 08-01-2004
Flow control is a function that prevents network congestion by ensuring that transmitting
devices do not overwhelm receiving devices with data.
There are a number of
possible causes of network congestion. Usually it is because a high-speed
computer generates data faster than the network can transfer it, or faster than
the destination device can receive and process it.
There are three
commonly used methods for handling network congestion:
- Buffering
- Source Quench Messages
- Windowing
Buffering
Buffering is used by network devices
to temporarily store bursts of excess data in memory until they can be
processed. Occasional data bursts are easily handled by buffering. However,
buffers can overflow if data continues at high speeds.
Source Quench
Messages
Source quench messages are used by receiving devices to help
prevent their buffers from overflowing. The receiving device sends a source
quench message to request that the source reduce its current rate of data
transmission.
Windowing
Windowing is a flow-control method in
which the source device requires an acknowledgement from the destination after a
certain number of packets have been transmitted.
- The source device sends a few packets to the
destination device.
- After receiving the packets, the destination device
sends an acknowledgment to the source.
- The source receives the acknowledgment and sends the
same amount of packets.
- If the destination does not receive one or more of the
packets for some reason (such as overflowing buffers), it does not send an
acknowledgment. The source will then retransmits the packets at a reduced
transmission rate.
Windowing is very
reliable because it uses positive acknowledgement. Positive acknowledgement
requires the recipient device to communicate with the sending device, sending
back an acknowledgement when it receives data. If the sending device does not
receive an acknowledgement it knows to retransmit the packets at a reduced
transmission rate. It the receiving device sends a packet with a zero window
size, it means it's buffers are full and it cannot receive any more data.
Transmission is resumed when the receiving device sends a packet with a
window size higher than zero.
REMEMBER THIS !!!
Data
arriving faster than the device can handle are stored in memory.
Flow
control is maintained by the receiving device sending Receive ready/not ready
messages to the transmitting device.
Know that a zero window size means to
stop transmitting packets.
If a sending device does not receive any
acknowledgement at all, it will retransmit the last packets at a reduce rate.
Positive acknowledgement requires a recipient to communicate with the
sending device by returning an acknowledgement.
Opracowanie na
podstawie materiałów TroyTech (www.troytech.com).