The Bluetooth asynchronous connection-oriented logical transport (ACL) is one of two types of logical transport defined in the Bluetooth Core Specification, either BR/EDR ACL or LE ACL. BR/EDR ACL is the ACL logical transport variant used with Bluetooth Basic Rate/Enhanced Data Rate (BR/EDR, also known as Bluetooth Classic) whilst LE ACL is the ACL logical transport variant used with Bluetooth Low Energy (LE).
The ACL transports are part of the Bluetooth data transport architecture.
Note that all definitions of Bluetooth terminology, protocols and procedures including ACL are defined in the Bluetooth Core Specification [1] which is published by the standards development organisation, the Bluetooth Special Interest Group (Bluetooth SIG).
The architecture section of the Bluetooth Core Specification defines a number of concepts which collectively constitute the Bluetooth data transport architecture. Key amongst these concepts are the Physical Channel, Physical Link, Logical Link and Logical Transport. Certain combinations are intended for use in different application types which have particular requirements regarding issues such as topology, timing, reliability and radio channel use.
The LE ACL logical transport is used with either an LE-C logical link, which carries control data or an LE-U logical link which is for user data. It is based on an LE Active Physical Link and the LE Piconet Physical Channel. See Figure 1.
The BR/EDR ACL logical transport is used with either an ACL-C logical link for control data or an ACL-U logical link for user data and it is based on a BR/EDR Active Physical Link and either the BR/EDR Basic Piconet Physical Channel or the BR/EDR Adapted Piconet Physical Channel. See Figure 2.
Both ACL variants are designed to provide reliable, bi-directional, point to point communication.
A Bluetooth LE Central device may establish a connection with an advertising Peripheral device by responding to a received connectable advertising packet with a PDU that requests a connection. A number of parameters are specified in the request. Amongst these parameters are connection interval, supervision timeout, peripheral latency and channel map.
The connection interval parameter defines how often in milliseconds, the radio can be used for servicing this connection. Whenever the connection interval timer expires, a connection event is said to begin and at this point, the Central device in the connection may transmit a link layer packet. At the start of each connection event, the radio channel to be used is selected using a procedure known as adaptive frequency hopping.
The Peripheral device, possessing the same connection parameters as the Central device knows when to expect transmitted packets from the Central device and over which channel. If the value of the Peripheral Latency connection parameter is zero, the Peripheral must reply to the Central device 150 microseconds (+/- 2µs) after receiving the last bit of the Central’s packet. Central and Peripheral may then proceed to exchange a further implementation-defined number of packets during the remainder of the connection event. Note that the Peripheral’s behavior may be modified by a non-zero Peripheral Latency parameter value.
Figure 3 shows a basic exchange of packets, during two connection events with C>P indicating packet transmission by the Central device and P>C by the Peripheral.
Packets exchanged over an LE ACL connection contain either LL Data PDUs or LL Control PDUs which are associated with Link Layer control procedures. If either device has no data to transmit and transmission of a packet is required, it must send an empty LL Data PDU.
The Supervision Timeout parameter specifies the maximum time which may elapse between two Link Layer data packets having been received before the link is considered to have been lost.
The Peripheral is not required to listen for packets from the Central device during every connection event. The Peripheral Latency parameter defines the number of consecutive connection events during which the Peripheral does not have to be listening. This gives the Peripheral the opportunity to save power.
Figure 4 shows the behavior of the Peripheral with Peripheral Latency = 1 and therefore listening during alternate connection events only. The Central may transmit during those events where the Peripheral is not listening, but such packets will not be received and therefore will not be acknowledged, ending the connection event.
Link layer data packets contain three important fields which contribute to communication being reliable. These fields are called the Sequence Number (SN), Next Expected Sequence Number (NESN), and the More Data field. All three of these fields are single bit fields and their use provides a system of acknowledgements and a method for checking for the correct ordering of received packets.
Communication starts with the Central device (Device A in Figure 5) sending a link layer data packet with SN and NESN both set to zero. From this point on, at each packet exchange that takes place, if all is well, the value of the SN field as set by Device A, will alternate between zero and one. The other device (Device B) always knows therefore, what the SN value of the next packet to be received should be and checks for this.
If Device B receives a packet from Device A with the expected SN value, it responds with a link layer data packet that has NESN set to the logical value NOT(SN). So for example, if the received SN value was 1 then NESN in the response will be 0.
When Device A receives a response from Device B with NESN set to the value that Device A intends to use for SN in its next packet, Device A takes this to be an acknowledgement from Device B, confirming that it received the last transmitted packet correctly. Figure 5 shows this.
If Device B receives a packet with the wrong SN value, it assumes that the packet is the retransmission of the previous packet received, acknowledges it but does not pass it up the stack for further processing.
If Device A receives an unexpected NESN value in a reply from Device B or does not receive a reply at all, it resends the packet with the same SN value used originally. Different controller implementations are free to implement varying algorithms regarding how many times to resend before concluding communication to have failed. See Figure 6.
Each packet contains a CRC field and encrypted packets also contain an MIC field. On receiving a packet, the link layer checks the CRC and if present, the MIC. If either check fails, the packet is not acknowledged, and this generally results in the originator of the packet resending it. See Figure 7.
LE-ACL employs a spread spectrum scheme known as adaptive frequency hopping. At the start of each connection event, frequency hopping occurs, with one of the 37 general purpose Bluetooth LE radio channels being selected from the set of available channels using a channel selection algorithm. Each device in the connection will then switch to the selected channel and over time and a series of connection events, communication will take place using a frequently changing series of different channels, distributed across the 2.4 GHz band, thereby significantly reducing the probability of collisions occurring.
A channel map is maintained by the Central device and may also be maintained by the Peripheral device. This is a table of data which indicates which channels are available for use and which are not. Implementations mark channels as used or unused according to how well each channel is performing in terms or errors and evidence of interference. Unused channels are not selected by the channel selection algorithm. In this way, adaptive frequency hopping dynamically adjusts the channels used for active communication according to the prevailing RF conditions in the environment.
A number of control procedures relating to LE ACL connections are defined. A selection of examples appears in Table 1.
Control Procedure | Description |
---|---|
Connection Update | Allows either the Central or Peripheral device to request changes to the connection parameters connection interval, peripheral latency and supervision timeout. |
Channel Map Update | Allows the Central device to transfer its latest channel map data to the connected Peripheral. |
Encryption | Allows either Central or Peripheral to enable the encryption of packets. |
Feature Exchange | Allows Central or Peripheral to initiate an exchange of the Link Layer features each device supports, encoded as a bitmap field. |
Periodic Advertising Sync Transfer | Allows either Central or Peripheral to transfer periodic advertising synchronization information relating to a periodic advertising train that has been discovered to the other device over an LE ACL connection. |
CIS Creation Procedure | Allows a Central device to create a Connected Isochronous Stream (CIS) with the Peripheral. |
Power Control Request | Allows one peer to request that the other peer adjust its transmit power level. |
Channel Classification Reporting | Allows a Peripheral to report channel classification data to the connected Central. |
Subrated connections are LE ACL connections which have additional properties assigned to them and behave differently in some ways. The additional properties are called the subrate factor, subrate base event, and continuation number.
The subrated connection properties provide a mechanism for indicating that only a specific subset of connection events is to be actively used by the connected devices, with the radio not being used in other connection events. A subrated connection can therefore have a short ACL connection interval which allows low latency at the application layer but still exhibit a low duty cycle.
Figure 8 illustrates the basic concepts relating to subrated connections.
Here we can see that only one in every five connection events is used by either Central or Peripheral. The other four are skipped and so there is no radio activity during those connection events. This ratio of used to skipped connection events is determined by the subrate factor parameter and in this example it is set to 5.
Subrated connections have a number of special Link Layer control procedures defined for use with them. For example, there is a procedure for updating subrated connection parameters which works differently to the general Connection Update procedure. Critically, changes to subrated connection parameters can be applied almost instantaneously whereas general connection parameter changes can take a significant amount of time to take effect. The advantage of subrated connections therefore is that persistent connections which exhibit a low duty cycle and consume little power can be established and can be switched to a high duty cycle, high bandwidth connection with no delay that any user could notice. This capability has particular applicability in some LE Audio scenarios such as those involving hearing aids and smartphones.
The Bluetooth Core Specification Version 5.3 Feature Enhancements paper has a substantial chapter dedicated to the subject of subrated connections and is recommended as a source of further information.
Communication using a BR/EDR ACL logical transport is similar to the LE ACL variant and provides an asynchronous point-to- point communication mechanism for exchanging data between a Central device and a Peripheral.
When a BR/EDR device joins a piconet, a default ACL logical transport automatically created. Other logical transport types (e.g., SCO - BR/EDR synchronous connection-oriented) between the same pair of devices are dependent upon the default ACL and if it is removed then the other logical transports are also removed.
BR/EDR ACL connections make use of time slots defined by the underlying physical channel. Central and Peripheral devices alternately transmit and receive during a subset of these time slots, allocated by the implementation. Synchronous logical transports are given priority such that BR/EDR connections use only those time slots that have not been reserved for synchronous communication.
Six packet types for defined for Bluetooth Basic Rate (BR) and are named DM1, DH1, DM3, DH3, DM5 and DH5. Bluetooth Enhanced Data Rate (EDR) defines a further six packet types named 2-DH1, 3-DH1, 2-DH3, 3-DH3, 2-DH5 and 3-DH5. A packet type AUX1 is defined for use in testing.
A BR/EDR ACL connection is established by a Peripheral device paging a Central device. The Central device performs page scanning.
1-bit header fields ARQN and SEQN are used to allow positive or negative acknowledgements to be made and to verify that the order of packets received is as it should be.
The RX buffer associated with BR/EDR ACL connections may become full. The header field FLOW is used to provide a simple flow control mechanism with values in responses indicating STOP or GO.
Adaptive frequency hopping (a responsibility of the underlying physical channel) is in effect when using the BR/EDR ACL logical transport, with a channel selected at each reception or transmission event. 79 channels are defined for use with Bluetooth BR/EDR and there are a number of different possible hopping patterns defined.
The Link Manager Protocol (LMP) defines a series of PDU types which allow the control of and negotiation over details of the BR/EDR ACL logical transport to be carried out. LMP PDUs are sent over an ACL-C logical link.
Bluetooth is a short-range wireless technology standard that is used for exchanging data between fixed and mobile devices over short distances and building personal area networks (PANs). In the most widely used mode, transmission power is limited to 2.5 milliwatts, giving it a very short range of up to 10 metres (33 ft). It employs UHF radio waves in the ISM bands, from 2.402 GHz to 2.48 GHz. It is mainly used as an alternative to wired connections to exchange files between nearby portable devices and connect cell phones and music players with wireless headphones.
IEEE 802.2 is the original name of the ISO/IEC 8802-2 standard which defines logical link control (LLC) as the upper portion of the data link layer of the OSI Model. The original standard developed by the Institute of Electrical and Electronics Engineers (IEEE) in collaboration with the American National Standards Institute (ANSI) was adopted by the International Organization for Standardization (ISO) in 1998, but it remains an integral part of the family of IEEE 802 standards for local and metropolitan networks.
In computer networking, the maximum transmission unit (MTU) is the size of the largest protocol data unit (PDU) that can be communicated in a single network layer transaction. The MTU relates to, but is not identical to the maximum frame size that can be transported on the data link layer, e.g., Ethernet frame.
The Open Systems Interconnection (OSI) model is a reference model from the International Organization for Standardization (ISO) that "provides a common basis for the coordination of standards development for the purpose of systems interconnection." In the OSI reference model, the communications between systems are split into seven different abstraction layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application.
Frame Relay is a standardized wide area network (WAN) technology that specifies the physical and data link layers of digital telecommunications channels using a packet switching methodology. Originally designed for transport across Integrated Services Digital Network (ISDN) infrastructure, it may be used today in the context of many other network interfaces.
Intermediate System to Intermediate System is a routing protocol designed to move information efficiently within a computer network, a group of physically connected computers or similar devices. It accomplishes this by determining the best route for data through a packet switching network.
Network topology is the arrangement of the elements of a communication network. Network topology can be used to define or describe the arrangement of various types of telecommunication networks, including command and control radio networks, industrial fieldbusses and computer networks.
Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior. Devices that typically support SNMP include cable modems, routers, network switches, servers, workstations, printers, and more.
X.25 is an ITU-T standard protocol suite for packet-switched data communication in wide area networks (WAN). It was originally defined by the International Telegraph and Telephone Consultative Committee in a series of drafts and finalized in a publication known as The Orange Book in 1976.
The Infrared Data Association (IrDA) is an industry-driven interest group that was founded in 1994 by around 50 companies. IrDA provides specifications for a complete set of protocols for wireless infrared communications, and the name "IrDA" also refers to that set of protocols. The main reason for using the IrDA protocols had been wireless data transfer over the "last one meter" using point-and-shoot principles. Thus, it has been implemented in portable devices such as mobile telephones, laptops, cameras, printers, and medical devices. The main characteristics of this kind of wireless optical communication are physically secure data transfer, line-of-sight (LOS) and very low bit error rate (BER) that makes it very efficient.
In the seven-layer OSI model of computer networking, the physical layer or layer 1 is the first and lowest layer: the layer most closely associated with the physical connection between devices. The physical layer provides an electrical, mechanical, and procedural interface to the transmission medium. The shapes and properties of the electrical connectors, the frequencies to transmit on, the line code to use and similar low-level parameters, are specified by the physical layer.
OBEX is a communication protocol that facilitates the exchange of binary objects between devices. It is maintained by the Infrared Data Association but has also been adopted by the Bluetooth Special Interest Group and the SyncML wing of the Open Mobile Alliance (OMA). One of OBEX's earliest popular applications was in the Palm III. This PDA and its many successors use OBEX to exchange business cards, data, even applications.
Modbus or MODBUS is a client/server data communications protocol in the application layer. It was originally designed for use with its programmable logic controllers (PLCs), but has become a de facto standard communication protocol for communication between industrial electronic devices in a wide range of buses and networks.
The RapidIO architecture is a high-performance packet-switched electrical connection technology. It supports messaging, read/write and cache coherency semantics. Based on industry-standard electrical specifications such as those for Ethernet, RapidIO can be used as a chip-to-chip, board-to-board, and chassis-to-chassis interconnect.
In computer networking, link aggregation is the combining of multiple network connections in parallel by any of several methods. Link aggregation increases total throughput beyond what a single connection could sustain, and provides redundancy where all but one of the physical links may fail without losing connectivity. A link aggregation group (LAG) is the combined collection of physical ports.
Bluetooth Low Energy is a wireless personal area network technology designed and marketed by the Bluetooth Special Interest Group aimed at novel applications in the healthcare, fitness, beacons, security, and home entertainment industries. Compared to Classic Bluetooth, Bluetooth Low Energy is intended to provide considerably reduced power consumption and cost while maintaining a similar communication range.
ATM Adaptation Layer 2 (AAL2) is an Asynchronous Transfer Mode (ATM) adaptation layer, used primarily in telecommunications; for example, it is used for the Iu interfaces in the Universal Mobile Telecommunications System, and is also used for transporting digital voice. The standard specifications related to AAL2 are ITU standards I.363.2 and I366.1.
iSCSI conformance testing is testing to determine whether an iSCSI Initiator/Target meets the iSCSI standard.