Le Bluetooth ou IEEE 802.15 http://www.labo-wireless.com
Un peu d’histoire Norme défini par un conglomérat de sociétés nommé Bluetooth Special Interest Group (Bluetooth SIG) : Ericsson, IBM, Intel, Nokia, Toshiba et rejoints par plus de 2500 sociétés. L’IEEE a par la suite standardisé la norme Bluetooth : 802.15. Bluetooth : en hommage à Harald « la dent bleue » ayant unifié les différents royaumes nordiques à la fin du moyen âge. http://www.labo-wireless.com
Un standard pour petits réseaux à petit budget Norme définie pour des WPAN (Wireless Personal Area Network) destinée à interconnecter plusieurs appareils mobiles dans un périmètre d’une dizaine de mètres. Une puce de moins de 1cm² à un coût de revient particulièrement bas : 5USD la puce. Jusqu’à 72 périphériques interconnectés. Fonctionnement sur la bande ISM (2,4GHz), bande de fréquence libre dans de nombreux pays. http://www.labo-wireless.com
Architecture du Bluetooth Établissement de connexions maître esclave. Le maître a pour rôle d’orchestrer les communications entres deux esclaves. Il permet également la synchronisation des horloges des postes esclaves. Un piconet est composé d’un maître au minimum et de 7 esclaves maximum. Plusieurs piconet peuvent être interconnectés : scatternet Un maître ne peut communiquer qu’avec un esclave, et un esclave, uniquement avec un maître. L’esclave d’un piconet peut être le maître d’un autre. Dans un scatternet, les unités de différents piconets peuvent communiquer. Un scatternet peut être composé de maximum 10 piconets, soit 72 postes au total. http://www.labo-wireless.com
Schéma d’un scatternet http://www.labo-wireless.com
Plusieurs types de liaison (1/2) SCO (Synchronous Connection-Oriented Link) Liaison synchrone à commutation de circuit, utilisée pour la téléphonie ip ou la vidéo temps réel Un débit symétrique de 64Kbps ACL (Asynchronous Connection Less link) Liaison asynchrone à commutation de paquet utilisé pour le transfert de données Un débit symétrique de 433.9 Kbps ou un débit asymétrique de 723.2/57.6 Kbps, en réponse à des besoins de bande passante différents selon les périphériques interconnectés. Un maître peut gérer simultanément 1 ACL et 1 SCO, 1 ACL, 3 SCO. http://www.labo-wireless.com
Plusieurs types de liaison (2/2) http://www.labo-wireless.com
Le temps vu par le Bluetooth Le temps est compté en slots. 1 slot = 625µs -> 1600 Slots / s L’ISM est découpée en 78 sous canaux larges de 1MHz lorsque celle-ci est entièrement libre. En France, au Japon et en Espagne : 23 sous canaux. Certains de ces canaux sont utilisés pour la synchronisation des esclaves avec le maître. Le maître d’un piconet utilise une technique de saut de fréquences, et se sert cycliquement de l’ensemble des sous canaux disponibles. Les esclaves connectés à ce maître récupèrent la séquence de canaux du maître afin de garder la connectivité au piconet. http://www.labo-wireless.com
Un client Bluetooth utilise de façon cyclique toutes les bandes de fréquence. Les clients d’un même piconet possèdent la même séquence de saut de fréquence, et, lorsqu’un nouveau terminal veut se connecter, il doit commencer par reconnaître l’ensemble des sauts de fréquence pour pouvoir les respecter. Une communication s’effectue par un échange de paquets. En général, un paquet tient sur un slot, mais il peut s’étendre sur trois ou cinq slots. Le saut de fréquence a lieu à la fin de la communication d’un paquet. http://www.labo-wireless.com
Fonctionnement du Bluetooth Les terminaux se connectent entre eux par l’intermédiaire d’un maître. 3 classes de puissances pour les constructeurs Bluetooth : 1 : 100mW pour une portée de 100m (les puces de classe 1 ont une puissance d’émission modulable de 2,5 mW à 100mW) 2 : 2,5mW pour une portée de 10m. 3 : 1mW pour une portée de 4m. Des états de basse consommation d’énergie ont été introduits dans la norme Bluetooth afin de permettre à des appareils mobiles utilisant des puces Bluetooth de classe 1 de ne pas épuiser inutilement les batteries. L’autonomie peut atteindre jusqu’à plusieurs jours. http://www.labo-wireless.com
Les états d’un terminal Bluetooth (1/2) http://www.labo-wireless.com
Les états d’un terminal Bluetooth (2/2) Park : État dans lequel le terminal ne peut ni recevoir, ni émettre. Le terminal ne peut que se réveiller de temps en temps pour récupérer les messages issus du maître. Un terminal dans ce état n’est pas compté comme faisant parti d’un picoréseau État d’économie maximum d’énergie. Hold : Dans cet état, un terminal ne peut que recevoir des communications synchrones de type SCO. Le terminal se met en veille entre les instants synchrones de réception des paquets. Sniff : État de repos actif Permet au terminal de décider des slots pendant lesquels il travaille et de ceux pendant lesquels il se met en économie d’énergie. http://www.labo-wireless.com
État de terminaux Bluetooth établissant une connexion. Le maître est en mode Inquiry, l’esclave en mode Inquiry Scan. Le maître émet une signalisation pour initialiser la communication. L’esclave recevant le message passe dans l’état : Inquiry Response et émet au maître un message contenant son adresse et l’état de son horloge. L’esclave passe alors en mode Page Scan : attente de paquet contenant son adresse en écoutant les fréquences disponibles. Le maître ayant reçu le message passe à l’état Page, il met à jour ses tables de connexion et envoie à l’esclave. L’esclave passe alors à l’état Slave Response et répond au maître en lui renvoyant son code d’accès de connexion. Le maître passe à l’état Master Response et envoie un paquet Frequency Hopping synchronization et passe en mode Connected L’esclave synchronise son horloge grâce à ce paquet et passe à l’état Connected. Le maître interroge (polling) l’esclave afin de vérifier s’il y a bien eu connexion. http://www.labo-wireless.com
Format standard d’un paquet (1/2) http://www.labo-wireless.com
Format standard d’un paquet (2/2) Formé de trois parties : Code d’accès sur 72 bits Code propre à une connexion entre deux terminaux spécifiques Permet également la synchronisation entre le terminal esclave et le terminal maître. En-tête sur 54 bits contenant trois fois les mêmes six champs. Données sur 0 à 2745 bits munies sur 1 a 2 octets d’une zone de détection d’erreurs. http://www.labo-wireless.com
Trois types de paquets dans le Bluetooth Paquets de contrôle Gèrent les connexions des terminaux Bluetooth entre eux. Paquets ACL Paquets SCO Dans chacun des ces types, quelques sous catégories : Paquets DV (Data – Voice) Paquets DMx (Data – Medium) Pour les paquets ACL en mode asynchrone avec un encodage permettant la correction des erreurs en ligne. (x = 1, 3 ou 5 suivant la longueur du paquet) Paquets DHx (Data – High) pour les paquets ACL en mode asynchrone sans correction d’erreur. Permet un débit effectif plus élevé. Paquets HVy (High-quality – Voice) pour les paquets SCO en mode synchrone sans correction d’erreur. (y = 1, 2 ou 3) en fonction du niveau de protection/correction voulu http://www.labo-wireless.com
Fonctions de gestion du Bluetooth Nécessaires dans un piconet afin d’établir et d’orchestrer les communications. Le processus de gestion des liaisons prend en charge les procédures classiques d’identification ainsi que la négociation des paramètres d’authentification. Prend en charge la configuration des paramètres de fonctionnement. Fonctionne via un échange de requêtes-réponses entre les deux extrémités de la liaison. http://www.labo-wireless.com