Communication channel management method, device, electronic device and readable medium

By detecting and managing the communication channel collision rate in the wireless LAN and optimizing the channel usage strategy, the network conflict problem caused by TCP acknowledgement packets is solved, and the throughput and reliability of wireless communications are improved.

CN114337971BActive Publication Date: 2024-12-27CHINA TELECOM CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202111680200.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-23
Publication Date
2024-12-27
Estimated Expiration
2041-12-23

AI Technical Summary

Technical Problem

Frequent TCP acknowledgement packets in existing wireless LANs have led to intensification of network conflicts, limiting the reliability of data throughput and channel handover.

Method used

By detecting the collision rate of two communication channels of the terminal, it is determined that the channel with a high collision rate is used to transmit the first type of packets, and the channel with a low collision rate is used to transmit the second type of packets, and based on the collision rate between the two The difference determines whether to perform channel switching.

Benefits of technology

Reduces data conflicts during wireless communication and improves the throughput, reliability and continuity of wireless communication networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114337971B_ABST
    Figure CN114337971B_ABST
Patent Text Reader

Abstract

The present disclosure provides a communication channel management method, device, electronic device and readable medium, wherein the communication channel management method includes: detecting the collision rate of two communication channels of a terminal, the two communication channels have different frequencies; determining that the communication channel with a high collision rate in the two communication channels is used to transmit a first type of message; determining that the communication channel with a low collision rate in the two communication channels is used to transmit a second type of message; determining whether the communication channel is switched according to the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message. Through the embodiments of the present disclosure, data conflicts in communication scenarios are reduced, and the throughput and reliability of the communication network are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] At present, there are many wireless LAN implementation protocols, the most famous and widely used is the WI-FI (Wireless-Fidelity) protocol. 802.11ax is the latest wireless LAN standard launched in recent years. Compared with the previous generation of technology, it supports both 2.4G and 5G frequency bands, and obtains greater wireless capacity and reliability by applying denser modulation, reducing subcarrier spacing (78.125kHZ) and scheduling-based resource allocation.

[0003] According to the TCP (Transmission Control Protocol), application layer data must be frequently confirmed at the transport layer during communication to ensure reliable data transmission. However, the ACK (Acknowledgement) message used for confirmation is very short, and the efficiency of transmitting ACK messages is relatively low, which will bring more conflicts and congestion to the wireless LAN. In other words, the TCP transmission mechanism itself limits the data throughput in the wireless LAN to a certain extent.

[0004] In related technologies, rate adaptive algorithms can be used to dynamically adjust the transmission rate. The physical layer of the IEEE802.11 wireless network supports many different modulation and coding methods. Selecting the appropriate transmission rate according to different wireless channel conditions can effectively improve the throughput of network nodes. The mainstream rate adaptive algorithms include the following:

[0005] (1) Rate adaptation algorithm based on ACK (acknowledgement) feedback confirmation frame error rate.

[0006] (2) Rate adaptation algorithm based on channel signal noise ratio (SNR).

[0007] (3) This type of algorithm measures the entire wireless channel condition based on the SNR fed back by the receiver to the transmitter, and can respond quickly to channel changes.

[0008] The existing channel switching scheme not only requires additional overhead to transmit information, but also limits the improvement of throughput. In addition, when data frames collide and are lost, it will also cause adverse effects on the rate adaptation algorithm, making the channel switching scheme unreliable.

[0009] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0010] The purpose of the present disclosure is to provide a communication channel management method, device, electronic device and readable medium, which are used to overcome the problems of aggravated network conflicts caused by frequent transmission of TCP confirmation messages due to limitations and defects of related technologies, at least to a certain extent.

[0011] According to a first aspect of an embodiment of the present disclosure, a method for managing communication channels is provided, comprising: detecting a collision rate of two communication channels of a terminal, the two communication channels having different frequencies; determining that a communication channel with a higher collision rate among the two communication channels is used for transmitting a first type of message; determining that a communication channel with a lower collision rate among the two communication channels is used for transmitting a second type of message; and determining whether to switch the communication channels according to the collision rate for transmitting the first type of message and the collision rate for transmitting the second type of message.

[0012] In an exemplary embodiment of the present disclosure, detecting the collision rate of two communication channels of a terminal includes: detecting the collision rate of a first communication channel between a first network card of the terminal and an access terminal within a first preset time period; detecting the collision rate of a second communication channel between a second network card of the terminal and an access terminal within the first preset time period, the communication channels including the first communication channel and the second communication channel.

[0013] In an exemplary embodiment of the present disclosure, determining whether to switch the communication channel based on the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message includes: judging whether the collision rate of transmitting the first type of message is less than or equal to a preset collision rate, and judging whether the collision rate of transmitting the second type of message is less than or equal to the preset collision rate; if it is judged that the collision rate of transmitting the first type of message is less than or equal to the preset collision rate, and it is judged that the collision rate of transmitting the second type of message is less than or equal to the preset collision rate, then determining not to switch the communication channel.

[0014] In an exemplary embodiment of the present disclosure, determining whether the communication channel is switched based on the collision rate of transmitting the first category of messages and the collision rate of transmitting the second category of messages also includes: judging whether the collision rate of transmitting the first category of messages is less than or equal to a preset collision rate, and judging whether the collision rate of transmitting the second category of messages is less than or equal to the preset collision rate; if it is judged that the collision rate of transmitting the first category of messages is greater than the preset collision rate, or it is judged that the collision rate of transmitting the second category of messages is greater than the preset collision rate, then determining whether the communication channel is switched based on the collision rate difference between the collision rate of transmitting the first category of messages and the collision rate of transmitting the second category of messages.

[0015] In an exemplary embodiment of the present disclosure, if it is determined that the collision rate of the transmission of the first type of message is greater than the preset collision rate, or if it is determined that the collision rate of the transmission of the second type of message is greater than the preset collision rate, then determining whether the communication channel is switched according to the collision rate difference between the collision rate of the transmission of the first type of message and the collision rate of the transmission of the second type of message includes: if it is determined that the collision rate of the transmission of the first type of message is greater than the preset collision rate, or if it is determined that the collision rate of the transmission of the second type of message is greater than the preset collision rate, then calculating the collision rate difference between the collision rate of the transmission of the first type of message and the collision rate of the transmission of the second type of message; comparing the size relationship between the collision rate difference and the preset collision rate difference; determining whether the communication channel is switched according to the size relationship between the collision rate difference and the preset collision rate difference.

[0016] In an exemplary embodiment of the present disclosure, determining whether the communication channel is switched according to the size relationship between the collision rate difference and the preset collision rate difference includes: if it is determined that the collision rate difference is greater than the preset collision rate difference, determining that the communication channel is switched.

[0017] In an exemplary embodiment of the present disclosure, determining whether the communication channel is switched based on the size relationship between the collision rate difference and the preset collision rate difference includes: if it is determined that the collision rate difference is less than or equal to the preset collision rate difference, determining that the communication channel is not switched.

[0018] According to a second aspect of an embodiment of the present disclosure, a communication channel management device is provided, comprising: a detection module, configured to detect a collision rate of two communication channels of a terminal, the two communication channels having different frequencies; a determination module, configured to determine that the communication channel with a higher collision rate among the two communication channels is used to transmit a first type of message; the determination module, configured to determine that the communication channel with a lower collision rate among the two communication channels is used to transmit a second type of message; and a switching module, configured to determine whether to switch the communication channels based on the collision rate for transmitting the first type of message and the collision rate for transmitting the second type of message.

[0019] According to a third aspect of the present disclosure, there is provided an electronic device, comprising: a memory; and a processor coupled to the memory, wherein the processor is configured to execute any one of the methods described above based on instructions stored in the memory.

[0020] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which a program is stored, and when the program is executed by a processor, the method for managing a communication channel as described in any one of the above is implemented.

[0021] The embodiment of the present disclosure reduces data conflicts during wireless communication and improves the throughput, reliability and continuity of the wireless communication network by determining that the communication channel with a higher collision rate among the two communication channels is used to transmit a first type of message, and determining that the communication channel with a lower collision rate among the two communication channels is used to transmit a second type of message, and determining whether to switch the communication channels based on the collision rate for transmitting the first type of message and the collision rate for transmitting the second type of message.

[0022] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0024] Figure 1 is a topological diagram of a communication channel management solution in an exemplary embodiment of the present disclosure;

[0025] Figure 2 is a flow chart of a method for managing a communication channel in an exemplary embodiment of the present disclosure;

[0026] Figure 3 is a flow chart of another communication channel management method in an exemplary embodiment of the present disclosure;

[0027] Figure 4 is a flow chart of another communication channel management method in an exemplary embodiment of the present disclosure;

[0028] Figure 5 is a flow chart of another communication channel management method in an exemplary embodiment of the present disclosure;

[0029] Figure 6 is a flow chart of another communication channel management method in an exemplary embodiment of the present disclosure;

[0030] Figure 7 is a flow chart of another communication channel management method in an exemplary embodiment of the present disclosure;

[0031] Figure 8 is a channel switching schematic diagram of a communication channel management solution in an exemplary embodiment of the present disclosure;

[0032] Fig. 9 is a block diagram of a communication channel management device in an exemplary embodiment of the present disclosure;

[0033] Fig.10 is a block diagram of an electronic device in an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION

[0034] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as being limited to the examples set forth herein; on the contrary, these embodiments are provided so that the present disclosure will be more comprehensive and complete, and the concepts of the example embodiments are fully conveyed to those skilled in the art. The described features, structures, or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0035] In addition, the accompanying drawings are only schematic diagrams of the present disclosure, and the same reference numerals in the drawings represent the same or similar parts, so their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities, which do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0036] Figure 1 A schematic diagram showing an exemplary system architecture to which a positioning method or a positioning device according to an embodiment of the present invention can be applied is shown.

[0037] like Figure 1 As shown, the system architecture 100 may include one or more of terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or optical fiber cables, etc.

[0038] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. According to the implementation requirements, there may be any number of terminal devices, networks and servers. For example, the server 105 may be a server cluster composed of multiple servers.

[0039] Users can use terminal devices 101, 102, 103 to interact with server 105 through network 104 to receive or send messages, etc. Terminal devices 101, 102, 103 can be various electronic devices with display screens, including but not limited to smart phones, tablet computers, portable computers, desktop computers, etc.

[0040] In some embodiments, the positioning method provided in the embodiments of the present invention is generally performed by the terminal 105, and accordingly, the positioning device is generally arranged in the terminal device 103 (or the terminal device 101 or 102). In other embodiments, some servers may have functions similar to those of the terminal device to perform the method. Therefore, the positioning method provided in the embodiments of the present invention is not limited to being performed in the terminal device.

[0041] The exemplary embodiments of the present disclosure are described in detail below with reference to the accompanying drawings.

[0042] Figure 2 is a flow chart of a method for managing a communication channel in an exemplary embodiment of the present disclosure.

[0043] refer to Figure 2 , the communication channel management method may include:

[0044] Step S202: detecting a collision rate of two communication channels of the terminal, where the two communication channels have different frequencies.

[0045] Step S204: Determine that the communication channel with a higher collision rate among the two communication channels is used to transmit the first type of messages.

[0046] Step S206: Determine which of the two communication channels has the lower collision rate and use it to transmit the second type of messages.

[0047] Step S208: determining whether to switch the communication channel according to the collision rate of transmitting the first type of messages and the collision rate of transmitting the second type of messages.

[0048] The embodiment of the present disclosure reduces data conflicts during wireless communication and improves the throughput, reliability and continuity of the wireless communication network by determining that the communication channel with a higher collision rate among the two communication channels is used to transmit a first type of message, and determining that the communication channel with a lower collision rate among the two communication channels is used to transmit a second type of message, and determining whether to switch the communication channels based on the collision rate for transmitting the first type of message and the collision rate for transmitting the second type of message.

[0049] In an exemplary embodiment of the present disclosure, the first type of messages are data messages, and the second type of messages are ACK messages.

[0050] Specifically, the MAC layer protocol used in wireless LAN is CSMA / CA (Carrier Sense Multiple Access / Collision Avoidance). In this protocol, a node must monitor the channel before sending a data frame. If the channel is idle, it can send after waiting for a period of DIFS (Distributed Inter-frame Spacing). If the channel is busy, it needs to randomly back off for a period of time before detecting again. This is done to actively avoid collisions. The protocol uses a stop-and-wait mechanism. After the source node sends a data frame, it needs to wait for the ACK response from the receiving node, so that a frame of data is considered to have been transmitted. In order to minimize the probability of collisions and the impact of collisions, the 802.11 standard allows stations that want to send data to reserve channels. Before sending data frames, an RTS (Require To Send) frame is sent. The frame contains the source address, destination address and the time required for this communication. After receiving the CTS (Clear To Send) frame from the destination station, the channel reservation is realized.

[0051] Next, each step of the communication channel management method is described in detail.

[0052] In an exemplary embodiment of the present disclosure, Figure 3 As shown, the collision rate of two communication channels of the detection terminal includes:

[0053] Step S302: detecting a collision rate of a first communication channel between a first network card of the terminal and an access terminal within a first preset time period.

[0054] Step S304: detecting a collision rate of a second communication channel between the second network card of the terminal and the access end within the first preset time period, the communication channel including the first communication channel and the second communication channel.

[0055] In an exemplary embodiment of the present disclosure, the terminal is equipped with two wireless network cards, and the two frequency points are respectively connected to the two network cards of the terminal to form two transmission channels. All TCP sessions between the terminal and the AP use these two channels at the same time, wherein TCP data first-class messages and ACK first-class messages are each transmitted using different channels.

[0056] In an exemplary embodiment of the present disclosure, Figure 4 As shown, determining whether to switch the communication channel according to the collision rate of transmitting the first type of messages and the collision rate of transmitting the second type of messages includes:

[0057] Step S402, determine whether the collision rate of transmitting the first type of message is less than or equal to the preset collision rate, and determine whether the collision rate of transmitting the second type of message is less than or equal to the preset collision rate. If so, execute step S404, if not, execute step S406.

[0058] Step S404: if it is determined that the collision rate of transmitting the first type of message is less than or equal to the preset collision rate, and it is determined that the collision rate of transmitting the second type of message is less than or equal to the preset collision rate, it is determined not to switch the communication channel.

[0059] In an exemplary embodiment of the present disclosure, Figure 4 As shown, determining whether to switch the communication channel according to the collision rate of transmitting the first type of messages and the collision rate of transmitting the second type of messages also includes:

[0060] Step S402: determining whether the collision rate of transmitting the first type of messages is less than or equal to a preset collision rate, and determining whether the collision rate of transmitting the second type of messages is less than or equal to the preset collision rate.

[0061] Step S406, if it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then determine whether the communication channel is switched based on the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message.

[0062] In an exemplary embodiment of the present disclosure, the preset collision rate may be 40%.

[0063] In an exemplary embodiment of the present disclosure, Figure 5 As shown, if it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then determining whether the communication channel is switched according to the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message includes:

[0064] Step S502: If it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or if it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message is calculated.

[0065] Step S504: comparing the collision rate difference with a preset collision rate difference.

[0066] Step S506: determining whether the communication channel is to be switched according to the magnitude relationship between the collision rate difference and the preset collision rate difference.

[0067] In an exemplary embodiment of the present disclosure, the preset collision rate difference may be 20%.

[0068] In an exemplary embodiment of the present disclosure, Figure 6 As shown, determining whether the communication channel is to be switched according to the magnitude relationship between the collision rate difference and the preset collision rate difference includes:

[0069] Step S602: If it is determined that the collision rate difference is greater than the preset collision rate difference, then it is determined that the communication channel is switched.

[0070] In an exemplary embodiment of the present disclosure, Figure 6 As shown, determining whether the communication channel is to be switched according to the magnitude relationship between the collision rate difference and the preset collision rate difference includes:

[0071] Step S604: If it is determined that the collision rate difference is less than or equal to the preset collision rate difference, it is determined that the communication channel is not switched.

[0072] In an exemplary embodiment of the present disclosure, Figure 7 As shown, there is an access point AP702, a terminal 708 equipped with dual network cards and a channel control center 710 in the wireless local area network.

[0073] Among them, AP 702 can support communication with terminal 708 on two frequencies f1 and f2 at the same time. Each terminal 708 is equipped with two wireless network cards, namely network card 1 704 and network card 2 706. The two frequencies are respectively connected to the two network cards of the terminal 708 to form two transmission channels, which are respectively recorded as the channel of frequency f1 and the channel of frequency f2. All TCP sessions between a terminal 708 and AP 702 use these two channels at the same time, wherein TCP data packets and ACK packets are transmitted using different channels respectively.

[0074] The datagram generated by the upper layer application of terminal 708 is sent out through network card 1 704 or network card 2 706, AP 702 sends the datagram through the channel of frequency f1 or the channel of frequency f2, and terminal 708 sends the data packets received from the two network cards to the upper layer application through the virtual switch (v-switch) software.

[0075] Channel control center 710 makes channel switching decisions for TCP data packets and ACK packets transmitted between AP 702 and terminal 708 according to the channel congestion information reported by AP 702, and instructs TCP data packets and ACK packets to switch to the channels originally used by TCP data packets and ACK packets for transmission when necessary.

[0076] The workflow of the system for implementing the communication channel management solution disclosed above is as follows:

[0077] (1) AP 702 uses two frequencies f1 and f2 to connect to network card 1 704 and network card 2 706 of terminal 708 respectively, continuously counts the collision rate of the two channels, and reports to channel control center 710 at regular intervals.

[0078] (2) Channel control center 710 transmits control information to AP 702 and terminal 708 based on the information reported by AP 702, so that TCP data packets are transmitted on a channel with a small collision rate, and TCP ACK packets are transmitted on a channel with a large collision rate.

[0079] For example, at a specified time, the collision rate of channel f1 is less than the collision rate of channel f2. Then, after receiving the control information, AP 702 identifies the TCP datagram from the external network, changes the destination IP address to the IP of network card 1 704, and then transmits it on channel f1. When it identifies the ACK message from the external network, it changes the destination IP address to the IP of network card 2 706 and transmits it on channel f2.

[0080] The same is true for the terminal 708. The data packets of the network card 1 704 and the network card 2 706 are uniformly processed by the v-switch and then forwarded to the terminal 708. When sending data, the v-switch identifies the TCP data message and forwards it to the network card 1 704. When identifying the TCP ACK message, it forwards it to the network card 2 706. The AP 702 counts the collision rate on the two channels every T seconds and sends the collision information to the channel control center 710.

[0081] Furthermore, the channel control center 710 determines whether to switch channels according to the collision information of the last T seconds in accordance with the following rules: channel switching is performed when and only when the collision rate of any channel exceeds a certain set threshold α and the absolute value of the difference between the collision rates of the two channels is greater than a certain set threshold β. At this time, the channel control center 710 sends a channel switching signaling to control the AP 702 and the terminal 708 to switch channels.

[0082] like Figure 8As shown, data communication is performed within the wireless network between the terminal 802 and the AP 804, TCP data packets are transmitted through the channel of frequency f1, and ACK packets are transmitted through the channel of frequency f2. After channel switching is performed according to an embodiment of the present disclosure, TCP data packets are transmitted through the channel of frequency f2, and ACK packets are transmitted through the channel of frequency f1.

[0083] Specifically, AP 804 connects to the two network cards of terminal 802 through two frequencies. During the authentication process of establishing the connection, AP 804 will recognize that the IP addresses of the two network cards belong to the same device, and establish a mapping relationship between terminal 802 and its two IP addresses in the operation data of AP 804. TCP datagrams are transmitted to network card 1 on the channel of frequency f1, and TCP ACK packets are transmitted to network card 2 on the channel of frequency f2. When AP 804 receives TCP datagrams from the external network, it changes the destination IP address to network card 1, and when it receives ACK from the external network, it changes the destination IP address to network card 2. AP 804 continuously monitors the collision rate of data packets on the two frequency channels, and transmits channel congestion information to the channel switching control management center every 2 seconds.

[0084] Terminal 802 with dual network cards deploys v-switch software to integrate the TCP data received by the two network cards. The channel of frequency f1 is connected to network card 1 to transmit TCP datagrams, and the channel of frequency f2 is connected to network card 2 to transmit TCP ACK packets. v-switch adopts a strategy of full acceptance for the data packets transmitted by the two network cards. For the TCP data transmitted from terminal 802, the TCP data packet is forwarded to network card 1 according to the type of the data packet, and the TCP ACK is forwarded to network card 2. Network card 1 and network card 2 transmit their respective datagrams on their respective wireless channels.

[0085] The channel control center decides on channel switching based on the channel congestion status in the previous 2 seconds reported by AP 804. Channel switching is possible only when the collision rate of any channel is higher than 40%. It is recommended to set this parameter between 35% and 55%. This parameter is the absolute limit for channel switching.

[0086] If the channel collision rate is low, there is no need to switch channels. If the value is set too high, the sensitivity of channel switching will decrease and users will experience obvious network lag. When the collision rate of any channel is higher than 40%, channel switching will be relatively restricted. When the collision rate of the TCP datagram transmission channel is 20% higher than that of another channel, channel switching will be performed. It is recommended to set this parameter between 10% and 20%. If the value is set too small, it will cause channel switching to be too frequent and according to practice, if the collision rates of two channels are similar, there is no need to switch channels. If the value is set too large, channel switching will be sluggish and users will experience obvious network lag.

[0087] The embodiments of the present disclosure not only change the transmission mode of data and data ACK of a terminal 802 in the same channel, that is, use a terminal 802 configured with dual network cards to establish channels with different APs 804, but also allow data and data ACK to be transmitted in different channels, thereby greatly improving the TCP throughput in the WLAN.

[0088] Corresponding to the above method embodiments, the present disclosure also provides a communication channel management device, which can be used to execute the above method embodiments.

[0089] Fig. 9 It is a block diagram of a communication channel management device in an exemplary embodiment of the present disclosure.

[0090] refer to Fig. 9 , the communication channel management device 900 may include:

[0091] The detection module 902 is configured to detect a collision rate of two communication channels of the terminal, where the two communication channels have different frequencies.

[0092] The determination module 904 is configured to determine that the communication channel with a higher collision rate among the two communication channels is used for transmitting the message.

[0093] The determining module 904 is configured to determine the communication channel with a lower collision rate among the two communication channels for transmitting the data packet.

[0094] The switching module 906 is configured to determine whether to switch the communication channel according to the collision rate of transmitting the message and the collision rate of transmitting the data packet.

[0095] In an exemplary embodiment of the present disclosure, the detection module 902 is also used to: detect a collision rate of a first communication channel between the first network card of the terminal and the access end within a first preset time period; detect a collision rate of a second communication channel between the second network card of the terminal and the access end within the first preset time period, and the communication channel includes the first communication channel and the second communication channel.

[0096] In an exemplary embodiment of the present disclosure, the determination module 904 is also used to: determine whether the collision rate of transmitting the message is less than or equal to the preset collision rate, and determine whether the collision rate of transmitting the data packet is less than or equal to the preset collision rate; if it is determined that the collision rate of transmitting the message is less than or equal to the preset collision rate, and it is determined that the collision rate of transmitting the data packet is less than or equal to the preset collision rate, then determine not to switch the communication channel.

[0097] In an exemplary embodiment of the present disclosure, the switching module 906 is also used to: determine whether the collision rate of transmitting the message is less than or equal to the preset collision rate, and determine whether the collision rate of transmitting the data packet is less than or equal to the preset collision rate; if it is determined that the collision rate of transmitting the message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the data packet is greater than the preset collision rate, then determine whether the communication channel is switched based on the collision rate difference between the collision rate of transmitting the message and the collision rate of transmitting the data packet.

[0098] In an exemplary embodiment of the present disclosure, the switching module 906 is also used for: if it is determined that the collision rate of transmitting the message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the data packet is greater than the preset collision rate, then calculating the collision rate difference between the collision rate of transmitting the message and the collision rate of transmitting the data packet; comparing the size relationship between the collision rate difference and the preset collision rate difference; and determining whether the communication channel is switched according to the size relationship between the collision rate difference and the preset collision rate difference.

[0099] In an exemplary embodiment of the present disclosure, the switching module 906 is further configured to: if it is determined that the collision rate difference is greater than the preset collision rate difference, determine that the communication channel is switched.

[0100] In an exemplary embodiment of the present disclosure, the switching module 906 is further configured to: if it is determined that the collision rate difference is less than or equal to the preset collision rate difference, determine that the communication channel is not switched.

[0101] Since the functions of the communication channel management device 900 have been described in detail in the corresponding method embodiments, the present disclosure will not elaborate on them here.

[0102] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0103] In an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.

[0104] It will be appreciated by those skilled in the art that various aspects of the present invention may be implemented as a system, method or program product. Therefore, various aspects of the present invention may be specifically implemented in the following forms, namely: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as a "circuit", "module" or "system".

[0105] Refer to the following Fig.10 The electronic device 1000 according to this embodiment of the present invention will be described. Fig.10 The electronic device 1000 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0106] like Fig.10 As shown, the electronic device 1000 is in the form of a general computing device. The components of the electronic device 1000 may include but are not limited to: the at least one processing unit 1010, the at least one storage unit 1020, and a bus 1030 connecting different system components (including the storage unit 1020 and the processing unit 1010).

[0107] The storage unit stores program codes, which can be executed by the processing unit 1010, so that the processing unit 1010 performs the steps according to various exemplary embodiments of the present invention described in the above “Exemplary Method” section of this specification. For example, the processing unit 1010 can perform the method shown in the embodiment of the present disclosure.

[0108] The storage unit 1020 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 10201 and / or a cache storage unit 10202 , and may further include a read-only storage unit (ROM) 10203 .

[0109] The storage unit 1020 may also include a program / utility 10204 having a set (at least one) of program modules 10205, such program modules 10205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0110] Bus 1030 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0111] The electronic device 1000 may also communicate with one or more external devices 1040 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 1000, and / or communicate with any device that enables the electronic device 1000 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 1050. Furthermore, the electronic device 1000 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 1060. As shown, the network adapter 1060 communicates with other modules of the electronic device 1000 via a bus 1030. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 1000, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0112] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0113] In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, on which a program product capable of implementing the above method of the present specification is stored. In some possible implementations, various aspects of the present invention can also be implemented in the form of a program product, which includes a program code, and when the program product is run on a terminal device, the program code is used to enable the terminal device to execute the steps according to various exemplary embodiments of the present invention described in the above "Exemplary Method" section of the present specification.

[0114] The program product for implementing the above method according to an embodiment of the present invention can adopt a portable compact disk read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto, and in this document, a readable storage medium can be any tangible medium containing or storing a program, which can be used by or in combination with an instruction execution system, an apparatus or a device.

[0115] The program product may use any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0116] Computer readable signal media may include data signals propagated in baseband or as part of a carrier wave, in which readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Readable signal media may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0117] The program code embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0118] Program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., through the Internet using an Internet service provider).

[0119] In addition, the above-mentioned figures are only schematic illustrations of the processes included in the method according to an exemplary embodiment of the present invention, and are not intended to be limiting. It is easy to understand that the processes shown in the above-mentioned figures do not indicate or limit the time sequence of these processes. In addition, it is also easy to understand that these processes can be performed synchronously or asynchronously, for example, in multiple modules.

[0120] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The specification and examples are to be considered exemplary only, and the true scope and concept of the present disclosure are indicated by the claims.

Claims

1. A method for managing a communication channel, characterized in that: include: detecting a collision rate of two communication channels of a terminal, wherein the two communication channels have different frequencies; Determine that the communication channel with a higher collision rate among the two communication channels is used for transmitting the first type of messages; Determine that the communication channel with a lower collision rate among the two communication channels is used to transmit the second type of messages; Determining whether to switch the communication channel according to a collision rate of transmitting the first type of messages and a collision rate of transmitting the second type of messages includes: If it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then calculating the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message; Comparing the magnitude relationship between the collision rate difference and a preset collision rate difference; Whether the communication channel is to be switched is determined according to a magnitude relationship between the collision rate difference and the preset collision rate difference.

2. The communication channel management method according to claim 1, characterized in that: The collision rate of two communication channels of the detection terminal includes: Detecting a collision rate of a first communication channel between a first network card of the terminal and an access terminal within a first preset time period; detecting a collision rate of a second communication channel between the second network card of the terminal and the access end within the first preset time period, The communication channels include the first communication channel and the second communication channel.

3. The communication channel management method according to claim 1 or 2, characterized in that: Determining whether to switch the communication channel according to the collision rate of transmitting the first type of messages and the collision rate of transmitting the second type of messages includes: Determining whether the collision rate of transmitting the first type of message is less than or equal to a preset collision rate, and determining whether the collision rate of transmitting the second type of message is less than or equal to the preset collision rate; If it is determined that the collision rate of transmitting the first type of messages is less than or equal to the preset collision rate, and it is determined that the collision rate of transmitting the second type of messages is less than or equal to the preset collision rate, it is determined not to switch the communication channel.

4. The communication channel management method according to claim 1 or 2, characterized in that: Determining whether to switch the communication channel according to the collision rate of transmitting the first type of messages and the collision rate of transmitting the second type of messages further includes: Determining whether the collision rate of transmitting the first type of message is less than or equal to a preset collision rate, and determining whether the collision rate of transmitting the second type of message is less than or equal to the preset collision rate; If it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or if it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then it is determined whether the communication channel is switched based on the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message.

5. The communication channel management method according to claim 1, characterized in that: Determining whether to switch the communication channel according to the magnitude relationship between the collision rate difference and the preset collision rate difference includes: If it is determined that the collision rate difference is greater than the preset collision rate difference, it is determined that the communication channel is switched.

6. The communication channel management method according to claim 1 or 5, characterized in that: Determining whether to switch the communication channel according to the magnitude relationship between the collision rate difference and the preset collision rate difference includes: If it is determined that the collision rate difference is less than or equal to the preset collision rate difference, it is determined that the communication channel is not switched.

7. A communication channel management device, characterized in that: include: A detection module, configured to detect a collision rate of two communication channels of a terminal, wherein the two communication channels have different frequencies; A determination module, configured to determine that the communication channel with a higher collision rate among the two communication channels is used to transmit the first type of message; The determination module is configured to determine that the communication channel with a lower collision rate among the two communication channels is used to transmit the second type of message; A switching module, configured to determine whether to switch the communication channel according to a collision rate of transmitting the first type of message and a collision rate of transmitting the second type of message, comprising: If it is determined that the collision rate of transmitting the first type of message is greater than the preset collision rate, or it is determined that the collision rate of transmitting the second type of message is greater than the preset collision rate, then calculating the collision rate difference between the collision rate of transmitting the first type of message and the collision rate of transmitting the second type of message; Comparing the magnitude relationship between the collision rate difference and a preset collision rate difference; Whether the communication channel is to be switched is determined according to a magnitude relationship between the collision rate difference and the preset collision rate difference.

8. An electronic device, characterized in that: include: Memory; as well as A processor coupled to the memory, the processor being configured to execute the communication channel management method according to any one of claims 1 to 6 based on instructions stored in the memory.

9. A computer-readable storage medium having a program stored thereon, wherein when the program is executed by a processor, the method for managing a communication channel according to any one of claims 1 to 6 is implemented.