Link establishment method and device, communication system and computer readable medium
A link establishment and network link technology, which is applied in the field of link establishment, communication systems and computer readable media, can solve problems such as link quality jitter, terminal data transmission instability, etc., to improve stability and user experience high degree of stability
Active Publication Date: 2020-05-22
TENCENT TECH (SHENZHEN) CO LTD
7 Cites 3 Cited by
AI-Extracted Technical Summary
Problems solved by technology
[0002] At present, data can be transmitted between different terminals through pre-established data links, but the link quality will change wit...
Method used
As another kind of implementation mode, can also set external network address obtaining server in communication system, carry out the obtaining of external network address and the operation based on external network address configuration relay server by external network address obtaining server, can reduce on the one hand The data processing pressure and transmission pressure of the signaling server, on the other hand, can also implement the acquisition of the IP address and the subsequent deployment of the process of transmitting data according to the transit link to the data link based on the UDP protocol.
Therefore, in order to overcome above-mentioned defect, the embodiment of the present application provides link establishment method, device, communication system and computer-readable medium, make first terminal and second terminal can use a plurality of transit links simultaneously to realize data interaction , which can improve the stability of data transmission and user QoE. It should be noted that, in the embodiment of the present application, "first" and "second" in the first terminal and the second terminal do not specifically refer to, but refer to two user equipments.
[0061] Wherein, the information of the first transfer server is used for establishing the link between the first terminal and the second terminal and the first transfer server. As an implementation manner, the information of the first transit server may include an external network address of the first transit server, so that the first terminal sends data to the first transit server through the external network address of the ...
Abstract
The invention discloses a link establishment method and device, a communication system and a computer readable medium, and relates to the technical field of communication. The method comprises the steps of acquiring a first network type identifier and a second network type identifier sent by a first terminal; determining information of a first transit server corresponding to the first network typeidentifier and information of a second transit server corresponding to the second network type identifier; and sending the information of the first transit server and the information of the second transit server to the first terminal, so that the first terminal establishes a first network link with the second terminal according to the information of the first transit server, and establishes a second network link with the second terminal according to the information of the second transit server. The first terminal can perform data interaction with the second terminal through the wireless network link and the cellular data network link at the same time, and data transmission is performed through the established multiple links, so that the stability of data transmission is higher, and the user experience can be improved.
Application Domain
Connection management
Technology Topic
Data transmissionEngineering +7
Image
Examples
- Experimental program(1)
Example Embodiment
[0031] In order to make those skilled in the art better understand the solutions of the present application, the following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the accompanying drawings in the embodiments of the present application.
[0032] Currently, different terminals can communicate through a pre-established data link to realize information sharing and network social activities.
[0033] The data link refers to the network path through which data is transmitted to the peer client. According to the different ways of data transmission, the data link is divided into two ways: direct connection transmission and transit transmission. The direct connection transmission mode is that the user equipment and the user equipment directly perform point-to-point (P2P) data transmission, and there is no server node in the transmission path. The transit transmission method is to add a transit server between two user equipments, and the data stream needs to be transmitted to the opposite end through the server. The success rate and transmission stability of direct links are limited, while the stability of transit links is more reliable. Therefore, it is very important to improve the transmission quality of transit links. In this embodiment of the present application, a transit link is created between the two terminals through a transit server, and data exchange is implemented according to the transit continuous transmission.
[0034]As an implementation manner, with the development of mobile terminal technology and the improvement of network bandwidth, more and more users choose to use voice and video over IP technology (voice and video over IP, VVoIP) for remote communication. Among them, VVoIP refers to a communication method that transmits voice and images in real time between different terminals (such as PCs, smart phones, etc.) based on an IP network (IP Network). In VVoIP, sound and pictures are transmitted through data links between users in the form of data streams. Data streams need to have the characteristics of low latency and high stability in order to provide high-quality VVoIP services.
[0035] like figure 1 As shown, it shows a schematic diagram of a data transmission system based on a transit link. The system includes a first terminal 101 and a second terminal 102. A relay link is established between the first terminal 101 and the second terminal 102 through the relay server 300. Data transmission between the first terminal 101 and the second terminal 102 can be performed by The relay server 300 is implemented. For example, the first terminal 101 may send data to the relay server 300 , and the relay server 300 may send the data to the second terminal 102 , so that the first terminal 101 sends the data to the second terminal 102 .
[0036] The first terminal 101 and the second terminal 102 may be mobile terminal devices, such as smart phones, tablet computers, e-book readers, laptop computers, vehicle-mounted computers, wearable mobile terminals and the like. In some embodiments, both the first terminal 101 and the second terminal 102 are installed with clients, and the first user operates the client of the first terminal 101 and the second user operates the client of the second terminal 102 to implement a video call or a voice call wait for data interaction.
[0037] Both the first terminal 101 and the second terminal 102 may have two access networks, namely wireless network access and cellular data network access. Among them, wireless network access means that a terminal exchanges data with other terminals through a wireless network card and a near-end wireless router; cellular data network access means that a terminal exchanges data with other terminals through a wireless baseband and a base station.
[0038] Among them, a cellular data network (Cellular network), also known as a mobile network (mobile network), is a mobile communication hardware architecture. Specifically, the network service area is divided into many cells (cells, that is, "cells"), and each cell is provided with a base station, which is responsible for the communication and control of each mobile station in the cell.
[0039] The cellular data network may be a 5G (5th Generation, 5G) communication system (or called a New Radio (NR) system), a Long Term Evolution (LTE, Long Term Evolution) network, a General Packet Radio Service (GPRS, General Packet Radio Service) ) system, a Global System for Mobi- cations (GSM, Global System for Mobi telecommunication) network, or a Universal Mobile Telecommunications System (UMTS, Universal Mobile Telecommunications System), and of course other cellular networks.
[0040] The wireless network may be a wireless local area network (WLAN, Wireless Local Area Networks), and specifically may be Wi-Fi (Wireless Fidelity, wireless fidelity).
[0041] With the development of hardware equipment and audio and video codec technology, the quality of data links has become a key factor affecting the quality of VVoIP services. However, the quality of current data links is not always satisfactory to users. Some of the reasons are that in current VVoIP services, terminals generally use a single access point data link to transmit audio and video streams. For example, in the case where the terminal starts the Wi-Fi network and the cellular data network at the same time, the terminal will only use the Wi-Fi network to transmit data. As the Wi-Fi signal strength, signal interference, and network node congestion status change, the link quality of the transmitted data will result in packet loss and delay. However, since the VVoIP service uses the user datagram protocol (UDP) instead of the transmission control protocol (TCP), the packet loss retransmission mechanism and the congestion control strategy of the TCP protocol are not suitable for VVoIP business. Therefore, the occurrence of conditions such as packet loss and delay will lead to the degradation of link quality, which greatly reduces the quality of experience (QoE) of users.
[0042] Therefore, in order to overcome the above shortcomings, the embodiments of the present application provide a link establishment method, device, communication system, and computer-readable medium, so that the first terminal and the second terminal can use multiple transit links at the same time to realize data interaction, which can improve the The stability of data transmission and the improvement of user QoE. It should be noted that, in the embodiments of the present application, "first" and "second" in the first terminal and the second terminal do not specifically refer to, but refer to two user equipments.
[0043] The following first introduces the application environment of the link creation process provided by some embodiments of the present application. like figure 2 As shown, the first terminal 101, the second terminal 102 and the signaling server 200 constitute a communication system, and both the first terminal 101 and the second terminal 102 can be connected to the signaling server 200, which can be based on the first terminal The access network identifier sent to the signaling server 200 when 101 or the second terminal 102 requests to connect to the opposite terminal The transit server is connected to the transit link, so as to realize data exchange according to the transit link.
[0044] like figure 2 As shown, there may be two transit links between the first terminal 101 and the second terminal 102 , which are a first transit link connected through the first transit server 301 and a second transit link connected through the second transit server 302 respectively. road. For the process of establishing a link between the first terminal 101 and the second terminal 102, reference may be made to subsequent embodiments.
[0045] Please refer to image 3 , image 3 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 The communication system within a figure 2 Signaling server 200 in the communication system shown. The method may include: S301 to S303.
[0046] S301: Acquire a first network type identifier and a second network type identifier sent by the first terminal.
[0047] The first network type identifier is used to represent that the first terminal requests to interact with other devices through the first network, and the second network type identifier is used to represent that the first terminal requests to interact with other devices through the second network.
[0048] As an implementation manner, the first network type identifier may be the full name or name abbreviation of the first network to be accessed by the first terminal, or other self-defined identifiers, and the second network type identifier may be the identifier to be accessed by the first terminal. The full name or name abbreviation or other custom identification of the second network.
[0049] The signaling server can determine whether the access network belongs to the first network or the second network through the name of the access network, and can further determine that the first terminal requests to interact with other devices in the manner of the first network or the second network.
[0050] In some embodiments, the first network and the second network may be two networks of the same type. For example, if the first network and the second network are both wireless networks, or both are cellular data networks, the first network and the second network represent two different network access points, and the first network and the second network are both wireless networks. Taking the network as an example, the first network is a wireless network whose access point is wifi1, and the second network is a wireless network whose access point is wifi2.
[0051] In other embodiments, the first network and the second network may be two different types of networks. In the embodiment of the present application, the first network is a wireless network, the first network type identifier is a wireless network identifier, the second network is a cellular data network, and the second network type identifier is a cellular data network identifier.
[0052] The attribute information such as the format or naming manner of the name of the cellular data network is relatively fixed, so that it can be clearly distinguished from the name of the wireless access point. For example, China Mobile's access network name is CMNET, and China Telecom's access network name is CNNET. Therefore, after acquiring the wireless network identifier and the cellular data network identifier, the identifiers belonging to the cellular data network can be identified first, and the rest of the identifiers are the wireless network identifiers.
[0053] As another implementation manner, the first terminal is provided with a wireless network card for accessing the wireless network and a wireless baseband for accessing the cellular data network, also referred to as a secondary network card. Then the wireless network identifier may be the identifier of the wireless network card, and the cellular data network identifier may be the identifier of the secondary network card. The first terminal may send the identifier of the wireless network card and the identifier of the secondary network card to the signaling server in advance and store it, then in some embodiments, after the signaling server obtains the wireless network identifier and the cellular data network identifier sent by the first terminal, It is compared with the pre-stored identifier of the wireless network card and the identifier of the secondary network card, so as to identify the wireless network identifier and the cellular data network identifier currently sent by the first terminal.
[0054] In some embodiments, the first terminal may send the wireless network identity and the cellular data network identity to the signaling server through a connection request. The first terminal may send a connection request to the signaling server when acquiring the data transmission instruction, and the connection request may include at least one of a wireless network identifier and a cellular data network identifier. The data transmission instruction may be generated based on the user's operation on the first terminal.
[0055] Taking the video call between the first terminal and the second terminal as an example, both the first terminal and the second terminal have a social application with video calling function installed. A user, the user ID logged into the social application of the second terminal is the second user, the first user clicks the video call button in the chat interface with the second user in the social application of the first terminal, and then enters the video call request interface ,like Figure 4 displayed interface. When detecting that the video call button in the interface is triggered, the first terminal determines that the data transmission instruction is acquired. For example, in the first terminal display Figure 4 When the interface shown is displayed, it is determined that the data transmission instruction is obtained, and then a connection request is sent to the signaling server. Of course, when the second user connects to the video call request sent by the first user, the second terminal will return a specified information to the first terminal, and the specified information is used to inform the first terminal that the second terminal agrees to this If the second video call is made, the first terminal determines that the data transmission instruction is obtained when the specified information is obtained.
[0056] As an implementation manner, the first terminal may simultaneously send the wireless network identifier and the cellular data network identifier to the signaling server. When acquiring the data transmission instruction, the first terminal may package the wireless network identifier and the cellular data network identifier into the connection request, and send the connection request to the signaling server.
[0057] As another implementation manner, the first terminal may send the wireless network identifier and the cellular data network identifier to the signaling server through two connection requests, respectively.
[0058]In some embodiments, the two connection requests are respectively named as wireless connection request and cellular connection request. The wireless network identifier can be sent to the signaling server through the wireless connection request first, and then the cellular data network identifier can be sent through the wireless connection request. sent to the signaling server. For example, when the first terminal obtains the data transmission instruction, only the wireless network is enabled, but the cellular data network is not enabled, the first terminal first sends a wireless connection request, and then, when detecting that the cellular data network is enabled, then Send a cellular connection request.
[0059] In other embodiments, the cellular data network identifier may be sent to the signaling server through a cellular connection request first, and then the wireless network identifier may be sent to the signaling server through a wireless connection request. For example, when the first terminal obtains the data transmission instruction, only the cellular data network is enabled, but the wireless network is not enabled, the first terminal first sends the cellular connection request, and then, when detecting that the wireless network is enabled, sends the Wireless connection request.
[0060] S302: Determine the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier.
[0061] The information of the first relay server is used for establishing links between the first terminal and the second terminal and the first relay server. As an implementation manner, the information of the first relay server may include the external network address of the first relay server, so that the first terminal sends data to the first relay server through the external network address of the first relay server. In addition, the information of the first relay server may also include a data transmission parameter, and the data transmission parameter may be a supported encryption algorithm, and the first terminal may encrypt the data to be sent according to the encryption algorithm to ensure the security of data transmission . Similarly, the information of the second relay server may be the external network address and data transmission parameters of the second relay server, etc., which will not be repeated here with reference to the description of the information of the first relay server.
[0062] The signaling server can allocate a relay server to the first terminal. As an implementation manner, the allocation strategy may be to select a relatively idle relay server among the multiple relay servers as the first relay server and the second relay server. Specifically, each relay server is set with an idle state, and the idle state can be set according to information such as the number of links connected to the relay server and the amount of data transmission. For example, the idle state may be represented by a numerical value. The larger the numerical value of the idle state is, the busier the corresponding intermediate server is, and the smaller the numerical value of the idle state is, the more idle the corresponding intermediate server is. Therefore, the relay servers whose idle state value is smaller than the specified value can be selected as the first relay server and the second relay server.
[0063] As another implementation manner, the signaling server can configure the first relay server for the wireless network according to the external network address corresponding to the wireless network identifier, so as to determine the information of the first relay server corresponding to the wireless network identifier. Similarly, the signaling server can configure a second relay server for the cellular data network according to the external network address corresponding to the cellular data network identifier, so as to determine the information of the second relay server corresponding to the cellular data network identifier. For specific implementation manners, reference may be made to subsequent embodiments, which will not be repeated here.
[0064] S303: Send the information of the first relay server and the information of the second relay server to the first terminal.
[0065] Wherein, the first terminal establishes a first network link with the second terminal according to the information of the first relay server, and establishes a network link with the second terminal according to the information of the second relay server the second network link between.
[0066] It should be noted that, in the embodiments of the present application and subsequent embodiments, the first network is a wireless network, the first network type identifier is a wireless network identifier, the second network is a cellular data network, and the second network type identifier is a cellular network The data network identifier is taken as an example to describe the implementation of each embodiment of the present application.
[0067] After acquiring the information of the first relay server, the first terminal can determine the first relay server according to the information of the first relay server, so as to establish a wireless network link with the second terminal through the first relay server road. Similarly, after acquiring the information of the second relay server, the first terminal can determine the second relay server according to the information of the second relay server, and establish a cellular connection with the second terminal through the second relay server. data network link.
[0068] After the wireless network link and the cellular data network link are established, the first terminal can exchange data with the second terminal simultaneously through the wireless network link and the cellular data network link. For example, if the first terminal sends the designated data to the second terminal, the first terminal may send a part of the designated data to the second terminal through the wireless network link, and send another part of the designated data through the cellular data network link The data is sent to the second terminal, so that when one of the wireless network link and the cellular data network link is of poor quality, the part of the specified data sent to the second terminal through the poor link can be reduced, improving the The stability of data transmission can improve user experience, and the multiple links of the first terminal and the second terminal adopt the mode of relay transmission, which further improves the stability of data transmission.
[0069] As an implementation manner, the first terminal can send the data to be sent to the second terminal through the wireless network link and the cellular data network link based on the importance information of the data to be sent and the communication quality of the two network links send.
[0070] Specifically, the data to be sent includes at least two sub-data. As an implementation manner, the types of each sub-data are different. For example, the data to be sent is audio and video data, and the audio and video data includes two sub-data, which are video stream data and audio stream data respectively, that is, the types of the two sub-data are different. . As another implementation manner, different sub-data may be different data segments in the data to be sent.
[0071] The importance information of the data to be sent can be the importance of each sub-data, obtain the communication quality of the wireless network link and the cellular data network link, and obtain the link with better communication quality among the wireless network link and the cellular data network link. , sending sub-data with higher importance to the second terminal, and sending sub-data with lower importance to the second terminal through the link with poor communication quality in the wireless network link and the cellular data network link. The higher degree of importance means that the degree of importance is greater than the specified degree of importance, and the higher degree of importance means that the degree of importance is less than or equal to the specified degree of importance, and the specified degree of importance may be a degree value set in advance according to requirements.
[0072] In some embodiments, the degree of importance may be represented by an importance value, where the importance value is a numerical value, and the higher the importance value of the sub-data, the higher the degree of importance of the sub-data. As an implementation manner, a value range (for example, 0-10) of a preset importance value can be set to different importance values for multiple sub-data, and the specified importance degree is taken from the value range, for example, it can be 6 . Assuming that the data to be sent includes sub-data 1, sub-data 2 and sub-data 3, and the importance degrees of sub-data 1, sub-data 2 and sub-data 3 are 2, 5 and 8 respectively, and the specified importance is 6, then sub-data 3 Sub-data with higher importance can be sent by the first terminal to the second terminal through the wireless network link, and sub-data 1 and sub-data 2 are sub-data with lower importance, which can be sent by the first terminal through the cellular data network link. route to the second terminal.
[0073] In other embodiments, the higher degree of importance and the lower degree of importance may be important states of the sub-data, that is, the important state includes a higher degree of importance and a lower degree of importance. The important state may be configured by the first terminal for the sub-data, and specifically, may be configured for a plurality of sub-data in the data to be sent based on the user's configuration operation on the first terminal. As an implementation manner, the configuration operation may be configured according to the category of the sub-data, and the important status of the sub-data belonging to the first category is configured as a higher degree of importance, and the important status of the sub-data of the second category is configured as less important. Wherein, the first category and the second category may be set according to actual usage requirements, for example, the first category is a video stream, and the second category is an audio stream.
[0074] The communication quality is used to measure the data transmission capability of the link, and specifically, the data transmission capability may include data transmission rate, data transmission stability, and the like. As an implementation manner, the first signal strength value of the wireless network link and the second signal strength value of the cellular data network link may be obtained, and the signal strength value of the wireless network link and the cellular data network link with a higher signal strength value may be obtained. The link is regarded as a link with better communication quality, and a link with a lower signal strength value among wireless network links and cellular data network links is regarded as a link with poor communication quality.
[0075] As another implementation manner, the first terminal can send the data to be sent to the second terminal through the wireless network link and the cellular data network link based on the data size of the sub-data in the data to be sent.
[0076] Specifically, the data size of each sub-data is acquired, the sub-data whose data size is larger than the specified size is sent to the second terminal through the wireless network link, and the other sub-data is sent to the second terminal through the cellular data network link.
[0077] Specifically, the sub-data whose data size is larger than the specified size is recorded as the first sub-data, the sub-data whose data size is less than or equal to the specified size is recorded as the second sub-data, and the first sub-data is sent to the first sub-data through the wireless network link. The second terminal sends the second sub-data to the second terminal through the cellular data network link. The specified size may be a value set in advance according to requirements, which is not limited here. For example, in the audio and video data, the data size of the video stream is larger than the data size of the audio stream, the first terminal sends the video stream to the second terminal through the wireless network link, and the first terminal sends the audio stream through the cellular data network link. to the second terminal.
[0078] In addition, as described above, the signaling server can determine the information of the first relay server according to the external network address corresponding to the wireless network identifier, and determine the information of the second relay server according to the external network address corresponding to the cellular data network identifier. The external network address corresponding to the wireless network may be directly acquired by the first terminal. For example, the first terminal accesses the wireless network through the wireless router, and obtains the external network address corresponding to the wireless network by viewing the IP address of the wan port of the wireless router. When the first terminal accesses the cellular data network, the external network address on the cellular data network cannot be directly obtained, and the external network address of the first terminal on the cellular data network can be obtained according to the method described in the subsequent embodiments.
[0079] Please refer to Figure 5 , Figure 5 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 The communication system within a figure 2 Signaling server 200 in the communication system shown. The method may include: S501 to S505.
[0080] S501: Obtain the wireless network identifier and the cellular data network identifier sent by the first terminal.
[0081] S502: Determine the information of the first relay server corresponding to the wireless network identifier.
[0082] S503: Obtain a first URL configured for the first terminal by the operator of the cellular data network.
[0083]Wherein, the operator of the cellular data network can configure the first URL and the second URL for the first terminal. The first URL may be an external network address, that is, a public network address, and the second URL may be an internal network address, that is, a local area network address. After the terminal is successfully registered in the cellular data network, the terminal will obtain the local area network address assigned by the operator to the terminal, that is, the intranet address, which is configured in the address pool under a network access point on the core network. When the data packets of the terminal are to be transmitted from the operator's network to the internet network (ie, the public network), the Network Address Translation (NAT) at the exit of the public network will convert the local area network address into a public network address to access the internet.
[0084] Specifically, when the first terminal sends data on the cellular data network, the operator of the cellular data network allocates a public IP to the first terminal, and the first terminal can access the Internet through the public IP to communicate with other devices . Then the public network IP may be the first web address configured for the first terminal by the operator of the cellular data network, that is, the external network address. In this embodiment of the present application, the first website address may be an external network address.
[0085] As an implementation manner, the signaling server can acquire the external network address through a data packet sent by the first terminal through the cellular data network. In some embodiments, the first terminal sends a data packet to the signaling server on the cellular data network, that is, sends the data packet to the signaling server in a P2P manner. When the data packet enters the public network from the internal network, the operator will write the public network IP in the data packet, and the signaling server will parse the data packet to obtain the public network IP after obtaining the data packet. In this embodiment of the present application, data is transmitted between the first terminal and the signaling server through the TCP protocol.
[0086] As another implementation, an external network address acquisition server may also be set in the communication system, and the external network address acquisition server performs the operations of acquiring the external network address and configuring the relay server based on the external network address, which can reduce the number of signaling servers on the one hand. On the other hand, the acquisition of IP addresses and the subsequent process of data transmission according to the transit link can be deployed to the data link based on the UDP protocol.
[0087] S504: Determine the information of the second relay server according to the external network address.
[0088] The signaling server can configure the second relay server for the cellular data network of the first terminal according to the external network address. As an implementation manner, the external network address can reflect the geographic location of the access network device (for example, the base station), and the second transit server is configured according to the geographic location. For example, a relay server whose positional relationship with the geographic location of the access network device satisfies the preset condition is used as the second relay server, wherein the relay server that satisfies the preset condition may be the one closest to the geographic location of the access network device. Transit server. In addition, the operator information can also be obtained through the external network address, and the information of the second relay server can also be determined according to the operator information, or the information of the second relay server can be determined by combining the operator information with the location information, Specifically, please refer to the subsequent embodiments, which will not be repeated here.
[0089] S505: Send the information of the first relay server and the information of the second relay server to the first terminal.
[0090] wherein, the first terminal establishes a wireless network link with the second terminal according to the information of the first relay server, and establishes a wireless network link with the second terminal according to the information of the second relay server between cellular data network links.
[0091] It should be noted that, for parts that are not described in detail in the above steps, reference may be made to the foregoing embodiments, and details are not described herein again.
[0092] The following first introduces an application environment of the link creation process provided by another embodiment of the present application. like Image 6 shown, compared to figure 2 , the communication system further includes an external network address acquisition server 400, wherein the external network address acquisition server 400 supports the transmission of data corresponding to the operator information of the cellular data network. For example, if the operator of the cellular data network of the first terminal 101 is Telecom, the external network address obtaining server 400 supports data transmission of Telecom.
[0093] Wherein, both the first terminal 101 and the second terminal 102 are installed with a designated client, and the designated client may be the above instant messaging, and the first terminal 101 and the second terminal 102 realize data transmission through the instant messaging. In the embodiment of the present application, the data is video data, the communication mode between the first terminal 101 and the second terminal 102 is based on VVoIP, and the transmission protocol between the two is the UDP protocol.
[0094] like Image 6 As shown, the application layer is responsible for the encoding and decoding, collection, and playback of audio and video data, and can also interact with the signaling server. The link layer is responsible for the specific creation and management logic of the transit link and other operations. The access network is used to describe the network interface of the terminal, wherein the Wi-Fi link is connected to the relay server through the wireless network card, and the cellular data network link is connected to the relay server through the wireless baseband, that is, the network interface of the Wi-Fi link is wireless. Network card, the network interface of the cellular data network link is the wireless baseband.
[0095] The signaling server 200 is used for link creation, management decision-making and information synchronization. The external network address obtaining server 400 is configured to obtain the external network address configured for the first terminal by the operator of the cellular data network, and determine the information of the second transit server according to the external network address. The functions of the signaling server 200 and the external network address obtaining server 400 will be described below with reference to the method embodiments.
[0096] like Figure 7 shown, Figure 7 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above Image 6 The communication system in the system, wherein, in this embodiment of the present application, the execution body of the method may be a signaling server. The method may include: S701 to S707.
[0097] S701: Acquire the wireless network identifier and the cellular data network identifier sent by the first terminal.
[0098] S702: Determine the information of the first relay server corresponding to the wireless network identifier.
[0099] S703: Acquire the user identification card information sent by the first terminal.
[0100] As an implementation manner, when sending the cellular data network identifier, the first terminal sends subscriber identity modula (SIM) information to the signaling server. For example, both the cellular data network identifier and the SIM card information are sent to the signaling server through the cellular connection request, so that when the signaling server acquires the cellular data network identifier, it also acquires the SIM card information.
[0101] As another implementation manner, after acquiring the cellular data network identifier, the signaling server sends an information acquisition request to the first terminal, instructing the first terminal to send the SIM card information to the signaling server.
[0102] The first terminal may acquire the SIM card information in a manner that the first terminal invokes a SIM card information acquisition module in the first terminal to acquire the SIM card information. Wherein, the SIM card information acquisition module may be an API pre-installed in the operating system of the first terminal. The API may be a service component in the operating system of the first terminal, for example, the API is TelephonyManager, that is, a service class in the operating system that manages call status and telephone network information. This class provides functions to get SIM card information.
[0103] S704: Allocate a server for obtaining an external network address to the first terminal according to the SIM card information.
[0104] After allocating an external network address acquisition server to the first terminal according to the SIM card information, the signaling server instructs the first terminal to send a data packet to the external network address acquisition server through the cellular data network. As an implementation manner, indication information may be sent to the first terminal, and the first terminal may send a data packet to the external network address obtaining server through the cellular data network according to the indication information. The configuration information may include information of an external network address obtaining server, and the information of the external network address obtaining server may include information such as an IP address or a connection port. For details, please refer to subsequent embodiments.
[0105] Wherein, the SIM card information may include the card number of the SIM card, and the card number of the SIM card is used as the identification of the SIM card. As an implementation manner, the correspondence between the card number of the SIM card and the external network address obtaining server is pre-stored in the signaling server. For example, after the signaling server once configured an external network address acquisition server for the terminal corresponding to the SIM card number, the corresponding relationship between the SIM card number and the configured external network address acquisition server is stored, then when the SIM card is acquired again When the card number of the SIM card is obtained, the server for obtaining the external network address corresponding to the card number of the SIM card can be found according to the corresponding relationship, as the server for obtaining the external network address allocated to the first terminal.
[0106] In addition, the SIM card information also includes a mobile country code (Mobile Country Code, MCC) and a mobile network code (Mobile Network Code, MNC), then according to the SIM card information, the first terminal is assigned an external network address to obtain An implementation manner of the server may be: acquiring operator information according to the SIM card information; and acquiring a server by assigning an external network address to the first terminal according to the operator information.
[0107] Wherein, the operator information is used to represent the operator to which the cellular network data of the first terminal belongs, and the signaling server may search the network address deployed in the operator according to the operator to which the cellular network data determined by the operator information belongs. The server is used as the server for obtaining the external network address allocated to the first terminal. For example, if the MCC and MNC information shows that the cellular network of the first terminal is a mobile cellular network, the server for obtaining an external network address deployed in the mobile is directly allocated to the first terminal.
[0108] In addition, it should be noted that the first terminal may be a multi-card multi-standby terminal, that is, the first terminal has card slots for multiple SIM cards and can use multiple SIM cards, then the first terminal obtained by the signaling server sends the The SIM card corresponding to the SIM card information is the SIM card currently being used or the SIM card currently used for data transmission through the cellular data network among the multiple SIM cards used by the first terminal.
[0109] S705: Obtain the external network address determined by the external network address obtaining server.
[0110] The external network address is determined by the external network address obtaining server according to a received data packet, and the data packet is sent by the first terminal to the external network address obtaining server through the cellular data network.
[0111] After the signaling server assigns the external network address obtaining server to the first terminal, the external network address obtaining server may determine the external network address corresponding to the cellular data network of the first terminal through a data packet sent by the first terminal on the cellular data network.
[0112]As an implementation manner, the signaling server sends the information of the external network address obtaining server allocated to the first terminal to the first terminal, and instructs the first terminal to send a data packet to the external network address obtaining server through the cellular data network. The data packet may be a socket packet of the UDP protocol. During the transmission of the data packet in the cellular data network, the operator of the cellular data network allocates an external network address to the first terminal and writes it into the data packet. When the external network address obtaining server receives the data packet , parse the data packet to obtain the external network address. As an implementation manner, when the data packet is located in the intranet of the cellular data network, the source address in the data packet is the intranet IP address, and then when the data packet enters the public network of the cellular data network, the data The internal network IP address in the source address of the packet is modified by the operator to the public network IP address, and the external network address acquisition server reads the public network IP address in the source address, then the public network IP address is the one of the cellular data network. The external network address configured by the operator for the first terminal.
[0113] As an implementation manner, the external network address obtaining server may directly send the obtained external network address to the signaling server. As another implementation, in order to reduce the burden of data processing of the external network address acquisition server and avoid setting a communication module in the external network address acquisition server, so as to realize the communication with the signaling server through the communication module, the pre-established The communication link between the first terminal and the external network acquisition server and the communication link between the first terminal and the signaling server are obtained, and the external network address is transferred to the signaling server through the first terminal. Specifically, the external network address obtaining server sends the external network address to the first terminal, and the first terminal sends the external network address to the signaling server, and the signaling server obtains the external network address sent by the first terminal.
[0114] S706: Determine the information of the second relay server according to the external network address.
[0115] S707: Send the information of the first relay server and the information of the second relay server to the first terminal.
[0116] It should be noted that, for parts that are not described in detail in the above steps, reference may be made to the foregoing embodiments, and details are not described herein again.
[0117] like Figure 8 shown, Figure 8 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above Image 6 The communication system in the system, wherein, in this embodiment of the present application, the execution body of the method may be a signaling server. The method may include: S801 to S806.
[0118] S801: Acquire a wireless network identifier and a cellular data network identifier sent by the first terminal.
[0119] S802: Determine the information of the first relay server corresponding to the wireless network identifier.
[0120] Wherein, the implementation manner of determining the information of the first relay server corresponding to the wireless network identifier may also be to obtain the external network address corresponding to the wireless network identifier, record it as the wireless external network address, and determine the first relay server according to the external network address. The specific determination process is similar to the process of determining the information of the second relay server according to the external network address configured by the operator of the cellular data network for the first terminal, and the subsequent embodiments may be referred to.
[0121] S803: Obtain an external network address configured for the first terminal by the operator of the cellular data network.
[0122] S804: Obtain network information corresponding to the external network address.
[0123] The network information may include at least one of geographic location information and operator information. Then, the geographic location information may be geographic location information of the access network corresponding to the external network address, which is used to indicate the geographic location of the access device used to connect the first terminal to the public network.
[0124] S805: Determine the information of the second relay server according to the network information corresponding to the external network address.
[0125] It should be noted that the manner of determining the first relay server may also be determined according to the network address corresponding to the wireless network, and the specific implementation may refer to the determination of the second relay server.
[0126] As an implementation manner, the network information is geographic location information, and the signaling server configures the second relay server for the first terminal according to the geographic location information. For a specific implementation, refer to the description in S504.
[0127] As another implementation manner, the network information is operator information, and the signaling server configures a second transit server for the first terminal according to the geographic location information, where the operator information may be an operator identifier, and the second transit server can support Data is transmitted within the cellular data network corresponding to the operator information. For example, if the operator information corresponding to the external network address is China Mobile, the second transit server is a transit server deployed on the network of China Mobile.
[0128] As another implementation manner, the network information may be geographic location information and operator information, and the signaling server configures a second transit server for the first terminal according to the geographic location information and operator information at the same time, and the second transit server satisfies S504 simultaneously. The preset conditions described in and support for data transmission within the cellular data network corresponding to the operator information.
[0129] In addition, considering that the second relay server not only needs to send the data of the first terminal to the second terminal, but also needs to send the data of the second terminal to the first terminal, therefore, it can be based on the network information of the first terminal and the second terminal at the same time. The network information of the terminal determines the second relay server. As an implementation manner, the external network address configured by the operator of the cellular data network for the first terminal is recorded as the first external network address, and the address of the second transit server is determined according to the network information corresponding to the external network address. The information is implemented by acquiring network information corresponding to the second external network address of the second terminal; determining the second external network address according to the network information corresponding to the first external network address and the network information corresponding to the second external network address. Information about the relay server.
[0130] Wherein, for the acquisition method of the second external network address of the second terminal and the acquisition method of the network information corresponding to the second external network address of the second terminal, reference may be made to the aforementioned first external network address and network information corresponding to the first external network address. The acquisition method will not be repeated here. The network information of the second external network address may also include at least one of geographic location information and operator information. To facilitate the description of the solution, the network information corresponding to the first external network address is recorded as the first network information, and the network information corresponding to the second external network address is recorded as the second network information.
[0131] As an implementation manner, the first network information is geographic location information, which is recorded as first geographic location information, and the second network information is also geographic location information, recorded as second geographic location information. A second relay server is determined according to the first geographical position information and the second geographical position information, wherein the geographical position information of the second relay server is located between the first geographical position information and the second geographical position information.
[0132] As an implementation manner, the first network information is operator information, which is denoted as first operator information, and the second network information is also operator information, denoted as second operator information. A second relay server is determined according to the first operator information and the second operator information, and the second relay server simultaneously supports the transmission of data corresponding to the operator information of the first terminal and data corresponding to the operator information of the second terminal , that is, the second relay server is deployed on the cellular data network of the first operator information and the cellular data network of the second operator information at the same time.
[0133] As another implementation manner, the network information corresponding to the first external network address and the network information corresponding to the second external network address both include geographic location information and operator information, that is, the first network information is the first geographic location information and the first operator information, the second network information is the second geographic location information and the second operator information, the geographic location information of the second relay server is located between the first geographic location information and the second geographic location information, and the second geographic location information The relay server simultaneously supports the transmission of the data corresponding to the first operator information and the data corresponding to the second operator information.
[0134] For example, if the external network address of the first terminal corresponds to Beijing Mobile, and the external network address of the second terminal corresponds to Guangzhou Telecom, the second relay server may be the relay server of Wuhan Mobile Telecom Shuangtong.
[0135] S806: Send the information of the first relay server and the information of the second relay server to the first terminal.
[0136] It should be noted that the above steps are part of the detailed description, and reference may be made to the foregoing embodiments, which will not be repeated here.
[0137] like Figure 9 shown, Figure 9 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 and 6 The communication system in the system, wherein, in this embodiment of the present application, the execution body of the method may be a signaling server. The method includes: S901 to S905.
[0138] S901: Acquire the wireless network identifier and the cellular data network identifier sent by the first terminal.
[0139] S902: Search for an identifier that matches the pre-stored identifier of the access network to which the first terminal has established a connection in the wireless network identifier and the cellular data network identifier, as a target identifier.
[0140] As an implementation manner, the signaling server pre-stores the identifiers of the access networks to which the first terminal has established connections, and the identifiers of the access networks that have established connections may be recorded as the first set, that is, the identifiers stored in the first set. The identifier of each access network may correspond to information of a historical relay server, and the first terminal used the historical relay server to establish a relay link.
[0141] After acquiring the wireless network identifier and the cellular data network identifier sent by the first terminal this time, the signaling server matches the wireless network identifier and the cellular data network identifier with the identifiers of the access networks in the first set, and finds the identifier that matches the first set. The identity of the access network in a set that is consistent with the identity is used as the target identity. The target identification can then be represented as a reactivated access network.
[0142] S903: Acquire the information of the historical relay server corresponding to the identifier of the access network where the connection has been established that matches the target identifier, as the information of the relay server corresponding to the target identifier.
[0143] According to the information of the historical relay server corresponding to the identifier of each access network in the first set, the information of the historical relay server corresponding to the target identifier is found as the identifier of the relay server corresponding to the target identifier.
[0144] S904: Acquire an unmatched identifier between the wireless network identifier and the cellular data network identifier, and assign information of a new relay server to the unmatched identifier.
[0145] Wherein, if the unmatched identifier is used as the newly enabled identifier, the method described in the above embodiment may be used to allocate the information of the relay server to the identifier.
[0146] It should be noted that the target identifier may be at least one of a wireless network identifier and a cellular data network identifier.
[0147]As an implementation manner, the target identifier may be a wireless network identifier, and the information of the historical relay server corresponding to the wireless network identifier is used as the information of the first relay server, and the information of the second relay server corresponding to the cellular data network identifier is the above-mentioned information. way to obtain. When the target identifier is a cellular data network identifier and the target identifier is a wireless network identifier and a cellular data network identifier, the method of determining the information of the first relay server and the information of the second relay server may refer to the target The case where the identifier is a wireless network identifier will not be repeated here.
[0148] S905: Send the information of the first relay server and the information of the second relay server to the first terminal.
[0149] In addition, when a network switch occurs on the first terminal, for example, at least one of the Wi-Fi network and the cellular data network is turned on or off, the above-mentioned method may be performed to determine the transfer server's status for the access network scanned after the network switch. information and update the current link between the first terminal and the second terminal.
[0150] As an embodiment, it is assumed that the identifiers of the access networks scanned before the network switching of the first terminal form a set P, the identifiers of the access networks scanned after the network switching of the first terminal form a set Q, and the first terminal described above The set is denoted as set T. Denote A=P-Q as the set of closed access networks, where A is the set composed of the identities of the closed access networks after network switching, then the closed access networks belong to the set P but not to the set Q. Denote B=Q-T as the newly added access network set, where B is the set formed by the identifiers of the newly added access networks after network handover, then the newly added access network does not belong to the set T, but belongs to the set Q. That is, C=(Q-P)∩T is the set of reactivated access networks, where C indicates that after the network handover, the access networks in the set T are reactivated, and the reactivated access networks belong to both the set Q and the set T. T, but does not belong to the set P.
[0151] For the access network belonging to the set A, the status of the transit link corresponding to the access network is set as unavailable, and the first terminal and the second terminal are notified not to use this link to send and receive data packets. For the access network belonging to set B, create a new transit link according to the above method. For the access network belonging to the set C, the historical transit link corresponding to the access network is set to an active state, that is, it is available, and the first terminal and the second terminal are notified that the link can be reused to send and receive data packets.
[0152] It should be noted that the above steps are part of the detailed description, and reference may be made to the foregoing embodiments, which will not be repeated here.
[0153] like Figure 10 shown, Figure 10 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 and 6 In the communication system shown, in the embodiment of the present application, the execution body of the method is a signaling server. The method may include: S1001 to S1005.
[0154] S1001: Acquire a wireless network identifier and a cellular data network identifier sent by the first terminal.
[0155] S1002: Determine the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier.
[0156] S1003: Detect whether the first confirmation information and the second confirmation information are acquired.
[0157] The first confirmation information is used to indicate that the first relay server is in a connectable state, and the second confirmation information is used to indicate that the second relay server is in a connectable state.
[0158] The use state of the relay server includes a connectable state and a non-connectable state, and the first terminal and the second terminal can establish a relay link through the relay server only when the relay server is in a connectable state.
[0159] After determining the first relay server and the second relay server, the signaling server respectively inquires whether the first relay server and the second relay server can be connected, and the first relay server and the second relay server determine whether to reply according to their own usage status Confirm the information. Specifically, the signaling server sends a first confirmation instruction to the first relay server, and the first relay server detects whether the first relay server is in a connectable state according to the first confirmation instruction, and if so, sends the first confirmation information to the first relay server. Transit server. Similarly, the signaling server sends a second confirmation instruction to the second relay server, so that the second relay server sends second confirmation information to the second relay server when it is determined that the second relay server is in a connectable state.
[0160] As an implementation manner, the first confirmation instruction may be information of the first relay server, and the second confirmation instruction may be information of the second relay server. Before detecting whether the first confirmation information and the second confirmation information are obtained, send the information of the first relay server to the first relay server to instruct the first relay server to use the information of the first relay server After the connection is initialized, return the first confirmation information; send the information of the second relay server to the second relay server to instruct the second relay server to initialize the connection according to the information of the second relay server, and then return Second confirmation message. For specific implementation manners, reference may be made to subsequent embodiments.
[0161] S1004: When the first confirmation information is acquired, send the information of the first relay server to the first terminal.
[0162] S1005: When the second confirmation information is obtained, send the information of the second relay server to the first terminal.
[0163] It should be noted that the above steps are part of the detailed description, and reference may be made to the foregoing embodiments, which will not be repeated here.
[0164] like Figure 11 shown, Figure 11 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 and 6 In the illustrated communication system, in the embodiment of the present application, the execution body of the method is the first terminal, and the method may include: S1101 to S1103.
[0165] S1101: Send a wireless network identifier and a cellular data network identifier to the signaling server.
[0166] S1102: Acquire the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier sent by the signaling server.
[0167] S1103: Establish a wireless network link with the second terminal through the first relay server according to the information of the first relay server, and through the second relay server according to the information of the second relay server The relay server establishes a cellular data network link with the second terminal.
[0168] It should be noted that the above steps are part of the detailed description, and reference may be made to the foregoing embodiments, which will not be repeated here.
[0169] like Figure 12 shown, Figure 12 A link establishment method provided by an embodiment of the present application is shown, and the method is applied to the above figure 2 and 6 In the illustrated communication system, in this embodiment of the present application, the method is an interaction process between various devices in the system. The method may include: S1201 to S1203.
[0170] S1201: The first terminal sends a wireless network identifier and a cellular data network identifier to the signaling server.
[0171] S1202: The signaling server determines the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier, and combines the information of the first relay server with the information of the second relay server. The information of the second relay server is sent to the first terminal.
[0172] S1203: The first terminal establishes a wireless network link with the second terminal through the first relay server according to the information of the first relay server, and according to the information of the second relay server, A cellular data network link with the second terminal is established through the second relay server.
[0173] It should be noted that the above steps are part of the detailed description, and reference may be made to the foregoing embodiments, which will not be repeated here.
[0174] see Figure 13 , Figure 13 The interaction sequence diagram between the devices in the communication system provided by the embodiment of the present application is shown, and the interaction sequence diagram is used to describe that the signaling server obtains the external network address configured by the operator of the cellular data network for the first terminal the process of.
[0175] S1301: The first terminal acquires SIM card information.
[0176] S1302: The first terminal sends the SIM card information to the signaling server.
[0177] S1303: The signaling server allocates an external network address acquisition server to the first terminal according to the SIM card information.
[0178] S1304: The signaling server sends the information of the external network address obtaining server to the first terminal.
[0179] The information of the external network address obtaining server may include the IP address and port of the external network address obtaining server, which are respectively denoted as svr_ip and svr_port. The first terminal may send a data packet to the server for obtaining an external network address according to the IP address and the port.
[0180] S1305: The first terminal creates a cellular link with the external network address obtaining server on the cellular data network.
[0181] S1306: The first terminal sends a data packet to the external network address obtaining server through the cellular link.
[0182] The data packet carries the target address, the target port and the above-mentioned source address, and is broadcast to the external network address obtaining server through the UDP protocol. The target address is recorded as dst:svr_ip, which is the IP address of the server for obtaining the external network address. The target port is recorded as dst:svr_port, which is the port of the server for obtaining the external network address. The source address is recorded as src: socketS. When it is on the internal network, it is the internal network IP. When entering the external network, the source address becomes the external network address configured by the operator.
[0183] S1307: The external network address obtaining server sends the external network address to the first terminal.
[0184] S1308: The first terminal sends the external network address to the signaling server.
[0185] see Figure 14 , Figure 14 An interaction sequence diagram between various devices in the communication system provided by the embodiment of the present application is shown, where the interaction sequence diagram is used to describe a process of establishing a link between a first terminal and a second terminal.
[0186] S1401: The first terminal acquires the name of the access network and the corresponding external network address.
[0187] When acquiring the access network information, the first terminal determines whether the access network is a cellular data network, and if so, acquires a corresponding external network address with reference to the foregoing embodiment. The access network information includes the name of the access network and the corresponding external network address, and the name of the access network is the identifier of the above-mentioned access network.
[0188] S1402: The first terminal sends the name of the access network and the corresponding external network address to the signaling server.
[0189] S1403: The signaling server allocates a link identifier and a transit server.
[0190] The link identifier is used as the identity information of the link to facilitate the management of the link. The link identifier may be a numerical value. As an implementation manner, the link identifier is incremented, and if the current link identifier is a, then the newly allocated link identifier is a+1. According to the number of access networks of the first terminal and the second terminal, multiple transit links may be allocated simultaneously here. For example, if the names of the access networks of the first terminal obtained by the signaling server are network card 1 and network card 2, and the name of the access network received by the signaling server is network card 1, the signaling server assigns two link identifiers, They are the network card 1 of the first terminal - the network card 1 of the second terminal, and the link identifier is 0; the network card 2 of the first terminal - the network card 1 of the second terminal, the link identifier is 1.
[0191] S1404: The signaling server synchronizes the call room number and the link identifier to the relay server.
[0192] Wherein, the relay server may be the above-mentioned first relay server, or may be the above-mentioned second relay server, then the link identifier corresponding to the wireless network identifier and the call room number may be sent to the first relay server, and the cellular data network identifier may be sent to the first relay server. The corresponding link identifier and call room number are sent to the second relay server. In the embodiment of this application, the first relay server and the second relay server are not distinguished for the time being, and the relay server is used as an example to illustrate the connection between the first terminal and the second terminal. Link creation process.
[0193] The call room number is used to identify a call. In the embodiment of the present application, the link creation process between the first terminal and the second terminal is described by taking the data interaction between the first terminal and the second terminal as a voice call as an example.
[0194] Among them, the call room number and the link identifier can be used as the information of the relay server.
[0195] S1405: The relay server performs an initialization operation, and returns confirmation information to the signaling server.
[0196] The confirmation information is the above-mentioned information used to indicate that the relay server is in a connectable state. The initialization operation may be storage initialization, that is, the relay server stores the call room number and the link identifier correspondingly, so that the relay server knows the created call room number and the corresponding link identifier. When the subsequent terminal sends a data packet to the relay server, the server can judge whether this is a legal data packet according to the corresponding relationship between the call room number and the link identifier. That is to say, after the transit server completes the initialization operation, it is in a connectable state, that is, it can return confirmation information to the signaling server. Wherein, the confirmation information can be a parameter, such as READY.
[0197] S1406: The signaling server synchronizes the link information to the first terminal.
[0198] The link information includes a call room number and a link identifier. When the terminal sends data, it needs to carry the call room number and link identifier in the sent data, so that the relay server can determine the validity of the data sent by the terminal.
[0199] S1407: The first terminal creates or acquires a connection package on the access network.
[0200] The first terminal creates or acquires a connection packet on the access network, as a transmission and reception packet for the newly-created transit link. The connection packet may be a socket packet based on the UDP protocol. As an implementation manner, the first terminal determines whether a pre-created connection package exists on the access network, and if so, acquires the connection package, and if not, creates the connection package.
[0201] S1408: The first terminal sends the connection packet to the relay server.
[0202] The connection package carries the call room number and link identifier. After acquiring the connection package, the relay server obtains the call room number and link identifier in the connection package, and determines the connection with the pre-stored call room number and link identifier. Whether it matches, if it matches, execute the operation that returns the status information.
[0203] S1409: The transit server returns status information.
[0204] The status information is used to inform that the first terminal has successfully established a link with the transit server and can send data packets.
[0205] S1410: Data packets are transmitted between the first terminal and the transit server through a transit link.
[0206] see Figure 15 , which shows a structural block diagram of a link establishment apparatus 1500 provided by an embodiment of the present application. The apparatus is applied to figure 2 and 6 The signaling server of the communication system, the apparatus may include: an obtaining unit 1501 , a determining unit 1502 and a sending unit 1503 .
[0207] The acquiring unit 1501 is configured to acquire the wireless network identifier and the cellular data network identifier sent by the first terminal.
[0208] The determining unit 1502 is configured to determine the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier.
[0209] The sending unit 1503 is configured to send the information of the first relay server and the information of the second relay server to the first terminal, so that the first terminal can establish a connection with the first relay server according to the information of the first relay server. a wireless network link between the second terminals, and establishing a cellular data network link with the second terminal according to the information of the second relay server.
[0210] Those skilled in the art can clearly understand that, for the convenience and brevity of description, for the specific working process of the above-described devices and modules, reference may be made to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
[0211] see Figure 16 , which shows a structural block diagram of a link establishment apparatus 1600 provided by an embodiment of the present application. The apparatus is applied to figure 2 and 6 The signaling server of the communication system, the apparatus may include: an obtaining unit 1610 , a determining unit 1620 and a sending unit 1630 .
[0212] The acquiring unit 1610 is configured to acquire the wireless network identifier and the cellular data network identifier sent by the first terminal.
[0213] The determining unit 1620 is configured to determine the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier.
[0214] Further, the determining unit 1620 is further configured to search the wireless network identifier and the cellular data network identifier, the identifier that matches the pre-stored identifier of the access network to which the first terminal has established a connection, as the target identifier; The information of the historical relay server corresponding to the identification of the access network that once established the connection with the target identification, is used as the information of the corresponding relay server for the target identification; the identification that does not match in the wireless network identification and the cellular data network identification is obtained, Information to assign a new staging server for unmatched IDs.
[0215] The determining unit 1620 includes an address obtaining subunit 1621 and a relay determining subunit 1622 .
[0216] The address obtaining subunit 1621 is configured to obtain the external network address configured for the first terminal by the operator of the cellular data network.
[0217] Further, the address obtaining subunit 1621 is further configured to obtain the external network address determined by the external network address obtaining server, wherein the external network address is determined by the external network address obtaining server according to the received data packet, the The data packet is sent by the first terminal to the external network address obtaining server through the cellular data network.
[0218] Further, the determination unit 1620 further includes an allocation sub-unit 1623 .
[0219] The allocation subunit is used to obtain the SIM card information sent by the first terminal; according to the SIM card information, allocate an external network address to the first terminal to obtain a server, and instruct the first terminal to send the information through the cellular data network The data packet is sent to the external network address obtaining server.
[0220] Further, the assigning subunit 1623 is further configured to obtain operator information according to the SIM card information; and assign an external network address obtaining server to the first terminal according to the operator information.
[0221] Further, the address obtaining subunit 1621 is further configured to obtain the external network address sent by the first terminal, wherein the external network address is determined by the external network address obtaining server and then sent to the first terminal.
[0222] The relay determination subunit 1622 is configured to determine the information of the second relay server according to the external network address.
[0223] Further, the relay determination subunit 1622 is further configured to acquire network information corresponding to the external network address; and determine the information of the second relay server according to the network information corresponding to the external network address.
[0224] Further, the relay determination subunit 1622 is further configured to obtain network information corresponding to the second external network address of the second terminal; according to the network information corresponding to the first external network address and the network corresponding to the second external network address The information determines the information of the second relay server.
[0225] The network information includes geographic location information and operator information, and the geographic location information of the second relay server is located between the geographic location information corresponding to the first external network address and the geographic location information corresponding to the second external network address. During the period, the second relay server simultaneously supports the transmission of data corresponding to the operator information of the first terminal and data corresponding to the operator information of the second terminal.
[0226] The sending unit 1630 is configured to send the information of the first relay server and the information of the second relay server to the first terminal, so that the first terminal can establish a connection with the first relay server according to the information of the first relay server. a wireless network link between the second terminals, and establishing a cellular data network link with the second terminal according to the information of the second relay server.
[0227] Further, the sending unit 1630 is further configured to detect whether the first confirmation information and the second confirmation information are acquired, wherein the first confirmation information is used to indicate that the first relay server is in a connectable state, and the second confirmation information It is used to indicate that the second relay server is in a connectable state; when the first confirmation information is obtained, the information of the first relay server is sent to the first terminal; when the second confirmation information is obtained When the information is received, the information of the second relay server is sent to the first terminal.
[0228] Further, the sending unit 1630 is further configured to send the information of the first relay server to the first relay server before detecting whether the first confirmation information and the second confirmation information are acquired, so as to instruct the first relay server according to the After the information connection of the first relay server is initialized, the first confirmation information is returned; the information of the second relay server is sent to the second relay server to instruct the second relay server according to the second relay server. After the information connection of the server is initialized, the second confirmation information is returned.
[0229] Those skilled in the art can clearly understand that, for the convenience and brevity of description, for the specific working process of the above-described devices and modules, reference may be made to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
[0230] see Figure 17 , which shows a structural block diagram of a link establishment apparatus 1700 provided by an embodiment of the present application. The apparatus is applied to figure 2 and 6 The first terminal of the communication system, the apparatus may include: an obtaining unit 1701 , a sending unit 1702 and a connecting unit 1703 .
[0231] The sending unit 1701 is configured to send the wireless network identifier and the cellular data network identifier to the signaling server.
[0232] The obtaining unit 1702 is configured to obtain the information of the first relay server corresponding to the wireless network identifier and the information of the second relay server corresponding to the cellular data network identifier sent by the signaling server.
[0233] The connecting unit 1703 is configured to establish a wireless network link with the second terminal through the first relay server according to the information of the first relay server, and, according to the information of the second relay server, through the The second relay server establishes a cellular data network link with the second terminal.
[0234] Those skilled in the art can clearly understand that, for the convenience and brevity of description, for the specific working process of the above-described devices and modules, reference may be made to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
[0235] In several embodiments provided in this application, the coupling between the modules may be electrical, mechanical or other forms of coupling.
[0236] In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist physically alone, or two or more modules may be integrated into one module. The above-mentioned integrated modules can be implemented in the form of hardware, and can also be implemented in the form of software function modules.
[0237] see also Figure 18 , Figure 18 An electronic device 180 is shown on which the aforementioned method may be performed. The electronic device 180 generally includes one or more (only one shown in the figure) a processor 1802 , a memory 1804 , an RF (Radio Frequency) module 1806 , an audio circuit 18180 , a sensor 18184 , an input module 18188 , and a power module 1822 . Those of ordinary skill in the art can understand that, Figure 18 The shown structure is for illustration only, and does not limit the structure of the electronic device 180 . For example, the electronic device 180 may also include a Figure 18 more or fewer components shown in.
[0238] Those of ordinary skill in the art can understand that, with respect to the processor 1802 , all other components belong to peripheral devices, and the processor 1802 and these peripheral devices are coupled through a plurality of peripheral device interfaces 1824 . The peripheral interface 1824 can be implemented based on the following standards: Universal Asynchronous Receiver/Transmitter (UART), General Purpose Input/Output (GPIO), Serial Peripheral Interface (Serial Peripheral Interface) , SPI), Inter-Integrated Circuit (I2C), but not limited to the above standards. In some examples, the peripheral interface 1824 may only include a bus; in other examples, the peripheral interface 1824 may also include other elements, such as one or more controllers, for example, for connecting the display panel 181818 display controller or memory controller for connecting to memory. In addition, these controllers can also be separated from the peripheral interface 1824 and integrated into the processor 1802 or corresponding peripherals.
[0239] The memory 1804 can be used to store software programs and modules, and the processor 1802 executes various functional applications and data processing by running the software programs and modules stored in the memory 1804 . The memory 1804 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 1804 may further include memory located remotely from the processor 1802, which may be connected to the electronic device 180 or the main display screen 1820 via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0240] Wherein, the memory 1804 can be a computer-readable storage medium such as flash memory, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory Electronic storage such as erasable programmable read-only memory (EPROM), hard disk or read-only memory (ROM). Optionally, the computer-readable storage medium includes a non-transitory computer-readable storage medium. A computer-readable storage medium has storage space for program code to perform any of the method steps in the above-described methods. These program codes can be read from or written to one or more computer program products. The program code may, for example, be compressed in a suitable form.
[0241] The RF module 1806 is used for receiving and sending electromagnetic waves, realizing mutual conversion between electromagnetic waves and electrical signals, so as to communicate with a communication network or other devices. The RF module 1806 may include various existing circuit elements for performing these functions, such as antennas, radio frequency transceivers, digital signal processors, encryption/decryption chips, Subscriber Identity Module (SIM) cards, memory, etc. . The RF module 1806 can communicate with various networks such as the Internet, an intranet, a wireless network, or communicate with other devices through a wireless network. The aforementioned wireless network may include a cellular telephone network, a wireless local area network, or a metropolitan area network. The above-mentioned wireless network can use various communication standards, protocols and technologies, including but not limited to Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE), wideband code Wideband codedivision multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), wireless fidelity technology (Wireless, Fidelity, WiFi) (such as IEEE 802.180A, IEEE 802.1818b, IEEE802.1818g and/or IEEE 802.1818n), Internet telephony (Voice over internet protocal, VoIP), Worldwide Interoperability for Microwave Access, Wi-Max), other protocols for mail, instant messaging, and short messaging, and any other suitable communication protocols, even those that are not currently being developed.
[0242] The audio circuit 18180 , the earpiece 18018 , the sound jack 1803 , and the microphone 1805 together provide an audio interface between the user and the electronic device 180 or the main display screen 1820 . Specifically, the audio circuit 18180 receives sound data from the processor 1802 , converts the sound data into electrical signals, and transmits the electrical signals to the earpiece 18018 . The earpiece 18018 converts electrical signals into sound waves that can be heard by the human ear. The audio circuit 18180 also receives electrical signals from the microphone 1805, converts the electrical signals into sound data, and transmits the sound data to the processor 1802 for further processing. Audio data can be obtained from the memory 1804 or through the RF module 1806 . In addition, audio data can also be stored in the memory 1804 or transmitted through the RF module 1806 .
[0243] The sensor 18184 is disposed in the electronic device 180 or in the main display screen 1820. Examples of the sensor 18184 include, but are not limited to, a light sensor, a motion sensor, a pressure sensor, a gravitational acceleration sensor, and other sensors.
[0244] Specifically, the light sensor may include a light sensor 18184F and a pressure sensor 18184G. Among them, the pressure sensor 18184G can detect the pressure generated by pressing on the electronic device 180 . That is, the pressure sensor 18184G detects the pressure generated by the contact or pressing between the user and the mobile terminal, for example, the pressure generated by the contact or pressing between the user's ear and the mobile terminal. Therefore, the pressure sensor 18184G can be used to determine whether a contact or pressure has occurred between the user and the electronic device 180, and the magnitude of the pressure.
[0245] see again Figure 18 , specifically in Figure 18 In the illustrated embodiment, the light sensor 18184F and the pressure sensor 18184G are disposed adjacent to the display panel 181818 . The light sensor 18184F can turn off the display output of the processor 1802 when an object is close to the main display screen 1820, such as when the electronic device 180 is moved to the ear.
[0246] As a kind of motion sensor, the gravitational acceleration sensor can detect the magnitude of acceleration in various directions (generally three axes), and can detect the magnitude and direction of gravity when stationary, and can be used for applications that identify the posture of the electronic device 180 (such as horizontal and vertical). screen switching, related games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc. In addition, the electronic device 180 may also be configured with other sensors such as a gyroscope, a barometer, a hygrometer, a thermometer, etc., which will not be repeated here.
[0247] In this embodiment, the input module 18188 may include the touch screen 1809 disposed on the main display screen 1820, and the touch screen 1809 may collect the user's touch operations on or near it (for example, the user uses a finger, a stylus operation of any suitable object or accessory on or near the touch screen 1809 ), and drive the corresponding connection device according to a preset program. Optionally, the touch screen 1809 may include a touch detection device and a touch controller. Wherein, the touch detection device detects the touch orientation of the user, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, and sends the signal to the touch controller. The touch information is converted into contact coordinates, and then sent to the processor 1802, and can receive and execute commands sent by the processor 1802. In addition, the touch detection function of the touch screen 1809 can be realized by various types such as resistive type, capacitive type, infrared ray, and surface acoustic wave. In addition to the touch screen 1809 , in other modified embodiments, the input module 18188 may also include other input devices, such as keys 1807 . The keys 1807 may include, for example, character keys for inputting characters and control keys for triggering control functions. Examples of the control buttons include a "back to home screen" button, a power on/off button, and the like.
[0248]The main display screen 1820 is used to display information input by the user, information provided to the user, and various graphical user interfaces of the electronic device 180, which may be composed of graphics, text, icons, numbers, videos, and others. Any combination is formed. In one example, the touch screen 1809 can be disposed on the display panel 181818 to form a whole with the display panel 181818 .
[0249] The power module 1822 is used to provide power supply to the processor 1802 and other components. Specifically, the power module 1822 may include a power management system, one or more power sources (eg, batteries or AC power), charging circuits, power failure detection circuits, inverters, power status indicators, and any other electronic devices associated with the 180 or components related to the generation, management and distribution of power within the main display screen 1820.
[0250] The electronic device 180 further includes a locator 18189, and the locator 18189 is used to determine the actual position where the electronic device 180 is located. In this embodiment, the locator 18189 uses a positioning service to realize the positioning of the electronic device 180, and the positioning service should be understood as obtaining the position information (such as the latitude and longitude coordinates of the electronic device 180 through a specific positioning technology) ), a technology or service that marks the location of the located object on an electronic map.
[0251] It should be understood that the above-mentioned electronic device 180 is not limited to a smart phone terminal, but should refer to a computer device that can be used on the move. Specifically, the electronic device 180 refers to a mobile computer device equipped with a smart operating system, and the electronic device 180 includes but is not limited to a smart phone, a smart watch, a tablet computer, and the like.
[0252] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, but not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand: it can still be Modifications are made to the technical solutions described in the foregoing embodiments, or some technical features thereof are equivalently replaced; and these modifications or replacements do not drive the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions in the embodiments of the present application.
PUM


Description & Claims & Application Information
We can also present the details of the Description, Claims and Application information to help users get a comprehensive understanding of the technical details of the patent, such as background art, summary of invention, brief description of drawings, description of embodiments, and other original content. On the other hand, users can also determine the specific scope of protection of the technology through the list of claims; as well as understand the changes in the life cycle of the technology with the presentation of the patent timeline. Login to view more.
Similar technology patents
Passivating agent for weakly acidic cadmium contaminated soil and application thereof
Owner:NANJING UNIV
Method for controlling transmission of sink nodes in wireless sensor network
Owner:SOUTHEAST UNIV
Coverage rate test processing method and device and coverage rate test server and system
Owner:ALIBABA GRP HLDG LTD
Classification and recommendation of technical efficacy words
- Improve stability
- Improve user experience
Gel stabilized nanoparticulate active agent compositions
Owner:ALKERMES PHARMA IRELAND LTD
Method for preparing silica aerogel material
Owner:中科润资科技股份有限公司
Compositions and methods for protein design
Owner:CODON DEVICES
Gas dielectric structure forming methods
Owner:GLOBALFOUNDRIES INC
Method and device of pairing connection of equipment
Owner:XIAOMI INC
Touch processing method and portable mobile terminal
Owner:LENOVO (BEIJING) CO LTD
Method, device and equipment for displaying multiple application windows on mobile terminal
InactiveCN102968243AImprove information acquisition efficiency and ease of operationImprove user experience
Owner:SHENZHEN YUNYINGGU TECH CO LTD
Content recommending method and device based on user characteristics
Owner:BAIDU ONLINE NETWORK TECH (BEIJIBG) CO LTD
Method, apparatus, and system for voice call fallback to circuit switched domain
Owner:HUAWEI TECH CO LTD