Page 498 - From GMS to LTE
P. 498

484  From GSM to LTE-Advanced Pro and 5G

            7.6   Bluetooth Profiles

            As shown at the beginning of this chapter, Bluetooth can be used for a great variety of
            applications. Most applications have a server and a client side. A client usually establishes
            the Bluetooth connection to the master and requests the transfer of some kind of data.
            Thus, the master and the client sides of a Bluetooth service are different. For example,
            for the transfer of a calendar entry from one device to another the client side establishes
            a connection to the server. The client then transfers the calendar entry as the sending
            component. The server, on the other hand, receives the calendar entry as the receiving
            component. To ensure that the client can communicate with servers implemented by
            different manufacturers, the standard defines a number of Bluetooth profiles. For each
            application (headset, calendar and address transfer, audio streaming, etc.), an individual
            Bluetooth profile has been defined, which describes how the server side and the client
            side communicate with each other. If both sides support the same profile, interoperability
            is ensured.
             It is noteworthy that the client/server principle of the Bluetooth profile should not be
            confused with the master/slave concept of the lower Bluetooth protocol layers. The
            master/slave concept is used to control the piconet, that is, who is allowed to send and
            at which time, while the client/server principle describes a service and the user of a
            service. Whether the Bluetooth device used as a server for a certain service is the master
            or the slave in the piconet is thus irrelevant.
             Table 7.6 gives an overview of a number of different Bluetooth profiles for a wide
            range of services. In practice, it can be observed that the use of Bluetooth concentrates
            on a few profiles and some of them are described in more detail in the following sections.

            7.6.1  Basic Profiles: GAP, SDP and the Serial Profile
            The Bluetooth standard specifies two profiles which are not visible on the application
            level. The Generic Access Profile (GAP) [2] defines how two devices can connect with
            each other in different situations and how to perform the connection establishment.
            The profile describes, among other things:
               the presentation of Bluetooth‐specific parameters to the user, such as the device
            ●
              address (BD_ADDR) or the PIN;
               security aspects (security mode 1–3);
            ●
               idle mode behavior (e.g. inquiry, device discovery);
            ●
               connection establishment.
            ●
             The GAP protocol thus ensures that the user interfaces for the configuration of the
            Bluetooth stack are similar on all devices. Furthermore, the GAP profile specifically
            defines which messages are sent during connection establishment, their order and
            which actions are taken when different options are discovered.
             As shown in Section 7.4.6, each Bluetooth device has its own service database, in
            which each local service can store important data for the connection establishment to a
            remote device. The service discovery application profile [5] defines how the database is
            accessed and how it is structured for each profile.
             The Serial Port Profile (SPP) [6] is also a basic profile on which many other profiles
            are based. As the name implies, this profile simulates a serial interface for any kind of
   493   494   495   496   497   498   499   500   501   502   503