Data transmission method, electronic device, chip and storage medium
Through the wireless short-range communication protocol architecture of the Star Flash Alliance, the transmission channel groups or logical links of the SLB and SLE access layers are dynamically adjusted, solving the problem that the existing technology cannot meet the data transmission requirements at different stages, achieving efficient multi-link transmission and fault tolerance, and improving user experience.
Patent Information
- Application Number
- CN202111076936.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-08-02
- Filing Date
- 2021-09-14
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2041-09-14
AI Technical Summary
Existing wireless short-range communication technologies cannot meet the diverse data transmission requirements of the same service at different stages, resulting in an inability to adapt to changes in service quality such as bandwidth and power consumption.
It adopts the wireless short-range communication protocol architecture of the Star Flash Alliance, establishes a transmission channel group through the basic service layer, including the SLB and SLE access layers, dynamically adjusts the service channel or logical link to meet the needs of different stages, and supports multi-link transmission and fault tolerance.
It achieves adaptability to data transmission needs at different stages, improves user experience, and ensures that business data can continue to be transmitted in the event of a failure.
Smart Images

Figure CN115701727B_ABST
Abstract
Description
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on August 2, 2021, with application number 202110883114.5 and application name “A data transmission method, electronic device, chip and storage medium”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of communication technology, and in particular to a data transmission method, an electronic device, a chip, and a storage medium. Background Art
[0003] With the development of the Internet of Things (IoT), wireless short-range communication technology is being used more and more widely in various fields. For example, in the smart home field, mobile phones can achieve end-to-end connection with smart TVs through wireless short-range communication technology, and cast screens to smart TVs.
[0004] At present, various wireless short-range communication technologies are independent of each other. When two electronic devices are connected, they can usually only choose one wireless short-range communication technology to connect based on the preset requirements of the application. The quality of service (such as specific bandwidth, bit rate, latency, etc.) provided by the communication link established by two electronic devices is a fixed value negotiated and agreed upon by both parties. However, the same business usually has different requirements for the service quality of the communication link at different stages (such as in the video projection business, the stages of playing standard-definition video and playing high-definition video). Therefore, the existing data transmission method may be unable to meet the various data transmission requirements of the business. Summary of the Invention
[0005] The present application provides a data transmission method, an electronic device, a chip and a storage medium, which are used to solve the problem that existing data transmission methods cannot meet various data transmission requirements of businesses.
[0006] To achieve the above objectives, this application adopts the following technical solutions:
[0007] In a first aspect, an embodiment of the present application provides a data transmission method applied to an electronic device, wherein the electronic device includes a basic application layer, a basic service layer, and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0008] The method includes: a basic application layer requests a basic service layer to establish a service channel for a communication service of an application program. If the communication service supports multi-link transmission, the basic service layer establishes a transmission channel group for the communication service. The transmission channel group includes a first service channel and / or a second service channel. The first service channel corresponds to a first access layer, and the second service channel corresponds to a second access layer. The electronic device transmits service data of the communication service via the transmission channel group.
[0009] In the method provided in the embodiment of the present application, for a communication service that supports multi-link transmission, the electronic device establishes a transmission channel group for the communication service and transmits service data for the communication service through the transmission channel group. Since the transmission channel group is established at the basic service layer of the communication protocol used by the electronic device, when the service demand changes or the data transmission capacity of the electronic device is improved during the process of transmitting service data, the basic service layer can adaptively use one or more service channels in the transmission channel group to transmit service data, thereby meeting the needs of the service at different stages.
[0010] In addition, when the transmission channel group includes only multiple service channels, during the service data transmission process, even if one service channel fails, there is no need to reconfigure the transmission channel group, and the service data can continue to be transmitted.
[0011] In some embodiments, the first access layer is the Star Flash Basic SLB access layer, the first service channel is the SLB service channel, and the SLB access layer supports high-bandwidth data transmission capabilities. The second access layer is the Star Flash Low Power SLE access layer, the second service channel is the SLE service channel, and the SLE access layer supports low-power data transmission capabilities. Through the method provided in the embodiments of the present application, the electronic device can provide high-bandwidth and / or low-power data transmission capabilities for communication services.
[0012] In some embodiments, when the communication service supports multi-link transmission, the basic service layer establishes a transmission channel group for the communication service, including: when the communication service supports multi-link transmission, when resources of the first access layer support serving the communication service, the basic service layer allocates a first service channel to the transmission channel group of the communication service. And / or when the communication service supports multi-link transmission, when resources of the second access layer support serving the communication service, the basic service layer allocates a second service channel to the transmission channel group of the communication service.
[0013] In some embodiments, when the transmission channel group includes a first business channel and a second business channel, the electronic device transmits business data of a communication business through the transmission channel group, including: the electronic device transmits business data through the first business channel and the second business channel; or, the electronic device transmits business data through the first business channel alone; or, the electronic device transmits business data through the second business channel alone.
[0014] That is, when the transmission channel group includes multiple service channels, the electronic device can use only one service channel in the transmission channel to transmit service data, or it can use multiple service channels in the transmission channel group to transmit service data simultaneously, depending on the preset transmission strategy.
[0015] In some embodiments, an electronic device transmits business data through a first business channel and a second business channel, including: a basic service layer obtains target business data from a basic application layer, where the target business data is business data carrying a port number Port, and the Port maps all business channels in a transmission channel group. The basic service layer processes the target business data to obtain target business data carrying a first TCID and target business data carrying a second TCID, where the first TCID is an identifier of the first business channel and the second TCID is an identifier of the second business channel. The basic service layer sends the target business data carrying the first TCID to the first access layer, and sends the target business data carrying the second TCID to the second access layer. The first access layer transmits the target business data carrying the first TCID to the opposite device, and the second access layer transmits the target business data carrying the second TCID to the opposite device.
[0016] In some embodiments, an electronic device transmits service data via a first service channel, including: a basic service layer obtaining target service data from a basic application layer, where the target service data is service data carrying a port number (Port); the basic service layer processing the target service data carrying the Port to obtain target service data carrying a first TCID; the basic service layer sending the target service data carrying the first TCID to a first access layer; and the first access layer sending the target service data carrying the first TCID to a peer device.
[0017] In some embodiments, before the basic service layer obtains the target business data from the basic application layer, the method further includes: the basic application layer receives the business data sent by the application program, and adds a port to the business data to obtain the target business data.
[0018] As can be seen from the above embodiments, regardless of whether a transmission channel group includes one or multiple service channels, when an electronic device uses the transmission channel group to transmit service data, the basic application layer performs the same operations (i.e., adding a port to the service data), and the basic service layer then determines the specific service channel to be used during the transmission process. Based on this, when the basic service layer adjusts the service channel used during the communication process (such as creating, disconnecting, or switching service channels), the user no longer needs to input control operations, which can improve the user experience.
[0019] In some embodiments, in the process of an electronic device transmitting business data through a transmission channel group, the method also includes: the transmission channel group includes an original business channel, which is any one of a first business channel and a second business channel. When the basic service layer determines to switch to a target business channel to process a communication service, and the access layer corresponding to the target business channel can provide services for the communication service, the basic service layer updates the transmission channel group, and the updated transmission channel group also includes the target business channel; and, the business data is switched to the target business channel for transmission.
[0020] When the transmission channel group before updating includes the first service channel, the target service channel is the second service channel; when the transmission channel group before updating includes the second service channel, the target service channel is the first service channel.
[0021] In some embodiments, the basic service layer switches the service data to the target service channel for transmission, including: the basic service layer disconnects the original service channel in the transmission channel group, and switches the service data to the target service channel.
[0022] In some embodiments, the basic service layer determines to switch to the target service channel to process the communication service, including: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target service channel is the second service channel, and the second service channel supports low power consumption data transmission capabilities.
[0023] In some embodiments, the basic service layer determines to switch to the target service channel to process the communication service, including: the service quality requirement of the communication service is improved, or the service capability of the corresponding access layer of the target service channel is improved. Accordingly, the target service channel is the first service channel, and the first service channel supports high-bandwidth data transmission capability.
[0024] In a second aspect, an embodiment of the present application provides a data transmission device, which includes a basic application layer, a basic service layer and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0025] The basic application layer is used to request the basic service layer to establish a service channel for the communication service of the application.
[0026] The basic service layer is configured to establish a transmission channel group for the communication service when the communication service supports multi-link transmission. The transmission channel group includes a first service channel and / or a second service channel. The first service channel corresponds to the first access layer, and the second service channel corresponds to the second access layer. The transmission channel group is used by the electronic device to transmit service data.
[0027] The access layer is used to transmit service data using the first access layer and / or the second access layer.
[0028] In a third aspect, an embodiment of the present application provides an electronic device, which is configured as the data transmission method shown in the above-mentioned first aspect and each embodiment of the first aspect.
[0029] In a fourth aspect, an embodiment of the present application provides a chip, which includes a processor, and the processor executes a computer program stored in a memory to implement the data transmission method as shown in the above-mentioned first aspect and each embodiment of the first aspect.
[0030] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the data transmission method as shown in the first aspect and the various embodiments in the first aspect.
[0031] In a sixth aspect, an embodiment of the present application provides a computer program product. When the computer program product runs on an electronic device, the electronic device implements the data transmission method as shown in the above-mentioned first aspect and each embodiment of the first aspect.
[0032] It can be understood that the beneficial effects of the second to sixth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here.
[0033] In the seventh aspect, an embodiment of the present application provides a data transmission method, which is applied to an electronic device, wherein the electronic device includes a basic application layer, a basic service layer and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0034] The method includes: a basic application layer requests a basic service layer to establish a service channel for a communication service of an application program; if the communication service supports multi-link transmission, the basic service layer establishes a service channel for the communication service, wherein the service channel is capable of mapping a first logical link and a second logical link, where the first logical link is a link of a first access layer and the second logical link is a link of a second access layer. The electronic device transmits service data of the communication service to a peer device via the first access layer and / or the second access layer corresponding to the service channel.
[0035] In the method provided in the embodiments of the present application, for communication services that support multi-link transmission, the service channel corresponding to the service can be mapped to a first logical link and a second logical link. Based on service requirements or its own data transmission capabilities, the electronic device can use one or more of these two logical links to simultaneously transmit service data, thereby meeting the data transmission requirements of the service at different stages.
[0036] In some embodiments, a service channel can be mapped to a first logical link and a second logical link, including: the service channel is mapped to the first logical link and the second logical link simultaneously; or the service channel is mapped to the first logical link and the second logical link separately at different stages of service data transmission. When a service channel is mapped to multiple logical links simultaneously, service data can continue to be transmitted even if one logical link fails during service data transmission.
[0037] In some embodiments, the first access layer is the Star Flash Basic SLB access layer, the first logical link is the SLB logical link, and the SLB access layer supports high-bandwidth data transmission capabilities. The second access layer is the Star Flash Low Power SLE access layer, the second logical link is the SLE logical link, and the SLE access layer supports low-power data transmission capabilities.
[0038] In some embodiments, when a service channel simultaneously maps a first logical link and a second logical link, the electronic device transmits service data of a communication service to the opposite device through the first access layer and / or the second access layer corresponding to the service channel, including: the electronic device sends the service data in the service channel to the first logical link and the second logical link respectively, so as to transmit the service data through the first access layer and the second access layer at the same time; or, the electronic device sends the service data in the service channel to the first logical link, so as to transmit the service data through the first access layer; or, the electronic device sends the service data in the service channel to the second logical link, so as to transmit the service data through the second access layer.
[0039] That is, when the service channel maps the first logical link and the second logical link at the same time, the electronic device may use only one logical link to transmit service data, or may use both logical links to transmit service data at the same time, which is determined according to a preset transmission strategy.
[0040] In some embodiments, the electronic device sends the business data in the business channel to the first logical link and the second logical link respectively, so as to transmit the business data through the first access layer and the second access layer at the same time, including: the basic service layer obtains the target business data from the basic application layer, and the target business data is the business data carrying the port number Port. The basic service layer adds a business channel identifier TCID to the target business data, and sends the first business data in the target business data carrying the TCID to the first access layer, and sends the second business data in the target business data carrying the TCID to the second access layer. The first access layer adds a first logical link identifier LCID to the first business data, and sends the first business data carrying the first LCID to the opposite device; and the second access layer adds a second LCID to the second business data, and sends the second business data carrying the second LCID to the opposite device.
[0041] In some embodiments, an electronic device sends service data within a service channel to a first logical link to transmit the service data via a first access layer, including: a basic service layer obtains target service data from a basic application layer, where the target service data is service data carrying a port number (Port). The basic service layer adds a TCID to the target service data and sends the target service data carrying the TCID to the first access layer. The first access layer adds a first LCID to the target service data carrying the TCID and sends the target service data carrying the first LCID to a peer device.
[0042] In some embodiments, before the basic service layer obtains the target business data from the basic application layer, the method further includes: the basic application layer receives the business data sent by the application; the basic application layer adds a port to the business data to obtain the target business data.
[0043] As can be seen from the above embodiments, regardless of whether a service channel maps to one or multiple logical links, the basic application layer performs the same operations during service data transmission (i.e., adding ports to the service data). The basic service layer then determines the specific service channel to use during transmission. Therefore, when the basic service layer adjusts the service channel used during communication (e.g., creating, disconnecting, or switching service channels), no user input is required, which improves the user experience.
[0044] In some embodiments, a service channel maps a first logical link to a second logical link at different stages of transmitting service data, including: mapping the service channel to the original logical link; when the basic service layer determines to switch to the target logical link to process the communication service, the basic service layer establishes a mapping relationship between the service channel and the target logical link; and switches the service data to the target logical link for transmission. When the original logical link is the first logical link, the target logical link is the second logical link; when the original logical link is the second logical link, the target logical link is the first logical link.
[0045] In some embodiments, switching the service data to the target logical link for transmission includes: releasing the original logical link, and switching the service data to the target logical link for transmission.
[0046] In some embodiments, determining to switch to the target logical link to process communication services includes: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target logical link is a second logical link, and the second logical link supports low power consumption data transmission capabilities.
[0047] In some embodiments, determining to switch to the target logical link to process the communication service includes: the service quality requirement of the communication service is improved, or the service capacity of the target logical link is improved. Accordingly, the target service channel is the first logical link, and the first logical link supports high-bandwidth data transmission capability.
[0048] In an eighth aspect, an embodiment of the present application provides a data transmission device, which includes a basic application layer, a basic service layer and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0049] The basic application layer is used to request the basic service layer to establish a service channel for the communication service of the application.
[0050] The basic service layer is used to establish a service channel for the communication service when the communication service supports multi-link transmission. The service channel can map a first logical link and a second logical link, where the first logical link is a link at the first access layer and the second logical link is a link at the second access layer. The electronic device transmits service data of the communication service to the peer device via the first access layer and / or second access layer corresponding to the service channel.
[0051] The access layer is used to establish logical links and transmit service data.
[0052] In a ninth aspect, an embodiment of the present application provides an electronic device, which is configured as the data transmission method shown in the seventh aspect and each embodiment of the seventh aspect.
[0053] In the tenth aspect, an embodiment of the present application provides a chip, which includes a processor, which executes a computer program stored in a memory to implement the data transmission method as shown in the above-mentioned seventh aspect and each embodiment of the seventh aspect.
[0054] In the eleventh aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the data transmission method as shown in the seventh aspect and the various embodiments in the seventh aspect.
[0055] In the twelfth aspect, an embodiment of the present application provides a computer program product. When the computer program product runs on an electronic device, the electronic device implements the data transmission method as shown in the above-mentioned seventh aspect and the various embodiments of the seventh aspect.
[0056] It can be understood that the beneficial effects of the above-mentioned eighth to twelfth aspects can be found in the relevant description of the above-mentioned seventh aspect and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 is a schematic diagram of a wireless short-range communication system provided in an embodiment of the present application;
[0058] Figure 2A This is a schematic diagram of the communication domain provided by the embodiment of the present application Figure 1 ;
[0059] Figure 2B This is a second schematic diagram of a communication domain provided in an embodiment of the present application;
[0060] Figure 3 is a schematic diagram of a wireless short-range communication protocol architecture provided in an embodiment of the present application;
[0061] Figure 4 This is a flowchart of a data transmission method provided by an embodiment of the first solution of the present application;
[0062] Figure 5 This is a schematic diagram of a transmission channel group provided by an embodiment of the first solution of the present application;
[0063] Figure 6 is a flowchart of a data transmission method provided by another embodiment of the first embodiment of the present application;
[0064] Figure 7 This is a flowchart of a data transmission method provided by another embodiment of the first embodiment of the present application;
[0065] Figure 8 This is a flowchart of a data transmission method provided by an embodiment of Solution 2 of the present application;
[0066] Figure 9 This is a schematic diagram of the mapping relationship between service channels and logical links provided by an embodiment of Solution 2 of the present application;
[0067] Figure 10 This is a process for establishing a logical link and a service channel provided by an embodiment of Solution 2 of this application;
[0068] Figure 11 This is the process for establishing a logical link and a service channel provided in another embodiment of Solution 2 of this application;
[0069] Figure 12 This is a process for establishing a logical link and a service channel provided in yet another embodiment of Solution 2 of this application;
[0070] Figure 13 This is a process for establishing a logical link and a service channel provided in yet another embodiment of Solution 2 of this application;
[0071] Figure 14 This is a flowchart of a data transmission method provided by another embodiment of Solution 2 of the present application;
[0072] Figure 15 This is a schematic diagram of the service channel reconfiguration process provided by an embodiment of Solution 2 of the present application;
[0073] Figure 16 This is a flowchart of a data transmission method provided by yet another embodiment of Solution 2 of the present application;
[0074] Figure 17 This is a schematic diagram of the service channel reconfiguration process provided by another embodiment of Solution 2 of the present application;
[0075] Figure 18 It is a structural diagram of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0076] The technical solutions provided in the embodiments of the present application are described below with reference to the accompanying drawings.
[0077] It should be understood that in the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is merely a way to describe the association relationship of associated objects, indicating that three relationships can exist, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.
[0078] In this embodiment, the terms "first" and "second" are used for descriptive purposes only and should not be understood to indicate or imply relative importance or implicitly specify the number of the technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of this embodiment, unless otherwise specified, "plurality" means two or more.
[0079] With the development of the Internet of Things (IoT), wireless short-range communication technology is increasingly being used in smart cockpits, smart homes, smartphones, smart manufacturing, and other fields. For example, mobile phones can achieve end-to-end connectivity with smart TVs through wireless short-range communication technology, allowing them to project their screens onto the TV.
[0080] Currently, commonly used wireless short-range communication technologies include Bluetooth (BT), wireless fidelity (WiFi), and ultra-wideband (UWB). Technologies like WiFi and UWB support high-bandwidth communication and faster data transmission speeds, while technologies like BT, NFC, and ZigBee support low-bandwidth, low-power, and low-rate communication, helping to conserve device battery life.
[0081] However, the various current wireless short-range communication technologies are independent of each other. When two electronic devices are connected, they can usually only select one wireless short-range communication technology to connect based on the preset requirements of the application. The quality of service (such as specific bandwidth, bit rate, latency, etc.) provided by the communication link established by the connection between two electronic devices is a fixed value negotiated and agreed upon by both parties. However, the same service (specifically referring to the communication service) may have different requirements for the service quality of the communication link at different stages. For example, when a mobile phone is casting a video to a smart TV, when the cast video is a low-definition video (such as a standard-definition video), the casting service has a lower requirement for the communication link bandwidth. When the user adjusts the video to a high-definition video (such as a high-definition video), the casting service has an increased requirement for the communication link bandwidth. It can be seen from this that the existing wireless short-range communication technology may be unable to meet the various data transmission requirements of the service.
[0082] To this end, the embodiments of the present application provide a new data transmission method based on the wireless short-range communication protocol architecture of the SparkLink Alliance to meet various data transmission requirements of the business to a certain extent.
[0083] Figure 1 Schematic diagram of a wireless short-range communication system to which the data transmission methods provided in various embodiments of this application are applicable. Figure 1As shown, the system includes a first electronic device (referred to as the first device) and a second electronic device (referred to as the second device), and a connection is established between the first device and the second device via the wireless short-range communication protocol architecture of the SparkLink Alliance.
[0084] In this embodiment, the electronic device can be an electronic device in various fields. For example, large-screen devices in the field of smart home, artificial intelligence (AI) speakers, high fidelity (HiFi) speakers, temperature sensors, humidity sensors, etc. As well as mobile phones, tablet computers, wearable devices, augmented reality (AR) / virtual reality (VR) devices, laptops, ultra-mobile personal computers (UMPC), netbooks, personal digital assistants (PDA), etc. in the field of smart terminals. As well as robotic arms, cameras, joysticks, monitors, sensors, logistics vehicles, smart shelves, etc. in the field of intelligent manufacturing. The embodiments of this application do not impose any restrictions on the specific types of electronic devices.
[0085] To facilitate understanding of this application, some nouns or terms involved in the embodiments of this application are explained below.
[0086] (1) SLB / SLE access layer
[0087] The wireless short-range communication technologies provided in the embodiments of this application include SparkLink-Basic (SLB) technology and SparkLink-Low Energy (SLE) technology. The SLB access layer communicates via SLB technology, supporting high-bandwidth, high-speed data transmission, but with higher power consumption. The SLE access layer communicates via SLE technology, supporting low-power, small-bandwidth, low-speed data transmission, helping to conserve device power.
[0088] (2) G-node / T-node
[0089] In this embodiment, SLB technology divides electronic devices into management nodes (i.e., Grant nodes, or G nodes for short) and terminal nodes (i.e., Terminal nodes, or T nodes for short). A G node can manage at least one T node, and G nodes and T nodes connect to jointly complete specific communication functions.
[0090] (3) Transmission channel
[0091] The transmission channel (TC) is a channel of the basic service layer. It can undertake multiple port mappings upward and realize the mapping of multiple transmission channels to the same or different logical channels downward.
[0092] Transmission channels include control channels and service channels. Service channels are used to transmit service-related data, such as service control instructions and media streams. Control channels serve as the foundation for establishing different service channels between devices. During the process of establishing a service channel between devices, the two electronic devices negotiate the parameters required to establish the service channel over the control channel. Different services can use the same control channel to establish different service channels. These services can belong to the same application or different applications.
[0093] In this embodiment, the parameters required to establish a service channel include transmission mode (such as stream mode, flow control mode, retransmission mode, basic mode, etc.) and parameters under different transmission modes, transmission channel identification (TCID) number and port mapped by the transmission channel.
[0094] (4) Logical Link
[0095] A logical link (LC) is a channel at the access layer that can be mapped to one or more transmission channels. In some embodiments, it can also be called a logical channel.
[0096] (5) Communication domain
[0097] A communication system consisting of a G node and all its connected T nodes is called a communication domain. Figure 2A As shown in the figure, taking the smart car scenario as an example, the cockpit domain controller (CDC) can serve as a G node, and various in-vehicle devices (such as microphones, speakers, and mobile phones) can serve as T nodes. The CDC and in-vehicle devices are connected to jointly implement cockpit entertainment functions. In this case, the CDC and all in-vehicle devices form a communication domain.
[0098] In some embodiments, an electronic device may be in multiple communication domains. For example, see Figure 2B As shown, the CDC, microphone, speaker, and mobile phone form communication domain 1, where the CDC is the G node and the microphone, speaker, and mobile phone are T nodes. The mobile phone and wireless headset form communication domain 2, where the mobile phone is the G node and the wireless headset is the T node. The mobile phone is in both communication domains 1 and 2.
[0099] The following describes the wireless short-range communication protocol architecture applicable to the data transmission method provided in the embodiment of the present application.
[0100] Electronic devices typically store a variety of applications, such as settings applications, multi-screen collaboration applications, screen projection applications, audio applications, video applications, gallery applications, camera applications, navigation applications, map applications, email clients, and game applications. During the operation of each application, if the services provided require wireless short-range communication with other electronic devices, the wireless short-range communication protocol architecture provided in this embodiment can be used to implement this communication function.
[0101] Figure 3 This is a schematic diagram of the wireless short-range communication protocol architecture provided by the embodiment of the present application. Figure 3 As shown, the protocol architecture includes a basic application layer, a basic service layer, and a Star Flash access layer (also called an access layer). Among them, the basic application layer and the basic service layer can be collectively referred to as the Host protocol architecture.
[0102] The basic application layer defines various frameworks common to different applications. Each framework defines its own message format and application rules. To enable communication between different devices on different platforms, the basic application layer establishes frameworks for various possible and universally applicable application scenarios. Examples include basic communication frameworks, universal perception frameworks, universal video frameworks, universal audio frameworks, universal data frameworks, and in-vehicle control frameworks. After receiving service requirements, the basic application layer selects the appropriate framework to handle the corresponding business.
[0103] The basic communication framework is used to set device discovery and discovery modes (such as broadcast mode and polling mode), set filtering policies (for example, in audio service scenarios, only discover electronic devices that support audio devices), set discoverability levels, etc. In addition, the basic communication framework is also used to trigger control channel selection based on service requirements (i.e., select the SLB control channel or the SLE control channel based on service requirements) and allocate port numbers to services.
[0104] The general perception framework is used to detect user operations, device battery information, signal strength, etc. User operations can include touch commands entered on the electronic device screen, air control gestures entered by the user, and voice control commands. Signal strength includes WiFi signal strength, cellular signal strength, Bluetooth signal strength, SLB signal strength, and SLE signal strength.
[0105] The general video framework is used to process data related to video services, such as encoding and decoding video data.
[0106] The general audio framework is used to process data related to audio services, such as encoding and decoding audio data.
[0107] The general data framework is used to encrypt and decrypt data.
[0108] The vehicle control framework is used to process data related to vehicle control services.
[0109] It should be understood that different applications typically have different service characteristics, including application identification (AID) and quality of service (QoS). QoS includes factors such as bit rate, latency, sampling rate, and bit width. After detecting the service characteristics of an application, the basic application layer can select the corresponding functional module to handle the service based on these characteristics and control the basic service layer to establish service channels.
[0110] The basic service layer consists of a control plane and a data plane. The control plane includes functional modules such as the device discovery module, service management module, channel management module, QoS management module, security management module, multi-domain coordination module, measurement management module, and 5G convergence module. The data plane includes channel control data, broadcast data, service management data, real-time data, and reliable data, as well as the Transmission Control Adaptation Protocol, Transmission Control Protocol / Internet Protocol (TCP / IP), and transparent transmission protocol.
[0111] It should be noted that, in this embodiment, the module including the transmission control adaptation protocol in the data plane is referred to as the transmission control module. Figure 3 The channel control data in the dotted box, etc.) are usually not included in the initial protocol architecture, but are gradually generated and stored in the process of electronic devices using the protocol architecture.
[0112] The device discovery module is primarily used to discover surrounding devices, announce device information, discover and be discovered via broadcast / unicast data links, and determine device information. In this embodiment, device information includes the device's domain name, media access control (MAC) address, device role, device model, and device capabilities (e.g., wireless connection type, supported communication protocols).
[0113] During the device discovery process, the device discovery module can be specifically used to broadcast the device information of the electronic device itself and scan electronic devices that meet business needs. It should be understood that for wireless short-range communication services, different business needs usually correspond to different types of electronic devices. For example, when a mobile phone is projecting the screen, the device discovery module of the mobile phone needs to scan large-screen devices with projection display functions, such as TVs, projectors, etc., without scanning other mobile phones or wireless headphones and other electronic devices that do not support projection display.
[0114] In addition, in this embodiment, the device discovery module also supports SLB / SLE mutual discovery, that is, in the process of using SLB technology to communicate with the peer device, it can be discovered that the peer device has enabled the SLE communication function, or in the process of using SLE technology to communicate with the peer device, it can be discovered that the peer device has enabled the SLB communication function.
[0115] The service management module is used to provide an abstract data structure model for the control instructions and small data transmission of the basic application layer, as well as methods for operating data structures such as reading, writing, notifying, and indicating.
[0116] The channel management module is used to manage the transmission channels of the basic service layer, including the establishment, maintenance and release of transmission channels. It supports data transmission through the default transmission channel or dynamic allocation of transmission channels for data transmission.
[0117] In addition, the channel management module is also used to manage the establishment and maintenance of cross-layer mapping relationships, including the mapping relationship between the ports of the basic application layer and the TCID of the basic service layer, and the mapping relationship between the TCID of the basic service layer and the logical channel identifier (LCID) of the access layer. The mapping relationship between TCID and port is the mapping relationship between the basic service layer data and the basic application layer data. The mapping relationship between TCID and LCID is the mapping relationship between the basic service layer data and the access layer data.
[0118] The QoS management module manages the static QoS request table for each service and negotiates QoS with the peer. Different services typically have different static QoS request tables, which include parameters such as transmission delay, bit rate, retransmission rate, transmission bandwidth requirements, service type, and bit width. QoS management can alleviate network delays and congestion during communication between electronic devices and peers, improving communication quality.
[0119] The security management module is used to manage the secure connections of the basic service layer, including identity authentication, air interface communication security protection, key update, privacy protection, application layer transmission security, password requirements, secure storage of device information, secure execution, security protection and security management.
[0120] The multi-domain coordination module, when an electronic device is in multiple communication domains, is used to control information exchange between communication domains, avoid mutual interference between multiple domains, and maintain load balancing between domains. When an electronic device is in multiple communication domains simultaneously, the multi-domain coordination module needs to manage the establishment of interaction channels between multiple G nodes corresponding to the multiple communication domains, maintain a list of neighboring G nodes and basic information, coordinate resources between multiple domains, perform joint positioning, manage mobility, and achieve load balancing.
[0121] The measurement management module is used to measure the distance between the device and other electronic devices, as well as the device's orientation relative to other electronic devices, based on the received signal strength indication (RSSI) and a preset algorithm. The measurement management module also configures the measurement cycle, reports measurement events and results to the basic application layer, schedules measurement resources, and controls measurement power.
[0122] The 5G Convergence Module establishes a channel for 5G remote management capabilities. Through authentication and authorization mechanisms, it enables devices with cellular 5G remote control capabilities. In other words, the 5G Convergence Module enables each node device to be perceived and controlled by the 5G edge core network. For example, if a G node has core network connectivity but a T node does not, the 5G core network can issue control commands to the T node through the G node, allowing the T node to be controlled by the 5G core network.
[0123] In this embodiment, the Star Flash access layer includes the SLB access layer and the SLE access layer. Both the SLB access layer and the SLE access layer include the data link layer and the physical layer. The data link layer includes the link control layer and the media access layer. The link control layer provides services to the basic service layer.
[0124] On the transmitting end, the link control layer performs necessary operations such as numbering (such as adding sequence numbers, SNs), segmenting, encryption, and integrity protection on upper-layer service data (i.e., data from the basic service layer). The resulting link control layer protocol data unit (LC PDU) is then sent to the media access layer. The media access layer, based primarily on the amount of scheduled resources, multiplexes and encapsulates different LC PDUs to generate media access profile data units (MAC PDUs).
[0125] At the receiving end, the media access layer is responsible for decapsulating the data and delivering it to different logical channels. The link control layer can perform necessary operations such as decryption, reassembly, and sorting on the data, and deliver the service data in sequence to the basic service layer.
[0126] The physical layer is used to provide data transmission services to the data link layer, specifically including the following functions: correctness verification of transmission information and indication to the data link layer, forward error correction (FEC) encoding / decoding of transmission information, hybrid automatic repeat request (HARQ) soft combining, rate matching of transmission information to corresponding physical resources, mapping of encoded transmission information to corresponding physical resources, modulation and demodulation of physical layer control information and physical layer data information, frequency and time synchronization, wireless characteristic measurement and indication to the data link layer, multiple-input multiple-output antenna processing, beamforming, RF processing, etc.
[0127] Based on the wireless short-range communication protocol architecture provided by the above-mentioned embodiment, the services of the basic application layer can communicate with the opposite end through SLB technology or through SLE technology according to different business needs. Among them, SLB technology is usually used to process services with large bandwidth transmission requirements, such as wireless screen projection services, video call services, etc., and the data throughput during transmission is usually high. SLE technology is usually used to process services with small bandwidth transmission requirements, such as audio playback services of wireless headphones, mobile phone control services of smart home devices, etc., and the data throughput during transmission is usually low, and the transmission rate and power consumption are also low.
[0128] Some services provided by applications support multi-link transmission, while others do not. This is determined by the service's configuration. For example, video transmission services (referred to as video services) typically require higher bandwidth during transmission. Therefore, they are typically configured to be transmitted over the SLB access layer, rather than the SLE access layer. In other words, video services do not support multi-link transmission.
[0129] In this embodiment, a service supporting multi-link transmission means that the service itself supports data transmission on multiple different access layers, including: the service using multiple different access layers to transmit data simultaneously, or the service using any of the multiple different access layers to transmit data independently. For example, when a service supports multi-link data transmission on the SLB access layer and the SLE access layer, the service can transmit data simultaneously on the SLB access layer and the SLE access layer, or use the SLB access layer or the SLE access layer alone to transmit data.
[0130] For services that support multi-link transmission (such as audio services), this embodiment provides a data transmission method that can increase the data transmission rate. This embodiment provides two technical solutions: 1. Data transmission based on transmission channel groups; 2. Data transmission based on the mapping relationship between service channels and different logical links. These two solutions are described below.
[0131] 1. Data transmission based on transmission channel groups
[0132] Figure 4 This is a flowchart of a data transmission method provided by an embodiment of the present application, illustrating a process in which a basic application layer and a basic service layer establish a transmission channel group for a service and transmit data through the transmission channel group, specifically comprising the following steps S401-S409.
[0133] S401: The basic application layer obtains the AID and QoS of the service.
[0134] Electronic devices execute corresponding services by running applications. Different applications have the same or different types of services, such as audio services, video services, data transmission services, etc. In addition, different services have different requirements for the quality of data transmission services. Some services require high fidelity, low latency, and high speed during data transmission, while some services require low power consumption of the device during data transmission. Therefore, different applications are configured with different QoS for their different services. In the process of establishing a service, the application needs to send its service characteristics to the basic application layer, including the service's AID and QoS. In addition, the basic application layer also allocates ports for each service, and at the same time applies to the basic service layer for a service channel using AID, QoS, and Port.
[0135] S402: The basic application layer sends a transmission channel establishment request to the channel management module of the basic service layer. The transmission channel establishment request includes the AID, QoS and Port of the service.
[0136] The transmission channel establishment request is used to request the basic service layer to establish a transmission channel, which can be a single transmission channel or a transmission channel group.
[0137] S403: When the service supports multi-link transmission, the channel management module of the basic service layer allocates a transmission channel group for the service according to the transmission channel establishment request.
[0138] It should be noted that when a service does not support multi-link transmission (i.e., it only supports transmission on one link), the channel management module only allocates a separate service channel (such as an SLB service channel or an SLE service channel) for the service based on the AID, QoS, and Port, but does not configure a transmission channel group for it.
[0139] When a service supports multi-link transmission, the channel management module allocates a transmission channel group to the service based on the AID, QoS, and port. The transmission channel group includes at least one service channel. For example, the transmission channel group includes a first service channel and / or a second service channel. The first service channel and the second service channel correspond to a first logical link and a second logical link, respectively. The first logical link and the second logical link correspond to different first and second access layers, respectively.
[0140] Taking the wireless short-range communication protocol architecture provided in the embodiment of the present application as an example, the channel management module can assign a transmission channel group with Group ID = gx to the service. The service channel within the transmission channel group can be TCIDx and / or TCIDy, where TCIDx is the SLB service channel, and the SLB service channel corresponds to the SLB access layer; TCIDy is the SLE service channel, and the SLE service channel corresponds to the SLE access layer.
[0141] It should be understood that electronic devices may execute multiple services simultaneously. When the channel management module allocates a transmission channel group to a new service, the electronic device's links may already be occupied by other services. Therefore, even if the service itself supports multi-link transmission, the electronic device may not actually be able to provide multiple transmission links for it. Therefore, the number of service channels within a transmission channel group needs to be determined based on the service status and traffic volume of each link of the electronic device.
[0142] In some embodiments, when the current service status and traffic status of the SLB access layer and the SLE access layer both support providing services to the service, the channel management module configures the SLB service channel and the SLE service channel to the transmission channel group of the service respectively.
[0143] That is, when a service meets both conditions 1 and 2, the channel management module assigns a transmission channel group to the service and configures both an SLB service channel and an SLE service channel within the transmission channel group.
[0144] Condition 1: The service configuration supports multi-link transmission.
[0145] In some embodiments, video transmission services (i.e., video services) are typically configured to be transmitted over the SLB access layer, rather than the SLE access layer, because the bandwidth required for video streams is typically high. In other words, the video service itself is not configured to support multi-link transmission.
[0146] Condition 2: The resources of the SLB access layer and the SLE access layer can simultaneously support the provision of services to the business.
[0147] For condition 2, optionally, when the resources of the SLB access layer / SLE access layer do not support adding a new logical link, high-priority services can preempt the use of the resources of the SLB access layer / SLE access layer. In the embodiment of the present application, adding a new logical link means adding a new logical link while maintaining the existing logical link.
[0148] For example, for the SLB access layer, service 1 currently occupies part of the resources of the SLB access layer. When the electronic device has service 2 to be processed, if the remaining resources of the SLB access layer are insufficient to provide services to service 2, and the priority of service 2 is higher than that of service 1, then service 2 can seize the resources of the SLB access layer.
[0149] For condition 2, optionally, when the resources of the SLB access layer / SLE access layer support adding a new logical link, multiple logical links can be established and reserved at the same time, or only the logical link for high-priority services can be reserved.
[0150] For example, at the SLB access layer, service 1 currently occupies part of the SLB access layer's resources. When the electronic device has service 2 to be processed, if the remaining resources of the SLB access layer are sufficient to provide services for service 2 and service 2 has a higher priority than service 1, then the SLB access layer can maintain the logical links for service 1 and service 2 at the same time, or disconnect the logical link for service 1 and establish a logical link for service 2.
[0151] For another example, at the SLE access layer, service 1 currently occupies part of the SLE access layer's resources. When the electronic device has service 2 to be processed, if the remaining resources of the SLB access layer are sufficient to provide services for service 2 and service 2 has a lower priority than service 1, then the SLB access layer can maintain the logical links for both services 1 and 2, or only maintain the logical link for service 1 without establishing a logical link for service 2.
[0152] In other embodiments, when the SLB access layer is occupied by high-priority services and link resources are insufficient, the channel management module only configures the SLE service channel TCIDy to the transmission channel group of the service.
[0153] In some further embodiments, when the SLE access layer is occupied by high-priority services and link resources are insufficient, the channel management module only configures the SLB service channel TCIDx to the transmission channel group of the service.
[0154] It should be understood that the channel management module assigns a transmission channel group to a service, indicating that the Group ID of the transmission channel group (for example, Group A, Group B, and Group C) and the TCID of the service channels within the transmission channel group have been determined. However, the transmission channel group and the service channels within the group have not been successfully established. Specifically, the service channels are established according to the following steps.
[0155] S404: The channel management module of the basic service layer establishes a transmission channel group.
[0156] After determining the Group ID, the basic service layer establishes a transmission channel group corresponding to the Group ID. For example, see Figure 5 As shown in the figure, for Group A, the basic service layer needs to establish both an SLB service channel and an SLE service channel. For Group B, the basic service layer only needs to establish an SLB service channel. For Group C, the basic service layer only needs to establish an SLE service channel.
[0157] Based on the above description, it can be seen that the service channel needs to be negotiated and established on the control channel. In the wireless short-range communication protocol architecture provided in the embodiment of the present application, the Star Flash access layer includes the SLB access layer and the SLE access layer. Among them, the SLB access layer corresponds to the SLB control channel in the basic service layer, which is used to establish SLB service channels for different services; the SLE access layer corresponds to the SLE control channel in the basic service layer, which is used to establish SLE service channels for different services.
[0158] In some embodiments, the basic service layer may already have an SLB and / or SLE control channel established by other services. In other embodiments, the basic service layer does not have an established SLB and / or SLE control channel. In this case, the basic application layer needs to notify the basic service layer to create a new SLB and / or SLE control channel.
[0159] Therefore, based on the existence of the SLB control channel in the basic service layer, an SLB service channel TCIDx is established between the basic service layer and the SLB access layer. Based on the existence of the SLE control channel in the basic service layer, an SLE service channel TCIDy is established between the basic service layer and the SLE access layer.
[0160] S405: The channel management module of the basic service layer sends the transmission channel group establishment result to the basic application layer.
[0161] It should be understood that although the basic service layer allocates service channels to the transmission channel group of the current service, each service channel may be successfully established or fail to be established. For example, for the SLB access layer, if parameter (such as QoS) negotiation fails, message sending times out, or SLB logical link establishment fails, service channel TCIDx may fail to be established. Similarly, for the SLE access layer, if parameter (such as QoS) negotiation fails, message sending times out, or SLE logical link establishment fails, service channel TCIDy may fail to be established.
[0162] Taking the transmission channel group that the basic service layer needs to establish including TCIDx and TCIDy as an example, the establishment results of the transmission channel group may include the following four situations.
[0163] Case 1: Both service channels TCIDx and TCIDy are successfully established, and the transmission channel group is successfully established.
[0164] Case 2: Service channel TCIDx is established successfully, but service channel TCIDy fails to be established. The transmission channel group is established successfully.
[0165] Case 3: Service channel TCIDx fails to be established, but service channel TCIDy is successfully established, and the transmission channel group is successfully established.
[0166] Case 4: Both service channels TCIDx and TCIDy fail to be established, and the transmission channel group fails to be established.
[0167] After the transmission channel group is established, the channel management module sends the identification of the successfully established transmission channel group (eg, GroupID=gx) to the basic application layer.
[0168] S406: When the transmission channel group is successfully established, the basic application layer uses the transmission channel group to send service data corresponding to the service to the transmission control module.
[0169] After receiving the service data sent by the application, the basic application layer adds the service port number Port to the service data, which maps all service channels in the transmission channel group, and then sends the service data to the transmission control module of the basic service layer.
[0170] When the service channels in the transmission channel group include both TCIDx and TCIDy, the port maps both TCIDx and TCIDy. When the service channels in the transmission channel group include only TCIDx, the port maps only TCIDx. When the service channels in the transmission channel group include only TCIDy, the port maps only TCIDy.
[0171] S407: The transmission control module adds a transmission channel identifier within the transmission channel group to the service data.
[0172] Specifically, the transmission control module adds the corresponding service channel identifier to the service data carrying the port based on the mapping relationship between the port and the service channel. For example, if the port is mapped only to TCIDx, the transmission control module adds the TCIDx identifier to the service data carrying the port. If the port is mapped only to TCIDy, the transmission control module adds the TCIDy identifier to the service data carrying the port. If the transmission channel group includes both TCIDx and TCIDy, the TCID is added to the service data based on the transmission policy. This transmission policy can control the transmission control module to use one or more service channels within the transmission channel group to transmit data.
[0173] In this embodiment, the transmission strategy can be either diverted transmission or redundant transmission. Diverted transmission refers to transmitting a portion of all business data of the current business through the SLB business channel and another portion through the SLE business channel, and the two portions of business data are different. Redundant transmission refers to transmitting a portion of all business data of the current business through the SLB business channel and another portion through the SLE business channel, and the two portions of business data are completely or partially identical. For example, when the transmission control module diverts and transmits business data, TCIDx is added to a portion of the data for transmission through the SLB business channel, and TCIDy is added to the other portion of the data for transmission through the SLE business channel, and the two portions of business data are different.
[0174] During offload transmission, the ratio of service data on the SLB access layer and the SLE access layer can be determined based on the bandwidth, the status of existing services (such as video clarity, etc.), and the traffic status of the SLB access layer and the SLE access layer.
[0175] In addition, it should be noted that when the transmission control module transmits service data via multiple links, it does not support transmission in basic mode or transparent transmission mode. This is because in basic mode, data transmission is not grouped or retransmitted at the basic service layer, and no confirmation (ACK) is required from the other end. In transparent transmission mode, the basic service layer does not perform any processing on the data packet. These two modes do not support the addition of sequence numbers (SN) to service data. Therefore, after receiving service data without SN, the peer device cannot sort it, resulting in data confusion.
[0176] S408 , the transmission control module sends the service data carrying the SLB service channel identifier TCIDx to the SLB access layer, so as to be sent to the peer device through the SLB access layer.
[0177] S409 , the transmission control module sends the service data carrying the SLE service channel identifier TCIDy to the SLE access layer, so as to be sent to the peer device through the SLE access layer.
[0178] In summary, the multi-channel transmission channel group provided in the embodiment of the present application supports the transmission of different data frames at multiple different access layers (the SLB access layer and the SLE access layer), and also supports redundant transmission, which can increase the transmission rate of business data, reduce the latency of business data, and improve the reliability of business data. In addition, during the data transmission process, even if a link fails, there is no need to reconfigure the transmission channel group, and business data can continue to be transmitted.
[0179] When using a transmission channel group to transmit service data, services can also switch between the SLB access layer and the SLE access layer based on the needs of electronic devices. This includes: (1) switching service data from the SLE access layer to the SLB access layer for transmission; (2) switching service data from the SLB access layer to the SLE access layer for transmission. Each of these is explained below.
[0180] (1) Switching service data from the SLE access layer to the SLB access layer for transmission
[0181] Based on the foregoing description, it can be seen that although the configuration of some services themselves supports multi-link transmission, due to reasons such as the SLB access layer being occupied by high-priority services and the remaining resources of the SLB access layer being insufficient to provide services to the service, the transmission channel group established by the basic service layer for the service only includes one SLE service channel, and the service only transmits service data to the other end through the SLE service channel using the SLE access layer. However, when the QoS requirements of the service increase, the current SLE service channel may not be able to meet the service requirements. Alternatively, when the QoS requirements of the service have not changed, but the data transmission capacity of the electronic device has increased, still using the SLE service channel to transmit service data will not improve the transmission quality of the service data. For this reason, the embodiment of the present application can switch the service data from the SLE access layer to the SLB access layer for transmission when the SLB access layer is restored to be able to provide services to the service.
[0182] Figure 6 This is a flowchart of a data transmission method provided by another embodiment of the present application, which involves the process of switching business data from the SLE access layer to the SLB access layer for transmission.
[0183] S601: When the basic application layer transmits service data through the SLE service channel TCIDy in the transmission channel group, when an SLB switching demand occurs, the basic application layer sends an SLB service channel establishment request to the channel management module of the basic service layer.
[0184] In some embodiments, the SLB switching requirement is: the current service has increased the QoS requirement. For example, when a mobile phone controls a wireless headset to play standard-definition audio through an SLE service channel, if the user switches the audio quality from standard definition to high definition on the mobile phone side, the QoS requirement of the audio playback service will increase, and the application will send the new QoS requirement to the basic application layer. After the basic application layer receives the new QoS requirement, if the new QoS requirement is higher than the original QoS requirement, if the current service supports transmission on both the SLB access layer and the SLE access layer, the basic application layer requests the channel management module to add a new SLB service channel TCIDx in the transmission channel group.
[0185] In other embodiments, the SLB switching requirement is: the capability that the basic service layer can provide (referred to as the Spark-Link service requirement in this embodiment, which can be represented by the Spark-Link service quality identifier (SLQI)) is improved. For example, when a mobile phone controls a wireless headset to play high-definition audio, the QoS requirement for the high-definition audio playback service is relatively high. However, due to reasons such as the SLB access layer of the basic service layer being occupied by other services, the basic service layer cannot provide the high-definition audio playback service with an SLB access layer having a higher Spark-Link service quality (represented by SLQI-A), but instead provides the service with an SLE access layer having a lower SLQI (represented by SLQI-B). After agreeing to SLQI-B, the application transmits service data at the SLE access layer.
[0186] Due to the limited bandwidth of the SLE access layer, HD audio media streams may experience congestion during transmission, resulting in poor audio playback quality. Therefore, in this embodiment, during the execution of the HD audio playback service, if the service that previously occupied the SLB access layer ends, the SLB access layer will be vacant. The channel management module will establish an SLB service channel for this service, switching the service from the SLE access layer to the SLB access layer. This allows the service data to be transmitted through the high-bandwidth SLB access layer, increasing the data transmission rate and improving the HD audio playback quality.
[0187] In some other embodiments, the SLB switching requirement is: the QoS management module detects that the air interface quality of the SLE is poor and the bit error rate is high.
[0188] It should be noted that QoS is the quality of service sent by the application, and the various parameters therein define the quality of service expected by the service. SLQI, on the other hand, is the quality of service of the communication link that the basic service layer can actually provide for the service. Because a protocol architecture may handle multiple services simultaneously, there may be insufficient remaining transmission resources. Therefore, the basic service layer can sometimes meet the service expectations, and sometimes not. Therefore, after obtaining the QoS of the service, the basic service layer needs to negotiate with the other device based on the remaining transmission resources to determine the actual quality of service that can be provided to the service, that is, to determine the SLQI. Therefore, the SLQI may be the same as the QoS, or it may be worse than the service quality defined by QoS, or it may be better than the service quality defined by QoS.
[0189] In some cases, an SLB control channel already exists in the basic service layer. Based on this channel, the basic service layer can directly execute step S605 to establish an SLB service channel. In other cases, the SLB control channel does not exist, so the basic service layer must first establish the SLB control channel. For details on the establishment process, see steps S602-S605.
[0190] S602: The channel management module of the basic service layer sends a first notification message to the device discovery module. The first notification message is used to instruct the device discovery module to scan for SLB devices.
[0191] Exemplarily, the channel management module may determine whether to instruct the device discovery module to scan the SLB device based on factors such as whether the SLB access layer has a high-priority service or whether the remaining resources of the SLB access layer support the service.
[0192] S603: The device discovery module scans the SLB device.
[0193] S604: The device discovery module sends an SLB device discovery notification to the channel management module.
[0194] In this embodiment, the SLB device discovery notification is used to indicate that the device discovery module has discovered that the peer device corresponding to the current service supports the SLB communication function.
[0195] S605: The channel management module establishes an SLB default logical link with the peer device corresponding to the current service to form an SLB control channel.
[0196] It should be noted that the SLB control channel is the default channel on the SLB default logical link (it can also be understood as the default channel). After the SLB default logical link is established, the basic service layer will automatically generate the SLB control channel, and the SLB control channel identifier is also the default identifier.
[0197] It should be noted that, in this embodiment, except for the default logical link, all logical links not specifically described are dedicated logical links used to process specific communication services.
[0198] S606: The channel management module establishes an SLB service channel TCIDx through the SLB control channel, where TCIDx and TCIDy belong to the same transmission channel group.
[0199] It should be noted that the SLB control channel is the basis for establishing different SLB service channels between devices. During the process of establishing a service channel between devices, the two electronic devices negotiate the parameters required to establish the SLB service channel on the SLB control channel.
[0200] S607: The channel management module sends an SLQI capability adjustment request to the basic application layer.
[0201] In some embodiments, after the channel management module creates a new SLB service channel for the service, the actual data transmission quality provided by the channel management module to the service may also change. For example, the data transmission quality SLQI-B provided by the SLE access layer may change to the data transmission quality SLQI-A that the SLB access layer can provide. Therefore, the channel management module needs to send an SLQI capability adjustment request to the basic application layer, requesting that the SLQI provided for the service be adjusted to SLQI-A.
[0202] S608 : After agreeing to the SLQI capability adjustment request, the basic application layer sends an SLQI capability adjustment completion notification to the channel management module.
[0203] In some embodiments, after receiving the SLQI capability adjustment request, the basic application layer needs to send the request to the application of the service to inquire whether the application agrees to transmit service data under the data transmission capability corresponding to the SLQI. Only after the application agrees can the basic application layer send an SLQI capability adjustment completion notification to the channel management module.
[0204] In other embodiments, after receiving the SLQI capability adjustment request, the basic application layer locally decides whether to agree to transmit service data under the data transmission capability corresponding to the SLQI without querying the application program.
[0205] S609: The channel management module disconnects the SLE service channel TCIDy.
[0206] It should be noted that S609 is an optional step. The electronic device may not execute S609 after executing S608. That is, after the SLB service channel TCIDx is successfully established, the channel management module may not disconnect the SLE service channel TCIDy, and maintain the coexistence of TCIDx and TCIDy in the transmission channel group.
[0207] S610: The basic application layer sends service data to the transmission control module. The service data carries a port, and the port maps all service channels in the transmission channel group.
[0208] In addition, it should be noted that this embodiment does not limit the order of S609 and S6010. The transmission control module may execute S609 first and then S6010, or may execute S6010 first and then S609.
[0209] S611: The transmission control module adds the service channel identifier TCIDx corresponding to the Port to the service data.
[0210] S612: The transmission control module sends service data carrying TCIDx to the SLB access layer.
[0211] It should be understood that although the application's service data is switched from the SLB service channel to the SLE service channel for transmission, the service is still within the original transmission channel group.
[0212] Through the method provided in the embodiments of the present application, during SLE communication between an electronic device and a peer device corresponding to the current service, the electronic device can switch service data from the SLE access layer to the SLB access layer for transmission, thereby increasing the data transmission rate between devices. In addition, the user is unaware of the link switching process, which helps to improve the user experience.
[0213] (2) Switching service data from the SLB access layer to the SLE access layer for transmission
[0214] Based on the previous description, although the configuration of some services supports multi-link transmission, due to the fact that the SLE access layer is occupied by high-priority services and the remaining resources of the SLE access layer are insufficient to provide services to the services, the transmission channel group established by the basic service layer for the service sometimes only includes one SLB service channel, and the service only uses the SLB access layer to transmit service data to the other end through the SLB service channel. Since the power consumption of the SLB access layer is relatively high, long-term use will cause the device battery to deplete too quickly. Therefore, when the electronic device has low power consumption requirements and the SLE access layer recovers to be able to provide services to the service, the basic service layer can switch the service data of the service from the SLB access layer to the SLE access layer for transmission, so as to reduce the power consumption of the device and increase the device usage time.
[0215] Figure 7 This is a flowchart of a data transmission method provided by another embodiment of the present application, which involves the process of switching business data from the SLB access layer to the SLE access layer for transmission.
[0216] S701 , when the basic application layer transmits service data through the SLB service channel TCIDx in the transmission channel group, and an SLE switching requirement occurs, the basic application layer sends an SLE service channel establishment request to the channel management module of the basic service layer.
[0217] Exemplarily, the SLE switching requirement is: the battery power is lower than a preset value (eg, 20% of a fully charged capacity), or the electronic device is switched to a power saving mode, and the like.
[0218] In some cases, an SLE control channel currently exists in the basic service layer. Based on this SLE control channel, the basic service layer can directly execute step S706 to establish the SLE service channel. In other cases, the SLE control channel currently does not exist in the basic service layer. Therefore, the basic service layer must first establish the SLE control channel and then execute step S706 to establish the SLE service channel. For details on the establishment process, see steps S702-S705.
[0219] S702: The channel management module of the basic service layer sends a second notification message to the device discovery module. The second notification message is used to instruct the device discovery module to scan for SLE devices.
[0220] Exemplarily, the channel management module may determine whether to instruct the device discovery module to scan for SLE devices based on factors such as whether the SLE access layer has a high-priority service or whether the remaining resources of the SLE access layer support the service.
[0221] S703: The device discovery module scans for SLE devices.
[0222] S704: The device discovery module sends an SLE device discovery notification to the channel management module.
[0223] In this embodiment, the SLE device discovery notification is used to indicate that the device discovery module has discovered that the opposite-end device corresponding to the current service supports the SLE communication function.
[0224] S705 : The channel management module establishes an SLE logical link with the opposite-end device corresponding to the current service to form an SLE control channel.
[0225] It should be noted that the SLE control channel is the default channel on the SLE logical link (it can also be understood as the default channel). After the SLE logical link is established, the basic service layer will automatically generate the SLE control channel, and the identifier of the SLE control channel is also the default identifier.
[0226] S706: The channel management module establishes an SLE service channel TCIDy through the SLE control channel, where TCIDx and TCIDy belong to the same transmission channel group.
[0227] It should be noted that the SLE control channel is the basis for establishing different SLE service channels between devices. During the process of establishing a service channel between devices, the two devices negotiate the parameters required to establish the SLE service channel over the SLE control channel.
[0228] S707: The channel management module sends an SLQI capability adjustment request to the basic application layer.
[0229] After the channel management module creates a new SLB service channel for a service, the actual data transmission quality provided by the channel management module to the service changes. Specifically, the data transmission quality (SLQI-A) provided by the SLB access layer changes to the data transmission quality (SLQI-B) provided by the SLE access layer. Therefore, the channel management module needs to send an SLQI capability adjustment request to the basic application layer, requesting that the SLQI provided for the service be adjusted to SLQI-B.
[0230] S708: After the basic application layer agrees to the SLQI capability adjustment request, it sends an SLQI capability adjustment completion notification to the channel management module. For details, please refer to S608, which will not be described in detail in this embodiment.
[0231] S709: The channel management module disconnects the SLB service channel TCIDx.
[0232] It should be noted that step S709 is optional. After executing step S708, the electronic device may not execute step S609. In other words, after the SLE service channel TCIDy is successfully established, the channel management module may not disconnect the SLB service channel TCIDx, maintaining the coexistence of TCIDx and TCIDy within the transmission channel group.
[0233] S710 , the basic application layer sends service data to the transmission control module. The service data carries a port, and the port maps all service channels in the transmission channel group.
[0234] It should be understood that although the application's service data is switched from the SLB service channel to the SLE service channel for transmission, the service still remains in the original transmission channel group.
[0235] In addition, it should be noted that this embodiment does not limit the order of S708 and S709. The transmission control module may execute S708 first and then S709, or may execute S709 first and then S708.
[0236] S711: The transmission control module adds the SLE service channel identifier TCIDy corresponding to the Port to the service data.
[0237] S712: The transmission control module sends service data carrying TCIDy to the SLE access layer.
[0238] Through the method provided in the embodiments of the present application, when an electronic device and a peer device communicate via the SLB access layer, and the electronic device requires low power consumption, the electronic device can switch service data from the SLB access layer to the SLE access layer for transmission, thereby reducing the device's power consumption and increasing the device's usability. Furthermore, the user is unaware of the link switching process, which helps improve the user experience.
[0239] 2. Data transmission based on the mapping relationship between service channels and different logical links
[0240] It should be noted that after device discovery and connection between the first device and the second device, a default SLB logical link is established between the SLB access layer of the first device and the SLB access layer of the second device. This default SLB logical link corresponds to a default SLB control channel and a default SLB service management channel in the basic service layer. In addition, a default SLE logical link is established between the SLE access layer of the first device and the SLE access layer of the second device. This default SLE logical link corresponds to a default SLE control channel and a default SLE service management channel in the basic service layer.
[0241] After the first device and the second device establish a connection, they can process communication services according to user needs. For example, the first device can share pictures, files, audio or video with the second device according to user needs. Figure 8 As shown, the process of transmitting business data from the first device to the second device is described.
[0242] Figure 8 This is a flowchart of a data transmission method provided by an embodiment of the present application, illustrating a process in which a first device transmits data to a second device through a one-to-two mapping relationship between a service channel and a logical link. In this embodiment, the steps performed by the first device specifically include the following steps S801-S808.
[0243] S801: The basic application layer obtains the AID and QoS of the service.
[0244] When establishing a service (specifically a communication service), the application needs to send its service characteristics to the basic application layer. The service characteristics include the AID and QoS of the service.
[0245] S802 : The basic application layer determines the port number Port1 of the service on the first device and the port number Port2 of the service on the second device.
[0246] After obtaining the service's AID and QoS, the first device's basic application layer negotiates with the second device's basic service layer through the default SLB service management channel or SLE service management channel to determine the service's port numbers on both devices. In one example, the first and second devices determine the service's port number on the first device as Port 1 and the service's port number on the second device as Port 2.
[0247] S803 , the basic application layer sends a service channel establishment request to the channel management module of the basic service layer. The service channel establishment request carries the AID, QoS, Port1 and Port2 of the service.
[0248] S804: The channel management module establishes a service channel TCID1 and determines the mapping relationship between TCID1 and the SLB logical link LCIDx and / or the SLE logical link LCIDy. Figures 10 to 13 shown.
[0249] In this embodiment, the mapping relationship between TCID1 and LCIDx and LCIDy includes:
[0250] First mapping relationship: TCID1 only maps LCIDx (see Figure 9 Based on the first mapping relationship, the first device can transmit the service data in TCID1 to the second device through LCIDx.
[0251] Second mapping relationship: TCID1 only maps LCIDy (see Figure 9 Based on the second mapping relationship, the first device can transmit the service data in TCID1 to the second device through LCIDy.
[0252] The third mapping relationship: TCID1 maps LCIDx and LCIDy at the same time (see Figure 9 Based on the third mapping relationship, the first device can transmit the service data in TCID1 to the second device through LCIDx, or transmit the service data in TCID1 to the second device through LCIDy.
[0253] S805 , the channel management module sends a service channel establishment success notification to the basic application layer, which is used to notify the basic application layer that the service channel TCID1 corresponding to Port1 has been successfully established.
[0254] S806: The channel management module sends the mapping relationship between TCID1 and LCIDx and / or LCIDy to the transmission control module.
[0255] It should be noted that the channel management module may execute S805 first and then execute S806, or may execute S806 first and then execute S805. This embodiment does not limit this.
[0256] S807 , the basic application layer sends service data to the transmission control module, where the service data carries Port1 .
[0257] Taking the first device as an example, when the first device processes communication services, its basic application layer usually assigns a port number Port to each communication service. Different communication services can be transmitted through the same service channel or through different service channels. When a service channel only processes service data corresponding to one port, the port maps the service channel separately, for example, Port1 maps TCID1 separately. Based on this, when the basic application layer sends the service data corresponding to the port to the basic service layer, it may or may not add the Port1 identifier to the service data. When a service channel processes service data corresponding to multiple ports at the same time, multiple ports map one service channel at the same time, for example, Port1, Port2, and Port3 map TCID1 at the same time. Therefore, when the basic application layer sends service data to the basic service layer, it must add the port number corresponding to the service in the service data, otherwise the basic service layer will not be able to distinguish between the various service data.
[0258] S808, the transmission control module adds the TCID1 identifier to the service data according to the mapping relationship between Port1 and TCID1, and controls the transmission of the service data according to the mapping relationship between TCID1 and LCIDx and / or LCIDy, as well as the transmission policy.
[0259] When TCID1 is mapped to LCIDx, the transmission control module sends the service data to the SLB access layer, so that the SLB access layer adds the LCIDx identifier to the service data and sends the service data to the second device.
[0260] When TCID1 is mapped to LCIDy, the transmission control module sends the service data to the SLE access layer, so that the SLE access layer adds the LCIDy identifier to the service data and sends the service data to the second device.
[0261] When TCID1 maps LCIDx and LCIDy at the same time, the transmission control module transmits the service data according to the following steps S808a to S808e based on the mapping relationship and the transmission strategy.
[0262] S808a, the transmission control module adds a TCID1 identifier to the service data according to the mapping relationship between Port1 and TCID1. The service data can be divided into first service data and second service data.
[0263] S808b: The transmission control module sends the first service data to the SLB access layer.
[0264] S808c: The SLB access layer adds an LCIDx identifier to the first service data and sends the first service data to the second device.
[0265] S808d: The transmission control module sends the second service data to the SLE access layer.
[0266] S808e: The SLE access layer adds an LCIDy identifier to the second service data and sends the second service data to the second device.
[0267] In this embodiment, the transmission strategy can also be split transmission or redundant transmission. Split transmission refers to transmitting a portion of all business data of the current business (i.e., first business data) via LCIDx and another portion (i.e., second business data) via LCIDy, where the two portions of business data are different. Redundant transmission refers to transmitting the first business data via LCIDx and the second business data via LCIDy, where the two portions of business data are entirely or partially identical.
[0268] During offload transmission, the ratio of service data on LCIDx and LCIDy can be determined by the transmission control module based on bandwidth, the status of existing services (such as video clarity, etc.), and the traffic status of the SLB access layer and the SLE access layer.
[0269] In addition, it should be noted that when the transmission control module transmits business data simultaneously through LCIDx and LCIDy, it does not support transmission in basic mode and transparent transmission mode. This is because in basic mode, data transmission is not grouped or retransmitted at the basic service layer, and no confirmation (ack) is required from the other end. In transparent transmission mode, the basic service layer does not perform any processing on the data packet. These two modes do not support the addition of sequence numbers (SN) to business data. Therefore, after receiving business data without SN, the opposite device cannot sort it, which will cause data confusion.
[0270] In summary, the data transmission method provided in the embodiment of the present application can simultaneously map a service channel to an SLB logical link and an SLE logical link. Therefore, the method provided in this embodiment can simultaneously transmit service data through the SLB access layer and the SLE access layer, which can increase the transmission rate of service data, reduce the latency of service data, and improve the reliability of service data. In addition, during the data transmission process, even if a logical link fails, there is no need for the upper-layer application to control the protocol architecture to re-establish the logical link, and service data can continue to be transmitted.
[0271] The following describes the process involved in S804 in which the channel management module establishes the service channel TCID1 and determines the mapping relationship between TCID1 and LCIDx and / or LCIDy.
[0272] Before establishing a service channel, the channel management module must first request the access layer to establish at least one logical link, and then establish a service channel corresponding to the logical link in the basic service layer. In this embodiment, the logical link can be the SLB logical link LCIDx and / or the SLE logical link LCIDy.
[0273] Optionally, when the remaining resources of the SLB access layer support providing services for the communication service, the SLB access layer establishes LCIDx for the communication service. This includes: when the remaining resources of the SLB access layer support adding a new logical link, regardless of whether the priority of the service is higher than the priority of the existing services in the SLB access layer, an SLB logical link is established for the service. When the remaining resources of the SLB access layer do not support adding a new logical link, only if the priority of the service is higher than the priority of the existing services in the SLB access layer, the logical link of the existing service is disconnected, and an SLB logical link is established for the high-priority service.
[0274] In one possible implementation, when the remaining resources of the SLB access layer do not support adding a new logical link, the SLB access layer may not establish an SLB logical link for the new service even if the priority of the new service is higher than the priority of the existing service in the SLB access layer.
[0275] Optionally, the conditions for establishing an SLE logical link may refer to the conditions for establishing an SLB logical link, which will not be described in detail in this embodiment.
[0276] During the process of establishing a logical link, influenced by factors such as access layer quality and QoS negotiation, the establishment results of LCIDx and LCIDy may include the following cases 1 to 4.
[0277] Case 1: The SLB logical link LCIDx is established successfully, and the SLE logical link LCIDy is established successfully.
[0278] Case 2: The SLB logical link LCIDx is established successfully, but the SLE logical link LCIDy fails to be established.
[0279] Case 3: The SLB logical link LCIDx fails to be established, but the SLE logical link LCIDy is established successfully.
[0280] Case 4: The SLB logical link LCIDx fails to be established, and the SLE logical link LCIDy fails to be established.
[0281] The following describes the above cases 1 to 4, and the process of establishing a service channel in each case.
[0282] It should be noted that the following embodiments merely illustrate the process of establishing LCIDx, LCIDy, and TCID1, and do not restrict the order in which LCIDx and LCIDy are established. Furthermore, the following embodiments do not restrict the timing of establishing TCID1 or the target logical link corresponding to TCID1 during the TCID1 establishment process. After at least one logical link is successfully established, the first device can negotiate with the second device to establish a service channel via the default control channel corresponding to that logical link.
[0283] Case 1: The SLB logical link LCIDx is established successfully, and the SLE logical link LCIDy is established successfully.
[0284] Figure 10 This is a process for establishing a logical link and a service channel provided by an embodiment of the present application, which specifically includes the following steps S1001-S1016 and can be divided into the following four parts.
[0285] (1) The SLB logical link LCIDx is established successfully
[0286] S1001: A channel management module of a first device generates a service channel identifier TCID1.
[0287] S1002: The channel management module of the first device sends an SLB logical link establishment request to the SLB access layer of the first device. The request carries TCID1 and the QoS of the service.
[0288] S1003: The SLB access layer of the first device and the SLB access layer of the second device perform QoS negotiation to establish an SLB logical link LCIDx.
[0289] S1004: After LCIDx is successfully established, the SLB access layer of the first device sends a notification of successful establishment of LCIDx to the channel management module of the first device.
[0290] (2) Successfully established business channels
[0291] S1005 , the channel management module of the first device sends a service channel establishment request to the channel management module of the second device through the SLB control channel. The service channel establishment request carries TCID1 and LCIDx.
[0292] S1006: The channel management module of the second device generates a service channel identifier TCID2.
[0293] It should be noted that the business channel is a concept of the basic service layer. In the process of processing a certain business, the basic service layer of the first device needs to set a first business channel (such as TCID1) for the business, and the basic service layer of the second device needs to set a second business channel (such as TCID2) for the business. The identifiers of the first business channel and the second business channel can be the same or different. The first device and the second device transmit the business data corresponding to the business based on the correspondence between TCID1, LCIDx and TCID2. Therefore, after receiving the business channel establishment request sent by the first device, the channel management module of the second device needs to first generate the identifier TCID2 of the second business channel locally.
[0294] In addition, after generating the service channel identifier TCID2, the second device also needs to establish a mapping relationship between Port2 and TCID2, and send the mapping relationship to the basic application layer of the second device.
[0295] S1007: The channel management module of the second device sends a service channel establishment success notification to the channel management module of the first device through the SLB control channel.
[0296] The service channel establishment success notification includes a mapping relationship between TCID1, LCIDx, and TCID2, and is used to notify the first device and the second device that the service channel has been successfully established.
[0297] After the service channel TCID1 is successfully established, the channel management module needs to establish a mapping relationship between Port1 and TCID1 and send the mapping relationship to the basic application layer.
[0298] S1008: The channel management module of the first device stores the mapping relationship between TCID1, LCIDx, and TCID2.
[0299] The mapping relationship among TCID1, LCIDx, and TCID2 means that TCID1 corresponds to TCID2, and both TCID1 and TCID2 are mapped to LCIDx.
[0300] S1009: The channel management module of the second device stores the mapping relationship between TCID1, LCIDx and TCID2.
[0301] (3) SLE logical link LCIDy is established successfully
[0302] S1010: The channel management module of the first device sends an SLE logical link establishment request to the SLE access layer of the first device. The request carries TCID1 and the QoS of the service. The request is used to request the SLE access layer to establish the SLE logical link LCIDy corresponding to TCID1.
[0303] S1011: The SLE access layer of the first device and the SLE access layer of the second device perform QoS negotiation to establish an SLE logical link LCIDy.
[0304] S1012: After LCIDy is successfully established, the SLB access layer of the first device sends a notification of successful establishment of LCIDy to the channel management module of the first device. This notification carries the mapping relationship between TCID1 and LCIDy, and is used to notify the channel management module that the SLE logical link LCIDy corresponding to TCID1 has been successfully established.
[0305] (4) Reconfigure the mapping relationship between service channels and logical links
[0306] S1013: The channel management module of the first device updates the logical link between TCID1 and TCID2 to LCIDx and LCIDy.
[0307] After the channel management module updates the logical link between TCID1 and TCID2 to LCIDx and LCIDy, TCID1 corresponds to TCID2, and both TCID1 and TCID2 are mapped to LCIDx and LCIDy.
[0308] S1014: The channel management module of the first device sends a service channel reconfiguration request to the channel management module of the second device through the SLB control channel / SLE control channel, requesting to update the logical link between TCID1 and TCID2 to LCIDx and LCIDy.
[0309] S1015 : The channel management module of the second device updates the logical link between TCID1 and TCID2 to LCIDx and LCIDy according to the service channel reconfiguration request.
[0310] S1016, the channel management module of the second device sends a service channel reconfiguration response message to the channel management module of the first device through the SLB control channel / SLE control channel, to notify the first device that the second device side has updated the logical link between TCID1 and TCID2 to LCIDx and LCIDy.
[0311] Based on the above steps S1001 to S1016, the first electronic device can establish a one-to-two mapping relationship between TCID1 and LCIDx and LCIDy, and communicate with the second device simultaneously using the SLB access layer and the SLE access layer based on the mapping relationship.
[0312] Case 2: The SLB logical link LCIDx is established successfully, but the SLE logical link LCIDy fails to be established.
[0313] Figure 11 Another embodiment of the present application provides a process for establishing a logical link and a service channel, which specifically includes the following steps S1101-S1112 and can be divided into the following three parts.
[0314] (1) The SLB logical link LCIDx is established successfully
[0315] S1101: A channel management module of a first device generates a service channel identifier TCID1.
[0316] S1102: The channel management module of the first device sends an SLB logical link establishment request to the SLB access layer of the first device. The request carries TCID1 and the QoS of the service.
[0317] S1103: The SLB access layer of the first device and the SLB access layer of the second device perform QoS negotiation to establish an SLB logical link LCIDx.
[0318] S1104: After LCIDx is successfully established, the SLB access layer of the first device sends a notification of successful establishment of LCIDx to the channel management module of the first device.
[0319] (2) Successfully established business channels
[0320] S1105 , the channel management module of the first device sends a service channel establishment request to the channel management module of the second device through the SLB control channel. The service channel establishment request carries TCID1 and LCIDx.
[0321] S1106: The channel management module of the second device generates a service channel identifier TCID2.
[0322] In addition, after generating the service channel identifier TCID2, the second device also needs to establish a mapping relationship between Port2 and TCID2, and send the mapping relationship to the basic application layer.
[0323] S1107: The channel management module of the second device sends a service channel establishment success notification to the channel management module of the first device through the SLB control channel. The service channel establishment success notification includes a mapping relationship between TCID1, LCIDx, and TCID2, and is used to notify the first device that the service channel between the second device has been successfully established.
[0324] After the service channel TCID1 is successfully established, the channel management module needs to establish a mapping relationship between Port1 and TCID1 and send the mapping relationship to the basic application layer.
[0325] S1108: The channel management module of the first device stores the mapping relationship between TCID1, LCIDx, and TCID2.
[0326] S1109: The channel management module of the second device stores the mapping relationship between TCID1, LCIDx, and TCID2.
[0327] (3) SLE logical link LCIDy establishment failure
[0328] S1110: The channel management module of the first device sends an SLE logical link establishment request to the SLE access layer of the first device. The SLE logical link request carries TCID1 and service QoS, and is used to request the SLE access layer to establish the SLE logical link LCIDy corresponding to TCID1.
[0329] S1111: The SLE access layer of the first device and the SLE access layer of the second device perform QoS negotiation to establish an SLE logical link LCIDy.
[0330] S1112: After LCIDy fails to be established, the SLB access layer of the first device sends a LCIDy establishment failure notification to the channel management module of the first device. The notification carries TCID1, which is used to notify the channel management module that the SLE logical link corresponding to TCID1 has failed to be established.
[0331] Based on the above steps S1101 to S1112, the first device can establish a one-to-one mapping relationship between TCID1 and LCIDx. Based on this mapping relationship, the first device can communicate with the second device using the SLB access layer.
[0332] Case 3: The SLB logical link LCIDx fails to be established, but the SLE logical link LCIDy is established successfully.
[0333] Figure 12 This is a process for establishing a logical link and a service channel provided by another embodiment of the present application, which specifically includes the following steps S1201-S1212 and can be divided into the following three parts.
[0334] (1) SLB logical link LCIDx fails to be established
[0335] S1201: The channel management module of the first device generates a service channel identifier TCID1.
[0336] S1202: The channel management module of the first device sends an SLB logical link establishment request to the SLB access layer of the first device. The request carries TCID1 and the QoS of the service.
[0337] S1203: An SLB logical link LCIDx is established between the SLB access layer of the first device and the SLB access layer of the second device according to QoS.
[0338] S1204: After LCIDx establishment fails, the SLB access layer of the first device sends an LCIDx establishment failure notification to the channel management module of the first device.
[0339] (2) SLE logical link LCIDy is established successfully
[0340] S1205: The channel management module of the first device sends an SLE logical link establishment request to the SLE access layer of the first device. The request carries TCID1 and the QoS of the service. The request is used to request the SLE access layer to establish the SLE logical link LCIDy corresponding to TCID1.
[0341] S1206: The SLE access layer of the first device and the SLE access layer of the second device perform QoS negotiation and successfully establish an SLE logical link LCIDy.
[0342] S1207: The SLB access layer of the first device sends a LCIDy establishment success notification to the channel management module of the first device. The notification carries the mapping relationship between TCID1 and LCIDy, and is used to notify the channel management module that the SLE logical link LCIDy corresponding to TCID1 has been successfully established.
[0343] (3) Successfully established business channels
[0344] S1208: The channel management module of the first device sends a service channel establishment request to the channel management module of the second device through the SLE control channel. The service channel establishment request carries TCID1 and LCIDy.
[0345] S1209: The channel management module of the second device generates a service channel identifier TCID2.
[0346] In addition, after generating the service channel identifier TCID2, the second device also needs to establish a mapping relationship between Port2 and TCID2, and send the mapping relationship to the basic application layer.
[0347] S1210: The channel management module of the second device sends a service channel establishment success notification to the channel management module of the first device via the SLE control channel. The service channel establishment success notification includes a mapping relationship between TCID1, LCIDy, and TCID2, and is used to notify the first device that the service channel between the second device has been successfully established.
[0348] After the service channel TCID1 is successfully established, the channel management module needs to establish a mapping relationship between Port1 and TCID1 and send the mapping relationship to the basic application layer.
[0349] S1211: The channel management module of the first device stores the mapping relationship between TCID1, LCIDy and TCID2.
[0350] S1212: The channel management module of the second device stores the mapping relationship between TCID1, LCIDy and TCID2.
[0351] Based on the above steps S1201 to S1212, the first device can establish a one-to-one mapping relationship between TCID1 and LCIDy. Based on this mapping relationship, the first device can communicate with the second device using the SLE access layer.
[0352] Case 4: The SLB logical link LCIDx fails to be established, and the SLE logical link LCIDy fails to be established.
[0353] Figure 13 This is a process for establishing a logical link and a service channel provided by another embodiment of the present application, which specifically includes the following steps S1301-S1307 and can be divided into the following two parts.
[0354] (1) SLB logical link LCIDx fails to be established
[0355] S1301: The channel management module of the first device generates a service channel identifier TCID1.
[0356] S1302: The channel management module of the first device sends an SLB logical link establishment request to the SLB access layer of the first device. The request carries TCID1 and the QoS of the service.
[0357] S1303: An SLB logical link LCIDx is established between the SLB access layer of the first device and the SLB access layer of the second device according to QoS.
[0358] S1304: After LCIDx establishment fails, the SLB access layer of the first device sends an LCIDx establishment failure notification to the channel management module of the first device.
[0359] (2) SLE logical link LCIDy establishment failure
[0360] S1305: The channel management module of the first device sends an SLE logical link establishment request to the SLE access layer of the first device. The SLE logical link request carries TCID1 and service QoS, and is used to request the SLE access layer to establish the SLE logical link LCIDy corresponding to TCID1.
[0361] S1306: The SLE access layer of the first device and the SLE access layer of the second device perform QoS negotiation to establish an SLE logical link LCIDy.
[0362] S1307: After LCIDy fails to be established, the SLB access layer of the first device sends a LCIDy establishment failure notification to the channel management module of the first device. The notification carries TCID1, which is used to notify the channel management module that the SLE logical link corresponding to TCID1 has failed to be established.
[0363] It should be understood that in the case that both the SLB logical link LCIDx and the SLE logical link LCIDy between the first device and the second device fail to be established, the first device cannot establish a service channel.
[0364] For services that support multi-link transmission and transmit service data through only one access layer, electronic devices can switch service data to another access layer based on service needs. This includes: (1) switching service data from the SLE access layer to the SLB access layer for transmission; (2) switching service data from the SLB access layer to the SLE access layer for transmission. Each of these is explained below.
[0365] (1) Switching service data from the SLE access layer to the SLB access layer for transmission
[0366] Based on the foregoing description, it can be seen that although some services themselves support multi-link transmission, due to reasons such as the SLB access layer being occupied by high-priority services and the remaining resources of the SLB access layer being insufficient to provide services to the service, the basic service layer currently only configures the SLE logical link for the service. Therefore, the service currently uses the SLE access layer where the SLE logical link is located to transmit service data to the opposite device. However, when the QoS requirements of the service increase, the current SLE access layer may not be able to meet the service requirements. Alternatively, when the QoS requirements of the service have not changed, but the data transmission capacity of the electronic device has increased, still using the SLE access layer to transmit service data will not improve the transmission quality of the service data. For this reason, the embodiment of the present application can reconfigure the SLB logical link for the service when the SLB access layer is restored to be able to provide services to the service, and switch the service data from the SLE access layer to the SLB access layer for transmission.
[0367] Figure 14 This is a flowchart of a data transmission method provided by another embodiment of the present application, which involves the process of switching business data from the SLE access layer to the SLB access layer for transmission.
[0368] S1401 : When the basic application layer detects an SLB switching requirement while using the SLB logical link LCIDy to transmit service data, the basic application layer sends an SLB logical link switching request to the channel management module of the basic service layer.
[0369] In some embodiments, the SLB switching requirement is: the current service has increased the QoS requirement. For example, when a mobile phone controls a wireless headset to play standard-definition audio through the SLE access layer, if the user switches the audio quality from standard definition to high definition on the mobile phone side, the QoS requirement of the audio playback service will increase, and the application will send the new QoS requirement to the basic application layer. After the basic application layer receives the new QoS requirement, if the new QoS requirement is higher than the original QoS requirement, if the current service supports transmission on both the SLB access layer and the SLE access layer, the basic application layer requests the channel management module to switch the service to the SLB access layer for transmission.
[0370] In other embodiments, the SLB switching requirement is: the SLQI that the basic service layer can provide is improved. For example, when a mobile phone controls a wireless headset to play high-definition audio, the QoS requirement for the high-definition audio playback service is relatively high. However, due to reasons such as the SLB access layer of the basic service layer being occupied by other services, the basic service layer cannot provide the high-definition audio playback service with an SLB access layer with a higher SLQI (such as SLQI-A), but instead provides the service with an SLE access layer with a lower SLQI (such as SLQI-B). After agreeing to SLQI-B, the application transmits service data in the SLE access layer.
[0371] Due to the limited bandwidth of the SLE access layer, HD audio media streams may experience congestion during transmission, resulting in poor audio playback quality. Therefore, in this embodiment, during the execution of the HD audio playback service, if the service previously occupying the SLB access layer ends, SLB access layer resources will become available. The channel management module can then establish an SLB logical link LCIDx for the service, thereby switching the service from the SLE access layer to the SLB access layer. This allows service data to be transmitted through the high-bandwidth SLB access layer, increasing the data transmission rate and improving HD audio playback quality.
[0372] In some other embodiments, the SLB switching requirement is: the QoS management module detects that the air interface quality of the SLE is poor and the bit error rate is high.
[0373] In some cases, an SLB logical link already exists in the basic service layer. After S1401, the basic service layer can directly execute step S1406 based on this SLB logical link. In other cases, an SLB logical link does not exist in the basic service layer. Therefore, the basic service layer must first establish an SLB logical link after S1401. For details on the establishment process, see steps S1402-S1405.
[0374] S1402: The channel management module of the basic service layer sends a first notification message to the device discovery module. The first notification message is used to instruct the device discovery module to scan for SLB devices.
[0375] Exemplarily, the channel management module may determine whether the service currently instructs the device discovery module to scan the SLB device based on factors such as whether the SLB access layer has a high-priority service or whether the remaining resources of the SLB access layer support the service.
[0376] S1403: The device discovery module scans the SLB device.
[0377] S1404: The device discovery module sends an SLB device discovery notification to the channel management module.
[0378] In this embodiment, the SLB device discovery notification is used to indicate that the device discovery module has discovered that the peer device corresponding to the current service supports the SLB communication function.
[0379] S1405: The channel management module establishes an SLB logical link LCIDx with the opposite-end device corresponding to the current service.
[0380] S1406: The channel management module sends an SLQI capability adjustment request to the basic application layer.
[0381] In some embodiments, after the channel management module creates a new SLB logical link for the service, the actual data transmission quality that the channel management module can provide to the service will also change. That is, the data transmission quality SLQI-B provided by the SLE access layer will change to the data transmission quality SLQI-A that the SLB access layer can provide. Therefore, the channel management module needs to send an SLQI capability adjustment request to the basic application layer, requesting that the SLQI provided to the service be adjusted to SLQI-A.
[0382] S1407: After the basic application layer agrees to the SLQI capability adjustment request, it sends a SLQI capability adjustment success notification to the channel management module. For details, please refer to S608, which will not be described in detail in this embodiment.
[0383] S1408 , the channel management module switches the logical link mapped to the service channel TCID1 from LCIDy to LCIDx.
[0384] Since the data transmission process is an interactive service between two devices, and the two devices interact through a logical link, the first device not only needs to switch the logical link of the service from LCIDy to LCIDx locally, but also needs to notify the second device to switch the service channel from LCIDy to LCIDx.
[0385] In one example, see Figure 15 As shown, after the channel management module of the first device switches the logical link mapped to TCID1 from LCIDy to LCIDx, it sends a first reconfiguration request to the channel management module of the second device, requesting that the second device switch the logical channel mapped to the service channel TCID2 that handles the service from LCIDy to LCIDx. After completing the switch, the channel management module of the second device sends a first reconfiguration response message to the channel management module of the first device, notifying the second device that the logical link of TCID2 has been successfully switched.
[0386] S1409: The channel management module sends the mapping relationship between TCID1 and LCIDx to the transmission control module.
[0387] In some embodiments, after receiving the mapping relationship between TCID1 and LCIDx, the transmission control module deletes the mapping relationship between TCID1 and LCIDy that was originally stored locally.
[0388] In other embodiments, after receiving the mapping relationship between TCID1 and LCIDx, the transmission control module may not delete the mapping relationship between TCID1 and LCIDy, so that TCID1 is mapped to both LCIDx and LCIDy.
[0389] S1410 , the basic application layer sends service data to the transmission control module, where the service data carries a Port1 identifier.
[0390] S1411, the transmission control module adds the TCID1 identifier to the service data according to the mapping relationship between Prot1 and TCID1.
[0391] S1412: The transmission control module sends the service data carrying TCID1 to the SLB access layer based on the mapping relationship between TCID1 and LCIDx. Specifically, the SLB access layer adds the LCIDx identifier to the service data and sends it to the peer device.
[0392] S1413: The channel management module sends an LCIDy release notification to the SLE access layer.
[0393] S1414, the channel management module releases LCIDy.
[0394] S1415, the SLE access layer sends an LCIDy release response message to the channel management module, where the response message is used to notify that the LCIDy is released successfully.
[0395] It should be noted that S1413 to S1415 are optional steps, and the electronic device may not execute S1413 to S1415 after executing S1412. In other words, when the electronic device uses LCIDx to transmit service data, the electronic device may not disconnect LCIDy.
[0396] Through the method provided in the embodiments of the present application, during SLE communication between an electronic device and a peer device corresponding to the current service, the electronic device can switch service data from the SLE access layer to the SLB access layer for transmission, thereby increasing the data transmission rate between devices. In addition, the user is unaware of the link switching process, which helps to improve the user experience.
[0397] (2) Switching service data from the SLB access layer to the SLE access layer for transmission
[0398] Based on the previous description, although some services inherently support multi-link transmission, the basic service layer currently only configures SLB logical links for the service because the SLE access layer is occupied by high-priority services and its remaining resources are insufficient to provide services to the service. Therefore, the service currently uses the SLB access layer to transmit service data to the peer device. However, due to the high power consumption of the SLB access layer, long-term use will cause the device to lose power too quickly. Therefore, if the electronic device has low power consumption requirements and the SLE access layer recovers to be able to provide services to the service, the basic service layer can switch the service data of the service from the SLB access layer to the SLE access layer for transmission, thereby reducing the power consumption of the device and increasing the device usage time.
[0399] Figure 16 This is a flowchart of a data transmission method provided by another embodiment of the present application, which involves the process of switching business data from the SLB access layer to the SLE access layer for transmission.
[0400] S1601: When the basic application layer detects an SLE switching requirement during service data transmission through the SLB logical link LCIDx, the basic application layer sends an SLE logical link switching request to the channel management module of the basic service layer.
[0401] Exemplarily, the SLE switching requirement is: the battery power is lower than a preset value (eg, 20% of a fully charged capacity), or the electronic device is switched to a power saving mode, and the like.
[0402] In some cases, an SLE logical link currently exists in the basic service layer. Based on this SLE logical link, the basic service layer can directly execute step S1606 after S1601 without executing steps S1602 to S1605. In other cases, an SLE logical link currently does not exist in the basic service layer. Therefore, the basic service layer must first establish an SLE logical link after S1601. For the specific establishment process, see steps S1602 to S1605.
[0403] S1602: The channel management module of the basic service layer sends a second notification message to the device discovery module. The second notification message is used to notify the device discovery module to scan for SLE devices.
[0404] Exemplarily, the channel management module may determine whether to notify the device discovery module to scan for SLE devices based on factors such as whether the SLE access layer has a high-priority service or whether the remaining resources of the SLE access layer support the service.
[0405] S1603: The device discovery module scans for SLE devices.
[0406] S1604: The device discovery module sends an SLE device discovery notification to the channel management module.
[0407] In this embodiment, the SLE device discovery notification is used to indicate that the device discovery module has discovered that the opposite-end device corresponding to the current service supports the SLE communication function.
[0408] S1605: The channel management module controls the SLE access layer to establish an SLE logical link with the opposite-end device corresponding to the current service.
[0409] S1606: The channel management module sends an SLQI capability adjustment request to the basic application layer.
[0410] After the channel management module creates a new SLE logical link for a service, the actual data transmission quality that the first device can provide for the service also changes. Specifically, the data transmission quality (SLQI-A) provided by the SLB access layer changes to the data transmission quality (SLQI-B) provided by the SLE access layer. Therefore, the channel management module needs to send an SLQI capability adjustment request to the basic application layer, requesting that the SLQI provided for the service be adjusted to SLQI-B.
[0411] S1607: After the basic application layer agrees to the SLQI capability adjustment request, it sends a SLQI capability adjustment success notification to the channel management module. For details, please refer to S608, which will not be repeated in this embodiment.
[0412] S1608: The channel management module switches the logical link mapped to the service channel TCID1 from LCIDx to LCIDy.
[0413] In one example, see Figure 17 As shown, taking the local device as the first device and the remote device as the second device as an example, after the channel management module of the first device switches the logical link mapped to the service channel TCID1 from LCIDx to LCIDy, it sends a second reconfiguration request to the channel management module of the second device, requesting the second device to switch the logical link mapped to the service channel TCID2 from LCIDx to LCIDy. After completing the switch, the channel management module of the second device sends a second reconfiguration response message to the channel management module of the first device, notifying the second device that the logical link mapped to TCID2 has been successfully reconfigured.
[0414] S1609: The channel management module sends the mapping relationship between TCID1 and LCIDy to the transmission control module.
[0415] In some embodiments, after receiving the mapping relationship between TCID1 and LCIDy, the transmission control module may delete the mapping relationship between TCID1 and LCIDx that is originally stored locally.
[0416] In other embodiments, after receiving the mapping relationship between TCID1 and LCIDy, the transmission control module may not delete the mapping relationship between TCID1 and LCIDx, so that TCID1 is mapped to both LCIDx and LCIDy.
[0417] S1610 , the basic application layer sends service data to the transmission control module, where the service data carries a Port1 identifier.
[0418] S1611, the transmission control module adds TCID1 to the service data according to the mapping relationship between Prot1 and TCID1.
[0419] S1612: The transmission control module sends the service data carrying TCID1 to the SLE access layer based on the mapping relationship between TCID1 and LCIDy. Specifically, the SLE access layer adds LCIDy to the service data and sends it to the peer device.
[0420] S1613: The channel management module sends an LCIDx release notification to the SLB access layer.
[0421] S1614: The channel management module releases LCIDx.
[0422] S1615, the SLE access layer sends an LCIDx release response message to the channel management module. The response message is used to notify that the LCIDx release is successful.
[0423] It should be noted that S1613 to S1614 are optional steps, and the electronic device may not execute S1613 to S1615 after executing S1612. In other words, when the electronic device uses LCIDy to transmit service data, the electronic device may not disconnect LCIDx.
[0424] Through the method provided in the embodiments of the present application, when an electronic device and a peer device use the SLB access layer to communicate, if the electronic device has a low power consumption requirement, the electronic device can switch service data from the SLB access layer to the SLE access layer for transmission, thereby reducing the power consumption of the device and increasing the device's usage time. In addition, during the access layer switching process, both the user and the upper-layer application are unaware, which helps to improve the user experience.
[0425] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0426] Based on the data transmission methods provided in the above embodiments, the embodiments of the present application also provide the following technical solutions.
[0427] A data transmission device includes a basic application layer, a basic service layer and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0428] The basic application layer is used to request the basic service layer to establish a service channel for the communication service of the application.
[0429] The basic service layer is used to establish a transmission channel group for the communication service when the communication service supports multi-link transmission. The transmission channel group includes a first service channel and / or a second service channel. The first service channel corresponds to the first access layer, and the second service channel corresponds to the second access layer.
[0430] The access layer is used to transmit service data based on the transmission channel group.
[0431] Optionally, the first access layer is the Star Flash Basic SLB access layer, the first service channel is the SLB service channel, and the SLB access layer supports high-bandwidth data transmission capabilities. The second access layer is the Star Flash Low Power SLE access layer, the second service channel is the SLE service channel, and the SLE access layer supports low-power data transmission capabilities. Through the method provided in the embodiment of the present application, the electronic device can provide high-bandwidth or low-power data transmission capabilities for communication services.
[0432] Optionally, the basic service layer is further configured to: when a communication service supports multi-link transmission, and when resources of the first access layer support serving the communication service and are not occupied by other services with a higher priority than the communication service, the basic service layer allocates a first service channel to the transmission channel group of the communication service. And / or, when the communication service supports multi-link transmission, and when resources of the second access layer support serving the communication service and are not occupied by other services with a higher priority than the communication service, the basic service layer allocates a second service channel to the transmission channel group of the communication service.
[0433] Optionally, the basic service layer is also used to transmit business data through the first business channel and the second business channel; or, the electronic device transmits business data through the first business channel alone; or, the electronic device transmits business data through the second business channel alone.
[0434] Optionally, the basic service layer is further configured to obtain target service data from the basic application layer, where the target service data is service data carrying a port number (Port), where the Port maps all service channels within the transmission channel group. Furthermore, the basic service layer is configured to process the target service data to obtain target service data carrying a first TCID and target service data carrying a second TCID, where the first TCID is an identifier of the first service channel and the second TCID is an identifier of the second service channel. Furthermore, the basic service layer is configured to send the target service data carrying the first TCID to the first access layer and to send the target service data carrying the second TCID to the second access layer.
[0435] The access layer is further configured to transmit target service data carrying a first TCID through a first access layer, and to transmit target service data carrying a second TCID through a second access layer.
[0436] Optionally, the basic service layer is further configured to obtain target service data from the basic application layer, where the target service data is service data carrying a port number (Port), process the target service data carrying the Port number to obtain target service data carrying a first TCID, and send the target service data carrying the first TCID to the first access layer.
[0437] The first access layer is further configured to send target service data carrying the first TCID to the opposite-end device.
[0438] Optionally, the basic application layer is also used to receive business data sent by the application program and add a port to the business data to obtain target business data.
[0439] Optionally, the basic application layer is further configured to, when the transmission channel group includes an original service channel, which is either a first service channel or a second service channel, and the basic service layer determines to switch to a target service channel to process the communication service, and the access layer corresponding to the target service channel is able to provide services for the communication service, update the transmission channel group, wherein the updated transmission channel group also includes the target service channel; and switch the service data to the target service channel for transmission. When the transmission channel group before the update includes the first service channel, the target service channel is the second service channel; when the transmission channel group before the update includes the second service channel, the target service channel is the first service channel.
[0440] Optionally, the basic service layer is further configured to disconnect the original service channel in the transmission channel group and switch the service data to the target service channel.
[0441] Optionally, determining to switch to the target service channel to process the communication service includes: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target service channel is the second service channel, and the second service channel supports low power consumption data transmission capability.
[0442] Optionally, determining to switch to the target service channel to process the communication service includes: the service quality requirement of the communication service is improved, or the service capability of the access layer of the target service channel is improved. Accordingly, the target service channel is the first service channel, and the first service channel supports high-bandwidth data transmission capability.
[0443] A data transmission device includes: a basic application layer, a basic service layer and an access layer; the access layer includes a first access layer and a second access layer, and the first access layer and the second access layer support different data transmission capabilities.
[0444] The basic application layer is used to request the basic service layer to establish a service channel for the communication service of the application.
[0445] The basic service layer is used to establish a service channel for the communication service when the communication service supports multi-link transmission. The service channel can map a first logical link and a second logical link. The first logical link is a link of the first access layer, and the second logical link is a link of the second access layer.
[0446] The access layer is used to establish a logical link and transmit the service data of the communication service to the opposite-end device through the first logical link and / or the second logical link.
[0447] Optionally, the service channel can map the first logical link and the second logical link, including: the service channel maps the first logical link and the second logical link at the same time; or, the service channel maps the first logical link and the second logical link respectively at different stages of transmitting service data.
[0448] Optionally, the first access layer is the Star Flash Basic SLB access layer, the first logical link is the SLB service channel, and the SLB access layer supports high-bandwidth data transmission capabilities. The second access layer is the Star Flash Low Power SLE access layer, the second logical link is the SLE logical link, and the SLE access layer supports low-power data transmission capabilities.
[0449] Optionally, when the service channel maps the first logical link and the second logical link at the same time, the access layer is also used to transmit service data through the first access layer and the second access layer at the same time; or, transmit service data only through the first access layer; or, transmit service data only through the second access layer.
[0450] Optionally, the basic service layer is further configured to obtain target service data from the basic application layer, where the target service data is service data carrying a port number (Port), add a service channel identifier (TCID) to the target service data, and send first service data in the target service data carrying the TCID to the first access layer, and send second service data in the target service data carrying the TCID to the second access layer.
[0451] The first access layer is further configured to add a first logical link identifier LCID to the first service data, and send the first service data carrying the first LCID to the opposite-end device.
[0452] The second access layer is further used to add a second LCID to the second service data and send the second service data carrying the second LCID to the opposite-end device.
[0453] Optionally, the basic service layer is further configured to obtain target service data from the basic application layer, where the target service data is service data carrying a port number Port, and to add a TCID to the target service data and send the target service data carrying the TCID to the first access layer.
[0454] The first access layer is further configured to add a first LCID to the target service data carrying the TCID, and send the target service data carrying the first LCID to the opposite-end device.
[0455] Optionally, the basic application layer is further used to receive business data sent by the application; and to add a port to the business data.
[0456] Optionally, the basic service layer is further configured to, when the service channel maps to the original logical link and the basic service layer determines to switch to the target logical link to process the communication service, establish a mapping relationship between the service channel and the target logical link; and switch the service data to the target logical link for transmission. When the original logical link is the first logical link, the target logical link is the second logical link; when the original logical link is the second logical link, the target logical link is the first logical link.
[0457] Optionally, the basic service layer is also used to release the original logical link and switch the service data to the target logical link for transmission.
[0458] Optionally, determining to switch to the target logical link to process communication services includes: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target logical link is a second logical link, and the second logical link supports low power consumption data transmission capabilities.
[0459] Optionally, determining to switch to the target logical link to process the communication service includes: the service quality requirement of the communication service is improved, or the service capability of the target logical link is improved. Accordingly, the target service channel is the first logical link, and the first logical link supports high-bandwidth data transmission capability.
[0460] An embodiment of the present application also provides another data transmission device, which includes a processor and a memory. The memory stores a computer program, and when the computer program is executed by the processor, the data transmission method in the above embodiments is implemented.
[0461] An embodiment of the present application also provides an electronic device, which includes the wireless short-range communication protocol architecture provided by the above embodiments and is configured to execute the data transmission method shown in the above embodiments.
[0462] The present application also provides a chip. Figure 18 As shown, the chip includes a processor and a memory, wherein the memory stores a computer program, and when the computer program is executed by the processor, the data transmission method in each of the above embodiments is implemented.
[0463] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the data transmission method provided in the above embodiments is implemented.
[0464] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by an electronic device, the electronic device implements the data transmission method provided in the above embodiments.
[0465] It should be understood that the processor mentioned in the embodiments of the present application may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.
[0466] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0467] In the embodiments provided in this application, the division of each framework or module is merely a logical function division. In actual implementation, there may be other division methods, for example, multiple frameworks or modules can be combined or integrated into another system, or some features can be ignored or not executed.
[0468] In addition, the functional modules in the various embodiments of the present application may be integrated into a processing module, or each module may exist physically separately, or two or more modules may be integrated into a single module. The above-mentioned integrated modules may be implemented in the form of hardware or software functional modules.
[0469] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0470] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0471] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.
Claims
1. A data transmission method, characterized in that: Applied to an electronic device, the electronic device includes a basic application layer, a basic service layer, and an access layer; the access layer includes a first access layer and a second access layer, the first access layer and the second access layer supporting different data transmission capabilities; the method includes: The basic application layer requests the basic service layer to establish a service channel for the communication service of the application program; In a case where the communication service supports multi-link transmission, the basic service layer establishes a transmission channel group for the communication service, where the transmission channel group includes a first service channel and / or a second service channel, where the first service channel corresponds to the first access layer, and the second service channel corresponds to the second access layer; The electronic device transmits the service data of the communication service through the transmission channel group; The first access layer is a Star Flash basic SLB access layer, the first service channel is an SLB service channel, and the SLB access layer supports high-bandwidth data transmission capabilities; The second access layer is a Star Flash low power consumption SLE access layer, the second service channel is an SLE service channel, and the SLE access layer supports low power consumption data transmission capability.
2. The method according to claim 1, characterized in that In a case where the communication service supports multi-link transmission, the basic service layer establishes a transmission channel group for the communication service, including: In a case where the communication service supports multi-link transmission, when resources of the first access layer support serving the communication service, the basic service layer allocates the first service channel to the transmission channel group of the communication service; and / or, In a case where the communication service supports multi-link transmission, when resources of the second access layer support serving the communication service, the basic service layer allocates the second service channel to the transmission channel group of the communication service.
3. The method according to claim 1 or 2, characterized in that In a case where the transmission channel group includes the first service channel and the second service channel, the electronic device transmitting service data of the communication service through the transmission channel group includes: The electronic device transmits the service data through the first service channel and the second service channel; or The electronic device transmits the service data solely through the first service channel; or The electronic device transmits the service data solely through the second service channel.
4. The method according to claim 3, characterized in that The electronic device transmitting the service data through the first service channel and the second service channel includes: The basic service layer obtains target service data from the basic application layer, where the target service data is the service data carrying a port number Port, and the Port maps all service channels in the transmission channel group; The basic service layer processes the target service data to obtain the target service data carrying a first TCID and the target service data carrying a second TCID, wherein the first TCID is an identifier of the first service channel and the second TCID is an identifier of the second service channel; The basic service layer sends the target service data carrying the first TCID to the first access layer, and sends the target service data carrying the second TCID to the second access layer; The first access layer transmits the target service data carrying the first TCID to the opposite-end device, and the second access layer transmits the target service data carrying the second TCID to the opposite-end device.
5. The method according to claim 3, characterized in that The electronic device transmitting the service data solely through the first service channel includes: The basic service layer obtains target service data from the basic application layer, where the target service data is the service data carrying a port number Port, and the Port maps all service channels in the transmission channel group; The basic service layer processes the target service data carrying the Port to obtain the target service data carrying the first TCID; The basic service layer sends the target service data carrying the first TCID to the first access layer; The first access layer sends the target service data carrying the first TCID to the opposite-end device.
6. The method according to claim 4 or 5, characterized in that Before the basic service layer obtains the target business data from the basic application layer, the method further includes: The basic application layer receives the business data sent by the application program; The basic application layer adds a port to the business data to obtain the target business data.
7. The method according to any one of claims 1-2 and 4-5, characterized in that During the process of the electronic device transmitting the service data through the transmission channel group, the method further includes: The transmission channel group includes an original service channel, which is any one of the first service channel and the second service channel. When the basic service layer determines to switch to a target service channel to process the communication service and the access layer corresponding to the target service channel can provide services for the communication service, the basic service layer updates the transmission channel group, and the updated transmission channel group also includes the target service channel. Switching the service data to the target service channel for transmission; When the transmission channel group before updating includes the first service channel, the target service channel is the second service channel; when the transmission channel group before updating includes the second service channel, the target service channel is the first service channel.
8. The method according to claim 7, characterized in that Switching the service data to the target service channel for transmission includes: disconnecting the original service channel in the transmission channel group, and switching the service data to the target service channel.
9. The method according to claim 7, characterized in that Determining to switch to the target service channel to process the communication service includes: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target service channel is the second service channel, and the second service channel supports low power consumption data transmission capability.
10. The method according to claim 7, characterized in that Determining to switch to the target service channel to process the communication service includes: the service quality requirement of the communication service is improved, or the service capability of the access layer corresponding to the target service channel is improved. Accordingly, the target service channel is the first service channel, and the first service channel supports high-bandwidth data transmission capability.
11. An electronic device, characterized in that: The electronic device includes a basic application layer, a basic service layer and an access layer, the access layer includes a first access layer and a second access layer, the first access layer and the second access layer support different data transmission capabilities; wherein the basic application layer, the basic service layer and the access layer are configured to execute the corresponding data transmission method in any one of claims 1-10.
12. A chip, characterized in that: The chip includes a processor, and the processor executes a computer program stored in a memory to implement the data transmission method according to any one of claims 1 to 10.
13. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the data transmission method according to any one of claims 1 to 10 is implemented.
14. A data transmission method, characterized in that: Applied to an electronic device, the electronic device includes a basic application layer, a basic service layer, and an access layer; the access layer includes a first access layer and a second access layer, the first access layer and the second access layer supporting different data transmission capabilities; the method includes: The basic application layer requests the basic service layer to establish a service channel for the communication service of the application program; When the communication service supports multi-link transmission, the basic service layer establishes a service channel for the communication service, where the service channel can map a first logical link to a second logical link, where the first logical link is a link of the first access layer, and the second logical link is a link of the second access layer; The electronic device transmits the service data of the communication service to the opposite device through the first access layer and / or the second access layer corresponding to the service channel; The first access layer is a Star Flash basic SLB access layer, the first logical link is an SLB logical link, and the SLB access layer supports high-bandwidth data transmission capabilities; The second access layer is a Star Flash low power consumption SLE access layer, the second logical link is an SLE logical link, and the SLE access layer supports low power consumption data transmission capability.
15. The method according to claim 14, characterized in that The service channel can map the first logical link and the second logical link, including: The service channel maps the first logical link and the second logical link simultaneously; or, The service channel maps the first logical link and the second logical link respectively at different stages of transmitting service data.
16. The method according to claim 15, characterized in that In a case where the service channel maps both the first logical link and the second logical link, the electronic device transmitting service data of the communication service to the opposite device through the first access layer and / or the second access layer corresponding to the service channel includes: The electronic device sends the service data in the service channel to the first logical link and the second logical link respectively, so as to transmit the service data through the first access layer and the second access layer at the same time; or The electronic device sends the service data in the service channel to the first logical link, so as to transmit the service data through the first access layer; or The electronic device sends the service data in the service channel to the second logical link, so as to transmit the service data through the second access layer.
17. The method according to claim 16, characterized in that The electronic device sending the service data in the service channel to the first logical link and the second logical link respectively, so as to simultaneously transmit the service data through the first access layer and the second access layer, including: The basic service layer obtains target business data from the basic application layer, where the target business data is the business data carrying the port number Port; The basic service layer adds a service channel identifier TCID to the target service data, sends the first service data in the target service data carrying the TCID to the first access layer, and sends the second service data in the target service data carrying the TCID to the second access layer; The first access layer adds a first logical link identifier LCID to the first business data, and sends the first business data carrying the first LCID to the opposite device; and the second access layer adds a second LCID to the second business data, and sends the second business data carrying the second LCID to the opposite device.
18. The method according to claim 16, characterized in that The electronic device sending the service data in the service channel to the first logical link to transmit the service data through the first access layer includes: The basic service layer obtains target business data from the basic application layer, where the target business data is the business data carrying the port number Port; The basic service layer adds a TCID to the target service data and sends the target service data carrying the TCID to the first access layer; The first access layer adds a first LCID to the target service data carrying the TCID, and sends the target service data carrying the first LCID to the opposite device.
19. The method according to claim 17 or 18, characterized in that Before the basic service layer obtains the target business data from the basic application layer, the method further includes: The basic application layer receives the business data sent by the application program; The basic application layer adds a port to the business data to obtain the target business data.
20. The method according to any one of claims 15 to 18, characterized in that: The service channel maps the first logical link and the second logical link respectively at different stages of transmitting service data, including: The service channel is mapped to the original logical link. When the basic service layer determines to switch to the target logical link to process the communication service, the basic service layer establishes a mapping relationship between the service channel and the target logical link. Switching the service data to the target logical link for transmission; When the original logical link is the first logical link, the target logical link is the second logical link; when the original logical link is the second logical link, the target logical link is the first logical link.
21. The method according to claim 20, characterized in that Switching the service data to the target logical link for transmission includes: releasing the original logical link, and switching the service data to the target logical link for transmission.
22. The method according to claim 20, characterized in that Determining to switch to the target logical link to process the communication service includes: the electronic device enters a low power consumption mode, or the power of the electronic device is lower than a preset value, and accordingly, the target logical link is the second logical link, and the second logical link supports low power consumption data transmission capability.
23. The method according to claim 20, characterized in that Determining to switch to the target logical link to process the communication service includes: the service quality requirement of the communication service is improved, or the service capability of the target logical link is improved. Accordingly, the target logical link is the first logical link, and the first logical link supports high-bandwidth data transmission capability.
24. An electronic device, characterized in that: The electronic device includes a basic application layer, a basic service layer and an access layer, the access layer includes a first access layer and a second access layer, the first access layer and the second access layer support different data transmission capabilities; wherein the basic application layer, the basic service layer and the access layer are configured to execute the corresponding data transmission method in any one of claims 14-23.
25. A chip, characterized in that: The chip includes a processor, and the processor executes a computer program stored in a memory to implement the data transmission method according to any one of claims 14 to 23.
26. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the data transmission method according to any one of claims 14 to 23 is implemented.
Citation Information
Patent Citations
Using sdap headers for handling of as / NAS reflective QOS and to ensure in-sequence packet delivery during remapping in 5g communication systems
CN109952773A
Data transmission method, terminal and storage medium
CN110972197A