ES2198267T3 - Metodo de seleccion de conexion. - Google Patents

Metodo de seleccion de conexion.

Info

Publication number
ES2198267T3
ES2198267T3 ES00660120T ES00660120T ES2198267T3 ES 2198267 T3 ES2198267 T3 ES 2198267T3 ES 00660120 T ES00660120 T ES 00660120T ES 00660120 T ES00660120 T ES 00660120T ES 2198267 T3 ES2198267 T3 ES 2198267T3
Authority
ES
Spain
Prior art keywords
route
datagram
node
protocol
routes
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.)
Expired - Lifetime
Application number
ES00660120T
Other languages
English (en)
Inventor
Jukka Maki-Kullas
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.)
Stonesoft Corp
Original Assignee
Stonesoft Corp
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 Stonesoft Corp filed Critical Stonesoft Corp
Application granted granted Critical
Publication of ES2198267T3 publication Critical patent/ES2198267T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/243Multipath using M+N parallel active paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/80Ingress point selection by the source endpoint, e.g. selection of ISP or POP

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)

Abstract

Método para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP, utilizando las conexiones el protocolo IP y por lo menos un segundo protocolo, comprendiendo el método - la selección de una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes, - la utilización de la ruta seleccionada traduciendo direcciones IP fuente de paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, y - realización de dicha selección de una ruta sobre la base de criterios predefinidos, caracterizado porque el método comprende por lo menos las siguientes etapas, en las cuales - se crea un primer datagrama IP que comprende un mensaje de establecimiento de un segundo protocolo para iniciar una conexión nuevacon un nodo extremo utilizando dicho segundo protocolo, - se envía dicho primer datagrama IP a través de una primera ruta de entre las rutas entre el nodo fuente y dicho nodo extremo, - se copia dicho primer datagrama IP para crear un segundo datagrama IP de cara a enviarlo a través de una segunda ruta de entre las rutas entre el nodo fuente y dicho nodo extremo, - se traduce la dirección IP fuente de dicho segundo datagrama IP en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha segunda ruta, - se transmite dicho segundo datagrama IP a través de dicha segunda ruta hacia dicho nodo extremo, - se recibe, desde dicho nodo extremo a través de una de las rutas, un primer datagrama que comprende información de un tipo predefinido, y - se selecciona, como ruta a utilizar, la ruta desde la que se recibe dicho primer datagrama que comprende información de un tipo predefinido.

Description

Método de selección de conexión.
Sector técnico de la invención
La presente invención se refiere al equilibrado de la carga de tráfico IP entre más de una ruta entre un nodo y una red IP. Más particularmente, la invención se refiere a un método del tipo mencionado según se describe en el preámbulo de la reivindicación independiente del método.
Antecedentes de la invención
En la actualidad se está utilizando ampliamente la tecnología de redes IP, siendo Internet un ejemplo claro de una red realizada utilizando el Protocolo de Internet (IP). El protocolo IP proporciona un mecanismo básico de transferencia de datos en paquetes sin comprobación de errores, confirmaciones de recepción o control de flujo. Otros protocolos utilizados en combinación con el protocolo IP tal como el protocolo TCP se utilizan para proporcionar un mecanismo fiable de transmisión de datos con corrección de errores de transmisión, control del flujo y muchas otras funciones. El protocolo IP se define en la especificación RFC 791, y el protocolo TCP se define en la especificación RFC 793. En la RFC 1180 se presenta una introducción a estos protocolos. A continuación se proporciona una visión general breve de estos protocolos.
La versión 4 del protocolo IP (IPv4) definida por la RFC 791 tiene un espacio de direcciones limitado debido a que las direcciones fuente y de destino tienen una longitud de únicamente 32 bits. Con la expansión actual de Internet y el desarrollo de la tecnología, el espacio de direcciones se está llenando rápidamente. Por esta razón se ha diseñado la versión 6 del protocolo IP (IPv6). Las direcciones en el IPv6 tienen una longitud de 128 bits, permitiendo un espacio de direcciones considerablemente mayor. Además existen motivaciones adicionales detrás del IPv6 y otras diferencias entre el IPv4 y el IPv6. El protocolo IPv6 se describe en la especificación RFC 1883. A continuación, haciendo referencia a las figuras 1, 2 y 3, se describen algunos detalles de los protocolos TCP e IP que son pertinentes para la presente invención.
En el protocolo IP, los datos se transmiten en los denominados datagramas, que contienen una parte de encabezamiento y una parte de datos de carga útil. La figura 1 muestra la estructura de un encabezamiento IPv4. A continuación, se describen únicamente algunos de los campos de encabezamiento. En la anteriormente mencionada RFC 791 se puede encontrar una descripción detallada. El primer campo, el campo de versión de cuatro bits de longitud, contiene el número de versión que para el IPv4 es 4. El campo de longitud total proporciona la longitud del datagrama, el encabezamiento y la parte de datos combinados, en forma de número de octetos, es decir, grupos de 8 bits. Las direcciones fuente y de destino especifican la dirección IP del remitente y del receptor deseado. Se pueden especificar varias opciones en el campo de opciones, cuya longitud puede variar de un datagrama a otro. El número de opciones diferentes especificadas en el campo de opciones también puede variar. El campo de opciones no es obligatorio, es decir, en algunos datagramas puede que no se disponga en absoluto de campo de opciones. El campo de relleno se utiliza para garantizar que el encabezamiento finaliza en un límite de 32 bits. El campo de relleno se llena con ceros. Después del campo de relleno viene la parte de datos de carga útil, cuya longitud puede ser averiguada por el receptor del datagrama restando la longitud del encabezamiento con respecto al valor del campo de longitud total.
La figura 2 ilustra la estructura de un encabezamiento IPv6. El encabezamiento IPv6 es más sencillo que el encabezamiento IPv4, permitiendo un procesado más rápido de los datagramas en los nodos de transmisión. Los primeros cuatro bits del encabezamiento comprenden el campo de versión, que para el IPv6 contiene el valor 6. El campo de longitud de carga útil especifica la longitud de la parte de datos en octetos. El siguiente campo de encabezamiento especifica el tipo de cualquier encabezamiento que viene a continuación de este encabezamiento. El siguiente encabezamiento puede ser, por ejemplo, un encabezamiento TCP en el caso de que el datagrama IP transporte un paquete TCP, o un encabezamiento de extensión. Los campos de dirección fuente y de destino, que constan cada uno de ellos de cuatro palabras de 32 bits lo cual da como resultado 128 bits para cada dirección, especifican el remitente y el receptor deseado del datagrama. En lugar de un campo de opciones, en el IPv6 se proporciona la inclusión de datos opcionales en el encabezamiento por medio de los denominados encabezamientos de extensión. En la RFC 1883 se describen varios tipos de encabezamiento de extensión. En un datagrama IPv6 puede haber cero, uno o más de un encabezamiento de extensión.
La figura 3 ilustra la estructura de un encabezamiento TCP. A continuación se describen los campos más pertinentes. Los otros campos de un encabezamiento TCP se describen en la anteriormente mencionada RFC 793.
El encabezamiento TCP indica un número de puerto de destino en el anfitrión receptor, al cual va dirigido el paquete. El protocolo TCP posibilita que en una única dirección IP existan muchos servicios diferentes, introduciendo el concepto de puerto. Un programa puede escuchar un puerto específico, y recibir cualquier dato enviado a ese puerto. A la inversa, un programa puede enviar un paquete a un puerto específico en un anfitrión distante. De este modo, el número de puerto de destino define qué servicio o programa recibirá el paquete en el anfitrión especificado por la dirección IP. De forma similar, el número de puerto fuente indica qué servicio o programa envió el paquete TCP.
Los octetos de datos TCP enviados por un anfitrión se numeran secuencialmente. El número del primer octeto de datos en la parte de datos se incluye en el encabezamiento TCP en el campo de número de secuencia. Basándose en este número, el segundo anfitrión receptor puede comprobar si han llegado paquetes TCP a través de la red de transmisión en el orden correcto, y si falta algún paquete. Convencionalmente el segundo anfitrión envía una confirmación de recepción hacia el primer anfitrión por cada paquete recibido. El mensaje de confirmación de recepción se incluye en un paquete TCP normal enviado por el segundo anfitrión hacia el primer anfitrión. La confirmación de recepción se indica por medio de la bandera ACK y el número de confirmación de recepción. El número de confirmación de recepción es el número de secuencia del siguiente octeto que está esperando recibir el remitente del paquete desde el otro extremo. Si no hay otros datos a enviar desde el segundo anfitrión hacia el primer anfitrión, en un paquete de confirmación de recepción de este tipo la parte de datos de carga útil puede estar vacía. Si el segundo anfitrión está transmitiendo datos hacia el primer anfitrión, la confirmación de recepción se puede indicar en el encabezamiento de un paquete que contenga algunos datos de carga útil. De este modo, los mensajes ACK no siempre añaden carga de transmisión. Si un anfitrión no recibe una confirmación de recepción para algunos datos dentro de un periodo de espera, los datos se vuelven a transmitir.
Después del encabezamiento TCP viene la parte de datos. La longitud de la parte de datos es transportada por el protocolo IP, por esta razón no hay un campo correspondiente en el encabezamiento TCP.
Debido al número reducido de direcciones IP disponibles en el protocolo IPv4, se utiliza una técnica conocida como traducción de direcciones de red (NAT). Con la NAT, una red privada tal como la red de área local de una empresa puede estar conectada a la red pública de Internet utilizando únicamente un número reducido de direcciones IP de la red pública de Internet, al mismo tiempo que permite un uso casi libre de direcciones IP para el tráfico dentro de la red privada. Las sesiones con nodos en la red pública de Internet se inician desde la red privada. El elemento de red que conecta las dos redes y realiza la función NAT almacena la dirección fuente del nodo de inicio dentro de la red privada, y la sustituye por una de entre el número reducido de direcciones IP de la red pública de Internet. El elemento de red almacena el par compuesto por una dirección interna y una red pública, y realiza la traducción de la dirección fuente para paquetes que atraviesan desde el nodo interno hacia la red pública de Internet y la traducción de la dirección de destino para paquetes que atraviesan desde la red pública de Internet hacia el nodo interno. El elemento de red conserva el par de direcciones, es decir, la vinculación hasta que el nodo interno finaliza todas sus conexiones con la red pública de Internet, después de lo cual el elemento de red puede asignar la dirección pública para ser utilizada por otro nodo de la red interna. La función NAT puede utilizar también la dirección del puerto TCP en la traducción, con lo cual una vinculación especifica el emparejamiento de una dirección IP interna y un puerto TCP y una dirección IP externa y un puerto TCP. La utilización de puertos TCP en la traducción se utiliza especialmente en la situación típica en la que el tráfico privado utiliza únicamente una dirección IP de la red pública de Internet. En una situación de este tipo, los paquetes que pertenecen a conexiones diferentes desde/hacia anfitriones diferentes en la red privada se mantienen separados utilizando diferentes puertos TCP para las conexiones.
La funcionalidad NAT se puede utilizar también para aumentar la seguridad de la red interna, ya que la función NAT oculta las direcciones internas, con lo cual la estructura de la red interna es más difícil de deducir desde el exterior.
Se conoce también la utilización de más de una ruta entre una red interna y una red externa. La figura 4 muestra un ejemplo de una configuración de este tipo. La figura 4 muestra una red IP interna 10, una red externa 40, un elemento 20 de red, tres rutas diferentes 30 entre el elemento 20 de red y una red externa 40, y un nodo 50 en la red externa. Típicamente cada una de las rutas 30 se corresponde con un Proveedor de Servicios de Internet (ISP). El elemento 20 de red puede tener una conexión de módem o incluso una conexión fija de alta velocidad con cada uno de los proveedores ISP 30. Las principales ventajas de la utilización de más de una ruta con Internet son la mayor capacidad de transmisión de más de una ruta y la fiabilidad: si una de las rutas 30 falla, el tráfico se puede dirigir para que prosiga a través de otras dos rutas. Típicamente, el elemento 20 de red realiza también la traducción de direcciones de red.
Una manera conocida de dividir el tráfico entre la red interna 10 y la red externa 40 es la configuración denominada AS (Sistema Autónomo) Multihomed. En la configuración AS Multihomed, se selecciona una ruta hacia un destino específico en Internet sobre la base de la información de las vías recibida por encaminadores a través del protocolo denominado Protocolo de Pasarela de Frontera (BGP-4). El protocolo BGP-4 se describe detalladamente en la RFC 1771. No obstante, en este enfoque existen limitaciones. No existe ninguna forma de garantizar que la ruta seleccionada presenta el mejor rendimiento ya que la ruta se selecciona basándose únicamente en la dirección IP de destino. Adicionalmente, el protocolo BGP4 no responde rápidamente a los cambios en la topología de la red, lo cual puede provocar cortes en conexiones con partes de Internet.
La traducción de direcciones de red se puede utilizar también para el compartimiento de la carga. Un método de este tipo se describe en la RFC 2391 ``Load Sharing using IP Network Address Translation (LSNAT)''. En el método, una sesión nueva se dirige a un servidor determinado en un depósito de servidores que utilizan la técnica NAT. La RFC 2391 da a conocer también algunos algoritmos comunes para tomar decisiones de compartimiento de la carga, es decir, a qué servidor se va a dirigir una conexión determinada. Algunos ejemplos de dichos algoritmos son:
- Algoritmo Secuencial (Round-Robin), es decir, las conexiones nuevas se dirigen a los servidores en una secuencia repetitiva. Este algoritmo tiene el inconveniente de que no se tienen en cuenta las diferencias en la carga de los servidores.
- Primer algoritmo de Carga Mínima, es decir, para prestar servicio a una sesión nueva se selecciona el servidor con el menor número de sesiones vinculadas al mismo. Este algoritmo tiene el inconveniente de que no se tienen en cuenta las diferencias en los requisitos de recursos de las sesiones nuevas, y que tampoco se tienen en cuenta las capacidades de los servidores.
- Primer algoritmo de tráfico mínimo, en el que el volumen de tráfico de cada servidor se mide supervisando el recuento de paquetes o bytes transferido por el servidor durante un periodo de tiempo.
- Primer algoritmo de Carga Ponderada Mínima, en el que a diferentes tipos de sesión se les asignan pesos diferentes, y a servidores que tienen capacidades diferenciadas se les asignan pesos diferentes. Se calcula el peso total de la sesión actual en cada servidor, y el resultado se divide por el valor del peso de la capacidad. Se dirige una sesión nueva a aquel servidor que presente el valor de menor resultado.
- Algoritmo de supervisión del tiempo de respuesta, en el que a cada servidor se le envía periódicamente un paquete, y el tiempo transcurrido hasta la recepción del paquete de respuesta se utiliza como medida de la carga. Este algoritmo tiene el inconveniente de que la carga puede variar entre tiempos de supervisión consecutivos, con lo cual podría ser que el tiempo de respuesta medido no represente siempre la situación actual. Naturalmente la precisión se puede aumentar reduciendo el intervalo de prueba, aunque esto hace que aumente la carga de tráfico.
Algunos otros algoritmos de compartimiento de la carga dados a conocer en la RFC 2391 tienen en cuenta el coste del acceso a un servidor en combinación con los algoritmos anteriores.
La patente US 5371852 muestra un ejemplo de una aplicación de técnicas descritas en la RFC 2391. Esta patente da a conocer un sistema que traduce direcciones en paquetes entrantes y salientes entre un agrupamiento de nodos de ordenador y una red externa, haciendo que el agrupamiento de nodos de ordenador aparezca como un único nodo para la red externa.
El documento de AKKIRAJU P Y OTROS: ``Enabling Enterprise Multihoming with Cisco IOS Network Address Translation'' CISCO SYSTEMS INC, 1997 (recuperado de Internet: ttp://www.cisco.com/warp/public/cc/pd/iosw/ioft/ ionetn/tech/emios\_wp.pdf) da a conocer un método y un sistema para el compartimiento de carga de tráfico IP entre una serie de rutas.
La técnica anterior no da a conocer un método para el compartimiento de la carga de tráfico IP entre una serie de rutas, de manera que dicho método sea transparente para las partes comunicantes, se ajuste rápidamente a los cambios en las propiedades de las rutas, y no requiera un poder de procesado y una capacidad de transferencia de datos elevados. Es evidente que se requiere una solución nueva.
Sumario de la invención
Un objeto de la invención es realizar un método para compartir la carga de tráfico IP entre una serie de rutas entre un nodo de ordenador y una red IP, y realizar un método para encontrar la ruta más rápida de entre una serie de rutas desde un nodo de ordenador hacia un destino en una red IP.
Los objetos se alcanzan duplicando paquetes de establecimiento de conexión a través de cada ruta que se va a someter a prueba, garantizando que a través de la misma ruta vuelven paquetes de respuesta, y seleccionando la ruta más rápida.
El método según la invención está caracterizado por los aspectos especificados en la parte caracterizadora de la reivindicación independiente del método. El sistema según la invención está caracterizado por los aspectos especificados en la parte caracterizadora de la reivindicación independiente referida a un sistema. El elemento de red según la invención está caracterizado por los aspectos especificados en la parte caracterizadora de la reivindicación independiente referida a un elemento de red. Las reivindicaciones dependientes describen otras realizaciones ventajosas de la invención.
La invención se refiere a un método nuevo para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP. Según la invención, se selecciona una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo de cara a la transmisión de tráfico de paquetes, la ruta seleccionada se utiliza traduciendo direcciones IP fuente de paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, y dicha selección de una ruta se realiza sobre la base de criterios predefinidos.
La selección de la ruta se realiza sobre la base de tiempos de transcurso de los turnos medidos por un método nuevo que hace uso de la duplicación de paquetes. Se duplican uno o más paquetes IP que transportan mensajes de establecimiento de conexión de un segundo protocolo utilizado además del protocolo IP de manera que atraviesan el mismo nodo extremo en la red externa a través de las rutas disponibles. Las direcciones fuente de los paquetes duplicados se traducen en direcciones correspondientes a la ruta específica utilizada para la transmisión del paquete duplicado específico de manera que se garantiza que los paquetes de retorno vuelven por la misma ruta. La ruta que proporciona los tiempos de respuesta más rápidos desde el nodo extremo se selecciona para ser utilizada para la conexión nueva. Los tiempos de respuesta se pueden determinar desde la transmisión del paquete inicial hasta la recepción del paquete de respuesta al paquete inicial, o hasta la recepción de un determinado paquete posterior, tal como el primer paquete después de la señalización de establecimiento que contiene datos de carga útil.
Breve descripción de los dibujos
A continuación se describe la invención más detalladamente haciendo referencia a los dibujos adjuntos, en los cuales
la figura 1 ilustra la estructura de un encabezamiento IPv4,
la figura 2 ilustra la estructura de un encabezamiento IPv6,
la figura 3 ilustra la estructura de un encabezamiento TCP,
la figura 4 ilustra una configuración en la que una red privada o un nodo de ordenador está conectado con una red externa a través de múltiples rutas,
la figura 5 ilustra un diagrama de flujo de un método según una realización ventajosa de la invención,
la figura 6 ilustra un diagrama de flujo de un método según otra realización ventajosa de la invención,
la figura 7 ilustra la señalización según una realización ventajosa de la invención,
la figura 8 ilustra un diagrama de flujo de una realización ventajosa de la invención, y
la figura 9 ilustra un sistema y un elemento de red según una realización ventajosa de la invención.
En las figuras los mismos números de referencia se utilizan para entidades similares.
Descripción detallada
La figura 5 muestra un ejemplo de un método según una realización ventajosa de la invención. La figura 5 muestra un diagrama de flujo ilustrativo según un método destinado a equilibrar la carga de conexiones entre por lo menos dos rutas entre una fuente y una red IP, utilizando dichas conexiones el protocolo IP y por lo menos un segundo protocolo. Cada una de las por lo menos dos rutas está asociada a una pluralidad de direcciones IP. Cada ruta puede ser por ejemplo una ruta a través de un ISP determinado, que tiene su propio espacio de direcciones IP registrado para el ISP para ser utilizado por las partes que acceden a la red IP tal como Internet a través del ISP.
Según la figura 5 el método comprende por lo menos las siguientes etapas en las cuales
- se crea 100 un primer datagrama IP que comprende un mensaje de establecimiento de un segundo protocolo para iniciar una conexión nueva con un nodo extremo utilizando dicho segundo protocolo,
- dicho primer datagrama IP se envía 105 a través de una primera ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- dicho primer datagrama IP se copia 110 para crear un segundo datagrama IP de cara a enviarlo a través de una segunda ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- la dirección IP fuente de dicho segundo datagrama IP se traduce 115 en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha segunda ruta,
- dicho segundo datagrama IP se transmite 120 a través de dicha segunda ruta hacia dicho nodo extremo,
- desde dicho nodo extremo a través de una de las rutas se recibe 125 un primer datagrama que comprende información de un tipo predefinido, y
- la ruta desde la cual se recibe dicho primer datagrama que comprende información de un tipo predefinido se selecciona 130 como la ruta a utilizar.
El método puede comprender además una etapa en la cual la dirección IP fuente de dicho primer datagrama IP se traduce en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha primera ruta. No obstante, podría ser que dicha etapa no fuera siempre necesaria, como, por ejemplo, en una configuración tal en la que la primera ruta es la conexión principal desde una red fuente con la red IP, y las direcciones IP internas de la red fuente se pueden utilizar también en la red IP sin necesidad de traducción de direcciones de red.
El orden de las etapas del procedimiento mostradas en la figura 5 es únicamente un ejemplo, y bajo ningún aspecto pretende limitar la invención. Por ejemplo, el segundo datagrama IP se puede crear antes de que se envíe el primer datagrama IP. Además, el método puede comprender etapas en las que se crean copias adicionales del datagrama IP, sus direcciones IP fuente se traducen, y se envían a través de rutas adicionales hacia dicho nodo extremo. En aras de una mayor claridad, en la figura 5 se muestran únicamente dos rutas. La invención no se limita a ningún número específico de rutas. Naturalmente, es necesario que haya por lo menos dos rutas para poder seleccionar una ruta.
En una realización ventajosa de la invención, dicho primer datagrama que comprende información de un tipo predefinido es un primer datagrama de respuesta enviado por dicho nodo extremo como respuesta a uno de entre dichos primer y segundo datagramas IP.
De forma ventajosa, la señalización de establecimiento de la conexión según dicho segundo protocolo prosigue a través de la ruta seleccionada. La señalización del establecimiento de la conexión a través de la otra ruta u otras rutas se aborta preferentemente enviando una señal de puesta en condiciones iniciales de la conexión o una señal correspondiente.
La figura 6 ilustra un diagrama de flujo de un método según otra realización ventajosa de la invención. Según la figura 6 el método comprende por lo menos las siguientes etapas en las cuales
- se crea 100 un primer datagrama IP que comprende un mensaje de establecimiento de un segundo protocolo para iniciar una conexión nueva con un nodo extremo utilizando dicho segundo protocolo,
- dicho primer datagrama IP se envía 105 a través de una primera ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- dicho primer datagrama IP se copia 110 para crear un segundo datagrama IP de cara a enviarlo a través de una segunda ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- la dirección IP fuente de dicho segundo datagrama IP se traduce 115 en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha segunda ruta,
- dicho segundo datagrama IP se transmite 120 a través de dicha segunda ruta hacia dicho nodo extremo,
- después de enviar dichos primer y segundo datagramas IP, el procedimiento de señalización del establecimiento de la conexión prosigue 122 a través de dicha primera y dicha segunda rutas,
- desde dicho nodo extremo a través de una de entre dicha primera y dicha segunda rutas se recibe 125 un primer datagrama IP que contiene datos de carga útil de acuerdo con el segundo protocolo, y
- la ruta desde la cual se recibe dicho primer datagrama IP que contiene datos de carga útil de acuerdo con el segundo protocolo se selecciona 130 para ser utilizada para la conexión nueva.
En la etapa de continuación 122 de la señalización del establecimiento de la conexión, los datagramas IP que comprenden señalización de establecimiento se duplican tal como en las etapas 110 y 115 para su transmisión a través de la segunda ruta.
La realización según la figura 6 tiene una ventaja en el caso de que el segundo protocolo sea el protocolo TCP. Algunos servidores proxy transparentes pueden participar activamente en el establecimiento de la conexión TCP, es decir, pueden enviar por sí mismos un paquete SYN+ACK hacia la fuente de origen, antes que se reciba dicho paquete desde el nodo extremo. Si dicho servidor proxy u otro elemento de red que participa activamente en el establecimiento de conexiones TCP está dentro de una ruta hacia el nodo extremo, la medición del tiempo de transcurso de los turnos desde la recepción del paquete SYN+ACK en la fuente puede dar resultados erróneos. Por esta razón, en algunos casos la espera por el primer paquete de datos de carga útil puede resultar ventajosa, ya que los datos de carga útil se originan únicamente desde el nodo extremo.
En una realización preferida de la invención, dicho segundo protocolo es el protocolo TCP. En el momento de escribir esta solicitud de patente dicha situación es ventajosa, ya que la mayor parte del tráfico de datos en Internet es tráfico HTTP (Protocolo de Transferencia de HiperTexto), y además del protocolo TCP se utiliza el protocolo HTTP. Por esta razón, la conexión nueva cuya ruta se selecciona según la invención puede ser una conexión TCP para transmitir tráfico HTTP.
La figura 7 muestra la señalización entre una fuente 10, un nodo 20, y dos rutas RUTA 1 30a y RUTA 2 30b. El nodo puede ser, por ejemplo, un nodo de ordenador de pasarela que conecte una intranet 10 de empresa con redes externas a través de varias rutas 30a, 30b. Cada una de las por lo menos dos rutas está asociada a una pluralidad de direcciones IP. Cada ruta puede ser por ejemplo una ruta a través de un ISP determinado, que tiene su propio espacio de direcciones IP para ser utilizado por las partes que acceden a una red IP tal como Internet a través del ISP. No obstante, las entidades de fuente 10 y nodo 20 también pueden existir en el mismo dispositivo físico tal como un ordenador, en cuyo caso el tráfico de datagramas IP se origina en el mismo ordenador que realiza las funciones de un nodo 20 tal como se describe a continuación.
En la primera etapa 100, la fuente 10 crea y envía un paquete SYN TCP para iniciar una conexión TCP con el nodo extremo. Después de recibir el paquete, el nodo 20 puede traducir la dirección IP fuente, es decir, puede realizar la traducción de direcciones de red, si fuera necesario para la transmisión del paquete a través de la primera ruta. En cualquier caso, el nodo 20 envía 105 el primer paquete SYN, es decir, un paquete TCP en el que el bit SYN se fija a 1 y el bit ACK se fija a 0, hacia el nodo extremo a través de la primera ruta 30a. A continuación, el nodo 20 copia 110 el primer paquete, traduce 115 la dirección IP fuente, y transmite 120 el paquete hacia el nodo extremo a través de la segunda ruta 30b. Seguidamente el nodo 20 espera que llegue el primer paquete SYN+ACK de respuesta desde cualquiera de las rutas. Cuando en este ejemplo llega 125 el paquete SYN+ACK desde la segunda ruta, el nodo selecciona 130 la ruta 2 a utilizar para la continuación. El nodo 20 realiza todas las traducciones necesarias de direcciones de red y reenvía 135 el paquete SYN+ACK hacia la fuente 10. Consecuentemente, la fuente 10 finaliza el intercambio de señales TCP de tres vías enviando 140 un paquete ACK de vuelta, siendo reenviado 145 dicho paquete hacia el nodo extremo a través de la segunda ruta 30b después de las traducciones correspondientes de direcciones de red. Cuando el nodo 20 recibe 150 un paquete SYN+ACK desde la primera ruta 30a, el nodo 20 envía 155 un paquete RST hacia la ruta 1 para cancelar la conexión a través de la ruta 1.
En un paquete SYN+ACK, los bits SYN y ACK se fijan a 1, y en un paquete RST, el bit RST se fija a 1.
El orden de las etapas de la figura 7 es únicamente un ejemplo, y en otras realizaciones de la invención puede ser diferente. Además, la etapa de copia de un paquete se puede efectuar en la etapa de envío de un paquete. Por ejemplo, en una realización ventajosa de la invención el nodo 20 comprende una memoria intermedia, en la cual el nodo 20 escribe el paquete recibido desde la fuente. A continuación, el nodo 20 puede traducir la dirección IP fuente en la memoria intermedia de manera que se corresponda con la ruta hacia la que se enviará seguidamente el paquete, y enviar una copia del paquete hacia la ruta.
La invención no se limita únicamente a conexiones TCP para transmitir tráfico HTTP ya que la invención se puede utilizar con muchos otros protocolos utilizados además de los protocolos IP. Por ejemplo, como segundo protocolo se pueden utilizar varios protocolos destinados a transportar datos de voz, con lo cual el método de la invención permite el compartimiento de la carga de conexiones de voz. La invención se puede utilizar con muchos protocolos diferentes, tales como protocolos para la transferencia de datos, voz, y la transmisión de vídeo. Una implementación fiable de la invención requiere únicamente que el inicio y el final de una conexión de acuerdo con el segundo protocolo puedan ser reconocidos por la entidad, tal como un elemento de red, que ejecute el método según la invención. Por ejemplo, el inicio de una conexión TCP se puede observar observando los bits de estado de un encabezamiento TCP: una conexión TCP se inicia con un paquete que tiene el bit SYN fijado a 1 y el bit ACK fijado a 0, y el final de una conexión se marca mediante un paquete TCP que tiene el bit FIN fijado a 1. Para conexiones de voz según, por ejemplo, algunos de los protocolos de la serie H.300, es necesario leer e interpretar el contenido de los paquetes IP que transportan los mensajes para reconocer los mensajes que indican el inicio y el final de una conexión. Por ejemplo, el segundo protocolo puede ser también el protocolo RTSP (protocolo de tren de bits en tiempo real). El inicio y el final de una conexión se detectan fácilmente a partir de la señalización según el protocolo RTSP.
El método de la invención se puede utilizar con los protocolos tanto IP versión 4 como IP versión 6.
En otra realización ventajosa de la invención, para cada ruta se mide el tiempo transcurrido entre el envío del primer datagrama a través de una ruta y la recepción de un primer datagrama que comprende información de un tipo predefinido de las rutas, y la ruta que presenta el tiempo medido más corto se selecciona para ser utilizada para la conexión nueva. Además, el tiempo medido para las rutas hacia un nodo extremo se puede almacenar en unos medios de memoria. Posteriormente, si se va a establecer una conexión nueva con el mismo nodo extremo, los tiempos almacenados se pueden utilizar como base para la selección de una ruta sin duplicación de paquetes con varias rutas, si los resultados de tiempos almacenados son suficientemente recientes como para ofrecer alguna formalidad. Dicha disposición puede reducir la señalización provocada por el método de la invención.
Además, las etapas de fijación o traducción de la dirección IP fuente de un datagrama pueden comprender también la etapa de fijación o traducción de la dirección TCP fuente del datagrama.
En una realización ventajosa de la invención, el elemento de red que ejecuta el método de la invención realiza el compartimiento de la carga de las conexiones únicamente para un protocolo determinado o un grupo determinado de protocolos utilizados además de los protocolos IP. Por ejemplo, el elemento de red puede realizar, por ejemplo, únicamente el compartimiento de la carga de conexiones TCP, o el compartimiento de la carga de conexiones TCP y conexiones de voz. Para el resto del tráfico IP, el elemento de red puede funcionar como un proxy transparente que utiliza una ruta predefinida para el resto del tráfico IP. Si fuera necesario en una configuración específica, el elemento de red puede actuar también como una función convencional de traducción de direcciones de red para el resto del tráfico IP.
Las realizaciones anteriores representan realizaciones particularmente ventajosas de la invención. A continuación, haciendo referencia a la figura 8 se presenta una visión más general de la invención. Según el método,
- se selecciona 170 una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes,
- la ruta seleccionada se utiliza traduciendo 175 direcciones IP fuente de paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, y
- dicha selección de una ruta se realiza sobre la base de criterios predefinidos.
Preferentemente, dicha selección de una ruta se realiza para equilibrar la carga de conexiones nuevas entre la pluralidad de rutas posibles.
Preferentemente, el nodo fuente se conecta con una primera red IP, dicho nodo extremo se conecta con una segunda red IP, dichas primera y segunda redes se conectan a través de una pluralidad de vías, y cada vía de entre dicha pluralidad de vías se corresponde con una ruta de entre la pluralidad de rutas posibles.
En varias realizaciones de la invención, se pueden utilizar varias formas para realizar la selección. Por ejemplo, tal como se ha descrito anteriormente, la selección se puede realizar sobre la base de tiempos de transcurso de los turnos medidos mediante un método de duplicación de paquetes. No obstante, también se pueden utilizar otras formas. Por ejemplo, el rendimiento de las rutas se puede supervisar continuamente o durante un periodo determinado para obtener datos estadísticos del rendimiento de las rutas, y la ruta óptima se puede seleccionar sobre la base de las estadísticas medidas. Además, para tomar la decisión sobre la selección de una ruta también se pueden utilizar otros tipos de algoritmos de equilibrado de la carga como los correspondientes descritos en la RFC 2391. De forma correspondiente, los criterios predefinidos según se menciona en las reivindicaciones pueden ser de muchos tipos diferentes.
La figura 9 ilustra un sistema según una realización ventajosa de la invención. La figura 9 muestra una red IP interna 10, una red externa 40, un elemento 20 de red, tres rutas diferentes 30 entre el elemento 20 de red y una red externa 40, y un nodo extremo 50 en la red externa. El sistema de la figura 9 se puede utilizar para la distribución de conexiones entre una pluralidad de rutas entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP. Las rutas se pueden corresponder, por ejemplo, con diferentes proveedores de servicio de Internet. En la figura 9 el sistema se realiza en un elemento 20 de red que conecta la red interna o fuente 10 con redes externas 30, 40.
No obstante, el sistema se puede realizar también en más de un dispositivo separado físicamente, con lo cual la invención no se limita a la realización del sistema en un único dispositivo informático. El sistema comprende
- medios 250 para seleccionar una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes,
- medios 230 para traducir direcciones IP fuente de paquetes de cara a la transmisión desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, estando dispuestos dichos medios destinados a seleccionar una ruta de manera que seleccionan una ruta sobre la base de criterios predefinidos.
Preferentemente, dichos medios destinados a seleccionar una ruta están dispuestos de manera que realizan la selección para equilibrar la carga de conexiones nuevas entre la pluralidad de rutas posibles.
La figura 9 ilustra también otra realización de la invención. Según la realización, el sistema comprende
- medios 200 para detectar un datagrama IP destinado a un nodo extremo que comprende un mensaje de establecimiento de acuerdo con un segundo protocolo,
- medios 210 para enviar dicho datagrama IP hacia una primera ruta de entre la pluralidad de rutas de cara a la transmisión hacia dicho nodo extremo,
- medios 220 para copiar dicho datagrama IP de manera que se crea un segundo datagrama IP de cara a su transmisión hacia dicho nodo extremo a través de una segunda ruta de entre la pluralidad de rutas,
- medios 230 para traducir la dirección IP fuente de dicho segundo datagrama IP en una dirección IP que pertenece a la pluralidad de direcciones IP asociadas a dicha segunda ruta, y
- medios 240 para enviar dicho segundo datagrama IP hacia dicha segunda ruta de cara a la transmisión hacia dicho nodo extremo.
De forma ventajosa los medios 200, 210, 220, 230, 240 se realizan utilizando instrucciones de software almacenadas en unos medios de memoria del dispositivo de ordenador o dispositivos de ordenador utilizados para realizar el sistema, siendo ejecutadas dichas instrucciones por las unidades de procesado del dispositivo de ordenador o los dispositivos de ordenador.
La invención presenta varias ventajas. Por ejemplo, la invención ofrece una solución que no requiere cambios en los clientes o servidores dentro de la red fuente. Además, el método de la invención se puede personalizar para proporcionar un compartimiento de la carga para determinados servicios individuales o para todos los servicios utilizados por un emplazamiento. La funcionalidad de la invención se puede integrar en cortafuegos, servidores proxy HTTP transparentes, o se puede realizar, por ejemplo, utilizando un dispositivo de pasarela dedicado. El método de la invención es especialmente adecuado para el equilibrado de la carga del protocolo HTTP que constituye más del 90% del volumen de tráfico de Internet.
La invención se puede utilizar también para aumentar la fiabilidad de las conexiones entre una red privada y una red IP externa tal como Internet. Si una de las rutas entre las dos redes falla, el método de la invención puede distribuir automáticamente todas las conexiones nuevas con el resto de las rutas. En tal caso, los criterios predefinidos utilizados en la selección de la ruta tienen en cuenta ventajosamente el estado de las rutas.
Si las decisiones de la selección de la ruta se basan al menos parcialmente en el rendimiento de las rutas, el método de la invención también puede tener en cuenta las diferencias en el rendimiento de las partes de las rutas que están dentro de la red externa tal como Internet. Por esta razón, no solamente se tiene en cuenta el rendimiento de los enlaces a través de los proveedores de servicio de Internet, sino también el rendimiento de aquella parte de las conexiones que se extiende desde el punto de conexión entre el equipo ISP e Internet hasta el nodo extremo dentro de Internet.
En esta solicitud la expresión nodo extremo se utiliza para significar un nodo a través del cual pasan todas las rutas después de atravesar por lo menos nodos parcialmente separados dentro de una red. No es necesario que el nodo extremo sea el punto extremo final de una conexión. Por ejemplo, el nodo extremo puede ser un servidor de telefonía IP, que a continuación reenvía el tren de datos recibidos hacia un teléfono IP. En este ejemplo, las rutas entre las que se realiza la selección se encuentran entre el nodo fuente y el servidor de telefonía IP, y el servidor de telefonía IP es el nodo extremo según la terminología de esta solicitud.
Los proveedores de servicios de Internet tienen diferencias notables en las conexiones internacionales e Internet está cambiando todo el tiempo. La invención permite la selección dinámica del ISP más rápido para cada conexión TCP/IP saliente, es decir, el usuario tiene siempre la mejor conexión posible con el destino. La invención elimina la necesidad de configuraciones complicadas de enrutamiento BGP-4 multi-home. Además, la invención facilita el despliegue de conexiones ISP nuevas.
La invención se puede utilizar en aquellas configuraciones que tienen más de una ruta entre un nodo de ordenador y una red IP. Por ejemplo, una empresa puede tener una conexión con Internet a través de más de un proveedor de servicios de Internet para obtener el ancho de banda y la fiabilidad suficientes. La invención puede ser utilizada también por proveedores de servicios de Internet que tienen más de un enlace de comunicación con Internet.

Claims (14)

1. Método para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP, utilizando las conexiones el protocolo IP y por lo menos un segundo protocolo, comprendiendo el método
- la selección de una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes,
- la utilización de la ruta seleccionada traduciendo direcciones IP fuente de paquetes transmitidos desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, y
- realización de dicha selección de una ruta sobre la base de criterios predefinidos, caracterizado porque el método comprende por lo menos las siguientes etapas, en las cuales
- se crea un primer datagrama IP que comprende un mensaje de establecimiento de un segundo protocolo para iniciar una conexión nueva con un nodo extremo utilizando dicho segundo protocolo,
- se envía dicho primer datagrama IP a través de una primera ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- se copia dicho primer datagrama IP para crear un segundo datagrama IP de cara a enviarlo a través de una segunda ruta de entre las rutas entre el nodo fuente y dicho nodo extremo,
- se traduce la dirección IP fuente de dicho segundo datagrama IP en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha segunda ruta,
- se transmite dicho segundo datagrama IP a través de dicha segunda ruta hacia dicho nodo extremo,
- se recibe, desde dicho nodo extremo a través de una de las rutas, un primer datagrama que comprende información de un tipo predefinido, y
- se selecciona, como ruta a utilizar, la ruta desde la que se recibe dicho primer datagrama que comprende información de un tipo predefinido.
2. Método según la reivindicación 1, caracterizado porque dicha selección de una ruta se realiza para equilibrar la carga de conexiones nuevas entre la pluralidad de rutas posibles.
3. Método según la reivindicación 1, caracterizado porque el nodo fuente se conecta a una primera red IP, dicho nodo extremo se conecta a una segunda red IP, dichas primera y segunda redes se conectan a través de una pluralidad de vías, y cada vía de entre dicha pluralidad de vías se corresponde con una ruta de entre la pluralidad de rutas posibles.
4. Método según la reivindicación 1, caracterizado porque el método comprende una etapa en la cual la dirección IP fuente de dicho primer datagrama IP se traduce en una dirección IP seleccionada de entre la pluralidad de direcciones IP asociadas a dicha primera ruta.
5. Método según la reivindicación 1, caracterizado porque dicho primer datagrama que comprende información de un tipo predefinido es un primer datagrama de respuesta enviado por dicho nodo extremo como respuesta a uno de entre dichos primer y segundo datagramas IP.
6. Método según la reivindicación 1, caracterizado porque la señalización de establecimiento de la conexión según dicho segundo protocolo prosigue a través de la ruta seleccionada.
7. Método según la reivindicación 1, caracterizado porque el método después de enviar dichos primer y segundo datagramas IP, el procedimiento de señalización del establecimiento de la conexión prosigue a través de dicha primera y dicha segunda rutas, y dicho primer datagrama que comprende información de un tipo predefinido es un primer datagrama IP que comprende datos de carga útil de acuerdo con el segundo protocolo enviado por dicho nodo extremo.
8. Método según la reivindicación 1, caracterizado porque dicho segundo protocolo es el protocolo TCP.
9. Método según la reivindicación 1 caracterizado porque el protocolo IP es el protocolo IP versión 4.
10. Método según la reivindicación 1, caracterizado porque el protocolo IP es el protocolo IP versión 6.
11. Método según la reivindicación 1, caracterizado porque dicho segundo protocolo es un protocolo para transportar datos de voz.
12. Sistema para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP, en donde el sistema comprende
- medios para seleccionar una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes,
- medios para traducir direcciones IP fuente de paquetes de cara a su transmisión desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, estando dispuestos dichos medios destinados a seleccionar una ruta de manera que seleccionan una ruta sobre la base de criterios predefinidos, caracterizado porque el sistema comprende
- medios para detectar un datagrama IP destinado a un nodo extremo que comprende un mensaje de establecimiento de acuerdo con un segundo protocolo,
- medios para enviar dicho datagrama IP hacia una primera ruta de entre la pluralidad de rutas de cara a la transmisión hacia dicho nodo extremo,
- medios para copiar dicho datagrama IP de manera que se crea un segundo datagrama IP de cara a su transmisión hacia dicho nodo extremo a través de una segunda ruta de entre la pluralidad de rutas,
- medios para traducir la dirección IP fuente de dicho segundo datagrama IP en una dirección IP que pertenece a la pluralidad de direcciones IP asociadas a dicha segunda ruta, y
- medios para enviar dicho segundo datagrama IP hacia dicha segunda ruta de cara a la transmisión hacia dicho nodo extremo.
13. Sistema según la reivindicación 12, caracterizado porque dichos medios destinados a seleccionar una ruta están dispuestos de manera que realizan la selección para equilibrar la carga de conexiones nuevas entre la pluralidad de rutas posibles.
14. Elemento de red para la distribución de conexiones entre una pluralidad de rutas posibles para la transmisión de tráfico de paquetes IP entre un nodo fuente y nodos extremos, estando asociada cada una de las rutas a una pluralidad de direcciones IP, en donde el elemento de red comprende
- medios para seleccionar una ruta para una conexión nueva a establecer entre el nodo fuente y un nodo extremo para la transmisión de tráfico de paquetes,
- medios para traducir direcciones IP fuente de paquetes de cara a su transmisión desde el nodo fuente hacia dicho nodo extremo en una dirección IP asociada a la ruta seleccionada, estando dispuestos dichos medios destinados a seleccionar una ruta de manera que seleccionan una ruta sobre la base de criterios predefinidos, caracterizado porque el elemento de red comprende
- medios para detectar un datagrama IP destinado a un nodo extremo que comprende un mensaje de establecimiento de acuerdo con un segundo protocolo,
- medios para enviar dicho datagrama IP hacia una primera ruta de entre la pluralidad de rutas de cara a la transmisión hacia dicho nodo extremo,
- medios para copiar dicho datagrama IP de manera que se crea un segundo datagrama IP de cara a su transmisión hacia dicho nodo extremo a través de una segunda ruta de entre la pluralidad de rutas,
- medios para traducir la dirección IP fuente de dicho segundo datagrama IP en una dirección IP que pertenece a la pluralidad de direcciones IP asociadas a dicha segunda ruta, y
- medios para enviar dicho segundo datagrama IP hacia dicha segunda ruta de cara a la transmisión hacia dicho nodo extremo.
ES00660120T 1999-06-28 2000-06-28 Metodo de seleccion de conexion. Expired - Lifetime ES2198267T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI991470A FI107421B (fi) 1999-06-28 1999-06-28 Yhteyksien valintamenetelmä
FI991470 1999-06-28

Publications (1)

Publication Number Publication Date
ES2198267T3 true ES2198267T3 (es) 2004-02-01

Family

ID=8554975

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00660120T Expired - Lifetime ES2198267T3 (es) 1999-06-28 2000-06-28 Metodo de seleccion de conexion.

Country Status (6)

Country Link
US (1) US6650621B1 (es)
EP (1) EP1065844B1 (es)
AT (1) ATE239333T1 (es)
DE (1) DE60002396T2 (es)
ES (1) ES2198267T3 (es)
FI (1) FI107421B (es)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665702B1 (en) 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6957254B1 (en) * 1999-10-21 2005-10-18 Sun Microsystems, Inc Method and apparatus for reaching agreement between nodes in a distributed system
US7523181B2 (en) * 1999-11-22 2009-04-21 Akamai Technologies, Inc. Method for determining metrics of a content delivery and global traffic management network
US6820133B1 (en) * 2000-02-07 2004-11-16 Netli, Inc. System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination
US7058706B1 (en) * 2000-03-31 2006-06-06 Akamai Technologies, Inc. Method and apparatus for determining latency between multiple servers and a client
US7346676B1 (en) * 2000-07-19 2008-03-18 Akamai Technologies, Inc. Load balancing service
US7725602B2 (en) * 2000-07-19 2010-05-25 Akamai Technologies, Inc. Domain name resolution using a distributed DNS network
US8060581B2 (en) * 2000-07-19 2011-11-15 Akamai Technologies, Inc. Dynamic image delivery system
US7653706B2 (en) * 2000-07-19 2010-01-26 Akamai Technologies, Inc. Dynamic image delivery system
FI112148B (fi) * 2000-07-24 2003-10-31 Stonesoft Oyj Tietoliikenteen ohjausmenetelmä
US7089301B1 (en) * 2000-08-11 2006-08-08 Napster, Inc. System and method for searching peer-to-peer computer networks by selecting a computer based on at least a number of files shared by the computer
US7043633B1 (en) * 2000-08-28 2006-05-09 Verizon Corporation Services Group Inc. Method and apparatus for providing adaptive self-synchronized dynamic address translation
US8037530B1 (en) 2000-08-28 2011-10-11 Verizon Corporate Services Group Inc. Method and apparatus for providing adaptive self-synchronized dynamic address translation as an intrusion detection sensor
US6826684B1 (en) * 2000-08-28 2004-11-30 Verizon Corporate Services Group Inc. Sliding scale adaptive self-synchronized dynamic address translation
US6816464B1 (en) * 2000-09-13 2004-11-09 Array Telecom Corporation Method, system, and computer program product for route quality checking and management
US7562147B1 (en) * 2000-10-02 2009-07-14 Microsoft Corporation Bi-directional HTTP-based reliable messaging protocol and system utilizing same
US6980521B1 (en) * 2000-11-29 2005-12-27 Cisco Technology, Inc. Method and apparatus for per session load balancing with improved load sharing in a packet switched network
JP2002176441A (ja) * 2000-12-08 2002-06-21 Fujitsu Ltd 通信装置
US7739497B1 (en) * 2001-03-21 2010-06-15 Verizon Corporate Services Group Inc. Method and apparatus for anonymous IP datagram exchange using dynamic network address translation
US20020188647A1 (en) * 2001-06-12 2002-12-12 Dovi Mark A. Method and apparatus for optimizing data transfers between processes
DE60101798T2 (de) * 2001-08-31 2004-06-17 Stonesoft Corp. Datenübertragungs-Methode und -netzknoten zur Leitwegeauswahl mittels Umlaufzeit und Paket-Übertragungsrate
US20030079018A1 (en) * 2001-09-28 2003-04-24 Lolayekar Santosh C. Load balancing in a storage network
US7409706B1 (en) * 2001-10-02 2008-08-05 Cisco Technology, Inc. System and method for providing path protection of computer network traffic
EP1331771B1 (en) * 2002-01-24 2007-01-17 Alcatel Canada Inc. Method and apparatus for synchronizing redundant communication tasks
US8005980B2 (en) 2002-01-24 2011-08-23 Alcatel Lucent Method and apparatus for synchronizing redundant communication tasks
US7406035B2 (en) 2002-01-24 2008-07-29 Alcatel-Lucent Canada Inc. Method and apparatus for providing redundant protocol processes in a network element
US8769154B2 (en) 2002-01-24 2014-07-01 Alcatel Lucent Method and apparatus for facilitating routing protocol redundancy in a network element
US9332037B2 (en) * 2002-03-27 2016-05-03 Alcatel Lucent Method and apparatus for redundant signaling links
JP3665622B2 (ja) 2002-03-29 2005-06-29 株式会社東芝 ソースアドレス選択システム、ルータ装置、通信ノード及びソースアドレス選択方法
EP1546911A4 (en) * 2002-09-17 2007-03-21 Mobitv Inc SYSTEM AND METHOD FOR PACKAGING AND DISTRIBUTION OF DATA
US20040111529A1 (en) * 2002-12-10 2004-06-10 Intel Corporation (A Delaware Corporation) Dynamic host based load balancing of a multihomed network
CN100349408C (zh) 2004-02-12 2007-11-14 华为技术有限公司 实现网管系统和网元设备配置数据实时同步的方法
GB0416272D0 (en) * 2004-07-20 2004-08-25 British Telecomm Method of operating a network
JP4313266B2 (ja) * 2004-07-29 2009-08-12 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、その制御方法およびコネクション確立方法
US8155125B1 (en) * 2004-09-17 2012-04-10 Cisco Technology, Inc. Apparatus and method for utilizing aggregate network links for multicast switching
JP4257857B2 (ja) * 2004-09-22 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション データ処理システムおよびデータ処理方法
GB0421664D0 (en) * 2004-09-29 2004-10-27 Nokia Corp Method for commuication over a lossy interface
US8145908B1 (en) 2004-10-29 2012-03-27 Akamai Technologies, Inc. Web content defacement protection system
US8346956B2 (en) 2004-10-29 2013-01-01 Akamai Technologies, Inc. Dynamic image delivery system
US8825804B2 (en) * 2005-01-26 2014-09-02 International Business Machines Corporation Method and system for avoiding an unintentional time-out for communications in a client-proxy-server environment
US7480264B1 (en) 2005-02-10 2009-01-20 Sonicwall, Inc. Centralized wireless LAN load balancing
CN100505684C (zh) * 2005-03-29 2009-06-24 国际商业机器公司 网络系统,流量均衡方法,网络监视设备和主机
US7869353B2 (en) * 2005-06-23 2011-01-11 International Business Machines Corporation Method and system for transmitting a message between two isolated locations based on limited range communication means
US7719995B2 (en) * 2005-09-09 2010-05-18 Zeugma Systems Inc. Application driven fast unicast flow replication
US20070058530A1 (en) * 2005-09-14 2007-03-15 Sbc Knowledge Ventures, L.P. Apparatus, computer readable medium and method for redundant data stream control
US8831011B1 (en) * 2006-04-13 2014-09-09 Xceedium, Inc. Point to multi-point connections
US7804830B2 (en) * 2007-06-19 2010-09-28 International Secure Virtual Offices (Asia) Pte. Ltd IP connectivity with NAT traversal
WO2009002075A2 (en) * 2007-06-27 2008-12-31 Electronics And Telecommunications Research Institute Method and system for optimizing routing between nodes in proxy mobile ipv6 network
KR100969152B1 (ko) 2007-06-27 2010-07-08 한국전자통신연구원 프록시 모바일 아이피버전6 망에서 노드 간의 경로 최적화방법 및 시스템
US7953808B2 (en) * 2008-03-04 2011-05-31 Apple Inc. Automatic notification system and process
JP5470720B2 (ja) * 2008-03-07 2014-04-16 日本電気株式会社 イベント処理システムおよびイベント処理方法
US8135392B2 (en) 2008-06-06 2012-03-13 Apple Inc. Managing notification service connections and displaying icon badges
US9516116B2 (en) * 2008-06-06 2016-12-06 Apple Inc. Managing notification service connections
US20100223364A1 (en) * 2009-02-27 2010-09-02 Yottaa Inc System and method for network traffic management and load balancing
WO2010099513A2 (en) * 2009-02-27 2010-09-02 Coach Wei Adaptive network with automatic scaling
WO2010102084A2 (en) * 2009-03-05 2010-09-10 Coach Wei System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications
EP2415207B1 (en) * 2009-03-31 2014-12-03 Coach Wei System and method for access management and security protection for network accessible computer services
US8243960B2 (en) * 2010-03-04 2012-08-14 Bose Corporation Planar audio amplifier output inductor with current sense
CN103119903B (zh) * 2010-09-30 2016-09-21 瑞典爱立信有限公司 用于网络服务器之间的负载平衡的设备和方法
US9397883B2 (en) * 2013-12-23 2016-07-19 Red Hat Israel, Ltd. Modifying network settings of an unreachable host
US9876724B2 (en) * 2014-12-23 2018-01-23 Jordan University Of Science And Technology Method for seamless multi-link network connectivity
US10320691B1 (en) * 2016-01-30 2019-06-11 Innovium, Inc. Visibility packets
US10355981B1 (en) 2016-03-02 2019-07-16 Innovium, Inc. Sliding windows
US11075847B1 (en) 2017-01-16 2021-07-27 Innovium, Inc. Visibility sampling
US10735339B1 (en) 2017-01-16 2020-08-04 Innovium, Inc. Intelligent packet queues with efficient delay tracking
US12537776B1 (en) 2017-01-16 2026-01-27 Innovium, Inc. Enhanced visibility sampling
US10499306B2 (en) * 2017-05-24 2019-12-03 Cisco Technology, Inc. Methods and apparatus for selecting a network route for data communications for IoT devices
US10805178B2 (en) 2017-11-27 2020-10-13 Cisco Technology, Inc. Subscription-based event notification techniques for reducing data buffering in mobile networks
CN116155797A (zh) * 2020-05-13 2023-05-23 华为技术有限公司 一种协议报文的处理方法、网络设备及计算机存储介质
US11621904B1 (en) 2020-11-06 2023-04-04 Innovium, Inc. Path telemetry data collection
US11784932B2 (en) 2020-11-06 2023-10-10 Innovium, Inc. Delay-based automatic queue management and tail drop
US11570707B2 (en) * 2021-01-11 2023-01-31 Dell Products L.P. Systems and methods for comparison and scoring of network access points

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3788577T2 (de) 1986-01-09 1994-07-07 Nippon Electric Co Paketvermitteltes Fernmeldenetz mit parallelen virtuellen Verbindungen zur Umweglenkung von Nachrichtenpaketen.
US4953162A (en) 1987-08-26 1990-08-28 Lyons Paul J Multipath local area network
US5511168A (en) * 1993-07-01 1996-04-23 Digital Equipment Corporation Virtual circuit manager for multicast messaging
US6457054B1 (en) * 1997-05-15 2002-09-24 Intel Corporation System for reducing user-visibility latency in network transactions
US6446121B1 (en) * 1998-05-26 2002-09-03 Cisco Technology, Inc. System and method for measuring round trip times in a network using a TCP packet

Also Published As

Publication number Publication date
FI991470A0 (fi) 1999-06-28
US6650621B1 (en) 2003-11-18
EP1065844B1 (en) 2003-05-02
ATE239333T1 (de) 2003-05-15
FI107421B (fi) 2001-07-31
DE60002396D1 (de) 2003-06-05
DE60002396T2 (de) 2004-02-05
EP1065844A2 (en) 2001-01-03
FI991470L (fi) 2000-12-29
EP1065844A3 (en) 2002-08-07

Similar Documents

Publication Publication Date Title
EP1065844B1 (en) Connection selection method
JP6549996B2 (ja) ネットワーク装置、通信方法、及び、ネットワークシステム
Postel et al. Standard for the transmission of IP datagrams over IEEE 802 networks
Simpson IP in IP tunneling
US6697354B1 (en) Method and system for distributed network address translation for mobile network devices
Davidson An introduction to TCP/IP
KR100380554B1 (ko) QoS 세션 설정 방법 및 이동 IP 환경
US20010017862A1 (en) IP router device having a TCP termination function and a medium thereof
JP4277189B2 (ja) ルータ装置及びパケット転送制御方法
EP0823165B1 (en) Asynchronous packet switching
BR112017006261B1 (pt) Método para endereçamento múltiplo sensível a aplicativo para aceleração de tráfego de dados em redes de comunicação de dados
JPH09130407A (ja) 通信ネットワークのatmセルの伝送に使用されるデータフォーマット
US9445384B2 (en) Mobile device to generate multiple maximum transfer units and data transfer method
WO2008040203A1 (en) Method, system, and router for calculating the maximum transmission unit of the router output interface
CN1333568C (zh) 基于过渡机制的IPv6网和IPv4网间互通的方法
ES2256432T3 (es) Metodo para distinguir clientes en un sistema de comunicacion y dispositivo de comunicacion.
CN102868613A (zh) 一种通用路由封装隧道报文发送方法和装置
CN109361614A (zh) 一种基于vxlan的负载均衡方法及系统
US20070160050A1 (en) Diagnostic mechanism for Layer 2 and Layer 3 networks
RU2272363C2 (ru) Устройство, способ и система для усовершенствованной маршрутизации в сети мобильного ip
US10637825B2 (en) Router and method for connecting an IPv4 network and an IPv6 network
JP2004274702A (ja) ルータ装置及びパケット転送制御方法
CN107104911B (zh) Udp数据包的分割方法和发送方法
JP2008301517A (ja) ルータ装置及びパケット転送制御方法
CN107547376B (zh) 路由探测方法和装置