ble中slave,master,server,client有什么关系?

大家在做ble相关开发时,经常看到芯片的规格或者app的描述时,出现slave,master,server,client这些名词,那么这些名词到底是什么意思,有什么关系?

  • Master (or "central") devices scan for other devices, and initiate connection. Usually, the master is the smartphone/tablet/PC.
  • Slave (or "peripheral") devices advertise and wait for connections. Usually, the slave is the BGMxxx module of EFR32 device.
  • Client devices access remote resources over a BLE link using the GATT protocol. Usually, the master is the client.
  • Server devices have a local database and access control methods, and provide resources to the remote client. Usually, the slave is the server.

另外:从协议栈能力本身来说,master和slave是可以并存的,一个设备既可以广播,也可以接收他人的广播。

ref:https://docs.silabs.com/bluetooth/2.13/general/connections/master-and-slave-roles