Information Technology Reference
A slave is permitted to return an ACL packet in the slave-to-master slot if
and only if it has been addressed in the preceding master-to-slave slot. If the
slave fails to decode the slave address in the packet header, it is not allowed
to transmit. ACL packets not addressed to a specific slave are considered as
broadcast packets and are read by every slave. If there is no data to be sent on
the ACL link and no polling is required, no transmission shall take place.
To better exploit the bandwidth, ACL packets can last one, three or five
slots. In this way asymmetric connections can be made, using long lasting
packets in one direction and short packets in the other.
Bluetooth uses a simple automatic retransmission system (the ARQ,
automatic repeat request) to achieve the reliability for ACL links. According
to this schema, after each packet sent in one direction, there must be an
answer packet in the opposite direction. This contains a bit indicating
whether the previous packet was correctly received (ACK, acknowledge) or
not (NACK, negative acknowledge). In case of NACK answer or no answer
at all, the sender transmits the packet again.
2.2 Establishing a Bluetooth connection
One of the main features of Bluetooth is the possibility to automatically
search, find and connect other devices with no human involvement. Before
starting to communicate, two devices must agree on the connection details,
setting up the clock and the frequency hopping sequence, for instance. This
agreement is achieved by means of inquiry , scan and page procedures .
Devices that are available for connections, periodically run the scan
procedure, listening to possible inquiry or page messages coming from other
devices. Devices searching for others to connect use the inquiry and page
procedures. The first one is used to discover existing (and available) devices
within the Bluetooth radio coverage area. The inquiry procedure also allows
a device to know details about the connecting one, such as the physical
address, the clock and the name (if it exists).
These information are then used during the page procedure to complete
the connection. In the page phase, the calling device sends its details to the
called one so that the connection can be correctly established. The calling
device becomes the master and the called device becomes the slave, but both
can agree to switch their roles at any time during the connection.
To improve the security of a connection, there can be a preliminary phase
to authenticate devices one another, that is, the pairing phase. Pairs of
devices may establish a relationship by creating a shared secret key ( link key ).
If a link key is stored by both devices they are said to be bonded . A device
that wants to communicate only with a bonded device can cryptographically
authenticate the identity of the other device, and so be sure that it is the same