WO2021098533A1 - Connection establishment method, and terminal apparatus - Google Patents

Connection establishment method, and terminal apparatus Download PDF

Info

Publication number
WO2021098533A1
WO2021098533A1 PCT/CN2020/127107 CN2020127107W WO2021098533A1 WO 2021098533 A1 WO2021098533 A1 WO 2021098533A1 CN 2020127107 W CN2020127107 W CN 2020127107W WO 2021098533 A1 WO2021098533 A1 WO 2021098533A1
Authority
WO
WIPO (PCT)
Prior art keywords
mptcp
application server
connection
terminal device
tcp connection
Prior art date
Application number
PCT/CN2020/127107
Other languages
French (fr)
Chinese (zh)
Inventor
王皓
李小金
祁建锋
姚松平
郭兴民
Original Assignee
荣耀终端有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 荣耀终端有限公司 filed Critical 荣耀终端有限公司
Publication of WO2021098533A1 publication Critical patent/WO2021098533A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections
    • H04W76/16Involving different core network technologies, e.g. a packet-switched [PS] bearer in combination with a circuit-switched [CS] bearer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless

Definitions

  • the embodiments of the present application relate to the field of communication technologies, and in particular, to a method for establishing a connection and a terminal device.
  • Multi-path transmission control protocol is an extended protocol of TCP.
  • MPTCP can use the parallel transmission of multiple TCP connections to improve resource utilization. For example: when a user is watching a video, the mobile phone simultaneously transmits data streams through the corresponding TCP connection of the WiFi network and the cellular network. The advantage of this is that it can provide a larger aggregate bandwidth, a higher download rate, less lag, and playback. Smoother.
  • MPTCP needs to be supported by both the terminal device side and the application server side. If one side does not support it, it will roll back to the TCP protocol.
  • MPTCP includes deployment methods such as terminal-cloud direct, terminal-pipe collaboration, and terminal-cloud collaboration. End-cloud collaboration is the easiest to implement.
  • the embodiments of this application provide a connection establishment method and terminal equipment to solve the difficulty of terminal equipment in different applications, different regions, and different network operators, choosing the corresponding MPTCP deployment mode, and establishing MPTCP with application services Connection problem.
  • the embodiments of the present application provide a method for establishing a connection, which is applicable to a terminal device, and the method includes: when the running application of the terminal device initiates data transmission to the application server, according to the multi-path transmission control protocol MPTCP
  • MPTCP multi-path transmission control protocol
  • the priority of the various deployment methods is from high to low, and try to establish an MPTCP connection with the application server in turn, until the MPTCP connection with the application server is successfully established; the terminal device is based on the MPTCP established with the application server Connect to perform data transmission with the application server.
  • the described connection establishment method implemented by the terminal device may also be implemented by components in the terminal device, for example, by components such as processing chips and circuits in the terminal device.
  • the terminal device will try to establish an MPTCP connection with the application server in order according to the priority of the multiple deployment methods of MPTCP, automatically explore the MPTCP support capability of the network, and quickly find the MPTCP connection method supported by the network. It can adapt to different applications, different regions, and different network operators, and the different MPTCP deployment methods adopted can effectively support the deployment and promotion of MPTCP.
  • the MPTCP connection may include, but is not limited to, a first TCP connection corresponding to a cellular network and a second TCP connection corresponding to a wireless fidelity WiFi network.
  • the MPTCP connection includes but is not limited to the above two examples. Of course, it may also include multiple other TCP connections.
  • the multiple deployment modes of the MPTCP include at least two of the following deployment modes: terminal-cloud direct, terminal-pipe collaboration, or terminal-cloud collaboration.
  • the multiple deployment methods of MPTCP are not limited to the above three examples.
  • the deployment method of MPTCP on which the terminal device performs the MPTCP connection can be configured according to requirements to adapt to different communication scenarios or communication requirements.
  • the multiple deployment modes of MPTCP are terminal-cloud direct, terminal-pipe collaboration, and terminal-cloud collaboration
  • the multiple deployment modes of MPTCP are in the order of priority from high to low.
  • the priority of multiple deployment methods of MPTCP is set from high to low according to the degree of experience, which is conducive to improving user experience.
  • the terminal device attempting to establish an MPTCP connection with the application server based on the client-cloud direct mode includes: the terminal device initiates the MPTCP handshake of the first TCP connection to the application server; When the terminal device and the application server fail to perform the MPTCP handshake of the first TCP connection, the terminal device determines that the establishment of the MPTCP connection with the application server in the direct-to-cloud manner fails; when the terminal device and the application server When the MPTCP handshake of the first TCP connection is successful, the terminal device initiates the MPTCP handshake of the second TCP connection to the application server; when the terminal device and the application server perform the MPTCP handshake of the second TCP connection When it succeeds, the terminal device determines that the MPTCP connection with the application server is successfully established in the end-cloud direct mode; when the MPTCP handshake of the second TCP connection between the terminal device and the application server fails, the terminal device determines Failed to establish an MPTCP connection with the application server according to the end-cloud direct mode;
  • the terminal device attempts to establish an MPTCP connection with the application server based on the end-pipe coordination method, including: the terminal device establishes the first TCP connection with the server; The address of a network element (such as a UPF server, HAG, etc.) that supports multi-channel aggregation in the core network corresponding to the first TCP connection is used as the network proxy address of the application server, and a second TCP connection is initiated to the application server; When the terminal device successfully establishes the second TCP connection with the application server, the terminal device determines that the MPTCP connection is successfully established with the application server according to the end-pipe coordination mode; when the terminal device and the application server are established When the second TCP connection fails, the terminal device determines that the establishment of the MPTCP connection with the application server fails in a terminal-pipe coordination manner.
  • a way to try to establish an MPTCP connection with the application server according to the end-pipe coordination mode is provided, which is beneficial to establish an MPTCP connection between the terminal device and
  • the terminal device attempts to establish an MPTCP connection with the application server based on the end-cloud collaboration method, including: the terminal device uses the address of the proxy server as the network proxy address of the application server, The application server initiates the first TCP connection and the second TCP connection; when the terminal device successfully establishes the first TCP connection and the second TCP connection with the application server, the terminal device determines to follow the end cloud
  • the establishment of an MPTCP connection with the application server succeeds in the coordination mode; when the terminal device fails to establish the first TCP connection and/or the second TCP connection with the application server, the terminal device determines to establish the connection with the application server in the terminal cloud coordination mode.
  • the application server failed to establish the MPTCP connection.
  • a way to try to establish an MPTCP connection with an application server according to a client-cloud collaboration mode is provided, which is beneficial to establishing an MPTCP connection between the terminal device and the application server.
  • the method may further include: when the terminal device sequentially attempts to establish an MPTCP connection with the application server according to the priority of the multiple deployment modes of the MPTCP from high to low.
  • the terminal device When unsuccessful, that is, when the MPTCP connection with the application server fails to be established according to the MPTCP deployment mode with the lowest priority, the terminal device establishes a TCP connection with the application server; the terminal device establishes a TCP connection with the application server based on the TCP connection
  • the application server performs data transmission.
  • rolling back to the TCP protocol to establish a TCP connection with the application server is beneficial to ensure the reliability of data transmission.
  • an embodiment of the present application provides a terminal device, including a processor and a memory.
  • the memory is used to store one or more computer programs; when the one or more computer programs stored in the memory are executed by the processor, the terminal device can implement any one of the possible design methods in any one of the above aspects.
  • an embodiment of the present application further provides a device, which includes a module/unit that executes any one of the possible design methods in any of the foregoing aspects.
  • modules/units can be realized by hardware, or by hardware executing corresponding software.
  • an embodiment of the present application also provides a computer-readable storage medium.
  • the computer-readable storage medium includes a computer program.
  • the terminal device can execute any of the above. Any one of the possible design methods.
  • the embodiments of the present application also provide a computer program product, when the computer program product runs on a terminal, the terminal device can execute any one of the possible design methods in any of the foregoing aspects.
  • an embodiment of the present application also provides a chip, which is coupled with a memory, and is configured to read and execute program instructions stored in the memory to realize the first aspect or any one of the first aspects. The method described in the design.
  • FIG. 1A is a schematic diagram of the MPTCP deployment method provided by this application.
  • Figure 1B is a schematic diagram of the promotion difficulty, cost and experience of the MPTCP deployment method provided by this application;
  • FIG. 2 is a system architecture of an MPTCP application provided by an embodiment of the application
  • FIG. 3 is an architecture diagram of a data transmission system for multi-network deployment provided by an embodiment of the application
  • FIG. 4 is a schematic diagram of a TCP protocol stack extended to MPTCP protocol stack provided by an embodiment of the application;
  • FIG. 5 is a schematic diagram of an MPTCP implementation process provided by an embodiment of this application.
  • FIG. 6 is a schematic structural diagram of a terminal device provided by an embodiment of this application.
  • FIG. 7 is a schematic diagram of a connection establishment process provided by an embodiment of the application.
  • FIG. 8 is a schematic diagram of establishing a direct MPTCP connection between the device and the cloud according to an embodiment of the application
  • FIG. 9 is a schematic diagram of a terminal-pipe cooperative MPTCP connection establishment according to an embodiment of the application.
  • FIG. 10 is a schematic diagram of establishing a terminal-cloud cooperative MPTCP connection provided by an embodiment of this application.
  • FIG. 11 is a schematic block diagram of a connection establishment apparatus provided by an embodiment of this application.
  • FIG. 12 is a schematic diagram of another connection establishment apparatus provided by an embodiment of this application.
  • the connection establishment method provided in the embodiments of this application can be applied to data transmission in a communication system, where the data receiving end and the data sending end can exchange data through a radio access network (RAN) and a core network.
  • the data A transmission control protocol (TCP) connection may also be established between the receiving end and the data sending end, and the TCP protocol is used for data transmission.
  • TCP transmission control protocol
  • the terminal device and the application server in the wireless communication system exchange data.
  • the terminal device connects to the RAN through the air interface and connects to the application server via the core network.
  • the network between the terminal device and the RAN can be called It is a wireless network, and the network between the RAN and the application server can be called a wired network.
  • a TCP connection is established between the application server and the terminal device and data transmission is performed.
  • the application server may be a server in a server cluster, for example, different video clips of a certain video application may be distributed on different servers; the application server may also be a certain server.
  • the communication system has evolved into a communication architecture jointly deployed by multiple communication networks, and terminal devices can access more than one communication network for communication.
  • the communication network may be a wireless fidelity (WiFi) network (also called a Wi-Fi network), a Bluetooth network, a zigbee network, or near field communication. (near field communication, NFC) network and other short-distance communication networks.
  • WiFi wireless fidelity
  • NFC near field communication
  • the communication network is a wide area network
  • the communication network may be a 3rd-generation wireless telephone technology (3G) network, or the 4th generation mobile communication technology (4G). ) Network, the fifth-generation mobile communication technology (5G) network, the future evolution of the public land mobile network (PLMN) or the Internet, etc.
  • 3G 3rd-generation wireless telephone technology
  • 4G 4th generation mobile communication technology
  • 5G fifth-generation mobile communication technology
  • PLMN public land mobile network
  • terminal devices can access the WiFi network and pass the evolved packet data gateway (ePDG) or be trusted A trusted gateway (TGW) performs data transmission with an application server, and can also be connected to an LTE network, and performs data transmission with the application server through a serving gateway (SGW) or packet data network gateway (PGW).
  • ePDG evolved packet data gateway
  • TGW trusted A trusted gateway
  • SGW serving gateway
  • PGW packet data network gateway
  • the MPTCP protocol is obtained by extending the TCP protocol.
  • a service can use multi-path network resources for data transmission.
  • the mobile phone can use WiFi network resources and LTE network resources to transmit data with the application server.
  • Figure 4 shows a schematic diagram of the expansion of the TCP protocol stack to the MPTCP protocol stack.
  • the TCP protocol stack the data flow of the application layer is sent through a TCP connection.
  • the transport layer is divided into two sub-layers: MPTCP layer and TCP layer.
  • the data flow of the application layer is decomposed by the MPTCP layer.
  • the two TCP connections are transmitted.
  • FIG. 5 shows a schematic diagram of MPTCP usage scenarios.
  • two TCP connections are established between the terminal device and the application server.
  • One TCP connection uses WiFi network resources, and the other TCP connection uses LTE network resources.
  • the MPTCP layer of the application server decomposes the TCP stream into two TCP sub-streams and transmits them to the terminal device separately through these two TCP connections.
  • the terminal device After receiving the two TCP sub-streams, the terminal device combines the two sub-streams and sends them to Application layer.
  • the terminal device in the wireless communication system shown in FIG. 2 may be a portable terminal device that also contains other functions such as personal digital assistants and/or music player functions, such as mobile phones, tablet computers, and wireless communication. Functional wearable devices (such as smart watches), etc.
  • portable terminal equipment include, but are not limited to, carrying Or portable terminal equipment with other operating systems.
  • the aforementioned portable terminal device may also be other portable terminal devices, such as a laptop with a touch-sensitive surface (for example, a touch panel). It should also be understood that in some other embodiments of the present application, the aforementioned terminal device may not be a portable terminal device, but a desktop computer with a touch-sensitive surface (such as a touch panel).
  • the terminal device in the embodiment of the present application may be a mobile phone, and the embodiment will be described in detail by taking a mobile phone as an example.
  • the mobile phone 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, Mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, sensor module 180, buttons 190, motor 191, indicator 192, camera 193, display screen 194, and user Identification module (subscriber identification module, SIM) card interface 195, etc.
  • a processor 110 an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, Mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, sensor module 180, buttons 190, motor 191, indicator 192, camera 19
  • the sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, and ambient light Sensor 180L, bone conduction sensor 180M, etc.
  • the processor 110 may include one or more processing units.
  • the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU) Wait.
  • the different processing units may be independent devices or integrated in one or more processors.
  • the controller may be the nerve center and command center of the mobile phone 100. The controller can generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 110 to store instructions and data. In some embodiments, the memory in the processor 110 is a cache memory.
  • the memory can store instructions or data that the processor 110 has just used or used cyclically. If the processor 110 needs to use the instruction or data again, it can be directly called from the memory. Repeated accesses are avoided, the waiting time of the processor 110 is reduced, and the efficiency of the system is improved.
  • the USB interface 130 is an interface that complies with the USB standard specification, and specifically may be a Mini USB interface, a Micro USB interface, a USB Type C interface, and so on.
  • the USB interface 130 can be used to connect a charger to charge the mobile phone 100, and can also be used to transfer data between the mobile phone 100 and peripheral devices.
  • the charging management module 140 is used to receive charging input from the charger.
  • the power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110.
  • the power management module 141 receives input from the battery 142 and/or the charge management module 140, and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160.
  • the wireless communication function of the mobile phone 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in the mobile phone 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • Antenna 1 can be multiplexed as a diversity antenna of a wireless local area network.
  • the antenna can be used in combination with a tuning switch.
  • the mobile communication module 150 may provide a wireless communication solution including 2G/3G/4G/5G and the like applied to the mobile phone 100.
  • the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc.
  • the mobile communication module 150 can receive electromagnetic waves by the antenna 1, and perform processing such as filtering, amplifying and transmitting the received electromagnetic waves to the modem processor for demodulation.
  • the mobile communication module 150 can also amplify the signal modulated by the modem processor, and convert it into electromagnetic wave radiation via the antenna 1.
  • at least part of the functional modules of the mobile communication module 150 may be provided in the processor 110.
  • at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 may be provided in the same device.
  • the wireless communication module 160 can provide applications on the mobile phone 100 including wireless local area networks (WLAN) (such as WiFi networks), Bluetooth (bluetooth, BT), global navigation satellite system (GNSS), and frequency modulation. (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • BT Bluetooth
  • GNSS global navigation satellite system
  • FM frequency modulation, FM
  • NFC near field communication technology
  • infrared technology infrared, IR
  • the wireless communication module 160 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110.
  • the wireless communication module 160 may also receive the signal to be sent from the processor 110, perform frequency modulation, amplify it, and convert it into electromagnetic waves to radiate through the antenna 2.
  • the antenna 1 of the mobile phone 100 is coupled with the mobile communication module 150, and the antenna 2 is coupled with the wireless communication module 160, so that the mobile phone 100 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code division multiple access (wideband code division multiple access, WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
  • the GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite-based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite-based augmentation systems
  • the display screen 194 is used to display the display interface of the application and the like.
  • the display screen 594 includes a display panel.
  • the display panel can adopt liquid crystal display (LCD), organic light-emitting diode (OLED), active matrix organic light-emitting diode or active-matrix organic light-emitting diode (active-matrix organic light-emitting diode).
  • LCD liquid crystal display
  • OLED organic light-emitting diode
  • active-matrix organic light-emitting diode active-matrix organic light-emitting diode
  • AMOLED flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, quantum dot light-emitting diode (QLED), etc.
  • the mobile phone 100 may include one or N display screens 194, and N is a positive integer greater than one.
  • the display screen 194 may be used to display multiple application interfaces at the same time.
  • the camera 193 is used to capture still images or videos.
  • the camera 193 may include a front camera and a rear camera.
  • the internal memory 121 may be used to store computer executable program code, where the executable program code includes instructions.
  • the processor 110 executes various functional applications and data processing of the mobile phone 100 by running instructions stored in the internal memory 121.
  • the internal memory 121 may include a storage program area and a storage data area.
  • the storage program area can store an operating system, and software codes of at least one application (for example, an iQiyi application, a WeChat application, etc.).
  • the data storage area can store data (such as images, videos, etc.) generated during the use of the mobile phone 100.
  • the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), and the like.
  • UFS universal flash storage
  • the external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the mobile phone 100.
  • the external memory card communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example, save pictures, videos and other files in an external memory card.
  • the mobile phone 100 can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor. For example, music playback, recording, etc.
  • the pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal.
  • the pressure sensor 180A may be provided on the display screen 194.
  • the gyro sensor 180B may be used to determine the movement posture of the mobile phone 100.
  • the angular velocity of the mobile phone 100 around three axes ie, x, y, and z axes
  • the gyro sensor 180B can be used for image stabilization.
  • the air pressure sensor 180C is used to measure air pressure.
  • the mobile phone 100 uses the air pressure value measured by the air pressure sensor 180C to calculate the altitude to assist positioning and navigation.
  • the magnetic sensor 180D includes a Hall sensor.
  • the mobile phone 100 can use the magnetic sensor 180D to detect the opening and closing of the flip holster.
  • the mobile phone 100 when the mobile phone 100 is a flip phone, the mobile phone 100 can detect the opening and closing of the flip according to the magnetic sensor 180D. Furthermore, according to the detected opening and closing state of the holster or the opening and closing state of the flip cover, features such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 180E can detect the magnitude of the acceleration of the mobile phone 100 in various directions (generally three axes). When the mobile phone 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify mobile phone gestures, switch between horizontal and vertical screens, pedometers and other applications.
  • the mobile phone 100 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the mobile phone 100 may use the distance sensor 180F to measure the distance to achieve fast focusing.
  • the proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector such as a photodiode.
  • the light emitting diode may be an infrared light emitting diode.
  • the mobile phone 100 emits infrared light to the outside through the light emitting diode.
  • the mobile phone 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the mobile phone 100.
  • the mobile phone 100 can determine that there is no object near the mobile phone 100.
  • the mobile phone 100 can use the proximity light sensor 180G to detect that the user holds the mobile phone 100 close to the ear to talk, so as to automatically turn off the screen to save power.
  • the proximity light sensor 180G can also be used in leather case mode, and the pocket mode will automatically unlock and lock the screen.
  • the ambient light sensor 180L is used to sense the brightness of the ambient light.
  • the mobile phone 100 can adaptively adjust the brightness of the display 194 according to the perceived brightness of the ambient light.
  • the ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the mobile phone 100 is in the pocket to prevent accidental touch.
  • the fingerprint sensor 180H is used to collect fingerprints.
  • the mobile phone 100 can use the collected fingerprint characteristics to realize fingerprint unlocking, access application locks, fingerprint photographs, fingerprint answering calls, and so on.
  • the temperature sensor 180J is used to detect temperature.
  • the mobile phone 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the mobile phone 100 performs a reduction in the performance of the processor located near the temperature sensor 180J, so as to reduce power consumption and implement thermal protection.
  • the mobile phone 100 when the temperature is lower than another threshold, the mobile phone 100 heats the battery 142 to avoid abnormal shutdown of the mobile phone 100 due to low temperature.
  • the mobile phone 100 boosts the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
  • Touch sensor 180K also called “touch panel”.
  • the touch sensor 180K may be disposed on the display screen 194, and the touch screen is composed of the touch sensor 180K and the display screen 194, which is also called a “touch screen”.
  • the touch sensor 180K is used to detect touch operations acting on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • the visual output related to the touch operation can be provided through the display screen 194.
  • the touch sensor 180K may also be disposed on the surface of the mobile phone 100, which is different from the position of the display screen 194.
  • the bone conduction sensor 180M can acquire vibration signals.
  • the bone conduction sensor 180M can obtain the vibration signal of the vibrating bone mass of the human voice.
  • the bone conduction sensor 180M can also contact the human pulse and receive the blood pressure pulse signal.
  • the button 190 includes a power-on button, a volume button, and so on.
  • the button 190 may be a mechanical button. It can also be a touch button.
  • the mobile phone 100 can receive key input, and generate key signal input related to user settings and function control of the mobile phone 100.
  • the motor 191 can generate vibration prompts.
  • the motor 191 can be used for incoming call vibration notification, and can also be used for touch vibration feedback. For example, touch operations that act on different applications (such as photographing, audio playback, etc.) can correspond to different vibration feedback effects.
  • the indicator 192 may be an indicator light, which may be used to indicate the charging status, power change, or to indicate messages, missed calls, notifications, and so on.
  • the SIM card interface 195 is used to connect to the SIM card. The SIM card can be inserted into the SIM card interface 195 or pulled out from the SIM card interface 195 to achieve contact and separation with the mobile phone 100.
  • the mobile phone may also include more or fewer components than those shown in the figure, or combine some components, or split some components, or different The layout of the components.
  • Application A is only valid for users on the same network (the same core network, such as the same network operator), and the MPTCP deployment method with end-management collaboration is effective; Application B is only for users in the Beijing area.
  • Method: Application C is only valid for users in Beijing, Shanghai, and Shenzhen, using the MPTCP deployment method of device-cloud collaboration.
  • a static configuration method (such as saving to the terminal device when the application program is installed) is usually statically configured on the terminal device side, and the MPTCP deployment method that is effective for the application program is configured. The terminal device performs MPTCP connection according to the statically configured MPTCP deployment method that is effective for the application.
  • application A is only effective for users on the same network.
  • users on the same network use the MPTCP deployment method of the terminal management association, they can successfully establish an MPTCP connection.
  • Different network users will fail when using the MPTCP deployment mode of the End Management Association and roll back to the TCP protocol.
  • the ability of application servers, UPF servers, etc. to support MPTCP will continue to change, and the MPTCP deployment method that static configuration takes effect on applications will become more complicated, which will bring difficulties to the entire network to implement MPTCP deployment and promotion.
  • This application aims to provide a connection establishment solution to try and apply MPTCP in order of priority from high to low under different application programs, different regions, different network operators and other network conditions.
  • the server establishes an MPTCP connection, automatically explores the MPTCP support capability of the network, quickly finds the MPTCP connection mode supported by the network, and supports the deployment and promotion of MPTCP.
  • the mobile phone 100 supports MPTCP, that is, the mobile phone 100 can connect to at least two networks at the same time.
  • the mobile phone 100 can be connected to a WiFi network and a cellular network at the same time, and the mobile phone 100 can establish two corresponding communication links through the two network connections for data transmission.
  • the mobile phone 100 is also configured with multiple deployment methods of MPTCP, and respective priorities corresponding to the multiple deployment methods.
  • the deployment methods of MPTCP configured in the mobile phone 100 include: device-cloud collaboration, device-pipe coordination, and device-cloud direct, and the priority of device-cloud direct is "1", the priority of device-pipe collaboration is "2" and the end The priority of cloud collaboration is "3", where as the value of the priority increases, the corresponding priority decreases.
  • the multiple deployment methods of MPTCP configured in the mobile phone 100 and the respective priorities of the multiple deployment methods may be configured in the mobile phone 100 by the manufacturer of the mobile phone 100 when the mobile phone 100 is shipped from the factory, and The multiple deployment methods of MPTCP configured in the mobile phone 100 and the respective priorities corresponding to the multiple deployment methods can be updated by updating information such as the system configuration in the mobile phone 100.
  • the mobile phone 100 attempts to establish an MPTCP connection with the application server in order of priority of the multiple deployment modes included in MPTCP, Until the establishment of the MPTCP connection with the application server succeeds, or the establishment of the MPTCP connection with the application server fails according to the MPTCP deployment mode with the lowest priority.
  • the following MPTCP connections include: the first TCP connection corresponding to the cellular network and the second TCP connection corresponding to the WiFi network.
  • the deployment methods of MPTCP configured in the mobile phone 100 include: terminal-cloud collaboration, terminal-pipe collaboration, and terminal-cloud direct, and priority Take the example of terminal-cloud direct priority> terminal-pipe collaboration priority> terminal-cloud collaboration priority.
  • FIG. 7 it exemplarily shows a flow of a connection establishment method provided by an embodiment of the present application.
  • the method is executed by the mobile phone 100, and the method includes the following steps.
  • S701 When the running application of the mobile phone 100 initiates data transmission to the application server, it tries to establish an MPTCP connection with the application server based on the direct mode of the terminal cloud; when the establishment of the MPTCP connection is successful, proceed to S704; when the establishment of the MPTCP connection fails, proceed to S702.
  • the application program may be Tencent Video, Baofengyingyin, Kugou Music, WeChat, QQ and other applications that need to transmit data with the corresponding application server through the network, which is not specifically limited in this application.
  • the application is a "networked” application rather than a “stand-alone” application.
  • the mobile phone 100 may first perform the MPTCP handshake of the first TCP connection with the application server, where the first TCP connection may be the first TCP connection corresponding to the cellular network, or the second TCP corresponding to the WiFi network. connection. Specifically, when performing the MPTCP handshake of the first TCP connection with the application server, the mobile phone 100 may send MPTCP handshake information to the application server, where the MPTCP handshake information may be sent through a synchronization sequence number (synchronize sequence numbers, syn) packet , Carries the MPTCP capability (capability) field, and is used to negotiate the MPTCP capability with the application server.
  • the MPTCP handshake information may be sent through a synchronization sequence number (synchronize sequence numbers, syn) packet , Carries the MPTCP capability (capability) field, and is used to negotiate the MPTCP capability with the application server.
  • the application server can send a response message supporting MPTCP to the mobile phone 100.
  • the mobile phone 100 determines that the MPTCP handshake of the first TCP connection with the application server is successful.
  • the application server supports MPTCP, and the mobile phone 100 establishes the first TCP connection with the application server.
  • the application server may send a response message that does not support MPTCP to the mobile phone 100, or may not respond to the MPTCP handshake message sent by the mobile phone 100.
  • the mobile phone 100 After the mobile phone 100 sends MPTCP handshake information to the application server, it receives a response message that does not support MPTCP from the application server, or does not receive a response from the application server within the response time (such as 1s) after sending the MPTCP handshake message Information, it is determined that the MPTCP handshake with the application server failed, the application server does not support MPTCP, and does not support the deployment of end-to-cloud direct deployment. Continue to try to establish an MPTCP connection with the application server based on the deployment of end-pipe collaboration
  • the mobile phone 100 After the application server supports MPTCP and the mobile phone 100 successfully completes the MPTCP handshake of the first TCP connection with the application server, the mobile phone 100 continues to send the second TCP connection MPTCP handshake information to the application server. Because it has been determined that the application server supports MPTCP, the second The MPTCP handshake of one TCP connection usually succeeds, and the mobile phone 100 can establish a second TCP connection with the application server to realize direct connection between the end (mobile phone) and the cloud (application server).
  • the first TCP connection and the second TCP connection are in different networks, for example, the first TCP connection (cellular network) corresponds to core network A, such as the core network of China Mobile, and the second TCP connection (WiFi network) corresponds to the core Network B, such as the core network of China Unicom, may also fail the MPTCP handshake of the second TCP connection.
  • the MPTCP handshake of the second TCP connection fails, the mobile phone 100 determines that the terminal device and the application server do not support direct cloud access. Deployment method, continue to try to establish an MPTCP connection with the application server based on the deployment method of end-pipe coordination.
  • S702 The mobile phone 100 attempts to establish an MPTCP connection with the application server based on the terminal-pipe coordination mode; when the MPTCP connection is successfully established, S704 is performed, and when the MPTCP connection fails to be established, S703 is performed.
  • the mobile phone 100 can obtain from the first TCP connection a network element (such as UPF) in the core network corresponding to the first TCP connection that supports multi-channel aggregation.
  • a network element such as UPF
  • the address of the server (component, the following takes the network element supporting multi-channel aggregation in the core network as the UPF server as an example)
  • the mobile phone 100 sets the address of the UPF server as the network proxy address of the application server, and the mobile phone 100 sends the application server Initiate the second TCP connection.
  • the first TCP connection and the second TCP connection are on the same network, for example, the first TCP connection (cellular network) and the second TCP connection (WiFi network) correspond to the same core network A, such as China Mobile’s core network, that is, the WiFi network that the mobile phone 100 accesses and the cellular network have the same network operators, both of which are China Mobile, so the second TCP connection can be routed to the UPF server of the first TCP connection, and the second The TCP connection can be established successfully, indicating that the deployment mode of supporting end-pipe coordination is supported.
  • the first TCP connection cellular network
  • WiFi network WiFi network
  • the first TCP connection and the second TCP connection are in different networks, for example, the first TCP connection (cellular network) corresponds to core network A, such as the core network of China Mobile, and the second TCP connection (WiFi network) corresponds to core network B
  • the mobile phone 100 uses the address of the UPF server corresponding to the first TCP connection as the network proxy address of the application server.
  • the second TCP connection fails to be established, and the deployment method of terminal-pipe coordination is not supported. Continue to try to establish an MPTCP connection with the application server based on the deployment method of terminal-cloud coordination.
  • network proxy also called “agent” is a special network service that allows a network terminal (generally a client, such as mobile phone 100) to communicate with another network terminal (generally a server, such as an application server) through this service. Indirect connection.
  • Computer systems or other types of network terminals (such as UPF servers) that provide proxy services can be referred to as proxy servers.
  • the UPF server as a network proxy and the following proxy server are the mobile phone 100 and The intermediary agency between the application servers is responsible for forwarding data between the mobile phone 100 and the application server.
  • S703 The mobile phone 100 attempts to establish an MPTCP connection with the application server based on the client-cloud collaboration; when the MPTCP connection is established successfully, S704 is performed, and when the MPTCP connection fails to be established, S705 is performed.
  • the mobile phone 100 modifies the network proxy address to the address of the proxy server, and initiates the first TCP connection and the second TCP connection to the application server; that is, initiates the first TCP connection and WiFi network corresponding to the cellular network to the application server
  • the first TCP connection and the second TCP connection will be successful, and the terminal device can establish an MPTCP connection with the application server; if any TCP connection fails, it is determined that the deployment of the terminal cloud collaboration is not supported the way.
  • the proxy server may be set by the manufacturer of the mobile phone 100, and the address of the proxy server is pre-configured in the mobile phone 100.
  • S704 The mobile phone 100 performs data transmission with the application server based on the MPTCP connection established with the application server.
  • the mobile phone 100 If the mobile phone 100 successfully establishes the MPTCP connection with the application server, the mobile phone 100 performs data transmission with the application server based on the MPTCP connection established with the application server. If the mobile phone 100 tries to establish an MPTCP connection with the application server according to the priority of the multiple deployment methods of MPTCP from high to low, until the deployment method of MPTCP with the lowest priority "end-cloud collaborative deployment method" is still If the MPTCP connection is not successfully established with the application server, the mobile phone 100 can be rolled back to the TCP connection mode by MPTCP, and the mobile phone 100 establishes a TCP connection with the application server. For example, only the first TCP connection corresponding to the cellular network is established with the application server or the wireless fidelity is established The second TCP connection corresponding to the WiFi network performs data transmission with the application server, thereby further protecting the reliability of data transmission.
  • the method provided in the embodiments of the present application is introduced from the perspective of the terminal device as the execution subject.
  • the terminal device may include a hardware structure and/or a software module, and implement the above functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. Whether a certain function of the above-mentioned functions is executed by a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application and design constraint conditions of the technical solution.
  • FIG. 11 shows a connection establishment apparatus 1100 provided in this application, which is used to implement the connection establishment method shown in FIG. 7.
  • the apparatus 1100 may be a terminal device or an application server, or a chip.
  • the apparatus 1100 includes a processing unit 1101 and a communication unit 1102.
  • the processing unit 1101 is configured to, when the running application program initiates data transmission to the application server, according to the priority order of the multiple deployment modes of MPTCP, from high to low, the communication unit 1102 tries to establish a connection with the application server in turn. MPTCP connection until the MPTCP connection is successfully established with the application server; the communication unit 1102 is configured to perform data transmission with the application server based on the MPTCP connection established with the application server.
  • the apparatus 1100 is a terminal device
  • the communication unit 1102 may be a transceiver.
  • the communication unit 1102 may be an interface.
  • the device 1200 includes: a transceiver 1201, a processor 1202, and a memory 1203. Wherein, the transceiver 1201, the processor 1202, and the memory 1203 are connected to each other.
  • the transceiver 1201, the processor 1202, and the memory 1203 are connected to each other through a bus 1204.
  • the bus 1204 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
  • PCI peripheral component interconnect standard
  • EISA extended industry standard architecture
  • the bus can be divided into an address bus, a data bus, a control bus, and so on. For ease of presentation, only one thick line is used to represent in FIG. 12, but it does not mean that there is only one bus or one type of bus.
  • the memory 1203 is used to store program instructions and data.
  • the program instructions may include program code, and the program code includes computer operation instructions.
  • the memory 1203 may include a random access memory (RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
  • the processor 1202 executes the program instructions and data stored in the memory 1203 to realize the above-mentioned functions, thereby realizing the connection establishment method provided in the above-mentioned embodiment.
  • the embodiments of the present application also provide a computer program product, which when the computer program product runs on a terminal device, causes the terminal device to execute the connection establishment method provided in the above embodiment.
  • the present application also provides a chip, which is coupled with a memory, and is configured to read and execute program instructions stored in the memory, and execute the connection establishment method provided in the above embodiments.
  • this application also provides a computer-readable storage medium, the computer-readable storage medium includes a computer program, when the computer program runs on a terminal device, the terminal device is caused to execute the method provided in the above embodiment Connection establishment method.
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)

Abstract

The present application relates to the technical field of communications, and discloses a connection establishment method and a terminal apparatus, used to address the problem in which terminal apparatuses have difficulties in adaptively selecting a manner of MPTCP deployment when establishing an MPTCP connection with an application server for different applications and under different regions or network operators. The method comprises: a terminal apparatus sequentially attempting, when an application running thereon initiates data transmission with an application server, to establish a MPTCP connection with the application server according to priority levels of multiple MPTCP deployment manners, in descending order of priority, until an MPTCP connection to the application server is successfully established ; and the terminal apparatus performing, on the basis of the established MPTCP connection with the application server, data transmission with respect to the application server.

Description

一种连接建立方法及终端设备Method for establishing connection and terminal equipment
相关申请的交叉引用Cross-references to related applications
本申请要求在2019年11月22日提交中国专利局、申请号为201911155555.2、申请名称为“一种连接建立方法及终端设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office, the application number is 201911155555.2, and the application name is "a connection establishment method and terminal equipment" on November 22, 2019, the entire content of which is incorporated into this application by reference in.
技术领域Technical field
本申请实施例涉及通信技术领域,尤其涉及一种连接建立方法及终端设备。The embodiments of the present application relate to the field of communication technologies, and in particular, to a method for establishing a connection and a terminal device.
背景技术Background technique
多路径传输控制协议(multi path transmission control protocol,MPTCP)是TCP的扩展协议,MPTCP可以利用多条TCP连接的并行传输提高资源的利用率。例如:用户在观看视频时,手机通过WiFi网络和蜂窝网络分别对应的TCP连接同时传输数据流,这样做的好处是可以提供更大的聚合带宽,下载速率也更高、卡顿变少、播放更流畅。Multi-path transmission control protocol (MPTCP) is an extended protocol of TCP. MPTCP can use the parallel transmission of multiple TCP connections to improve resource utilization. For example: when a user is watching a video, the mobile phone simultaneously transmits data streams through the corresponding TCP connection of the WiFi network and the cellular network. The advantage of this is that it can provide a larger aggregate bandwidth, a higher download rate, less lag, and playback. Smoother.
目前,MPTCP需要终端设备侧和应用服务器侧双侧支持,如果有一侧不支持,则会回滚到TCP协议。参照图1A和图1B所示,目前根据应用服务器侧的支持方式,MPTCP包括端云直达、端管协同和端云协同等部署方式。端云协同,最为容易实现,需要在应用服务器侧新建支持MPTCP协议的代理服务器,通过代理服务器实现终端设备与应用服务器间的多路径传输;端管协同,随着5G的用户数据报协议(user datagram protocol,UDP)服务器/融合接入网关(HAG)等核心网网关的建设,较为容易推广,通过UDP服务器等实现终端设备与应用服务器间的多路径传输;端云直达,对应用服务器是纯改造,推广难度最大,需要应用服务器支持MPTCP协议,直接由应用服务器支持与终端设备间的多路径传输。Currently, MPTCP needs to be supported by both the terminal device side and the application server side. If one side does not support it, it will roll back to the TCP protocol. Referring to Figures 1A and 1B, currently, according to the support methods on the application server side, MPTCP includes deployment methods such as terminal-cloud direct, terminal-pipe collaboration, and terminal-cloud collaboration. End-cloud collaboration is the easiest to implement. It is necessary to create a new proxy server supporting the MPTCP protocol on the application server side, and realize the multi-path transmission between the terminal device and the application server through the proxy server; end-pipe collaboration, with the 5G user datagram protocol (user datagram protocol) The construction of core network gateways such as datagram protocol, UDP) server/converged access gateway (HAG), etc., is easier to promote. Multi-path transmission between terminal equipment and application server is realized through UDP server, etc.; the end cloud is directly connected to the application server. The transformation and promotion are the most difficult. The application server needs to support the MPTCP protocol, and the application server directly supports the multi-path transmission with the terminal device.
然而,在不同应用程序、不同地区、不同网络运营商的情况下,采用的MPTCP的部署方式均存在差异,并且无论是应用服务器、UDP服务器、还是代理服务器等都不可能在短期内实现所有地区、所有网络运营商都具有MPTCP的聚合能力,MPTCP的多种部署方式会长时间共存。对于任何一台终端设备,将面临根据不同的应用程序、地区、网络运营商等因素,在MPTCP的多种部署方式间不断切换的问题,给全网实现MPTCP的部署推广带来困难。However, in the case of different applications, different regions, and different network operators, there are differences in the deployment methods of MPTCP, and it is impossible to implement all regions in a short period of time, whether it is an application server, a UDP server, or a proxy server. , All network operators have the aggregation capability of MPTCP, and multiple deployment methods of MPTCP will coexist for a long time. For any terminal device, it will face the problem of constantly switching between multiple deployment methods of MPTCP according to different applications, regions, network operators and other factors, which will bring difficulties to the deployment and promotion of MPTCP throughout the network.
发明内容Summary of the invention
本申请实施例提供一种连接建立方法及终端设备,用以解决终端设备难以在不同应用程序、不同地区、不同网络运营商的情况下,选择相应的MPTCP的部署方式,与应用服务间建立MPTCP连接的问题。The embodiments of this application provide a connection establishment method and terminal equipment to solve the difficulty of terminal equipment in different applications, different regions, and different network operators, choosing the corresponding MPTCP deployment mode, and establishing MPTCP with application services Connection problem.
第一方面,本申请实施例提供了一种连接建立方法,所述方法适用于终端设备,该方法包括:终端设备在运行的应用程序向应用服务器发起数据传输时,按照多路径传输控制协议MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接,直至与所述应用服务器建立MPTCP连接成功;所述终端设备基于与所述应 用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。In the first aspect, the embodiments of the present application provide a method for establishing a connection, which is applicable to a terminal device, and the method includes: when the running application of the terminal device initiates data transmission to the application server, according to the multi-path transmission control protocol MPTCP The priority of the various deployment methods is from high to low, and try to establish an MPTCP connection with the application server in turn, until the MPTCP connection with the application server is successfully established; the terminal device is based on the MPTCP established with the application server Connect to perform data transmission with the application server.
在本申请实施例中,所描述的由终端设备实现的连接建立方法,也可以由终端设备中的部件实现,如由终端设备中的处理芯片、电路等部件实现。采用上述方法,终端设备按照MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与应用服务器建立MPTCP连接,自动摸索网络的MPTCP支持能力,快速寻找到网络支持的MPTCP连接方式,能够适应不同应用程序、不同地区、不同网络运营商的情况下,采用的不同MPTCP部署方式,可以有效支持MPTCP的部署推广。In the embodiments of the present application, the described connection establishment method implemented by the terminal device may also be implemented by components in the terminal device, for example, by components such as processing chips and circuits in the terminal device. Using the above method, the terminal device will try to establish an MPTCP connection with the application server in order according to the priority of the multiple deployment methods of MPTCP, automatically explore the MPTCP support capability of the network, and quickly find the MPTCP connection method supported by the network. It can adapt to different applications, different regions, and different network operators, and the different MPTCP deployment methods adopted can effectively support the deployment and promotion of MPTCP.
在一种可能的设计中,所述MPTCP连接可以但不限于包括蜂窝网络对应的第一TCP连接和无线保真WiFi网络对应的第二TCP连接。上述设计中,MPTCP连接包括但不限于上述两种举例,当然,也可以包括多个其他的TCP连接。In a possible design, the MPTCP connection may include, but is not limited to, a first TCP connection corresponding to a cellular network and a second TCP connection corresponding to a wireless fidelity WiFi network. In the above design, the MPTCP connection includes but is not limited to the above two examples. Of course, it may also include multiple other TCP connections.
在一种可能的设计中,所述MPTCP的多种部署方式包括以下部署方式中的至少两种:端云直达、端管协同或端云协同。上述设计中,MPTCP的多种部署方式不局限于上述三种举例,可以根据需求配置终端设备进行MPTCP连接所依据的MPTCP的部署方式,适应不同的通信场景或通信需求。In a possible design, the multiple deployment modes of the MPTCP include at least two of the following deployment modes: terminal-cloud direct, terminal-pipe collaboration, or terminal-cloud collaboration. In the above design, the multiple deployment methods of MPTCP are not limited to the above three examples. The deployment method of MPTCP on which the terminal device performs the MPTCP connection can be configured according to requirements to adapt to different communication scenarios or communication requirements.
在一种可能的设计中,当所述MPTCP的多种部署方式为端云直达、端管协同和端云协同时,所述MPTCP的多种部署方式按照优先级从高到低的顺序依次为端云直达、端管协同和端云协同。上述设计中,从用户体验的角度出发,按照体验程度从高到低设置MPTCP的多种部署方式的优先级,有利于提高用户体验。In a possible design, when the multiple deployment modes of MPTCP are terminal-cloud direct, terminal-pipe collaboration, and terminal-cloud collaboration, the multiple deployment modes of MPTCP are in the order of priority from high to low. End-to-cloud direct, end-to-pipe collaboration, and end-to-cloud collaboration. In the above design, from the perspective of user experience, the priority of multiple deployment methods of MPTCP is set from high to low according to the degree of experience, which is conducive to improving user experience.
在一种可能的设计中,所述终端设备尝试基于端云直达方式与所述应用服务器建立MPTCP连接,包括:所述终端设备向所述应用服务器发起第一条TCP连接的MPTCP握手;当所述终端设备与所述应用服务器进行第一条TCP连接的MPTCP握手失败时,所述终端设备确定按照端云直达方式与所述应用服务器建立MPTCP连接失败;当所述终端设备与所述应用服务器进行第一条TCP连接的MPTCP握手成功时,所述终端设备向所述应用服务器发起第二条TCP连接的MPTCP握手;当所述终端设备与所述应用服务器进行第二条TCP连接的MPTCP握手成功时,所述终端设备确定按照端云直达方式与所述应用服务器建立MPTCP连接成功;当所述终端设备与所述应用服务器进行第二条TCP连接的MPTCP握手失败时,所述终端设备确定按照端云直达方式与所述应用服务器建立MPTCP连接失败;其中,所述终端设备与所述应用服务器TCP连接的MPTCP握手成功包括所述终端设备在MPTCP握手过程中,接收到所述应用服务器发送的支持MPTCP的响应信息。上述设计中,提供了一种按照端云直达方式尝试与应用服务器建立MPTCP连接的方式,有利于较为快速建立终端设备与应用服务器之间的MPTCP连接。In a possible design, the terminal device attempting to establish an MPTCP connection with the application server based on the client-cloud direct mode includes: the terminal device initiates the MPTCP handshake of the first TCP connection to the application server; When the terminal device and the application server fail to perform the MPTCP handshake of the first TCP connection, the terminal device determines that the establishment of the MPTCP connection with the application server in the direct-to-cloud manner fails; when the terminal device and the application server When the MPTCP handshake of the first TCP connection is successful, the terminal device initiates the MPTCP handshake of the second TCP connection to the application server; when the terminal device and the application server perform the MPTCP handshake of the second TCP connection When it succeeds, the terminal device determines that the MPTCP connection with the application server is successfully established in the end-cloud direct mode; when the MPTCP handshake of the second TCP connection between the terminal device and the application server fails, the terminal device determines Failed to establish an MPTCP connection with the application server according to the end-cloud direct mode; wherein the successful MPTCP handshake of the TCP connection between the terminal device and the application server includes that the terminal device receives the application server's transmission during the MPTCP handshake process Support MPTCP response information. In the above design, a way to try to establish an MPTCP connection with the application server according to the direct-to-cloud method is provided, which is conducive to faster establishment of the MPTCP connection between the terminal device and the application server.
在一种可能的设计中,所述终端设备尝试基于端管协同方式与所述应用服务器建立MPTCP连接,包括:所述终端设备与所述服务器建立第一条TCP连接;所述终端设备将所述第一条TCP连接对应的核心网中支持多路汇聚的网元(如UPF服务器、HAG等)的地址作为所述应用服务器的网络代理地址,向所述应用服务器发起第二条TCP连接;当所述终端设备与所述应用服务器建立第二条TCP连接成功时,所述终端设备确定按照端管协同方式与所述应用服务器建立MPTCP连接成功;当所述终端设备与所述应用服务器建立第二条TCP连接失败时,所述终端设备确定按照端管协同方式与所述应用服务器建立MPTCP连接失败。上述设计中,提供了一种按照端管协同方式尝试与应用服务器建立MPTCP连接的方式,有利于终端设备与应用服务器之间建立MPTCP连接。In a possible design, the terminal device attempts to establish an MPTCP connection with the application server based on the end-pipe coordination method, including: the terminal device establishes the first TCP connection with the server; The address of a network element (such as a UPF server, HAG, etc.) that supports multi-channel aggregation in the core network corresponding to the first TCP connection is used as the network proxy address of the application server, and a second TCP connection is initiated to the application server; When the terminal device successfully establishes the second TCP connection with the application server, the terminal device determines that the MPTCP connection is successfully established with the application server according to the end-pipe coordination mode; when the terminal device and the application server are established When the second TCP connection fails, the terminal device determines that the establishment of the MPTCP connection with the application server fails in a terminal-pipe coordination manner. In the above design, a way to try to establish an MPTCP connection with the application server according to the end-pipe coordination mode is provided, which is beneficial to establish an MPTCP connection between the terminal device and the application server.
在一种可能的设计中,所述终端设备尝试基于端云协同方式与所述应用服务器建立MPTCP连接,包括:所述终端设备将代理服务器的地址作为所述应用服务器的网络代理地址,向所述应用服务器发起第一条TCP连接和第二条TCP连接;当所述终端设备与所述应用服务器建立第一条TCP连接和第二条TCP连接均成功时,所述终端设备确定按照端云协同方式与所述应用服务器建立MPTCP连接成功;当所述终端设备与所述应用服务器建立第一条TCP连接和/或第二条TCP连接失败时,所述终端设备确定按照端云协同方式与所述应用服务器建立MPTCP连接失败。上述设计中,提供了一种按照端云协同方式尝试与应用服务器建立MPTCP连接的方式,有利于终端设备与应用服务器之间建立MPTCP连接。In a possible design, the terminal device attempts to establish an MPTCP connection with the application server based on the end-cloud collaboration method, including: the terminal device uses the address of the proxy server as the network proxy address of the application server, The application server initiates the first TCP connection and the second TCP connection; when the terminal device successfully establishes the first TCP connection and the second TCP connection with the application server, the terminal device determines to follow the end cloud The establishment of an MPTCP connection with the application server succeeds in the coordination mode; when the terminal device fails to establish the first TCP connection and/or the second TCP connection with the application server, the terminal device determines to establish the connection with the application server in the terminal cloud coordination mode. The application server failed to establish the MPTCP connection. In the above design, a way to try to establish an MPTCP connection with an application server according to a client-cloud collaboration mode is provided, which is beneficial to establishing an MPTCP connection between the terminal device and the application server.
在一种可能的设计中,所述方法还可以包括:当所述终端设备按照所述MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接均不成功时,即按照优先级最低的MPTCP的部署方式与所述应用服务器建立MPTCP连接失败时,所述终端设备与所述应用服务器建立TCP连接;所述终端设备基于所述TCP连接与所述应用服务器进行数据传输。上述设计中,在终端设备基于MPTCP的多种部署方式均未与应用服务器建立MPTCP连接时,回滚到TCP协议与应用服务器建立TCP连接,有利于保证数据传输的可靠性。In a possible design, the method may further include: when the terminal device sequentially attempts to establish an MPTCP connection with the application server according to the priority of the multiple deployment modes of the MPTCP from high to low. When unsuccessful, that is, when the MPTCP connection with the application server fails to be established according to the MPTCP deployment mode with the lowest priority, the terminal device establishes a TCP connection with the application server; the terminal device establishes a TCP connection with the application server based on the TCP connection The application server performs data transmission. In the above design, when the terminal equipment does not establish an MPTCP connection with the application server in the multiple deployment methods based on MPTCP, rolling back to the TCP protocol to establish a TCP connection with the application server is beneficial to ensure the reliability of data transmission.
第二方面,本申请实施例提供一种终端设备,包括处理器和存储器。其中,存储器用于存储一个或多个计算机程序;当存储器存储的一个或多个计算机程序被处理器执行时,使得该终端设备能够实现上述任一方面的任意一种可能的设计的方法。In the second aspect, an embodiment of the present application provides a terminal device, including a processor and a memory. The memory is used to store one or more computer programs; when the one or more computer programs stored in the memory are executed by the processor, the terminal device can implement any one of the possible design methods in any one of the above aspects.
第三方面,本申请实施例还提供一种装置,该装置包括执行上述任一方面的任意一种可能的设计的方法的模块/单元。这些模块/单元可以通过硬件实现,也可以通过硬件执行相应的软件实现。In a third aspect, an embodiment of the present application further provides a device, which includes a module/unit that executes any one of the possible design methods in any of the foregoing aspects. These modules/units can be realized by hardware, or by hardware executing corresponding software.
第四方面,本申请实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,当计算机程序在终端设备上运行时,使得所述终端设备可以执行上述任一方面的任意一种可能的设计的方法。In a fourth aspect, an embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium includes a computer program. When the computer program runs on a terminal device, the terminal device can execute any of the above. Any one of the possible design methods.
第五方面,本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在终端上运行时,使得所述终端设备可以执行上述任一方面的任意一种可能的设计的方法。In a fifth aspect, the embodiments of the present application also provide a computer program product, when the computer program product runs on a terminal, the terminal device can execute any one of the possible design methods in any of the foregoing aspects.
第六方面,本申请实施例还提供一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的程序指令,实现上述第一方面或者第一方面的任一种可能的设计中所述的方法。In a sixth aspect, an embodiment of the present application also provides a chip, which is coupled with a memory, and is configured to read and execute program instructions stored in the memory to realize the first aspect or any one of the first aspects. The method described in the design.
上述第二方面至第六方面所能达到的技术效果请参照上述第一方面中的任一种可能的设计所能达到的技术效果,这里不再重复赘述。For the technical effects that can be achieved from the second aspect to the sixth aspect described above, please refer to the technical effects that can be achieved by any possible design in the first aspect described above, which will not be repeated here.
附图说明Description of the drawings
图1A为本申请提供的MPTCP部署方式示意图;Figure 1A is a schematic diagram of the MPTCP deployment method provided by this application;
图1B为本申请提供的MPTCP部署方式的推广难度、成本和体验示意图;Figure 1B is a schematic diagram of the promotion difficulty, cost and experience of the MPTCP deployment method provided by this application;
图2为本申请实施例提供的一种MPTCP应用的系统架构;FIG. 2 is a system architecture of an MPTCP application provided by an embodiment of the application;
图3为本申请实施例提供的一种多网络部署的数据传输系统架构图;FIG. 3 is an architecture diagram of a data transmission system for multi-network deployment provided by an embodiment of the application;
图4为本申请实施例提供的一种TCP协议栈扩充到MPTCP协议栈的示意图;4 is a schematic diagram of a TCP protocol stack extended to MPTCP protocol stack provided by an embodiment of the application;
图5为本申请实施例提供的一种MPTCP实现过程示意图;FIG. 5 is a schematic diagram of an MPTCP implementation process provided by an embodiment of this application;
图6为本申请实施例提供的一种终端设备的结构示意图;FIG. 6 is a schematic structural diagram of a terminal device provided by an embodiment of this application;
图7为本申请实施例提供的一种连接建立过程示意图;FIG. 7 is a schematic diagram of a connection establishment process provided by an embodiment of the application;
图8为本申请实施例提供的一种端云直达MPTCP连接建立示意图;FIG. 8 is a schematic diagram of establishing a direct MPTCP connection between the device and the cloud according to an embodiment of the application;
图9为本申请实施例提供的一种端管协同MPTCP连接建立示意图;FIG. 9 is a schematic diagram of a terminal-pipe cooperative MPTCP connection establishment according to an embodiment of the application;
图10为本申请实施例提供的一种端云协同MPTCP连接建立示意图;FIG. 10 is a schematic diagram of establishing a terminal-cloud cooperative MPTCP connection provided by an embodiment of this application;
图11为本申请实施例提供的一种连接建立装置示意框图;FIG. 11 is a schematic block diagram of a connection establishment apparatus provided by an embodiment of this application;
图12为本申请实施例提供的另一种连接建立装置示意图。FIG. 12 is a schematic diagram of another connection establishment apparatus provided by an embodiment of this application.
具体实施方式Detailed ways
下面将结合各个附图,对本申请实施例的具体实施过程进行详细描述。The specific implementation process of the embodiments of the present application will be described in detail below with reference to the various drawings.
本申请实施例提供的连接建立方法可应用于通信系统的数据传输,其中,数据接收端与数据发送端可以通过无线接入网(radio access network,RAN)以及核心网进行数据交互,所述数据接收端和所述数据发送端之间还可建立传输控制协议(transmission control protocol,TCP)连接,采用TCP协议进行数据传输。如图2所示,无线通信系统中终端设备和应用服务器之间进行数据交互,终端设备通过空口接入到RAN,经由核心网连接到应用服务器,其中,终端设备与RAN之间的网络可称为无线网络,RAN与应用服务器之间的网络可称为有线网络。应用服务器与终端设备之间建立TCP连接并进行数据传输。The connection establishment method provided in the embodiments of this application can be applied to data transmission in a communication system, where the data receiving end and the data sending end can exchange data through a radio access network (RAN) and a core network. The data A transmission control protocol (TCP) connection may also be established between the receiving end and the data sending end, and the TCP protocol is used for data transmission. As shown in Figure 2, the terminal device and the application server in the wireless communication system exchange data. The terminal device connects to the RAN through the air interface and connects to the application server via the core network. The network between the terminal device and the RAN can be called It is a wireless network, and the network between the RAN and the application server can be called a wired network. A TCP connection is established between the application server and the terminal device and data transmission is performed.
其中,应用服务器可以是服务器集群中的服务器,例如某一视频应用的不同视频片段可能分布在不同的服务器上;应用服务器也可以是某一个服务器。The application server may be a server in a server cluster, for example, different video clips of a certain video application may be distributed on different servers; the application server may also be a certain server.
随着通信技术的发展,通信系统已经演进为多个通信网络共同部署的通信架构,终端设备可接入不止一个通信网络进行通信。需要说明的是,当该通信网络为局域网时,示例性的,该通信网络可以是无线保真(wireless fidelity,WiFi)网络(也称Wi-Fi网络)、蓝牙网络、zigbee网络或近场通信(near field communication,NFC)网络等近距离通信网络。当该通信网络为广域网时,示例性的,该通信网络可以是第三代移动通信技术(3rd-generation wireless telephone technology,3G)网络、第四代移动通信技术(the 4th generation mobile communication technology,4G)网络、第五代移动通信技术(5th-generation mobile communication technology,5G)网络、未来演进的公共陆地移动网络(public land mobile network,PLMN)或因特网等。With the development of communication technology, the communication system has evolved into a communication architecture jointly deployed by multiple communication networks, and terminal devices can access more than one communication network for communication. It should be noted that when the communication network is a local area network, for example, the communication network may be a wireless fidelity (WiFi) network (also called a Wi-Fi network), a Bluetooth network, a zigbee network, or near field communication. (near field communication, NFC) network and other short-distance communication networks. When the communication network is a wide area network, for example, the communication network may be a 3rd-generation wireless telephone technology (3G) network, or the 4th generation mobile communication technology (4G). ) Network, the fifth-generation mobile communication technology (5G) network, the future evolution of the public land mobile network (PLMN) or the Internet, etc.
例如,图3中部署有WiFi网络和长期演进(long term evolution,LTE)网络的通信系统中,终端设备可接入WiFi网络,通过演进的分组数据网关(evolved packet data gateway,ePDG)或被信任网关(trusted gateway,TGW)与应用服务器进行数据传输,也可接入到LTE网络,通过服务网关(serving gateway,SGW)或分组数据网关(packet data network gateway,PGW)与应用服务器进行数据传输。For example, in the communication system where WiFi network and long term evolution (LTE) network are deployed in Figure 3, terminal devices can access the WiFi network and pass the evolved packet data gateway (ePDG) or be trusted A trusted gateway (TGW) performs data transmission with an application server, and can also be connected to an LTE network, and performs data transmission with the application server through a serving gateway (SGW) or packet data network gateway (PGW).
其中,异构网络的部署推动了多路径数据传输业务的发展,目前通过对TCP协议扩展得到了MPTCP协议,利用该MPTCP协议使一个业务可使用多路径的网络资源进行数据传输。例如图3中手机可以使用WiFi网络资源和LTE网络资源与应用服务器进行数据传输。图4示出了TCP协议栈扩充到MPTCP协议栈的示意图。TCP协议栈中,应用(application)层的数据流通过一条TCP连接发送,在MPTCP协议栈中,传输层被划分为两个子层:MPTCP层和TCP层,应用层的数据流经由MPTCP层所分解的两条TCP连接传送。Among them, the deployment of heterogeneous networks has promoted the development of multi-path data transmission services. At present, the MPTCP protocol is obtained by extending the TCP protocol. Using the MPTCP protocol, a service can use multi-path network resources for data transmission. For example, in Figure 3, the mobile phone can use WiFi network resources and LTE network resources to transmit data with the application server. Figure 4 shows a schematic diagram of the expansion of the TCP protocol stack to the MPTCP protocol stack. In the TCP protocol stack, the data flow of the application layer is sent through a TCP connection. In the MPTCP protocol stack, the transport layer is divided into two sub-layers: MPTCP layer and TCP layer. The data flow of the application layer is decomposed by the MPTCP layer. The two TCP connections are transmitted.
图5示出了MPTCP的使用场景示意图,图5中终端设备和应用服务器之间建立了两 条TCP连接,一个TCP连接使用WiFi网络资源,另一个TCP连接使用LTE网络资源。应用服务器的MPTCP层将TCP流分解为两个TCP子流后通过这两个TCP连接分别独立传送至终端设备,终端设备收到两个TCP子流之后,将这两个子流合并后再发送给应用层。Figure 5 shows a schematic diagram of MPTCP usage scenarios. In Figure 5, two TCP connections are established between the terminal device and the application server. One TCP connection uses WiFi network resources, and the other TCP connection uses LTE network resources. The MPTCP layer of the application server decomposes the TCP stream into two TCP sub-streams and transmits them to the terminal device separately through these two TCP connections. After receiving the two TCP sub-streams, the terminal device combines the two sub-streams and sends them to Application layer.
在本申请一些实施例中,图2所示的无线通信系统中终端设备可以是还包含其他功能诸如个人数字助理和/或音乐播放器功能的便携式终端设备,诸如手机、平板电脑、具备无线通讯功能的可穿戴设备(如智能手表)等。便携式终端设备的示例性实施例包括但不限于搭载
Figure PCTCN2020127107-appb-000001
或者其他操作系统的便携式终端设备。上述便携式终端设备也可以是其他便携式终端设备,诸如具有触敏表面(例如触控面板)的膝上型计算机(laptop)等。还应当理解的是,在本申请其他一些实施例中,上述终端设备也可以不是便携式终端设备,而是具有触敏表面(例如触控面板)的台式计算机。
In some embodiments of the present application, the terminal device in the wireless communication system shown in FIG. 2 may be a portable terminal device that also contains other functions such as personal digital assistants and/or music player functions, such as mobile phones, tablet computers, and wireless communication. Functional wearable devices (such as smart watches), etc. Exemplary embodiments of portable terminal equipment include, but are not limited to, carrying
Figure PCTCN2020127107-appb-000001
Or portable terminal equipment with other operating systems. The aforementioned portable terminal device may also be other portable terminal devices, such as a laptop with a touch-sensitive surface (for example, a touch panel). It should also be understood that in some other embodiments of the present application, the aforementioned terminal device may not be a portable terminal device, but a desktop computer with a touch-sensitive surface (such as a touch panel).
示例性地,如图6所示,本申请实施例中的终端设备可以为手机,下面以手机为例对实施例进行具体说明。Exemplarily, as shown in FIG. 6, the terminal device in the embodiment of the present application may be a mobile phone, and the embodiment will be described in detail by taking a mobile phone as an example.
手机100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。The mobile phone 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, Mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, sensor module 180, buttons 190, motor 191, indicator 192, camera 193, display screen 194, and user Identification module (subscriber identification module, SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, and ambient light Sensor 180L, bone conduction sensor 180M, etc.
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是手机100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), and an image signal processor. (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU) Wait. Among them, the different processing units may be independent devices or integrated in one or more processors. The controller may be the nerve center and command center of the mobile phone 100. The controller can generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions. A memory may also be provided in the processor 110 to store instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can store instructions or data that the processor 110 has just used or used cyclically. If the processor 110 needs to use the instruction or data again, it can be directly called from the memory. Repeated accesses are avoided, the waiting time of the processor 110 is reduced, and the efficiency of the system is improved.
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为手机100充电,也可以用于手机100与外围设备之间传输数据。充电管理模块140用于从充电器接收充电输入。电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。The USB interface 130 is an interface that complies with the USB standard specification, and specifically may be a Mini USB interface, a Micro USB interface, a USB Type C interface, and so on. The USB interface 130 can be used to connect a charger to charge the mobile phone 100, and can also be used to transfer data between the mobile phone 100 and peripheral devices. The charging management module 140 is used to receive charging input from the charger. The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140, and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, and the wireless communication module 160.
手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信 号。手机100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。The wireless communication function of the mobile phone 100 can be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor. Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in the mobile phone 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example: Antenna 1 can be multiplexed as a diversity antenna of a wireless local area network. In other embodiments, the antenna can be used in combination with a tuning switch.
移动通信模块150可以提供应用在手机100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。The mobile communication module 150 may provide a wireless communication solution including 2G/3G/4G/5G and the like applied to the mobile phone 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves by the antenna 1, and perform processing such as filtering, amplifying and transmitting the received electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor, and convert it into electromagnetic wave radiation via the antenna 1. In some embodiments, at least part of the functional modules of the mobile communication module 150 may be provided in the processor 110. In some embodiments, at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 may be provided in the same device.
无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless local area networks,WLAN)(如WiFi网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。The wireless communication module 160 can provide applications on the mobile phone 100 including wireless local area networks (WLAN) (such as WiFi networks), Bluetooth (bluetooth, BT), global navigation satellite system (GNSS), and frequency modulation. (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions. The wireless communication module 160 may be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 may also receive the signal to be sent from the processor 110, perform frequency modulation, amplify it, and convert it into electromagnetic waves to radiate through the antenna 2.
在一些实施例中,手机100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。In some embodiments, the antenna 1 of the mobile phone 100 is coupled with the mobile communication module 150, and the antenna 2 is coupled with the wireless communication module 160, so that the mobile phone 100 can communicate with the network and other devices through wireless communication technology. The wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code division multiple access (wideband code division multiple access, WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc. The GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite-based augmentation systems (SBAS).
显示屏194用于显示应用的显示界面等。显示屏594包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,手机100可以包括1个或N个显示屏194,N为大于1的正整数。在本申请实施例中,显示屏194可用于同时显示多个应用界面。The display screen 194 is used to display the display interface of the application and the like. The display screen 594 includes a display panel. The display panel can adopt liquid crystal display (LCD), organic light-emitting diode (OLED), active matrix organic light-emitting diode or active-matrix organic light-emitting diode (active-matrix organic light-emitting diode). AMOLED, flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, quantum dot light-emitting diode (QLED), etc. In some embodiments, the mobile phone 100 may include one or N display screens 194, and N is a positive integer greater than one. In the embodiment of the present application, the display screen 194 may be used to display multiple application interfaces at the same time.
摄像头193用于捕获静态图像或视频。摄像头193可以包括前置摄像头和后置摄像头。The camera 193 is used to capture still images or videos. The camera 193 may include a front camera and a rear camera.
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行手机100的各种功能应用以 及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,以及至少一个应用程序(例如爱奇艺应用,微信应用等)的软件代码等。存储数据区可存储手机100使用过程中所产生的数据(例如图像、视频等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。The internal memory 121 may be used to store computer executable program code, where the executable program code includes instructions. The processor 110 executes various functional applications and data processing of the mobile phone 100 by running instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. Among them, the storage program area can store an operating system, and software codes of at least one application (for example, an iQiyi application, a WeChat application, etc.). The data storage area can store data (such as images, videos, etc.) generated during the use of the mobile phone 100. In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, a universal flash storage (UFS), and the like.
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将图片,视频等文件保存在外部存储卡中。The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the mobile phone 100. The external memory card communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example, save pictures, videos and other files in an external memory card.
手机100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。The mobile phone 100 can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor. For example, music playback, recording, etc.
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。陀螺仪传感器180B可以用于确定手机100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定手机100围绕三个轴(即,x,y和z轴)的角速度。The pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A may be provided on the display screen 194. The gyro sensor 180B may be used to determine the movement posture of the mobile phone 100. In some embodiments, the angular velocity of the mobile phone 100 around three axes (ie, x, y, and z axes) can be determined by the gyroscope sensor 180B.
陀螺仪传感器180B可以用于拍摄防抖。气压传感器180C用于测量气压。在一些实施例中,手机100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。磁传感器180D包括霍尔传感器。手机100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当手机100是翻盖机时,手机100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。加速度传感器180E可检测手机100在各个方向上(一般为三轴)加速度的大小。当手机100静止时可检测出重力的大小及方向。还可以用于识别手机姿态,应用于横竖屏切换,计步器等应用。The gyro sensor 180B can be used for image stabilization. The air pressure sensor 180C is used to measure air pressure. In some embodiments, the mobile phone 100 uses the air pressure value measured by the air pressure sensor 180C to calculate the altitude to assist positioning and navigation. The magnetic sensor 180D includes a Hall sensor. The mobile phone 100 can use the magnetic sensor 180D to detect the opening and closing of the flip holster. In some embodiments, when the mobile phone 100 is a flip phone, the mobile phone 100 can detect the opening and closing of the flip according to the magnetic sensor 180D. Furthermore, according to the detected opening and closing state of the holster or the opening and closing state of the flip cover, features such as automatic unlocking of the flip cover are set. The acceleration sensor 180E can detect the magnitude of the acceleration of the mobile phone 100 in various directions (generally three axes). When the mobile phone 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify mobile phone gestures, switch between horizontal and vertical screens, pedometers and other applications.
距离传感器180F,用于测量距离。手机100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,手机100可以利用距离传感器180F测距以实现快速对焦。接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。手机100通过发光二极管向外发射红外光。手机100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定手机100附近有物体。当检测到不充分的反射光时,手机100可以确定手机100附近没有物体。手机100可以利用接近光传感器180G检测用户手持手机100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。Distance sensor 180F, used to measure distance. The mobile phone 100 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the mobile phone 100 may use the distance sensor 180F to measure the distance to achieve fast focusing. The proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector such as a photodiode. The light emitting diode may be an infrared light emitting diode. The mobile phone 100 emits infrared light to the outside through the light emitting diode. The mobile phone 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the mobile phone 100. When insufficient reflected light is detected, the mobile phone 100 can determine that there is no object near the mobile phone 100. The mobile phone 100 can use the proximity light sensor 180G to detect that the user holds the mobile phone 100 close to the ear to talk, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used in leather case mode, and the pocket mode will automatically unlock and lock the screen.
环境光传感器180L用于感知环境光亮度。手机100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测手机100是否在口袋里,以防误触。指纹传感器180H用于采集指纹。手机100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。The ambient light sensor 180L is used to sense the brightness of the ambient light. The mobile phone 100 can adaptively adjust the brightness of the display 194 according to the perceived brightness of the ambient light. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures. The ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the mobile phone 100 is in the pocket to prevent accidental touch. The fingerprint sensor 180H is used to collect fingerprints. The mobile phone 100 can use the collected fingerprint characteristics to realize fingerprint unlocking, access application locks, fingerprint photographs, fingerprint answering calls, and so on.
温度传感器180J用于检测温度。在一些实施例中,手机100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,手机100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,手机100对电池142加热,以避免低温导致手机100异常关机。在其他一些实施例中,当温度低于又一阈值时,手机100对电池142的输出电 压执行升压,以避免低温导致的异常关机。The temperature sensor 180J is used to detect temperature. In some embodiments, the mobile phone 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the mobile phone 100 performs a reduction in the performance of the processor located near the temperature sensor 180J, so as to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, the mobile phone 100 heats the battery 142 to avoid abnormal shutdown of the mobile phone 100 due to low temperature. In some other embodiments, when the temperature is lower than another threshold, the mobile phone 100 boosts the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于手机100的表面,与显示屏194所处的位置不同。Touch sensor 180K, also called "touch panel". The touch sensor 180K may be disposed on the display screen 194, and the touch screen is composed of the touch sensor 180K and the display screen 194, which is also called a “touch screen”. The touch sensor 180K is used to detect touch operations acting on or near it. The touch sensor can pass the detected touch operation to the application processor to determine the type of touch event. The visual output related to the touch operation can be provided through the display screen 194. In other embodiments, the touch sensor 180K may also be disposed on the surface of the mobile phone 100, which is different from the position of the display screen 194.
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。The bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can obtain the vibration signal of the vibrating bone mass of the human voice. The bone conduction sensor 180M can also contact the human pulse and receive the blood pressure pulse signal.
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机100可以接收按键输入,产生与手机100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和手机100的接触和分离。The button 190 includes a power-on button, a volume button, and so on. The button 190 may be a mechanical button. It can also be a touch button. The mobile phone 100 can receive key input, and generate key signal input related to user settings and function control of the mobile phone 100. The motor 191 can generate vibration prompts. The motor 191 can be used for incoming call vibration notification, and can also be used for touch vibration feedback. For example, touch operations that act on different applications (such as photographing, audio playback, etc.) can correspond to different vibration feedback effects. The indicator 192 may be an indicator light, which may be used to indicate the charging status, power change, or to indicate messages, missed calls, notifications, and so on. The SIM card interface 195 is used to connect to the SIM card. The SIM card can be inserted into the SIM card interface 195 or pulled out from the SIM card interface 195 to achieve contact and separation with the mobile phone 100.
可以理解的是,图6所示的部件并不构成对手机的具体限定,手机还可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。It is understandable that the components shown in Figure 6 do not constitute a specific limitation on the mobile phone. The mobile phone may also include more or fewer components than those shown in the figure, or combine some components, or split some components, or different The layout of the components.
在不同应用程序、不同地区、不同网络运营商等情况下,采用的MPTCP的部署方式可能存在差异。示例的:应用程序A仅对同网(同一核心网,如同一网络运营商)的用户,生效端管协同的MPTCP部署方式;应用程序B,仅对北京地区的用户生效端云直达的MPTCP部署方式;应用程序C,仅对北京、上海、深圳地区的用户生效端云协同的MPTCP部署方式。现有技术中通常会在终端设备侧静态配置的方式(如在应用程序安装时保存至终端设备),配置对应用程序生效的MPTCP部署方式。终端设备根据静态配置的对应用程序生效的MPTCP部署方式进行MPTCP连接,例如:应用程序A仅针对同网用户生效,同网用户在使用端管协的MPTCP部署方式时,能够成功建立MPTCP连接,不同网用户在使用端管协的MPTCP部署方式时会出现故障,回滚到TCP协议。但是随着网络的不断建设,应用服务器、UPF服务器等支持MPTCP的能力会不断发生变化,静态配置对应用程序生效的MPTCP部署方式会进一步复杂,给全网实现MPTCP的部署推广带来困难。In different applications, different regions, and different network operators, there may be differences in the deployment methods of MPTCP. Exemplary: Application A is only valid for users on the same network (the same core network, such as the same network operator), and the MPTCP deployment method with end-management collaboration is effective; Application B is only for users in the Beijing area. Method: Application C is only valid for users in Beijing, Shanghai, and Shenzhen, using the MPTCP deployment method of device-cloud collaboration. In the prior art, a static configuration method (such as saving to the terminal device when the application program is installed) is usually statically configured on the terminal device side, and the MPTCP deployment method that is effective for the application program is configured. The terminal device performs MPTCP connection according to the statically configured MPTCP deployment method that is effective for the application. For example, application A is only effective for users on the same network. When users on the same network use the MPTCP deployment method of the terminal management association, they can successfully establish an MPTCP connection. Different network users will fail when using the MPTCP deployment mode of the End Management Association and roll back to the TCP protocol. However, with the continuous construction of the network, the ability of application servers, UPF servers, etc. to support MPTCP will continue to change, and the MPTCP deployment method that static configuration takes effect on applications will become more complicated, which will bring difficulties to the entire network to implement MPTCP deployment and promotion.
本申请旨在提供一种连接建立方案,以在不同应用程序、不同地区、不同网络运营商等网络条件下,通过按照MPTCP的多种部署方式的优先级从高到低的顺序依次尝试与应用服务器建立MPTCP连接,自动摸索网络的MPTCP支持能力,快速寻找到网络支持的MPTCP连接方式,支持MPTCP的部署推广。This application aims to provide a connection establishment solution to try and apply MPTCP in order of priority from high to low under different application programs, different regions, different network operators and other network conditions. The server establishes an MPTCP connection, automatically explores the MPTCP support capability of the network, quickly finds the MPTCP connection mode supported by the network, and supports the deployment and promotion of MPTCP.
为了便于理解,本申请以下实施例将以具有图6所示结构的手机100为例,结合附图对本申请实施例提供的连接建立方法进行具体阐述。For ease of understanding, the following embodiments of the present application will take the mobile phone 100 having the structure shown in FIG. 6 as an example, and describe the connection establishment method provided by the embodiments of the present application in detail with reference to the accompanying drawings.
另外,需要理解,在本申请实施例中,“示例的”一词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。本申请实施例和权利要求书及附图中的术语“包括”和“具有”不是排他的。例如,包括了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,还可以包括 没有列出的步骤或模块。本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。以及,除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。本申请中涉及的“多个”为两个或两个以上。In addition, it needs to be understood that in the embodiments of the present application, the word "exemplary" is used to represent an example, illustration, or illustration. Any embodiment or design solution described as an "example" in this application should not be construed as being more preferable or advantageous than other embodiments or design solutions. To be precise, the term example is used to present the concept in a concrete way. The terms "including" and "having" in the embodiments of the present application, claims and drawings are not exclusive. For example, a process, method, system, product, or device that includes a series of steps or modules is not limited to the listed steps or modules, and may also include unlisted steps or modules. The terms "system" and "network" in this article are often used interchangeably in this article. The term "and/or" in this article is only an association relationship describing the associated objects, which means that there can be three relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, exist alone B these three situations. In addition, the character "/" in this text generally indicates that the associated objects before and after are in an "or" relationship. It should be understood that in the embodiments of the present application, "B corresponding to A" means that B is associated with A, and B can be determined according to A. However, it should also be understood that determining B based on A does not mean that B is determined only based on A, and B can also be determined based on A and/or other information. And, unless otherwise stated, the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects, and are not used to limit the order, timing, priority, or order of multiple objects. Importance. The "plurality" referred to in this application is two or more than two.
在本申请实施例中,手机100支持MPTCP,即手机100可以同时连接至少两个网络。示例的:手机100可以同时连接WiFi网络和蜂窝网络,手机100可以通过两个网络连接建立对应的两条通信链路进行数据传输。In the embodiment of the present application, the mobile phone 100 supports MPTCP, that is, the mobile phone 100 can connect to at least two networks at the same time. For example, the mobile phone 100 can be connected to a WiFi network and a cellular network at the same time, and the mobile phone 100 can establish two corresponding communication links through the two network connections for data transmission.
另外,在手机100中还配置有MPTCP的多种部署方式,及所述多种部署方式分别对应的优先级。示例的:在手机100中配置的MPTCP的部署方式包括:端云协同、端管协同和端云直达,及端云直达的优先级“1”、端管协同的优先级为“2”和端云协同的优先级为“3”,其中随着优先级的数值增加,对应的优先级降低。In addition, the mobile phone 100 is also configured with multiple deployment methods of MPTCP, and respective priorities corresponding to the multiple deployment methods. Exemplary: The deployment methods of MPTCP configured in the mobile phone 100 include: device-cloud collaboration, device-pipe coordination, and device-cloud direct, and the priority of device-cloud direct is "1", the priority of device-pipe collaboration is "2" and the end The priority of cloud collaboration is "3", where as the value of the priority increases, the corresponding priority decreases.
作为一种示例,手机100中配置的MPTCP的多种部署方式,及所述多种部署方式分别对应的优先级,可以由手机100的生产厂商,在手机100出厂时配置在手机100中,并且可以通过对手机100中系统配置等信息的更新,对手机100中配置的MPTCP的多种部署方式,及所述多种部署方式分别对应的优先级进行更新。As an example, the multiple deployment methods of MPTCP configured in the mobile phone 100 and the respective priorities of the multiple deployment methods may be configured in the mobile phone 100 by the manufacturer of the mobile phone 100 when the mobile phone 100 is shipped from the factory, and The multiple deployment methods of MPTCP configured in the mobile phone 100 and the respective priorities corresponding to the multiple deployment methods can be updated by updating information such as the system configuration in the mobile phone 100.
具体的,当手机100在运行的应用程序向应用服务器发起数据连接时,手机100按照MPTCP包括的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接,直至与所述应用服务器建立MPTCP连接成功,或按照优先级最低的MPTCP的部署方式与所述应用服务器建立MPTCP连接失败。Specifically, when the running application of the mobile phone 100 initiates a data connection to the application server, the mobile phone 100 attempts to establish an MPTCP connection with the application server in order of priority of the multiple deployment modes included in MPTCP, Until the establishment of the MPTCP connection with the application server succeeds, or the establishment of the MPTCP connection with the application server fails according to the MPTCP deployment mode with the lowest priority.
下面以MPTCP连接包括:蜂窝网络对应的第一TCP连接和WiFi网络对应的第二TCP连接,手机100中配置的MPTCP的部署方式包括:端云协同、端管协同和端云直达,且优先级为端云直达的优先级>端管协同的优先级>端云协同的优先级为例,进行说明。The following MPTCP connections include: the first TCP connection corresponding to the cellular network and the second TCP connection corresponding to the WiFi network. The deployment methods of MPTCP configured in the mobile phone 100 include: terminal-cloud collaboration, terminal-pipe collaboration, and terminal-cloud direct, and priority Take the example of terminal-cloud direct priority> terminal-pipe collaboration priority> terminal-cloud collaboration priority.
参见图7,示例性的示出了本申请实施例提供的一种连接建立方法的流程,该方法是由手机100执行,该方法包括如下步骤。Referring to FIG. 7, it exemplarily shows a flow of a connection establishment method provided by an embodiment of the present application. The method is executed by the mobile phone 100, and the method includes the following steps.
S701:手机100在运行的应用程序向应用服务器发起数据传输时,尝试基于端云直达方式与所述应用服务器建立MPTCP连接;当建立MPTCP连接成功时,进行S704,当建立MPTCP连接失败时,进行S702。S701: When the running application of the mobile phone 100 initiates data transmission to the application server, it tries to establish an MPTCP connection with the application server based on the direct mode of the terminal cloud; when the establishment of the MPTCP connection is successful, proceed to S704; when the establishment of the MPTCP connection fails, proceed to S702.
在本申请实施例中,所述应用程序可以为腾讯视频、暴风影音、酷狗音乐、微信、QQ等需要通过网络与对应的应用服务器进行数据传输的应用程序,本申请这里不做具体限定。换句话来说,所述应用程序为“联网”应用程序而非“单机”应用程序。In the embodiment of this application, the application program may be Tencent Video, Baofengyingyin, Kugou Music, WeChat, QQ and other applications that need to transmit data with the corresponding application server through the network, which is not specifically limited in this application. In other words, the application is a "networked" application rather than a "stand-alone" application.
当存在多个可用网络时,如存在蜂窝网络和WiFi网络时,在手机100中的腾讯视频、暴风影音、酷狗音乐等“联网”应用程序被启动时,手机100中运行的应用程序“如暴风影音”,会向对应的应用服务器“如暴风影音应用服务器”发起数据传输,手机100在运行的应用程序向应用服务器发起数据传输时,首先尝试基于端云直达方式与应用服务器建立MPTCP连接。参照图8所示,手机100可以首先与应用服务器进行第一条TCP连接的 MPTCP握手,其中第一条TCP连接可以是蜂窝网络对应的第一TCP连接,也可以是WiFi网络对应的第二TCP连接。具体的,在与应用服务器进行第一条TCP连接的MPTCP握手时,手机100可以向应用服务器发送MPTCP握手信息,其中所述MPTCP握手信息可以通过同步序列编号(synchronize sequence numbers,syn)数据包发送,携带MPTCP能力(capability)字段,用于与应用服务器进行MPTCP能力的协商。When there are multiple available networks, such as cellular networks and WiFi networks, when "networking" applications such as Tencent Video, Baofengyingyin, and Kugou Music in the mobile phone 100 are activated, the applications running in the mobile phone 100 "such as "Baofengyingyin" will initiate data transmission to the corresponding application server "such as Baofengyingyin application server". When the running application of the mobile phone 100 initiates data transmission to the application server, it first attempts to establish an MPTCP connection with the application server based on the client-cloud direct method. Referring to FIG. 8, the mobile phone 100 may first perform the MPTCP handshake of the first TCP connection with the application server, where the first TCP connection may be the first TCP connection corresponding to the cellular network, or the second TCP corresponding to the WiFi network. connection. Specifically, when performing the MPTCP handshake of the first TCP connection with the application server, the mobile phone 100 may send MPTCP handshake information to the application server, where the MPTCP handshake information may be sent through a synchronization sequence number (synchronize sequence numbers, syn) packet , Carries the MPTCP capability (capability) field, and is used to negotiate the MPTCP capability with the application server.
当应用服务器支持MPTCP时,应用服务器可以向手机100发送支持MPTCP的响应信息,手机100接收到应用服务器发送的支持MPTCP的响应信息后,确定与应用服务器的第一条TCP连接的MPTCP握手成功,应用服务器支持MPTCP,手机100与应用服务器建立第一条TCP连接。当应用服务器不支持MPTCP时,应用服务器可能会向手机100发送不支持MPTCP的响应信息,也可能不对手机100发送的MPTCP握手信息进行响应。当手机100在向应用服务器发送MPTCP握手信息后,接收到应用服务器发送的不支持MPTCP的响应信息,或在发送MPTCP握手信息后的响应时长(如1s)内,未接收到应用服务器发送的响应信息,确定与应用服务器MPTCP握手失败,应用服务器不支持MPTCP,不支持端云直达的部署方式,继续尝试基于端管协同的部署方式与应用服务器建立MPTCP连接。When the application server supports MPTCP, the application server can send a response message supporting MPTCP to the mobile phone 100. After receiving the response message supporting MPTCP sent by the application server, the mobile phone 100 determines that the MPTCP handshake of the first TCP connection with the application server is successful. The application server supports MPTCP, and the mobile phone 100 establishes the first TCP connection with the application server. When the application server does not support MPTCP, the application server may send a response message that does not support MPTCP to the mobile phone 100, or may not respond to the MPTCP handshake message sent by the mobile phone 100. After the mobile phone 100 sends MPTCP handshake information to the application server, it receives a response message that does not support MPTCP from the application server, or does not receive a response from the application server within the response time (such as 1s) after sending the MPTCP handshake message Information, it is determined that the MPTCP handshake with the application server failed, the application server does not support MPTCP, and does not support the deployment of end-to-cloud direct deployment. Continue to try to establish an MPTCP connection with the application server based on the deployment of end-pipe collaboration
在应用服务器支持MPTCP,手机100与应用服务器进行第一条TCP连接的MPTCP握手成功后,手机100继续向应用服务器发送第二条TCP连接的MPTCP握手信息,因已经确定应用服务器支持MPTCP,第二条TCP连接的MPTCP握手通常会成功,手机100能与应用服务器间建立第二条TCP连接,实现端(手机)云(应用服务器)直达。但在第一条TCP连接和第二条TCP连接异网时,例如第一条TCP连接(蜂窝网络)对应核心网A,如中国移动的核心网,第二条TCP连接(WiFi网络)对应核心网B,如中国联通的核心网,也可能出现第二条TCP连接MPTCP握手失败的情况,在第二条TCP连接MPTCP握手失败时,手机100确定终端设备和应用服务器间不支持端云直达的部署方式,继续尝试基于端管协同的部署方式与应用服务器建立MPTCP连接。After the application server supports MPTCP and the mobile phone 100 successfully completes the MPTCP handshake of the first TCP connection with the application server, the mobile phone 100 continues to send the second TCP connection MPTCP handshake information to the application server. Because it has been determined that the application server supports MPTCP, the second The MPTCP handshake of one TCP connection usually succeeds, and the mobile phone 100 can establish a second TCP connection with the application server to realize direct connection between the end (mobile phone) and the cloud (application server). But when the first TCP connection and the second TCP connection are in different networks, for example, the first TCP connection (cellular network) corresponds to core network A, such as the core network of China Mobile, and the second TCP connection (WiFi network) corresponds to the core Network B, such as the core network of China Unicom, may also fail the MPTCP handshake of the second TCP connection. When the MPTCP handshake of the second TCP connection fails, the mobile phone 100 determines that the terminal device and the application server do not support direct cloud access. Deployment method, continue to try to establish an MPTCP connection with the application server based on the deployment method of end-pipe coordination.
S702:手机100尝试基于端管协同方式与所述应用服务器建立MPTCP连接;当建立MPTCP连接成功时,进行S704,当建立MPTCP连接失败时,进行S703。S702: The mobile phone 100 attempts to establish an MPTCP connection with the application server based on the terminal-pipe coordination mode; when the MPTCP connection is successfully established, S704 is performed, and when the MPTCP connection fails to be established, S703 is performed.
照图9所示,手机100与应用服务器建立第一条TCP连接后,手机100可以从第一条TCP连接获取到第一条TCP连接对应的核心网中支持多路汇聚的网元(如UPF服务器(组件,以下以核心网中支持多路汇聚的网元为UPF服务器为例进行说明)的地址,手机100将所述UPF服务器的地址设置为应用服务器的网络代理地址,手机100向应用服务器发起第二条TCP连接,如果第一条TCP连接和第二条TCP连接同网,如第一条TCP连接(蜂窝网络)和第二条TCP连接(WiFi网络)均对应同一核心网A,如中国移动的核心网,也即手机100接入的WiFi网络和蜂窝网络的网络运营商相同,均为中国移动,则第二条TCP连接能够路由到第一条TCP连接的UPF服务器,第二条TCP连接能够建立成功,说明支持端管协同的部署方式。As shown in Figure 9, after the mobile phone 100 establishes the first TCP connection with the application server, the mobile phone 100 can obtain from the first TCP connection a network element (such as UPF) in the core network corresponding to the first TCP connection that supports multi-channel aggregation. The address of the server (component, the following takes the network element supporting multi-channel aggregation in the core network as the UPF server as an example), the mobile phone 100 sets the address of the UPF server as the network proxy address of the application server, and the mobile phone 100 sends the application server Initiate the second TCP connection. If the first TCP connection and the second TCP connection are on the same network, for example, the first TCP connection (cellular network) and the second TCP connection (WiFi network) correspond to the same core network A, such as China Mobile’s core network, that is, the WiFi network that the mobile phone 100 accesses and the cellular network have the same network operators, both of which are China Mobile, so the second TCP connection can be routed to the UPF server of the first TCP connection, and the second The TCP connection can be established successfully, indicating that the deployment mode of supporting end-pipe coordination is supported.
如果第一条TCP连接和第二条TCP连接异网,如第一条TCP连接(蜂窝网络)对应核心网A,如中国移动的核心网,第二条TCP连接(WiFi网络)对应核心网B,如中国联通的核心网,则手机100以第一条TCP连接对应的UPF服务器的地址为应用服务器的网络代理地址,发起第二条TCP连接时,并不能路由到核心网B的UPF服务器,第二条TCP连接建立失败,不支持端管协同的部署方式,继续尝试基于端云协同的部署方式与应 用服务器建立MPTCP连接。If the first TCP connection and the second TCP connection are in different networks, for example, the first TCP connection (cellular network) corresponds to core network A, such as the core network of China Mobile, and the second TCP connection (WiFi network) corresponds to core network B For example, in the core network of China Unicom, the mobile phone 100 uses the address of the UPF server corresponding to the first TCP connection as the network proxy address of the application server. When the second TCP connection is initiated, it cannot be routed to the UPF server of core network B. The second TCP connection fails to be established, and the deployment method of terminal-pipe coordination is not supported. Continue to try to establish an MPTCP connection with the application server based on the deployment method of terminal-cloud coordination.
其中,网络代理,也称“代理”是一种特殊的网络服务,允许一个网络终端(一般为客户端,如手机100)通过这个服务与另一个网络终端(一般为服务器,如应用服务器)进行非直接的连接。提供代理服务的计算机系统或其它类型的网络终端(如UPF服务器)可以称为代理服务器(proxy server),在本申请实施例中,作为网络代理的UPF服务器及下述的代理服务器是手机100和应用服务器之间的中间代理机构,负责对手机100和应用服务器之间数据的转发。Among them, network proxy, also called "agent" is a special network service that allows a network terminal (generally a client, such as mobile phone 100) to communicate with another network terminal (generally a server, such as an application server) through this service. Indirect connection. Computer systems or other types of network terminals (such as UPF servers) that provide proxy services can be referred to as proxy servers. In the embodiment of the present application, the UPF server as a network proxy and the following proxy server are the mobile phone 100 and The intermediary agency between the application servers is responsible for forwarding data between the mobile phone 100 and the application server.
S703:手机100尝试基于端云协同方式与所述应用服务器建立MPTCP连接;当建立MPTCP连接成功时,进行S704,当建立MPTCP连接失败时,进行S705。S703: The mobile phone 100 attempts to establish an MPTCP connection with the application server based on the client-cloud collaboration; when the MPTCP connection is established successfully, S704 is performed, and when the MPTCP connection fails to be established, S705 is performed.
参照图10所示,手机100修改网络代理地址为代理服务器的地址,向应用服务器发起第一条TCP连接和第二条TCP连接;即向应用服务器发起蜂窝网络对应的第一TCP连接和WiFi网络对应的第二TCP连接,通常来说,第一TCP连接和第二TCP连接都会成功,终端设备能够与应用服务器建立MPTCP连接;如果存在任一TCP连接失败,则确定不支持端云协同的部署方式。在一种可能的实施中,代理服务器可以由手机100的生产厂商设置,并将代理服务器的地址预先配置在手机100中。10, the mobile phone 100 modifies the network proxy address to the address of the proxy server, and initiates the first TCP connection and the second TCP connection to the application server; that is, initiates the first TCP connection and WiFi network corresponding to the cellular network to the application server Corresponding to the second TCP connection, generally speaking, the first TCP connection and the second TCP connection will be successful, and the terminal device can establish an MPTCP connection with the application server; if any TCP connection fails, it is determined that the deployment of the terminal cloud collaboration is not supported the way. In a possible implementation, the proxy server may be set by the manufacturer of the mobile phone 100, and the address of the proxy server is pre-configured in the mobile phone 100.
S704:手机100基于与所述应用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。S704: The mobile phone 100 performs data transmission with the application server based on the MPTCP connection established with the application server.
S705:如果执行完上述步骤S701至步骤S703后,手机100均没有成功和所述应用服务器建立MPTCP连接,则手机100与所述应用服务器建立TCP连接,基于所述TCP连接与所述应用服务器进行数据传输。S705: If the mobile phone 100 fails to establish an MPTCP connection with the application server after performing the above steps S701 to S703, then the mobile phone 100 establishes a TCP connection with the application server, and communicates with the application server based on the TCP connection data transmission.
如果手机100与应用服务器建立MPTCP连接成功,手机100基于与所述应用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。如果手机100按照MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接,直至按照优先级最低的MPTCP的部署方式“端云协同的部署方式”仍未与应用服务器建立MPTCP连接成功,手机100则由MPTCP可以回滚到TCP连接方式,手机100与应用服务器建立TCP连接,如仅与应用服务器建立蜂窝网络对应的第一TCP连接或建立无线保真WiFi网络对应的第二TCP连接,与应用服务器进行数据传输,从而进一步保护数据传输的可靠性。If the mobile phone 100 successfully establishes the MPTCP connection with the application server, the mobile phone 100 performs data transmission with the application server based on the MPTCP connection established with the application server. If the mobile phone 100 tries to establish an MPTCP connection with the application server according to the priority of the multiple deployment methods of MPTCP from high to low, until the deployment method of MPTCP with the lowest priority "end-cloud collaborative deployment method" is still If the MPTCP connection is not successfully established with the application server, the mobile phone 100 can be rolled back to the TCP connection mode by MPTCP, and the mobile phone 100 establishes a TCP connection with the application server. For example, only the first TCP connection corresponding to the cellular network is established with the application server or the wireless fidelity is established The second TCP connection corresponding to the WiFi network performs data transmission with the application server, thereby further protecting the reliability of data transmission.
上述本申请提供的实施例中,从终端设备作为执行主体的角度对本申请实施例提供的方法进行了介绍。为了实现上述本申请实施例提供的方法中的各功能,终端设备可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。In the above-mentioned embodiments provided in the present application, the method provided in the embodiments of the present application is introduced from the perspective of the terminal device as the execution subject. In order to implement the functions in the methods provided in the above embodiments of the present application, the terminal device may include a hardware structure and/or a software module, and implement the above functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. Whether a certain function of the above-mentioned functions is executed by a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application and design constraint conditions of the technical solution.
基于相同的构思,图11所示为本申请提供的一种连接建立装置1100,用于执行图7所示的连接建立方法。示例的,该装置1100可以为终端设备或应用服务器,也可以为芯片。示例的,装置1100包括处理单元1101和通信单元1102。Based on the same concept, FIG. 11 shows a connection establishment apparatus 1100 provided in this application, which is used to implement the connection establishment method shown in FIG. 7. For example, the apparatus 1100 may be a terminal device or an application server, or a chip. For example, the apparatus 1100 includes a processing unit 1101 and a communication unit 1102.
示例的,处理单元1101用于在运行的应用程序向应用服务器发起数据传输时,按照MPTCP的多种部署方式的优先级从高到低的顺序,通过通信单元1102依次尝试与所述应用服务器建立MPTCP连接,直至与所述应用服务器建立MPTCP连接成功;通信单元1102,用于基于与所述应用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。例如, 装置1100为终端设备时,通信单元1102可以为收发器。再例如,装置1100为芯片时,通信单元1102可以为接口。For example, the processing unit 1101 is configured to, when the running application program initiates data transmission to the application server, according to the priority order of the multiple deployment modes of MPTCP, from high to low, the communication unit 1102 tries to establish a connection with the application server in turn. MPTCP connection until the MPTCP connection is successfully established with the application server; the communication unit 1102 is configured to perform data transmission with the application server based on the MPTCP connection established with the application server. For example, when the apparatus 1100 is a terminal device, the communication unit 1102 may be a transceiver. For another example, when the device 1100 is a chip, the communication unit 1102 may be an interface.
基于相同的构思,参阅图12所示为本申请提供的一种连接建立装置1200。所述装置1200包括:收发器1201、处理器1202以及存储器1203。其中,所述收发器1201、所述处理器1202以及所述存储器1203之间相互连接。Based on the same concept, referring to FIG. 12, a connection establishment apparatus 1200 provided in this application is shown. The device 1200 includes: a transceiver 1201, a processor 1202, and a memory 1203. Wherein, the transceiver 1201, the processor 1202, and the memory 1203 are connected to each other.
可选的,所述收发器1201、所述处理器1202以及所述存储器1203之间通过总线1204相互连接。所述总线1204可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。Optionally, the transceiver 1201, the processor 1202, and the memory 1203 are connected to each other through a bus 1204. The bus 1204 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, and so on. For ease of presentation, only one thick line is used to represent in FIG. 12, but it does not mean that there is only one bus or one type of bus.
存储器1203,用于存放程序指令和数据等。具体地,程序指令可以包括程序代码,该程序代码包括计算机操作指令。存储器1203可能包含随机存取存储器(random access memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。处理器1202执行存储器1203所存放的程序指令和数据,实现上述功能,从而实现上述实施例提供的连接建立方法。The memory 1203 is used to store program instructions and data. Specifically, the program instructions may include program code, and the program code includes computer operation instructions. The memory 1203 may include a random access memory (RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory. The processor 1202 executes the program instructions and data stored in the memory 1203 to realize the above-mentioned functions, thereby realizing the connection establishment method provided in the above-mentioned embodiment.
基于以上实施例,本申请实施例还提供了一种计算机程序产品,当所述计算机程序产品在终端设备上运行时,使得所述终端设备执行以上实施例提供的连接建立方法。Based on the above embodiments, the embodiments of the present application also provide a computer program product, which when the computer program product runs on a terminal device, causes the terminal device to execute the connection establishment method provided in the above embodiment.
基于以上实施例,本申请还提供了一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的程序指令,执行以上实施例提供的连接建立方法。Based on the above embodiments, the present application also provides a chip, which is coupled with a memory, and is configured to read and execute program instructions stored in the memory, and execute the connection establishment method provided in the above embodiments.
基于以上实施例,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,当计算机程序在终端设备上运行时,使得所述终端设备执行以上实施例提供的连接建立方法。Based on the above embodiments, this application also provides a computer-readable storage medium, the computer-readable storage medium includes a computer program, when the computer program runs on a terminal device, the terminal device is caused to execute the method provided in the above embodiment Connection establishment method.
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art should understand that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。This application is described with reference to the flowcharts and/or block diagrams of the methods, equipment (systems), and computer program products according to the application. It should be understood that each process and/or block in the flowchart and/or block diagram, and the combination of processes and/or blocks in the flowchart and/or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing equipment to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing equipment are generated It is a device that realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device. The device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个 方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment. The instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.

Claims (13)

  1. 一种连接建立方法,其特征在于,包括:A method for establishing a connection, characterized in that it comprises:
    终端设备在运行的应用程序向应用服务器发起数据传输时,按照多路径传输控制协议MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接,直至与所述应用服务器建立MPTCP连接成功;When the running application of the terminal device initiates data transmission to the application server, it tries to establish an MPTCP connection with the application server in sequence according to the priority order of the multiple deployment modes of the multi-path transmission control protocol MPTCP, until it connects with the application server. The application server successfully establishes an MPTCP connection;
    所述终端设备基于与所述应用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。The terminal device performs data transmission with the application server based on the MPTCP connection established with the application server.
  2. 如权利要求1所述的方法,其特征在于,所述MPTCP连接包括:The method of claim 1, wherein the MPTCP connection comprises:
    蜂窝网络对应的第一TCP连接和无线保真WiFi网络对应的第二TCP连接。The first TCP connection corresponding to the cellular network and the second TCP connection corresponding to the Wi-Fi network.
  3. 如权利要求1所述的方法,其特征在于,所述MPTCP的多种部署方式按照优先级从高到低的顺序包括:The method according to claim 1, wherein the multiple deployment modes of MPTCP include in the order of priority from high to low:
    端云直达、端管协同和端云协同。End-to-cloud direct, end-to-pipe collaboration, and end-to-cloud collaboration.
  4. 如权利要求1-3任一项所述的方法,其特征在于,所述终端设备尝试基于端云直达方式与所述应用服务器建立MPTCP连接,包括:The method according to any one of claims 1-3, wherein the terminal device attempting to establish an MPTCP connection with the application server based on a direct-to-cloud-to-device method comprises:
    所述终端设备与所述应用服务器进行第一条TCP连接的MPTCP握手成功时,所述终端设备向所述应用服务器发起第二条TCP连接的MPTCP握手;When the terminal device and the application server successfully perform the MPTCP handshake of the first TCP connection, the terminal device initiates the MPTCP handshake of the second TCP connection to the application server;
    当所述终端设备与所述应用服务器进行第二条TCP连接的MPTCP握手成功时,所述终端设备确定按照所述端云直达与所述应用服务器建立MPTCP连接成功;When the terminal device and the application server successfully perform the MPTCP handshake of the second TCP connection, the terminal device determines that the MPTCP connection is successfully established with the application server according to the terminal cloud direct connection;
    当所述终端设备与所述应用服务器进行第二条TCP连接的MPTCP握手失败时,所述终端设备确定按照所述端云直达与所述应用服务器建立MPTCP连接失败;When the MPTCP handshake of the second TCP connection between the terminal device and the application server fails, the terminal device determines that the establishment of the MPTCP connection with the application server fails according to the terminal cloud direct connection;
    其中,所述终端设备与所述应用服务器TCP连接的MPTCP握手成功包括所述终端设备在MPTCP握手过程中,接收到所述应用服务器发送的支持MPTCP的响应信息。Wherein, the successful MPTCP handshake of the TCP connection between the terminal device and the application server includes that the terminal device receives the MPTCP-supporting response information sent by the application server during the MPTCP handshake process.
  5. 如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1-4, wherein the method further comprises:
    当所述终端设备按照所述MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接均不成功时,所述终端设备与所述应用服务器建立TCP连接;When the terminal device successively attempts to establish an MPTCP connection with the application server in order of priority from high to low according to the multiple deployment modes of the MPTCP, the terminal device establishes a TCP connection with the application server. connection;
    所述终端设备基于所述TCP连接与所述应用服务器进行数据传输。The terminal device performs data transmission with the application server based on the TCP connection.
  6. 一种终端设备,其特征在于,包括处理器和存储器;A terminal device, characterized in that it comprises a processor and a memory;
    所述存储器用于存储一个或多个计算机程序;The memory is used to store one or more computer programs;
    当所述存储器存储的一个或多个计算机程序被所述处理器执行时,使得所述终端设备执行:When one or more computer programs stored in the memory are executed by the processor, the terminal device is caused to execute:
    在运行的应用程序向应用服务器发起数据传输时,按照多路径传输控制协议MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接,直至与所述应用服务器建立MPTCP连接成功;When the running application initiates data transmission to the application server, according to the priority order of the multiple deployment modes of the multi-path transmission control protocol MPTCP, it tries to establish an MPTCP connection with the application server in turn, until it connects with the application server. The application server successfully established an MPTCP connection;
    基于与所述应用服务器建立的MPTCP连接,与所述应用服务器进行数据传输。Based on the MPTCP connection established with the application server, data transmission is performed with the application server.
  7. 如权利要求6所述的终端设备,其特征在于,所述MPTCP连接包括:The terminal device of claim 6, wherein the MPTCP connection comprises:
    蜂窝网络对应的第一TCP连接和无线保真WiFi网络对应的第二TCP连接。The first TCP connection corresponding to the cellular network and the second TCP connection corresponding to the Wi-Fi network.
  8. 如权利要求6所述的终端设备,其特征在于,所述MPTCP的多种部署方式按照优先级从高到低的顺序包括:The terminal device according to claim 6, wherein the multiple deployment modes of MPTCP include in the order of priority from high to low:
    端云直达、端管协同和端云协同。End-to-cloud direct, end-to-pipe collaboration, and end-to-cloud collaboration.
  9. 如权利要求6-8任一项所述的终端设备,其特征在于,当所述存储器存储的一个或多个计算机程序被所述处理器执行,尝试基于端云直达方式与所述应用服务器建立MPTCP连接时,具体用于:The terminal device according to any one of claims 6-8, wherein, when one or more computer programs stored in the memory are executed by the processor, an attempt is made to establish a connection with the application server based on a direct-to-cloud method. When MPTCP is connected, it is specifically used for:
    与所述应用服务器进行第一条TCP连接的MPTCP握手成功时,向所述应用服务器发起第二条TCP连接的MPTCP握手;When the MPTCP handshake of the first TCP connection with the application server is successful, initiate the MPTCP handshake of the second TCP connection to the application server;
    当与所述应用服务器进行第二条TCP连接的MPTCP握手成功时,确定按照所述端云直达与所述应用服务器建立MPTCP连接成功;When the MPTCP handshake of the second TCP connection with the application server is successful, it is determined that the MPTCP connection is successfully established with the application server according to the end-cloud direct connection;
    当与所述应用服务器进行第二条TCP连接的MPTCP握手失败时,确定按照所述端云直达与所述应用服务器建立MPTCP连接失败;When the MPTCP handshake of the second TCP connection with the application server fails, it is determined that the establishment of the MPTCP connection with the application server fails according to the end-cloud direct connection;
    其中,与所述应用服务器TCP连接的MPTCP握手成功包括在MPTCP握手过程中,接收到所述应用服务器发送的支持MPTCP的响应信息。Wherein, the successful MPTCP handshake of the TCP connection with the application server is included in the MPTCP handshake process, receiving the response information that supports MPTCP sent by the application server.
  10. 如权利要求6-9任一项所述的终端设备,其特征在于,当所述存储器存储的一个或多个计算机程序被所述处理器执行时,还用于:The terminal device according to any one of claims 6-9, wherein when one or more computer programs stored in the memory are executed by the processor, they are further used to:
    当按照所述MPTCP的多种部署方式的优先级从高到低的顺序,依次尝试与所述应用服务器建立MPTCP连接均不成功时,与所述应用服务器建立TCP连接;Establishing a TCP connection with the application server when the successive attempts to establish an MPTCP connection with the application server are unsuccessful according to the priority order of the multiple deployment modes of the MPTCP from high to low;
    基于所述TCP连接与所述应用服务器进行数据传输。Perform data transmission with the application server based on the TCP connection.
  11. 一种计算机程序,其特征在于,当所述计算机程序在终端设备上运行时,使得所述终端设备执行如权利要求1-5任一项所述的方法。A computer program, characterized in that, when the computer program runs on a terminal device, the terminal device is caused to execute the method according to any one of claims 1-5.
  12. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在终端设备上运行时,使得所述终端设备执行如权利要求1-5任一项所述的连接建立方法。A computer-readable storage medium, wherein the computer-readable storage medium includes a computer program, which when the computer program runs on a terminal device, causes the terminal device to execute any one of claims 1-5 The connection establishment method described.
  13. 一种芯片,其特征在于,所述芯片用于读取存储器中存储的计算机程序,执行如权利要求1-5任一项所述的方法。A chip, characterized in that the chip is used to read a computer program stored in a memory and execute the method according to any one of claims 1-5.
PCT/CN2020/127107 2019-11-22 2020-11-06 Connection establishment method, and terminal apparatus WO2021098533A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911155555.2A CN111200557B (en) 2019-11-22 2019-11-22 Connection establishing method and terminal equipment
CN201911155555.2 2019-11-22

Publications (1)

Publication Number Publication Date
WO2021098533A1 true WO2021098533A1 (en) 2021-05-27

Family

ID=70747649

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/127107 WO2021098533A1 (en) 2019-11-22 2020-11-06 Connection establishment method, and terminal apparatus

Country Status (2)

Country Link
CN (1) CN111200557B (en)
WO (1) WO2021098533A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115022277A (en) * 2022-06-22 2022-09-06 支付宝(杭州)信息技术有限公司 Service processing method, device and equipment under dual-stack network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200557B (en) * 2019-11-22 2021-08-10 荣耀终端有限公司 Connection establishing method and terminal equipment
CN111970334A (en) * 2020-07-30 2020-11-20 杭州超级科技有限公司 Data transmission method and device based on TCP, electronic equipment and medium
CN112398943B (en) * 2020-11-13 2022-10-21 Oppo广东移动通信有限公司 Information intercommunication method and device, storage medium and electronic equipment
CN115037781B (en) * 2022-06-01 2024-02-02 浙江宇视科技有限公司 Equipment connection method and device and electronic equipment
CN115277560B (en) * 2022-09-28 2023-01-17 鹏城实验室 Heterogeneous network fusion transmission method and system based on MPTCP and MPQUIC

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140362765A1 (en) * 2013-06-06 2014-12-11 Apple Inc. Multipath TCP Subflow Establishment and Control
CN107708224A (en) * 2017-09-29 2018-02-16 努比亚技术有限公司 Wi Fi control methods, mobile terminal and computer-readable recording medium
CN108092908A (en) * 2016-11-23 2018-05-29 华为技术有限公司 Control the method and sending ending equipment of flow
CN110166374A (en) * 2019-05-21 2019-08-23 北京邮电大学 MPTCP jamming control method and device based on efficiency
US20190306068A1 (en) * 2018-04-02 2019-10-03 Apple Inc. Multipath Transmission Control Protocol Proxy Use in a Cellular Network
CN111200557A (en) * 2019-11-22 2020-05-26 华为技术有限公司 Connection establishing method and terminal equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103516694A (en) * 2012-06-28 2014-01-15 华为技术有限公司 Communication method, device and system
GB2525416B (en) * 2014-04-24 2017-11-01 Samsung Electronics Co Ltd Data transfer using a multipath TCP connection
EP3016347B1 (en) * 2014-10-27 2019-02-13 Cisco Technology, Inc. Multipath provisioning of l4-l7 traffic in a network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140362765A1 (en) * 2013-06-06 2014-12-11 Apple Inc. Multipath TCP Subflow Establishment and Control
CN108092908A (en) * 2016-11-23 2018-05-29 华为技术有限公司 Control the method and sending ending equipment of flow
CN107708224A (en) * 2017-09-29 2018-02-16 努比亚技术有限公司 Wi Fi control methods, mobile terminal and computer-readable recording medium
US20190306068A1 (en) * 2018-04-02 2019-10-03 Apple Inc. Multipath Transmission Control Protocol Proxy Use in a Cellular Network
CN110166374A (en) * 2019-05-21 2019-08-23 北京邮电大学 MPTCP jamming control method and device based on efficiency
CN111200557A (en) * 2019-11-22 2020-05-26 华为技术有限公司 Connection establishing method and terminal equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ERICSSON: "Definition of LPP", 3GPP DRAFT; S2-1904510_WAS1904484_CR_23501_REL16_LPP_DEFINITION, vol. SA WG2, 12 April 2019 (2019-04-12), Xi’an, PRC, pages 1 - 4, XP051720196 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115022277A (en) * 2022-06-22 2022-09-06 支付宝(杭州)信息技术有限公司 Service processing method, device and equipment under dual-stack network
CN115022277B (en) * 2022-06-22 2024-05-14 支付宝(杭州)信息技术有限公司 Service processing method, device and equipment under dual-stack network

Also Published As

Publication number Publication date
CN111200557B (en) 2021-08-10
CN111200557A (en) 2020-05-26

Similar Documents

Publication Publication Date Title
WO2021098533A1 (en) Connection establishment method, and terminal apparatus
WO2021057429A1 (en) Data transmission method and electronic device
US20210153259A1 (en) Random access method and related device
CN111866950B (en) Method and communication device for data transmission in MEC
WO2021185141A1 (en) Wi-fi aware link establishment method and system, electronic device, and storage medium
EP4054133A1 (en) Multipath transmission method and device
EP4213512A1 (en) Screen projection method and system, and electronic device
WO2021147660A1 (en) Data transmission method, and device
WO2023174043A1 (en) Power line communication system, and in-network state detection method and device
CN113498108B (en) Chip, device and method for adjusting data transmission strategy based on service type
EP4102927B1 (en) Dual wifi connection
WO2023065931A1 (en) Method for charging electronic device, and electronic device
US20220248484A1 (en) Relay connection establishment method and device
WO2021109154A1 (en) Communication failure processing method, communication failure processing apparatus, and storage medium
CN115278611A (en) Method and equipment for establishing connection among multiple devices
WO2021179990A1 (en) Application server access method and terminal
WO2020134868A1 (en) Connection establishment method, and terminal apparatus
JP2024516668A (en) DEVICE NETWORKING METHOD, ELECTRONIC DEVICE, AND STORAGE MEDIUM
WO2019214420A1 (en) Service scheduling method, terminal, and network device
WO2021164787A1 (en) Information reporting method, user equipment, and network side device
WO2023029983A1 (en) Control content dragging method and system, and electronic device
WO2023124186A1 (en) Communication method and communication apparatus
WO2022068646A1 (en) Data transmission method and electronic device
WO2023050362A1 (en) Downlink transmission configuration, receiving method and apparatus, communication device and storage medium
EP4351107A1 (en) Data transmission method and electronic device

Legal Events

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

Ref document number: 20890341

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20890341

Country of ref document: EP

Kind code of ref document: A1