it really all depends on the nature of the traffic.  if your users are
mostly bringing traffic inward (displaying web pages or incoming ftp)
along with normal e-mail then you will be fine.
on the other hand, if even one user transfers a large file (or sends an
e-mail with a huge attachment) then the outgoing traffic will literally
kill the incomming flow for all the other users.
i'm not sure of the technical details on why this type of DSL service
behaves this way
/quote

I wrote this a while back, and I tried to give an easy to understand
explanation, because the explanation given to me about this always sucked. 

Basically it has to do with the modems; most DSL modems have a large amount
of outbound buffer space. I'm not sure why this is, but I think the
rationalization is that under normal use, a big buffer space is a good thing
(which indeed it is, if there is a short hiccup on the DSL line, the modem
can sail right through it). That said, once you fill it, bad things start to
happen. 

Of course, when you send a large file as fast as you can (your computer is
sending much faster than the DSL upstream) it fills the buffer. If you're
asking yourself "So what? The buffers are full, what's the big deal?" read
on.

When you receive a packet (i.e. download stuff), you usually send an "ACK"
packet to the sender acknowledge that you received it, otherwise the sender
sends it again. If you don't send it or don't send it within a certain
amount of time, the sender will slow down the transfer of packets to you
because it will assume that your downstream connection / router / what not
can't handle packets at a higher speed. (This makes a lot more sense if you
assume that all devices in networks transmit at the same speed when they are
sending and receiving, which is obviously not true)

I'm going to take a side note here and explain a bit about FIFO, or
first-in, first-out. Packets that are put in the buffer first are sent out
first. That's all there is to it. Pretty simple, right?

This normally works pretty well, but it isn't the best way of doing things
because when you are sending a large file, the buffer gets filled up with
whatever is sent to it first. What tends to happen is that the buffer is
mostly filled with packets from the file upload, and any ACK packets are
just kind of thrown in there, and aren't prioritized. Since the modem can
only send to the Internet at a set speed, the last packet in the buffer will
be waiting for a bit while the others in front of it are sent. 

Your computers are also waiting for ACK packets, i.e. they send a packet
(which could be an http request) out to the Internet, and expect an ACK
back, but when they don't get it, they retransmit the packet, which makes
the situation worse. 

The situation gets really bad when the outbound buffers become completely
full, the poor modem really can't send anything else out, so it either
ignores the packet (causing someone to retransmit another packet) or trashes
something in the buffer (which also causes someone to retransmit another
packet). 

End result? Incoming speeds "suffer" because there is a lot more overhead
being sent, packets are being dropped or delayed left and right, and
everyone sending stuff to you thinks your internet connection is (really)
slow. 

You would think that there would be some intelligent way of prioritizing the
outbound ACK packets, but apparently engineers aren't concerned with such
things when it comes to mass produced $40 consumer products. 

The good news (well, sort of) is that you can usually get rid of this
problem by capping the upstream of your entire network to about 90% (for
DSL, ~95% for cable) of your actual outbound speed.

_______________________________________________
BAWUG's general wireless chat mailing list
[unsubscribe] http://lists.bawug.org/mailman/listinfo/wireless

Reply via email to