ES2961005T3 - Conmutación de transmisión basada en retraso de transmisión de datos - Google Patents

Conmutación de transmisión basada en retraso de transmisión de datos Download PDF

Info

Publication number
ES2961005T3
ES2961005T3 ES19845360T ES19845360T ES2961005T3 ES 2961005 T3 ES2961005 T3 ES 2961005T3 ES 19845360 T ES19845360 T ES 19845360T ES 19845360 T ES19845360 T ES 19845360T ES 2961005 T3 ES2961005 T3 ES 2961005T3
Authority
ES
Spain
Prior art keywords
data
local area
wireless local
network
area network
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
ES19845360T
Other languages
English (en)
Inventor
Jianjian Zhu
Rahul Arvind Jadhav
Neng Yang
Zhen Cao
Fanzhao Wang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Application granted granted Critical
Publication of ES2961005T3 publication Critical patent/ES2961005T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • 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
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/0005Control or signalling for completing the hand-off
    • H04W36/0055Transmission or use of information for re-establishing the radio link
    • H04W36/0066Transmission or use of information for re-establishing the radio link of control information between different types of networks in order to establish a new radio link in the target network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/18Selecting a network or a communication service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/02Inter-networking arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/14Reselecting a network or an air interface
    • H04W36/144Reselecting a network or an air interface over a different radio air interface technology
    • H04W36/1446Reselecting a network or an air interface over a different radio air interface technology wherein at least one of the networks is unlicensed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/24Reselection being triggered by specific parameters
    • H04W36/26Reselection being triggered by specific parameters by agreed or negotiated communication parameters
    • H04W36/28Reselection being triggered by specific parameters by agreed or negotiated communication parameters involving a plurality of connections, e.g. multi-call or multi-bearer connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/24Reselection being triggered by specific parameters
    • H04W36/30Reselection being triggered by specific parameters by measured or perceived connection quality data
    • H04W36/304Reselection being triggered by specific parameters by measured or perceived connection quality data due to measured or perceived resources with higher communication quality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Las realizaciones de la presente solicitud proporcionan un método de conmutación de red, un subsistema de chip y un dispositivo electrónico. El método comprende: un dispositivo electrónico transmite datos por medio de una red de área local inalámbrica; si el retardo de transmisión de datos de la red de área local inalámbrica es mayor que un primer umbral, el dispositivo electrónico cambia para transmitir los datos utilizando la red de área local inalámbrica y una red móvil simultáneamente; cuando el dispositivo electrónico transmite los datos utilizando la red de área local inalámbrica y la red móvil simultáneamente, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que un segundo umbral, el dispositivo electrónico cambia para transmitir los datos a través de la red móvil , en donde el primer umbral es menor que el segundo umbral. El método de conmutación de red proporcionado por la presente aplicación puede lograr una buena calidad de transmisión de datos y mejorar la experiencia del usuario. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Conmutación de transmisión basada en retraso de transmisión de datos
Campo técnico
Antecedentes
Con el desarrollo de Internet móvil, un dispositivo electrónico puede acceder a una red fija usando una red inalámbrica, tal como una red WiFi y una red móvil, y luego realizar la transmisión de datos con un dispositivo semejante para obtener diversos servicios. La calidad de la red inalámbrica tiene un gran impacto en la experiencia del servicio. Sin embargo, la calidad de transmisión de la red inalámbrica suele ser inestable. Para proporcionar una mejor experiencia a un usuario, en la técnica anterior la conmutación entre la red WiFi y la red móvil se puede realizar en función de la intensidad de señal, para garantizar una mejor transmisión de datos. Por ejemplo, cuando la intensidad de una señal WiFi es menor que un umbral específico particular, se realiza la conmutación a la red móvil para la transmisión de datos. Sin embargo, cuando las intensidades de señal respectivas de la red WiFi y la red móvil no son buenas, la calidad de transmisión no se puede mejorar mediante la conmutación entre la red WiFi y la red móvil, y puede ocurrir un "efecto ping-pong", es decir, la conmutación frecuente entre la red WiFi y la red y en la red móvil, aumentando el consumo de energía de un dispositivo. El documento US20170099338A1 divulga un método para la transición fluida de canalización de vídeo entre conexiones WiFi y celulares para aplicaciones en tiempo real en un dispositivo móvil. Durante la comunicación en tiempo real, el dispositivo móvil mide la calidad de canal de enlace descendente del primer canal, por ejemplo, determinando si el dispositivo móvil no ha recibido paquetes desde el dispositivo remoto durante un primer umbral de período de tiempo. Si el dispositivo móvil no ha recibido ningún paquete del dispositivo remoto durante el primer umbral de período de tiempo, el dispositivo móvil establece un segundo canal de comunicación para la transmisión de los paquetes de audio/vídeo con el dispositivo remoto. El dispositivo US20160043844A1 divulga un aparato para comunicaciones inalámbricas. El aparato generalmente incluye al menos un procesador configurado para asociarse con una red IP inalámbrica, transmitir a una estación base, desde el dispositivo móvil, una primera dirección enrutable, establecer un túnel entre el dispositivo móvil y la estación base a través de una primera conexión de datos usando la primera dirección enrutable, y recibir, paquetes desde la estación base a través de la red inalámbrica usando el túnel y una memoria acoplada al procesador.
Compendio
La invención se define en las reivindicaciones.
Las realizaciones de esta solicitud proporcionan un método de conmutación de red, un sistema en chip y un dispositivo electrónico, para mejorar la experiencia de usuario y reducir las sobrecargas de conmutación innecesarias en un escenario de transmisión de datos basado en una pluralidad de tipos de redes inalámbricas.
Para lograr los objetivos anteriores de la presente invención, según un primer aspecto, una realización de esta solicitud proporciona un método de conmutación de red, donde el método incluye:
transmitir, por parte de un dispositivo electrónico, datos usando una red de área local inalámbrica; cuando un retraso de transmisión de datos de la red de área local inalámbrica es mayor que un primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando tanto la red de área local inalámbrica como una red móvil; y cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que un segundo umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red móvil, donde el primer umbral es menor que el segundo umbral.
El retraso de transmisión de datos puede ser específicamente un tiempo de ida y vuelta o un parámetro de fluctuación de un retraso (que refleja un estado de fluctuación de retraso). Cuando el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, indica que el retraso de transmitir un paquete de datos de una aplicación usando la red de área local inalámbrica es menor que el umbral de retraso de la experiencia de usuario óptima. En este caso, basándose en el establecimiento de una conexión de red móvil, el dispositivo electrónico conmuta a transmitir datos usando tanto la red de área local inalámbrica como la red móvil. Transmitir datos usando tanto la red de área local inalámbrica como la red móvil significa que un paquete de datos se envía de forma redundante en las respectivas rutas de la red de área local inalámbrica y la red móvil. Se transmite un mismo paquete de datos en ambas rutas de la red de área local inalámbrica y de la red móvil. A diferencia de conmutar entre dos estados, es decir, la red móvil y la red de área local inalámbrica, cuando se alcanza un umbral preestablecido en la técnica anterior, según el método de conmutación de red proporcionado en esta realización de esta solicitud, se establecen dos umbrales para el retraso de transmisión de datos, para implementar la conmutación de tres estados de la red: la red móvil, la red móvil y la red de área local inalámbrica, y la red de área local inalámbrica. Cuando el retraso de transmisión de datos de la red de área local inalámbrica aumenta gradualmente y el efecto de transmisión de datos es deficiente, se realiza la conmutación a un estado de transmisión de datos usando tanto la red de área local inalámbrica como la red móvil, para evitar sobrecargas de conmutación innecesarias causadas por la mala calidad de transmisión de datos tanto de la red móvil como de la red de área local inalámbrica, y garantizar la experiencia de uso de un usuario. Además, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si mejora la calidad de transmisión de datos de cualquiera de la red de área local inalámbrica y la red móvil, se realiza la conmutación a esta red. Un método de conmutación de red tan flexible garantiza la calidad de transmisión de datos, mejora la experiencia de usuario y reduce sobrecargas innecesarias.
En una implementación posible, el método incluye además: cuando el dispositivo electrónico transmite datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, y un retraso de transmisión de datos de la red móvil es mayor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando tanto la red de área local inalámbrica como la red móvil.
En una implementación posible, el método incluye además: cuando el dispositivo electrónico transmite datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red de área local inalámbrica.
En una implementación posible, el método incluye además: cuando el dispositivo electrónico transmite datos usando la red móvil, detectar el retraso de transmisión de datos de la red de área local inalámbrica. Específicamente, periódicamente se detecta el retraso de transmisión de datos de la red de área local inalámbrica.
En una implementación posible, después de que el dispositivo electrónico conmutar a transmitir datos usando tanto la red de área local inalámbrica como la red móvil, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, el método incluye además: si el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red de área local inalámbrica.
En una implementación posible, el método incluye además: cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que el segundo umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red móvil.
En una implementación posible, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, el método incluye además: si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral y menor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red móvil.
En una implementación posible, la detección del retraso de transmisión de datos de la red de área local inalámbrica incluye: transmitir un mensaje de sonda usando la red de área local inalámbrica; recibir un mensaje de respuesta correspondiente al mensaje de sonda; y determinar el retraso de transmisión de datos de la red de área local inalámbrica basándose en un momento de envío del mensaje de sonda y un momento de recepción del mensaje de respuesta.
En una implementación posible, los datos transmitidos por el dispositivo electrónico incluyen un paquete de datos de una primera aplicación, y el retraso de transmisión de datos es un retraso en la transmisión del paquete de datos de la primera aplicación. El retraso de transmisión de datos es un retraso de transmitir un paquete de datos de cada aplicación o de cada tipo de aplicación.
En una implementación posible, el primer umbral y el segundo umbral se preconfiguran para la primera aplicación.
En una implementación posible, el método incluye además: cuando se transmiten datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es mayor que el primer umbral y menor que el segundo umbral, transmitir, por parte del dispositivo electrónico, el paquete de datos de la aplicación todavía usando la red móvil.
En una implementación posible, el método incluye además: cuando se transmiten datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, y un retraso de transmisión de datos de la red móvil es menor que el primer umbral, transmitir, por parte del dispositivo electrónico, datos todavía usando la red móvil.
En una implementación posible, el método incluye además: después de que el terminal conmuta a transmitir datos usando tanto la red de área local inalámbrica como la red móvil, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, y un retraso de transmisión de datos de la red móvil es mayor que el primer umbral, transmitir, por parte del dispositivo electrónico, datos todavía usando tanto la red de área local inalámbrica como la red móvil.
En una implementación posible, el método incluye además: cuando el dispositivo electrónico transmite datos usando la red local inalámbrica, si el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, transmitir, por parte del dispositivo electrónico, datos todavía usando la red de área local inalámbrica.
En una implementación posible, el paquete de datos transmitido incluye un primer encabezado, y el primer encabezado lleva una marca de tiempo de envío del paquete de datos. Un retraso de transmisión de datos del paquete de datos es una diferencia de tiempo entre una marca de tiempo de recepción de un mensaje de respuesta del paquete de datos y la marca de tiempo de envío del paquete de datos.
En una implementación posible, el método incluye además: modificar, por parte del dispositivo electrónico, un valor de un tamaño de segmento máximo (MSS), donde un valor modificado del tamaño de segmento máximo es menor o igual a una diferencia entre un límite de longitud de fragmento y una longitud del primer encabezado.
Según el método de conmutación de red proporcionado en esta realización de esta solicitud, se selecciona una red a la que se va a conmutar en función de los cambios en los retrasos de transmisión de datos de las redes, para conmutar a la red que proporciona mejor calidad de transmisión de datos para mejorar la experiencia de usuario. Además, establecer dos umbrales para un mismo parámetro de diferentes aplicaciones hace que el método de conmutación de red sea más flexible, para adaptarse mejor a un cambio de entorno de red.
Según un segundo aspecto, una realización de esta solicitud proporciona un dispositivo electrónico, y el dispositivo electrónico incluye: un módulo de programación, y un módulo de transmisión de red de área local inalámbrica y un módulo de transmisión de red móvil que se configuran para transmitir datos, donde el módulo de programación se configura para: cuando un retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es mayor que un primer umbral, conmutar a transmitir datos usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil; y cuando los datos se transmiten usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil, si el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es mayor que un segundo umbral, conmutar a transmitir datos usando el módulo de transmisión de red móvil, donde el primer umbral es menor que el segundo umbral.
En una implementación posible, el módulo de programación se configura además para: cuando se transmiten datos usando el módulo de transmisión de red móvil, si se detecta que el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es mayor que el primer umbral, y un retraso de transmisión de datos del módulo de transmisión de red móvil es mayor que el primer umbral, conmutar a transmitir datos usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil.
En una implementación posible, el módulo de programación se configura además para: cuando se transmiten datos usando el módulo de transmisión de red móvil, si se detecta que el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es menor que el primer umbral, conmutar a transmitir datos usando el módulo de transmisión de red de área local inalámbrica.
En una implementación posible, el módulo de programación se configura además para: cuando se transmiten datos usando el módulo de transmisión de red móvil, detectar el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica.
En una implementación posible, el módulo de programación se configura para: cuando se transmiten datos usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil, si el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es menor que el primer umbral, conmutar a transmitir datos usando el módulo de transmisión de red de área local inalámbrica.
En una implementación posible, el módulo de programación se configura además para: cuando se transmiten datos usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil, si el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es mayor que el segundo umbral, y un retraso de transmisión de datos del módulo de transmisión de red móvil es menor que el segundo umbral, conmutar a transmitir datos usando el módulo de transmisión de red móvil.
En una implementación posible, el módulo de programación se configura además para: cuando se transmiten datos usando tanto el módulo de transmisión de red de área local inalámbrica como el módulo de transmisión de red móvil, si el retraso de transmisión de datos del módulo de transmisión de red de área local inalámbrica es mayor que el primer umbral y menor que el segundo umbral, y un retraso de transmisión de datos del módulo de transmisión de red móvil es menor que el primer umbral, conmutar a transmitir datos usando el módulo de transmisión de red móvil.
En una implementación posible, el módulo de transmisión de red de área local inalámbrica se configura además para recibir un mensaje de respuesta correspondiente a un mensaje de sonda; y el módulo de programación se configura además para: transmitir el mensaje de sonda usando el módulo de transmisión de la red de área local inalámbrica, y determinar el retraso de transmisión de datos de la red de área local inalámbrica basándose en un momento de envío del mensaje de sonda y un momento de recepción del mensaje de respuesta.
En una implementación posible, los datos transmitidos incluyen un paquete de datos de una primera aplicación, y el retraso de transmisión de datos es un retraso en la transmisión del paquete de datos de la primera aplicación.
En una implementación posible, el primer umbral y el segundo umbral se preconfiguran para la primera aplicación.
Según un tercer aspecto, una realización de esta solicitud proporciona un sistema en chip, y el sistema en chip incluye: un procesador de aplicaciones, y un módem y un módulo WiFi que se configuran para transmitir datos, donde el procesador de aplicaciones se configura para: cuando un retraso de transmisión de datos del módulo WiFi es mayor que un primer umbral, conmutar a transmitir datos usando tanto el módulo WiFi como el módem; y cuando los datos se transmiten usando tanto el módulo WiFi como el módem, si el retraso de transmisión de datos del módulo WiFi es mayor que un segundo umbral, conmutar a transmitir datos usando el módem, donde el primer umbral es menor que el segundo umbral.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos se transmiten usando el módem, si se detecta que el retraso de transmisión de datos del módulo WiFi es mayor que el primer umbral, y un retraso de transmisión de datos del módem es mayor que el primer umbral, conmutar a transmitir datos usando tanto el módulo WiFi como el módem.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos se transmiten usando el módem, si se detecta que el retraso de transmisión de datos del módulo WiFi es menor que el primer umbral, conmutar a transmitir datos usando el módulo WiFi.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos se transmiten usando el módem, detectar el retraso de transmisión de datos del módulo WiFi.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos se transmiten usando tanto el módulo WiFi como el módem, si el retraso de transmisión de datos del módulo WiFi es menor que el primer umbral, conmutar a transmitir datos usando el módulo WiFi.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos transmitidos usando tanto el módulo WiFi como el módem, si el retraso de transmisión de datos del módulo WiFi es mayor que el segundo umbral, y un retraso de transmisión de datos del módem es menor que el segundo umbral, conmutar a transmitir datos usando el módem.
En una implementación posible, el procesador de aplicaciones se configura además para: cuando los datos transmitidos usando tanto el módulo WiFi como el módem, si el retraso de transmisión de datos del módulo WiFi es mayor que el primer umbral y menor que el segundo umbral, y un retraso de transmisión de datos del módem es menor que el primer umbral, conmutar a transmitir datos usando el módem.
En una implementación posible, el módulo WiFi se configura además para recibir un mensaje de respuesta correspondiente al mensaje de sonda; y el procesador de aplicaciones se configura además para: transmitir el mensaje de sonda usando el módulo WiFi, y determinar el retraso de transmisión de datos de la red de área local inalámbrica basándose en un momento de envío del mensaje de sonda y un momento de recepción del mensaje de respuesta.
En una implementación posible, los datos transmitidos incluyen un paquete de datos de una primera aplicación, y el retraso de transmisión de datos es un retraso en la transmisión del paquete de datos de la primera aplicación.
En una implementación posible, el primer umbral y el segundo umbral se preconfiguran para la primera aplicación.
Según un cuarto aspecto, una realización de esta solicitud proporciona un dispositivo electrónico, que incluye el sistema en chip según uno cualquiera del tercer aspecto y las implementaciones posibles del tercer aspecto. Según un quinto aspecto, una realización de esta solicitud proporciona un dispositivo electrónico, y el dispositivo electrónico incluye un procesador y un soporte de almacenamiento legible por ordenador que almacena un programa informático. El procesador se acopla al soporte de almacenamiento legible por ordenador. Cuando el procesador ejecuta el programa informático, se implementa el método de conmutación de red según cualquiera del primer aspecto y las implementaciones posibles del primer aspecto.
Según un sexto aspecto, una realización de esta solicitud proporciona un soporte de almacenamiento legible por ordenador, donde un programa informático se almacena en el soporte de almacenamiento legible por ordenador. Cuando un procesador ejecuta el programa informático, se implementa el método de conmutación de red según cualquiera del primer aspecto y las implementaciones posibles del primer aspecto.
Según un séptimo aspecto, una realización de esta solicitud proporciona un producto de programa informático, que incluye un programa informático. Cuando el procesador ejecuta el programa informático, se implementa el método de conmutación de red según cualquiera del primer aspecto y las implementaciones posibles del primer aspecto.
Breve descripción de los dibujos
La FIG. 1 es un diagrama esquemático de un sistema de comunicaciones según una realización;
La FIG. 2 es un diagrama esquemático de un sistema de comunicaciones inalámbrico según una realización; La FIG. 3 es un diagrama estructural esquemático de un dispositivo electrónico según una realización;
La FIG. 4 es un diagrama estructural esquemático de un dispositivo electrónico según una realización;
La FIG. 5 es un diagrama estructural esquemático de un dispositivo electrónico según una realización;
La FIG. 6 es un diagrama estructural esquemático de un dispositivo electrónico según una realización;
La FIG. 7 es un diagrama estructural esquemático de un dispositivo electrónico según una realización;
La FIG. 8 es un diagrama esquemático de umbrales de retraso según una realización;
La FIG. 9 es un diagrama esquemático de conmutación de estado según una realización;
La FIG. 10 es un diagrama de flujo de un método de conmutación de red según una realización de la presente invención;
La FIG. 11 es un diagrama estructural esquemático de un paquete según una realización;
La FIG. 12 es un diagrama estructural esquemático de un paquete según una realización; y
La FIG. 13 es un diagrama esquemático de un retraso de transmisión de datos según una realización.
Las realizaciones de la invención son las que se describen a continuación con referencia a la Figura 10. Las realizaciones, aspectos y ejemplos restantes divulgados a continuación se incluyen con fines ilustrativos y para facilitar la comprensión de la invención.
Descripción de realizaciones
A continuación se describen de forma clara las soluciones técnicas en las realizaciones de la presente invención con referencia a los dibujos adjuntos en las realizaciones de la presente invención. Aparentemente, las realizaciones descritas son solamente algunas, pero no todas las realizaciones de la presente invención. Los términos "primero" y "segundo" en esta solicitud se utilizan para distinguir objetos de un mismo tipo, pero no pueden entenderse como una indicación o implicación de importancia relativa, o una indicación implícita de una cantidad de indicado. características técnicas. Por lo tanto, una característica limitada por "primera" o "segunda" puede incluir explícita o implícitamente una o más características. En la descripción de las realizaciones de la presente invención, salvo que se indique lo contrario, "una pluralidad de" significa dos o más de dos.
Antes de describir las realizaciones específicas de esta solicitud, se describen primero los términos y sus significados mencionados en las siguientes realizaciones de esta solicitud. Puede entenderse que, a menos que se indique lo contrario, estos términos y sus significados en las realizaciones de esta solicitud pueden ser los mismos.
Paquete de datos: También se le conoce como paquete, es una unidad básica para la transmisión de red y son datos organizados en un formato particular. Los diferentes tipos de protocolos de red tienen diferentes definiciones para el formato de un paquete de datos. Sin embargo, un paquete de datos suele incluir un encabezado (header) y una carga útil (payload). El encabezado incluye información necesaria en un proceso de transmisión de paquetes de datos, por ejemplo, información de dirección y un bit de bandera. La carga útil también se denomina parte de datos del paquete de datos, incluido el contenido de datos enviado.
Paquete de control: También se lo conoce como mensaje de sonda y es un paquete de datos especial que se utiliza para medir un retraso de transmisión de datos. Normalmente, un paquete de control no incluye datos de aplicación.
Acuse de recibo (ACK): Es un carácter de control de tipo transmisión que se devuelve a un extremo de transmisión después de que un extremo de recepción recibe un paquete de datos enviado por el extremo de transmisión en un proceso de transmisión de datos, e indica que el paquete de datos enviado por el extremo de transmisión se recibe correctamente.
Tiempo de ida y vuelta (RTT): Es un indicador de rendimiento importante en la transmisión de red e indica la duración total desde el momento en que un extremo de transmisión envía datos hasta un momento en que el extremo de transmisión recibe un acuse de recibo (ACK) de un extremo de recepción.
Tasa de pérdida de paquetes: Es la relación entre una cantidad de paquetes de datos perdidos durante la transmisión y una cantidad de paquetes de datos enviados. La pérdida de paquetes (Packet loss) significa que uno o más paquetes de datos (packet) no pueden llegar a un destino a través de una red. La pérdida de paquetes puede causar fluctuaciones (jittering) en tecnologías de transmisión, juegos en línea y videoconferencias, y puede afectar otras aplicaciones de red hasta cierto punto.
La FIG. 1 es un sistema para transmisión de datos entre dispositivos electrónicos aplicable a esta solicitud. Cabe señalar que el sistema de la FIG. 1 es simplemente un ejemplo de un posible sistema, y las soluciones de implementación divulgadas se pueden implementar en cualquiera de los diversos sistemas según sea necesario.
Como se muestra en la FIG. 1, el sistema incluye un dispositivo electrónico 101, una red 102 y un dispositivo electrónico 103. El dispositivo electrónico 101 y el dispositivo electrónico 103 se conectan comunicativamente usando la red 102. La red 102 puede ser una red de área local inalámbrica o una red móvil. Entre los dispositivos electrónicos 101 y 103 se establece una conexión de comunicación basada en un protocolo de comunicación específico y luego, basándose en la conexión establecida, se utiliza un paquete de datos como unidad para la transmisión de datos. Un paquete de datos puede pasar a través de uno o más dispositivos de red, tal como un dispositivo de red de acceso, un dispositivo de enrutamiento o un punto de acceso (AP), en la red 102 durante la transmisión.
El dispositivo electrónico 101 puede ser un dispositivo terminal, y puede ser específicamente cualquiera de diversos tipos de sistemas o dispositivos informáticos que son móviles o portátiles y que realizan comunicación inalámbrica. Por ejemplo, el dispositivo electrónico puede incluir un teléfono móvil o un teléfono inteligente (tal como iPhone™ o un teléfono basado en Android™), un dispositivo de juegos portátil (tal como Nintendo DS™, PlayStation Portable™, Gameboy Advance™o iPhone™), un ordenador portátil, un asistente digital personal (PDA), un dispositivo portátil de Internet, un reproductor de música, un dispositivo de almacenamiento de datos, otro dispositivo portátil y un dispositivo portátil como un reloj, unos auriculares, un colgante o un auricular. El dispositivo electrónico 103 puede ser un dispositivo terminal o un servidor, y puede ser específicamente un servidor agente u otro servidor conectado comunicativamente al servidor agente.
La FIG. 2 muestra una implementación específica del sistema de comunicaciones descrito en la FIG. 1.
Como se muestra en la FIG. 2, el sistema incluye un dispositivo móvil 201, un dispositivo móvil 202 y un punto de acceso 204. El punto de acceso 204 puede ser un punto de acceso de una red de área local inalámbrica, por ejemplo, un punto de acceso WiFi 204. El dispositivo móvil 201 y el dispositivo móvil 202 pueden acceder a una red 206 usando el punto de acceso 204, para implementar una conexión de comunicación con un servidor 207. La red 206 es una red fija o una red troncal. Un enlace inalámbrico entre el dispositivo móvil 201 y/o el dispositivo móvil 202 y el punto de acceso WiFi 204 forma una red de área local inalámbrica.
En este sistema, un punto de acceso 205 puede implementar una conexión de comunicación con el dispositivo móvil 202 y el dispositivo móvil 203. Específicamente, el punto de acceso 205 es un punto de acceso a la red móvil, por ejemplo, una estación base 205. El dispositivo móvil 202 y el dispositivo móvil 203 pueden acceder a la red 206 usando una o más estaciones base 205, para implementar una conexión de comunicación con el servidor 207. Un enlace inalámbrico entre el dispositivo móvil 203 y/o el dispositivo móvil 202 y el punto de acceso 205 forma una red móvil, que también se denomina red celular. La red móvil realiza la comunicación basándose en una manera definida por cualquiera de diversas especificaciones de comunicación móvil, tales como el sistema global para comunicaciones móviles (GSM), acceso múltiple por división de código de banda ancha (WCDMA), acceso múltiple por división de código síncrono por división de tiempo (TD- SCDMA) y evolución a largo plazo (LTE).
En este sistema, los dispositivos móviles 201 a 203 pueden conectarse alternativamente usando una forma de conexión directa Bluetooth o WiFi para realizar la transmisión de datos.
Un experto en la técnica puede entender que una arquitectura de transmisión de datos usualmente puede incluir menos o más componentes que los mostrados en la FIG. 2, o incluir componentes que sean diferentes de los mostrados en la FIG. 2, y la FIG. 2 simplemente muestra los componentes que están más estrechamente relacionados con una pluralidad de implementaciones descritas en esta realización de esta solicitud.
El dispositivo móvil 202 que se comunica tanto con el punto de acceso WiFi 204 como con la estación base 205 es un ejemplo de un dispositivo electrónico 300 que tiene una capacidad de comunicación a través de una red móvil y que tiene una capacidad de comunicación a través de una red de área local inalámbrica.
El dispositivo electrónico 300 puede configurarse para realizar comunicación usando cualquiera de una pluralidad de protocolos de comunicación inalámbrica. Por ejemplo, el dispositivo electrónico 300 puede configurarse para realizar comunicación usando cualquiera de diversas tecnologías de comunicación móvil celular, tales como GSM, WCDMA y LTE. El dispositivo electrónico 300 puede configurarse además para realizar comunicación usando cualquiera de diversas tecnologías de comunicación de red de área local inalámbrica, como WiFi. También es posible utilizar otra combinación de tecnologías de comunicación inalámbrica.
La FIG. 3 es un diagrama estructural esquemático de un dispositivo electrónico 300. El dispositivo electrónico 300 incluye componentes, tales como un procesador 301 (que puede ser específicamente un procesador de aplicaciones 301 en una realización de esta solicitud), una memoria 302 y módulos de comunicaciones, tales como un módem 303 (que, por ejemplo, se usa para LTE, GSM y similares) y un módulo WiFi 304 (por ejemplo, un circuito WLAN (LAN inalámbrica)). Un experto en la técnica puede entender que el dispositivo electrónico 300 puede incluir más o menos componentes que los mostrados en la figura, o una combinación de componentes particulares. Estos componentes pueden realizar la comunicación usando uno o más buses o cables de señal. El bus puede ser un bus de direcciones, un bus de datos, un bus de control o similares.
Como se describe en esta memoria descriptiva, el dispositivo electrónico 300 puede incluir componentes de hardware y software configurados para implementar los métodos descritos en esta solicitud. El procesador 301 del dispositivo electrónico 300 puede configurarse para implementar algunos o todos los métodos descritos en esta solicitud, por ejemplo, ejecutando una instrucción de programa almacenada en la memoria (por ejemplo, un soporte de almacenamiento no volátil legible por ordenador). Opcionalmente, el procesador 301 puede configurarse como una unidad de circuito programable, tal como una FPGA (una matriz de puertas programables en campo) o como un ASIC (un circuito integrado de aplicación específica). Opcionalmente, en combinación con uno o más de otros componentes, el procesador 301 del dispositivo electrónico 300 puede configurarse para implementar algunos o todos los métodos descritos en esta solicitud.
El procesador 301 puede ser una unidad central de procesamiento (CPU), un procesador de red (NP) o una combinación de una CPU y un NP. El procesador 301 puede incluir además un chip de hardware. El chip de hardware puede ser un circuito integrado de aplicación específica (ASIC), un dispositivo lógico programable (PLD) o una combinación de los mismos. El PLD puede ser un dispositivo lógico programable complejo (CPLD), una matriz de puertas programables en campo (FPGA), una lógica de matriz genérica (GAL) o cualquier combinación de los mismos.
La memoria 302 se configura para almacenar programas informáticos, tales como una aplicación 305 y un sistema operativo 306 mostrado en la FIG. 3. El procesador 301 puede invocar los programas informáticos almacenados por la memoria 302, para implementar funciones definidas por los programas informáticos. Por ejemplo, el procesador 301 ejecuta el sistema operativo para implementar diversas funciones del sistema operativo en el dispositivo electrónico 300. El sistema operativo 306 puede ser Linux®, Windows® u otro sistema operativo, y esto no está limitado en esta realización de esta solicitud.
La memoria 302 almacena además datos distintos de los programas informáticos, tales como datos generados durante el funcionamiento del sistema operativo 306 y la aplicación 305. La memoria 302 puede incluir una memoria volátil (inglés: volatile memory), por ejemplo, una memoria de acceso aleatorio (RAM). La memoria 302 también puede incluir una memoria no volátil (inglés: non volatile memory), por ejemplo, una memoria flash (flash memory), una unidad de disco duro (HDD) o una unidad de estado sólido (SSD). La memoria 302 puede incluir además una combinación de las memorias anteriores. La FIG. 3 muestra sólo una memoria. Ciertamente, se puede disponer una pluralidad de dispositivos de almacenamiento como la memoria 302 según un requisito. La memoria 302 puede ser alternativamente una memoria en el procesador 301, y esto no está limitado en esta memoria.
El módulo de comunicaciones, o denominado interfaz de comunicaciones, se configura para permitir que el dispositivo electrónico 300 implemente una conexión de comunicación con otro dispositivo electrónico y permitir que el dispositivo electrónico 300 realice comunicación a través de una red, y puede implementar el envío y la recepción de un paquete de datos. La interfaz de comunicaciones incluye: el módem 303, configurado para proporcionar una función de comunicación usando una red móvil para el dispositivo electrónico 300, y el módulo WiFi 304, configurado para proporcionar una función de comunicación usando una red de área local inalámbrica para el dispositivo electrónico 300. Un procesador y una memoria (incluyendo una RAM y una memoria de sólo lectura (ROM)) pueden integrarse en el módem 303.
Además, en una realización, como se muestra en la FIG. 4, el dispositivo electrónico 300 puede dividirse lógicamente en una capa de hardware 31, un sistema operativo 306 y una capa de aplicación 33. La capa de hardware 31 incluye recursos de hardware tales como el procesador 301, la memoria 302 y los módulos de comunicaciones (por ejemplo, el módem 303 y el módulo WiFi 304) descritos anteriormente. La capa de aplicación 33 incluye una o más aplicaciones, tal como una aplicación 305. El sistema operativo 306, como software intermedio entre la capa de hardware 31 y la capa de aplicación 33, es un programa informático que gestiona y controla los recursos de hardware y software.
El sistema operativo 306 incluye un núcleo 32. El núcleo 32 se configura para proporcionar componentes y servicios subyacentes del sistema, tales como gestión de energía, gestión de memoria, un módulo de programación 34 y un controlador 35. El módulo de programación 34 es un componente para implementar la conmutación de red. Después de que la aplicación 305 entrega una instrucción de envío de datos, los datos pasan a través del módulo de programación 34 y se envían invocando el módulo de comunicaciones por parte del controlador 35. En una realización, el controlador 35 incluye un controlador de memoria 351 y un controlador de interfaz de comunicaciones 352 (configurado para controlar el módulo de comunicaciones). El método de conmutación de red proporcionado en esta realización de esta solicitud puede ser implementado por el módulo de programación 34 en el núcleo 32. El módulo de programación 34 puede implementarse en un proceso en modo de usuario. Alternativamente, se puede ampliar una pila de protocolos existente y el módulo de programación 34 se puede implementar en un modo de núcleo basado en la pila de protocolos existente.
En una realización, el dispositivo electrónico 300 puede mover funciones del módulo de programación 34 al módulo de comunicaciones de la capa de hardware 31, para implementar una derivación del núcleo y mejorar el rendimiento del reenvío de datos. Como se muestra en la FIG. 5, el módulo de comunicaciones es una unidad de circuito programable, y el módulo de programación 34 se implementa en un módulo de comunicaciones programable. En consecuencia, el método de conmutación de red proporcionado en esta realización de esta solicitud puede ser implementado por el módulo de comunicaciones. Específicamente, el método puede implementarse modificando el hardware o el firmware del módulo de comunicaciones. El programa informático puede almacenarse en una memoria integrada en el módulo de comunicaciones programable, y un procesador integrado en el módulo de comunicaciones programable ejecuta el programa informático para implementar el método de conmutación de red proporcionado en esta solicitud. Alternativamente, el método de conmutación de red proporcionado en esta solicitud se puede implementar usando un circuito lógico en el módulo de comunicaciones programable.
En una realización, como se muestra en la FIG. 6, el dispositivo electrónico 300 puede implementar el módulo de programación 34 en la capa de aplicación 33 (por ejemplo, usando una tecnología DPDK (kit de desarrollo de plano de datos)), para implementar una derivación del núcleo y mejorar el rendimiento de reenvío de datos. En consecuencia, el método de conmutación de red proporcionado en esta realización de esta solicitud puede implementarse mediante software de la capa de aplicación 33.
Para facilitar la descripción, uno de los dos dispositivos electrónicos, entre los que se establece una conexión de comunicación, se denomina extremo de transmisión, y el otro se denomina extremo de recepción en esta realización de esta solicitud. Debe entenderse que el extremo de transmisión y el extremo de recepción pueden ser cualquier dispositivo electrónico que tenga capacidades de envío y recepción de datos. Además, el extremo de transmisión y el extremo de recepción son dos roles relativos y pueden intercambiarse, es decir, un mismo dispositivo puede ser un extremo de transmisión o un extremo de recepción según el escenario.
La FIG. 7 es otro diagrama estructural esquemático de un dispositivo electrónico para implementar el método de conmutación de red en esta aplicación. El dispositivo electrónico 400 puede incluir un módulo de protocolo de transferencia 401, un módulo de transmisión de red móvil 403 y un módulo de transmisión de red de área local inalámbrica 404, y puede incluir además un módulo de dirección de flujo (no mostrado en la FIG. 7). El dispositivo electrónico 400 puede incluir algunos o todos los componentes del dispositivo electrónico 300 anterior.
El módulo de dirección de flujo se configura para establecer una etiqueta para los datos entregados por una aplicación. Específicamente, se puede establecer una etiqueta para un paquete de datos entregado por una aplicación particular, tal como una aplicación de juego o una aplicación de vídeo; también se puede establecer una etiqueta para un tipo de protocolo particular, por ejemplo, se establece una etiqueta para un paquete TCP entregado (protocolo de control de transmisión, transmission control protocol) o un paquete UDP (protocolo de datagramas de usuario); y también se puede establecer una etiqueta para una dirección de destino a la que se envían datos, donde la dirección de destino es una dirección IP o un puerto de un dispositivo de destino al que se envía un paquete de datos. Por ejemplo, se puede configurar una etiqueta para un paquete de datos usando iptable.
El módulo de dirección de flujo también puede configurar una regla de enrutamiento, y la regla de enrutamiento indica un destino al que se dirige un paquete de datos. El módulo de dirección de flujo dirige, según la regla de enrutamiento al módulo de protocolo de transferencia 401, un paquete de datos que lleva una etiqueta y que es entregado por una aplicación. El paquete de datos se transmite usando una red seleccionada por el módulo de protocolo de transferencia 401, y el paquete de datos es enviado por una unidad transceptora usando la red seleccionada. Específicamente, para un modelo TCP/IP, el paquete de datos dirigido por el módulo de dirección de flujo puede ser un paquete procesado por una capa IP.
Opcionalmente, el módulo de dirección de flujo puede dirigir primero, a un dispositivo de almacenamiento intermedio, el paquete de datos entregado por la aplicación, y luego dirigir el paquete de datos al módulo de protocolo de transferencia. El dispositivo de almacenamiento intermedio es un proceso, por ejemplo, un dispositivo TUN o un dispositivo Netfilter.
El módulo de protocolo de transferencia 401 puede incluir un módulo de programación 402 y una interfaz de configuración de parámetros 405. El módulo de programación 402 puede incluir una parte o la totalidad del módulo de programación 34 anterior.
La interfaz de configuración de parámetros 405 se configura para establecer una condición de conmutación de red preestablecida para una aplicación. La condición preestablecida es específicamente un umbral de un parámetro de calidad de servicio, y el parámetro de calidad de servicio puede incluir al menos uno de entre un retraso, un rendimiento o una tasa de pérdida de paquetes. Cuando se alcanza la condición preestablecida, el módulo de programación 402 selecciona una o más redes de las redes disponibles para la transmisión de paquetes de datos. Un umbral específico del parámetro de calidad de servicio se relaciona con la experiencia de usuario de una aplicación. Específicamente, el umbral específico del parámetro de calidad de servicio se puede configurar usando la siguiente estructura de datos.
Tabla 1: Estructura de datos de un parámetro de calidad de servicio
UID representa una identidad de usuario, y cada UID puede corresponder a una aplicación. En concreto, se establecen umbrales de un parámetro de calidad de servicio para cada aplicación. Específicamente, se pueden establecer dos o más umbrales para un parámetro de calidad de servicio de una aplicación. En esta memoria, umbral_bajo es un umbral de un parámetro de calidad de servicio para una experiencia óptima, al que se puede hacer referencia como primer umbral, y umbral_alto es un umbral de un parámetro de calidad de servicio que alcanza un estándar, al que se puede hacer referencia como segundo umbral. Estos dos umbrales relacionados con la experiencia de usuario pueden ser obtenidos por un proveedor de desarrollo de aplicaciones a través de la recopilación y el análisis de estadísticas de lógica de servicio basadas en una gran cantidad de comportamiento de usuario, y se entregan y actualizan usando la interfaz de configuración de parámetros 405 según sea necesario. Los diferentes tipos de aplicaciones tienen diferentes indicadores de umbrales de calidad de servicio que satisfacen la experiencia de usuario. Usando el retraso como ejemplo, la experiencia óptima de una aplicación de juego puede requerir un umbral de retraso de 100 ms, y un umbral de retraso que alcance un estándar puede ser de 200 ms. En este caso, un segundo umbral de retraso de la aplicación de juego puede establecerse en 200 ms, y un primer umbral puede establecerse en 100 ms. La experiencia óptima de una aplicación de mensajería instantánea puede requerir un umbral de retraso de 700 ms, y un umbral de retraso que alcance un estándar puede ser de 1000 ms. En este caso, un segundo umbral de retraso de la aplicación de mensajería instantánea puede establecerse en 1000 ms, y un primer umbral puede establecerse en 700 ms. Como se muestra en la FIG. 8, usando el retraso como ejemplo, un valor de retraso menor o igual al valor del primer umbral es un valor de retraso que satisface la experiencia de usuario fluida, y un valor de retraso mayor o igual al valor del segundo umbral es un valor de retraso que causa una experiencia de usuario extremadamente pobre.
El módulo de programación 402 se configura para seleccionar un módulo de transmisión para transmisión de datos, o seleccionar una red para transmisión de datos, por ejemplo, seleccionar una red móvil (que también puede denominarse red móvil) para transmisión de paquetes de datos, o seleccione una red de área local inalámbrica (por ejemplo, WiFi) para la transmisión de paquetes de datos, o seleccionar tanto una red móvil como una red de área local inalámbrica para la transmisión de paquetes de datos. Específicamente, el módulo de programación 402 puede detectar además la calidad de servicio de transmisión de datos y conmutar entre redes basándose en un parámetro de calidad de servicio de transmisión de datos. El módulo de programación 402 se configura para realizar el método de conmutación de red proporcionado en esta realización de esta solicitud, y el método incluye específicamente las etapas 102 a 104. Específicamente, el módulo de programación 402 puede ser una unidad de circuito programable, tal como el procesador de aplicaciones anterior.
Un módulo de procesamiento de paquetes de datos 406 se configura para procesar un paquete de datos, y luego un paquete de datos procesado se envía a un extremo de recepción usando el módulo de transmisión de red móvil 403.
El módulo de transmisión de red móvil 403 y el módulo de transmisión de red de área local inalámbrica 404 se configuran para transmitir datos, y los datos transmitidos son un paquete de datos entregado por una aplicación. El módulo de transmisión de red móvil 403 se configura para transmitir datos usando la red móvil y, específicamente, el módulo de transmisión de red móvil 403 puede ser el módem 303 en el dispositivo electrónico 300 anterior. El módulo de transmisión de red de área local inalámbrica 404 transmite datos usando la red de área local inalámbrica y, específicamente, el módulo de transmisión de red de área local inalámbrica 404 puede ser el módulo WiFi 304 en el dispositivo electrónico 300 anterior.
Opcionalmente, el módulo de protocolo de transferencia 401 incluye además un módulo de procesamiento de paquetes de datos 406. El módulo de procesamiento de paquetes de datos 406 se configura para procesar un paquete de datos. Específicamente, el módulo de procesamiento de paquetes de datos 406 encapsula un paquete de datos capa por capa, y un paquete de datos procesado se transmite usando al menos uno del módulo de transmisión de red móvil 403 y el módulo de transmisión de red de área local inalámbrica 404.
En otra realización, un paquete de datos entregado por una aplicación puede obtenerse alternativamente usando un dispositivo de red privada virtual (VPN), y luego el paquete de datos se dirige al módulo de protocolo de transferencia 401.
En otra realización, una interfaz de protocolo puede extenderse para invocación directa por una aplicación, y el módulo de protocolo de transferencia 401 puede obtener directamente un paquete de datos entregado desde la aplicación usando la interfaz.
El método de conmutación de red proporcionado en esta realización de esta solicitud es: conmutar entre tres estados, y los medios de conmutación conmutan entre diferentes estados de transmisión de datos de un dispositivo electrónico, por ejemplo, conmutar de transmitir datos usando un red de área local inalámbrica a transmitir datos usando una red móvil. La conmutación puede estar relacionada específicamente con lo siguiente: un dispositivo electrónico entrega una solicitud de conmutación y la conmutación de red se implementa usando una pila de protocolos de control. En la FIG. 9 se muestra un diagrama esquemático de la conmutación de estado, y la conmutación de estado incluye: transmitir datos usando una red de área local inalámbrica (por ejemplo, Intervalo 1 en la FIG. 9), transmitir datos usando una red móvil (por ejemplo, Intervalo 3 en la FIG. 9), y transmitir datos usando tanto la red de área local inalámbrica como la red móvil (por ejemplo, Intervalo 2 en la FIG. 9), donde los datos transmitidos incluyen un paquete de datos de una aplicación. Específicamente, se puede preestablecer un estado inicial como uno de los tres estados anteriores. Opcionalmente, se puede seleccionar como estado inicial la transmisión de datos usando tanto la red de área local inalámbrica como la red móvil.
Según el método de conmutación de red proporcionado en esta solicitud, se preestablecen dos umbrales, a saber, el primer umbral y el segundo umbral, para un mismo parámetro de calidad de servicio (por ejemplo, un retraso) de una aplicación o un tipo de aplicación. El primer umbral y el segundo umbral pueden preconfigurarse para cada aplicación o cada tipo de aplicación. El primer umbral es un umbral preestablecido umbral_bajo de experiencia de usuario óptima correspondiente a la aplicación, y el segundo umbral es un umbral preestablecido umbral_alto de experiencia de usuario extremadamente pobre correspondiente a la aplicación, donde el primer umbral es menor que el segundo umbral.
Opcionalmente, la comparación entre un parámetro de calidad de servicio de una red (por ejemplo, un retraso, que también puede denominarse retraso de transmisión de datos) y dos umbrales especificados mostrados en la FIG. 8, a saber, umbral_alto (el segundo umbral) y/o umbral_bajo (el primer umbral), se puede hacer para determinar un estado al que se ha conmutado o una red a la que se ha conmutado o redes a las que se ha conmutado para transmisión de datos.
(1) Si un parámetro de calidad de servicio medido actualmente es inferior al umbral de experiencia óptima umbral_bajo, indica que la calidad de servicio que puede proporcionar una red actual puede no satisfacer la experiencia de usuario óptima. Para garantizar la experiencia de usuario, un extremo de transmisión comienza a enviar un paquete de datos a través de otra red al mismo tiempo, es decir, un paquete de datos se envía de forma redundante usando una pluralidad de rutas para garantizar la transmisión de paquetes de datos, manteniendo así una experiencia de usuario relativamente buena. (2) Si un parámetro de calidad de servicio medido actualmente es inferior al umbral de experiencia extremadamente pobre umbral_alto, se detiene el envío de paquetes de datos a través de una red actual y se realiza la conmutación a otra red para la transmisión de paquetes de datos. Además, se puede habilitar la detección en tiempo real de la calidad de servicio de una red utilizada antes de la conmutación, de modo que la conmutación a una red que pueda garantizar la experiencia de usuario se pueda realizar basándose en la calidad de servicio en tiempo real de dos redes.
Debe entenderse que se pueden establecer más umbrales, y la conmutación a una red correspondiente se puede realizar basándose en un intervalo de umbral al que pertenece un parámetro de calidad de servicio de red actual.
A continuación se describe en detalle un procedimiento específico de un método de conmutación de red según la invención proporcionado en esta solicitud, y en la FIG. 10 se muestra un diagrama de flujo. Este método incluye las siguientes etapas.
Etapa 101: Un dispositivo electrónico transmite datos usando una red de área local inalámbrica.
El dispositivo electrónico accede a un punto de acceso de la red de área local inalámbrica y transmite un paquete de datos de una aplicación usando la red de área local inalámbrica. Por ejemplo, un terminal accede a un punto de acceso de una red WiFi y transmite datos usando la red WiFi.
Opcionalmente, el dispositivo electrónico detecta periódicamente un retraso de transmisión de datos de la red de área local inalámbrica, y compara el retraso de transmisión de datos de la red de área local inalámbrica con un primer umbral. En un proceso de transmisión de paquetes de datos, por ejemplo, transmisión desde el dispositivo electrónico a un servidor de aplicaciones, la transmisión usualmente se realiza usando una red inalámbrica y una red fija. El retraso de transmisión de la red fija es relativamente fijo y la red inalámbrica es un factor principal que causa la fluctuación del retraso de transmisión de un extremo a otro de un paquete de datos. Un retraso de transmisión de datos mayor en la red inalámbrica indica un retraso de transmisión de extremo a extremo mayor, y un retraso de transmisión de datos menor en la red inalámbrica indica un retraso de transmisión de extremo a extremo menor. Por lo tanto, en una realización, para facilitar la medición, un retraso de transmisión de datos de extremo a extremo de la transmisión de un paquete de datos de una aplicación por el dispositivo electrónico usando una red de área local inalámbrica puede ser simplemente equivalente al retraso de transmisión de datos de la red de área local inalámbrica.
En una realización, un retraso de transmisión de datos es un tiempo consumido desde un momento en que un extremo de transmisión (por ejemplo, el dispositivo electrónico) envía un paquete de datos hasta un momento en que un extremo de recepción (por ejemplo, el servidor de aplicaciones) recibe el paquete de datos. En otra realización, un retraso de transmisión de datos puede ser alternativamente un tiempo de ida y vuelta (RTT), es decir, un tiempo consumido desde un momento en que un extremo de transmisión envía un paquete de datos hasta un momento en que el extremo de transmisión recibe un acuse de recibo para el paquete de datos. El retraso de transmisión de datos suele ser un valor de medición o un valor de estimación. Por ejemplo, cuando se transmiten datos usando la red de área local inalámbrica, se puede medir el tiempo consumido desde el momento en que se envía un paquete de datos hasta el momento en que se recibe un acuse de recibo correspondiente al paquete de datos, y se puede utilizar el tiempo como el retraso de transmisión de datos de la red de área local inalámbrica. Opcionalmente, se pueden registrar retrasos de transmisión de una pluralidad de paquetes de datos dentro de un período de tiempo, y el retraso de transmisión de datos de la red de área local inalámbrica se puede obtener promediando los retrasos de transmisión de la pluralidad de paquetes de datos o realizando una operación en los retrasos de transmisión de la pluralidad de paquetes de datos usando un algoritmo particular.
Etapa 102: Cuando el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, el dispositivo electrónico conmuta a transmitir datos usando tanto la red de área local inalámbrica como una red móvil.
Los datos transmitidos por el dispositivo electrónico y mencionados en esta realización de esta solicitud incluyen un paquete de datos de una aplicación. Por lo tanto, el retraso de transmisión de datos es un retraso de extremo a extremo en la transmisión del paquete de datos de la aplicación, por ejemplo, un tiempo de ida y vuelta (RTT).
Cuando el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, indica que el retraso de transmitir un paquete de datos de una aplicación usando la red de área local inalámbrica es menor que el umbral de retraso de la experiencia de usuario óptima. En este caso, basándose en el establecimiento de una conexión de red móvil, el dispositivo electrónico conmuta a transmitir datos usando tanto la red de área local inalámbrica como la red móvil. En otras palabras, el paquete de datos de la aplicación se envía de forma redundante por rutas respectivas de la red de área local inalámbrica y la red móvil. Específicamente, la transmisión redundante del paquete de datos de la aplicación se puede implementar en las rutas respectivas de la red de área local inalámbrica y la red móvil estableciendo una transmisión de rutas múltiples entre el extremo de transmisión y el extremo de recepción.
Opcionalmente, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, el retraso de transmisión de datos de la red de área local inalámbrica se detecta periódicamente, y el retraso de transmisión de datos de la red de área local inalámbrica se compara con un segundo umbral. Específicamente, el retraso de transmisión de datos de la red de área local inalámbrica se obtiene calculando un retraso de transmitir un paquete de datos de una aplicación usando la red de área local inalámbrica.
En otra realización, como se muestra en ® en la FIG 10, cuando el retraso de transmisión de datos de la red de área local inalámbrica es menor o igual al primer umbral, el dispositivo electrónico transmite datos todavía usando la red de área local inalámbrica. y luego se realiza la etapa 101.
Etapa 103: Cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que el segundo umbral, el dispositivo electrónico conmuta a transmitir el paquete de datos de la aplicación usando la red móvil, donde el primer umbral es menor que el segundo umbral.
Cuando el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, indica que un retraso de un enlace de red proporcionado por la red de área local inalámbrica aumenta aún más hasta cierto punto, y la calidad de servicio de la red de área local inalámbrica se reduce aún más. En este caso, la red de área local inalámbrica no puede garantizar una experiencia de usuario bastante buena, y se generan sobrecargas innecesarias debido a la transmisión de datos usando tanto de la red de área local inalámbrica como de la red móvil, es decir, de una manera tal de transmisión redundante de múltiples rutas de un paquete de datos. Por lo tanto, el dispositivo electrónico conmuta a transmitir datos únicamente usando la red móvil, es decir, el paquete de datos de la aplicación se transmite únicamente usando la red móvil.
Opcionalmente, también se puede detectar un retraso de transmisión de datos de la red móvil, y el retraso de transmisión de datos de la red móvil se obtiene calculando un retraso de transmitir un paquete de datos de una aplicación usando la red móvil. Cabe señalar que, similar al retraso de transmisión de datos de la red de área local inalámbrica, el retraso de transmisión de datos de la red móvil también significa un retraso de extremo a extremo en la transmisión de un paquete de datos de una aplicación usando la red móvil.
Opcionalmente, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y el retraso de transmisión de datos de la red móvil es menor o igual al segundo umbral, la calidad de servicio de la red de área local inalámbrica se reduce a la experiencia de usuario extremadamente pobre anterior, y la calidad de servicio de una red LTE no se reduce a la experiencia de usuario extremadamente pobre. La calidad de servicio de la red LTE es mejor que la calidad de servicio de la red WiFi. En este caso, el dispositivo electrónico conmuta a transmitir datos usando la red móvil.
Opcionalmente, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral y menor que el segundo umbral, y el retraso de transmisión de datos de la red móvil es menor que el primer umbral, indica que la red de área local inalámbrica no puede proporcionar la experiencia de usuario óptima anterior, y la red móvil puede proporcionar la experiencia de usuario óptima anterior. En este caso, el dispositivo electrónico conmuta a transmitir datos usando la red móvil, es decir, realiza la transmisión posterior de un paquete de datos de la aplicación únicamente usando la red móvil.
Opcionalmente, el método incluye además la etapa 104: Cuando el dispositivo electrónico transmite datos usando la red móvil, detectar el retraso de transmisión de datos de la red de área local inalámbrica. Específicamente, usando la red de área local inalámbrica se transmite un paquete de control (un mensaje de sonda), se recibe un mensaje de respuesta correspondiente al mensaje de sonda y el retraso de transmisión de datos de la red de área local inalámbrica se determina basándose en un momento de envío del mensaje de sonda y un momento de recepción del mensaje de respuesta. Se puede llevar una marca de tiempo de envío en el paquete de control (el mensaje de sonda), y el mensaje de respuesta es un paquete de datos devuelto después de que un extremo semejante recibe con éxito el mensaje de sonda. El retraso de transmisión de datos de la red de área local inalámbrica puede ser una diferencia de tiempo entre una marca de tiempo de recepción del mensaje de respuesta del paquete de control y la marca de tiempo de envío del paquete de control. El cálculo del retraso de transmisión de datos se describe en detalle en el siguiente contenido.
En otra realización, como se muestra en @ en la FIG. 10, cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, el dispositivo electrónico conmuta a transmitir datos usando la red inalámbrica red de área local, y luego se realizan las etapas 101 a 104.
En otra realización, como se muestra en @ en la FIG. 10, el dispositivo electrónico sigue transmitiendo el paquete de datos de la aplicación usando tanto la red de área local inalámbrica como la red móvil.
En otra realización, tras la etapa 104 como se muestra en © en la FIG. 10, cuando el dispositivo electrónico transmite datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, el dispositivo electrónico conmuta a transmitir datos usando la red inalámbrica red de área local, y luego se realizan las etapas 101 a 104.
Cuando el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, indica que la red de área local inalámbrica puede proporcionar la experiencia de usuario óptima anterior. Conmutar desde la red móvil a la red de área local inalámbrica puede reducir el consumo de tráfico de la red móvil.
En otra realización, como se muestra en © en la FIG. 10, cuando el dispositivo electrónico transmite datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, y el retraso de transmisión de datos de la red móvil es mayor que el primer umbral, el dispositivo electrónico conmuta a transmitir datos usando tanto la red de área local inalámbrica como la red móvil, y luego se realiza la etapa 102, es decir, se realizan las etapas 102 a 104.
En otra realización, como se muestra en @ en la FIG 10, cuando los datos se transmiten usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y el retraso de transmisión de datos de la red móvil es mayor que el primer umbral y menor que el segundo umbral, el dispositivo electrónico transmite el paquete de datos de la aplicación todavía usando la red móvil, y luego se realizan las etapas 103 y 104.
En otra realización, como se muestra en @ en la FIG 10, cuando los datos se transmiten usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, y el retraso de transmisión de datos de la red móvil es menor que el primer umbral, el dispositivo electrónico transmite el paquete de datos de la aplicación todavía usando la red móvil, y luego se realizan las etapas 103 y 104.
En otras realizaciones, se puede preestablecer una primera diferencia de tiempos. Una etapa de conmutación de red se realiza sólo cuando un retraso de transmisión de datos llega a ser mayor o menor que un umbral preestablecido (el primer umbral o el segundo umbral) y permanece mayor o menor que el umbral preestablecido durante la primera diferencia horaria. Por lo tanto, se pueden evitar sobrecargas causadas por la conmutación repetida de la red debido a la fluctuación del retraso de transmisión de datos en un corto tiempo.
En otras realizaciones, también se puede establecer un primer umbral y un segundo umbral que corresponden a otro parámetro de red. Cuando se detecta que el parámetro de red alcanza un umbral, se realiza la conmutación entre los tres estados de red anteriores. El otro parámetro de red puede ser uno o más de los parámetros tales como una tasa de pérdida de paquetes, un rendimiento y una variación de retraso. Un método de conmutación de red es similar a las etapas anteriores del método de conmutación de red en función del retraso de transmisión de datos, y no se describen detalles en esta memoria.
Debido a que la red móvil está relacionada con el tráfico de red de un usuario, y además está relacionada con la facturación de tráfico del usuario, en otra realización proporcionada en esta solicitud, se puede proporcionar al usuario información de aviso sobre si se debe habilitar una función de conmutación de red, y el usuario puede recibir una instrucción para activar la información de aviso de conmutación. Los métodos de conmutación de red proporcionados en las realizaciones de esta solicitud se pueden habilitar según esta instrucción de activación, de modo que el usuario pueda estar al tanto de la conmutación de red, para evitar causar pérdidas al usuario y mejorar la experiencia de usuario. En una implementación posible, la información de aviso puede tener la forma de un cuadro de aviso, por ejemplo, la información que se muestra en el cuadro de aviso es "¿Desea habilitar la conmutación de red?" o "¿Está de acuerdo en utilizar la red móvil?". Además, el cuadro de aviso puede incluir un botón "Sí" y un botón "No". Cuando el usuario toca el botón "Sí" en el cuadro de aviso, indica que acepta habilitar el método de conmutación de red proporcionado en esta solicitud.
Opcionalmente, una aplicación puede proporcionar el cuadro de aviso al usuario. Por ejemplo, el cuadro de aviso se proporciona al usuario en una aplicación similar a "Asistente de juego", "Configuración de red" o similares. Alternativamente, se puede descargar un complemento que tenga esta función y el cuadro de aviso se muestra en una interfaz del complemento después de cargar el complemento.
En el método de conmutación de red proporcionado en esta realización de esta solicitud, el extremo de transmisión procesa además un paquete de datos original y luego envía un paquete de datos procesado. Específicamente, se añade un encabezado, se encapsula el paquete original y, después de la encapsulación, se envía un paquete de datos al extremo de recepción usando un módulo de comunicaciones. El paquete de datos en esta memoria puede ser el paquete de datos anterior de la aplicación, o el paquete de control anterior.
Se utiliza como ejemplo que un protocolo de capa de transporte es TCP o UDP, el extremo de transmisión distingue entre un paquete TCP y un paquete UDP para procesamiento diferente. Para el paquete UDP, se puede extraer la carga útil del paquete UDP, se extrae un segmento de espacio del paquete y se utiliza como encabezado añadido, lo que se conoce como encabezado SHIM, y posteriormente se realiza procesamiento encapsulación capa por capa de las capas de protocolo. En la FIG. 11. se muestra un formato de un paquete que se envía finalmente. Para el paquete TCP, se extrae un encabezado TCP y una carga útil en el paquete TCP, y se extrae un segmento de espacio del paquete y se utiliza como encabezado añadido, lo que se conoce como encabezado SHIM. El encabezado SHIM encapsula el encabezado TCP y la carga útil, y en la FIG. 12 se muestra un formato de un paquete que se envía finalmente. El encabezado SHIM puede incluir una marca de tiempo de envío en la que el extremo de transmisión envía el paquete de datos y puede incluir además información de opciones, que puede incluir información de seguridad (tal como un token) y una dirección de un extremo de recepción.
En la FIG. 11 o la FIG. 12 también se muestra un formato de un mensaje de respuesta devuelto por el extremo de recepción. El mensaje de respuesta devuelto por el extremo de recepción puede ser información de acuse de recibo (ACK) o puede ser un paquete de datos devuelto al extremo de transmisión después de que el extremo de recepción recibe un paquete de datos enviado por el extremo de transmisión. El mensaje de respuesta devuelto por el extremo de recepción incluye la marca de tiempo de envío T1 en la que el extremo de transmisión envía el paquete de datos, puede incluir además una marca de tiempo de recepción T2 en la que el extremo de recepción recibe el paquete de datos, y puede incluir además una diferencia de tiempo DIFF_T entre un marca de tiempo en la que el extremo de recepción recibe el paquete de datos y una marca de tiempo de envío en la que el extremo de recepción envía el mensaje de respuesta.
El retraso se utiliza como ejemplo para describir las formas de cálculo del retraso para las redes. El retraso de transmisión de datos mencionado en esta solicitud puede ser un tiempo de ida y vuelta. Como se muestra en la FIG. 13, una marca de tiempo de envío T1 se transporta en un paquete de datos P1 enviado por un extremo de transmisión en un momento T1. Un extremo de recepción recibe el paquete de datos P1 en un momento T2, y después de un intervalo DIFF, el extremo de recepción devuelve un mensaje de respuesta al extremo de transmisión en un momento T3. El extremo de transmisión recibe el mensaje de respuesta en un momento T4. En este caso, el retraso RTT es: RTT=T4-T1-DIFF_T, donde DIFF_T=T3-T2. El mensaje de respuesta lleva la marca de tiempo de envío T1 y el intervalo DIFF_T. El intervalo puede ser un tiempo consumido durante el procesamiento de un paquete de datos recibido por el extremo de recepción. Cuando el extremo de recepción es un agente de un servidor, el intervalo puede incluir una diferencia entre un momento en el que el agente del servidor envía un paquete de datos recibido a un servidor y un momento en el que el agente del servidor recibe un paquete devuelto desde el servidor. Por lo tanto, el retraso de transmisión de datos en las realizaciones de esta solicitud se obtiene basándose en una diferencia de tiempo entre una marca de tiempo de envío de un paquete de datos y una marca de tiempo de recepción de un mensaje de respuesta del paquete de datos. Opcionalmente, el retraso de transmisión de datos se puede obtener después de suavizar una pluralidad de diferencias de tiempo obtenidas mediante cálculo.
Un paquete de datos enviado por el extremo de transmisión al extremo de recepción lleva además un identificador, y el identificador puede ser específicamente una opción MSS (tamaño máximo de segmento) y puede llevarse en las opciones. Usando un paquete TCP como ejemplo, cuando la longitud de un paquete TCP enviado por el extremo de transmisión es grande, se produce una segmentación durante la transmisión y la reorganización se realiza en el extremo de recepción. De manera similar, se produce fragmentación cuando la longitud de un paquete IP excede un valor particular y los fragmentos se reorganizan en el extremo de recepción. Un valor de la opción MSS indica una longitud de un segmento de datos máximo que es de un paquete de datos y que se puede transmitir cada vez. Cuando la longitud de un paquete TCP es mayor que el valor del MSS, es necesario realizar una transmisión segmentada. El extremo de transmisión modifica el valor de la opción MSS, para evitar que un paquete exceda un límite de longitud de fragmento porque se añade un encabezado SHIM. La suma de un valor modificado del MSS y una longitud del encabezado SHIM es menor o igual que el límite de longitud del fragmento.
Sobre la base de las realizaciones anteriores, la invención proporciona además un sistema en chip (SOC). El sistema en chip incluye un procesador de aplicaciones, un módem y un módulo WiFi que se configuran para transmitir datos. El procesador de aplicaciones puede implementar el método de conmutación de red proporcionado en una cualquiera o más de las realizaciones anteriores. El módulo WiFi puede ser un chip separado o puede integrarse con el procesador de aplicaciones o el módem.
Sobre la base de las realizaciones anteriores, una realización de esta solicitud proporciona además un dispositivo electrónico. El dispositivo electrónico incluye el sistema en chip, de modo que el dispositivo electrónico puede implementar el método de conmutación de red proporcionado en una cualquiera o más de las realizaciones anteriores.
Sobre la base de las realizaciones anteriores, una realización de esta solicitud proporciona además un soporte de almacenamiento informático El soporte de almacenamiento almacena una instrucción de ordenador, y cuando la instrucción de ordenador es leída y ejecutada por uno o más procesadores, se puede implementar el método de conmutación de red proporcionado en una cualquiera o más de las realizaciones anteriores. El soporte de almacenamiento informático puede incluir diversos medios que pueden almacenar código de programa o una instrucción informática, tal como una unidad flash USB, un disco duro extraíble, una memoria de solo lectura, una memoria de acceso aleatorio, un disco magnético o un disco óptico.
Sobre la base de las realizaciones anteriores, esta solicitud proporciona un producto de programa informático, y el producto de programa informático incluye una instrucción informática. Cuando la instrucción informática es ejecutada por un procesador, el procesador está habilitado para realizar el método de conmutación de red proporcionado en una cualquiera o más de las realizaciones anteriores.
Un experto en la técnica debe entender que las realizaciones de esta solicitud pueden proporcionarse como un método, un sistema o un producto de programa informático. Por lo tanto, estas solicitud puede usar una forma de realizaciones de solo hardware, realizaciones de solo software o realizaciones con una combinación de software y hardware. Además, esta solicitud puede usar una forma de producto de programa informático que se implementa en uno o más soportes de almacenamiento utilizables por ordenador (incluidos, pero sin limitación a esto, una memoria de disco, un CD-ROM, una memoria óptica y similares) que incluyen código de programa utilizable por ordenador.
Esta solicitud se describe con referencia a los diagramas de flujo y/o los diagramas de bloques del método, el dispositivo (sistema) y el producto de programa informático según esta solicitud. Debe entenderse que las instrucciones de programa informático pueden usarse para implementar cada proceso y/o cada bloque en los diagramas de flujo y/o los diagramas de bloques y una combinación de un proceso y/o un bloque en los diagramas de flujo y/o los diagramas de bloques. Estas instrucciones de programa informático pueden proporcionarse a un procesador de un ordenador de finalidad general, un ordenador especializado, un procesador integrado o un procesador de otro dispositivo de procesamiento de datos programable para generar una máquina, para que las instrucciones, que se ejecutan por un ordenador o un procesador de cualquier otro dispositivo de procesamiento de datos programable generen un aparato para implementar una función específica en uno o más procesos en los diagramas de flujo y/o en uno o más de los bloques en los diagramas de bloques.
Estas instrucciones del programa informático pueden almacenarse en una memoria legible por ordenador que puede dar instrucciones a un ordenador o a otro dispositivo de procesamiento de datos programable para que funcione de una manera específica, para que las instrucciones almacenadas en la memoria legible por ordenador generen un artefacto que incluya un aparato de instrucción. El aparato de instrucción implementa una función específica en uno o más procesos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Estas instrucciones de programa informático se pueden cargar en un ordenador o en otro dispositivo de procesamiento de datos programable, de tal modo que se realiza una serie de operaciones y etapas en el ordenador o en el otro dispositivo programable, generando de ese modo un procesamiento implementado por ordenador. Por lo tanto, las instrucciones ejecutadas en el ordenador o en el otro dispositivo programable proporcionan etapas para implementar una función específica en uno o más procesos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Obviamente, un experto en la técnica puede realizar diversas modificaciones y variaciones a esta solicitud sin apartarse del alcance de esta solicitud. Esta solicitud pretende cubrir estas modificaciones y variaciones de esta solicitud siempre que caigan dentro del alcance de protección definido por las siguientes reivindicaciones.

Claims (13)

REIVINDICACIONES
1. Un método de conmutación de red, en donde el método comprende:
transmitir (S101), por parte de un dispositivo electrónico, datos usando una red de área local inalámbrica; cuando un retraso de transmisión de datos de la red de área local inalámbrica es mayor que un primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir (S102) datos usando tanto la red de área local inalámbrica como una red móvil; y
cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que un segundo umbral, conmutar, por parte del dispositivo electrónico, a transmitir (S103) datos usando la red móvil, en donde el primer umbral es menor que el segundo umbral.
2. El método según la reivindicación 1, que comprende además:
cuando el dispositivo electrónico transmite datos usando la red móvil, si un retraso de transmisión de datos de la red móvil es mayor que el primer umbral, y se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando tanto la red de área local inalámbrica como la red móvil.
3. El método según la reivindicación 1, que comprende además:
cuando el dispositivo electrónico transmite datos usando la red móvil, si se detecta que el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red de área local inalámbrica.
4. El método según cualquiera de las reivindicaciones 1 a 3, que comprende además:
cuando el dispositivo electrónico transmite datos usando la red móvil, detectar el retraso de transmisión de datos de la red de área local inalámbrica.
5. El método según la reivindicación 1, en donde el método comprende:
cuando el dispositivo electrónico transmite datos usando tanto la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando la red de área local inalámbrica.
6. El método según la reivindicación 1, en donde el método comprende además:
cuando el dispositivo electrónico transmite datos usando tango la red de área local inalámbrica como la red móvil, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que el primer umbral y menor que el segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que el primer umbral, conmutar, por parte del dispositivo electrónico, a transmitir datos usando tanto la red de área local inalámbrica como la red móvil.
7. El método según la reivindicación 4, en donde detectar el retraso de transmisión de datos de la red de área local inalámbrica comprende: transmitir un mensaje de sonda usando la red de área local inalámbrica; recibir un mensaje de respuesta correspondiente al mensaje de sonda; y
determinar el retraso de transmisión de datos de la red de área local inalámbrica basado en un momento de envío del mensaje de sonda y un momento de recepción del mensaje de respuesta.
8. El método según cualquiera de las reivindicaciones 1 a 7, en donde los datos transmitidos por el dispositivo electrónico comprenden un paquete de datos de una primera aplicación, y el retraso de transmisión de datos es un retraso en la transmisión del paquete de datos de la primera aplicación.
9. El método según la reivindicación 8, en donde el primer umbral y el segundo umbral se preconfiguran para la primera aplicación.
10. Un dispositivo electrónico, que comprende un procesador (301) y un soporte de almacenamiento legible por ordenador que almacena un programa informático, en donde
el procesador se acopla al soporte de almacenamiento legible por ordenador, y cuando el procesador ejecuta el programa informático, se implementa el método de conmutación de red según cualquiera de las reivindicaciones 1 a 9.
11. Un soporte de almacenamiento legible por ordenador, en donde un programa informático se almacena en el soporte de almacenamiento legible por ordenador, y cuando el programa informático es ejecutado por un procesador, se implementa el método de conmutación de red según cualquiera de las reivindicaciones 1 a 9.
12. Un sistema en chip, SOC, en donde el sistema en chip comprende: un procesador de aplicaciones (301) y un módem (303) que se configura para transmitir datos usando una red móvil y un módulo WiFi (304) que se configura para transmitir datos usando una red de área local inalámbrica y está transmitiendo datos usando la red de área local inalámbrica, en donde el procesador de aplicaciones se configura para: cuando un retraso de transmisión de datos de la red de área local inalámbrica es mayor que un primer umbral, conmutar a transmitir datos usando tanto la red de área local inalámbrica como la red móvil; y cuando los datos se transmiten usando tanto la red de área local inalámbrica usando el módulo WiFi como la red móvil usando el módem, si el retraso de transmisión de datos de la red de área local inalámbrica es mayor que un segundo umbral, y un retraso de transmisión de datos de la red móvil es menor que el segundo umbral, conmutar a transmitir datos usando la red móvil, en donde el primer umbral es menor que el segundo umbral.
13. Un dispositivo electrónico, que comprende el sistema en chip según la reivindicación 12.
ES19845360T 2018-08-02 2019-04-06 Conmutación de transmisión basada en retraso de transmisión de datos Active ES2961005T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810872929.1A CN110798868B (zh) 2018-08-02 2018-08-02 网络切换方法、电子设备以及芯片子系统
PCT/CN2019/081638 WO2020024609A1 (zh) 2018-08-02 2019-04-06 网络切换方法、电子设备以及芯片子系统

Publications (1)

Publication Number Publication Date
ES2961005T3 true ES2961005T3 (es) 2024-03-07

Family

ID=69231368

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19845360T Active ES2961005T3 (es) 2018-08-02 2019-04-06 Conmutación de transmisión basada en retraso de transmisión de datos

Country Status (7)

Country Link
US (2) US11425785B2 (es)
EP (1) EP3675558B1 (es)
KR (1) KR102463978B1 (es)
CN (3) CN110798868B (es)
CA (1) CA3108097C (es)
ES (1) ES2961005T3 (es)
WO (1) WO2020024609A1 (es)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11082892B2 (en) * 2018-10-30 2021-08-03 Apple Inc. Methods for transmitting and receiving data in 5G NR device based on data/service tagging from application processor
US11418976B2 (en) * 2019-06-18 2022-08-16 Semiconductor Components Industries, Llc Wireless adaptation based on multidimensional input
CN111555833A (zh) * 2020-04-24 2020-08-18 光荣出行(深圳)科技有限公司 一种基于无线模块的数据传输处理方法
CN113872862B (zh) * 2020-06-30 2022-12-06 华为技术有限公司 通信方法、移动设备及路由设备
US11252264B1 (en) * 2020-07-22 2022-02-15 Nokia Solutions And Networks Oy Load balancing a TCP connection across multiple paths
CN112333800A (zh) * 2020-11-13 2021-02-05 Oppo广东移动通信有限公司 网络切换方法、装置、存储介质及电子设备
CN114641042A (zh) * 2020-12-15 2022-06-17 华为技术有限公司 一种网络切换方法及装置
CN114650592B (zh) * 2020-12-21 2024-05-10 华为技术有限公司 一种无线网络时延处理方法、系统以及接入服务器
CN115484648B (zh) * 2021-06-16 2023-07-21 荣耀终端有限公司 通道切换方法、电子设备及存储介质
CN113795040B (zh) * 2021-06-16 2022-10-18 荣耀终端有限公司 通道切换方法、电子设备及存储介质
CN113784408B (zh) * 2021-11-11 2022-02-08 荣耀终端有限公司 一种网络切换方法及电子设备
CN114339869B (zh) * 2022-02-25 2024-04-05 京东科技信息技术有限公司 网络管理方法、装置、电子设备和存储介质
US20230292383A1 (en) * 2022-03-10 2023-09-14 Qualcomm Incorporated Techniques for data transmission management
CN116095780B (zh) * 2023-04-10 2023-06-27 深圳市通恒伟创科技有限公司 一种4G和wifi同步通信方法、系统、设备及存储介质
CN116489146A (zh) * 2023-06-25 2023-07-25 荣耀终端有限公司 文件传输方法、电子设备及存储介质

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100893691B1 (ko) * 2005-06-10 2009-04-17 삼성전자주식회사 이종망간 핸드오프 결정 장치 및 방법
WO2007003050A1 (en) * 2005-07-05 2007-01-11 Research In Motion Limited Voice synchronization during call handoff
US20110228749A1 (en) 2009-11-19 2011-09-22 Qualcomm Incorporated Methods and apparatus for supporting data flows over multiple radio protocols
KR20130010751A (ko) * 2011-07-19 2013-01-29 에스케이텔레콤 주식회사 이기종 네트워크 기반 데이터 동시 전송 서비스 장치 및 그 방법
CN108925737A (zh) * 2011-07-21 2018-12-04 洲际大品牌有限责任公司 用于形成和冷却咀嚼型胶基糖的系统和方法
CN102932849B (zh) * 2011-08-08 2016-03-02 京信通信系统(中国)有限公司 基于Femto架构的无线通信系统、方法和网关子系统
KR20130053696A (ko) * 2011-11-16 2013-05-24 삼성전자주식회사 휴대단말기의 데이터 통신 장치 및 방법
KR101600403B1 (ko) * 2011-12-21 2016-03-08 에스케이텔레콤 주식회사 이기종 네트워크 기반 데이터 동시 전송 방법 및 이에 적용되는 장치
US8953482B2 (en) * 2012-05-11 2015-02-10 Intel Corporation Methods and apparatuses to improve on-time throughput for integrated multi-rat heterogeneous networks
CN109245936A (zh) 2012-09-06 2019-01-18 华为技术有限公司 控制网络传输时延的方法、服务质量控制实体和通信设备
EP3039837B1 (en) 2013-08-29 2019-07-24 Telefonaktiebolaget LM Ericsson (publ) Mptcp scheduling
US20160242109A1 (en) * 2013-09-12 2016-08-18 Intellectual Discovery Co., Ltd. Method for searching wireless lan and mobile device supporting the same
CN104735726A (zh) * 2013-12-23 2015-06-24 中兴通讯股份有限公司 一种基于多种无线接入网络的业务分流传输的方法及装置
US9877256B2 (en) * 2014-03-24 2018-01-23 Intel IP Corporation Systems, devices, and methods for interworking between a universal mobile telecommunications system (UMTS) network and a wireless local area network (WLAN)
CN103905463B (zh) 2014-04-21 2017-02-15 北京邮电大学 一种适用于多路径传输的连接管理与控制方法
CN106465215B (zh) * 2014-04-23 2022-05-31 皇家Kpn公司 改进的垂直切换
CN105324966B (zh) * 2014-05-29 2019-04-12 华为技术有限公司 负载传输的控制方法及装置
US9553913B2 (en) * 2014-05-30 2017-01-24 Apple Inc. Seamless video pipeline transition between WiFi and cellular connections for real-time applications on mobile devices
US20160043844A1 (en) * 2014-08-11 2016-02-11 Qualcomm Incorporated Over the top methods for aggregation of wlan carriers to lte
KR20160123627A (ko) * 2015-04-16 2016-10-26 삼성전자주식회사 전자 장치 및 다중 경로를 이용한 데이터 전송 방법
CN104994036B (zh) 2015-06-09 2018-04-24 北京邮电大学 一种多路径传输协议中的动态数据调度方法
CN105101438A (zh) * 2015-07-10 2015-11-25 努比亚技术有限公司 多数据通道的数据分配方法及装置
ES2773425T3 (es) * 2015-08-26 2020-07-13 Ericsson Telefon Ab L M Señalización de enlace ascendente para conectividad dual
EP3179260B1 (en) * 2015-12-10 2018-09-26 Stichting IMEC Nederland Apparatus and method for monitoring performance of integrated circuit
CN105554831B (zh) * 2016-01-28 2020-06-16 广西东信易联科技有限公司 网络切换装置和方法
WO2017170164A1 (ja) * 2016-04-01 2017-10-05 京セラ株式会社 通信方法、プロセッサ、及びユーザ装置
CN105915466B (zh) 2016-04-15 2019-03-19 北京邮电大学 一种mptcp路径选择的方法及装置
WO2017184008A1 (en) * 2016-04-19 2017-10-26 Ringcentral, Inc Systems and methods for improving media data communications over a network
CN106792953A (zh) 2016-12-14 2017-05-31 北京小米移动软件有限公司 网络切换的方法和装置
US10531361B1 (en) * 2018-01-10 2020-01-07 Mbit Wireless, Inc. Method and apparatus for connection pooling and distribution across networks
CN109640335B (zh) * 2019-02-28 2022-02-08 福建师范大学 基于卷积神经网络的无线传感器故障诊断方法
CN111182454B (zh) * 2020-02-24 2021-02-09 重庆邮电大学 异构无线网络中综合效益最大化的智能接入方法
US11963051B2 (en) * 2020-09-17 2024-04-16 Intel Corporation Context aware handovers

Also Published As

Publication number Publication date
CN115426693A (zh) 2022-12-02
EP3675558B1 (en) 2023-08-30
CN110798869B (zh) 2022-08-09
CN110798868B (zh) 2022-07-29
WO2020024609A1 (zh) 2020-02-06
CA3108097A1 (en) 2020-02-06
EP3675558A1 (en) 2020-07-01
CN110798868A (zh) 2020-02-14
US20220353952A1 (en) 2022-11-03
US11910489B2 (en) 2024-02-20
KR102463978B1 (ko) 2022-11-04
CA3108097C (en) 2024-01-30
US20200245406A1 (en) 2020-07-30
US11425785B2 (en) 2022-08-23
KR20210036957A (ko) 2021-04-05
EP3675558A4 (en) 2020-12-16
CN110798869A (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
ES2961005T3 (es) Conmutación de transmisión basada en retraso de transmisión de datos
ES2882194T3 (es) Métodos para aumentar la cobertura de la red de VoIP
US10397379B2 (en) Robust multipath TCP stateless connection establishment
US9871723B2 (en) Method and device for handling multi path connections
US10986523B2 (en) Method for configuring measurement gap, access network device and terminal
EP3331205B1 (en) Data packet transmission method utilized in ipv6 network and device utilizing same
US10080177B2 (en) Unlicensed spectrum offload architecture for small-cell base stations
ES2766373T3 (es) Método y aparato de comunicación de red
CN104285472A (zh) Mptcp连接的移动性管理方法和装置
US11637771B2 (en) Technologies for managing network traffic through heterogeneous networks
CA3063179C (en) Determination of quality of service of a network tunnel
JP2021513266A (ja) データ伝送方法、デバイス及びコンピュータ記憶媒体
JP2021513266A5 (es)
US11844010B2 (en) Relay transmission method and relay node
ES2792860T3 (es) Método, dispositivo y terminal de procesamiento de camino
WO2022052798A1 (zh) QoS控制方法、装置及处理器可读存储介质
WO2019192283A1 (zh) 一种资源确定、资源指示方法及装置
ES2622002T3 (es) Método y aparato para gestión de flujo de datos
CN111641565B (zh) 一种以太网报文的传输方法、装置及系统
WO2019100341A1 (zh) 接入无线局域网的方法、终端设备和网络设备
US20230208735A1 (en) Methods and arrangements for supporting estimation of latency over a communication path in a communication network
WO2016065570A1 (zh) 无线网络控制器、基站及无线链路重配的方法
EP3007492A1 (en) Route optimizing method and apparatus, and computer storage medium
JP2019016849A (ja) 無線通信システム及び方法