A data transmission method, a data transmission device and a storage medium

By prioritizing the transmission of important data in IP packets and sending other data only after their successful transmission, the problem of dropped IP packets in wireless communication is solved, thereby improving transmission efficiency and resource utilization.

CN115836529BActive Publication Date: 2026-06-19BEIJING XIAOMI MOBILE SOFTWARE CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING XIAOMI MOBILE SOFTWARE CO LTD
Filing Date
2021-07-16
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

In wireless communication, there is a problem of IP data packet loss during transmission, especially due to transmission failure or excessive latency, which leads to a waste of data transmission resources.

Method used

In IP packets, relatively important data is placed in the first few bytes to ensure successful transmission before sending subsequent bytes. If important data fails to be transmitted, the entire IP packet is discarded to avoid sending invalid bytes.

Benefits of technology

It improves the transmission efficiency of IP packets, reduces resource waste, and ensures the successful transmission of critical data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115836529B_ABST
    Figure CN115836529B_ABST
Patent Text Reader

Abstract

This disclosure relates to a data transmission method, a data transmission apparatus, and a storage medium. The data transmission method, applied at a data sending end, includes: in response to determining that a byte containing first type data in an Internet Protocol (IP) data packet has been successfully transmitted, determining that a byte containing second type data has been transmitted; wherein the first type data has a higher importance than the second type data. This disclosure can reduce the waste of transmission resources and improve data transmission efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of wireless communication technology, and in particular to a data transmission method, a data transmission device, and a storage medium. Background Technology

[0002] In wireless environments, Internet Protocol (IP) packets may be dropped during transmission. For example, some IP packets may be lost due to transmission failure, or IP packets may become invalid due to excessive transmission latency.

[0003] In an IP packet, if not all critical bytes are successfully transmitted, the entire packet must be discarded even if the other bytes are transmitted successfully. This results in a waste of data transmission resources. Summary of the Invention

[0004] To overcome the problems existing in related technologies, this disclosure provides a data transmission method, a data transmission device, and a storage medium.

[0005] According to a first aspect of the present disclosure, a data transmission method is provided, applied at a data sending end, the method comprising:

[0006] In response to the successful transmission of the first type of data byte in the Internet Protocol (IP) data packet, the system determines that the second type of data byte will be transmitted; wherein the first type of data is more important than the second type of data.

[0007] In one implementation, determining that the byte containing the first type of data in the IP packet was successfully sent includes:

[0008] Determine the first byte for transmitting the first type of data, where the first byte is the first N bytes in the IP packet, and N is a positive integer; in response to the successful transmission of the first byte, determine that the first type of data was successfully transmitted.

[0009] In one implementation, the first byte is determined based on protocol specifications or rules.

[0010] In one embodiment, the byte containing the second type of data includes a second byte, which is any byte in the IP packet other than the first byte.

[0011] In one embodiment, the method further includes:

[0012] In response to the failure to send the byte containing the first type of data in the IP packet, the sending of the byte containing the second type of data in the IP packet is stopped; based on the next IP packet, the byte containing the first type of data in the next IP packet is sent.

[0013] According to a second aspect of the present disclosure, a data transmission apparatus is provided, applied at a data transmitting end, the apparatus comprising:

[0014] The sending module is configured to, in response to determining that the first type of data in the Internet Protocol (IP) data packet has been successfully sent, determine that the second type of data is to be sent; wherein the first type of data is more important than the second type of data.

[0015] In one embodiment, the sending module is configured to:

[0016] Determine the first byte for transmitting the first type of data, where the first byte is the first N bytes in the IP packet, and N is a positive integer; in response to the successful transmission of the first byte, determine that the first type of data was successfully transmitted.

[0017] In one implementation, the first byte is determined based on protocol specifications or rules.

[0018] In one embodiment, the byte containing the second type of data includes a second byte, which is any byte in the IP packet other than the first byte.

[0019] In one embodiment, the sending module is further configured to:

[0020] In response to the failure to send the byte containing the first type of data in the IP packet, the sending of the byte containing the second type of data in the IP packet is stopped; based on the next IP packet, the byte containing the first type of data in the next IP packet is sent.

[0021] According to a third aspect of the present disclosure, a data transmission apparatus is provided, comprising:

[0022] A processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute the data transmission method described in the first aspect or any embodiment of the first aspect.

[0023] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium is provided, wherein when instructions in the storage medium are executed by a processor of a mobile terminal, the mobile terminal is enabled to perform the data transmission method described in the first aspect or any embodiment of the first aspect.

[0024] The technical solutions provided by the embodiments of this disclosure can include the following beneficial effects: This disclosure allows for the determination to send second type of data after confirming the successful transmission of first type of data, thus enabling the transmission of relatively unimportant data after the successful transmission of relatively important data. Since the bytes containing the first type of data and the second type of data are located at different positions in the IP data packet, the first type of data can be placed in the preceding bytes of the IP data packet, thereby ensuring the successful transmission of the first type of data before sending subsequent bytes. This avoids the waste of resources caused by sending invalid bytes during the transmission of IP data packets and improves the transmission efficiency of bytes in the IP data packet, further enhancing the efficiency of IP data packet transmission.

[0025] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0026] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0027] Figure 1 This is a schematic diagram illustrating an IP datagram format according to an exemplary embodiment.

[0028] Figure 2 This is a diagram illustrating a communication system architecture for a network device and a terminal, according to an exemplary embodiment.

[0029] Figure 3 This is a flowchart illustrating a data transmission method according to an exemplary embodiment.

[0030] Figure 4 This is a flowchart illustrating yet another data transmission method according to an exemplary embodiment.

[0031] Figure 5 This is a flowchart illustrating yet another data transmission method according to an exemplary embodiment.

[0032] Figure 6 This is a block diagram illustrating a data transmission apparatus according to an exemplary embodiment.

[0033] Figure 7 This is a block diagram illustrating a data transmission apparatus according to an exemplary embodiment.

[0034] Figure 8 This is a block diagram illustrating yet another data transmission apparatus according to an exemplary embodiment. Detailed Implementation

[0035] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.

[0036] In the internet domain, the IP protocol is generally used for various data transmissions, and it can also be applied to mobile communications. The protocol unit controlling transmission using the IP protocol is called an IP datagram (IP datagram, IP packet, or IP packet). Because the IP protocol masks the differences between various underlying physical subnets, it can provide upper layers with IP datagrams in a unified format. IP datagrams are transmitted in datagram packets, providing a connectionless service. The format of an IP datagram determines the functionality of that IP data packet protocol. For example, an IPv4 datagram consists of a header and data. The data is the data that the higher layers need to transmit, while the header contains control information added to ensure the correct transmission of higher-layer data. The first part of the header is of fixed length, 20 bytes, and is mandatory for all IP datagrams. Following the fixed header are optional fields of variable length. Figure 1 This is a schematic diagram illustrating an IP datagram format according to an exemplary embodiment. For example... Figure 1 As shown, the fixed parts include: version, header length, differentiated services, total length, identification, flag, fragment offset, time to live, protocol, header checksum, source address, and destination address.

[0037] (1) Version, occupying 4 digits, refers to the version of the IP protocol. The IP protocol versions used by both communicating parties must be consistent. The widely used IP protocol version number is 4 (i.e., IPv4).

[0038] (2) Header Length: 4 bits, the maximum decimal value it can represent is 15. It's important to note that this field represents a 32-bit word (1 32-bit word is 4 bytes). Therefore, when the IP header length is 1111 (decimal 15), the header length reaches 60 bytes. When the IP packet header length is not a multiple of 4 bytes, it must be padded using the final padding field. Therefore, the data portion always starts in multiples of 4 bytes, which is more convenient when implementing the IP protocol. The disadvantage of limiting the header length to 60 bytes is that it may sometimes be insufficient. However, this is done to minimize overhead for users. The most commonly used header length is 20 bytes (i.e., header length 0101), in which case no options are used.

[0039] (3) Differentiated services, occupying 8 bits, are used to obtain better services. It can also be called service type, and this field is used when using differentiated services.

[0040] (4) Total length: The total length refers to the length of the header and data combined, in bytes. The total length field is 16 bits, so the maximum length of the datagram is 2^16-1 = 65535 bytes.

[0041] Each data link layer below the IP layer has its own frame format, which includes the maximum length of the data field in the frame format, called the Maximum Transfer Unit (MTU). When a datagram is encapsulated into a link layer frame, the total length of the datagram (i.e., header plus data portion) must not exceed the MTU value of the underlying data link layer.

[0042] (5) The identification field occupies 16 bits. The IP software maintains a counter in memory, incrementing it by 1 for each datagram generated and assigning this value to the identification field. However, this "identification" is not a sequence number, because IP is a connectionless service, and datagrams are not received in order. When a datagram must be fragmented due to its length exceeding the network's MTU, the value of this identification field is copied to the identification field of all datagrams. The identical value of the identification field ensures that the fragmented datagrams can be correctly reassembled into the original datagram.

[0043] (6) Flag, which occupies 3 positions, of which 2 positions are meaningful.

[0044] The least significant bit in the flag field is denoted as MF (More Fragment). MF = 1 indicates that there are more fragments to follow. MF = 0 indicates that this is the last of several datagram fragments. The middle bit of the flag field is denoted as DF (Don't Fragment), meaning "fragmentation is not allowed." Fragmentation is only permitted when DF = 0.

[0045] (7) Fragment Offset, 13 bits. The fragment offset indicates the relative position of a fragment within the original packet after the longer packet has been fragmented. It indicates where the fragment begins relative to the start of the user data field. The fragment offset is in units of 8 bytes. That is, except for the last fragment, the length of each fragment must be an integer multiple of 8 bytes (64 bits).

[0046] (8) Time to Live (TTL), 8 bits. The common abbreviation for the Time to Live field is TTL, which indicates the lifespan of a datagram in the network. This field is set by the source of the datagram. Its purpose is to prevent undeliverable datagrams from endlessly circling the Internet, thus wasting network resources. The initial design used seconds as the unit of TTL. Each time a datagram passes through a router, the TTL is reduced by the time the datagram spends at the router. If the time the datagram spends at the router is less than 1 second, the TTL value is decremented by 1. When the TTL value is 0, the datagram is discarded. Later, the function of the TTL field was changed to "hop count limit" (but the name remains the same). The router decrements the TTL value by 1 before forwarding the datagram. If the TTL value decreases to zero, the datagram is discarded and not forwarded. Therefore, the unit of TTL is no longer seconds, but hop count. The meaning of TTL is to indicate how many routers a datagram can pass through in the network at most. Obviously, the maximum number of routers a datagram can pass through on the network is 255. If the initial value of TTL is set to 1, it means that this datagram can only be transmitted within the local area network.

[0047] (9) Protocol, 8 bits. The protocol field indicates which protocol is used for the data carried by this datagram, so that the IP layer of the destination host knows which process to hand over the data part to.

[0048] (10) Header checksum, 16 bits. This field only checks the header of the datagram, but not the data portion. Since each router recalculates the header checksum (including some fields such as time to live, flags, fragment offset, etc., which may change) every time the datagram passes through, omitting the data portion reduces the computational workload.

[0049] (11) Source address, which occupies 32 bits.

[0050] (12) Destination address, 32 bits.

[0051] Variable parts

[0052] The variable portion of the IP header is an optional field. The options field supports troubleshooting, measurement, and security measures. The length of this field is variable, ranging from 1 byte to 40 bytes, depending on the selected options. Some options require only 1 byte, consisting of a 1-byte option code. Other options require multiple bytes; these options are concatenated without separators and padded with zeros to ensure a multiple of 4 bytes.

[0053] Adding variable sections to the header enhances the functionality of IP datagrams, but it also makes the header length variable. This increases the overhead for each router processing the datagram. The newer IP version, IPv6, makes the IP datagram header length fixed. These options are defined as follows:

[0054] (1) Security and handling restrictions (for military applications).

[0055] (2) Record the path (make each router record its IP address).

[0056] (3) Timestamp (allows each router to record the IP address and local time of each router through which the IP datagram passes).

[0057] (4) Loose Source Route (specifies a series of IP addresses that a datagram must pass through).

[0058] (5) Strict Source Route (similar to loose source route, but requires that the route can only pass through these specified addresses and cannot pass through other addresses).

[0059] In wireless communication environments, IP data packets are susceptible to loss during transmission. For example, in data transmission from network devices to terminals, not all IP data packets reach the terminal. Some IP data packets may be lost due to excessive latency or data packet failure, failing to reach the terminal.

[0060] For example, in real-time video services, after a frame of image data is generated on the screen, it needs to be transmitted by multiple IP packets. These multiple IP packets need to arrive at the receiving end within the image display time. If the multiple IP packets corresponding to that frame of image do not arrive at the receiving end within the display time, it is determined that the multiple IP packets have failed to display. Furthermore, the IP packets required for a frame of image include critical IP packets; that is, the critical IP packets must arrive at the receiving end for the frame of image to be displayed. If the critical IP packets do not arrive at the receiving end, it is determined that the frame of image cannot be displayed, and the other IP packets need to be discarded. The other IP packets can be non-critical IP packets.

[0061] In some business applications, each IP packet contains relatively important data and relatively unimportant data. Based on this, this disclosure proposes a data transmission method that places the relatively important data in the first few bytes of each IP packet. After the first few bytes are successfully sent, the IP packet is continued to be transmitted; otherwise, the IP packet is discarded. This improves data transmission efficiency.

[0062] Figure 2 This is a diagram illustrating a communication system architecture between a network device and a terminal according to an exemplary embodiment. The communication method provided in this disclosure can be applied to... Figure 2 The communication system architecture diagram shown is as follows. Figure 2 As shown, network-side devices can be based on Figure 2 The architecture shown sends signaling.

[0063] Understandable, Figure 2 The network devices and terminal communication system shown are for illustrative purposes only. A wireless communication system may also include other network devices, such as core network equipment, wireless relay equipment, and wireless backhaul equipment. Figure 2 Not shown in the diagram. This disclosure does not limit the number of network devices and terminals included in the wireless communication system.

[0064] It is further understood that the wireless communication system of this disclosure is a network providing wireless communication functionality. The wireless communication system can employ different communication technologies, such as code division multiple access (CDMA), wideband code division multiple access (WCDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal frequency-division multiple access (OFDMA), single-carrier frequency division multiple access (SC-FDMA), and carrier sense multiple access with collision avoidance. Based on factors such as capacity, speed, and latency, networks can be categorized as 2G networks, 3G networks, 4G networks, or future evolution networks, such as 5G networks. 5G networks can also be referred to as New Radio (NR). For ease of description, this disclosure may sometimes simply refer to the wireless communication network as a network.

[0065] Furthermore, the network device involved in this disclosure can also be referred to as a wireless access network device. This wireless access network device can be: a base station, an evolved Node B (eB) base station, a home base station, an access point (AP) in a Wireless Fidelity (WIFI) system, a wireless relay node, a wireless backhaul node, a transmission point (TP), or a transmission and reception point (TRP), etc. It can also be a gNB in ​​an NR system, or a component or part of a base station. When it is a vehicle-to-everything (V2X) communication system, the network device can also be an in-vehicle device. It should be understood that the specific technologies and device forms used in the embodiments of this disclosure are not limited.

[0066] Furthermore, the terminal involved in this disclosure can also be referred to as a terminal device, user equipment (UE), mobile station (MS), mobile terminal (MT), etc., and is a device that provides voice and / or data connectivity to a user. For example, a terminal can be a handheld device with wireless connectivity, an in-vehicle device, etc. Currently, some examples of terminals include: smartphones (Mobile Phones), pocket personal computers (PPCs), handheld computers, personal digital assistants (PDAs), laptops, tablets, wearable devices, or in-vehicle devices, etc. In addition, when it is a vehicle-to-everything (V2X) communication system, the terminal device can also be an in-vehicle device. It should be understood that the embodiments of this disclosure do not limit the specific technology or specific device form adopted by the terminal.

[0067] Figure 3 This is a flowchart illustrating a data transmission method according to an exemplary embodiment. For example... Figure 3 As shown, the data transmission method used in the data sending end includes the following steps.

[0068] In step S11, in response to determining that the first type of data in the IP packet was successfully sent, the second type of data is then sent.

[0069] In this embodiment, the data sending end classifies the data to be transmitted according to its importance, resulting in a first type of data and a second type of data. The first type of data is more important than the second type of data. The first and second types of data are placed in corresponding bytes within the IP data packet. Based on the byte order within the IP data packet, the IP data packet bytes are sent one by one to achieve the transmission of the IP data packet.

[0070] In this embodiment of the disclosure, the data sending end can be a terminal or a network device.

[0071] The data transmission method provided in this disclosure places different types of data to be transmitted into their corresponding IP data packet bytes, and then sends the IP data packets based on byte order. If the first type of data is successfully transmitted, the second type of data is then sent; that is, if the first type of data fails to be transmitted, subsequent bytes are not sent. This saves IP data packet resources required for data transmission, and further improves IP data packet transmission efficiency by increasing byte transmission efficiency, thereby achieving the goal of improving data transmission efficiency.

[0072] Figure 4This is a flowchart illustrating a data transmission method according to an exemplary embodiment. For example... Figure 4 As shown, the data transmission method used in the data sending end includes the following steps.

[0073] In step S21, the first byte for transmitting the first type of data is determined.

[0074] The first byte is the first N bytes of the IP packet, where N is a positive integer.

[0075] In step S22, in response to the successful transmission of the first byte, it is determined that the first type of data was successfully transmitted.

[0076] In this embodiment of the disclosure, the data sending end determines the first type of data and the second type of data included in the transmitted data, and determines the first byte for transmitting the first type of data and the second byte for transmitting the second type of data. The first byte is the first N bytes of the IP data packet.

[0077] After the data sending end confirms that the first N bytes have been successfully sent, it determines that all data of the first type will be sent to the data receiving end.

[0078] In some embodiments of this disclosure, the number of the first byte in an IP data packet can be determined based on protocol specifications or rules. The value of the first N bytes (the first byte) in the IP data packet can be fixed or variable; that is, the value of N can be determined based on the data to be transmitted.

[0079] In some embodiments of this disclosure, as described above, the data sender determines a second byte for transmitting second type data, wherein the second byte is any byte in the IP data packet other than the first byte.

[0080] Figure 5 This is a flowchart illustrating a data transmission method according to an exemplary embodiment. For example... Figure 5 As shown, the data transmission method used in the data sending end includes the following steps.

[0081] In step S31, in response to the failure to send the byte containing the first type of data in the IP packet, the sending of the byte containing the second type of data in the IP packet is stopped.

[0082] In step S32, based on the next IP packet, the bytes containing the first type of data in the next IP packet are sent.

[0083] In this embodiment, the data sender transmits IP data packets based on the byte order within the IP data packet, where the byte containing the first type of data is the first byte, and the first byte comprises the first N bytes of the IP data packet. After the first N bytes of the IP data packet are transmitted to the data receiver, the sender determines to transmit the second byte of the IP data packet, which consists of the remaining bytes in the IP data packet excluding the first byte. If the data sender determines that any byte in the first N bytes of the IP data packet has failed to be transmitted, it determines to abandon the transmission of all subsequent bytes. That is, it stops transmitting the byte containing the second type of data in the IP data packet. The data sender determines to abandon the transmission of this IP data packet and determines to transmit the byte containing the first type of data in the next IP data packet based on the next IP data packet to be transmitted.

[0084] If the first N bytes of an IP packet contain failed transmission bytes, and the relatively important data transmission in the IP packet fails, then the other data transmissions are considered invalid and the transmission of that IP packet is abandoned. This not only reduces the waste of transmission resources but also improves data transmission efficiency.

[0085] Based on the same concept, embodiments of this disclosure also provide a data transmission device.

[0086] It is understood that the data transmission apparatus provided in this disclosure includes hardware structures and / or software modules corresponding to each function in order to achieve the above-mentioned functions. In conjunction with the units and algorithm steps of the various examples disclosed in this disclosure, this disclosure can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the technical solutions of this disclosure.

[0087] Figure 6 This is a block diagram illustrating a data transmission apparatus according to an exemplary embodiment. (Refer to...) Figure 6 The data transmission device 100 is used at the data sending end and includes a sending module 101.

[0088] The sending module 101 is used to determine, in response to the successful transmission of the byte containing the first type of data in the Internet Protocol (IP) data packet, to determine the byte containing the second type of data. The first type of data is of greater importance than the second type of data.

[0089] In this embodiment of the disclosure, the sending module 101 is configured to determine a first byte for transmitting first type data, wherein the first byte is the first N bytes in the IP data packet, where N is a positive integer. In response to the successful transmission of the first byte, it is determined that the first type data has been successfully transmitted.

[0090] In this embodiment of the disclosure, the first byte is determined based on protocol specifications or rules.

[0091] In this embodiment of the disclosure, the byte containing the second type of data includes the second byte, which is any other byte in the IP data packet except for the first byte.

[0092] In this embodiment of the disclosure, the sending module 101 is further configured to stop sending the byte containing the second type of data in the IP data packet in response to a failure to send the first type of data byte in the IP data packet. Based on the next IP data packet, the byte containing the first type of data in the next IP data packet is then sent.

[0093] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0094] Figure 7 This is a block diagram illustrating an apparatus 200 for data transmission according to an exemplary embodiment. For example, apparatus 200 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.

[0095] Reference Figure 7 The device 200 may include one or more of the following components: processing component 202, memory 204, power component 206, multimedia component 208, audio component 210, input / output (I / O) interface 212, sensor component 214, and communication component 216.

[0096] Processing component 202 typically controls the overall operation of device 200, such as operations associated with display, telephone calls, data communication, camera operation, and recording. Processing component 202 may include one or more processors 220 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 202 may include one or more modules to facilitate interaction between processing component 202 and other components. For example, processing component 202 may include a multimedia module to facilitate interaction between multimedia component 208 and processing component 202.

[0097] Memory 204 is configured to store various types of data to support the operation of device 200. Examples of such data include instructions for any application or method operating on device 200, contact data, phonebook data, messages, pictures, videos, etc. Memory 204 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0098] The power supply component 206 provides power to the various components of the device 200. The power supply component 206 may include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power to the device 200.

[0099] Multimedia component 208 includes a screen that provides an output interface between the device 200 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 208 includes a front-facing camera and / or a rear-facing camera. When the device 200 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0100] Audio component 210 is configured to output and / or input audio signals. For example, audio component 210 includes a microphone (MIC) configured to receive external audio signals when device 200 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 204 or transmitted via communication component 216. In some embodiments, audio component 210 also includes a speaker for outputting audio signals.

[0101] I / O interface 212 provides an interface between processing component 202 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0102] Sensor assembly 214 includes one or more sensors for providing status assessments of various aspects of device 200. For example, sensor assembly 214 may detect the on / off state of device 200, the relative positioning of components such as the display and keypad of device 200, changes in the position of device 200 or a component of device 200, the presence or absence of user contact with device 200, the orientation or acceleration / deceleration of device 200, and temperature changes of device 200. Sensor assembly 214 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 214 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 214 may also include an accelerometer, a gyroscope, a magnetometer, a pressure sensor, or a temperature sensor.

[0103] Communication component 216 is configured to facilitate wired or wireless communication between device 200 and other devices. Device 200 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 216 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 216 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0104] In an exemplary embodiment, the apparatus 200 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0105] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 204 including instructions, which can be executed by a processor 220 of the device 200 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.

[0106] Figure 8 This is a block diagram illustrating an apparatus 300 for data transmission according to an exemplary embodiment. For example, apparatus 300 may be provided as a server. (Refer to...) Figure 8The device 300 includes a processing component 322, which further includes one or more processors, and memory resources represented by memory 332 for storing instructions, such as application programs, that can be executed by the processing component 322. The application programs stored in memory 332 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 322 is configured to execute instructions to perform the methods described above.

[0107] Device 300 may also include a power supply component 326 configured to perform power management of device 300, a wired or wireless network interface 350 configured to connect device 300 to a network, and an input / output (I / O) interface 358. Device 300 may operate on an operating system stored in memory 332, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or similar.

[0108] It can be further understood that in this disclosure, "multiple" refers to two or more, and other quantifiers are similar. "And / or" describes the relationship between related objects, indicating that three relationships can exist; for example, A and / or B can represent: A alone, A and B simultaneously, and B alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. The singular forms "a," "the," and "the" are also intended to include the plural forms unless the context clearly indicates otherwise.

[0109] It is further understood that the terms "first," "second," etc., are used to describe various types of information, but this information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another, and do not indicate a specific order or degree of importance. In fact, the expressions "first," "second," etc., are completely interchangeable. For example, without departing from the scope of this disclosure, first information can also be referred to as second information, and similarly, second information can also be referred to as first information.

[0110] It is further understood that although operations are described in a specific order in the accompanying drawings in the embodiments of this disclosure, this should not be construed as requiring these operations to be performed in the specific order or serial order shown, or requiring all of the shown operations to be performed to obtain the desired result. In certain environments, multitasking and parallel processing may be advantageous.

[0111] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following scope of claims.

[0112] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.

Claims

1. A data transmission method, characterized in that, Applied to the data sending end, the method includes: In response to the successful transmission of the first type of data byte in the Internet Protocol (IP) packet, determine the transmission of the second type of data byte; In response to the failure to transmit the byte containing the first type of data in the IP packet, the transmission of the byte containing the second type of data in the IP packet is stopped; based on the next IP packet, the byte containing the first type of data in the next IP packet is transmitted; Among them, the first type of data is more important than the second type of data, and the data sending end sends IP data packets based on the byte order in the IP data packets; The step of determining that the first type of data in the IP packet was successfully sent includes: Determine the first byte used to transmit the first type of data, where the first byte is the first N bytes in the IP packet, and N is a positive integer; In response to the successful transmission of the first byte, it is determined that the first type of data was successfully transmitted.

2. The data transmission method according to claim 1, characterized in that, The first byte is determined based on protocol specifications or rules.

3. The data transmission method according to claim 1, characterized in that, The second type of data includes the second byte, which is the other bytes in the IP packet besides the first byte.

4. A data transmission device, characterized in that, The device, applied to a data transmitting end, includes: The sending module is used to determine the byte containing the first type of data in the Internet Protocol (IP) data packet that has been successfully sent, and to determine the byte containing the second type of data. The sending module is also configured to stop sending the byte containing the second type of data in the IP data packet in response to a failure to send the first type of data in the IP data packet; Based on the next IP packet, send the bytes containing the first type of data in the next IP packet; Among them, the first type of data is more important than the second type of data, and the data sending end sends IP data packets based on the byte order in the IP data packets; The sending module is further configured to determine the first byte for transmitting the first type of data, wherein the first byte is the first N bytes in the IP data packet, where N is a positive integer; and in response to the successful transmission of the first byte, to determine that the first type of data has been successfully transmitted.

5. A data transmission device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured to execute the data transmission method according to any one of claims 1-3.

6. A non-transitory computer-readable storage medium, characterized in that, When the instructions in the storage medium are executed by the processor of the mobile terminal, the mobile terminal is able to perform the data transmission method according to any one of claims 1-3.