Protocols - BaseBandProtocol  
El racó del Bluetooh 
   
 
LMP - Link Manager Protocol pàgina 1 de 8[següent]

 Gestió d'enllaç

 

    El Protocol de Gestió d'enllaç (Link Manager Protocol) és l'encarregat de la gestió dels mecanismes necessaris per descobrir nous dispositius Bluetooth, i de la comunicació entre els dos gestors mitjançant intercanvi de missatges. Aquests missatges tindran com finalitat l'establiment de l'enllaç, la seguretat, el control i la negociació del tamany dels paquets en banda base.

    Els missatges són filtrats per evitar ser transmessos a les capes superiors, i incorporen mecanismes de seguretat com l'autenticació i el xifrat ( generació, intercanvi i comprobació de les claus dels paquets en banda base).

El Gestor d'enllaç fa servei de les funcions que li ofereix el controlador d'enllaç LC (Link Controller) que té al seu abast totes les funcions de la banda base i dóna suport al gestor d'enllaç LM (Link Manager) realitzant l'administració d'energia (serà l'encarregat de la gestió dels diferents modes Hold, Park, Sniff....) i fixant els cicles de treball dels dispositius.

  • encarregat de la recerca de nous dispositus ( recerca altres móduls gestors d'enllaç)

  • encarregat d'establir un enllaç entre ells : configuració dels paràmetres dels nivells inferiors : administració d'energia, cicles de treball, negociació del tamany dels paquets de banda base.

  • seguretat : gestiona les rutines de generació, intercanvi i comprobació de les claus que intervenen.

  • PDU ( Protocol Data Unit ): És el format que prenen les dades o missatges que s'intercanvien els gestors d'enllaç. Tenen la particularitat de gaudir una prioritat superior a la de que tenen les dades d'usuari, per evitar el retard ocasionat pels paquets L2CAP.

  • LMP no dispossa de confirmacions als missatges (ACK/NACK) ja que LC (Control d'enllaç) ja disposa dels mecanismes suficients per garantir un canal fiable. Si el missatge implica una resposta/validació, es fixa un periode de 30 segons com a límit de temps d'espera.

  • LC no garantitza ni el temps que triga en enviar el missatge al dispositiu remot ni el retard que pateix entre el dispositiu remot i la recepció del missatge de verificació que ens retorna. Això ens obligarà a implementar mecanismes de limitació per sincronitzar els diferents canvis d'estat entre el mestre i l'esclau.

 

 Protocol data units (PDU's)

S'han definit 55 tipus diferents de PDU's, assignats unívocament per códis d'operació de 7 bits. Es fa servir la direcció de membre actiu (AM_ADDR) per determinar la direcció de l'origen o destí de la PDU.

 

No totes les PDU's són obligatóries, ara bé, el dispositiu bluetooth ha de soportar totes les PDU opcionals que rebi. Les PDU's que són d'ús futur encara no són soportades per l'estàndar, en espera de futures versions.


PDU LMP
Bytes
Codi
Sentit
Contingut
Tipus
LMP_accepted
2
3
M S
codi d'operació
DM1 / DV
LMP_au_rand
17
11
M S
nombre aleatori
DM1
LMP_auto_rate
1
35
M S
DM1 / DV
LMP_clkoffset_req1
1
5
M S
DM1 / DV
LMP_clkoffset_res3
3
6
M S
ofsset del rellotge
DM1 / DV
LMP_comb_key
17
9
M S
nombre aleatori
DM1
LMP_decr_power_request
2
32
M S
per ús futur
DM1 / DV
LMP_detach
2
4
M S
motiu del detach
DM1 / DV
LMP_encryption_key_size_req
2
16
M S
tamany de la clau
DM1 / DV
LMP_encryption_mode_req
2
15
M S
mode de xifrat
DM1 / DV
LMP_features_req
9
39
M S
característiques
DM1 / DV
LMP_features_res
9
40
M S
característiques
DM1 / DV
LMP_host_connection_req
1
51
M S
DM1 / DV
LMP_hold
3
20
M S
temps de hold (retenció)
DM1 / DV
LMP_hold_req
3
21
M S
temps de hold (retenció)
DM1 / DV
LMP_incr_power_req
2
31
M S
ús futur
DM1 / DV
LMP_in_rand
17
8
M S
nombre aleatori
DM1
LMP_max_power
1
33
M S
DM1 / DV
LMP_max_slot
2
45
M S
nombre màxim de ranures
DM1 / DV
LMP_max_slot_req
2
46
M S
nombre màxim de ranures
DM1 / DV
LMP_min_power
1
34
M S
DM1 / DV
LMP_modify_beacon
11 o 13
28
M S
control de temporització
DM1
LMP_name_req
2
1
M S
offset del nom
DM1 / DV
LMP_name_res
17
2
M S
offset, longitud i fragment del nombre
DM1
LMP_not_accepted
3
4
M S
codi d'operació i motiu de denegació
DM1 / DV
LMP_page_mode_req
3
53
M S
esquema i configuració de l'esquema de paging (búsqueda)
DM1 / DV
LMP_page_scan_mode_req
3
54
M S
esquema i configuració de l'esquema de paging (búsqueda)
DM1 / DV
LMP_park
17
26
M S
indicadors de control de la temporització
DM1 / DV
LMP_park_req
1
25
M S
DM
LMP_preferred_rate
2
36
M S
velocitat de dades
DM1 / DV
LMP_quality_of_service
4
41
M S
interval de sondeig
DM1 / DV
LMP_quality_of_service_req
4
42
M S
interval de sondeig
DM1 / DV
LMP_remove_SCO_link_req
3
44
M S
descriptor SCO i motiu
DM1 / DV
LMP_SCO_link_req
7
43
M S
descriptor SCO, indicadors de control de temporització i altres paràmetres d'enllaç
DM1 / DV
LMP_set_broadcast scan_window
4 o 6
27
M S
indicadors del control de temporarització i ventana d'exploració de difusió
DM1
LMP_setup_complete
1
49
M S
DM1
LMP_slot_offset
9
52
M S
offset de la ranura i adreça del dispositiu Bluetooth
DM1 / DV
LMP_sniff
10
22
M S
paràmetres del control de temporització, nombre d'intent de sniff
DM1
LMP_sniff_req
10
23
M S
paràmetres del control de temporització, nombre d'intent de sniff
DM1 / DV
LMP_sres
5
12
M S
resposta d'autenticació
DM1 / DV
LMP_start_encryption_req
17
17
M S
nombre aleatori
DM1
LMP_stop_encryption_req
1
18
M S
DM1 / DV
LMP_supervision_timeout
3
55
M S
temps d'espera de supervisió
DM1 / DV
LMP_switch_req
1
19
M S
temps de switch
DM1 / DV
LMP_temp_rand
17
13
M S
nombre aleatori
DM1
LMP_temp_key
17
14
M S
clau
DM1
LMP_timing_accuracy_req
1
47
M S
DM1 / DV
LMP_timing_accuracy_res
1
48
M S
deriva i jitter temporal
DM1 / DV
LMP_unit_key
17
10
M S
clau
DM1
LMP_unpark_BD_ADDR_req
*
29
M S
paràmetres de temporització i adreces BD i AM
DM1
LMP_unpark_PM_ADDR_req
*
30
M S
paràmetres de temporització i adreces PD i AM
DM1
LMP_unsniff_req
1
24
M S
DM1 / DV
LMP_use_semipermanent_key
1
50
M S
DM1 / DV
LMP_version_req
6
37
M S
Nombre de la versió i altres paràmetres relacionats
DM1 / DV
LMP_version_res
6
38
M S
Nombre de la versió i altres paràmetres relacionats
DM1 / DV