Wireless – Why does a Bluetooth header have both ACK and FLOW

wireless

I'm a little confused, couldn't flow control be performed just using the ACK field in the header? Why is there a FLOW bit as well?

Best Answer

The ARQN bit doesn't provide the sender with enough information to be used as flow control. ACK only means "I received the packet intact."

I don't see how it could also be used for flow control. If the receiver receives the packet, but wants the sender to stop, what could it do? If it sends an ACK, the sender will keep on sending. If it sends a NAK, or sends nothing, that tells the sender the packet was bad. So the sender will retransmit it, making things worse. The FLOW bit means "I'm busy, please stop sending."