WO2022228015A1 - 一种数据传输方法及设备 - Google Patents

一种数据传输方法及设备 Download PDF

Info

Publication number
WO2022228015A1
WO2022228015A1 PCT/CN2022/084184 CN2022084184W WO2022228015A1 WO 2022228015 A1 WO2022228015 A1 WO 2022228015A1 CN 2022084184 W CN2022084184 W CN 2022084184W WO 2022228015 A1 WO2022228015 A1 WO 2022228015A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
channel
application data
sending
transmission protocol
Prior art date
Application number
PCT/CN2022/084184
Other languages
English (en)
French (fr)
Inventor
姜光许
李腾
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022228015A1 publication Critical patent/WO2022228015A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless

Definitions

  • the present application relates to the field of terminals, and in particular, to a data transmission method and device.
  • the transmission control protocol (TCP) has a relatively complete confirmation mechanism, retransmission mechanism and congestion control mechanism, in order to ensure the reliability of data interaction between devices, the kernel TCP protocol is generally used when transmitting data between devices.
  • the stack is transmitted through the kernel message forwarding process.
  • TCP has a relatively complete confirmation mechanism, retransmission mechanism and congestion control mechanism, etc.
  • the kernel-based TCP transmission data needs to go through the tedious kernel message forwarding process, and the data transmission delay is relatively large.
  • the present application provides a data transmission method and device.
  • data is sent based on a simplified transmission protocol without using kernel TCP for message forwarding, thereby reducing near-field transmission delay and improving near-field transmission throughput.
  • an embodiment of the present application provides a data transmission method, the method may include: when a first device sends application data to a second device, if the first device and the second device have established a first Wi-Fi Wi-Fi channel, the first device sends the application data to the second device through the first Wi-Fi channel based on the simplified transmission protocol; or, if the first device discovers the second device through short-range communication, establishes a second wireless security A true Wi-Fi channel, and based on the simplified transmission protocol, the application data is sent to the second device through the second Wi-Fi channel; wherein, the transmission layer header of the simplified transmission protocol is reduced from the transmission control protocol header by at least one of the following fields: Acknowledgment number, header length, reserved field, flag bit field, checksum, urgent pointer, optional; and/or, the network layer header of the simplified transport protocol is reduced by at least one of the following fields compared to the network protocol header: identification , flags, segment offset, protocol, checksum, optional.
  • the first device determines that it is a near-field high-speed transmission scenario (the first device has established a Wi-Fi channel with the second device, or the first device can establish a Wi-Fi channel with the second device), based on Simplified transfer protocol for data transfer. Since the near-field high-speed transmission belongs to the short fat pipeline (high bandwidth and short transmission distance), the packet loss rate is very low, and the complex confirmation mechanism, retransmission mechanism and congestion control mechanism of TCP are not required; the simplified transmission protocol is adopted for the near-field high-speed transmission. , which can avoid the tedious message forwarding process by using TCP to transmit data, and reduce the delay of near-field high-speed transmission.
  • the first device discovers the second device through short-range communication, and establishes a first Wi-Fi channel between the first device and the second device; the first device A first operation of the user sharing application data of the first device to the second device is received, and in response to the first operation, the first device sends the application data to the second device through the first Wi-Fi channel based on the simplified transmission protocol.
  • the first device when the first device sends application data to the second device, the first device has established a Wi-Fi channel with the second device.
  • the first device receives a second operation of the user sharing application data of the first device, and in response to the second operation, the first device discovers the second device through short-range communication, and establish a second Wi-Fi channel between the first device and the second device; the first device receives a third operation of the user sharing the application data of the first device to the second device, and in response to the third operation, the first device is based on Simplify the transmission protocol and send application data to the second device through the second Wi-Fi channel. In this scenario, the first device does not establish a Wi-Fi channel with the second device. When the first device sends application data to the second device, the first device and the second device discover each other through short-range communication, and establish a Wi-Fi channel.
  • the Wi-Fi channel includes a channel based on the Wi-Fi P2P mode, or a channel based on the Wi-Fi AP mode, or a channel based on the Wi-Fi STA mode.
  • the short-range communication method includes NFC, Bluetooth or infrared.
  • the first device sorts the application data of the first device in descending order of sending priority.
  • the sending priority is determined according to the data type of the application data, and the data type includes message data, stream data, byte data and file data.
  • the sending priorities of the following data types are in descending order: message data, stream data, byte data, and file data.
  • a video on a mobile phone is sent to a large screen for playback using streaming, and the data type of the video is stream data.
  • the mobile phone sends control messages such as volume adjustment and playback progress adjustment to the large screen. Since the sending priority of message data is higher than the sending priority of streaming data, control message data such as volume adjustment and playback progress adjustment are sent prior to unsent video stream data, which can be achieved during video playback. and so on, to ensure that the control message is sent in time.
  • the first device receives the first message from the second device; and according to the data packet number in the first message, resends the data packet number corresponding to the data packet number to the second device data packets.
  • the simplified transmission protocol divides the application data to be sent into data packets, and numbers each data packet. If the receiving device confirms that it has not received the Nth data packet of the application data from the sending device, it sends a first message to the sending device, where the first message includes the number of the unreceived data packet. That is to say, the second device does not need to send an ACK to the first device every time it receives a packet; instead, it sends a NACK to the first device once when it is determined that the packet is lost. Generally speaking, the packet loss rate in near-field high-speed transmission scenarios is low. Compared with the TCP mechanism for acknowledging each message, using the packet acknowledgment mechanism of the simplified transmission protocol can reduce the number of message exchanges between the sending device and the receiving device. .
  • the first device further adjusts the congestion window for sending data packets according to the amount of application data to be sent and the number of first messages received per unit time.
  • the present application provides a device that can implement the data transmission method described in the first aspect and its possible design manners, which can implement the above method through software, hardware, or executing corresponding software through hardware.
  • the device may include a communication interface, a processor, and memory; wherein the memory includes memory and external storage.
  • the processor is configured to support the device to perform the corresponding functions in the above-mentioned first aspect and possible designs thereof.
  • the memory is for coupling with the processor, which holds the necessary program instructions and data for the apparatus.
  • embodiments of the present application provide a computer-readable storage medium, where the computer-readable storage medium includes computer instructions, and when the computer instructions are executed on an electronic device, the electronic device is made to perform the above-mentioned first aspect and its functions. Data transfer method as described in Possible Designs.
  • an embodiment of the present application provides a computer program product, which, when the computer program product runs on a computer, causes the computer to execute the data transmission method described in the first aspect and its possible design manners above. .
  • an embodiment of the present application provides a communication system, including a device for implementing the corresponding method in the above-mentioned first aspect and its possible design manners.
  • FIG. 1 is a schematic diagram of a system architecture to which the data transmission method provided by the embodiment of the present application is applicable;
  • FIG. 2 is a schematic diagram of a system architecture to which the data transmission method provided by the embodiment of the present application is applicable;
  • FIG. 3 is a schematic diagram of a system architecture to which the data transmission method provided by the embodiment of the present application is applicable;
  • FIG. 4 is a schematic diagram of a device hardware structure provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram of a scenario example of a data transmission method provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of a scenario example of a data transmission method provided by an embodiment of the present application.
  • FIG. 7 is a schematic diagram of a data transmission method provided by an embodiment of the present application.
  • FIG. 8 is a schematic diagram of a data transmission method provided by an embodiment of the present application.
  • FIG. 9 is a schematic structural composition diagram of a device according to an embodiment of the present application.
  • references in this specification to "one embodiment” or “some embodiments” and the like mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application.
  • appearances of the phrases “in one embodiment,” “in some embodiments,” “in other embodiments,” “in other embodiments,” etc. in various places in this specification are not necessarily All refer to the same embodiment, but mean “one or more but not all embodiments” unless specifically emphasized otherwise.
  • the terms “including”, “including”, “having” and their variants mean “including but not limited to” unless specifically emphasized otherwise.
  • the term “connected” includes both direct and indirect connections unless otherwise specified.
  • first and second are only used for descriptive purposes, and should not be construed as indicating or implying relative importance or implicitly indicating the number of indicated technical features.
  • a feature defined as “first” or “second” may expressly or implicitly include one or more of that feature.
  • words such as “exemplary” or “for example” are used to represent examples, illustrations or illustrations. Any embodiments or designs described in the embodiments of the present application as “exemplary” or “such as” should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as “exemplary” or “such as” is intended to present the related concepts in a specific manner.
  • An embodiment of the present application provides a data transmission method, which is applicable to the system shown in FIG. 1 .
  • the system includes a device 100 and a device 200 , and the device 100 sends data to the device 200 through wireless communication.
  • the above-mentioned device 100 or device 200 may include a mobile phone, a tablet computer, a notebook computer, a personal computer (PC), an ultra-mobile personal computer (UMPC), a handheld computer, a netbook, and a smart home device (eg, Smart TVs, smart screens, large screens, smart speakers, etc.), personal digital assistants (PDAs), wearable devices (such as smart watches, smart bracelets, etc.), vehicle-mounted devices, virtual reality devices, etc., this application
  • PDAs personal digital assistants
  • wearable devices such as smart watches, smart bracelets, etc.
  • vehicle-mounted devices virtual reality devices, etc.
  • the above wireless communications include mobile communications, the Internet, wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite systems (global navigation satellite systems) system, GNSS), frequency modulation (frequency modulation, FM), near field communication (near field communication, NFC), infrared (infrared, IR) and so on.
  • WLAN wireless local area networks
  • BT wireless fidelity
  • GNSS global navigation satellite systems
  • FM frequency modulation
  • NFC near field communication
  • infrared infrared
  • Device 100 sends data to device 200 through wireless transmission.
  • the wireless transmission mode for sending data from the device 100 to the device 200 is near-field high-speed transmission
  • the data transmission is performed based on a simplified transmission protocol.
  • the wireless transmission mode for sending data from the device 100 to the device 200 is non-near-field high-speed transmission
  • data transmission is performed based on other transport layer protocols (such as TCP). Since the near-field high-speed transmission belongs to the short fat pipeline (high bandwidth and short transmission distance), the packet loss rate is very low, and the complex confirmation mechanism, retransmission mechanism and congestion control mechanism of TCP are not required; the simplified transmission protocol is adopted for the near-field high-speed transmission. , which can avoid the tedious message forwarding process by using TCP to transmit data, and reduce the delay of near-field high-speed transmission.
  • the above-mentioned near-field high-speed transmission includes Wi-Fi Direct (also known as Wi-Fi Direct, or Wi-Fi P2P) transmission, or wireless local area network transmission with fewer hops, or high-speed transmission that does not require operator network participation. transmission method, etc.
  • Wi-Fi Direct also known as Wi-Fi Direct, or Wi-Fi P2P
  • wireless local area network transmission with fewer hops or high-speed transmission that does not require operator network participation. transmission method, etc.
  • a mobile phone and a tablet computer establish a Wi-Fi direct connection channel, and perform data interaction through the Wi-Fi direct connection channel, that is, the mobile phone and the tablet computer transmit interactive data at high speed through the near field.
  • devices such as mobile phones, tablet computers, TVs, and PCs are connected to the same router to form a local area network.
  • Data interaction between devices in a local area network that is, near-field high-speed transmission. It can be understood that the data interaction between devices in the local area network includes data exchange between devices in the local area network by forwarding data through routers.
  • FIG. 3 takes as an example that a mobile phone, a tablet computer, a TV, a PC and other devices are connected to the same router to form a local area network as an example.
  • a local area network may include multiple routers, and the devices in the local area network belong to the same network segment.
  • Near-field high-speed transmission includes data interaction between devices connected to different routers in the same local area network.
  • a Wi-Fi channel is established between devices in the local area network, and data is transmitted through the Wi-Fi channel.
  • the device accessing the local area network starts the Wi-Fi access point (AP) mode to establish a Wi-Fi channel; in other examples, the device accessing the local area network starts the Wi-Fi station (station, STA) mode to establish a Wi-Fi channel.
  • AP Wi-Fi access point
  • STA Wi-Fi station
  • both a Wi-Fi direct connection channel and an intra-LAN Wi-Fi channel may be established between the device 100 and the device 200 .
  • Non-near-field high-speed transmission includes far-field transmission; for example, mobile phones, tablet computers, TVs or PCs in the local area network perform data interaction with devices that do not belong to the local area network.
  • Non-near-field high-speed transmission also includes near-field low-speed transmission; for example, a mobile phone sends data to a PC via Bluetooth.
  • FIG. 4 shows a schematic structural diagram of the above-mentioned device 100 .
  • the above-mentioned device 100 may include a processor 110 , an external memory interface 120 , an internal memory 121 , a universal serial bus (USB) interface 130 , a charging management module 140 , a power management module 141 , and a battery 142 , Antenna 1, Antenna 2, mobile communication module 150, wireless communication module 160, sensor module 170, etc.
  • a processor 110 may include a processor 110 , an external memory interface 120 , an internal memory 121 , a universal serial bus (USB) interface 130 , a charging management module 140 , a power management module 141 , and a battery 142 , Antenna 1, Antenna 2, mobile communication module 150, wireless communication module 160, sensor module 170, etc.
  • USB universal serial bus
  • the sensor module may include a pressure sensor, a gyroscope sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, and the like.
  • the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the device 100 .
  • the device 100 may include more or less components than shown, or combine some components, or separate some components, or arrange different components.
  • the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • application processor application processor, AP
  • modem processor graphics processor
  • ISP image signal processor
  • controller video codec
  • digital signal processor digital signal processor
  • baseband processor baseband processor
  • neural-network processing unit neural-network processing unit
  • the controller can generate an operation control signal according to the instruction operation code and timing signal, and complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 110 for storing instructions and data.
  • the memory in processor 110 is cache memory. This memory may hold instructions or data that have just been used or recycled by the processor 110 . If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby increasing the efficiency of the system.
  • the processor 110 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the I2C interface is a bidirectional synchronous serial bus that includes a serial data line (SDA) and a serial clock line (SCL).
  • the processor 110 may contain multiple sets of I2C buses.
  • the I2S interface can be used for audio communication.
  • the PCM interface can also be used for audio communications, sampling, quantizing and encoding analog signals.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus may be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • a UART interface is typically used to connect the processor 110 with the wireless communication module 160 .
  • the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface to implement the Bluetooth function.
  • the MIPI interface may be used to connect the processor 110 with peripheral devices.
  • MIPI interfaces include camera serial interface (CSI), display serial interface (DSI), etc.
  • the GPIO interface can be configured by software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the USB interface 130 is an interface that conforms to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 130 can be used to connect a charger to charge the device 100, and can also be used to transfer data between the device 100 and peripheral devices. It can also be used to connect headphones to play audio through the headphones.
  • the interface can also be used to connect other electronic devices, such as AR devices.
  • the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration, and does not constitute a structural limitation of the device 100 .
  • the device 100 may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the charging management module 140 is used to receive charging input from the charger.
  • the charger may be a wireless charger or a wired charger.
  • the charging management module 140 may receive charging input from the wired charger through the USB interface 130 .
  • the charging management module 140 may receive wireless charging input through the wireless charging coil of the device 100 . While the charging management module 140 charges the battery 142 , it can also supply power to the electronic device through the power management module 141 .
  • the power management module 141 is used for connecting the battery 142 , the charging management module 140 and the processor 110 .
  • the power management module 141 receives input from the battery 142 and/or the charging management module 140, and supplies power to the processor 110, the internal memory 121, the wireless communication module 160, and the like.
  • the power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle times, battery health status (leakage, impedance).
  • the power management module 141 may also be provided in the processor 110 .
  • the power management module 141 and the charging management module 140 may also be provided in the same device.
  • the wireless communication function of the device 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modulation and demodulation processor, the baseband processor, and the like.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in device 100 may be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • the antenna 1 can be multiplexed as a diversity antenna of the wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
  • the mobile communication module 150 may provide a wireless communication solution including 2G/3G/4G/5G etc. applied on the device 100 .
  • the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA) and the like.
  • the mobile communication module 150 can receive electromagnetic waves from the antenna 1, filter and amplify the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation.
  • the mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and then convert it into electromagnetic waves through the antenna 1 and radiate it out.
  • at least part of the functional modules of the mobile communication module 150 may be provided in the processor 110 .
  • at least part of the functional modules of the mobile communication module 150 may be provided in the same device as at least part of the modules of the processor 110 .
  • the modem processor may include a modulator and a demodulator.
  • the modulator is used to modulate the low frequency baseband signal to be sent into a medium and high frequency signal.
  • the demodulator is used to demodulate the received electromagnetic wave signal into a low frequency baseband signal. Then the demodulator transmits the demodulated low-frequency baseband signal to the baseband processor for processing.
  • the low frequency baseband signal is processed by the baseband processor and passed to the application processor.
  • the application processor outputs a sound signal through an audio device, or displays an image or video through a display screen.
  • the modem processor may be a stand-alone device. In other embodiments, the modem processor may be independent of the processor 110, and may be provided in the same device as the mobile communication module 150 or other functional modules.
  • the wireless communication module 160 can provide applications on the device 100 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • BT wireless fidelity
  • GNSS global navigation satellite system
  • frequency modulation frequency modulation
  • FM near field communication technology
  • NFC near field communication
  • IR infrared
  • the wireless communication module 160 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 160 receives electromagnetic waves via the antenna 2 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110 .
  • the wireless communication module 160 can also receive the signal to be sent from the processor 110 , perform frequency modulation on it, amplify it, and convert it into electromagnetic waves for radiation through the
  • the antenna 1 of the device 100 is coupled with the mobile communication module 150, and the antenna 2 is coupled with the wireless communication module 160, so that the device 100 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
  • the GNSS may include global positioning system (global positioning system, GPS), global navigation satellite system (global navigation satellite system, GLONASS), Beidou navigation satellite system (beidou navigation satellite system, BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite based augmentation systems (SBAS).
  • global positioning system global positioning system, GPS
  • global navigation satellite system global navigation satellite system, GLONASS
  • Beidou navigation satellite system beidou navigation satellite system, BDS
  • quasi-zenith satellite system quadsi -zenith satellite system, QZSS
  • SBAS satellite based augmentation systems
  • a digital signal processor is used to process digital signals, in addition to processing digital image signals, it can also process other digital signals. For example, when the device 100 is selected at a frequency, the digital signal processor is used to perform Fourier transform on the energy of the frequency, and the like.
  • Video codecs are used to compress or decompress digital video.
  • Device 100 may support one or more video codecs.
  • the device 100 can play or record videos in various encoding formats, such as: moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, and so on.
  • MPEG moving picture experts group
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • Applications such as intelligent cognition of the device 100 can be implemented through the NPU, such as image recognition, face recognition, speech recognition, text understanding, and the like.
  • the internal memory 121 may include one or more random access memories (RAM) and one or more non-volatile memories (NVM).
  • RAM random access memories
  • NVM non-volatile memories
  • Random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronization Dynamic random access memory (double data rate synchronous dynamic random access memory, DDR SDRAM, such as the fifth generation DDR SDRAM is generally called DDR5 SDRAM) and so on.
  • SRAM static random-access memory
  • DRAM dynamic random access memory
  • SDRAM synchronous dynamic random access memory
  • DDR SDRAM double data rate synchronous dynamic random access memory
  • DDR SDRAM double data rate synchronous dynamic random access memory
  • DDR SDRAM double data rate synchronous dynamic random access memory
  • DDR5 SDRAM double data rate synchronous dynamic random access memory
  • Non-volatile memory may include magnetic disk storage devices, flash memory.
  • Flash memory can be divided into NOR FLASH, NAND FLASH, 3D NAND FLASH, etc. according to the operating principle, and can include single-level memory cell (SLC), multi-level memory cell (multi-level memory cell, SLC) according to the level of storage cell potential. cell, MLC), triple-level cell (TLC), quad-level cell (QLC), etc., according to storage specifications, it can include universal flash storage (UFS), embedded type multimedia memory card (embedded multi media Card, eMMC) and so on.
  • SLC single-level memory cell
  • MLC multi-level memory cell
  • TLC triple-level cell
  • QLC quad-level cell
  • UFS universal flash storage
  • embedded type multimedia memory card embedded multi media Card
  • the external memory interface 120 can be used to connect an external non-volatile memory, so as to expand the storage capacity of the device 100 .
  • the external non-volatile memory communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example, save music, video, etc. files in external non-volatile memory.
  • device 100 sends data applied on device 100 to device 200; that is, device 100 is a sending device, and device 200 is a receiving device.
  • a Wi-Fi channel for example, Wi-Fi P2P mode or Wi-Fi AP mode or Wi-Fi STA mode
  • the device 100 sends application data to the device 200 through the established Wi-Fi channel based on the simplified transmission protocol.
  • the interface 101 of the mobile phone 100 includes multiple pictures. Users can select an image and share the image to other devices. For example, the user clicks on the picture 102, and the picture 102 is selected.
  • the interface 101 also includes a share list, and the share list includes one or more names (eg, device name, user name, etc.). The user can select a name in the sharing list and share the selected picture to the device corresponding to the name.
  • the sharing list includes a button 103 of "User 1's mobile phone" and a button 104 of "User 2's tablet”.
  • “User 1's mobile phone” and “User 2's tablet” are the names of the devices stored in the mobile phone 100 that have established a wireless connection with the mobile phone 100 .
  • “User 1's mobile phone” is the name of the mobile phone 300
  • “User 2's tablet” is the name of the tablet 400.
  • the mobile phone 100 and the mobile phone 300 discover each other through short-range communication (NFC, Bluetooth, etc.), and establish a Wi-Fi channel.
  • the mobile phone 100 receives the user's operation of selecting the "User 1's mobile phone” button 103, and determines the corresponding device (mobile phone 300) according to the device identifier corresponding to "User 1's mobile phone".
  • the tablet 400 does not have functions such as Bluetooth or NFC enabled.
  • the mobile phone 100 receives the user's operation of selecting the button 104 of the "tablet of user 2", and determines the corresponding device (tablet 400) according to the device identifier corresponding to the "tablet of user 2".
  • the mobile phone 100 determines that the tablet 400 cannot be discovered by means of short-range communication (such as Bluetooth, NFC, etc.).
  • the mobile phone 100 sends the picture 102 to the tablet 400 through the Internet based on TCP.
  • the device 100 when the device 100 sends application data to the device 200, the device 100 discovers the device 200 through short-range communication, and then establishes a Wi-Fi channel (for example, Wi-Fi P2P mode or Wi-Fi AP mode or Wi-Fi Fi STA mode channel), the device 100 sends application data to the device 200 through the established Wi-Fi channel based on the simplified transmission protocol.
  • a Wi-Fi channel for example, Wi-Fi P2P mode or Wi-Fi AP mode or Wi-Fi Fi STA mode channel
  • the interface 101 of the mobile phone 100 includes multiple pictures. Users can select an image and share the image to other devices. For example, the user clicks on the picture 102, and the picture 102 is selected.
  • the interface 101 also includes a share list, and the share list includes one or more names (eg, device name, user name, etc.). The user can select a name in the sharing list and share the selected picture to the device corresponding to the name.
  • Interface 101 also includes a "more" button 105 . The user can select the "more" button 105 to find devices that can be mutually discovered with the cell phone 100 .
  • the user clicks on picture 102, selects picture 102; and clicks on "more” button 105.
  • the mobile phone 100 receives the user's operation of clicking the "more” button 105, and searches for devices through short-range communication (such as Bluetooth, NFC, etc.). For example, the mobile phone 100 discovers each other with the mobile phone 500 through Bluetooth, and displays a button 106 of "User 3's mobile phone" on the interface 101 . The user clicks the "User 3's mobile phone” button 106 and selects the "User 3's mobile phone” button 106 .
  • the mobile phone 100 receives the user's operation of selecting the "User 3's mobile phone” button 106, and determines the corresponding device (mobile phone 500) according to the device identifier corresponding to "User 3's mobile phone”; establishes a Wi-Fi channel with the mobile phone 500 (such as Wi-Fi P2P mode channel).
  • the mobile phone 100 sends the picture 102 to the mobile phone 500 through the established Wi-Fi channel based on the simplified transmission protocol.
  • the application of the sending device calls the system framework interface to send data to the receiving device;
  • the input parameters include indication information, which is used to indicate the device of the receiving device (such as device 200 ) logo.
  • the scene identification unit determines the wireless transmission mode according to the device identification of the receiving device; the wireless transmission mode includes near-field high-speed transmission (Wi-Fi channel transmission) and non-near-field high-speed transmission.
  • a near-field high-speed transmission channel such as a Wi-Fi direct connection channel or a Wi-Fi channel in a local area network
  • the receiving device and the sending device communicate through NFC, Bluetooth, infrared and other near-field communication methods are found to establish a near-field high-speed transmission channel; or the receiving device and the sending device belong to a converged network or trust ring including near-field high-speed transmission; then the wireless transmission method is determined to be near-field high-speed transmission.
  • the scene recognition unit determines that it is near-field high-speed transmission, it sends data to the receiving device based on the simplified transmission protocol; and reduces the delay of near-field high-speed transmission under the condition of ensuring the reliability of data transmission. If the scene recognition unit determines that it is non-near-field high-speed transmission, it sends data to the receiving device based on other transport layer protocols; for example, TCP can be used to ensure data transmission reliability; for example, user datagram protocol (UDP) can be used. , to respond quickly and ensure low latency of data transmission.
  • TCP can be used to ensure data transmission reliability
  • UDP user datagram protocol
  • the Simplified Transport Protocol is a reliable server/client (C/S) mode transport protocol.
  • C/S server/client
  • one or more socket (socket) channels are established between a sending device (client) and a receiving device (server).
  • client sending device
  • server receiving device
  • Table 1 shows an example of an interface function for creating a server socket and an interface function for creating a client socket.
  • the receiving device calls StartServer() to create a server and returns the socket identifier; the sending device calls StartClient() to create a client that communicates with the server and returns the socket identifier to establish a socket channel between the sending device and the receiving device. For example, a socket channel is established for each service on the sending device.
  • the sending device also saves the correspondence between the device identifier of the receiving device and the socket identifier.
  • the application on the sending device calls the data sending interface of the simplified transmission protocol to send data to the receiving device.
  • Application data includes data types such as message data, byte data, stream data, or file data.
  • message data, byte data, stream data and file data respectively provide a data sending interface.
  • An application can call the message sending interface of the simplified transmission protocol to transmit message data, call the byte sending interface of the simplified transmission protocol to transmit byte data, call the stream sending interface of the simplified transmission protocol to transmit stream data, or call the file sending interface of the simplified transmission protocol to transmit file data.
  • Table 2 shows an example of a data sending interface function that simplifies the transmission protocol.
  • a data sending interface function can also be provided for sending message data, byte data, stream data or file data; the input parameter of the data sending interface function includes a data type, which is used to indicate the sent data.
  • Application data is message data, byte data, stream data or file data.
  • the receiving device may call the interface provided by the system framework to set the storage path of the received application data.
  • Table 3 shows an example of an interface function for setting the application data storage path on the receiving device.
  • the interface function may be in other forms.
  • the input parameters of the file sending interface may include application data storage path parameters.
  • the storage path of the file data on the server can be specified.
  • the simplified transmission protocol includes a priority control mechanism, that is, application data is sent according to the order of sending priority from high to low.
  • the sending priority of the application data is determined according to the data type of the application data.
  • the order of sending priority of application data from high to low is: message data>stream data>byte data>file data.
  • the application data to be sent in the application data sending queue is sorted in descending order of sending priority, and application data with a higher sending priority is sent first.
  • the data to be sent of the same application is sorted in descending order of sending priority, that is, the data to be sent of each application is sorted according to the order of sending priority from high to low.
  • the data to be sent of different applications in the sending queue are sorted in descending order of sending priority. This can prevent large file data or byte data from occupying high bandwidth for a long time, which affects the timely sending of messages.
  • a video on a mobile phone is sent to a large screen for playback using streaming, and the data type of the video is stream data.
  • the mobile phone sends control messages such as volume adjustment and playback progress adjustment to the large screen. Since the sending priority of message data is higher than the sending priority of streaming data, control message data such as volume adjustment and playback progress adjustment are sent prior to unsent video stream data, so it is possible to adjust the volume and playback progress during video playback. and so on, to ensure that the control message is sent in time.
  • the simplified transport protocol includes a message acknowledgment mechanism.
  • the simplified transmission protocol divides the application data to be sent into data packets, and numbers each data packet. If the receiving device confirms that it has not received the Nth data packet of the application data from the sending device, it sends a first message (such as a Non-acknowledge (NACK) message) to the sending device; the first message includes the unreceived data packet 's number.
  • the sending device receives the first message, and according to the serial number of the unreceived data message in the first message, retransmits the data message corresponding to the serial number to the receiving device.
  • NACK Non-acknowledge
  • each data packet of the application data to be sent on the sending device is numbered, and is written into the sending queue for sending according to the serial number.
  • the receiving device sorts the received data packets according to the number and writes them into the receiving queue; if the numbers of the data packets in the receiving queue are consecutive, the data packets in the receiving queue are sequentially written into the buffer area read by the service; If the numbers of the data packets in the receiving queue are discontinuous, the receiving device replies with a NACK message, which includes the numbers of the data packets that have not been received. After receiving the NACK message, the sending device resends the corresponding data message according to the number in the NACK message.
  • the packet loss rate in the near-field high-speed transmission scenario is relatively low. Compared with the mechanism of confirming each message in TCP, in the near-field high-speed transmission scenario, the use of the packet acknowledgment mechanism that simplifies the transmission protocol can reduce the number of sending and receiving devices. The number of message interactions between.
  • the simplified transport protocol includes a congestion control mechanism.
  • the unit time exemplarily, calculated in seconds
  • the congestion window is increased (for example, the congestion window is adjusted to twice the current congestion window).
  • the congestion window is reduced (for example, the congestion window is adjusted to half the amount of data transmitted by the network in the current unit time).
  • the congestion window is reduced by the first duration, it does not satisfy that the amount of data transmitted by the network within a unit time (exemplarily, calculated in seconds) is less than the second preset threshold, and it does not satisfy that the first message is received within a unit time.
  • the number of (eg NACK messages) is greater than the third preset threshold, and the application data transmission rate is increased (for example, the application data transmission rate is increased by 50%).
  • the larger the congestion window the larger the number of data packets sent at one time, that is, the higher the application data sending rate.
  • the simplified transmission protocol may further include: performing load balancing on different socket channels of near-field high-speed transmission, dynamically adjusting the bandwidth of one socket channel, and the like.
  • the simplified transmission protocol may also include load balancing for different physical links (eg, Wi-Fi direct connection channel, Wi-Fi channel between devices in a local area network, etc.) for near-field high-speed transmission, or multi-channel transmission.
  • the Simplified Transport Protocol adds a Simplified Transport Protocol header to each data packet.
  • the simplified transport protocol header reduces at least one of the following fields:
  • the transport layer header of the simplified transport protocol is reduced by at least one of the following fields compared to the transmission control protocol (transmission control protocol, TCP) header: acknowledgment number (32bit), header length (4bit), reserved field (6bit), Flag bit field (U, A, P, R, S, F) (6bit), checksum (16bit), urgent pointer (16bit), option (0 to 40 bytes).
  • TCP transmission control protocol
  • TCP packet header is shown in Table 4, and the transport layer packet header of a simplified transmission protocol is shown in Table 5.
  • IP Internet protocol
  • IP packet header is shown in Table 6, and the network layer packet header of a simplified transmission protocol is shown in Table 7.
  • the transport layer header of the simplified transport protocol has the acknowledgment number removed from the TCP header.
  • the acknowledgment number is used in the message acknowledgment mechanism of TCP.
  • the sending device sends a message to the receiving device based on TCP, and the acknowledgment number in the message header of the message is 1, which is used to instruct the receiving device to reply an ACK message to the sending device after receiving the message.
  • the receiving device receives the message and determines that the acknowledgement number in the header of the received message is 1, it returns an ACK message to the sending device; the value of the acknowledgement number in the message header in the ACK message is the value of The sum of the value of the data number and the data length of the message.
  • the packet header of the transport layer of the simplified transmission protocol does not include an acknowledgment number.
  • the sending device and the receiving device can delete the above-mentioned packet based on the acknowledgment number. The processing of the confirmation mechanism.
  • the packet header of the simplified transmission protocol includes a 16-bit (ie, 2-byte) checksum.
  • the simplified transmission protocol packet header can save 16-96 bytes, which can increase the amount of data carried by the data packet and improve the effective load rate of the data packet.
  • the data packet is based on the simplified transmission protocol kernel, and the simplified transmission protocol is added. After the packet header, it is sent to the receiving device through the physical link. Transmission of application data based on the simplified transmission protocol can avoid the complicated confirmation mechanism, retransmission mechanism and congestion control mechanism of TCP, and reduce the delay of near-field high-speed transmission.
  • the congestion control mechanism and/or the message confirmation mechanism of the simplified transmission protocol can be sent to the receiver through the physical link after adding the UDP header based on the UDP kernel. equipment.
  • the congestion control mechanism and/or the message confirmation mechanism of the simplified transmission protocol may be sent to the receiver through the physical link after adding a TCP header based on the TCP kernel. equipment.
  • the above-mentioned device includes corresponding hardware structures and/or software modules for executing each function.
  • the embodiments of the present application can be implemented in hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the embodiments of the present application.
  • the above-mentioned device may be divided into functional modules according to the above-mentioned method example.
  • each functional module may be divided into each function, or two or more functions may be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware, and can also be implemented in the form of software function modules. It should be noted that, the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and there may be other division manners in actual implementation.
  • the device 700 includes: a processing unit 701 , a storage unit 702 and a communication unit 703 .
  • the processing unit 701 is used to control and manage the actions of the device 700 .
  • it can be used to determine the wireless transmission mode, process application data based on simplified transmission protocols (for example, perform priority control on application data, perform congestion control on application data, perform packet confirmation, etc.), process application data based on TCP, and process application data based on UDP Process application data, and/or other processing steps in the embodiments of the present application.
  • the storage unit 702 is used to store program codes and data of the device 700 . For example, it can be used to save the correspondence between the identifier of the receiving device and the identifier of the socket, and the like.
  • the communication unit 703 is used to support the device 700 to communicate with other electronic devices. For example, it can be used to discover each other with the receiving device, establish a Wi-Fi direct connection; or access a local area network; or send application data to the receiving device through near-field high-speed transmission.
  • the unit modules in the above-mentioned device 700 include but are not limited to the above-mentioned processing unit 701 , storage unit 702 and communication unit 703 .
  • the device 700 may further include a display unit, a power supply unit, and the like.
  • the display unit is used to display the interface of the device 700
  • the power supply unit is used to supply power to the device 700 .
  • the processing unit 701 may be a processor or a controller, for example, a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC) ), field programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
  • the storage unit 702 may be a memory.
  • the communication unit 703 may be a transceiver, a transceiver circuit, or the like.
  • the processing unit 701 is a processor (the processor 110 shown in FIG. 4 ), the storage unit 702 may be a memory (the internal memory 121 shown in FIG. 4 ), and the communication unit 703 may be referred to as a communication interface, including mobile communication A module (the mobile communication module 150 shown in FIG. 4 ) and a wireless communication module (the wireless communication module 160 shown in FIG. 4 ).
  • the device 700 provided in this embodiment of the present application may be the device 100 shown in FIG. 4 .
  • the above-mentioned processors, memories, communication interfaces, etc. can be connected together, for example, connected by a bus.
  • Embodiments of the present application further provide a computer-readable storage medium, where computer program codes are stored in the computer-readable storage medium, and when the processor executes the computer program codes, the electronic device executes the methods in the foregoing embodiments.
  • Embodiments of the present application also provide a computer program product, which when the computer program product runs on a computer, causes the computer to execute the method in the above-mentioned embodiments.
  • the device 700, the computer-readable storage medium, or the computer program product provided in the embodiments of the present application are all used to execute the corresponding methods provided above. Therefore, for the beneficial effects that can be achieved, reference may be made to the corresponding methods provided above. The beneficial effects of the method are not repeated here.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be Incorporation may either be integrated into another device, or some features may be omitted, or not implemented.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware, and can also be implemented in the form of software functional units.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a readable storage medium.
  • the technical solutions of the embodiments of the present application can be embodied in the form of software products in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, which are stored in a storage medium , including several instructions to make a device (may be a single chip microcomputer, a chip, etc.) or a processor (processor) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: a U disk, a removable hard disk, a ROM, a magnetic disk, or an optical disk and other mediums that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供了一种数据传输方法及设备,涉及终端领域。在第一设备已经与第二设备建立了Wi-Fi通道,或第一设备可以与第二设备建立Wi-Fi通道的情况下,第一设备基于比TCP简化的传输协议,通过Wi-Fi通道向第二设备发送应用数据。由于简化传输协议可以避开TCP繁琐的内核报文转发流程,基于简化传输协议发送应用数据可以降低近场传输时延,提升近场传输吞吐量。

Description

一种数据传输方法及设备
本申请要求于2021年04月26日提交国家知识产权局、申请号为202110456191.2、申请名称为“一种高性能近场通信方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请要求于2021年07月31日提交国家知识产权局、申请号为202110877284.2、申请名称为“一种数据传输方法及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及终端领域,尤其涉及一种数据传输方法及设备。
背景技术
随着设备形态越来越丰富,多设备协同工作场景越来越多。由于传输控制协议(transmission control protocol,TCP)具备较完善地确认机制、重传机制和拥塞控制机制等,为了保证设备之间数据交互的可靠性,设备之间传输数据时一般使用内核的TCP协议栈,经过内核报文转发流程进行传输。
但是,正是由于TCP具备较完善地确认机制、重传机制和拥塞控制机制等,基于内核的TCP传输数据需经过繁琐的内核报文转发流程,数据传输时延较大。
发明内容
本申请提供一种数据传输方法及设备,在近场高速传输时,基于简化传输协议发送数据,而不使用内核的TCP进行报文转发,降低近场传输时延,提升近场传输吞吐量。
第一方面,本申请实施例提供一种数据传输方法,该方法可以包括:第一设备向第二设备发送应用数据时,若第一设备与第二设备已建立第一无线保真Wi-Fi通道,则第一设备基于简化传输协议,通过第一Wi-Fi通道向第二设备发送所述应用数据;或者,若第一设备通过近距离通信方式发现第二设备,则建立第二无线保真Wi-Fi通道,并基于简化传输协议通过第二Wi-Fi通道向第二设备发送应用数据;其中,简化传输协议的传输层报文头比传输控制协议报文头缩减以下至少一个字段:确认号,头部长度,保留字段,标志位字段,校验和,紧急指针,可选项;和/或,简化传输协议的网络层报文头比网络协议报文头缩减以下至少一个字段:标识,标志位,段偏移,协议,校验和,可选项。
在该方法中,如果第一设备确定是近场高速传输场景(第一设备已经与第二设备建立了Wi-Fi通道,或第一设备可以与第二设备建立Wi-Fi通道),则基于简化传输协议进行数据传输。由于近场高速传输属于短肥管道(带宽高、传输距离近),丢包率很低,不需要TCP复杂的确认机制、重传机制和拥塞控制机制等;近场高速传输时采用简化传输协议,可以避免使用TCP传输数据而进行繁琐的报文转发流程,降低近场高速传输的时延。
结合第一方面,在一种可能的设计方式中,第一设备通过近距离通信方式发现第二设备,并建立第一设备和所述第二设备间的第一Wi-Fi通道;第一设备接收用户将第一设备的应用数据分享至第二设备的第一操作,响应于第一操作,第一设备基于简化传输协议,通过第一Wi-Fi通道向第二设备发送应用数据。该场景即第一设备向第二设备发送应用数据时,第一设备已经与第二设备建立了Wi-Fi通道。
结合第一方面,在一种可能的设计方式中,第一设备接收用户分享第一设备的应用数据的第二操作,响应于第二操作,第一设备通过近距离通信方式发现第二设备,并建立第一设备和第二设备间的第二Wi-Fi通道;第一设备接收用户将第一设备的应用数据分享至第二设备的第三操作,响应于第三操作,第一设备基于简化传输协议,通过第二Wi-Fi通道向第二设备发送应用数据。该场景即,第一设备未与第二设备建立Wi-Fi通道。第一设备向第二设备发送应用数据时,第一设备与第二设备通过近距离通信方式互相发现,并建立Wi-Fi通道。
结合第一方面,在一种可能的设计方式中,Wi-Fi通道包括基于Wi-Fi P2P模式的通道,或基于Wi-Fi AP模式的通道,或基于Wi-Fi STA模式的通道。
结合第一方面,在一种可能的设计方式中,近距离通信方式包括NFC,蓝牙或红外。
结合第一方面,在一种可能的设计方式中,第一设备向第二设备发送应用数据之前,第一设备按照发送优先级从高到低的顺序对第一设备的应用数据排序。其中,发送优先级是根据应用数据的数据类型确定的,数据类型包括消息数据,流数据,字节数据和文件数据。以下数据类型的发送优先级从高到低依次为:消息数据,流数据,字节数据,文件数据。
这样可以避免较大的文件数据或字节数据长时间占用高带宽,影响消息及时发送。比如,手机上的视频使用流传输发送到大屏播放,视频的数据类型为流数据。流数据发送过程中,手机向大屏发送调节音量、调节播放进度等控制类消息。由于消息数据的发送优先级大于流数据发送优先级,调节音量、调节播放进度等控制类消息数据优先于未发送的视频流数据进行发送,可以实现在视频播放过程中,调节音量、调节播放进度等,保证控制消息及时发送。
结合第一方面,在一种可能的设计方式中,第一设备从第二设备接收第一消息;并根据第一消息中的数据报文编号,向第二设备重新发送该数据报文编号对应的数据报文。
在该方法中,简化传输协议将待发送的应用数据分割为数据报文,对每个数据报文进行编号。如果接收设备确认未从发送设备接收到应用数据的第N个数据报文,向发送设备发送第一消息,第一消息包括未接收到的数据报文的编号。也就是说,第二设备不需要每次接收到报文都向第一设备发送ACK;而是确定丢包时,向第一设备发送一次NACK。一般来说,近场高速传输场景丢包率较低,相比TCP中对每条消息进行确认的机制,使用简化传输协议的报文确认机制可以减少发送设备和接收设备之间的消息交互数量。
结合第一方面,在一种可能的设计方式中,第一设备还根据待发送的应用数据数量和单位时间内接收的第一消息数量调整发送数据报文的拥塞窗口。
第二方面,本申请提供一种设备,该设备可以实现第一方面及其可能的设计方式中所述的数据传输方法,其可以通过软件、硬件、或者通过硬件执行相应的软件实现上述方法。在一种可能的设计中,该设备可以包括通信接口,处理器和存储器;其中,存储器包括内存和外部存储。该处理器被配置为支持该设备执行上述第一方面及其可能的设计方式中相应的功能。存储器用于与处理器耦合,其保存该设备必要的程序指令和数据。
第三方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如上述第一方面及其可能的设计方式中所述的数据传输方法。
第四方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如上述第一方面及其可能的设计方式中所述的数据传输方法。
第五方面,本申请实施例提供一种通信系统,包括实现上述第一方面及其可能的设计方式中相应方法的设备。
第二方面所述的设备,第三方面所述的计算机可读存储介质,第四方面所述的计算机程序产品以及第五方面所述的通信系统所带来的技术效果可参见上述对应的方法所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的数据传输方法所适用的系统架构示意图;
图2为本申请实施例提供的数据传输方法所适用的系统架构示意图;
图3为本申请实施例提供的数据传输方法所适用的系统架构示意图;
图4为本申请实施例提供的设备硬件结构示意图;
图5为本申请实施例提供的数据传输方法的一种场景实例示意图;
图6为本申请实施例提供的数据传输方法的一种场景实例示意图;
图7为本申请实施例提供的数据传输方法示意图;
图8为本申请实施例提供的数据传输方法示意图;
图9为本申请实施例提供的一种设备的结构组成示意图。
具体实施方式
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他 一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请实施例提供一种数据传输方法,适用于图1所示系统。如图1所示,该系统包括设备100和设备200,设备100通过无线通信方式向设备200发送数据。上述设备100或设备200可以包括手机、平板电脑、笔记本电脑、个人电脑(personal computer,PC)、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、智能家居设备(比如,智能电视、智慧屏、大屏、智能音箱等)、个人数字助理(personal digital assistant,PDA)、可穿戴设备(比如,智能手表、智能手环等)、车载设备、虚拟现实设备等,本申请实施例对此不做任何限制。上述无线通信包括移动通信,互联网,无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信(near field communication,NFC),红外(infrared,IR)等。
设备100通过无线传输向设备200发送数据。本申请实施例提供的数据传输方法,如果设备100向设备200发送数据的无线传输方式为近场高速传输,则基于简化传输协议进行数据传输。如果设备100向设备200发送数据的无线传输方式为非近场高速传输,基于其他传输层协议(比如TCP)进行数据传输。由于近场高速传输属于短肥管道(带宽高、传输距离近),丢包率很低,不需要TCP复杂的确认机制、重传机制和拥塞控制机制等;近场高速传输时采用简化传输协议,可以避免使用TCP传输数据而进行繁琐的报文转发流程,降低近场高速传输的时延。
上述近场高速传输包括Wi-Fi直连(也称为Wi-Fi Direct,或Wi-Fi P2P)传输,或无线局域网这种跳转较少的网络传输,或不需要运营商网络参与的高速传输方式等。
一种示例中,如图2所示,手机和平板电脑建立Wi-Fi直连通道,通过Wi-Fi直连通道进行数据交互,即手机和平板电脑通过近场高速传输交互数据。
另一种示例中,如图3所示,手机、平板电脑、电视、PC等设备接入同一个路由器,组成局域网。局域网内设备之间的数据交互,即近场高速传输。可以理解的,局域网内设备之间进行数据交互包括局域网内设备之间通过路由器转发数据,进行数据交互。需要说明的是,图3以手机、平板电脑、电视、PC等设备接入同一个路由器,组成局域网为例进行示例。在另一些示例中,一个局域网内可以包括多个路由器,该局域网内设备属于同一网段。近场高速传输包括同一局域网内接入不同路由器的设备 之间的数据交互。局域网内的设备之间建立Wi-Fi通道,通过Wi-Fi通道进行数据传输。在一些示例中,接入局域网的设备启动Wi-Fi接入点(access point,AP)模式,建立Wi-Fi通道;在另一些示例中,接入局域网的设备启动Wi-Fi站点(station,STA)模式,建立Wi-Fi通道。
需要说明的是,在一些场景中,设备100和设备200之间可以既建立Wi-Fi直连通道,也建立局域网内Wi-Fi通道。
非近场高速传输包括远场传输;比如,该局域网内手机、平板电脑、电视或PC与不属于该局域网的设备进行数据交互。非近场高速传输还包括近场低速传输;比如,手机通过蓝牙向PC发送数据。
示例性的,图4示出上述设备100的一种结构示意图。如图4所示,上述设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,传感器模块170等。其中传感器模块可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
可以理解的是,本申请实施例示意的结构并不构成对设备100的具体限定。在本申请另一些实施例中,设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。MIPI接口可以被用于连接处理器110与外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为设备100充电,也可以用于设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对设备100的结构限定。在本申请另一些实施例中,设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出 去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备输出声音信号,或通过显示屏显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在设备100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。设备100可以支持一种或多种视频编解码器。这样,设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
内部存储器121可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5SDRAM)等。
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(universal flash storage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展设备100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
下面结合附图对本申请实施例提供的数据传输方法进行详细介绍。
示例性的,设备100向设备200发送设备100上应用的数据;即设备100是发送设备,设备200是接收设备。
在一种场景中,设备100向设备200发送应用数据时,设备100和设备200之间已经建立了Wi-Fi通道(比如,Wi-Fi P2P模式或Wi-Fi AP模式或Wi-Fi STA模式通道),设备100基于简化传输协议,通过已经建立的Wi-Fi通道向设备200发送应用数据。
示例性的,如图5所示,手机100的界面101包括多张图片。用户可以选中一张图片,将该图片分享至其他设备。比如,用户点击图片102,选中图片102。界面101还包括分享列表,分享列表包括一个或多个名称(比如设备名称,用户名称等)。用户可以选中分享列表中一个名称,将选中的图片分享至该名称对应的设备。示例性的,分享列表包括“用户1的手机”按钮103和“用户2的平板”按钮104。“用户1的手机”和“用户2的平板”是手机100保存的与手机100建立过无线连接的设备的名称。比如,“用户1的手机”是手机300的名称,“用户2的平板”是平板400的名称。
在一种示例中,手机100和手机300通过近距离通信方式(NFC、蓝牙等)互相发现,并建立了Wi-Fi通道。用户点击图片102,选中图片102;并点击“用户1的手机”按钮103,选中“用户1的手机”按钮103。手机100接收到用户选中“用户1的手机”按钮103的操作,根据“用户1的手机”对应的设备标识确定对应的设备(手机300)。手机100确定已经与手机300建立了Wi-Fi通道,则基于简化传输协议,通过该已经建立的Wi-Fi通道向手机300发送图片102。
在一种示例中,平板400未启动蓝牙或NFC等功能。用户点击图片102,选中图片102;并点击“用户2的平板”按钮104,选中“用户2的平板”按钮104。手机100 接收到用户选中“用户2的平板”按钮104的操作,根据“用户2的平板”对应的设备标识确定对应的设备(平板400)。手机100确定不能通过近距离通信方式(比如蓝牙、NFC等)发现平板400。手机100基于TCP,通过互联网向平板400发送图片102。
在一种场景中,设备100向设备200发送应用数据时,设备100通过近距离通信方式发现设备200,则建立Wi-Fi通道(比如,Wi-Fi P2P模式或Wi-Fi AP模式或Wi-Fi STA模式通道),设备100基于简化传输协议,通过建立的Wi-Fi通道向设备200发送应用数据。
示例性的,如图6所示,手机100的界面101包括多张图片。用户可以选中一张图片,将该图片分享至其他设备。比如,用户点击图片102,选中图片102。界面101还包括分享列表,分享列表包括一个或多个名称(比如设备名称,用户名称等)。用户可以选中分享列表中一个名称,将选中的图片分享至该名称对应的设备。界面101还包括“更多”按钮105。用户可以选中“更多”按钮105,查找可以与手机100互相发现的设备。
在一种示例中,用户点击图片102,选中图片102;并点击“更多”按钮105。手机100接收到用户点击“更多”按钮105的操作,通过近距离通信方式(比如蓝牙、NFC等)搜索设备。比如,手机100通过蓝牙与手机500互相发现,在界面101显示“用户3的手机”按钮106。用户点击“用户3的手机”按钮106,选中“用户3的手机”按钮106。手机100接收到用户选中“用户3的手机”按钮106的操作,根据“用户3的手机”对应的设备标识确定对应的设备(手机500);与手机500建立Wi-Fi通道(比如Wi-Fi P2P模式通道)。手机100基于简化传输协议,通过该建立的Wi-Fi通道向手机500发送图片102。
在一种实现方式中,如图7所示,发送设备(比如设备100)的应用调用系统框架接口向接收设备发送数据;输入参数包括指示信息,用于指示接收设备(比如设备200)的设备标识。系统框架中场景识别单元根据接收设备的设备标识确定无线传输方式;无线传输方式包括近场高速传输(Wi-Fi通道传输)和非近场高速传输。在一种实现方式中,如果确定接收设备与发送设备建立了近场高速传输通道(比如Wi-Fi直连通道或局域网内Wi-Fi通道);或者接收设备与发送设备通过NFC、蓝牙、红外等近距离通信方式发现,以建立近场高速传输通道;或者接收设备与发送设备属于包括近场高速传输的融合组网或信任环;则确定无线传输方式为近场高速传输。如果场景识别单元确定是近场高速传输,基于简化传输协议向接收设备发送数据;在保证数据传输可靠性的条件下降低近场高速传输的时延。如果场景识别单元确定是非近场高速传输,基于其他传输层协议向接收设备发送数据;比如,可以采用TCP,以保证数据传输可靠性;比如,可以采用用户数据报协议(user datagram protocol,UDP),以快速响应,保证数据传输的低时延。
简化传输协议是一种可靠的服务器/客户端(C/S)模式传输协议。在一种实现方式中,在发送应用数据之前,发送设备(客户端)和接收设备(服务端)之间建立一个或多个套接字(socket)通道。示例性的,表1示出一种创建服务端socket的接口函数和创建客户端socket的接口函数示例。
表1
Figure PCTCN2022084184-appb-000001
接收设备调用StartServer(),创建服务端并返回socket标识;发送设备调用StartClient(),创建与服务端通信的客户端并返回socket标识,建立发送设备和接收设备之间的一个socket通道。比如,发送设备上每个业务对应建立一个socket通道。发送设备还保存接收设备的设备标识与socket标识的对应关系。
socket通道建立之后,发送设备上的应用调用简化传输协议的数据发送接口,向接收设备发送数据。应用数据包括消息数据,字节数据,流数据或文件数据等数据类型。在一种实现方式中,消息数据,字节数据,流数据和文件数据分别提供一个数据发送接口。应用可以调用简化传输协议的消息发送接口传输消息数据,调用简化传输协议的字节发送接口传输字节数据,调用简化传输协议的流发送接口传输流数据,或调用简化传输协议的文件发送接口传输文件数据。
示例性的,表2示出简化传输协议的数据发送接口函数的一种示例。
表2
Figure PCTCN2022084184-appb-000002
在另一种实现方式中,也可以提供一个数据发送接口函数,用于发送消息数据,字节数据,流数据或文件数据;该数据发送接口函数的输入参数包括数据类型,用于指示发送的应用数据是消息数据,字节数据,流数据或文件数据。
可选的,接收设备可以调用系统框架提供的接口设置接收到应用数据的保存路径。示例性的,表3示出设置接收设备上应用数据存储路径的接口函数的一种示例。
表3
Figure PCTCN2022084184-appb-000003
需要说明的是,上述各个接口函数仅是一种示例。在另一些实施例中,接口函数可以是其他的形式。比如,文件发送接口的输入参数可以包括应用数据存储路径参数,客户端调用文件发送接口发送文件数据时,可以指定该文件数据在服务端的存储路径。
在一种实现方式中,简化传输协议包括优先级控制机制,即按照发送优先级从高到低的顺序发送应用数据。比如,根据应用数据的数据类型确定应用数据的发送优先级。示例性的,应用数据的发送优先级从高到低的顺序为:消息数据>流数据>字节数据>文件数据。在一种实现方式中,根据优先级控制机制,将应用数据发送队列中待发送的应用数据按照发送优先级从高到低的顺序进行排序,发送优先级高的应用数据优先发送。一种示例中,将同一应用的待发送数据按照发送优先级从高到低的顺序进行排序,即将各个应用的待发送数据分别按照发送优先级从高到低的顺序进行排序。另一种示例中,将发送队列中不同应用的待发送数据按照发送优先级从高到低的顺序进行排序。这样可以避免较大的文件数据或字节数据长时间占用高带宽,影响消息及时发送。比如,手机上的视频使用流传输发送到大屏播放,视频的数据类型为流数据。流数据发送过程中,手机向大屏发送调节音量、调节播放进度等控制类消息。由于消息数据的发送优先级大于流数据发送优先级,调节音量、调节播放进度等控制类消息数据优先于未发送的视频流数据进行发送,可以实现在视频播放过程中,调节音量、调节播放进度等,保证控制消息及时发送。
在一种实现方式中,简化传输协议包括报文确认机制。简化传输协议将待发送的应用数据分割为数据报文,对每个数据报文进行编号。如果接收设备确认未从发送设备接收到应用数据的第N个数据报文,向发送设备发送第一消息(比如Non-acknowledge(NACK)消息);其中第一消息包括未接收到的数据报文的编号。发送设备接收到第一消息,根据第一消息中未接收到的数据报文的编号,向接收设备重发该编号对应的数据报文。示例性的,对发送设备上待发送应用数据的每个数据报文进行编号,按照编号顺序写入发送队列进行发送。接收设备对接收到的每个数据报文按照编号排序后写入接收队列;如果接收队列中数据报文的编号是连续的,将接收队列中数据报文依次写入业务读取的缓存区;如果接收队列中数据报文的编号是不连续的,接收设备回复NACK消息,其中包括未接收到的数据报文的编号。发送设备接收到NACK消息,按照NACK消息中的编号,重新发送对应的数据报文。一般来说,近场高速传输场景丢包率较低,相比TCP中对每条消息进行确认的机制,在近场高速传输场景使用简化传输协议的报文确认机制可以减少发送设备和接收设备之间的消息交互数量。
在一种实现方式中,简化传输协议包括拥塞控制机制。发送设备根据应用数据发 送队列待发送数据量及接收到第一消息的数量动态调整拥塞窗口。在一种示例中,如果应用数据发送队列待发送数据量大于M(M为预设值,比如M=10)倍单位时间(示例性的,以秒计算)内网络传输数据量,且单位时间内接收到第一消息(比如NACK消息)的数量小于第一预设阈值(比如10),增大拥塞窗口(比如,将拥塞窗口调整至当前拥塞窗口的2倍)。在一种示例中,如果单位时间(示例性的,以秒计算)内网络传输数据量小于第二预设阈值,或单位时间内接收到第一消息(比如NACK消息)的数量大于第三预设阈值(第三预设阈值可以与第一预设阈值相同或不同),减小拥塞窗口(比如,将拥塞窗口调整至当前单位时间内网络传输数据量的一半)。可选的,如果拥塞窗口减小第一时长后,不满足单位时间(示例性的,以秒计算)内网络传输数据量小于第二预设阈值,且不满足单位时间内接收到第一消息(比如NACK消息)的数量大于第三预设阈值,提高应用数据发送速率(比如,将应用数据发送速率提升50%)。其中,拥塞窗口越大,一次发送的数据报文数量越大,即应用数据发送速率越高。
在另一些实现方式中,简化传输协议还可以包括:对近场高速传输的不同socket通道进行负载均衡,动态调整一个socket通道带宽等。简化传输协议还可以包括:对近场高速传输的不同物理链路(比如,Wi-Fi直连通道、局域网内设备间Wi-Fi通道等)进行负载均衡,或多通道传输等。
简化传输协议为每个数据报文添加简化传输协议报文头。一种示例中,相比TCP/IP报文头,简化传输协议报文头缩减以下至少一个字段:
a)简化传输协议的传输层报文头比传输控制协议(transmission control protocol,TCP)报文头缩减以下至少一个字段:确认号(32bit)、头部长度(4bit)、保留字段(6bit)、标志位字段(U、A、P、R、S、F)(6bit)、校验和(16bit)、紧急指针(16bit)、可选项(0~40字节)。
示例性的,TCP报文头如表4所示,一种简化传输协议的传输层报文头如表5所示。
表4
Figure PCTCN2022084184-appb-000004
表5
Figure PCTCN2022084184-appb-000005
b)简化传输协议的网络层报文头比网络协议(internet protocol,IP)报文头缩减以下至少一个字段:标识(16bit)、标志位(3bit)、段偏移(13bit)、协议(8bit)、校验和(16bit)、可选项(0~40字节)。
示例性的,IP报文头如表6所示,一种简化传输协议的网络层报文头如表7所示。
表6
Figure PCTCN2022084184-appb-000006
表7
Figure PCTCN2022084184-appb-000007
可以理解的,上述缩减是指对字段的直接去除。对字段直接去除,相应的,对这些去除的字段的处理流程也可以简化或删除。
比如,简化传输协议的传输层报文头相比TCP报文头去除了确认号。确认号用于TCP的报文确认机制。示例性的,发送设备基于TCP向接收设备发送报文,报文的报文头中确认号为1,用于指示接收设备在收到该报文后向发送设备回复ACK消息。接收设备接收到报文,确定接收的报文头中确认号为1,则向发送设备回复ACK消息;ACK消息中报文头的确认号的值为,接收到的报文的报文头中数据号的值与该报文的数据长度之和。可以理解的,简化传输协议的传输层报文头不包括确认号,相应的,发送设备基于简化传输协议向接收设备发送报文过程中,发送设备和接收设备可以删除上述基于确认号的报文确认机制的处理。
需要说明的是,在一种实现方式中,为保证报文头完整性,简化传输协议报文头包括一个16bit(即2字节)的校验和。这样,相对于TCP/IP报文头,简化传输协议报文头可节省16~96字节,可以提高数据报文携带数据量,提升数据报文的有效负载率。
在一些实施例中,如图8所示,应用数据基于简化传输协议的优先级控制机制、拥塞控制机制和/或报文确认机制处理后,数据报文基于简化传输协议内核,添加简化传输协议报文头后通过物理链路发送给接收设备。基于简化传输协议传输应用数据,可以避免TCP复杂的确认机制、重传机制和拥塞控制机制,降低近场高速传输的时延。
在另一些实施例中,应用数据基于简化传输协议的优先级控制机制、拥塞控制机制和/或报文确认机制处理后,可以基于UDP内核,添加UDP报文头后通过物理链路发送给接收设备。
在另一些实施例中,应用数据基于简化传输协议的优先级控制机制、拥塞控制机制和/或报文确认机制处理后,可以基于TCP内核,添加TCP报文头后通过物理链路发送给接收设备。
可以理解的是,上述设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在一种示例中,请参考图9,其示出了上述实施例中所涉及的设备的一种可能的结构示意图。该设备700包括:处理单元701,存储单元702和通信单元703。
其中,处理单元701,用于对设备700的动作进行控制管理。例如,可以用于判断无线传输方式,基于简化传输协议处理应用数据(比如,对应用数据进行优先级控制,对应用数据进行拥塞控制,进行报文确认等),基于TCP处理应用数据,基于UDP处理应用数据,和/或本申请实施例中其他处理步骤。
存储单元702用于保存设备700的程序代码和数据。例如,可以用于保存接收设备的标识与socket标识的对应关系等。
通信单元703用于支持设备700与其他电子设备通信。例如,可以用于与接收设备互相发现、建立Wi-Fi直连;或接入局域网;或通过近场高速传输向接收设备发送应用数据等。
当然,上述设备700中的单元模块包括但不限于上述处理单元701,存储单元702和通信单元703。例如,设备700中还可以包括显示单元、电源单元等。显示单元用于显示设备700的界面,电源单元用于对设备700供电。
其中,处理单元701可以是处理器或控制器,例如可以是中央处理器(central processing unit,CPU),数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。存储单元702可以是存储器。通信单元703可以是收发器、收发电路等。
例如,处理单元701为处理器(如图4所示的处理器110),存储单元702可以为存储器(如图4所示的内部存储器121),通信单元703可以称为通信接口,包括 移动通信模块(如图4所示的移动通信模块150)和无线通信模块(如图4所示的无线通信模块160)。本申请实施例所提供的设备700可以为图4所示的设备100。其中,上述处理器、存储器、通信接口等可以连接在一起,例如通过总线连接。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序代码,当处理器执行该计算机程序代码时,电子设备执行上述实施例中的方法。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述实施例中的方法。
其中,本申请实施例提供的设备700、计算机可读存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以使用硬件的形式实现,也可以使用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (22)

  1. 一种数据传输方法,应用于第一设备,其特征在于,所述方法包括:
    所述第一设备向第二设备发送应用数据时,
    若所述第一设备与所述第二设备已建立第一无线保真Wi-Fi通道,则所述第一设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据;
    或者,
    若所述第一设备通过近距离通信方式发现所述第二设备,则建立第二无线保真Wi-Fi通道,并基于简化传输协议通过所述第二Wi-Fi通道向所述第二设备发送所述应用数据;
    其中,所述简化传输协议包括:
    所述简化传输协议的传输层报文头比传输控制协议报文头缩减以下至少一个字段:
    确认号,头部长度,保留字段,标志位字段,校验和,紧急指针,可选项;
    和/或,
    所述简化传输协议的网络层报文头比网络协议报文头缩减以下至少一个字段:
    标识,标志位,段偏移,协议,校验和,可选项。
  2. 根据权利要求1所述的方法,其特征在于,所述若所述第一设备与所述第二设备已建立第一无线保真Wi-Fi通道,则所述第一设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据包括:
    所述第一设备通过近距离通信方式发现所述第二设备,并建立所述第一设备和所述第二设备间的第一Wi-Fi通道;
    所述第一设备接收用户将所述第一设备的应用数据分享至所述第二设备的第一操作,响应于所述第一操作,所述第一设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据。
  3. 根据权利要求1所述的方法,其特征在于,所述若所述第一设备通过近距离通信方式发现所述第二设备,则建立第二无线保真Wi-Fi通道,并基于简化传输协议通过所述第二Wi-Fi通道向所述第二设备发送所述应用数据包括:
    所述第一设备接收用户分享所述第一设备的应用数据的第二操作,响应于所述第二操作,所述第一设备通过近距离通信方式发现所述第二设备,并建立所述第一设备和所述第二设备间的第二Wi-Fi通道;
    所述第一设备接收用户将所述第一设备的应用数据分享至所述第二设备的第三操作,响应于所述第三操作,所述第一设备基于简化传输协议,通过所述第二Wi-Fi通道向所述第二设备发送所述应用数据。
  4. 根据权利要求1-3任意一项所述的方法,其特征在于,所述Wi-Fi通道包括基于Wi-Fi P2P模式通道,或基于Wi-Fi AP模式通道,或基于Wi-Fi STA模式通道。
  5. 根据权利要求1-4任意一项所述的方法,其特征在于,所述近距离通信方式包括NFC,蓝牙或红外。
  6. 根据权利要求1-5任意一项所述的方法,其特征在于,所述第一设备向所述第二设备发送所述应用数据之前,所述方法还包括:
    所述第一设备按照发送优先级从高到低的顺序对第一设备的应用数据排序。
  7. 根据权利要求6所述的方法,其特征在于,所述发送优先级是根据应用数据的数据类型确定的,所述数据类型包括消息数据,流数据,字节数据和文件数据。
  8. 根据权利要求7所述的方法,其特征在于,以下数据类型的发送优先级从高到低依次为:消息数据,流数据,字节数据,文件数据。
  9. 根据权利要求1-8任意一项所述的方法,其特征在于,所述方法还包括:
    所述第一设备从所述第二设备接收第一消息;
    所述第一设备根据所述第一消息中的数据报文编号,向所述第二设备重新发送所述数据报文编号对应的数据报文。
  10. 根据权利要求9所述的方法,其特征在于,所述方法还包括:
    所述第一设备根据待发送的应用数据数量和单位时间内接收的第一消息数量调整发送数据报文的拥塞窗口。
  11. 一种设备,其特征在于,所述设备包括:
    通信接口,存储器,所述存储器包括内存和外部存储;
    处理器,调用所述存储器中存储的一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述处理器执行时,使得所述设备执行:
    所述设备向第二设备发送应用数据时,
    若所述设备与所述第二设备已建立第一无线保真Wi-Fi通道,则所述设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据;
    或者,
    若所述设备通过近距离通信方式发现所述第二设备,则建立第二无线保真Wi-Fi通道,并基于简化传输协议通过所述第二Wi-Fi通道向所述第二设备发送所述应用数据;
    其中,所述简化传输协议包括:
    所述简化传输协议的传输层报文头比传输控制协议报文头缩减以下至少一个字段:
    确认号,头部长度,保留字段,标志位字段,校验和,紧急指针,可选项;
    和/或,
    所述简化传输协议的网络层报文头比网络协议报文头缩减以下至少一个字段:
    标识,标志位,段偏移,协议,校验和,可选项。
  12. 根据权利要求11所述的设备,其特征在于,所述若所述设备与所述第二设备已建立第一无线保真Wi-Fi通道,则所述设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据具体包括:
    所述设备通过近距离通信方式发现所述第二设备,并建立所述设备和所述第二设备间的第一Wi-Fi通道;
    所述设备接收用户将所述设备的应用数据分享至所述第二设备的第一操作,响应于所述第一操作,所述设备基于简化传输协议,通过所述第一Wi-Fi通道向所述第二设备发送所述应用数据。
  13. 根据权利要求11所述的设备,其特征在于,所述若所述设备通过近距离通信方式发现所述第二设备,则建立第二无线保真Wi-Fi通道,并基于简化传输协议通过 所述第二Wi-Fi通道向所述第二设备发送所述应用数据具体包括:
    所述设备接收用户分享所述设备的应用数据的第二操作,响应于所述第二操作,所述设备通过近距离通信方式发现所述第二设备,并建立所述设备和所述第二设备间的第二Wi-Fi通道;
    所述设备接收用户将所述设备的应用数据分享至所述第二设备的第三操作,响应于所述第三操作,所述设备基于简化传输协议,通过所述第二Wi-Fi通道向所述第二设备发送所述应用数据。
  14. 根据权利要求11-13任意一项所述的设备,其特征在于,所述Wi-Fi通道包括基于Wi-Fi P2P模式通道,或基于Wi-Fi AP模式通道,或基于Wi-Fi STA模式通道。
  15. 根据权利要求11-14任意一项所述的设备,其特征在于,所述近距离通信方式包括NFC,蓝牙或红外。
  16. 根据权利要求11-15任意一项所述的设备,其特征在于,当所述指令被所述处理器执行时,还使得所述设备执行:
    所述设备按照发送优先级从高到低的顺序对设备的应用数据排序。
  17. 根据权利要求16所述的设备,其特征在于,所述发送优先级是根据应用数据的数据类型确定的,所述数据类型包括消息数据,流数据,字节数据和文件数据。
  18. 根据权利要求17所述的设备,其特征在于,以下数据类型的发送优先级从高到低依次为:消息数据,流数据,字节数据,文件数据。
  19. 根据权利要求11-18任意一项所述的设备,其特征在于,当所述指令被所述处理器执行时,还使得所述设备执行:
    所述设备从所述第二设备接收第一消息;
    所述设备根据所述第一消息中的数据报文编号,向所述第二设备重新发送所述数据报文编号对应的数据报文。
  20. 根据权利要求19所述的设备,其特征在于,当所述指令被所述处理器执行时,还使得所述设备执行:
    所述设备根据待发送的应用数据数量和单位时间内接收的第一消息数量调整发送数据报文的拥塞窗口。
  21. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-10任意一项所述的方法。
  22. 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-10任意一项所述的方法。
PCT/CN2022/084184 2021-04-26 2022-03-30 一种数据传输方法及设备 WO2022228015A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202110456191 2021-04-26
CN202110456191.2 2021-04-26
CN202110877284.2 2021-07-31
CN202110877284.2A CN115250453A (zh) 2021-04-26 2021-07-31 一种数据传输方法及设备

Publications (1)

Publication Number Publication Date
WO2022228015A1 true WO2022228015A1 (zh) 2022-11-03

Family

ID=83696449

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/084184 WO2022228015A1 (zh) 2021-04-26 2022-03-30 一种数据传输方法及设备

Country Status (2)

Country Link
CN (1) CN115250453A (zh)
WO (1) WO2022228015A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024104095A1 (zh) * 2022-11-18 2024-05-23 华为技术有限公司 一种数据传输方法、装置及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954797B1 (en) * 1999-02-26 2005-10-11 Nec Corporation Data Communication method, terminal equipment, interconnecting installation, data communication system and recording medium
US20090016334A1 (en) * 2007-07-09 2009-01-15 Nokia Corporation Secured transmission with low overhead
CN102186207A (zh) * 2011-04-06 2011-09-14 重庆大学 一种无线局域网络下跨层减少tcp重复应答方法
CN104618961A (zh) * 2015-01-21 2015-05-13 普天信息技术有限公司 应用于智能电网的单通道tcp/ip头压缩方法及系统
CN107113342A (zh) * 2014-10-02 2017-08-29 微软技术许可有限责任公司 使用软件定义网络的中继优化
US20200107222A1 (en) * 2018-09-27 2020-04-02 Apple Inc. WiFi TCP Performance in Multi-Radio Coexistence Cases
CN111147483A (zh) * 2019-12-25 2020-05-12 武汉绿色网络信息服务有限责任公司 一种对原始网络数据包的有损压缩存储方法和装置
CN112119606A (zh) * 2018-05-11 2020-12-22 瑞典爱立信有限公司 用于下行链路控制信息(dci)大小对齐的系统和方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6954797B1 (en) * 1999-02-26 2005-10-11 Nec Corporation Data Communication method, terminal equipment, interconnecting installation, data communication system and recording medium
US20090016334A1 (en) * 2007-07-09 2009-01-15 Nokia Corporation Secured transmission with low overhead
CN102186207A (zh) * 2011-04-06 2011-09-14 重庆大学 一种无线局域网络下跨层减少tcp重复应答方法
CN107113342A (zh) * 2014-10-02 2017-08-29 微软技术许可有限责任公司 使用软件定义网络的中继优化
CN104618961A (zh) * 2015-01-21 2015-05-13 普天信息技术有限公司 应用于智能电网的单通道tcp/ip头压缩方法及系统
CN112119606A (zh) * 2018-05-11 2020-12-22 瑞典爱立信有限公司 用于下行链路控制信息(dci)大小对齐的系统和方法
US20200107222A1 (en) * 2018-09-27 2020-04-02 Apple Inc. WiFi TCP Performance in Multi-Radio Coexistence Cases
CN111147483A (zh) * 2019-12-25 2020-05-12 武汉绿色网络信息服务有限责任公司 一种对原始网络数据包的有损压缩存储方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024104095A1 (zh) * 2022-11-18 2024-05-23 华为技术有限公司 一种数据传输方法、装置及系统

Also Published As

Publication number Publication date
CN115250453A (zh) 2022-10-28

Similar Documents

Publication Publication Date Title
US10778818B2 (en) Apparatus, system and method of controlling data flow over a communication network
WO2021121308A1 (zh) 一种多路径传输的方法及设备
US9998387B2 (en) Apparatus, system and method of controlling data flow over a communication network
CN115334138B (zh) Quic数据传输方法、装置、客户端及服务端
WO2022228015A1 (zh) 一种数据传输方法及设备
WO2022143034A1 (zh) 投屏音视频数据的传输方法以及相关设备
WO2023011362A1 (zh) 一种北斗通信系统中出站传输控制方法、系统及相关装置
WO2022179468A1 (zh) 数据处理方法及电子设备
US20190050358A1 (en) Apparatus, system and method of communicating over a media agnostic (ma) usb connection
WO2022184157A1 (zh) 多路径聚合调度方法及电子设备
WO2023273763A1 (zh) 一种视频数据的传输方法及装置
WO2023011605A1 (zh) 北斗通信系统中的信件下载查询方法、系统及相关装置
WO2021114950A1 (zh) 一种多路http通道复用的方法及终端
WO2023039890A1 (zh) 视频传输的方法和电子设备
WO2023065782A1 (zh) 数据传输的方法及电子设备
WO2024088173A1 (zh) 组播通信方法及相关装置
WO2024027674A1 (zh) 通信方法、设备及存储介质
WO2023197223A1 (zh) 用于短距离无线通信的数据传输方法及通信装置
WO2022188813A1 (zh) 蓝牙通信方法、系统及电子设备
WO2021244160A1 (zh) 一种通信方法及装置
WO2022206702A1 (zh) 蓝牙通信方法及系统
WO2023001044A1 (zh) 数据处理方法及电子设备
CN115134049A (zh) 通信方法及装置
WO2023142008A1 (zh) 通信方法及装置、电子设备及存储介质
WO2023011594A1 (zh) 北斗通信系统中的信箱概况查询方法、系统及相关装置

Legal Events

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

Ref document number: 22794488

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22794488

Country of ref document: EP

Kind code of ref document: A1