adairw wrote:So you're basically running FC on all ports? Trunks and AP's?
Yes.
SO here is what happens.
Packets go rushing to the AP and not all from one stream (user).
The AP gets stuck with a bad connection and gets delayed or even the fact that the wireless link for all intensive purposes is seen by the network as a 100M FD link but in reality is at best with a 20 Mhz wide channel 70 Mb HD with tons of retrys and errors even under the best circumstances.
So the AP gets over run by packets and fills it's own buffers so it wants to issue a pause frame to the Ethernet port that is feeding it.
That port also only has so many buffers so when it gets full it wants to issue a pause frame back to the uplink port that is feeding the switch.
The uplink port buffers get full so it issues a pause frame to the router.
Flow control works OK when each port has one user or device but the AP is a bridge to MANY devices and many different streams of packets, some small and very numerous.
TCP has mechanisms to deal with congestion but the problem is they all work around a destination device telling the sending device to slow down in the event the destination can not handle the packets for what ever reason. This is broken for WISPs because the bottle next is usually the AP not the final destination so therefor the mechanisms built into TCP to combat this become broken or ineffective as the final destination device (the customer computer or router) is not under any distress handling the incoming packets so no state of distress is ever sent to the sending device to slow down and the AP is just a simple bridge with no way of acting as a proxy for the final destination device. It would be so great if the airOS would act as proxy for its clients and interject for them to the sending device to slow down and thus no pause frames would need to be sent.
Pause Frames SUCK because they penalize the entire interface not just the stream to the device struggling to get packets from a wireless connection but for now I have found that FC is better then no Flow Control. It is treating the symptoms and not the cause but it is the best solution FOR NOW.
Now 1G Ethernet ports have far more buffers than 100M ports which is a GREAT help, as it is not so much volume but timing that gets messed up when a HD wireless bridge is in the path.
I have recently came up with an idea that I want to discuss with my guys Rory and Tom where we put the AP in routing mode (NOT NAT) this way the AP may be able to better use the mechanisms built into TCP to deal with congestion as it becomes a destination within the chain. As I said it is just an IDEA, could be crappy idea but I want to explore it.