WO2023240560A1 - Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium - Google Patents

Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium Download PDF

Info

Publication number
WO2023240560A1
WO2023240560A1 PCT/CN2022/099242 CN2022099242W WO2023240560A1 WO 2023240560 A1 WO2023240560 A1 WO 2023240560A1 CN 2022099242 W CN2022099242 W CN 2022099242W WO 2023240560 A1 WO2023240560 A1 WO 2023240560A1
Authority
WO
WIPO (PCT)
Prior art keywords
protocol stack
target
bluetooth
bluetooth device
candidate
Prior art date
Application number
PCT/CN2022/099242
Other languages
French (fr)
Chinese (zh)
Inventor
董俊杰
杨冬东
张文见
Original Assignee
北京小米移动软件有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京小米移动软件有限公司 filed Critical 北京小米移动软件有限公司
Priority to CN202280004353.1A priority Critical patent/CN117597953A/en
Priority to PCT/CN2022/099242 priority patent/WO2023240560A1/en
Publication of WO2023240560A1 publication Critical patent/WO2023240560A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Definitions

  • An embodiment of the first aspect of the present disclosure proposes a Bluetooth communication method that supports multiple protocol stacks, including: receiving a Bluetooth communication request sent by a second Bluetooth device; and obtaining a protocol corresponding to the second Bluetooth device according to the Bluetooth communication request.
  • Stack type ; obtain a target protocol stack matching the protocol stack type from the underlying protocol stack library; call the target protocol stack to establish a communication link with the second Bluetooth device.
  • obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes: extracting the interface type of the second Bluetooth device from the Bluetooth communication request. ; Based on the interface type, determine the protocol stack type corresponding to the second Bluetooth device.
  • obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes: extracting a service initiated by the second Bluetooth device from the Bluetooth communication request. Type; based on the service type, determine the protocol stack type corresponding to the second Bluetooth device.
  • the method further includes: obtaining the performance parameters of the N candidate protocol stacks during historical communication; based on the performance parameters, selecting the protocol stack with the best performance from the N candidate protocol stacks, and determining is the target protocol stack.
  • the method further includes: obtaining the selection order of each candidate protocol stack in the underlying protocol stack library; comparing the selection order of the N candidate protocol stacks, selecting the protocol stack with the earliest order, and determining it as the candidate protocol stack. Describe the target protocol stack.
  • the underlying protocol stack library includes a kernel protocol stack and a user protocol stack
  • the method further includes: in response to the target interface type set corresponding to a user protocol stack, converting the user protocol stack The stack is determined to be the target protocol stack; or, in response to the target interface type set corresponding to the core protocol stack, the core protocol stack is determined to be the target protocol stack; in response to the target service type set corresponding to User protocol stack, then determine the user protocol stack as the target protocol stack; or, in response to the target service type set corresponding to the core protocol stack, determine the core protocol stack as the target protocol stack.
  • a second embodiment of the present disclosure proposes a Bluetooth communication device that supports multiple protocol stacks, including: a receiving module for receiving a Bluetooth communication request sent by a second Bluetooth device; and a first acquisition module for receiving the Bluetooth communication request according to the Bluetooth communication request. , obtain the protocol stack type corresponding to the second Bluetooth device; the second obtaining module is used to obtain the target protocol stack matching the protocol stack type from the underlying protocol stack library; and the establishment module is used to call the target The protocol stack establishes a communication link with the second Bluetooth device.
  • the first acquisition module is further configured to: extract the interface type of the second Bluetooth device from the Bluetooth communication request; and determine the second Bluetooth device based on the interface type.
  • the protocol stack type corresponding to the device.
  • the first acquisition module is further configured to: extract the service type initiated by the second Bluetooth device from the Bluetooth communication request; and determine the second service type based on the service type.
  • the protocol stack type corresponding to the Bluetooth device.
  • the second acquisition module is further configured to: acquire a set of service types supported by each candidate protocol stack in the underlying protocol stack library; and obtain the service type of the second Bluetooth device Compare with each of the service type sets to determine that there is a target service type set of the service type of the second Bluetooth device; determine that the candidate protocol stack corresponding to the target service type set is the target protocol stack.
  • a third embodiment of the present disclosure provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores information that can be executed by the at least one processor.
  • the instructions are executed by the at least one processor, so that the at least one processor can execute the Bluetooth communication method supporting multiple protocol stacks as in the above-mentioned first aspect embodiment.
  • a fourth embodiment of the present disclosure provides a computer-readable storage medium storing computer instructions for causing the computer to execute the Bluetooth communication method supporting multiple protocol stacks as described in the first embodiment.
  • the Bluetooth communication method, device, electronic device and medium supporting multiple protocol stacks provided by the embodiments of the present disclosure can achieve the following technical effects:
  • the protocol stack consistent with the second Bluetooth device By obtaining the protocol stack consistent with the second Bluetooth device from the underlying protocol stack library and establishing a communication link with the second Bluetooth device, it can support Bluetooth communication connections of multiple protocol stacks, improving the compatibility and flexibility of the product. And improve the stability and reliability of the connection.
  • Figure 2 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by another embodiment of the present disclosure
  • Figure 3 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by another embodiment of the present disclosure
  • Figure 4 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure
  • Figure 5 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure
  • Figure 7 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure.
  • Figure 8 is a schematic structural diagram of a Bluetooth communication device supporting multiple protocol stacks provided by another embodiment of the present disclosure.
  • FIG. 9 is a block diagram of an electronic device according to an embodiment of the present disclosure.
  • first, second, third, etc. may be used to describe various information in the embodiments of the present disclosure, the information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other.
  • first information may also be called second information, and similarly, the second information may also be called first information.
  • the words "if” and “if” as used herein may be interpreted as “when” or “when” or “in response to determining.”
  • FIG. 1 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by an embodiment of the present disclosure. As shown in Figure 1, the method consists of the following steps:
  • the Bluetooth communication method that supports multiple protocol stacks in the embodiment of the present disclosure is executed by the first Bluetooth device.
  • a Bluetooth framework system that supports multiple protocol stacks can be installed in the first Bluetooth device, and the present disclosure can be implemented through the Bluetooth framework system.
  • the first Bluetooth device may be a tablet computer, a personal computer (Personal Computer, PC), a mobile phone, or other terminal device installed with the Bluetooth framework system.
  • the second Bluetooth device can be a smart bracelet, a Bluetooth headset, a Bluetooth speaker, a smart watch and other terminal devices.
  • the second Bluetooth device When the second Bluetooth device is connected to the first Bluetooth device, the second Bluetooth device can generate a Bluetooth communication request and send the Bluetooth communication request to the first Bluetooth device.
  • the first Bluetooth device receives the Bluetooth communication request sent by the second Bluetooth device. After the Bluetooth communication request is made, a corresponding communication link can be established with the second Bluetooth device according to the Bluetooth communication request, thereby connecting with the second Bluetooth device.
  • the smart bracelet when the smart bracelet (second Bluetooth device) is connected to the mobile phone (second Bluetooth device), the smart bracelet can generate a Bluetooth communication request and send the Bluetooth communication request to the mobile phone. After the Bluetooth communication request is sent by the bracelet, a corresponding communication link can be established with the smart bracelet according to the communication request, thereby connecting to the smart bracelet.
  • S102 Obtain the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request.
  • the protocol stack refers to the sum of all layers of protocols in the network.
  • the protocol stack reflects the process of file transmission in a network: from the upper layer protocol to the lower layer protocol, and then from the lower layer protocol to the upper layer protocol.
  • the protocol stack type corresponding to the second Bluetooth device may include a kernel protocol stack, a user protocol stack, and other types of protocol stacks, and there is no limit to this.
  • the first Bluetooth device After receiving the Bluetooth communication request sent by the second Bluetooth device, the first Bluetooth device can parse the Bluetooth communication request to obtain the protocol stack type corresponding to the second Bluetooth device.
  • the target protocol stack is a protocol stack in the underlying protocol library that is consistent with the protocol stack type corresponding to the second Bluetooth device.
  • the underlying protocol stack library may be a database used to store protocol stacks.
  • the underlying protocol stack may include a kernel protocol stack, a user protocol stack, and other types of protocol stacks, without limitation.
  • a target protocol stack matching the protocol stack type corresponding to the second Bluetooth device can be obtained from the underlying protocol stack library.
  • the user protocol stack can be obtained from the underlying protocol stack as the target protocol stack.
  • the kernel protocol stack can be obtained from the underlying protocol stack library as the target protocol stack.
  • a communication link can be established between the target protocol stack and the second Bluetooth device to connect with the second Bluetooth device.
  • a communication link is established with the second Bluetooth device through the user protocol stack.
  • a communication link is established with the second Bluetooth device through the kernel protocol stack.
  • a Bluetooth communication request sent by the second Bluetooth device is received, the protocol stack type corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request, and the target protocol stack matching the protocol stack type is obtained from the underlying protocol stack library. , calling the target protocol stack to establish a communication link with the second Bluetooth device.
  • by obtaining a protocol stack consistent with the second Bluetooth device from the underlying protocol stack library and establishing a communication link between the second Bluetooth device it is possible to support Bluetooth communication connections of multiple protocol stacks, improving the product's reliability. Compatibility and flexibility, and improved connection stability and reliability.
  • FIG. 2 is a schematic flow chart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment and further combined with Figure 2, the protocol stack corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request. Types are explained, including the following steps:
  • the interface types include kernel-side interfaces, user-side interfaces and other types of interfaces, and there are no restrictions on this.
  • different types of interfaces support different types of protocol stacks.
  • the kernel-side interface supports the kernel protocol stack
  • the user-side interface supports the user protocol stack.
  • the second Bluetooth device When the second Bluetooth device is connected to the first Bluetooth device, the second Bluetooth device can generate a corresponding Bluetooth communication request according to its own interface type, and send the Bluetooth communication request to the first Bluetooth device.
  • the first Bluetooth device receives After receiving the Bluetooth communication request, the Bluetooth communication request can be parsed to extract the interface type of the second Bluetooth device from the Bluetooth communication request.
  • the interface type of the second Bluetooth device can be determined according to the corresponding relationship between the interface type and the protocol stack type.
  • the corresponding protocol stack type is the protocol stack type corresponding to the second Bluetooth device.
  • the protocol stack type corresponding to the second Bluetooth device can also be determined through the service type initiated by the second Bluetooth device.
  • Figure 3 is a schematic flow chart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment and further combined with Figure 3, the protocol stack corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request. The type of process is explained and consists of the following steps:
  • the service type initiated by the second Bluetooth device refers to the current service scenario type of the second Bluetooth device.
  • the service type of the second Bluetooth device may include playing music, answering calls, and voice reduction. Noise, etc.
  • the service type of the second Bluetooth device may include health observation, sports observation, etc.
  • the second Bluetooth device When the second Bluetooth device is connected to the second Bluetooth device, the second Bluetooth device can generate a corresponding Bluetooth communication request according to the currently initiated service type, and send the Bluetooth communication request to the first Bluetooth device. After receiving the Bluetooth communication request, the Bluetooth communication request can be parsed to extract the service type initiated by the second Bluetooth device from the Bluetooth communication request.
  • the interface type for establishing the connection with the second Bluetooth device can be determined.
  • the target protocol stack of the communication link, the specific process is described in Figure 4 below.
  • each candidate protocol stack in the underlying protocol library includes multiple protocols, and each protocol supports different interface types. Therefore, each candidate protocol stack supports a different set of interface types.
  • the interface type of the second Bluetooth device may be one interface type or multiple interface types, and there is no limit to this.
  • the candidate protocol stack corresponding to the target interface type set can be used as the target protocol stack.
  • the underlying protocol stack includes a kernel protocol stack and a user protocol stack.
  • the user protocol stack is determined to be the target protocol stack in response to the target set of interface types corresponding to the user protocol stack; or the kernel protocol stack is determined to be the target in response to the target set of interface types corresponding to the kernel protocol stack. protocol stack.
  • a set of interface types supported by each candidate protocol stack in the underlying protocol stack library is obtained, and the interface type of the second Bluetooth device is compared with each interface type set to determine whether there is an interface of the second Bluetooth device.
  • the target interface type set of the type determines the candidate protocol stack corresponding to the target interface type set as the target protocol stack.
  • the embodiment of the present disclosure determines the protocol stack consistent with the second Bluetooth device through the interface type of the second Bluetooth device, which can ensure the consistency of the protocol stack between the first Bluetooth device and the second Bluetooth device, thereby ensuring the communication link. stability and reliability.
  • the protocol stack type corresponding to the second Bluetooth device is determined based on the service type initiated by the second Bluetooth device (the specific process can be seen in Figure 3)
  • the protocol stack type corresponding to the second Bluetooth device can be determined based on the service type initiated by the second Bluetooth device.
  • the device establishes the target protocol stack of the communication link. For the specific process, see the description in Figure 5 below.
  • Figure 5 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment, and further combined with Figure 5, it is necessary to obtain a protocol stack matching the protocol stack type from the underlying protocol stack library. The process of the target protocol stack is explained, including the following steps:
  • the service type includes the service types supported by all protocols in each candidate protocol stack.
  • each candidate protocol in the underlying protocol stack library includes multiple protocols, and each protocol supports different service types. Therefore, each candidate protocol stack supports a different set of service types.
  • S502 Compare the service type of the second Bluetooth device with each service type set to determine whether there is a target service type set of the service type of the second Bluetooth device.
  • the service type of the second Bluetooth device may be one service type or multiple service types, and there is no limit to this.
  • the candidate protocol stack corresponding to the target service type set can be used as the target protocol stack.
  • the performance parameters include delay parameters and data transmission rate parameters, etc., and there are no limitations here.
  • the performance parameters of historical communications of N candidate protocol stacks are obtained, and based on the performance parameters, the protocol stack with the best performance is selected from the N candidate protocol stacks and determined as the target protocol stack.
  • Embodiments of the present disclosure can select the protocol stack with the best communication performance from multiple protocol stacks that support the establishment of communication links between the first Bluetooth device and the second Bluetooth device as the protocol stack for establishing the first Bluetooth device and the second Bluetooth device.
  • the protocol stack of the communication link between Bluetooth devices improves the communication performance between Bluetooth devices.
  • the selection order of the candidate protocol stacks can be determined based on the frequency of use of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined based on the applicable interface range of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined based on
  • the communication performance of the candidate protocol stacks can be used to determine the selection order of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined through any other possible implementation method, and there is no limit to this.
  • S702 Compare the selection order of N candidate protocol stacks, select the protocol stack with the earliest order, and determine it as the target protocol stack.
  • N candidate protocol stacks When there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks, that is, the N candidate protocol stacks can all be used to establish the connection between the first Bluetooth device and the second Bluetooth device. Communication link, in this case, the selection order of the N candidate protocol stacks can be compared, and the protocol stack with the earliest order can be selected as the target protocol stack.
  • the selection order of each candidate protocol stack in the underlying protocol stack library is obtained, the selection order of the N candidate protocol stacks is compared, and the protocol stack with the earliest order is selected and determined as the target protocol stack.
  • the protocol stack with the earliest order is selected as the protocol stack to establish the communication link between the first Bluetooth device and the second Bluetooth device, and then the selection order of the candidate protocol stacks can be performed automatically. definition, thus improving the flexibility of protocol stack selection.
  • FIG. 8 is a schematic structural diagram of a Bluetooth communication device supporting multiple protocol stacks according to an embodiment of the present disclosure. As shown in Figure 8, the Bluetooth communication device 800 supporting multiple protocol stacks includes:
  • the receiving module 801 is used to receive the Bluetooth communication request sent by the second Bluetooth device
  • the first obtaining module 802 is used to obtain the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request;
  • the second acquisition module 803 is used to acquire the target protocol stack that matches the protocol stack type from the underlying protocol stack library;
  • the establishment module 804 is used to call the target protocol stack and establish a communication link with the second Bluetooth device.
  • the first acquisition module 802 is further configured to: extract the interface type of the second Bluetooth device from the Bluetooth communication request; and determine the protocol stack type corresponding to the second Bluetooth device based on the interface type.
  • the first acquisition module 802 is further configured to: extract the service type initiated by the second Bluetooth device from the Bluetooth communication request; and determine the protocol stack type corresponding to the second Bluetooth device based on the service type.
  • the second acquisition module 803 is also used to: acquire the set of interface types supported by each candidate protocol stack in the underlying protocol stack library; compare the interface type of the second Bluetooth device with each interface type The sets are compared to determine that there is a target interface type set of the interface type of the second Bluetooth device; and the candidate protocol stack corresponding to the target interface type set is determined to be the target protocol stack.
  • the second acquisition module 803 is also used to: acquire the set of service types supported by each candidate protocol stack in the underlying protocol stack library; compare the service type of the second Bluetooth device with each service type The sets are compared to determine that there is a target service type set of the service type of the second Bluetooth device; and the candidate protocol stack corresponding to the target service type set is determined to be the target protocol stack.
  • the Bluetooth communication device 800 that supports multiple protocol stacks also includes:
  • the third acquisition module 805 is used to acquire the performance parameters of historical communications of N candidate protocol stacks
  • the first determination module 806 is used to select the protocol stack with the best performance from the N candidate protocol stacks based on the performance parameters, and determine it as the target protocol stack.
  • the Bluetooth communication device 800 that supports multiple protocol stacks also includes:
  • the fourth acquisition module 807 is used to obtain the selection order of each candidate protocol stack in the underlying protocol stack library
  • the second determination module 808 is used to compare the selection order of N candidate protocol stacks, select the protocol stack with the earliest order, and determine it as the target protocol stack.
  • the underlying protocol stack library includes a kernel protocol stack and a user protocol stack
  • the Bluetooth communication device 800 that supports multiple protocol stacks also includes:
  • the third determination module 809 is configured to determine the user protocol stack as the target protocol stack in response to the target interface type set corresponding to the user protocol stack; or, in response to the target interface type set corresponding to the kernel protocol stack, determine the kernel protocol stack is determined as the target protocol stack; in response to the target service type set corresponding to the user protocol stack, the user protocol stack is determined as the target protocol stack; or in response to the target service type set corresponding to the kernel protocol stack, the kernel protocol stack is determined to be Target protocol stack.
  • a Bluetooth communication request sent by the second Bluetooth device is received, the protocol stack type corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request, and the target protocol stack matching the protocol stack type is obtained from the underlying protocol stack library. , calling the target protocol stack to establish a communication link with the second Bluetooth device.
  • the protocol stack type corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request
  • the target protocol stack matching the protocol stack type is obtained from the underlying protocol stack library.
  • FIG. 9 it is a block diagram of an electronic device that supports a multi-protocol stack Bluetooth communication method according to an embodiment of the present disclosure.
  • Electronic devices are intended to refer to various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers.
  • Electronic devices may also represent various forms of mobile devices, such as intelligent voice interaction devices, personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices.
  • the components shown herein, their connections and relationships, and their functions are examples only and are not intended to limit implementations of the disclosure described and/or claimed herein.
  • the memory 902 is the non-transitory computer-readable storage medium provided by the present disclosure.
  • the memory stores instructions executable by at least one processor, so that at least one processor executes the Bluetooth communication method supporting multiple protocol stacks provided by the present disclosure.
  • the non-transitory computer-readable storage medium of the present disclosure stores computer instructions, which are used to cause the computer to execute the Bluetooth communication method supporting multiple protocol stacks provided by the present disclosure.
  • the memory 902 can be used to store non-transient software programs, non-transient computer executable programs and modules, such as program instructions corresponding to the Bluetooth communication method that supports multiple protocol stacks in the embodiments of the present disclosure/ module.
  • the processor 901 executes various functional applications and data processing of the server by running non-transient software programs, instructions and modules stored in the memory 902, that is, implementing the Bluetooth communication method supporting multiple protocol stacks in the above method embodiment.
  • the memory 902 may include a stored program area and a stored data area, wherein the stored program area may store an operating system and an application program required for at least one function; the stored data area may store usage of an electronic device according to a Bluetooth communication method that supports multiple protocol stacks. Created data, etc.
  • memory 902 may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device.
  • the memory 902 optionally includes memories remotely located relative to the processor 901, and these remote memories can be connected to electronic devices that support the Bluetooth communication method of multiple protocol stacks through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
  • the electronic device supporting the multi-protocol stack Bluetooth communication method may further include: an input device 903 and an output device 904 .
  • the processor 901, the memory 902, the input device 903 and the output device 904 can be connected through a bus or other means. In Figure 9, connection through a bus is taken as an example.
  • the input device 903 can receive input numeric or character information, and generate key signal input related to user settings and function control of an electronic device that supports the multi-protocol stack Bluetooth communication method, such as a touch screen, keypad, mouse, trackpad, touch screen, etc.
  • An input device such as a tablet, pointing stick, one or more mouse buttons, trackball, joystick, etc.
  • Output devices 904 may include display devices, auxiliary lighting devices (e.g., LEDs), tactile feedback devices (e.g., vibration motors), and the like.
  • the display device may include, but is not limited to, a liquid crystal display (LCD), a light emitting diode (LED) display, and a plasma display. In some implementations, the display device may be a touch screen.
  • the present disclosure also proposes a non-transitory computer-readable storage medium on which a computer program is stored.
  • the program is executed by a processor, the Bluetooth supporting multi-protocol stack as proposed in the previous embodiments of the present disclosure is implemented. Communication methods.
  • the systems and techniques described herein may be implemented on a computer having a display device (eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user ); and a keyboard and pointing device (eg, a mouse or a trackball) through which a user can provide input to the computer.
  • a display device eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and pointing device eg, a mouse or a trackball
  • Other kinds of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and may be provided in any form, including Acoustic input, voice input or tactile input) to receive input from the user.
  • first and second are used for descriptive purposes only and cannot be understood as indicating or implying the relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as “first” and “second” may explicitly or implicitly include at least one of these features.
  • “plurality” means at least two, such as two, three, etc., unless otherwise expressly and specifically limited.

Abstract

Provided in the present disclosure are a Bluetooth communication method and apparatus supporting multiple protocol stacks, and an electronic device. The Bluetooth communication method supporting multiple protocol stacks is implemented by a first Bluetooth device. The method comprises: receiving a Bluetooth communication request sent by a second Bluetooth device; obtaining, according to the Bluetooth communication request, a protocol stack type corresponding to the second Bluetooth device; obtaining from an underlying protocol stack library a target protocol stack matched with the protocol stack type; and calling the target protocol stack, and establishing a communication link with the second Bluetooth device. According to the present disclosure, Bluetooth communication connection among multiple protocol stacks can be supported, the compatibility and the flexibility of a product are improved, and the stability and the reliability of connection are improved.

Description

支持多协议栈的蓝牙通信方法、装置、电子设备及介质Bluetooth communication methods, devices, electronic devices and media supporting multiple protocol stacks 技术领域Technical field
本公开涉及通信技术领域,尤其涉及一种支持多协议栈的蓝牙通信方法、装置、电子设备及介质。The present disclosure relates to the field of communication technology, and in particular, to a Bluetooth communication method, device, electronic device and medium that supports multiple protocol stacks.
背景技术Background technique
由于蓝牙设备的硬件能力不同,所支持的协议栈不同,比如有些蓝牙设备支持内核协议栈,有些蓝牙设备支持用户协议栈,有些蓝牙设备支持其他协议栈,在与这些蓝牙设备进行通信连接时,需要使用与这些蓝牙设备一致的协议栈进行连接。Due to different hardware capabilities of Bluetooth devices, the supported protocol stacks are different. For example, some Bluetooth devices support the kernel protocol stack, some Bluetooth devices support user protocol stacks, and some Bluetooth devices support other protocol stacks. When communicating with these Bluetooth devices, You need to use a protocol stack consistent with these Bluetooth devices to connect.
相关技术中,在构建产品时无法兼容多种协议栈,使得构建的产品兼容能力较弱,灵活性较差,并在与蓝牙设备进行通信连接时稳定性和可靠性较差。In related technologies, when building products, they are unable to be compatible with multiple protocol stacks, making the built products less compatible, less flexible, and less stable and reliable when communicating with Bluetooth devices.
发明内容Contents of the invention
本公开提出一种支持多协议栈的蓝牙通信方法、装置、电子设备及介质,可以应用于通信技术领域,能够支持多种协议栈的蓝牙通信连接,提高了产品的兼容能力和灵活性,并提升了连接的稳定性和可靠性。The present disclosure proposes a Bluetooth communication method, device, electronic device and medium that supports multiple protocol stacks, which can be applied in the field of communication technology, can support Bluetooth communication connections of multiple protocol stacks, improves the compatibility and flexibility of the product, and Improved connection stability and reliability.
本公开第一方面实施例提出了一种支持多协议栈的蓝牙通信方法,包括:接收第二蓝牙设备发送的蓝牙通信请求;根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型;从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈;调用所述目标协议栈,建立与所述第二蓝牙设备之间的通信链路。An embodiment of the first aspect of the present disclosure proposes a Bluetooth communication method that supports multiple protocol stacks, including: receiving a Bluetooth communication request sent by a second Bluetooth device; and obtaining a protocol corresponding to the second Bluetooth device according to the Bluetooth communication request. Stack type; obtain a target protocol stack matching the protocol stack type from the underlying protocol stack library; call the target protocol stack to establish a communication link with the second Bluetooth device.
在本公开的一个实施例中,所述根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型,包括:从所述蓝牙通信请求中提取所述第二蓝牙设备的接口类型;基于所述接口类型,确定所述第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes: extracting the interface type of the second Bluetooth device from the Bluetooth communication request. ; Based on the interface type, determine the protocol stack type corresponding to the second Bluetooth device.
在本公开的一个实施例中,所述根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型,包括:从所述蓝牙通信请求中提取所述第二蓝牙设备发起的业务类型;基于所述业务类型,确定所述第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes: extracting a service initiated by the second Bluetooth device from the Bluetooth communication request. Type; based on the service type, determine the protocol stack type corresponding to the second Bluetooth device.
在本公开的一个实施例中,所述从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈,包括:获取所述底层协议栈库中每个候选协议栈所支持的接口类型集合;将所述第二蓝牙设备的接口类型与每个所述接口类型集合进行比较,以确定存在所述第二蓝牙设备的接口类型的目标接口类型集合;确定所述目标接口类型集合对应的候选协议栈为所述目标协议栈。In one embodiment of the present disclosure, obtaining a target protocol stack that matches the protocol stack type from the underlying protocol stack library includes: obtaining an interface supported by each candidate protocol stack in the underlying protocol stack library Type set; compare the interface type of the second Bluetooth device with each of the interface type sets to determine that there is a target interface type set of the interface type of the second Bluetooth device; determine that the target interface type set corresponds to The candidate protocol stack is the target protocol stack.
在本公开的一个实施例中,所述从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈,包括:获取所述底层协议栈库中每个候选协议栈所支持的业务类型集合;将所述第二蓝牙设备的业务类型与每个所述业务类型集合进行比较,以确定存在所述第二蓝牙设备的业务类型的目标业务类型集合;确定所述目标业务类型集合对应的候选协议栈为所述目标协议栈。In one embodiment of the present disclosure, obtaining a target protocol stack that matches the protocol stack type from the underlying protocol stack library includes: obtaining services supported by each candidate protocol stack in the underlying protocol stack library. Type set; compare the service type of the second Bluetooth device with each of the service type sets to determine that there is a target service type set of the service type of the second Bluetooth device; determine that the target service type set corresponds to The candidate protocol stack is the target protocol stack.
在本公开的一个实施例中,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述方法还包括:获取N个所述候选协议栈的历史通信时的性能参数;基于所述性能参数,从N个所述候选协议栈中选取性能最 好的协议栈,确定为所述目标协议栈。In one embodiment of the present disclosure, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, and the corresponding candidate protocol stack is also There are N, and the method further includes: obtaining the performance parameters of the N candidate protocol stacks during historical communication; based on the performance parameters, selecting the protocol stack with the best performance from the N candidate protocol stacks, and determining is the target protocol stack.
在本公开的一个实施例中,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述方法还包括:获取所述底层协议栈库中每个候选协议栈的选取顺序;比较N个所述候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为所述目标协议栈。In one embodiment of the present disclosure, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, and the corresponding candidate protocol stack is also There are N, and the method further includes: obtaining the selection order of each candidate protocol stack in the underlying protocol stack library; comparing the selection order of the N candidate protocol stacks, selecting the protocol stack with the earliest order, and determining it as the candidate protocol stack. Describe the target protocol stack.
在本公开的一个实施例中,所述底层协议栈库包括内核协议栈和用户协议栈,所述方法还包括:响应于所述目标接口类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标接口类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈;响应于所述目标业务类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标业务类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈。In one embodiment of the present disclosure, the underlying protocol stack library includes a kernel protocol stack and a user protocol stack, and the method further includes: in response to the target interface type set corresponding to a user protocol stack, converting the user protocol stack The stack is determined to be the target protocol stack; or, in response to the target interface type set corresponding to the core protocol stack, the core protocol stack is determined to be the target protocol stack; in response to the target service type set corresponding to User protocol stack, then determine the user protocol stack as the target protocol stack; or, in response to the target service type set corresponding to the core protocol stack, determine the core protocol stack as the target protocol stack.
本公开第二方面实施例提出一种支持多协议栈的蓝牙通信装置,包括:接收模块,用于接收第二蓝牙设备发送的蓝牙通信请求;第一获取模块,用于根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型;第二获取模块,用于从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈;建立模块,用于调用所述目标协议栈,建立与所述第二蓝牙设备之间的通信链路。A second embodiment of the present disclosure proposes a Bluetooth communication device that supports multiple protocol stacks, including: a receiving module for receiving a Bluetooth communication request sent by a second Bluetooth device; and a first acquisition module for receiving the Bluetooth communication request according to the Bluetooth communication request. , obtain the protocol stack type corresponding to the second Bluetooth device; the second obtaining module is used to obtain the target protocol stack matching the protocol stack type from the underlying protocol stack library; and the establishment module is used to call the target The protocol stack establishes a communication link with the second Bluetooth device.
在本公开的一个实施例中,所述第一获取模块,还用于:从所述蓝牙通信请求中提取所述第二蓝牙设备的接口类型;基于所述接口类型,确定所述第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, the first acquisition module is further configured to: extract the interface type of the second Bluetooth device from the Bluetooth communication request; and determine the second Bluetooth device based on the interface type. The protocol stack type corresponding to the device.
在本公开的一个实施例中,所述第一获取模块,还用于:从所述蓝牙通信请求中提取所述第二蓝牙设备发起的业务类型;基于所述业务类型,确定所述第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, the first acquisition module is further configured to: extract the service type initiated by the second Bluetooth device from the Bluetooth communication request; and determine the second service type based on the service type. The protocol stack type corresponding to the Bluetooth device.
在本公开的一个实施例中,所述第二获取模块,还用于:获取所述底层协议栈库中每个候选协议栈所支持的接口类型集合;将所述第二蓝牙设备的接口类型与每个所述接口类型集合进行比较,以确定存在所述第二蓝牙设备的接口类型的目标接口类型集合;确定所述目标接口类型集合对应的候选协议栈为所述目标协议栈。In one embodiment of the present disclosure, the second acquisition module is further configured to: acquire a set of interface types supported by each candidate protocol stack in the underlying protocol stack library; and obtain the interface type of the second Bluetooth device Compare with each of the interface type sets to determine that there is a target interface type set with the interface type of the second Bluetooth device; determine that the candidate protocol stack corresponding to the target interface type set is the target protocol stack.
在本公开的一个实施例中,所述第二获取模块,还用于:获取所述底层协议栈库中每个候选协议栈所支持的业务类型集合;将所述第二蓝牙设备的业务类型与每个所述业务类型集合进行比较,以确定存在所述第二蓝牙设备的业务类型的目标业务类型集合;确定所述目标业务类型集合对应的候选协议栈为所述目标协议栈。In one embodiment of the present disclosure, the second acquisition module is further configured to: acquire a set of service types supported by each candidate protocol stack in the underlying protocol stack library; and obtain the service type of the second Bluetooth device Compare with each of the service type sets to determine that there is a target service type set of the service type of the second Bluetooth device; determine that the candidate protocol stack corresponding to the target service type set is the target protocol stack.
在本公开的一个实施例中,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述装置还包括:第三获取模块,用于获取N个所述候选协议栈的历史通信时的性能参数;第一确定模块,用于基于所述性能参数,从N个所述候选协议栈中选取性能最好的协议栈,确定为所述目标协议栈。In one embodiment of the present disclosure, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, and the corresponding candidate protocol stack is also There are N, and the device further includes: a third acquisition module, used to acquire the performance parameters of the historical communications of the N candidate protocol stacks; a first determination module, based on the performance parameters, from the N all Select the protocol stack with the best performance from the candidate protocol stacks and determine it as the target protocol stack.
在本公开的一个实施例中,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述装置还包括:第四获取模块,用于获取所述底层协议栈库中每个候选协议栈的选取顺序;第二确定模块,用于比较N个所述候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为所述目标协议栈。In one embodiment of the present disclosure, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, and the corresponding candidate protocol stack is also There are N, and the device further includes: a fourth acquisition module, used to acquire the selection order of each candidate protocol stack in the underlying protocol stack library; a second determination module, used to compare the selections of the N candidate protocol stacks. In the selection sequence, the protocol stack with the earliest sequence is selected and determined as the target protocol stack.
在本公开的一个实施例中,所述底层协议栈库包括内核协议栈和用户协议栈,所述装置还包括:第三确定模块,用于响应于所述目标接口类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标接口类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目 标协议栈;响应于所述目标业务类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标业务类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈。In one embodiment of the present disclosure, the underlying protocol stack library includes a kernel protocol stack and a user protocol stack, and the device further includes: a third determination module configured to respond to the user protocol stack corresponding to the target interface type set , then the user protocol stack is determined as the target protocol stack; or, in response to the target interface type set corresponding to the kernel protocol stack, then the kernel protocol stack is determined as the target protocol stack; in response to the If the target service type set corresponds to the user protocol stack, the user protocol stack is determined to be the target protocol stack; or, in response to the target service type set corresponding to the kernel protocol stack, the kernel protocol stack is determined is the target protocol stack.
本公开第三方面实施例提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述第一方面实施例的支持多协议栈的蓝牙通信方法。A third embodiment of the present disclosure provides an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores information that can be executed by the at least one processor. The instructions are executed by the at least one processor, so that the at least one processor can execute the Bluetooth communication method supporting multiple protocol stacks as in the above-mentioned first aspect embodiment.
本公开第四方面实施例提出了一种存储有计算机指令的计算机可读存储介质,所述计算机指令用于使所述计算机执行如上述第一方面实施例的支持多协议栈的蓝牙通信方法。A fourth embodiment of the present disclosure provides a computer-readable storage medium storing computer instructions for causing the computer to execute the Bluetooth communication method supporting multiple protocol stacks as described in the first embodiment.
综上所述,在本公开实施例提供的支持多协议栈的蓝牙通信方法、装置、电子设备及介质,可以实现以下技术效果:To sum up, the Bluetooth communication method, device, electronic device and medium supporting multiple protocol stacks provided by the embodiments of the present disclosure can achieve the following technical effects:
通过从底层协议栈库中获取与第二蓝牙设备一致的协议栈与第二蓝牙设备之间建立通信链路,能够支持多种协议栈的蓝牙通信连接,提高了产品的兼容能力和灵活性,并提升了连接的稳定性和可靠性。By obtaining the protocol stack consistent with the second Bluetooth device from the underlying protocol stack library and establishing a communication link with the second Bluetooth device, it can support Bluetooth communication connections of multiple protocol stacks, improving the compatibility and flexibility of the product. And improve the stability and reliability of the connection.
附图说明Description of the drawings
为了更清楚地说明本公开实施例或背景技术中的技术方案,下面将对本公开实施例或背景技术中所需要使用的附图进行说明。In order to more clearly illustrate the technical solutions in the embodiments of the disclosure or the background technology, the drawings required to be used in the embodiments or the background technology of the disclosure will be described below.
图1为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 1 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by an embodiment of the present disclosure;
图2为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 2 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by another embodiment of the present disclosure;
图3为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 3 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by another embodiment of the present disclosure;
图4为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 4 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure;
图5为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 5 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure;
图6为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 6 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by another embodiment of the present disclosure;
图7为本公开另一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图;Figure 7 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by another embodiment of the present disclosure;
图8为本公开另一实施例提供的支持多协议栈的蓝牙通信装置的结构示意图;Figure 8 is a schematic structural diagram of a Bluetooth communication device supporting multiple protocol stacks provided by another embodiment of the present disclosure;
图9为本公开一实施例提供的电子设备的框图。FIG. 9 is a block diagram of an electronic device according to an embodiment of the present disclosure.
具体实施方式Detailed ways
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开实施例的一些方面相一致的装置和方法的例子。Exemplary embodiments will be described in detail herein, examples of which are illustrated in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings refer to the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with embodiments of the present disclosure. Rather, they are merely examples of apparatus and methods consistent with aspects of embodiments of the present disclosure as detailed in the appended claims.
在本公开实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开实施例。在本公开实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。The terminology used in the embodiments of the present disclosure is for the purpose of describing specific embodiments only and is not intended to limit the embodiments of the present disclosure. As used in the embodiments of the present disclosure and the appended claims, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the term "and/or" as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
应当理解,尽管在本公开实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不 应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”及“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。It should be understood that although the terms first, second, third, etc. may be used to describe various information in the embodiments of the present disclosure, the information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of the embodiments of the present disclosure, the first information may also be called second information, and similarly, the second information may also be called first information. Depending on the context, the words "if" and "if" as used herein may be interpreted as "when" or "when" or "in response to determining."
下面参考附图描述本公开实施例的支持多协议栈的蓝牙通信方法、装置、电子设备及介质。The following describes the Bluetooth communication method, device, electronic device, and medium supporting multiple protocol stacks according to embodiments of the present disclosure with reference to the accompanying drawings.
图1为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图。如图1所示,该方法包含以下步骤:FIG. 1 is a schematic flowchart of a Bluetooth communication method supporting multiple protocol stacks provided by an embodiment of the present disclosure. As shown in Figure 1, the method consists of the following steps:
S101,接收第二蓝牙设备发送的蓝牙通信请求。S101. Receive a Bluetooth communication request sent by the second Bluetooth device.
需要说明的是,本公开实施例的支持多协议栈的蓝牙通信方法由第一蓝牙设备执行,可以在第一蓝牙设备中安装支持多协议栈的蓝牙框架系统,通过该蓝牙框架系统实现本公开实施例的支持多协议栈的蓝牙通信方法,其中,该第一蓝牙设备可以为平板电脑、个人电脑(Personal Computer,PC)、手机等安装有该蓝牙框架系统的终端设备。It should be noted that the Bluetooth communication method that supports multiple protocol stacks in the embodiment of the present disclosure is executed by the first Bluetooth device. A Bluetooth framework system that supports multiple protocol stacks can be installed in the first Bluetooth device, and the present disclosure can be implemented through the Bluetooth framework system. In the Bluetooth communication method that supports multiple protocol stacks according to the embodiment, the first Bluetooth device may be a tablet computer, a personal computer (Personal Computer, PC), a mobile phone, or other terminal device installed with the Bluetooth framework system.
其中,第二蓝牙设备可以为智能手环、蓝牙耳机、蓝牙音箱、智能手表等终端设备。Among them, the second Bluetooth device can be a smart bracelet, a Bluetooth headset, a Bluetooth speaker, a smart watch and other terminal devices.
在第二蓝牙设备与第一蓝牙设备进行连接时,第二蓝牙设备可以生成蓝牙通信请求,并将该蓝牙通信请求发送至第一蓝牙设备,第一蓝牙设备在接收到第二蓝牙设备发送的蓝牙通信请求后,可以根据该蓝牙通信请求与第二蓝牙设备之间建立相应的通信链路,从而与第二蓝牙设备连接。When the second Bluetooth device is connected to the first Bluetooth device, the second Bluetooth device can generate a Bluetooth communication request and send the Bluetooth communication request to the first Bluetooth device. The first Bluetooth device receives the Bluetooth communication request sent by the second Bluetooth device. After the Bluetooth communication request is made, a corresponding communication link can be established with the second Bluetooth device according to the Bluetooth communication request, thereby connecting with the second Bluetooth device.
举例而言,在智能手环(第二蓝牙设备)与手机(第二蓝牙设备)进行连接时,智能手环可以生成蓝牙通信请求,并将该蓝牙通信请求发送至手机,手机在接收到智能手环发送的蓝牙通信请求后,可以根据该通信请求与智能手环之间建立相应的通信链路,从而与智能手环连接。For example, when the smart bracelet (second Bluetooth device) is connected to the mobile phone (second Bluetooth device), the smart bracelet can generate a Bluetooth communication request and send the Bluetooth communication request to the mobile phone. After the Bluetooth communication request is sent by the bracelet, a corresponding communication link can be established with the smart bracelet according to the communication request, thereby connecting to the smart bracelet.
S102,根据蓝牙通信请求,获取第二蓝牙设备对应的协议栈类型。S102: Obtain the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request.
其中,协议栈指网络中各层协议的总和,协议栈反映了一个网络中文件传输的过程:由上层协议到底层协议,再由底层协议到上层协议。Among them, the protocol stack refers to the sum of all layers of protocols in the network. The protocol stack reflects the process of file transmission in a network: from the upper layer protocol to the lower layer protocol, and then from the lower layer protocol to the upper layer protocol.
本公开实施例中,第二蓝牙设备对应的协议栈类型可以包括内核协议栈、用户协议栈以及其他类型的协议栈,对此不做限制。In the embodiment of the present disclosure, the protocol stack type corresponding to the second Bluetooth device may include a kernel protocol stack, a user protocol stack, and other types of protocol stacks, and there is no limit to this.
第一蓝牙设备接收到第二蓝牙设备发送的蓝牙通信请求之后,可以对该蓝牙通信请求进行解析,以得到第二蓝牙设备对应的协议栈类型。After receiving the Bluetooth communication request sent by the second Bluetooth device, the first Bluetooth device can parse the Bluetooth communication request to obtain the protocol stack type corresponding to the second Bluetooth device.
S103,从底层协议栈库中,获取与协议栈类型匹配的目标协议栈。S103. Obtain the target protocol stack matching the protocol stack type from the underlying protocol stack library.
其中,目标协议栈是底层协议库中与第二蓝牙设备对应的协议栈类型一致的协议栈。The target protocol stack is a protocol stack in the underlying protocol library that is consistent with the protocol stack type corresponding to the second Bluetooth device.
本公开实施例中,底层协议栈库可以是用于存储协议栈的数据库,该底层协议库可以包括内核协议栈、用户协议栈以及其他类型的协议栈,对此不做限制。In the embodiment of the present disclosure, the underlying protocol stack library may be a database used to store protocol stacks. The underlying protocol stack may include a kernel protocol stack, a user protocol stack, and other types of protocol stacks, without limitation.
在确定第二蓝牙设备对应的协议栈类型之后,可以从底层协议栈库中,获取与第二蓝牙设备对应的协议栈类型所匹配的目标协议栈。After determining the protocol stack type corresponding to the second Bluetooth device, a target protocol stack matching the protocol stack type corresponding to the second Bluetooth device can be obtained from the underlying protocol stack library.
在一些实现中,若第二蓝牙设备对应的协议栈类型为用户协议栈,则可以从底层协议栈中获取用户协议栈作为目标协议栈。In some implementations, if the protocol stack type corresponding to the second Bluetooth device is a user protocol stack, the user protocol stack can be obtained from the underlying protocol stack as the target protocol stack.
在又一些实现中,若第二蓝牙设备对应的协议栈类型为内核协议栈,则可以从底层协议栈库中获取内核协议栈作为目标协议栈。In some implementations, if the protocol stack type corresponding to the second Bluetooth device is a kernel protocol stack, the kernel protocol stack can be obtained from the underlying protocol stack library as the target protocol stack.
S104,调用目标协议栈,建立与第二蓝牙设备之间的通信链路。S104. Call the target protocol stack to establish a communication link with the second Bluetooth device.
在从底层协议栈库中,获取到与协议栈类型匹配的目标协议栈之后,可以根据该目标协议栈与第二 蓝牙设备之间建立通信链路,与第二蓝牙设备进行连接。After obtaining the target protocol stack that matches the protocol stack type from the underlying protocol stack library, a communication link can be established between the target protocol stack and the second Bluetooth device to connect with the second Bluetooth device.
在一些实现中,若目标协议栈为用户协议栈,则通过用户协议栈与第二蓝牙设备建立通信链路。In some implementations, if the target protocol stack is a user protocol stack, a communication link is established with the second Bluetooth device through the user protocol stack.
在又一些实现中,若目标协议栈为内核协议栈,则通过内核协议栈与第二蓝牙设备建立通信链路。本公开实施例中,接收第二蓝牙设备发送的蓝牙通信请求,根据蓝牙通信请求,获取第二蓝牙设备对应的协议栈类型,从底层协议栈库中,获取与协议栈类型匹配的目标协议栈,调用目标协议栈,建立与第二蓝牙设备之间的通信链路。本公开实施例中,通过从底层协议栈库中获取与第二蓝牙设备一致的协议栈与第二蓝牙设备之间建立通信链路,能够支持多种协议栈的蓝牙通信连接,提高了产品的兼容能力和灵活性,并提升了连接的稳定性和可靠性。In some implementations, if the target protocol stack is a kernel protocol stack, a communication link is established with the second Bluetooth device through the kernel protocol stack. In the embodiment of the present disclosure, a Bluetooth communication request sent by the second Bluetooth device is received, the protocol stack type corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request, and the target protocol stack matching the protocol stack type is obtained from the underlying protocol stack library. , calling the target protocol stack to establish a communication link with the second Bluetooth device. In the embodiment of the present disclosure, by obtaining a protocol stack consistent with the second Bluetooth device from the underlying protocol stack library and establishing a communication link between the second Bluetooth device, it is possible to support Bluetooth communication connections of multiple protocol stacks, improving the product's reliability. Compatibility and flexibility, and improved connection stability and reliability.
图2为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,在上述实施例的基础上,进一步结合图2,对根据蓝牙通信请求,获取第二蓝牙设备对应的协议栈类型进行解释说明,包含以下步骤:Figure 2 is a schematic flow chart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment and further combined with Figure 2, the protocol stack corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request. Types are explained, including the following steps:
S201,从蓝牙通信请求中提取第二蓝牙设备的接口类型。S201. Extract the interface type of the second Bluetooth device from the Bluetooth communication request.
其中,接口类型包括内核侧接口、用户侧接口以及其他类型的接口,对此不做限制。Among them, the interface types include kernel-side interfaces, user-side interfaces and other types of interfaces, and there are no restrictions on this.
本公开实施例中,不同类型的接口支持不同类型的协议栈,例如内核侧接口支持内核协议栈,用户侧接口支持用户协议栈。In the embodiment of the present disclosure, different types of interfaces support different types of protocol stacks. For example, the kernel-side interface supports the kernel protocol stack, and the user-side interface supports the user protocol stack.
在第二蓝牙设备与第一蓝牙设备进行连接时,第二蓝牙设备可以根据自身的接口类型生成对应的蓝牙通信请求,并将该蓝牙通信请求发送至第一蓝牙设备,第一蓝牙设备在接收到该蓝牙通信请求后,可以对该蓝牙通信请求进行解析,以从该蓝牙通信请求中提取到第二蓝牙设备的接口类型。When the second Bluetooth device is connected to the first Bluetooth device, the second Bluetooth device can generate a corresponding Bluetooth communication request according to its own interface type, and send the Bluetooth communication request to the first Bluetooth device. The first Bluetooth device receives After receiving the Bluetooth communication request, the Bluetooth communication request can be parsed to extract the interface type of the second Bluetooth device from the Bluetooth communication request.
S202,基于接口类型,确定第二蓝牙设备对应的协议栈类型。S202. Based on the interface type, determine the protocol stack type corresponding to the second Bluetooth device.
在蓝牙设备之间建立蓝牙通信链路时,对于不同类型的接口可以使用不同类型的协议栈,因此可以根据接口类型与协议栈类型之间的对应关系,确定在第二蓝牙设备的接口类型所对应的协议栈类型,即第二蓝牙设备对应的协议栈类型。When establishing a Bluetooth communication link between Bluetooth devices, different types of protocol stacks can be used for different types of interfaces. Therefore, the interface type of the second Bluetooth device can be determined according to the corresponding relationship between the interface type and the protocol stack type. The corresponding protocol stack type is the protocol stack type corresponding to the second Bluetooth device.
需要说明的是,接口类型与协议栈类型之间的对应关系,可以根据实际情况预先设定,此处不做任何限制。It should be noted that the correspondence between the interface type and the protocol stack type can be preset according to the actual situation, and there are no restrictions here.
本公开实施例中,从蓝牙通信请求中提取第二蓝牙设备的接口类型,基于接口类型,确定第二蓝牙设备对应的协议栈类型。本公开实施例是通过第二蓝牙设备的接口类型来确定第二蓝牙设备对应的协议栈类型,能够适用于支持不同接口类型的蓝牙设备,兼容性较强,并能够保证与支持不同类型接口的蓝牙设备之间连接的稳定性和可靠性。In the embodiment of the present disclosure, the interface type of the second Bluetooth device is extracted from the Bluetooth communication request, and based on the interface type, the protocol stack type corresponding to the second Bluetooth device is determined. The embodiment of the present disclosure determines the protocol stack type corresponding to the second Bluetooth device through the interface type of the second Bluetooth device. It can be applied to Bluetooth devices that support different interface types, has strong compatibility, and can ensure that it is compatible with Bluetooth devices that support different types of interfaces. Stability and reliability of connections between Bluetooth devices.
除了上述通过第二蓝牙设备的接口类型来确定第二蓝牙设备对应的协议栈类型之外,还可以通过第二蓝牙发起的业务类型来确定第二蓝牙设备对应的协议栈类型。In addition to determining the protocol stack type corresponding to the second Bluetooth device through the interface type of the second Bluetooth device, the protocol stack type corresponding to the second Bluetooth device can also be determined through the service type initiated by the second Bluetooth device.
图3为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,在上述实施例的基础上,进一步结合图3,对根据蓝牙通信请求,获取第二蓝牙设备对应的协议栈类型的过程进行解释说明,包含以下步骤:Figure 3 is a schematic flow chart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment and further combined with Figure 3, the protocol stack corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request. The type of process is explained and consists of the following steps:
S301,从蓝牙通信请求中提取第二蓝牙设备发起的业务类型。S301. Extract the service type initiated by the second Bluetooth device from the Bluetooth communication request.
其中,第二蓝牙设备发起的业务类型指第二蓝牙设备当前的业务场景类型,例如,若第二蓝牙设备为蓝牙耳机,则第二蓝牙设备的业务类型可以包括播放音乐、接听电话、语音降噪等,又例如,若第二蓝牙设备为智能手环,则第二蓝牙设备的业务类型可以包括健康观测和运动观测等。Among them, the service type initiated by the second Bluetooth device refers to the current service scenario type of the second Bluetooth device. For example, if the second Bluetooth device is a Bluetooth headset, the service type of the second Bluetooth device may include playing music, answering calls, and voice reduction. Noise, etc. For another example, if the second Bluetooth device is a smart bracelet, the service type of the second Bluetooth device may include health observation, sports observation, etc.
在第二蓝牙设备与第二蓝牙设备进行连接时,第二蓝牙设备可以根据当前发起的业务类型生成对应的蓝牙通信请求,并将该蓝牙通信请求发送至第一蓝牙设备,第一蓝牙设备在接收到该蓝牙通信请求后,可以对该蓝牙通信请求进行解析,以从该蓝牙通信请求中提取到第二蓝牙设备发起的业务类型。When the second Bluetooth device is connected to the second Bluetooth device, the second Bluetooth device can generate a corresponding Bluetooth communication request according to the currently initiated service type, and send the Bluetooth communication request to the first Bluetooth device. After receiving the Bluetooth communication request, the Bluetooth communication request can be parsed to extract the service type initiated by the second Bluetooth device from the Bluetooth communication request.
S302,基于业务类型,确定第二蓝牙设备对应的协议栈类型。S302: Based on the service type, determine the protocol stack type corresponding to the second Bluetooth device.
在蓝牙设备之间建立蓝牙通信链路时,对于不同类型的业务可以使用不同类型的协议栈,以实现更好的业务效果,因此可以根据业务类型与协议栈类型之间的对应关系,确定第二蓝牙设备发起的业务类型对应的协议栈类型,即第二蓝牙设备对应的协议栈类型。When establishing a Bluetooth communication link between Bluetooth devices, different types of protocol stacks can be used for different types of services to achieve better business results. Therefore, the first step can be determined based on the correspondence between the service type and the protocol stack type. The protocol stack type corresponding to the service type initiated by the second Bluetooth device, that is, the protocol stack type corresponding to the second Bluetooth device.
需要说明的是,业务类型与协议栈类型之间的对应关系,可以根据实际情况预先进行设定,此处不做任何限定。It should be noted that the correspondence between the service type and the protocol stack type can be set in advance according to the actual situation, and there is no limit here.
本公开实施例中,从蓝牙通信请求中提取第二蓝牙设备发起的业务类型,基于业务类型,确定第二蓝牙设备对应的协议栈类型。本公开实施例是通过第二蓝牙设备发起的业务类型来确定第二蓝牙设备对应的协议栈类型,能够适用于不同业务场景,灵活性较高,并能够保证在不同的业务场景下与蓝牙设备之间连接的稳定性和可靠性。In the embodiment of the present disclosure, the service type initiated by the second Bluetooth device is extracted from the Bluetooth communication request, and based on the service type, the protocol stack type corresponding to the second Bluetooth device is determined. The embodiment of the present disclosure determines the protocol stack type corresponding to the second Bluetooth device through the service type initiated by the second Bluetooth device. It can be applied to different business scenarios, has high flexibility, and can ensure that it can communicate with the Bluetooth device in different business scenarios. stability and reliability of the connection.
当通过第二蓝牙设备的接口类型来确定第二蓝牙设备对应的协议栈类型(其具体过程可以参见图2)时,可以通过第二蓝牙设备的接口类型来确定用于与第二蓝牙设备建立通信链路的目标协议栈,其具体过程参见下图4中的描述。When the protocol stack type corresponding to the second Bluetooth device is determined through the interface type of the second Bluetooth device (the specific process can be seen in Figure 2), the interface type for establishing the connection with the second Bluetooth device can be determined. The target protocol stack of the communication link, the specific process is described in Figure 4 below.
图4为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,在上述实施例的基础上,进一步结合图4,对从底层协议栈库中,获取与协议栈类型匹配的目标协议栈的过程进行解释说明,包含以下步骤:Figure 4 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment, and further combined with Figure 4, it is necessary to obtain a protocol stack matching the protocol stack type from the underlying protocol stack library. The process of the target protocol stack is explained, including the following steps:
S401,获取底层协议栈库中每个候选协议栈所支持的接口类型集合。S401: Obtain the set of interface types supported by each candidate protocol stack in the underlying protocol stack library.
其中,接口类型集合包括每个候选协议栈中所有协议支持的接口类型,其中,候选协议栈指底层协议库中所有的协议栈。The interface type set includes interface types supported by all protocols in each candidate protocol stack, where the candidate protocol stack refers to all protocol stacks in the underlying protocol library.
本公开实施例中,底层协议库中的每个候选协议栈包括多个协议,每个协议所支持的接口类型不同,因此,每个候选协议栈所支持的接口类型集合不同。In this embodiment of the disclosure, each candidate protocol stack in the underlying protocol library includes multiple protocols, and each protocol supports different interface types. Therefore, each candidate protocol stack supports a different set of interface types.
对于底层协议栈库中的每个候选协议栈,可以根据该候选协议栈中每个协议所支持的接口类型,确定该协议栈所支持的接口类型集合,以此可以获取到底层协议栈库中每个候选协议栈所支持的接口类型集合。For each candidate protocol stack in the underlying protocol stack library, the set of interface types supported by the protocol stack can be determined based on the interface type supported by each protocol in the candidate protocol stack, so that the underlying protocol stack library can be obtained The set of interface types supported by each candidate protocol stack.
S402,将第二蓝牙设备的接口类型与每个接口类型集合进行比较,以确定存在第二蓝牙设备的接口类型的目标接口类型集合。S402: Compare the interface type of the second Bluetooth device with each interface type set to determine whether there is a target interface type set of the interface type of the second Bluetooth device.
其中,目标接口类型集合指存在第二蓝牙设备的接口类型的接口类型集合。The target interface type set refers to the interface type set in which the interface type of the second Bluetooth device exists.
需要说明的是,第二蓝牙设备的接口类型可以为一种接口类型,也可以为多种接口类型,对此不做限制。It should be noted that the interface type of the second Bluetooth device may be one interface type or multiple interface types, and there is no limit to this.
在从第二蓝牙设备发送的蓝牙通信请求中,提取到第二蓝牙设备的接口类型之后,可以将第二蓝牙设备的接口类型与每个接口类型集合进行比较,将存在第二蓝牙设备的接口类型的接口类型集合作为目标接口类型集合。In the Bluetooth communication request sent from the second Bluetooth device, after extracting the interface type of the second Bluetooth device, the interface type of the second Bluetooth device can be compared with each interface type set, and the interface type of the second Bluetooth device exists. The interface type collection of the type serves as the target interface type collection.
S403,确定目标接口类型集合对应的候选协议栈为目标协议栈。S403. Determine the candidate protocol stack corresponding to the target interface type set as the target protocol stack.
在确定目标接口类型集合之后,可以将目标接口类型集合对应的候选协议栈作为目标协议栈。After the target interface type set is determined, the candidate protocol stack corresponding to the target interface type set can be used as the target protocol stack.
进一步地,可选地,底层协议栈包括内核协议栈和用户协议栈。Further, optionally, the underlying protocol stack includes a kernel protocol stack and a user protocol stack.
在一些实现中,响应于目标接口类型集合对应于用户协议栈,则将用户协议栈确定为目标协议栈;或者,响应于目标接口类型集合对应于内核协议栈,则将内核协议栈确定为目标协议栈。In some implementations, the user protocol stack is determined to be the target protocol stack in response to the target set of interface types corresponding to the user protocol stack; or the kernel protocol stack is determined to be the target in response to the target set of interface types corresponding to the kernel protocol stack. protocol stack.
本公开实施例中,获取底层协议栈库中每个候选协议栈所支持的接口类型集合,将第二蓝牙设备的接口类型与每个接口类型集合进行比较,以确定存在第二蓝牙设备的接口类型的目标接口类型集合,确定目标接口类型集合对应的候选协议栈为目标协议栈。本公开实施例是通过第二蓝牙设备的接口类型来确定与第二蓝牙设备一致的协议栈,能够保证第一蓝牙设备与第二蓝牙设备之间的协议栈的一致性,从而保证通信链路的稳定性和可靠性。In the embodiment of the present disclosure, a set of interface types supported by each candidate protocol stack in the underlying protocol stack library is obtained, and the interface type of the second Bluetooth device is compared with each interface type set to determine whether there is an interface of the second Bluetooth device. The target interface type set of the type determines the candidate protocol stack corresponding to the target interface type set as the target protocol stack. The embodiment of the present disclosure determines the protocol stack consistent with the second Bluetooth device through the interface type of the second Bluetooth device, which can ensure the consistency of the protocol stack between the first Bluetooth device and the second Bluetooth device, thereby ensuring the communication link. stability and reliability.
当通过第二蓝牙设备发起的业务类型来确定第二蓝牙设备对应的协议栈类型(其具体过程可以参见图3)时,可以通过第二蓝牙设备发起的业务类型来确定用于与第二蓝牙设备建立通信链路的目标协议栈,其具体过程参见下图5中的描述。When the protocol stack type corresponding to the second Bluetooth device is determined based on the service type initiated by the second Bluetooth device (the specific process can be seen in Figure 3), the protocol stack type corresponding to the second Bluetooth device can be determined based on the service type initiated by the second Bluetooth device. The device establishes the target protocol stack of the communication link. For the specific process, see the description in Figure 5 below.
图5为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,在上述实施例的基础上,进一步结合图5,对从底层协议栈库中,获取与协议栈类型匹配的目标协议栈的过程进行解释说明,包含以下步骤:Figure 5 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. Based on the above embodiment, and further combined with Figure 5, it is necessary to obtain a protocol stack matching the protocol stack type from the underlying protocol stack library. The process of the target protocol stack is explained, including the following steps:
S501,获取底层协议栈库中每个候选协议栈所支持的业务类型集合。S501: Obtain the set of service types supported by each candidate protocol stack in the underlying protocol stack library.
其中,业务类型包括每个候选协议栈中所有协议所支持的业务类型。Among them, the service type includes the service types supported by all protocols in each candidate protocol stack.
本公开实施例中,底层协议栈库中每个候选协议包括多个协议,每个协议所支持的业务类型不同,因此,每个候选协议栈所支持的业务类型集合不同。In this disclosed embodiment, each candidate protocol in the underlying protocol stack library includes multiple protocols, and each protocol supports different service types. Therefore, each candidate protocol stack supports a different set of service types.
对于底层协议栈库中的每个候选协议栈,可以根据该候选协议栈中每个协议所支持的业务类型,确定该候选协议栈所支持的业务类型集合,以此可以获取到底层协议栈库中每个候选协议栈所支持的业务类型集合。For each candidate protocol stack in the underlying protocol stack library, the set of business types supported by the candidate protocol stack can be determined based on the service type supported by each protocol in the candidate protocol stack, so that the underlying protocol stack library can be obtained The set of service types supported by each candidate protocol stack.
S502,将第二蓝牙设备的业务类型与每个业务类型集合进行比较,以确定存在第二蓝牙设备的业务类型的目标业务类型集合。S502: Compare the service type of the second Bluetooth device with each service type set to determine whether there is a target service type set of the service type of the second Bluetooth device.
其中,目标业务类型集合指存在第二蓝牙设备的业务类型的业务类型集合。The target service type set refers to a service type set in which the service type of the second Bluetooth device exists.
需要说明的是,第二蓝牙设备的业务类型可以为一种业务类型,也可以为多种业务类型,对此不做限制。It should be noted that the service type of the second Bluetooth device may be one service type or multiple service types, and there is no limit to this.
在从第二蓝牙设备发送的蓝牙通信请求中,提取到第二蓝牙设备的业务类型之后,可以将第二蓝牙设备的业务类型与每个业务类型集合进行比较,将存在第二蓝牙设备的业务类型的业务类型集合作为目标业务类型集合。In the Bluetooth communication request sent from the second Bluetooth device, after extracting the service type of the second Bluetooth device, the service type of the second Bluetooth device can be compared with each service type set to determine whether the service type of the second Bluetooth device exists. The business type collection of the type is used as the target business type collection.
S503,确定目标业务类型集合对应的候选协议栈为目标协议栈。S503: Determine the candidate protocol stack corresponding to the target service type set as the target protocol stack.
在确定目标业务类型集合之后,可以将目标业务类型集合对应的候选协议栈作为目标协议栈。After the target service type set is determined, the candidate protocol stack corresponding to the target service type set can be used as the target protocol stack.
进一步地,可选地,底层协议栈包括内核协议栈和用户协议栈。Further, optionally, the underlying protocol stack includes a kernel protocol stack and a user protocol stack.
在一些实现中,响应于目标业务类型集合对应于用户协议栈,则将用户协议栈确定为目标协议栈;或者,响应于目标业务类型集合对应于内核协议栈,则将内核协议栈确定为目标协议栈。In some implementations, the user protocol stack is determined to be the target protocol stack in response to the target set of traffic types corresponding to the user protocol stack; or the kernel protocol stack is determined to be the target in response to the target set of traffic types corresponding to the kernel protocol stack. protocol stack.
本公开实施例中,获取底层协议栈库中每个候选协议栈所支持的业务类型集合,将第二蓝牙设备的业务类型与每个业务类型集合进行比较,以确定第二蓝牙设备的业务类型存在于的目标业务类型集合,确定目标业务类型集合对应的候选协议栈为目标协议栈。本公开实施例是通过第二蓝牙设备的业务类型 来确定与第二蓝牙设备一致的协议栈,能够保证第一蓝牙设备与第二蓝牙设备之间的协议栈的一致性,从而保证通信链路的稳定性和可靠性。In this disclosed embodiment, the service type set supported by each candidate protocol stack in the underlying protocol stack library is obtained, and the service type of the second Bluetooth device is compared with each service type set to determine the service type of the second Bluetooth device. The target service type set that exists in the target service type set determines the candidate protocol stack corresponding to the target service type set as the target protocol stack. The embodiment of the present disclosure determines a protocol stack that is consistent with the second Bluetooth device through the service type of the second Bluetooth device, which can ensure the consistency of the protocol stack between the first Bluetooth device and the second Bluetooth device, thereby ensuring the communication link. stability and reliability.
在目标接口类型集合或目标业务类型集合为N个的情况下,同样对应的候选协议栈为N个,即底层协议库中有N个候选协议栈支持第一蓝牙设备与第二蓝牙设备之间建立通信链路,此时需要从该N个候选协议栈中选取出目标协议栈,其中,N为大于或等于1的正整数。When there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks, that is, there are N candidate protocol stacks in the underlying protocol library to support the connection between the first Bluetooth device and the second Bluetooth device. To establish a communication link, it is necessary to select a target protocol stack from the N candidate protocol stacks, where N is a positive integer greater than or equal to 1.
图6为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,如图6所示,该支持多协议栈的蓝牙通信方法还包含以下步骤:Figure 6 is a schematic flow chart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. As shown in Figure 6, the Bluetooth communication method that supports multiple protocol stacks also includes the following steps:
S601,获取N个候选协议栈的历史通信时的性能参数。S601: Obtain performance parameters of historical communications of N candidate protocol stacks.
其中,性能参数包括延时参数和数据传输速率参数等,此处不做任何限定。Among them, the performance parameters include delay parameters and data transmission rate parameters, etc., and there are no limitations here.
在目标接口类型集合或目标业务类型集合为N个的情况下,同样对应的候选协议栈为N个,该N个候选协议栈均可以用于第一蓝牙设备与第二蓝牙设备之间建立通信链路,可以调用该N个候选协议栈中的每个候选协议栈,将第一蓝牙设备与第二蓝牙设备之间建立通信链路,得到该N个候选协议栈中的每个候选协议栈通信时的性能参数。When there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks, and all of the N candidate protocol stacks can be used to establish communication between the first Bluetooth device and the second Bluetooth device. link, each of the N candidate protocol stacks can be called to establish a communication link between the first Bluetooth device and the second Bluetooth device to obtain each of the N candidate protocol stacks. Performance parameters during communication.
S602,基于性能参数,从N个候选协议栈中选取性能最好的协议栈,确定为目标协议栈。S602: Based on the performance parameters, select the protocol stack with the best performance from the N candidate protocol stacks and determine it as the target protocol stack.
在得到该N个候选协议栈中的每个候选协议栈通信时的性能参数之后,可以从该N个候选协议选取性能最好的协议栈,确定为目标协议栈。After obtaining the communication performance parameters of each of the N candidate protocol stacks, the protocol stack with the best performance from the N candidate protocols can be selected and determined as the target protocol stack.
本公开实施例中,获取N个候选协议栈的历史通信时的性能参数,基于性能参数,从N个候选协议栈中选取性能最好的协议栈,确定为目标协议栈。本公开实施例能够从支持第一蓝牙设备与第二蓝牙设备之间建立通信链路的多个协议栈中,选取出通信性能最好的协议栈作为建立第一蓝牙设备与第二蓝牙设备之间的通信链路的协议栈,提高了蓝牙设备之间的通信性能。In this disclosed embodiment, the performance parameters of historical communications of N candidate protocol stacks are obtained, and based on the performance parameters, the protocol stack with the best performance is selected from the N candidate protocol stacks and determined as the target protocol stack. Embodiments of the present disclosure can select the protocol stack with the best communication performance from multiple protocol stacks that support the establishment of communication links between the first Bluetooth device and the second Bluetooth device as the protocol stack for establishing the first Bluetooth device and the second Bluetooth device. The protocol stack of the communication link between Bluetooth devices improves the communication performance between Bluetooth devices.
除了上述根据协议栈的通信性能确定目标协议栈之外,还可以根据协议栈的选取顺序确定目标协议栈,以提高协议栈选取的灵活性。In addition to the above determination of the target protocol stack based on the communication performance of the protocol stack, the target protocol stack can also be determined based on the selection sequence of the protocol stack to improve the flexibility of protocol stack selection.
图7为本公开一实施例提供的支持多协议栈的蓝牙通信方法的流程示意图,如图7所示,该支持多协议栈的蓝牙通信方法还包含以下步骤:Figure 7 is a schematic flowchart of a Bluetooth communication method that supports multiple protocol stacks provided by an embodiment of the present disclosure. As shown in Figure 7, the Bluetooth communication method that supports multiple protocol stacks also includes the following steps:
S701,获取底层协议栈库中每个候选协议栈的选取顺序。S701: Obtain the selection order of each candidate protocol stack in the underlying protocol stack library.
其中,底层协议栈库中每个候选协议栈的选取顺序是预先设定好的。Among them, the selection order of each candidate protocol stack in the underlying protocol stack library is preset.
本公开实施例中,可以根据候选协议栈的使用频率确定候选协议栈的选取顺序,或者,可以根据候选协议栈的适用的接口范围确定候选协议栈的选取顺序,又或者,可以根据候选协议栈的通信性能确定候选协议栈的选取顺序,又或者,还可以通过其他任意可能的实现方式确定候选协议栈的选取顺序,对此不做限制。In the embodiment of the present disclosure, the selection order of the candidate protocol stacks can be determined based on the frequency of use of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined based on the applicable interface range of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined based on The communication performance of the candidate protocol stacks can be used to determine the selection order of the candidate protocol stacks, or the selection order of the candidate protocol stacks can be determined through any other possible implementation method, and there is no limit to this.
S702,比较N个候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为目标协议栈。S702: Compare the selection order of N candidate protocol stacks, select the protocol stack with the earliest order, and determine it as the target protocol stack.
在目标接口类型集合或目标业务类型集合为N个的情况下,同样对应的候选协议栈为N个,即该N个候选协议栈均可以用于第一蓝牙设备与第二蓝牙设备之间建立通信链路,在此情况下,可以比较该比较N个候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为目标协议栈。When there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks, that is, the N candidate protocol stacks can all be used to establish the connection between the first Bluetooth device and the second Bluetooth device. Communication link, in this case, the selection order of the N candidate protocol stacks can be compared, and the protocol stack with the earliest order can be selected as the target protocol stack.
本公开实施例中,获取底层协议栈库中每个候选协议栈的选取顺序,比较N个候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为目标协议栈。本公开实施例是按照候选协议栈的选取顺序,选取顺序最早的协议栈作为建立第一蓝牙设备与第二蓝牙设备之间的通信链路的协议栈,而后候选协议 栈的选取顺序可以进行自定义,由此提高了协议栈选取的灵活性。In this disclosed embodiment, the selection order of each candidate protocol stack in the underlying protocol stack library is obtained, the selection order of the N candidate protocol stacks is compared, and the protocol stack with the earliest order is selected and determined as the target protocol stack. In the embodiment of the present disclosure, according to the selection order of candidate protocol stacks, the protocol stack with the earliest order is selected as the protocol stack to establish the communication link between the first Bluetooth device and the second Bluetooth device, and then the selection order of the candidate protocol stacks can be performed automatically. definition, thus improving the flexibility of protocol stack selection.
为了实现上述实施例,本公开实施例还提出一种支持多协议栈的蓝牙通信装置。图8为本公开一实施例的支持多协议栈的蓝牙通信装置的结构示意图。如图8所示,支持多协议栈的蓝牙通信装置800包括:In order to implement the above embodiments, embodiments of the present disclosure also provide a Bluetooth communication device that supports multiple protocol stacks. FIG. 8 is a schematic structural diagram of a Bluetooth communication device supporting multiple protocol stacks according to an embodiment of the present disclosure. As shown in Figure 8, the Bluetooth communication device 800 supporting multiple protocol stacks includes:
接收模块801,用于接收第二蓝牙设备发送的蓝牙通信请求;The receiving module 801 is used to receive the Bluetooth communication request sent by the second Bluetooth device;
第一获取模块802,用于根据蓝牙通信请求,获取第二蓝牙设备对应的协议栈类型;The first obtaining module 802 is used to obtain the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request;
第二获取模块803,用于从底层协议栈库中,获取与协议栈类型匹配的目标协议栈;The second acquisition module 803 is used to acquire the target protocol stack that matches the protocol stack type from the underlying protocol stack library;
建立模块804,用于调用目标协议栈,建立与第二蓝牙设备之间的通信链路。The establishment module 804 is used to call the target protocol stack and establish a communication link with the second Bluetooth device.
在本公开的一个实施例中,第一获取模块802,还用于:从蓝牙通信请求中提取第二蓝牙设备的接口类型;基于接口类型,确定第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, the first acquisition module 802 is further configured to: extract the interface type of the second Bluetooth device from the Bluetooth communication request; and determine the protocol stack type corresponding to the second Bluetooth device based on the interface type.
在本公开的一个实施例中,第一获取模块802,还用于:从蓝牙通信请求中提取第二蓝牙设备发起的业务类型;基于业务类型,确定第二蓝牙设备对应的协议栈类型。In one embodiment of the present disclosure, the first acquisition module 802 is further configured to: extract the service type initiated by the second Bluetooth device from the Bluetooth communication request; and determine the protocol stack type corresponding to the second Bluetooth device based on the service type.
在本公开的一个实施例中,第二获取模块803,还用于:获取底层协议栈库中每个候选协议栈所支持的接口类型集合;将第二蓝牙设备的接口类型与每个接口类型集合进行比较,以确定存在第二蓝牙设备的接口类型的目标接口类型集合;确定目标接口类型集合对应的候选协议栈为目标协议栈。In one embodiment of the present disclosure, the second acquisition module 803 is also used to: acquire the set of interface types supported by each candidate protocol stack in the underlying protocol stack library; compare the interface type of the second Bluetooth device with each interface type The sets are compared to determine that there is a target interface type set of the interface type of the second Bluetooth device; and the candidate protocol stack corresponding to the target interface type set is determined to be the target protocol stack.
在本公开的一个实施例中,第二获取模块803,还用于:获取底层协议栈库中每个候选协议栈所支持的业务类型集合;将第二蓝牙设备的业务类型与每个业务类型集合进行比较,以确定存在第二蓝牙设备的业务类型的目标业务类型集合;确定目标业务类型集合对应的候选协议栈为目标协议栈。In one embodiment of the present disclosure, the second acquisition module 803 is also used to: acquire the set of service types supported by each candidate protocol stack in the underlying protocol stack library; compare the service type of the second Bluetooth device with each service type The sets are compared to determine that there is a target service type set of the service type of the second Bluetooth device; and the candidate protocol stack corresponding to the target service type set is determined to be the target protocol stack.
在本公开的一个实施例中,在目标接口类型集合或目标业务类型集合为N个的情况下,同样对应的候选协议栈为N个,支持多协议栈的蓝牙通信装置800还包括:In one embodiment of the present disclosure, when there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks. The Bluetooth communication device 800 that supports multiple protocol stacks also includes:
第三获取模块805,用于获取N个候选协议栈的历史通信时的性能参数;The third acquisition module 805 is used to acquire the performance parameters of historical communications of N candidate protocol stacks;
第一确定模块806,用于基于性能参数,从N个候选协议栈中选取性能最好的协议栈,确定为目标协议栈。The first determination module 806 is used to select the protocol stack with the best performance from the N candidate protocol stacks based on the performance parameters, and determine it as the target protocol stack.
在本公开的一个实施例中,在目标接口类型集合或目标业务类型集合为N个的情况下,同样对应的候选协议栈为N个,支持多协议栈的蓝牙通信装置800还包括:In one embodiment of the present disclosure, when there are N target interface type sets or target service type sets, there are also N corresponding candidate protocol stacks. The Bluetooth communication device 800 that supports multiple protocol stacks also includes:
第四获取模块807,用于获取底层协议栈库中每个候选协议栈的选取顺序;The fourth acquisition module 807 is used to obtain the selection order of each candidate protocol stack in the underlying protocol stack library;
第二确定模块808,用于比较N个候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为目标协议栈。The second determination module 808 is used to compare the selection order of N candidate protocol stacks, select the protocol stack with the earliest order, and determine it as the target protocol stack.
在本公开的一个实施例中,底层协议栈库包括内核协议栈和用户协议栈,支持多协议栈的蓝牙通信装置800还包括:In one embodiment of the present disclosure, the underlying protocol stack library includes a kernel protocol stack and a user protocol stack, and the Bluetooth communication device 800 that supports multiple protocol stacks also includes:
第三确定模块809,用于响应于目标接口类型集合对应于用户协议栈,则将用户协议栈确定为目标协议栈;或者,响应于目标接口类型集合对应于内核协议栈,则将内核协议栈确定为目标协议栈;响应于目标业务类型集合对应于用户协议栈,则将用户协议栈确定为目标协议栈;或者,响应于目标业务类型集合对应于内核协议栈,则将内核协议栈确定为目标协议栈。The third determination module 809 is configured to determine the user protocol stack as the target protocol stack in response to the target interface type set corresponding to the user protocol stack; or, in response to the target interface type set corresponding to the kernel protocol stack, determine the kernel protocol stack is determined as the target protocol stack; in response to the target service type set corresponding to the user protocol stack, the user protocol stack is determined as the target protocol stack; or in response to the target service type set corresponding to the kernel protocol stack, the kernel protocol stack is determined to be Target protocol stack.
需要说明的是,上述对支持多协议栈的蓝牙通信方法实施例的解释说明,也适用于本公开实施例的支持多协议栈的蓝牙通信装置,具体过程此处不再赘述。It should be noted that the above explanation of the embodiment of the Bluetooth communication method supporting multiple protocol stacks is also applicable to the Bluetooth communication device supporting multiple protocol stacks according to the embodiments of the present disclosure, and the specific process will not be described again here.
本公开实施例中,接收第二蓝牙设备发送的蓝牙通信请求,根据蓝牙通信请求,获取第二蓝牙设备 对应的协议栈类型,从底层协议栈库中,获取与协议栈类型匹配的目标协议栈,调用目标协议栈,建立与第二蓝牙设备之间的通信链路。本公开实施例中,通过从底层协议栈库中获取与第二蓝牙设备一致的协议栈与第二蓝牙设备之间建立通信链路,能够支持多种协议栈的蓝牙通信连接,提高了产品的兼容能力和灵活性,并提升了连接的稳定性和可靠性。In the embodiment of the present disclosure, a Bluetooth communication request sent by the second Bluetooth device is received, the protocol stack type corresponding to the second Bluetooth device is obtained according to the Bluetooth communication request, and the target protocol stack matching the protocol stack type is obtained from the underlying protocol stack library. , calling the target protocol stack to establish a communication link with the second Bluetooth device. In the embodiment of the present disclosure, by obtaining a protocol stack consistent with the second Bluetooth device from the underlying protocol stack library and establishing a communication link between the second Bluetooth device, it is possible to support Bluetooth communication connections of multiple protocol stacks, improving the product's reliability. Compatibility and flexibility, and improved connection stability and reliability.
如图9所示,是根据本公开实施例的支持多协议栈的蓝牙通信方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,智能语音交互设备、个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。As shown in FIG. 9 , it is a block diagram of an electronic device that supports a multi-protocol stack Bluetooth communication method according to an embodiment of the present disclosure. Electronic devices are intended to refer to various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. Electronic devices may also represent various forms of mobile devices, such as intelligent voice interaction devices, personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are examples only and are not intended to limit implementations of the disclosure described and/or claimed herein.
如图9所示,该电子设备包括:一个或多个处理器901、存储器902,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器901可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器901为例。As shown in Figure 9, the electronic device includes: one or more processors 901, memory 902, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses and can be mounted on a common motherboard or otherwise mounted as desired. Processor 901 may process instructions executed within the electronic device, including instructions stored in or on memory to display graphical information of a GUI on an external input/output device, such as a display device coupled to an interface. In other embodiments, multiple processors and/or multiple buses may be used with multiple memories and multiple memories, if desired. Likewise, multiple electronic devices can be connected, each device providing part of the necessary operation (eg, as a server array, a set of blade servers, or a multi-processor system). Figure 9 takes a processor 901 as an example.
存储器902即为本公开所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本公开所提供的支持多协议栈的蓝牙通信方法。本公开的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本公开所提供的支持多协议栈的蓝牙通信方法。The memory 902 is the non-transitory computer-readable storage medium provided by the present disclosure. The memory stores instructions executable by at least one processor, so that at least one processor executes the Bluetooth communication method supporting multiple protocol stacks provided by the present disclosure. The non-transitory computer-readable storage medium of the present disclosure stores computer instructions, which are used to cause the computer to execute the Bluetooth communication method supporting multiple protocol stacks provided by the present disclosure.
存储器902作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本公开实施例中的支持多协议栈的蓝牙通信方法对应的程序指令/模块。处理器901通过运行存储在存储器902中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的支持多协议栈的蓝牙通信方法。As a non-transient computer-readable storage medium, the memory 902 can be used to store non-transient software programs, non-transient computer executable programs and modules, such as program instructions corresponding to the Bluetooth communication method that supports multiple protocol stacks in the embodiments of the present disclosure/ module. The processor 901 executes various functional applications and data processing of the server by running non-transient software programs, instructions and modules stored in the memory 902, that is, implementing the Bluetooth communication method supporting multiple protocol stacks in the above method embodiment.
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据支持多协议栈的蓝牙通信方法的电子设备的使用所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至支持多协议栈的蓝牙通信方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。The memory 902 may include a stored program area and a stored data area, wherein the stored program area may store an operating system and an application program required for at least one function; the stored data area may store usage of an electronic device according to a Bluetooth communication method that supports multiple protocol stacks. Created data, etc. In addition, memory 902 may include high-speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory 902 optionally includes memories remotely located relative to the processor 901, and these remote memories can be connected to electronic devices that support the Bluetooth communication method of multiple protocol stacks through a network. Examples of the above-mentioned networks include but are not limited to the Internet, intranets, local area networks, mobile communication networks and combinations thereof.
支持多协议栈的蓝牙通信方法的电子设备还可以包括:输入装置903和输出装置904。处理器901、存储器902、输入装置903和输出装置904可以通过总线或者其他方式连接,图9中以通过总线连接为例。The electronic device supporting the multi-protocol stack Bluetooth communication method may further include: an input device 903 and an output device 904 . The processor 901, the memory 902, the input device 903 and the output device 904 can be connected through a bus or other means. In Figure 9, connection through a bus is taken as an example.
输入装置903可接收输入的数字或字符信息,以及产生与支持多协议栈的蓝牙通信方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置904可以包括显示设备、辅助照明装置 (例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。The input device 903 can receive input numeric or character information, and generate key signal input related to user settings and function control of an electronic device that supports the multi-protocol stack Bluetooth communication method, such as a touch screen, keypad, mouse, trackpad, touch screen, etc. An input device such as a tablet, pointing stick, one or more mouse buttons, trackball, joystick, etc. Output devices 904 may include display devices, auxiliary lighting devices (e.g., LEDs), tactile feedback devices (e.g., vibration motors), and the like. The display device may include, but is not limited to, a liquid crystal display (LCD), a light emitting diode (LED) display, and a plasma display. In some implementations, the display device may be a touch screen.
为了实现上述实施例,本公开还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开前述实施例提出的支持多协议栈的蓝牙通信方法。In order to implement the above embodiments, the present disclosure also proposes a non-transitory computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the Bluetooth supporting multi-protocol stack as proposed in the previous embodiments of the present disclosure is implemented. Communication methods.
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。Various implementations of the systems and techniques described herein may be implemented in digital electronic circuitry, integrated circuit systems, application specific ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include implementation in one or more computer programs executable and/or interpreted on a programmable system including at least one programmable processor, the programmable processor The processor, which may be a special purpose or general purpose programmable processor, may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device. An output device.
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。These computing programs (also referred to as programs, software, software applications, or code) include machine instructions for programmable processors, and may be implemented using high-level procedural and/or object-oriented programming languages, and/or assembly/machine language Calculation program. As used herein, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, apparatus, and/or means for providing machine instructions and/or data to a programmable processor ( For example, magnetic disks, optical disks, memories, programmable logic devices (PLD)), including machine-readable media that receive machine instructions as machine-readable signals. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。To provide interaction with a user, the systems and techniques described herein may be implemented on a computer having a display device (eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user ); and a keyboard and pointing device (eg, a mouse or a trackball) through which a user can provide input to the computer. Other kinds of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and may be provided in any form, including Acoustic input, voice input or tactile input) to receive input from the user.
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。The systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., A user's computer having a graphical user interface or web browser through which the user can interact with implementations of the systems and technologies described herein), or including such backend components, middleware components, or any combination of front-end components in a computing system. The components of the system may be interconnected by any form or medium of digital data communication (eg, a communications network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。Computer systems may include clients and servers. Clients and servers are generally remote from each other and typically interact over a communications network. The relationship of client and server is created by computer programs running on corresponding computers and having a client-server relationship with each other. The server can be a cloud server, also known as cloud computing server or cloud host. It is a host product in the cloud computing service system to solve the problem of traditional physical host and VPS service ("Virtual Private Server", or "VPS" for short) Among them, there are defects such as difficult management and weak business scalability.
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。It should be understood that various forms of the process shown above may be used, with steps reordered, added or deleted. For example, each step described in the present disclosure can be executed in parallel, sequentially, or in a different order. As long as the desired results of the technical solutions disclosed in the present disclosure can be achieved, there is no limitation here.
在本说明书的描述中,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要 性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。In the description of this specification, the terms "first" and "second" are used for descriptive purposes only and cannot be understood as indicating or implying the relative importance or implicitly indicating the number of indicated technical features. Therefore, features defined as "first" and "second" may explicitly or implicitly include at least one of these features. In the description of the present disclosure, "plurality" means at least two, such as two, three, etc., unless otherwise expressly and specifically limited.
尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。Although the embodiments of the present disclosure have been shown and described above, it can be understood that the above-mentioned embodiments are illustrative and should not be construed as limitations of the present disclosure. Those of ordinary skill in the art can make modifications to the above-mentioned embodiments within the scope of the present disclosure. The embodiments are subject to changes, modifications, substitutions and variations.

Claims (18)

  1. 一种支持多协议栈的蓝牙通信方法,其特征在于,由第一蓝牙设备执行,所述方法包括:A Bluetooth communication method that supports multiple protocol stacks, characterized in that it is executed by a first Bluetooth device, and the method includes:
    接收第二蓝牙设备发送的蓝牙通信请求;Receive a Bluetooth communication request sent by the second Bluetooth device;
    根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型;According to the Bluetooth communication request, obtain the protocol stack type corresponding to the second Bluetooth device;
    从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈;Obtain the target protocol stack matching the protocol stack type from the underlying protocol stack library;
    调用所述目标协议栈,建立与所述第二蓝牙设备之间的通信链路。Call the target protocol stack to establish a communication link with the second Bluetooth device.
  2. 根据权利要求1所述的方法,其特征在于,所述根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型,包括:The method according to claim 1, characterized in that, obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes:
    从所述蓝牙通信请求中提取所述第二蓝牙设备的接口类型;Extract the interface type of the second Bluetooth device from the Bluetooth communication request;
    基于所述接口类型,确定所述第二蓝牙设备对应的协议栈类型。Based on the interface type, a protocol stack type corresponding to the second Bluetooth device is determined.
  3. 根据权利要求1所述的方法,其特征在于,所述根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型,包括:The method according to claim 1, characterized in that, obtaining the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request includes:
    从所述蓝牙通信请求中提取所述第二蓝牙设备发起的业务类型;Extract the service type initiated by the second Bluetooth device from the Bluetooth communication request;
    基于所述业务类型,确定所述第二蓝牙设备对应的协议栈类型。Based on the service type, a protocol stack type corresponding to the second Bluetooth device is determined.
  4. 根据权利要求2所述的方法,其特征在于,所述从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈,包括:The method according to claim 2, characterized in that, obtaining a target protocol stack matching the protocol stack type from an underlying protocol stack library includes:
    获取所述底层协议栈库中每个候选协议栈所支持的接口类型集合;Obtain the set of interface types supported by each candidate protocol stack in the underlying protocol stack library;
    将所述第二蓝牙设备的接口类型与每个所述接口类型集合进行比较,以确定存在所述第二蓝牙设备的接口类型的目标接口类型集合;Comparing the interface type of the second Bluetooth device with each of the interface type sets to determine that there is a target interface type set of the interface type of the second Bluetooth device;
    确定所述目标接口类型集合对应的候选协议栈为所述目标协议栈。The candidate protocol stack corresponding to the target interface type set is determined to be the target protocol stack.
  5. 根据权利要求3所述的方法,其特征在于,所述从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈,包括:The method according to claim 3, characterized in that, obtaining a target protocol stack matching the protocol stack type from an underlying protocol stack library includes:
    获取所述底层协议栈库中每个候选协议栈所支持的业务类型集合;Obtain the set of service types supported by each candidate protocol stack in the underlying protocol stack library;
    将所述第二蓝牙设备的业务类型与每个所述业务类型集合进行比较,以确定存在所述第二蓝牙设备的业务类型的目标业务类型集合;Comparing the service type of the second Bluetooth device with each of the service type sets to determine that there is a target service type set of the service type of the second Bluetooth device;
    确定所述目标业务类型集合对应的候选协议栈为所述目标协议栈。The candidate protocol stack corresponding to the target service type set is determined to be the target protocol stack.
  6. 根据权利要求4或5所述的方法,其特征在于,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述方法还包括:The method according to claim 4 or 5, characterized in that, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, which also corresponds to There are N candidate protocol stacks, and the method further includes:
    获取N个所述候选协议栈的历史通信时的性能参数;Obtain performance parameters during historical communication of N candidate protocol stacks;
    基于所述性能参数,从N个所述候选协议栈中选取性能最好的协议栈,确定为所述目标协议栈。Based on the performance parameters, the protocol stack with the best performance is selected from the N candidate protocol stacks and determined as the target protocol stack.
  7. 根据权利要求4或5所述的方法,其特征在于,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述方法还包括:The method according to claim 4 or 5, characterized in that, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, which also corresponds to There are N candidate protocol stacks, and the method further includes:
    获取所述底层协议栈库中每个候选协议栈的选取顺序;Obtain the selection order of each candidate protocol stack in the underlying protocol stack library;
    比较N个所述候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为所述目标协议栈。The selection order of the N candidate protocol stacks is compared, and the protocol stack with the earliest order is selected and determined as the target protocol stack.
  8. 根据权利要求4或5所述的方法,其特征在于,所述底层协议栈库包括内核协议栈和用户协议栈,所述方法还包括:The method according to claim 4 or 5, characterized in that the underlying protocol stack library includes a kernel protocol stack and a user protocol stack, and the method further includes:
    响应于所述目标接口类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标接口类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈;In response to the target interface type set corresponding to the user protocol stack, the user protocol stack is determined as the target protocol stack; or in response to the target interface type set corresponding to the kernel protocol stack, the kernel protocol stack is The protocol stack is determined to be the target protocol stack;
    响应于所述目标业务类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标业务类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈。In response to the target service type set corresponding to the user protocol stack, the user protocol stack is determined as the target protocol stack; or in response to the target service type set corresponding to the kernel protocol stack, the kernel protocol stack is The protocol stack is determined to be the target protocol stack.
  9. 一种支持多协议栈的蓝牙通信装置,其特征在于,包括:A Bluetooth communication device that supports multiple protocol stacks, which is characterized by including:
    接收模块,用于接收第二蓝牙设备发送的蓝牙通信请求;A receiving module, configured to receive a Bluetooth communication request sent by the second Bluetooth device;
    第一获取模块,用于根据所述蓝牙通信请求,获取所述第二蓝牙设备对应的协议栈类型;A first acquisition module, configured to acquire the protocol stack type corresponding to the second Bluetooth device according to the Bluetooth communication request;
    第二获取模块,用于从底层协议栈库中,获取与所述协议栈类型匹配的目标协议栈;The second acquisition module is used to acquire the target protocol stack that matches the protocol stack type from the underlying protocol stack library;
    建立模块,用于调用所述目标协议栈,建立与所述第二蓝牙设备之间的通信链路。An establishment module is configured to call the target protocol stack and establish a communication link with the second Bluetooth device.
  10. 根据权利要求9所述的装置,其特征在于,所述第一获取模块,还用于:The device according to claim 9, characterized in that the first acquisition module is also used to:
    从所述蓝牙通信请求中提取所述第二蓝牙设备的接口类型;Extract the interface type of the second Bluetooth device from the Bluetooth communication request;
    基于所述接口类型,确定所述第二蓝牙设备对应的协议栈类型。Based on the interface type, a protocol stack type corresponding to the second Bluetooth device is determined.
  11. 根据权利9所述的装置,其特征在于,所述第一获取模块,还用于:The device according to claim 9, characterized in that the first acquisition module is also used to:
    从所述蓝牙通信请求中提取所述第二蓝牙设备发起的业务类型;Extract the service type initiated by the second Bluetooth device from the Bluetooth communication request;
    基于所述业务类型,确定所述第二蓝牙设备对应的协议栈类型。Based on the service type, a protocol stack type corresponding to the second Bluetooth device is determined.
  12. 根据权利要求10所述的装置,其特征在于,所述第二获取模块,还用于:The device according to claim 10, characterized in that the second acquisition module is also used to:
    获取所述底层协议栈库中每个候选协议栈所支持的接口类型集合;Obtain the set of interface types supported by each candidate protocol stack in the underlying protocol stack library;
    将所述第二蓝牙设备的接口类型与每个所述接口类型集合进行比较,以确定存在所述第二蓝牙设备的接口类型的目标接口类型集合;Comparing the interface type of the second Bluetooth device with each of the interface type sets to determine that there is a target interface type set of the interface type of the second Bluetooth device;
    确定所述目标接口类型集合对应的候选协议栈为所述目标协议栈。The candidate protocol stack corresponding to the target interface type set is determined to be the target protocol stack.
  13. 根据权利要求11所述的装置,其特征在于,所述第二获取模块,还用于:The device according to claim 11, characterized in that the second acquisition module is also used to:
    获取所述底层协议栈库中每个候选协议栈所支持的业务类型集合;Obtain the set of service types supported by each candidate protocol stack in the underlying protocol stack library;
    将所述第二蓝牙设备的业务类型与每个所述业务类型集合进行比较,以确定存在所述第二蓝牙设备 的业务类型的目标业务类型集合;Comparing the service type of the second Bluetooth device with each of the service type sets to determine that there is a target service type set of the service type of the second Bluetooth device;
    确定所述目标业务类型集合对应的候选协议栈为所述目标协议栈。The candidate protocol stack corresponding to the target service type set is determined to be the target protocol stack.
  14. 根据权利要求12或13所述的装置,其特征在于,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述装置还包括:The device according to claim 12 or 13, characterized in that, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, which also corresponds to There are N candidate protocol stacks, and the device further includes:
    第三获取模块,用于获取N个所述候选协议栈的历史通信时的性能参数;The third acquisition module is used to acquire performance parameters during historical communication of N candidate protocol stacks;
    第一确定模块,用于基于所述性能参数,从N个所述候选协议栈中选取性能最好的协议栈,确定为所述目标协议栈。The first determination module is configured to select the protocol stack with the best performance from the N candidate protocol stacks based on the performance parameters and determine it as the target protocol stack.
  15. 根据权利要求12或13所述的装置,其特征在于,在所述目标接口类型集合或所述目标业务类型集合为N个的情况下,所述N为大于或者等于1的正整数,同样对应的所述候选协议栈为N个,所述装置还包括:The device according to claim 12 or 13, characterized in that, when the target interface type set or the target service type set is N, the N is a positive integer greater than or equal to 1, which also corresponds to There are N candidate protocol stacks, and the device further includes:
    第四获取模块,用于获取所述底层协议栈库中每个候选协议栈的选取顺序;The fourth acquisition module is used to acquire the selection order of each candidate protocol stack in the underlying protocol stack library;
    第二确定模块,用于比较N个所述候选协议栈的选取顺序,从中选取顺序最早的协议栈,确定为所述目标协议栈。The second determination module is used to compare the selection order of the N candidate protocol stacks, select the protocol stack with the earliest order, and determine it as the target protocol stack.
  16. 根据权利要求12或13所述的装置,其特征在于,所述底层协议栈库包括内核协议栈和用户协议栈,所述装置还包括:The device according to claim 12 or 13, characterized in that the underlying protocol stack library includes a kernel protocol stack and a user protocol stack, and the device further includes:
    第三确定模块,用于响应于所述目标接口类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标接口类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈;The third determination module is configured to determine the user protocol stack as the target protocol stack in response to the target interface type set corresponding to the user protocol stack; or, in response to the target interface type set corresponding to the kernel protocol stack, the kernel protocol stack is determined as the target protocol stack;
    响应于所述目标业务类型集合对应于用户协议栈,则将所述用户协议栈确定为所述目标协议栈;或者,响应于所述目标业务类型集合对应于内核协议栈,则将所述内核协议栈确定为所述目标协议栈。In response to the target service type set corresponding to the user protocol stack, the user protocol stack is determined as the target protocol stack; or in response to the target service type set corresponding to the kernel protocol stack, the kernel protocol stack is The protocol stack is determined to be the target protocol stack.
  17. 一种电子设备,其特征在于,包括:An electronic device, characterized by including:
    至少一个处理器;以及at least one processor; and
    与所述至少一个处理器通信连接的存储器;其中,a memory communicatively connected to the at least one processor; wherein,
    所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-8中任一项所述的方法。The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform as claimed in any one of claims 1-8. method described.
  18. 一种存储有计算机指令的计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行如权利要求1-8中任一项所述的方法。A computer-readable storage medium storing computer instructions, characterized in that the computer instructions are used to cause the computer to execute the method according to any one of claims 1-8.
PCT/CN2022/099242 2022-06-16 2022-06-16 Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium WO2023240560A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202280004353.1A CN117597953A (en) 2022-06-16 2022-06-16 Bluetooth communication method, device, electronic equipment and medium supporting multi-protocol stack
PCT/CN2022/099242 WO2023240560A1 (en) 2022-06-16 2022-06-16 Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/099242 WO2023240560A1 (en) 2022-06-16 2022-06-16 Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium

Publications (1)

Publication Number Publication Date
WO2023240560A1 true WO2023240560A1 (en) 2023-12-21

Family

ID=89192863

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/099242 WO2023240560A1 (en) 2022-06-16 2022-06-16 Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium

Country Status (2)

Country Link
CN (1) CN117597953A (en)
WO (1) WO2023240560A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109451472A (en) * 2018-10-08 2019-03-08 四川长虹电器股份有限公司 The dynamic management approach of more Bluetooth chips on Android smart machine
WO2020200127A1 (en) * 2019-04-02 2020-10-08 华为技术有限公司 Method for establishing service connection, bluetooth master device, chip, and bluetooth system
CN112996089A (en) * 2019-12-17 2021-06-18 Oppo广东移动通信有限公司 Data transmission method, device, storage medium and electronic equipment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109451472A (en) * 2018-10-08 2019-03-08 四川长虹电器股份有限公司 The dynamic management approach of more Bluetooth chips on Android smart machine
WO2020200127A1 (en) * 2019-04-02 2020-10-08 华为技术有限公司 Method for establishing service connection, bluetooth master device, chip, and bluetooth system
CN112996089A (en) * 2019-12-17 2021-06-18 Oppo广东移动通信有限公司 Data transmission method, device, storage medium and electronic equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
何超 (HE, CHAO): "基于蓝牙5.0的多协议Beacon系统设计 (Non-official translation: Multi-protocol Beacon system design based on Bluetooth 5.0)", 中国优秀硕士学位论文全文数据库信息科技辑,2015年第03期 (INFORMATION & TECHNOLOGY, CHINA MASTER’S THESES FULL-TEXT DATABASE, 2018, NO. 10), 15 October 2018 (2018-10-15) *

Also Published As

Publication number Publication date
CN117597953A (en) 2024-02-23

Similar Documents

Publication Publication Date Title
US9706047B2 (en) Video presence sharing
EP3114832B1 (en) Displaying video call data
CN111414208B (en) Application program starting method, device and equipment
CN107273540B (en) Distributed search and index updating method, system, server and computer equipment
US20130343234A1 (en) Communication Method, System, and Apparatus
US20180375907A1 (en) Parallel peer to peer connection establishment in webrtc conferencing
WO2018064939A1 (en) Method for disaster recovery of audio and video communication connection, apparatus and system
KR20190064689A (en) Interoperability of discovery and connection protocols between client devices and first screen devices
WO2022105188A1 (en) Speech interaction method and apparatus, device, and computer storage medium
WO2022170446A1 (en) Method and apparatus for determining satellite link information
US11831735B2 (en) Method and device for processing mini program data
WO2014194647A1 (en) Data exchange method, device, and system for group communication
WO2023142399A1 (en) Information search methods and apparatuses, and electronic device
JP2022097592A (en) Data synchronization method and device, electronic equipment, storage medium, and computer program
WO2023240560A1 (en) Bluetooth communication method and apparatus supporting multiple protocol stacks, electronic device, and medium
US20140362982A1 (en) Data exchange method, device, and system for group communication
CN110049088B (en) Method and system for obtaining atomic communication thread from independent addressable message
WO2015196586A1 (en) Virtual desktop configuration and acquisition method and apparatus
CN114390239B (en) Communication method, device, system, electronic device, and storage medium
JP2011096161A (en) Service providing system, distributed process management device, file update method, and program
CN112153754A (en) Point-to-point connection method and device, electronic equipment and storage medium
WO2023230953A1 (en) System for disambiguating composite egress traffic for routing and other control
US20230344893A1 (en) Third Party Application Control Of A Client
US20230247077A1 (en) Increasing Quality Associated With An Audio Output During A Video Conference
CN113660339B (en) Method and apparatus for decentralizing clusters

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22946249

Country of ref document: EP

Kind code of ref document: A1