Communication method, readable storage medium and electronic device
By configuring a low-power Wi-Fi chip in electronic devices, a long-term connection with the server is maintained when the display is off, and a high-power chip is switched back to process messages when needed. This solves the communication latency and stuttering problems when the display is off, improving network smoothness and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-27
- Publication Date
- 2026-03-31
AI Technical Summary
When the screen of an electronic device is off, the Wi-Fi chip goes into sleep mode, causing the communication connection with the server to be lost, resulting in communication delays and network lag, which affects the user experience.
A second, lower-power Wi-Fi chip is configured in the electronic device to maintain a long-term connection with the server when the display is off. This chip receives messages and switches back to the first Wi-Fi chip to process specific messages when the processor is woken up, ensuring smooth communication.
It enables maintaining a long-term connection with the server in a low-power state, avoiding message delays and network lag, and improving the user experience.
Smart Images

Figure CN120091394B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a communication method, a readable storage medium, and an electronic device. Background Technology
[0002] To enable electronic devices to communicate with other electronic devices via wireless networks (such as wireless fidelity (Wi-Fi) networks), some electronic devices include a communication chip (hereinafter referred to as a Wi-Fi chip) for implementing Wi-Fi network communication.
[0003] However, to reduce power consumption, electronic devices typically put their Wi-Fi chips into sleep mode when the screen is off, causing communication between the device and other electronic devices to be interrupted. This interrupted communication connection is restored after the Wi-Fi chip wakes up (e.g., when the screen turns on). In other words, during the Wi-Fi chip's sleep period, the electronic device cannot communicate with other electronic devices via the Wi-Fi network, resulting in communication delays.
[0004] For example, if the Wi-Fi chip remains in sleep mode for too long, the persistent TCP / IP connection between the electronic device and the server may be lost. When the electronic device's screen turns on, the Wi-Fi chip is awakened, the electronic device re-establishes a connection with the server, and receives data from the server. This can cause a delay in the electronic device receiving messages from the server (for example, a message sent by the server while the electronic device's screen is off may only be received by the electronic device after the screen turns on again and the connection with the server is re-established). Summary of the Invention
[0005] In view of the above, this application provides a communication method, a readable storage medium, and an electronic device.
[0006] In a first aspect, this application provides a communication method applied to a first electronic device, the first electronic device including a first Wi-Fi chip and a second Wi-Fi chip; and the method includes: the first electronic device being in a wake-up state and communicating with a second electronic device through the first Wi-Fi chip, wherein the first Wi-Fi chip is connected to the second electronic device using a first Media Access Control address and a first Internet Protocol address; the first electronic device entering a sleep state and switching to communicating with the second electronic device through the second Wi-Fi chip, wherein the second Wi-Fi chip is connected to the second electronic device using the first Media Access Control address and the first Internet Protocol address; wherein the power consumption of the second Wi-Fi chip is less than the power consumption of the first Wi-Fi chip.
[0007] For example, in some embodiments of this application, the first electronic device includes a first Wi-Fi chip and a second Wi-Fi chip. When the first electronic device is in a screen-on state, it communicates with the second electronic device through the first Wi-Fi chip to connect to the server and send / receive data with it. When the first electronic device is in a screen-off sleep state, the first Wi-Fi chip also enters a sleep state. The first electronic device switches to the second Wi-Fi chip to communicate with the second electronic device, thereby maintaining a long-term connection between the first electronic device and the server and avoiding delays in the first electronic device receiving messages pushed by the server.
[0008] In some embodiments of this application, when the first electronic device switches to communicate with the second Wi-Fi chip, the media access control (MAC) address and the internet protocol (IP) address of the second Wi-Fi chip are the same as those of the first Wi-Fi chip. That is, both the first and second Wi-Fi chips use the first MAC address and the first IP address to communicate with the second electronic device. This ensures that the process of the first electronic device switching Wi-Fi chips is not detected by the second electronic device, and the second electronic device will not disconnect from the first electronic device and then reconnect to the second Wi-Fi chip. Furthermore, the application in the first electronic device will not detect the Wi-Fi chip switch, preventing the application in the first electronic device from interrupting data transmission with the server due to the switch. This ensures smooth communication for the first electronic device without any lag.
[0009] In one possible implementation of the first aspect above, the first electronic device enters a sleep state and switches to communicating with the second electronic device via the second Wi-Fi chip, including: the first electronic device enters a sleep state, controls the first Wi-Fi chip to go into sleep mode, and controls the first Wi-Fi chip not to send a message to the second electronic device to disconnect communication.
[0010] In one possible implementation of the first aspect above, the method further includes: the first electronic device switching from a sleep state to a wake-up state, switching to communicating with the second electronic device via a first Wi-Fi chip, wherein the first Wi-Fi chip is connected to the second electronic device using a first media access control address and a first Internet Protocol address.
[0011] For example, in some embodiments of this application, during the process of the first electronic device entering a wake-up state from a sleep state, the first electronic device wakes up the first Wi-Fi chip and enables the first Wi-Fi chip to communicate with the second electronic device through the first MAC address and the first IP address. That is, the process of the first electronic device switching from a sleep state to a wake-up state and using the first Wi-Fi chip is not detected by the second electronic device or the application in the first electronic device. This ensures the smoothness of the communication process of the first electronic device.
[0012] In one possible implementation of the first aspect above, the first electronic device switches from a sleep state to a wake-up state and switches to communicating with the second electronic device through the first Wi-Fi chip, including: the first electronic device switches from a sleep state to a wake-up state, controls the second Wi-Fi chip to go into sleep, and controls the second Wi-Fi chip not to send a message to the second electronic device to disconnect communication.
[0013] For example, in some embodiments of this application, during the process of the first electronic device switching to the second Wi-Fi chip, the first Wi-Fi chip does not send a disconnection message to the second electronic device (for example, the first Wi-Fi chip does not send a deauth frame to the second electronic device, thus not disconnecting the Wi-Fi connection with the second electronic device). That is, during the switching of Wi-Fi chips, the first electronic device does not disconnect from the second electronic device; instead, the second Wi-Fi chip uses the first MAC address and the first IP address to connect to the second electronic device. Therefore, the second electronic device will only detect that the first electronic device has reconnected to the network using the same Wi-Fi chip (the MAC address of the switched Wi-Fi chip remains unchanged), and will not detect that the first electronic device has switched Wi-Fi chips to connect to the network.
[0014] In one possible implementation of the first aspect above, the first electronic device enters a sleep state and switches to communicating with the second electronic device via the second Wi-Fi chip, including: using the second Wi-Fi chip to send a heartbeat packet to the server via the second electronic device, and / or receiving messages from the server.
[0015] For example, in some embodiments of this application, during the process of connecting the first electronic device to the second electronic device via the second Wi-Fi chip, the first electronic device sends a heartbeat packet to the server through the second electronic device to ensure that the first electronic device and the server maintain a long-term connection, enabling the first electronic device to receive messages pushed from the server in a timely manner.
[0016] In one possible implementation of the first aspect above, the method further includes: a second Wi-Fi chip waking up the processor of the first electronic device when a message received from the server satisfies a first wake-up condition; and a second Wi-Fi chip waking up the processor and the first Wi-Fi chip when a message received from the server satisfies a second wake-up condition.
[0017] In one possible implementation of the first aspect above, the first wake-up condition includes that the message received by the first electronic device from the server requires processing by the processor of the first electronic device and the second Wi-Fi chip; the second wake-up condition includes that the message received by the first electronic device from the server requires processing by the processor of the first electronic device and the first Wi-Fi chip.
[0018] For example, in some embodiments of this application, while the first electronic device is in a sleep state, it can receive messages pushed from the server via the second Wi-Fi chip. Since some push messages require processing by the processor of the first electronic device, the second Wi-Fi chip wakes up the processor of the first electronic device when it receives a message requiring processor processing. At this time, the first electronic device processes the corresponding message through its processor and the second Wi-Fi chip. This message may be, for example, a notification message pushed by the server to the application of the first electronic device, or an instant messaging message sent by other devices to the first electronic device.
[0019] In other embodiments, while the first electronic device is in a sleep state, when the second Wi-Fi chip receives a message that requires processing by both the processor and the first Wi-Fi chip of the first electronic device, the second Wi-Fi chip wakes up the processor (e.g., application processor) of the first electronic device. Then, the processor of the first electronic device wakes up the first Wi-Fi chip. The first electronic device then switches to the first Wi-Fi chip to process the corresponding message. For example, this message could be a voice call message or a video call message sent to the first electronic device by another device.
[0020] In one possible implementation of the first aspect described above, the second electronic device is an access point.
[0021] For example, in some embodiments of this application, the second electronic device is any access point (AP), including but not limited to routers, any terminal device (or network device) capable of providing mobile hotspots, wireless network cards, wireless routers, mobile broadband modems, and customer premises equipment (CPE), etc.
[0022] In a second aspect, this application provides an electronic device, comprising: a memory for storing instructions; a first Wi-Fi chip, a second Wi-Fi chip, and at least one processor for executing instructions to enable the electronic device to implement the method provided in the first aspect and any possible implementation of the first aspect.
[0023] Thirdly, this application provides a computer-readable storage medium storing instructions that, when executed on a computer, cause the computer to implement the method provided in the first aspect and any possible implementation of the first aspect.
[0024] Fourthly, this application provides a computer program product that, when run on an electronic device, enables the electronic device to implement the method provided in the first aspect and any possible implementation of the first aspect. Attached Figure Description
[0025] Figure 1A According to some embodiments of this application, a scenario diagram of network communication when an electronic device screen is on is shown;
[0026] Figure 1B According to some embodiments of this application, a scenario diagram of network communication of an electronic device is shown;
[0027] Figure 2 According to some embodiments of this application, a scenario diagram of an electronic device in sleep mode is shown;
[0028] Figure 3A According to some embodiments of this application, a process diagram of an electronic device switching Wi-Fi chips is shown;
[0029] Figure 3B According to some embodiments of this application, a flowchart of an implementation of switching Wi-Fi chips in an electronic device is shown;
[0030] Figure 4 According to some embodiments of this application, a schematic block diagram of the system software architecture of an electronic device is shown;
[0031] Figure 5 According to some embodiments of this application, a flowchart of an implementation of switching Wi-Fi chips in an electronic device is shown;
[0032] Figure 6 According to some embodiments of this application, a link switching process of a network layer of an electronic device is shown;
[0033] Figure 7 According to some embodiments of this application, a schematic diagram of the structure of a first electronic device 100 is shown. Detailed Implementation
[0034] The illustrative embodiments of this application include, but are not limited to, communication methods, readable storage media, and electronic devices.
[0035] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions in the embodiments of this application will be described in detail below with reference to the accompanying drawings and specific implementation methods.
[0036] As mentioned earlier, in some scenarios, when an electronic device is in a screen-off state, both its system and Wi-Fi chip are in a sleep state, causing the persistent TCP / IP connection between the device and the corresponding cloud server to be interrupted. In this situation, when the cloud server pushes messages to some applications on the electronic device, because the device's Wi-Fi chip is in a sleep state, some applications cannot receive the messages pushed by the cloud server in a timely manner.
[0037] For example, Figure 1A According to some embodiments of this application, a scenario diagram of network communication when an electronic device screen is on is shown.
[0038] For example, the first electronic device 100 in this application embodiment may be a mobile phone, tablet computer, laptop, wearable device, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), etc. This application embodiment does not limit the specific type of the first electronic device 100. Furthermore, the second electronic device 200 in this application embodiment may be a router, mobile hotspot, wireless network card, wireless router, and mobile broadband modem, etc. This application embodiment does not limit the specific type of the second electronic device 200.
[0039] like Figure 1AAs shown, in this communication scenario, when the first electronic device 100 is on, it connects to the Internet through the second electronic device 200, and then communicates with the server 300 using the TCP / IP protocol based on the Internet.
[0040] For example, the first electronic device 100 can first connect to the Internet through the second electronic device 200, and establish a connection between the first electronic device 100 and the server 300 through the TCP / IP protocol, thereby realizing data transmission and interaction between the first electronic device 100 and the server 300. For example, the server 300 can push messages to application A in the first electronic device 100 based on the TCP / IP protocol, and application A can process the messages pushed by the server 300.
[0041] For example, server 300 can receive a first message sent by application A' in third electronic device 400, targeting application A of first electronic device 100. When the screen of first electronic device 100 is turned on, first electronic device 100 connects to server 300 via TCP / IP protocol. After receiving the first message, server 300 can immediately send the first message to application A of first electronic device 100. After receiving the first message, application A processes the first message.
[0042] However, when the screen of the first electronic device 100 is turned off, the operating system and Wi-Fi chip of the first electronic device 100 will enter a sleep state, causing the first electronic device 100 to be unable to receive messages from the server 300 in a timely manner.
[0043] For example, Figure 1B According to some embodiments of this application, a scenario diagram of network communication of an electronic device is shown.
[0044] like Figure 1B As shown, in this scenario, the first electronic device 100 is in a screen-off state, and its Wi-Fi chip also enters sleep mode, preventing data transmission and interaction with the server 300. When the server 300 does not receive messages from the first electronic device 100 (e.g., heartbeat packets, i.e., keep-alive data packets) for an extended period, it will disconnect the TCP / IP connection with the first electronic device 100. At this time, if the server 300 receives the first message from application A' of the third electronic device 400, targeting application A of the first electronic device 100, it will be unable to send the first message to the first electronic device 100 because the TCP / IP connection between the server 300 and the first electronic device 100 is broken. Therefore, when the first electronic device 100 is in a screen-off state, it cannot receive the first message sent by the third electronic device 400.
[0045] When the first electronic device 100 turns on its screen again, its system and Wi-Fi chip are activated, and the first electronic device 100 re-establishes a TCP / IP connection with the server 300. After detecting that the first electronic device 100 has re-established a TCP / IP connection with the server 300, the server 300 can send the first message received during the screen-off period of the first electronic device 100 back to the first electronic device 100.
[0046] As a result, there will be a delay in the first electronic device 100 receiving messages from the server 300. Furthermore, as soon as the first electronic device 100 enters the screen-on state, its Wi-Fi needs to re-establish a TCP / IP protocol connection with the server 300, which will cause network lag for the first electronic device 100 and affect the user experience.
[0047] To address the aforementioned issues, in some embodiments, the electronic device can periodically wake up the Wi-Fi chip when the screen is off to send heartbeat packets to the server and receive messages from the server in a timely manner. However, to ensure the quality of communication via Wi-Fi networks, the power consumption of the Wi-Fi chip in the electronic device is typically high, which can affect the device's battery life.
[0048] To reduce power consumption during Wi-Fi communication in the screen-off state of electronic devices, this application proposes a communication method. This method involves configuring a first Wi-Fi chip and a second Wi-Fi chip in a first electronic device, wherein the power consumption of the second Wi-Fi chip is lower than that of the first Wi-Fi chip. When the first electronic device is in a wake-up state (e.g., when the screen is on), the first Wi-Fi chip is awake and the second Wi-Fi chip is in sleep mode. The first electronic device communicates with other devices via the Wi-Fi network through the first Wi-Fi chip. When the first electronic device switches from a wake-up state to a sleep state (e.g., when the screen is off), the first electronic device sets the first Wi-Fi chip to sleep mode and wakes up the second Wi-Fi chip, and communicates with other devices via the Wi-Fi network based on the second chip. For example, the first electronic device can maintain a long-term connection with the server through the second Wi-Fi chip, receive data sent by the server, and perform corresponding processing logic based on the received data (for example, if the received data includes conditions that meet the conditions for waking up the processor of the first electronic device, the second Wi-Fi chip wakes up the processor to process the corresponding message. When the conditions for waking up the processor of the first electronic device and the conditions for waking up the first Wi-Fi chip are both met, the second Wi-Fi chip wakes up the processor of the first electronic device, and then the processor wakes up the first Wi-Fi chip and switches to the first Wi-Fi chip to process the message).
[0049] Based on the above method, when the first electronic device is in sleep mode, it maintains a long-term connection with the server using a second Wi-Fi chip with lower power consumption (e.g., the first Wi-Fi chip operates at 3.3V to 5V, while the second Wi-Fi chip operates at 1.8V to 2.5V) to receive messages sent by the server. Therefore, the first electronic device does not experience any delay in receiving messages. Furthermore, because the second Wi-Fi chip has lower power consumption, it helps reduce the power consumption of communication via Wi-Fi when the electronic device's screen is off.
[0050] In some embodiments, it is assumed that before the first electronic device switches from screen-on to screen-off, it connects to the Wi-Fi network provided by the second electronic device (e.g., a router) via the first Wi-Fi chip based on the first media access control (MAC) address and the first Internet protocol (IP) address. When the first electronic device switches from screen-on to screen-off and switches to communicating with other devices via the second Wi-Fi chip, the second Wi-Fi chip can also connect to the Wi-Fi network provided by the second electronic device based on the first IP address and the first MAC address. Since the MAC address and IP address corresponding to the first electronic device do not change, the second electronic device will not detect that the chip connected to the first electronic device has switched from the first Wi-Fi chip to the second Wi-Fi chip. Thus, the Wi-Fi connection between the first and second electronic devices does not need to be interrupted, and the data transmission service between the first electronic device and the server will not be interrupted. This improves the smoothness of the network connection of the first electronic device. In this embodiment, the second electronic device is any access point (AP), including but not limited to routers, any terminal device (or network device) capable of providing mobile hotspots, wireless network cards, wireless routers, mobile broadband modems, and customer premises equipment (CPE).
[0051] In some embodiments, after the display screen of the first electronic device changes from a screen-off state to a screen-on state, the application processor (AP) (which is used to run the operating system and process applications) and the first Wi-Fi chip of the first electronic device will also be woken up. At this time, the first electronic device switches the second Wi-Fi chip to the first Wi-Fi chip to connect to the server, and the second Wi-Fi chip enters a sleep state.
[0052] In other embodiments, the display screen of the first electronic device is in a screen-off state, and the application processor and the first Wi-Fi chip of the first electronic device are in a sleep state. When the second Wi-Fi chip of the first electronic device receives a push message from another device via the Wi-Fi network, it can determine whether the push message needs to be processed by the application processor of the first electronic device. If the determination result is no, the second Wi-Fi chip processes the corresponding push message. For example, in some embodiments, when the second Wi-Fi chip is in a wake-up state, it can determine whether the received push message is an invalid broadcast or a useless data packet (hereinafter referred to as a spam message). If the second Wi-Fi chip receives a spam message, it can process the invalid broadcast or spam message (e.g., filter spam messages and invalid broadcasts) without waking up the application processor. In this scenario, the application processor and the first Wi-Fi chip of the first electronic device are in a sleep state. Thus, in the screen-off state, the first electronic device only needs to connect to the server through the low-power second Wi-Fi chip to maintain a long connection between the first electronic device and the server, and reduce the power consumption of the first electronic device.
[0053] In other embodiments, when the second Wi-Fi chip receives a message pushed by another device to the application of the first electronic device via the Wi-Fi network (e.g., a news push message, an instant messaging message, or a notification message from a server requesting information about the first electronic device's battery level, location, network status, etc.), the condition for waking up the application processor of the first electronic device (i.e., the first wake-up condition) is met. The second Wi-Fi chip wakes up the application processor of the first electronic device to process the corresponding pushed message. In this scenario, the first Wi-Fi chip remains in a sleep state. Thus, the first electronic device can process notification messages received by the application even when the first Wi-Fi chip is in sleep mode, avoiding delays in message reception by the application of the first electronic device and also reducing the power consumption of the first electronic device.
[0054] In other embodiments, when the second Wi-Fi chip receives a message from another device communicating with the first electronic device (e.g., an application or operating system update message), the conditions for waking up the application processor and the first Wi-Fi chip of the first electronic device (i.e., the second wake-up condition) are met. The second Wi-Fi chip then wakes up the application processor of the first electronic device to process the message. When the application processor of the first electronic device determines that the push message requires waking up the first Wi-Fi chip, it wakes up the first Wi-Fi chip, and the first electronic device switches to the first Wi-Fi chip to process the corresponding push message (for example, the second Wi-Fi chip can wake up the application processor of the first electronic device, the application processor wakes up the first Wi-Fi chip, and the first Wi-Fi chip downloads application data packets or system upgrade data packets from the server). In this way, even when the first electronic device is in sleep mode, it can still receive push messages that require user processing in a timely manner.
[0055] In some embodiments, the second Wi-Fi chip of the first electronic device supports TCP / IP protocol sinking (sinking TCP / IP protocol operations to the network layer can reduce the need to process data packets at the application layer). When the second Wi-Fi chip is connected to the server, it ensures that the first electronic device and the server are in a connected state by sending data packets to the server.
[0056] This solution allows the first electronic device to switch its data transmission channel from the first Wi-Fi chip to the second Wi-Fi chip when the first Wi-Fi chip enters sleep mode (the switching process is undetectable by both the application in the first electronic device and the second electronic device). Therefore, the switching process between the first and second Wi-Fi chips does not involve re-establishing a connection with the server, and the application in the first electronic device will not experience any lag when transmitting data and interacting with the server. Furthermore, due to the lower power consumption of the second Wi-Fi chip, the first electronic device maintains its connection with the server through the second Wi-Fi chip while the first Wi-Fi chip is in sleep mode, enabling the first electronic device to receive messages pushed from the server even in a low-power sleep state.
[0057] The following describes the scenario when the first electronic device 100 in the embodiments of this application is in sleep mode.
[0058] For example, Figure 2 An embodiment of this application illustrates a scenario of an electronic device in sleep mode.
[0059] like Figure 2As shown, the first electronic device 100 in this embodiment is configured with a first Wi-Fi chip 10, a second Wi-Fi chip 20, and an application processor 30. When the display of the first electronic device 100 is off and in sleep mode, the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 simultaneously enter sleep mode. At this time, the first electronic device 100 switches to the second Wi-Fi chip 20 to establish a TCP / IP protocol connection with the server 300. The power consumption of the second Wi-Fi chip 20 is less than that of the first Wi-Fi chip 10, thereby saving energy consumption of the first electronic device 100. Furthermore, the first electronic device 100 can maintain a long-term connection with the server 300 to receive the first message pushed by the server 300 to the first electronic device 100, avoiding delays in message reception by the application of the first electronic device 100.
[0060] In some embodiments, in the current Wi-Fi environment (hereinafter referred to as the first Wi-Fi), the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 enter a sleep state and switch to the second Wi-Fi chip 20 to connect to the server 300. If the first electronic device 100 leaves the first Wi-Fi environment while still in sleep mode and enters another Wi-Fi environment (hereinafter referred to as the second Wi-Fi), the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 will be woken up, and the first electronic device 100 will switch to the first Wi-Fi chip 10 to connect to the second Wi-Fi. After the first Wi-Fi chip completes the connection with the second Wi-Fi, the first electronic device 100 switches back to the second Wi-Fi chip 20 to connect to the second Wi-Fi and connects to the Internet to establish a TCP / IP protocol connection with the server 300. At this time, the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 will enter a sleep state again.
[0061] In other embodiments, when the first electronic device 100 enters the environment of the second Wi-Fi while in sleep mode, the second Wi-Fi chip 20 can directly establish a connection with the second Wi-Fi. When the first electronic device 100 is woken up (e.g., entering a screen-on state), the first electronic device 100 obtains the MAC address and IP address of the second Wi-Fi chip 20 for the first Wi-Fi chip 20 to connect to the second Wi-Fi. This ensures that the switching of the Wi-Fi chip by the first electronic device 100 will not be detected by the electronic device providing the second Wi-Fi, thus ensuring that the connection with the second Wi-Fi will not be broken during the process of switching the Wi-Fi chip after the first electronic device 100 connects to the second Wi-Fi.
[0062] Below, in conjunction with Figure 2The scenario shown illustrates the process of an electronic device switching between a first Wi-Fi chip and a second Wi-Fi chip.
[0063] For example, Figure 3A A process diagram of switching Wi-Fi chips in an electronic device is shown according to some embodiments of this application.
[0064] like Figure 3A As shown, the first electronic device 100 is equipped with a first Wi-Fi chip 10, a second Wi-Fi chip 20, and an application processor 30.
[0065] When the display screen of the first electronic device 100 is on, the first Wi-Fi chip 10 and the application processor 30 are in a wake-up state, while the second Wi-Fi chip 20 is in a sleep state.
[0066] At this time, the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200 through authentication, association, and a four-way handshake process using the first Wi-Fi chip to generate a key. Then, the first Wi-Fi chip 10 of the first electronic device 100 connects to the Internet and establishes a TCP / IP protocol connection with the server 300, so that the application in the first electronic device 100 can transmit data with the server 300.
[0067] For example, a four-way handshake includes:
[0068] First handshake: The second electronic device 200 sends a message containing ANonce (randomly generated data by the second electronic device 200, where A represents the authenticator) to the first electronic device 100. The first electronic device 100 generates a pairwise transit key (PTK) using ANonce. The PTK is used to encrypt unicast data packets used in communication between the second electronic device 200 and the first electronic device 100.
[0069] The second handshake: After generating its PTK, the first electronic device 100 responds with an Extensible Authentication Protocol over LAN (EAPOL) to the second electronic device 200. The EAPOL includes an SNonce (randomly generated by the first electronic device 100, where S represents the supplicant) and a message integrity check (MIC). The second electronic device 200 uses the SNonce to generate its own PTK, and the MIC is used to verify the integrity of messages sent by the first electronic device 100. After receiving the SNonce, the second electronic device 200 can use its generated PTK to encrypt the keys for the subsequent two handshakes.
[0070] The third handshake: This handshake mainly involves the second electronic device 200 sending its group temporary key (GTK) to the first electronic device 100 and instructing the first electronic device 100 to encrypt the data using the PTK and GTK. Since the second electronic device 200 generated the PTK during the second handshake, the third handshake can encrypt the GTK.
[0071] The fourth handshake: The first electronic device 100 sends a final EAPOL message to the second electronic device 200, which is equivalent to an acknowledgment packet, notifying the second electronic device 200 that the first electronic device 100 has encrypted the data using PTK. After receiving this message, the second electronic device 200 will also encrypt the data using PTK.
[0072] After both parties complete the authentication, the control port of the authenticator (i.e., the second electronic device 200) will be opened, so that data frames can pass normally. Moreover, all unicast data frames will be protected by PTK, and all multicast and broadcast data will be protected by GTK.
[0073] When the display screen of the first electronic device 100 enters a screen-off state, the first Wi-Fi chip 10 and the application processor 30 enter a sleep state. The first electronic device 100 performs a Wi-Fi link switch, waking up the second Wi-Fi chip 20. Then, the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200 through the second Wi-Fi chip 20 via authentication, association, and a four-way handshake process, and establishes a TCP / IP protocol connection with the server 300 based on the second Wi-Fi chip 20. At this time, the first electronic device 100 sends heartbeat packets to the server 300 through the second Wi-Fi chip 20 to maintain the long-term TCP / IP protocol connection between the first electronic device 100 and the server 300. The heartbeat packet can be a data packet sent every 5 minutes, for example. In this way, the first electronic device 100 can maintain a long-term connection with the server 300 even when the application processor 30 and the first Wi-Fi chip 10 are in sleep mode, and can receive messages pushed by the server 300 in a timely manner.
[0074] When the display screen of the first electronic device 100 is turned on, the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 are awakened. The first electronic device 100 then switches the Wi-Fi link again, causing the second Wi-Fi chip to enter a sleep state. The first Wi-Fi chip 10 then re-establishes a Wi-Fi connection with the second electronic device 200 through authentication, association, and a four-way handshake process, and establishes a TCP / IP protocol connection with the server 300 by accessing the Internet via Wi-Fi.
[0075] For example, after the first electronic device 100 enters the screen-off state, the first Wi-Fi chip 10 and application processor 30 of the first electronic device 100 enter the sleep state, and the first electronic device 100 maintains a long-term connection with the server 300 through the second Wi-Fi chip 20 with lower power consumption. In this way, the first electronic device 100 can reduce power consumption and receive messages from the server 300 in a timely manner, so as to maintain the smoothness of the network of the first electronic device 100.
[0076] The following describes the switching process of the Wi-Fi chip in the first electronic device 100. For example, Figure 3B A flowchart illustrating the implementation of a first electronic device 100 switching a Wi-Fi chip is shown according to some embodiments of this application.
[0077] like Figure 3B As shown, the process includes:
[0078] S301, the first Wi-Fi chip 10 of the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200 based on the first MAC address and the first IP address.
[0079] For example, in some embodiments of this application, when the first electronic device 100 is in a screen-on state, the first Wi-Fi chip 10 is in a wake-up state. The first Wi-Fi chip 10 of the first electronic device 100 can establish a Wi-Fi connection with the second electronic device 200 through processes such as authentication, association, and four-way handshake to generate a key.
[0080] After the first Wi-Fi chip 10 is connected to the second electronic device 200, the second electronic device 200 assigns a dynamic IP address (i.e., a first IP address) to the first Wi-Fi chip 10 via Dynamic Host Configuration Protocol (DHCP). For example, the first IP address could be 192.168.3.100. After receiving the first IP address assigned by the second electronic device 200, the DHCP client on the first electronic device 100 can access the Internet based on the first IP address and then establish a TCP / IP protocol connection with the server 300 to transmit data.
[0081] In other implementations, the first electronic device 100 can also establish a Wi-Fi connection with the second electronic device 200 in a static manner. For example, a user can manually set the first MAC address and first IP address of the first electronic device 100 on the first electronic device 100 or on the second electronic device 200, and the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200 through the first MAC address and first IP address manually set by the user.
[0082] S302, the application processor 30 of the first electronic device 100 detects the screen-off signal of the first electronic device 100.
[0083] For example, after the display screen of the first electronic device 100 has been in standby mode for a long time, it automatically enters a screen-off state, or after the user manually puts the first electronic device into a screen-off state, the application processor 30 of the first electronic device 100 can detect the screen-off signal of the first electronic device 100. After that, the first electronic device 100 will enter a sleep state.
[0084] In other embodiments, the first Wi-Fi chip 10 and the second Wi-Fi chip 20 of the first electronic device 100 can also detect that the first electronic device 100 has entered a screen-off state. That is, after the first Wi-Fi chip 10 detects that the first electronic device 100 has entered a screen-off state, the first Wi-Fi chip 10 directly enters a sleep state. After the second Wi-Fi chip 20 detects that the first electronic device 100 has entered a screen-off state, it will also directly enter a wake-up state and establish a Wi-Fi connection with the second electronic device 200.
[0085] S303, the application processor 30 of the first electronic device 100 sends a sleep command to the first Wi-Fi chip 10 and a wake-up command to the second Wi-Fi chip 20.
[0086] For example, after detecting the screen-off signal of the first electronic device 100, the application processor 30 of the first electronic device 100 sends a sleep command to the first Wi-Fi chip 10 and a wake-up command to the second Wi-Fi chip 20.
[0087] In some embodiments of this application, after the application processor 30 of the first electronic device 100 detects that the first electronic device 100 has entered a screen-off state, it can simultaneously send a sleep command to the first Wi-Fi chip 10 and a wake-up command to the second Wi-Fi chip 20.
[0088] In other embodiments, after the application processor 30 of the first electronic device 100 detects that the first electronic device 100 has entered a screen-off state, it may also send a sleep command to the first Wi-Fi chip 10 and a wake-up command to the second Wi-Fi chip 20 in sequence. This application does not limit the order in which the application processor 30 sends the various commands.
[0089] S304, the first Wi-Fi chip 10 of the first electronic device 100 responds to the sleep command and enters sleep mode.
[0090] For example, after receiving a sleep command, the first Wi-Fi chip 10 enters a sleep state. It is worth noting that the first Wi-Fi chip 10 does not send a disconnection data frame to the second electronic device 200 during the sleep state process. Therefore, after the first Wi-Fi chip 10 enters sleep mode, the first electronic device 100 still maintains a Wi-Fi connection with the second electronic device 200.
[0091] S305, the application processor 30 of the first electronic device 100 obtains the first MAC address and the first IP address of the first Wi-Fi chip 10.
[0092] For example, the application processor 30 of the first electronic device 100 can obtain the first MAC address and the first IP address of the connection between the first Wi-Fi chip 10 and the second electronic device 200, and use them to set the connection between the second Wi-Fi chip 20 and the second electronic device 200.
[0093] In other embodiments, the application processor 30 of the first electronic device 100 may also obtain the first MAC address and the first IP address of the first Wi-Fi chip 10 twice at different times. For example, after the first Wi-Fi chip 10 establishes a Wi-Fi connection with the second electronic device 200, the first MAC address of the first Wi-Fi chip 10 is obtained. After the second electronic device 200 assigns a first IP address to the first electronic device 100, the first IP address is obtained.
[0094] S306, the application processor 30 of the first electronic device 100 sets the MAC address and IP address of the second Wi-Fi chip 20 to be the first MAC address and the first IP address, respectively.
[0095] For example, after the application processor 30 of the first electronic device 100 wakes up the second Wi-Fi chip 20, it sets the MAC address of the second Wi-Fi chip 20 to the first MAC address. This prevents the second electronic device 200 from recognizing that the first electronic device 100 has switched Wi-Fi chips and from disconnecting from the first electronic device 100 (after the second electronic device 200 detects that the first electronic device 100 has switched Wi-Fi chips, the previous connection between the second electronic device 200 and the first electronic device 100 will be broken, and a new Wi-Fi connection will be established).
[0096] Furthermore, the application processor 30 of the first electronic device 100 can set the IP address of the second Wi-Fi chip 20 to the first IP address using a static IP address, thereby enabling the second Wi-Fi chip 20 to connect to the Internet using the same IP address as the first Wi-Fi chip 10. This ensures that the application in the first electronic device 100 will not detect the switching of the Wi-Fi chip to connect to the Internet, preventing the application in the first electronic device 100 from interrupting its connection to the Internet (when the application detects a different IP address for the network connection, it will interrupt the current data transmission service and retransmit the data at the new IP address).
[0097] For example, in some embodiments of this application, during the process of setting the MAC address of the second Wi-Fi chip, the physical MAC address of the second Wi-Fi chip can be modified to the first MAC address. In other embodiments, the logical MAC address connecting the second Wi-Fi chip to the second electronic device can also be configured as the first MAC address.
[0098] S307, the second Wi-Fi chip 20 of the first electronic device 100 and the second electronic device 200 establish a Wi-Fi connection based on the first MAC address and the first IP address.
[0099] For example, the second Wi-Fi chip 20 connects to the second electronic device 200 using the same first MAC address as the first Wi-Fi chip 10. This prevents the second electronic device 200 from detecting the first electronic device 100 switching Wi-Fi chips. Furthermore, the second Wi-Fi chip 20 of the first electronic device 100 connects to the second electronic device 200 using the first IP address, preventing applications in the first electronic device 100 from detecting the first electronic device 100 switching Wi-Fi chips and interrupting data transmission. This ensures the smoothness of the first electronic device 100's internet connection.
[0100] The switching process of the Wi-Fi chip in the first electronic device 100 will not be detected by the second electronic device 200, nor by the application on the first electronic device 100. Therefore, the connection between the application in the first electronic device 100 and the server 300 will not be interrupted, the first electronic device 100 can receive messages pushed by the server 300 in a timely manner, and the network connection status of the first electronic device 100 will not be interrupted or lag.
[0101] The technical solution of this application will now be described in conjunction with the software architecture of the first electronic device 100.
[0102] To facilitate understanding, we will first introduce the system software architecture of a first electronic device 100.
[0103] Figure 4 A schematic block diagram of the system software architecture of an electronic device is shown according to an embodiment of this application.
[0104] For example, taking a mobile phone as an example, the software system of the first electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This embodiment of the invention uses a layered architecture system as an example to illustrate the software structure of the first electronic device 100.
[0105] A layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. For example, in some embodiments, the operating system of the first electronic device 100 can be divided into four layers: an application layer, a framework layer, a native framework layer, a kernel layer, a hardware abstraction layer, and a hardware layer.
[0106] like Figure 4 As shown, the application layer can include a series of applications.
[0107] Applications may include wireless application protocol supplements (WAP supplements), application A, and user datagram protocol sockets (UDP sockets).
[0108] WPA Supplicant is an application used to manage Wi-Fi. For example, WPA Supplicant supports wireless protocols and encryption authentication for Wired Equivalent Privacy (WEP), Wi-Fi Protected Access (WPA, with three standards: WPA, WPA2, and WPA3), and Wireless LAN Authentication and Privacy Infrastructure (WAPI). WPASupplicant is middleware between the Wi-Fi driver and the user (Wi-Fi application), allowing the application to interact with the Wi-Fi network.
[0109] Application A could be, for example, a camera, gallery, calendar, caller ID, map, navigation, WLAN, Bluetooth, music, video, SMS, or other applications. Some applications, such as maps, navigation, and video, can access the internet via Wi-Fi and establish a TCP / IP connection with the corresponding server 300 for data transmission.
[0110] UDP socket is a connectionless network protocol used to send and receive data between processes on the same or different electronic devices.
[0111] The application layer of the first electronic device 100 is primarily responsible for interacting with the user, providing various applications and services to meet the user's needs. For example, it controls the startup, operation, and shutdown of various applications through application management functions, including application installation, uninstallation, and updates. It may also provide location and navigation services through positioning and navigation functions.
[0112] The framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The framework layer includes a set of predefined functions.
[0113] In some embodiments of this application, the framework layer may include, for example, a link switch service and a network management service.
[0114] Link switching service is a network communication mechanism that switches the data transmission path to an available network connection to ensure the reliability and continuity of data transmission.
[0115] For example, the link switching service operates between the network layer and data link layer in the operating system of an electronic device. It determines whether a link switch is needed by monitoring information such as the quality of the currently connected network signal and the data transmission rate. If a switch is required, it establishes a connection with the new network and switches the data transmission path to the new network connection. For example, in an embodiment of this application, the link switching service can switch the data transmission path between the operating system of the first electronic device 100 and the Wi-Fi chip when the first electronic device 100 switches Wi-Fi chips. For instance, when the first electronic device 100 switches from the first Wi-Fi chip 10 to the second Wi-Fi chip 20, the link switching service can detect an update to the network interface of the first electronic device 100 (i.e., the network interface of the second Wi-Fi chip 20 has been established; hereinafter, the network interface of the first Wi-Fi chip 10 is referred to as wlan1, and the network interface of the second Wi-Fi chip 20 is referred to as wlan2). The link switching service will then notify the network management service to add a routing table entry corresponding to the second Wi-Fi chip 20. Data packets transmitted between the application of the first electronic device 100 and the server 300 can be determined to be transmitted via wlan2 through newly added routing table entries, thus ensuring correct data packet routing. In other words, the routing rules of the newly added routing table entries control the transmission of data packets from the wlan2 network interface. When the first electronic device 100 switches from the second Wi-Fi chip 20 to the first Wi-Fi chip 10, the link switching service also notifies the network management service to delete the corresponding routing table entry for the second Wi-Fi chip to restore the data packet transmission path. That is, after the first electronic device 100 switches from the second Wi-Fi chip 20 to the first Wi-Fi chip 10, the data packets transmitted between the application of the first electronic device 100 and the server 300 revert to being transmitted via the wlan1 network interface.
[0116] Network management services may include, for example, network connection management, network policy management, network transmission data statistics, and network interface management.
[0117] Network connectivity management is used to provide data connectivity management services, such as mobile data, Wi-Fi, and Ethernet.
[0118] Network policy management is used to provide network policy management services. For example, it can prioritize network connections based on conditions such as time, location, and user identity.
[0119] Network transmission data statistics are used to provide statistical services for network transmission data. For example, real-time monitoring of data traffic and speed.
[0120] Network interface management provides management services for physical network interfaces. For example, in some embodiments of this application, after the first electronic device 100 switches from the first Wi-Fi chip 10 to the second Wi-Fi chip 20, the network management service can establish a new routing table entry based on the information sent by the link switching service, switching the communication between the application in the first electronic device 100 and the server 300 from the wlan1 network interface to the wlan2 network interface. Exemplarily, after detecting that the first electronic device 100 has added the second Wi-Fi chip 20's network interface wlan2, the link switching service sends the wlan2 network interface information (e.g., the IP address and subnet mask corresponding to the wlan2 network interface) to the network management service. The network management service then establishes a corresponding wlan2 routing table entry based on this wlan2 network interface information. Through this newly added routing table entry, the data packets transmitted between the first electronic device 100 and the server 300 can be controlled to be transmitted via the wlan2 network interface. Similarly, after the network management service deletes the newly added routing table entry, the transmission of data packets between the application in the first electronic device 100 and the server 300 switches to the wlan1 network interface.
[0121] In other embodiments, the framework layer may also include a window management service (WMS), a view system, a graphics system, a surface flinger system, a display engine service, a resource manager, a notification manager, etc.
[0122] The native framework layer contains native services and linked libraries. Examples include the audio distributor (audioflinger), media player service, camera service, and audio policy service.
[0123] Local services also include UDP sockets. UDP sockets in local services are a set of application programming interfaces (APIs) provided by the operating system for network programming, also known as datagram sockets. These APIs allow applications to create UDP sockets and bind them to specific local addresses and ports to send and receive datagrams. In network communication, applications need to use UDP sockets from local services to create UDP sockets and bind them to specific local addresses and ports. Then, applications can use these sockets to send and receive datagrams to communicate with remote host processes. Therefore, application-layer UDP sockets and UDP sockets in local services are closely related; they together implement network communication based on the UDP protocol.
[0124] The kernel layer is a layer between the hardware and software used to connect the hardware and software of the first electronic device 100. Exemplarily, in some embodiments of this application, the kernel layer may include, for example, a first Wi-Fi chip driver, a second Wi-Fi chip driver, and a TCP / IP protocol. The kernel layer controls the first and second Wi-Fi chips through the first and second Wi-Fi chip drivers. In other embodiments, the kernel layer may also include a central processing unit (CPU) driver, a graphics processing unit (GPU) driver, a display driver, a sensor driver, a camera driver, etc.
[0125] The Hardware Abstraction Layer (HAL) is located between the operating system kernel and the hardware layer. It is used to abstract the hardware, hide the details of the hardware interface, and provide a virtual hardware platform for the operating system.
[0126] For example, in some embodiments of this application, the HAL layer may include a network daemon (NetD) and a network filter (netfilter).
[0127] The network daemon is a background program responsible for network management and control. For example, it can configure firewalls, perform network address translation, control bandwidth, control wireless network card soft access points, tether network devices, and control routing tables. In the embodiments of this application, the network management service can send an instruction to the network daemon to add a new routing table entry. The network daemon then adds a new routing table entry (i.e., adds a routing rule) to control the routing path of data packets transmitted between the application in the first electronic device 100 and the server 300. For example, the newly added routing table entry can switch the transmission path of data packets between the application in the first electronic device 100 and the server 300 to the wlan2 network interface.
[0128] Network filters can filter and intercept network packets using rules, and custom rules can be defined to control the flow of network packets. For example, network filters provide a series of hooks that can intercept and process packets as they enter and leave the network interface. These hooks can be used to add, modify, and delete header and trailer information, as well as inspect and filter packet content. Through the rules and policies of network filters, functions such as filtering, monitoring, and security control of network data can be achieved.
[0129] The hardware layer includes hardware components of the first electronic device 100, such as a processor, memory, battery, camera, etc. In some embodiments of this application, the hardware layer may include components such as a first Wi-Fi chip and a second Wi-Fi chip.
[0130] like Figure 4 As shown, in some embodiments of this application, when the application processor 30 (i.e., the operating system and running applications of the first electronic device 100) and the first Wi-Fi chip 10 are in a wake-up state (i.e., the display screen of the first electronic device 100 is on), the first Wi-Fi chip 10 of the first electronic device 100 connects to the second electronic device 200 through authentication, association, four-way handshake, and other processes, thereby connecting to the Internet and establishing a connection with the server 300. At this time, the second Wi-Fi chip 20 is in a sleep state (e.g., ...). Figure 4 The shaded area in the image represents the dormant state.
[0131] When the application processor 30 and the first Wi-Fi chip 10 of the first electronic device 100 are in a sleep state (e.g.) Figure 4(The shaded area in the image represents the sleep state). The first electronic device 100 wakes up the second Wi-Fi chip 20 and enables the second Wi-Fi chip 20 to connect to the second electronic device 200 through authentication, association, four-way handshake and other processes, so as to maintain a long-term connection between the first electronic device 100 and the server 300 even when the operating system is in sleep state.
[0132] For example, the process of the first electronic device 100 switching between the first Wi-Fi chip 10 and the second Wi-Fi chip 20 includes link layer switching and network layer switching. During link layer switching, the second electronic device 200 does not detect that the first electronic device 100 is switching Wi-Fi chips.
[0133] It should be understood that the second electronic device 200 can determine the Wi-Fi chip connected to it through the MAC address of the Wi-Fi chip. In some embodiments of this application, when the first electronic device 100 switches from the first Wi-Fi chip 10 to the second Wi-Fi chip 20, it obtains the first MAC address of the first Wi-Fi chip 10 (for example, the obtained first MAC address of the first Wi-Fi chip 10 is 00:11:22:33:44:55), and then sets the MAC address of the second Wi-Fi chip 20 to the first MAC address. That is, the MAC address of the second Wi-Fi chip 20 is also 00:11:22:33:44:55. Therefore, the second electronic device 200 will detect that the first electronic device 100 is still using the same Wi-Fi chip to connect to the Internet. In other words, the second electronic device 200 will not detect that the first electronic device 100 has switched Wi-Fi chips to connect to the second electronic device 200.
[0134] When the network layer switches, the network connection between the application in the first electronic device 100 and the server 300 remains unchanged. That is, when the first electronic device 100 switches to the second Wi-Fi chip 20 to connect to the internet, the IP address of the second Wi-Fi chip 20 can be set to be the same as the IP address of the first Wi-Fi chip using a static IP address (manually set the IP address). Therefore, the application in the first electronic device 100 will not detect that the first electronic device 100 has switched Wi-Fi chips to connect to the internet, even if the IP address is the same.
[0135] The following describes the link layer switching process of the first electronic device 100.
[0136] Figure 5 A flowchart illustrating the implementation of switching Wi-Fi chips in an electronic device is shown according to some embodiments of this application.
[0137] Exemplary examples, in some embodiments of the application, the first electronic device 100 may be, for example, a mobile phone, tablet computer, laptop, wearable device, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), or other electronic devices. This application does not limit the specific type of the first electronic device 100. Furthermore, the second electronic device 200 in this application embodiment may be, for example, a router, mobile hotspot, wireless network card, wireless router, or mobile broadband modem. This application does not limit the specific type of the second electronic device 200.
[0138] like Figure 5 As shown, the process includes:
[0139] When the screen is on, the operating system of the first electronic device 100 is in a wake-up state.
[0140] S501, the first Wi-Fi chip 10 of the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200.
[0141] For example, in some embodiments of this application, when the first electronic device 100 is in a screen-on state, the first Wi-Fi chip 10 is in a wake-up state. The first Wi-Fi chip 10 of the first electronic device 100 can establish a Wi-Fi connection with the second electronic device 200 through processes such as authentication, association, and four-way handshake to generate a key.
[0142] For example, a four-way handshake includes:
[0143] First handshake: The second electronic device 200 sends a message containing ANonce to the first electronic device 100, and the first electronic device 100 generates PTK through ANonce.
[0144] The second handshake: After generating the PTK, the first electronic device 100 will respond with an EAPOL to the second electronic device 200. The EAPOL contains the SNonce and MIC. The second electronic device 200 uses the SNonce to generate its own PTK, and the MIC is used to verify the integrity of the message sent by the first electronic device 100.
[0145] The third handshake: The second electronic device 200 sends GTK to the first electronic device 100 and notifies the first electronic device 100 to encrypt the data using PTK and GTK.
[0146] Fourth handshake: First electronic device 100 sends a final EAPOL message to second electronic device 200, notifying second electronic device 200 that first electronic device 100 has encrypted its data using PTK. Upon receiving this message, second electronic device 200 will also encrypt its data using PTK.
[0147] After both parties complete the authentication, the control port of the second electronic device 200 will be opened, so that data frames can pass through normally. Moreover, all unicast data frames will be protected by PTK, and all multicast and broadcast data will be protected by GTK.
[0148] S502, the second electronic device 200 assigns a first IP address to the first Wi-Fi chip 10 of the first electronic device 100.
[0149] For example, in some embodiments of this application, after the first Wi-Fi chip 10 is connected to the second electronic device 200, the second electronic device 200 assigns a dynamic IP address (i.e., a first IP address) to the first Wi-Fi chip 10 via Dynamic Host Configuration Protocol (DHCP). For example, the first IP address could be 192.168.3.100. After receiving the first IP address assigned by the second electronic device 200, the DHCP client on the first electronic device 100 can access the Internet based on the first IP address and then establish a TCP / IP protocol connection with the server 300 to transmit data.
[0150] S503, the first Wi-Fi chip 10 of the first electronic device 100 receives a sleep command and enters sleep mode.
[0151] For example, in some embodiments of this application, when the first electronic device 100 enters a screen-off state, its operating system sends a sleep command to the first Wi-Fi chip 10 after detecting that the first electronic device 100 has entered a screen-off state. Subsequently, the operating system of the first electronic device 100 also enters a sleep state. For example, when the screen of the first electronic device 100 enters a screen-off state and the first electronic device 100 has not been operated for a period of time, it will automatically enter a sleep state. In other embodiments, the first electronic device 100 can also be manually set by the user to enter a sleep state.
[0152] After receiving the sleep command, the first Wi-Fi chip 10 will not send a deauth frame (a data packet that disconnects the network connection with the second electronic device 200) to the second electronic device 200. Instead, it will directly enter sleep mode, so the first electronic device 100 will not disconnect the Wi-Fi connection with the second electronic device 200.
[0153] S504, the second Wi-Fi chip 20 of the first electronic device 100 establishes a Wi-Fi connection with the second electronic device 200.
[0154] For example, in some embodiments of this application, after the operating system of the first electronic device 100 detects that the display screen of the first electronic device 100 has entered a screen-off state, it wakes up the second Wi-Fi chip and connects to the second electronic device 200 through authentication, association, and four-way handshake key generation based on the second Wi-Fi chip. The specific process of establishing a Wi-Fi connection through the four-way handshake can be referred to the description of step S501, and will not be repeated here.
[0155] For example, when the second Wi-Fi chip 20 of the first electronic device 100 connects to the second electronic device 200, the operating system of the first electronic device 100 obtains the first MAC address (e.g., 00:11:22:33:44:55) of the connection between the first Wi-Fi chip 10 and the second electronic device 200, and sets the MAC address of the second Wi-Fi chip 20 to the first MAC address (i.e., the MCA address of the second Wi-Fi chip 20 is also 00:11:22:33:44:55). Therefore, the process of authentication, association, and four-way handshake key generation between the second electronic device 200 and the second Wi-Fi chip 20 is equivalent to the process of the first electronic device 100 and the second electronic device 200 reconnecting. It should be understood that since the first Wi-Fi chip 10 does not disconnect from the second electronic device 200, the reconnection process is equivalent to the first electronic device 100 obtaining the key again and connecting with the second electronic device 200, and this process does not disconnect the network connection with the second electronic device 200. The second electronic device 200 will not detect that the first electronic device 100 has switched Wi-Fi chips. For example, the process of switching the Wi-Fi chip described above can be 200ms. That is, within these 200ms, the process of the first electronic device 100 switching the Wi-Fi chip to establish a Wi-Fi connection with the second electronic device 200 will not disconnect the previous connection between the first electronic device 100 and the second electronic device 200.
[0156] If the first electronic device 100 does not set the MAC address of the second Wi-Fi chip 20 to the first MAC address of the first Wi-Fi chip when switching the connection between the first electronic device 100 and the second electronic device 200, the second electronic device 200 will detect the switch. The second electronic device 200 will then disconnect from its previous connection with the first Wi-Fi chip 10 and reconnect to the second Wi-Fi chip 20. This reconnection process will cause the service previously connected to the second electronic device 200 via the first Wi-Fi chip 10 to be interrupted. In other words, the first electronic device 100 will experience lag during data transmission.
[0157] S505, the first electronic device 100 sets the IP address of the second Wi-Fi chip 20 to the first IP address.
[0158] For example, in some embodiments of this application, after the second Wi-Fi chip 20 is connected to the second electronic device 200, the first electronic device 100 can set the IP address of the second Wi-Fi chip 20 to the first IP address using a static IP address. That is, the IP address of the second Wi-Fi chip 20 is also 192.168.3.100. Therefore, since the IP address of the application in the first electronic device 100 connecting to the second electronic device 200 remains unchanged, the application will not detect that the first electronic device 100 has switched Wi-Fi chips, thus maintaining the network connectivity of the first electronic device 100.
[0159] It should be understood that during the process of the application connecting to the Internet and transmitting data with server 300, if the IP address of the first electronic device 100 changes, the application will disconnect from the current network and reconnect to the Internet and server 300 to transmit data using the new IP address. In other words, the application's current data transmission service will be interrupted, and the first electronic device 100 will experience lag during data transmission.
[0160] S506, the second Wi-Fi chip 20 of the first electronic device 100 connects to the Internet through the second electronic device 200 and sends a heartbeat packet to the server 300 to keep it alive.
[0161] For example, in some embodiments of this application, after the second Wi-Fi chip 20 connects to the Internet via the second electronic device 200, it establishes a connection with the server 300 and sends a heartbeat packet to the server 300 to keep the first electronic device 100 connected to the server 300. For instance, the second Wi-Fi chip 20 may send a data packet to the server 300 every 5 minutes to maintain the connection.
[0162] In other words, while the second Wi-Fi chip 20 is connected to the server 300, the second Wi-Fi chip 20 can receive messages pushed by the server 300. Even when the operating system of the first electronic device 100 is in sleep mode, there will be no delay in receiving messages.
[0163] In some embodiments of this application, when the second Wi-Fi chip 20 is woken up, it can automatically handle invalid broadcasts or spam messages sent by other devices, while the operating system of the first electronic device 100 and the first Wi-Fi chip 10 are in a sleep state.
[0164] In other embodiments, when the second Wi-Fi chip 20 receives a message pushed from the server 300 (e.g., a notification message from some application in the first electronic device 100), the second Wi-Fi chip 20 can wake up the operating system of the first electronic device 100 to process the corresponding pushed message. At this time, the first Wi-Fi chip 10 remains in sleep mode.
[0165] In other embodiments, when the second Wi-Fi chip 20 receives a message pushed from the server 300 (e.g., a message pushed by the server 300 indicating a conversation between another device and the first electronic device 100), the second Wi-Fi chip 20 wakes up the operating system of the first electronic device 100 to process the push message. When the operating system of the first electronic device 100 determines that the push message requires waking up the first Wi-Fi chip 10, it will wake up the first Wi-Fi chip 10, and the first electronic device 100 will switch to the first Wi-Fi chip 10 to process the corresponding push message.
[0166] S507, the second Wi-Fi chip 20 of the first electronic device 100 receives a sleep command and enters sleep mode.
[0167] For example, in some embodiments of this application, the display screen of the first electronic device 100 is turned on. The operating system of the first electronic device 100 sends a sleep command to the second Wi-Fi chip 20, and the second Wi-Fi chip 20 enters a sleep state. At this time, the second Wi-Fi chip will not send a deauth frame to the second electronic device 200, will not disconnect from the second electronic device 200, and will directly enter a sleep state.
[0168] S508, the first Wi-Fi chip 10 of the first electronic device 100 receives a wake-up command and establishes a Wi-Fi connection with the second electronic device 200.
[0169] For example, after the display screen of the first electronic device 100 is turned on, the operating system of the first electronic device 100 is awakened. The operating system of the first electronic device 100 sends a wake-up command to the first Wi-Fi chip 10, and the first Wi-Fi chip 10 is awakened upon receiving the wake-up command. Then, the first Wi-Fi chip 10 re-establishes a connection with the second electronic device 200 through authentication, association, and a four-way handshake to generate a key. During the re-establishment of the connection, the first Wi-Fi chip 10 still uses the previous MAC address. Therefore, the second electronic device 200 will not detect that the first electronic device 100 has switched Wi-Fi chips. The process of the first Wi-Fi chip 10 establishing a connection with the second electronic device 200 does not interrupt the previous connection state between the first electronic device 100 and the second electronic device 200.
[0170] S509, the first Wi-Fi chip 10 of the first electronic device 100 sets the IP address to the first IP address.
[0171] For example, in some embodiments of this application, after the first electronic device 100 switches to the connection between the first Wi-Fi chip 10 and the second electronic device 200 after the screen is turned on, the IP address of the first Wi-Fi chip 10 will also be set to the first IP address to ensure that the IP address of the first electronic device 100 for accessing the Internet does not change.
[0172] S510, the first Wi-Fi chip 10 of the first electronic device 100 connects to the Internet through the second electronic device 200 and establishes a TCP / IP protocol connection with the server 300.
[0173] For example, in some embodiments of this application, after the first Wi-Fi chip 10 of the first electronic device 100 reconnects to the Internet through the second electronic device 200, it can establish a connection with the server 300 and transmit data with the server 300.
[0174] For example, when the first electronic device 100 switches from the first Wi-Fi chip 10 to the second Wi-Fi chip 20 to connect with the second electronic device, the MAC address of the second Wi-Fi chip 20 is set to the first MAC address of the first Wi-Fi chip 10. Therefore, the second electronic device 200 will not detect that the first electronic device 100 has switched Wi-Fi chips and will not interrupt its Wi-Fi connection with the first electronic device 100. Furthermore, when the first electronic device 100 connects to the second electronic device 200 through the second Wi-Fi chip 20, the IP address of the second Wi-Fi chip 20 is set to be the same as the first IP address of the first Wi-Fi chip using a static IP address. This ensures that the application of the first electronic device 100 will not detect that the first electronic device 100 has switched Wi-Fi chips to connect to the Internet. Therefore, the application of the first electronic device 100 will not interrupt its current data transmission service, thus ensuring the smoothness of data transmission by the first electronic device 100.
[0175] The following describes the process by which the application in the first electronic device 100 does not detect the switching of the Wi-Fi chip by the first electronic device 100.
[0176] For example, Figure 6 According to some embodiments of this application, a link switching process for the network layer of an electronic device is illustrated.
[0177] For example, in order to prevent the application in the first electronic device 100 from detecting a change in the Wi-Fi link, the first Wi-Fi chip 10 has the same IP address as the second Wi-Fi chip.
[0178] For example, after the first Wi-Fi chip connects to the second electronic device 200, the second electronic device 200 assigns a first IP address to the Wi-Fi chip of the first electronic device 100 via DHCP. The DHCP client of the first electronic device 100 obtains the first IP address and connects to the second electronic device 200. When the operating system of the first electronic device 100 and the first Wi-Fi chip 10 go into sleep mode, the Wi-Fi link of the first electronic device 100 switches to the second Wi-Fi chip 20. The second Wi-Fi chip 20 uses a static IP address to set its IP address to the first IP address. Then, the network interface of the first electronic device 100 switches to the network interface of waln2.
[0179] like Figure 6As shown, after the operating system of the first electronic device 100 detects that the display screen of the first electronic device 100 has entered a screen-off state, it sends a sleep command to the first Wi-Fi chip 10 and a wake-up command to the second Wi-Fi chip 20 to switch the Wi-Fi chip connection to the second electronic device 200. After the first electronic device 100 switches to the second Wi-Fi chip 20 and connects to the second electronic device 200, the link switching service of the first electronic device 100 detects an update to the network interface of the first electronic device 100 (i.e., a switch from wlan1 to wlan2). The link switching service sends the network interface information of wlan2 (e.g., the IP address and subnet mask of wlan2; in this embodiment, the IP address of wlan1 is the same as the IP address of wlan2) to the network management service. After receiving the network interface information of wlan2 sent by the link switching service, the network management service sends a command to the network daemon (NetD) to add a routing table entry. The network daemon, based on instructions from the network management service to add routing table entries, adds new routing rules to the routing table so that data packets between the application of the first electronic device 100 and the server 300 are controlled through the new routing table entries, thereby switching the network interface of wlan1 to the network interface of wlan2 for transmission. Furthermore, the network daemon can also invoke hooks provided by the netfilter to intercept and process data packets entering and leaving the wlan2 network interface, thereby achieving functions such as network data filtering, monitoring, and security control.
[0180] For example, in an embodiment of this application, after the first electronic device 100 transitions from a screen-on state to a screen-off state, the first electronic device 100 switches to connecting to the second electronic device 200 via the second Wi-Fi chip 20, thereby connecting to the server 300. At this time, the network interface of the first electronic device 100 switches to wlan2. When transmitting data, the application of the first electronic device 100 transmits data by calling the UDP socket interface. For example, the application of the first electronic device 100 sends and receives data by calling the UDP socket interface in the native framework. The UDP socket interface in the native framework switches the transmission path of the sent and received data packets to the wlan2 network interface through the routing table entries added by NetD. This achieves the switching of the link layer of the first electronic device 100.
[0181] In other embodiments, the application of the first electronic device 100 can also send and receive data via UDP socket calls to the TCP socket interface in the native framework. TCP socket is a protocol that provides reliable, ordered, and error-free data transmission. The TCP socket interface in the native framework also switches the transmission path of the sent and received data packets to the wlan2 network interface through routing entries added to the routing table by NetD.
[0182] For example, in some embodiments of this application, when the display screen of the first electronic device 100 is turned on again, the operating system of the first electronic device 100 and the first Wi-Fi chip 10 are awakened. The link switching service in the operating system of the first electronic device 100 determines that the network interface of the first electronic device 100 has switched to wlan1, and then sends the network interface information of wlan1 to the network management service. The network management service deletes the newly added routing table entry in the network daemon. The network daemon switches the network interface wlan2 of the first electronic device 100 back to wlan1 through the original routing rules in the routing table (i.e., the routing path connecting the network interface to wlan1). Therefore, the application of the first electronic device 100 can re-transmit network data packets with the first Wi-Fi chip 10 through wlan1.
[0183] The following section uses a mobile phone as an example to describe in detail the first electronic device 100 involved in some embodiments of the present invention.
[0184] Figure 7 A schematic diagram of the structure of a first electronic device 100 is shown according to an embodiment of this application.
[0185] The first electronic 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, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0186] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the first electronic device 100. In other embodiments of this application, the first electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0187] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.
[0188] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0189] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0190] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (VIM) interface, and / or a universal serial bus (UCB) interface, etc.
[0191] The charging management module 140 is used to receive charging input from the charger. The charger can be a wireless charger or a wired charger.
[0192] The power management module 141 is used to connect 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 to power the processor 110, internal memory 121, display screen, camera, and wireless communication module 160, etc.
[0193] The wireless communication function of the first electronic device 100 can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor, and baseband processor.
[0194] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the first electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization.
[0195] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the first electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1.
[0196] The wireless communication module 160 can provide solutions for wireless communication applications applied to the first electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2. For example, in some embodiments of this application, the wireless communication module 160 may include a first Wi-Fi chip 10 and a second Wi-Fi chip 20, where the power consumption of the second Wi-Fi chip 20 is less than that of the first Wi-Fi chip 10. When the operating system of the first electronic device 100 and the first Wi-Fi chip 10 enter a sleep state, the first electronic device 100 switches to the second Wi-Fi chip 20 to maintain a connection with the server 300.
[0197] The external storage interface 120 can be used to connect an external storage card, such as a micro SD card, to expand the storage capacity of the first electronic device 100. The external storage card communicates with the processor 110 through the external storage interface 120 to perform data storage functions. For example, music, video, and other files can be saved on the external storage card.
[0198] Internal memory 121 can be used to store computer executable program code, which includes instructions. Internal memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback, image playback, etc.), etc. The data storage area may store data created during the use of the first electronic device 100 (such as audio data, phonebook, etc.). Furthermore, internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, universal flash storage (UFS), etc. Processor 110 executes various functional applications and data processing of the first electronic device 100 by running instructions stored in internal memory 121 and / or instructions stored in memory disposed in the processor.
[0199] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the first electronic device 100. In some embodiments, the first electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the first electronic device 100 and cannot be separated from the first electronic device 100.
[0200] In the accompanying drawings, some structural or methodological features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be necessary. Rather, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. Furthermore, the inclusion of structural or methodological features in a particular figure does not imply that such features are required in all embodiments, and in some embodiments, these features may be omitted or may be combined with other features.
[0201] It should be noted that all units / modules mentioned in the device embodiments of this application are logical units / modules. Physically, a logical unit / module can be a physical unit / module, a part of a physical unit / module, or a combination of multiple physical units / modules. The physical implementation of these logical units / modules themselves is not the most important factor; the combination of functions implemented by these logical units / modules is the key to solving the technical problems proposed in this application. Furthermore, to highlight the innovative aspects of this application, the above-described device embodiments of this application have not introduced units / modules that are not closely related to solving the technical problems proposed in this application. This does not mean that the above-described device embodiments do not contain other units / modules.
[0202] It should be noted that in the examples and description of this patent, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0203] Although this application has been illustrated and described with reference to certain preferred embodiments thereof, those skilled in the art should understand that various changes in form and detail may be made thereto without departing from the spirit and scope of this application.
Claims
1. A communication method applied to a first electronic device, characterized in that, The first electronic device includes a first Wi-Fi chip and a second Wi-Fi chip; and The method includes: The first electronic device is in an awake state, and communicates with a second electronic device through the first Wi-Fi chip, wherein the first Wi-Fi chip is connected to the second electronic device by using a first media access control address and a first Internet Protocol address; The first electronic device enters a sleep state and switches to communicate with the second electronic device through the second Wi-Fi chip, wherein the second Wi-Fi chip is connected to the second electronic device by using the first media access control address and the first Internet Protocol address; The power consumption of the second Wi-Fi chip is less than the power consumption of the first Wi-Fi chip.
2. The method of claim 1, wherein, The first electronic device enters the sleep state and switches to communicate with the second electronic device through the second Wi-Fi chip, including: The first electronic device enters the sleep state, controls the first Wi-Fi chip to sleep, and controls the first Wi-Fi chip not to send a message of disconnecting communication to the second electronic device.
3. The method of claim 1, wherein, Further comprising: The first electronic device switches from the sleep state to the awake state and switches to communicate with the second electronic device through the first Wi-Fi chip, wherein the first Wi-Fi chip is connected to the second electronic device by using the first media access control address and the first Internet Protocol address.
4. The method of claim 3, wherein, The first electronic device switches from the sleep state to the awake state and switches to communicate with the second electronic device through the first Wi-Fi chip, including: The first electronic device switches from the sleep state to the awake state, controls the second Wi-Fi chip to sleep, and controls the second Wi-Fi chip not to send a message of disconnecting communication to the second electronic device.
5. The method of claim 1, wherein, The first electronic device enters the sleep state and switches to communicate with the second electronic device through the second Wi-Fi chip, including: Sending a heartbeat packet to a server through the second electronic device by using the second Wi-Fi chip, and / or receiving a message from the server.
6. The method of claim 5, wherein, The method further includes: Corresponding to the message received from the server satisfying a first wake-up condition, the second Wi-Fi chip wakes up a processor of the first electronic device; Corresponding to the message received from the server satisfying a second wake-up condition, the second Wi-Fi chip wakes up the processor and the first Wi-Fi chip.
7. The method of claim 6, wherein, The first wake-up condition includes that the message received by the first electronic device from the server needs to be processed by the processor of the first electronic device and the second Wi-Fi chip; and the second wake-up condition includes that the message received by the first electronic device from the server needs to be processed by the processor of the first electronic device and the first Wi-Fi chip.
8. The method of claim 1, wherein, The second electronic device is an access point.
9. An electronic device, comprising: Including: A memory for storing instructions; The first Wi-Fi chip, the second Wi-Fi chip and the at least one processor are configured to execute the instructions to cause the electronic device to implement the communication method of any one of claims 1-8.
10. A computer-readable storage medium, characterized in that, The readable storage medium has instructions stored thereon, and the instructions, when executed on a computer, cause the computer to perform the communication method of any one of claims 1-8.
Citation Information
Patent Citations
Low power consumption equipment, keep-alive server and message pushing method and system
CN108270770A
Data transmission method and device, storage medium and electronic equipment
CN112996089A